const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/javascript-C7a4RI8G.js","assets/typescript-Jd3ZmU9m.js"])))=>i.map(i=>d[i]); var J8e=Object.defineProperty;var Rue=i=>{throw TypeError(i)};var e9e=(i,e,n)=>e in i?J8e(i,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):i[e]=n;var xt=(i,e,n)=>e9e(i,typeof e!="symbol"?e+"":e,n),Aue=(i,e,n)=>e.has(i)||Rue("Cannot "+n);var GH=(i,e,n)=>(Aue(i,e,"read from private field"),n?n.call(i):e.get(i)),Nue=(i,e,n)=>e.has(i)?Rue("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(i):e.set(i,n),XH=(i,e,n,r)=>(Aue(i,e,"write to private field"),r?r.call(i,n):e.set(i,n),n);function t9e(i,e){for(var n=0;nr[s]})}}}return Object.freeze(Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}))}(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();var hy=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ql(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}function a_(i){if(Object.prototype.hasOwnProperty.call(i,"__esModule"))return i;var e=i.default;if(typeof e=="function"){var n=function r(){return this instanceof r?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(i).forEach(function(r){var s=Object.getOwnPropertyDescriptor(i,r);Object.defineProperty(n,r,s.get?s:{enumerable:!0,get:function(){return i[r]}})}),n}var YH={exports:{}},ER={},ZH={exports:{}},Zi={};/** * @license React * react.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Mue;function n9e(){if(Mue)return Zi;Mue=1;var i=Symbol.for("react.element"),e=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.provider"),a=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),u=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),h=Symbol.iterator;function f(K){return K===null||typeof K!="object"?null:(K=h&&K[h]||K["@@iterator"],typeof K=="function"?K:null)}var p={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,m={};function _(K,ee,le){this.props=K,this.context=ee,this.refs=m,this.updater=le||p}_.prototype.isReactComponent={},_.prototype.setState=function(K,ee){if(typeof K!="object"&&typeof K!="function"&&K!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,K,ee,"setState")},_.prototype.forceUpdate=function(K){this.updater.enqueueForceUpdate(this,K,"forceUpdate")};function b(){}b.prototype=_.prototype;function y(K,ee,le){this.props=K,this.context=ee,this.refs=m,this.updater=le||p}var x=y.prototype=new b;x.constructor=y,g(x,_.prototype),x.isPureReactComponent=!0;var k=Array.isArray,D=Object.prototype.hasOwnProperty,R={current:null},E={key:!0,ref:!0,__self:!0,__source:!0};function A(K,ee,le){var ke,xe={},me=null,Ee=null;if(ee!=null)for(ke in ee.ref!==void 0&&(Ee=ee.ref),ee.key!==void 0&&(me=""+ee.key),ee)D.call(ee,ke)&&!E.hasOwnProperty(ke)&&(xe[ke]=ee[ke]);var je=arguments.length-2;if(je===1)xe.children=le;else if(1n.searchParams.append("args[]",r)),`Minified MUI error #${i}; visit ${n} for the full message.`}const Bp="$$material";function Bn(){return Bn=Object.assign?Object.assign.bind():function(i){for(var e=1;e0?Ml(EI,--cd):0,gE--,ka===10&&(gE=1,oW--),ka}function ah(){return ka=cd2||UM(ka)>3?"":" "}function v9e(i,e){for(;--e&&ah()&&!(ka<48||ka>102||ka>57&&ka<65||ka>70&&ka<97););return e5(i,qB()+(e<6&&Em()==32&&ah()==32))}function mZ(i){for(;ah();)switch(ka){case i:return cd;case 34:case 39:i!==34&&i!==39&&mZ(ka);break;case 40:i===41&&mZ(i);break;case 92:ah();break}return cd}function b9e(i,e){for(;ah()&&i+ka!==57;)if(i+ka===84&&Em()===47)break;return"/*"+e5(e,cd-1)+"*"+sW(i===47?i:ah())}function y9e(i){for(;!UM(Em());)ah();return e5(i,cd)}function w9e(i){return Zxe(GB("",null,null,null,[""],i=Yxe(i),0,[0],i))}function GB(i,e,n,r,s,o,a,l,c){for(var u=0,d=0,h=a,f=0,p=0,g=0,m=1,_=1,b=1,y=0,x="",k=s,D=o,R=r,E=x;_;)switch(g=y,y=ah()){case 40:if(g!=108&&Ml(E,h-1)==58){gZ(E+=$r(KB(y),"&","&\f"),"&\f")!=-1&&(b=-1);break}case 34:case 39:case 91:E+=KB(y);break;case 9:case 10:case 13:case 32:E+=_9e(g);break;case 92:E+=v9e(qB()-1,7);continue;case 47:switch(Em()){case 42:case 47:l3(C9e(b9e(ah(),qB()),e,n),c);break;default:E+="/"}break;case 123*m:l[u++]=em(E)*b;case 125*m:case 59:case 0:switch(y){case 0:case 125:_=0;case 59+d:b==-1&&(E=$r(E,/\f/g,"")),p>0&&em(E)-h&&l3(p>32?Wue(E+";",r,n,h-1):Wue($r(E," ","")+";",r,n,h-2),c);break;case 59:E+=";";default:if(l3(R=jue(E,e,n,u,d,s,l,x,k=[],D=[],h),o),y===123)if(d===0)GB(E,e,R,R,k,o,h,l,D);else switch(f===99&&Ml(E,3)===110?100:f){case 100:case 108:case 109:case 115:GB(i,R,R,r&&l3(jue(i,R,R,0,0,s,l,x,s,k=[],h),D),s,D,h,l,r?k:D);break;default:GB(E,R,R,R,[""],D,0,l,D)}}u=d=p=0,m=b=1,x=E="",h=a;break;case 58:h=1+em(E),p=g;default:if(m<1){if(y==123)--m;else if(y==125&&m++==0&&m9e()==125)continue}switch(E+=sW(y),y*m){case 38:b=d>0?1:(E+="\f",-1);break;case 44:l[u++]=(em(E)-1)*b,b=1;break;case 64:Em()===45&&(E+=KB(ah())),f=Em(),d=h=em(x=E+=y9e(qB())),y++;break;case 45:g===45&&em(E)==2&&(m=0)}}return o}function jue(i,e,n,r,s,o,a,l,c,u,d){for(var h=s-1,f=s===0?o:[""],p=yre(f),g=0,m=0,_=0;g0?f[b]+" "+y:$r(y,/&\f/g,f[b])))&&(c[_++]=x);return aW(i,e,n,s===0?vre:l,c,u,d)}function C9e(i,e,n){return aW(i,e,n,qxe,sW(g9e()),HM(i,2,-2),0)}function Wue(i,e,n,r){return aW(i,e,n,bre,HM(i,0,r),HM(i,r+1,-1),r)}function T2(i,e){for(var n="",r=yre(i),s=0;s6)switch(Ml(i,e+1)){case 109:if(Ml(i,e+4)!==45)break;case 102:return $r(i,/(.+:)(.+)-([^]+)/,"$1"+Wr+"$2-$3$1"+s9+(Ml(i,e+3)==108?"$3":"$2-$3"))+i;case 115:return~gZ(i,"stretch")?Jxe($r(i,"stretch","fill-available"),e)+i:i}break;case 4949:if(Ml(i,e+1)!==115)break;case 6444:switch(Ml(i,em(i)-3-(~gZ(i,"!important")&&10))){case 107:return $r(i,":",":"+Wr)+i;case 101:return $r(i,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Wr+(Ml(i,14)===45?"inline-":"")+"box$3$1"+Wr+"$2$3$1"+ac+"$2box$3")+i}break;case 5936:switch(Ml(i,e+11)){case 114:return Wr+i+ac+$r(i,/[svh]\w+-[tblr]{2}/,"tb")+i;case 108:return Wr+i+ac+$r(i,/[svh]\w+-[tblr]{2}/,"tb-rl")+i;case 45:return Wr+i+ac+$r(i,/[svh]\w+-[tblr]{2}/,"lr")+i}return Wr+i+ac+i+i}return i}var R9e=function(e,n,r,s){if(e.length>-1&&!e.return)switch(e.type){case bre:e.return=Jxe(e.value,e.length);break;case Kxe:return T2([TR(e,{value:$r(e.value,"@","@"+Wr)})],s);case vre:if(e.length)return p9e(e.props,function(o){switch(f9e(o,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return T2([TR(e,{props:[$r(o,/:(read-\w+)/,":"+s9+"$1")]})],s);case"::placeholder":return T2([TR(e,{props:[$r(o,/:(plac\w+)/,":"+Wr+"input-$1")]}),TR(e,{props:[$r(o,/:(plac\w+)/,":"+s9+"$1")]}),TR(e,{props:[$r(o,/:(plac\w+)/,ac+"input-$1")]})],s)}return""})}},A9e=[R9e],wre=function(e){var n=e.key;if(n==="css"){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,function(m){var _=m.getAttribute("data-emotion");_.indexOf(" ")!==-1&&(document.head.appendChild(m),m.setAttribute("data-s",""))})}var s=e.stylisPlugins||A9e,o={},a,l=[];a=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(m){for(var _=m.getAttribute("data-emotion").split(" "),b=1;b<_.length;b++)o[_[b]]=!0;l.push(m)});var c,u=[I9e,T9e];{var d,h=[S9e,k9e(function(m){d.insert(m)})],f=x9e(u.concat(s,h)),p=function(_){return T2(w9e(_),f)};c=function(_,b,y,x){d=y,p(_?_+"{"+b.styles+"}":b.styles),x&&(g.inserted[b.name]=!0)}}var g={key:n,sheet:new a9e({key:n,container:a,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:o,registered:{},insert:c};return g.sheet.hydrate(l),g},QH={exports:{}},Yr={};/** @license React v16.13.1 * react-is.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var zue;function N9e(){if(zue)return Yr;zue=1;var i=typeof Symbol=="function"&&Symbol.for,e=i?Symbol.for("react.element"):60103,n=i?Symbol.for("react.portal"):60106,r=i?Symbol.for("react.fragment"):60107,s=i?Symbol.for("react.strict_mode"):60108,o=i?Symbol.for("react.profiler"):60114,a=i?Symbol.for("react.provider"):60109,l=i?Symbol.for("react.context"):60110,c=i?Symbol.for("react.async_mode"):60111,u=i?Symbol.for("react.concurrent_mode"):60111,d=i?Symbol.for("react.forward_ref"):60112,h=i?Symbol.for("react.suspense"):60113,f=i?Symbol.for("react.suspense_list"):60120,p=i?Symbol.for("react.memo"):60115,g=i?Symbol.for("react.lazy"):60116,m=i?Symbol.for("react.block"):60121,_=i?Symbol.for("react.fundamental"):60117,b=i?Symbol.for("react.responder"):60118,y=i?Symbol.for("react.scope"):60119;function x(D){if(typeof D=="object"&&D!==null){var R=D.$$typeof;switch(R){case e:switch(D=D.type,D){case c:case u:case r:case o:case s:case h:return D;default:switch(D=D&&D.$$typeof,D){case l:case d:case g:case p:case a:return D;default:return R}}case n:return R}}}function k(D){return x(D)===u}return Yr.AsyncMode=c,Yr.ConcurrentMode=u,Yr.ContextConsumer=l,Yr.ContextProvider=a,Yr.Element=e,Yr.ForwardRef=d,Yr.Fragment=r,Yr.Lazy=g,Yr.Memo=p,Yr.Portal=n,Yr.Profiler=o,Yr.StrictMode=s,Yr.Suspense=h,Yr.isAsyncMode=function(D){return k(D)||x(D)===c},Yr.isConcurrentMode=k,Yr.isContextConsumer=function(D){return x(D)===l},Yr.isContextProvider=function(D){return x(D)===a},Yr.isElement=function(D){return typeof D=="object"&&D!==null&&D.$$typeof===e},Yr.isForwardRef=function(D){return x(D)===d},Yr.isFragment=function(D){return x(D)===r},Yr.isLazy=function(D){return x(D)===g},Yr.isMemo=function(D){return x(D)===p},Yr.isPortal=function(D){return x(D)===n},Yr.isProfiler=function(D){return x(D)===o},Yr.isStrictMode=function(D){return x(D)===s},Yr.isSuspense=function(D){return x(D)===h},Yr.isValidElementType=function(D){return typeof D=="string"||typeof D=="function"||D===r||D===u||D===o||D===s||D===h||D===f||typeof D=="object"&&D!==null&&(D.$$typeof===g||D.$$typeof===p||D.$$typeof===a||D.$$typeof===l||D.$$typeof===d||D.$$typeof===_||D.$$typeof===b||D.$$typeof===y||D.$$typeof===m)},Yr.typeOf=x,Yr}var Vue;function M9e(){return Vue||(Vue=1,QH.exports=N9e()),QH.exports}var JH,Hue;function P9e(){if(Hue)return JH;Hue=1;var i=M9e(),e={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},n={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},r={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},o={};o[i.ForwardRef]=r,o[i.Memo]=s;function a(g){return i.isMemo(g)?s:o[g.$$typeof]||e}var l=Object.defineProperty,c=Object.getOwnPropertyNames,u=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,h=Object.getPrototypeOf,f=Object.prototype;function p(g,m,_){if(typeof m!="string"){if(f){var b=h(m);b&&b!==f&&p(g,b,_)}var y=c(m);u&&(y=y.concat(u(m)));for(var x=a(g),k=a(m),D=0;D=4;++r,s-=4)n=i.charCodeAt(r)&255|(i.charCodeAt(++r)&255)<<8|(i.charCodeAt(++r)&255)<<16|(i.charCodeAt(++r)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(s){case 3:e^=(i.charCodeAt(r+2)&255)<<16;case 2:e^=(i.charCodeAt(r+1)&255)<<8;case 1:e^=i.charCodeAt(r)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var B9e={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},j9e=/[A-Z]|^ms/g,W9e=/_EMO_([^_]+?)_([^]*?)_EMO_/g,eke=function(e){return e.charCodeAt(1)===45},Uue=function(e){return e!=null&&typeof e!="boolean"},eU=Qxe(function(i){return eke(i)?i:i.replace(j9e,"-$&").toLowerCase()}),que=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(W9e,function(r,s,o){return tm={name:s,styles:o,next:tm},s})}return B9e[e]!==1&&!eke(e)&&typeof n=="number"&&n!==0?n+"px":n};function qM(i,e,n){if(n==null)return"";var r=n;if(r.__emotion_styles!==void 0)return r;switch(typeof n){case"boolean":return"";case"object":{var s=n;if(s.anim===1)return tm={name:s.name,styles:s.styles,next:tm},s.name;var o=n;if(o.styles!==void 0){var a=o.next;if(a!==void 0)for(;a!==void 0;)tm={name:a.name,styles:a.styles,next:tm},a=a.next;var l=o.styles+";";return l}return $9e(i,e,n)}case"function":{if(i!==void 0){var c=tm,u=n(i);return tm=c,qM(i,e,u)}break}}var d=n;if(e==null)return d;var h=e[d];return h!==void 0?h:d}function $9e(i,e,n){var r="";if(Array.isArray(n))for(var s=0;s96?G9e:X9e},Zue=function(e,n,r){var s;if(n){var o=n.shouldForwardProp;s=e.__emotion_forwardProp&&o?function(a){return e.__emotion_forwardProp(a)&&o(a)}:o}return typeof s!="function"&&r&&(s=e.__emotion_forwardProp),s},Y9e=function(e){var n=e.cache,r=e.serialized,s=e.isStringTag;return Cre(n,r,s),nke(function(){return cW(n,r,s)}),null},Z9e=function i(e,n){var r=e.__emotion_real===e,s=r&&e.__emotion_base||e,o,a;n!==void 0&&(o=n.label,a=n.target);var l=Zue(e,n,r),c=l||Yue(s),u=!c("as");return function(){var d=arguments,h=r&&e.__emotion_styles!==void 0?e.__emotion_styles.slice(0):[];if(o!==void 0&&h.push("label:"+o+";"),d[0]==null||d[0].raw===void 0)h.push.apply(h,d);else{var f=d[0];h.push(f[0]);for(var p=d.length,g=1;ge(i7e(s)?n:s):e;return C.jsx(rke,{styles:r})}function oke(i,e){return o9(i,e)}function r7e(i,e){Array.isArray(i.__emotion_styles)&&(i.__emotion_styles=e(i.__emotion_styles))}const tde=[];function Py(i){return tde[0]=i,My(tde)}var rU={exports:{}},ps={};/** * @license React * react-is.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var nde;function s7e(){if(nde)return ps;nde=1;var i=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),a=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),u=Symbol.for("react.suspense_list"),d=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),f=Symbol.for("react.view_transition"),p=Symbol.for("react.client.reference");function g(m){if(typeof m=="object"&&m!==null){var _=m.$$typeof;switch(_){case i:switch(m=m.type,m){case n:case s:case r:case c:case u:case f:return m;default:switch(m=m&&m.$$typeof,m){case a:case l:case h:case d:return m;case o:return m;default:return _}}case e:return _}}}return ps.ContextConsumer=o,ps.ContextProvider=a,ps.Element=i,ps.ForwardRef=l,ps.Fragment=n,ps.Lazy=h,ps.Memo=d,ps.Portal=e,ps.Profiler=s,ps.StrictMode=r,ps.Suspense=c,ps.SuspenseList=u,ps.isContextConsumer=function(m){return g(m)===o},ps.isContextProvider=function(m){return g(m)===a},ps.isElement=function(m){return typeof m=="object"&&m!==null&&m.$$typeof===i},ps.isForwardRef=function(m){return g(m)===l},ps.isFragment=function(m){return g(m)===n},ps.isLazy=function(m){return g(m)===h},ps.isMemo=function(m){return g(m)===d},ps.isPortal=function(m){return g(m)===e},ps.isProfiler=function(m){return g(m)===s},ps.isStrictMode=function(m){return g(m)===r},ps.isSuspense=function(m){return g(m)===c},ps.isSuspenseList=function(m){return g(m)===u},ps.isValidElementType=function(m){return typeof m=="string"||typeof m=="function"||m===n||m===s||m===r||m===c||m===u||typeof m=="object"&&m!==null&&(m.$$typeof===h||m.$$typeof===d||m.$$typeof===a||m.$$typeof===o||m.$$typeof===l||m.$$typeof===p||m.getModuleId!==void 0)},ps.typeOf=g,ps}var ide;function o7e(){return ide||(ide=1,rU.exports=s7e()),rU.exports}var a9=o7e();function am(i){if(typeof i!="object"||i===null)return!1;const e=Object.getPrototypeOf(i);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in i)&&!(Symbol.iterator in i)}function ake(i){if($.isValidElement(i)||a9.isValidElementType(i)||!am(i))return i;const e={};return Object.keys(i).forEach(n=>{e[n]=ake(i[n])}),e}function pl(i,e,n={clone:!0}){const r=n.clone?{...i}:i;return am(i)&&am(e)&&Object.keys(e).forEach(s=>{$.isValidElement(e[s])||a9.isValidElementType(e[s])?r[s]=e[s]:am(e[s])&&Object.prototype.hasOwnProperty.call(i,s)&&am(i[s])?r[s]=pl(i[s],e[s],n):n.clone?r[s]=am(e[s])?ake(e[s]):e[s]:r[s]=e[s]}),r}const a7e=i=>{const e=Object.keys(i).map(n=>({key:n,val:i[n]}))||[];return e.sort((n,r)=>n.val-r.val),e.reduce((n,r)=>({...n,[r.key]:r.val}),{})};function l7e(i){const{values:e={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:r=5,...s}=i,o=a7e(e),a=Object.keys(o);function l(f){return`@media (min-width:${typeof e[f]=="number"?e[f]:f}${n})`}function c(f){return`@media (max-width:${(typeof e[f]=="number"?e[f]:f)-r/100}${n})`}function u(f,p){const g=a.indexOf(p);return`@media (min-width:${typeof e[f]=="number"?e[f]:f}${n}) and (max-width:${(g!==-1&&typeof e[a[g]]=="number"?e[a[g]]:p)-r/100}${n})`}function d(f){return a.indexOf(f)+1r.startsWith("@container")).sort((r,s)=>{var a,l;const o=/min-width:\s*([0-9.]+)/;return+(((a=r.match(o))==null?void 0:a[1])||0)-+(((l=s.match(o))==null?void 0:l[1])||0)});return n.length?n.reduce((r,s)=>{const o=e[s];return delete r[s],r[s]=o,r},{...e}):e}function c7e(i,e){return e==="@"||e.startsWith("@")&&(i.some(n=>e.startsWith(`@${n}`))||!!e.match(/^@\d/))}function u7e(i,e){const n=e.match(/^@([^/]+)?\/?(.+)?$/);if(!n)return null;const[,r,s]=n,o=Number.isNaN(+r)?r||0:+r;return i.containerQueries(s).up(o)}function d7e(i){const e=(o,a)=>o.replace("@media",a?`@container ${a}`:"@container");function n(o,a){o.up=(...l)=>e(i.breakpoints.up(...l),a),o.down=(...l)=>e(i.breakpoints.down(...l),a),o.between=(...l)=>e(i.breakpoints.between(...l),a),o.only=(...l)=>e(i.breakpoints.only(...l),a),o.not=(...l)=>{const c=e(i.breakpoints.not(...l),a);return c.includes("not all and")?c.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):c}}const r={},s=o=>(n(r,o),r);return n(s),{...i,containerQueries:s}}const h7e={borderRadius:4};function $N(i,e){return e?pl(i,e,{clone:!1}):i}const uW={xs:0,sm:600,md:900,lg:1200,xl:1536},sde={keys:["xs","sm","md","lg","xl"],up:i=>`@media (min-width:${uW[i]}px)`},f7e={containerQueries:i=>({up:e=>{let n=typeof e=="number"?e:uW[e]||e;return typeof n=="number"&&(n=`${n}px`),i?`@container ${i} (min-width:${n})`:`@container (min-width:${n})`}})};function Lv(i,e,n){const r=i.theme||{};if(Array.isArray(e)){const o=r.breakpoints||sde;return e.reduce((a,l,c)=>(a[o.up(o.keys[c])]=n(e[c]),a),{})}if(typeof e=="object"){const o=r.breakpoints||sde;return Object.keys(e).reduce((a,l)=>{if(c7e(o.keys,l)){const c=u7e(r.containerQueries?r:f7e,l);c&&(a[c]=n(e[l],l))}else if(Object.keys(o.values||uW).includes(l)){const c=o.up(l);a[c]=n(e[l],l)}else{const c=l;a[c]=e[c]}return a},{})}return n(e)}function p7e(i={}){var n;return((n=i.keys)==null?void 0:n.reduce((r,s)=>{const o=i.up(s);return r[o]={},r},{}))||{}}function ode(i,e){return i.reduce((n,r)=>{const s=n[r];return(!s||Object.keys(s).length===0)&&delete n[r],n},e)}function Ue(i){if(typeof i!="string")throw new Error(kv(7));return i.charAt(0).toUpperCase()+i.slice(1)}function fy(i,e,n=!0){if(!e||typeof e!="string")return null;if(i&&i.vars&&n){const r=`vars.${e}`.split(".").reduce((s,o)=>s&&s[o]?s[o]:null,i);if(r!=null)return r}return e.split(".").reduce((r,s)=>r&&r[s]!=null?r[s]:null,i)}function l9(i,e,n,r=n){let s;return typeof i=="function"?s=i(n):Array.isArray(i)?s=i[n]||r:s=fy(i,n)||r,e&&(s=e(s,r,i)),s}function pa(i){const{prop:e,cssProperty:n=i.prop,themeKey:r,transform:s}=i,o=a=>{if(a[e]==null)return null;const l=a[e],c=a.theme,u=fy(c,r)||{};return Lv(a,l,h=>{let f=l9(u,s,h);return h===f&&typeof h=="string"&&(f=l9(u,s,`${e}${h==="default"?"":Ue(h)}`,h)),n===!1?f:{[n]:f}})};return o.propTypes={},o.filterProps=[e],o}function g7e(i){const e={};return n=>(e[n]===void 0&&(e[n]=i(n)),e[n])}const m7e={m:"margin",p:"padding"},_7e={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},ade={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},v7e=g7e(i=>{if(i.length>2)if(ade[i])i=ade[i];else return[i];const[e,n]=i.split(""),r=m7e[e],s=_7e[n]||"";return Array.isArray(s)?s.map(o=>r+o):[r+s]}),Lre=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],Dre=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"];[...Lre,...Dre];function n5(i,e,n,r){const s=fy(i,e,!0)??n;return typeof s=="number"||typeof s=="string"?o=>typeof o=="string"?o:typeof s=="string"?s.startsWith("var(")&&o===0?0:s.startsWith("var(")&&o===1?s:`calc(${o} * ${s})`:s*o:Array.isArray(s)?o=>{if(typeof o=="string")return o;const a=Math.abs(o),l=s[a];return o>=0?l:typeof l=="number"?-l:typeof l=="string"&&l.startsWith("var(")?`calc(-1 * ${l})`:`-${l}`}:typeof s=="function"?s:()=>{}}function Ere(i){return n5(i,"spacing",8)}function i5(i,e){return typeof e=="string"||e==null?e:i(e)}function b7e(i,e){return n=>i.reduce((r,s)=>(r[s]=i5(e,n),r),{})}function y7e(i,e,n,r){if(!e.includes(n))return null;const s=v7e(n),o=b7e(s,r),a=i[n];return Lv(i,a,o)}function lke(i,e){const n=Ere(i.theme);return Object.keys(i).map(r=>y7e(i,e,r,n)).reduce($N,{})}function Ao(i){return lke(i,Lre)}Ao.propTypes={};Ao.filterProps=Lre;function No(i){return lke(i,Dre)}No.propTypes={};No.filterProps=Dre;function cke(i=8,e=Ere({spacing:i})){if(i.mui)return i;const n=(...r)=>(r.length===0?[1]:r).map(o=>{const a=e(o);return typeof a=="number"?`${a}px`:a}).join(" ");return n.mui=!0,n}function dW(...i){const e=i.reduce((r,s)=>(s.filterProps.forEach(o=>{r[o]=s}),r),{}),n=r=>Object.keys(r).reduce((s,o)=>e[o]?$N(s,e[o](r)):s,{});return n.propTypes={},n.filterProps=i.reduce((r,s)=>r.concat(s.filterProps),[]),n}function of(i){return typeof i!="number"?i:`${i}px solid`}function Af(i,e){return pa({prop:i,themeKey:"borders",transform:e})}const w7e=Af("border",of),C7e=Af("borderTop",of),S7e=Af("borderRight",of),x7e=Af("borderBottom",of),k7e=Af("borderLeft",of),L7e=Af("borderColor"),D7e=Af("borderTopColor"),E7e=Af("borderRightColor"),I7e=Af("borderBottomColor"),T7e=Af("borderLeftColor"),R7e=Af("outline",of),A7e=Af("outlineColor"),hW=i=>{if(i.borderRadius!==void 0&&i.borderRadius!==null){const e=n5(i.theme,"shape.borderRadius",4),n=r=>({borderRadius:i5(e,r)});return Lv(i,i.borderRadius,n)}return null};hW.propTypes={};hW.filterProps=["borderRadius"];dW(w7e,C7e,S7e,x7e,k7e,L7e,D7e,E7e,I7e,T7e,hW,R7e,A7e);const fW=i=>{if(i.gap!==void 0&&i.gap!==null){const e=n5(i.theme,"spacing",8),n=r=>({gap:i5(e,r)});return Lv(i,i.gap,n)}return null};fW.propTypes={};fW.filterProps=["gap"];const pW=i=>{if(i.columnGap!==void 0&&i.columnGap!==null){const e=n5(i.theme,"spacing",8),n=r=>({columnGap:i5(e,r)});return Lv(i,i.columnGap,n)}return null};pW.propTypes={};pW.filterProps=["columnGap"];const gW=i=>{if(i.rowGap!==void 0&&i.rowGap!==null){const e=n5(i.theme,"spacing",8),n=r=>({rowGap:i5(e,r)});return Lv(i,i.rowGap,n)}return null};gW.propTypes={};gW.filterProps=["rowGap"];const N7e=pa({prop:"gridColumn"}),M7e=pa({prop:"gridRow"}),P7e=pa({prop:"gridAutoFlow"}),O7e=pa({prop:"gridAutoColumns"}),F7e=pa({prop:"gridAutoRows"}),B7e=pa({prop:"gridTemplateColumns"}),j7e=pa({prop:"gridTemplateRows"}),W7e=pa({prop:"gridTemplateAreas"}),$7e=pa({prop:"gridArea"});dW(fW,pW,gW,N7e,M7e,P7e,O7e,F7e,B7e,j7e,W7e,$7e);function R2(i,e){return e==="grey"?e:i}const z7e=pa({prop:"color",themeKey:"palette",transform:R2}),V7e=pa({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:R2}),H7e=pa({prop:"backgroundColor",themeKey:"palette",transform:R2});dW(z7e,V7e,H7e);function Jd(i){return i<=1&&i!==0?`${i*100}%`:i}const U7e=pa({prop:"width",transform:Jd}),Ire=i=>{if(i.maxWidth!==void 0&&i.maxWidth!==null){const e=n=>{var s,o,a,l,c;const r=((a=(o=(s=i.theme)==null?void 0:s.breakpoints)==null?void 0:o.values)==null?void 0:a[n])||uW[n];return r?((c=(l=i.theme)==null?void 0:l.breakpoints)==null?void 0:c.unit)!=="px"?{maxWidth:`${r}${i.theme.breakpoints.unit}`}:{maxWidth:r}:{maxWidth:Jd(n)}};return Lv(i,i.maxWidth,e)}return null};Ire.filterProps=["maxWidth"];const q7e=pa({prop:"minWidth",transform:Jd}),K7e=pa({prop:"height",transform:Jd}),G7e=pa({prop:"maxHeight",transform:Jd}),X7e=pa({prop:"minHeight",transform:Jd});pa({prop:"size",cssProperty:"width",transform:Jd});pa({prop:"size",cssProperty:"height",transform:Jd});const Y7e=pa({prop:"boxSizing"});dW(U7e,Ire,q7e,K7e,G7e,X7e,Y7e);const r5={border:{themeKey:"borders",transform:of},borderTop:{themeKey:"borders",transform:of},borderRight:{themeKey:"borders",transform:of},borderBottom:{themeKey:"borders",transform:of},borderLeft:{themeKey:"borders",transform:of},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:of},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:hW},color:{themeKey:"palette",transform:R2},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:R2},backgroundColor:{themeKey:"palette",transform:R2},p:{style:No},pt:{style:No},pr:{style:No},pb:{style:No},pl:{style:No},px:{style:No},py:{style:No},padding:{style:No},paddingTop:{style:No},paddingRight:{style:No},paddingBottom:{style:No},paddingLeft:{style:No},paddingX:{style:No},paddingY:{style:No},paddingInline:{style:No},paddingInlineStart:{style:No},paddingInlineEnd:{style:No},paddingBlock:{style:No},paddingBlockStart:{style:No},paddingBlockEnd:{style:No},m:{style:Ao},mt:{style:Ao},mr:{style:Ao},mb:{style:Ao},ml:{style:Ao},mx:{style:Ao},my:{style:Ao},margin:{style:Ao},marginTop:{style:Ao},marginRight:{style:Ao},marginBottom:{style:Ao},marginLeft:{style:Ao},marginX:{style:Ao},marginY:{style:Ao},marginInline:{style:Ao},marginInlineStart:{style:Ao},marginInlineEnd:{style:Ao},marginBlock:{style:Ao},marginBlockStart:{style:Ao},marginBlockEnd:{style:Ao},displayPrint:{cssProperty:!1,transform:i=>({"@media print":{display:i}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:fW},rowGap:{style:gW},columnGap:{style:pW},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:Jd},maxWidth:{style:Ire},minWidth:{transform:Jd},height:{transform:Jd},maxHeight:{transform:Jd},minHeight:{transform:Jd},boxSizing:{},font:{themeKey:"font"},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}};function Z7e(...i){const e=i.reduce((r,s)=>r.concat(Object.keys(s)),[]),n=new Set(e);return i.every(r=>n.size===Object.keys(r).length)}function Q7e(i,e){return typeof i=="function"?i(e):i}function J7e(){function i(n,r,s,o){const a={[n]:r,theme:s},l=o[n];if(!l)return{[n]:r};const{cssProperty:c=n,themeKey:u,transform:d,style:h}=l;if(r==null)return null;if(u==="typography"&&r==="inherit")return{[n]:r};const f=fy(s,u)||{};return h?h(a):Lv(a,r,g=>{let m=l9(f,d,g);return g===m&&typeof g=="string"&&(m=l9(f,d,`${n}${g==="default"?"":Ue(g)}`,g)),c===!1?m:{[c]:m}})}function e(n){const{sx:r,theme:s={},nested:o}=n||{};if(!r)return null;const a=s.unstable_sxConfig??r5;function l(c){let u=c;if(typeof c=="function")u=c(s);else if(typeof c!="object")return c;if(!u)return null;const d=p7e(s.breakpoints),h=Object.keys(d);let f=d;return Object.keys(u).forEach(p=>{const g=Q7e(u[p],s);if(g!=null)if(typeof g=="object")if(a[p])f=$N(f,i(p,g,s,a));else{const m=Lv({theme:s},g,_=>({[p]:_}));Z7e(m,g)?f[p]=e({sx:g,theme:s,nested:!0}):f=$N(f,m)}else f=$N(f,i(p,g,s,a))}),!o&&s.modularCssLayers?{"@layer sx":rde(s,ode(h,f))}:rde(s,ode(h,f))}return Array.isArray(r)?r.map(l):l(r)}return e}const i1=J7e();i1.filterProps=["sx"];function eje(i,e){var r;const n=this;if(n.vars){if(!((r=n.colorSchemes)!=null&&r[i])||typeof n.getColorSchemeSelector!="function")return{};let s=n.getColorSchemeSelector(i);return s==="&"?e:((s.includes("data-")||s.includes("."))&&(s=`*:where(${s.replace(/\s*&$/,"")}) &`),{[s]:e})}return n.palette.mode===i?e:{}}function s5(i={},...e){const{breakpoints:n={},palette:r={},spacing:s,shape:o={},...a}=i,l=l7e(n),c=cke(s);let u=pl({breakpoints:l,direction:"ltr",components:{},palette:{mode:"light",...r},spacing:c,shape:{...h7e,...o}},a);return u=d7e(u),u.applyStyles=eje,u=e.reduce((d,h)=>pl(d,h),u),u.unstable_sxConfig={...r5,...a==null?void 0:a.unstable_sxConfig},u.unstable_sx=function(h){return i1({sx:h,theme:this})},u}function tje(i){return Object.keys(i).length===0}function mW(i=null){const e=$.useContext(j1);return!e||tje(e)?i:e}const nje=s5();function o5(i=nje){return mW(i)}function sU(i){const e=Py(i);return i!==e&&e.styles?(e.styles.match(/^@layer\s+[^{]*$/)||(e.styles=`@layer global{${e.styles}}`),e):i}function uke({styles:i,themeId:e,defaultTheme:n={}}){const r=o5(n),s=e&&r[e]||r;let o=typeof i=="function"?i(s):i;return s.modularCssLayers&&(Array.isArray(o)?o=o.map(a=>sU(typeof a=="function"?a(s):a)):o=sU(o)),C.jsx(ske,{styles:o})}const ije=i=>{var r;const e={systemProps:{},otherProps:{}},n=((r=i==null?void 0:i.theme)==null?void 0:r.unstable_sxConfig)??r5;return Object.keys(i).forEach(s=>{n[s]?e.systemProps[s]=i[s]:e.otherProps[s]=i[s]}),e};function Tre(i){const{sx:e,...n}=i,{systemProps:r,otherProps:s}=ije(n);let o;return Array.isArray(e)?o=[r,...e]:typeof e=="function"?o=(...a)=>{const l=e(...a);return am(l)?{...r,...l}:r}:o={...r,...e},{...s,sx:o}}const lde=i=>i,rje=()=>{let i=lde;return{configure(e){i=e},generate(e){return i(e)},reset(){i=lde}}},Rre=rje();function dke(i){var e,n,r="";if(typeof i=="string"||typeof i=="number")r+=i;else if(typeof i=="object")if(Array.isArray(i)){var s=i.length;for(e=0;el!=="theme"&&l!=="sx"&&l!=="as"})(i1);return $.forwardRef(function(c,u){const d=o5(n),{className:h,component:f="div",...p}=Tre(c);return C.jsx(o,{as:f,ref:u,className:dt(h,s?s(r):r),theme:e&&d[e]||d,...p})})}const sje={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function Xt(i,e,n="Mui"){const r=sje[e];return r?`${n}-${r}`:`${Rre.generate(i)}-${e}`}function Yt(i,e,n="Mui"){const r={};return e.forEach(s=>{r[s]=Xt(i,s,n)}),r}const oje=Yt("MuiBox",["root"]),aje=hke({defaultClassName:oje.root,generateClassName:Rre.generate});function fke(i){const{variants:e,...n}=i,r={variants:e,style:Py(n),isProcessed:!0};return r.style===n||e&&e.forEach(s=>{typeof s.style!="function"&&(s.style=Py(s.style))}),r}const lje=s5();function oU(i){return i!=="ownerState"&&i!=="theme"&&i!=="sx"&&i!=="as"}function oS(i,e){return e&&i&&typeof i=="object"&&i.styles&&!i.styles.startsWith("@layer")&&(i.styles=`@layer ${e}{${String(i.styles)}}`),i}function cje(i){return i?(e,n)=>n[i]:null}function uje(i,e,n){i.theme=hje(i.theme)?n:i.theme[e]||i.theme}function XB(i,e,n){const r=typeof e=="function"?e(i):e;if(Array.isArray(r))return r.flatMap(s=>XB(i,s,n));if(Array.isArray(r==null?void 0:r.variants)){let s;if(r.isProcessed)s=n?oS(r.style,n):r.style;else{const{variants:o,...a}=r;s=n?oS(Py(a),n):a}return pke(i,r.variants,[s],n)}return r!=null&&r.isProcessed?n?oS(Py(r.style),n):r.style:n?oS(Py(r),n):r}function pke(i,e,n=[],r=void 0){var o;let s;e:for(let a=0;a{r7e(l,R=>R.filter(E=>E!==i1));const{name:u,slot:d,skipVariantsResolver:h,skipSx:f,overridesResolver:p=cje(pje(d)),...g}=c,m=u&&u.startsWith("Mui")||d?"components":"custom",_=h!==void 0?h:d&&d!=="Root"&&d!=="root"||!1,b=f||!1;let y=oU;d==="Root"||d==="root"?y=r:d?y=s:fje(l)&&(y=void 0);const x=oke(l,{shouldForwardProp:y,label:dje(),...g}),k=R=>{if(R.__emotion_real===R)return R;if(typeof R=="function")return function(A){return XB(A,R,A.theme.modularCssLayers?m:void 0)};if(am(R)){const E=fke(R);return function(M){return E.variants?XB(M,E,M.theme.modularCssLayers?m:void 0):M.theme.modularCssLayers?oS(E.style,m):E.style}}return R},D=(...R)=>{const E=[],A=R.map(k),M=[];if(E.push(o),u&&p&&M.push(function(B){var Y,X;const z=(X=(Y=B.theme.components)==null?void 0:Y[u])==null?void 0:X.styleOverrides;if(!z)return null;const H={};for(const Q in z)H[Q]=XB(B,z[Q],B.theme.modularCssLayers?"theme":void 0);return p(B,H)}),u&&!_&&M.push(function(B){var H,Y;const j=B.theme,z=(Y=(H=j==null?void 0:j.components)==null?void 0:H[u])==null?void 0:Y.variants;return z?pke(B,z,[],B.theme.modularCssLayers?"theme":void 0):null}),b||M.push(i1),Array.isArray(A[0])){const O=A.shift(),B=new Array(E.length).fill(""),j=new Array(M.length).fill("");let z;z=[...B,...O,...j],z.raw=[...B,...O.raw,...j],E.unshift(z)}const N=[...E,...A,...M],P=x(...N);return l.muiName&&(P.muiName=l.muiName),P};return x.withConfig&&(D.withConfig=x.withConfig),D}}function dje(i,e){return void 0}function hje(i){for(const e in i)return!1;return!0}function fje(i){return typeof i=="string"&&i.charCodeAt(0)>96}function pje(i){return i&&i.charAt(0).toLowerCase()+i.slice(1)}const mke=gke();function mE(i,e,n=!1){const r={...e};for(const s in i)if(Object.prototype.hasOwnProperty.call(i,s)){const o=s;if(o==="components"||o==="slots")r[o]={...i[o],...r[o]};else if(o==="componentsProps"||o==="slotProps"){const a=i[o],l=e[o];if(!l)r[o]=a||{};else if(!a)r[o]=l;else{r[o]={...l};for(const c in a)if(Object.prototype.hasOwnProperty.call(a,c)){const u=c;r[o][u]=mE(a[u],l[u],n)}}}else o==="className"&&n&&e.className?r.className=dt(i==null?void 0:i.className,e==null?void 0:e.className):o==="style"&&n&&e.style?r.style={...i==null?void 0:i.style,...e==null?void 0:e.style}:r[o]===void 0&&(r[o]=i[o])}return r}function _ke(i){const{theme:e,name:n,props:r}=i;return!e||!e.components||!e.components[n]||!e.components[n].defaultProps?r:mE(e.components[n].defaultProps,r)}function vke({props:i,name:e,defaultTheme:n,themeId:r}){let s=o5(n);return r&&(s=s[r]||s),_ke({theme:s,name:e,props:i})}const wc=typeof window<"u"?$.useLayoutEffect:$.useEffect;function gje(i,e,n,r,s){const[o,a]=$.useState(()=>s&&n?n(i).matches:r?r(i).matches:e);return wc(()=>{if(!n)return;const l=n(i),c=()=>{a(l.matches)};return c(),l.addEventListener("change",c),()=>{l.removeEventListener("change",c)}},[i,n]),o}const mje={...ZS},bke=mje.useSyncExternalStore;function _je(i,e,n,r,s){const o=$.useCallback(()=>e,[e]),a=$.useMemo(()=>{if(s&&n)return()=>n(i).matches;if(r!==null){const{matches:d}=r(i);return()=>d}return o},[o,i,r,s,n]),[l,c]=$.useMemo(()=>{if(n===null)return[o,()=>()=>{}];const d=n(i);return[()=>d.matches,h=>(d.addEventListener("change",h),()=>{d.removeEventListener("change",h)})]},[o,n,i]);return bke(c,l,a)}function yke(i={}){const{themeId:e}=i;return function(r,s={}){let o=mW();o&&e&&(o=o[e]||o);const a=typeof window<"u"&&typeof window.matchMedia<"u",{defaultMatches:l=!1,matchMedia:c=a?window.matchMedia:null,ssrMatchMedia:u=null,noSsr:d=!1}=_ke({name:"MuiUseMediaQuery",props:s,theme:o});let h=typeof r=="function"?r(o):r;return h=h.replace(/^@media( ?)/m,""),h.includes("print")&&console.warn(["MUI: You have provided a `print` query to the `useMediaQuery` hook.","Using the print media query to modify print styles can lead to unexpected results.","Consider using the `displayPrint` field in the `sx` prop instead.","More information about `displayPrint` on our docs: https://mui.com/system/display/#display-in-print."].join(` `)),(bke!==void 0?_je:gje)(h,l,c,u,d)}}yke();function FD(i,e=Number.MIN_SAFE_INTEGER,n=Number.MAX_SAFE_INTEGER){return Math.max(e,Math.min(i,n))}function Are(i,e=0,n=1){return FD(i,e,n)}function vje(i){i=i.slice(1);const e=new RegExp(`.{1,${i.length>=6?2:1}}`,"g");let n=i.match(e);return n&&n[0].length===1&&(n=n.map(r=>r+r)),n?`rgb${n.length===4?"a":""}(${n.map((r,s)=>s<3?parseInt(r,16):Math.round(parseInt(r,16)/255*1e3)/1e3).join(", ")})`:""}function r1(i){if(i.type)return i;if(i.charAt(0)==="#")return r1(vje(i));const e=i.indexOf("("),n=i.substring(0,e);if(!["rgb","rgba","hsl","hsla","color"].includes(n))throw new Error(kv(9,i));let r=i.substring(e+1,i.length-1),s;if(n==="color"){if(r=r.split(" "),s=r.shift(),r.length===4&&r[3].charAt(0)==="/"&&(r[3]=r[3].slice(1)),!["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].includes(s))throw new Error(kv(10,s))}else r=r.split(",");return r=r.map(o=>parseFloat(o)),{type:n,values:r,colorSpace:s}}const bje=i=>{const e=r1(i);return e.values.slice(0,3).map((n,r)=>e.type.includes("hsl")&&r!==0?`${n}%`:n).join(" ")},QA=(i,e)=>{try{return bje(i)}catch{return i}};function _W(i){const{type:e,colorSpace:n}=i;let{values:r}=i;return e.includes("rgb")?r=r.map((s,o)=>o<3?parseInt(s,10):s):e.includes("hsl")&&(r[1]=`${r[1]}%`,r[2]=`${r[2]}%`),e.includes("color")?r=`${n} ${r.join(" ")}`:r=`${r.join(", ")}`,`${e}(${r})`}function wke(i){i=r1(i);const{values:e}=i,n=e[0],r=e[1]/100,s=e[2]/100,o=r*Math.min(s,1-s),a=(u,d=(u+n/30)%12)=>s-o*Math.max(Math.min(d-3,9-d,1),-1);let l="rgb";const c=[Math.round(a(0)*255),Math.round(a(8)*255),Math.round(a(4)*255)];return i.type==="hsla"&&(l+="a",c.push(e[3])),_W({type:l,values:c})}function vZ(i){i=r1(i);let e=i.type==="hsl"||i.type==="hsla"?r1(wke(i)).values:i.values;return e=e.map(n=>(i.type!=="color"&&(n/=255),n<=.03928?n/12.92:((n+.055)/1.055)**2.4)),Number((.2126*e[0]+.7152*e[1]+.0722*e[2]).toFixed(3))}function yje(i,e){const n=vZ(i),r=vZ(e);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function Pt(i,e){return i=r1(i),e=Are(e),(i.type==="rgb"||i.type==="hsl")&&(i.type+="a"),i.type==="color"?i.values[3]=`/${e}`:i.values[3]=e,_W(i)}function c3(i,e,n){try{return Pt(i,e)}catch{return i}}function $m(i,e){if(i=r1(i),e=Are(e),i.type.includes("hsl"))i.values[2]*=1-e;else if(i.type.includes("rgb")||i.type.includes("color"))for(let n=0;n<3;n+=1)i.values[n]*=1-e;return _W(i)}function Ls(i,e,n){try{return $m(i,e)}catch{return i}}function qp(i,e){if(i=r1(i),e=Are(e),i.type.includes("hsl"))i.values[2]+=(100-i.values[2])*e;else if(i.type.includes("rgb"))for(let n=0;n<3;n+=1)i.values[n]+=(255-i.values[n])*e;else if(i.type.includes("color"))for(let n=0;n<3;n+=1)i.values[n]+=(1-i.values[n])*e;return _W(i)}function Ds(i,e,n){try{return qp(i,e)}catch{return i}}function wje(i,e=.15){return vZ(i)>.5?$m(i,e):qp(i,e)}function u3(i,e,n){try{return wje(i,e)}catch{return i}}const Cke=$.createContext(null);function Nre(){return $.useContext(Cke)}const Cje=typeof Symbol=="function"&&Symbol.for,Sje=Cje?Symbol.for("mui.nested"):"__THEME_NESTED__";function xje(i,e){return typeof e=="function"?e(i):{...i,...e}}function kje(i){const{children:e,theme:n}=i,r=Nre(),s=$.useMemo(()=>{const o=r===null?{...n}:xje(r,n);return o!=null&&(o[Sje]=r!==null),o},[n,r]);return C.jsx(Cke.Provider,{value:s,children:e})}const Ske=$.createContext();function Lje({value:i,...e}){return C.jsx(Ske.Provider,{value:i??!0,...e})}const Pv=()=>$.useContext(Ske)??!1,xke=$.createContext(void 0);function Dje({value:i,children:e}){return C.jsx(xke.Provider,{value:i,children:e})}function Eje(i){const{theme:e,name:n,props:r}=i;if(!e||!e.components||!e.components[n])return r;const s=e.components[n];return s.defaultProps?mE(s.defaultProps,r,e.components.mergeClassNameAndStyle):!s.styleOverrides&&!s.variants?mE(s,r,e.components.mergeClassNameAndStyle):r}function Ije({props:i,name:e}){const n=$.useContext(xke);return Eje({props:i,name:e,theme:{components:n}})}let cde=0;function Tje(i){const[e,n]=$.useState(i),r=i||e;return $.useEffect(()=>{e==null&&(cde+=1,n(`mui-${cde}`))},[e]),r}const Rje={...ZS},ude=Rje.useId;function W1(i){if(ude!==void 0){const e=ude();return i??e}return Tje(i)}function Aje(i){const e=mW(),n=W1()||"",{modularCssLayers:r}=i;let s="mui.global, mui.components, mui.theme, mui.custom, mui.sx";return!r||e!==null?s="":typeof r=="string"?s=r.replace(/mui(?!\.)/g,s):s=`@layer ${s};`,wc(()=>{var l,c;const o=document.querySelector("head");if(!o)return;const a=o.firstChild;if(s){if(a&&((l=a.hasAttribute)!=null&&l.call(a,"data-mui-layer-order"))&&a.getAttribute("data-mui-layer-order")===n)return;const u=document.createElement("style");u.setAttribute("data-mui-layer-order",n),u.textContent=s,o.prepend(u)}else(c=o.querySelector(`style[data-mui-layer-order="${n}"]`))==null||c.remove()},[s,n]),s?C.jsx(uke,{styles:s}):null}const dde={};function hde(i,e,n,r=!1){return $.useMemo(()=>{const s=i&&e[i]||e;if(typeof n=="function"){const o=n(s),a=i?{...e,[i]:o}:o;return r?()=>a:a}return i?{...e,[i]:n}:{...e,...n}},[i,e,n,r])}function kke(i){const{children:e,theme:n,themeId:r}=i,s=mW(dde),o=Nre()||dde,a=hde(r,s,n),l=hde(r,o,n,!0),c=(r?a[r]:a).direction==="rtl",u=Aje(a);return C.jsx(kje,{theme:l,children:C.jsx(j1.Provider,{value:a,children:C.jsx(Lje,{value:c,children:C.jsxs(Dje,{value:r?a[r].components:a.components,children:[u,e]})})})})}const fde={theme:void 0};function Nje(i){let e,n;return function(s){let o=e;return(o===void 0||s.theme!==n)&&(fde.theme=s.theme,o=fke(i(fde)),e=o,n=s.theme),o}}const Mre="mode",Pre="color-scheme",Mje="data-color-scheme";function Pje(i){const{defaultMode:e="system",defaultLightColorScheme:n="light",defaultDarkColorScheme:r="dark",modeStorageKey:s=Mre,colorSchemeStorageKey:o=Pre,attribute:a=Mje,colorSchemeNode:l="document.documentElement",nonce:c}=i||{};let u="",d=a;if(a==="class"&&(d=".%s"),a==="data"&&(d="[data-%s]"),d.startsWith(".")){const f=d.substring(1);u+=`${l}.classList.remove('${f}'.replace('%s', light), '${f}'.replace('%s', dark)); ${l}.classList.add('${f}'.replace('%s', colorScheme));`}const h=d.match(/\[([^\]]+)\]/);if(h){const[f,p]=h[1].split("=");p||(u+=`${l}.removeAttribute('${f}'.replace('%s', light)); ${l}.removeAttribute('${f}'.replace('%s', dark));`),u+=` ${l}.setAttribute('${f}'.replace('%s', colorScheme), ${p?`${p}.replace('%s', colorScheme)`:'""'});`}else u+=`${l}.setAttribute('${d}', colorScheme);`;return C.jsx("script",{suppressHydrationWarning:!0,nonce:typeof window>"u"?c:"",dangerouslySetInnerHTML:{__html:`(function() { try { let colorScheme = ''; const mode = localStorage.getItem('${s}') || '${e}'; const dark = localStorage.getItem('${o}-dark') || '${r}'; const light = localStorage.getItem('${o}-light') || '${n}'; if (mode === 'system') { // handle system mode const mql = window.matchMedia('(prefers-color-scheme: dark)'); if (mql.matches) { colorScheme = dark } else { colorScheme = light } } if (mode === 'light') { colorScheme = light; } if (mode === 'dark') { colorScheme = dark; } if (colorScheme) { ${u} } } catch(e){}})();`}},"mui-color-scheme-init")}function Oje(){}const Fje=({key:i,storageWindow:e})=>(!e&&typeof window<"u"&&(e=window),{get(n){if(typeof window>"u")return;if(!e)return n;let r;try{r=e.localStorage.getItem(i)}catch{}return r||n},set:n=>{if(e)try{e.localStorage.setItem(i,n)}catch{}},subscribe:n=>{if(!e)return Oje;const r=s=>{const o=s.newValue;s.key===i&&n(o)};return e.addEventListener("storage",r),()=>{e.removeEventListener("storage",r)}}});function aU(){}function pde(i){if(typeof window<"u"&&typeof window.matchMedia=="function"&&i==="system")return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function Lke(i,e){if(i.mode==="light"||i.mode==="system"&&i.systemMode==="light")return e("light");if(i.mode==="dark"||i.mode==="system"&&i.systemMode==="dark")return e("dark")}function Bje(i){return Lke(i,e=>{if(e==="light")return i.lightColorScheme;if(e==="dark")return i.darkColorScheme})}function jje(i){const{defaultMode:e="light",defaultLightColorScheme:n,defaultDarkColorScheme:r,supportedColorSchemes:s=[],modeStorageKey:o=Mre,colorSchemeStorageKey:a=Pre,storageWindow:l=typeof window>"u"?void 0:window,storageManager:c=Fje,noSsr:u=!1}=i,d=s.join(","),h=s.length>1,f=$.useMemo(()=>c==null?void 0:c({key:o,storageWindow:l}),[c,o,l]),p=$.useMemo(()=>c==null?void 0:c({key:`${a}-light`,storageWindow:l}),[c,a,l]),g=$.useMemo(()=>c==null?void 0:c({key:`${a}-dark`,storageWindow:l}),[c,a,l]),[m,_]=$.useState(()=>{const A=(f==null?void 0:f.get(e))||e,M=(p==null?void 0:p.get(n))||n,N=(g==null?void 0:g.get(r))||r;return{mode:A,systemMode:pde(A),lightColorScheme:M,darkColorScheme:N}}),[b,y]=$.useState(u||!h);$.useEffect(()=>{y(!0)},[]);const x=Bje(m),k=$.useCallback(A=>{_(M=>{if(A===M.mode)return M;const N=A??e;return f==null||f.set(N),{...M,mode:N,systemMode:pde(N)}})},[f,e]),D=$.useCallback(A=>{A?typeof A=="string"?A&&!d.includes(A)?console.error(`\`${A}\` does not exist in \`theme.colorSchemes\`.`):_(M=>{const N={...M};return Lke(M,P=>{P==="light"&&(p==null||p.set(A),N.lightColorScheme=A),P==="dark"&&(g==null||g.set(A),N.darkColorScheme=A)}),N}):_(M=>{const N={...M},P=A.light===null?n:A.light,O=A.dark===null?r:A.dark;return P&&(d.includes(P)?(N.lightColorScheme=P,p==null||p.set(P)):console.error(`\`${P}\` does not exist in \`theme.colorSchemes\`.`)),O&&(d.includes(O)?(N.darkColorScheme=O,g==null||g.set(O)):console.error(`\`${O}\` does not exist in \`theme.colorSchemes\`.`)),N}):_(M=>(p==null||p.set(n),g==null||g.set(r),{...M,lightColorScheme:n,darkColorScheme:r}))},[d,p,g,n,r]),R=$.useCallback(A=>{m.mode==="system"&&_(M=>{const N=A!=null&&A.matches?"dark":"light";return M.systemMode===N?M:{...M,systemMode:N}})},[m.mode]),E=$.useRef(R);return E.current=R,$.useEffect(()=>{if(typeof window.matchMedia!="function"||!h)return;const A=(...N)=>E.current(...N),M=window.matchMedia("(prefers-color-scheme: dark)");return M.addListener(A),A(M),()=>{M.removeListener(A)}},[h]),$.useEffect(()=>{if(h){const A=(f==null?void 0:f.subscribe(P=>{(!P||["light","dark","system"].includes(P))&&k(P||e)}))||aU,M=(p==null?void 0:p.subscribe(P=>{(!P||d.match(P))&&D({light:P})}))||aU,N=(g==null?void 0:g.subscribe(P=>{(!P||d.match(P))&&D({dark:P})}))||aU;return()=>{A(),M(),N()}}},[D,k,d,e,l,h,f,p,g]),{...m,mode:b?m.mode:void 0,systemMode:b?m.systemMode:void 0,colorScheme:b?x:void 0,setMode:k,setColorScheme:D}}const Wje="*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function $je(i){const{themeId:e,theme:n={},modeStorageKey:r=Mre,colorSchemeStorageKey:s=Pre,disableTransitionOnChange:o=!1,defaultColorScheme:a,resolveTheme:l}=i,c={allColorSchemes:[],colorScheme:void 0,darkColorScheme:void 0,lightColorScheme:void 0,mode:void 0,setColorScheme:()=>{},setMode:()=>{},systemMode:void 0},u=$.createContext(void 0),d=()=>$.useContext(u)||c,h={},f={};function p(b){var de,Se,Ie,nt;const{children:y,theme:x,modeStorageKey:k=r,colorSchemeStorageKey:D=s,disableTransitionOnChange:R=o,storageManager:E,storageWindow:A=typeof window>"u"?void 0:window,documentNode:M=typeof document>"u"?void 0:document,colorSchemeNode:N=typeof document>"u"?void 0:document.documentElement,disableNestedContext:P=!1,disableStyleSheetGeneration:O=!1,defaultMode:B="system",forceThemeRerender:j=!1,noSsr:z}=b,H=$.useRef(!1),Y=Nre(),X=$.useContext(u),Q=!!X&&!P,ie=$.useMemo(()=>x||(typeof n=="function"?n():n),[x]),K=ie[e],ee=K||ie,{colorSchemes:le=h,components:ke=f,cssVarPrefix:xe}=ee,me=Object.keys(le).filter(Oe=>!!le[Oe]).join(","),Ee=$.useMemo(()=>me.split(","),[me]),je=typeof a=="string"?a:a.light,qe=typeof a=="string"?a:a.dark,Ze=le[je]&&le[qe]?B:((Se=(de=le[ee.defaultColorScheme])==null?void 0:de.palette)==null?void 0:Se.mode)||((Ie=ee.palette)==null?void 0:Ie.mode),{mode:We,setMode:ut,systemMode:st,lightColorScheme:mt,darkColorScheme:Rt,colorScheme:Vt,setColorScheme:Ot}=jje({supportedColorSchemes:Ee,defaultLightColorScheme:je,defaultDarkColorScheme:qe,modeStorageKey:k,colorSchemeStorageKey:D,defaultMode:Ze,storageManager:E,storageWindow:A,noSsr:z});let vt=We,wn=Vt;Q&&(vt=X.mode,wn=X.colorScheme);let Ce=wn||ee.defaultColorScheme;ee.vars&&!j&&(Ce=ee.defaultColorScheme);const ge=$.useMemo(()=>{var gt;const Oe=((gt=ee.generateThemeVars)==null?void 0:gt.call(ee))||ee.vars,Ve={...ee,components:ke,colorSchemes:le,cssVarPrefix:xe,vars:Oe};if(typeof Ve.generateSpacing=="function"&&(Ve.spacing=Ve.generateSpacing()),Ce){const $t=le[Ce];$t&&typeof $t=="object"&&Object.keys($t).forEach(Mt=>{$t[Mt]&&typeof $t[Mt]=="object"?Ve[Mt]={...Ve[Mt],...$t[Mt]}:Ve[Mt]=$t[Mt]})}return l?l(Ve):Ve},[ee,Ce,ke,le,xe]),pe=ee.colorSchemeSelector;wc(()=>{if(wn&&N&&pe&&pe!=="media"){const Oe=pe;let Ve=pe;if(Oe==="class"&&(Ve=".%s"),Oe==="data"&&(Ve="[data-%s]"),Oe!=null&&Oe.startsWith("data-")&&!Oe.includes("%s")&&(Ve=`[${Oe}="%s"]`),Ve.startsWith("."))N.classList.remove(...Ee.map(gt=>Ve.substring(1).replace("%s",gt))),N.classList.add(Ve.substring(1).replace("%s",wn));else{const gt=Ve.replace("%s",wn).match(/\[([^\]]+)\]/);if(gt){const[$t,Mt]=gt[1].split("=");Mt||Ee.forEach(Bt=>{N.removeAttribute($t.replace(wn,Bt))}),N.setAttribute($t,Mt?Mt.replace(/"|'/g,""):"")}else N.setAttribute(Ve,wn)}}},[wn,pe,N,Ee]),$.useEffect(()=>{let Oe;if(R&&H.current&&M){const Ve=M.createElement("style");Ve.appendChild(M.createTextNode(Wje)),M.head.appendChild(Ve),window.getComputedStyle(M.body),Oe=setTimeout(()=>{M.head.removeChild(Ve)},1)}return()=>{clearTimeout(Oe)}},[wn,R,M]),$.useEffect(()=>(H.current=!0,()=>{H.current=!1}),[]);const ne=$.useMemo(()=>({allColorSchemes:Ee,colorScheme:wn,darkColorScheme:Rt,lightColorScheme:mt,mode:vt,setColorScheme:Ot,setMode:ut,systemMode:st}),[Ee,wn,Rt,mt,vt,Ot,ut,st,ge.colorSchemeSelector]);let ae=!0;(O||ee.cssVariables===!1||Q&&(Y==null?void 0:Y.cssVarPrefix)===xe)&&(ae=!1);const ue=C.jsxs($.Fragment,{children:[C.jsx(kke,{themeId:K?e:void 0,theme:ge,children:y}),ae&&C.jsx(ske,{styles:((nt=ge.generateStyleSheets)==null?void 0:nt.call(ge))||[]})]});return Q?ue:C.jsx(u.Provider,{value:ne,children:ue})}const g=typeof a=="string"?a:a.light,m=typeof a=="string"?a:a.dark;return{CssVarsProvider:p,useColorScheme:d,getInitColorSchemeScript:b=>Pje({colorSchemeStorageKey:s,defaultLightColorScheme:g,defaultDarkColorScheme:m,modeStorageKey:r,...b})}}function zje(i=""){function e(...r){if(!r.length)return"";const s=r[0];return typeof s=="string"&&!s.match(/(#|\(|\)|(-?(\d*\.)?\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\d*\.)?\d+)$|(\d+ \d+ \d+)/)?`, var(--${i?`${i}-`:""}${s}${e(...r.slice(1))})`:`, ${s}`}return(r,...s)=>`var(--${i?`${i}-`:""}${r}${e(...s)})`}const gde=(i,e,n,r=[])=>{let s=i;e.forEach((o,a)=>{a===e.length-1?Array.isArray(s)?s[Number(o)]=n:s&&typeof s=="object"&&(s[o]=n):s&&typeof s=="object"&&(s[o]||(s[o]=r.includes(o)?[]:{}),s=s[o])})},Vje=(i,e,n)=>{function r(s,o=[],a=[]){Object.entries(s).forEach(([l,c])=>{(!n||n&&!n([...o,l]))&&c!=null&&(typeof c=="object"&&Object.keys(c).length>0?r(c,[...o,l],Array.isArray(c)?[...a,l]:a):e([...o,l],c,a))})}r(i)},Hje=(i,e)=>typeof e=="number"?["lineHeight","fontWeight","opacity","zIndex"].some(r=>i.includes(r))||i[i.length-1].toLowerCase().includes("opacity")?e:`${e}px`:e;function lU(i,e){const{prefix:n,shouldSkipGeneratingVar:r}=e||{},s={},o={},a={};return Vje(i,(l,c,u)=>{if((typeof c=="string"||typeof c=="number")&&(!r||!r(l,c))){const d=`--${n?`${n}-`:""}${l.join("-")}`,h=Hje(l,c);Object.assign(s,{[d]:h}),gde(o,l,`var(${d})`,u),gde(a,l,`var(${d}, ${h})`,u)}},l=>l[0]==="vars"),{css:s,vars:o,varsWithDefaults:a}}function Uje(i,e={}){const{getSelector:n=_,disableCssColorScheme:r,colorSchemeSelector:s}=e,{colorSchemes:o={},components:a,defaultColorScheme:l="light",...c}=i,{vars:u,css:d,varsWithDefaults:h}=lU(c,e);let f=h;const p={},{[l]:g,...m}=o;if(Object.entries(m||{}).forEach(([x,k])=>{const{vars:D,css:R,varsWithDefaults:E}=lU(k,e);f=pl(f,E),p[x]={css:R,vars:D}}),g){const{css:x,vars:k,varsWithDefaults:D}=lU(g,e);f=pl(f,D),p[l]={css:x,vars:k}}function _(x,k){var R,E;let D=s;if(s==="class"&&(D=".%s"),s==="data"&&(D="[data-%s]"),s!=null&&s.startsWith("data-")&&!s.includes("%s")&&(D=`[${s}="%s"]`),x){if(D==="media")return i.defaultColorScheme===x?":root":{[`@media (prefers-color-scheme: ${((E=(R=o[x])==null?void 0:R.palette)==null?void 0:E.mode)||x})`]:{":root":k}};if(D)return i.defaultColorScheme===x?`:root, ${D.replace("%s",String(x))}`:D.replace("%s",String(x))}return":root"}return{vars:f,generateThemeVars:()=>{let x={...u};return Object.entries(p).forEach(([,{vars:k}])=>{x=pl(x,k)}),x},generateStyleSheets:()=>{var A,M;const x=[],k=i.defaultColorScheme||"light";function D(N,P){Object.keys(P).length&&x.push(typeof N=="string"?{[N]:{...P}}:N)}D(n(void 0,{...d}),d);const{[k]:R,...E}=p;if(R){const{css:N}=R,P=(M=(A=o[k])==null?void 0:A.palette)==null?void 0:M.mode,O=!r&&P?{colorScheme:P,...N}:{...N};D(n(k,{...O}),O)}return Object.entries(E).forEach(([N,{css:P}])=>{var j,z;const O=(z=(j=o[N])==null?void 0:j.palette)==null?void 0:z.mode,B=!r&&O?{colorScheme:O,...P}:{...P};D(n(N,{...B}),B)}),x}}}function qje(i){return function(n){return i==="media"?`@media (prefers-color-scheme: ${n})`:i?i.startsWith("data-")&&!i.includes("%s")?`[${i}="${n}"] &`:i==="class"?`.${n} &`:i==="data"?`[data-${n}] &`:`${i.replace("%s",n)} &`:"&"}}function Zt(i,e,n=void 0){const r={};for(const s in i){const o=i[s];let a="",l=!0;for(let c=0;c{const{ownerState:n}=i;return[e.root,e[`maxWidth${Ue(String(n.maxWidth))}`],n.fixed&&e.fixed,n.disableGutters&&e.disableGutters]}}),Xje=i=>vke({props:i,name:"MuiContainer",defaultTheme:Kje}),Yje=(i,e)=>{const n=c=>Xt(e,c),{classes:r,fixed:s,disableGutters:o,maxWidth:a}=i,l={root:["root",a&&`maxWidth${Ue(String(a))}`,s&&"fixed",o&&"disableGutters"]};return Zt(l,n,r)};function Zje(i={}){const{createStyledComponent:e=Gje,useThemeProps:n=Xje,componentName:r="MuiContainer"}=i,s=e(({theme:a,ownerState:l})=>({width:"100%",marginLeft:"auto",boxSizing:"border-box",marginRight:"auto",...!l.disableGutters&&{paddingLeft:a.spacing(2),paddingRight:a.spacing(2),[a.breakpoints.up("sm")]:{paddingLeft:a.spacing(3),paddingRight:a.spacing(3)}}}),({theme:a,ownerState:l})=>l.fixed&&Object.keys(a.breakpoints.values).reduce((c,u)=>{const d=u,h=a.breakpoints.values[d];return h!==0&&(c[a.breakpoints.up(d)]={maxWidth:`${h}${a.breakpoints.unit}`}),c},{}),({theme:a,ownerState:l})=>({...l.maxWidth==="xs"&&{[a.breakpoints.up("xs")]:{maxWidth:Math.max(a.breakpoints.values.xs,444)}},...l.maxWidth&&l.maxWidth!=="xs"&&{[a.breakpoints.up(l.maxWidth)]:{maxWidth:`${a.breakpoints.values[l.maxWidth]}${a.breakpoints.unit}`}}}));return $.forwardRef(function(l,c){const u=n(l),{className:d,component:h="div",disableGutters:f=!1,fixed:p=!1,maxWidth:g="lg",classes:m,..._}=u,b={...u,component:h,disableGutters:f,fixed:p,maxWidth:g},y=Yje(b,r);return C.jsx(s,{as:h,ownerState:b,className:dt(y.root,d),ref:c,..._})})}function zN(i,e){var n,r,s;return $.isValidElement(i)&&e.indexOf(i.type.muiName??((s=(r=(n=i.type)==null?void 0:n._payload)==null?void 0:r.value)==null?void 0:s.muiName))!==-1}const Qje=(i,e)=>i.filter(n=>e.includes(n)),II=(i,e,n)=>{const r=i.keys[0];Array.isArray(e)?e.forEach((s,o)=>{n((a,l)=>{o<=i.keys.length-1&&(o===0?Object.assign(a,l):a[i.up(i.keys[o])]=l)},s)}):e&&typeof e=="object"?(Object.keys(e).length>i.keys.length?i.keys:Qje(i.keys,Object.keys(e))).forEach(o=>{if(i.keys.includes(o)){const a=e[o];a!==void 0&&n((l,c)=>{r===o?Object.assign(l,c):l[i.up(o)]=c},a)}}):(typeof e=="number"||typeof e=="string")&&n((s,o)=>{Object.assign(s,o)},e)};function c9(i){return`--Grid-${i}Spacing`}function vW(i){return`--Grid-parent-${i}Spacing`}const mde="--Grid-columns",A2="--Grid-parent-columns",Jje=({theme:i,ownerState:e})=>{const n={};return II(i.breakpoints,e.size,(r,s)=>{let o={};s==="grow"&&(o={flexBasis:0,flexGrow:1,maxWidth:"100%"}),s==="auto"&&(o={flexBasis:"auto",flexGrow:0,flexShrink:0,maxWidth:"none",width:"auto"}),typeof s=="number"&&(o={flexGrow:0,flexBasis:"auto",width:`calc(100% * ${s} / var(${A2}) - (var(${A2}) - ${s}) * (var(${vW("column")}) / var(${A2})))`}),r(n,o)}),n},eWe=({theme:i,ownerState:e})=>{const n={};return II(i.breakpoints,e.offset,(r,s)=>{let o={};s==="auto"&&(o={marginLeft:"auto"}),typeof s=="number"&&(o={marginLeft:s===0?"0px":`calc(100% * ${s} / var(${A2}) + var(${vW("column")}) * ${s} / var(${A2}))`}),r(n,o)}),n},tWe=({theme:i,ownerState:e})=>{if(!e.container)return{};const n={[mde]:12};return II(i.breakpoints,e.columns,(r,s)=>{const o=s??12;r(n,{[mde]:o,"> *":{[A2]:o}})}),n},nWe=({theme:i,ownerState:e})=>{if(!e.container)return{};const n={};return II(i.breakpoints,e.rowSpacing,(r,s)=>{var a;const o=typeof s=="string"?s:(a=i.spacing)==null?void 0:a.call(i,s);r(n,{[c9("row")]:o,"> *":{[vW("row")]:o}})}),n},iWe=({theme:i,ownerState:e})=>{if(!e.container)return{};const n={};return II(i.breakpoints,e.columnSpacing,(r,s)=>{var a;const o=typeof s=="string"?s:(a=i.spacing)==null?void 0:a.call(i,s);r(n,{[c9("column")]:o,"> *":{[vW("column")]:o}})}),n},rWe=({theme:i,ownerState:e})=>{if(!e.container)return{};const n={};return II(i.breakpoints,e.direction,(r,s)=>{r(n,{flexDirection:s})}),n},sWe=({ownerState:i})=>({minWidth:0,boxSizing:"border-box",...i.container&&{display:"flex",flexWrap:"wrap",...i.wrap&&i.wrap!=="wrap"&&{flexWrap:i.wrap},gap:`var(${c9("row")}) var(${c9("column")})`}}),oWe=i=>{const e=[];return Object.entries(i).forEach(([n,r])=>{r!==!1&&r!==void 0&&e.push(`grid-${n}-${String(r)}`)}),e},aWe=(i,e="xs")=>{function n(r){return r===void 0?!1:typeof r=="string"&&!Number.isNaN(Number(r))||typeof r=="number"&&r>0}if(n(i))return[`spacing-${e}-${String(i)}`];if(typeof i=="object"&&!Array.isArray(i)){const r=[];return Object.entries(i).forEach(([s,o])=>{n(o)&&r.push(`spacing-${s}-${String(o)}`)}),r}return[]},lWe=i=>i===void 0?[]:typeof i=="object"?Object.entries(i).map(([e,n])=>`direction-${e}-${n}`):[`direction-xs-${String(i)}`];function cWe(i,e){i.item!==void 0&&delete i.item,i.zeroMinWidth!==void 0&&delete i.zeroMinWidth,e.keys.forEach(n=>{i[n]!==void 0&&delete i[n]})}const uWe=s5(),dWe=mke("div",{name:"MuiGrid",slot:"Root"});function hWe(i){return vke({props:i,name:"MuiGrid",defaultTheme:uWe})}function fWe(i={}){const{createStyledComponent:e=dWe,useThemeProps:n=hWe,useTheme:r=o5,componentName:s="MuiGrid"}=i,o=(u,d)=>{const{container:h,direction:f,spacing:p,wrap:g,size:m}=u,_={root:["root",h&&"container",g!=="wrap"&&`wrap-xs-${String(g)}`,...lWe(f),...oWe(m),...h?aWe(p,d.breakpoints.keys[0]):[]]};return Zt(_,b=>Xt(s,b),{})};function a(u,d,h=()=>!0){const f={};return u===null||(Array.isArray(u)?u.forEach((p,g)=>{p!==null&&h(p)&&d.keys[g]&&(f[d.keys[g]]=p)}):typeof u=="object"?Object.keys(u).forEach(p=>{const g=u[p];g!=null&&h(g)&&(f[p]=g)}):f[d.keys[0]]=u),f}const l=e(tWe,iWe,nWe,Jje,rWe,sWe,eWe),c=$.forwardRef(function(d,h){const f=r(),p=n(d),g=Tre(p);cWe(g,f.breakpoints);const{className:m,children:_,columns:b=12,container:y=!1,component:x="div",direction:k="row",wrap:D="wrap",size:R={},offset:E={},spacing:A=0,rowSpacing:M=A,columnSpacing:N=A,unstable_level:P=0,...O}=g,B=a(R,f.breakpoints,K=>K!==!1),j=a(E,f.breakpoints),z=d.columns??(P?void 0:b),H=d.spacing??(P?void 0:A),Y=d.rowSpacing??d.spacing??(P?void 0:M),X=d.columnSpacing??d.spacing??(P?void 0:N),Q={...g,level:P,columns:z,container:y,direction:k,wrap:D,spacing:H,rowSpacing:Y,columnSpacing:X,size:B,offset:j},ie=o(Q,f);return C.jsx(l,{ref:h,as:x,ownerState:Q,className:dt(ie.root,m),...O,children:$.Children.map(_,K=>{var ee;return $.isValidElement(K)&&zN(K,["Grid"])&&y&&K.props.container?$.cloneElement(K,{unstable_level:((ee=K.props)==null?void 0:ee.unstable_level)??P+1}):K})})});return c.muiName="Grid",c}function Dke(){return{text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:VM.white,default:VM.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}}}const pWe=Dke();function Eke(){return{text:{primary:VM.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:VM.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}}}const _de=Eke();function vde(i,e,n,r){const s=r.light||r,o=r.dark||r*1.5;i[e]||(i.hasOwnProperty(n)?i[e]=i[n]:e==="light"?i.light=qp(i.main,s):e==="dark"&&(i.dark=$m(i.main,o)))}function gWe(i="light"){return i==="dark"?{main:WL[200],light:WL[50],dark:WL[400]}:{main:WL[700],light:WL[400],dark:WL[800]}}function mWe(i="light"){return i==="dark"?{main:jL[200],light:jL[50],dark:jL[400]}:{main:jL[500],light:jL[300],dark:jL[700]}}function _We(i="light"){return i==="dark"?{main:BL[500],light:BL[300],dark:BL[700]}:{main:BL[700],light:BL[400],dark:BL[800]}}function vWe(i="light"){return i==="dark"?{main:$L[400],light:$L[300],dark:$L[700]}:{main:$L[700],light:$L[500],dark:$L[900]}}function bWe(i="light"){return i==="dark"?{main:ey[400],light:ey[300],dark:ey[700]}:{main:ey[800],light:ey[500],dark:ey[900]}}function yWe(i="light"){return i==="dark"?{main:IR[400],light:IR[300],dark:IR[700]}:{main:"#ed6c02",light:IR[500],dark:IR[900]}}function Ore(i){const{mode:e="light",contrastThreshold:n=3,tonalOffset:r=.2,...s}=i,o=i.primary||gWe(e),a=i.secondary||mWe(e),l=i.error||_We(e),c=i.info||vWe(e),u=i.success||bWe(e),d=i.warning||yWe(e);function h(m){return yje(m,_de.text.primary)>=n?_de.text.primary:pWe.text.primary}const f=({color:m,name:_,mainShade:b=500,lightShade:y=300,darkShade:x=700})=>{if(m={...m},!m.main&&m[b]&&(m.main=m[b]),!m.hasOwnProperty("main"))throw new Error(kv(11,_?` (${_})`:"",b));if(typeof m.main!="string")throw new Error(kv(12,_?` (${_})`:"",JSON.stringify(m.main)));return vde(m,"light",y,r),vde(m,"dark",x,r),m.contrastText||(m.contrastText=h(m.main)),m};let p;return e==="light"?p=Dke():e==="dark"&&(p=Eke()),pl({common:{...VM},mode:e,primary:f({color:o,name:"primary"}),secondary:f({color:a,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:f({color:l,name:"error"}),warning:f({color:d,name:"warning"}),info:f({color:c,name:"info"}),success:f({color:u,name:"success"}),grey:r9e,contrastThreshold:n,getContrastText:h,augmentColor:f,tonalOffset:r,...p},s)}function wWe(i){const e={};return Object.entries(i).forEach(r=>{const[s,o]=r;typeof o=="object"&&(e[s]=`${o.fontStyle?`${o.fontStyle} `:""}${o.fontVariant?`${o.fontVariant} `:""}${o.fontWeight?`${o.fontWeight} `:""}${o.fontStretch?`${o.fontStretch} `:""}${o.fontSize||""}${o.lineHeight?`/${o.lineHeight} `:""}${o.fontFamily||""}`)}),e}function CWe(i,e){return{toolbar:{minHeight:56,[i.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[i.up("sm")]:{minHeight:64}},...e}}function SWe(i){return Math.round(i*1e5)/1e5}const bde={textTransform:"uppercase"},yde='"Roboto", "Helvetica", "Arial", sans-serif';function Ike(i,e){const{fontFamily:n=yde,fontSize:r=14,fontWeightLight:s=300,fontWeightRegular:o=400,fontWeightMedium:a=500,fontWeightBold:l=700,htmlFontSize:c=16,allVariants:u,pxToRem:d,...h}=typeof e=="function"?e(i):e,f=r/14,p=d||(_=>`${_/c*f}rem`),g=(_,b,y,x,k)=>({fontFamily:n,fontWeight:_,fontSize:p(b),lineHeight:y,...n===yde?{letterSpacing:`${SWe(x/b)}em`}:{},...k,...u}),m={h1:g(s,96,1.167,-1.5),h2:g(s,60,1.2,-.5),h3:g(o,48,1.167,0),h4:g(o,34,1.235,.25),h5:g(o,24,1.334,0),h6:g(a,20,1.6,.15),subtitle1:g(o,16,1.75,.15),subtitle2:g(a,14,1.57,.1),body1:g(o,16,1.5,.15),body2:g(o,14,1.43,.15),button:g(a,14,1.75,.4,bde),caption:g(o,12,1.66,.4),overline:g(o,12,2.66,1,bde),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return pl({htmlFontSize:c,pxToRem:p,fontFamily:n,fontSize:r,fontWeightLight:s,fontWeightRegular:o,fontWeightMedium:a,fontWeightBold:l,...m},h,{clone:!1})}const xWe=.2,kWe=.14,LWe=.12;function ao(...i){return[`${i[0]}px ${i[1]}px ${i[2]}px ${i[3]}px rgba(0,0,0,${xWe})`,`${i[4]}px ${i[5]}px ${i[6]}px ${i[7]}px rgba(0,0,0,${kWe})`,`${i[8]}px ${i[9]}px ${i[10]}px ${i[11]}px rgba(0,0,0,${LWe})`].join(",")}const DWe=["none",ao(0,2,1,-1,0,1,1,0,0,1,3,0),ao(0,3,1,-2,0,2,2,0,0,1,5,0),ao(0,3,3,-2,0,3,4,0,0,1,8,0),ao(0,2,4,-1,0,4,5,0,0,1,10,0),ao(0,3,5,-1,0,5,8,0,0,1,14,0),ao(0,3,5,-1,0,6,10,0,0,1,18,0),ao(0,4,5,-2,0,7,10,1,0,2,16,1),ao(0,5,5,-3,0,8,10,1,0,3,14,2),ao(0,5,6,-3,0,9,12,1,0,3,16,2),ao(0,6,6,-3,0,10,14,1,0,4,18,3),ao(0,6,7,-4,0,11,15,1,0,4,20,3),ao(0,7,8,-4,0,12,17,2,0,5,22,4),ao(0,7,8,-4,0,13,19,2,0,5,24,4),ao(0,7,9,-4,0,14,21,2,0,5,26,4),ao(0,8,9,-5,0,15,22,2,0,6,28,5),ao(0,8,10,-5,0,16,24,2,0,6,30,5),ao(0,8,11,-5,0,17,26,2,0,6,32,5),ao(0,9,11,-5,0,18,28,2,0,7,34,6),ao(0,9,12,-6,0,19,29,2,0,7,36,6),ao(0,10,13,-6,0,20,31,3,0,8,38,7),ao(0,10,13,-6,0,21,33,3,0,8,40,7),ao(0,10,14,-6,0,22,35,3,0,8,42,7),ao(0,11,14,-7,0,23,36,3,0,9,44,8),ao(0,11,15,-7,0,24,38,3,0,9,46,8)],EWe={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},Tke={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function wde(i){return`${Math.round(i)}ms`}function IWe(i){if(!i)return 0;const e=i/36;return Math.min(Math.round((4+15*e**.25+e/5)*10),3e3)}function TWe(i){const e={...EWe,...i.easing},n={...Tke,...i.duration};return{getAutoHeightDuration:IWe,create:(s=["all"],o={})=>{const{duration:a=n.standard,easing:l=e.easeInOut,delay:c=0,...u}=o;return(Array.isArray(s)?s:[s]).map(d=>`${d} ${typeof a=="string"?a:wde(a)} ${l} ${typeof c=="string"?c:wde(c)}`).join(",")},...i,easing:e,duration:n}}const RWe={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500};function AWe(i){return am(i)||typeof i>"u"||typeof i=="string"||typeof i=="boolean"||typeof i=="number"||Array.isArray(i)}function Rke(i={}){const e={...i};function n(r){const s=Object.entries(r);for(let o=0;opl(p,g),f),f.unstable_sxConfig={...r5,...u==null?void 0:u.unstable_sxConfig},f.unstable_sx=function(g){return i1({sx:g,theme:this})},f.toRuntimeSource=Rke,f}function yZ(i){let e;return i<1?e=5.11916*i**2:e=4.5*Math.log(i+1)+2,Math.round(e*10)/1e3}const NWe=[...Array(25)].map((i,e)=>{if(e===0)return"none";const n=yZ(e);return`linear-gradient(rgba(255 255 255 / ${n}), rgba(255 255 255 / ${n}))`});function Ake(i){return{inputPlaceholder:i==="dark"?.5:.42,inputUnderline:i==="dark"?.7:.42,switchTrackDisabled:i==="dark"?.2:.12,switchTrack:i==="dark"?.3:.38}}function Nke(i){return i==="dark"?NWe:[]}function MWe(i){const{palette:e={mode:"light"},opacity:n,overlays:r,...s}=i,o=Ore(e);return{palette:o,opacity:{...Ake(o.mode),...n},overlays:r||Nke(o.mode),...s}}function PWe(i){var e;return!!i[0].match(/(cssVarPrefix|colorSchemeSelector|modularCssLayers|rootSelector|typography|mixins|breakpoints|direction|transitions)/)||!!i[0].match(/sxConfig$/)||i[0]==="palette"&&!!((e=i[1])!=null&&e.match(/(mode|contrastThreshold|tonalOffset)/))}const OWe=i=>[...[...Array(25)].map((e,n)=>`--${i?`${i}-`:""}overlays-${n}`),`--${i?`${i}-`:""}palette-AppBar-darkBg`,`--${i?`${i}-`:""}palette-AppBar-darkColor`],FWe=i=>(e,n)=>{const r=i.rootSelector||":root",s=i.colorSchemeSelector;let o=s;if(s==="class"&&(o=".%s"),s==="data"&&(o="[data-%s]"),s!=null&&s.startsWith("data-")&&!s.includes("%s")&&(o=`[${s}="%s"]`),i.defaultColorScheme===e){if(e==="dark"){const a={};return OWe(i.cssVarPrefix).forEach(l=>{a[l]=n[l],delete n[l]}),o==="media"?{[r]:n,"@media (prefers-color-scheme: dark)":{[r]:a}}:o?{[o.replace("%s",e)]:a,[`${r}, ${o.replace("%s",e)}`]:n}:{[r]:{...n,...a}}}if(o&&o!=="media")return`${r}, ${o.replace("%s",String(e))}`}else if(e){if(o==="media")return{[`@media (prefers-color-scheme: ${String(e)})`]:{[r]:n}};if(o)return o.replace("%s",String(e))}return r};function BWe(i,e){e.forEach(n=>{i[n]||(i[n]={})})}function pt(i,e,n){!i[e]&&n&&(i[e]=n)}function JA(i){return typeof i!="string"||!i.startsWith("hsl")?i:wke(i)}function q_(i,e){`${e}Channel`in i||(i[`${e}Channel`]=QA(JA(i[e])))}function jWe(i){return typeof i=="number"?`${i}px`:typeof i=="string"||typeof i=="function"||Array.isArray(i)?i:"8px"}const Fg=i=>{try{return i()}catch{}},WWe=(i="mui")=>zje(i);function cU(i,e,n,r){if(!e)return;e=e===!0?{}:e;const s=r==="dark"?"dark":"light";if(!n){i[r]=MWe({...e,palette:{mode:s,...e==null?void 0:e.palette}});return}const{palette:o,...a}=bZ({...n,palette:{mode:s,...e==null?void 0:e.palette}});return i[r]={...e,palette:o,opacity:{...Ake(s),...e==null?void 0:e.opacity},overlays:(e==null?void 0:e.overlays)||Nke(s)},a}function $We(i={},...e){const{colorSchemes:n={light:!0},defaultColorScheme:r,disableCssColorScheme:s=!1,cssVarPrefix:o="mui",shouldSkipGeneratingVar:a=PWe,colorSchemeSelector:l=n.light&&n.dark?"media":void 0,rootSelector:c=":root",...u}=i,d=Object.keys(n)[0],h=r||(n.light&&d!=="light"?"light":d),f=WWe(o),{[h]:p,light:g,dark:m,..._}=n,b={..._};let y=p;if((h==="dark"&&!("dark"in n)||h==="light"&&!("light"in n))&&(y=!0),!y)throw new Error(kv(21,h));const x=cU(b,y,u,h);g&&!b.light&&cU(b,g,void 0,"light"),m&&!b.dark&&cU(b,m,void 0,"dark");let k={defaultColorScheme:h,...x,cssVarPrefix:o,colorSchemeSelector:l,rootSelector:c,getCssVar:f,colorSchemes:b,font:{...wWe(x.typography),...x.font},spacing:jWe(u.spacing)};Object.keys(k.colorSchemes).forEach(M=>{const N=k.colorSchemes[M].palette,P=O=>{const B=O.split("-"),j=B[1],z=B[2];return f(O,N[j][z])};if(N.mode==="light"&&(pt(N.common,"background","#fff"),pt(N.common,"onBackground","#000")),N.mode==="dark"&&(pt(N.common,"background","#000"),pt(N.common,"onBackground","#fff")),BWe(N,["Alert","AppBar","Avatar","Button","Chip","FilledInput","LinearProgress","Skeleton","Slider","SnackbarContent","SpeedDialAction","StepConnector","StepContent","Switch","TableCell","Tooltip"]),N.mode==="light"){pt(N.Alert,"errorColor",Ls(N.error.light,.6)),pt(N.Alert,"infoColor",Ls(N.info.light,.6)),pt(N.Alert,"successColor",Ls(N.success.light,.6)),pt(N.Alert,"warningColor",Ls(N.warning.light,.6)),pt(N.Alert,"errorFilledBg",P("palette-error-main")),pt(N.Alert,"infoFilledBg",P("palette-info-main")),pt(N.Alert,"successFilledBg",P("palette-success-main")),pt(N.Alert,"warningFilledBg",P("palette-warning-main")),pt(N.Alert,"errorFilledColor",Fg(()=>N.getContrastText(N.error.main))),pt(N.Alert,"infoFilledColor",Fg(()=>N.getContrastText(N.info.main))),pt(N.Alert,"successFilledColor",Fg(()=>N.getContrastText(N.success.main))),pt(N.Alert,"warningFilledColor",Fg(()=>N.getContrastText(N.warning.main))),pt(N.Alert,"errorStandardBg",Ds(N.error.light,.9)),pt(N.Alert,"infoStandardBg",Ds(N.info.light,.9)),pt(N.Alert,"successStandardBg",Ds(N.success.light,.9)),pt(N.Alert,"warningStandardBg",Ds(N.warning.light,.9)),pt(N.Alert,"errorIconColor",P("palette-error-main")),pt(N.Alert,"infoIconColor",P("palette-info-main")),pt(N.Alert,"successIconColor",P("palette-success-main")),pt(N.Alert,"warningIconColor",P("palette-warning-main")),pt(N.AppBar,"defaultBg",P("palette-grey-100")),pt(N.Avatar,"defaultBg",P("palette-grey-400")),pt(N.Button,"inheritContainedBg",P("palette-grey-300")),pt(N.Button,"inheritContainedHoverBg",P("palette-grey-A100")),pt(N.Chip,"defaultBorder",P("palette-grey-400")),pt(N.Chip,"defaultAvatarColor",P("palette-grey-700")),pt(N.Chip,"defaultIconColor",P("palette-grey-700")),pt(N.FilledInput,"bg","rgba(0, 0, 0, 0.06)"),pt(N.FilledInput,"hoverBg","rgba(0, 0, 0, 0.09)"),pt(N.FilledInput,"disabledBg","rgba(0, 0, 0, 0.12)"),pt(N.LinearProgress,"primaryBg",Ds(N.primary.main,.62)),pt(N.LinearProgress,"secondaryBg",Ds(N.secondary.main,.62)),pt(N.LinearProgress,"errorBg",Ds(N.error.main,.62)),pt(N.LinearProgress,"infoBg",Ds(N.info.main,.62)),pt(N.LinearProgress,"successBg",Ds(N.success.main,.62)),pt(N.LinearProgress,"warningBg",Ds(N.warning.main,.62)),pt(N.Skeleton,"bg",`rgba(${P("palette-text-primaryChannel")} / 0.11)`),pt(N.Slider,"primaryTrack",Ds(N.primary.main,.62)),pt(N.Slider,"secondaryTrack",Ds(N.secondary.main,.62)),pt(N.Slider,"errorTrack",Ds(N.error.main,.62)),pt(N.Slider,"infoTrack",Ds(N.info.main,.62)),pt(N.Slider,"successTrack",Ds(N.success.main,.62)),pt(N.Slider,"warningTrack",Ds(N.warning.main,.62));const O=u3(N.background.default,.8);pt(N.SnackbarContent,"bg",O),pt(N.SnackbarContent,"color",Fg(()=>N.getContrastText(O))),pt(N.SpeedDialAction,"fabHoverBg",u3(N.background.paper,.15)),pt(N.StepConnector,"border",P("palette-grey-400")),pt(N.StepContent,"border",P("palette-grey-400")),pt(N.Switch,"defaultColor",P("palette-common-white")),pt(N.Switch,"defaultDisabledColor",P("palette-grey-100")),pt(N.Switch,"primaryDisabledColor",Ds(N.primary.main,.62)),pt(N.Switch,"secondaryDisabledColor",Ds(N.secondary.main,.62)),pt(N.Switch,"errorDisabledColor",Ds(N.error.main,.62)),pt(N.Switch,"infoDisabledColor",Ds(N.info.main,.62)),pt(N.Switch,"successDisabledColor",Ds(N.success.main,.62)),pt(N.Switch,"warningDisabledColor",Ds(N.warning.main,.62)),pt(N.TableCell,"border",Ds(c3(N.divider,1),.88)),pt(N.Tooltip,"bg",c3(N.grey[700],.92))}if(N.mode==="dark"){pt(N.Alert,"errorColor",Ds(N.error.light,.6)),pt(N.Alert,"infoColor",Ds(N.info.light,.6)),pt(N.Alert,"successColor",Ds(N.success.light,.6)),pt(N.Alert,"warningColor",Ds(N.warning.light,.6)),pt(N.Alert,"errorFilledBg",P("palette-error-dark")),pt(N.Alert,"infoFilledBg",P("palette-info-dark")),pt(N.Alert,"successFilledBg",P("palette-success-dark")),pt(N.Alert,"warningFilledBg",P("palette-warning-dark")),pt(N.Alert,"errorFilledColor",Fg(()=>N.getContrastText(N.error.dark))),pt(N.Alert,"infoFilledColor",Fg(()=>N.getContrastText(N.info.dark))),pt(N.Alert,"successFilledColor",Fg(()=>N.getContrastText(N.success.dark))),pt(N.Alert,"warningFilledColor",Fg(()=>N.getContrastText(N.warning.dark))),pt(N.Alert,"errorStandardBg",Ls(N.error.light,.9)),pt(N.Alert,"infoStandardBg",Ls(N.info.light,.9)),pt(N.Alert,"successStandardBg",Ls(N.success.light,.9)),pt(N.Alert,"warningStandardBg",Ls(N.warning.light,.9)),pt(N.Alert,"errorIconColor",P("palette-error-main")),pt(N.Alert,"infoIconColor",P("palette-info-main")),pt(N.Alert,"successIconColor",P("palette-success-main")),pt(N.Alert,"warningIconColor",P("palette-warning-main")),pt(N.AppBar,"defaultBg",P("palette-grey-900")),pt(N.AppBar,"darkBg",P("palette-background-paper")),pt(N.AppBar,"darkColor",P("palette-text-primary")),pt(N.Avatar,"defaultBg",P("palette-grey-600")),pt(N.Button,"inheritContainedBg",P("palette-grey-800")),pt(N.Button,"inheritContainedHoverBg",P("palette-grey-700")),pt(N.Chip,"defaultBorder",P("palette-grey-700")),pt(N.Chip,"defaultAvatarColor",P("palette-grey-300")),pt(N.Chip,"defaultIconColor",P("palette-grey-300")),pt(N.FilledInput,"bg","rgba(255, 255, 255, 0.09)"),pt(N.FilledInput,"hoverBg","rgba(255, 255, 255, 0.13)"),pt(N.FilledInput,"disabledBg","rgba(255, 255, 255, 0.12)"),pt(N.LinearProgress,"primaryBg",Ls(N.primary.main,.5)),pt(N.LinearProgress,"secondaryBg",Ls(N.secondary.main,.5)),pt(N.LinearProgress,"errorBg",Ls(N.error.main,.5)),pt(N.LinearProgress,"infoBg",Ls(N.info.main,.5)),pt(N.LinearProgress,"successBg",Ls(N.success.main,.5)),pt(N.LinearProgress,"warningBg",Ls(N.warning.main,.5)),pt(N.Skeleton,"bg",`rgba(${P("palette-text-primaryChannel")} / 0.13)`),pt(N.Slider,"primaryTrack",Ls(N.primary.main,.5)),pt(N.Slider,"secondaryTrack",Ls(N.secondary.main,.5)),pt(N.Slider,"errorTrack",Ls(N.error.main,.5)),pt(N.Slider,"infoTrack",Ls(N.info.main,.5)),pt(N.Slider,"successTrack",Ls(N.success.main,.5)),pt(N.Slider,"warningTrack",Ls(N.warning.main,.5));const O=u3(N.background.default,.98);pt(N.SnackbarContent,"bg",O),pt(N.SnackbarContent,"color",Fg(()=>N.getContrastText(O))),pt(N.SpeedDialAction,"fabHoverBg",u3(N.background.paper,.15)),pt(N.StepConnector,"border",P("palette-grey-600")),pt(N.StepContent,"border",P("palette-grey-600")),pt(N.Switch,"defaultColor",P("palette-grey-300")),pt(N.Switch,"defaultDisabledColor",P("palette-grey-600")),pt(N.Switch,"primaryDisabledColor",Ls(N.primary.main,.55)),pt(N.Switch,"secondaryDisabledColor",Ls(N.secondary.main,.55)),pt(N.Switch,"errorDisabledColor",Ls(N.error.main,.55)),pt(N.Switch,"infoDisabledColor",Ls(N.info.main,.55)),pt(N.Switch,"successDisabledColor",Ls(N.success.main,.55)),pt(N.Switch,"warningDisabledColor",Ls(N.warning.main,.55)),pt(N.TableCell,"border",Ls(c3(N.divider,1),.68)),pt(N.Tooltip,"bg",c3(N.grey[700],.92))}q_(N.background,"default"),q_(N.background,"paper"),q_(N.common,"background"),q_(N.common,"onBackground"),q_(N,"divider"),Object.keys(N).forEach(O=>{const B=N[O];O!=="tonalOffset"&&B&&typeof B=="object"&&(B.main&&pt(N[O],"mainChannel",QA(JA(B.main))),B.light&&pt(N[O],"lightChannel",QA(JA(B.light))),B.dark&&pt(N[O],"darkChannel",QA(JA(B.dark))),B.contrastText&&pt(N[O],"contrastTextChannel",QA(JA(B.contrastText))),O==="text"&&(q_(N[O],"primary"),q_(N[O],"secondary")),O==="action"&&(B.active&&q_(N[O],"active"),B.selected&&q_(N[O],"selected")))})}),k=e.reduce((M,N)=>pl(M,N),k);const D={prefix:o,disableCssColorScheme:s,shouldSkipGeneratingVar:a,getSelector:FWe(k)},{vars:R,generateThemeVars:E,generateStyleSheets:A}=Uje(k,D);return k.vars=R,Object.entries(k.colorSchemes[k.defaultColorScheme]).forEach(([M,N])=>{k[M]=N}),k.generateThemeVars=E,k.generateStyleSheets=A,k.generateSpacing=function(){return cke(u.spacing,Ere(this))},k.getColorSchemeSelector=qje(l),k.spacing=k.generateSpacing(),k.shouldSkipGeneratingVar=a,k.unstable_sxConfig={...r5,...u==null?void 0:u.unstable_sxConfig},k.unstable_sx=function(N){return i1({sx:N,theme:this})},k.toRuntimeSource=Rke,k}function Cde(i,e,n){i.colorSchemes&&n&&(i.colorSchemes[e]={...n!==!0&&n,palette:Ore({...n===!0?{}:n.palette,mode:e})})}function a5(i={},...e){const{palette:n,cssVariables:r=!1,colorSchemes:s=n?void 0:{light:!0},defaultColorScheme:o=n==null?void 0:n.mode,...a}=i,l=o||"light",c=s==null?void 0:s[l],u={...s,...n?{[l]:{...typeof c!="boolean"&&c,palette:n}}:void 0};if(r===!1){if(!("colorSchemes"in i))return bZ(i,...e);let d=n;"palette"in i||u[l]&&(u[l]!==!0?d=u[l].palette:l==="dark"&&(d={mode:"dark"}));const h=bZ({...i,palette:d},...e);return h.defaultColorScheme=l,h.colorSchemes=u,h.palette.mode==="light"&&(h.colorSchemes.light={...u.light!==!0&&u.light,palette:h.palette},Cde(h,"dark",u.dark)),h.palette.mode==="dark"&&(h.colorSchemes.dark={...u.dark!==!0&&u.dark,palette:h.palette},Cde(h,"light",u.light)),h}return!n&&!("light"in u)&&l==="light"&&(u.light=!0),$We({...a,colorSchemes:u,defaultColorScheme:l,...typeof r!="boolean"&&r},...e)}function zWe(i){return String(i).match(/[\d.\-+]*\s*(.*)/)[1]||""}function VWe(i){return parseFloat(i)}const Fre=a5();function $i(){const i=o5(Fre);return i[Bp]||i}function bW(i){return i!=="ownerState"&&i!=="theme"&&i!=="sx"&&i!=="as"}const vl=i=>bW(i)&&i!=="classes",ye=gke({themeId:Bp,defaultTheme:Fre,rootShouldForwardProp:vl});function HWe({theme:i,...e}){const n=Bp in i?i[Bp]:void 0;return C.jsx(kke,{...e,themeId:n?Bp:void 0,theme:n||i})}const d3={colorSchemeStorageKey:"mui-color-scheme",defaultLightColorScheme:"light",defaultDarkColorScheme:"dark",modeStorageKey:"mui-mode"},{CssVarsProvider:UWe}=$je({themeId:Bp,theme:()=>a5({cssVariables:!0}),colorSchemeStorageKey:d3.colorSchemeStorageKey,modeStorageKey:d3.modeStorageKey,defaultColorScheme:{light:d3.defaultLightColorScheme,dark:d3.defaultDarkColorScheme},resolveTheme:i=>{const e={...i,typography:Ike(i.palette,i.typography)};return e.unstable_sx=function(r){return i1({sx:r,theme:this})},e}}),qWe=UWe;function KWe({theme:i,...e}){const n=$.useMemo(()=>{if(typeof i=="function")return i;const r=Bp in i?i[Bp]:i;return"colorSchemes"in r?null:"vars"in r?i:{...i,vars:null}},[i]);return n?C.jsx(HWe,{theme:n,...e}):C.jsx(qWe,{theme:i,...e})}function Sde(...i){return i.reduce((e,n)=>n==null?e:function(...s){e.apply(this,s),n.apply(this,s)},()=>{})}function GWe(i){return C.jsx(uke,{...i,defaultTheme:Fre,themeId:Bp})}function Bre(i){return function(n){return C.jsx(GWe,{styles:typeof i=="function"?r=>i({theme:r,...n}):i})}}function XWe(){return Tre}const jt=Nje;function Qt(i){return Ije(i)}function YWe(i){return Xt("MuiSvgIcon",i)}Yt("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);const ZWe=i=>{const{color:e,fontSize:n,classes:r}=i,s={root:["root",e!=="inherit"&&`color${Ue(e)}`,`fontSize${Ue(n)}`]};return Zt(s,YWe,r)},QWe=ye("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.color!=="inherit"&&e[`color${Ue(n.color)}`],e[`fontSize${Ue(n.fontSize)}`]]}})(jt(({theme:i})=>{var e,n,r,s,o,a,l,c,u,d,h,f,p,g;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",flexShrink:0,transition:(s=(e=i.transitions)==null?void 0:e.create)==null?void 0:s.call(e,"fill",{duration:(r=(n=(i.vars??i).transitions)==null?void 0:n.duration)==null?void 0:r.shorter}),variants:[{props:m=>!m.hasSvgAsChild,style:{fill:"currentColor"}},{props:{fontSize:"inherit"},style:{fontSize:"inherit"}},{props:{fontSize:"small"},style:{fontSize:((a=(o=i.typography)==null?void 0:o.pxToRem)==null?void 0:a.call(o,20))||"1.25rem"}},{props:{fontSize:"medium"},style:{fontSize:((c=(l=i.typography)==null?void 0:l.pxToRem)==null?void 0:c.call(l,24))||"1.5rem"}},{props:{fontSize:"large"},style:{fontSize:((d=(u=i.typography)==null?void 0:u.pxToRem)==null?void 0:d.call(u,35))||"2.1875rem"}},...Object.entries((i.vars??i).palette).filter(([,m])=>m&&m.main).map(([m])=>{var _,b;return{props:{color:m},style:{color:(b=(_=(i.vars??i).palette)==null?void 0:_[m])==null?void 0:b.main}}}),{props:{color:"action"},style:{color:(f=(h=(i.vars??i).palette)==null?void 0:h.action)==null?void 0:f.active}},{props:{color:"disabled"},style:{color:(g=(p=(i.vars??i).palette)==null?void 0:p.action)==null?void 0:g.disabled}},{props:{color:"inherit"},style:{color:void 0}}]}})),u9=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiSvgIcon"}),{children:s,className:o,color:a="inherit",component:l="svg",fontSize:c="medium",htmlColor:u,inheritViewBox:d=!1,titleAccess:h,viewBox:f="0 0 24 24",...p}=r,g=$.isValidElement(s)&&s.type==="svg",m={...r,color:a,component:l,fontSize:c,instanceFontSize:e.fontSize,inheritViewBox:d,viewBox:f,hasSvgAsChild:g},_={};d||(_.viewBox=f);const b=ZWe(m);return C.jsxs(QWe,{as:l,className:dt(b.root,o),focusable:"false",color:u,"aria-hidden":h?void 0:!0,role:h?"img":void 0,ref:n,..._,...p,...g&&s.props,ownerState:m,children:[g?s.props.children:s,h?C.jsx("title",{children:h}):null]})});u9.muiName="SvgIcon";function Hr(i,e){function n(r,s){return C.jsx(u9,{"data-testid":void 0,ref:s,...r,children:i})}return n.muiName=u9.muiName,$.memo($.forwardRef(n))}function l5(i,e=166){let n;function r(...s){const o=()=>{i.apply(this,s)};clearTimeout(n),n=setTimeout(o,e)}return r.clear=()=>{clearTimeout(n)},r}function gl(i){return i&&i.ownerDocument||document}function fh(i){return gl(i).defaultView||window}function wZ(i,e){typeof i=="function"?i(e):i&&(i.current=e)}function Im(i){const{controlled:e,default:n,name:r,state:s="value"}=i,{current:o}=$.useRef(e!==void 0),[a,l]=$.useState(n),c=o?e:a,u=$.useCallback(d=>{o||l(d)},[]);return[c,u]}function Ha(i){const e=$.useRef(i);return wc(()=>{e.current=i}),$.useRef((...n)=>(0,e.current)(...n)).current}function mo(...i){const e=$.useRef(void 0),n=$.useCallback(r=>{const s=i.map(o=>{if(o==null)return null;if(typeof o=="function"){const a=o,l=a(r);return typeof l=="function"?l:()=>{a(null)}}return o.current=r,()=>{o.current=null}});return()=>{s.forEach(o=>o==null?void 0:o())}},i);return $.useMemo(()=>i.every(r=>r==null)?null:r=>{e.current&&(e.current(),e.current=void 0),r!=null&&(e.current=n(r))},i)}function JWe(i,e){const n=i.charCodeAt(2);return i[0]==="o"&&i[1]==="n"&&n>=65&&n<=90&&typeof e=="function"}function jre(i,e){if(!i)return e;function n(a,l){const c={};return Object.keys(l).forEach(u=>{JWe(u,l[u])&&typeof a[u]=="function"&&(c[u]=(...d)=>{a[u](...d),l[u](...d)})}),c}if(typeof i=="function"||typeof e=="function")return a=>{const l=typeof e=="function"?e(a):e,c=typeof i=="function"?i({...a,...l}):i,u=dt(a==null?void 0:a.className,l==null?void 0:l.className,c==null?void 0:c.className),d=n(c,l);return{...l,...c,...d,...!!u&&{className:u},...(l==null?void 0:l.style)&&(c==null?void 0:c.style)&&{style:{...l.style,...c.style}},...(l==null?void 0:l.sx)&&(c==null?void 0:c.sx)&&{sx:[...Array.isArray(l.sx)?l.sx:[l.sx],...Array.isArray(c.sx)?c.sx:[c.sx]]}}};const r=e,s=n(i,r),o=dt(r==null?void 0:r.className,i==null?void 0:i.className);return{...e,...i,...s,...!!o&&{className:o},...(r==null?void 0:r.style)&&(i==null?void 0:i.style)&&{style:{...r.style,...i.style}},...(r==null?void 0:r.sx)&&(i==null?void 0:i.sx)&&{sx:[...Array.isArray(r.sx)?r.sx:[r.sx],...Array.isArray(i.sx)?i.sx:[i.sx]]}}}function Dc(i,e){if(i==null)return{};var n={};for(var r in i)if({}.hasOwnProperty.call(i,r)){if(e.indexOf(r)!==-1)continue;n[r]=i[r]}return n}function CZ(i,e){return CZ=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,r){return n.__proto__=r,n},CZ(i,e)}function Mke(i,e){i.prototype=Object.create(e.prototype),i.prototype.constructor=i,CZ(i,e)}var uU={exports:{}},Nu={},dU={exports:{}},hU={};/** * @license React * scheduler.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var xde;function e$e(){return xde||(xde=1,function(i){function e(X,Q){var ie=X.length;X.push(Q);e:for(;0>>1,ee=X[K];if(0>>1;Ks(xe,ie))mes(Ee,xe)?(X[K]=Ee,X[me]=ie,K=me):(X[K]=xe,X[ke]=ie,K=ke);else if(mes(Ee,ie))X[K]=Ee,X[me]=ie,K=me;else break e}}return Q}function s(X,Q){var ie=X.sortIndex-Q.sortIndex;return ie!==0?ie:X.id-Q.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;i.unstable_now=function(){return o.now()}}else{var a=Date,l=a.now();i.unstable_now=function(){return a.now()-l}}var c=[],u=[],d=1,h=null,f=3,p=!1,g=!1,m=!1,_=typeof setTimeout=="function"?setTimeout:null,b=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function x(X){for(var Q=n(u);Q!==null;){if(Q.callback===null)r(u);else if(Q.startTime<=X)r(u),Q.sortIndex=Q.expirationTime,e(c,Q);else break;Q=n(u)}}function k(X){if(m=!1,x(X),!g)if(n(c)!==null)g=!0,H(D);else{var Q=n(u);Q!==null&&Y(k,Q.startTime-X)}}function D(X,Q){g=!1,m&&(m=!1,b(A),A=-1),p=!0;var ie=f;try{for(x(Q),h=n(c);h!==null&&(!(h.expirationTime>Q)||X&&!P());){var K=h.callback;if(typeof K=="function"){h.callback=null,f=h.priorityLevel;var ee=K(h.expirationTime<=Q);Q=i.unstable_now(),typeof ee=="function"?h.callback=ee:h===n(c)&&r(c),x(Q)}else r(c);h=n(c)}if(h!==null)var le=!0;else{var ke=n(u);ke!==null&&Y(k,ke.startTime-Q),le=!1}return le}finally{h=null,f=ie,p=!1}}var R=!1,E=null,A=-1,M=5,N=-1;function P(){return!(i.unstable_now()-NX||125K?(X.sortIndex=ie,e(u,X),n(c)===null&&X===n(u)&&(m?(b(A),A=-1):m=!0,Y(k,ie-K))):(X.sortIndex=ee,e(c,X),g||p||(g=!0,H(D))),X},i.unstable_shouldYield=P,i.unstable_wrapCallback=function(X){var Q=f;return function(){var ie=f;f=Q;try{return X.apply(this,arguments)}finally{f=ie}}}}(hU)),hU}var kde;function t$e(){return kde||(kde=1,dU.exports=e$e()),dU.exports}/** * @license React * react-dom.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Lde;function n$e(){if(Lde)return Nu;Lde=1;var i=B1(),e=t$e();function n(v){for(var w="https://reactjs.org/docs/error-decoder.html?invariant="+v,T=1;T"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),c=Object.prototype.hasOwnProperty,u=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,d={},h={};function f(v){return c.call(h,v)?!0:c.call(d,v)?!1:u.test(v)?h[v]=!0:(d[v]=!0,!1)}function p(v,w,T,F){if(T!==null&&T.type===0)return!1;switch(typeof w){case"function":case"symbol":return!0;case"boolean":return F?!1:T!==null?!T.acceptsBooleans:(v=v.toLowerCase().slice(0,5),v!=="data-"&&v!=="aria-");default:return!1}}function g(v,w,T,F){if(w===null||typeof w>"u"||p(v,w,T,F))return!0;if(F)return!1;if(T!==null)switch(T.type){case 3:return!w;case 4:return w===!1;case 5:return isNaN(w);case 6:return isNaN(w)||1>w}return!1}function m(v,w,T,F,V,U,re){this.acceptsBooleans=w===2||w===3||w===4,this.attributeName=F,this.attributeNamespace=V,this.mustUseProperty=T,this.propertyName=v,this.type=w,this.sanitizeURL=U,this.removeEmptyString=re}var _={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(v){_[v]=new m(v,0,!1,v,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(v){var w=v[0];_[w]=new m(w,1,!1,v[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(v){_[v]=new m(v,2,!1,v.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(v){_[v]=new m(v,2,!1,v,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(v){_[v]=new m(v,3,!1,v.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(v){_[v]=new m(v,3,!0,v,null,!1,!1)}),["capture","download"].forEach(function(v){_[v]=new m(v,4,!1,v,null,!1,!1)}),["cols","rows","size","span"].forEach(function(v){_[v]=new m(v,6,!1,v,null,!1,!1)}),["rowSpan","start"].forEach(function(v){_[v]=new m(v,5,!1,v.toLowerCase(),null,!1,!1)});var b=/[\-:]([a-z])/g;function y(v){return v[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(v){var w=v.replace(b,y);_[w]=new m(w,1,!1,v,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(v){var w=v.replace(b,y);_[w]=new m(w,1,!1,v,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(v){var w=v.replace(b,y);_[w]=new m(w,1,!1,v,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(v){_[v]=new m(v,1,!1,v.toLowerCase(),null,!1,!1)}),_.xlinkHref=new m("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(v){_[v]=new m(v,1,!1,v.toLowerCase(),null,!0,!0)});function x(v,w,T,F){var V=_.hasOwnProperty(w)?_[w]:null;(V!==null?V.type!==0:F||!(2be||V[re]!==U[be]){var Re=` `+V[re].replace(" at new "," at ");return v.displayName&&Re.includes("")&&(Re=Re.replace("",v.displayName)),Re}while(1<=re&&0<=be);break}}}finally{le=!1,Error.prepareStackTrace=T}return(v=v?v.displayName||v.name:"")?ee(v):""}function xe(v){switch(v.tag){case 5:return ee(v.type);case 16:return ee("Lazy");case 13:return ee("Suspense");case 19:return ee("SuspenseList");case 0:case 2:case 15:return v=ke(v.type,!1),v;case 11:return v=ke(v.type.render,!1),v;case 1:return v=ke(v.type,!0),v;default:return""}}function me(v){if(v==null)return null;if(typeof v=="function")return v.displayName||v.name||null;if(typeof v=="string")return v;switch(v){case E:return"Fragment";case R:return"Portal";case M:return"Profiler";case A:return"StrictMode";case B:return"Suspense";case j:return"SuspenseList"}if(typeof v=="object")switch(v.$$typeof){case P:return(v.displayName||"Context")+".Consumer";case N:return(v._context.displayName||"Context")+".Provider";case O:var w=v.render;return v=v.displayName,v||(v=w.displayName||w.name||"",v=v!==""?"ForwardRef("+v+")":"ForwardRef"),v;case z:return w=v.displayName||null,w!==null?w:me(v.type)||"Memo";case H:w=v._payload,v=v._init;try{return me(v(w))}catch{}}return null}function Ee(v){var w=v.type;switch(v.tag){case 24:return"Cache";case 9:return(w.displayName||"Context")+".Consumer";case 10:return(w._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return v=w.render,v=v.displayName||v.name||"",w.displayName||(v!==""?"ForwardRef("+v+")":"ForwardRef");case 7:return"Fragment";case 5:return w;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return me(w);case 8:return w===A?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof w=="function")return w.displayName||w.name||null;if(typeof w=="string")return w}return null}function je(v){switch(typeof v){case"boolean":case"number":case"string":case"undefined":return v;case"object":return v;default:return""}}function qe(v){var w=v.type;return(v=v.nodeName)&&v.toLowerCase()==="input"&&(w==="checkbox"||w==="radio")}function Ze(v){var w=qe(v)?"checked":"value",T=Object.getOwnPropertyDescriptor(v.constructor.prototype,w),F=""+v[w];if(!v.hasOwnProperty(w)&&typeof T<"u"&&typeof T.get=="function"&&typeof T.set=="function"){var V=T.get,U=T.set;return Object.defineProperty(v,w,{configurable:!0,get:function(){return V.call(this)},set:function(re){F=""+re,U.call(this,re)}}),Object.defineProperty(v,w,{enumerable:T.enumerable}),{getValue:function(){return F},setValue:function(re){F=""+re},stopTracking:function(){v._valueTracker=null,delete v[w]}}}}function We(v){v._valueTracker||(v._valueTracker=Ze(v))}function ut(v){if(!v)return!1;var w=v._valueTracker;if(!w)return!0;var T=w.getValue(),F="";return v&&(F=qe(v)?v.checked?"true":"false":v.value),v=F,v!==T?(w.setValue(v),!0):!1}function st(v){if(v=v||(typeof document<"u"?document:void 0),typeof v>"u")return null;try{return v.activeElement||v.body}catch{return v.body}}function mt(v,w){var T=w.checked;return ie({},w,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:T??v._wrapperState.initialChecked})}function Rt(v,w){var T=w.defaultValue==null?"":w.defaultValue,F=w.checked!=null?w.checked:w.defaultChecked;T=je(w.value!=null?w.value:T),v._wrapperState={initialChecked:F,initialValue:T,controlled:w.type==="checkbox"||w.type==="radio"?w.checked!=null:w.value!=null}}function Vt(v,w){w=w.checked,w!=null&&x(v,"checked",w,!1)}function Ot(v,w){Vt(v,w);var T=je(w.value),F=w.type;if(T!=null)F==="number"?(T===0&&v.value===""||v.value!=T)&&(v.value=""+T):v.value!==""+T&&(v.value=""+T);else if(F==="submit"||F==="reset"){v.removeAttribute("value");return}w.hasOwnProperty("value")?wn(v,w.type,T):w.hasOwnProperty("defaultValue")&&wn(v,w.type,je(w.defaultValue)),w.checked==null&&w.defaultChecked!=null&&(v.defaultChecked=!!w.defaultChecked)}function vt(v,w,T){if(w.hasOwnProperty("value")||w.hasOwnProperty("defaultValue")){var F=w.type;if(!(F!=="submit"&&F!=="reset"||w.value!==void 0&&w.value!==null))return;w=""+v._wrapperState.initialValue,T||w===v.value||(v.value=w),v.defaultValue=w}T=v.name,T!==""&&(v.name=""),v.defaultChecked=!!v._wrapperState.initialChecked,T!==""&&(v.name=T)}function wn(v,w,T){(w!=="number"||st(v.ownerDocument)!==v)&&(T==null?v.defaultValue=""+v._wrapperState.initialValue:v.defaultValue!==""+T&&(v.defaultValue=""+T))}var Ce=Array.isArray;function ge(v,w,T,F){if(v=v.options,w){w={};for(var V=0;V"+w.valueOf().toString()+"",w=Ie.firstChild;v.firstChild;)v.removeChild(v.firstChild);for(;w.firstChild;)v.appendChild(w.firstChild)}});function Oe(v,w){if(w){var T=v.firstChild;if(T&&T===v.lastChild&&T.nodeType===3){T.nodeValue=w;return}}v.textContent=w}var Ve={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},gt=["Webkit","ms","Moz","O"];Object.keys(Ve).forEach(function(v){gt.forEach(function(w){w=w+v.charAt(0).toUpperCase()+v.substring(1),Ve[w]=Ve[v]})});function $t(v,w,T){return w==null||typeof w=="boolean"||w===""?"":T||typeof w!="number"||w===0||Ve.hasOwnProperty(v)&&Ve[v]?(""+w).trim():w+"px"}function Mt(v,w){v=v.style;for(var T in w)if(w.hasOwnProperty(T)){var F=T.indexOf("--")===0,V=$t(T,w[T],F);T==="float"&&(T="cssFloat"),F?v.setProperty(T,V):v[T]=V}}var Bt=ie({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function jn(v,w){if(w){if(Bt[v]&&(w.children!=null||w.dangerouslySetInnerHTML!=null))throw Error(n(137,v));if(w.dangerouslySetInnerHTML!=null){if(w.children!=null)throw Error(n(60));if(typeof w.dangerouslySetInnerHTML!="object"||!("__html"in w.dangerouslySetInnerHTML))throw Error(n(61))}if(w.style!=null&&typeof w.style!="object")throw Error(n(62))}}function Dt(v,w){if(v.indexOf("-")===-1)return typeof w.is=="string";switch(v){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Fn=null;function tn(v){return v=v.target||v.srcElement||window,v.correspondingUseElement&&(v=v.correspondingUseElement),v.nodeType===3?v.parentNode:v}var pi=null,Pi=null,ti=null;function mi(v){if(v=el(v)){if(typeof pi!="function")throw Error(n(280));var w=v.stateNode;w&&(w=Vk(w),pi(v.stateNode,v.type,w))}}function ds(v){Pi?ti?ti.push(v):ti=[v]:Pi=v}function Nr(){if(Pi){var v=Pi,w=ti;if(ti=Pi=null,mi(v),w)for(v=0;v>>=0,v===0?32:31-($4(v)/z4|0)|0}var Yv=64,_k=4194304;function Zv(v){switch(v&-v){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return v&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return v&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return v}}function v_(v,w){var T=v.pendingLanes;if(T===0)return 0;var F=0,V=v.suspendedLanes,U=v.pingedLanes,re=T&268435455;if(re!==0){var be=re&~V;be!==0?F=Zv(be):(U&=re,U!==0&&(F=Zv(U)))}else re=T&~V,re!==0?F=Zv(re):U!==0&&(F=Zv(U));if(F===0)return 0;if(w!==0&&w!==F&&(w&V)===0&&(V=F&-F,U=w&-w,V>=U||V===16&&(U&4194240)!==0))return w;if((F&4)!==0&&(F|=T&16),w=v.entangledLanes,w!==0)for(v=v.entanglements,w&=F;0T;T++)w.push(v);return w}function uw(v,w,T){v.pendingLanes|=w,w!==536870912&&(v.suspendedLanes=0,v.pingedLanes=0),v=v.eventTimes,w=31-Cd(w),v[w]=T}function U4(v,w){var T=v.pendingLanes&~w;v.pendingLanes=w,v.suspendedLanes=0,v.pingedLanes=0,v.expiredLanes&=w,v.mutableReadLanes&=w,v.entangledLanes&=w,w=v.entanglements;var F=v.eventTimes;for(v=v.expirationTimes;0=zf),sF=" ",oF=!1;function aF(v,w){switch(v){case"keyup":return Tc.indexOf(w.keyCode)!==-1;case"keydown":return w.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lF(v){return v=v.detail,typeof v=="object"&&"data"in v?v.data:null}var ib=!1;function rb(v,w){switch(v){case"compositionend":return lF(w);case"keypress":return w.which!==32?null:(oF=!0,sF);case"textInput":return v=w.data,v===sF&&oF?null:v;default:return null}}function lH(v,w){if(ib)return v==="compositionend"||!gw&&aF(v,w)?(v=gT(),Eh=pw=Fs=null,ib=!1,v):null;switch(v){case"paste":return null;case"keypress":if(!(w.ctrlKey||w.altKey||w.metaKey)||w.ctrlKey&&w.altKey){if(w.char&&1=w)return{node:T,offset:w-v};v=F}e:{for(;T;){if(T.nextSibling){T=T.nextSibling;break e}T=T.parentNode}T=void 0}T=vi(T)}}function Eo(v,w){return v&&w?v===w?!0:v&&v.nodeType===3?!1:w&&w.nodeType===3?Eo(v,w.parentNode):"contains"in v?v.contains(w):v.compareDocumentPosition?!!(v.compareDocumentPosition(w)&16):!1:!1}function Gr(){for(var v=window,w=st();w instanceof v.HTMLIFrameElement;){try{var T=typeof w.contentWindow.location.href=="string"}catch{T=!1}if(T)v=w.contentWindow;else break;w=st(v.document)}return w}function mw(v){var w=v&&v.nodeName&&v.nodeName.toLowerCase();return w&&(w==="input"&&(v.type==="text"||v.type==="search"||v.type==="tel"||v.type==="url"||v.type==="password")||w==="textarea"||v.contentEditable==="true")}function pH(v){var w=Gr(),T=v.focusedElem,F=v.selectionRange;if(w!==T&&T&&T.ownerDocument&&Eo(T.ownerDocument.documentElement,T)){if(F!==null&&mw(T)){if(w=F.start,v=F.end,v===void 0&&(v=w),"selectionStart"in T)T.selectionStart=w,T.selectionEnd=Math.min(v,T.value.length);else if(v=(w=T.ownerDocument||document)&&w.defaultView||window,v.getSelection){v=v.getSelection();var V=T.textContent.length,U=Math.min(F.start,V);F=F.end===void 0?U:Math.min(F.end,V),!v.extend&&U>F&&(V=F,F=U,U=V),V=Cr(T,U);var re=Cr(T,F);V&&re&&(v.rangeCount!==1||v.anchorNode!==V.node||v.anchorOffset!==V.offset||v.focusNode!==re.node||v.focusOffset!==re.offset)&&(w=w.createRange(),w.setStart(V.node,V.offset),v.removeAllRanges(),U>F?(v.addRange(w),v.extend(re.node,re.offset)):(w.setEnd(re.node,re.offset),v.addRange(w)))}}for(w=[],v=T;v=v.parentNode;)v.nodeType===1&&w.push({element:v,left:v.scrollLeft,top:v.scrollTop});for(typeof T.focus=="function"&&T.focus(),T=0;T=document.documentMode,Vf=null,ET=null,Ih=null,ob=!1;function _w(v,w,T){var F=T.window===T?T.document:T.nodeType===9?T:T.ownerDocument;ob||Vf==null||Vf!==st(F)||(F=Vf,"selectionStart"in F&&mw(F)?F={start:F.selectionStart,end:F.selectionEnd}:(F=(F.ownerDocument&&F.ownerDocument.defaultView||window).getSelection(),F={anchorNode:F.anchorNode,anchorOffset:F.anchorOffset,focusNode:F.focusNode,focusOffset:F.focusOffset}),Ih&&fn(Ih,F)||(Ih=F,F=jk(ET,"onSelect"),0pb||(v.current=NT[pb],NT[pb]=null,pb--)}function fs(v,w){pb++,NT[pb]=v.current,v.current=w}var Sg={},tl=Ql(Sg),Jl=Ql(!1),Sl=Sg;function gb(v,w){var T=v.type.contextTypes;if(!T)return Sg;var F=v.stateNode;if(F&&F.__reactInternalMemoizedUnmaskedChildContext===w)return F.__reactInternalMemoizedMaskedChildContext;var V={},U;for(U in T)V[U]=w[U];return F&&(v=v.stateNode,v.__reactInternalMemoizedUnmaskedChildContext=w,v.__reactInternalMemoizedMaskedChildContext=V),V}function ec(v){return v=v.childContextTypes,v!=null}function Hk(){xs(Jl),xs(tl)}function vF(v,w,T){if(tl.current!==Sg)throw Error(n(168));fs(tl,w),fs(Jl,T)}function bF(v,w,T){var F=v.stateNode;if(w=w.childContextTypes,typeof F.getChildContext!="function")return T;F=F.getChildContext();for(var V in F)if(!(V in w))throw Error(n(108,Ee(v)||"Unknown",V));return ie({},T,F)}function yu(v){return v=(v=v.stateNode)&&v.__reactInternalMemoizedMergedChildContext||Sg,Sl=tl.current,fs(tl,v),fs(Jl,Jl.current),!0}function yF(v,w,T){var F=v.stateNode;if(!F)throw Error(n(169));T?(v=bF(v,w,Sl),F.__reactInternalMemoizedMergedChildContext=v,xs(Jl),xs(tl),fs(tl,v)):xs(Jl),fs(Jl,T)}var qf=null,Uk=!1,MT=!1;function wF(v){qf===null?qf=[v]:qf.push(v)}function L_(v){Uk=!0,wF(v)}function xg(){if(!MT&&qf!==null){MT=!0;var v=0,w=Tr;try{var T=qf;for(Tr=1;v>=re,V-=re,Ah=1<<32-Cd(w)+V|T<ci?(ba=zn,zn=null):ba=zn.sibling;var xr=Lt(Ke,zn,Ge[ci],Wt);if(xr===null){zn===null&&(zn=ba);break}v&&zn&&xr.alternate===null&&w(Ke,zn),Me=U(xr,Me,ci),Gn===null?In=xr:Gn.sibling=xr,Gn=xr,zn=ba}if(ci===Ge.length)return T(Ke,zn),ks&&E_(Ke,ci),In;if(zn===null){for(;cici?(ba=zn,zn=null):ba=zn.sibling;var Og=Lt(Ke,zn,xr.value,Wt);if(Og===null){zn===null&&(zn=ba);break}v&&zn&&Og.alternate===null&&w(Ke,zn),Me=U(Og,Me,ci),Gn===null?In=Og:Gn.sibling=Og,Gn=Og,zn=ba}if(xr.done)return T(Ke,zn),ks&&E_(Ke,ci),In;if(zn===null){for(;!xr.done;ci++,xr=Ge.next())xr=Nt(Ke,xr.value,Wt),xr!==null&&(Me=U(xr,Me,ci),Gn===null?In=xr:Gn.sibling=xr,Gn=xr);return ks&&E_(Ke,ci),In}for(zn=F(Ke,zn);!xr.done;ci++,xr=Ge.next())xr=pn(zn,Ke,ci,xr.value,Wt),xr!==null&&(v&&xr.alternate!==null&&zn.delete(xr.key===null?ci:xr.key),Me=U(xr,Me,ci),Gn===null?In=xr:Gn.sibling=xr,Gn=xr);return v&&zn.forEach(function(OH){return w(Ke,OH)}),ks&&E_(Ke,ci),In}function bo(Ke,Me,Ge,Wt){if(typeof Ge=="object"&&Ge!==null&&Ge.type===E&&Ge.key===null&&(Ge=Ge.props.children),typeof Ge=="object"&&Ge!==null){switch(Ge.$$typeof){case D:e:{for(var In=Ge.key,Gn=Me;Gn!==null;){if(Gn.key===In){if(In=Ge.type,In===E){if(Gn.tag===7){T(Ke,Gn.sibling),Me=V(Gn,Ge.props.children),Me.return=Ke,Ke=Me;break e}}else if(Gn.elementType===In||typeof In=="object"&&In!==null&&In.$$typeof===H&&kF(In)===Gn.type){T(Ke,Gn.sibling),Me=V(Gn,Ge.props),Me.ref=Ew(Ke,Gn,Ge),Me.return=Ke,Ke=Me;break e}T(Ke,Gn);break}else w(Ke,Gn);Gn=Gn.sibling}Ge.type===E?(Me=$_(Ge.props.children,Ke.mode,Wt,Ge.key),Me.return=Ke,Ke=Me):(Wt=IL(Ge.type,Ge.key,Ge.props,null,Ke.mode,Wt),Wt.ref=Ew(Ke,Me,Ge),Wt.return=Ke,Ke=Wt)}return re(Ke);case R:e:{for(Gn=Ge.key;Me!==null;){if(Me.key===Gn)if(Me.tag===4&&Me.stateNode.containerInfo===Ge.containerInfo&&Me.stateNode.implementation===Ge.implementation){T(Ke,Me.sibling),Me=V(Me,Ge.children||[]),Me.return=Ke,Ke=Me;break e}else{T(Ke,Me);break}else w(Ke,Me);Me=Me.sibling}Me=SR(Ge,Ke.mode,Wt),Me.return=Ke,Ke=Me}return re(Ke);case H:return Gn=Ge._init,bo(Ke,Me,Gn(Ge._payload),Wt)}if(Ce(Ge))return Cn(Ke,Me,Ge,Wt);if(Q(Ge))return Dn(Ke,Me,Ge,Wt);T_(Ke,Ge)}return typeof Ge=="string"&&Ge!==""||typeof Ge=="number"?(Ge=""+Ge,Me!==null&&Me.tag===6?(T(Ke,Me.sibling),Me=V(Me,Ge),Me.return=Ke,Ke=Me):(T(Ke,Me),Me=CR(Ge,Ke.mode,Wt),Me.return=Ke,Ke=Me),re(Ke)):T(Ke,Me)}return bo}var oo=OT(!0),Xk=OT(!1),Iw=Ql(null),Mc=null,kg=null,_b=null;function Gf(){_b=kg=Mc=null}function Yk(v){var w=Iw.current;xs(Iw),v._currentValue=w}function Na(v,w,T){for(;v!==null;){var F=v.alternate;if((v.childLanes&w)!==w?(v.childLanes|=w,F!==null&&(F.childLanes|=w)):F!==null&&(F.childLanes&w)!==w&&(F.childLanes|=w),v===T)break;v=v.return}}function Lg(v,w){Mc=v,_b=kg=null,v=v.dependencies,v!==null&&v.firstContext!==null&&((v.lanes&w)!==0&&(kl=!0),v.firstContext=null)}function Su(v){var w=v._currentValue;if(_b!==v)if(v={context:v,memoizedValue:w,next:null},kg===null){if(Mc===null)throw Error(n(308));kg=v,Mc.dependencies={lanes:0,firstContext:v}}else kg=kg.next=v;return w}var R_=null;function FT(v){R_===null?R_=[v]:R_.push(v)}function Zk(v,w,T,F){var V=w.interleaved;return V===null?(T.next=T,FT(w)):(T.next=V.next,V.next=T),w.interleaved=T,Xf(v,F)}function Xf(v,w){v.lanes|=w;var T=v.alternate;for(T!==null&&(T.lanes|=w),T=v,v=v.return;v!==null;)v.childLanes|=w,T=v.alternate,T!==null&&(T.childLanes|=w),T=v,v=v.return;return T.tag===3?T.stateNode:null}var xu=!1;function Qk(v){v.updateQueue={baseState:v.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function LF(v,w){v=v.updateQueue,w.updateQueue===v&&(w.updateQueue={baseState:v.baseState,firstBaseUpdate:v.firstBaseUpdate,lastBaseUpdate:v.lastBaseUpdate,shared:v.shared,effects:v.effects})}function Yf(v,w){return{eventTime:v,lane:w,tag:0,payload:null,callback:null,next:null}}function ku(v,w,T){var F=v.updateQueue;if(F===null)return null;if(F=F.shared,(pr&2)!==0){var V=F.pending;return V===null?w.next=w:(w.next=V.next,V.next=w),F.pending=w,Xf(v,T)}return V=F.interleaved,V===null?(w.next=w,FT(F)):(w.next=V.next,V.next=w),F.interleaved=w,Xf(v,T)}function Jk(v,w,T){if(w=w.updateQueue,w!==null&&(w=w.shared,(T&4194240)!==0)){var F=w.lanes;F&=v.pendingLanes,T|=F,w.lanes=T,dw(v,T)}}function DF(v,w){var T=v.updateQueue,F=v.alternate;if(F!==null&&(F=F.updateQueue,T===F)){var V=null,U=null;if(T=T.firstBaseUpdate,T!==null){do{var re={eventTime:T.eventTime,lane:T.lane,tag:T.tag,payload:T.payload,callback:T.callback,next:null};U===null?V=U=re:U=U.next=re,T=T.next}while(T!==null);U===null?V=U=w:U=U.next=w}else V=U=w;T={baseState:F.baseState,firstBaseUpdate:V,lastBaseUpdate:U,shared:F.shared,effects:F.effects},v.updateQueue=T;return}v=T.lastBaseUpdate,v===null?T.firstBaseUpdate=w:v.next=w,T.lastBaseUpdate=w}function vb(v,w,T,F){var V=v.updateQueue;xu=!1;var U=V.firstBaseUpdate,re=V.lastBaseUpdate,be=V.shared.pending;if(be!==null){V.shared.pending=null;var Re=be,et=Re.next;Re.next=null,re===null?U=et:re.next=et,re=Re;var It=v.alternate;It!==null&&(It=It.updateQueue,be=It.lastBaseUpdate,be!==re&&(be===null?It.firstBaseUpdate=et:be.next=et,It.lastBaseUpdate=Re))}if(U!==null){var Nt=V.baseState;re=0,It=et=Re=null,be=U;do{var Lt=be.lane,pn=be.eventTime;if((F&Lt)===Lt){It!==null&&(It=It.next={eventTime:pn,lane:0,tag:be.tag,payload:be.payload,callback:be.callback,next:null});e:{var Cn=v,Dn=be;switch(Lt=w,pn=T,Dn.tag){case 1:if(Cn=Dn.payload,typeof Cn=="function"){Nt=Cn.call(pn,Nt,Lt);break e}Nt=Cn;break e;case 3:Cn.flags=Cn.flags&-65537|128;case 0:if(Cn=Dn.payload,Lt=typeof Cn=="function"?Cn.call(pn,Nt,Lt):Cn,Lt==null)break e;Nt=ie({},Nt,Lt);break e;case 2:xu=!0}}be.callback!==null&&be.lane!==0&&(v.flags|=64,Lt=V.effects,Lt===null?V.effects=[be]:Lt.push(be))}else pn={eventTime:pn,lane:Lt,tag:be.tag,payload:be.payload,callback:be.callback,next:null},It===null?(et=It=pn,Re=Nt):It=It.next=pn,re|=Lt;if(be=be.next,be===null){if(be=V.shared.pending,be===null)break;Lt=be,be=Lt.next,Lt.next=null,V.lastBaseUpdate=Lt,V.shared.pending=null}}while(!0);if(It===null&&(Re=Nt),V.baseState=Re,V.firstBaseUpdate=et,V.lastBaseUpdate=It,w=V.shared.interleaved,w!==null){V=w;do re|=V.lane,V=V.next;while(V!==w)}else U===null&&(V.shared.lanes=0);Rg|=re,v.lanes=re,v.memoizedState=Nt}}function BT(v,w,T){if(v=w.effects,w.effects=null,v!==null)for(w=0;wT?T:4,v(!0);var F=zT.transition;zT.transition={};try{v(!1),w()}finally{Tr=T,zT.transition=F}}function YT(){return Lu().memoizedState}function mH(v,w,T){var F=Mg(v);if(T={lane:F,action:T,hasEagerState:!1,eagerState:null,next:null},ZT(v))xl(w,T);else if(T=Zk(v,w,T,F),T!==null){var V=El();Td(T,v,F,V),kd(T,w,F)}}function NF(v,w,T){var F=Mg(v),V={lane:F,action:T,hasEagerState:!1,eagerState:null,next:null};if(ZT(v))xl(w,V);else{var U=v.alternate;if(v.lanes===0&&(U===null||U.lanes===0)&&(U=w.lastRenderedReducer,U!==null))try{var re=w.lastRenderedState,be=U(re,T);if(V.hasEagerState=!0,V.eagerState=be,Qe(be,re)){var Re=w.interleaved;Re===null?(V.next=V,FT(w)):(V.next=Re.next,Re.next=V),w.interleaved=V;return}}catch{}finally{}T=Zk(v,w,V,F),T!==null&&(V=El(),Td(T,v,F,V),kd(T,w,F))}}function ZT(v){var w=v.alternate;return v===Gs||w!==null&&w===Gs}function xl(v,w){Nw=yb=!0;var T=v.pending;T===null?w.next=w:(w.next=T.next,T.next=w),v.pending=w}function kd(v,w,T){if((T&4194240)!==0){var F=w.lanes;F&=v.pendingLanes,T|=F,w.lanes=T,dw(v,T)}}var aL={readContext:Su,useCallback:rl,useContext:rl,useEffect:rl,useImperativeHandle:rl,useInsertionEffect:rl,useLayoutEffect:rl,useMemo:rl,useReducer:rl,useRef:rl,useState:rl,useDebugValue:rl,useDeferredValue:rl,useTransition:rl,useMutableSource:rl,useSyncExternalStore:rl,useId:rl,unstable_isNewReconciler:!1},_H={readContext:Su,useCallback:function(v,w){return Bh().memoizedState=[v,w===void 0?null:w],v},useContext:Su,useEffect:oL,useImperativeHandle:function(v,w,T){return T=T!=null?T.concat([v]):null,Pw(4194308,4,GT.bind(null,w,v),T)},useLayoutEffect:function(v,w){return Pw(4194308,4,v,w)},useInsertionEffect:function(v,w){return Pw(4,2,v,w)},useMemo:function(v,w){var T=Bh();return w=w===void 0?null:w,v=v(),T.memoizedState=[v,w],v},useReducer:function(v,w,T){var F=Bh();return w=T!==void 0?T(w):w,F.memoizedState=F.baseState=w,v={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:v,lastRenderedState:w},F.queue=v,v=v.dispatch=mH.bind(null,Gs,v),[F.memoizedState,v]},useRef:function(v){var w=Bh();return v={current:v},w.memoizedState=v},useState:Mw,useDebugValue:Ow,useDeferredValue:function(v){return Bh().memoizedState=v},useTransition:function(){var v=Mw(!1),w=v[0];return v=AF.bind(null,v[1]),Bh().memoizedState=v,[w,v]},useMutableSource:function(){},useSyncExternalStore:function(v,w,T){var F=Gs,V=Bh();if(ks){if(T===void 0)throw Error(n(407));T=T()}else{if(T=w(),va===null)throw Error(n(349));(Eg&30)!==0||qT(F,w,T)}V.memoizedState=T;var U={value:T,getSnapshot:w};return V.queue=U,oL(Qf.bind(null,F,U,v),[v]),F.flags|=2048,Cb(9,nc.bind(null,F,U,T,w),void 0,null),T},useId:function(){var v=Bh(),w=va.identifierPrefix;if(ks){var T=Nh,F=Ah;T=(F&~(1<<32-Cd(F)-1)).toString(32)+T,w=":"+w+"R"+T,T=N_++,0<\/script>",v=v.removeChild(v.firstChild)):typeof F.is=="string"?v=re.createElement(T,{is:F.is}):(v=re.createElement(T),T==="select"&&(re=v,F.multiple?re.multiple=!0:F.size&&(re.size=F.size))):v=re.createElementNS(v,T),v[Th]=w,v[Cg]=F,Pa(v,w,!1,!1),w.stateNode=v;e:{switch(re=Dt(T,F),T){case"dialog":Ss("cancel",v),Ss("close",v),V=F;break;case"iframe":case"object":case"embed":Ss("load",v),V=F;break;case"video":case"audio":for(V=0;VF_&&(w.flags|=128,F=!0,Vw(U,!1),w.lanes=4194304)}else{if(!F)if(v=A_(re),v!==null){if(w.flags|=128,F=!0,T=v.updateQueue,T!==null&&(w.updateQueue=T,w.flags|=4),Vw(U,!0),U.tail===null&&U.tailMode==="hidden"&&!re.alternate&&!ks)return Oa(w),null}else 2*Ei()-U.renderingStartTime>F_&&T!==1073741824&&(w.flags|=128,F=!0,Vw(U,!1),w.lanes=4194304);U.isBackwards?(re.sibling=w.child,w.child=re):(T=U.last,T!==null?T.sibling=re:w.child=re,U.last=re)}return U.tail!==null?(w=U.tail,U.rendering=w,U.tail=w.sibling,U.renderingStartTime=Ei(),w.sibling=null,T=Bs.current,fs(Bs,F?T&1|2:T&1),w):(Oa(w),null);case 22:case 23:return yR(),F=w.memoizedState!==null,v!==null&&v.memoizedState!==null!==F&&(w.flags|=8192),F&&(w.mode&1)!==0?(Oc&1073741824)!==0&&(Oa(w),w.subtreeFlags&6&&(w.flags|=8192)):Oa(w),null;case 24:return null;case 25:return null}throw Error(n(156,w.tag))}function bH(v,w){switch(I_(w),w.tag){case 1:return ec(w.type)&&Hk(),v=w.flags,v&65536?(w.flags=v&-65537|128,w):null;case 3:return Dg(),xs(Jl),xs(tl),tL(),v=w.flags,(v&65536)!==0&&(v&128)===0?(w.flags=v&-65537|128,w):null;case 5:return eL(w),null;case 13:if(xs(Bs),v=w.memoizedState,v!==null&&v.dehydrated!==null){if(w.alternate===null)throw Error(n(340));Ph()}return v=w.flags,v&65536?(w.flags=v&-65537|128,w):null;case 19:return xs(Bs),null;case 4:return Dg(),null;case 10:return Yk(w.type._context),null;case 22:case 23:return yR(),null;case 24:return null;default:return null}}var mL=!1,js=!1,Ll=typeof WeakSet=="function"?WeakSet:Set,_n=null;function Eb(v,w){var T=v.ref;if(T!==null)if(typeof T=="function")try{T(null)}catch(F){Xs(v,w,F)}else T.current=null}function Hw(v,w,T){try{T()}catch(F){Xs(v,w,F)}}var WF=!1;function yH(v,w){if(Sw=Ck,v=Gr(),mw(v)){if("selectionStart"in v)var T={start:v.selectionStart,end:v.selectionEnd};else e:{T=(T=v.ownerDocument)&&T.defaultView||window;var F=T.getSelection&&T.getSelection();if(F&&F.rangeCount!==0){T=F.anchorNode;var V=F.anchorOffset,U=F.focusNode;F=F.focusOffset;try{T.nodeType,U.nodeType}catch{T=null;break e}var re=0,be=-1,Re=-1,et=0,It=0,Nt=v,Lt=null;t:for(;;){for(var pn;Nt!==T||V!==0&&Nt.nodeType!==3||(be=re+V),Nt!==U||F!==0&&Nt.nodeType!==3||(Re=re+F),Nt.nodeType===3&&(re+=Nt.nodeValue.length),(pn=Nt.firstChild)!==null;)Lt=Nt,Nt=pn;for(;;){if(Nt===v)break t;if(Lt===T&&++et===V&&(be=re),Lt===U&&++It===F&&(Re=re),(pn=Nt.nextSibling)!==null)break;Nt=Lt,Lt=Nt.parentNode}Nt=pn}T=be===-1||Re===-1?null:{start:be,end:Re}}else T=null}T=T||{start:0,end:0}}else T=null;for(k_={focusedElem:v,selectionRange:T},Ck=!1,_n=w;_n!==null;)if(w=_n,v=w.child,(w.subtreeFlags&1028)!==0&&v!==null)v.return=w,_n=v;else for(;_n!==null;){w=_n;try{var Cn=w.alternate;if((w.flags&1024)!==0)switch(w.tag){case 0:case 11:case 15:break;case 1:if(Cn!==null){var Dn=Cn.memoizedProps,bo=Cn.memoizedState,Ke=w.stateNode,Me=Ke.getSnapshotBeforeUpdate(w.elementType===w.type?Dn:Du(w.type,Dn),bo);Ke.__reactInternalSnapshotBeforeUpdate=Me}break;case 3:var Ge=w.stateNode.containerInfo;Ge.nodeType===1?Ge.textContent="":Ge.nodeType===9&&Ge.documentElement&&Ge.removeChild(Ge.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(n(163))}}catch(Wt){Xs(w,w.return,Wt)}if(v=w.sibling,v!==null){v.return=w.return,_n=v;break}_n=w.return}return Cn=WF,WF=!1,Cn}function tp(v,w,T){var F=w.updateQueue;if(F=F!==null?F.lastEffect:null,F!==null){var V=F=F.next;do{if((V.tag&v)===v){var U=V.destroy;V.destroy=void 0,U!==void 0&&Hw(w,T,U)}V=V.next}while(V!==F)}}function Uw(v,w){if(w=w.updateQueue,w=w!==null?w.lastEffect:null,w!==null){var T=w=w.next;do{if((T.tag&v)===v){var F=T.create;T.destroy=F()}T=T.next}while(T!==w)}}function _L(v){var w=v.ref;if(w!==null){var T=v.stateNode;switch(v.tag){case 5:v=T;break;default:v=T}typeof w=="function"?w(v):w.current=v}}function $F(v){var w=v.alternate;w!==null&&(v.alternate=null,$F(w)),v.child=null,v.deletions=null,v.sibling=null,v.tag===5&&(w=v.stateNode,w!==null&&(delete w[Th],delete w[Cg],delete w[zk],delete w[he],delete w[fb])),v.stateNode=null,v.return=null,v.dependencies=null,v.memoizedProps=null,v.memoizedState=null,v.pendingProps=null,v.stateNode=null,v.updateQueue=null}function zF(v){return v.tag===5||v.tag===3||v.tag===4}function VF(v){e:for(;;){for(;v.sibling===null;){if(v.return===null||zF(v.return))return null;v=v.return}for(v.sibling.return=v.return,v=v.sibling;v.tag!==5&&v.tag!==6&&v.tag!==18;){if(v.flags&2||v.child===null||v.tag===4)continue e;v.child.return=v,v=v.child}if(!(v.flags&2))return v.stateNode}}function cR(v,w,T){var F=v.tag;if(F===5||F===6)v=v.stateNode,w?T.nodeType===8?T.parentNode.insertBefore(v,w):T.insertBefore(v,w):(T.nodeType===8?(w=T.parentNode,w.insertBefore(v,T)):(w=T,w.appendChild(v)),T=T._reactRootContainer,T!=null||w.onclick!==null||(w.onclick=Wk));else if(F!==4&&(v=v.child,v!==null))for(cR(v,w,T),v=v.sibling;v!==null;)cR(v,w,T),v=v.sibling}function vL(v,w,T){var F=v.tag;if(F===5||F===6)v=v.stateNode,w?T.insertBefore(v,w):T.appendChild(v);else if(F!==4&&(v=v.child,v!==null))for(vL(v,w,T),v=v.sibling;v!==null;)vL(v,w,T),v=v.sibling}var _a=null,Dd=!1;function zh(v,w,T){for(T=T.child;T!==null;)uR(v,w,T),T=T.sibling}function uR(v,w,T){if(Uo&&typeof Uo.onCommitFiberUnmount=="function")try{Uo.onCommitFiberUnmount(Ic,T)}catch{}switch(T.tag){case 5:js||Eb(T,w);case 6:var F=_a,V=Dd;_a=null,zh(v,w,T),_a=F,Dd=V,_a!==null&&(Dd?(v=_a,T=T.stateNode,v.nodeType===8?v.parentNode.removeChild(T):v.removeChild(T)):_a.removeChild(T.stateNode));break;case 18:_a!==null&&(Dd?(v=_a,T=T.stateNode,v.nodeType===8?AT(v.parentNode,T):v.nodeType===1&&AT(v,T),Mr(v)):AT(_a,T.stateNode));break;case 4:F=_a,V=Dd,_a=T.stateNode.containerInfo,Dd=!0,zh(v,w,T),_a=F,Dd=V;break;case 0:case 11:case 14:case 15:if(!js&&(F=T.updateQueue,F!==null&&(F=F.lastEffect,F!==null))){V=F=F.next;do{var U=V,re=U.destroy;U=U.tag,re!==void 0&&((U&2)!==0||(U&4)!==0)&&Hw(T,w,re),V=V.next}while(V!==F)}zh(v,w,T);break;case 1:if(!js&&(Eb(T,w),F=T.stateNode,typeof F.componentWillUnmount=="function"))try{F.props=T.memoizedProps,F.state=T.memoizedState,F.componentWillUnmount()}catch(be){Xs(T,w,be)}zh(v,w,T);break;case 21:zh(v,w,T);break;case 22:T.mode&1?(js=(F=js)||T.memoizedState!==null,zh(v,w,T),js=F):zh(v,w,T);break;default:zh(v,w,T)}}function Ib(v){var w=v.updateQueue;if(w!==null){v.updateQueue=null;var T=v.stateNode;T===null&&(T=v.stateNode=new Ll),w.forEach(function(F){var V=DH.bind(null,v,F);T.has(F)||(T.add(F),F.then(V,V))})}}function Pc(v,w){var T=w.deletions;if(T!==null)for(var F=0;FV&&(V=re),F&=~U}if(F=V,F=Ei()-F,F=(120>F?120:480>F?480:1080>F?1080:1920>F?1920:3e3>F?3e3:4320>F?4320:1960*UF(F/1960))-F,10v?16:v,Ng===null)var F=!1;else{if(v=Ng,Ng=null,Dl=0,(pr&6)!==0)throw Error(n(331));var V=pr;for(pr|=4,_n=v.current;_n!==null;){var U=_n,re=U.child;if((_n.flags&16)!==0){var be=U.deletions;if(be!==null){for(var Re=0;ReEi()-pR?j_(v,0):wL|=T),rc(v,w)}function ZF(v,w){w===0&&((v.mode&1)===0?w=1:(w=_k,_k<<=1,(_k&130023424)===0&&(_k=4194304)));var T=El();v=Xf(v,w),v!==null&&(uw(v,w,T),rc(v,T))}function LH(v){var w=v.memoizedState,T=0;w!==null&&(T=w.retryLane),ZF(v,T)}function DH(v,w){var T=0;switch(v.tag){case 13:var F=v.stateNode,V=v.memoizedState;V!==null&&(T=V.retryLane);break;case 19:F=v.stateNode;break;default:throw Error(n(314))}F!==null&&F.delete(w),ZF(v,T)}var QF;QF=function(v,w,T){if(v!==null)if(v.memoizedProps!==w.pendingProps||Jl.current)kl=!0;else{if((v.lanes&T)===0&&(w.flags&128)===0)return kl=!1,BF(v,w,T);kl=(v.flags&131072)!==0}else kl=!1,ks&&(w.flags&1048576)!==0&&CF(w,Kk,w.index);switch(w.lanes=0,w.tag){case 2:var F=w.type;gL(v,w),v=w.pendingProps;var V=gb(w,tl.current);Lg(w,T),V=M_(null,w,F,v,V,T);var U=nL();return w.flags|=1,typeof V=="object"&&V!==null&&typeof V.render=="function"&&V.$$typeof===void 0?(w.tag=1,w.memoizedState=null,w.updateQueue=null,ec(F)?(U=!0,yu(w)):U=!1,w.memoizedState=V.state!==null&&V.state!==void 0?V.state:null,Qk(w),V.updater=uL,w.stateNode=V,V._reactInternals=w,JT(w,F,v,T),w=oR(null,w,F,!0,U,T)):(w.tag=0,ks&&U&&Lw(w),Ma(null,w,V,T),w=w.child),w;case 16:F=w.elementType;e:{switch(gL(v,w),v=w.pendingProps,V=F._init,F=V(F._payload),w.type=F,V=w.tag=IH(F),v=Du(F,v),V){case 0:w=rR(null,w,F,v,T);break e;case 1:w=sR(null,w,F,v,T);break e;case 11:w=OF(null,w,F,v,T);break e;case 14:w=tR(null,w,F,Du(F.type,v),T);break e}throw Error(n(306,F,""))}return w;case 0:return F=w.type,V=w.pendingProps,V=w.elementType===F?V:Du(F,V),rR(v,w,F,V,T);case 1:return F=w.type,V=w.pendingProps,V=w.elementType===F?V:Du(F,V),sR(v,w,F,V,T);case 3:e:{if(FF(w),v===null)throw Error(n(387));F=w.pendingProps,U=w.memoizedState,V=U.element,LF(v,w),vb(w,F,null,T);var re=w.memoizedState;if(F=re.element,U.isDehydrated)if(U={element:F,isDehydrated:!1,cache:re.cache,pendingSuspenseBoundaries:re.pendingSuspenseBoundaries,transitions:re.transitions},w.updateQueue.baseState=U,w.memoizedState=U,w.flags&256){V=O_(Error(n(423)),w),w=$h(v,w,F,T,V);break e}else if(F!==V){V=O_(Error(n(424)),w),w=$h(v,w,F,T,V);break e}else for(Nc=wg(w.stateNode.containerInfo.firstChild),il=w,ks=!0,xd=null,T=Xk(w,null,F,T),w.child=T;T;)T.flags=T.flags&-3|4096,T=T.sibling;else{if(Ph(),F===V){w=Ld(v,w,T);break e}Ma(v,w,F,T)}w=w.child}return w;case 5:return WT(w),v===null&&tc(w),F=w.type,V=w.pendingProps,U=v!==null?v.memoizedProps:null,re=V.children,xw(F,V)?re=null:U!==null&&xw(F,U)&&(w.flags|=32),iR(v,w),Ma(v,w,re,T),w.child;case 6:return v===null&&tc(w),null;case 13:return pL(v,w,T);case 4:return jT(w,w.stateNode.containerInfo),F=w.pendingProps,v===null?w.child=oo(w,null,F,T):Ma(v,w,F,T),w.child;case 11:return F=w.type,V=w.pendingProps,V=w.elementType===F?V:Du(F,V),OF(v,w,F,V,T);case 7:return Ma(v,w,w.pendingProps,T),w.child;case 8:return Ma(v,w,w.pendingProps.children,T),w.child;case 12:return Ma(v,w,w.pendingProps.children,T),w.child;case 10:e:{if(F=w.type._context,V=w.pendingProps,U=w.memoizedProps,re=V.value,fs(Iw,F._currentValue),F._currentValue=re,U!==null)if(Qe(U.value,re)){if(U.children===V.children&&!Jl.current){w=Ld(v,w,T);break e}}else for(U=w.child,U!==null&&(U.return=w);U!==null;){var be=U.dependencies;if(be!==null){re=U.child;for(var Re=be.firstContext;Re!==null;){if(Re.context===F){if(U.tag===1){Re=Yf(-1,T&-T),Re.tag=2;var et=U.updateQueue;if(et!==null){et=et.shared;var It=et.pending;It===null?Re.next=Re:(Re.next=It.next,It.next=Re),et.pending=Re}}U.lanes|=T,Re=U.alternate,Re!==null&&(Re.lanes|=T),Na(U.return,T,w),be.lanes|=T;break}Re=Re.next}}else if(U.tag===10)re=U.type===w.type?null:U.child;else if(U.tag===18){if(re=U.return,re===null)throw Error(n(341));re.lanes|=T,be=re.alternate,be!==null&&(be.lanes|=T),Na(re,T,w),re=U.sibling}else re=U.child;if(re!==null)re.return=U;else for(re=U;re!==null;){if(re===w){re=null;break}if(U=re.sibling,U!==null){U.return=re.return,re=U;break}re=re.return}U=re}Ma(v,w,V.children,T),w=w.child}return w;case 9:return V=w.type,F=w.pendingProps.children,Lg(w,T),V=Su(V),F=F(V),w.flags|=1,Ma(v,w,F,T),w.child;case 14:return F=w.type,V=Du(F,w.pendingProps),V=Du(F.type,V),tR(v,w,F,V,T);case 15:return Wh(v,w,w.type,w.pendingProps,T);case 17:return F=w.type,V=w.pendingProps,V=w.elementType===F?V:Du(F,V),gL(v,w),w.tag=1,ec(F)?(v=!0,yu(w)):v=!1,Lg(w,T),P_(w,F,V),JT(w,F,V,T),oR(null,w,F,!0,v,T);case 19:return Ig(v,w,T);case 22:return nR(v,w,T)}throw Error(n(156,w.tag))};function JF(v,w){return En(v,w)}function EH(v,w,T,F){this.tag=v,this.key=T,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=w,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=F,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Iu(v,w,T,F){return new EH(v,w,T,F)}function EL(v){return v=v.prototype,!(!v||!v.isReactComponent)}function IH(v){if(typeof v=="function")return EL(v)?1:0;if(v!=null){if(v=v.$$typeof,v===O)return 11;if(v===z)return 14}return 2}function Rd(v,w){var T=v.alternate;return T===null?(T=Iu(v.tag,w,v.key,v.mode),T.elementType=v.elementType,T.type=v.type,T.stateNode=v.stateNode,T.alternate=v,v.alternate=T):(T.pendingProps=w,T.type=v.type,T.flags=0,T.subtreeFlags=0,T.deletions=null),T.flags=v.flags&14680064,T.childLanes=v.childLanes,T.lanes=v.lanes,T.child=v.child,T.memoizedProps=v.memoizedProps,T.memoizedState=v.memoizedState,T.updateQueue=v.updateQueue,w=v.dependencies,T.dependencies=w===null?null:{lanes:w.lanes,firstContext:w.firstContext},T.sibling=v.sibling,T.index=v.index,T.ref=v.ref,T}function IL(v,w,T,F,V,U){var re=2;if(F=v,typeof v=="function")EL(v)&&(re=1);else if(typeof v=="string")re=5;else e:switch(v){case E:return $_(T.children,V,U,w);case A:re=8,V|=8;break;case M:return v=Iu(12,T,w,V|2),v.elementType=M,v.lanes=U,v;case B:return v=Iu(13,T,w,V),v.elementType=B,v.lanes=U,v;case j:return v=Iu(19,T,w,V),v.elementType=j,v.lanes=U,v;case Y:return TL(T,V,U,w);default:if(typeof v=="object"&&v!==null)switch(v.$$typeof){case N:re=10;break e;case P:re=9;break e;case O:re=11;break e;case z:re=14;break e;case H:re=16,F=null;break e}throw Error(n(130,v==null?v:typeof v,""))}return w=Iu(re,T,w,V),w.elementType=v,w.type=F,w.lanes=U,w}function $_(v,w,T,F){return v=Iu(7,v,F,w),v.lanes=T,v}function TL(v,w,T,F){return v=Iu(22,v,F,w),v.elementType=Y,v.lanes=T,v.stateNode={isHidden:!1},v}function CR(v,w,T){return v=Iu(6,v,null,w),v.lanes=T,v}function SR(v,w,T){return w=Iu(4,v.children!==null?v.children:[],v.key,w),w.lanes=T,w.stateNode={containerInfo:v.containerInfo,pendingChildren:null,implementation:v.implementation},w}function TH(v,w,T,F,V){this.tag=w,this.containerInfo=v,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=cw(0),this.expirationTimes=cw(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=cw(0),this.identifierPrefix=F,this.onRecoverableError=V,this.mutableSourceEagerHydrationData=null}function xR(v,w,T,F,V,U,re,be,Re){return v=new TH(v,w,T,be,Re),w===1?(w=1,U===!0&&(w|=8)):w=0,U=Iu(3,null,null,w),v.current=U,U.stateNode=v,U.memoizedState={element:F,isDehydrated:T,cache:null,transitions:null,pendingSuspenseBoundaries:null},Qk(U),v}function RH(v,w,T){var F=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i)}catch(e){console.error(e)}}return i(),uU.exports=n$e(),uU.exports}var Wre=Pke();const h3=ql(Wre),Ede={disabled:!1},d9=nn.createContext(null);var i$e=function(e){return e.scrollTop},eN="unmounted",IC="exited",TC="entering",BD="entered",SZ="exiting",Nf=function(i){Mke(e,i);function e(r,s){var o;o=i.call(this,r,s)||this;var a=s,l=a&&!a.isMounting?r.enter:r.appear,c;return o.appearStatus=null,r.in?l?(c=IC,o.appearStatus=TC):c=BD:r.unmountOnExit||r.mountOnEnter?c=eN:c=IC,o.state={status:c},o.nextCallback=null,o}e.getDerivedStateFromProps=function(s,o){var a=s.in;return a&&o.status===eN?{status:IC}:null};var n=e.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(s){var o=null;if(s!==this.props){var a=this.state.status;this.props.in?a!==TC&&a!==BD&&(o=TC):(a===TC||a===BD)&&(o=SZ)}this.updateStatus(!1,o)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var s=this.props.timeout,o,a,l;return o=a=l=s,s!=null&&typeof s!="number"&&(o=s.exit,a=s.enter,l=s.appear!==void 0?s.appear:a),{exit:o,enter:a,appear:l}},n.updateStatus=function(s,o){if(s===void 0&&(s=!1),o!==null)if(this.cancelNextCallback(),o===TC){if(this.props.unmountOnExit||this.props.mountOnEnter){var a=this.props.nodeRef?this.props.nodeRef.current:h3.findDOMNode(this);a&&i$e(a)}this.performEnter(s)}else this.performExit();else this.props.unmountOnExit&&this.state.status===IC&&this.setState({status:eN})},n.performEnter=function(s){var o=this,a=this.props.enter,l=this.context?this.context.isMounting:s,c=this.props.nodeRef?[l]:[h3.findDOMNode(this),l],u=c[0],d=c[1],h=this.getTimeouts(),f=l?h.appear:h.enter;if(!s&&!a||Ede.disabled){this.safeSetState({status:BD},function(){o.props.onEntered(u)});return}this.props.onEnter(u,d),this.safeSetState({status:TC},function(){o.props.onEntering(u,d),o.onTransitionEnd(f,function(){o.safeSetState({status:BD},function(){o.props.onEntered(u,d)})})})},n.performExit=function(){var s=this,o=this.props.exit,a=this.getTimeouts(),l=this.props.nodeRef?void 0:h3.findDOMNode(this);if(!o||Ede.disabled){this.safeSetState({status:IC},function(){s.props.onExited(l)});return}this.props.onExit(l),this.safeSetState({status:SZ},function(){s.props.onExiting(l),s.onTransitionEnd(a.exit,function(){s.safeSetState({status:IC},function(){s.props.onExited(l)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(s,o){o=this.setNextCallback(o),this.setState(s,o)},n.setNextCallback=function(s){var o=this,a=!0;return this.nextCallback=function(l){a&&(a=!1,o.nextCallback=null,s(l))},this.nextCallback.cancel=function(){a=!1},this.nextCallback},n.onTransitionEnd=function(s,o){this.setNextCallback(o);var a=this.props.nodeRef?this.props.nodeRef.current:h3.findDOMNode(this),l=s==null&&!this.props.addEndListener;if(!a||l){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var c=this.props.nodeRef?[this.nextCallback]:[a,this.nextCallback],u=c[0],d=c[1];this.props.addEndListener(u,d)}s!=null&&setTimeout(this.nextCallback,s)},n.render=function(){var s=this.state.status;if(s===eN)return null;var o=this.props,a=o.children;o.in,o.mountOnEnter,o.unmountOnExit,o.appear,o.enter,o.exit,o.timeout,o.addEndListener,o.onEnter,o.onEntering,o.onEntered,o.onExit,o.onExiting,o.onExited,o.nodeRef;var l=Dc(o,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return nn.createElement(d9.Provider,{value:null},typeof a=="function"?a(s,l):nn.cloneElement(nn.Children.only(a),l))},e}(nn.Component);Nf.contextType=d9;Nf.propTypes={};function zL(){}Nf.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:zL,onEntering:zL,onEntered:zL,onExit:zL,onExiting:zL,onExited:zL};Nf.UNMOUNTED=eN;Nf.EXITED=IC;Nf.ENTERING=TC;Nf.ENTERED=BD;Nf.EXITING=SZ;function r$e(i){if(i===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return i}function $re(i,e){var n=function(o){return e&&$.isValidElement(o)?e(o):o},r=Object.create(null);return i&&$.Children.map(i,function(s){return s}).forEach(function(s){r[s.key]=n(s)}),r}function s$e(i,e){i=i||{},e=e||{};function n(d){return d in e?e[d]:i[d]}var r=Object.create(null),s=[];for(var o in i)o in e?s.length&&(r[o]=s,s=[]):s.push(o);var a,l={};for(var c in e){if(r[c])for(a=0;a{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)});xt(this,"disposeEffect",()=>this.clear)}static create(){return new yW}start(e,n){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,n()},e)}}function lS(){const i=Oke(yW.create).current;return d$e(i.disposeEffect),i}const Vre=i=>i.scrollTop;function s1(i,e){const{timeout:n,easing:r,style:s={}}=i;return{duration:s.transitionDuration??(typeof n=="number"?n:n[e.mode]||0),easing:s.transitionTimingFunction??(typeof r=="object"?r[e.mode]:r),delay:s.transitionDelay}}function h$e(i){return Xt("MuiCollapse",i)}Yt("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);const f$e=i=>{const{orientation:e,classes:n}=i,r={root:["root",`${e}`],entered:["entered"],hidden:["hidden"],wrapper:["wrapper",`${e}`],wrapperInner:["wrapperInner",`${e}`]};return Zt(r,h$e,n)},p$e=ye("div",{name:"MuiCollapse",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.orientation],n.state==="entered"&&e.entered,n.state==="exited"&&!n.in&&n.collapsedSize==="0px"&&e.hidden]}})(jt(({theme:i})=>({height:0,overflow:"hidden",transition:i.transitions.create("height"),variants:[{props:{orientation:"horizontal"},style:{height:"auto",width:0,transition:i.transitions.create("width")}},{props:{state:"entered"},style:{height:"auto",overflow:"visible"}},{props:{state:"entered",orientation:"horizontal"},style:{width:"auto"}},{props:({ownerState:e})=>e.state==="exited"&&!e.in&&e.collapsedSize==="0px",style:{visibility:"hidden"}}]}))),g$e=ye("div",{name:"MuiCollapse",slot:"Wrapper"})({display:"flex",width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),m$e=ye("div",{name:"MuiCollapse",slot:"WrapperInner"})({width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),_E=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCollapse"}),{addEndListener:s,children:o,className:a,collapsedSize:l="0px",component:c,easing:u,in:d,onEnter:h,onEntered:f,onEntering:p,onExit:g,onExited:m,onExiting:_,orientation:b="vertical",style:y,timeout:x=Tke.standard,TransitionComponent:k=Nf,...D}=r,R={...r,orientation:b,collapsedSize:l},E=f$e(R),A=$i(),M=lS(),N=$.useRef(null),P=$.useRef(),O=typeof l=="number"?`${l}px`:l,B=b==="horizontal",j=B?"width":"height",z=$.useRef(null),H=mo(n,z),Y=me=>Ee=>{if(me){const je=z.current;Ee===void 0?me(je):me(je,Ee)}},X=()=>N.current?N.current[B?"clientWidth":"clientHeight"]:0,Q=Y((me,Ee)=>{N.current&&B&&(N.current.style.position="absolute"),me.style[j]=O,h&&h(me,Ee)}),ie=Y((me,Ee)=>{const je=X();N.current&&B&&(N.current.style.position="");const{duration:qe,easing:Ze}=s1({style:y,timeout:x,easing:u},{mode:"enter"});if(x==="auto"){const We=A.transitions.getAutoHeightDuration(je);me.style.transitionDuration=`${We}ms`,P.current=We}else me.style.transitionDuration=typeof qe=="string"?qe:`${qe}ms`;me.style[j]=`${je}px`,me.style.transitionTimingFunction=Ze,p&&p(me,Ee)}),K=Y((me,Ee)=>{me.style[j]="auto",f&&f(me,Ee)}),ee=Y(me=>{me.style[j]=`${X()}px`,g&&g(me)}),le=Y(m),ke=Y(me=>{const Ee=X(),{duration:je,easing:qe}=s1({style:y,timeout:x,easing:u},{mode:"exit"});if(x==="auto"){const Ze=A.transitions.getAutoHeightDuration(Ee);me.style.transitionDuration=`${Ze}ms`,P.current=Ze}else me.style.transitionDuration=typeof je=="string"?je:`${je}ms`;me.style[j]=O,me.style.transitionTimingFunction=qe,_&&_(me)}),xe=me=>{x==="auto"&&M.start(P.current||0,me),s&&s(z.current,me)};return C.jsx(k,{in:d,onEnter:Q,onEntered:K,onEntering:ie,onExit:ee,onExited:le,onExiting:ke,addEndListener:xe,nodeRef:z,timeout:x==="auto"?null:x,...D,children:(me,{ownerState:Ee,...je})=>C.jsx(p$e,{as:c,className:dt(E.root,a,{entered:E.entered,exited:!d&&O==="0px"&&E.hidden}[me]),style:{[B?"minWidth":"minHeight"]:O,...y},ref:H,ownerState:{...R,state:me},...je,children:C.jsx(g$e,{ownerState:{...R,state:me},className:E.wrapper,ref:N,children:C.jsx(m$e,{ownerState:{...R,state:me},className:E.wrapperInner,children:o})})})})});_E&&(_E.muiSupportAuto=!0);function _$e(i){return Xt("MuiPaper",i)}Yt("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"]);const v$e=i=>{const{square:e,elevation:n,variant:r,classes:s}=i,o={root:["root",r,!e&&"rounded",r==="elevation"&&`elevation${n}`]};return Zt(o,_$e,s)},b$e=ye("div",{name:"MuiPaper",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],!n.square&&e.rounded,n.variant==="elevation"&&e[`elevation${n.elevation}`]]}})(jt(({theme:i})=>({backgroundColor:(i.vars||i).palette.background.paper,color:(i.vars||i).palette.text.primary,transition:i.transitions.create("box-shadow"),variants:[{props:({ownerState:e})=>!e.square,style:{borderRadius:i.shape.borderRadius}},{props:{variant:"outlined"},style:{border:`1px solid ${(i.vars||i).palette.divider}`}},{props:{variant:"elevation"},style:{boxShadow:"var(--Paper-shadow)",backgroundImage:"var(--Paper-overlay)"}}]}))),du=$.forwardRef(function(e,n){var p;const r=Qt({props:e,name:"MuiPaper"}),s=$i(),{className:o,component:a="div",elevation:l=1,square:c=!1,variant:u="elevation",...d}=r,h={...r,component:a,elevation:l,square:c,variant:u},f=v$e(h);return C.jsx(b$e,{as:a,ownerState:h,className:dt(f.root,o),ref:n,...d,style:{...u==="elevation"&&{"--Paper-shadow":(s.vars||s).shadows[l],...s.vars&&{"--Paper-overlay":(p=s.vars.overlays)==null?void 0:p[l]},...!s.vars&&s.palette.mode==="dark"&&{"--Paper-overlay":`linear-gradient(${Pt("#fff",yZ(l))}, ${Pt("#fff",yZ(l))})`}},...d.style}})}),Fke=$.createContext({});function y$e(i){return typeof i=="string"}function Bke(i,e,n){return i===void 0||y$e(i)?e:{...e,ownerState:{...e.ownerState,...n}}}function jke(i,e,n){return typeof i=="function"?i(e,n):i}function VN(i,e=[]){if(i===void 0)return{};const n={};return Object.keys(i).filter(r=>r.match(/^on[A-Z]/)&&typeof i[r]=="function"&&!e.includes(r)).forEach(r=>{n[r]=i[r]}),n}function Tde(i){if(i===void 0)return{};const e={};return Object.keys(i).filter(n=>!(n.match(/^on[A-Z]/)&&typeof i[n]=="function")).forEach(n=>{e[n]=i[n]}),e}function Wke(i){const{getSlotProps:e,additionalProps:n,externalSlotProps:r,externalForwardedProps:s,className:o}=i;if(!e){const p=dt(n==null?void 0:n.className,o,s==null?void 0:s.className,r==null?void 0:r.className),g={...n==null?void 0:n.style,...s==null?void 0:s.style,...r==null?void 0:r.style},m={...n,...s,...r};return p.length>0&&(m.className=p),Object.keys(g).length>0&&(m.style=g),{props:m,internalRef:void 0}}const a=VN({...s,...r}),l=Tde(r),c=Tde(s),u=e(a),d=dt(u==null?void 0:u.className,n==null?void 0:n.className,o,s==null?void 0:s.className,r==null?void 0:r.className),h={...u==null?void 0:u.style,...n==null?void 0:n.style,...s==null?void 0:s.style,...r==null?void 0:r.style},f={...u,...n,...c,...l};return d.length>0&&(f.className=d),Object.keys(h).length>0&&(f.style=h),{props:f,internalRef:u.ref}}function an(i,e){const{className:n,elementType:r,ownerState:s,externalForwardedProps:o,internalForwardedProps:a,shouldForwardComponentProp:l=!1,...c}=e,{component:u,slots:d={[i]:void 0},slotProps:h={[i]:void 0},...f}=o,p=d[i]||r,g=jke(h[i],s),{props:{component:m,..._},internalRef:b}=Wke({className:n,...c,externalForwardedProps:i==="root"?f:void 0,externalSlotProps:g}),y=mo(b,g==null?void 0:g.ref,e.ref),x=i==="root"?m||u:m,k=Bke(p,{...i==="root"&&!u&&!d[i]&&a,...i!=="root"&&!d[i]&&a,..._,...x&&!l&&{as:x},...x&&l&&{component:x},ref:y},s);return[p,k]}function w$e(i){return Xt("MuiAccordion",i)}const f3=Yt("MuiAccordion",["root","heading","rounded","expanded","disabled","gutters","region"]),C$e=i=>{const{classes:e,square:n,expanded:r,disabled:s,disableGutters:o}=i;return Zt({root:["root",!n&&"rounded",r&&"expanded",s&&"disabled",!o&&"gutters"],heading:["heading"],region:["region"]},w$e,e)},S$e=ye(du,{name:"MuiAccordion",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`& .${f3.region}`]:e.region},e.root,!n.square&&e.rounded,!n.disableGutters&&e.gutters]}})(jt(({theme:i})=>{const e={duration:i.transitions.duration.shortest};return{position:"relative",transition:i.transitions.create(["margin"],e),overflowAnchor:"none","&::before":{position:"absolute",left:0,top:-1,right:0,height:1,content:'""',opacity:1,backgroundColor:(i.vars||i).palette.divider,transition:i.transitions.create(["opacity","background-color"],e)},"&:first-of-type":{"&::before":{display:"none"}},[`&.${f3.expanded}`]:{"&::before":{opacity:0},"&:first-of-type":{marginTop:0},"&:last-of-type":{marginBottom:0},"& + &":{"&::before":{display:"none"}}},[`&.${f3.disabled}`]:{backgroundColor:(i.vars||i).palette.action.disabledBackground}}}),jt(({theme:i})=>({variants:[{props:e=>!e.square,style:{borderRadius:0,"&:first-of-type":{borderTopLeftRadius:(i.vars||i).shape.borderRadius,borderTopRightRadius:(i.vars||i).shape.borderRadius},"&:last-of-type":{borderBottomLeftRadius:(i.vars||i).shape.borderRadius,borderBottomRightRadius:(i.vars||i).shape.borderRadius,"@supports (-ms-ime-align: auto)":{borderBottomLeftRadius:0,borderBottomRightRadius:0}}}},{props:e=>!e.disableGutters,style:{[`&.${f3.expanded}`]:{margin:"16px 0"}}}]}))),x$e=ye("h3",{name:"MuiAccordion",slot:"Heading"})({all:"unset"}),k$e=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiAccordion"}),{children:s,className:o,defaultExpanded:a=!1,disabled:l=!1,disableGutters:c=!1,expanded:u,onChange:d,square:h=!1,slots:f={},slotProps:p={},TransitionComponent:g,TransitionProps:m,..._}=r,[b,y]=Im({controlled:u,default:a,name:"Accordion",state:"expanded"}),x=$.useCallback(X=>{y(!b),d&&d(X,!b)},[b,d,y]),[k,...D]=$.Children.toArray(s),R=$.useMemo(()=>({expanded:b,disabled:l,disableGutters:c,toggle:x}),[b,l,c,x]),E={...r,square:h,disabled:l,disableGutters:c,expanded:b},A=C$e(E),M={transition:g,...f},N={transition:m,...p},P={slots:M,slotProps:N},[O,B]=an("root",{elementType:S$e,externalForwardedProps:{...P,..._},className:dt(A.root,o),shouldForwardComponentProp:!0,ownerState:E,ref:n,additionalProps:{square:h}}),[j,z]=an("heading",{elementType:x$e,externalForwardedProps:P,className:A.heading,ownerState:E}),[H,Y]=an("transition",{elementType:_E,externalForwardedProps:P,ownerState:E});return C.jsxs(O,{...B,children:[C.jsx(j,{...z,children:C.jsx(Fke.Provider,{value:R,children:k})}),C.jsx(H,{in:b,timeout:"auto",...Y,children:C.jsx("div",{"aria-labelledby":k.props.id,id:k.props["aria-controls"],role:"region",className:A.region,children:D})})]})});function L$e(i){return Xt("MuiAccordionDetails",i)}Yt("MuiAccordionDetails",["root"]);const D$e=i=>{const{classes:e}=i;return Zt({root:["root"]},L$e,e)},E$e=ye("div",{name:"MuiAccordionDetails",slot:"Root"})(jt(({theme:i})=>({padding:i.spacing(1,2,2)}))),I$e=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiAccordionDetails"}),{className:s,...o}=r,a=r,l=D$e(a);return C.jsx(E$e,{className:dt(l.root,s),ref:n,ownerState:a,...o})});function o1(i){try{return i.matches(":focus-visible")}catch{}return!1}class h9{constructor(){xt(this,"mountEffect",()=>{this.shouldMount&&!this.didMount&&this.ref.current!==null&&(this.didMount=!0,this.mounted.resolve())});this.ref={current:null},this.mounted=null,this.didMount=!1,this.shouldMount=!1,this.setShouldMount=null}static create(){return new h9}static use(){const e=Oke(h9.create).current,[n,r]=$.useState(!1);return e.shouldMount=n,e.setShouldMount=r,$.useEffect(e.mountEffect,[n]),e}mount(){return this.mounted||(this.mounted=R$e(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}start(...e){this.mount().then(()=>{var n;return(n=this.ref.current)==null?void 0:n.start(...e)})}stop(...e){this.mount().then(()=>{var n;return(n=this.ref.current)==null?void 0:n.stop(...e)})}pulsate(...e){this.mount().then(()=>{var n;return(n=this.ref.current)==null?void 0:n.pulsate(...e)})}}function T$e(){return h9.use()}function R$e(){let i,e;const n=new Promise((r,s)=>{i=r,e=s});return n.resolve=i,n.reject=e,n}function A$e(i){const{className:e,classes:n,pulsate:r=!1,rippleX:s,rippleY:o,rippleSize:a,in:l,onExited:c,timeout:u}=i,[d,h]=$.useState(!1),f=dt(e,n.ripple,n.rippleVisible,r&&n.ripplePulsate),p={width:a,height:a,top:-(a/2)+o,left:-(a/2)+s},g=dt(n.child,d&&n.childLeaving,r&&n.childPulsate);return!l&&!d&&h(!0),$.useEffect(()=>{if(!l&&c!=null){const m=setTimeout(c,u);return()=>{clearTimeout(m)}}},[c,l,u]),C.jsx("span",{className:f,style:p,children:C.jsx("span",{className:g})})}const nf=Yt("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),xZ=550,N$e=80,M$e=tg` 0% { transform: scale(0); opacity: 0.1; } 100% { transform: scale(1); opacity: 0.3; } `,P$e=tg` 0% { opacity: 1; } 100% { opacity: 0; } `,O$e=tg` 0% { transform: scale(1); } 50% { transform: scale(0.92); } 100% { transform: scale(1); } `,F$e=ye("span",{name:"MuiTouchRipple",slot:"Root"})({overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"}),B$e=ye(A$e,{name:"MuiTouchRipple",slot:"Ripple"})` opacity: 0; position: absolute; &.${nf.rippleVisible} { opacity: 0.3; transform: scale(1); animation-name: ${M$e}; animation-duration: ${xZ}ms; animation-timing-function: ${({theme:i})=>i.transitions.easing.easeInOut}; } &.${nf.ripplePulsate} { animation-duration: ${({theme:i})=>i.transitions.duration.shorter}ms; } & .${nf.child} { opacity: 1; display: block; width: 100%; height: 100%; border-radius: 50%; background-color: currentColor; } & .${nf.childLeaving} { opacity: 0; animation-name: ${P$e}; animation-duration: ${xZ}ms; animation-timing-function: ${({theme:i})=>i.transitions.easing.easeInOut}; } & .${nf.childPulsate} { position: absolute; /* @noflip */ left: 0px; top: 0; animation-name: ${O$e}; animation-duration: 2500ms; animation-timing-function: ${({theme:i})=>i.transitions.easing.easeInOut}; animation-iteration-count: infinite; animation-delay: 200ms; } `,j$e=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTouchRipple"}),{center:s=!1,classes:o={},className:a,...l}=r,[c,u]=$.useState([]),d=$.useRef(0),h=$.useRef(null);$.useEffect(()=>{h.current&&(h.current(),h.current=null)},[c]);const f=$.useRef(!1),p=lS(),g=$.useRef(null),m=$.useRef(null),_=$.useCallback(k=>{const{pulsate:D,rippleX:R,rippleY:E,rippleSize:A,cb:M}=k;u(N=>[...N,C.jsx(B$e,{classes:{ripple:dt(o.ripple,nf.ripple),rippleVisible:dt(o.rippleVisible,nf.rippleVisible),ripplePulsate:dt(o.ripplePulsate,nf.ripplePulsate),child:dt(o.child,nf.child),childLeaving:dt(o.childLeaving,nf.childLeaving),childPulsate:dt(o.childPulsate,nf.childPulsate)},timeout:xZ,pulsate:D,rippleX:R,rippleY:E,rippleSize:A},d.current)]),d.current+=1,h.current=M},[o]),b=$.useCallback((k={},D={},R=()=>{})=>{const{pulsate:E=!1,center:A=s||D.pulsate,fakeElement:M=!1}=D;if((k==null?void 0:k.type)==="mousedown"&&f.current){f.current=!1;return}(k==null?void 0:k.type)==="touchstart"&&(f.current=!0);const N=M?null:m.current,P=N?N.getBoundingClientRect():{width:0,height:0,left:0,top:0};let O,B,j;if(A||k===void 0||k.clientX===0&&k.clientY===0||!k.clientX&&!k.touches)O=Math.round(P.width/2),B=Math.round(P.height/2);else{const{clientX:z,clientY:H}=k.touches&&k.touches.length>0?k.touches[0]:k;O=Math.round(z-P.left),B=Math.round(H-P.top)}if(A)j=Math.sqrt((2*P.width**2+P.height**2)/3),j%2===0&&(j+=1);else{const z=Math.max(Math.abs((N?N.clientWidth:0)-O),O)*2+2,H=Math.max(Math.abs((N?N.clientHeight:0)-B),B)*2+2;j=Math.sqrt(z**2+H**2)}k!=null&&k.touches?g.current===null&&(g.current=()=>{_({pulsate:E,rippleX:O,rippleY:B,rippleSize:j,cb:R})},p.start(N$e,()=>{g.current&&(g.current(),g.current=null)})):_({pulsate:E,rippleX:O,rippleY:B,rippleSize:j,cb:R})},[s,_,p]),y=$.useCallback(()=>{b({},{pulsate:!0})},[b]),x=$.useCallback((k,D)=>{if(p.clear(),(k==null?void 0:k.type)==="touchend"&&g.current){g.current(),g.current=null,p.start(0,()=>{x(k,D)});return}g.current=null,u(R=>R.length>0?R.slice(1):R),h.current=D},[p]);return $.useImperativeHandle(n,()=>({pulsate:y,start:b,stop:x}),[y,b,x]),C.jsx(F$e,{className:dt(nf.root,o.root,a),ref:m,...l,children:C.jsx(zre,{component:null,exit:!0,children:c})})});function W$e(i){return Xt("MuiButtonBase",i)}const $$e=Yt("MuiButtonBase",["root","disabled","focusVisible"]),z$e=i=>{const{disabled:e,focusVisible:n,focusVisibleClassName:r,classes:s}=i,a=Zt({root:["root",e&&"disabled",n&&"focusVisible"]},W$e,s);return n&&r&&(a.root+=` ${r}`),a},V$e=ye("button",{name:"MuiButtonBase",slot:"Root"})({display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",boxSizing:"border-box",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"},[`&.${$$e.disabled}`]:{pointerEvents:"none",cursor:"default"},"@media print":{colorAdjust:"exact"}}),ud=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiButtonBase"}),{action:s,centerRipple:o=!1,children:a,className:l,component:c="button",disabled:u=!1,disableRipple:d=!1,disableTouchRipple:h=!1,focusRipple:f=!1,focusVisibleClassName:p,LinkComponent:g="a",onBlur:m,onClick:_,onContextMenu:b,onDragLeave:y,onFocus:x,onFocusVisible:k,onKeyDown:D,onKeyUp:R,onMouseDown:E,onMouseLeave:A,onMouseUp:M,onTouchEnd:N,onTouchMove:P,onTouchStart:O,tabIndex:B=0,TouchRippleProps:j,touchRippleRef:z,type:H,...Y}=r,X=$.useRef(null),Q=T$e(),ie=mo(Q.ref,z),[K,ee]=$.useState(!1);u&&K&&ee(!1),$.useImperativeHandle(s,()=>({focusVisible:()=>{ee(!0),X.current.focus()}}),[]);const le=Q.shouldMount&&!d&&!u;$.useEffect(()=>{K&&f&&!d&&Q.pulsate()},[d,f,K,Q]);const ke=K_(Q,"start",E,h),xe=K_(Q,"stop",b,h),me=K_(Q,"stop",y,h),Ee=K_(Q,"stop",M,h),je=K_(Q,"stop",pe=>{K&&pe.preventDefault(),A&&A(pe)},h),qe=K_(Q,"start",O,h),Ze=K_(Q,"stop",N,h),We=K_(Q,"stop",P,h),ut=K_(Q,"stop",pe=>{o1(pe.target)||ee(!1),m&&m(pe)},!1),st=Ha(pe=>{X.current||(X.current=pe.currentTarget),o1(pe.target)&&(ee(!0),k&&k(pe)),x&&x(pe)}),mt=()=>{const pe=X.current;return c&&c!=="button"&&!(pe.tagName==="A"&&pe.href)},Rt=Ha(pe=>{f&&!pe.repeat&&K&&pe.key===" "&&Q.stop(pe,()=>{Q.start(pe)}),pe.target===pe.currentTarget&&mt()&&pe.key===" "&&pe.preventDefault(),D&&D(pe),pe.target===pe.currentTarget&&mt()&&pe.key==="Enter"&&!u&&(pe.preventDefault(),_&&_(pe))}),Vt=Ha(pe=>{f&&pe.key===" "&&K&&!pe.defaultPrevented&&Q.stop(pe,()=>{Q.pulsate(pe)}),R&&R(pe),_&&pe.target===pe.currentTarget&&mt()&&pe.key===" "&&!pe.defaultPrevented&&_(pe)});let Ot=c;Ot==="button"&&(Y.href||Y.to)&&(Ot=g);const vt={};Ot==="button"?(vt.type=H===void 0?"button":H,vt.disabled=u):(!Y.href&&!Y.to&&(vt.role="button"),u&&(vt["aria-disabled"]=u));const wn=mo(n,X),Ce={...r,centerRipple:o,component:c,disabled:u,disableRipple:d,disableTouchRipple:h,focusRipple:f,tabIndex:B,focusVisible:K},ge=z$e(Ce);return C.jsxs(V$e,{as:Ot,className:dt(ge.root,l),ownerState:Ce,onBlur:ut,onClick:_,onContextMenu:xe,onFocus:st,onKeyDown:Rt,onKeyUp:Vt,onMouseDown:ke,onMouseLeave:je,onMouseUp:Ee,onDragLeave:me,onTouchEnd:Ze,onTouchMove:We,onTouchStart:qe,ref:wn,tabIndex:u?-1:B,type:H,...vt,...Y,children:[a,le?C.jsx(j$e,{ref:ie,center:o,...j}):null]})});function K_(i,e,n,r=!1){return Ha(s=>(n&&n(s),r||i[e](s),!0))}function H$e(i){return Xt("MuiAccordionSummary",i)}const ZD=Yt("MuiAccordionSummary",["root","expanded","focusVisible","disabled","gutters","contentGutters","content","expandIconWrapper"]),U$e=i=>{const{classes:e,expanded:n,disabled:r,disableGutters:s}=i;return Zt({root:["root",n&&"expanded",r&&"disabled",!s&&"gutters"],focusVisible:["focusVisible"],content:["content",n&&"expanded",!s&&"contentGutters"],expandIconWrapper:["expandIconWrapper",n&&"expanded"]},H$e,e)},q$e=ye(ud,{name:"MuiAccordionSummary",slot:"Root"})(jt(({theme:i})=>{const e={duration:i.transitions.duration.shortest};return{display:"flex",width:"100%",minHeight:48,padding:i.spacing(0,2),transition:i.transitions.create(["min-height","background-color"],e),[`&.${ZD.focusVisible}`]:{backgroundColor:(i.vars||i).palette.action.focus},[`&.${ZD.disabled}`]:{opacity:(i.vars||i).palette.action.disabledOpacity},[`&:hover:not(.${ZD.disabled})`]:{cursor:"pointer"},variants:[{props:n=>!n.disableGutters,style:{[`&.${ZD.expanded}`]:{minHeight:64}}}]}})),K$e=ye("span",{name:"MuiAccordionSummary",slot:"Content"})(jt(({theme:i})=>({display:"flex",textAlign:"start",flexGrow:1,margin:"12px 0",variants:[{props:e=>!e.disableGutters,style:{transition:i.transitions.create(["margin"],{duration:i.transitions.duration.shortest}),[`&.${ZD.expanded}`]:{margin:"20px 0"}}}]}))),G$e=ye("span",{name:"MuiAccordionSummary",slot:"ExpandIconWrapper"})(jt(({theme:i})=>({display:"flex",color:(i.vars||i).palette.action.active,transform:"rotate(0deg)",transition:i.transitions.create("transform",{duration:i.transitions.duration.shortest}),[`&.${ZD.expanded}`]:{transform:"rotate(180deg)"}}))),X$e=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiAccordionSummary"}),{children:s,className:o,expandIcon:a,focusVisibleClassName:l,onClick:c,slots:u,slotProps:d,...h}=r,{disabled:f=!1,disableGutters:p,expanded:g,toggle:m}=$.useContext(Fke),_=N=>{m&&m(N),c&&c(N)},b={...r,expanded:g,disabled:f,disableGutters:p},y=U$e(b),x={slots:u,slotProps:d},[k,D]=an("root",{ref:n,shouldForwardComponentProp:!0,className:dt(y.root,o),elementType:q$e,externalForwardedProps:{...x,...h},ownerState:b,additionalProps:{focusRipple:!1,disableRipple:!0,disabled:f,"aria-expanded":g,focusVisibleClassName:dt(y.focusVisible,l)},getSlotProps:N=>({...N,onClick:P=>{var O;(O=N.onClick)==null||O.call(N,P),_(P)}})}),[R,E]=an("content",{className:y.content,elementType:K$e,externalForwardedProps:x,ownerState:b}),[A,M]=an("expandIconWrapper",{className:y.expandIconWrapper,elementType:G$e,externalForwardedProps:x,ownerState:b});return C.jsxs(k,{...D,children:[C.jsx(R,{...E,children:s}),a&&C.jsx(A,{...M,children:a})]})});function Y$e(i){return typeof i.main=="string"}function Z$e(i,e=[]){if(!Y$e(i))return!1;for(const n of e)if(!i.hasOwnProperty(n)||typeof i[n]!="string")return!1;return!0}function br(i=[]){return([,e])=>e&&Z$e(e,i)}function Q$e(i){return Xt("MuiAlert",i)}const Rde=Yt("MuiAlert",["root","action","icon","message","filled","colorSuccess","colorInfo","colorWarning","colorError","filledSuccess","filledInfo","filledWarning","filledError","outlined","outlinedSuccess","outlinedInfo","outlinedWarning","outlinedError","standard","standardSuccess","standardInfo","standardWarning","standardError"]);function J$e(i){return Xt("MuiCircularProgress",i)}Yt("MuiCircularProgress",["root","determinate","indeterminate","colorPrimary","colorSecondary","svg","circle","circleDeterminate","circleIndeterminate","circleDisableShrink"]);const Nb=44,kZ=tg` 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } `,LZ=tg` 0% { stroke-dasharray: 1px, 200px; stroke-dashoffset: 0; } 50% { stroke-dasharray: 100px, 200px; stroke-dashoffset: -15px; } 100% { stroke-dasharray: 1px, 200px; stroke-dashoffset: -126px; } `,eze=typeof kZ!="string"?Mv` animation: ${kZ} 1.4s linear infinite; `:null,tze=typeof LZ!="string"?Mv` animation: ${LZ} 1.4s ease-in-out infinite; `:null,nze=i=>{const{classes:e,variant:n,color:r,disableShrink:s}=i,o={root:["root",n,`color${Ue(r)}`],svg:["svg"],circle:["circle",`circle${Ue(n)}`,s&&"circleDisableShrink"]};return Zt(o,J$e,e)},ize=ye("span",{name:"MuiCircularProgress",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],e[`color${Ue(n.color)}`]]}})(jt(({theme:i})=>({display:"inline-block",variants:[{props:{variant:"determinate"},style:{transition:i.transitions.create("transform")}},{props:{variant:"indeterminate"},style:eze||{animation:`${kZ} 1.4s linear infinite`}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{color:(i.vars||i).palette[e].main}}))]}))),rze=ye("svg",{name:"MuiCircularProgress",slot:"Svg"})({display:"block"}),sze=ye("circle",{name:"MuiCircularProgress",slot:"Circle",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.circle,e[`circle${Ue(n.variant)}`],n.disableShrink&&e.circleDisableShrink]}})(jt(({theme:i})=>({stroke:"currentColor",variants:[{props:{variant:"determinate"},style:{transition:i.transitions.create("stroke-dashoffset")}},{props:{variant:"indeterminate"},style:{strokeDasharray:"80px, 200px",strokeDashoffset:0}},{props:({ownerState:e})=>e.variant==="indeterminate"&&!e.disableShrink,style:tze||{animation:`${LZ} 1.4s ease-in-out infinite`}}]}))),c5=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCircularProgress"}),{className:s,color:o="primary",disableShrink:a=!1,size:l=40,style:c,thickness:u=3.6,value:d=0,variant:h="indeterminate",...f}=r,p={...r,color:o,disableShrink:a,size:l,thickness:u,value:d,variant:h},g=nze(p),m={},_={},b={};if(h==="determinate"){const y=2*Math.PI*((Nb-u)/2);m.strokeDasharray=y.toFixed(3),b["aria-valuenow"]=Math.round(d),m.strokeDashoffset=`${((100-d)/100*y).toFixed(3)}px`,_.transform="rotate(-90deg)"}return C.jsx(ize,{className:dt(g.root,s),style:{width:l,height:l,..._,...c},ownerState:p,ref:n,role:"progressbar",...b,...f,children:C.jsx(rze,{className:g.svg,ownerState:p,viewBox:`${Nb/2} ${Nb/2} ${Nb} ${Nb}`,children:C.jsx(sze,{className:g.circle,style:m,ownerState:p,cx:Nb,cy:Nb,r:(Nb-u)/2,fill:"none",strokeWidth:u})})})});function oze(i){return Xt("MuiIconButton",i)}const Ade=Yt("MuiIconButton",["root","disabled","colorInherit","colorPrimary","colorSecondary","colorError","colorInfo","colorSuccess","colorWarning","edgeStart","edgeEnd","sizeSmall","sizeMedium","sizeLarge","loading","loadingIndicator","loadingWrapper"]),aze=i=>{const{classes:e,disabled:n,color:r,edge:s,size:o,loading:a}=i,l={root:["root",a&&"loading",n&&"disabled",r!=="default"&&`color${Ue(r)}`,s&&`edge${Ue(s)}`,`size${Ue(o)}`],loadingIndicator:["loadingIndicator"],loadingWrapper:["loadingWrapper"]};return Zt(l,oze,e)},lze=ye(ud,{name:"MuiIconButton",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.loading&&e.loading,n.color!=="default"&&e[`color${Ue(n.color)}`],n.edge&&e[`edge${Ue(n.edge)}`],e[`size${Ue(n.size)}`]]}})(jt(({theme:i})=>({textAlign:"center",flex:"0 0 auto",fontSize:i.typography.pxToRem(24),padding:8,borderRadius:"50%",color:(i.vars||i).palette.action.active,transition:i.transitions.create("background-color",{duration:i.transitions.duration.shortest}),variants:[{props:e=>!e.disableRipple,style:{"--IconButton-hoverBg":i.vars?`rgba(${i.vars.palette.action.activeChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette.action.active,i.palette.action.hoverOpacity),"&:hover":{backgroundColor:"var(--IconButton-hoverBg)","@media (hover: none)":{backgroundColor:"transparent"}}}},{props:{edge:"start"},style:{marginLeft:-12}},{props:{edge:"start",size:"small"},style:{marginLeft:-3}},{props:{edge:"end"},style:{marginRight:-12}},{props:{edge:"end",size:"small"},style:{marginRight:-3}}]})),jt(({theme:i})=>({variants:[{props:{color:"inherit"},style:{color:"inherit"}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{color:(i.vars||i).palette[e].main}})),...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{"--IconButton-hoverBg":i.vars?`rgba(${(i.vars||i).palette[e].mainChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt((i.vars||i).palette[e].main,i.palette.action.hoverOpacity)}})),{props:{size:"small"},style:{padding:5,fontSize:i.typography.pxToRem(18)}},{props:{size:"large"},style:{padding:12,fontSize:i.typography.pxToRem(28)}}],[`&.${Ade.disabled}`]:{backgroundColor:"transparent",color:(i.vars||i).palette.action.disabled},[`&.${Ade.loading}`]:{color:"transparent"}}))),cze=ye("span",{name:"MuiIconButton",slot:"LoadingIndicator"})(({theme:i})=>({display:"none",position:"absolute",visibility:"visible",top:"50%",left:"50%",transform:"translate(-50%, -50%)",color:(i.vars||i).palette.action.disabled,variants:[{props:{loading:!0},style:{display:"flex"}}]})),Ga=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiIconButton"}),{edge:s=!1,children:o,className:a,color:l="default",disabled:c=!1,disableFocusRipple:u=!1,size:d="medium",id:h,loading:f=null,loadingIndicator:p,...g}=r,m=W1(h),_=p??C.jsx(c5,{"aria-labelledby":m,color:"inherit",size:16}),b={...r,edge:s,color:l,disabled:c,disableFocusRipple:u,loading:f,loadingIndicator:_,size:d},y=aze(b);return C.jsxs(lze,{id:f?m:h,className:dt(y.root,a),centerRipple:!0,focusRipple:!u,disabled:c||f,ref:n,...g,ownerState:b,children:[typeof f=="boolean"&&C.jsx("span",{className:y.loadingWrapper,style:{display:"contents"},children:C.jsx(cze,{className:y.loadingIndicator,ownerState:b,children:f&&_})}),o]})}),uze=Hr(C.jsx("path",{d:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"})),dze=Hr(C.jsx("path",{d:"M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z"})),hze=Hr(C.jsx("path",{d:"M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"})),fze=Hr(C.jsx("path",{d:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z"})),$ke=Hr(C.jsx("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})),pze=i=>{const{variant:e,color:n,severity:r,classes:s}=i,o={root:["root",`color${Ue(n||r)}`,`${e}${Ue(n||r)}`,`${e}`],icon:["icon"],message:["message"],action:["action"]};return Zt(o,Q$e,s)},gze=ye(du,{name:"MuiAlert",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],e[`${n.variant}${Ue(n.color||n.severity)}`]]}})(jt(({theme:i})=>{const e=i.palette.mode==="light"?$m:qp,n=i.palette.mode==="light"?qp:$m;return{...i.typography.body2,backgroundColor:"transparent",display:"flex",padding:"6px 16px",variants:[...Object.entries(i.palette).filter(br(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"standard"},style:{color:i.vars?i.vars.palette.Alert[`${r}Color`]:e(i.palette[r].light,.6),backgroundColor:i.vars?i.vars.palette.Alert[`${r}StandardBg`]:n(i.palette[r].light,.9),[`& .${Rde.icon}`]:i.vars?{color:i.vars.palette.Alert[`${r}IconColor`]}:{color:i.palette[r].main}}})),...Object.entries(i.palette).filter(br(["light"])).map(([r])=>({props:{colorSeverity:r,variant:"outlined"},style:{color:i.vars?i.vars.palette.Alert[`${r}Color`]:e(i.palette[r].light,.6),border:`1px solid ${(i.vars||i).palette[r].light}`,[`& .${Rde.icon}`]:i.vars?{color:i.vars.palette.Alert[`${r}IconColor`]}:{color:i.palette[r].main}}})),...Object.entries(i.palette).filter(br(["dark"])).map(([r])=>({props:{colorSeverity:r,variant:"filled"},style:{fontWeight:i.typography.fontWeightMedium,...i.vars?{color:i.vars.palette.Alert[`${r}FilledColor`],backgroundColor:i.vars.palette.Alert[`${r}FilledBg`]}:{backgroundColor:i.palette.mode==="dark"?i.palette[r].dark:i.palette[r].main,color:i.palette.getContrastText(i.palette[r].main)}}}))]}})),mze=ye("div",{name:"MuiAlert",slot:"Icon"})({marginRight:12,padding:"7px 0",display:"flex",fontSize:22,opacity:.9}),_ze=ye("div",{name:"MuiAlert",slot:"Message"})({padding:"8px 0",minWidth:0,overflow:"auto"}),vze=ye("div",{name:"MuiAlert",slot:"Action"})({display:"flex",alignItems:"flex-start",padding:"4px 0 0 16px",marginLeft:"auto",marginRight:-8}),Nde={success:C.jsx(uze,{fontSize:"inherit"}),warning:C.jsx(dze,{fontSize:"inherit"}),error:C.jsx(hze,{fontSize:"inherit"}),info:C.jsx(fze,{fontSize:"inherit"})},l_=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiAlert"}),{action:s,children:o,className:a,closeText:l="Close",color:c,components:u={},componentsProps:d={},icon:h,iconMapping:f=Nde,onClose:p,role:g="alert",severity:m="success",slotProps:_={},slots:b={},variant:y="standard",...x}=r,k={...r,color:c,severity:m,variant:y,colorSeverity:c||m},D=pze(k),R={slots:{closeButton:u.CloseButton,closeIcon:u.CloseIcon,...b},slotProps:{...d,..._}},[E,A]=an("root",{ref:n,shouldForwardComponentProp:!0,className:dt(D.root,a),elementType:gze,externalForwardedProps:{...R,...x},ownerState:k,additionalProps:{role:g,elevation:0}}),[M,N]=an("icon",{className:D.icon,elementType:mze,externalForwardedProps:R,ownerState:k}),[P,O]=an("message",{className:D.message,elementType:_ze,externalForwardedProps:R,ownerState:k}),[B,j]=an("action",{className:D.action,elementType:vze,externalForwardedProps:R,ownerState:k}),[z,H]=an("closeButton",{elementType:Ga,externalForwardedProps:R,ownerState:k}),[Y,X]=an("closeIcon",{elementType:$ke,externalForwardedProps:R,ownerState:k});return C.jsxs(E,{...A,children:[h!==!1?C.jsx(M,{...N,children:h||f[m]||Nde[m]}):null,C.jsx(P,{...O,children:o}),s!=null?C.jsx(B,{...j,children:s}):null,s==null&&p?C.jsx(B,{...j,children:C.jsx(z,{size:"small","aria-label":l,title:l,color:"inherit",onClick:p,...H,children:C.jsx(Y,{fontSize:"small",...X})})}):null]})});function bze(i){return Xt("MuiTypography",i)}const f9=Yt("MuiTypography",["root","h1","h2","h3","h4","h5","h6","subtitle1","subtitle2","body1","body2","inherit","button","caption","overline","alignLeft","alignRight","alignCenter","alignJustify","noWrap","gutterBottom","paragraph"]),yze={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},wze=XWe(),Cze=i=>{const{align:e,gutterBottom:n,noWrap:r,paragraph:s,variant:o,classes:a}=i,l={root:["root",o,i.align!=="inherit"&&`align${Ue(e)}`,n&&"gutterBottom",r&&"noWrap",s&&"paragraph"]};return Zt(l,bze,a)},Sze=ye("span",{name:"MuiTypography",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.variant&&e[n.variant],n.align!=="inherit"&&e[`align${Ue(n.align)}`],n.noWrap&&e.noWrap,n.gutterBottom&&e.gutterBottom,n.paragraph&&e.paragraph]}})(jt(({theme:i})=>{var e;return{margin:0,variants:[{props:{variant:"inherit"},style:{font:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}},...Object.entries(i.typography).filter(([n,r])=>n!=="inherit"&&r&&typeof r=="object").map(([n,r])=>({props:{variant:n},style:r})),...Object.entries(i.palette).filter(br()).map(([n])=>({props:{color:n},style:{color:(i.vars||i).palette[n].main}})),...Object.entries(((e=i.palette)==null?void 0:e.text)||{}).filter(([,n])=>typeof n=="string").map(([n])=>({props:{color:`text${Ue(n)}`},style:{color:(i.vars||i).palette.text[n]}})),{props:({ownerState:n})=>n.align!=="inherit",style:{textAlign:"var(--Typography-textAlign)"}},{props:({ownerState:n})=>n.noWrap,style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},{props:({ownerState:n})=>n.gutterBottom,style:{marginBottom:"0.35em"}},{props:({ownerState:n})=>n.paragraph,style:{marginBottom:16}}]}})),Mde={h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",h6:"h6",subtitle1:"h6",subtitle2:"h6",body1:"p",body2:"p",inherit:"p"},Je=$.forwardRef(function(e,n){const{color:r,...s}=Qt({props:e,name:"MuiTypography"}),o=!yze[r],a=wze({...s,...o&&{color:r}}),{align:l="inherit",className:c,component:u,gutterBottom:d=!1,noWrap:h=!1,paragraph:f=!1,variant:p="body1",variantMapping:g=Mde,...m}=a,_={...a,align:l,color:r,className:c,component:u,gutterBottom:d,noWrap:h,paragraph:f,variant:p,variantMapping:g},b=u||(f?"p":g[p]||Mde[p])||"span",y=Cze(_);return C.jsx(Sze,{as:b,ref:n,className:dt(y.root,c),...m,ownerState:_,style:{...l!=="inherit"&&{"--Typography-textAlign":l},...m.style}})});function xze(i){return Xt("MuiAppBar",i)}Yt("MuiAppBar",["root","positionFixed","positionAbsolute","positionSticky","positionStatic","positionRelative","colorDefault","colorPrimary","colorSecondary","colorInherit","colorTransparent","colorError","colorInfo","colorSuccess","colorWarning"]);const kze=i=>{const{color:e,position:n,classes:r}=i,s={root:["root",`color${Ue(e)}`,`position${Ue(n)}`]};return Zt(s,xze,r)},Pde=(i,e)=>i?`${i==null?void 0:i.replace(")","")}, ${e})`:e,Lze=ye(du,{name:"MuiAppBar",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[`position${Ue(n.position)}`],e[`color${Ue(n.color)}`]]}})(jt(({theme:i})=>({display:"flex",flexDirection:"column",width:"100%",boxSizing:"border-box",flexShrink:0,variants:[{props:{position:"fixed"},style:{position:"fixed",zIndex:(i.vars||i).zIndex.appBar,top:0,left:"auto",right:0,"@media print":{position:"absolute"}}},{props:{position:"absolute"},style:{position:"absolute",zIndex:(i.vars||i).zIndex.appBar,top:0,left:"auto",right:0}},{props:{position:"sticky"},style:{position:"sticky",zIndex:(i.vars||i).zIndex.appBar,top:0,left:"auto",right:0}},{props:{position:"static"},style:{position:"static"}},{props:{position:"relative"},style:{position:"relative"}},{props:{color:"inherit"},style:{"--AppBar-color":"inherit"}},{props:{color:"default"},style:{"--AppBar-background":i.vars?i.vars.palette.AppBar.defaultBg:i.palette.grey[100],"--AppBar-color":i.vars?i.vars.palette.text.primary:i.palette.getContrastText(i.palette.grey[100]),...i.applyStyles("dark",{"--AppBar-background":i.vars?i.vars.palette.AppBar.defaultBg:i.palette.grey[900],"--AppBar-color":i.vars?i.vars.palette.text.primary:i.palette.getContrastText(i.palette.grey[900])})}},...Object.entries(i.palette).filter(br(["contrastText"])).map(([e])=>({props:{color:e},style:{"--AppBar-background":(i.vars??i).palette[e].main,"--AppBar-color":(i.vars??i).palette[e].contrastText}})),{props:e=>e.enableColorOnDark===!0&&!["inherit","transparent"].includes(e.color),style:{backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)"}},{props:e=>e.enableColorOnDark===!1&&!["inherit","transparent"].includes(e.color),style:{backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)",...i.applyStyles("dark",{backgroundColor:i.vars?Pde(i.vars.palette.AppBar.darkBg,"var(--AppBar-background)"):null,color:i.vars?Pde(i.vars.palette.AppBar.darkColor,"var(--AppBar-color)"):null})}},{props:{color:"transparent"},style:{"--AppBar-background":"transparent","--AppBar-color":"inherit",backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)",...i.applyStyles("dark",{backgroundImage:"none"})}}]}))),zke=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiAppBar"}),{className:s,color:o="primary",enableColorOnDark:a=!1,position:l="fixed",...c}=r,u={...r,color:o,position:l,enableColorOnDark:a},d=kze(u);return C.jsx(Lze,{square:!0,component:"header",ownerState:u,elevation:4,className:dt(d.root,s,l==="fixed"&&"mui-fixed"),ref:n,...c})}),Dze=i=>{const e=$.useRef({});return $.useEffect(()=>{e.current=i}),e.current};function Ode(i){return i.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function Eze(i={}){const{ignoreAccents:e=!0,ignoreCase:n=!0,limit:r,matchFrom:s="any",stringify:o,trim:a=!1}=i;return(l,{inputValue:c,getOptionLabel:u})=>{let d=a?c.trim():c;n&&(d=d.toLowerCase()),e&&(d=Ode(d));const h=d?l.filter(f=>{let p=(o||u)(f);return n&&(p=p.toLowerCase()),e&&(p=Ode(p)),s==="start"?p.startsWith(d):p.includes(d)}):l;return typeof r=="number"?h.slice(0,r):h}}const Ize=Eze(),Fde=5,Tze=i=>{var e;return i.current!==null&&((e=i.current.parentElement)==null?void 0:e.contains(document.activeElement))},Rze=[];function Bde(i,e,n,r){if(e||i==null||r)return"";const s=n(i);return typeof s=="string"?s:""}function Aze(i){const{unstable_isActiveElementInListbox:e=Tze,unstable_classNamePrefix:n="Mui",autoComplete:r=!1,autoHighlight:s=!1,autoSelect:o=!1,blurOnSelect:a=!1,clearOnBlur:l=!i.freeSolo,clearOnEscape:c=!1,componentName:u="useAutocomplete",defaultValue:d=i.multiple?Rze:null,disableClearable:h=!1,disableCloseOnSelect:f=!1,disabled:p,disabledItemsFocusable:g=!1,disableListWrap:m=!1,filterOptions:_=Ize,filterSelectedOptions:b=!1,freeSolo:y=!1,getOptionDisabled:x,getOptionKey:k,getOptionLabel:D=De=>De.label??De,groupBy:R,handleHomeEndKeys:E=!i.freeSolo,id:A,includeInputInList:M=!1,inputValue:N,isOptionEqualToValue:P=(De,Ne)=>De===Ne,multiple:O=!1,onChange:B,onClose:j,onHighlightChange:z,onInputChange:H,onOpen:Y,open:X,openOnFocus:Q=!1,options:ie,readOnly:K=!1,renderValue:ee,selectOnFocus:le=!i.freeSolo,value:ke}=i,xe=W1(A);let me=D;me=De=>{const Ne=D(De);return typeof Ne!="string"?String(Ne):Ne};const Ee=$.useRef(!1),je=$.useRef(!0),qe=$.useRef(null),Ze=$.useRef(null),[We,ut]=$.useState(null),[st,mt]=$.useState(-1),Rt=s?0:-1,Vt=$.useRef(Rt),Ot=$.useRef(Bde(d??ke,O,me)).current,[vt,wn]=Im({controlled:ke,default:d,name:u}),[Ce,ge]=Im({controlled:N,default:Ot,name:u,state:"inputValue"}),[pe,ne]=$.useState(!1),ae=$.useCallback((De,Ne,At)=>{if(!(O?vt.length!(b&&(O?vt:[vt]).some(Ne=>Ne!==null&&P(De,Ne)))),{inputValue:nt&&Se?"":Ce,getOptionLabel:me}):[],gt=Dze({filteredOptions:Ve,value:vt,inputValue:Ce});$.useEffect(()=>{const De=vt!==gt.value;pe&&!De||y&&!De||ae(null,vt,"reset")},[vt,ae,pe,gt.value,y]);const $t=ue&&Ve.length>0&&!K,Mt=Ha(De=>{if(De===-1)qe.current.focus();else{const Ne=ee?"data-item-index":"data-tag-index";We.querySelector(`[${Ne}="${De}"]`).focus()}});$.useEffect(()=>{O&&st>vt.length-1&&(mt(-1),Mt(-1))},[vt,O,st,Mt]);function Bt(De,Ne){if(!Ze.current||De<0||De>=Ve.length)return-1;let At=De;for(;;){const En=Ze.current.querySelector(`[data-option-index="${At}"]`),bn=g?!1:!En||En.disabled||En.getAttribute("aria-disabled")==="true";if(En&&En.hasAttribute("tabindex")&&!bn)return At;if(Ne==="next"?At=(At+1)%Ve.length:At=(At-1+Ve.length)%Ve.length,At===De)return-1}}const jn=Ha(({event:De,index:Ne,reason:At})=>{if(Vt.current=Ne,Ne===-1?qe.current.removeAttribute("aria-activedescendant"):qe.current.setAttribute("aria-activedescendant",`${xe}-option-${Ne}`),z&&["mouse","keyboard","touch"].includes(At)&&z(De,Ne===-1?null:Ve[Ne],At),!Ze.current)return;const En=Ze.current.querySelector(`[role="option"].${n}-focused`);En&&(En.classList.remove(`${n}-focused`),En.classList.remove(`${n}-focusVisible`));let bn=Ze.current;if(Ze.current.getAttribute("role")!=="listbox"&&(bn=Ze.current.parentElement.querySelector('[role="listbox"]')),!bn)return;if(Ne===-1){bn.scrollTop=0;return}const Yn=Ze.current.querySelector(`[data-option-index="${Ne}"]`);if(Yn&&(Yn.classList.add(`${n}-focused`),At==="keyboard"&&Yn.classList.add(`${n}-focusVisible`),bn.scrollHeight>bn.clientHeight&&At!=="mouse"&&At!=="touch")){const fr=Yn,Ei=bn.clientHeight+bn.scrollTop,dg=fr.offsetTop+fr.offsetHeight;dg>Ei?bn.scrollTop=dg-bn.clientHeight:fr.offsetTop-fr.offsetHeight*(R?1.3:0){if(!Oe)return;const Yn=Bt((()=>{const fr=Ve.length-1;if(Ne==="reset")return Rt;if(Ne==="start")return 0;if(Ne==="end")return fr;const Ei=Vt.current+Ne;return Ei<0?Ei===-1&&M?-1:m&&Vt.current!==-1||Math.abs(Ne)>1?0:fr:Ei>fr?Ei===fr+1&&M?-1:m||Math.abs(Ne)>1?fr:0:Ei})(),At);if(jn({index:Yn,reason:En,event:De}),r&&Ne!=="reset")if(Yn===-1)qe.current.value=Ce;else{const fr=me(Ve[Yn]);qe.current.value=fr,fr.toLowerCase().indexOf(Ce.toLowerCase())===0&&Ce.length>0&&qe.current.setSelectionRange(Ce.length,fr.length)}}),Fn=()=>{const De=(Ne,At)=>{const En=Ne?me(Ne):"",bn=At?me(At):"";return En===bn};if(Vt.current!==-1&>.filteredOptions&>.filteredOptions.length!==Ve.length&>.inputValue===Ce&&(O?vt.length===gt.value.length&>.value.every((Ne,At)=>me(vt[At])===me(Ne)):De(gt.value,vt))){const Ne=gt.filteredOptions[Vt.current];if(Ne)return Ve.findIndex(At=>me(At)===me(Ne))}return-1},tn=$.useCallback(()=>{if(!Oe)return;const De=Fn();if(De!==-1){Vt.current=De;return}const Ne=O?vt[0]:vt;if(Ve.length===0||Ne==null){Dt({diff:"reset"});return}if(Ze.current){if(Ne!=null){const At=Ve[Vt.current];if(O&&At&&vt.findIndex(bn=>P(At,bn))!==-1)return;const En=Ve.findIndex(bn=>P(bn,Ne));En===-1?Dt({diff:"reset"}):jn({index:En});return}if(Vt.current>=Ve.length-1){jn({index:Ve.length-1});return}jn({index:Vt.current})}},[Ve.length,O?!1:vt,b,Dt,jn,Oe,Ce,O]),pi=Ha(De=>{wZ(Ze,De),De&&tn()});$.useEffect(()=>{tn()},[tn]);const Pi=De=>{ue||(de(!0),Ie(!0),Y&&Y(De))},ti=(De,Ne)=>{ue&&(de(!1),j&&j(De,Ne))},mi=(De,Ne,At,En)=>{if(O){if(vt.length===Ne.length&&vt.every((bn,Yn)=>bn===Ne[Yn]))return}else if(vt===Ne)return;B&&B(De,Ne,At,En),wn(Ne)},ds=$.useRef(!1),Nr=(De,Ne,At="selectOption",En="options")=>{let bn=At,Yn=Ne;if(O){Yn=Array.isArray(vt)?vt.slice():[];const fr=Yn.findIndex(Ei=>P(Ne,Ei));fr===-1?Yn.push(Ne):En!=="freeSolo"&&(Yn.splice(fr,1),bn="removeOption")}ae(De,Yn,bn),mi(De,Yn,bn,{option:Ne}),!f&&(!De||!De.ctrlKey&&!De.metaKey)&&ti(De,bn),(a===!0||a==="touch"&&ds.current||a==="mouse"&&!ds.current)&&qe.current.blur()};function Br(De,Ne){if(De===-1)return-1;let At=De;for(;;){if(Ne==="next"&&At===vt.length||Ne==="previous"&&At===-1)return-1;const En=ee?"data-item-index":"data-tag-index",bn=We.querySelector(`[${En}="${At}"]`);if(!bn||!bn.hasAttribute("tabindex")||bn.disabled||bn.getAttribute("aria-disabled")==="true")At+=Ne==="next"?1:-1;else return At}}const Mn=(De,Ne)=>{if(!O)return;Ce===""&&ti(De,"toggleInput");let At=st;st===-1?Ce===""&&Ne==="previous"&&(At=vt.length-1):(At+=Ne==="next"?1:-1,At<0&&(At=0),At===vt.length&&(At=-1)),At=Br(At,Ne),mt(At),Mt(At)},hr=De=>{Ee.current=!0,ge(""),H&&H(De,"","clear"),mi(De,O?[]:null,"clear")},rn=De=>Ne=>{if(De.onKeyDown&&De.onKeyDown(Ne),!Ne.defaultMuiPrevented&&(st!==-1&&!["ArrowLeft","ArrowRight"].includes(Ne.key)&&(mt(-1),Mt(-1)),Ne.which!==229))switch(Ne.key){case"Home":Oe&&E&&(Ne.preventDefault(),Dt({diff:"start",direction:"next",reason:"keyboard",event:Ne}));break;case"End":Oe&&E&&(Ne.preventDefault(),Dt({diff:"end",direction:"previous",reason:"keyboard",event:Ne}));break;case"PageUp":Ne.preventDefault(),Dt({diff:-Fde,direction:"previous",reason:"keyboard",event:Ne}),Pi(Ne);break;case"PageDown":Ne.preventDefault(),Dt({diff:Fde,direction:"next",reason:"keyboard",event:Ne}),Pi(Ne);break;case"ArrowDown":Ne.preventDefault(),Dt({diff:1,direction:"next",reason:"keyboard",event:Ne}),Pi(Ne);break;case"ArrowUp":Ne.preventDefault(),Dt({diff:-1,direction:"previous",reason:"keyboard",event:Ne}),Pi(Ne);break;case"ArrowLeft":!O&&ee?Mt(0):Mn(Ne,"previous");break;case"ArrowRight":!O&&ee?Mt(-1):Mn(Ne,"next");break;case"Enter":if(Vt.current!==-1&&Oe){const At=Ve[Vt.current],En=x?x(At):!1;if(Ne.preventDefault(),En)return;Nr(Ne,At,"selectOption"),r&&qe.current.setSelectionRange(qe.current.value.length,qe.current.value.length)}else y&&Ce!==""&&nt===!1&&(O&&Ne.preventDefault(),Nr(Ne,Ce,"createOption","freeSolo"));break;case"Escape":Oe?(Ne.preventDefault(),Ne.stopPropagation(),ti(Ne,"escape")):c&&(Ce!==""||O&&vt.length>0||ee)&&(Ne.preventDefault(),Ne.stopPropagation(),hr(Ne));break;case"Backspace":if(O&&!K&&Ce===""&&vt.length>0){const At=st===-1?vt.length-1:st,En=vt.slice();En.splice(At,1),mi(Ne,En,"removeOption",{option:vt[At]})}!O&&ee&&!K&&(wn(null),Mt(-1));break;case"Delete":if(O&&!K&&Ce===""&&vt.length>0&&st!==-1){const At=st,En=vt.slice();En.splice(At,1),mi(Ne,En,"removeOption",{option:vt[At]})}!O&&ee&&!K&&(wn(null),Mt(-1));break}},sn=De=>{ne(!0),Q&&!Ee.current&&Pi(De)},Kn=De=>{if(e(Ze)){qe.current.focus();return}ne(!1),je.current=!0,Ee.current=!1,o&&Vt.current!==-1&&Oe?Nr(De,Ve[Vt.current],"blur"):o&&y&&Ce!==""?Nr(De,Ce,"blur","freeSolo"):l&&ae(De,vt,"blur"),ti(De,"blur")},ai=De=>{const Ne=De.target.value;Ce!==Ne&&(ge(Ne),Ie(!1),H&&H(De,Ne,"input")),Ne===""?!h&&!O&&mi(De,null,"clear"):Pi(De)},Ki=De=>{const Ne=Number(De.currentTarget.getAttribute("data-option-index"));Vt.current!==Ne&&jn({event:De,index:Ne,reason:"mouse"})},so=De=>{jn({event:De,index:Number(De.currentTarget.getAttribute("data-option-index")),reason:"touch"}),ds.current=!0},_o=De=>{const Ne=Number(De.currentTarget.getAttribute("data-option-index"));Nr(De,Ve[Ne],"selectOption"),ds.current=!1},Cs=De=>Ne=>{const At=vt.slice();At.splice(De,1),mi(Ne,At,"removeOption",{option:vt[De]})},_u=De=>{mi(De,null,"removeOption",{option:vt})},yl=De=>{ue?ti(De,"toggleInput"):Pi(De)},qs=De=>{De.currentTarget.contains(De.target)&&De.target.getAttribute("id")!==xe&&De.preventDefault()},Ks=De=>{De.currentTarget.contains(De.target)&&(qe.current.focus(),le&&je.current&&qe.current.selectionEnd-qe.current.selectionStart===0&&qe.current.select(),je.current=!1)},ma=De=>{!p&&(Ce===""||!ue)&&yl(De)};let yn=y&&Ce.length>0;yn=yn||(O?vt.length>0:vt!==null);let Pe=Ve;return R&&(Pe=Ve.reduce((De,Ne,At)=>{const En=R(Ne);return De.length>0&&De[De.length-1].group===En?De[De.length-1].options.push(Ne):De.push({key:At,index:At,group:En,options:[Ne]}),De},[])),p&&pe&&Kn(),{getRootProps:(De={})=>({...De,onKeyDown:rn(De),onMouseDown:qs,onClick:Ks}),getInputLabelProps:()=>({id:`${xe}-label`,htmlFor:xe}),getInputProps:()=>({id:xe,value:Ce,onBlur:Kn,onFocus:sn,onChange:ai,onMouseDown:ma,"aria-activedescendant":Oe?"":null,"aria-autocomplete":r?"both":"list","aria-controls":$t?`${xe}-listbox`:void 0,"aria-expanded":$t,autoComplete:"off",ref:qe,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:p}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:hr}),getItemProps:({index:De=0}={})=>({...O&&{key:De},...ee?{"data-item-index":De}:{"data-tag-index":De},tabIndex:-1,...!K&&{onDelete:O?Cs(De):_u}}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:yl}),getTagProps:({index:De})=>({key:De,"data-tag-index":De,tabIndex:-1,...!K&&{onDelete:Cs(De)}}),getListboxProps:()=>({role:"listbox",id:`${xe}-listbox`,"aria-labelledby":`${xe}-label`,ref:pi,onMouseDown:De=>{De.preventDefault()}}),getOptionProps:({index:De,option:Ne})=>{const At=(O?vt:[vt]).some(bn=>bn!=null&&P(Ne,bn)),En=x?x(Ne):!1;return{key:(k==null?void 0:k(Ne))??me(Ne),tabIndex:-1,role:"option",id:`${xe}-option-${De}`,onMouseMove:Ki,onClick:_o,onTouchStart:so,"data-option-index":De,"aria-disabled":En,"aria-selected":At}},id:xe,inputValue:Ce,value:vt,dirty:yn,expanded:Oe&&We,popupOpen:Oe,focused:pe||st!==-1,anchorEl:We,setAnchorEl:ut,focusedItem:st,focusedTag:st,groupedOptions:Pe}}var nd="top",Df="bottom",Ef="right",id="left",Hre="auto",u5=[nd,Df,Ef,id],vE="start",KM="end",Nze="clippingParents",Vke="viewport",RR="popper",Mze="reference",jde=u5.reduce(function(i,e){return i.concat([e+"-"+vE,e+"-"+KM])},[]),Hke=[].concat(u5,[Hre]).reduce(function(i,e){return i.concat([e,e+"-"+vE,e+"-"+KM])},[]),Pze="beforeRead",Oze="read",Fze="afterRead",Bze="beforeMain",jze="main",Wze="afterMain",$ze="beforeWrite",zze="write",Vze="afterWrite",Hze=[Pze,Oze,Fze,Bze,jze,Wze,$ze,zze,Vze];function zm(i){return i?(i.nodeName||"").toLowerCase():null}function ph(i){if(i==null)return window;if(i.toString()!=="[object Window]"){var e=i.ownerDocument;return e&&e.defaultView||window}return i}function QS(i){var e=ph(i).Element;return i instanceof e||i instanceof Element}function wf(i){var e=ph(i).HTMLElement;return i instanceof e||i instanceof HTMLElement}function Ure(i){if(typeof ShadowRoot>"u")return!1;var e=ph(i).ShadowRoot;return i instanceof e||i instanceof ShadowRoot}function Uze(i){var e=i.state;Object.keys(e.elements).forEach(function(n){var r=e.styles[n]||{},s=e.attributes[n]||{},o=e.elements[n];!wf(o)||!zm(o)||(Object.assign(o.style,r),Object.keys(s).forEach(function(a){var l=s[a];l===!1?o.removeAttribute(a):o.setAttribute(a,l===!0?"":l)}))})}function qze(i){var e=i.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow),function(){Object.keys(e.elements).forEach(function(r){var s=e.elements[r],o=e.attributes[r]||{},a=Object.keys(e.styles.hasOwnProperty(r)?e.styles[r]:n[r]),l=a.reduce(function(c,u){return c[u]="",c},{});!wf(s)||!zm(s)||(Object.assign(s.style,l),Object.keys(o).forEach(function(c){s.removeAttribute(c)}))})}}const Kze={name:"applyStyles",enabled:!0,phase:"write",fn:Uze,effect:qze,requires:["computeStyles"]};function Tm(i){return i.split("-")[0]}var IS=Math.max,p9=Math.min,bE=Math.round;function DZ(){var i=navigator.userAgentData;return i!=null&&i.brands&&Array.isArray(i.brands)?i.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function Uke(){return!/^((?!chrome|android).)*safari/i.test(DZ())}function yE(i,e,n){e===void 0&&(e=!1),n===void 0&&(n=!1);var r=i.getBoundingClientRect(),s=1,o=1;e&&wf(i)&&(s=i.offsetWidth>0&&bE(r.width)/i.offsetWidth||1,o=i.offsetHeight>0&&bE(r.height)/i.offsetHeight||1);var a=QS(i)?ph(i):window,l=a.visualViewport,c=!Uke()&&n,u=(r.left+(c&&l?l.offsetLeft:0))/s,d=(r.top+(c&&l?l.offsetTop:0))/o,h=r.width/s,f=r.height/o;return{width:h,height:f,top:d,right:u+h,bottom:d+f,left:u,x:u,y:d}}function qre(i){var e=yE(i),n=i.offsetWidth,r=i.offsetHeight;return Math.abs(e.width-n)<=1&&(n=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:i.offsetLeft,y:i.offsetTop,width:n,height:r}}function qke(i,e){var n=e.getRootNode&&e.getRootNode();if(i.contains(e))return!0;if(n&&Ure(n)){var r=e;do{if(r&&i.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function Dv(i){return ph(i).getComputedStyle(i)}function Gze(i){return["table","td","th"].indexOf(zm(i))>=0}function $1(i){return((QS(i)?i.ownerDocument:i.document)||window.document).documentElement}function wW(i){return zm(i)==="html"?i:i.assignedSlot||i.parentNode||(Ure(i)?i.host:null)||$1(i)}function Wde(i){return!wf(i)||Dv(i).position==="fixed"?null:i.offsetParent}function Xze(i){var e=/firefox/i.test(DZ()),n=/Trident/i.test(DZ());if(n&&wf(i)){var r=Dv(i);if(r.position==="fixed")return null}var s=wW(i);for(Ure(s)&&(s=s.host);wf(s)&&["html","body"].indexOf(zm(s))<0;){var o=Dv(s);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||e&&o.willChange==="filter"||e&&o.filter&&o.filter!=="none")return s;s=s.parentNode}return null}function d5(i){for(var e=ph(i),n=Wde(i);n&&Gze(n)&&Dv(n).position==="static";)n=Wde(n);return n&&(zm(n)==="html"||zm(n)==="body"&&Dv(n).position==="static")?e:n||Xze(i)||e}function Kre(i){return["top","bottom"].indexOf(i)>=0?"x":"y"}function HN(i,e,n){return IS(i,p9(e,n))}function Yze(i,e,n){var r=HN(i,e,n);return r>n?n:r}function Kke(){return{top:0,right:0,bottom:0,left:0}}function Gke(i){return Object.assign({},Kke(),i)}function Xke(i,e){return e.reduce(function(n,r){return n[r]=i,n},{})}var Zze=function(e,n){return e=typeof e=="function"?e(Object.assign({},n.rects,{placement:n.placement})):e,Gke(typeof e!="number"?e:Xke(e,u5))};function Qze(i){var e,n=i.state,r=i.name,s=i.options,o=n.elements.arrow,a=n.modifiersData.popperOffsets,l=Tm(n.placement),c=Kre(l),u=[id,Ef].indexOf(l)>=0,d=u?"height":"width";if(!(!o||!a)){var h=Zze(s.padding,n),f=qre(o),p=c==="y"?nd:id,g=c==="y"?Df:Ef,m=n.rects.reference[d]+n.rects.reference[c]-a[c]-n.rects.popper[d],_=a[c]-n.rects.reference[c],b=d5(o),y=b?c==="y"?b.clientHeight||0:b.clientWidth||0:0,x=m/2-_/2,k=h[p],D=y-f[d]-h[g],R=y/2-f[d]/2+x,E=HN(k,R,D),A=c;n.modifiersData[r]=(e={},e[A]=E,e.centerOffset=E-R,e)}}function Jze(i){var e=i.state,n=i.options,r=n.element,s=r===void 0?"[data-popper-arrow]":r;s!=null&&(typeof s=="string"&&(s=e.elements.popper.querySelector(s),!s)||qke(e.elements.popper,s)&&(e.elements.arrow=s))}const eVe={name:"arrow",enabled:!0,phase:"main",fn:Qze,effect:Jze,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function wE(i){return i.split("-")[1]}var tVe={top:"auto",right:"auto",bottom:"auto",left:"auto"};function nVe(i,e){var n=i.x,r=i.y,s=e.devicePixelRatio||1;return{x:bE(n*s)/s||0,y:bE(r*s)/s||0}}function $de(i){var e,n=i.popper,r=i.popperRect,s=i.placement,o=i.variation,a=i.offsets,l=i.position,c=i.gpuAcceleration,u=i.adaptive,d=i.roundOffsets,h=i.isFixed,f=a.x,p=f===void 0?0:f,g=a.y,m=g===void 0?0:g,_=typeof d=="function"?d({x:p,y:m}):{x:p,y:m};p=_.x,m=_.y;var b=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),x=id,k=nd,D=window;if(u){var R=d5(n),E="clientHeight",A="clientWidth";if(R===ph(n)&&(R=$1(n),Dv(R).position!=="static"&&l==="absolute"&&(E="scrollHeight",A="scrollWidth")),R=R,s===nd||(s===id||s===Ef)&&o===KM){k=Df;var M=h&&R===D&&D.visualViewport?D.visualViewport.height:R[E];m-=M-r.height,m*=c?1:-1}if(s===id||(s===nd||s===Df)&&o===KM){x=Ef;var N=h&&R===D&&D.visualViewport?D.visualViewport.width:R[A];p-=N-r.width,p*=c?1:-1}}var P=Object.assign({position:l},u&&tVe),O=d===!0?nVe({x:p,y:m},ph(n)):{x:p,y:m};if(p=O.x,m=O.y,c){var B;return Object.assign({},P,(B={},B[k]=y?"0":"",B[x]=b?"0":"",B.transform=(D.devicePixelRatio||1)<=1?"translate("+p+"px, "+m+"px)":"translate3d("+p+"px, "+m+"px, 0)",B))}return Object.assign({},P,(e={},e[k]=y?m+"px":"",e[x]=b?p+"px":"",e.transform="",e))}function iVe(i){var e=i.state,n=i.options,r=n.gpuAcceleration,s=r===void 0?!0:r,o=n.adaptive,a=o===void 0?!0:o,l=n.roundOffsets,c=l===void 0?!0:l,u={placement:Tm(e.placement),variation:wE(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,$de(Object.assign({},u,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:a,roundOffsets:c})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,$de(Object.assign({},u,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})}const rVe={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:iVe,data:{}};var p3={passive:!0};function sVe(i){var e=i.state,n=i.instance,r=i.options,s=r.scroll,o=s===void 0?!0:s,a=r.resize,l=a===void 0?!0:a,c=ph(e.elements.popper),u=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&u.forEach(function(d){d.addEventListener("scroll",n.update,p3)}),l&&c.addEventListener("resize",n.update,p3),function(){o&&u.forEach(function(d){d.removeEventListener("scroll",n.update,p3)}),l&&c.removeEventListener("resize",n.update,p3)}}const oVe={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:sVe,data:{}};var aVe={left:"right",right:"left",bottom:"top",top:"bottom"};function YB(i){return i.replace(/left|right|bottom|top/g,function(e){return aVe[e]})}var lVe={start:"end",end:"start"};function zde(i){return i.replace(/start|end/g,function(e){return lVe[e]})}function Gre(i){var e=ph(i),n=e.pageXOffset,r=e.pageYOffset;return{scrollLeft:n,scrollTop:r}}function Xre(i){return yE($1(i)).left+Gre(i).scrollLeft}function cVe(i,e){var n=ph(i),r=$1(i),s=n.visualViewport,o=r.clientWidth,a=r.clientHeight,l=0,c=0;if(s){o=s.width,a=s.height;var u=Uke();(u||!u&&e==="fixed")&&(l=s.offsetLeft,c=s.offsetTop)}return{width:o,height:a,x:l+Xre(i),y:c}}function uVe(i){var e,n=$1(i),r=Gre(i),s=(e=i.ownerDocument)==null?void 0:e.body,o=IS(n.scrollWidth,n.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),a=IS(n.scrollHeight,n.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),l=-r.scrollLeft+Xre(i),c=-r.scrollTop;return Dv(s||n).direction==="rtl"&&(l+=IS(n.clientWidth,s?s.clientWidth:0)-o),{width:o,height:a,x:l,y:c}}function Yre(i){var e=Dv(i),n=e.overflow,r=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(n+s+r)}function Yke(i){return["html","body","#document"].indexOf(zm(i))>=0?i.ownerDocument.body:wf(i)&&Yre(i)?i:Yke(wW(i))}function UN(i,e){var n;e===void 0&&(e=[]);var r=Yke(i),s=r===((n=i.ownerDocument)==null?void 0:n.body),o=ph(r),a=s?[o].concat(o.visualViewport||[],Yre(r)?r:[]):r,l=e.concat(a);return s?l:l.concat(UN(wW(a)))}function EZ(i){return Object.assign({},i,{left:i.x,top:i.y,right:i.x+i.width,bottom:i.y+i.height})}function dVe(i,e){var n=yE(i,!1,e==="fixed");return n.top=n.top+i.clientTop,n.left=n.left+i.clientLeft,n.bottom=n.top+i.clientHeight,n.right=n.left+i.clientWidth,n.width=i.clientWidth,n.height=i.clientHeight,n.x=n.left,n.y=n.top,n}function Vde(i,e,n){return e===Vke?EZ(cVe(i,n)):QS(e)?dVe(e,n):EZ(uVe($1(i)))}function hVe(i){var e=UN(wW(i)),n=["absolute","fixed"].indexOf(Dv(i).position)>=0,r=n&&wf(i)?d5(i):i;return QS(r)?e.filter(function(s){return QS(s)&&qke(s,r)&&zm(s)!=="body"}):[]}function fVe(i,e,n,r){var s=e==="clippingParents"?hVe(i):[].concat(e),o=[].concat(s,[n]),a=o[0],l=o.reduce(function(c,u){var d=Vde(i,u,r);return c.top=IS(d.top,c.top),c.right=p9(d.right,c.right),c.bottom=p9(d.bottom,c.bottom),c.left=IS(d.left,c.left),c},Vde(i,a,r));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}function Zke(i){var e=i.reference,n=i.element,r=i.placement,s=r?Tm(r):null,o=r?wE(r):null,a=e.x+e.width/2-n.width/2,l=e.y+e.height/2-n.height/2,c;switch(s){case nd:c={x:a,y:e.y-n.height};break;case Df:c={x:a,y:e.y+e.height};break;case Ef:c={x:e.x+e.width,y:l};break;case id:c={x:e.x-n.width,y:l};break;default:c={x:e.x,y:e.y}}var u=s?Kre(s):null;if(u!=null){var d=u==="y"?"height":"width";switch(o){case vE:c[u]=c[u]-(e[d]/2-n[d]/2);break;case KM:c[u]=c[u]+(e[d]/2-n[d]/2);break}}return c}function GM(i,e){e===void 0&&(e={});var n=e,r=n.placement,s=r===void 0?i.placement:r,o=n.strategy,a=o===void 0?i.strategy:o,l=n.boundary,c=l===void 0?Nze:l,u=n.rootBoundary,d=u===void 0?Vke:u,h=n.elementContext,f=h===void 0?RR:h,p=n.altBoundary,g=p===void 0?!1:p,m=n.padding,_=m===void 0?0:m,b=Gke(typeof _!="number"?_:Xke(_,u5)),y=f===RR?Mze:RR,x=i.rects.popper,k=i.elements[g?y:f],D=fVe(QS(k)?k:k.contextElement||$1(i.elements.popper),c,d,a),R=yE(i.elements.reference),E=Zke({reference:R,element:x,placement:s}),A=EZ(Object.assign({},x,E)),M=f===RR?A:R,N={top:D.top-M.top+b.top,bottom:M.bottom-D.bottom+b.bottom,left:D.left-M.left+b.left,right:M.right-D.right+b.right},P=i.modifiersData.offset;if(f===RR&&P){var O=P[s];Object.keys(N).forEach(function(B){var j=[Ef,Df].indexOf(B)>=0?1:-1,z=[nd,Df].indexOf(B)>=0?"y":"x";N[B]+=O[z]*j})}return N}function pVe(i,e){e===void 0&&(e={});var n=e,r=n.placement,s=n.boundary,o=n.rootBoundary,a=n.padding,l=n.flipVariations,c=n.allowedAutoPlacements,u=c===void 0?Hke:c,d=wE(r),h=d?l?jde:jde.filter(function(g){return wE(g)===d}):u5,f=h.filter(function(g){return u.indexOf(g)>=0});f.length===0&&(f=h);var p=f.reduce(function(g,m){return g[m]=GM(i,{placement:m,boundary:s,rootBoundary:o,padding:a})[Tm(m)],g},{});return Object.keys(p).sort(function(g,m){return p[g]-p[m]})}function gVe(i){if(Tm(i)===Hre)return[];var e=YB(i);return[zde(i),e,zde(e)]}function mVe(i){var e=i.state,n=i.options,r=i.name;if(!e.modifiersData[r]._skip){for(var s=n.mainAxis,o=s===void 0?!0:s,a=n.altAxis,l=a===void 0?!0:a,c=n.fallbackPlacements,u=n.padding,d=n.boundary,h=n.rootBoundary,f=n.altBoundary,p=n.flipVariations,g=p===void 0?!0:p,m=n.allowedAutoPlacements,_=e.options.placement,b=Tm(_),y=b===_,x=c||(y||!g?[YB(_)]:gVe(_)),k=[_].concat(x).reduce(function(ke,xe){return ke.concat(Tm(xe)===Hre?pVe(e,{placement:xe,boundary:d,rootBoundary:h,padding:u,flipVariations:g,allowedAutoPlacements:m}):xe)},[]),D=e.rects.reference,R=e.rects.popper,E=new Map,A=!0,M=k[0],N=0;N=0,z=j?"width":"height",H=GM(e,{placement:P,boundary:d,rootBoundary:h,altBoundary:f,padding:u}),Y=j?B?Ef:id:B?Df:nd;D[z]>R[z]&&(Y=YB(Y));var X=YB(Y),Q=[];if(o&&Q.push(H[O]<=0),l&&Q.push(H[Y]<=0,H[X]<=0),Q.every(function(ke){return ke})){M=P,A=!1;break}E.set(P,Q)}if(A)for(var ie=g?3:1,K=function(xe){var me=k.find(function(Ee){var je=E.get(Ee);if(je)return je.slice(0,xe).every(function(qe){return qe})});if(me)return M=me,"break"},ee=ie;ee>0;ee--){var le=K(ee);if(le==="break")break}e.placement!==M&&(e.modifiersData[r]._skip=!0,e.placement=M,e.reset=!0)}}const _Ve={name:"flip",enabled:!0,phase:"main",fn:mVe,requiresIfExists:["offset"],data:{_skip:!1}};function Hde(i,e,n){return n===void 0&&(n={x:0,y:0}),{top:i.top-e.height-n.y,right:i.right-e.width+n.x,bottom:i.bottom-e.height+n.y,left:i.left-e.width-n.x}}function Ude(i){return[nd,Ef,Df,id].some(function(e){return i[e]>=0})}function vVe(i){var e=i.state,n=i.name,r=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,a=GM(e,{elementContext:"reference"}),l=GM(e,{altBoundary:!0}),c=Hde(a,r),u=Hde(l,s,o),d=Ude(c),h=Ude(u);e.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:h},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":h})}const bVe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:vVe};function yVe(i,e,n){var r=Tm(i),s=[id,nd].indexOf(r)>=0?-1:1,o=typeof n=="function"?n(Object.assign({},e,{placement:i})):n,a=o[0],l=o[1];return a=a||0,l=(l||0)*s,[id,Ef].indexOf(r)>=0?{x:l,y:a}:{x:a,y:l}}function wVe(i){var e=i.state,n=i.options,r=i.name,s=n.offset,o=s===void 0?[0,0]:s,a=Hke.reduce(function(d,h){return d[h]=yVe(h,e.rects,o),d},{}),l=a[e.placement],c=l.x,u=l.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=c,e.modifiersData.popperOffsets.y+=u),e.modifiersData[r]=a}const CVe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:wVe};function SVe(i){var e=i.state,n=i.name;e.modifiersData[n]=Zke({reference:e.rects.reference,element:e.rects.popper,placement:e.placement})}const xVe={name:"popperOffsets",enabled:!0,phase:"read",fn:SVe,data:{}};function kVe(i){return i==="x"?"y":"x"}function LVe(i){var e=i.state,n=i.options,r=i.name,s=n.mainAxis,o=s===void 0?!0:s,a=n.altAxis,l=a===void 0?!1:a,c=n.boundary,u=n.rootBoundary,d=n.altBoundary,h=n.padding,f=n.tether,p=f===void 0?!0:f,g=n.tetherOffset,m=g===void 0?0:g,_=GM(e,{boundary:c,rootBoundary:u,padding:h,altBoundary:d}),b=Tm(e.placement),y=wE(e.placement),x=!y,k=Kre(b),D=kVe(k),R=e.modifiersData.popperOffsets,E=e.rects.reference,A=e.rects.popper,M=typeof m=="function"?m(Object.assign({},e.rects,{placement:e.placement})):m,N=typeof M=="number"?{mainAxis:M,altAxis:M}:Object.assign({mainAxis:0,altAxis:0},M),P=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,O={x:0,y:0};if(R){if(o){var B,j=k==="y"?nd:id,z=k==="y"?Df:Ef,H=k==="y"?"height":"width",Y=R[k],X=Y+_[j],Q=Y-_[z],ie=p?-A[H]/2:0,K=y===vE?E[H]:A[H],ee=y===vE?-A[H]:-E[H],le=e.elements.arrow,ke=p&&le?qre(le):{width:0,height:0},xe=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:Kke(),me=xe[j],Ee=xe[z],je=HN(0,E[H],ke[H]),qe=x?E[H]/2-ie-je-me-N.mainAxis:K-je-me-N.mainAxis,Ze=x?-E[H]/2+ie+je+Ee+N.mainAxis:ee+je+Ee+N.mainAxis,We=e.elements.arrow&&d5(e.elements.arrow),ut=We?k==="y"?We.clientTop||0:We.clientLeft||0:0,st=(B=P==null?void 0:P[k])!=null?B:0,mt=Y+qe-st-ut,Rt=Y+Ze-st,Vt=HN(p?p9(X,mt):X,Y,p?IS(Q,Rt):Q);R[k]=Vt,O[k]=Vt-Y}if(l){var Ot,vt=k==="x"?nd:id,wn=k==="x"?Df:Ef,Ce=R[D],ge=D==="y"?"height":"width",pe=Ce+_[vt],ne=Ce-_[wn],ae=[nd,id].indexOf(b)!==-1,ue=(Ot=P==null?void 0:P[D])!=null?Ot:0,de=ae?pe:Ce-E[ge]-A[ge]-ue+N.altAxis,Se=ae?Ce+E[ge]+A[ge]-ue-N.altAxis:ne,Ie=p&&ae?Yze(de,Ce,Se):HN(p?de:pe,Ce,p?Se:ne);R[D]=Ie,O[D]=Ie-Ce}e.modifiersData[r]=O}}const DVe={name:"preventOverflow",enabled:!0,phase:"main",fn:LVe,requiresIfExists:["offset"]};function EVe(i){return{scrollLeft:i.scrollLeft,scrollTop:i.scrollTop}}function IVe(i){return i===ph(i)||!wf(i)?Gre(i):EVe(i)}function TVe(i){var e=i.getBoundingClientRect(),n=bE(e.width)/i.offsetWidth||1,r=bE(e.height)/i.offsetHeight||1;return n!==1||r!==1}function RVe(i,e,n){n===void 0&&(n=!1);var r=wf(e),s=wf(e)&&TVe(e),o=$1(e),a=yE(i,s,n),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(r||!r&&!n)&&((zm(e)!=="body"||Yre(o))&&(l=IVe(e)),wf(e)?(c=yE(e,!0),c.x+=e.clientLeft,c.y+=e.clientTop):o&&(c.x=Xre(o))),{x:a.left+l.scrollLeft-c.x,y:a.top+l.scrollTop-c.y,width:a.width,height:a.height}}function AVe(i){var e=new Map,n=new Set,r=[];i.forEach(function(o){e.set(o.name,o)});function s(o){n.add(o.name);var a=[].concat(o.requires||[],o.requiresIfExists||[]);a.forEach(function(l){if(!n.has(l)){var c=e.get(l);c&&s(c)}}),r.push(o)}return i.forEach(function(o){n.has(o.name)||s(o)}),r}function NVe(i){var e=AVe(i);return Hze.reduce(function(n,r){return n.concat(e.filter(function(s){return s.phase===r}))},[])}function MVe(i){var e;return function(){return e||(e=new Promise(function(n){Promise.resolve().then(function(){e=void 0,n(i())})})),e}}function PVe(i){var e=i.reduce(function(n,r){var s=n[r.name];return n[r.name]=s?Object.assign({},s,r,{options:Object.assign({},s.options,r.options),data:Object.assign({},s.data,r.data)}):r,n},{});return Object.keys(e).map(function(n){return e[n]})}var qde={placement:"bottom",modifiers:[],strategy:"absolute"};function Kde(){for(var i=arguments.length,e=new Array(i),n=0;n=19?((e=i==null?void 0:i.props)==null?void 0:e.ref)||null:(i==null?void 0:i.ref)||null}function jVe(i){return typeof i=="function"?i():i}const Qke=$.forwardRef(function(e,n){const{children:r,container:s,disablePortal:o=!1}=e,[a,l]=$.useState(null),c=mo($.isValidElement(r)?Hx(r):null,n);if(wc(()=>{o||l(jVe(s)||document.body)},[s,o]),wc(()=>{if(a&&!o)return wZ(n,a),()=>{wZ(n,null)}},[n,a,o]),o){if($.isValidElement(r)){const u={ref:c};return $.cloneElement(r,u)}return r}return a&&Wre.createPortal(r,a)});function WVe(i){return Xt("MuiPopper",i)}Yt("MuiPopper",["root"]);function $Ve(i,e){if(e==="ltr")return i;switch(i){case"bottom-end":return"bottom-start";case"bottom-start":return"bottom-end";case"top-end":return"top-start";case"top-start":return"top-end";default:return i}}function IZ(i){return typeof i=="function"?i():i}function zVe(i){return i.nodeType!==void 0}const VVe=i=>{const{classes:e}=i;return Zt({root:["root"]},WVe,e)},HVe={},UVe=$.forwardRef(function(e,n){const{anchorEl:r,children:s,direction:o,disablePortal:a,modifiers:l,open:c,placement:u,popperOptions:d,popperRef:h,slotProps:f={},slots:p={},TransitionProps:g,ownerState:m,..._}=e,b=$.useRef(null),y=mo(b,n),x=$.useRef(null),k=mo(x,h),D=$.useRef(k);wc(()=>{D.current=k},[k]),$.useImperativeHandle(h,()=>x.current,[]);const R=$Ve(u,o),[E,A]=$.useState(R),[M,N]=$.useState(IZ(r));$.useEffect(()=>{x.current&&x.current.forceUpdate()}),$.useEffect(()=>{r&&N(IZ(r))},[r]),wc(()=>{if(!M||!c)return;const z=X=>{A(X.placement)};let H=[{name:"preventOverflow",options:{altBoundary:a}},{name:"flip",options:{altBoundary:a}},{name:"onUpdate",enabled:!0,phase:"afterWrite",fn:({state:X})=>{z(X)}}];l!=null&&(H=H.concat(l)),d&&d.modifiers!=null&&(H=H.concat(d.modifiers));const Y=BVe(M,b.current,{placement:R,...d,modifiers:H});return D.current(Y),()=>{Y.destroy(),D.current(null)}},[M,a,l,c,d,R]);const P={placement:E};g!==null&&(P.TransitionProps=g);const O=VVe(e),B=p.root??"div",j=$u({elementType:B,externalSlotProps:f.root,externalForwardedProps:_,additionalProps:{role:"tooltip",ref:y},ownerState:e,className:O.root});return C.jsx(B,{...j,children:typeof s=="function"?s(P):s})}),qVe=$.forwardRef(function(e,n){const{anchorEl:r,children:s,container:o,direction:a="ltr",disablePortal:l=!1,keepMounted:c=!1,modifiers:u,open:d,placement:h="bottom",popperOptions:f=HVe,popperRef:p,style:g,transition:m=!1,slotProps:_={},slots:b={},...y}=e,[x,k]=$.useState(!0),D=()=>{k(!1)},R=()=>{k(!0)};if(!c&&!d&&(!m||x))return null;let E;if(o)E=o;else if(r){const N=IZ(r);E=N&&zVe(N)?gl(N).body:gl(null).body}const A=!d&&c&&(!m||x)?"none":void 0,M=m?{in:d,onEnter:D,onExited:R}:void 0;return C.jsx(Qke,{disablePortal:l,container:E,children:C.jsx(UVe,{anchorEl:r,direction:a,disablePortal:l,modifiers:u,ref:n,open:m?!x:d,placement:h,popperOptions:f,popperRef:p,slotProps:_,slots:b,...y,style:{position:"fixed",top:0,left:0,display:A,...g},TransitionProps:M,children:s})})}),KVe=ye(qVe,{name:"MuiPopper",slot:"Root"})({}),CW=$.forwardRef(function(e,n){const r=Pv(),s=Qt({props:e,name:"MuiPopper"}),{anchorEl:o,component:a,components:l,componentsProps:c,container:u,disablePortal:d,keepMounted:h,modifiers:f,open:p,placement:g,popperOptions:m,popperRef:_,transition:b,slots:y,slotProps:x,...k}=s,D=(y==null?void 0:y.root)??(l==null?void 0:l.Root),R={anchorEl:o,container:u,disablePortal:d,keepMounted:h,modifiers:f,open:p,placement:g,popperOptions:m,popperRef:_,transition:b,...k};return C.jsx(KVe,{as:a,direction:r?"rtl":"ltr",slots:{root:D},slotProps:x??c,...R,ref:n})});function GVe(i){return Xt("MuiListSubheader",i)}Yt("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);const XVe=i=>{const{classes:e,color:n,disableGutters:r,inset:s,disableSticky:o}=i,a={root:["root",n!=="default"&&`color${Ue(n)}`,!r&&"gutters",s&&"inset",!o&&"sticky"]};return Zt(a,GVe,e)},YVe=ye("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.color!=="default"&&e[`color${Ue(n.color)}`],!n.disableGutters&&e.gutters,n.inset&&e.inset,!n.disableSticky&&e.sticky]}})(jt(({theme:i})=>({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(i.vars||i).palette.text.secondary,fontFamily:i.typography.fontFamily,fontWeight:i.typography.fontWeightMedium,fontSize:i.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(i.vars||i).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:({ownerState:e})=>!e.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:e})=>e.inset,style:{paddingLeft:72}},{props:({ownerState:e})=>!e.disableSticky,style:{position:"sticky",top:0,zIndex:1,backgroundColor:(i.vars||i).palette.background.paper}}]}))),TZ=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiListSubheader"}),{className:s,color:o="default",component:a="li",disableGutters:l=!1,disableSticky:c=!1,inset:u=!1,...d}=r,h={...r,color:o,component:a,disableGutters:l,disableSticky:c,inset:u},f=XVe(h);return C.jsx(YVe,{as:a,className:dt(f.root,s),ref:n,ownerState:h,...d})});TZ&&(TZ.muiSkipListHighlight=!0);const ZVe=Hr(C.jsx("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"}));function QVe(i){return Xt("MuiChip",i)}const nr=Yt("MuiChip",["root","sizeSmall","sizeMedium","colorDefault","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","disabled","clickable","clickableColorPrimary","clickableColorSecondary","deletable","deletableColorPrimary","deletableColorSecondary","outlined","filled","outlinedPrimary","outlinedSecondary","filledPrimary","filledSecondary","avatar","avatarSmall","avatarMedium","avatarColorPrimary","avatarColorSecondary","icon","iconSmall","iconMedium","iconColorPrimary","iconColorSecondary","label","labelSmall","labelMedium","deleteIcon","deleteIconSmall","deleteIconMedium","deleteIconColorPrimary","deleteIconColorSecondary","deleteIconOutlinedColorPrimary","deleteIconOutlinedColorSecondary","deleteIconFilledColorPrimary","deleteIconFilledColorSecondary","focusVisible"]),JVe=i=>{const{classes:e,disabled:n,size:r,color:s,iconColor:o,onDelete:a,clickable:l,variant:c}=i,u={root:["root",c,n&&"disabled",`size${Ue(r)}`,`color${Ue(s)}`,l&&"clickable",l&&`clickableColor${Ue(s)}`,a&&"deletable",a&&`deletableColor${Ue(s)}`,`${c}${Ue(s)}`],label:["label",`label${Ue(r)}`],avatar:["avatar",`avatar${Ue(r)}`,`avatarColor${Ue(s)}`],icon:["icon",`icon${Ue(r)}`,`iconColor${Ue(o)}`],deleteIcon:["deleteIcon",`deleteIcon${Ue(r)}`,`deleteIconColor${Ue(s)}`,`deleteIcon${Ue(c)}Color${Ue(s)}`]};return Zt(u,QVe,e)},eHe=ye("div",{name:"MuiChip",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i,{color:r,iconColor:s,clickable:o,onDelete:a,size:l,variant:c}=n;return[{[`& .${nr.avatar}`]:e.avatar},{[`& .${nr.avatar}`]:e[`avatar${Ue(l)}`]},{[`& .${nr.avatar}`]:e[`avatarColor${Ue(r)}`]},{[`& .${nr.icon}`]:e.icon},{[`& .${nr.icon}`]:e[`icon${Ue(l)}`]},{[`& .${nr.icon}`]:e[`iconColor${Ue(s)}`]},{[`& .${nr.deleteIcon}`]:e.deleteIcon},{[`& .${nr.deleteIcon}`]:e[`deleteIcon${Ue(l)}`]},{[`& .${nr.deleteIcon}`]:e[`deleteIconColor${Ue(r)}`]},{[`& .${nr.deleteIcon}`]:e[`deleteIcon${Ue(c)}Color${Ue(r)}`]},e.root,e[`size${Ue(l)}`],e[`color${Ue(r)}`],o&&e.clickable,o&&r!=="default"&&e[`clickableColor${Ue(r)})`],a&&e.deletable,a&&r!=="default"&&e[`deletableColor${Ue(r)}`],e[c],e[`${c}${Ue(r)}`]]}})(jt(({theme:i})=>{const e=i.palette.mode==="light"?i.palette.grey[700]:i.palette.grey[300];return{maxWidth:"100%",fontFamily:i.typography.fontFamily,fontSize:i.typography.pxToRem(13),display:"inline-flex",alignItems:"center",justifyContent:"center",height:32,lineHeight:1.5,color:(i.vars||i).palette.text.primary,backgroundColor:(i.vars||i).palette.action.selected,borderRadius:32/2,whiteSpace:"nowrap",transition:i.transitions.create(["background-color","box-shadow"]),cursor:"unset",outline:0,textDecoration:"none",border:0,padding:0,verticalAlign:"middle",boxSizing:"border-box",[`&.${nr.disabled}`]:{opacity:(i.vars||i).palette.action.disabledOpacity,pointerEvents:"none"},[`& .${nr.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:i.vars?i.vars.palette.Chip.defaultAvatarColor:e,fontSize:i.typography.pxToRem(12)},[`& .${nr.avatarColorPrimary}`]:{color:(i.vars||i).palette.primary.contrastText,backgroundColor:(i.vars||i).palette.primary.dark},[`& .${nr.avatarColorSecondary}`]:{color:(i.vars||i).palette.secondary.contrastText,backgroundColor:(i.vars||i).palette.secondary.dark},[`& .${nr.avatarSmall}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:i.typography.pxToRem(10)},[`& .${nr.icon}`]:{marginLeft:5,marginRight:-6},[`& .${nr.deleteIcon}`]:{WebkitTapHighlightColor:"transparent",color:i.vars?`rgba(${i.vars.palette.text.primaryChannel} / 0.26)`:Pt(i.palette.text.primary,.26),fontSize:22,cursor:"pointer",margin:"0 5px 0 -6px","&:hover":{color:i.vars?`rgba(${i.vars.palette.text.primaryChannel} / 0.4)`:Pt(i.palette.text.primary,.4)}},variants:[{props:{size:"small"},style:{height:24,[`& .${nr.icon}`]:{fontSize:18,marginLeft:4,marginRight:-4},[`& .${nr.deleteIcon}`]:{fontSize:16,marginRight:4,marginLeft:-4}}},...Object.entries(i.palette).filter(br(["contrastText"])).map(([n])=>({props:{color:n},style:{backgroundColor:(i.vars||i).palette[n].main,color:(i.vars||i).palette[n].contrastText,[`& .${nr.deleteIcon}`]:{color:i.vars?`rgba(${i.vars.palette[n].contrastTextChannel} / 0.7)`:Pt(i.palette[n].contrastText,.7),"&:hover, &:active":{color:(i.vars||i).palette[n].contrastText}}}})),{props:n=>n.iconColor===n.color,style:{[`& .${nr.icon}`]:{color:i.vars?i.vars.palette.Chip.defaultIconColor:e}}},{props:n=>n.iconColor===n.color&&n.color!=="default",style:{[`& .${nr.icon}`]:{color:"inherit"}}},{props:{onDelete:!0},style:{[`&.${nr.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.action.selectedChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette.action.selected,i.palette.action.selectedOpacity+i.palette.action.focusOpacity)}}},...Object.entries(i.palette).filter(br(["dark"])).map(([n])=>({props:{color:n,onDelete:!0},style:{[`&.${nr.focusVisible}`]:{background:(i.vars||i).palette[n].dark}}})),{props:{clickable:!0},style:{userSelect:"none",WebkitTapHighlightColor:"transparent",cursor:"pointer","&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette.action.selectedChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette.action.selected,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity)},[`&.${nr.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.action.selectedChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette.action.selected,i.palette.action.selectedOpacity+i.palette.action.focusOpacity)},"&:active":{boxShadow:(i.vars||i).shadows[1]}}},...Object.entries(i.palette).filter(br(["dark"])).map(([n])=>({props:{color:n,clickable:!0},style:{[`&:hover, &.${nr.focusVisible}`]:{backgroundColor:(i.vars||i).palette[n].dark}}})),{props:{variant:"outlined"},style:{backgroundColor:"transparent",border:i.vars?`1px solid ${i.vars.palette.Chip.defaultBorder}`:`1px solid ${i.palette.mode==="light"?i.palette.grey[400]:i.palette.grey[700]}`,[`&.${nr.clickable}:hover`]:{backgroundColor:(i.vars||i).palette.action.hover},[`&.${nr.focusVisible}`]:{backgroundColor:(i.vars||i).palette.action.focus},[`& .${nr.avatar}`]:{marginLeft:4},[`& .${nr.avatarSmall}`]:{marginLeft:2},[`& .${nr.icon}`]:{marginLeft:4},[`& .${nr.iconSmall}`]:{marginLeft:2},[`& .${nr.deleteIcon}`]:{marginRight:5},[`& .${nr.deleteIconSmall}`]:{marginRight:3}}},...Object.entries(i.palette).filter(br()).map(([n])=>({props:{variant:"outlined",color:n},style:{color:(i.vars||i).palette[n].main,border:`1px solid ${i.vars?`rgba(${i.vars.palette[n].mainChannel} / 0.7)`:Pt(i.palette[n].main,.7)}`,[`&.${nr.clickable}:hover`]:{backgroundColor:i.vars?`rgba(${i.vars.palette[n].mainChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette[n].main,i.palette.action.hoverOpacity)},[`&.${nr.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette[n].mainChannel} / ${i.vars.palette.action.focusOpacity})`:Pt(i.palette[n].main,i.palette.action.focusOpacity)},[`& .${nr.deleteIcon}`]:{color:i.vars?`rgba(${i.vars.palette[n].mainChannel} / 0.7)`:Pt(i.palette[n].main,.7),"&:hover, &:active":{color:(i.vars||i).palette[n].main}}}}))]}})),tHe=ye("span",{name:"MuiChip",slot:"Label",overridesResolver:(i,e)=>{const{ownerState:n}=i,{size:r}=n;return[e.label,e[`label${Ue(r)}`]]}})({overflow:"hidden",textOverflow:"ellipsis",paddingLeft:12,paddingRight:12,whiteSpace:"nowrap",variants:[{props:{variant:"outlined"},style:{paddingLeft:11,paddingRight:11}},{props:{size:"small"},style:{paddingLeft:8,paddingRight:8}},{props:{size:"small",variant:"outlined"},style:{paddingLeft:7,paddingRight:7}}]});function Gde(i){return i.key==="Backspace"||i.key==="Delete"}const JS=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiChip"}),{avatar:s,className:o,clickable:a,color:l="default",component:c,deleteIcon:u,disabled:d=!1,icon:h,label:f,onClick:p,onDelete:g,onKeyDown:m,onKeyUp:_,size:b="medium",variant:y="filled",tabIndex:x,skipFocusWhenDisabled:k=!1,slots:D={},slotProps:R={},...E}=r,A=$.useRef(null),M=mo(A,n),N=me=>{me.stopPropagation(),g&&g(me)},P=me=>{me.currentTarget===me.target&&Gde(me)&&me.preventDefault(),m&&m(me)},O=me=>{me.currentTarget===me.target&&g&&Gde(me)&&g(me),_&&_(me)},B=a!==!1&&p?!0:a,j=B||g?ud:c||"div",z={...r,component:j,disabled:d,size:b,color:l,iconColor:$.isValidElement(h)&&h.props.color||l,onDelete:!!g,clickable:B,variant:y},H=JVe(z),Y=j===ud?{component:c||"div",focusVisibleClassName:H.focusVisible,...g&&{disableRipple:!0}}:{};let X=null;g&&(X=u&&$.isValidElement(u)?$.cloneElement(u,{className:dt(u.props.className,H.deleteIcon),onClick:N}):C.jsx(ZVe,{className:H.deleteIcon,onClick:N}));let Q=null;s&&$.isValidElement(s)&&(Q=$.cloneElement(s,{className:dt(H.avatar,s.props.className)}));let ie=null;h&&$.isValidElement(h)&&(ie=$.cloneElement(h,{className:dt(H.icon,h.props.className)}));const K={slots:D,slotProps:R},[ee,le]=an("root",{elementType:eHe,externalForwardedProps:{...K,...E},ownerState:z,shouldForwardComponentProp:!0,ref:M,className:dt(H.root,o),additionalProps:{disabled:B&&d?!0:void 0,tabIndex:k&&d?-1:x,...Y},getSlotProps:me=>({...me,onClick:Ee=>{var je;(je=me.onClick)==null||je.call(me,Ee),p==null||p(Ee)},onKeyDown:Ee=>{var je;(je=me.onKeyDown)==null||je.call(me,Ee),P==null||P(Ee)},onKeyUp:Ee=>{var je;(je=me.onKeyUp)==null||je.call(me,Ee),O==null||O(Ee)}})}),[ke,xe]=an("label",{elementType:tHe,externalForwardedProps:K,ownerState:z,className:H.label});return C.jsxs(ee,{as:j,...le,children:[Q||ie,C.jsx(ke,{...xe,children:f}),X]})});function g3(i){return parseInt(i,10)||0}const nHe={shadow:{visibility:"hidden",position:"absolute",overflow:"hidden",height:0,top:0,left:0,transform:"translateZ(0)"}};function iHe(i){for(const e in i)return!1;return!0}function Xde(i){return iHe(i)||i.outerHeightStyle===0&&!i.overflowing}const rHe=$.forwardRef(function(e,n){const{onChange:r,maxRows:s,minRows:o=1,style:a,value:l,...c}=e,{current:u}=$.useRef(l!=null),d=$.useRef(null),h=mo(n,d),f=$.useRef(null),p=$.useRef(null),g=$.useCallback(()=>{const x=d.current,k=p.current;if(!x||!k)return;const R=fh(x).getComputedStyle(x);if(R.width==="0px")return{outerHeightStyle:0,overflowing:!1};k.style.width=R.width,k.value=x.value||e.placeholder||"x",k.value.slice(-1)===` `&&(k.value+=" ");const E=R.boxSizing,A=g3(R.paddingBottom)+g3(R.paddingTop),M=g3(R.borderBottomWidth)+g3(R.borderTopWidth),N=k.scrollHeight;k.value="x";const P=k.scrollHeight;let O=N;o&&(O=Math.max(Number(o)*P,O)),s&&(O=Math.min(Number(s)*P,O)),O=Math.max(O,P);const B=O+(E==="border-box"?A+M:0),j=Math.abs(O-N)<=1;return{outerHeightStyle:B,overflowing:j}},[s,o,e.placeholder]),m=Ha(()=>{const x=d.current,k=g();if(!x||!k||Xde(k))return!1;const D=k.outerHeightStyle;return f.current!=null&&f.current!==D}),_=$.useCallback(()=>{const x=d.current,k=g();if(!x||!k||Xde(k))return;const D=k.outerHeightStyle;f.current!==D&&(f.current=D,x.style.height=`${D}px`),x.style.overflow=k.overflowing?"hidden":""},[g]),b=$.useRef(-1);wc(()=>{const x=l5(_),k=d==null?void 0:d.current;if(!k)return;const D=fh(k);D.addEventListener("resize",x);let R;return typeof ResizeObserver<"u"&&(R=new ResizeObserver(()=>{m()&&(R.unobserve(k),cancelAnimationFrame(b.current),_(),b.current=requestAnimationFrame(()=>{R.observe(k)}))}),R.observe(k)),()=>{x.clear(),cancelAnimationFrame(b.current),D.removeEventListener("resize",x),R&&R.disconnect()}},[g,_,m]),wc(()=>{_()});const y=x=>{u||_();const k=x.target,D=k.value.length,R=k.value.endsWith(` `),E=k.selectionStart===D;R&&E&&k.setSelectionRange(D,D),r&&r(x)};return C.jsxs($.Fragment,{children:[C.jsx("textarea",{value:l,onChange:y,ref:h,rows:o,style:a,...c}),C.jsx("textarea",{"aria-hidden":!0,className:e.className,readOnly:!0,ref:p,tabIndex:-1,style:{...nHe.shadow,...a,paddingTop:0,paddingBottom:0}})]})});function dv(i){return typeof i=="string"}function Ux({props:i,states:e,muiFormControl:n}){return e.reduce((r,s)=>(r[s]=i[s],n&&typeof i[s]>"u"&&(r[s]=n[s]),r),{})}const SW=$.createContext(void 0);function Ov(){return $.useContext(SW)}function Yde(i){return i!=null&&!(Array.isArray(i)&&i.length===0)}function g9(i,e=!1){return i&&(Yde(i.value)&&i.value!==""||e&&Yde(i.defaultValue)&&i.defaultValue!=="")}function sHe(i){return i.startAdornment}function oHe(i){return Xt("MuiInputBase",i)}const qd=Yt("MuiInputBase",["root","formControl","focused","disabled","adornedStart","adornedEnd","error","sizeSmall","multiline","colorSecondary","fullWidth","hiddenLabel","readOnly","input","inputSizeSmall","inputMultiline","inputTypeSearch","inputAdornedStart","inputAdornedEnd","inputHiddenLabel"]);var Zde;const xW=(i,e)=>{const{ownerState:n}=i;return[e.root,n.formControl&&e.formControl,n.startAdornment&&e.adornedStart,n.endAdornment&&e.adornedEnd,n.error&&e.error,n.size==="small"&&e.sizeSmall,n.multiline&&e.multiline,n.color&&e[`color${Ue(n.color)}`],n.fullWidth&&e.fullWidth,n.hiddenLabel&&e.hiddenLabel]},kW=(i,e)=>{const{ownerState:n}=i;return[e.input,n.size==="small"&&e.inputSizeSmall,n.multiline&&e.inputMultiline,n.type==="search"&&e.inputTypeSearch,n.startAdornment&&e.inputAdornedStart,n.endAdornment&&e.inputAdornedEnd,n.hiddenLabel&&e.inputHiddenLabel]},aHe=i=>{const{classes:e,color:n,disabled:r,error:s,endAdornment:o,focused:a,formControl:l,fullWidth:c,hiddenLabel:u,multiline:d,readOnly:h,size:f,startAdornment:p,type:g}=i,m={root:["root",`color${Ue(n)}`,r&&"disabled",s&&"error",c&&"fullWidth",a&&"focused",l&&"formControl",f&&f!=="medium"&&`size${Ue(f)}`,d&&"multiline",p&&"adornedStart",o&&"adornedEnd",u&&"hiddenLabel",h&&"readOnly"],input:["input",r&&"disabled",g==="search"&&"inputTypeSearch",d&&"inputMultiline",f==="small"&&"inputSizeSmall",u&&"inputHiddenLabel",p&&"inputAdornedStart",o&&"inputAdornedEnd",h&&"readOnly"]};return Zt(m,oHe,e)},LW=ye("div",{name:"MuiInputBase",slot:"Root",overridesResolver:xW})(jt(({theme:i})=>({...i.typography.body1,color:(i.vars||i).palette.text.primary,lineHeight:"1.4375em",boxSizing:"border-box",position:"relative",cursor:"text",display:"inline-flex",alignItems:"center",[`&.${qd.disabled}`]:{color:(i.vars||i).palette.text.disabled,cursor:"default"},variants:[{props:({ownerState:e})=>e.multiline,style:{padding:"4px 0 5px"}},{props:({ownerState:e,size:n})=>e.multiline&&n==="small",style:{paddingTop:1}},{props:({ownerState:e})=>e.fullWidth,style:{width:"100%"}}]}))),DW=ye("input",{name:"MuiInputBase",slot:"Input",overridesResolver:kW})(jt(({theme:i})=>{const e=i.palette.mode==="light",n={color:"currentColor",...i.vars?{opacity:i.vars.opacity.inputPlaceholder}:{opacity:e?.42:.5},transition:i.transitions.create("opacity",{duration:i.transitions.duration.shorter})},r={opacity:"0 !important"},s=i.vars?{opacity:i.vars.opacity.inputPlaceholder}:{opacity:e?.42:.5};return{font:"inherit",letterSpacing:"inherit",color:"currentColor",padding:"4px 0 5px",border:0,boxSizing:"content-box",background:"none",height:"1.4375em",margin:0,WebkitTapHighlightColor:"transparent",display:"block",minWidth:0,width:"100%","&::-webkit-input-placeholder":n,"&::-moz-placeholder":n,"&::-ms-input-placeholder":n,"&:focus":{outline:0},"&:invalid":{boxShadow:"none"},"&::-webkit-search-decoration":{WebkitAppearance:"none"},[`label[data-shrink=false] + .${qd.formControl} &`]:{"&::-webkit-input-placeholder":r,"&::-moz-placeholder":r,"&::-ms-input-placeholder":r,"&:focus::-webkit-input-placeholder":s,"&:focus::-moz-placeholder":s,"&:focus::-ms-input-placeholder":s},[`&.${qd.disabled}`]:{opacity:1,WebkitTextFillColor:(i.vars||i).palette.text.disabled},variants:[{props:({ownerState:o})=>!o.disableInjectingGlobalStyles,style:{animationName:"mui-auto-fill-cancel",animationDuration:"10ms","&:-webkit-autofill":{animationDuration:"5000s",animationName:"mui-auto-fill"}}},{props:{size:"small"},style:{paddingTop:1}},{props:({ownerState:o})=>o.multiline,style:{height:"auto",resize:"none",padding:0,paddingTop:0}},{props:{type:"search"},style:{MozAppearance:"textfield"}}]}})),Qde=Bre({"@keyframes mui-auto-fill":{from:{display:"block"}},"@keyframes mui-auto-fill-cancel":{from:{display:"block"}}}),EW=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiInputBase"}),{"aria-describedby":s,autoComplete:o,autoFocus:a,className:l,color:c,components:u={},componentsProps:d={},defaultValue:h,disabled:f,disableInjectingGlobalStyles:p,endAdornment:g,error:m,fullWidth:_=!1,id:b,inputComponent:y="input",inputProps:x={},inputRef:k,margin:D,maxRows:R,minRows:E,multiline:A=!1,name:M,onBlur:N,onChange:P,onClick:O,onFocus:B,onKeyDown:j,onKeyUp:z,placeholder:H,readOnly:Y,renderSuffix:X,rows:Q,size:ie,slotProps:K={},slots:ee={},startAdornment:le,type:ke="text",value:xe,...me}=r,Ee=x.value!=null?x.value:xe,{current:je}=$.useRef(Ee!=null),qe=$.useRef(),Ze=$.useCallback(Ve=>{},[]),We=mo(qe,k,x.ref,Ze),[ut,st]=$.useState(!1),mt=Ov(),Rt=Ux({props:r,muiFormControl:mt,states:["color","disabled","error","hiddenLabel","size","required","filled"]});Rt.focused=mt?mt.focused:ut,$.useEffect(()=>{!mt&&f&&ut&&(st(!1),N&&N())},[mt,f,ut,N]);const Vt=mt&&mt.onFilled,Ot=mt&&mt.onEmpty,vt=$.useCallback(Ve=>{g9(Ve)?Vt&&Vt():Ot&&Ot()},[Vt,Ot]);wc(()=>{je&&vt({value:Ee})},[Ee,vt,je]);const wn=Ve=>{B&&B(Ve),x.onFocus&&x.onFocus(Ve),mt&&mt.onFocus?mt.onFocus(Ve):st(!0)},Ce=Ve=>{N&&N(Ve),x.onBlur&&x.onBlur(Ve),mt&&mt.onBlur?mt.onBlur(Ve):st(!1)},ge=(Ve,...gt)=>{if(!je){const $t=Ve.target||qe.current;if($t==null)throw new Error(kv(1));vt({value:$t.value})}x.onChange&&x.onChange(Ve,...gt),P&&P(Ve,...gt)};$.useEffect(()=>{vt(qe.current)},[]);const pe=Ve=>{qe.current&&Ve.currentTarget===Ve.target&&qe.current.focus(),O&&O(Ve)};let ne=y,ae=x;A&&ne==="input"&&(Q?ae={type:void 0,minRows:Q,maxRows:Q,...ae}:ae={type:void 0,maxRows:R,minRows:E,...ae},ne=rHe);const ue=Ve=>{vt(Ve.animationName==="mui-auto-fill-cancel"?qe.current:{value:"x"})};$.useEffect(()=>{mt&&mt.setAdornedStart(!!le)},[mt,le]);const de={...r,color:Rt.color||"primary",disabled:Rt.disabled,endAdornment:g,error:Rt.error,focused:Rt.focused,formControl:mt,fullWidth:_,hiddenLabel:Rt.hiddenLabel,multiline:A,size:Rt.size,startAdornment:le,type:ke},Se=aHe(de),Ie=ee.root||u.Root||LW,nt=K.root||d.root||{},Oe=ee.input||u.Input||DW;return ae={...ae,...K.input??d.input},C.jsxs($.Fragment,{children:[!p&&typeof Qde=="function"&&(Zde||(Zde=C.jsx(Qde,{}))),C.jsxs(Ie,{...nt,ref:n,onClick:pe,...me,...!dv(Ie)&&{ownerState:{...de,...nt.ownerState}},className:dt(Se.root,nt.className,l,Y&&"MuiInputBase-readOnly"),children:[le,C.jsx(SW.Provider,{value:null,children:C.jsx(Oe,{"aria-invalid":Rt.error,"aria-describedby":s,autoComplete:o,autoFocus:a,defaultValue:h,disabled:Rt.disabled,id:b,onAnimationStart:ue,name:M,placeholder:H,readOnly:Y,required:Rt.required,rows:Q,value:Ee,onKeyDown:j,onKeyUp:z,type:ke,...ae,...!dv(Oe)&&{as:ne,ownerState:{...de,...ae.ownerState}},ref:We,className:dt(Se.input,ae.className,Y&&"MuiInputBase-readOnly"),onBlur:Ce,onChange:ge,onFocus:wn})}),g,X?X({...Rt,startAdornment:le}):null]})]})});function lHe(i){return Xt("MuiInput",i)}const sy={...qd,...Yt("MuiInput",["root","underline","input"])};function cHe(i){return Xt("MuiOutlinedInput",i)}const Qh={...qd,...Yt("MuiOutlinedInput",["root","notchedOutline","input"])};function uHe(i){return Xt("MuiFilledInput",i)}const Kd={...qd,...Yt("MuiFilledInput",["root","underline","input","adornedStart","adornedEnd","sizeSmall","multiline","hiddenLabel"])},Jke=Hr(C.jsx("path",{d:"M7 10l5 5 5-5z"}));function dHe(i){return Xt("MuiAutocomplete",i)}const Hi=Yt("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]);var Jde,ehe;const hHe=i=>{const{classes:e,disablePortal:n,expanded:r,focused:s,fullWidth:o,hasClearIcon:a,hasPopupIcon:l,inputFocused:c,popupOpen:u,size:d}=i,h={root:["root",r&&"expanded",s&&"focused",o&&"fullWidth",a&&"hasClearIcon",l&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",c&&"inputFocused"],tag:["tag",`tagSize${Ue(d)}`],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",u&&"popupIndicatorOpen"],popper:["popper",n&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return Zt(h,dHe,e)},fHe=ye("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i,{fullWidth:r,hasClearIcon:s,hasPopupIcon:o,inputFocused:a,size:l}=n;return[{[`& .${Hi.tag}`]:e.tag},{[`& .${Hi.tag}`]:e[`tagSize${Ue(l)}`]},{[`& .${Hi.inputRoot}`]:e.inputRoot},{[`& .${Hi.input}`]:e.input},{[`& .${Hi.input}`]:a&&e.inputFocused},e.root,r&&e.fullWidth,o&&e.hasPopupIcon,s&&e.hasClearIcon]}})({[`&.${Hi.focused} .${Hi.clearIndicator}`]:{visibility:"visible"},"@media (pointer: fine)":{[`&:hover .${Hi.clearIndicator}`]:{visibility:"visible"}},[`& .${Hi.tag}`]:{margin:3,maxWidth:"calc(100% - 6px)"},[`& .${Hi.inputRoot}`]:{[`.${Hi.hasPopupIcon}&, .${Hi.hasClearIcon}&`]:{paddingRight:30},[`.${Hi.hasPopupIcon}.${Hi.hasClearIcon}&`]:{paddingRight:56},[`& .${Hi.input}`]:{width:0,minWidth:30}},[`& .${sy.root}`]:{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}},[`& .${sy.root}.${qd.sizeSmall}`]:{[`& .${sy.input}`]:{padding:"2px 4px 3px 0"}},[`& .${Qh.root}`]:{padding:9,[`.${Hi.hasPopupIcon}&, .${Hi.hasClearIcon}&`]:{paddingRight:39},[`.${Hi.hasPopupIcon}.${Hi.hasClearIcon}&`]:{paddingRight:65},[`& .${Hi.input}`]:{padding:"7.5px 4px 7.5px 5px"},[`& .${Hi.endAdornment}`]:{right:9}},[`& .${Qh.root}.${qd.sizeSmall}`]:{paddingTop:6,paddingBottom:6,paddingLeft:6,[`& .${Hi.input}`]:{padding:"2.5px 4px 2.5px 8px"}},[`& .${Kd.root}`]:{paddingTop:19,paddingLeft:8,[`.${Hi.hasPopupIcon}&, .${Hi.hasClearIcon}&`]:{paddingRight:39},[`.${Hi.hasPopupIcon}.${Hi.hasClearIcon}&`]:{paddingRight:65},[`& .${Kd.input}`]:{padding:"7px 4px"},[`& .${Hi.endAdornment}`]:{right:9}},[`& .${Kd.root}.${qd.sizeSmall}`]:{paddingBottom:1,[`& .${Kd.input}`]:{padding:"2.5px 4px"}},[`& .${qd.hiddenLabel}`]:{paddingTop:8},[`& .${Kd.root}.${qd.hiddenLabel}`]:{paddingTop:0,paddingBottom:0,[`& .${Hi.input}`]:{paddingTop:16,paddingBottom:17}},[`& .${Kd.root}.${qd.hiddenLabel}.${qd.sizeSmall}`]:{[`& .${Hi.input}`]:{paddingTop:8,paddingBottom:9}},[`& .${Hi.input}`]:{flexGrow:1,textOverflow:"ellipsis",opacity:0},variants:[{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{[`& .${Hi.tag}`]:{margin:2,maxWidth:"calc(100% - 4px)"}}},{props:{inputFocused:!0},style:{[`& .${Hi.input}`]:{opacity:1}}},{props:{multiple:!0},style:{[`& .${Hi.inputRoot}`]:{flexWrap:"wrap"}}}]}),pHe=ye("div",{name:"MuiAutocomplete",slot:"EndAdornment"})({position:"absolute",right:0,top:"50%",transform:"translate(0, -50%)"}),gHe=ye(Ga,{name:"MuiAutocomplete",slot:"ClearIndicator"})({marginRight:-2,padding:4,visibility:"hidden"}),mHe=ye(Ga,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.popupIndicator,n.popupOpen&&e.popupIndicatorOpen]}})({padding:2,marginRight:-2,variants:[{props:{popupOpen:!0},style:{transform:"rotate(180deg)"}}]}),_He=ye(CW,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`& .${Hi.option}`]:e.option},e.popper,n.disablePortal&&e.popperDisablePortal]}})(jt(({theme:i})=>({zIndex:(i.vars||i).zIndex.modal,variants:[{props:{disablePortal:!0},style:{position:"absolute"}}]}))),vHe=ye(du,{name:"MuiAutocomplete",slot:"Paper"})(jt(({theme:i})=>({...i.typography.body1,overflow:"auto"}))),bHe=ye("div",{name:"MuiAutocomplete",slot:"Loading"})(jt(({theme:i})=>({color:(i.vars||i).palette.text.secondary,padding:"14px 16px"}))),yHe=ye("div",{name:"MuiAutocomplete",slot:"NoOptions"})(jt(({theme:i})=>({color:(i.vars||i).palette.text.secondary,padding:"14px 16px"}))),wHe=ye("ul",{name:"MuiAutocomplete",slot:"Listbox"})(jt(({theme:i})=>({listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative",[`& .${Hi.option}`]:{minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16,[i.breakpoints.up("sm")]:{minHeight:"auto"},[`&.${Hi.focused}`]:{backgroundColor:(i.vars||i).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},'&[aria-disabled="true"]':{opacity:(i.vars||i).palette.action.disabledOpacity,pointerEvents:"none"},[`&.${Hi.focusVisible}`]:{backgroundColor:(i.vars||i).palette.action.focus},'&[aria-selected="true"]':{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity),[`&.${Hi.focused}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(i.vars||i).palette.action.selected}},[`&.${Hi.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity+i.palette.action.focusOpacity)}}}}))),CHe=ye(TZ,{name:"MuiAutocomplete",slot:"GroupLabel"})(jt(({theme:i})=>({backgroundColor:(i.vars||i).palette.background.paper,top:-8}))),SHe=ye("ul",{name:"MuiAutocomplete",slot:"GroupUl"})({padding:0,[`& .${Hi.option}`]:{paddingLeft:24}}),eLe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiAutocomplete"}),{autoComplete:s=!1,autoHighlight:o=!1,autoSelect:a=!1,blurOnSelect:l=!1,ChipProps:c,className:u,clearIcon:d=Jde||(Jde=C.jsx($ke,{fontSize:"small"})),clearOnBlur:h=!r.freeSolo,clearOnEscape:f=!1,clearText:p="Clear",closeText:g="Close",componentsProps:m,defaultValue:_=r.multiple?[]:null,disableClearable:b=!1,disableCloseOnSelect:y=!1,disabled:x=!1,disabledItemsFocusable:k=!1,disableListWrap:D=!1,disablePortal:R=!1,filterOptions:E,filterSelectedOptions:A=!1,forcePopupIcon:M="auto",freeSolo:N=!1,fullWidth:P=!1,getLimitTagsText:O=Yi=>`+${Yi}`,getOptionDisabled:B,getOptionKey:j,getOptionLabel:z,isOptionEqualToValue:H,groupBy:Y,handleHomeEndKeys:X=!r.freeSolo,id:Q,includeInputInList:ie=!1,inputValue:K,limitTags:ee=-1,ListboxComponent:le,ListboxProps:ke,loading:xe=!1,loadingText:me="Loading…",multiple:Ee=!1,noOptionsText:je="No options",onChange:qe,onClose:Ze,onHighlightChange:We,onInputChange:ut,onOpen:st,open:mt,openOnFocus:Rt=!1,openText:Vt="Open",options:Ot,PaperComponent:vt,PopperComponent:wn,popupIcon:Ce=ehe||(ehe=C.jsx(Jke,{})),readOnly:ge=!1,renderGroup:pe,renderInput:ne,renderOption:ae,renderTags:ue,renderValue:de,selectOnFocus:Se=!r.freeSolo,size:Ie="medium",slots:nt={},slotProps:Oe={},value:Ve,...gt}=r,{getRootProps:$t,getInputProps:Mt,getInputLabelProps:Bt,getPopupIndicatorProps:jn,getClearProps:Dt,getItemProps:Fn,getListboxProps:tn,getOptionProps:pi,value:Pi,dirty:ti,expanded:mi,id:ds,popupOpen:Nr,focused:Br,focusedItem:Mn,anchorEl:hr,setAnchorEl:rn,inputValue:sn,groupedOptions:Kn}=Aze({...r,componentName:"Autocomplete"}),ai=!b&&!x&&ti&&!ge,Ki=(!N||M===!0)&&M!==!1,{onMouseDown:so}=Mt(),{ref:_o,...Cs}=tn(),yl=z||(Yi=>Yi.label??Yi),qs={...r,disablePortal:R,expanded:mi,focused:Br,fullWidth:P,getOptionLabel:yl,hasClearIcon:ai,hasPopupIcon:Ki,inputFocused:Mn===-1,popupOpen:Nr,size:Ie},Ks=hHe(qs),ma={slots:{paper:vt,popper:wn,...nt},slotProps:{chip:c,listbox:ke,...m,...Oe}},[yn,Pe]=an("listbox",{elementType:wHe,externalForwardedProps:ma,ownerState:qs,className:Ks.listbox,additionalProps:Cs,ref:_o}),[De,Ne]=an("paper",{elementType:du,externalForwardedProps:ma,ownerState:qs,className:Ks.paper}),[At,En]=an("popper",{elementType:CW,externalForwardedProps:ma,ownerState:qs,className:Ks.popper,additionalProps:{disablePortal:R,style:{width:hr?hr.clientWidth:null},role:"presentation",anchorEl:hr,open:Nr}});let bn;const Yn=Yi=>({className:Ks.tag,disabled:x,...Fn(Yi)});if(Ee?Pi.length>0&&(ue?bn=ue(Pi,Yn,qs):de?bn=de(Pi,Yn,qs):bn=Pi.map((Yi,Ic)=>{const{key:Uo,...__}=Yn({index:Ic});return C.jsx(JS,{label:yl(Yi),size:Ie,...__,...ma.slotProps.chip},Uo)})):de&&Pi!=null&&(bn=de(Pi,Yn,qs)),ee>-1&&Array.isArray(bn)){const Yi=bn.length-ee;!Br&&Yi>0&&(bn=bn.splice(0,ee),bn.push(C.jsx("span",{className:Ks.tag,children:O(Yi)},bn.length)))}const Ei=pe||(Yi=>C.jsxs("li",{children:[C.jsx(CHe,{className:Ks.groupLabel,ownerState:qs,component:"div",children:Yi.group}),C.jsx(SHe,{className:Ks.groupUl,ownerState:qs,children:Yi.children})]},Yi.key)),Xv=ae||((Yi,Ic)=>{const{key:Uo,...__}=Yi;return C.jsx("li",{...__,children:yl(Ic)},Uo)}),lw=(Yi,Ic)=>{const Uo=pi({option:Yi,index:Ic});return Xv({...Uo,className:Ks.option},Yi,{selected:Uo["aria-selected"],index:Ic,inputValue:sn},qs)},Dh=ma.slotProps.clearIndicator,m_=ma.slotProps.popupIndicator;return C.jsxs($.Fragment,{children:[C.jsx(fHe,{ref:n,className:dt(Ks.root,u),ownerState:qs,...$t(gt),children:ne({id:ds,disabled:x,fullWidth:!0,size:Ie==="small"?"small":void 0,InputLabelProps:Bt(),InputProps:{ref:rn,className:Ks.inputRoot,startAdornment:bn,onMouseDown:Yi=>{Yi.target===Yi.currentTarget&&so(Yi)},...(ai||Ki)&&{endAdornment:C.jsxs(pHe,{className:Ks.endAdornment,ownerState:qs,children:[ai?C.jsx(gHe,{...Dt(),"aria-label":p,title:p,ownerState:qs,...Dh,className:dt(Ks.clearIndicator,Dh==null?void 0:Dh.className),children:d}):null,Ki?C.jsx(mHe,{...jn(),disabled:x,"aria-label":Nr?g:Vt,title:Nr?g:Vt,ownerState:qs,...m_,className:dt(Ks.popupIndicator,m_==null?void 0:m_.className),children:Ce}):null]})}},inputProps:{className:Ks.input,disabled:x,readOnly:ge,...Mt()}})}),hr?C.jsx(_He,{as:At,...En,children:C.jsxs(vHe,{as:De,...Ne,children:[xe&&Kn.length===0?C.jsx(bHe,{className:Ks.loading,ownerState:qs,children:me}):null,Kn.length===0&&!N&&!xe?C.jsx(yHe,{className:Ks.noOptions,ownerState:qs,role:"presentation",onMouseDown:Yi=>{Yi.preventDefault()},children:je}):null,Kn.length>0?C.jsx(yn,{as:le,...Pe,children:Kn.map((Yi,Ic)=>Y?Ei({key:Yi.key,group:Yi.group,children:Yi.options.map((Uo,__)=>lw(Uo,Yi.index+__))}):lw(Yi,Ic))}):null]})}):null]})}),xHe={entering:{opacity:1},entered:{opacity:1}},RZ=$.forwardRef(function(e,n){const r=$i(),s={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{addEndListener:o,appear:a=!0,children:l,easing:c,in:u,onEnter:d,onEntered:h,onEntering:f,onExit:p,onExited:g,onExiting:m,style:_,timeout:b=s,TransitionComponent:y=Nf,...x}=e,k=$.useRef(null),D=mo(k,Hx(l),n),R=j=>z=>{if(j){const H=k.current;z===void 0?j(H):j(H,z)}},E=R(f),A=R((j,z)=>{Vre(j);const H=s1({style:_,timeout:b,easing:c},{mode:"enter"});j.style.webkitTransition=r.transitions.create("opacity",H),j.style.transition=r.transitions.create("opacity",H),d&&d(j,z)}),M=R(h),N=R(m),P=R(j=>{const z=s1({style:_,timeout:b,easing:c},{mode:"exit"});j.style.webkitTransition=r.transitions.create("opacity",z),j.style.transition=r.transitions.create("opacity",z),p&&p(j)}),O=R(g),B=j=>{o&&o(k.current,j)};return C.jsx(y,{appear:a,in:u,nodeRef:k,onEnter:A,onEntered:M,onEntering:E,onExit:P,onExited:O,onExiting:N,addEndListener:B,timeout:b,...x,children:(j,{ownerState:z,...H})=>$.cloneElement(l,{style:{opacity:0,visibility:j==="exited"&&!u?"hidden":void 0,...xHe[j],..._,...l.props.style},ref:D,...H})})});function kHe(i){return Xt("MuiBackdrop",i)}Yt("MuiBackdrop",["root","invisible"]);const LHe=i=>{const{classes:e,invisible:n}=i;return Zt({root:["root",n&&"invisible"]},kHe,e)},DHe=ye("div",{name:"MuiBackdrop",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.invisible&&e.invisible]}})({position:"fixed",display:"flex",alignItems:"center",justifyContent:"center",right:0,bottom:0,top:0,left:0,backgroundColor:"rgba(0, 0, 0, 0.5)",WebkitTapHighlightColor:"transparent",variants:[{props:{invisible:!0},style:{backgroundColor:"transparent"}}]}),tLe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiBackdrop"}),{children:s,className:o,component:a="div",invisible:l=!1,open:c,components:u={},componentsProps:d={},slotProps:h={},slots:f={},TransitionComponent:p,transitionDuration:g,...m}=r,_={...r,component:a,invisible:l},b=LHe(_),y={transition:p,root:u.Root,...f},x={...d,...h},k={component:a,slots:y,slotProps:x},[D,R]=an("root",{elementType:DHe,externalForwardedProps:k,className:dt(b.root,o),ownerState:_}),[E,A]=an("transition",{elementType:RZ,externalForwardedProps:k,ownerState:_});return C.jsx(E,{in:c,timeout:g,...m,...A,children:C.jsx(D,{"aria-hidden":!0,...R,classes:b,ref:n,children:s})})}),EHe=Yt("MuiBox",["root"]),IHe=a5(),Ye=hke({themeId:Bp,defaultTheme:IHe,defaultClassName:EHe.root,generateClassName:Rre.generate});function THe(i){return Xt("MuiButton",i)}const eC=Yt("MuiButton",["root","text","textInherit","textPrimary","textSecondary","textSuccess","textError","textInfo","textWarning","outlined","outlinedInherit","outlinedPrimary","outlinedSecondary","outlinedSuccess","outlinedError","outlinedInfo","outlinedWarning","contained","containedInherit","containedPrimary","containedSecondary","containedSuccess","containedError","containedInfo","containedWarning","disableElevation","focusVisible","disabled","colorInherit","colorPrimary","colorSecondary","colorSuccess","colorError","colorInfo","colorWarning","textSizeSmall","textSizeMedium","textSizeLarge","outlinedSizeSmall","outlinedSizeMedium","outlinedSizeLarge","containedSizeSmall","containedSizeMedium","containedSizeLarge","sizeMedium","sizeSmall","sizeLarge","fullWidth","startIcon","endIcon","icon","iconSizeSmall","iconSizeMedium","iconSizeLarge","loading","loadingWrapper","loadingIconPlaceholder","loadingIndicator","loadingPositionCenter","loadingPositionStart","loadingPositionEnd"]),nLe=$.createContext({}),iLe=$.createContext(void 0),RHe=i=>{const{color:e,disableElevation:n,fullWidth:r,size:s,variant:o,loading:a,loadingPosition:l,classes:c}=i,u={root:["root",a&&"loading",o,`${o}${Ue(e)}`,`size${Ue(s)}`,`${o}Size${Ue(s)}`,`color${Ue(e)}`,n&&"disableElevation",r&&"fullWidth",a&&`loadingPosition${Ue(l)}`],startIcon:["icon","startIcon",`iconSize${Ue(s)}`],endIcon:["icon","endIcon",`iconSize${Ue(s)}`],loadingIndicator:["loadingIndicator"],loadingWrapper:["loadingWrapper"]},d=Zt(u,THe,c);return{...c,...d}},rLe=[{props:{size:"small"},style:{"& > *:nth-of-type(1)":{fontSize:18}}},{props:{size:"medium"},style:{"& > *:nth-of-type(1)":{fontSize:20}}},{props:{size:"large"},style:{"& > *:nth-of-type(1)":{fontSize:22}}}],AHe=ye(ud,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiButton",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],e[`${n.variant}${Ue(n.color)}`],e[`size${Ue(n.size)}`],e[`${n.variant}Size${Ue(n.size)}`],n.color==="inherit"&&e.colorInherit,n.disableElevation&&e.disableElevation,n.fullWidth&&e.fullWidth,n.loading&&e.loading]}})(jt(({theme:i})=>{const e=i.palette.mode==="light"?i.palette.grey[300]:i.palette.grey[800],n=i.palette.mode==="light"?i.palette.grey.A100:i.palette.grey[700];return{...i.typography.button,minWidth:64,padding:"6px 16px",border:0,borderRadius:(i.vars||i).shape.borderRadius,transition:i.transitions.create(["background-color","box-shadow","border-color","color"],{duration:i.transitions.duration.short}),"&:hover":{textDecoration:"none"},[`&.${eC.disabled}`]:{color:(i.vars||i).palette.action.disabled},variants:[{props:{variant:"contained"},style:{color:"var(--variant-containedColor)",backgroundColor:"var(--variant-containedBg)",boxShadow:(i.vars||i).shadows[2],"&:hover":{boxShadow:(i.vars||i).shadows[4],"@media (hover: none)":{boxShadow:(i.vars||i).shadows[2]}},"&:active":{boxShadow:(i.vars||i).shadows[8]},[`&.${eC.focusVisible}`]:{boxShadow:(i.vars||i).shadows[6]},[`&.${eC.disabled}`]:{color:(i.vars||i).palette.action.disabled,boxShadow:(i.vars||i).shadows[0],backgroundColor:(i.vars||i).palette.action.disabledBackground}}},{props:{variant:"outlined"},style:{padding:"5px 15px",border:"1px solid currentColor",borderColor:"var(--variant-outlinedBorder, currentColor)",backgroundColor:"var(--variant-outlinedBg)",color:"var(--variant-outlinedColor)",[`&.${eC.disabled}`]:{border:`1px solid ${(i.vars||i).palette.action.disabledBackground}`}}},{props:{variant:"text"},style:{padding:"6px 8px",color:"var(--variant-textColor)",backgroundColor:"var(--variant-textBg)"}},...Object.entries(i.palette).filter(br()).map(([r])=>({props:{color:r},style:{"--variant-textColor":(i.vars||i).palette[r].main,"--variant-outlinedColor":(i.vars||i).palette[r].main,"--variant-outlinedBorder":i.vars?`rgba(${i.vars.palette[r].mainChannel} / 0.5)`:Pt(i.palette[r].main,.5),"--variant-containedColor":(i.vars||i).palette[r].contrastText,"--variant-containedBg":(i.vars||i).palette[r].main,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":(i.vars||i).palette[r].dark,"--variant-textBg":i.vars?`rgba(${i.vars.palette[r].mainChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette[r].main,i.palette.action.hoverOpacity),"--variant-outlinedBorder":(i.vars||i).palette[r].main,"--variant-outlinedBg":i.vars?`rgba(${i.vars.palette[r].mainChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette[r].main,i.palette.action.hoverOpacity)}}}})),{props:{color:"inherit"},style:{color:"inherit",borderColor:"currentColor","--variant-containedBg":i.vars?i.vars.palette.Button.inheritContainedBg:e,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":i.vars?i.vars.palette.Button.inheritContainedHoverBg:n,"--variant-textBg":i.vars?`rgba(${i.vars.palette.text.primaryChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette.text.primary,i.palette.action.hoverOpacity),"--variant-outlinedBg":i.vars?`rgba(${i.vars.palette.text.primaryChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette.text.primary,i.palette.action.hoverOpacity)}}}},{props:{size:"small",variant:"text"},style:{padding:"4px 5px",fontSize:i.typography.pxToRem(13)}},{props:{size:"large",variant:"text"},style:{padding:"8px 11px",fontSize:i.typography.pxToRem(15)}},{props:{size:"small",variant:"outlined"},style:{padding:"3px 9px",fontSize:i.typography.pxToRem(13)}},{props:{size:"large",variant:"outlined"},style:{padding:"7px 21px",fontSize:i.typography.pxToRem(15)}},{props:{size:"small",variant:"contained"},style:{padding:"4px 10px",fontSize:i.typography.pxToRem(13)}},{props:{size:"large",variant:"contained"},style:{padding:"8px 22px",fontSize:i.typography.pxToRem(15)}},{props:{disableElevation:!0},style:{boxShadow:"none","&:hover":{boxShadow:"none"},[`&.${eC.focusVisible}`]:{boxShadow:"none"},"&:active":{boxShadow:"none"},[`&.${eC.disabled}`]:{boxShadow:"none"}}},{props:{fullWidth:!0},style:{width:"100%"}},{props:{loadingPosition:"center"},style:{transition:i.transitions.create(["background-color","box-shadow","border-color"],{duration:i.transitions.duration.short}),[`&.${eC.loading}`]:{color:"transparent"}}}]}})),NHe=ye("span",{name:"MuiButton",slot:"StartIcon",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.startIcon,n.loading&&e.startIconLoadingStart,e[`iconSize${Ue(n.size)}`]]}})(({theme:i})=>({display:"inherit",marginRight:8,marginLeft:-4,variants:[{props:{size:"small"},style:{marginLeft:-2}},{props:{loadingPosition:"start",loading:!0},style:{transition:i.transitions.create(["opacity"],{duration:i.transitions.duration.short}),opacity:0}},{props:{loadingPosition:"start",loading:!0,fullWidth:!0},style:{marginRight:-8}},...rLe]})),MHe=ye("span",{name:"MuiButton",slot:"EndIcon",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.endIcon,n.loading&&e.endIconLoadingEnd,e[`iconSize${Ue(n.size)}`]]}})(({theme:i})=>({display:"inherit",marginRight:-4,marginLeft:8,variants:[{props:{size:"small"},style:{marginRight:-2}},{props:{loadingPosition:"end",loading:!0},style:{transition:i.transitions.create(["opacity"],{duration:i.transitions.duration.short}),opacity:0}},{props:{loadingPosition:"end",loading:!0,fullWidth:!0},style:{marginLeft:-8}},...rLe]})),PHe=ye("span",{name:"MuiButton",slot:"LoadingIndicator"})(({theme:i})=>({display:"none",position:"absolute",visibility:"visible",variants:[{props:{loading:!0},style:{display:"flex"}},{props:{loadingPosition:"start"},style:{left:14}},{props:{loadingPosition:"start",size:"small"},style:{left:10}},{props:{variant:"text",loadingPosition:"start"},style:{left:6}},{props:{loadingPosition:"center"},style:{left:"50%",transform:"translate(-50%)",color:(i.vars||i).palette.action.disabled}},{props:{loadingPosition:"end"},style:{right:14}},{props:{loadingPosition:"end",size:"small"},style:{right:10}},{props:{variant:"text",loadingPosition:"end"},style:{right:6}},{props:{loadingPosition:"start",fullWidth:!0},style:{position:"relative",left:-10}},{props:{loadingPosition:"end",fullWidth:!0},style:{position:"relative",right:-10}}]})),the=ye("span",{name:"MuiButton",slot:"LoadingIconPlaceholder"})({display:"inline-block",width:"1em",height:"1em"}),Ci=$.forwardRef(function(e,n){const r=$.useContext(nLe),s=$.useContext(iLe),o=mE(r,e),a=Qt({props:o,name:"MuiButton"}),{children:l,color:c="primary",component:u="button",className:d,disabled:h=!1,disableElevation:f=!1,disableFocusRipple:p=!1,endIcon:g,focusVisibleClassName:m,fullWidth:_=!1,id:b,loading:y=null,loadingIndicator:x,loadingPosition:k="center",size:D="medium",startIcon:R,type:E,variant:A="text",...M}=a,N=W1(b),P=x??C.jsx(c5,{"aria-labelledby":N,color:"inherit",size:16}),O={...a,color:c,component:u,disabled:h,disableElevation:f,disableFocusRipple:p,fullWidth:_,loading:y,loadingIndicator:P,loadingPosition:k,size:D,type:E,variant:A},B=RHe(O),j=(R||y&&k==="start")&&C.jsx(NHe,{className:B.startIcon,ownerState:O,children:R||C.jsx(the,{className:B.loadingIconPlaceholder,ownerState:O})}),z=(g||y&&k==="end")&&C.jsx(MHe,{className:B.endIcon,ownerState:O,children:g||C.jsx(the,{className:B.loadingIconPlaceholder,ownerState:O})}),H=s||"",Y=typeof y=="boolean"?C.jsx("span",{className:B.loadingWrapper,style:{display:"contents"},children:y&&C.jsx(PHe,{className:B.loadingIndicator,ownerState:O,children:P})}):null;return C.jsxs(AHe,{ownerState:O,className:dt(r.className,B.root,d,H),component:u,disabled:h||y,focusRipple:!p,focusVisibleClassName:dt(B.focusVisible,m),ref:n,type:E,id:y?N:b,...M,classes:B,children:[j,k!=="end"&&Y,l,k==="end"&&Y,z]})});function sLe(i){return $.Children.toArray(i).filter(e=>$.isValidElement(e))}function OHe(i){return Xt("MuiButtonGroup",i)}const ji=Yt("MuiButtonGroup",["root","contained","outlined","text","disableElevation","disabled","firstButton","fullWidth","horizontal","vertical","colorPrimary","colorSecondary","grouped","groupedHorizontal","groupedVertical","groupedText","groupedTextHorizontal","groupedTextVertical","groupedTextPrimary","groupedTextSecondary","groupedOutlined","groupedOutlinedHorizontal","groupedOutlinedVertical","groupedOutlinedPrimary","groupedOutlinedSecondary","groupedContained","groupedContainedHorizontal","groupedContainedVertical","groupedContainedPrimary","groupedContainedSecondary","lastButton","middleButton"]),FHe=(i,e)=>{const{ownerState:n}=i;return[{[`& .${ji.grouped}`]:e.grouped},{[`& .${ji.grouped}`]:e[`grouped${Ue(n.orientation)}`]},{[`& .${ji.grouped}`]:e[`grouped${Ue(n.variant)}`]},{[`& .${ji.grouped}`]:e[`grouped${Ue(n.variant)}${Ue(n.orientation)}`]},{[`& .${ji.grouped}`]:e[`grouped${Ue(n.variant)}${Ue(n.color)}`]},{[`& .${ji.firstButton}`]:e.firstButton},{[`& .${ji.lastButton}`]:e.lastButton},{[`& .${ji.middleButton}`]:e.middleButton},e.root,e[n.variant],n.disableElevation===!0&&e.disableElevation,n.fullWidth&&e.fullWidth,n.orientation==="vertical"&&e.vertical]},BHe=i=>{const{classes:e,color:n,disabled:r,disableElevation:s,fullWidth:o,orientation:a,variant:l}=i,c={root:["root",l,a,o&&"fullWidth",s&&"disableElevation",`color${Ue(n)}`],grouped:["grouped",`grouped${Ue(a)}`,`grouped${Ue(l)}`,`grouped${Ue(l)}${Ue(a)}`,`grouped${Ue(l)}${Ue(n)}`,r&&"disabled"],firstButton:["firstButton"],lastButton:["lastButton"],middleButton:["middleButton"]};return Zt(c,OHe,e)},jHe=ye("div",{name:"MuiButtonGroup",slot:"Root",overridesResolver:FHe})(jt(({theme:i})=>({display:"inline-flex",borderRadius:(i.vars||i).shape.borderRadius,variants:[{props:{variant:"contained"},style:{boxShadow:(i.vars||i).shadows[2]}},{props:{disableElevation:!0},style:{boxShadow:"none"}},{props:{fullWidth:!0},style:{width:"100%"}},{props:{orientation:"vertical"},style:{flexDirection:"column",[`& .${ji.lastButton},& .${ji.middleButton}`]:{borderTopRightRadius:0,borderTopLeftRadius:0},[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderBottomRightRadius:0,borderBottomLeftRadius:0}}},{props:{orientation:"horizontal"},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderTopRightRadius:0,borderBottomRightRadius:0},[`& .${ji.lastButton},& .${ji.middleButton}`]:{borderTopLeftRadius:0,borderBottomLeftRadius:0}}},{props:{variant:"text",orientation:"horizontal"},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderRight:i.vars?`1px solid rgba(${i.vars.palette.common.onBackgroundChannel} / 0.23)`:`1px solid ${i.palette.mode==="light"?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)"}`,[`&.${ji.disabled}`]:{borderRight:`1px solid ${(i.vars||i).palette.action.disabled}`}}}},{props:{variant:"text",orientation:"vertical"},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderBottom:i.vars?`1px solid rgba(${i.vars.palette.common.onBackgroundChannel} / 0.23)`:`1px solid ${i.palette.mode==="light"?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)"}`,[`&.${ji.disabled}`]:{borderBottom:`1px solid ${(i.vars||i).palette.action.disabled}`}}}},...Object.entries(i.palette).filter(br()).flatMap(([e])=>[{props:{variant:"text",color:e},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / 0.5)`:Pt(i.palette[e].main,.5)}}}]),{props:{variant:"outlined",orientation:"horizontal"},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderRightColor:"transparent","&:hover":{borderRightColor:"currentColor"}},[`& .${ji.lastButton},& .${ji.middleButton}`]:{marginLeft:-1}}},{props:{variant:"outlined",orientation:"vertical"},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderBottomColor:"transparent","&:hover":{borderBottomColor:"currentColor"}},[`& .${ji.lastButton},& .${ji.middleButton}`]:{marginTop:-1}}},{props:{variant:"contained",orientation:"horizontal"},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderRight:`1px solid ${(i.vars||i).palette.grey[400]}`,[`&.${ji.disabled}`]:{borderRight:`1px solid ${(i.vars||i).palette.action.disabled}`}}}},{props:{variant:"contained",orientation:"vertical"},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderBottom:`1px solid ${(i.vars||i).palette.grey[400]}`,[`&.${ji.disabled}`]:{borderBottom:`1px solid ${(i.vars||i).palette.action.disabled}`}}}},...Object.entries(i.palette).filter(br(["dark"])).map(([e])=>({props:{variant:"contained",color:e},style:{[`& .${ji.firstButton},& .${ji.middleButton}`]:{borderColor:(i.vars||i).palette[e].dark}}}))],[`& .${ji.grouped}`]:{minWidth:40,boxShadow:"none",props:{variant:"contained"},style:{"&:hover":{boxShadow:"none"}}}}))),WHe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiButtonGroup"}),{children:s,className:o,color:a="primary",component:l="div",disabled:c=!1,disableElevation:u=!1,disableFocusRipple:d=!1,disableRipple:h=!1,fullWidth:f=!1,orientation:p="horizontal",size:g="medium",variant:m="outlined",..._}=r,b={...r,color:a,component:l,disabled:c,disableElevation:u,disableFocusRipple:d,disableRipple:h,fullWidth:f,orientation:p,size:g,variant:m},y=BHe(b),x=$.useMemo(()=>({className:y.grouped,color:a,disabled:c,disableElevation:u,disableFocusRipple:d,disableRipple:h,fullWidth:f,size:g,variant:m}),[a,c,u,d,h,f,g,m,y.grouped]),k=sLe(s),D=k.length,R=E=>{const A=E===0,M=E===D-1;return A&&M?"":A?y.firstButton:M?y.lastButton:y.middleButton};return C.jsx(jHe,{as:l,role:"group",className:dt(y.root,o),ref:n,ownerState:b,..._,children:C.jsx(nLe.Provider,{value:x,children:k.map((E,A)=>C.jsx(iLe.Provider,{value:R(A),children:E},A))})})});function $He(i){return Xt("MuiCard",i)}Yt("MuiCard",["root"]);const zHe=i=>{const{classes:e}=i;return Zt({root:["root"]},$He,e)},VHe=ye(du,{name:"MuiCard",slot:"Root"})({overflow:"hidden"}),Fv=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCard"}),{className:s,raised:o=!1,...a}=r,l={...r,raised:o},c=zHe(l);return C.jsx(VHe,{className:dt(c.root,s),elevation:o?8:void 0,ref:n,ownerState:l,...a})});function HHe(i){return Xt("MuiCardActionArea",i)}const fU=Yt("MuiCardActionArea",["root","focusVisible","focusHighlight"]),UHe=i=>{const{classes:e}=i;return Zt({root:["root"],focusHighlight:["focusHighlight"]},HHe,e)},qHe=ye(ud,{name:"MuiCardActionArea",slot:"Root"})(jt(({theme:i})=>({display:"block",textAlign:"inherit",borderRadius:"inherit",width:"100%",[`&:hover .${fU.focusHighlight}`]:{opacity:(i.vars||i).palette.action.hoverOpacity,"@media (hover: none)":{opacity:0}},[`&.${fU.focusVisible} .${fU.focusHighlight}`]:{opacity:(i.vars||i).palette.action.focusOpacity}}))),KHe=ye("span",{name:"MuiCardActionArea",slot:"FocusHighlight"})(jt(({theme:i})=>({overflow:"hidden",pointerEvents:"none",position:"absolute",top:0,right:0,bottom:0,left:0,borderRadius:"inherit",opacity:0,backgroundColor:"currentcolor",transition:i.transitions.create("opacity",{duration:i.transitions.duration.short})}))),GHe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCardActionArea"}),{children:s,className:o,focusVisibleClassName:a,slots:l={},slotProps:c={},...u}=r,d=r,h=UHe(d),f={slots:l,slotProps:c},[p,g]=an("root",{elementType:qHe,externalForwardedProps:{...f,...u},shouldForwardComponentProp:!0,ownerState:d,ref:n,className:dt(h.root,o),additionalProps:{focusVisibleClassName:dt(a,h.focusVisible)}}),[m,_]=an("focusHighlight",{elementType:KHe,externalForwardedProps:f,ownerState:d,ref:n,className:h.focusHighlight});return C.jsxs(p,{...g,children:[s,C.jsx(m,{..._})]})});function XHe(i){return Xt("MuiCardActions",i)}Yt("MuiCardActions",["root","spacing"]);const YHe=i=>{const{classes:e,disableSpacing:n}=i;return Zt({root:["root",!n&&"spacing"]},XHe,e)},ZHe=ye("div",{name:"MuiCardActions",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,!n.disableSpacing&&e.spacing]}})({display:"flex",alignItems:"center",padding:8,variants:[{props:{disableSpacing:!1},style:{"& > :not(style) ~ :not(style)":{marginLeft:8}}}]}),QHe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCardActions"}),{disableSpacing:s=!1,className:o,...a}=r,l={...r,disableSpacing:s},c=YHe(l);return C.jsx(ZHe,{className:dt(c.root,o),ownerState:l,ref:n,...a})});function JHe(i){return Xt("MuiCardContent",i)}Yt("MuiCardContent",["root"]);const eUe=i=>{const{classes:e}=i;return Zt({root:["root"]},JHe,e)},tUe=ye("div",{name:"MuiCardContent",slot:"Root"})({padding:16,"&:last-child":{paddingBottom:24}}),ex=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCardContent"}),{className:s,component:o="div",...a}=r,l={...r,component:o},c=eUe(l);return C.jsx(tUe,{as:o,className:dt(c.root,s),ownerState:l,ref:n,...a})});function nUe(i){return Xt("MuiCardHeader",i)}const m9=Yt("MuiCardHeader",["root","avatar","action","content","title","subheader"]),iUe=i=>{const{classes:e}=i;return Zt({root:["root"],avatar:["avatar"],action:["action"],content:["content"],title:["title"],subheader:["subheader"]},nUe,e)},rUe=ye("div",{name:"MuiCardHeader",slot:"Root",overridesResolver:(i,e)=>[{[`& .${m9.title}`]:e.title},{[`& .${m9.subheader}`]:e.subheader},e.root]})({display:"flex",alignItems:"center",padding:16}),sUe=ye("div",{name:"MuiCardHeader",slot:"Avatar"})({display:"flex",flex:"0 0 auto",marginRight:16}),oUe=ye("div",{name:"MuiCardHeader",slot:"Action"})({flex:"0 0 auto",alignSelf:"flex-start",marginTop:-4,marginRight:-8,marginBottom:-4}),aUe=ye("div",{name:"MuiCardHeader",slot:"Content"})({flex:"1 1 auto",[`.${f9.root}:where(& .${m9.title})`]:{display:"block"},[`.${f9.root}:where(& .${m9.subheader})`]:{display:"block"}}),h5=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCardHeader"}),{action:s,avatar:o,component:a="div",disableTypography:l=!1,subheader:c,subheaderTypographyProps:u,title:d,titleTypographyProps:h,slots:f={},slotProps:p={},...g}=r,m={...r,component:a,disableTypography:l},_=iUe(m),b={slots:f,slotProps:{title:h,subheader:u,...p}};let y=d;const[x,k]=an("title",{className:_.title,elementType:Je,externalForwardedProps:b,ownerState:m,additionalProps:{variant:o?"body2":"h5",component:"span"}});y!=null&&y.type!==Je&&!l&&(y=C.jsx(x,{...k,children:y}));let D=c;const[R,E]=an("subheader",{className:_.subheader,elementType:Je,externalForwardedProps:b,ownerState:m,additionalProps:{variant:o?"body2":"body1",color:"textSecondary",component:"span"}});D!=null&&D.type!==Je&&!l&&(D=C.jsx(R,{...E,children:D}));const[A,M]=an("root",{ref:n,className:_.root,elementType:rUe,externalForwardedProps:{...b,...g,component:a},ownerState:m}),[N,P]=an("avatar",{className:_.avatar,elementType:sUe,externalForwardedProps:b,ownerState:m}),[O,B]=an("content",{className:_.content,elementType:aUe,externalForwardedProps:b,ownerState:m}),[j,z]=an("action",{className:_.action,elementType:oUe,externalForwardedProps:b,ownerState:m});return C.jsxs(A,{...M,children:[o&&C.jsx(N,{...P,children:o}),C.jsxs(O,{...B,children:[y,D]}),s&&C.jsx(j,{...z,children:s})]})});function lUe(i){return Xt("MuiCardMedia",i)}Yt("MuiCardMedia",["root","media","img"]);const cUe=i=>{const{classes:e,isMediaComponent:n,isImageComponent:r}=i;return Zt({root:["root",n&&"media",r&&"img"]},lUe,e)},uUe=ye("div",{name:"MuiCardMedia",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i,{isMediaComponent:r,isImageComponent:s}=n;return[e.root,r&&e.media,s&&e.img]}})({display:"block",backgroundSize:"cover",backgroundRepeat:"no-repeat",backgroundPosition:"center",variants:[{props:{isMediaComponent:!0},style:{width:"100%"}},{props:{isImageComponent:!0},style:{objectFit:"cover"}}]}),dUe=["video","audio","picture","iframe","img"],hUe=["picture","img"],fUe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCardMedia"}),{children:s,className:o,component:a="div",image:l,src:c,style:u,...d}=r,h=dUe.includes(a),f=!h&&l?{backgroundImage:`url("${l}")`,...u}:u,p={...r,component:a,isMediaComponent:h,isImageComponent:hUe.includes(a)},g=cUe(p);return C.jsx(uUe,{className:dt(g.root,o),as:a,role:!h&&l?"img":void 0,ref:n,style:f,ownerState:p,src:h?l||c:void 0,...d,children:s})});function pUe(i){return Xt("PrivateSwitchBase",i)}Yt("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);const gUe=i=>{const{classes:e,checked:n,disabled:r,edge:s}=i,o={root:["root",n&&"checked",r&&"disabled",s&&`edge${Ue(s)}`],input:["input"]};return Zt(o,pUe,e)},mUe=ye(ud,{name:"MuiSwitchBase"})({padding:9,borderRadius:"50%",variants:[{props:{edge:"start",size:"small"},style:{marginLeft:-3}},{props:({edge:i,ownerState:e})=>i==="start"&&e.size!=="small",style:{marginLeft:-12}},{props:{edge:"end",size:"small"},style:{marginRight:-3}},{props:({edge:i,ownerState:e})=>i==="end"&&e.size!=="small",style:{marginRight:-12}}]}),_Ue=ye("input",{name:"MuiSwitchBase",shouldForwardProp:vl})({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),oLe=$.forwardRef(function(e,n){const{autoFocus:r,checked:s,checkedIcon:o,defaultChecked:a,disabled:l,disableFocusRipple:c=!1,edge:u=!1,icon:d,id:h,inputProps:f,inputRef:p,name:g,onBlur:m,onChange:_,onFocus:b,readOnly:y,required:x=!1,tabIndex:k,type:D,value:R,slots:E={},slotProps:A={},...M}=e,[N,P]=Im({controlled:s,default:!!a,name:"SwitchBase",state:"checked"}),O=Ov(),B=xe=>{b&&b(xe),O&&O.onFocus&&O.onFocus(xe)},j=xe=>{m&&m(xe),O&&O.onBlur&&O.onBlur(xe)},z=xe=>{if(xe.nativeEvent.defaultPrevented)return;const me=xe.target.checked;P(me),_&&_(xe,me)};let H=l;O&&typeof H>"u"&&(H=O.disabled);const Y=D==="checkbox"||D==="radio",X={...e,checked:N,disabled:H,disableFocusRipple:c,edge:u},Q=gUe(X),ie={slots:E,slotProps:{input:f,...A}},[K,ee]=an("root",{ref:n,elementType:mUe,className:Q.root,shouldForwardComponentProp:!0,externalForwardedProps:{...ie,component:"span",...M},getSlotProps:xe=>({...xe,onFocus:me=>{var Ee;(Ee=xe.onFocus)==null||Ee.call(xe,me),B(me)},onBlur:me=>{var Ee;(Ee=xe.onBlur)==null||Ee.call(xe,me),j(me)}}),ownerState:X,additionalProps:{centerRipple:!0,focusRipple:!c,disabled:H,role:void 0,tabIndex:null}}),[le,ke]=an("input",{ref:p,elementType:_Ue,className:Q.input,externalForwardedProps:ie,getSlotProps:xe=>({...xe,onChange:me=>{var Ee;(Ee=xe.onChange)==null||Ee.call(xe,me),z(me)}}),ownerState:X,additionalProps:{autoFocus:r,checked:s,defaultChecked:a,disabled:H,id:Y?h:void 0,name:g,readOnly:y,required:x,tabIndex:k,type:D,...D==="checkbox"&&R===void 0?{}:{value:R}}});return C.jsxs(K,{...ee,children:[C.jsx(le,{...ke}),N?o:d]})}),vUe=Hr(C.jsx("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"})),bUe=Hr(C.jsx("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"})),yUe=Hr(C.jsx("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}));function wUe(i){return Xt("MuiCheckbox",i)}const pU=Yt("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary","sizeSmall","sizeMedium"]),CUe=i=>{const{classes:e,indeterminate:n,color:r,size:s}=i,o={root:["root",n&&"indeterminate",`color${Ue(r)}`,`size${Ue(s)}`]},a=Zt(o,wUe,e);return{...e,...a}},SUe=ye(oLe,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiCheckbox",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.indeterminate&&e.indeterminate,e[`size${Ue(n.size)}`],n.color!=="default"&&e[`color${Ue(n.color)}`]]}})(jt(({theme:i})=>({color:(i.vars||i).palette.text.secondary,variants:[{props:{color:"default",disableRipple:!1},style:{"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette.action.activeChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette.action.active,i.palette.action.hoverOpacity)}}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e,disableRipple:!1},style:{"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette[e].main,i.palette.action.hoverOpacity)}}})),...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{[`&.${pU.checked}, &.${pU.indeterminate}`]:{color:(i.vars||i).palette[e].main},[`&.${pU.disabled}`]:{color:(i.vars||i).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:"transparent"}}}}]}))),xUe=C.jsx(bUe,{}),kUe=C.jsx(vUe,{}),LUe=C.jsx(yUe,{}),DUe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiCheckbox"}),{checkedIcon:s=xUe,color:o="primary",icon:a=kUe,indeterminate:l=!1,indeterminateIcon:c=LUe,inputProps:u,size:d="medium",disableRipple:h=!1,className:f,slots:p={},slotProps:g={},...m}=r,_=l?c:a,b=l?c:s,y={...r,disableRipple:h,color:o,indeterminate:l,size:d},x=CUe(y),k=g.input??u,[D,R]=an("root",{ref:n,elementType:SUe,className:dt(x.root,f),shouldForwardComponentProp:!0,externalForwardedProps:{slots:p,slotProps:g,...m},ownerState:y,additionalProps:{type:"checkbox",icon:$.cloneElement(_,{fontSize:_.props.fontSize??d}),checkedIcon:$.cloneElement(b,{fontSize:b.props.fontSize??d}),disableRipple:h,slots:p,slotProps:{input:jre(typeof k=="function"?k(y):k,{"data-indeterminate":l})}}});return C.jsx(D,{...R,classes:x})}),aLe=Zje({createStyledComponent:ye("div",{name:"MuiContainer",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[`maxWidth${Ue(String(n.maxWidth))}`],n.fixed&&e.fixed,n.disableGutters&&e.disableGutters]}}),useThemeProps:i=>Qt({props:i,name:"MuiContainer"})}),AZ=typeof Bre({})=="function",EUe=(i,e)=>({WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale",boxSizing:"border-box",WebkitTextSizeAdjust:"100%",...e&&!i.vars&&{colorScheme:i.palette.mode}}),IUe=i=>({color:(i.vars||i).palette.text.primary,...i.typography.body1,backgroundColor:(i.vars||i).palette.background.default,"@media print":{backgroundColor:(i.vars||i).palette.common.white}}),lLe=(i,e=!1)=>{var o,a;const n={};e&&i.colorSchemes&&typeof i.getColorSchemeSelector=="function"&&Object.entries(i.colorSchemes).forEach(([l,c])=>{var d,h;const u=i.getColorSchemeSelector(l);u.startsWith("@")?n[u]={":root":{colorScheme:(d=c.palette)==null?void 0:d.mode}}:n[u.replace(/\s*&/,"")]={colorScheme:(h=c.palette)==null?void 0:h.mode}});let r={html:EUe(i,e),"*, *::before, *::after":{boxSizing:"inherit"},"strong, b":{fontWeight:i.typography.fontWeightBold},body:{margin:0,...IUe(i),"&::backdrop":{backgroundColor:(i.vars||i).palette.background.default}},...n};const s=(a=(o=i.components)==null?void 0:o.MuiCssBaseline)==null?void 0:a.styleOverrides;return s&&(r=[r,s]),r},ZB="mui-ecs",TUe=i=>{const e=lLe(i,!1),n=Array.isArray(e)?e[0]:e;return!i.vars&&n&&(n.html[`:root:has(${ZB})`]={colorScheme:i.palette.mode}),i.colorSchemes&&Object.entries(i.colorSchemes).forEach(([r,s])=>{var a,l;const o=i.getColorSchemeSelector(r);o.startsWith("@")?n[o]={[`:root:not(:has(.${ZB}))`]:{colorScheme:(a=s.palette)==null?void 0:a.mode}}:n[o.replace(/\s*&/,"")]={[`&:not(:has(.${ZB}))`]:{colorScheme:(l=s.palette)==null?void 0:l.mode}}}),e},RUe=Bre(AZ?({theme:i,enableColorScheme:e})=>lLe(i,e):({theme:i})=>TUe(i));function cLe(i){const e=Qt({props:i,name:"MuiCssBaseline"}),{children:n,enableColorScheme:r=!1}=e;return C.jsxs($.Fragment,{children:[AZ&&C.jsx(RUe,{enableColorScheme:r}),!AZ&&!r&&C.jsx("span",{className:ZB,style:{display:"none"}}),n]})}function uLe(i=window){const e=i.document.documentElement.clientWidth;return i.innerWidth-e}function AUe(i){const e=gl(i);return e.body===i?fh(i).innerWidth>e.documentElement.clientWidth:i.scrollHeight>i.clientHeight}function qN(i,e){e?i.setAttribute("aria-hidden","true"):i.removeAttribute("aria-hidden")}function nhe(i){return parseInt(fh(i).getComputedStyle(i).paddingRight,10)||0}function NUe(i){const n=["TEMPLATE","SCRIPT","STYLE","LINK","MAP","META","NOSCRIPT","PICTURE","COL","COLGROUP","PARAM","SLOT","SOURCE","TRACK"].includes(i.tagName),r=i.tagName==="INPUT"&&i.getAttribute("type")==="hidden";return n||r}function ihe(i,e,n,r,s){const o=[e,n,...r];[].forEach.call(i.children,a=>{const l=!o.includes(a),c=!NUe(a);l&&c&&qN(a,s)})}function gU(i,e){let n=-1;return i.some((r,s)=>e(r)?(n=s,!0):!1),n}function MUe(i,e){const n=[],r=i.container;if(!e.disableScrollLock){if(AUe(r)){const a=uLe(fh(r));n.push({value:r.style.paddingRight,property:"padding-right",el:r}),r.style.paddingRight=`${nhe(r)+a}px`;const l=gl(r).querySelectorAll(".mui-fixed");[].forEach.call(l,c=>{n.push({value:c.style.paddingRight,property:"padding-right",el:c}),c.style.paddingRight=`${nhe(c)+a}px`})}let o;if(r.parentNode instanceof DocumentFragment)o=gl(r).body;else{const a=r.parentElement,l=fh(r);o=(a==null?void 0:a.nodeName)==="HTML"&&l.getComputedStyle(a).overflowY==="scroll"?a:r}n.push({value:o.style.overflow,property:"overflow",el:o},{value:o.style.overflowX,property:"overflow-x",el:o},{value:o.style.overflowY,property:"overflow-y",el:o}),o.style.overflow="hidden"}return()=>{n.forEach(({value:o,el:a,property:l})=>{o?a.style.setProperty(l,o):a.style.removeProperty(l)})}}function PUe(i){const e=[];return[].forEach.call(i.children,n=>{n.getAttribute("aria-hidden")==="true"&&e.push(n)}),e}class OUe{constructor(){this.modals=[],this.containers=[]}add(e,n){let r=this.modals.indexOf(e);if(r!==-1)return r;r=this.modals.length,this.modals.push(e),e.modalRef&&qN(e.modalRef,!1);const s=PUe(n);ihe(n,e.mount,e.modalRef,s,!0);const o=gU(this.containers,a=>a.container===n);return o!==-1?(this.containers[o].modals.push(e),r):(this.containers.push({modals:[e],container:n,restore:null,hiddenSiblings:s}),r)}mount(e,n){const r=gU(this.containers,o=>o.modals.includes(e)),s=this.containers[r];s.restore||(s.restore=MUe(s,n))}remove(e,n=!0){const r=this.modals.indexOf(e);if(r===-1)return r;const s=gU(this.containers,a=>a.modals.includes(e)),o=this.containers[s];if(o.modals.splice(o.modals.indexOf(e),1),this.modals.splice(r,1),o.modals.length===0)o.restore&&o.restore(),e.modalRef&&qN(e.modalRef,n),ihe(o.container,e.mount,e.modalRef,o.hiddenSiblings,!1),this.containers.splice(s,1);else{const a=o.modals[o.modals.length-1];a.modalRef&&qN(a.modalRef,!1)}return r}isTopModal(e){return this.modals.length>0&&this.modals[this.modals.length-1]===e}}const FUe=["input","select","textarea","a[href]","button","[tabindex]","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])'].join(",");function BUe(i){const e=parseInt(i.getAttribute("tabindex")||"",10);return Number.isNaN(e)?i.contentEditable==="true"||(i.nodeName==="AUDIO"||i.nodeName==="VIDEO"||i.nodeName==="DETAILS")&&i.getAttribute("tabindex")===null?0:i.tabIndex:e}function jUe(i){if(i.tagName!=="INPUT"||i.type!=="radio"||!i.name)return!1;const e=r=>i.ownerDocument.querySelector(`input[type="radio"]${r}`);let n=e(`[name="${i.name}"]:checked`);return n||(n=e(`[name="${i.name}"]`)),n!==i}function WUe(i){return!(i.disabled||i.tagName==="INPUT"&&i.type==="hidden"||jUe(i))}function $Ue(i){const e=[],n=[];return Array.from(i.querySelectorAll(FUe)).forEach((r,s)=>{const o=BUe(r);o===-1||!WUe(r)||(o===0?e.push(r):n.push({documentOrder:s,tabIndex:o,node:r}))}),n.sort((r,s)=>r.tabIndex===s.tabIndex?r.documentOrder-s.documentOrder:r.tabIndex-s.tabIndex).map(r=>r.node).concat(e)}function zUe(){return!0}function VUe(i){const{children:e,disableAutoFocus:n=!1,disableEnforceFocus:r=!1,disableRestoreFocus:s=!1,getTabbable:o=$Ue,isEnabled:a=zUe,open:l}=i,c=$.useRef(!1),u=$.useRef(null),d=$.useRef(null),h=$.useRef(null),f=$.useRef(null),p=$.useRef(!1),g=$.useRef(null),m=mo(Hx(e),g),_=$.useRef(null);$.useEffect(()=>{!l||!g.current||(p.current=!n)},[n,l]),$.useEffect(()=>{if(!l||!g.current)return;const x=gl(g.current);return g.current.contains(x.activeElement)||(g.current.hasAttribute("tabIndex")||g.current.setAttribute("tabIndex","-1"),p.current&&g.current.focus()),()=>{s||(h.current&&h.current.focus&&(c.current=!0,h.current.focus()),h.current=null)}},[l]),$.useEffect(()=>{if(!l||!g.current)return;const x=gl(g.current),k=E=>{_.current=E,!(r||!a()||E.key!=="Tab")&&x.activeElement===g.current&&E.shiftKey&&(c.current=!0,d.current&&d.current.focus())},D=()=>{var M,N;const E=g.current;if(E===null)return;if(!x.hasFocus()||!a()||c.current){c.current=!1;return}if(E.contains(x.activeElement)||r&&x.activeElement!==u.current&&x.activeElement!==d.current)return;if(x.activeElement!==f.current)f.current=null;else if(f.current!==null)return;if(!p.current)return;let A=[];if((x.activeElement===u.current||x.activeElement===d.current)&&(A=o(g.current)),A.length>0){const P=!!((M=_.current)!=null&&M.shiftKey&&((N=_.current)==null?void 0:N.key)==="Tab"),O=A[0],B=A[A.length-1];typeof O!="string"&&typeof B!="string"&&(P?B.focus():O.focus())}else E.focus()};x.addEventListener("focusin",D),x.addEventListener("keydown",k,!0);const R=setInterval(()=>{x.activeElement&&x.activeElement.tagName==="BODY"&&D()},50);return()=>{clearInterval(R),x.removeEventListener("focusin",D),x.removeEventListener("keydown",k,!0)}},[n,r,s,a,l,o]);const b=x=>{h.current===null&&(h.current=x.relatedTarget),p.current=!0,f.current=x.target;const k=e.props.onFocus;k&&k(x)},y=x=>{h.current===null&&(h.current=x.relatedTarget),p.current=!0};return C.jsxs($.Fragment,{children:[C.jsx("div",{tabIndex:l?0:-1,onFocus:y,ref:u,"data-testid":"sentinelStart"}),$.cloneElement(e,{ref:m,onFocus:b}),C.jsx("div",{tabIndex:l?0:-1,onFocus:y,ref:d,"data-testid":"sentinelEnd"})]})}function HUe(i){return typeof i=="function"?i():i}function UUe(i){return i?i.props.hasOwnProperty("in"):!1}const rhe=()=>{},m3=new OUe;function qUe(i){const{container:e,disableEscapeKeyDown:n=!1,disableScrollLock:r=!1,closeAfterTransition:s=!1,onTransitionEnter:o,onTransitionExited:a,children:l,onClose:c,open:u,rootRef:d}=i,h=$.useRef({}),f=$.useRef(null),p=$.useRef(null),g=mo(p,d),[m,_]=$.useState(!u),b=UUe(l);let y=!0;(i["aria-hidden"]==="false"||i["aria-hidden"]===!1)&&(y=!1);const x=()=>gl(f.current),k=()=>(h.current.modalRef=p.current,h.current.mount=f.current,h.current),D=()=>{m3.mount(k(),{disableScrollLock:r}),p.current&&(p.current.scrollTop=0)},R=Ha(()=>{const z=HUe(e)||x().body;m3.add(k(),z),p.current&&D()}),E=()=>m3.isTopModal(k()),A=Ha(z=>{f.current=z,z&&(u&&E()?D():p.current&&qN(p.current,y))}),M=$.useCallback(()=>{m3.remove(k(),y)},[y]);$.useEffect(()=>()=>{M()},[M]),$.useEffect(()=>{u?R():(!b||!s)&&M()},[u,M,b,s,R]);const N=z=>H=>{var Y;(Y=z.onKeyDown)==null||Y.call(z,H),!(H.key!=="Escape"||H.which===229||!E())&&(n||(H.stopPropagation(),c&&c(H,"escapeKeyDown")))},P=z=>H=>{var Y;(Y=z.onClick)==null||Y.call(z,H),H.target===H.currentTarget&&c&&c(H,"backdropClick")};return{getRootProps:(z={})=>{const H=VN(i);delete H.onTransitionEnter,delete H.onTransitionExited;const Y={...H,...z};return{role:"presentation",...Y,onKeyDown:N(Y),ref:g}},getBackdropProps:(z={})=>{const H=z;return{"aria-hidden":!0,...H,onClick:P(H),open:u}},getTransitionProps:()=>{const z=()=>{_(!1),o&&o()},H=()=>{_(!0),a&&a(),s&&M()};return{onEnter:Sde(z,(l==null?void 0:l.props.onEnter)??rhe),onExited:Sde(H,(l==null?void 0:l.props.onExited)??rhe)}},rootRef:g,portalRef:A,isTopModal:E,exited:m,hasTransition:b}}function KUe(i){return Xt("MuiModal",i)}Yt("MuiModal",["root","hidden","backdrop"]);const GUe=i=>{const{open:e,exited:n,classes:r}=i;return Zt({root:["root",!e&&n&&"hidden"],backdrop:["backdrop"]},KUe,r)},XUe=ye("div",{name:"MuiModal",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,!n.open&&n.exited&&e.hidden]}})(jt(({theme:i})=>({position:"fixed",zIndex:(i.vars||i).zIndex.modal,right:0,bottom:0,top:0,left:0,variants:[{props:({ownerState:e})=>!e.open&&e.exited,style:{visibility:"hidden"}}]}))),YUe=ye(tLe,{name:"MuiModal",slot:"Backdrop"})({zIndex:-1}),IW=$.forwardRef(function(e,n){const r=Qt({name:"MuiModal",props:e}),{BackdropComponent:s=YUe,BackdropProps:o,classes:a,className:l,closeAfterTransition:c=!1,children:u,container:d,component:h,components:f={},componentsProps:p={},disableAutoFocus:g=!1,disableEnforceFocus:m=!1,disableEscapeKeyDown:_=!1,disablePortal:b=!1,disableRestoreFocus:y=!1,disableScrollLock:x=!1,hideBackdrop:k=!1,keepMounted:D=!1,onClose:R,onTransitionEnter:E,onTransitionExited:A,open:M,slotProps:N={},slots:P={},theme:O,...B}=r,j={...r,closeAfterTransition:c,disableAutoFocus:g,disableEnforceFocus:m,disableEscapeKeyDown:_,disablePortal:b,disableRestoreFocus:y,disableScrollLock:x,hideBackdrop:k,keepMounted:D},{getRootProps:z,getBackdropProps:H,getTransitionProps:Y,portalRef:X,isTopModal:Q,exited:ie,hasTransition:K}=qUe({...j,rootRef:n}),ee={...j,exited:ie},le=GUe(ee),ke={};if(u.props.tabIndex===void 0&&(ke.tabIndex="-1"),K){const{onEnter:Ze,onExited:We}=Y();ke.onEnter=Ze,ke.onExited=We}const xe={slots:{root:f.Root,backdrop:f.Backdrop,...P},slotProps:{...p,...N}},[me,Ee]=an("root",{ref:n,elementType:XUe,externalForwardedProps:{...xe,...B,component:h},getSlotProps:z,ownerState:ee,className:dt(l,le==null?void 0:le.root,!ee.open&&ee.exited&&(le==null?void 0:le.hidden))}),[je,qe]=an("backdrop",{ref:o==null?void 0:o.ref,elementType:s,externalForwardedProps:xe,shouldForwardComponentProp:!0,additionalProps:o,getSlotProps:Ze=>H({...Ze,onClick:We=>{Ze!=null&&Ze.onClick&&Ze.onClick(We)}}),className:dt(o==null?void 0:o.className,le==null?void 0:le.backdrop),ownerState:ee});return!D&&!M&&(!K||ie)?null:C.jsx(Qke,{ref:X,container:d,disablePortal:b,children:C.jsxs(me,{...Ee,children:[!k&&s?C.jsx(je,{...qe}):null,C.jsx(VUe,{disableEnforceFocus:m,disableAutoFocus:g,disableRestoreFocus:y,isEnabled:Q,open:M,children:$.cloneElement(u,ke)})]})})});function ZUe(i){return Xt("MuiDialog",i)}const mU=Yt("MuiDialog",["root","scrollPaper","scrollBody","container","paper","paperScrollPaper","paperScrollBody","paperWidthFalse","paperWidthXs","paperWidthSm","paperWidthMd","paperWidthLg","paperWidthXl","paperFullWidth","paperFullScreen"]),dLe=$.createContext({}),QUe=ye(tLe,{name:"MuiDialog",slot:"Backdrop",overrides:(i,e)=>e.backdrop})({zIndex:-1}),JUe=i=>{const{classes:e,scroll:n,maxWidth:r,fullWidth:s,fullScreen:o}=i,a={root:["root"],container:["container",`scroll${Ue(n)}`],paper:["paper",`paperScroll${Ue(n)}`,`paperWidth${Ue(String(r))}`,s&&"paperFullWidth",o&&"paperFullScreen"]};return Zt(a,ZUe,e)},eqe=ye(IW,{name:"MuiDialog",slot:"Root"})({"@media print":{position:"absolute !important"}}),tqe=ye("div",{name:"MuiDialog",slot:"Container",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.container,e[`scroll${Ue(n.scroll)}`]]}})({height:"100%","@media print":{height:"auto"},outline:0,variants:[{props:{scroll:"paper"},style:{display:"flex",justifyContent:"center",alignItems:"center"}},{props:{scroll:"body"},style:{overflowY:"auto",overflowX:"hidden",textAlign:"center","&::after":{content:'""',display:"inline-block",verticalAlign:"middle",height:"100%",width:"0"}}}]}),nqe=ye(du,{name:"MuiDialog",slot:"Paper",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.paper,e[`scrollPaper${Ue(n.scroll)}`],e[`paperWidth${Ue(String(n.maxWidth))}`],n.fullWidth&&e.paperFullWidth,n.fullScreen&&e.paperFullScreen]}})(jt(({theme:i})=>({margin:32,position:"relative",overflowY:"auto","@media print":{overflowY:"visible",boxShadow:"none"},variants:[{props:{scroll:"paper"},style:{display:"flex",flexDirection:"column",maxHeight:"calc(100% - 64px)"}},{props:{scroll:"body"},style:{display:"inline-block",verticalAlign:"middle",textAlign:"initial"}},{props:({ownerState:e})=>!e.maxWidth,style:{maxWidth:"calc(100% - 64px)"}},{props:{maxWidth:"xs"},style:{maxWidth:i.breakpoints.unit==="px"?Math.max(i.breakpoints.values.xs,444):`max(${i.breakpoints.values.xs}${i.breakpoints.unit}, 444px)`,[`&.${mU.paperScrollBody}`]:{[i.breakpoints.down(Math.max(i.breakpoints.values.xs,444)+32*2)]:{maxWidth:"calc(100% - 64px)"}}}},...Object.keys(i.breakpoints.values).filter(e=>e!=="xs").map(e=>({props:{maxWidth:e},style:{maxWidth:`${i.breakpoints.values[e]}${i.breakpoints.unit}`,[`&.${mU.paperScrollBody}`]:{[i.breakpoints.down(i.breakpoints.values[e]+32*2)]:{maxWidth:"calc(100% - 64px)"}}}})),{props:({ownerState:e})=>e.fullWidth,style:{width:"calc(100% - 64px)"}},{props:({ownerState:e})=>e.fullScreen,style:{margin:0,width:"100%",maxWidth:"100%",height:"100%",maxHeight:"none",borderRadius:0,[`&.${mU.paperScrollBody}`]:{margin:0,maxWidth:"100%"}}}]}))),Vm=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiDialog"}),s=$i(),o={enter:s.transitions.duration.enteringScreen,exit:s.transitions.duration.leavingScreen},{"aria-describedby":a,"aria-labelledby":l,"aria-modal":c=!0,BackdropComponent:u,BackdropProps:d,children:h,className:f,disableEscapeKeyDown:p=!1,fullScreen:g=!1,fullWidth:m=!1,maxWidth:_="sm",onClick:b,onClose:y,open:x,PaperComponent:k=du,PaperProps:D={},scroll:R="paper",slots:E={},slotProps:A={},TransitionComponent:M=RZ,transitionDuration:N=o,TransitionProps:P,...O}=r,B={...r,disableEscapeKeyDown:p,fullScreen:g,fullWidth:m,maxWidth:_,scroll:R},j=JUe(B),z=$.useRef(),H=st=>{z.current=st.target===st.currentTarget},Y=st=>{b&&b(st),z.current&&(z.current=null,y&&y(st,"backdropClick"))},X=W1(l),Q=$.useMemo(()=>({titleId:X}),[X]),ie={transition:M,...E},K={transition:P,paper:D,backdrop:d,...A},ee={slots:ie,slotProps:K},[le,ke]=an("root",{elementType:eqe,shouldForwardComponentProp:!0,externalForwardedProps:ee,ownerState:B,className:dt(j.root,f),ref:n}),[xe,me]=an("backdrop",{elementType:QUe,shouldForwardComponentProp:!0,externalForwardedProps:ee,ownerState:B}),[Ee,je]=an("paper",{elementType:nqe,shouldForwardComponentProp:!0,externalForwardedProps:ee,ownerState:B,className:dt(j.paper,D.className)}),[qe,Ze]=an("container",{elementType:tqe,externalForwardedProps:ee,ownerState:B,className:j.container}),[We,ut]=an("transition",{elementType:RZ,externalForwardedProps:ee,ownerState:B,additionalProps:{appear:!0,in:x,timeout:N,role:"presentation"}});return C.jsx(le,{closeAfterTransition:!0,slots:{backdrop:xe},slotProps:{backdrop:{transitionDuration:N,as:u,...me}},disableEscapeKeyDown:p,onClose:y,open:x,onClick:Y,...ke,...O,children:C.jsx(We,{...ut,children:C.jsx(qe,{onMouseDown:H,...Ze,children:C.jsx(Ee,{as:k,elevation:24,role:"dialog","aria-describedby":a,"aria-labelledby":X,"aria-modal":c,...je,children:C.jsx(dLe.Provider,{value:Q,children:h})})})})})});function iqe(i){return Xt("MuiDialogActions",i)}Yt("MuiDialogActions",["root","spacing"]);const rqe=i=>{const{classes:e,disableSpacing:n}=i;return Zt({root:["root",!n&&"spacing"]},iqe,e)},sqe=ye("div",{name:"MuiDialogActions",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,!n.disableSpacing&&e.spacing]}})({display:"flex",alignItems:"center",padding:8,justifyContent:"flex-end",flex:"0 0 auto",variants:[{props:({ownerState:i})=>!i.disableSpacing,style:{"& > :not(style) ~ :not(style)":{marginLeft:8}}}]}),CE=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiDialogActions"}),{className:s,disableSpacing:o=!1,...a}=r,l={...r,disableSpacing:o},c=rqe(l);return C.jsx(sqe,{className:dt(c.root,s),ownerState:l,ref:n,...a})});function oqe(i){return Xt("MuiDialogContent",i)}Yt("MuiDialogContent",["root","dividers"]);function aqe(i){return Xt("MuiDialogTitle",i)}const lqe=Yt("MuiDialogTitle",["root"]),cqe=i=>{const{classes:e,dividers:n}=i;return Zt({root:["root",n&&"dividers"]},oqe,e)},uqe=ye("div",{name:"MuiDialogContent",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.dividers&&e.dividers]}})(jt(({theme:i})=>({flex:"1 1 auto",WebkitOverflowScrolling:"touch",overflowY:"auto",padding:"20px 24px",variants:[{props:({ownerState:e})=>e.dividers,style:{padding:"16px 24px",borderTop:`1px solid ${(i.vars||i).palette.divider}`,borderBottom:`1px solid ${(i.vars||i).palette.divider}`}},{props:({ownerState:e})=>!e.dividers,style:{[`.${lqe.root} + &`]:{paddingTop:0}}}]}))),a1=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiDialogContent"}),{className:s,dividers:o=!1,...a}=r,l={...r,dividers:o},c=cqe(l);return C.jsx(uqe,{className:dt(c.root,s),ownerState:l,ref:n,...a})});function dqe(i){return Xt("MuiDialogContentText",i)}Yt("MuiDialogContentText",["root"]);const hqe=i=>{const{classes:e}=i,r=Zt({root:["root"]},dqe,e);return{...e,...r}},fqe=ye(Je,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiDialogContentText",slot:"Root"})({}),pqe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiDialogContentText"}),{children:s,className:o,...a}=r,l=hqe(a);return C.jsx(fqe,{component:"p",variant:"body1",color:"textSecondary",ref:n,ownerState:a,className:dt(l.root,o),...r,classes:l})}),gqe=i=>{const{classes:e}=i;return Zt({root:["root"]},aqe,e)},mqe=ye(Je,{name:"MuiDialogTitle",slot:"Root"})({padding:"16px 24px",flex:"0 0 auto"}),tx=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiDialogTitle"}),{className:s,id:o,...a}=r,l=r,c=gqe(l),{titleId:u=o}=$.useContext(dLe);return C.jsx(mqe,{component:"h2",className:dt(c.root,s),ownerState:l,ref:n,variant:"h6",id:o??u,...a})});function _qe(i){return Xt("MuiDivider",i)}const she=Yt("MuiDivider",["root","absolute","fullWidth","inset","middle","flexItem","light","vertical","withChildren","withChildrenVertical","textAlignRight","textAlignLeft","wrapper","wrapperVertical"]),vqe=i=>{const{absolute:e,children:n,classes:r,flexItem:s,light:o,orientation:a,textAlign:l,variant:c}=i;return Zt({root:["root",e&&"absolute",c,o&&"light",a==="vertical"&&"vertical",s&&"flexItem",n&&"withChildren",n&&a==="vertical"&&"withChildrenVertical",l==="right"&&a!=="vertical"&&"textAlignRight",l==="left"&&a!=="vertical"&&"textAlignLeft"],wrapper:["wrapper",a==="vertical"&&"wrapperVertical"]},_qe,r)},bqe=ye("div",{name:"MuiDivider",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.absolute&&e.absolute,e[n.variant],n.light&&e.light,n.orientation==="vertical"&&e.vertical,n.flexItem&&e.flexItem,n.children&&e.withChildren,n.children&&n.orientation==="vertical"&&e.withChildrenVertical,n.textAlign==="right"&&n.orientation!=="vertical"&&e.textAlignRight,n.textAlign==="left"&&n.orientation!=="vertical"&&e.textAlignLeft]}})(jt(({theme:i})=>({margin:0,flexShrink:0,borderWidth:0,borderStyle:"solid",borderColor:(i.vars||i).palette.divider,borderBottomWidth:"thin",variants:[{props:{absolute:!0},style:{position:"absolute",bottom:0,left:0,width:"100%"}},{props:{light:!0},style:{borderColor:i.vars?`rgba(${i.vars.palette.dividerChannel} / 0.08)`:Pt(i.palette.divider,.08)}},{props:{variant:"inset"},style:{marginLeft:72}},{props:{variant:"middle",orientation:"horizontal"},style:{marginLeft:i.spacing(2),marginRight:i.spacing(2)}},{props:{variant:"middle",orientation:"vertical"},style:{marginTop:i.spacing(1),marginBottom:i.spacing(1)}},{props:{orientation:"vertical"},style:{height:"100%",borderBottomWidth:0,borderRightWidth:"thin"}},{props:{flexItem:!0},style:{alignSelf:"stretch",height:"auto"}},{props:({ownerState:e})=>!!e.children,style:{display:"flex",textAlign:"center",border:0,borderTopStyle:"solid",borderLeftStyle:"solid","&::before, &::after":{content:'""',alignSelf:"center"}}},{props:({ownerState:e})=>e.children&&e.orientation!=="vertical",style:{"&::before, &::after":{width:"100%",borderTop:`thin solid ${(i.vars||i).palette.divider}`,borderTopStyle:"inherit"}}},{props:({ownerState:e})=>e.orientation==="vertical"&&e.children,style:{flexDirection:"column","&::before, &::after":{height:"100%",borderLeft:`thin solid ${(i.vars||i).palette.divider}`,borderLeftStyle:"inherit"}}},{props:({ownerState:e})=>e.textAlign==="right"&&e.orientation!=="vertical",style:{"&::before":{width:"90%"},"&::after":{width:"10%"}}},{props:({ownerState:e})=>e.textAlign==="left"&&e.orientation!=="vertical",style:{"&::before":{width:"10%"},"&::after":{width:"90%"}}}]}))),yqe=ye("span",{name:"MuiDivider",slot:"Wrapper",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.wrapper,n.orientation==="vertical"&&e.wrapperVertical]}})(jt(({theme:i})=>({display:"inline-block",paddingLeft:`calc(${i.spacing(1)} * 1.2)`,paddingRight:`calc(${i.spacing(1)} * 1.2)`,whiteSpace:"nowrap",variants:[{props:{orientation:"vertical"},style:{paddingTop:`calc(${i.spacing(1)} * 1.2)`,paddingBottom:`calc(${i.spacing(1)} * 1.2)`}}]}))),SE=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiDivider"}),{absolute:s=!1,children:o,className:a,orientation:l="horizontal",component:c=o||l==="vertical"?"div":"hr",flexItem:u=!1,light:d=!1,role:h=c!=="hr"?"separator":void 0,textAlign:f="center",variant:p="fullWidth",...g}=r,m={...r,absolute:s,component:c,flexItem:u,light:d,orientation:l,role:h,textAlign:f,variant:p},_=vqe(m);return C.jsx(bqe,{as:c,className:dt(_.root,a),role:h,ref:n,ownerState:m,"aria-orientation":h==="separator"&&(c!=="hr"||l==="vertical")?l:void 0,...g,children:o?C.jsx(yqe,{className:_.wrapper,ownerState:m,children:o}):null})});SE&&(SE.muiSkipListHighlight=!0);function wqe(i,e,n){const r=e.getBoundingClientRect(),s=n&&n.getBoundingClientRect(),o=fh(e);let a;if(e.fakeTransform)a=e.fakeTransform;else{const u=o.getComputedStyle(e);a=u.getPropertyValue("-webkit-transform")||u.getPropertyValue("transform")}let l=0,c=0;if(a&&a!=="none"&&typeof a=="string"){const u=a.split("(")[1].split(")")[0].split(",");l=parseInt(u[4],10),c=parseInt(u[5],10)}return i==="left"?s?`translateX(${s.right+l-r.left}px)`:`translateX(${o.innerWidth+l-r.left}px)`:i==="right"?s?`translateX(-${r.right-s.left-l}px)`:`translateX(-${r.left+r.width-l}px)`:i==="up"?s?`translateY(${s.bottom+c-r.top}px)`:`translateY(${o.innerHeight+c-r.top}px)`:s?`translateY(-${r.top-s.top+r.height-c}px)`:`translateY(-${r.top+r.height-c}px)`}function Cqe(i){return typeof i=="function"?i():i}function _3(i,e,n){const r=Cqe(n),s=wqe(i,e,r);s&&(e.style.webkitTransform=s,e.style.transform=s)}const Sqe=$.forwardRef(function(e,n){const r=$i(),s={enter:r.transitions.easing.easeOut,exit:r.transitions.easing.sharp},o={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{addEndListener:a,appear:l=!0,children:c,container:u,direction:d="down",easing:h=s,in:f,onEnter:p,onEntered:g,onEntering:m,onExit:_,onExited:b,onExiting:y,style:x,timeout:k=o,TransitionComponent:D=Nf,...R}=e,E=$.useRef(null),A=mo(Hx(c),E,n),M=X=>Q=>{X&&(Q===void 0?X(E.current):X(E.current,Q))},N=M((X,Q)=>{_3(d,X,u),Vre(X),p&&p(X,Q)}),P=M((X,Q)=>{const ie=s1({timeout:k,style:x,easing:h},{mode:"enter"});X.style.webkitTransition=r.transitions.create("-webkit-transform",{...ie}),X.style.transition=r.transitions.create("transform",{...ie}),X.style.webkitTransform="none",X.style.transform="none",m&&m(X,Q)}),O=M(g),B=M(y),j=M(X=>{const Q=s1({timeout:k,style:x,easing:h},{mode:"exit"});X.style.webkitTransition=r.transitions.create("-webkit-transform",Q),X.style.transition=r.transitions.create("transform",Q),_3(d,X,u),_&&_(X)}),z=M(X=>{X.style.webkitTransition="",X.style.transition="",b&&b(X)}),H=X=>{a&&a(E.current,X)},Y=$.useCallback(()=>{E.current&&_3(d,E.current,u)},[d,u]);return $.useEffect(()=>{if(f||d==="down"||d==="right")return;const X=l5(()=>{E.current&&_3(d,E.current,u)}),Q=fh(E.current);return Q.addEventListener("resize",X),()=>{X.clear(),Q.removeEventListener("resize",X)}},[d,f,u]),$.useEffect(()=>{f||Y()},[f,Y]),C.jsx(D,{nodeRef:E,onEnter:N,onEntered:O,onEntering:P,onExit:j,onExited:z,onExiting:B,addEndListener:H,appear:l,in:f,timeout:k,...R,children:(X,{ownerState:Q,...ie})=>$.cloneElement(c,{ref:A,style:{visibility:X==="exited"&&!f?"hidden":void 0,...x,...c.props.style},...ie})})});function xqe(i){return Xt("MuiDrawer",i)}Yt("MuiDrawer",["root","docked","paper","anchorLeft","anchorRight","anchorTop","anchorBottom","paperAnchorLeft","paperAnchorRight","paperAnchorTop","paperAnchorBottom","paperAnchorDockedLeft","paperAnchorDockedRight","paperAnchorDockedTop","paperAnchorDockedBottom","modal"]);const hLe=(i,e)=>{const{ownerState:n}=i;return[e.root,(n.variant==="permanent"||n.variant==="persistent")&&e.docked,e.modal]},kqe=i=>{const{classes:e,anchor:n,variant:r}=i,s={root:["root",`anchor${Ue(n)}`],docked:[(r==="permanent"||r==="persistent")&&"docked"],modal:["modal"],paper:["paper",`paperAnchor${Ue(n)}`,r!=="temporary"&&`paperAnchorDocked${Ue(n)}`]};return Zt(s,xqe,e)},Lqe=ye(IW,{name:"MuiDrawer",slot:"Root",overridesResolver:hLe})(jt(({theme:i})=>({zIndex:(i.vars||i).zIndex.drawer}))),Dqe=ye("div",{shouldForwardProp:vl,name:"MuiDrawer",slot:"Docked",skipVariantsResolver:!1,overridesResolver:hLe})({flex:"0 0 auto"}),Eqe=ye(du,{name:"MuiDrawer",slot:"Paper",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.paper,e[`paperAnchor${Ue(n.anchor)}`],n.variant!=="temporary"&&e[`paperAnchorDocked${Ue(n.anchor)}`]]}})(jt(({theme:i})=>({overflowY:"auto",display:"flex",flexDirection:"column",height:"100%",flex:"1 0 auto",zIndex:(i.vars||i).zIndex.drawer,WebkitOverflowScrolling:"touch",position:"fixed",top:0,outline:0,variants:[{props:{anchor:"left"},style:{left:0}},{props:{anchor:"top"},style:{top:0,left:0,right:0,height:"auto",maxHeight:"100%"}},{props:{anchor:"right"},style:{right:0}},{props:{anchor:"bottom"},style:{top:"auto",left:0,bottom:0,right:0,height:"auto",maxHeight:"100%"}},{props:({ownerState:e})=>e.anchor==="left"&&e.variant!=="temporary",style:{borderRight:`1px solid ${(i.vars||i).palette.divider}`}},{props:({ownerState:e})=>e.anchor==="top"&&e.variant!=="temporary",style:{borderBottom:`1px solid ${(i.vars||i).palette.divider}`}},{props:({ownerState:e})=>e.anchor==="right"&&e.variant!=="temporary",style:{borderLeft:`1px solid ${(i.vars||i).palette.divider}`}},{props:({ownerState:e})=>e.anchor==="bottom"&&e.variant!=="temporary",style:{borderTop:`1px solid ${(i.vars||i).palette.divider}`}}]}))),fLe={left:"right",right:"left",top:"down",bottom:"up"};function Iqe(i){return["left","right"].includes(i)}function Tqe({direction:i},e){return i==="rtl"&&Iqe(e)?fLe[e]:e}const pLe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiDrawer"}),s=$i(),o=Pv(),a={enter:s.transitions.duration.enteringScreen,exit:s.transitions.duration.leavingScreen},{anchor:l="left",BackdropProps:c,children:u,className:d,elevation:h=16,hideBackdrop:f=!1,ModalProps:{BackdropProps:p,...g}={},onClose:m,open:_=!1,PaperProps:b={},SlideProps:y,TransitionComponent:x,transitionDuration:k=a,variant:D="temporary",slots:R={},slotProps:E={},...A}=r,M=$.useRef(!1);$.useEffect(()=>{M.current=!0},[]);const N=Tqe({direction:o?"rtl":"ltr"},l),O={...r,anchor:l,elevation:h,open:_,variant:D,...A},B=kqe(O),j={slots:{transition:x,...R},slotProps:{paper:b,transition:y,...E,backdrop:jre(E.backdrop||{...c,...p},{transitionDuration:k})}},[z,H]=an("root",{ref:n,elementType:Lqe,className:dt(B.root,B.modal,d),shouldForwardComponentProp:!0,ownerState:O,externalForwardedProps:{...j,...A,...g},additionalProps:{open:_,onClose:m,hideBackdrop:f,slots:{backdrop:j.slots.backdrop},slotProps:{backdrop:j.slotProps.backdrop}}}),[Y,X]=an("paper",{elementType:Eqe,shouldForwardComponentProp:!0,className:dt(B.paper,b.className),ownerState:O,externalForwardedProps:j,additionalProps:{elevation:D==="temporary"?h:0,square:!0}}),[Q,ie]=an("docked",{elementType:Dqe,ref:n,className:dt(B.root,B.docked,d),ownerState:O,externalForwardedProps:j,additionalProps:A}),[K,ee]=an("transition",{elementType:Sqe,ownerState:O,externalForwardedProps:j,additionalProps:{in:_,direction:fLe[N],timeout:k,appear:M.current}}),le=C.jsx(Y,{...X,children:u});if(D==="permanent")return C.jsx(Q,{...ie,children:le});const ke=C.jsx(K,{...ee,children:le});return D==="persistent"?C.jsx(Q,{...ie,children:ke}):C.jsx(z,{...H,children:ke})});function Rqe(i){return Xt("MuiFab",i)}const ohe=Yt("MuiFab",["root","primary","secondary","extended","circular","focusVisible","disabled","colorInherit","sizeSmall","sizeMedium","sizeLarge","info","error","warning","success"]),Aqe=i=>{const{color:e,variant:n,classes:r,size:s}=i,o={root:["root",n,`size${Ue(s)}`,e==="inherit"?"colorInherit":e]},a=Zt(o,Rqe,r);return{...r,...a}},Nqe=ye(ud,{name:"MuiFab",slot:"Root",shouldForwardProp:i=>vl(i)||i==="classes",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],e[`size${Ue(n.size)}`],n.color==="inherit"&&e.colorInherit,e[Ue(n.size)],e[n.color]]}})(jt(({theme:i})=>{var e,n;return{...i.typography.button,minHeight:36,transition:i.transitions.create(["background-color","box-shadow","border-color"],{duration:i.transitions.duration.short}),borderRadius:"50%",padding:0,minWidth:0,width:56,height:56,zIndex:(i.vars||i).zIndex.fab,boxShadow:(i.vars||i).shadows[6],"&:active":{boxShadow:(i.vars||i).shadows[12]},color:i.vars?i.vars.palette.grey[900]:(n=(e=i.palette).getContrastText)==null?void 0:n.call(e,i.palette.grey[300]),backgroundColor:(i.vars||i).palette.grey[300],"&:hover":{backgroundColor:(i.vars||i).palette.grey.A100,"@media (hover: none)":{backgroundColor:(i.vars||i).palette.grey[300]},textDecoration:"none"},[`&.${ohe.focusVisible}`]:{boxShadow:(i.vars||i).shadows[6]},variants:[{props:{size:"small"},style:{width:40,height:40}},{props:{size:"medium"},style:{width:48,height:48}},{props:{variant:"extended"},style:{borderRadius:48/2,padding:"0 16px",width:"auto",minHeight:"auto",minWidth:48,height:48}},{props:{variant:"extended",size:"small"},style:{width:"auto",padding:"0 8px",borderRadius:34/2,minWidth:34,height:34}},{props:{variant:"extended",size:"medium"},style:{width:"auto",padding:"0 16px",borderRadius:40/2,minWidth:40,height:40}},{props:{color:"inherit"},style:{color:"inherit"}}]}}),jt(({theme:i})=>({variants:[...Object.entries(i.palette).filter(br(["dark","contrastText"])).map(([e])=>({props:{color:e},style:{color:(i.vars||i).palette[e].contrastText,backgroundColor:(i.vars||i).palette[e].main,"&:hover":{backgroundColor:(i.vars||i).palette[e].dark,"@media (hover: none)":{backgroundColor:(i.vars||i).palette[e].main}}}}))]})),jt(({theme:i})=>({[`&.${ohe.disabled}`]:{color:(i.vars||i).palette.action.disabled,boxShadow:(i.vars||i).shadows[0],backgroundColor:(i.vars||i).palette.action.disabledBackground}}))),Mqe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiFab"}),{children:s,className:o,color:a="default",component:l="button",disabled:c=!1,disableFocusRipple:u=!1,focusVisibleClassName:d,size:h="large",variant:f="circular",...p}=r,g={...r,color:a,component:l,disabled:c,disableFocusRipple:u,size:h,variant:f},m=Aqe(g);return C.jsx(Nqe,{className:dt(m.root,o),component:l,disabled:c,focusRipple:!u,focusVisibleClassName:dt(m.focusVisible,d),ownerState:g,ref:n,...p,classes:m,children:s})}),Pqe=i=>{const{classes:e,disableUnderline:n,startAdornment:r,endAdornment:s,size:o,hiddenLabel:a,multiline:l}=i,c={root:["root",!n&&"underline",r&&"adornedStart",s&&"adornedEnd",o==="small"&&`size${Ue(o)}`,a&&"hiddenLabel",l&&"multiline"],input:["input"]},u=Zt(c,uHe,e);return{...e,...u}},Oqe=ye(LW,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiFilledInput",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[...xW(i,e),!n.disableUnderline&&e.underline]}})(jt(({theme:i})=>{const e=i.palette.mode==="light",n=e?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)",r=e?"rgba(0, 0, 0, 0.06)":"rgba(255, 255, 255, 0.09)",s=e?"rgba(0, 0, 0, 0.09)":"rgba(255, 255, 255, 0.13)",o=e?"rgba(0, 0, 0, 0.12)":"rgba(255, 255, 255, 0.12)";return{position:"relative",backgroundColor:i.vars?i.vars.palette.FilledInput.bg:r,borderTopLeftRadius:(i.vars||i).shape.borderRadius,borderTopRightRadius:(i.vars||i).shape.borderRadius,transition:i.transitions.create("background-color",{duration:i.transitions.duration.shorter,easing:i.transitions.easing.easeOut}),"&:hover":{backgroundColor:i.vars?i.vars.palette.FilledInput.hoverBg:s,"@media (hover: none)":{backgroundColor:i.vars?i.vars.palette.FilledInput.bg:r}},[`&.${Kd.focused}`]:{backgroundColor:i.vars?i.vars.palette.FilledInput.bg:r},[`&.${Kd.disabled}`]:{backgroundColor:i.vars?i.vars.palette.FilledInput.disabledBg:o},variants:[{props:({ownerState:a})=>!a.disableUnderline,style:{"&::after":{left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:i.transitions.create("transform",{duration:i.transitions.duration.shorter,easing:i.transitions.easing.easeOut}),pointerEvents:"none"},[`&.${Kd.focused}:after`]:{transform:"scaleX(1) translateX(0)"},[`&.${Kd.error}`]:{"&::before, &::after":{borderBottomColor:(i.vars||i).palette.error.main}},"&::before":{borderBottom:`1px solid ${i.vars?`rgba(${i.vars.palette.common.onBackgroundChannel} / ${i.vars.opacity.inputUnderline})`:n}`,left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:i.transitions.create("border-bottom-color",{duration:i.transitions.duration.shorter}),pointerEvents:"none"},[`&:hover:not(.${Kd.disabled}, .${Kd.error}):before`]:{borderBottom:`1px solid ${(i.vars||i).palette.text.primary}`},[`&.${Kd.disabled}:before`]:{borderBottomStyle:"dotted"}}},...Object.entries(i.palette).filter(br()).map(([a])=>{var l;return{props:{disableUnderline:!1,color:a},style:{"&::after":{borderBottom:`2px solid ${(l=(i.vars||i).palette[a])==null?void 0:l.main}`}}}}),{props:({ownerState:a})=>a.startAdornment,style:{paddingLeft:12}},{props:({ownerState:a})=>a.endAdornment,style:{paddingRight:12}},{props:({ownerState:a})=>a.multiline,style:{padding:"25px 12px 8px"}},{props:({ownerState:a,size:l})=>a.multiline&&l==="small",style:{paddingTop:21,paddingBottom:4}},{props:({ownerState:a})=>a.multiline&&a.hiddenLabel,style:{paddingTop:16,paddingBottom:17}},{props:({ownerState:a})=>a.multiline&&a.hiddenLabel&&a.size==="small",style:{paddingTop:8,paddingBottom:9}}]}})),Fqe=ye(DW,{name:"MuiFilledInput",slot:"Input",overridesResolver:kW})(jt(({theme:i})=>({paddingTop:25,paddingRight:12,paddingBottom:8,paddingLeft:12,...!i.vars&&{"&:-webkit-autofill":{WebkitBoxShadow:i.palette.mode==="light"?null:"0 0 0 100px #266798 inset",WebkitTextFillColor:i.palette.mode==="light"?null:"#fff",caretColor:i.palette.mode==="light"?null:"#fff",borderTopLeftRadius:"inherit",borderTopRightRadius:"inherit"}},...i.vars&&{"&:-webkit-autofill":{borderTopLeftRadius:"inherit",borderTopRightRadius:"inherit"},[i.getColorSchemeSelector("dark")]:{"&:-webkit-autofill":{WebkitBoxShadow:"0 0 0 100px #266798 inset",WebkitTextFillColor:"#fff",caretColor:"#fff"}}},variants:[{props:{size:"small"},style:{paddingTop:21,paddingBottom:4}},{props:({ownerState:e})=>e.hiddenLabel,style:{paddingTop:16,paddingBottom:17}},{props:({ownerState:e})=>e.startAdornment,style:{paddingLeft:0}},{props:({ownerState:e})=>e.endAdornment,style:{paddingRight:0}},{props:({ownerState:e})=>e.hiddenLabel&&e.size==="small",style:{paddingTop:8,paddingBottom:9}},{props:({ownerState:e})=>e.multiline,style:{paddingTop:0,paddingBottom:0,paddingLeft:0,paddingRight:0}}]}))),Zre=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiFilledInput"}),{disableUnderline:s=!1,components:o={},componentsProps:a,fullWidth:l=!1,hiddenLabel:c,inputComponent:u="input",multiline:d=!1,slotProps:h,slots:f={},type:p="text",...g}=r,m={...r,disableUnderline:s,fullWidth:l,inputComponent:u,multiline:d,type:p},_=Pqe(r),b={root:{ownerState:m},input:{ownerState:m}},y=h??a?pl(b,h??a):b,x=f.root??o.Root??Oqe,k=f.input??o.Input??Fqe;return C.jsx(EW,{slots:{root:x,input:k},slotProps:y,fullWidth:l,inputComponent:u,multiline:d,ref:n,type:p,...g,classes:_})});Zre.muiName="Input";function Bqe(i){return Xt("MuiFormControl",i)}Yt("MuiFormControl",["root","marginNone","marginNormal","marginDense","fullWidth","disabled"]);const jqe=i=>{const{classes:e,margin:n,fullWidth:r}=i,s={root:["root",n!=="none"&&`margin${Ue(n)}`,r&&"fullWidth"]};return Zt(s,Bqe,e)},Wqe=ye("div",{name:"MuiFormControl",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[`margin${Ue(n.margin)}`],n.fullWidth&&e.fullWidth]}})({display:"inline-flex",flexDirection:"column",position:"relative",minWidth:0,padding:0,margin:0,border:0,verticalAlign:"top",variants:[{props:{margin:"normal"},style:{marginTop:16,marginBottom:8}},{props:{margin:"dense"},style:{marginTop:8,marginBottom:4}},{props:{fullWidth:!0},style:{width:"100%"}}]}),gLe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiFormControl"}),{children:s,className:o,color:a="primary",component:l="div",disabled:c=!1,error:u=!1,focused:d,fullWidth:h=!1,hiddenLabel:f=!1,margin:p="none",required:g=!1,size:m="medium",variant:_="outlined",...b}=r,y={...r,color:a,component:l,disabled:c,error:u,fullWidth:h,hiddenLabel:f,margin:p,required:g,size:m,variant:_},x=jqe(y),[k,D]=$.useState(()=>{let z=!1;return s&&$.Children.forEach(s,H=>{if(!zN(H,["Input","Select"]))return;const Y=zN(H,["Select"])?H.props.input:H;Y&&sHe(Y.props)&&(z=!0)}),z}),[R,E]=$.useState(()=>{let z=!1;return s&&$.Children.forEach(s,H=>{zN(H,["Input","Select"])&&(g9(H.props,!0)||g9(H.props.inputProps,!0))&&(z=!0)}),z}),[A,M]=$.useState(!1);c&&A&&M(!1);const N=d!==void 0&&!c?d:A;let P;$.useRef(!1);const O=$.useCallback(()=>{E(!0)},[]),B=$.useCallback(()=>{E(!1)},[]),j=$.useMemo(()=>({adornedStart:k,setAdornedStart:D,color:a,disabled:c,error:u,filled:R,focused:N,fullWidth:h,hiddenLabel:f,size:m,onBlur:()=>{M(!1)},onFocus:()=>{M(!0)},onEmpty:B,onFilled:O,registerEffect:P,required:g,variant:_}),[k,a,c,u,R,N,h,f,P,B,O,g,m,_]);return C.jsx(SW.Provider,{value:j,children:C.jsx(Wqe,{as:l,ownerState:y,className:dt(x.root,o),ref:n,...b,children:s})})});function $qe(i){return Xt("MuiFormControlLabel",i)}const tN=Yt("MuiFormControlLabel",["root","labelPlacementStart","labelPlacementTop","labelPlacementBottom","disabled","label","error","required","asterisk"]),zqe=i=>{const{classes:e,disabled:n,labelPlacement:r,error:s,required:o}=i,a={root:["root",n&&"disabled",`labelPlacement${Ue(r)}`,s&&"error",o&&"required"],label:["label",n&&"disabled"],asterisk:["asterisk",s&&"error"]};return Zt(a,$qe,e)},Vqe=ye("label",{name:"MuiFormControlLabel",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`& .${tN.label}`]:e.label},e.root,e[`labelPlacement${Ue(n.labelPlacement)}`]]}})(jt(({theme:i})=>({display:"inline-flex",alignItems:"center",cursor:"pointer",verticalAlign:"middle",WebkitTapHighlightColor:"transparent",marginLeft:-11,marginRight:16,[`&.${tN.disabled}`]:{cursor:"default"},[`& .${tN.label}`]:{[`&.${tN.disabled}`]:{color:(i.vars||i).palette.text.disabled}},variants:[{props:{labelPlacement:"start"},style:{flexDirection:"row-reverse",marginRight:-11}},{props:{labelPlacement:"top"},style:{flexDirection:"column-reverse"}},{props:{labelPlacement:"bottom"},style:{flexDirection:"column"}},{props:({labelPlacement:e})=>e==="start"||e==="top"||e==="bottom",style:{marginLeft:16}}]}))),Hqe=ye("span",{name:"MuiFormControlLabel",slot:"Asterisk"})(jt(({theme:i})=>({[`&.${tN.error}`]:{color:(i.vars||i).palette.error.main}}))),Qre=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiFormControlLabel"}),{checked:s,className:o,componentsProps:a={},control:l,disabled:c,disableTypography:u,inputRef:d,label:h,labelPlacement:f="end",name:p,onChange:g,required:m,slots:_={},slotProps:b={},value:y,...x}=r,k=Ov(),D=c??l.props.disabled??(k==null?void 0:k.disabled),R=m??l.props.required,E={disabled:D,required:R};["checked","name","onChange","value","inputRef"].forEach(z=>{typeof l.props[z]>"u"&&typeof r[z]<"u"&&(E[z]=r[z])});const A=Ux({props:r,muiFormControl:k,states:["error"]}),M={...r,disabled:D,labelPlacement:f,required:R,error:A.error},N=zqe(M),P={slots:_,slotProps:{...a,...b}},[O,B]=an("typography",{elementType:Je,externalForwardedProps:P,ownerState:M});let j=h;return j!=null&&j.type!==Je&&!u&&(j=C.jsx(O,{component:"span",...B,className:dt(N.label,B==null?void 0:B.className),children:j})),C.jsxs(Vqe,{className:dt(N.root,o),ownerState:M,ref:n,...x,children:[$.cloneElement(l,E),R?C.jsxs("div",{children:[j,C.jsxs(Hqe,{ownerState:M,"aria-hidden":!0,className:N.asterisk,children:[" ","*"]})]}):j]})});function Uqe(i){return Xt("MuiFormHelperText",i)}const ahe=Yt("MuiFormHelperText",["root","error","disabled","sizeSmall","sizeMedium","contained","focused","filled","required"]);var lhe;const qqe=i=>{const{classes:e,contained:n,size:r,disabled:s,error:o,filled:a,focused:l,required:c}=i,u={root:["root",s&&"disabled",o&&"error",r&&`size${Ue(r)}`,n&&"contained",l&&"focused",a&&"filled",c&&"required"]};return Zt(u,Uqe,e)},Kqe=ye("p",{name:"MuiFormHelperText",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.size&&e[`size${Ue(n.size)}`],n.contained&&e.contained,n.filled&&e.filled]}})(jt(({theme:i})=>({color:(i.vars||i).palette.text.secondary,...i.typography.caption,textAlign:"left",marginTop:3,marginRight:0,marginBottom:0,marginLeft:0,[`&.${ahe.disabled}`]:{color:(i.vars||i).palette.text.disabled},[`&.${ahe.error}`]:{color:(i.vars||i).palette.error.main},variants:[{props:{size:"small"},style:{marginTop:4}},{props:({ownerState:e})=>e.contained,style:{marginLeft:14,marginRight:14}}]}))),Gqe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiFormHelperText"}),{children:s,className:o,component:a="p",disabled:l,error:c,filled:u,focused:d,margin:h,required:f,variant:p,...g}=r,m=Ov(),_=Ux({props:r,muiFormControl:m,states:["variant","size","disabled","error","filled","focused","required"]}),b={...r,component:a,contained:_.variant==="filled"||_.variant==="outlined",variant:_.variant,size:_.size,disabled:_.disabled,error:_.error,filled:_.filled,focused:_.focused,required:_.required};delete b.ownerState;const y=qqe(b);return C.jsx(Kqe,{as:a,className:dt(y.root,o),ref:n,...g,ownerState:b,children:s===" "?lhe||(lhe=C.jsx("span",{className:"notranslate","aria-hidden":!0,children:"​"})):s})});function Xqe(i){return Xt("MuiFormLabel",i)}const KN=Yt("MuiFormLabel",["root","colorSecondary","focused","disabled","error","filled","required","asterisk"]),Yqe=i=>{const{classes:e,color:n,focused:r,disabled:s,error:o,filled:a,required:l}=i,c={root:["root",`color${Ue(n)}`,s&&"disabled",o&&"error",a&&"filled",r&&"focused",l&&"required"],asterisk:["asterisk",o&&"error"]};return Zt(c,Xqe,e)},Zqe=ye("label",{name:"MuiFormLabel",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.color==="secondary"&&e.colorSecondary,n.filled&&e.filled]}})(jt(({theme:i})=>({color:(i.vars||i).palette.text.secondary,...i.typography.body1,lineHeight:"1.4375em",padding:0,position:"relative",variants:[...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{[`&.${KN.focused}`]:{color:(i.vars||i).palette[e].main}}})),{props:{},style:{[`&.${KN.disabled}`]:{color:(i.vars||i).palette.text.disabled},[`&.${KN.error}`]:{color:(i.vars||i).palette.error.main}}}]}))),Qqe=ye("span",{name:"MuiFormLabel",slot:"Asterisk"})(jt(({theme:i})=>({[`&.${KN.error}`]:{color:(i.vars||i).palette.error.main}}))),Jqe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiFormLabel"}),{children:s,className:o,color:a,component:l="label",disabled:c,error:u,filled:d,focused:h,required:f,...p}=r,g=Ov(),m=Ux({props:r,muiFormControl:g,states:["color","required","focused","disabled","error","filled"]}),_={...r,color:m.color||"primary",component:l,disabled:m.disabled,error:m.error,filled:m.filled,focused:m.focused,required:m.required},b=Yqe(_);return C.jsxs(Zqe,{as:l,ownerState:_,className:dt(b.root,o),ref:n,...p,children:[s,m.required&&C.jsxs(Qqe,{ownerState:_,"aria-hidden":!0,className:b.asterisk,children:[" ","*"]})]})}),ln=fWe({createStyledComponent:ye("div",{name:"MuiGrid",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.container&&e.container]}}),componentName:"MuiGrid",useThemeProps:i=>Qt({props:i,name:"MuiGrid"}),useTheme:$i});function NZ(i){return`scale(${i}, ${i**2})`}const eKe={entering:{opacity:1,transform:NZ(1)},entered:{opacity:1,transform:"none"}},_U=typeof navigator<"u"&&/^((?!chrome|android).)*(safari|mobile)/i.test(navigator.userAgent)&&/(os |version\/)15(.|_)4/i.test(navigator.userAgent),_9=$.forwardRef(function(e,n){const{addEndListener:r,appear:s=!0,children:o,easing:a,in:l,onEnter:c,onEntered:u,onEntering:d,onExit:h,onExited:f,onExiting:p,style:g,timeout:m="auto",TransitionComponent:_=Nf,...b}=e,y=lS(),x=$.useRef(),k=$i(),D=$.useRef(null),R=mo(D,Hx(o),n),E=z=>H=>{if(z){const Y=D.current;H===void 0?z(Y):z(Y,H)}},A=E(d),M=E((z,H)=>{Vre(z);const{duration:Y,delay:X,easing:Q}=s1({style:g,timeout:m,easing:a},{mode:"enter"});let ie;m==="auto"?(ie=k.transitions.getAutoHeightDuration(z.clientHeight),x.current=ie):ie=Y,z.style.transition=[k.transitions.create("opacity",{duration:ie,delay:X}),k.transitions.create("transform",{duration:_U?ie:ie*.666,delay:X,easing:Q})].join(","),c&&c(z,H)}),N=E(u),P=E(p),O=E(z=>{const{duration:H,delay:Y,easing:X}=s1({style:g,timeout:m,easing:a},{mode:"exit"});let Q;m==="auto"?(Q=k.transitions.getAutoHeightDuration(z.clientHeight),x.current=Q):Q=H,z.style.transition=[k.transitions.create("opacity",{duration:Q,delay:Y}),k.transitions.create("transform",{duration:_U?Q:Q*.666,delay:_U?Y:Y||Q*.333,easing:X})].join(","),z.style.opacity=0,z.style.transform=NZ(.75),h&&h(z)}),B=E(f),j=z=>{m==="auto"&&y.start(x.current||0,z),r&&r(D.current,z)};return C.jsx(_,{appear:s,in:l,nodeRef:D,onEnter:M,onEntered:N,onEntering:A,onExit:O,onExited:B,onExiting:P,addEndListener:j,timeout:m==="auto"?null:m,...b,children:(z,{ownerState:H,...Y})=>$.cloneElement(o,{style:{opacity:0,transform:NZ(.75),visibility:z==="exited"&&!l?"hidden":void 0,...eKe[z],...g,...o.props.style},ref:R,...Y})})});_9&&(_9.muiSupportAuto=!0);const tKe=i=>{const{classes:e,disableUnderline:n}=i,s=Zt({root:["root",!n&&"underline"],input:["input"]},lHe,e);return{...e,...s}},nKe=ye(LW,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiInput",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[...xW(i,e),!n.disableUnderline&&e.underline]}})(jt(({theme:i})=>{let n=i.palette.mode==="light"?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)";return i.vars&&(n=`rgba(${i.vars.palette.common.onBackgroundChannel} / ${i.vars.opacity.inputUnderline})`),{position:"relative",variants:[{props:({ownerState:r})=>r.formControl,style:{"label + &":{marginTop:16}}},{props:({ownerState:r})=>!r.disableUnderline,style:{"&::after":{left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:i.transitions.create("transform",{duration:i.transitions.duration.shorter,easing:i.transitions.easing.easeOut}),pointerEvents:"none"},[`&.${sy.focused}:after`]:{transform:"scaleX(1) translateX(0)"},[`&.${sy.error}`]:{"&::before, &::after":{borderBottomColor:(i.vars||i).palette.error.main}},"&::before":{borderBottom:`1px solid ${n}`,left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:i.transitions.create("border-bottom-color",{duration:i.transitions.duration.shorter}),pointerEvents:"none"},[`&:hover:not(.${sy.disabled}, .${sy.error}):before`]:{borderBottom:`2px solid ${(i.vars||i).palette.text.primary}`,"@media (hover: none)":{borderBottom:`1px solid ${n}`}},[`&.${sy.disabled}:before`]:{borderBottomStyle:"dotted"}}},...Object.entries(i.palette).filter(br()).map(([r])=>({props:{color:r,disableUnderline:!1},style:{"&::after":{borderBottom:`2px solid ${(i.vars||i).palette[r].main}`}}}))]}})),iKe=ye(DW,{name:"MuiInput",slot:"Input",overridesResolver:kW})({}),Jre=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiInput"}),{disableUnderline:s=!1,components:o={},componentsProps:a,fullWidth:l=!1,inputComponent:c="input",multiline:u=!1,slotProps:d,slots:h={},type:f="text",...p}=r,g=tKe(r),_={root:{ownerState:{disableUnderline:s}}},b=d??a?pl(d??a,_):_,y=h.root??o.Root??nKe,x=h.input??o.Input??iKe;return C.jsx(EW,{slots:{root:y,input:x},slotProps:b,fullWidth:l,inputComponent:c,multiline:u,ref:n,type:f,...p,classes:g})});Jre.muiName="Input";function rKe(i){return Xt("MuiInputAdornment",i)}const che=Yt("MuiInputAdornment",["root","filled","standard","outlined","positionStart","positionEnd","disablePointerEvents","hiddenLabel","sizeSmall"]);var uhe;const sKe=(i,e)=>{const{ownerState:n}=i;return[e.root,e[`position${Ue(n.position)}`],n.disablePointerEvents===!0&&e.disablePointerEvents,e[n.variant]]},oKe=i=>{const{classes:e,disablePointerEvents:n,hiddenLabel:r,position:s,size:o,variant:a}=i,l={root:["root",n&&"disablePointerEvents",s&&`position${Ue(s)}`,a,r&&"hiddenLabel",o&&`size${Ue(o)}`]};return Zt(l,rKe,e)},aKe=ye("div",{name:"MuiInputAdornment",slot:"Root",overridesResolver:sKe})(jt(({theme:i})=>({display:"flex",maxHeight:"2em",alignItems:"center",whiteSpace:"nowrap",color:(i.vars||i).palette.action.active,variants:[{props:{variant:"filled"},style:{[`&.${che.positionStart}&:not(.${che.hiddenLabel})`]:{marginTop:16}}},{props:{position:"start"},style:{marginRight:8}},{props:{position:"end"},style:{marginLeft:8}},{props:{disablePointerEvents:!0},style:{pointerEvents:"none"}}]}))),TW=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiInputAdornment"}),{children:s,className:o,component:a="div",disablePointerEvents:l=!1,disableTypography:c=!1,position:u,variant:d,...h}=r,f=Ov()||{};let p=d;d&&f.variant,f&&!p&&(p=f.variant);const g={...r,hiddenLabel:f.hiddenLabel,size:f.size,disablePointerEvents:l,position:u,variant:p},m=oKe(g);return C.jsx(SW.Provider,{value:null,children:C.jsx(aKe,{as:a,ownerState:g,className:dt(m.root,o),ref:n,...h,children:typeof s=="string"&&!c?C.jsx(Je,{color:"textSecondary",children:s}):C.jsxs($.Fragment,{children:[u==="start"?uhe||(uhe=C.jsx("span",{className:"notranslate","aria-hidden":!0,children:"​"})):null,s]})})})});function lKe(i){return Xt("MuiInputLabel",i)}Yt("MuiInputLabel",["root","focused","disabled","error","required","asterisk","formControl","sizeSmall","shrink","animated","standard","filled","outlined"]);const cKe=i=>{const{classes:e,formControl:n,size:r,shrink:s,disableAnimation:o,variant:a,required:l}=i,c={root:["root",n&&"formControl",!o&&"animated",s&&"shrink",r&&r!=="medium"&&`size${Ue(r)}`,a],asterisk:[l&&"asterisk"]},u=Zt(c,lKe,e);return{...e,...u}},uKe=ye(Jqe,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiInputLabel",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`& .${KN.asterisk}`]:e.asterisk},e.root,n.formControl&&e.formControl,n.size==="small"&&e.sizeSmall,n.shrink&&e.shrink,!n.disableAnimation&&e.animated,n.focused&&e.focused,e[n.variant]]}})(jt(({theme:i})=>({display:"block",transformOrigin:"top left",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"100%",variants:[{props:({ownerState:e})=>e.formControl,style:{position:"absolute",left:0,top:0,transform:"translate(0, 20px) scale(1)"}},{props:{size:"small"},style:{transform:"translate(0, 17px) scale(1)"}},{props:({ownerState:e})=>e.shrink,style:{transform:"translate(0, -1.5px) scale(0.75)",transformOrigin:"top left",maxWidth:"133%"}},{props:({ownerState:e})=>!e.disableAnimation,style:{transition:i.transitions.create(["color","transform","max-width"],{duration:i.transitions.duration.shorter,easing:i.transitions.easing.easeOut})}},{props:{variant:"filled"},style:{zIndex:1,pointerEvents:"none",transform:"translate(12px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"}},{props:{variant:"filled",size:"small"},style:{transform:"translate(12px, 13px) scale(1)"}},{props:({variant:e,ownerState:n})=>e==="filled"&&n.shrink,style:{userSelect:"none",pointerEvents:"auto",transform:"translate(12px, 7px) scale(0.75)",maxWidth:"calc(133% - 24px)"}},{props:({variant:e,ownerState:n,size:r})=>e==="filled"&&n.shrink&&r==="small",style:{transform:"translate(12px, 4px) scale(0.75)"}},{props:{variant:"outlined"},style:{zIndex:1,pointerEvents:"none",transform:"translate(14px, 16px) scale(1)",maxWidth:"calc(100% - 24px)"}},{props:{variant:"outlined",size:"small"},style:{transform:"translate(14px, 9px) scale(1)"}},{props:({variant:e,ownerState:n})=>e==="outlined"&&n.shrink,style:{userSelect:"none",pointerEvents:"auto",maxWidth:"calc(133% - 32px)",transform:"translate(14px, -9px) scale(0.75)"}}]}))),RW=$.forwardRef(function(e,n){const r=Qt({name:"MuiInputLabel",props:e}),{disableAnimation:s=!1,margin:o,shrink:a,variant:l,className:c,...u}=r,d=Ov();let h=a;typeof h>"u"&&d&&(h=d.filled||d.focused||d.adornedStart);const f=Ux({props:r,muiFormControl:d,states:["size","variant","required","focused"]}),p={...r,disableAnimation:s,formControl:d,shrink:h,size:f.size,variant:f.variant,required:f.required,focused:f.focused},g=cKe(p);return C.jsx(uKe,{"data-shrink":h,ref:n,className:dt(g.root,c),...u,ownerState:p,classes:g})});function dKe(i){return Xt("MuiLinearProgress",i)}Yt("MuiLinearProgress",["root","colorPrimary","colorSecondary","determinate","indeterminate","buffer","query","dashed","dashedColorPrimary","dashedColorSecondary","bar","bar1","bar2","barColorPrimary","barColorSecondary","bar1Indeterminate","bar1Determinate","bar1Buffer","bar2Indeterminate","bar2Buffer"]);const MZ=4,PZ=tg` 0% { left: -35%; right: 100%; } 60% { left: 100%; right: -90%; } 100% { left: 100%; right: -90%; } `,hKe=typeof PZ!="string"?Mv` animation: ${PZ} 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite; `:null,OZ=tg` 0% { left: -200%; right: 100%; } 60% { left: 107%; right: -8%; } 100% { left: 107%; right: -8%; } `,fKe=typeof OZ!="string"?Mv` animation: ${OZ} 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.15s infinite; `:null,FZ=tg` 0% { opacity: 1; background-position: 0 -23px; } 60% { opacity: 0; background-position: 0 -23px; } 100% { opacity: 1; background-position: -200px -23px; } `,pKe=typeof FZ!="string"?Mv` animation: ${FZ} 3s infinite linear; `:null,gKe=i=>{const{classes:e,variant:n,color:r}=i,s={root:["root",`color${Ue(r)}`,n],dashed:["dashed",`dashedColor${Ue(r)}`],bar1:["bar","bar1",`barColor${Ue(r)}`,(n==="indeterminate"||n==="query")&&"bar1Indeterminate",n==="determinate"&&"bar1Determinate",n==="buffer"&&"bar1Buffer"],bar2:["bar","bar2",n!=="buffer"&&`barColor${Ue(r)}`,n==="buffer"&&`color${Ue(r)}`,(n==="indeterminate"||n==="query")&&"bar2Indeterminate",n==="buffer"&&"bar2Buffer"]};return Zt(s,dKe,e)},ese=(i,e)=>i.vars?i.vars.palette.LinearProgress[`${e}Bg`]:i.palette.mode==="light"?qp(i.palette[e].main,.62):$m(i.palette[e].main,.5),mKe=ye("span",{name:"MuiLinearProgress",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[`color${Ue(n.color)}`],e[n.variant]]}})(jt(({theme:i})=>({position:"relative",overflow:"hidden",display:"block",height:4,zIndex:0,"@media print":{colorAdjust:"exact"},variants:[...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{backgroundColor:ese(i,e)}})),{props:({ownerState:e})=>e.color==="inherit"&&e.variant!=="buffer",style:{"&::before":{content:'""',position:"absolute",left:0,top:0,right:0,bottom:0,backgroundColor:"currentColor",opacity:.3}}},{props:{variant:"buffer"},style:{backgroundColor:"transparent"}},{props:{variant:"query"},style:{transform:"rotate(180deg)"}}]}))),_Ke=ye("span",{name:"MuiLinearProgress",slot:"Dashed",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.dashed,e[`dashedColor${Ue(n.color)}`]]}})(jt(({theme:i})=>({position:"absolute",marginTop:0,height:"100%",width:"100%",backgroundSize:"10px 10px",backgroundPosition:"0 -23px",variants:[{props:{color:"inherit"},style:{opacity:.3,backgroundImage:"radial-gradient(currentColor 0%, currentColor 16%, transparent 42%)"}},...Object.entries(i.palette).filter(br()).map(([e])=>{const n=ese(i,e);return{props:{color:e},style:{backgroundImage:`radial-gradient(${n} 0%, ${n} 16%, transparent 42%)`}}})]})),pKe||{animation:`${FZ} 3s infinite linear`}),vKe=ye("span",{name:"MuiLinearProgress",slot:"Bar1",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.bar,e.bar1,e[`barColor${Ue(n.color)}`],(n.variant==="indeterminate"||n.variant==="query")&&e.bar1Indeterminate,n.variant==="determinate"&&e.bar1Determinate,n.variant==="buffer"&&e.bar1Buffer]}})(jt(({theme:i})=>({width:"100%",position:"absolute",left:0,bottom:0,top:0,transition:"transform 0.2s linear",transformOrigin:"left",variants:[{props:{color:"inherit"},style:{backgroundColor:"currentColor"}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{backgroundColor:(i.vars||i).palette[e].main}})),{props:{variant:"determinate"},style:{transition:`transform .${MZ}s linear`}},{props:{variant:"buffer"},style:{zIndex:1,transition:`transform .${MZ}s linear`}},{props:({ownerState:e})=>e.variant==="indeterminate"||e.variant==="query",style:{width:"auto"}},{props:({ownerState:e})=>e.variant==="indeterminate"||e.variant==="query",style:hKe||{animation:`${PZ} 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite`}}]}))),bKe=ye("span",{name:"MuiLinearProgress",slot:"Bar2",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.bar,e.bar2,e[`barColor${Ue(n.color)}`],(n.variant==="indeterminate"||n.variant==="query")&&e.bar2Indeterminate,n.variant==="buffer"&&e.bar2Buffer]}})(jt(({theme:i})=>({width:"100%",position:"absolute",left:0,bottom:0,top:0,transition:"transform 0.2s linear",transformOrigin:"left",variants:[...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{"--LinearProgressBar2-barColor":(i.vars||i).palette[e].main}})),{props:({ownerState:e})=>e.variant!=="buffer"&&e.color!=="inherit",style:{backgroundColor:"var(--LinearProgressBar2-barColor, currentColor)"}},{props:({ownerState:e})=>e.variant!=="buffer"&&e.color==="inherit",style:{backgroundColor:"currentColor"}},{props:{color:"inherit"},style:{opacity:.3}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e,variant:"buffer"},style:{backgroundColor:ese(i,e),transition:`transform .${MZ}s linear`}})),{props:({ownerState:e})=>e.variant==="indeterminate"||e.variant==="query",style:{width:"auto"}},{props:({ownerState:e})=>e.variant==="indeterminate"||e.variant==="query",style:fKe||{animation:`${OZ} 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.15s infinite`}}]}))),AW=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiLinearProgress"}),{className:s,color:o="primary",value:a,valueBuffer:l,variant:c="indeterminate",...u}=r,d={...r,color:o,variant:c},h=gKe(d),f=Pv(),p={},g={bar1:{},bar2:{}};if((c==="determinate"||c==="buffer")&&a!==void 0){p["aria-valuenow"]=Math.round(a),p["aria-valuemin"]=0,p["aria-valuemax"]=100;let m=a-100;f&&(m=-m),g.bar1.transform=`translateX(${m}%)`}if(c==="buffer"&&l!==void 0){let m=(l||0)-100;f&&(m=-m),g.bar2.transform=`translateX(${m}%)`}return C.jsxs(mKe,{className:dt(h.root,s),ownerState:d,role:"progressbar",...p,ref:n,...u,children:[c==="buffer"?C.jsx(_Ke,{className:h.dashed,ownerState:d}):null,C.jsx(vKe,{className:h.bar1,ownerState:d,style:g.bar1}),c==="determinate"?null:C.jsx(bKe,{className:h.bar2,ownerState:d,style:g.bar2})]})});function yKe(i){return Xt("MuiLink",i)}const wKe=Yt("MuiLink",["root","underlineNone","underlineHover","underlineAlways","button","focusVisible"]),CKe=({theme:i,ownerState:e})=>{const n=e.color,r=fy(i,`palette.${n}.main`,!1)||fy(i,`palette.${n}`,!1)||e.color,s=fy(i,`palette.${n}.mainChannel`)||fy(i,`palette.${n}Channel`);return"vars"in i&&s?`rgba(${s} / 0.4)`:Pt(r,.4)},dhe={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},SKe=i=>{const{classes:e,component:n,focusVisible:r,underline:s}=i,o={root:["root",`underline${Ue(s)}`,n==="button"&&"button",r&&"focusVisible"]};return Zt(o,yKe,e)},xKe=ye(Je,{name:"MuiLink",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[`underline${Ue(n.underline)}`],n.component==="button"&&e.button]}})(jt(({theme:i})=>({variants:[{props:{underline:"none"},style:{textDecoration:"none"}},{props:{underline:"hover"},style:{textDecoration:"none","&:hover":{textDecoration:"underline"}}},{props:{underline:"always"},style:{textDecoration:"underline","&:hover":{textDecorationColor:"inherit"}}},{props:({underline:e,ownerState:n})=>e==="always"&&n.color!=="inherit",style:{textDecorationColor:"var(--Link-underlineColor)"}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{underline:"always",color:e},style:{"--Link-underlineColor":i.vars?`rgba(${i.vars.palette[e].mainChannel} / 0.4)`:Pt(i.palette[e].main,.4)}})),{props:{underline:"always",color:"textPrimary"},style:{"--Link-underlineColor":i.vars?`rgba(${i.vars.palette.text.primaryChannel} / 0.4)`:Pt(i.palette.text.primary,.4)}},{props:{underline:"always",color:"textSecondary"},style:{"--Link-underlineColor":i.vars?`rgba(${i.vars.palette.text.secondaryChannel} / 0.4)`:Pt(i.palette.text.secondary,.4)}},{props:{underline:"always",color:"textDisabled"},style:{"--Link-underlineColor":(i.vars||i).palette.text.disabled}},{props:{component:"button"},style:{position:"relative",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none","&::-moz-focus-inner":{borderStyle:"none"},[`&.${wKe.focusVisible}`]:{outline:"auto"}}}]}))),XM=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiLink"}),s=$i(),{className:o,color:a="primary",component:l="a",onBlur:c,onFocus:u,TypographyClasses:d,underline:h="always",variant:f="inherit",sx:p,...g}=r,[m,_]=$.useState(!1),b=D=>{o1(D.target)||_(!1),c&&c(D)},y=D=>{o1(D.target)&&_(!0),u&&u(D)},x={...r,color:a,component:l,focusVisible:m,underline:h,variant:f},k=SKe(x);return C.jsx(xKe,{color:a,className:dt(k.root,o),classes:d,component:l,onBlur:b,onFocus:y,ref:n,ownerState:x,variant:f,...g,sx:[...dhe[a]===void 0?[{color:a}]:[],...Array.isArray(p)?p:[p]],style:{...g.style,...h==="always"&&a!=="inherit"&&!dhe[a]&&{"--Link-underlineColor":CKe({theme:s,ownerState:x})}}})}),jp=$.createContext({});function kKe(i){return Xt("MuiList",i)}Yt("MuiList",["root","padding","dense","subheader"]);const LKe=i=>{const{classes:e,disablePadding:n,dense:r,subheader:s}=i;return Zt({root:["root",!n&&"padding",r&&"dense",s&&"subheader"]},kKe,e)},DKe=ye("ul",{name:"MuiList",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,!n.disablePadding&&e.padding,n.dense&&e.dense,n.subheader&&e.subheader]}})({listStyle:"none",margin:0,padding:0,position:"relative",variants:[{props:({ownerState:i})=>!i.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:i})=>i.subheader,style:{paddingTop:0}}]}),tse=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiList"}),{children:s,className:o,component:a="ul",dense:l=!1,disablePadding:c=!1,subheader:u,...d}=r,h=$.useMemo(()=>({dense:l}),[l]),f={...r,component:a,dense:l,disablePadding:c},p=LKe(f);return C.jsx(jp.Provider,{value:h,children:C.jsxs(DKe,{as:a,className:dt(p.root,o),ref:n,ownerState:f,...d,children:[u,s]})})});function EKe(i){return Xt("MuiListItem",i)}Yt("MuiListItem",["root","container","dense","alignItemsFlexStart","divider","gutters","padding","secondaryAction"]);function IKe(i){return Xt("MuiListItemButton",i)}const jD=Yt("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]),TKe=(i,e)=>{const{ownerState:n}=i;return[e.root,n.dense&&e.dense,n.alignItems==="flex-start"&&e.alignItemsFlexStart,n.divider&&e.divider,!n.disableGutters&&e.gutters]},RKe=i=>{const{alignItems:e,classes:n,dense:r,disabled:s,disableGutters:o,divider:a,selected:l}=i,u=Zt({root:["root",r&&"dense",!o&&"gutters",a&&"divider",s&&"disabled",e==="flex-start"&&"alignItemsFlexStart",l&&"selected"]},IKe,n);return{...n,...u}},AKe=ye(ud,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiListItemButton",slot:"Root",overridesResolver:TKe})(jt(({theme:i})=>({display:"flex",flexGrow:1,justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",minWidth:0,boxSizing:"border-box",textAlign:"left",paddingTop:8,paddingBottom:8,transition:i.transitions.create("background-color",{duration:i.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(i.vars||i).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${jD.selected}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity),[`&.${jD.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity+i.palette.action.focusOpacity)}},[`&.${jD.selected}:hover`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity)}},[`&.${jD.focusVisible}`]:{backgroundColor:(i.vars||i).palette.action.focus},[`&.${jD.disabled}`]:{opacity:(i.vars||i).palette.action.disabledOpacity},variants:[{props:({ownerState:e})=>e.divider,style:{borderBottom:`1px solid ${(i.vars||i).palette.divider}`,backgroundClip:"padding-box"}},{props:{alignItems:"flex-start"},style:{alignItems:"flex-start"}},{props:({ownerState:e})=>!e.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:e})=>e.dense,style:{paddingTop:4,paddingBottom:4}}]}))),NKe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiListItemButton"}),{alignItems:s="center",autoFocus:o=!1,component:a="div",children:l,dense:c=!1,disableGutters:u=!1,divider:d=!1,focusVisibleClassName:h,selected:f=!1,className:p,...g}=r,m=$.useContext(jp),_=$.useMemo(()=>({dense:c||m.dense||!1,alignItems:s,disableGutters:u}),[s,m.dense,c,u]),b=$.useRef(null);wc(()=>{o&&b.current&&b.current.focus()},[o]);const y={...r,alignItems:s,dense:_.dense,disableGutters:u,divider:d,selected:f},x=RKe(y),k=mo(b,n);return C.jsx(jp.Provider,{value:_,children:C.jsx(AKe,{ref:k,href:g.href||g.to,component:(g.href||g.to)&&a==="div"?"button":a,focusVisibleClassName:dt(x.focusVisible,h),ownerState:y,className:dt(x.root,p),...g,classes:x,children:l})})});function MKe(i){return Xt("MuiListItemSecondaryAction",i)}Yt("MuiListItemSecondaryAction",["root","disableGutters"]);const PKe=i=>{const{disableGutters:e,classes:n}=i;return Zt({root:["root",e&&"disableGutters"]},MKe,n)},OKe=ye("div",{name:"MuiListItemSecondaryAction",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.disableGutters&&e.disableGutters]}})({position:"absolute",right:16,top:"50%",transform:"translateY(-50%)",variants:[{props:({ownerState:i})=>i.disableGutters,style:{right:0}}]}),mLe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiListItemSecondaryAction"}),{className:s,...o}=r,a=$.useContext(jp),l={...r,disableGutters:a.disableGutters},c=PKe(l);return C.jsx(OKe,{className:dt(c.root,s),ownerState:l,ref:n,...o})});mLe.muiName="ListItemSecondaryAction";const FKe=(i,e)=>{const{ownerState:n}=i;return[e.root,n.dense&&e.dense,n.alignItems==="flex-start"&&e.alignItemsFlexStart,n.divider&&e.divider,!n.disableGutters&&e.gutters,!n.disablePadding&&e.padding,n.hasSecondaryAction&&e.secondaryAction]},BKe=i=>{const{alignItems:e,classes:n,dense:r,disableGutters:s,disablePadding:o,divider:a,hasSecondaryAction:l}=i;return Zt({root:["root",r&&"dense",!s&&"gutters",!o&&"padding",a&&"divider",e==="flex-start"&&"alignItemsFlexStart",l&&"secondaryAction"],container:["container"]},EKe,n)},jKe=ye("div",{name:"MuiListItem",slot:"Root",overridesResolver:FKe})(jt(({theme:i})=>({display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",width:"100%",boxSizing:"border-box",textAlign:"left",variants:[{props:({ownerState:e})=>!e.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:e})=>!e.disablePadding&&e.dense,style:{paddingTop:4,paddingBottom:4}},{props:({ownerState:e})=>!e.disablePadding&&!e.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:e})=>!e.disablePadding&&!!e.secondaryAction,style:{paddingRight:48}},{props:({ownerState:e})=>!!e.secondaryAction,style:{[`& > .${jD.root}`]:{paddingRight:48}}},{props:{alignItems:"flex-start"},style:{alignItems:"flex-start"}},{props:({ownerState:e})=>e.divider,style:{borderBottom:`1px solid ${(i.vars||i).palette.divider}`,backgroundClip:"padding-box"}},{props:({ownerState:e})=>e.button,style:{transition:i.transitions.create("background-color",{duration:i.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(i.vars||i).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}}},{props:({ownerState:e})=>e.hasSecondaryAction,style:{paddingRight:48}}]}))),WKe=ye("li",{name:"MuiListItem",slot:"Container"})({position:"relative"}),nse=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiListItem"}),{alignItems:s="center",children:o,className:a,component:l,components:c={},componentsProps:u={},ContainerComponent:d="li",ContainerProps:{className:h,...f}={},dense:p=!1,disableGutters:g=!1,disablePadding:m=!1,divider:_=!1,secondaryAction:b,slotProps:y={},slots:x={},...k}=r,D=$.useContext(jp),R=$.useMemo(()=>({dense:p||D.dense||!1,alignItems:s,disableGutters:g}),[s,D.dense,p,g]),E=$.useRef(null),A=$.Children.toArray(o),M=A.length&&zN(A[A.length-1],["ListItemSecondaryAction"]),N={...r,alignItems:s,dense:R.dense,disableGutters:g,disablePadding:m,divider:_,hasSecondaryAction:M},P=BKe(N),O=mo(E,n),B=x.root||c.Root||jKe,j=y.root||u.root||{},z={className:dt(P.root,j.className,a),...k};let H=l||"li";return M?(H=!z.component&&!l?"div":H,d==="li"&&(H==="li"?H="div":z.component==="li"&&(z.component="div")),C.jsx(jp.Provider,{value:R,children:C.jsxs(WKe,{as:d,className:dt(P.container,h),ref:O,ownerState:N,...f,children:[C.jsx(B,{...j,...!dv(B)&&{as:H,ownerState:{...N,...j.ownerState}},...z,children:A}),A.pop()]})})):C.jsx(jp.Provider,{value:R,children:C.jsxs(B,{...j,as:H,ref:O,...!dv(B)&&{ownerState:{...N,...j.ownerState}},...z,children:[A,b&&C.jsx(mLe,{children:b})]})})});function $Ke(i){return Xt("MuiListItemIcon",i)}const hhe=Yt("MuiListItemIcon",["root","alignItemsFlexStart"]),zKe=i=>{const{alignItems:e,classes:n}=i;return Zt({root:["root",e==="flex-start"&&"alignItemsFlexStart"]},$Ke,n)},VKe=ye("div",{name:"MuiListItemIcon",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.alignItems==="flex-start"&&e.alignItemsFlexStart]}})(jt(({theme:i})=>({minWidth:56,color:(i.vars||i).palette.action.active,flexShrink:0,display:"inline-flex",variants:[{props:{alignItems:"flex-start"},style:{marginTop:8}}]}))),_Le=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiListItemIcon"}),{className:s,...o}=r,a=$.useContext(jp),l={...r,alignItems:a.alignItems},c=zKe(l);return C.jsx(VKe,{className:dt(c.root,s),ownerState:l,ref:n,...o})});function HKe(i){return Xt("MuiListItemText",i)}const QD=Yt("MuiListItemText",["root","multiline","dense","inset","primary","secondary"]),UKe=i=>{const{classes:e,inset:n,primary:r,secondary:s,dense:o}=i;return Zt({root:["root",n&&"inset",o&&"dense",r&&s&&"multiline"],primary:["primary"],secondary:["secondary"]},HKe,e)},qKe=ye("div",{name:"MuiListItemText",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`& .${QD.primary}`]:e.primary},{[`& .${QD.secondary}`]:e.secondary},e.root,n.inset&&e.inset,n.primary&&n.secondary&&e.multiline,n.dense&&e.dense]}})({flex:"1 1 auto",minWidth:0,marginTop:4,marginBottom:4,[`.${f9.root}:where(& .${QD.primary})`]:{display:"block"},[`.${f9.root}:where(& .${QD.secondary})`]:{display:"block"},variants:[{props:({ownerState:i})=>i.primary&&i.secondary,style:{marginTop:6,marginBottom:6}},{props:({ownerState:i})=>i.inset,style:{paddingLeft:56}}]}),vLe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiListItemText"}),{children:s,className:o,disableTypography:a=!1,inset:l=!1,primary:c,primaryTypographyProps:u,secondary:d,secondaryTypographyProps:h,slots:f={},slotProps:p={},...g}=r,{dense:m}=$.useContext(jp);let _=c??s,b=d;const y={...r,disableTypography:a,inset:l,primary:!!_,secondary:!!b,dense:m},x=UKe(y),k={slots:f,slotProps:{primary:u,secondary:h,...p}},[D,R]=an("root",{className:dt(x.root,o),elementType:qKe,externalForwardedProps:{...k,...g},ownerState:y,ref:n}),[E,A]=an("primary",{className:x.primary,elementType:Je,externalForwardedProps:k,ownerState:y}),[M,N]=an("secondary",{className:x.secondary,elementType:Je,externalForwardedProps:k,ownerState:y});return _!=null&&_.type!==Je&&!a&&(_=C.jsx(E,{variant:m?"body2":"body1",component:A!=null&&A.variant?void 0:"span",...A,children:_})),b!=null&&b.type!==Je&&!a&&(b=C.jsx(M,{variant:"body2",color:"textSecondary",...N,children:b})),C.jsxs(D,{...R,children:[_,b]})});function vU(i,e,n){return i===e?i.firstChild:e&&e.nextElementSibling?e.nextElementSibling:n?null:i.firstChild}function fhe(i,e,n){return i===e?n?i.firstChild:i.lastChild:e&&e.previousElementSibling?e.previousElementSibling:n?null:i.lastChild}function bLe(i,e){if(e===void 0)return!0;let n=i.innerText;return n===void 0&&(n=i.textContent),n=n.trim().toLowerCase(),n.length===0?!1:e.repeating?n[0]===e.keys[0]:n.startsWith(e.keys.join(""))}function AR(i,e,n,r,s,o){let a=!1,l=s(i,e,e?n:!1);for(;l;){if(l===i.firstChild){if(a)return!1;a=!0}const c=r?!1:l.disabled||l.getAttribute("aria-disabled")==="true";if(!l.hasAttribute("tabindex")||!bLe(l,o)||c)l=s(i,l,n);else return l.focus(),!0}return!1}const KKe=$.forwardRef(function(e,n){const{actions:r,autoFocus:s=!1,autoFocusItem:o=!1,children:a,className:l,disabledItemsFocusable:c=!1,disableListWrap:u=!1,onKeyDown:d,variant:h="selectedMenu",...f}=e,p=$.useRef(null),g=$.useRef({keys:[],repeating:!0,previousKeyMatched:!0,lastTime:null});wc(()=>{s&&p.current.focus()},[s]),$.useImperativeHandle(r,()=>({adjustStyleForScrollbar:(x,{direction:k})=>{const D=!p.current.style.width;if(x.clientHeight{const k=p.current,D=x.key;if(x.ctrlKey||x.metaKey||x.altKey){d&&d(x);return}const E=gl(k).activeElement;if(D==="ArrowDown")x.preventDefault(),AR(k,E,u,c,vU);else if(D==="ArrowUp")x.preventDefault(),AR(k,E,u,c,fhe);else if(D==="Home")x.preventDefault(),AR(k,null,u,c,vU);else if(D==="End")x.preventDefault(),AR(k,null,u,c,fhe);else if(D.length===1){const A=g.current,M=D.toLowerCase(),N=performance.now();A.keys.length>0&&(N-A.lastTime>500?(A.keys=[],A.repeating=!0,A.previousKeyMatched=!0):A.repeating&&M!==A.keys[0]&&(A.repeating=!1)),A.lastTime=N,A.keys.push(M);const P=E&&!A.repeating&&bLe(E,A);A.previousKeyMatched&&(P||AR(k,E,!1,c,vU,A))?x.preventDefault():A.previousKeyMatched=!1}d&&d(x)},_=mo(p,n);let b=-1;$.Children.forEach(a,(x,k)=>{if(!$.isValidElement(x)){b===k&&(b+=1,b>=a.length&&(b=-1));return}x.props.disabled||(h==="selectedMenu"&&x.props.selected||b===-1)&&(b=k),b===k&&(x.props.disabled||x.props.muiSkipListHighlight||x.type.muiSkipListHighlight)&&(b+=1,b>=a.length&&(b=-1))});const y=$.Children.map(a,(x,k)=>{if(k===b){const D={};return o&&(D.autoFocus=!0),x.props.tabIndex===void 0&&h==="selectedMenu"&&(D.tabIndex=0),$.cloneElement(x,D)}return x});return C.jsx(tse,{role:"menu",ref:_,className:l,onKeyDown:m,tabIndex:s?0:-1,...f,children:y})});function GKe(i){return Xt("MuiPopover",i)}Yt("MuiPopover",["root","paper"]);function phe(i,e){let n=0;return typeof e=="number"?n=e:e==="center"?n=i.height/2:e==="bottom"&&(n=i.height),n}function ghe(i,e){let n=0;return typeof e=="number"?n=e:e==="center"?n=i.width/2:e==="right"&&(n=i.width),n}function mhe(i){return[i.horizontal,i.vertical].map(e=>typeof e=="number"?`${e}px`:e).join(" ")}function v3(i){return typeof i=="function"?i():i}const XKe=i=>{const{classes:e}=i;return Zt({root:["root"],paper:["paper"]},GKe,e)},YKe=ye(IW,{name:"MuiPopover",slot:"Root"})({}),yLe=ye(du,{name:"MuiPopover",slot:"Paper"})({position:"absolute",overflowY:"auto",overflowX:"hidden",minWidth:16,minHeight:16,maxWidth:"calc(100% - 32px)",maxHeight:"calc(100% - 32px)",outline:0}),ZKe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiPopover"}),{action:s,anchorEl:o,anchorOrigin:a={vertical:"top",horizontal:"left"},anchorPosition:l,anchorReference:c="anchorEl",children:u,className:d,container:h,elevation:f=8,marginThreshold:p=16,open:g,PaperProps:m={},slots:_={},slotProps:b={},transformOrigin:y={vertical:"top",horizontal:"left"},TransitionComponent:x,transitionDuration:k="auto",TransitionProps:D={},disableScrollLock:R=!1,...E}=r,A=$.useRef(),M={...r,anchorOrigin:a,anchorReference:c,elevation:f,marginThreshold:p,transformOrigin:y,TransitionComponent:x,transitionDuration:k,TransitionProps:D},N=XKe(M),P=$.useCallback(()=>{if(c==="anchorPosition")return l;const Ze=v3(o),ut=(Ze&&Ze.nodeType===1?Ze:gl(A.current).body).getBoundingClientRect();return{top:ut.top+phe(ut,a.vertical),left:ut.left+ghe(ut,a.horizontal)}},[o,a.horizontal,a.vertical,l,c]),O=$.useCallback(Ze=>({vertical:phe(Ze,y.vertical),horizontal:ghe(Ze,y.horizontal)}),[y.horizontal,y.vertical]),B=$.useCallback(Ze=>{const We={width:Ze.offsetWidth,height:Ze.offsetHeight},ut=O(We);if(c==="none")return{top:null,left:null,transformOrigin:mhe(ut)};const st=P();let mt=st.top-ut.vertical,Rt=st.left-ut.horizontal;const Vt=mt+We.height,Ot=Rt+We.width,vt=fh(v3(o)),wn=vt.innerHeight-p,Ce=vt.innerWidth-p;if(p!==null&&mtwn){const ge=Vt-wn;mt-=ge,ut.vertical+=ge}if(p!==null&&RtCe){const ge=Ot-Ce;Rt-=ge,ut.horizontal+=ge}return{top:`${Math.round(mt)}px`,left:`${Math.round(Rt)}px`,transformOrigin:mhe(ut)}},[o,c,P,O,p]),[j,z]=$.useState(g),H=$.useCallback(()=>{const Ze=A.current;if(!Ze)return;const We=B(Ze);We.top!==null&&Ze.style.setProperty("top",We.top),We.left!==null&&(Ze.style.left=We.left),Ze.style.transformOrigin=We.transformOrigin,z(!0)},[B]);$.useEffect(()=>(R&&window.addEventListener("scroll",H),()=>window.removeEventListener("scroll",H)),[o,R,H]);const Y=()=>{H()},X=()=>{z(!1)};$.useEffect(()=>{g&&H()}),$.useImperativeHandle(s,()=>g?{updatePosition:()=>{H()}}:null,[g,H]),$.useEffect(()=>{if(!g)return;const Ze=l5(()=>{H()}),We=fh(v3(o));return We.addEventListener("resize",Ze),()=>{Ze.clear(),We.removeEventListener("resize",Ze)}},[o,g,H]);let Q=k;const ie={slots:{transition:x,..._},slotProps:{transition:D,paper:m,...b}},[K,ee]=an("transition",{elementType:_9,externalForwardedProps:ie,ownerState:M,getSlotProps:Ze=>({...Ze,onEntering:(We,ut)=>{var st;(st=Ze.onEntering)==null||st.call(Ze,We,ut),Y()},onExited:We=>{var ut;(ut=Ze.onExited)==null||ut.call(Ze,We),X()}}),additionalProps:{appear:!0,in:g}});k==="auto"&&!K.muiSupportAuto&&(Q=void 0);const le=h||(o?gl(v3(o)).body:void 0),[ke,{slots:xe,slotProps:me,...Ee}]=an("root",{ref:n,elementType:YKe,externalForwardedProps:{...ie,...E},shouldForwardComponentProp:!0,additionalProps:{slots:{backdrop:_.backdrop},slotProps:{backdrop:jre(typeof b.backdrop=="function"?b.backdrop(M):b.backdrop,{invisible:!0})},container:le,open:g},ownerState:M,className:dt(N.root,d)}),[je,qe]=an("paper",{ref:A,className:N.paper,elementType:yLe,externalForwardedProps:ie,shouldForwardComponentProp:!0,additionalProps:{elevation:f,style:j?void 0:{opacity:0}},ownerState:M});return C.jsx(ke,{...Ee,...!dv(ke)&&{slots:xe,slotProps:me,disableScrollLock:R},children:C.jsx(K,{...ee,timeout:Q,children:C.jsx(je,{...qe,children:u})})})});function QKe(i){return Xt("MuiMenu",i)}Yt("MuiMenu",["root","paper","list"]);const JKe={vertical:"top",horizontal:"right"},eGe={vertical:"top",horizontal:"left"},tGe=i=>{const{classes:e}=i;return Zt({root:["root"],paper:["paper"],list:["list"]},QKe,e)},nGe=ye(ZKe,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiMenu",slot:"Root"})({}),iGe=ye(yLe,{name:"MuiMenu",slot:"Paper"})({maxHeight:"calc(100% - 96px)",WebkitOverflowScrolling:"touch"}),rGe=ye(KKe,{name:"MuiMenu",slot:"List"})({outline:0}),wLe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiMenu"}),{autoFocus:s=!0,children:o,className:a,disableAutoFocusItem:l=!1,MenuListProps:c={},onClose:u,open:d,PaperProps:h={},PopoverClasses:f,transitionDuration:p="auto",TransitionProps:{onEntering:g,...m}={},variant:_="selectedMenu",slots:b={},slotProps:y={},...x}=r,k=Pv(),D={...r,autoFocus:s,disableAutoFocusItem:l,MenuListProps:c,onEntering:g,PaperProps:h,transitionDuration:p,TransitionProps:m,variant:_},R=tGe(D),E=s&&!l&&d,A=$.useRef(null),M=(Q,ie)=>{A.current&&A.current.adjustStyleForScrollbar(Q,{direction:k?"rtl":"ltr"}),g&&g(Q,ie)},N=Q=>{Q.key==="Tab"&&(Q.preventDefault(),u&&u(Q,"tabKeyDown"))};let P=-1;$.Children.map(o,(Q,ie)=>{$.isValidElement(Q)&&(Q.props.disabled||(_==="selectedMenu"&&Q.props.selected||P===-1)&&(P=ie))});const O={slots:b,slotProps:{list:c,transition:m,paper:h,...y}},B=$u({elementType:b.root,externalSlotProps:y.root,ownerState:D,className:[R.root,a]}),[j,z]=an("paper",{className:R.paper,elementType:iGe,externalForwardedProps:O,shouldForwardComponentProp:!0,ownerState:D}),[H,Y]=an("list",{className:dt(R.list,c.className),elementType:rGe,shouldForwardComponentProp:!0,externalForwardedProps:O,getSlotProps:Q=>({...Q,onKeyDown:ie=>{var K;N(ie),(K=Q.onKeyDown)==null||K.call(Q,ie)}}),ownerState:D}),X=typeof O.slotProps.transition=="function"?O.slotProps.transition(D):O.slotProps.transition;return C.jsx(nGe,{onClose:u,anchorOrigin:{vertical:"bottom",horizontal:k?"right":"left"},transformOrigin:k?JKe:eGe,slots:{root:b.root,paper:j,backdrop:b.backdrop,...b.transition&&{transition:b.transition}},slotProps:{root:B,paper:z,backdrop:typeof y.backdrop=="function"?y.backdrop(D):y.backdrop,transition:{...X,onEntering:(...Q)=>{var ie;M(...Q),(ie=X==null?void 0:X.onEntering)==null||ie.call(X,...Q)}}},open:d,ref:n,transitionDuration:p,ownerState:D,...x,classes:f,children:C.jsx(H,{actions:A,autoFocus:s&&(P===-1||l),autoFocusItem:E,variant:_,...Y,children:o})})});function sGe(i){return Xt("MuiMenuItem",i)}const NR=Yt("MuiMenuItem",["root","focusVisible","dense","disabled","divider","gutters","selected"]),oGe=(i,e)=>{const{ownerState:n}=i;return[e.root,n.dense&&e.dense,n.divider&&e.divider,!n.disableGutters&&e.gutters]},aGe=i=>{const{disabled:e,dense:n,divider:r,disableGutters:s,selected:o,classes:a}=i,c=Zt({root:["root",n&&"dense",e&&"disabled",!s&&"gutters",r&&"divider",o&&"selected"]},sGe,a);return{...a,...c}},lGe=ye(ud,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiMenuItem",slot:"Root",overridesResolver:oGe})(jt(({theme:i})=>({...i.typography.body1,display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",minHeight:48,paddingTop:6,paddingBottom:6,boxSizing:"border-box",whiteSpace:"nowrap","&:hover":{textDecoration:"none",backgroundColor:(i.vars||i).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${NR.selected}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity),[`&.${NR.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity+i.palette.action.focusOpacity)}},[`&.${NR.selected}:hover`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity)}},[`&.${NR.focusVisible}`]:{backgroundColor:(i.vars||i).palette.action.focus},[`&.${NR.disabled}`]:{opacity:(i.vars||i).palette.action.disabledOpacity},[`& + .${she.root}`]:{marginTop:i.spacing(1),marginBottom:i.spacing(1)},[`& + .${she.inset}`]:{marginLeft:52},[`& .${QD.root}`]:{marginTop:0,marginBottom:0},[`& .${QD.inset}`]:{paddingLeft:36},[`& .${hhe.root}`]:{minWidth:36},variants:[{props:({ownerState:e})=>!e.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:e})=>e.divider,style:{borderBottom:`1px solid ${(i.vars||i).palette.divider}`,backgroundClip:"padding-box"}},{props:({ownerState:e})=>!e.dense,style:{[i.breakpoints.up("sm")]:{minHeight:"auto"}}},{props:({ownerState:e})=>e.dense,style:{minHeight:32,paddingTop:4,paddingBottom:4,...i.typography.body2,[`& .${hhe.root} svg`]:{fontSize:"1.25rem"}}}]}))),hf=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiMenuItem"}),{autoFocus:s=!1,component:o="li",dense:a=!1,divider:l=!1,disableGutters:c=!1,focusVisibleClassName:u,role:d="menuitem",tabIndex:h,className:f,...p}=r,g=$.useContext(jp),m=$.useMemo(()=>({dense:a||g.dense||!1,disableGutters:c}),[g.dense,a,c]),_=$.useRef(null);wc(()=>{s&&_.current&&_.current.focus()},[s]);const b={...r,dense:m.dense,divider:l,disableGutters:c},y=aGe(r),x=mo(_,n);let k;return r.disabled||(k=h!==void 0?h:-1),C.jsx(jp.Provider,{value:m,children:C.jsx(lGe,{ref:x,role:d,tabIndex:k,component:o,focusVisibleClassName:dt(y.focusVisible,u),className:dt(y.root,f),...p,ownerState:b,classes:y})})});function cGe(i){return Xt("MuiNativeSelect",i)}const ise=Yt("MuiNativeSelect",["root","select","multiple","filled","outlined","standard","disabled","icon","iconOpen","iconFilled","iconOutlined","iconStandard","nativeInput","error"]),uGe=i=>{const{classes:e,variant:n,disabled:r,multiple:s,open:o,error:a}=i,l={select:["select",n,r&&"disabled",s&&"multiple",a&&"error"],icon:["icon",`icon${Ue(n)}`,o&&"iconOpen",r&&"disabled"]};return Zt(l,cGe,e)},CLe=ye("select",{name:"MuiNativeSelect"})(({theme:i})=>({MozAppearance:"none",WebkitAppearance:"none",userSelect:"none",borderRadius:0,cursor:"pointer","&:focus":{borderRadius:0},[`&.${ise.disabled}`]:{cursor:"default"},"&[multiple]":{height:"auto"},"&:not([multiple]) option, &:not([multiple]) optgroup":{backgroundColor:(i.vars||i).palette.background.paper},variants:[{props:({ownerState:e})=>e.variant!=="filled"&&e.variant!=="outlined",style:{"&&&":{paddingRight:24,minWidth:16}}},{props:{variant:"filled"},style:{"&&&":{paddingRight:32}}},{props:{variant:"outlined"},style:{borderRadius:(i.vars||i).shape.borderRadius,"&:focus":{borderRadius:(i.vars||i).shape.borderRadius},"&&&":{paddingRight:32}}}]})),dGe=ye(CLe,{name:"MuiNativeSelect",slot:"Select",shouldForwardProp:vl,overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.select,e[n.variant],n.error&&e.error,{[`&.${ise.multiple}`]:e.multiple}]}})({}),SLe=ye("svg",{name:"MuiNativeSelect"})(({theme:i})=>({position:"absolute",right:0,top:"calc(50% - .5em)",pointerEvents:"none",color:(i.vars||i).palette.action.active,[`&.${ise.disabled}`]:{color:(i.vars||i).palette.action.disabled},variants:[{props:({ownerState:e})=>e.open,style:{transform:"rotate(180deg)"}},{props:{variant:"filled"},style:{right:7}},{props:{variant:"outlined"},style:{right:7}}]})),hGe=ye(SLe,{name:"MuiNativeSelect",slot:"Icon",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.icon,n.variant&&e[`icon${Ue(n.variant)}`],n.open&&e.iconOpen]}})({}),fGe=$.forwardRef(function(e,n){const{className:r,disabled:s,error:o,IconComponent:a,inputRef:l,variant:c="standard",...u}=e,d={...e,disabled:s,variant:c,error:o},h=uGe(d);return C.jsxs($.Fragment,{children:[C.jsx(dGe,{ownerState:d,className:dt(h.select,r),disabled:s,ref:l||n,...u}),e.multiple?null:C.jsx(hGe,{as:a,ownerState:d,className:h.icon})]})});var _he;const pGe=ye("fieldset",{name:"MuiNotchedOutlined",shouldForwardProp:vl})({textAlign:"left",position:"absolute",bottom:0,right:0,top:-5,left:0,margin:0,padding:"0 8px",pointerEvents:"none",borderRadius:"inherit",borderStyle:"solid",borderWidth:1,overflow:"hidden",minWidth:"0%"}),gGe=ye("legend",{name:"MuiNotchedOutlined",shouldForwardProp:vl})(jt(({theme:i})=>({float:"unset",width:"auto",overflow:"hidden",variants:[{props:({ownerState:e})=>!e.withLabel,style:{padding:0,lineHeight:"11px",transition:i.transitions.create("width",{duration:150,easing:i.transitions.easing.easeOut})}},{props:({ownerState:e})=>e.withLabel,style:{display:"block",padding:0,height:11,fontSize:"0.75em",visibility:"hidden",maxWidth:.01,transition:i.transitions.create("max-width",{duration:50,easing:i.transitions.easing.easeOut}),whiteSpace:"nowrap","& > span":{paddingLeft:5,paddingRight:5,display:"inline-block",opacity:0,visibility:"visible"}}},{props:({ownerState:e})=>e.withLabel&&e.notched,style:{maxWidth:"100%",transition:i.transitions.create("max-width",{duration:100,easing:i.transitions.easing.easeOut,delay:50})}}]})));function mGe(i){const{children:e,classes:n,className:r,label:s,notched:o,...a}=i,l=s!=null&&s!=="",c={...i,notched:o,withLabel:l};return C.jsx(pGe,{"aria-hidden":!0,className:r,ownerState:c,...a,children:C.jsx(gGe,{ownerState:c,children:l?C.jsx("span",{children:s}):_he||(_he=C.jsx("span",{className:"notranslate","aria-hidden":!0,children:"​"}))})})}const _Ge=i=>{const{classes:e}=i,r=Zt({root:["root"],notchedOutline:["notchedOutline"],input:["input"]},cHe,e);return{...e,...r}},vGe=ye(LW,{shouldForwardProp:i=>vl(i)||i==="classes",name:"MuiOutlinedInput",slot:"Root",overridesResolver:xW})(jt(({theme:i})=>{const e=i.palette.mode==="light"?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return{position:"relative",borderRadius:(i.vars||i).shape.borderRadius,[`&:hover .${Qh.notchedOutline}`]:{borderColor:(i.vars||i).palette.text.primary},"@media (hover: none)":{[`&:hover .${Qh.notchedOutline}`]:{borderColor:i.vars?`rgba(${i.vars.palette.common.onBackgroundChannel} / 0.23)`:e}},[`&.${Qh.focused} .${Qh.notchedOutline}`]:{borderWidth:2},variants:[...Object.entries(i.palette).filter(br()).map(([n])=>({props:{color:n},style:{[`&.${Qh.focused} .${Qh.notchedOutline}`]:{borderColor:(i.vars||i).palette[n].main}}})),{props:{},style:{[`&.${Qh.error} .${Qh.notchedOutline}`]:{borderColor:(i.vars||i).palette.error.main},[`&.${Qh.disabled} .${Qh.notchedOutline}`]:{borderColor:(i.vars||i).palette.action.disabled}}},{props:({ownerState:n})=>n.startAdornment,style:{paddingLeft:14}},{props:({ownerState:n})=>n.endAdornment,style:{paddingRight:14}},{props:({ownerState:n})=>n.multiline,style:{padding:"16.5px 14px"}},{props:({ownerState:n,size:r})=>n.multiline&&r==="small",style:{padding:"8.5px 14px"}}]}})),bGe=ye(mGe,{name:"MuiOutlinedInput",slot:"NotchedOutline"})(jt(({theme:i})=>{const e=i.palette.mode==="light"?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return{borderColor:i.vars?`rgba(${i.vars.palette.common.onBackgroundChannel} / 0.23)`:e}})),yGe=ye(DW,{name:"MuiOutlinedInput",slot:"Input",overridesResolver:kW})(jt(({theme:i})=>({padding:"16.5px 14px",...!i.vars&&{"&:-webkit-autofill":{WebkitBoxShadow:i.palette.mode==="light"?null:"0 0 0 100px #266798 inset",WebkitTextFillColor:i.palette.mode==="light"?null:"#fff",caretColor:i.palette.mode==="light"?null:"#fff",borderRadius:"inherit"}},...i.vars&&{"&:-webkit-autofill":{borderRadius:"inherit"},[i.getColorSchemeSelector("dark")]:{"&:-webkit-autofill":{WebkitBoxShadow:"0 0 0 100px #266798 inset",WebkitTextFillColor:"#fff",caretColor:"#fff"}}},variants:[{props:{size:"small"},style:{padding:"8.5px 14px"}},{props:({ownerState:e})=>e.multiline,style:{padding:0}},{props:({ownerState:e})=>e.startAdornment,style:{paddingLeft:0}},{props:({ownerState:e})=>e.endAdornment,style:{paddingRight:0}}]}))),TI=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiOutlinedInput"}),{components:s={},fullWidth:o=!1,inputComponent:a="input",label:l,multiline:c=!1,notched:u,slots:d={},slotProps:h={},type:f="text",...p}=r,g=_Ge(r),m=Ov(),_=Ux({props:r,muiFormControl:m,states:["color","disabled","error","focused","hiddenLabel","size","required"]}),b={...r,color:_.color||"primary",disabled:_.disabled,error:_.error,focused:_.focused,formControl:m,fullWidth:o,hiddenLabel:_.hiddenLabel,multiline:c,size:_.size,type:f},y=d.root??s.Root??vGe,x=d.input??s.Input??yGe,[k,D]=an("notchedOutline",{elementType:bGe,className:g.notchedOutline,shouldForwardComponentProp:!0,ownerState:b,externalForwardedProps:{slots:d,slotProps:h},additionalProps:{label:l!=null&&l!==""&&_.required?C.jsxs($.Fragment,{children:[l," ","*"]}):l}});return C.jsx(EW,{slots:{root:y,input:x},slotProps:h,renderSuffix:R=>C.jsx(k,{...D,notched:typeof u<"u"?u:!!(R.startAdornment||R.filled||R.focused)}),fullWidth:o,inputComponent:a,multiline:c,ref:n,type:f,...p,classes:{...g,notchedOutline:null}})});TI.muiName="Input";function wGe(i){return Xt("MuiPagination",i)}Yt("MuiPagination",["root","ul","outlined","text"]);function CGe(i={}){const{boundaryCount:e=1,componentName:n="usePagination",count:r=1,defaultPage:s=1,disabled:o=!1,hideNextButton:a=!1,hidePrevButton:l=!1,onChange:c,page:u,showFirstButton:d=!1,showLastButton:h=!1,siblingCount:f=1,...p}=i,[g,m]=Im({controlled:u,default:s,name:n,state:"page"}),_=(M,N)=>{u||m(N),c&&c(M,N)},b=(M,N)=>{const P=N-M+1;return Array.from({length:P},(O,B)=>M+B)},y=b(1,Math.min(e,r)),x=b(Math.max(r-e+1,e+1),r),k=Math.max(Math.min(g-f,r-e-f*2-1),e+2),D=Math.min(Math.max(g+f,e+f*2+2),r-e-1),R=[...d?["first"]:[],...l?[]:["previous"],...y,...k>e+2?["start-ellipsis"]:e+1e?[r-e]:[],...x,...a?[]:["next"],...h?["last"]:[]],E=M=>{switch(M){case"first":return 1;case"previous":return g-1;case"next":return g+1;case"last":return r;default:return null}};return{items:R.map(M=>typeof M=="number"?{onClick:N=>{_(N,M)},type:"page",page:M,selected:M===g,disabled:o,"aria-current":M===g?"page":void 0}:{onClick:N=>{_(N,E(M))},type:M,page:E(M),selected:!1,disabled:o||!M.includes("ellipsis")&&(M==="next"||M==="last"?g>=r:g<=1)}),...p}}function SGe(i){return Xt("MuiPaginationItem",i)}const Vc=Yt("MuiPaginationItem",["root","page","sizeSmall","sizeLarge","text","textPrimary","textSecondary","outlined","outlinedPrimary","outlinedSecondary","rounded","ellipsis","firstLast","previousNext","focusVisible","disabled","selected","icon","colorPrimary","colorSecondary"]),xGe=Hr(C.jsx("path",{d:"M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"})),kGe=Hr(C.jsx("path",{d:"M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"})),LGe=Hr(C.jsx("path",{d:"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"})),DGe=Hr(C.jsx("path",{d:"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"})),xLe=(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],e[`size${Ue(n.size)}`],n.variant==="text"&&e[`text${Ue(n.color)}`],n.variant==="outlined"&&e[`outlined${Ue(n.color)}`],n.shape==="rounded"&&e.rounded,n.type==="page"&&e.page,(n.type==="start-ellipsis"||n.type==="end-ellipsis")&&e.ellipsis,(n.type==="previous"||n.type==="next")&&e.previousNext,(n.type==="first"||n.type==="last")&&e.firstLast]},EGe=i=>{const{classes:e,color:n,disabled:r,selected:s,size:o,shape:a,type:l,variant:c}=i,u={root:["root",`size${Ue(o)}`,c,a,n!=="standard"&&`color${Ue(n)}`,n!=="standard"&&`${c}${Ue(n)}`,r&&"disabled",s&&"selected",{page:"page",first:"firstLast",last:"firstLast","start-ellipsis":"ellipsis","end-ellipsis":"ellipsis",previous:"previousNext",next:"previousNext"}[l]],icon:["icon"]};return Zt(u,SGe,e)},IGe=ye("div",{name:"MuiPaginationItem",slot:"Root",overridesResolver:xLe})(jt(({theme:i})=>({...i.typography.body2,borderRadius:32/2,textAlign:"center",boxSizing:"border-box",minWidth:32,padding:"0 6px",margin:"0 3px",color:(i.vars||i).palette.text.primary,height:"auto",[`&.${Vc.disabled}`]:{opacity:(i.vars||i).palette.action.disabledOpacity},variants:[{props:{size:"small"},style:{minWidth:26,borderRadius:26/2,margin:"0 1px",padding:"0 4px"}},{props:{size:"large"},style:{minWidth:40,borderRadius:40/2,padding:"0 10px",fontSize:i.typography.pxToRem(15)}}]}))),TGe=ye(ud,{name:"MuiPaginationItem",slot:"Root",overridesResolver:xLe})(jt(({theme:i})=>({...i.typography.body2,borderRadius:32/2,textAlign:"center",boxSizing:"border-box",minWidth:32,height:32,padding:"0 6px",margin:"0 3px",color:(i.vars||i).palette.text.primary,[`&.${Vc.focusVisible}`]:{backgroundColor:(i.vars||i).palette.action.focus},[`&.${Vc.disabled}`]:{opacity:(i.vars||i).palette.action.disabledOpacity},transition:i.transitions.create(["color","background-color"],{duration:i.transitions.duration.short}),"&:hover":{backgroundColor:(i.vars||i).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${Vc.selected}`]:{backgroundColor:(i.vars||i).palette.action.selected,"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette.action.selectedChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette.action.selected,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(i.vars||i).palette.action.selected}},[`&.${Vc.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.action.selectedChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette.action.selected,i.palette.action.selectedOpacity+i.palette.action.focusOpacity)},[`&.${Vc.disabled}`]:{opacity:1,color:(i.vars||i).palette.action.disabled,backgroundColor:(i.vars||i).palette.action.selected}},variants:[{props:{size:"small"},style:{minWidth:26,height:26,borderRadius:26/2,margin:"0 1px",padding:"0 4px"}},{props:{size:"large"},style:{minWidth:40,height:40,borderRadius:40/2,padding:"0 10px",fontSize:i.typography.pxToRem(15)}},{props:{shape:"rounded"},style:{borderRadius:(i.vars||i).shape.borderRadius}},{props:{variant:"outlined"},style:{border:i.vars?`1px solid rgba(${i.vars.palette.common.onBackgroundChannel} / 0.23)`:`1px solid ${i.palette.mode==="light"?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)"}`,[`&.${Vc.selected}`]:{[`&.${Vc.disabled}`]:{borderColor:(i.vars||i).palette.action.disabledBackground,color:(i.vars||i).palette.action.disabled}}}},{props:{variant:"text"},style:{[`&.${Vc.selected}`]:{[`&.${Vc.disabled}`]:{color:(i.vars||i).palette.action.disabled}}}},...Object.entries(i.palette).filter(br(["dark","contrastText"])).map(([e])=>({props:{variant:"text",color:e},style:{[`&.${Vc.selected}`]:{color:(i.vars||i).palette[e].contrastText,backgroundColor:(i.vars||i).palette[e].main,"&:hover":{backgroundColor:(i.vars||i).palette[e].dark,"@media (hover: none)":{backgroundColor:(i.vars||i).palette[e].main}},[`&.${Vc.focusVisible}`]:{backgroundColor:(i.vars||i).palette[e].dark},[`&.${Vc.disabled}`]:{color:(i.vars||i).palette.action.disabled}}}})),...Object.entries(i.palette).filter(br(["light"])).map(([e])=>({props:{variant:"outlined",color:e},style:{[`&.${Vc.selected}`]:{color:(i.vars||i).palette[e].main,border:`1px solid ${i.vars?`rgba(${i.vars.palette[e].mainChannel} / 0.5)`:Pt(i.palette[e].main,.5)}`,backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / ${i.vars.palette.action.activatedOpacity})`:Pt(i.palette[e].main,i.palette.action.activatedOpacity),"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / calc(${i.vars.palette.action.activatedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette[e].main,i.palette.action.activatedOpacity+i.palette.action.focusOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${Vc.focusVisible}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / calc(${i.vars.palette.action.activatedOpacity} + ${i.vars.palette.action.focusOpacity}))`:Pt(i.palette[e].main,i.palette.action.activatedOpacity+i.palette.action.focusOpacity)}}}}))]}))),RGe=ye("div",{name:"MuiPaginationItem",slot:"Icon"})(jt(({theme:i})=>({fontSize:i.typography.pxToRem(20),margin:"0 -8px",variants:[{props:{size:"small"},style:{fontSize:i.typography.pxToRem(18)}},{props:{size:"large"},style:{fontSize:i.typography.pxToRem(22)}}]}))),AGe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiPaginationItem"}),{className:s,color:o="standard",component:a,components:l={},disabled:c=!1,page:u,selected:d=!1,shape:h="circular",size:f="medium",slots:p={},slotProps:g={},type:m="page",variant:_="text",...b}=r,y={...r,color:o,disabled:c,selected:d,shape:h,size:f,type:m,variant:_},x=Pv(),k=EGe(y),D={slots:{previous:p.previous??l.previous,next:p.next??l.next,first:p.first??l.first,last:p.last??l.last},slotProps:g},[R,E]=an("previous",{elementType:LGe,externalForwardedProps:D,ownerState:y}),[A,M]=an("next",{elementType:DGe,externalForwardedProps:D,ownerState:y}),[N,P]=an("first",{elementType:xGe,externalForwardedProps:D,ownerState:y}),[O,B]=an("last",{elementType:kGe,externalForwardedProps:D,ownerState:y}),j=x?{previous:"next",next:"previous",first:"last",last:"first"}[m]:m,z={previous:R,next:A,first:N,last:O}[j],H={previous:E,next:M,first:P,last:B}[j];return m==="start-ellipsis"||m==="end-ellipsis"?C.jsx(IGe,{ref:n,ownerState:y,className:dt(k.root,s),children:"…"}):C.jsxs(TGe,{ref:n,ownerState:y,component:a,disabled:c,className:dt(k.root,s),...b,children:[m==="page"&&u,z?C.jsx(RGe,{...H,className:k.icon,as:z}):null]})}),NGe=i=>{const{classes:e,variant:n}=i;return Zt({root:["root",n],ul:["ul"]},wGe,e)},MGe=ye("nav",{name:"MuiPagination",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant]]}})({}),PGe=ye("ul",{name:"MuiPagination",slot:"Ul"})({display:"flex",flexWrap:"wrap",alignItems:"center",padding:0,margin:0,listStyle:"none"});function OGe(i,e,n){return i==="page"?`${n?"":"Go to "}page ${e}`:`Go to ${i} page`}const FGe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiPagination"}),{boundaryCount:s=1,className:o,color:a="standard",count:l=1,defaultPage:c=1,disabled:u=!1,getItemAriaLabel:d=OGe,hideNextButton:h=!1,hidePrevButton:f=!1,onChange:p,page:g,renderItem:m=N=>C.jsx(AGe,{...N}),shape:_="circular",showFirstButton:b=!1,showLastButton:y=!1,siblingCount:x=1,size:k="medium",variant:D="text",...R}=r,{items:E}=CGe({...r,componentName:"Pagination"}),A={...r,boundaryCount:s,color:a,count:l,defaultPage:c,disabled:u,getItemAriaLabel:d,hideNextButton:h,hidePrevButton:f,renderItem:m,shape:_,showFirstButton:b,showLastButton:y,siblingCount:x,size:k,variant:D},M=NGe(A);return C.jsx(MGe,{"aria-label":"pagination navigation",className:dt(M.root,o),ownerState:A,ref:n,...R,children:C.jsx(PGe,{className:M.ul,ownerState:A,children:E.map((N,P)=>C.jsx("li",{children:m({...N,color:a,"aria-label":d(N.type,N.page,N.selected),shape:_,size:k,variant:D})},P))})})}),BGe={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",whiteSpace:"nowrap",width:"1px"};function kLe(i){return Xt("MuiSelect",i)}const MR=Yt("MuiSelect",["root","select","multiple","filled","outlined","standard","disabled","focused","icon","iconOpen","iconFilled","iconOutlined","iconStandard","nativeInput","error"]);var vhe;const jGe=ye(CLe,{name:"MuiSelect",slot:"Select",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`&.${MR.select}`]:e.select},{[`&.${MR.select}`]:e[n.variant]},{[`&.${MR.error}`]:e.error},{[`&.${MR.multiple}`]:e.multiple}]}})({[`&.${MR.select}`]:{height:"auto",minHeight:"1.4375em",textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden"}}),WGe=ye(SLe,{name:"MuiSelect",slot:"Icon",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.icon,n.variant&&e[`icon${Ue(n.variant)}`],n.open&&e.iconOpen]}})({}),$Ge=ye("input",{shouldForwardProp:i=>bW(i)&&i!=="classes",name:"MuiSelect",slot:"NativeInput"})({bottom:0,left:0,position:"absolute",opacity:0,pointerEvents:"none",width:"100%",boxSizing:"border-box"});function bhe(i,e){return typeof e=="object"&&e!==null?i===e:String(i)===String(e)}function zGe(i){return i==null||typeof i=="string"&&!i.trim()}const VGe=i=>{const{classes:e,variant:n,disabled:r,multiple:s,open:o,error:a}=i,l={select:["select",n,r&&"disabled",s&&"multiple",a&&"error"],icon:["icon",`icon${Ue(n)}`,o&&"iconOpen",r&&"disabled"],nativeInput:["nativeInput"]};return Zt(l,kLe,e)},HGe=$.forwardRef(function(e,n){var Bt,jn;const{"aria-describedby":r,"aria-label":s,autoFocus:o,autoWidth:a,children:l,className:c,defaultOpen:u,defaultValue:d,disabled:h,displayEmpty:f,error:p=!1,IconComponent:g,inputRef:m,labelId:_,MenuProps:b={},multiple:y,name:x,onBlur:k,onChange:D,onClose:R,onFocus:E,onOpen:A,open:M,readOnly:N,renderValue:P,required:O,SelectDisplayProps:B={},tabIndex:j,type:z,value:H,variant:Y="standard",...X}=e,[Q,ie]=Im({controlled:H,default:d,name:"Select"}),[K,ee]=Im({controlled:M,default:u,name:"Select"}),le=$.useRef(null),ke=$.useRef(null),[xe,me]=$.useState(null),{current:Ee}=$.useRef(M!=null),[je,qe]=$.useState(),Ze=mo(n,m),We=$.useCallback(Dt=>{ke.current=Dt,Dt&&me(Dt)},[]),ut=xe==null?void 0:xe.parentNode;$.useImperativeHandle(Ze,()=>({focus:()=>{ke.current.focus()},node:le.current,value:Q}),[Q]),$.useEffect(()=>{u&&K&&xe&&!Ee&&(qe(a?null:ut.clientWidth),ke.current.focus())},[xe,a]),$.useEffect(()=>{o&&ke.current.focus()},[o]),$.useEffect(()=>{if(!_)return;const Dt=gl(ke.current).getElementById(_);if(Dt){const Fn=()=>{getSelection().isCollapsed&&ke.current.focus()};return Dt.addEventListener("click",Fn),()=>{Dt.removeEventListener("click",Fn)}}},[_]);const st=(Dt,Fn)=>{Dt?A&&A(Fn):R&&R(Fn),Ee||(qe(a?null:ut.clientWidth),ee(Dt))},mt=Dt=>{Dt.button===0&&(Dt.preventDefault(),ke.current.focus(),st(!0,Dt))},Rt=Dt=>{st(!1,Dt)},Vt=$.Children.toArray(l),Ot=Dt=>{const Fn=Vt.find(tn=>tn.props.value===Dt.target.value);Fn!==void 0&&(ie(Fn.props.value),D&&D(Dt,Fn))},vt=Dt=>Fn=>{let tn;if(Fn.currentTarget.hasAttribute("tabindex")){if(y){tn=Array.isArray(Q)?Q.slice():[];const pi=Q.indexOf(Dt.props.value);pi===-1?tn.push(Dt.props.value):tn.splice(pi,1)}else tn=Dt.props.value;if(Dt.props.onClick&&Dt.props.onClick(Fn),Q!==tn&&(ie(tn),D)){const pi=Fn.nativeEvent||Fn,Pi=new pi.constructor(pi.type,pi);Object.defineProperty(Pi,"target",{writable:!0,value:{value:tn,name:x}}),D(Pi,Dt)}y||st(!1,Fn)}},wn=Dt=>{N||[" ","ArrowUp","ArrowDown","Enter"].includes(Dt.key)&&(Dt.preventDefault(),st(!0,Dt))},Ce=xe!==null&&K,ge=Dt=>{!Ce&&k&&(Object.defineProperty(Dt,"target",{writable:!0,value:{value:Q,name:x}}),k(Dt))};delete X["aria-invalid"];let pe,ne;const ae=[];let ue=!1;(g9({value:Q})||f)&&(P?pe=P(Q):ue=!0);const de=Vt.map(Dt=>{if(!$.isValidElement(Dt))return null;let Fn;if(y){if(!Array.isArray(Q))throw new Error(kv(2));Fn=Q.some(tn=>bhe(tn,Dt.props.value)),Fn&&ue&&ae.push(Dt.props.children)}else Fn=bhe(Q,Dt.props.value),Fn&&ue&&(ne=Dt.props.children);return $.cloneElement(Dt,{"aria-selected":Fn?"true":"false",onClick:vt(Dt),onKeyUp:tn=>{tn.key===" "&&tn.preventDefault(),Dt.props.onKeyUp&&Dt.props.onKeyUp(tn)},role:"option",selected:Fn,value:void 0,"data-value":Dt.props.value})});ue&&(y?ae.length===0?pe=null:pe=ae.reduce((Dt,Fn,tn)=>(Dt.push(Fn),tn{const{classes:e}=i,r=Zt({root:["root"]},kLe,e);return{...e,...r}},rse={name:"MuiSelect",slot:"Root",shouldForwardProp:i=>vl(i)&&i!=="variant"},qGe=ye(Jre,rse)(""),KGe=ye(TI,rse)(""),GGe=ye(Zre,rse)(""),sse=$.forwardRef(function(e,n){const r=Qt({name:"MuiSelect",props:e}),{autoWidth:s=!1,children:o,classes:a={},className:l,defaultOpen:c=!1,displayEmpty:u=!1,IconComponent:d=Jke,id:h,input:f,inputProps:p,label:g,labelId:m,MenuProps:_,multiple:b=!1,native:y=!1,onClose:x,onOpen:k,open:D,renderValue:R,SelectDisplayProps:E,variant:A="outlined",...M}=r,N=y?fGe:HGe,P=Ov(),O=Ux({props:r,muiFormControl:P,states:["variant","error"]}),B=O.variant||A,j={...r,variant:B,classes:a},z=UGe(j),{root:H,...Y}=z,X=f||{standard:C.jsx(qGe,{ownerState:j}),outlined:C.jsx(KGe,{label:g,ownerState:j}),filled:C.jsx(GGe,{ownerState:j})}[B],Q=mo(n,Hx(X));return C.jsx($.Fragment,{children:$.cloneElement(X,{inputComponent:N,inputProps:{children:o,error:O.error,IconComponent:d,variant:B,type:void 0,multiple:b,...y?{id:h}:{autoWidth:s,defaultOpen:c,displayEmpty:u,labelId:m,MenuProps:_,onClose:x,onOpen:k,open:D,renderValue:R,SelectDisplayProps:{id:h,...E}},...p,classes:p?pl(Y,p.classes):Y,...f?f.props.inputProps:{}},...(b&&y||u)&&B==="outlined"?{notched:!0}:{},ref:Q,className:dt(X.props.className,l,z.root),...!f&&{variant:B},...M})})});sse.muiName="Select";function XGe(i){return Xt("MuiSkeleton",i)}Yt("MuiSkeleton",["root","text","rectangular","rounded","circular","pulse","wave","withChildren","fitContent","heightAuto"]);const YGe=i=>{const{classes:e,variant:n,animation:r,hasChildren:s,width:o,height:a}=i;return Zt({root:["root",n,r,s&&"withChildren",s&&!o&&"fitContent",s&&!a&&"heightAuto"]},XGe,e)},BZ=tg` 0% { opacity: 1; } 50% { opacity: 0.4; } 100% { opacity: 1; } `,jZ=tg` 0% { transform: translateX(-100%); } 50% { /* +0.5s of delay between each loop */ transform: translateX(100%); } 100% { transform: translateX(100%); } `,ZGe=typeof BZ!="string"?Mv` animation: ${BZ} 2s ease-in-out 0.5s infinite; `:null,QGe=typeof jZ!="string"?Mv` &::after { animation: ${jZ} 2s linear 0.5s infinite; } `:null,JGe=ye("span",{name:"MuiSkeleton",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],n.animation!==!1&&e[n.animation],n.hasChildren&&e.withChildren,n.hasChildren&&!n.width&&e.fitContent,n.hasChildren&&!n.height&&e.heightAuto]}})(jt(({theme:i})=>{const e=zWe(i.shape.borderRadius)||"px",n=VWe(i.shape.borderRadius);return{display:"block",backgroundColor:i.vars?i.vars.palette.Skeleton.bg:Pt(i.palette.text.primary,i.palette.mode==="light"?.11:.13),height:"1.2em",variants:[{props:{variant:"text"},style:{marginTop:0,marginBottom:0,height:"auto",transformOrigin:"0 55%",transform:"scale(1, 0.60)",borderRadius:`${n}${e}/${Math.round(n/.6*10)/10}${e}`,"&:empty:before":{content:'"\\00a0"'}}},{props:{variant:"circular"},style:{borderRadius:"50%"}},{props:{variant:"rounded"},style:{borderRadius:(i.vars||i).shape.borderRadius}},{props:({ownerState:r})=>r.hasChildren,style:{"& > *":{visibility:"hidden"}}},{props:({ownerState:r})=>r.hasChildren&&!r.width,style:{maxWidth:"fit-content"}},{props:({ownerState:r})=>r.hasChildren&&!r.height,style:{height:"auto"}},{props:{animation:"pulse"},style:ZGe||{animation:`${BZ} 2s ease-in-out 0.5s infinite`}},{props:{animation:"wave"},style:{position:"relative",overflow:"hidden",WebkitMaskImage:"-webkit-radial-gradient(white, black)","&::after":{background:`linear-gradient( 90deg, transparent, ${(i.vars||i).palette.action.hover}, transparent )`,content:'""',position:"absolute",transform:"translateX(-100%)",bottom:0,left:0,right:0,top:0}}},{props:{animation:"wave"},style:QGe||{"&::after":{animation:`${jZ} 2s linear 0.5s infinite`}}}]}})),bU=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiSkeleton"}),{animation:s="pulse",className:o,component:a="span",height:l,style:c,variant:u="text",width:d,...h}=r,f={...r,animation:s,component:a,variant:u,hasChildren:!!h.children},p=YGe(f);return C.jsx(JGe,{as:a,ref:n,className:dt(p.root,o),ownerState:f,...h,style:{width:d,height:l,...c}})});function eXe(i,e,n=(r,s)=>r===s){return i.length===e.length&&i.every((r,s)=>n(r,e[s]))}const tXe=2;function VL(i,e,n,r,s){return n===1?Math.min(i+e,s):Math.max(i-e,r)}function LLe(i,e){return i-e}function yhe(i,e){const{index:n}=i.reduce((r,s,o)=>{const a=Math.abs(e-s);return r===null||a({left:`${i}%`}),leap:i=>({width:`${i}%`})},"horizontal-reverse":{offset:i=>({right:`${i}%`}),leap:i=>({width:`${i}%`})},vertical:{offset:i=>({bottom:`${i}%`}),leap:i=>({height:`${i}%`})}},oXe=i=>i;let C3;function Che(){return C3===void 0&&(typeof CSS<"u"&&typeof CSS.supports=="function"?C3=CSS.supports("touch-action","none"):C3=!0),C3}function aXe(i){const{"aria-labelledby":e,defaultValue:n,disabled:r=!1,disableSwap:s=!1,isRtl:o=!1,marks:a=!1,max:l=100,min:c=0,name:u,onChange:d,onChangeCommitted:h,orientation:f="horizontal",rootRef:p,scale:g=oXe,step:m=1,shiftStep:_=10,tabIndex:b,value:y}=i,x=$.useRef(void 0),[k,D]=$.useState(-1),[R,E]=$.useState(-1),[A,M]=$.useState(!1),N=$.useRef(0),P=$.useRef(null),[O,B]=Im({controlled:y,default:n??c,name:"Slider"}),j=d&&((ue,de,Se)=>{const Ie=ue.nativeEvent||ue,nt=new Ie.constructor(Ie.type,Ie);Object.defineProperty(nt,"target",{writable:!0,value:{value:de,name:u}}),P.current=de,d(nt,de,Se)}),z=Array.isArray(O);let H=z?O.slice().sort(LLe):[O];H=H.map(ue=>ue==null?c:FD(ue,c,l));const Y=a===!0&&m!==null?[...Array(Math.floor((l-c)/m)+1)].map((ue,de)=>({value:c+m*de})):a||[],X=Y.map(ue=>ue.value),[Q,ie]=$.useState(-1),K=$.useRef(null),ee=mo(p,K),le=ue=>de=>{var Ie;const Se=Number(de.currentTarget.getAttribute("data-index"));o1(de.target)&&ie(Se),E(Se),(Ie=ue==null?void 0:ue.onFocus)==null||Ie.call(ue,de)},ke=ue=>de=>{var Se;o1(de.target)||ie(-1),E(-1),(Se=ue==null?void 0:ue.onBlur)==null||Se.call(ue,de)},xe=(ue,de)=>{const Se=Number(ue.currentTarget.getAttribute("data-index")),Ie=H[Se],nt=X.indexOf(Ie);let Oe=de;if(Y&&m==null){const Ve=X[X.length-1];Oe>=Ve?Oe=Ve:Oe<=X[0]?Oe=X[0]:Oe=Oede=>{var Se;if(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight","PageUp","PageDown","Home","End"].includes(de.key)){de.preventDefault();const Ie=Number(de.currentTarget.getAttribute("data-index")),nt=H[Ie];let Oe=null;if(m!=null){const Ve=de.shiftKey?_:m;switch(de.key){case"ArrowUp":Oe=VL(nt,Ve,1,c,l);break;case"ArrowRight":Oe=VL(nt,Ve,o?-1:1,c,l);break;case"ArrowDown":Oe=VL(nt,Ve,-1,c,l);break;case"ArrowLeft":Oe=VL(nt,Ve,o?1:-1,c,l);break;case"PageUp":Oe=VL(nt,_,1,c,l);break;case"PageDown":Oe=VL(nt,_,-1,c,l);break;case"Home":Oe=c;break;case"End":Oe=l;break}}else if(Y){const Ve=X[X.length-1],gt=X.indexOf(nt),$t=[o?"ArrowRight":"ArrowLeft","ArrowDown","PageDown","Home"],Mt=[o?"ArrowLeft":"ArrowRight","ArrowUp","PageUp","End"];$t.includes(de.key)?gt===0?Oe=X[0]:Oe=X[gt-1]:Mt.includes(de.key)&&(gt===X.length-1?Oe=Ve:Oe=X[gt+1])}Oe!=null&&xe(de,Oe)}(Se=ue==null?void 0:ue.onKeyDown)==null||Se.call(ue,de)};wc(()=>{var ue;r&&K.current.contains(document.activeElement)&&((ue=document.activeElement)==null||ue.blur())},[r]),r&&k!==-1&&D(-1),r&&Q!==-1&&ie(-1);const Ee=ue=>de=>{var Se;(Se=ue.onChange)==null||Se.call(ue,de),xe(de,de.target.valueAsNumber)},je=$.useRef(void 0);let qe=f;o&&f==="horizontal"&&(qe+="-reverse");const Ze=({finger:ue,move:de=!1})=>{const{current:Se}=K,{width:Ie,height:nt,bottom:Oe,left:Ve}=Se.getBoundingClientRect();let gt;qe.startsWith("vertical")?gt=(Oe-ue.y)/nt:gt=(ue.x-Ve)/Ie,qe.includes("-reverse")&&(gt=1-gt);let $t;if($t=nXe(gt,c,l),m)$t=rXe($t,m,c);else{const Bt=yhe(X,$t);$t=X[Bt]}$t=FD($t,c,l);let Mt=0;if(z){de?Mt=je.current:Mt=yhe(H,$t),s&&($t=FD($t,H[Mt-1]||-1/0,H[Mt+1]||1/0));const Bt=$t;$t=whe({values:H,newValue:$t,index:Mt}),s&&de||(Mt=$t.indexOf(Bt),je.current=Mt)}return{newValue:$t,activeIndex:Mt}},We=Ha(ue=>{const de=b3(ue,x);if(!de)return;if(N.current+=1,ue.type==="mousemove"&&ue.buttons===0){ut(ue);return}const{newValue:Se,activeIndex:Ie}=Ze({finger:de,move:!0});y3({sliderRef:K,activeIndex:Ie,setActive:D}),B(Se),!A&&N.current>tXe&&M(!0),j&&!w3(Se,O)&&j(ue,Se,Ie)}),ut=Ha(ue=>{const de=b3(ue,x);if(M(!1),!de)return;const{newValue:Se}=Ze({finger:de,move:!0});D(-1),ue.type==="touchend"&&E(-1),h&&h(ue,P.current??Se),x.current=void 0,mt()}),st=Ha(ue=>{if(r)return;Che()||ue.preventDefault();const de=ue.changedTouches[0];de!=null&&(x.current=de.identifier);const Se=b3(ue,x);if(Se!==!1){const{newValue:nt,activeIndex:Oe}=Ze({finger:Se});y3({sliderRef:K,activeIndex:Oe,setActive:D}),B(nt),j&&!w3(nt,O)&&j(ue,nt,Oe)}N.current=0;const Ie=gl(K.current);Ie.addEventListener("touchmove",We,{passive:!0}),Ie.addEventListener("touchend",ut,{passive:!0})}),mt=$.useCallback(()=>{const ue=gl(K.current);ue.removeEventListener("mousemove",We),ue.removeEventListener("mouseup",ut),ue.removeEventListener("touchmove",We),ue.removeEventListener("touchend",ut)},[ut,We]);$.useEffect(()=>{const{current:ue}=K;return ue.addEventListener("touchstart",st,{passive:Che()}),()=>{ue.removeEventListener("touchstart",st),mt()}},[mt,st]),$.useEffect(()=>{r&&mt()},[r,mt]);const Rt=ue=>de=>{var nt;if((nt=ue.onMouseDown)==null||nt.call(ue,de),r||de.defaultPrevented||de.button!==0)return;de.preventDefault();const Se=b3(de,x);if(Se!==!1){const{newValue:Oe,activeIndex:Ve}=Ze({finger:Se});y3({sliderRef:K,activeIndex:Ve,setActive:D}),B(Oe),j&&!w3(Oe,O)&&j(de,Oe,Ve)}N.current=0;const Ie=gl(K.current);Ie.addEventListener("mousemove",We,{passive:!0}),Ie.addEventListener("mouseup",ut)},Vt=v9(z?H[0]:c,c,l),Ot=v9(H[H.length-1],c,l)-Vt,vt=(ue={})=>{const de=VN(ue),Se={onMouseDown:Rt(de||{})},Ie={...de,...Se};return{...ue,ref:ee,...Ie}},wn=ue=>de=>{var Ie;(Ie=ue.onMouseOver)==null||Ie.call(ue,de);const Se=Number(de.currentTarget.getAttribute("data-index"));E(Se)},Ce=ue=>de=>{var Se;(Se=ue.onMouseLeave)==null||Se.call(ue,de),E(-1)},ge=(ue={})=>{const de=VN(ue),Se={onMouseOver:wn(de||{}),onMouseLeave:Ce(de||{})};return{...ue,...de,...Se}},pe=ue=>({pointerEvents:k!==-1&&k!==ue?"none":void 0});let ne;return f==="vertical"&&(ne=o?"vertical-rl":"vertical-lr"),{active:k,axis:qe,axisProps:sXe,dragging:A,focusedThumbIndex:Q,getHiddenInputProps:(ue={})=>{const de=VN(ue),Se={onChange:Ee(de||{}),onFocus:le(de||{}),onBlur:ke(de||{}),onKeyDown:me(de||{})},Ie={...de,...Se};return{tabIndex:b,"aria-labelledby":e,"aria-orientation":f,"aria-valuemax":g(l),"aria-valuemin":g(c),name:u,type:"range",min:i.min,max:i.max,step:i.step===null&&i.marks?"any":i.step??void 0,disabled:r,...ue,...Ie,style:{...BGe,direction:o?"rtl":"ltr",width:"100%",height:"100%",writingMode:ne}}},getRootProps:vt,getThumbProps:ge,marks:Y,open:R,range:z,rootRef:ee,trackLeap:Ot,trackOffset:Vt,values:H,getThumbStyle:pe}}const lXe=i=>!i||!dv(i);function cXe(i){return Xt("MuiSlider",i)}const gf=Yt("MuiSlider",["root","active","colorPrimary","colorSecondary","colorError","colorInfo","colorSuccess","colorWarning","disabled","dragging","focusVisible","mark","markActive","marked","markLabel","markLabelActive","rail","sizeSmall","thumb","thumbColorPrimary","thumbColorSecondary","thumbColorError","thumbColorSuccess","thumbColorInfo","thumbColorWarning","track","trackInverted","trackFalse","thumbSizeSmall","valueLabel","valueLabelOpen","valueLabelCircle","valueLabelLabel","vertical"]),uXe=i=>{const{open:e}=i;return{offset:dt(e&&gf.valueLabelOpen),circle:gf.valueLabelCircle,label:gf.valueLabelLabel}};function dXe(i){const{children:e,className:n,value:r}=i,s=uXe(i);return e?$.cloneElement(e,{className:e.props.className},C.jsxs($.Fragment,{children:[e.props.children,C.jsx("span",{className:dt(s.offset,n),"aria-hidden":!0,children:C.jsx("span",{className:s.circle,children:C.jsx("span",{className:s.label,children:r})})})]})):null}function She(i){return i}const hXe=ye("span",{name:"MuiSlider",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[`color${Ue(n.color)}`],n.size!=="medium"&&e[`size${Ue(n.size)}`],n.marked&&e.marked,n.orientation==="vertical"&&e.vertical,n.track==="inverted"&&e.trackInverted,n.track===!1&&e.trackFalse]}})(jt(({theme:i})=>({borderRadius:12,boxSizing:"content-box",display:"inline-block",position:"relative",cursor:"pointer",touchAction:"none",WebkitTapHighlightColor:"transparent","@media print":{colorAdjust:"exact"},[`&.${gf.disabled}`]:{pointerEvents:"none",cursor:"default",color:(i.vars||i).palette.grey[400]},[`&.${gf.dragging}`]:{[`& .${gf.thumb}, & .${gf.track}`]:{transition:"none"}},variants:[...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{color:(i.vars||i).palette[e].main}})),{props:{orientation:"horizontal"},style:{height:4,width:"100%",padding:"13px 0","@media (pointer: coarse)":{padding:"20px 0"}}},{props:{orientation:"horizontal",size:"small"},style:{height:2}},{props:{orientation:"horizontal",marked:!0},style:{marginBottom:20}},{props:{orientation:"vertical"},style:{height:"100%",width:4,padding:"0 13px","@media (pointer: coarse)":{padding:"0 20px"}}},{props:{orientation:"vertical",size:"small"},style:{width:2}},{props:{orientation:"vertical",marked:!0},style:{marginRight:44}}]}))),fXe=ye("span",{name:"MuiSlider",slot:"Rail"})({display:"block",position:"absolute",borderRadius:"inherit",backgroundColor:"currentColor",opacity:.38,variants:[{props:{orientation:"horizontal"},style:{width:"100%",height:"inherit",top:"50%",transform:"translateY(-50%)"}},{props:{orientation:"vertical"},style:{height:"100%",width:"inherit",left:"50%",transform:"translateX(-50%)"}},{props:{track:"inverted"},style:{opacity:1}}]}),pXe=ye("span",{name:"MuiSlider",slot:"Track"})(jt(({theme:i})=>({display:"block",position:"absolute",borderRadius:"inherit",border:"1px solid currentColor",backgroundColor:"currentColor",transition:i.transitions.create(["left","width","bottom","height"],{duration:i.transitions.duration.shortest}),variants:[{props:{size:"small"},style:{border:"none"}},{props:{orientation:"horizontal"},style:{height:"inherit",top:"50%",transform:"translateY(-50%)"}},{props:{orientation:"vertical"},style:{width:"inherit",left:"50%",transform:"translateX(-50%)"}},{props:{track:!1},style:{display:"none"}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e,track:"inverted"},style:{...i.vars?{backgroundColor:i.vars.palette.Slider[`${e}Track`],borderColor:i.vars.palette.Slider[`${e}Track`]}:{backgroundColor:qp(i.palette[e].main,.62),borderColor:qp(i.palette[e].main,.62),...i.applyStyles("dark",{backgroundColor:$m(i.palette[e].main,.5)}),...i.applyStyles("dark",{borderColor:$m(i.palette[e].main,.5)})}}}))]}))),gXe=ye("span",{name:"MuiSlider",slot:"Thumb",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.thumb,e[`thumbColor${Ue(n.color)}`],n.size!=="medium"&&e[`thumbSize${Ue(n.size)}`]]}})(jt(({theme:i})=>({position:"absolute",width:20,height:20,boxSizing:"border-box",borderRadius:"50%",outline:0,backgroundColor:"currentColor",display:"flex",alignItems:"center",justifyContent:"center",transition:i.transitions.create(["box-shadow","left","bottom"],{duration:i.transitions.duration.shortest}),"&::before":{position:"absolute",content:'""',borderRadius:"inherit",width:"100%",height:"100%",boxShadow:(i.vars||i).shadows[2]},"&::after":{position:"absolute",content:'""',borderRadius:"50%",width:42,height:42,top:"50%",left:"50%",transform:"translate(-50%, -50%)"},[`&.${gf.disabled}`]:{"&:hover":{boxShadow:"none"}},variants:[{props:{size:"small"},style:{width:12,height:12,"&::before":{boxShadow:"none"}}},{props:{orientation:"horizontal"},style:{top:"50%",transform:"translate(-50%, -50%)"}},{props:{orientation:"vertical"},style:{left:"50%",transform:"translate(-50%, 50%)"}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{[`&:hover, &.${gf.focusVisible}`]:{...i.vars?{boxShadow:`0px 0px 0px 8px rgba(${i.vars.palette[e].mainChannel} / 0.16)`}:{boxShadow:`0px 0px 0px 8px ${Pt(i.palette[e].main,.16)}`},"@media (hover: none)":{boxShadow:"none"}},[`&.${gf.active}`]:{...i.vars?{boxShadow:`0px 0px 0px 14px rgba(${i.vars.palette[e].mainChannel} / 0.16)`}:{boxShadow:`0px 0px 0px 14px ${Pt(i.palette[e].main,.16)}`}}}}))]}))),mXe=ye(dXe,{name:"MuiSlider",slot:"ValueLabel"})(jt(({theme:i})=>({zIndex:1,whiteSpace:"nowrap",...i.typography.body2,fontWeight:500,transition:i.transitions.create(["transform"],{duration:i.transitions.duration.shortest}),position:"absolute",backgroundColor:(i.vars||i).palette.grey[600],borderRadius:2,color:(i.vars||i).palette.common.white,display:"flex",alignItems:"center",justifyContent:"center",padding:"0.25rem 0.75rem",variants:[{props:{orientation:"horizontal"},style:{transform:"translateY(-100%) scale(0)",top:"-10px",transformOrigin:"bottom center","&::before":{position:"absolute",content:'""',width:8,height:8,transform:"translate(-50%, 50%) rotate(45deg)",backgroundColor:"inherit",bottom:0,left:"50%"},[`&.${gf.valueLabelOpen}`]:{transform:"translateY(-100%) scale(1)"}}},{props:{orientation:"vertical"},style:{transform:"translateY(-50%) scale(0)",right:"30px",top:"50%",transformOrigin:"right center","&::before":{position:"absolute",content:'""',width:8,height:8,transform:"translate(-50%, -50%) rotate(45deg)",backgroundColor:"inherit",right:-8,top:"50%"},[`&.${gf.valueLabelOpen}`]:{transform:"translateY(-50%) scale(1)"}}},{props:{size:"small"},style:{fontSize:i.typography.pxToRem(12),padding:"0.25rem 0.5rem"}},{props:{orientation:"vertical",size:"small"},style:{right:"20px"}}]}))),_Xe=ye("span",{name:"MuiSlider",slot:"Mark",shouldForwardProp:i=>bW(i)&&i!=="markActive",overridesResolver:(i,e)=>{const{markActive:n}=i;return[e.mark,n&&e.markActive]}})(jt(({theme:i})=>({position:"absolute",width:2,height:2,borderRadius:1,backgroundColor:"currentColor",variants:[{props:{orientation:"horizontal"},style:{top:"50%",transform:"translate(-1px, -50%)"}},{props:{orientation:"vertical"},style:{left:"50%",transform:"translate(-50%, 1px)"}},{props:{markActive:!0},style:{backgroundColor:(i.vars||i).palette.background.paper,opacity:.8}}]}))),vXe=ye("span",{name:"MuiSlider",slot:"MarkLabel",shouldForwardProp:i=>bW(i)&&i!=="markLabelActive"})(jt(({theme:i})=>({...i.typography.body2,color:(i.vars||i).palette.text.secondary,position:"absolute",whiteSpace:"nowrap",variants:[{props:{orientation:"horizontal"},style:{top:30,transform:"translateX(-50%)","@media (pointer: coarse)":{top:40}}},{props:{orientation:"vertical"},style:{left:36,transform:"translateY(50%)","@media (pointer: coarse)":{left:44}}},{props:{markLabelActive:!0},style:{color:(i.vars||i).palette.text.primary}}]}))),bXe=i=>{const{disabled:e,dragging:n,marked:r,orientation:s,track:o,classes:a,color:l,size:c}=i,u={root:["root",e&&"disabled",n&&"dragging",r&&"marked",s==="vertical"&&"vertical",o==="inverted"&&"trackInverted",o===!1&&"trackFalse",l&&`color${Ue(l)}`,c&&`size${Ue(c)}`],rail:["rail"],track:["track"],mark:["mark"],markActive:["markActive"],markLabel:["markLabel"],markLabelActive:["markLabelActive"],valueLabel:["valueLabel"],thumb:["thumb",e&&"disabled",c&&`thumbSize${Ue(c)}`,l&&`thumbColor${Ue(l)}`],active:["active"],disabled:["disabled"],focusVisible:["focusVisible"]};return Zt(u,cXe,a)},yXe=({children:i})=>i,wXe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiSlider"}),s=Pv(),{"aria-label":o,"aria-valuetext":a,"aria-labelledby":l,component:c="span",components:u={},componentsProps:d={},color:h="primary",classes:f,className:p,disableSwap:g=!1,disabled:m=!1,getAriaLabel:_,getAriaValueText:b,marks:y=!1,max:x=100,min:k=0,name:D,onChange:R,onChangeCommitted:E,orientation:A="horizontal",shiftStep:M=10,size:N="medium",step:P=1,scale:O=She,slotProps:B,slots:j,tabIndex:z,track:H="normal",value:Y,valueLabelDisplay:X="off",valueLabelFormat:Q=She,...ie}=r,K={...r,isRtl:s,max:x,min:k,classes:f,disabled:m,disableSwap:g,orientation:A,marks:y,color:h,size:N,step:P,shiftStep:M,scale:O,track:H,valueLabelDisplay:X,valueLabelFormat:Q},{axisProps:ee,getRootProps:le,getHiddenInputProps:ke,getThumbProps:xe,open:me,active:Ee,axis:je,focusedThumbIndex:qe,range:Ze,dragging:We,marks:ut,values:st,trackOffset:mt,trackLeap:Rt,getThumbStyle:Vt}=aXe({...K,rootRef:n});K.marked=ut.length>0&&ut.some(ti=>ti.label),K.dragging=We,K.focusedThumbIndex=qe;const Ot=bXe(K),vt=(j==null?void 0:j.root)??u.Root??hXe,wn=(j==null?void 0:j.rail)??u.Rail??fXe,Ce=(j==null?void 0:j.track)??u.Track??pXe,ge=(j==null?void 0:j.thumb)??u.Thumb??gXe,pe=(j==null?void 0:j.valueLabel)??u.ValueLabel??mXe,ne=(j==null?void 0:j.mark)??u.Mark??_Xe,ae=(j==null?void 0:j.markLabel)??u.MarkLabel??vXe,ue=(j==null?void 0:j.input)??u.Input??"input",de=(B==null?void 0:B.root)??d.root,Se=(B==null?void 0:B.rail)??d.rail,Ie=(B==null?void 0:B.track)??d.track,nt=(B==null?void 0:B.thumb)??d.thumb,Oe=(B==null?void 0:B.valueLabel)??d.valueLabel,Ve=(B==null?void 0:B.mark)??d.mark,gt=(B==null?void 0:B.markLabel)??d.markLabel,$t=(B==null?void 0:B.input)??d.input,Mt=$u({elementType:vt,getSlotProps:le,externalSlotProps:de,externalForwardedProps:ie,additionalProps:{...lXe(vt)&&{as:c}},ownerState:{...K,...de==null?void 0:de.ownerState},className:[Ot.root,p]}),Bt=$u({elementType:wn,externalSlotProps:Se,ownerState:K,className:Ot.rail}),jn=$u({elementType:Ce,externalSlotProps:Ie,additionalProps:{style:{...ee[je].offset(mt),...ee[je].leap(Rt)}},ownerState:{...K,...Ie==null?void 0:Ie.ownerState},className:Ot.track}),Dt=$u({elementType:ge,getSlotProps:xe,externalSlotProps:nt,ownerState:{...K,...nt==null?void 0:nt.ownerState},className:Ot.thumb}),Fn=$u({elementType:pe,externalSlotProps:Oe,ownerState:{...K,...Oe==null?void 0:Oe.ownerState},className:Ot.valueLabel}),tn=$u({elementType:ne,externalSlotProps:Ve,ownerState:K,className:Ot.mark}),pi=$u({elementType:ae,externalSlotProps:gt,ownerState:K,className:Ot.markLabel}),Pi=$u({elementType:ue,getSlotProps:ke,externalSlotProps:$t,ownerState:K});return C.jsxs(vt,{...Mt,children:[C.jsx(wn,{...Bt}),C.jsx(Ce,{...jn}),ut.filter(ti=>ti.value>=k&&ti.value<=x).map((ti,mi)=>{const ds=v9(ti.value,k,x),Nr=ee[je].offset(ds);let Br;return H===!1?Br=st.includes(ti.value):Br=H==="normal"&&(Ze?ti.value>=st[0]&&ti.value<=st[st.length-1]:ti.value<=st[0])||H==="inverted"&&(Ze?ti.value<=st[0]||ti.value>=st[st.length-1]:ti.value>=st[0]),C.jsxs($.Fragment,{children:[C.jsx(ne,{"data-index":mi,...tn,...!dv(ne)&&{markActive:Br},style:{...Nr,...tn.style},className:dt(tn.className,Br&&Ot.markActive)}),ti.label!=null?C.jsx(ae,{"aria-hidden":!0,"data-index":mi,...pi,...!dv(ae)&&{markLabelActive:Br},style:{...Nr,...pi.style},className:dt(Ot.markLabel,pi.className,Br&&Ot.markLabelActive),children:ti.label}):null]},mi)}),st.map((ti,mi)=>{const ds=v9(ti,k,x),Nr=ee[je].offset(ds),Br=X==="off"?yXe:pe;return C.jsx(Br,{...!dv(Br)&&{valueLabelFormat:Q,valueLabelDisplay:X,value:typeof Q=="function"?Q(O(ti),mi):Q,index:mi,open:me===mi||Ee===mi||X==="on",disabled:m},...Fn,children:C.jsx(ge,{"data-index":mi,...Dt,className:dt(Ot.thumb,Dt.className,Ee===mi&&Ot.active,qe===mi&&Ot.focusVisible),style:{...Nr,...Vt(mi),...Dt.style},children:C.jsx(ue,{"data-index":mi,"aria-label":_?_(mi):o,"aria-valuenow":O(ti),"aria-labelledby":l,"aria-valuetext":b?b(O(ti),mi):a,value:st[mi],...Pi})})},mi)})]})});function CXe(i){return Xt("MuiTooltip",i)}const co=Yt("MuiTooltip",["popper","popperInteractive","popperArrow","popperClose","tooltip","tooltipArrow","touch","tooltipPlacementLeft","tooltipPlacementRight","tooltipPlacementTop","tooltipPlacementBottom","arrow"]);function SXe(i){return Math.round(i*1e5)/1e5}const xXe=i=>{const{classes:e,disableInteractive:n,arrow:r,touch:s,placement:o}=i,a={popper:["popper",!n&&"popperInteractive",r&&"popperArrow"],tooltip:["tooltip",r&&"tooltipArrow",s&&"touch",`tooltipPlacement${Ue(o.split("-")[0])}`],arrow:["arrow"]};return Zt(a,CXe,e)},kXe=ye(CW,{name:"MuiTooltip",slot:"Popper",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.popper,!n.disableInteractive&&e.popperInteractive,n.arrow&&e.popperArrow,!n.open&&e.popperClose]}})(jt(({theme:i})=>({zIndex:(i.vars||i).zIndex.tooltip,pointerEvents:"none",variants:[{props:({ownerState:e})=>!e.disableInteractive,style:{pointerEvents:"auto"}},{props:({open:e})=>!e,style:{pointerEvents:"none"}},{props:({ownerState:e})=>e.arrow,style:{[`&[data-popper-placement*="bottom"] .${co.arrow}`]:{top:0,marginTop:"-0.71em","&::before":{transformOrigin:"0 100%"}},[`&[data-popper-placement*="top"] .${co.arrow}`]:{bottom:0,marginBottom:"-0.71em","&::before":{transformOrigin:"100% 0"}},[`&[data-popper-placement*="right"] .${co.arrow}`]:{height:"1em",width:"0.71em","&::before":{transformOrigin:"100% 100%"}},[`&[data-popper-placement*="left"] .${co.arrow}`]:{height:"1em",width:"0.71em","&::before":{transformOrigin:"0 0"}}}},{props:({ownerState:e})=>e.arrow&&!e.isRtl,style:{[`&[data-popper-placement*="right"] .${co.arrow}`]:{left:0,marginLeft:"-0.71em"}}},{props:({ownerState:e})=>e.arrow&&!!e.isRtl,style:{[`&[data-popper-placement*="right"] .${co.arrow}`]:{right:0,marginRight:"-0.71em"}}},{props:({ownerState:e})=>e.arrow&&!e.isRtl,style:{[`&[data-popper-placement*="left"] .${co.arrow}`]:{right:0,marginRight:"-0.71em"}}},{props:({ownerState:e})=>e.arrow&&!!e.isRtl,style:{[`&[data-popper-placement*="left"] .${co.arrow}`]:{left:0,marginLeft:"-0.71em"}}}]}))),LXe=ye("div",{name:"MuiTooltip",slot:"Tooltip",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.tooltip,n.touch&&e.touch,n.arrow&&e.tooltipArrow,e[`tooltipPlacement${Ue(n.placement.split("-")[0])}`]]}})(jt(({theme:i})=>({backgroundColor:i.vars?i.vars.palette.Tooltip.bg:Pt(i.palette.grey[700],.92),borderRadius:(i.vars||i).shape.borderRadius,color:(i.vars||i).palette.common.white,fontFamily:i.typography.fontFamily,padding:"4px 8px",fontSize:i.typography.pxToRem(11),maxWidth:300,margin:2,wordWrap:"break-word",fontWeight:i.typography.fontWeightMedium,[`.${co.popper}[data-popper-placement*="left"] &`]:{transformOrigin:"right center"},[`.${co.popper}[data-popper-placement*="right"] &`]:{transformOrigin:"left center"},[`.${co.popper}[data-popper-placement*="top"] &`]:{transformOrigin:"center bottom",marginBottom:"14px"},[`.${co.popper}[data-popper-placement*="bottom"] &`]:{transformOrigin:"center top",marginTop:"14px"},variants:[{props:({ownerState:e})=>e.arrow,style:{position:"relative",margin:0}},{props:({ownerState:e})=>e.touch,style:{padding:"8px 16px",fontSize:i.typography.pxToRem(14),lineHeight:`${SXe(16/14)}em`,fontWeight:i.typography.fontWeightRegular}},{props:({ownerState:e})=>!e.isRtl,style:{[`.${co.popper}[data-popper-placement*="left"] &`]:{marginRight:"14px"},[`.${co.popper}[data-popper-placement*="right"] &`]:{marginLeft:"14px"}}},{props:({ownerState:e})=>!e.isRtl&&e.touch,style:{[`.${co.popper}[data-popper-placement*="left"] &`]:{marginRight:"24px"},[`.${co.popper}[data-popper-placement*="right"] &`]:{marginLeft:"24px"}}},{props:({ownerState:e})=>!!e.isRtl,style:{[`.${co.popper}[data-popper-placement*="left"] &`]:{marginLeft:"14px"},[`.${co.popper}[data-popper-placement*="right"] &`]:{marginRight:"14px"}}},{props:({ownerState:e})=>!!e.isRtl&&e.touch,style:{[`.${co.popper}[data-popper-placement*="left"] &`]:{marginLeft:"24px"},[`.${co.popper}[data-popper-placement*="right"] &`]:{marginRight:"24px"}}},{props:({ownerState:e})=>e.touch,style:{[`.${co.popper}[data-popper-placement*="top"] &`]:{marginBottom:"24px"}}},{props:({ownerState:e})=>e.touch,style:{[`.${co.popper}[data-popper-placement*="bottom"] &`]:{marginTop:"24px"}}}]}))),DXe=ye("span",{name:"MuiTooltip",slot:"Arrow"})(jt(({theme:i})=>({overflow:"hidden",position:"absolute",width:"1em",height:"0.71em",boxSizing:"border-box",color:i.vars?i.vars.palette.Tooltip.bg:Pt(i.palette.grey[700],.9),"&::before":{content:'""',margin:"auto",display:"block",width:"100%",height:"100%",backgroundColor:"currentColor",transform:"rotate(45deg)"}})));let S3=!1;const xhe=new yW;let PR={x:0,y:0};function x3(i,e){return(n,...r)=>{e&&e(n,...r),i(n,...r)}}const ua=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTooltip"}),{arrow:s=!1,children:o,classes:a,components:l={},componentsProps:c={},describeChild:u=!1,disableFocusListener:d=!1,disableHoverListener:h=!1,disableInteractive:f=!1,disableTouchListener:p=!1,enterDelay:g=100,enterNextDelay:m=0,enterTouchDelay:_=700,followCursor:b=!1,id:y,leaveDelay:x=0,leaveTouchDelay:k=1500,onClose:D,onOpen:R,open:E,placement:A="bottom",PopperComponent:M,PopperProps:N={},slotProps:P={},slots:O={},title:B,TransitionComponent:j,TransitionProps:z,...H}=r,Y=$.isValidElement(o)?o:C.jsx("span",{children:o}),X=$i(),Q=Pv(),[ie,K]=$.useState(),[ee,le]=$.useState(null),ke=$.useRef(!1),xe=f||b,me=lS(),Ee=lS(),je=lS(),qe=lS(),[Ze,We]=Im({controlled:E,default:!1,name:"Tooltip",state:"open"});let ut=Ze;const st=W1(y),mt=$.useRef(),Rt=Ha(()=>{mt.current!==void 0&&(document.body.style.WebkitUserSelect=mt.current,mt.current=void 0),qe.clear()});$.useEffect(()=>Rt,[Rt]);const Vt=Mn=>{xhe.clear(),S3=!0,We(!0),R&&!ut&&R(Mn)},Ot=Ha(Mn=>{xhe.start(800+x,()=>{S3=!1}),We(!1),D&&ut&&D(Mn),me.start(X.transitions.duration.shortest,()=>{ke.current=!1})}),vt=Mn=>{ke.current&&Mn.type!=="touchstart"||(ie&&ie.removeAttribute("title"),Ee.clear(),je.clear(),g||S3&&m?Ee.start(S3?m:g,()=>{Vt(Mn)}):Vt(Mn))},wn=Mn=>{Ee.clear(),je.start(x,()=>{Ot(Mn)})},[,Ce]=$.useState(!1),ge=Mn=>{o1(Mn.target)||(Ce(!1),wn(Mn))},pe=Mn=>{ie||K(Mn.currentTarget),o1(Mn.target)&&(Ce(!0),vt(Mn))},ne=Mn=>{ke.current=!0;const hr=Y.props;hr.onTouchStart&&hr.onTouchStart(Mn)},ae=Mn=>{ne(Mn),je.clear(),me.clear(),Rt(),mt.current=document.body.style.WebkitUserSelect,document.body.style.WebkitUserSelect="none",qe.start(_,()=>{document.body.style.WebkitUserSelect=mt.current,vt(Mn)})},ue=Mn=>{Y.props.onTouchEnd&&Y.props.onTouchEnd(Mn),Rt(),je.start(k,()=>{Ot(Mn)})};$.useEffect(()=>{if(!ut)return;function Mn(hr){hr.key==="Escape"&&Ot(hr)}return document.addEventListener("keydown",Mn),()=>{document.removeEventListener("keydown",Mn)}},[Ot,ut]);const de=mo(Hx(Y),K,n);!B&&B!==0&&(ut=!1);const Se=$.useRef(),Ie=Mn=>{const hr=Y.props;hr.onMouseMove&&hr.onMouseMove(Mn),PR={x:Mn.clientX,y:Mn.clientY},Se.current&&Se.current.update()},nt={},Oe=typeof B=="string";u?(nt.title=!ut&&Oe&&!h?B:null,nt["aria-describedby"]=ut?st:null):(nt["aria-label"]=Oe?B:null,nt["aria-labelledby"]=ut&&!Oe?st:null);const Ve={...nt,...H,...Y.props,className:dt(H.className,Y.props.className),onTouchStart:ne,ref:de,...b?{onMouseMove:Ie}:{}},gt={};p||(Ve.onTouchStart=ae,Ve.onTouchEnd=ue),h||(Ve.onMouseOver=x3(vt,Ve.onMouseOver),Ve.onMouseLeave=x3(wn,Ve.onMouseLeave),xe||(gt.onMouseOver=vt,gt.onMouseLeave=wn)),d||(Ve.onFocus=x3(pe,Ve.onFocus),Ve.onBlur=x3(ge,Ve.onBlur),xe||(gt.onFocus=pe,gt.onBlur=ge));const $t={...r,isRtl:Q,arrow:s,disableInteractive:xe,placement:A,PopperComponentProp:M,touch:ke.current},Mt=typeof P.popper=="function"?P.popper($t):P.popper,Bt=$.useMemo(()=>{var hr,rn;let Mn=[{name:"arrow",enabled:!!ee,options:{element:ee,padding:4}}];return(hr=N.popperOptions)!=null&&hr.modifiers&&(Mn=Mn.concat(N.popperOptions.modifiers)),(rn=Mt==null?void 0:Mt.popperOptions)!=null&&rn.modifiers&&(Mn=Mn.concat(Mt.popperOptions.modifiers)),{...N.popperOptions,...Mt==null?void 0:Mt.popperOptions,modifiers:Mn}},[ee,N.popperOptions,Mt==null?void 0:Mt.popperOptions]),jn=xXe($t),Dt=typeof P.transition=="function"?P.transition($t):P.transition,Fn={slots:{popper:l.Popper,transition:l.Transition??j,tooltip:l.Tooltip,arrow:l.Arrow,...O},slotProps:{arrow:P.arrow??c.arrow,popper:{...N,...Mt??c.popper},tooltip:P.tooltip??c.tooltip,transition:{...z,...Dt??c.transition}}},[tn,pi]=an("popper",{elementType:kXe,externalForwardedProps:Fn,ownerState:$t,className:dt(jn.popper,N==null?void 0:N.className)}),[Pi,ti]=an("transition",{elementType:_9,externalForwardedProps:Fn,ownerState:$t}),[mi,ds]=an("tooltip",{elementType:LXe,className:jn.tooltip,externalForwardedProps:Fn,ownerState:$t}),[Nr,Br]=an("arrow",{elementType:DXe,className:jn.arrow,externalForwardedProps:Fn,ownerState:$t,ref:le});return C.jsxs($.Fragment,{children:[$.cloneElement(Y,Ve),C.jsx(tn,{as:M??CW,placement:A,anchorEl:b?{getBoundingClientRect:()=>({top:PR.y,left:PR.x,right:PR.x,bottom:PR.y,width:0,height:0})}:ie,popperRef:Se,open:ie?ut:!1,id:st,transition:!0,...gt,...pi,popperOptions:Bt,children:({TransitionProps:Mn})=>C.jsx(Pi,{timeout:X.transitions.duration.shorter,...Mn,...ti,children:C.jsxs(mi,{...ds,children:[B,s?C.jsx(Nr,{...Br}):null]})})})]})}),f5=$.createContext({}),NW=$.createContext({});function EXe(i){return Xt("MuiStep",i)}Yt("MuiStep",["root","horizontal","vertical","alternativeLabel","completed"]);const IXe=i=>{const{classes:e,orientation:n,alternativeLabel:r,completed:s}=i;return Zt({root:["root",n,r&&"alternativeLabel",s&&"completed"]},EXe,e)},TXe=ye("div",{name:"MuiStep",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.orientation],n.alternativeLabel&&e.alternativeLabel,n.completed&&e.completed]}})({variants:[{props:{orientation:"horizontal"},style:{paddingLeft:8,paddingRight:8}},{props:{alternativeLabel:!0},style:{flex:1,position:"relative"}}]}),khe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiStep"}),{active:s,children:o,className:a,component:l="div",completed:c,disabled:u,expanded:d=!1,index:h,last:f,...p}=r,{activeStep:g,connector:m,alternativeLabel:_,orientation:b,nonLinear:y}=$.useContext(f5);let[x=!1,k=!1,D=!1]=[s,c,u];g===h?x=s!==void 0?s:!0:!y&&g>h?k=c!==void 0?c:!0:!y&&g({index:h,last:f,expanded:d,icon:h+1,active:x,completed:k,disabled:D}),[h,f,d,x,k,D]),E={...r,active:x,orientation:b,alternativeLabel:_,completed:k,disabled:D,expanded:d,component:l},A=IXe(E),M=C.jsxs(TXe,{as:l,className:dt(A.root,a),ref:n,ownerState:E,...p,children:[m&&_&&h!==0?m:null,o]});return C.jsx(NW.Provider,{value:R,children:m&&!_&&h!==0?C.jsxs($.Fragment,{children:[m,M]}):M})}),RXe=Hr(C.jsx("path",{d:"M12 0a12 12 0 1 0 0 24 12 12 0 0 0 0-24zm-2 17l-5-5 1.4-1.4 3.6 3.6 7.6-7.6L19 8l-9 9z"})),AXe=Hr(C.jsx("path",{d:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"}));function NXe(i){return Xt("MuiStepIcon",i)}const yU=Yt("MuiStepIcon",["root","active","completed","error","text"]);var Lhe;const MXe=i=>{const{classes:e,active:n,completed:r,error:s}=i;return Zt({root:["root",n&&"active",r&&"completed",s&&"error"],text:["text"]},NXe,e)},wU=ye(u9,{name:"MuiStepIcon",slot:"Root"})(jt(({theme:i})=>({display:"block",transition:i.transitions.create("color",{duration:i.transitions.duration.shortest}),color:(i.vars||i).palette.text.disabled,[`&.${yU.completed}`]:{color:(i.vars||i).palette.primary.main},[`&.${yU.active}`]:{color:(i.vars||i).palette.primary.main},[`&.${yU.error}`]:{color:(i.vars||i).palette.error.main}}))),PXe=ye("text",{name:"MuiStepIcon",slot:"Text"})(jt(({theme:i})=>({fill:(i.vars||i).palette.primary.contrastText,fontSize:i.typography.caption.fontSize,fontFamily:i.typography.fontFamily}))),OXe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiStepIcon"}),{active:s=!1,className:o,completed:a=!1,error:l=!1,icon:c,...u}=r,d={...r,active:s,completed:a,error:l},h=MXe(d);if(typeof c=="number"||typeof c=="string"){const f=dt(o,h.root);return l?C.jsx(wU,{as:AXe,className:f,ref:n,ownerState:d,...u}):a?C.jsx(wU,{as:RXe,className:f,ref:n,ownerState:d,...u}):C.jsxs(wU,{className:f,ref:n,ownerState:d,...u,children:[Lhe||(Lhe=C.jsx("circle",{cx:"12",cy:"12",r:"12"})),C.jsx(PXe,{className:h.text,x:"12",y:"12",textAnchor:"middle",dominantBaseline:"central",ownerState:d,children:c})]})}return c});function FXe(i){return Xt("MuiStepLabel",i)}const py=Yt("MuiStepLabel",["root","horizontal","vertical","label","active","completed","error","disabled","iconContainer","alternativeLabel","labelContainer"]),BXe=i=>{const{classes:e,orientation:n,active:r,completed:s,error:o,disabled:a,alternativeLabel:l}=i;return Zt({root:["root",n,o&&"error",a&&"disabled",l&&"alternativeLabel"],label:["label",r&&"active",s&&"completed",o&&"error",a&&"disabled",l&&"alternativeLabel"],iconContainer:["iconContainer",r&&"active",s&&"completed",o&&"error",a&&"disabled",l&&"alternativeLabel"],labelContainer:["labelContainer",l&&"alternativeLabel"]},FXe,e)},jXe=ye("span",{name:"MuiStepLabel",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.orientation]]}})({display:"flex",alignItems:"center",[`&.${py.alternativeLabel}`]:{flexDirection:"column"},[`&.${py.disabled}`]:{cursor:"default"},variants:[{props:{orientation:"vertical"},style:{textAlign:"left",padding:"8px 0"}}]}),WXe=ye("span",{name:"MuiStepLabel",slot:"Label"})(jt(({theme:i})=>({...i.typography.body2,display:"block",transition:i.transitions.create("color",{duration:i.transitions.duration.shortest}),[`&.${py.active}`]:{color:(i.vars||i).palette.text.primary,fontWeight:500},[`&.${py.completed}`]:{color:(i.vars||i).palette.text.primary,fontWeight:500},[`&.${py.alternativeLabel}`]:{marginTop:16},[`&.${py.error}`]:{color:(i.vars||i).palette.error.main}}))),$Xe=ye("span",{name:"MuiStepLabel",slot:"IconContainer"})({flexShrink:0,display:"flex",paddingRight:8,[`&.${py.alternativeLabel}`]:{paddingRight:0}}),zXe=ye("span",{name:"MuiStepLabel",slot:"LabelContainer"})(jt(({theme:i})=>({width:"100%",color:(i.vars||i).palette.text.secondary,[`&.${py.alternativeLabel}`]:{textAlign:"center"}}))),WZ=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiStepLabel"}),{children:s,className:o,componentsProps:a={},error:l=!1,icon:c,optional:u,slots:d={},slotProps:h={},StepIconComponent:f,StepIconProps:p,...g}=r,{alternativeLabel:m,orientation:_}=$.useContext(f5),{active:b,disabled:y,completed:x,icon:k}=$.useContext(NW),D=c||k;let R=f;D&&!R&&(R=OXe);const E={...r,active:b,alternativeLabel:m,completed:x,disabled:y,error:l,orientation:_},A=BXe(E),M={slots:d,slotProps:{stepIcon:p,...a,...h}},[N,P]=an("root",{elementType:jXe,externalForwardedProps:{...M,...g},ownerState:E,ref:n,className:dt(A.root,o)}),[O,B]=an("label",{elementType:WXe,externalForwardedProps:M,ownerState:E}),[j,z]=an("stepIcon",{elementType:R,externalForwardedProps:M,ownerState:E});return C.jsxs(N,{...P,children:[D||j?C.jsx($Xe,{className:A.iconContainer,ownerState:E,children:C.jsx(j,{completed:x,active:b,error:l,icon:D,...z})}):null,C.jsxs(zXe,{className:A.labelContainer,ownerState:E,children:[s?C.jsx(O,{...B,className:dt(A.label,B==null?void 0:B.className),children:s}):null,u]})]})});WZ.muiName="StepLabel";function VXe(i){return Xt("MuiStepConnector",i)}Yt("MuiStepConnector",["root","horizontal","vertical","alternativeLabel","active","completed","disabled","line","lineHorizontal","lineVertical"]);const HXe=i=>{const{classes:e,orientation:n,alternativeLabel:r,active:s,completed:o,disabled:a}=i,l={root:["root",n,r&&"alternativeLabel",s&&"active",o&&"completed",a&&"disabled"],line:["line",`line${Ue(n)}`]};return Zt(l,VXe,e)},UXe=ye("div",{name:"MuiStepConnector",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.orientation],n.alternativeLabel&&e.alternativeLabel,n.completed&&e.completed]}})({flex:"1 1 auto",variants:[{props:{orientation:"vertical"},style:{marginLeft:12}},{props:{alternativeLabel:!0},style:{position:"absolute",top:12,left:"calc(-50% + 20px)",right:"calc(50% + 20px)"}}]}),qXe=ye("span",{name:"MuiStepConnector",slot:"Line",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.line,e[`line${Ue(n.orientation)}`]]}})(jt(({theme:i})=>{const e=i.palette.mode==="light"?i.palette.grey[400]:i.palette.grey[600];return{display:"block",borderColor:i.vars?i.vars.palette.StepConnector.border:e,variants:[{props:{orientation:"horizontal"},style:{borderTopStyle:"solid",borderTopWidth:1}},{props:{orientation:"vertical"},style:{borderLeftStyle:"solid",borderLeftWidth:1,minHeight:24}}]}})),KXe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiStepConnector"}),{className:s,...o}=r,{alternativeLabel:a,orientation:l="horizontal"}=$.useContext(f5),{active:c,disabled:u,completed:d}=$.useContext(NW),h={...r,alternativeLabel:a,orientation:l,active:c,completed:d,disabled:u},f=HXe(h);return C.jsx(UXe,{className:dt(f.root,s),ref:n,ownerState:h,...o,children:C.jsx(qXe,{className:f.line,ownerState:h})})});function GXe(i){return Xt("MuiStepContent",i)}Yt("MuiStepContent",["root","last","transition"]);const XXe=i=>{const{classes:e,last:n}=i;return Zt({root:["root",n&&"last"],transition:["transition"]},GXe,e)},YXe=ye("div",{name:"MuiStepContent",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.last&&e.last]}})(jt(({theme:i})=>({marginLeft:12,paddingLeft:20,paddingRight:8,borderLeft:i.vars?`1px solid ${i.vars.palette.StepContent.border}`:`1px solid ${i.palette.mode==="light"?i.palette.grey[400]:i.palette.grey[600]}`,variants:[{props:{last:!0},style:{borderLeft:"none"}}]}))),ZXe=ye(_E,{name:"MuiStepContent",slot:"Transition"})({}),Dhe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiStepContent"}),{children:s,className:o,TransitionComponent:a=_E,transitionDuration:l="auto",TransitionProps:c,slots:u={},slotProps:d={},...h}=r,{orientation:f}=$.useContext(f5),{active:p,last:g,expanded:m}=$.useContext(NW),_={...r,last:g},b=XXe(_);let y=l;l==="auto"&&!a.muiSupportAuto&&(y=void 0);const x={slots:u,slotProps:{transition:c,...d}},[k,D]=an("transition",{elementType:ZXe,externalForwardedProps:x,ownerState:_,className:b.transition,additionalProps:{in:p||m,timeout:y,unmountOnExit:!0}});return C.jsx(YXe,{className:dt(b.root,o),ref:n,ownerState:_,...h,children:C.jsx(k,{as:a,...D,children:s})})});function QXe(i){return Xt("MuiStepper",i)}Yt("MuiStepper",["root","horizontal","vertical","nonLinear","alternativeLabel"]);const JXe=i=>{const{orientation:e,nonLinear:n,alternativeLabel:r,classes:s}=i;return Zt({root:["root",e,n&&"nonLinear",r&&"alternativeLabel"]},QXe,s)},eYe=ye("div",{name:"MuiStepper",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.orientation],n.alternativeLabel&&e.alternativeLabel,n.nonLinear&&e.nonLinear]}})({display:"flex",variants:[{props:{orientation:"horizontal"},style:{flexDirection:"row",alignItems:"center"}},{props:{orientation:"vertical"},style:{flexDirection:"column"}},{props:{alternativeLabel:!0},style:{alignItems:"flex-start"}}]}),tYe=C.jsx(KXe,{}),nYe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiStepper"}),{activeStep:s=0,alternativeLabel:o=!1,children:a,className:l,component:c="div",connector:u=tYe,nonLinear:d=!1,orientation:h="horizontal",...f}=r,p={...r,nonLinear:d,alternativeLabel:o,orientation:h,component:c},g=JXe(p),m=$.Children.toArray(a).filter(Boolean),_=m.map((y,x)=>$.cloneElement(y,{index:x,last:x+1===m.length,...y.props})),b=$.useMemo(()=>({activeStep:s,alternativeLabel:o,connector:u,nonLinear:d,orientation:h}),[s,o,u,d,h]);return C.jsx(f5.Provider,{value:b,children:C.jsx(eYe,{as:c,ownerState:p,className:dt(g.root,l),ref:n,...f,children:_})})});function iYe(i){return Xt("MuiSwitch",i)}const Hc=Yt("MuiSwitch",["root","edgeStart","edgeEnd","switchBase","colorPrimary","colorSecondary","sizeSmall","sizeMedium","checked","disabled","input","thumb","track"]),rYe=i=>{const{classes:e,edge:n,size:r,color:s,checked:o,disabled:a}=i,l={root:["root",n&&`edge${Ue(n)}`,`size${Ue(r)}`],switchBase:["switchBase",`color${Ue(s)}`,o&&"checked",a&&"disabled"],thumb:["thumb"],track:["track"],input:["input"]},c=Zt(l,iYe,e);return{...e,...c}},sYe=ye("span",{name:"MuiSwitch",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.edge&&e[`edge${Ue(n.edge)}`],e[`size${Ue(n.size)}`]]}})({display:"inline-flex",width:34+12*2,height:14+12*2,overflow:"hidden",padding:12,boxSizing:"border-box",position:"relative",flexShrink:0,zIndex:0,verticalAlign:"middle","@media print":{colorAdjust:"exact"},variants:[{props:{edge:"start"},style:{marginLeft:-8}},{props:{edge:"end"},style:{marginRight:-8}},{props:{size:"small"},style:{width:40,height:24,padding:7,[`& .${Hc.thumb}`]:{width:16,height:16},[`& .${Hc.switchBase}`]:{padding:4,[`&.${Hc.checked}`]:{transform:"translateX(16px)"}}}}]}),oYe=ye(oLe,{name:"MuiSwitch",slot:"SwitchBase",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.switchBase,{[`& .${Hc.input}`]:e.input},n.color!=="default"&&e[`color${Ue(n.color)}`]]}})(jt(({theme:i})=>({position:"absolute",top:0,left:0,zIndex:1,color:i.vars?i.vars.palette.Switch.defaultColor:`${i.palette.mode==="light"?i.palette.common.white:i.palette.grey[300]}`,transition:i.transitions.create(["left","transform"],{duration:i.transitions.duration.shortest}),[`&.${Hc.checked}`]:{transform:"translateX(20px)"},[`&.${Hc.disabled}`]:{color:i.vars?i.vars.palette.Switch.defaultDisabledColor:`${i.palette.mode==="light"?i.palette.grey[100]:i.palette.grey[600]}`},[`&.${Hc.checked} + .${Hc.track}`]:{opacity:.5},[`&.${Hc.disabled} + .${Hc.track}`]:{opacity:i.vars?i.vars.opacity.switchTrackDisabled:`${i.palette.mode==="light"?.12:.2}`},[`& .${Hc.input}`]:{left:"-100%",width:"300%"}})),jt(({theme:i})=>({"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette.action.activeChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette.action.active,i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},variants:[...Object.entries(i.palette).filter(br(["light"])).map(([e])=>({props:{color:e},style:{[`&.${Hc.checked}`]:{color:(i.vars||i).palette[e].main,"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette[e].main,i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${Hc.disabled}`]:{color:i.vars?i.vars.palette.Switch[`${e}DisabledColor`]:`${i.palette.mode==="light"?qp(i.palette[e].main,.62):$m(i.palette[e].main,.55)}`}},[`&.${Hc.checked} + .${Hc.track}`]:{backgroundColor:(i.vars||i).palette[e].main}}}))]}))),aYe=ye("span",{name:"MuiSwitch",slot:"Track"})(jt(({theme:i})=>({height:"100%",width:"100%",borderRadius:14/2,zIndex:-1,transition:i.transitions.create(["opacity","background-color"],{duration:i.transitions.duration.shortest}),backgroundColor:i.vars?i.vars.palette.common.onBackground:`${i.palette.mode==="light"?i.palette.common.black:i.palette.common.white}`,opacity:i.vars?i.vars.opacity.switchTrack:`${i.palette.mode==="light"?.38:.3}`}))),lYe=ye("span",{name:"MuiSwitch",slot:"Thumb"})(jt(({theme:i})=>({boxShadow:(i.vars||i).shadows[1],backgroundColor:"currentColor",width:20,height:20,borderRadius:"50%"}))),b9=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiSwitch"}),{className:s,color:o="primary",edge:a=!1,size:l="medium",sx:c,slots:u={},slotProps:d={},...h}=r,f={...r,color:o,edge:a,size:l},p=rYe(f),g={slots:u,slotProps:d},[m,_]=an("root",{className:dt(p.root,s),elementType:sYe,externalForwardedProps:g,ownerState:f,additionalProps:{sx:c}}),[b,y]=an("thumb",{className:p.thumb,elementType:lYe,externalForwardedProps:g,ownerState:f}),x=C.jsx(b,{...y}),[k,D]=an("track",{className:p.track,elementType:aYe,externalForwardedProps:g,ownerState:f});return C.jsxs(m,{..._,children:[C.jsx(oYe,{type:"checkbox",icon:x,checkedIcon:x,ref:n,ownerState:f,...h,classes:{...p,root:p.switchBase},slots:{...u.switchBase&&{root:u.switchBase},...u.input&&{input:u.input}},slotProps:{...d.switchBase&&{root:typeof d.switchBase=="function"?d.switchBase(f):d.switchBase},...d.input&&{input:typeof d.input=="function"?d.input(f):d.input}}}),C.jsx(k,{...D})]})});function cYe(i){return Xt("MuiTab",i)}const Hh=Yt("MuiTab",["root","labelIcon","textColorInherit","textColorPrimary","textColorSecondary","selected","disabled","fullWidth","wrapped","iconWrapper","icon"]),uYe=i=>{const{classes:e,textColor:n,fullWidth:r,wrapped:s,icon:o,label:a,selected:l,disabled:c}=i,u={root:["root",o&&a&&"labelIcon",`textColor${Ue(n)}`,r&&"fullWidth",s&&"wrapped",l&&"selected",c&&"disabled"],icon:["iconWrapper","icon"]};return Zt(u,cYe,e)},dYe=ye(ud,{name:"MuiTab",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.label&&n.icon&&e.labelIcon,e[`textColor${Ue(n.textColor)}`],n.fullWidth&&e.fullWidth,n.wrapped&&e.wrapped,{[`& .${Hh.iconWrapper}`]:e.iconWrapper},{[`& .${Hh.icon}`]:e.icon}]}})(jt(({theme:i})=>({...i.typography.button,maxWidth:360,minWidth:90,position:"relative",minHeight:48,flexShrink:0,padding:"12px 16px",overflow:"hidden",whiteSpace:"normal",textAlign:"center",lineHeight:1.25,variants:[{props:({ownerState:e})=>e.label&&(e.iconPosition==="top"||e.iconPosition==="bottom"),style:{flexDirection:"column"}},{props:({ownerState:e})=>e.label&&e.iconPosition!=="top"&&e.iconPosition!=="bottom",style:{flexDirection:"row"}},{props:({ownerState:e})=>e.icon&&e.label,style:{minHeight:72,paddingTop:9,paddingBottom:9}},{props:({ownerState:e,iconPosition:n})=>e.icon&&e.label&&n==="top",style:{[`& > .${Hh.icon}`]:{marginBottom:6}}},{props:({ownerState:e,iconPosition:n})=>e.icon&&e.label&&n==="bottom",style:{[`& > .${Hh.icon}`]:{marginTop:6}}},{props:({ownerState:e,iconPosition:n})=>e.icon&&e.label&&n==="start",style:{[`& > .${Hh.icon}`]:{marginRight:i.spacing(1)}}},{props:({ownerState:e,iconPosition:n})=>e.icon&&e.label&&n==="end",style:{[`& > .${Hh.icon}`]:{marginLeft:i.spacing(1)}}},{props:{textColor:"inherit"},style:{color:"inherit",opacity:.6,[`&.${Hh.selected}`]:{opacity:1},[`&.${Hh.disabled}`]:{opacity:(i.vars||i).palette.action.disabledOpacity}}},{props:{textColor:"primary"},style:{color:(i.vars||i).palette.text.secondary,[`&.${Hh.selected}`]:{color:(i.vars||i).palette.primary.main},[`&.${Hh.disabled}`]:{color:(i.vars||i).palette.text.disabled}}},{props:{textColor:"secondary"},style:{color:(i.vars||i).palette.text.secondary,[`&.${Hh.selected}`]:{color:(i.vars||i).palette.secondary.main},[`&.${Hh.disabled}`]:{color:(i.vars||i).palette.text.disabled}}},{props:({ownerState:e})=>e.fullWidth,style:{flexShrink:1,flexGrow:1,flexBasis:0,maxWidth:"none"}},{props:({ownerState:e})=>e.wrapped,style:{fontSize:i.typography.pxToRem(12)}}]}))),mp=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTab"}),{className:s,disabled:o=!1,disableFocusRipple:a=!1,fullWidth:l,icon:c,iconPosition:u="top",indicator:d,label:h,onChange:f,onClick:p,onFocus:g,selected:m,selectionFollowsFocus:_,textColor:b="inherit",value:y,wrapped:x=!1,...k}=r,D={...r,disabled:o,disableFocusRipple:a,selected:m,icon:!!c,iconPosition:u,label:!!h,fullWidth:l,textColor:b,wrapped:x},R=uYe(D),E=c&&h&&$.isValidElement(c)?$.cloneElement(c,{className:dt(R.icon,c.props.className)}):c,A=N=>{!m&&f&&f(N,y),p&&p(N)},M=N=>{_&&!m&&f&&f(N,y),g&&g(N)};return C.jsxs(dYe,{focusRipple:!a,className:dt(R.root,s),ref:n,role:"tab","aria-selected":m,disabled:o,onClick:A,onFocus:M,ownerState:D,tabIndex:m?0:-1,...k,children:[u==="top"||u==="start"?C.jsxs($.Fragment,{children:[E,h]}):C.jsxs($.Fragment,{children:[h,E]}),d]})}),DLe=$.createContext();function hYe(i){return Xt("MuiTable",i)}Yt("MuiTable",["root","stickyHeader"]);const fYe=i=>{const{classes:e,stickyHeader:n}=i;return Zt({root:["root",n&&"stickyHeader"]},hYe,e)},pYe=ye("table",{name:"MuiTable",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.stickyHeader&&e.stickyHeader]}})(jt(({theme:i})=>({display:"table",width:"100%",borderCollapse:"collapse",borderSpacing:0,"& caption":{...i.typography.body2,padding:i.spacing(2),color:(i.vars||i).palette.text.secondary,textAlign:"left",captionSide:"bottom"},variants:[{props:({ownerState:e})=>e.stickyHeader,style:{borderCollapse:"separate"}}]}))),Ehe="table",Bv=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTable"}),{className:s,component:o=Ehe,padding:a="normal",size:l="medium",stickyHeader:c=!1,...u}=r,d={...r,component:o,padding:a,size:l,stickyHeader:c},h=fYe(d),f=$.useMemo(()=>({padding:a,size:l,stickyHeader:c}),[a,l,c]);return C.jsx(DLe.Provider,{value:f,children:C.jsx(pYe,{as:o,role:o===Ehe?null:"table",ref:n,className:dt(h.root,s),ownerState:d,...u})})}),MW=$.createContext();function gYe(i){return Xt("MuiTableBody",i)}Yt("MuiTableBody",["root"]);const mYe=i=>{const{classes:e}=i;return Zt({root:["root"]},gYe,e)},_Ye=ye("tbody",{name:"MuiTableBody",slot:"Root"})({display:"table-row-group"}),vYe={variant:"body"},Ihe="tbody",PW=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTableBody"}),{className:s,component:o=Ihe,...a}=r,l={...r,component:o},c=mYe(l);return C.jsx(MW.Provider,{value:vYe,children:C.jsx(_Ye,{className:dt(c.root,s),as:o,ref:n,role:o===Ihe?null:"rowgroup",ownerState:l,...a})})});function bYe(i){return Xt("MuiTableCell",i)}const yYe=Yt("MuiTableCell",["root","head","body","footer","sizeSmall","sizeMedium","paddingCheckbox","paddingNone","alignLeft","alignCenter","alignRight","alignJustify","stickyHeader"]),wYe=i=>{const{classes:e,variant:n,align:r,padding:s,size:o,stickyHeader:a}=i,l={root:["root",n,a&&"stickyHeader",r!=="inherit"&&`align${Ue(r)}`,s!=="normal"&&`padding${Ue(s)}`,`size${Ue(o)}`]};return Zt(l,bYe,e)},CYe=ye("td",{name:"MuiTableCell",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[n.variant],e[`size${Ue(n.size)}`],n.padding!=="normal"&&e[`padding${Ue(n.padding)}`],n.align!=="inherit"&&e[`align${Ue(n.align)}`],n.stickyHeader&&e.stickyHeader]}})(jt(({theme:i})=>({...i.typography.body2,display:"table-cell",verticalAlign:"inherit",borderBottom:i.vars?`1px solid ${i.vars.palette.TableCell.border}`:`1px solid ${i.palette.mode==="light"?qp(Pt(i.palette.divider,1),.88):$m(Pt(i.palette.divider,1),.68)}`,textAlign:"left",padding:16,variants:[{props:{variant:"head"},style:{color:(i.vars||i).palette.text.primary,lineHeight:i.typography.pxToRem(24),fontWeight:i.typography.fontWeightMedium}},{props:{variant:"body"},style:{color:(i.vars||i).palette.text.primary}},{props:{variant:"footer"},style:{color:(i.vars||i).palette.text.secondary,lineHeight:i.typography.pxToRem(21),fontSize:i.typography.pxToRem(12)}},{props:{size:"small"},style:{padding:"6px 16px",[`&.${yYe.paddingCheckbox}`]:{width:24,padding:"0 12px 0 16px","& > *":{padding:0}}}},{props:{padding:"checkbox"},style:{width:48,padding:"0 0 0 4px"}},{props:{padding:"none"},style:{padding:0}},{props:{align:"left"},style:{textAlign:"left"}},{props:{align:"center"},style:{textAlign:"center"}},{props:{align:"right"},style:{textAlign:"right",flexDirection:"row-reverse"}},{props:{align:"justify"},style:{textAlign:"justify"}},{props:({ownerState:e})=>e.stickyHeader,style:{position:"sticky",top:0,zIndex:2,backgroundColor:(i.vars||i).palette.background.default}}]}))),ki=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTableCell"}),{align:s="inherit",className:o,component:a,padding:l,scope:c,size:u,sortDirection:d,variant:h,...f}=r,p=$.useContext(DLe),g=$.useContext(MW),m=g&&g.variant==="head";let _;a?_=a:_=m?"th":"td";let b=c;_==="td"?b=void 0:!b&&m&&(b="col");const y=h||g&&g.variant,x={...r,align:s,component:_,padding:l||(p&&p.padding?p.padding:"normal"),size:u||(p&&p.size?p.size:"medium"),sortDirection:d,stickyHeader:y==="head"&&p&&p.stickyHeader,variant:y},k=wYe(x);let D=null;return d&&(D=d==="asc"?"ascending":"descending"),C.jsx(CYe,{as:_,ref:n,className:dt(k.root,o),"aria-sort":D,scope:b,ownerState:x,...f})});function SYe(i){return Xt("MuiTableContainer",i)}Yt("MuiTableContainer",["root"]);const xYe=i=>{const{classes:e}=i;return Zt({root:["root"]},SYe,e)},kYe=ye("div",{name:"MuiTableContainer",slot:"Root"})({width:"100%",overflowX:"auto"}),LYe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTableContainer"}),{className:s,component:o="div",...a}=r,l={...r,component:o},c=xYe(l);return C.jsx(kYe,{ref:n,as:o,className:dt(c.root,s),ownerState:l,...a})});function DYe(i){return Xt("MuiTableHead",i)}Yt("MuiTableHead",["root"]);const EYe=i=>{const{classes:e}=i;return Zt({root:["root"]},DYe,e)},IYe=ye("thead",{name:"MuiTableHead",slot:"Root"})({display:"table-header-group"}),TYe={variant:"head"},The="thead",OW=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTableHead"}),{className:s,component:o=The,...a}=r,l={...r,component:o},c=EYe(l);return C.jsx(MW.Provider,{value:TYe,children:C.jsx(IYe,{as:o,className:dt(c.root,s),ref:n,role:o===The?null:"rowgroup",ownerState:l,...a})})});function RYe(i){return Xt("MuiToolbar",i)}Yt("MuiToolbar",["root","gutters","regular","dense"]);const AYe=i=>{const{classes:e,disableGutters:n,variant:r}=i;return Zt({root:["root",!n&&"gutters",r]},RYe,e)},NYe=ye("div",{name:"MuiToolbar",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,!n.disableGutters&&e.gutters,e[n.variant]]}})(jt(({theme:i})=>({position:"relative",display:"flex",alignItems:"center",variants:[{props:({ownerState:e})=>!e.disableGutters,style:{paddingLeft:i.spacing(2),paddingRight:i.spacing(2),[i.breakpoints.up("sm")]:{paddingLeft:i.spacing(3),paddingRight:i.spacing(3)}}},{props:{variant:"dense"},style:{minHeight:48}},{props:{variant:"regular"},style:i.mixins.toolbar}]}))),ELe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiToolbar"}),{className:s,component:o="div",disableGutters:a=!1,variant:l="regular",...c}=r,u={...r,component:o,disableGutters:a,variant:l},d=AYe(u);return C.jsx(NYe,{as:o,className:dt(d.root,s),ref:n,ownerState:u,...c})}),MYe=Hr(C.jsx("path",{d:"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"})),PYe=Hr(C.jsx("path",{d:"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"}));function OYe(i){return Xt("MuiTableRow",i)}const Rhe=Yt("MuiTableRow",["root","selected","hover","head","footer"]),FYe=i=>{const{classes:e,selected:n,hover:r,head:s,footer:o}=i;return Zt({root:["root",n&&"selected",r&&"hover",s&&"head",o&&"footer"]},OYe,e)},BYe=ye("tr",{name:"MuiTableRow",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.head&&e.head,n.footer&&e.footer]}})(jt(({theme:i})=>({color:"inherit",display:"table-row",verticalAlign:"middle",outline:0,[`&.${Rhe.hover}:hover`]:{backgroundColor:(i.vars||i).palette.action.hover},[`&.${Rhe.selected}`]:{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity),"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette.primary.mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette.primary.main,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity)}}}))),Ahe="tr",ng=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTableRow"}),{className:s,component:o=Ahe,hover:a=!1,selected:l=!1,...c}=r,u=$.useContext(MW),d={...r,component:o,hover:a,selected:l,head:u&&u.variant==="head",footer:u&&u.variant==="footer"},h=FYe(d);return C.jsx(BYe,{as:o,ref:n,className:dt(h.root,s),role:o===Ahe?null:"row",ownerState:d,...c})});function jYe(i){return(1+Math.sin(Math.PI*i-Math.PI/2))/2}function WYe(i,e,n,r={},s=()=>{}){const{ease:o=jYe,duration:a=300}=r;let l=null;const c=e[i];let u=!1;const d=()=>{u=!0},h=f=>{if(u){s(new Error("Animation cancelled"));return}l===null&&(l=f);const p=Math.min(1,(f-l)/a);if(e[i]=o(p)*(n-c)+c,p>=1){requestAnimationFrame(()=>{s(null)});return}requestAnimationFrame(h)};return c===n?(s(new Error("Element already at target position")),d):(requestAnimationFrame(h),d)}const $Ye={width:99,height:99,position:"absolute",top:-9999,overflow:"scroll"};function zYe(i){const{onChange:e,...n}=i,r=$.useRef(),s=$.useRef(null),o=()=>{r.current=s.current.offsetHeight-s.current.clientHeight};return wc(()=>{const a=l5(()=>{const c=r.current;o(),c!==r.current&&e(r.current)}),l=fh(s.current);return l.addEventListener("resize",a),()=>{a.clear(),l.removeEventListener("resize",a)}},[e]),$.useEffect(()=>{o(),e(r.current)},[e]),C.jsx("div",{style:$Ye,...n,ref:s})}function VYe(i){return Xt("MuiTabScrollButton",i)}const HYe=Yt("MuiTabScrollButton",["root","vertical","horizontal","disabled"]),UYe=i=>{const{classes:e,orientation:n,disabled:r}=i;return Zt({root:["root",n,r&&"disabled"]},VYe,e)},qYe=ye(ud,{name:"MuiTabScrollButton",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,n.orientation&&e[n.orientation]]}})({width:40,flexShrink:0,opacity:.8,[`&.${HYe.disabled}`]:{opacity:0},variants:[{props:{orientation:"vertical"},style:{width:"100%",height:40,"& svg":{transform:"var(--TabScrollButton-svgRotate)"}}}]}),KYe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTabScrollButton"}),{className:s,slots:o={},slotProps:a={},direction:l,orientation:c,disabled:u,...d}=r,h=Pv(),f={isRtl:h,...r},p=UYe(f),g=o.StartScrollButtonIcon??MYe,m=o.EndScrollButtonIcon??PYe,_=$u({elementType:g,externalSlotProps:a.startScrollButtonIcon,additionalProps:{fontSize:"small"},ownerState:f}),b=$u({elementType:m,externalSlotProps:a.endScrollButtonIcon,additionalProps:{fontSize:"small"},ownerState:f});return C.jsx(qYe,{component:"div",className:dt(p.root,s),ref:n,role:null,ownerState:f,tabIndex:null,...d,style:{...d.style,...c==="vertical"&&{"--TabScrollButton-svgRotate":`rotate(${h?-90:90}deg)`}},children:l==="left"?C.jsx(g,{..._}):C.jsx(m,{...b})})});function GYe(i){return Xt("MuiTabs",i)}const CU=Yt("MuiTabs",["root","vertical","list","flexContainer","flexContainerVertical","centered","scroller","fixed","scrollableX","scrollableY","hideScrollbar","scrollButtons","scrollButtonsHideMobile","indicator"]),Nhe=(i,e)=>i===e?i.firstChild:e&&e.nextElementSibling?e.nextElementSibling:i.firstChild,Mhe=(i,e)=>i===e?i.lastChild:e&&e.previousElementSibling?e.previousElementSibling:i.lastChild,k3=(i,e,n)=>{let r=!1,s=n(i,e);for(;s;){if(s===i.firstChild){if(r)return;r=!0}const o=s.disabled||s.getAttribute("aria-disabled")==="true";if(!s.hasAttribute("tabindex")||o)s=n(i,s);else{s.focus();return}}},XYe=i=>{const{vertical:e,fixed:n,hideScrollbar:r,scrollableX:s,scrollableY:o,centered:a,scrollButtonsHideMobile:l,classes:c}=i;return Zt({root:["root",e&&"vertical"],scroller:["scroller",n&&"fixed",r&&"hideScrollbar",s&&"scrollableX",o&&"scrollableY"],list:["list","flexContainer",e&&"flexContainerVertical",e&&"vertical",a&&"centered"],indicator:["indicator"],scrollButtons:["scrollButtons",l&&"scrollButtonsHideMobile"],scrollableX:[s&&"scrollableX"],hideScrollbar:[r&&"hideScrollbar"]},GYe,c)},YYe=ye("div",{name:"MuiTabs",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`& .${CU.scrollButtons}`]:e.scrollButtons},{[`& .${CU.scrollButtons}`]:n.scrollButtonsHideMobile&&e.scrollButtonsHideMobile},e.root,n.vertical&&e.vertical]}})(jt(({theme:i})=>({overflow:"hidden",minHeight:48,WebkitOverflowScrolling:"touch",display:"flex",variants:[{props:({ownerState:e})=>e.vertical,style:{flexDirection:"column"}},{props:({ownerState:e})=>e.scrollButtonsHideMobile,style:{[`& .${CU.scrollButtons}`]:{[i.breakpoints.down("sm")]:{display:"none"}}}}]}))),ZYe=ye("div",{name:"MuiTabs",slot:"Scroller",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.scroller,n.fixed&&e.fixed,n.hideScrollbar&&e.hideScrollbar,n.scrollableX&&e.scrollableX,n.scrollableY&&e.scrollableY]}})({position:"relative",display:"inline-block",flex:"1 1 auto",whiteSpace:"nowrap",variants:[{props:({ownerState:i})=>i.fixed,style:{overflowX:"hidden",width:"100%"}},{props:({ownerState:i})=>i.hideScrollbar,style:{scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}},{props:({ownerState:i})=>i.scrollableX,style:{overflowX:"auto",overflowY:"hidden"}},{props:({ownerState:i})=>i.scrollableY,style:{overflowY:"auto",overflowX:"hidden"}}]}),QYe=ye("div",{name:"MuiTabs",slot:"List",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.list,e.flexContainer,n.vertical&&e.flexContainerVertical,n.centered&&e.centered]}})({display:"flex",variants:[{props:({ownerState:i})=>i.vertical,style:{flexDirection:"column"}},{props:({ownerState:i})=>i.centered,style:{justifyContent:"center"}}]}),JYe=ye("span",{name:"MuiTabs",slot:"Indicator"})(jt(({theme:i})=>({position:"absolute",height:2,bottom:0,width:"100%",transition:i.transitions.create(),variants:[{props:{indicatorColor:"primary"},style:{backgroundColor:(i.vars||i).palette.primary.main}},{props:{indicatorColor:"secondary"},style:{backgroundColor:(i.vars||i).palette.secondary.main}},{props:({ownerState:e})=>e.vertical,style:{height:"100%",width:2,right:0}}]}))),eZe=ye(zYe)({overflowX:"auto",overflowY:"hidden",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}),Phe={},ose=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTabs"}),s=$i(),o=Pv(),{"aria-label":a,"aria-labelledby":l,action:c,centered:u=!1,children:d,className:h,component:f="div",allowScrollButtonsMobile:p=!1,indicatorColor:g="primary",onChange:m,orientation:_="horizontal",ScrollButtonComponent:b,scrollButtons:y="auto",selectionFollowsFocus:x,slots:k={},slotProps:D={},TabIndicatorProps:R={},TabScrollButtonProps:E={},textColor:A="primary",value:M,variant:N="standard",visibleScrollbar:P=!1,...O}=r,B=N==="scrollable",j=_==="vertical",z=j?"scrollTop":"scrollLeft",H=j?"top":"left",Y=j?"bottom":"right",X=j?"clientHeight":"clientWidth",Q=j?"height":"width",ie={...r,component:f,allowScrollButtonsMobile:p,indicatorColor:g,orientation:_,vertical:j,scrollButtons:y,textColor:A,variant:N,visibleScrollbar:P,fixed:!B,hideScrollbar:B&&!P,scrollableX:B&&!j,scrollableY:B&&j,centered:u&&!B,scrollButtonsHideMobile:!p},K=XYe(ie),ee=$u({elementType:k.StartScrollButtonIcon,externalSlotProps:D.startScrollButtonIcon,ownerState:ie}),le=$u({elementType:k.EndScrollButtonIcon,externalSlotProps:D.endScrollButtonIcon,ownerState:ie}),[ke,xe]=$.useState(!1),[me,Ee]=$.useState(Phe),[je,qe]=$.useState(!1),[Ze,We]=$.useState(!1),[ut,st]=$.useState(!1),[mt,Rt]=$.useState({overflow:"hidden",scrollbarWidth:0}),Vt=new Map,Ot=$.useRef(null),vt=$.useRef(null),wn={slots:k,slotProps:{indicator:R,scrollButton:E,...D}},Ce=()=>{const rn=Ot.current;let sn;if(rn){const ai=rn.getBoundingClientRect();sn={clientWidth:rn.clientWidth,scrollLeft:rn.scrollLeft,scrollTop:rn.scrollTop,scrollWidth:rn.scrollWidth,top:ai.top,bottom:ai.bottom,left:ai.left,right:ai.right}}let Kn;if(rn&&M!==!1){const ai=vt.current.children;if(ai.length>0){const Ki=ai[Vt.get(M)];Kn=Ki?Ki.getBoundingClientRect():null}}return{tabsMeta:sn,tabMeta:Kn}},ge=Ha(()=>{const{tabsMeta:rn,tabMeta:sn}=Ce();let Kn=0,ai;j?(ai="top",sn&&rn&&(Kn=sn.top-rn.top+rn.scrollTop)):(ai=o?"right":"left",sn&&rn&&(Kn=(o?-1:1)*(sn[ai]-rn[ai]+rn.scrollLeft)));const Ki={[ai]:Kn,[Q]:sn?sn[Q]:0};if(typeof me[ai]!="number"||typeof me[Q]!="number")Ee(Ki);else{const so=Math.abs(me[ai]-Ki[ai]),_o=Math.abs(me[Q]-Ki[Q]);(so>=1||_o>=1)&&Ee(Ki)}}),pe=(rn,{animation:sn=!0}={})=>{sn?WYe(z,Ot.current,rn,{duration:s.transitions.duration.standard}):Ot.current[z]=rn},ne=rn=>{let sn=Ot.current[z];j?sn+=rn:sn+=rn*(o?-1:1),pe(sn)},ae=()=>{const rn=Ot.current[X];let sn=0;const Kn=Array.from(vt.current.children);for(let ai=0;airn){ai===0&&(sn=rn);break}sn+=Ki[X]}return sn},ue=()=>{ne(-1*ae())},de=()=>{ne(ae())},[Se,{onChange:Ie,...nt}]=an("scrollbar",{className:dt(K.scrollableX,K.hideScrollbar),elementType:eZe,shouldForwardComponentProp:!0,externalForwardedProps:wn,ownerState:ie}),Oe=$.useCallback(rn=>{Ie==null||Ie(rn),Rt({overflow:null,scrollbarWidth:rn})},[Ie]),[Ve,gt]=an("scrollButtons",{className:dt(K.scrollButtons,E.className),elementType:KYe,externalForwardedProps:wn,ownerState:ie,additionalProps:{orientation:_,slots:{StartScrollButtonIcon:k.startScrollButtonIcon||k.StartScrollButtonIcon,EndScrollButtonIcon:k.endScrollButtonIcon||k.EndScrollButtonIcon},slotProps:{startScrollButtonIcon:ee,endScrollButtonIcon:le}}}),$t=()=>{const rn={};rn.scrollbarSizeListener=B?C.jsx(Se,{...nt,onChange:Oe}):null;const Kn=B&&(y==="auto"&&(je||Ze)||y===!0);return rn.scrollButtonStart=Kn?C.jsx(Ve,{direction:o?"right":"left",onClick:ue,disabled:!je,...gt}):null,rn.scrollButtonEnd=Kn?C.jsx(Ve,{direction:o?"left":"right",onClick:de,disabled:!Ze,...gt}):null,rn},Mt=Ha(rn=>{const{tabsMeta:sn,tabMeta:Kn}=Ce();if(!(!Kn||!sn)){if(Kn[H]sn[Y]){const ai=sn[z]+(Kn[Y]-sn[Y]);pe(ai,{animation:rn})}}}),Bt=Ha(()=>{B&&y!==!1&&st(!ut)});$.useEffect(()=>{const rn=l5(()=>{Ot.current&&ge()});let sn;const Kn=so=>{so.forEach(_o=>{_o.removedNodes.forEach(Cs=>{sn==null||sn.unobserve(Cs)}),_o.addedNodes.forEach(Cs=>{sn==null||sn.observe(Cs)})}),rn(),Bt()},ai=fh(Ot.current);ai.addEventListener("resize",rn);let Ki;return typeof ResizeObserver<"u"&&(sn=new ResizeObserver(rn),Array.from(vt.current.children).forEach(so=>{sn.observe(so)})),typeof MutationObserver<"u"&&(Ki=new MutationObserver(Kn),Ki.observe(vt.current,{childList:!0})),()=>{rn.clear(),ai.removeEventListener("resize",rn),Ki==null||Ki.disconnect(),sn==null||sn.disconnect()}},[ge,Bt]),$.useEffect(()=>{const rn=Array.from(vt.current.children),sn=rn.length;if(typeof IntersectionObserver<"u"&&sn>0&&B&&y!==!1){const Kn=rn[0],ai=rn[sn-1],Ki={root:Ot.current,threshold:.99},so=yl=>{qe(!yl[0].isIntersecting)},_o=new IntersectionObserver(so,Ki);_o.observe(Kn);const Cs=yl=>{We(!yl[0].isIntersecting)},_u=new IntersectionObserver(Cs,Ki);return _u.observe(ai),()=>{_o.disconnect(),_u.disconnect()}}},[B,y,ut,d==null?void 0:d.length]),$.useEffect(()=>{xe(!0)},[]),$.useEffect(()=>{ge()}),$.useEffect(()=>{Mt(Phe!==me)},[Mt,me]),$.useImperativeHandle(c,()=>({updateIndicator:ge,updateScrollButtons:Bt}),[ge,Bt]);const[jn,Dt]=an("indicator",{className:dt(K.indicator,R.className),elementType:JYe,externalForwardedProps:wn,ownerState:ie,additionalProps:{style:me}}),Fn=C.jsx(jn,{...Dt});let tn=0;const pi=$.Children.map(d,rn=>{if(!$.isValidElement(rn))return null;const sn=rn.props.value===void 0?tn:rn.props.value;Vt.set(sn,tn);const Kn=sn===M;return tn+=1,$.cloneElement(rn,{fullWidth:N==="fullWidth",indicator:Kn&&!ke&&Fn,selected:Kn,selectionFollowsFocus:x,onChange:m,textColor:A,value:sn,...tn===1&&M===!1&&!rn.props.tabIndex?{tabIndex:0}:{}})}),Pi=rn=>{if(rn.altKey||rn.shiftKey||rn.ctrlKey||rn.metaKey)return;const sn=vt.current,Kn=gl(sn).activeElement;if(Kn.getAttribute("role")!=="tab")return;let Ki=_==="horizontal"?"ArrowLeft":"ArrowUp",so=_==="horizontal"?"ArrowRight":"ArrowDown";switch(_==="horizontal"&&o&&(Ki="ArrowRight",so="ArrowLeft"),rn.key){case Ki:rn.preventDefault(),k3(sn,Kn,Mhe);break;case so:rn.preventDefault(),k3(sn,Kn,Nhe);break;case"Home":rn.preventDefault(),k3(sn,null,Nhe);break;case"End":rn.preventDefault(),k3(sn,null,Mhe);break}},ti=$t(),[mi,ds]=an("root",{ref:n,className:dt(K.root,h),elementType:YYe,externalForwardedProps:{...wn,...O,component:f},ownerState:ie}),[Nr,Br]=an("scroller",{ref:Ot,className:K.scroller,elementType:ZYe,externalForwardedProps:wn,ownerState:ie,additionalProps:{style:{overflow:mt.overflow,[j?`margin${o?"Left":"Right"}`:"marginBottom"]:P?void 0:-mt.scrollbarWidth}}}),[Mn,hr]=an("list",{ref:vt,className:dt(K.list,K.flexContainer),elementType:QYe,externalForwardedProps:wn,ownerState:ie,getSlotProps:rn=>({...rn,onKeyDown:sn=>{var Kn;Pi(sn),(Kn=rn.onKeyDown)==null||Kn.call(rn,sn)}})});return C.jsxs(mi,{...ds,children:[ti.scrollButtonStart,ti.scrollbarSizeListener,C.jsxs(Nr,{...Br,children:[C.jsx(Mn,{"aria-label":a,"aria-labelledby":l,"aria-orientation":_==="vertical"?"vertical":null,role:"tablist",...hr,children:pi}),ke&&Fn]}),ti.scrollButtonEnd]})});function tZe(i){return Xt("MuiTextField",i)}Yt("MuiTextField",["root"]);const nZe={standard:Jre,filled:Zre,outlined:TI},iZe=i=>{const{classes:e}=i;return Zt({root:["root"]},tZe,e)},rZe=ye(gLe,{name:"MuiTextField",slot:"Root"})({}),Ep=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiTextField"}),{autoComplete:s,autoFocus:o=!1,children:a,className:l,color:c="primary",defaultValue:u,disabled:d=!1,error:h=!1,FormHelperTextProps:f,fullWidth:p=!1,helperText:g,id:m,InputLabelProps:_,inputProps:b,InputProps:y,inputRef:x,label:k,maxRows:D,minRows:R,multiline:E=!1,name:A,onBlur:M,onChange:N,onFocus:P,placeholder:O,required:B=!1,rows:j,select:z=!1,SelectProps:H,slots:Y={},slotProps:X={},type:Q,value:ie,variant:K="outlined",...ee}=r,le={...r,autoFocus:o,color:c,disabled:d,error:h,fullWidth:p,multiline:E,required:B,select:z,variant:K},ke=iZe(le),xe=W1(m),me=g&&xe?`${xe}-helper-text`:void 0,Ee=k&&xe?`${xe}-label`:void 0,je=nZe[K],qe={slots:Y,slotProps:{input:y,inputLabel:_,htmlInput:b,formHelperText:f,select:H,...X}},Ze={},We=qe.slotProps.inputLabel;K==="outlined"&&(We&&typeof We.shrink<"u"&&(Ze.notched=We.shrink),Ze.label=k),z&&((!H||!H.native)&&(Ze.id=void 0),Ze["aria-describedby"]=void 0);const[ut,st]=an("root",{elementType:rZe,shouldForwardComponentProp:!0,externalForwardedProps:{...qe,...ee},ownerState:le,className:dt(ke.root,l),ref:n,additionalProps:{disabled:d,error:h,fullWidth:p,required:B,color:c,variant:K}}),[mt,Rt]=an("input",{elementType:je,externalForwardedProps:qe,additionalProps:Ze,ownerState:le}),[Vt,Ot]=an("inputLabel",{elementType:RW,externalForwardedProps:qe,ownerState:le}),[vt,wn]=an("htmlInput",{elementType:"input",externalForwardedProps:qe,ownerState:le}),[Ce,ge]=an("formHelperText",{elementType:Gqe,externalForwardedProps:qe,ownerState:le}),[pe,ne]=an("select",{elementType:sse,externalForwardedProps:qe,ownerState:le}),ae=C.jsx(mt,{"aria-describedby":me,autoComplete:s,autoFocus:o,defaultValue:u,fullWidth:p,multiline:E,name:A,rows:j,maxRows:D,minRows:R,type:Q,value:ie,id:xe,inputRef:x,onBlur:M,onChange:N,onFocus:P,placeholder:O,inputProps:wn,slots:{input:Y.htmlInput?vt:void 0},...Rt});return C.jsxs(ut,{...st,children:[k!=null&&k!==""&&C.jsx(Vt,{htmlFor:xe,id:Ee,...Ot,children:k}),z?C.jsx(pe,{"aria-describedby":me,id:xe,labelId:Ee,value:ie,input:ae,...ne,children:a}):ae,g&&C.jsx(Ce,{id:me,...ge,children:g})]})});function sZe(i){return Xt("MuiToggleButton",i)}const cS=Yt("MuiToggleButton",["root","disabled","selected","standard","primary","secondary","sizeSmall","sizeMedium","sizeLarge","fullWidth"]),ILe=$.createContext({}),TLe=$.createContext(void 0);function oZe(i,e){return e===void 0||i===void 0?!1:Array.isArray(e)?e.includes(i):i===e}const aZe=i=>{const{classes:e,fullWidth:n,selected:r,disabled:s,size:o,color:a}=i,l={root:["root",r&&"selected",s&&"disabled",n&&"fullWidth",`size${Ue(o)}`,a]};return Zt(l,sZe,e)},lZe=ye(ud,{name:"MuiToggleButton",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[e.root,e[`size${Ue(n.size)}`]]}})(jt(({theme:i})=>({...i.typography.button,borderRadius:(i.vars||i).shape.borderRadius,padding:11,border:`1px solid ${(i.vars||i).palette.divider}`,color:(i.vars||i).palette.action.active,[`&.${cS.disabled}`]:{color:(i.vars||i).palette.action.disabled,border:`1px solid ${(i.vars||i).palette.action.disabledBackground}`},"&:hover":{textDecoration:"none",backgroundColor:i.vars?`rgba(${i.vars.palette.text.primaryChannel} / ${i.vars.palette.action.hoverOpacity})`:Pt(i.palette.text.primary,i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:"transparent"}},variants:[{props:{color:"standard"},style:{[`&.${cS.selected}`]:{color:(i.vars||i).palette.text.primary,backgroundColor:i.vars?`rgba(${i.vars.palette.text.primaryChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.text.primary,i.palette.action.selectedOpacity),"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette.text.primaryChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette.text.primary,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:i.vars?`rgba(${i.vars.palette.text.primaryChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette.text.primary,i.palette.action.selectedOpacity)}}}}},...Object.entries(i.palette).filter(br()).map(([e])=>({props:{color:e},style:{[`&.${cS.selected}`]:{color:(i.vars||i).palette[e].main,backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette[e].main,i.palette.action.selectedOpacity),"&:hover":{backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / calc(${i.vars.palette.action.selectedOpacity} + ${i.vars.palette.action.hoverOpacity}))`:Pt(i.palette[e].main,i.palette.action.selectedOpacity+i.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:i.vars?`rgba(${i.vars.palette[e].mainChannel} / ${i.vars.palette.action.selectedOpacity})`:Pt(i.palette[e].main,i.palette.action.selectedOpacity)}}}}})),{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{padding:7,fontSize:i.typography.pxToRem(13)}},{props:{size:"large"},style:{padding:15,fontSize:i.typography.pxToRem(15)}}]}))),cZe=$.forwardRef(function(e,n){const{value:r,...s}=$.useContext(ILe),o=$.useContext(TLe),a=mE({...s,selected:oZe(e.value,r)},e),l=Qt({props:a,name:"MuiToggleButton"}),{children:c,className:u,color:d="standard",disabled:h=!1,disableFocusRipple:f=!1,fullWidth:p=!1,onChange:g,onClick:m,selected:_,size:b="medium",value:y,...x}=l,k={...l,color:d,disabled:h,disableFocusRipple:f,fullWidth:p,size:b},D=aZe(k),R=A=>{m&&(m(A,y),A.defaultPrevented)||g&&g(A,y)},E=o||"";return C.jsx(lZe,{className:dt(s.className,D.root,u,E),disabled:h,focusRipple:!f,ref:n,onClick:R,onChange:g,value:y,ownerState:k,"aria-pressed":_,...x,children:c})});function uZe(i){return Xt("MuiToggleButtonGroup",i)}const Ys=Yt("MuiToggleButtonGroup",["root","selected","horizontal","vertical","disabled","grouped","groupedHorizontal","groupedVertical","fullWidth","firstButton","lastButton","middleButton"]),dZe=i=>{const{classes:e,orientation:n,fullWidth:r,disabled:s}=i,o={root:["root",n,r&&"fullWidth"],grouped:["grouped",`grouped${Ue(n)}`,s&&"disabled"],firstButton:["firstButton"],lastButton:["lastButton"],middleButton:["middleButton"]};return Zt(o,uZe,e)},hZe=ye("div",{name:"MuiToggleButtonGroup",slot:"Root",overridesResolver:(i,e)=>{const{ownerState:n}=i;return[{[`& .${Ys.grouped}`]:e.grouped},{[`& .${Ys.grouped}`]:e[`grouped${Ue(n.orientation)}`]},{[`& .${Ys.firstButton}`]:e.firstButton},{[`& .${Ys.lastButton}`]:e.lastButton},{[`& .${Ys.middleButton}`]:e.middleButton},e.root,n.orientation==="vertical"&&e.vertical,n.fullWidth&&e.fullWidth]}})(jt(({theme:i})=>({display:"inline-flex",borderRadius:(i.vars||i).shape.borderRadius,variants:[{props:{orientation:"vertical"},style:{flexDirection:"column",[`& .${Ys.grouped}`]:{[`&.${Ys.selected} + .${Ys.grouped}.${Ys.selected}`]:{borderTop:0,marginTop:0}},[`& .${Ys.firstButton},& .${Ys.middleButton}`]:{borderBottomLeftRadius:0,borderBottomRightRadius:0},[`& .${Ys.lastButton},& .${Ys.middleButton}`]:{marginTop:-1,borderTop:"1px solid transparent",borderTopLeftRadius:0,borderTopRightRadius:0},[`& .${Ys.lastButton}.${cS.disabled},& .${Ys.middleButton}.${cS.disabled}`]:{borderTop:"1px solid transparent"}}},{props:{fullWidth:!0},style:{width:"100%"}},{props:{orientation:"horizontal"},style:{[`& .${Ys.grouped}`]:{[`&.${Ys.selected} + .${Ys.grouped}.${Ys.selected}`]:{borderLeft:0,marginLeft:0}},[`& .${Ys.firstButton},& .${Ys.middleButton}`]:{borderTopRightRadius:0,borderBottomRightRadius:0},[`& .${Ys.lastButton},& .${Ys.middleButton}`]:{marginLeft:-1,borderLeft:"1px solid transparent",borderTopLeftRadius:0,borderBottomLeftRadius:0},[`& .${Ys.lastButton}.${cS.disabled},& .${Ys.middleButton}.${cS.disabled}`]:{borderLeft:"1px solid transparent"}}}]}))),fZe=$.forwardRef(function(e,n){const r=Qt({props:e,name:"MuiToggleButtonGroup"}),{children:s,className:o,color:a="standard",disabled:l=!1,exclusive:c=!1,fullWidth:u=!1,onChange:d,orientation:h="horizontal",size:f="medium",value:p,...g}=r,m={...r,disabled:l,fullWidth:u,orientation:h,size:f},_=dZe(m),b=$.useCallback((E,A)=>{if(!d)return;const M=p&&p.indexOf(A);let N;p&&M>=0?(N=p.slice(),N.splice(M,1)):N=p?p.concat(A):[A],d(E,N)},[d,p]),y=$.useCallback((E,A)=>{d&&d(E,p===A?null:A)},[d,p]),x=$.useMemo(()=>({className:_.grouped,onChange:c?y:b,value:p,size:f,fullWidth:u,color:a,disabled:l}),[_.grouped,c,y,b,p,f,u,a,l]),k=sLe(s),D=k.length,R=E=>{const A=E===0,M=E===D-1;return A&&M?"":A?_.firstButton:M?_.lastButton:_.middleButton};return C.jsx(hZe,{role:"group",className:dt(_.root,o),ref:n,ownerState:m,...g,children:C.jsx(ILe.Provider,{value:x,children:k.map((E,A)=>C.jsx(TLe.Provider,{value:R(A),children:E},A))})})}),FW=yke({themeId:Bp});var L3={},Ohe;function pZe(){if(Ohe)return L3;Ohe=1;var i=Pke();return L3.createRoot=i.createRoot,L3.hydrateRoot=i.hydrateRoot,L3}var gZe=pZe();const mZe=ql(gZe);/** * @remix-run/router v1.23.0 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function YM(){return YM=Object.assign?Object.assign.bind():function(i){for(var e=1;e"u")throw new Error(e)}function ase(i,e){if(!i){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}function vZe(){return Math.random().toString(36).substr(2,8)}function Bhe(i,e){return{usr:i.state,key:i.key,idx:e}}function $Z(i,e,n,r){return n===void 0&&(n=null),YM({pathname:typeof i=="string"?i:i.pathname,search:"",hash:""},typeof e=="string"?RI(e):e,{state:n,key:e&&e.key||r||vZe()})}function y9(i){let{pathname:e="/",search:n="",hash:r=""}=i;return n&&n!=="?"&&(e+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(e+=r.charAt(0)==="#"?r:"#"+r),e}function RI(i){let e={};if(i){let n=i.indexOf("#");n>=0&&(e.hash=i.substr(n),i=i.substr(0,n));let r=i.indexOf("?");r>=0&&(e.search=i.substr(r),i=i.substr(0,r)),i&&(e.pathname=i)}return e}function bZe(i,e,n,r){r===void 0&&(r={});let{window:s=document.defaultView,v5Compat:o=!1}=r,a=s.history,l=uS.Pop,c=null,u=d();u==null&&(u=0,a.replaceState(YM({},a.state,{idx:u}),""));function d(){return(a.state||{idx:null}).idx}function h(){l=uS.Pop;let _=d(),b=_==null?null:_-u;u=_,c&&c({action:l,location:m.location,delta:b})}function f(_,b){l=uS.Push;let y=$Z(m.location,_,b);n&&n(y,_),u=d()+1;let x=Bhe(y,u),k=m.createHref(y);try{a.pushState(x,"",k)}catch(D){if(D instanceof DOMException&&D.name==="DataCloneError")throw D;s.location.assign(k)}o&&c&&c({action:l,location:m.location,delta:1})}function p(_,b){l=uS.Replace;let y=$Z(m.location,_,b);n&&n(y,_),u=d();let x=Bhe(y,u),k=m.createHref(y);a.replaceState(x,"",k),o&&c&&c({action:l,location:m.location,delta:0})}function g(_){let b=s.location.origin!=="null"?s.location.origin:s.location.href,y=typeof _=="string"?_:y9(_);return y=y.replace(/ $/,"%20"),yc(b,"No window.location.(origin|href) available to create URL for href: "+y),new URL(y,b)}let m={get action(){return l},get location(){return i(s,a)},listen(_){if(c)throw new Error("A history only accepts one active listener");return s.addEventListener(Fhe,h),c=_,()=>{s.removeEventListener(Fhe,h),c=null}},createHref(_){return e(s,_)},createURL:g,encodeLocation(_){let b=g(_);return{pathname:b.pathname,search:b.search,hash:b.hash}},push:f,replace:p,go(_){return a.go(_)}};return m}var jhe;(function(i){i.data="data",i.deferred="deferred",i.redirect="redirect",i.error="error"})(jhe||(jhe={}));function yZe(i,e,n){return n===void 0&&(n="/"),wZe(i,e,n)}function wZe(i,e,n,r){let s=typeof e=="string"?RI(e):e,o=lse(s.pathname||"/",n);if(o==null)return null;let a=RLe(i);CZe(a);let l=null;for(let c=0;l==null&&c{let c={relativePath:l===void 0?o.path||"":l,caseSensitive:o.caseSensitive===!0,childrenIndex:a,route:o};c.relativePath.startsWith("/")&&(yc(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let u=Oy([r,c.relativePath]),d=n.concat(c);o.children&&o.children.length>0&&(yc(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),RLe(o.children,e,d,u)),!(o.path==null&&!o.index)&&e.push({path:u,score:IZe(u,o.index),routesMeta:d})};return i.forEach((o,a)=>{var l;if(o.path===""||!((l=o.path)!=null&&l.includes("?")))s(o,a);else for(let c of ALe(o.path))s(o,a,c)}),e}function ALe(i){let e=i.split("/");if(e.length===0)return[];let[n,...r]=e,s=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return s?[o,""]:[o];let a=ALe(r.join("/")),l=[];return l.push(...a.map(c=>c===""?o:[o,c].join("/"))),s&&l.push(...a),l.map(c=>i.startsWith("/")&&c===""?"/":c)}function CZe(i){i.sort((e,n)=>e.score!==n.score?n.score-e.score:TZe(e.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const SZe=/^:[\w-]+$/,xZe=3,kZe=2,LZe=1,DZe=10,EZe=-2,Whe=i=>i==="*";function IZe(i,e){let n=i.split("/"),r=n.length;return n.some(Whe)&&(r+=EZe),e&&(r+=kZe),n.filter(s=>!Whe(s)).reduce((s,o)=>s+(SZe.test(o)?xZe:o===""?LZe:DZe),r)}function TZe(i,e){return i.length===e.length&&i.slice(0,-1).every((r,s)=>r===e[s])?i[i.length-1]-e[e.length-1]:0}function RZe(i,e,n){let{routesMeta:r}=i,s={},o="/",a=[];for(let l=0;l{let{paramName:f,isOptional:p}=d;if(f==="*"){let m=l[h]||"";a=o.slice(0,o.length-m.length).replace(/(.)\/+$/,"$1")}const g=l[h];return p&&!g?u[f]=void 0:u[f]=(g||"").replace(/%2F/g,"/"),u},{}),pathname:o,pathnameBase:a,pattern:i}}function NZe(i,e,n){e===void 0&&(e=!1),n===void 0&&(n=!0),ase(i==="*"||!i.endsWith("*")||i.endsWith("/*"),'Route path "'+i+'" will be treated as if it were '+('"'+i.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+i.replace(/\*$/,"/*")+'".'));let r=[],s="^"+i.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(a,l,c)=>(r.push({paramName:l,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return i.endsWith("*")?(r.push({paramName:"*"}),s+=i==="*"||i==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?s+="\\/*$":i!==""&&i!=="/"&&(s+="(?:(?=\\/|$))"),[new RegExp(s,e?void 0:"i"),r]}function MZe(i){try{return i.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(e){return ase(!1,'The URL path "'+i+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+e+").")),i}}function lse(i,e){if(e==="/")return i;if(!i.toLowerCase().startsWith(e.toLowerCase()))return null;let n=e.endsWith("/")?e.length-1:e.length,r=i.charAt(n);return r&&r!=="/"?null:i.slice(n)||"/"}function PZe(i,e){e===void 0&&(e="/");let{pathname:n,search:r="",hash:s=""}=typeof i=="string"?RI(i):i;return{pathname:n?n.startsWith("/")?n:OZe(n,e):e,search:jZe(r),hash:WZe(s)}}function OZe(i,e){let n=e.replace(/\/+$/,"").split("/");return i.split("/").forEach(s=>{s===".."?n.length>1&&n.pop():s!=="."&&n.push(s)}),n.length>1?n.join("/"):"/"}function SU(i,e,n,r){return"Cannot include a '"+i+"' character in a manually specified "+("`to."+e+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function FZe(i){return i.filter((e,n)=>n===0||e.route.path&&e.route.path.length>0)}function NLe(i,e){let n=FZe(i);return e?n.map((r,s)=>s===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function MLe(i,e,n,r){r===void 0&&(r=!1);let s;typeof i=="string"?s=RI(i):(s=YM({},i),yc(!s.pathname||!s.pathname.includes("?"),SU("?","pathname","search",s)),yc(!s.pathname||!s.pathname.includes("#"),SU("#","pathname","hash",s)),yc(!s.search||!s.search.includes("#"),SU("#","search","hash",s)));let o=i===""||s.pathname==="",a=o?"/":s.pathname,l;if(a==null)l=n;else{let h=e.length-1;if(!r&&a.startsWith("..")){let f=a.split("/");for(;f[0]==="..";)f.shift(),h-=1;s.pathname=f.join("/")}l=h>=0?e[h]:"/"}let c=PZe(s,l),u=a&&a!=="/"&&a.endsWith("/"),d=(o||a===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(u||d)&&(c.pathname+="/"),c}const Oy=i=>i.join("/").replace(/\/\/+/g,"/"),BZe=i=>i.replace(/\/+$/,"").replace(/^\/*/,"/"),jZe=i=>!i||i==="?"?"":i.startsWith("?")?i:"?"+i,WZe=i=>!i||i==="#"?"":i.startsWith("#")?i:"#"+i;function $Ze(i){return i!=null&&typeof i.status=="number"&&typeof i.statusText=="string"&&typeof i.internal=="boolean"&&"data"in i}const PLe=["post","put","patch","delete"];new Set(PLe);const zZe=["get",...PLe];new Set(zZe);/** * React Router v6.30.1 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function w9(){return w9=Object.assign?Object.assign.bind():function(i){for(var e=1;e{l.current=!0}),$.useCallback(function(u,d){if(d===void 0&&(d={}),!l.current)return;if(typeof u=="number"){r.go(u);return}let h=MLe(u,JSON.parse(a),o,d.relative==="path");i==null&&e!=="/"&&(h.pathname=h.pathname==="/"?e:Oy([e,h.pathname])),(d.replace?r.replace:r.push)(h,d.state,d)},[e,r,a,o,i])}const qZe=$.createContext(null);function KZe(i){let e=$.useContext(jv).outlet;return e&&$.createElement(qZe.Provider,{value:i},e)}function V1(){let{matches:i}=$.useContext(jv),e=i[i.length-1];return e?e.params:{}}function BLe(i,e){let{relative:n}=e===void 0?{}:e,{future:r}=$.useContext(qx),{matches:s}=$.useContext(jv),{pathname:o}=Wv(),a=JSON.stringify(NLe(s,r.v7_relativeSplatPath));return $.useMemo(()=>MLe(i,JSON.parse(a),o,n==="path"),[i,a,o,n])}function GZe(i,e){return XZe(i)}function XZe(i,e,n,r){p5()||yc(!1);let{navigator:s}=$.useContext(qx),{matches:o}=$.useContext(jv),a=o[o.length-1],l=a?a.params:{};a&&a.pathname;let c=a?a.pathnameBase:"/";a&&a.route;let u=Wv(),d;d=u;let h=d.pathname||"/",f=h;if(c!=="/"){let m=c.replace(/^\//,"").split("/");f="/"+h.replace(/^\//,"").split("/").slice(m.length).join("/")}let p=yZe(i,{pathname:f});return eQe(p&&p.map(m=>Object.assign({},m,{params:Object.assign({},l,m.params),pathname:Oy([c,s.encodeLocation?s.encodeLocation(m.pathname).pathname:m.pathname]),pathnameBase:m.pathnameBase==="/"?c:Oy([c,s.encodeLocation?s.encodeLocation(m.pathnameBase).pathname:m.pathnameBase])})),o,n,r)}function YZe(){let i=rQe(),e=$Ze(i)?i.status+" "+i.statusText:i instanceof Error?i.message:JSON.stringify(i),n=i instanceof Error?i.stack:null,s={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return $.createElement($.Fragment,null,$.createElement("h2",null,"Unexpected Application Error!"),$.createElement("h3",{style:{fontStyle:"italic"}},e),n?$.createElement("pre",{style:s},n):null,null)}const ZZe=$.createElement(YZe,null);class QZe extends $.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,n){return n.location!==e.location||n.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:n.error,location:n.location,revalidation:e.revalidation||n.revalidation}}componentDidCatch(e,n){console.error("React Router caught the following error during render",e,n)}render(){return this.state.error!==void 0?$.createElement(jv.Provider,{value:this.props.routeContext},$.createElement(OLe.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function JZe(i){let{routeContext:e,match:n,children:r}=i,s=$.useContext(cse);return s&&s.static&&s.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(s.staticContext._deepestRenderedBoundaryId=n.route.id),$.createElement(jv.Provider,{value:e},r)}function eQe(i,e,n,r){var s;if(e===void 0&&(e=[]),n===void 0&&(n=null),r===void 0&&(r=null),i==null){var o;if(!n)return null;if(n.errors)i=n.matches;else if((o=r)!=null&&o.v7_partialHydration&&e.length===0&&!n.initialized&&n.matches.length>0)i=n.matches;else return null}let a=i,l=(s=n)==null?void 0:s.errors;if(l!=null){let d=a.findIndex(h=>h.route.id&&(l==null?void 0:l[h.route.id])!==void 0);d>=0||yc(!1),a=a.slice(0,Math.min(a.length,d+1))}let c=!1,u=-1;if(n&&r&&r.v7_partialHydration)for(let d=0;d=0?a=a.slice(0,u+1):a=[a[0]];break}}}return a.reduceRight((d,h,f)=>{let p,g=!1,m=null,_=null;n&&(p=l&&h.route.id?l[h.route.id]:void 0,m=h.route.errorElement||ZZe,c&&(u<0&&f===0?(oQe("route-fallback"),g=!0,_=null):u===f&&(g=!0,_=h.route.hydrateFallbackElement||null)));let b=e.concat(a.slice(0,f+1)),y=()=>{let x;return p?x=m:g?x=_:h.route.Component?x=$.createElement(h.route.Component,null):h.route.element?x=h.route.element:x=d,$.createElement(JZe,{match:h,routeContext:{outlet:d,matches:b,isDataRoute:n!=null},children:x})};return n&&(h.route.ErrorBoundary||h.route.errorElement||f===0)?$.createElement(QZe,{location:n.location,revalidation:n.revalidation,component:m,error:p,children:y(),routeContext:{outlet:null,matches:b,isDataRoute:!0}}):y()},null)}var jLe=function(i){return i.UseBlocker="useBlocker",i.UseRevalidator="useRevalidator",i.UseNavigateStable="useNavigate",i}(jLe||{}),WLe=function(i){return i.UseBlocker="useBlocker",i.UseLoaderData="useLoaderData",i.UseActionData="useActionData",i.UseRouteError="useRouteError",i.UseNavigation="useNavigation",i.UseRouteLoaderData="useRouteLoaderData",i.UseMatches="useMatches",i.UseRevalidator="useRevalidator",i.UseNavigateStable="useNavigate",i.UseRouteId="useRouteId",i}(WLe||{});function tQe(i){let e=$.useContext(cse);return e||yc(!1),e}function nQe(i){let e=$.useContext(VZe);return e||yc(!1),e}function iQe(i){let e=$.useContext(jv);return e||yc(!1),e}function $Le(i){let e=iQe(),n=e.matches[e.matches.length-1];return n.route.id||yc(!1),n.route.id}function rQe(){var i;let e=$.useContext(OLe),n=nQe(),r=$Le();return e!==void 0?e:(i=n.errors)==null?void 0:i[r]}function sQe(){let{router:i}=tQe(jLe.UseNavigateStable),e=$Le(WLe.UseNavigateStable),n=$.useRef(!1);return FLe(()=>{n.current=!0}),$.useCallback(function(s,o){o===void 0&&(o={}),n.current&&(typeof s=="number"?i.navigate(s):i.navigate(s,w9({fromRouteId:e},o)))},[i,e])}const $he={};function oQe(i,e,n){$he[i]||($he[i]=!0)}function aQe(i,e){i==null||i.v7_startTransition,i==null||i.v7_relativeSplatPath}function lQe(i){return KZe(i.context)}function cQe(i){let{basename:e="/",children:n=null,location:r,navigationType:s=uS.Pop,navigator:o,static:a=!1,future:l}=i;p5()&&yc(!1);let c=e.replace(/^\/*/,"/"),u=$.useMemo(()=>({basename:c,navigator:o,static:a,future:w9({v7_relativeSplatPath:!1},l)}),[c,l,o,a]);typeof r=="string"&&(r=RI(r));let{pathname:d="/",search:h="",hash:f="",state:p=null,key:g="default"}=r,m=$.useMemo(()=>{let _=lse(d,c);return _==null?null:{location:{pathname:_,search:h,hash:f,state:p,key:g},navigationType:s}},[c,d,h,f,p,g,s]);return m==null?null:$.createElement(qx.Provider,{value:u},$.createElement(use.Provider,{children:n,value:m}))}new Promise(()=>{});/** * React Router DOM v6.30.1 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function zZ(){return zZ=Object.assign?Object.assign.bind():function(i){for(var e=1;e=0)&&(n[s]=i[s]);return n}function dQe(i){return!!(i.metaKey||i.altKey||i.ctrlKey||i.shiftKey)}function hQe(i,e){return i.button===0&&(!e||e==="_self")&&!dQe(i)}const fQe=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],pQe="6";try{window.__reactRouterVersion=pQe}catch{}const gQe="startTransition",zhe=ZS[gQe];function mQe(i){let{basename:e,children:n,future:r,window:s}=i,o=$.useRef();o.current==null&&(o.current=_Ze({window:s,v5Compat:!0}));let a=o.current,[l,c]=$.useState({action:a.action,location:a.location}),{v7_startTransition:u}=r||{},d=$.useCallback(h=>{u&&zhe?zhe(()=>c(h)):c(h)},[c,u]);return $.useLayoutEffect(()=>a.listen(d),[a,d]),$.useEffect(()=>aQe(r),[r]),$.createElement(cQe,{basename:e,children:n,location:l.location,navigationType:l.action,navigator:a,future:r})}const _Qe=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",vQe=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,lh=$.forwardRef(function(e,n){let{onClick:r,relative:s,reloadDocument:o,replace:a,state:l,target:c,to:u,preventScrollReset:d,viewTransition:h}=e,f=uQe(e,fQe),{basename:p}=$.useContext(qx),g,m=!1;if(typeof u=="string"&&vQe.test(u)&&(g=u,_Qe))try{let x=new URL(window.location.href),k=u.startsWith("//")?new URL(x.protocol+u):new URL(u),D=lse(k.pathname,p);k.origin===x.origin&&D!=null?u=D+k.search+k.hash:m=!0}catch{}let _=HZe(u,{relative:s}),b=bQe(u,{replace:a,state:l,target:c,preventScrollReset:d,relative:s,viewTransition:h});function y(x){r&&r(x),x.defaultPrevented||b(x)}return $.createElement("a",zZ({},f,{href:g||_,onClick:m||o?r:y,ref:n,target:c}))});var Vhe;(function(i){i.UseScrollRestoration="useScrollRestoration",i.UseSubmit="useSubmit",i.UseSubmitFetcher="useSubmitFetcher",i.UseFetcher="useFetcher",i.useViewTransitionState="useViewTransitionState"})(Vhe||(Vhe={}));var Hhe;(function(i){i.UseFetcher="useFetcher",i.UseFetchers="useFetchers",i.UseScrollRestoration="useScrollRestoration"})(Hhe||(Hhe={}));function bQe(i,e){let{target:n,replace:r,state:s,preventScrollReset:o,relative:a,viewTransition:l}=e===void 0?{}:e,c=z1(),u=Wv(),d=BLe(i,{relative:a});return $.useCallback(h=>{if(hQe(h,n)){h.preventDefault();let f=r!==void 0?r:y9(u)===y9(d);c(i,{replace:f,state:s,preventScrollReset:o,relative:a,viewTransition:l})}},[u,c,d,r,s,n,i,o,a,l])}const zLe=Hr(C.jsx("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3"})),VLe=Hr(C.jsx("path",{d:"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7M2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2m4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3z"}));function HLe(i,e){return function(){return i.apply(e,arguments)}}const{toString:yQe}=Object.prototype,{getPrototypeOf:dse}=Object,{iterator:BW,toStringTag:ULe}=Symbol,jW=(i=>e=>{const n=yQe.call(e);return i[n]||(i[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),ig=i=>(i=i.toLowerCase(),e=>jW(e)===i),WW=i=>e=>typeof e===i,{isArray:AI}=Array,xE=WW("undefined");function g5(i){return i!==null&&!xE(i)&&i.constructor!==null&&!xE(i.constructor)&&rd(i.constructor.isBuffer)&&i.constructor.isBuffer(i)}const qLe=ig("ArrayBuffer");function wQe(i){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(i):e=i&&i.buffer&&qLe(i.buffer),e}const CQe=WW("string"),rd=WW("function"),KLe=WW("number"),m5=i=>i!==null&&typeof i=="object",SQe=i=>i===!0||i===!1,QB=i=>{if(jW(i)!=="object")return!1;const e=dse(i);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(ULe in i)&&!(BW in i)},xQe=i=>{if(!m5(i)||g5(i))return!1;try{return Object.keys(i).length===0&&Object.getPrototypeOf(i)===Object.prototype}catch{return!1}},kQe=ig("Date"),LQe=ig("File"),DQe=ig("Blob"),EQe=ig("FileList"),IQe=i=>m5(i)&&rd(i.pipe),TQe=i=>{let e;return i&&(typeof FormData=="function"&&i instanceof FormData||rd(i.append)&&((e=jW(i))==="formdata"||e==="object"&&rd(i.toString)&&i.toString()==="[object FormData]"))},RQe=ig("URLSearchParams"),[AQe,NQe,MQe,PQe]=["ReadableStream","Request","Response","Headers"].map(ig),OQe=i=>i.trim?i.trim():i.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function _5(i,e,{allOwnKeys:n=!1}={}){if(i===null||typeof i>"u")return;let r,s;if(typeof i!="object"&&(i=[i]),AI(i))for(r=0,s=i.length;r0;)if(s=n[r],e===s.toLowerCase())return s;return null}const dS=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,XLe=i=>!xE(i)&&i!==dS;function VZ(){const{caseless:i,skipUndefined:e}=XLe(this)&&this||{},n={},r=(s,o)=>{const a=i&&GLe(n,o)||o;QB(n[a])&&QB(s)?n[a]=VZ(n[a],s):QB(s)?n[a]=VZ({},s):AI(s)?n[a]=s.slice():(!e||!xE(s))&&(n[a]=s)};for(let s=0,o=arguments.length;s(_5(e,(s,o)=>{n&&rd(s)?i[o]=HLe(s,n):i[o]=s},{allOwnKeys:r}),i),BQe=i=>(i.charCodeAt(0)===65279&&(i=i.slice(1)),i),jQe=(i,e,n,r)=>{i.prototype=Object.create(e.prototype,r),i.prototype.constructor=i,Object.defineProperty(i,"super",{value:e.prototype}),n&&Object.assign(i.prototype,n)},WQe=(i,e,n,r)=>{let s,o,a;const l={};if(e=e||{},i==null)return e;do{for(s=Object.getOwnPropertyNames(i),o=s.length;o-- >0;)a=s[o],(!r||r(a,i,e))&&!l[a]&&(e[a]=i[a],l[a]=!0);i=n!==!1&&dse(i)}while(i&&(!n||n(i,e))&&i!==Object.prototype);return e},$Qe=(i,e,n)=>{i=String(i),(n===void 0||n>i.length)&&(n=i.length),n-=e.length;const r=i.indexOf(e,n);return r!==-1&&r===n},zQe=i=>{if(!i)return null;if(AI(i))return i;let e=i.length;if(!KLe(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=i[e];return n},VQe=(i=>e=>i&&e instanceof i)(typeof Uint8Array<"u"&&dse(Uint8Array)),HQe=(i,e)=>{const r=(i&&i[BW]).call(i);let s;for(;(s=r.next())&&!s.done;){const o=s.value;e.call(i,o[0],o[1])}},UQe=(i,e)=>{let n;const r=[];for(;(n=i.exec(e))!==null;)r.push(n);return r},qQe=ig("HTMLFormElement"),KQe=i=>i.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),Uhe=(({hasOwnProperty:i})=>(e,n)=>i.call(e,n))(Object.prototype),GQe=ig("RegExp"),YLe=(i,e)=>{const n=Object.getOwnPropertyDescriptors(i),r={};_5(n,(s,o)=>{let a;(a=e(s,o,i))!==!1&&(r[o]=a||s)}),Object.defineProperties(i,r)},XQe=i=>{YLe(i,(e,n)=>{if(rd(i)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=i[n];if(rd(r)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},YQe=(i,e)=>{const n={},r=s=>{s.forEach(o=>{n[o]=!0})};return AI(i)?r(i):r(String(i).split(e)),n},ZQe=()=>{},QQe=(i,e)=>i!=null&&Number.isFinite(i=+i)?i:e;function JQe(i){return!!(i&&rd(i.append)&&i[ULe]==="FormData"&&i[BW])}const eJe=i=>{const e=new Array(10),n=(r,s)=>{if(m5(r)){if(e.indexOf(r)>=0)return;if(g5(r))return r;if(!("toJSON"in r)){e[s]=r;const o=AI(r)?[]:{};return _5(r,(a,l)=>{const c=n(a,s+1);!xE(c)&&(o[l]=c)}),e[s]=void 0,o}}return r};return n(i,0)},tJe=ig("AsyncFunction"),nJe=i=>i&&(m5(i)||rd(i))&&rd(i.then)&&rd(i.catch),ZLe=((i,e)=>i?setImmediate:e?((n,r)=>(dS.addEventListener("message",({source:s,data:o})=>{s===dS&&o===n&&r.length&&r.shift()()},!1),s=>{r.push(s),dS.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",rd(dS.postMessage)),iJe=typeof queueMicrotask<"u"?queueMicrotask.bind(dS):typeof process<"u"&&process.nextTick||ZLe,rJe=i=>i!=null&&rd(i[BW]),at={isArray:AI,isArrayBuffer:qLe,isBuffer:g5,isFormData:TQe,isArrayBufferView:wQe,isString:CQe,isNumber:KLe,isBoolean:SQe,isObject:m5,isPlainObject:QB,isEmptyObject:xQe,isReadableStream:AQe,isRequest:NQe,isResponse:MQe,isHeaders:PQe,isUndefined:xE,isDate:kQe,isFile:LQe,isBlob:DQe,isRegExp:GQe,isFunction:rd,isStream:IQe,isURLSearchParams:RQe,isTypedArray:VQe,isFileList:EQe,forEach:_5,merge:VZ,extend:FQe,trim:OQe,stripBOM:BQe,inherits:jQe,toFlatObject:WQe,kindOf:jW,kindOfTest:ig,endsWith:$Qe,toArray:zQe,forEachEntry:HQe,matchAll:UQe,isHTMLForm:qQe,hasOwnProperty:Uhe,hasOwnProp:Uhe,reduceDescriptors:YLe,freezeMethods:XQe,toObjectSet:YQe,toCamelCase:KQe,noop:ZQe,toFiniteNumber:QQe,findKey:GLe,global:dS,isContextDefined:XLe,isSpecCompliantForm:JQe,toJSONObject:eJe,isAsyncFn:tJe,isThenable:nJe,setImmediate:ZLe,asap:iJe,isIterable:rJe};function Ni(i,e,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=i,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s,this.status=s.status?s.status:null)}at.inherits(Ni,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:at.toJSONObject(this.config),code:this.code,status:this.status}}});const QLe=Ni.prototype,JLe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(i=>{JLe[i]={value:i}});Object.defineProperties(Ni,JLe);Object.defineProperty(QLe,"isAxiosError",{value:!0});Ni.from=(i,e,n,r,s,o)=>{const a=Object.create(QLe);at.toFlatObject(i,a,function(d){return d!==Error.prototype},u=>u!=="isAxiosError");const l=i&&i.message?i.message:"Error",c=e==null&&i?i.code:e;return Ni.call(a,l,c,n,r,s),i&&a.cause==null&&Object.defineProperty(a,"cause",{value:i,configurable:!0}),a.name=i&&i.name||"Error",o&&Object.assign(a,o),a};const sJe=null;function HZ(i){return at.isPlainObject(i)||at.isArray(i)}function eDe(i){return at.endsWith(i,"[]")?i.slice(0,-2):i}function qhe(i,e,n){return i?i.concat(e).map(function(s,o){return s=eDe(s),!n&&o?"["+s+"]":s}).join(n?".":""):e}function oJe(i){return at.isArray(i)&&!i.some(HZ)}const aJe=at.toFlatObject(at,{},null,function(e){return/^is[A-Z]/.test(e)});function $W(i,e,n){if(!at.isObject(i))throw new TypeError("target must be an object");e=e||new FormData,n=at.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!at.isUndefined(_[m])});const r=n.metaTokens,s=n.visitor||d,o=n.dots,a=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&at.isSpecCompliantForm(e);if(!at.isFunction(s))throw new TypeError("visitor must be a function");function u(g){if(g===null)return"";if(at.isDate(g))return g.toISOString();if(at.isBoolean(g))return g.toString();if(!c&&at.isBlob(g))throw new Ni("Blob is not supported. Use a Buffer instead.");return at.isArrayBuffer(g)||at.isTypedArray(g)?c&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function d(g,m,_){let b=g;if(g&&!_&&typeof g=="object"){if(at.endsWith(m,"{}"))m=r?m:m.slice(0,-2),g=JSON.stringify(g);else if(at.isArray(g)&&oJe(g)||(at.isFileList(g)||at.endsWith(m,"[]"))&&(b=at.toArray(g)))return m=eDe(m),b.forEach(function(x,k){!(at.isUndefined(x)||x===null)&&e.append(a===!0?qhe([m],k,o):a===null?m:m+"[]",u(x))}),!1}return HZ(g)?!0:(e.append(qhe(_,m,o),u(g)),!1)}const h=[],f=Object.assign(aJe,{defaultVisitor:d,convertValue:u,isVisitable:HZ});function p(g,m){if(!at.isUndefined(g)){if(h.indexOf(g)!==-1)throw Error("Circular reference detected in "+m.join("."));h.push(g),at.forEach(g,function(b,y){(!(at.isUndefined(b)||b===null)&&s.call(e,b,at.isString(y)?y.trim():y,m,f))===!0&&p(b,m?m.concat(y):[y])}),h.pop()}}if(!at.isObject(i))throw new TypeError("data must be an object");return p(i),e}function Khe(i){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(i).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function hse(i,e){this._pairs=[],i&&$W(i,this,e)}const tDe=hse.prototype;tDe.append=function(e,n){this._pairs.push([e,n])};tDe.toString=function(e){const n=e?function(r){return e.call(this,r,Khe)}:Khe;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function lJe(i){return encodeURIComponent(i).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function nDe(i,e,n){if(!e)return i;const r=n&&n.encode||lJe;at.isFunction(n)&&(n={serialize:n});const s=n&&n.serialize;let o;if(s?o=s(e,n):o=at.isURLSearchParams(e)?e.toString():new hse(e,n).toString(r),o){const a=i.indexOf("#");a!==-1&&(i=i.slice(0,a)),i+=(i.indexOf("?")===-1?"?":"&")+o}return i}class Ghe{constructor(){this.handlers=[]}use(e,n,r){return this.handlers.push({fulfilled:e,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){at.forEach(this.handlers,function(r){r!==null&&e(r)})}}const iDe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},cJe=typeof URLSearchParams<"u"?URLSearchParams:hse,uJe=typeof FormData<"u"?FormData:null,dJe=typeof Blob<"u"?Blob:null,hJe={isBrowser:!0,classes:{URLSearchParams:cJe,FormData:uJe,Blob:dJe},protocols:["http","https","file","blob","url","data"]},fse=typeof window<"u"&&typeof document<"u",UZ=typeof navigator=="object"&&navigator||void 0,fJe=fse&&(!UZ||["ReactNative","NativeScript","NS"].indexOf(UZ.product)<0),pJe=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",gJe=fse&&window.location.href||"http://localhost",mJe=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:fse,hasStandardBrowserEnv:fJe,hasStandardBrowserWebWorkerEnv:pJe,navigator:UZ,origin:gJe},Symbol.toStringTag,{value:"Module"})),mc={...mJe,...hJe};function _Je(i,e){return $W(i,new mc.classes.URLSearchParams,{visitor:function(n,r,s,o){return mc.isNode&&at.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...e})}function vJe(i){return at.matchAll(/\w+|\[(\w*)]/g,i).map(e=>e[0]==="[]"?"":e[1]||e[0])}function bJe(i){const e={},n=Object.keys(i);let r;const s=n.length;let o;for(r=0;r=n.length;return a=!a&&at.isArray(s)?s.length:a,c?(at.hasOwnProp(s,a)?s[a]=[s[a],r]:s[a]=r,!l):((!s[a]||!at.isObject(s[a]))&&(s[a]=[]),e(n,r,s[a],o)&&at.isArray(s[a])&&(s[a]=bJe(s[a])),!l)}if(at.isFormData(i)&&at.isFunction(i.entries)){const n={};return at.forEachEntry(i,(r,s)=>{e(vJe(r),s,n,0)}),n}return null}function yJe(i,e,n){if(at.isString(i))try{return(e||JSON.parse)(i),at.trim(i)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(i)}const v5={transitional:iDe,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,o=at.isObject(e);if(o&&at.isHTMLForm(e)&&(e=new FormData(e)),at.isFormData(e))return s?JSON.stringify(rDe(e)):e;if(at.isArrayBuffer(e)||at.isBuffer(e)||at.isStream(e)||at.isFile(e)||at.isBlob(e)||at.isReadableStream(e))return e;if(at.isArrayBufferView(e))return e.buffer;if(at.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let l;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return _Je(e,this.formSerializer).toString();if((l=at.isFileList(e))||r.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return $W(l?{"files[]":e}:e,c&&new c,this.formSerializer)}}return o||s?(n.setContentType("application/json",!1),yJe(e)):e}],transformResponse:[function(e){const n=this.transitional||v5.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(at.isResponse(e)||at.isReadableStream(e))return e;if(e&&at.isString(e)&&(r&&!this.responseType||s)){const a=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(e,this.parseReviver)}catch(l){if(a)throw l.name==="SyntaxError"?Ni.from(l,Ni.ERR_BAD_RESPONSE,this,null,this.response):l}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:mc.classes.FormData,Blob:mc.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};at.forEach(["delete","get","head","post","put","patch"],i=>{v5.headers[i]={}});const wJe=at.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),CJe=i=>{const e={};let n,r,s;return i&&i.split(` `).forEach(function(a){s=a.indexOf(":"),n=a.substring(0,s).trim().toLowerCase(),r=a.substring(s+1).trim(),!(!n||e[n]&&wJe[n])&&(n==="set-cookie"?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e},Xhe=Symbol("internals");function OR(i){return i&&String(i).trim().toLowerCase()}function JB(i){return i===!1||i==null?i:at.isArray(i)?i.map(JB):String(i)}function SJe(i){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(i);)e[r[1]]=r[2];return e}const xJe=i=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(i.trim());function xU(i,e,n,r,s){if(at.isFunction(r))return r.call(this,e,n);if(s&&(e=n),!!at.isString(e)){if(at.isString(r))return e.indexOf(r)!==-1;if(at.isRegExp(r))return r.test(e)}}function kJe(i){return i.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,r)=>n.toUpperCase()+r)}function LJe(i,e){const n=at.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(i,r+n,{value:function(s,o,a){return this[r].call(this,e,s,o,a)},configurable:!0})})}let sd=class{constructor(e){e&&this.set(e)}set(e,n,r){const s=this;function o(l,c,u){const d=OR(c);if(!d)throw new Error("header name must be a non-empty string");const h=at.findKey(s,d);(!h||s[h]===void 0||u===!0||u===void 0&&s[h]!==!1)&&(s[h||c]=JB(l))}const a=(l,c)=>at.forEach(l,(u,d)=>o(u,d,c));if(at.isPlainObject(e)||e instanceof this.constructor)a(e,n);else if(at.isString(e)&&(e=e.trim())&&!xJe(e))a(CJe(e),n);else if(at.isObject(e)&&at.isIterable(e)){let l={},c,u;for(const d of e){if(!at.isArray(d))throw TypeError("Object iterator must return a key-value pair");l[u=d[0]]=(c=l[u])?at.isArray(c)?[...c,d[1]]:[c,d[1]]:d[1]}a(l,n)}else e!=null&&o(n,e,r);return this}get(e,n){if(e=OR(e),e){const r=at.findKey(this,e);if(r){const s=this[r];if(!n)return s;if(n===!0)return SJe(s);if(at.isFunction(n))return n.call(this,s,r);if(at.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=OR(e),e){const r=at.findKey(this,e);return!!(r&&this[r]!==void 0&&(!n||xU(this,this[r],r,n)))}return!1}delete(e,n){const r=this;let s=!1;function o(a){if(a=OR(a),a){const l=at.findKey(r,a);l&&(!n||xU(r,r[l],l,n))&&(delete r[l],s=!0)}}return at.isArray(e)?e.forEach(o):o(e),s}clear(e){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const o=n[r];(!e||xU(this,this[o],o,e,!0))&&(delete this[o],s=!0)}return s}normalize(e){const n=this,r={};return at.forEach(this,(s,o)=>{const a=at.findKey(r,o);if(a){n[a]=JB(s),delete n[o];return}const l=e?kJe(o):String(o).trim();l!==o&&delete n[o],n[l]=JB(s),r[l]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return at.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=e&&at.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join(` `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){const r=new this(e);return n.forEach(s=>r.set(s)),r}static accessor(e){const r=(this[Xhe]=this[Xhe]={accessors:{}}).accessors,s=this.prototype;function o(a){const l=OR(a);r[l]||(LJe(s,a),r[l]=!0)}return at.isArray(e)?e.forEach(o):o(e),this}};sd.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);at.reduceDescriptors(sd.prototype,({value:i},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>i,set(r){this[n]=r}}});at.freezeMethods(sd);function kU(i,e){const n=this||v5,r=e||n,s=sd.from(r.headers);let o=r.data;return at.forEach(i,function(l){o=l.call(n,o,s.normalize(),e?e.status:void 0)}),s.normalize(),o}function sDe(i){return!!(i&&i.__CANCEL__)}function NI(i,e,n){Ni.call(this,i??"canceled",Ni.ERR_CANCELED,e,n),this.name="CanceledError"}at.inherits(NI,Ni,{__CANCEL__:!0});function oDe(i,e,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?i(n):e(new Ni("Request failed with status code "+n.status,[Ni.ERR_BAD_REQUEST,Ni.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function DJe(i){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(i);return e&&e[1]||""}function EJe(i,e){i=i||10;const n=new Array(i),r=new Array(i);let s=0,o=0,a;return e=e!==void 0?e:1e3,function(c){const u=Date.now(),d=r[o];a||(a=u),n[s]=c,r[s]=u;let h=o,f=0;for(;h!==s;)f+=n[h++],h=h%i;if(s=(s+1)%i,s===o&&(o=(o+1)%i),u-a{n=d,s=null,o&&(clearTimeout(o),o=null),i(...u)};return[(...u)=>{const d=Date.now(),h=d-n;h>=r?a(u,d):(s=u,o||(o=setTimeout(()=>{o=null,a(s)},r-h)))},()=>s&&a(s)]}const C9=(i,e,n=3)=>{let r=0;const s=EJe(50,250);return IJe(o=>{const a=o.loaded,l=o.lengthComputable?o.total:void 0,c=a-r,u=s(c),d=a<=l;r=a;const h={loaded:a,total:l,progress:l?a/l:void 0,bytes:c,rate:u||void 0,estimated:u&&l&&d?(l-a)/u:void 0,event:o,lengthComputable:l!=null,[e?"download":"upload"]:!0};i(h)},n)},Yhe=(i,e)=>{const n=i!=null;return[r=>e[0]({lengthComputable:n,total:i,loaded:r}),e[1]]},Zhe=i=>(...e)=>at.asap(()=>i(...e)),TJe=mc.hasStandardBrowserEnv?((i,e)=>n=>(n=new URL(n,mc.origin),i.protocol===n.protocol&&i.host===n.host&&(e||i.port===n.port)))(new URL(mc.origin),mc.navigator&&/(msie|trident)/i.test(mc.navigator.userAgent)):()=>!0,RJe=mc.hasStandardBrowserEnv?{write(i,e,n,r,s,o){const a=[i+"="+encodeURIComponent(e)];at.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),at.isString(r)&&a.push("path="+r),at.isString(s)&&a.push("domain="+s),o===!0&&a.push("secure"),document.cookie=a.join("; ")},read(i){const e=document.cookie.match(new RegExp("(^|;\\s*)("+i+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(i){this.write(i,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function AJe(i){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(i)}function NJe(i,e){return e?i.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):i}function aDe(i,e,n){let r=!AJe(e);return i&&(r||n==!1)?NJe(i,e):e}const Qhe=i=>i instanceof sd?{...i}:i;function nx(i,e){e=e||{};const n={};function r(u,d,h,f){return at.isPlainObject(u)&&at.isPlainObject(d)?at.merge.call({caseless:f},u,d):at.isPlainObject(d)?at.merge({},d):at.isArray(d)?d.slice():d}function s(u,d,h,f){if(at.isUndefined(d)){if(!at.isUndefined(u))return r(void 0,u,h,f)}else return r(u,d,h,f)}function o(u,d){if(!at.isUndefined(d))return r(void 0,d)}function a(u,d){if(at.isUndefined(d)){if(!at.isUndefined(u))return r(void 0,u)}else return r(void 0,d)}function l(u,d,h){if(h in e)return r(u,d);if(h in i)return r(void 0,u)}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(u,d,h)=>s(Qhe(u),Qhe(d),h,!0)};return at.forEach(Object.keys({...i,...e}),function(d){const h=c[d]||s,f=h(i[d],e[d],d);at.isUndefined(f)&&h!==l||(n[d]=f)}),n}const lDe=i=>{const e=nx({},i);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:o,headers:a,auth:l}=e;if(e.headers=a=sd.from(a),e.url=nDe(aDe(e.baseURL,e.url,e.allowAbsoluteUrls),i.params,i.paramsSerializer),l&&a.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),at.isFormData(n)){if(mc.hasStandardBrowserEnv||mc.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(at.isFunction(n.getHeaders)){const c=n.getHeaders(),u=["content-type","content-length"];Object.entries(c).forEach(([d,h])=>{u.includes(d.toLowerCase())&&a.set(d,h)})}}if(mc.hasStandardBrowserEnv&&(r&&at.isFunction(r)&&(r=r(e)),r||r!==!1&&TJe(e.url))){const c=s&&o&&RJe.read(o);c&&a.set(s,c)}return e},MJe=typeof XMLHttpRequest<"u",PJe=MJe&&function(i){return new Promise(function(n,r){const s=lDe(i);let o=s.data;const a=sd.from(s.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:u}=s,d,h,f,p,g;function m(){p&&p(),g&&g(),s.cancelToken&&s.cancelToken.unsubscribe(d),s.signal&&s.signal.removeEventListener("abort",d)}let _=new XMLHttpRequest;_.open(s.method.toUpperCase(),s.url,!0),_.timeout=s.timeout;function b(){if(!_)return;const x=sd.from("getAllResponseHeaders"in _&&_.getAllResponseHeaders()),D={data:!l||l==="text"||l==="json"?_.responseText:_.response,status:_.status,statusText:_.statusText,headers:x,config:i,request:_};oDe(function(E){n(E),m()},function(E){r(E),m()},D),_=null}"onloadend"in _?_.onloadend=b:_.onreadystatechange=function(){!_||_.readyState!==4||_.status===0&&!(_.responseURL&&_.responseURL.indexOf("file:")===0)||setTimeout(b)},_.onabort=function(){_&&(r(new Ni("Request aborted",Ni.ECONNABORTED,i,_)),_=null)},_.onerror=function(k){const D=k&&k.message?k.message:"Network Error",R=new Ni(D,Ni.ERR_NETWORK,i,_);R.event=k||null,r(R),_=null},_.ontimeout=function(){let k=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const D=s.transitional||iDe;s.timeoutErrorMessage&&(k=s.timeoutErrorMessage),r(new Ni(k,D.clarifyTimeoutError?Ni.ETIMEDOUT:Ni.ECONNABORTED,i,_)),_=null},o===void 0&&a.setContentType(null),"setRequestHeader"in _&&at.forEach(a.toJSON(),function(k,D){_.setRequestHeader(D,k)}),at.isUndefined(s.withCredentials)||(_.withCredentials=!!s.withCredentials),l&&l!=="json"&&(_.responseType=s.responseType),u&&([f,g]=C9(u,!0),_.addEventListener("progress",f)),c&&_.upload&&([h,p]=C9(c),_.upload.addEventListener("progress",h),_.upload.addEventListener("loadend",p)),(s.cancelToken||s.signal)&&(d=x=>{_&&(r(!x||x.type?new NI(null,i,_):x),_.abort(),_=null)},s.cancelToken&&s.cancelToken.subscribe(d),s.signal&&(s.signal.aborted?d():s.signal.addEventListener("abort",d)));const y=DJe(s.url);if(y&&mc.protocols.indexOf(y)===-1){r(new Ni("Unsupported protocol "+y+":",Ni.ERR_BAD_REQUEST,i));return}_.send(o||null)})},OJe=(i,e)=>{const{length:n}=i=i?i.filter(Boolean):[];if(e||n){let r=new AbortController,s;const o=function(u){if(!s){s=!0,l();const d=u instanceof Error?u:this.reason;r.abort(d instanceof Ni?d:new NI(d instanceof Error?d.message:d))}};let a=e&&setTimeout(()=>{a=null,o(new Ni(`timeout ${e} of ms exceeded`,Ni.ETIMEDOUT))},e);const l=()=>{i&&(a&&clearTimeout(a),a=null,i.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),i=null)};i.forEach(u=>u.addEventListener("abort",o));const{signal:c}=r;return c.unsubscribe=()=>at.asap(l),c}},FJe=function*(i,e){let n=i.byteLength;if(n{const s=BJe(i,e);let o=0,a,l=c=>{a||(a=!0,r&&r(c))};return new ReadableStream({async pull(c){try{const{done:u,value:d}=await s.next();if(u){l(),c.close();return}let h=d.byteLength;if(n){let f=o+=h;n(f)}c.enqueue(new Uint8Array(d))}catch(u){throw l(u),u}},cancel(c){return l(c),s.return()}},{highWaterMark:2})},efe=64*1024,{isFunction:D3}=at,WJe=(({Request:i,Response:e})=>({Request:i,Response:e}))(at.global),{ReadableStream:tfe,TextEncoder:nfe}=at.global,ife=(i,...e)=>{try{return!!i(...e)}catch{return!1}},$Je=i=>{i=at.merge.call({skipUndefined:!0},WJe,i);const{fetch:e,Request:n,Response:r}=i,s=e?D3(e):typeof fetch=="function",o=D3(n),a=D3(r);if(!s)return!1;const l=s&&D3(tfe),c=s&&(typeof nfe=="function"?(g=>m=>g.encode(m))(new nfe):async g=>new Uint8Array(await new n(g).arrayBuffer())),u=o&&l&&ife(()=>{let g=!1;const m=new n(mc.origin,{body:new tfe,method:"POST",get duplex(){return g=!0,"half"}}).headers.has("Content-Type");return g&&!m}),d=a&&l&&ife(()=>at.isReadableStream(new r("").body)),h={stream:d&&(g=>g.body)};s&&["text","arrayBuffer","blob","formData","stream"].forEach(g=>{!h[g]&&(h[g]=(m,_)=>{let b=m&&m[g];if(b)return b.call(m);throw new Ni(`Response type '${g}' is not supported`,Ni.ERR_NOT_SUPPORT,_)})});const f=async g=>{if(g==null)return 0;if(at.isBlob(g))return g.size;if(at.isSpecCompliantForm(g))return(await new n(mc.origin,{method:"POST",body:g}).arrayBuffer()).byteLength;if(at.isArrayBufferView(g)||at.isArrayBuffer(g))return g.byteLength;if(at.isURLSearchParams(g)&&(g=g+""),at.isString(g))return(await c(g)).byteLength},p=async(g,m)=>{const _=at.toFiniteNumber(g.getContentLength());return _??f(m)};return async g=>{let{url:m,method:_,data:b,signal:y,cancelToken:x,timeout:k,onDownloadProgress:D,onUploadProgress:R,responseType:E,headers:A,withCredentials:M="same-origin",fetchOptions:N}=lDe(g),P=e||fetch;E=E?(E+"").toLowerCase():"text";let O=OJe([y,x&&x.toAbortSignal()],k),B=null;const j=O&&O.unsubscribe&&(()=>{O.unsubscribe()});let z;try{if(R&&u&&_!=="get"&&_!=="head"&&(z=await p(A,b))!==0){let K=new n(m,{method:"POST",body:b,duplex:"half"}),ee;if(at.isFormData(b)&&(ee=K.headers.get("content-type"))&&A.setContentType(ee),K.body){const[le,ke]=Yhe(z,C9(Zhe(R)));b=Jhe(K.body,efe,le,ke)}}at.isString(M)||(M=M?"include":"omit");const H=o&&"credentials"in n.prototype,Y={...N,signal:O,method:_.toUpperCase(),headers:A.normalize().toJSON(),body:b,duplex:"half",credentials:H?M:void 0};B=o&&new n(m,Y);let X=await(o?P(B,N):P(m,Y));const Q=d&&(E==="stream"||E==="response");if(d&&(D||Q&&j)){const K={};["status","statusText","headers"].forEach(xe=>{K[xe]=X[xe]});const ee=at.toFiniteNumber(X.headers.get("content-length")),[le,ke]=D&&Yhe(ee,C9(Zhe(D),!0))||[];X=new r(Jhe(X.body,efe,le,()=>{ke&&ke(),j&&j()}),K)}E=E||"text";let ie=await h[at.findKey(h,E)||"text"](X,g);return!Q&&j&&j(),await new Promise((K,ee)=>{oDe(K,ee,{data:ie,headers:sd.from(X.headers),status:X.status,statusText:X.statusText,config:g,request:B})})}catch(H){throw j&&j(),H&&H.name==="TypeError"&&/Load failed|fetch/i.test(H.message)?Object.assign(new Ni("Network Error",Ni.ERR_NETWORK,g,B),{cause:H.cause||H}):Ni.from(H,H&&H.code,g,B)}}},zJe=new Map,cDe=i=>{let e=i?i.env:{};const{fetch:n,Request:r,Response:s}=e,o=[r,s,n];let a=o.length,l=a,c,u,d=zJe;for(;l--;)c=o[l],u=d.get(c),u===void 0&&d.set(c,u=l?new Map:$Je(e)),d=u;return u};cDe();const qZ={http:sJe,xhr:PJe,fetch:{get:cDe}};at.forEach(qZ,(i,e)=>{if(i){try{Object.defineProperty(i,"name",{value:e})}catch{}Object.defineProperty(i,"adapterName",{value:e})}});const rfe=i=>`- ${i}`,VJe=i=>at.isFunction(i)||i===null||i===!1,uDe={getAdapter:(i,e)=>{i=at.isArray(i)?i:[i];const{length:n}=i;let r,s;const o={};for(let a=0;a`adapter ${c} `+(u===!1?"is not supported by the environment":"is not available in the build"));let l=n?a.length>1?`since : `+a.map(rfe).join(` `):" "+rfe(a[0]):"as no adapter specified";throw new Ni("There is no suitable adapter to dispatch the request "+l,"ERR_NOT_SUPPORT")}return s},adapters:qZ};function LU(i){if(i.cancelToken&&i.cancelToken.throwIfRequested(),i.signal&&i.signal.aborted)throw new NI(null,i)}function sfe(i){return LU(i),i.headers=sd.from(i.headers),i.data=kU.call(i,i.transformRequest),["post","put","patch"].indexOf(i.method)!==-1&&i.headers.setContentType("application/x-www-form-urlencoded",!1),uDe.getAdapter(i.adapter||v5.adapter,i)(i).then(function(r){return LU(i),r.data=kU.call(i,i.transformResponse,r),r.headers=sd.from(r.headers),r},function(r){return sDe(r)||(LU(i),r&&r.response&&(r.response.data=kU.call(i,i.transformResponse,r.response),r.response.headers=sd.from(r.response.headers))),Promise.reject(r)})}const dDe="1.12.2",zW={};["object","boolean","number","function","string","symbol"].forEach((i,e)=>{zW[i]=function(r){return typeof r===i||"a"+(e<1?"n ":" ")+i}});const ofe={};zW.transitional=function(e,n,r){function s(o,a){return"[Axios v"+dDe+"] Transitional option '"+o+"'"+a+(r?". "+r:"")}return(o,a,l)=>{if(e===!1)throw new Ni(s(a," has been removed"+(n?" in "+n:"")),Ni.ERR_DEPRECATED);return n&&!ofe[a]&&(ofe[a]=!0,console.warn(s(a," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(o,a,l):!0}};zW.spelling=function(e){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${e}`),!0)};function HJe(i,e,n){if(typeof i!="object")throw new Ni("options must be an object",Ni.ERR_BAD_OPTION_VALUE);const r=Object.keys(i);let s=r.length;for(;s-- >0;){const o=r[s],a=e[o];if(a){const l=i[o],c=l===void 0||a(l,o,i);if(c!==!0)throw new Ni("option "+o+" must be "+c,Ni.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new Ni("Unknown option "+o,Ni.ERR_BAD_OPTION)}}const e8={assertOptions:HJe,validators:zW},Bg=e8.validators;let TS=class{constructor(e){this.defaults=e||{},this.interceptors={request:new Ghe,response:new Ghe}}async request(e,n){try{return await this._request(e,n)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=` `+o):r.stack=o}catch{}}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=nx(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&e8.assertOptions(r,{silentJSONParsing:Bg.transitional(Bg.boolean),forcedJSONParsing:Bg.transitional(Bg.boolean),clarifyTimeoutError:Bg.transitional(Bg.boolean)},!1),s!=null&&(at.isFunction(s)?n.paramsSerializer={serialize:s}:e8.assertOptions(s,{encode:Bg.function,serialize:Bg.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),e8.assertOptions(n,{baseUrl:Bg.spelling("baseURL"),withXsrfToken:Bg.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=o&&at.merge(o.common,o[n.method]);o&&at.forEach(["delete","get","head","post","put","patch","common"],g=>{delete o[g]}),n.headers=sd.concat(a,o);const l=[];let c=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(n)===!1||(c=c&&m.synchronous,l.unshift(m.fulfilled,m.rejected))});const u=[];this.interceptors.response.forEach(function(m){u.push(m.fulfilled,m.rejected)});let d,h=0,f;if(!c){const g=[sfe.bind(this),void 0];for(g.unshift(...l),g.push(...u),f=g.length,d=Promise.resolve(n);h{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const a=new Promise(l=>{r.subscribe(l),o=l}).then(s);return a.cancel=function(){r.unsubscribe(o)},a},e(function(o,a,l){r.reason||(r.reason=new NI(o,a,l),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=r=>{e.abort(r)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new hDe(function(s){e=s}),cancel:e}}};function qJe(i){return function(n){return i.apply(null,n)}}function KJe(i){return at.isObject(i)&&i.isAxiosError===!0}const KZ={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(KZ).forEach(([i,e])=>{KZ[e]=i});function fDe(i){const e=new TS(i),n=HLe(TS.prototype.request,e);return at.extend(n,TS.prototype,e,{allOwnKeys:!0}),at.extend(n,e,null,{allOwnKeys:!0}),n.create=function(s){return fDe(nx(i,s))},n}const da=fDe(v5);da.Axios=TS;da.CanceledError=NI;da.CancelToken=UJe;da.isCancel=sDe;da.VERSION=dDe;da.toFormData=$W;da.AxiosError=Ni;da.Cancel=da.CanceledError;da.all=function(e){return Promise.all(e)};da.spread=qJe;da.isAxiosError=KJe;da.mergeConfig=nx;da.AxiosHeaders=sd;da.formToJSON=i=>rDe(at.isHTMLForm(i)?new FormData(i):i);da.getAdapter=uDe.getAdapter;da.HttpStatusCode=KZ;da.default=da;const{Axios:Vtn,AxiosError:Htn,CanceledError:Utn,isCancel:qtn,CancelToken:Ktn,VERSION:Gtn,all:Xtn,Cancel:Ytn,isAxiosError:Ztn,spread:Qtn,toFormData:Jtn,AxiosHeaders:enn,HttpStatusCode:tnn,formToJSON:nnn,getAdapter:inn,mergeConfig:rnn}=da,pse=function(){const i=new URL(window.location.href),e=i.pathname.replace(/dashboard$/,"");return new URL(e,i.href).href},pDe=function(i,e,n=[]){return i.read().then(({done:r,value:s})=>r?n:(e(s.length),n.push(s),pDe(i,e,n)))},GJe=function(i,e){let n=0;return r=>{n+=r;const s=i?parseInt(i,10):null,o=Math.round(n/s*100);e(o)}},XJe=function(i={},e){try{const n=e.parse(i);return e.stringify(n,null,2)}catch{const n={error:`HERE ${i}`};return e.stringify(n,null,2)}};let gDe,mDe;"rawJSON"in JSON&&(gDe=function(i,e,n){if(Number.isInteger(e)&&!Number.isSafeInteger(e))try{return BigInt(n==null?void 0:n.source)}catch{return e}return e},mDe=function(i,e){return typeof e=="bigint"?JSON.rawJSON(String(e)):e});const ls={parse:function(i,e){return JSON.parse(i,e||gDe)},stringify:function(i,e,n){return JSON.stringify(i,e||mDe,n)}},kE=da.create({baseURL:pse(),transformRequest:[function(i,e){return i instanceof FormData?i:(e["Content-Type"]="application/json",e["x-inference-proxy"]="true",ls.stringify(i))}],transformResponse:[function(i){return ls.parse(i)}]});function afe(i,{apiKey:e}){i.defaults.baseURL=pse(),e&&(i.defaults.headers.common["api-key"]=e),i.defaults.transformRequest=[function(n,r){return n instanceof FormData?n:(r["Content-Type"]="application/json",r["x-inference-proxy"]="true",ls.stringify(n))}],i.defaults.transformResponse=[function(n){return n&&ls.parse(n)}]}var S9={isNone:function(){return!0},orElse:function(i){return i},orCall:function(i){return i()},orNull:function(){return null},orThrow:function(i){throw i===void 0&&(i="Unexpected null value"),new TypeError(i)},map:function(){return S9},get:function(){return S9}},_De=function(){function i(e){this.value=e}return i.prototype.isNone=function(){return!1},i.prototype.orElse=function(){return this.value},i.prototype.orCall=function(){return this.value},i.prototype.orNull=function(){return this.value},i.prototype.orThrow=function(){return this.value},i.prototype.map=function(e){return An(e(this.value))},i.prototype.get=function(e){return this.map(function(n){return n[e]})},i}();function YJe(i){return i===S9||i instanceof _De}function An(i){return YJe(i)?i:i==null?S9:ZJe(i)}function ZJe(i){if(i==null)throw new TypeError("some() does not accept null or undefined");return new _De(i)}class x9 extends Error{constructor(e){super(e.statusText),Object.setPrototypeOf(this,new.target.prototype),this.headers=e.headers,this.url=e.url,this.status=e.status,this.statusText=e.statusText,this.data=e.data}}let GZ,vDe;"rawJSON"in JSON&&(GZ=function(i,e,n){if(Number.isInteger(e)&&!Number.isSafeInteger(e))try{return BigInt(n.source)}catch{return e}return e},vDe=function(i,e){return typeof e=="bigint"?JSON.rawJSON(String(e)):e});const gse=i=>i==="post"||i==="put"||i==="patch"||i==="delete";function QJe(i){const e=[],n=(r,s)=>`${encodeURIComponent(r)}=${encodeURIComponent(String(s))}`;return Object.keys(i).forEach(r=>{const s=i[r];s!=null&&(Array.isArray(s)?s.forEach(o=>e.push(n(r,o))):e.push(n(r,s)))}),e.length>0?`?${e.join("&")}`:""}function JJe(i,e){return i.replace(/\{([^}]+)\}/g,(n,r)=>{const s=encodeURIComponent(e[r]);return delete e[r],s})}function eet(i,e,n){let r={};return gse(i)?n.forEach(s=>{r[s]=e[s],delete e[s]}):r={...e},QJe(r)}function tet(i,e){const n=new Headers(e);return i!==void 0&&!(i instanceof FormData)&&!n.has("Content-Type")&&n.append("Content-Type","application/json"),n.has("Accept")||n.append("Accept","application/json"),n}function net(i,e){if(!gse(i))return;const n=e instanceof FormData?e:JSON.stringify(e,vDe);return i==="delete"&&n==="{}"?void 0:n}function iet(i,e){const n=new Headers(i==null?void 0:i.headers),r=new Headers(e==null?void 0:e.headers);for(const s of r.keys()){const o=r.get(s);o!=null&&n.set(s,o)}return{...i,...e,headers:n}}function ret(i){var c,u;const e=Object.assign(Array.isArray(i.payload)?[]:{},i.payload),n=JJe(i.path,e),r=eet(i.method,e,i.queryParams),s=net(i.method,e),o=gse(i.method)?tet(s,(c=i.init)==null?void 0:c.headers):new Headers((u=i.init)==null?void 0:u.headers),a=i.baseUrl+n+r,l={...i.init,method:i.method.toUpperCase(),headers:o,body:s};return{url:a,init:l}}async function set(i){if(i.status===204)return;const e=i.headers.get("content-type"),n=await i.text();if(e&&e.includes("application/json"))return JSON.parse(n,GZ);try{return JSON.parse(n,GZ)}catch{return n}}async function oet(i,e){const n=await fetch(i,e),r=await set(n),s={headers:n.headers,url:n.url,ok:n.ok,status:n.status,statusText:n.statusText,data:r};if(s.ok)return s;throw new x9(s)}function aet(i,e){const n=async(r,s,o)=>{if(i==null||r===i.length)return e(s,o);const a=i[r];return await a(s,o,(l,c)=>n(r+1,l,c))};return(r,s)=>n(0,r,s)}async function cet(i){const{url:e,init:n}=ret(i);return await i.fetch(e,n)}function uet(i){const e=async(n,r)=>{try{return await i(n,r)}catch(s){throw s instanceof x9?new e.Error(s):s}};return e.Error=class extends x9{constructor(n){super(n),Object.setPrototypeOf(this,new.target.prototype)}getActualType(){return{status:this.status,data:this.data}}},e}function det(){let i="",e={};const n=[],r=aet(n,oet);return{configure:s=>{i=s.baseUrl||"",e=s.init||{},n.splice(0),n.push(...s.use||[])},use:s=>n.push(s),path:s=>({method:o=>({create:a=>uet((l,c)=>cet({baseUrl:i||"",path:s,method:o,queryParams:Object.keys(a||{}),payload:l,init:iet(e,c),fetch:r}))})})}}const het={for:()=>det()},fet=200;class ZM extends Error{constructor(e){super(e),this.name=this.constructor.name,Object.setPrototypeOf(this,new.target.prototype)}}class mse extends ZM{static forResponse(e){const n=`${e.status}`,r=e.statusText?`(${e.statusText})`:"(Unrecognized Status Code)",s=`${n} ${r}`.trim(),o=e.data?JSON.stringify(e.data,null,2):null;let a="";o&&(a=o.length<=fet?o:o.slice(0,-4)+" ...");const l=`Raw response content: ${a}`;return new mse(`Unexpected Response: ${s} ${l}`)}}class E3 extends ZM{}class pet extends ZM{}class get extends ZM{constructor(e,n){super(e);const r=Number(n);if(isNaN(r))throw new ZM(`Invalid retryAfter value: ${n}`);this.retry_after=r,Object.setPrototypeOf(this,new.target.prototype)}}function met(i){return{createShardKey:i.path("/collections/{collection_name}/shards").method("put").create({timeout:!0}),deleteShardKey:i.path("/collections/{collection_name}/shards/delete").method("post").create({timeout:!0}),root:i.path("/").method("get").create(),telemetry:i.path("/telemetry").method("get").create(),metrics:i.path("/metrics").method("get").create(),getLocks:i.path("/locks").method("get").create(),postLocks:i.path("/locks").method("post").create(),healthz:i.path("/healthz").method("get").create(),livez:i.path("/livez").method("get").create(),readyz:i.path("/readyz").method("get").create(),getIssues:i.path("/issues").method("get").create(),clearIssues:i.path("/issues").method("delete").create(),clusterStatus:i.path("/cluster").method("get").create(),recoverCurrentPeer:i.path("/cluster/recover").method("post").create(),removePeer:i.path("/cluster/peer/{peer_id}").method("delete").create({force:!0}),getCollections:i.path("/collections").method("get").create(),getCollection:i.path("/collections/{collection_name}").method("get").create(),createCollection:i.path("/collections/{collection_name}").method("put").create({timeout:!0}),deleteCollection:i.path("/collections/{collection_name}").method("delete").create({timeout:!0}),updateCollection:i.path("/collections/{collection_name}").method("patch").create({timeout:!0}),updateAliases:i.path("/collections/aliases").method("post").create({timeout:!0}),createFieldIndex:i.path("/collections/{collection_name}/index").method("put").create({wait:!0,ordering:!0}),collectionExists:i.path("/collections/{collection_name}/exists").method("get").create(),deleteFieldIndex:i.path("/collections/{collection_name}/index/{field_name}").method("delete").create({wait:!0,ordering:!0}),collectionClusterInfo:i.path("/collections/{collection_name}/cluster").method("get").create(),updateCollectionCluster:i.path("/collections/{collection_name}/cluster").method("post").create({timeout:!0}),getCollectionAliases:i.path("/collections/{collection_name}/aliases").method("get").create(),getCollectionsAliases:i.path("/aliases").method("get").create(),recoverFromUploadedSnapshot:i.path("/collections/{collection_name}/snapshots/upload").method("post").create({wait:!0,priority:!0,checksum:!0}),recoverFromSnapshot:i.path("/collections/{collection_name}/snapshots/recover").method("put").create({wait:!0}),listSnapshots:i.path("/collections/{collection_name}/snapshots").method("get").create(),createSnapshot:i.path("/collections/{collection_name}/snapshots").method("post").create({wait:!0}),getSnapshot:i.path("/collections/{collection_name}/snapshots/{snapshot_name}").method("get").create(),deleteSnapshot:i.path("/collections/{collection_name}/snapshots/{snapshot_name}").method("delete").create({wait:!0}),listFullSnapshots:i.path("/snapshots").method("get").create(),createFullSnapshot:i.path("/snapshots").method("post").create({wait:!0}),getFullSnapshot:i.path("/snapshots/{snapshot_name}").method("get").create(),deleteFullSnapshot:i.path("/snapshots/{snapshot_name}").method("delete").create({wait:!0}),recoverShardFromUploadedSnapshot:i.path("/collections/{collection_name}/shards/{shard_id}/snapshots/upload").method("post").create({wait:!0,priority:!0,checksum:!0}),recoverShardFromSnapshot:i.path("/collections/{collection_name}/shards/{shard_id}/snapshots/recover").method("put").create({wait:!0}),listShardSnapshots:i.path("/collections/{collection_name}/shards/{shard_id}/snapshots").method("get").create(),createShardSnapshot:i.path("/collections/{collection_name}/shards/{shard_id}/snapshots").method("post").create({wait:!0}),getShardSnapshot:i.path("/collections/{collection_name}/shards/{shard_id}/snapshots/{snapshot_name}").method("get").create(),deleteShardSnapshot:i.path("/collections/{collection_name}/shards/{shard_id}/snapshots/{snapshot_name}").method("delete").create({wait:!0}),getPoint:i.path("/collections/{collection_name}/points/{id}").method("get").create(),upsertPoints:i.path("/collections/{collection_name}/points").method("put").create({wait:!0,ordering:!0}),getPoints:i.path("/collections/{collection_name}/points").method("post").create({consistency:!0,timeout:!0}),deletePoints:i.path("/collections/{collection_name}/points/delete").method("post").create({wait:!0,ordering:!0}),updateVectors:i.path("/collections/{collection_name}/points/vectors").method("put").create({wait:!0,ordering:!0}),deleteVectors:i.path("/collections/{collection_name}/points/vectors/delete").method("post").create({wait:!0,ordering:!0}),overwritePayload:i.path("/collections/{collection_name}/points/payload").method("put").create({wait:!0,ordering:!0}),setPayload:i.path("/collections/{collection_name}/points/payload").method("post").create({wait:!0,ordering:!0}),deletePayload:i.path("/collections/{collection_name}/points/payload/delete").method("post").create({wait:!0,ordering:!0}),clearPayload:i.path("/collections/{collection_name}/points/payload/clear").method("post").create({wait:!0,ordering:!0}),batchUpdate:i.path("/collections/{collection_name}/points/batch").method("post").create({wait:!0,ordering:!0}),scrollPoints:i.path("/collections/{collection_name}/points/scroll").method("post").create({consistency:!0,timeout:!0}),searchPoints:i.path("/collections/{collection_name}/points/search").method("post").create({consistency:!0,timeout:!0}),searchBatchPoints:i.path("/collections/{collection_name}/points/search/batch").method("post").create({consistency:!0,timeout:!0}),searchPointGroups:i.path("/collections/{collection_name}/points/search/groups").method("post").create({consistency:!0,timeout:!0}),recommendPoints:i.path("/collections/{collection_name}/points/recommend").method("post").create({consistency:!0,timeout:!0}),recommendBatchPoints:i.path("/collections/{collection_name}/points/recommend/batch").method("post").create({consistency:!0,timeout:!0}),recommendPointGroups:i.path("/collections/{collection_name}/points/recommend/groups").method("post").create({consistency:!0,timeout:!0}),discoverPoints:i.path("/collections/{collection_name}/points/discover").method("post").create({consistency:!0,timeout:!0}),discoverBatchPoints:i.path("/collections/{collection_name}/points/discover/batch").method("post").create({consistency:!0,timeout:!0}),countPoints:i.path("/collections/{collection_name}/points/count").method("post").create({timeout:!0}),facet:i.path("/collections/{collection_name}/facet").method("post").create({timeout:!0,consistency:!0}),queryPoints:i.path("/collections/{collection_name}/points/query").method("post").create({consistency:!0,timeout:!0}),queryBatchPoints:i.path("/collections/{collection_name}/points/query/batch").method("post").create({consistency:!0,timeout:!0}),queryPointsGroups:i.path("/collections/{collection_name}/points/query/groups").method("post").create({consistency:!0,timeout:!0}),searchMatrixPairs:i.path("/collections/{collection_name}/points/search/matrix/pairs").method("post").create({consistency:!0,timeout:!0}),searchMatrixOffsets:i.path("/collections/{collection_name}/points/search/matrix/offsets").method("post").create({consistency:!0,timeout:!0})}}function _et(i,e){const n=vet(i,e);return met(n)}function vet(i,{headers:e,timeout:n,connections:r}){const s=[];Number.isFinite(n)&&s.push(async(a,l,c)=>{const u=new AbortController,d=setTimeout(()=>u.abort(),n);try{return await c(a,Object.assign(l,{signal:u.signal}))}catch(h){throw h instanceof Error&&h.name==="AbortError"?new pet(h.message):h}finally{clearTimeout(d)}}),s.push(async(a,l,c)=>{var d;let u;try{if(u=await c(a,l),u.status===200||u.status===201)return u}catch(h){if(h instanceof x9&&h.status===429){const f=(d=h.headers.get("retry-after"))==null?void 0:d[0];if(f)throw new get(h.message,f)}throw h}throw mse.forResponse(u)});const o=het.for();return o.configure({baseUrl:i,init:{headers:e,dispatcher:void 0},use:s}),o}const DU="1.15.1",XZ={parseVersion(i){if(!i)throw new Error("Version is null");let e,n;if([e,n]=i.split(".",2),e=parseInt(e,10),n=parseInt(n,10),isNaN(e)||isNaN(n))throw new Error(`Unable to parse version, expected format: x.y[.z], found: ${i}`);return{major:e,minor:n}},isCompatible(i,e){if(!i||!e)return console.debug(`Unable to compare versions with null values. Client: ${i}, Server: ${e}`),!1;if(i===e)return!0;try{const n=XZ.parseVersion(i),r=XZ.parseVersion(e);return n.major===r.major&&Math.abs(n.minor-r.minor)<=1}catch(n){return console.debug(`Unable to compare versions: ${n}`),!1}}};class bet{constructor({url:e,host:n,apiKey:r,https:s,prefix:o,port:a=6333,timeout:l=3e5,checkCompatibility:c=!0,...u}={}){if(this._https=s??typeof r=="string",this._scheme=this._https?"https":"http",this._prefix=o??"",this._prefix.length>0&&!this._prefix.startsWith("/")&&(this._prefix=`/${this._prefix}`),e&&n)throw new E3(`Only one of \`url\`, \`host\` params can be set. Url is ${e}, host is ${n}`);if(n&&(n.startsWith("http://")||n.startsWith("https://")||/:\d+$/.test(n)))throw new E3("The `host` param is not expected to contain neither protocol (http:// or https://) nor port (:6333).\nTry to use the `url` parameter instead.");if(e){if(!(e.startsWith("http://")||e.startsWith("https://")))throw new E3("The `url` param expected to contain a valid URL starting with a protocol (http:// or https://).");const m=new URL(e);if(this._host=m.hostname,this._port=m.port?Number(m.port):a,this._scheme=m.protocol.replace(":",""),this._prefix.length>0&&m.pathname!=="/")throw new E3(`Prefix can be set either in \`url\` or in \`prefix\`. url is ${e}, prefix is ${m.pathname}`)}else this._port=a,this._host=n??"127.0.0.1";const d=new Headers([["user-agent","qdrant-js/"+String(DU)]]),h=u.headers??{};Object.keys(h).forEach(m=>{h[m]&&d.set(m,String(h[m]))}),typeof r=="string"&&(this._scheme==="http"&&console.warn("Api key is used with unsecure connection."),d.set("api-key",r));const f=this._port?`${this._host}:${this._port}`:this._host;this._restUri=`${this._scheme}://${f}${this._prefix}`;const p=u.maxConnections,g={headers:d,timeout:l,connections:p};this._openApiClient=_et(this._restUri,g),c&&this._openApiClient.root({}).then(m=>{const _=m.data.version;XZ.isCompatible(DU,_)||console.warn(`Client version ${DU} is incompatible with server version ${_}. Major versions should match and minor version difference must not exceed 1. Set checkCompatibility=false to skip version check.`)}).catch(()=>{console.warn("Failed to obtain server version. Unable to check client-server compatibility. Set checkCompatibility=false to skip version check.")})}api(){return this._openApiClient}async searchBatch(e,{searches:n,consistency:r,timeout:s}){const o=await this._openApiClient.searchBatchPoints({collection_name:e,consistency:r,timeout:s,searches:n});return An(o.data.result).orThrow("Search batch returned empty")}async search(e,{shard_key:n,vector:r,limit:s=10,offset:o=0,filter:a,params:l,with_payload:c=!0,with_vector:u=!1,score_threshold:d,consistency:h,timeout:f}){const p=await this._openApiClient.searchPoints({collection_name:e,consistency:h,timeout:f,shard_key:n,vector:r,limit:s,offset:o,filter:a,params:l,with_payload:c,with_vector:u,score_threshold:d});return An(p.data.result).orThrow("Search returned empty")}async recommendBatch(e,{searches:n,consistency:r,timeout:s}){const o=await this._openApiClient.recommendBatchPoints({collection_name:e,searches:n,consistency:r,timeout:s});return An(o.data.result).orElse([])}async recommend_batch(e,{searches:n,consistency:r,timeout:s}){const o=await this._openApiClient.recommendBatchPoints({collection_name:e,searches:n,consistency:r,timeout:s});return An(o.data.result).orElse([])}async recommend(e,{shard_key:n,positive:r,negative:s,strategy:o,filter:a,params:l,limit:c=10,offset:u=0,with_payload:d=!0,with_vector:h=!1,score_threshold:f,using:p,lookup_from:g,consistency:m,timeout:_}){const b=await this._openApiClient.recommendPoints({collection_name:e,limit:c,shard_key:n,positive:r,negative:s,strategy:o,filter:a,params:l,offset:u,with_payload:d,with_vector:h,score_threshold:f,using:p,lookup_from:g,consistency:m,timeout:_});return An(b.data.result).orThrow("Recommend points API returned empty")}async scroll(e,{shard_key:n,filter:r,consistency:s,timeout:o,limit:a=10,offset:l,with_payload:c=!0,with_vector:u=!1,order_by:d}={}){const h=await this._openApiClient.scrollPoints({collection_name:e,shard_key:n,limit:a,offset:l,filter:r,with_payload:c,with_vector:u,order_by:d,consistency:s,timeout:o});return An(h.data.result).orThrow("Scroll points API returned empty")}async count(e,{shard_key:n,filter:r,exact:s=!0,timeout:o}={}){const a=await this._openApiClient.countPoints({collection_name:e,shard_key:n,filter:r,exact:s,timeout:o});return An(a.data.result).orThrow("Count points returned empty")}async collectionClusterInfo(e){const n=await this._openApiClient.collectionClusterInfo({collection_name:e});return An(n.data.result).orThrow("Collection cluster info returned empty")}async updateCollectionCluster(e,{timeout:n,...r}){const s=await this._openApiClient.updateCollectionCluster({collection_name:e,timeout:n,...r});return An(s.data.result).orThrow("Update collection cluster returned empty")}async updateVectors(e,{wait:n=!0,ordering:r,points:s,shard_key:o}){const a=await this._openApiClient.updateVectors({collection_name:e,wait:n,ordering:r,points:s,shard_key:o});return An(a.data.result).orThrow("Update vectors returned empty")}async deleteVectors(e,{wait:n=!0,ordering:r,points:s,filter:o,vector:a,shard_key:l}){const c=await this._openApiClient.deleteVectors({collection_name:e,wait:n,ordering:r,points:s,filter:o,vector:a,shard_key:l});return An(c.data.result).orThrow("Delete vectors returned empty")}async searchPointGroups(e,{consistency:n,timeout:r,shard_key:s,vector:o,filter:a,params:l,with_payload:c=null,with_vector:u=null,score_threshold:d,group_by:h,group_size:f,limit:p}){const g=await this._openApiClient.searchPointGroups({collection_name:e,consistency:n,timeout:r,shard_key:s,vector:o,filter:a,params:l,with_payload:c,with_vector:u,score_threshold:d,group_by:h,group_size:f,limit:p});return An(g.data.result).orThrow("Search point groups returned empty")}async recommendPointGroups(e,{consistency:n,timeout:r,shard_key:s,positive:o,strategy:a,negative:l=[],filter:c,params:u,with_payload:d=null,with_vector:h=null,score_threshold:f,using:p=null,lookup_from:g=null,group_by:m,group_size:_,limit:b}){const y=await this._openApiClient.recommendPointGroups({collection_name:e,consistency:n,timeout:r,shard_key:s,positive:o,negative:l,strategy:a,filter:c,params:u,with_payload:d,with_vector:h,score_threshold:f,using:p,lookup_from:g,group_by:m,group_size:_,limit:b});return An(y.data.result).orThrow("Recommend point groups API returned empty")}async upsert(e,{wait:n=!0,ordering:r,...s}){const o=await this._openApiClient.upsertPoints({collection_name:e,wait:n,ordering:r,...s});return An(o.data.result).orThrow("Upsert returned empty")}async retrieve(e,{shard_key:n,ids:r,with_payload:s=!0,with_vector:o,consistency:a,timeout:l}){const c=await this._openApiClient.getPoints({collection_name:e,shard_key:n,ids:r,with_payload:s,with_vector:o,consistency:a,timeout:l});return An(c.data.result).orThrow("Retrieve API returned empty")}async delete(e,{wait:n,ordering:r,...s}){const o=await this._openApiClient.deletePoints({collection_name:e,wait:n,ordering:r,...s});return An(o.data.result).orThrow("Delete points returned empty")}async setPayload(e,{payload:n,points:r,filter:s,shard_key:o,key:a,ordering:l,wait:c=!0}){const u=await this._openApiClient.setPayload({collection_name:e,payload:n,points:r,filter:s,shard_key:o,key:a,wait:c,ordering:l});return An(u.data.result).orThrow("Set payload returned empty")}async overwritePayload(e,{ordering:n,payload:r,points:s,filter:o,shard_key:a,key:l,wait:c=!0}){const u=await this._openApiClient.overwritePayload({collection_name:e,payload:r,points:s,filter:o,shard_key:a,key:l,wait:c,ordering:n});return An(u.data.result).orThrow("Overwrite payload returned empty")}async deletePayload(e,{ordering:n,keys:r,points:s,filter:o,shard_key:a,wait:l=!0}){const c=await this._openApiClient.deletePayload({collection_name:e,keys:r,points:s,filter:o,shard_key:a,wait:l,ordering:n});return An(c.data.result).orThrow("Delete payload returned empty")}async clearPayload(e,{ordering:n,wait:r=!0,...s}){const o=await this._openApiClient.clearPayload({collection_name:e,wait:r,ordering:n,...s});return An(o.data.result).orThrow("Clear payload returned empty")}async updateCollectionAliases({actions:e,timeout:n}){const r=await this._openApiClient.updateAliases({actions:e,timeout:n});return An(r.data.result).orThrow("Update aliases returned empty")}async getCollectionAliases(e){const n=await this._openApiClient.getCollectionAliases({collection_name:e});return An(n.data.result).orThrow("Get collection aliases returned empty")}async getAliases(){const e=await this._openApiClient.getCollectionsAliases({});return An(e.data.result).orThrow("Get aliases returned empty")}async getCollections(){const e=await this._openApiClient.getCollections({});return An(e.data.result).orThrow("Get collections returned empty")}async getCollection(e){const n=await this._openApiClient.getCollection({collection_name:e});return An(n.data.result).orThrow("Get collection returned empty")}async updateCollection(e,n){const r=await this._openApiClient.updateCollection({collection_name:e,...n});return An(r.data.result).orThrow("Update collection returned empty")}async deleteCollection(e,n){const r=await this._openApiClient.deleteCollection({collection_name:e,...n});return An(r.data.result).orThrow("Delete collection returned empty")}async createCollection(e,{timeout:n,vectors:r,hnsw_config:s,init_from:o,on_disk_payload:a,optimizers_config:l,quantization_config:c,replication_factor:u,shard_number:d,sharding_method:h,wal_config:f,write_consistency_factor:p,sparse_vectors:g,strict_mode_config:m}){const _=await this._openApiClient.createCollection({collection_name:e,timeout:n,vectors:r,hnsw_config:s,init_from:o,on_disk_payload:a,optimizers_config:l,quantization_config:c,replication_factor:u,shard_number:d,sharding_method:h,wal_config:f,write_consistency_factor:p,sparse_vectors:g,strict_mode_config:m});return An(_.data.result).orThrow("Create collection returned empty")}async recreateCollection(e,{timeout:n,vectors:r,hnsw_config:s,init_from:o,on_disk_payload:a,optimizers_config:l,quantization_config:c,replication_factor:u,shard_number:d,sharding_method:h,wal_config:f,write_consistency_factor:p,sparse_vectors:g,strict_mode_config:m}){An(await this._openApiClient.deleteCollection({collection_name:e,timeout:n})).get("ok").orThrow("Delete collection returned failed");const _=await this._openApiClient.createCollection({collection_name:e,timeout:n,vectors:r,hnsw_config:s,init_from:o,on_disk_payload:a,optimizers_config:l,quantization_config:c,replication_factor:u,shard_number:d,sharding_method:h,wal_config:f,write_consistency_factor:p,sparse_vectors:g,strict_mode_config:m});return An(_).orThrow("Create collection returned empty")}async createPayloadIndex(e,{wait:n,ordering:r,field_name:s,field_schema:o}){const a=await this._openApiClient.createFieldIndex({collection_name:e,field_name:s,field_schema:o,wait:n,ordering:r});return An(a.data.result).orThrow("Create field index returned empty")}async deletePayloadIndex(e,n,{wait:r=!0,ordering:s}={}){const o=await this._openApiClient.deleteFieldIndex({collection_name:e,field_name:n,wait:r,ordering:s});return An(o.data.result).orThrow("Delete field index returned empty")}async listSnapshots(e){const n=await this._openApiClient.listSnapshots({collection_name:e});return An(n.data.result).orThrow("List snapshots API returned empty")}async createSnapshot(e,n){const r=await this._openApiClient.createSnapshot({collection_name:e,...n});return An(r.data.result).orNull()}async deleteSnapshot(e,n,r){const s=await this._openApiClient.deleteSnapshot({collection_name:e,snapshot_name:n,...r});return An(s.data.result).orThrow("Delete snapshot API returned empty")}async listFullSnapshots(){const e=await this._openApiClient.listFullSnapshots({});return An(e.data.result).orThrow("List full snapshots API returned empty")}async createFullSnapshot(e){const n=await this._openApiClient.createFullSnapshot(e??{});return An(n.data.result).orThrow("Create full snapshot API returned empty")}async deleteFullSnapshot(e,n){const r=await this._openApiClient.deleteFullSnapshot({snapshot_name:e,...n});return An(r.data.result).orThrow("Delete full snapshot API returned empty")}async recoverSnapshot(e,{location:n,priority:r,checksum:s,api_key:o}){const a=await this._openApiClient.recoverFromSnapshot({collection_name:e,location:n,priority:r,checksum:s,api_key:o});return An(a.data.result).orThrow("Recover from snapshot API returned empty")}async lockStorage(e){const n=await this._openApiClient.postLocks({write:!0,error_message:e});return An(n.data.result).orThrow("Lock storage returned empty")}async unlockStorage(){const e=await this._openApiClient.postLocks({write:!1});return An(e.data.result).orThrow("Post locks returned empty")}async getLocks(){const e=await this._openApiClient.getLocks({});return An(e.data.result).orThrow("Get locks returned empty")}async batchUpdate(e,{wait:n=!0,ordering:r,...s}){const o=await this._openApiClient.batchUpdate({collection_name:e,wait:n,ordering:r,...s});return An(o.data.result).orThrow("Batch update returned empty")}async recoverShardFromSnapshot(e,n,{wait:r=!0,...s}){const o=await this._openApiClient.recoverShardFromSnapshot({collection_name:e,shard_id:n,wait:r,...s});return An(o.data.result).orThrow("Recover shard from snapshot returned empty")}async listShardSnapshots(e,n){const r=await this._openApiClient.listShardSnapshots({collection_name:e,shard_id:n});return An(r.data.result).orThrow("List shard snapshots returned empty")}async createShardSnapshot(e,n,{wait:r=!0}){const s=await this._openApiClient.createShardSnapshot({collection_name:e,shard_id:n,wait:r});return An(s.data.result).orThrow("Create shard snapshot returned empty")}async deleteShardSnapshot(e,n,r,{wait:s=!0}){const o=await this._openApiClient.deleteShardSnapshot({collection_name:e,shard_id:n,snapshot_name:r,wait:s});return An(o.data.result).orThrow("Create shard snapshot returned empty")}async createShardKey(e,{shard_key:n,shards_number:r,replication_factor:s,placement:o,timeout:a}){const l=await this._openApiClient.createShardKey({collection_name:e,shard_key:n,shards_number:r,replication_factor:s,placement:o,timeout:a});return An(l.data.result).orThrow("Create shard key returned empty")}async deleteShardKey(e,{shard_key:n,timeout:r}){const s=await this._openApiClient.deleteShardKey({collection_name:e,shard_key:n,timeout:r});return An(s.data.result).orThrow("Create shard key returned empty")}async discoverPoints(e,{consistency:n,timeout:r,shard_key:s,target:o,context:a,params:l,limit:c,offset:u,with_payload:d,with_vector:h,using:f,lookup_from:p}){const g=await this._openApiClient.discoverPoints({collection_name:e,consistency:n,timeout:r,shard_key:s,target:o,context:a,params:l,limit:c,offset:u,with_payload:d,with_vector:h,using:f,lookup_from:p});return An(g.data.result).orThrow("Discover points returned empty")}async discoverBatchPoints(e,{consistency:n,timeout:r,searches:s}){const o=await this._openApiClient.discoverBatchPoints({collection_name:e,consistency:n,timeout:r,searches:s});return An(o.data.result).orThrow("Discover batch points returned empty")}async versionInfo(){const e=await this._openApiClient.root({});return An(e.data).orThrow("Version Info returned empty")}async collectionExists(e){const n=await this._openApiClient.collectionExists({collection_name:e});return An(n.data.result).orThrow("Collection exists returned empty")}async query(e,{consistency:n,timeout:r,shard_key:s,prefetch:o,query:a,using:l,filter:c,params:u,score_threshold:d,limit:h,offset:f,with_vector:p,with_payload:g,lookup_from:m}){const _=await this._openApiClient.queryPoints({collection_name:e,consistency:n,timeout:r,shard_key:s,prefetch:o,query:a,using:l,filter:c,params:u,score_threshold:d,limit:h,offset:f,with_vector:p,with_payload:g,lookup_from:m});return An(_.data.result).orThrow("Query points returned empty")}async queryBatch(e,{consistency:n,timeout:r,searches:s}){const o=await this._openApiClient.queryBatchPoints({collection_name:e,consistency:n,timeout:r,searches:s});return An(o.data.result).orThrow("Query points returned empty")}async queryGroups(e,{consistency:n,timeout:r,shard_key:s,prefetch:o,query:a,using:l,filter:c,params:u,score_threshold:d,with_vector:h,with_payload:f,group_by:p,group_size:g,limit:m,with_lookup:_}){const b=await this._openApiClient.queryPointsGroups({collection_name:e,consistency:n,timeout:r,shard_key:s,prefetch:o,query:a,using:l,filter:c,params:u,score_threshold:d,with_vector:h,with_payload:f,group_by:p,group_size:g,limit:m,with_lookup:_});return An(b.data.result).orThrow("Query groups returned empty")}async facet(e,{consistency:n,timeout:r,shard_key:s,key:o,limit:a,filter:l,exact:c}){const u=await this._openApiClient.facet({collection_name:e,consistency:n,timeout:r,shard_key:s,key:o,limit:a,filter:l,exact:c});return An(u.data.result).orThrow("Facet returned empty")}async searchMatrixPairs(e,{consistency:n,timeout:r,shard_key:s,filter:o,sample:a,limit:l,using:c}){const u=await this._openApiClient.searchMatrixPairs({collection_name:e,consistency:n,timeout:r,shard_key:s,filter:o,sample:a,limit:l,using:c});return An(u.data.result).orThrow("Search points matrix pairs returned empty")}async searchMatrixOffsets(e,{consistency:n,timeout:r,shard_key:s,filter:o,sample:a,limit:l,using:c}){const u=await this._openApiClient.searchMatrixOffsets({collection_name:e,consistency:n,timeout:r,shard_key:s,filter:o,sample:a,limit:l,using:c});return An(u.data.result).orThrow("Search points matrix offsets returned empty")}}var ES;class yet extends bet{constructor({url:n,apiKey:r,port:s}){super({url:n,apiKey:r,port:s,checkCompatibility:!1,headers:{"x-inference-proxy":"true"}});Nue(this,ES);this.downloadSnapshot=this.downloadSnapshot.bind(this),this.getSnapshotUploadUrl=this.getSnapshotUploadUrl.bind(this),this.getApiKey=this.getApiKey.bind(this),this.abortDownload=this.abortDownload.bind(this),this.url=n,this.apiKey=r,this.port=s,XH(this,ES,new AbortController)}async downloadSnapshot(n,r,s=!1){const o={"Content-Disposition":`attachment; filename="${r}"`,"Content-Type":"application/gzip"};this.apiKey&&(o["api-key"]=this.apiKey);const a=new URL(`/collections/${n}/snapshots/${r}`,this.url).href,l=new Request(a,{method:"GET",headers:o}),c=await fetch(l,{signal:GH(this,ES).signal});return s?await c.blob():c}abortDownload(){GH(this,ES).abort(),XH(this,ES,new AbortController)}getSnapshotUploadUrl(n){return new URL(`collections/${n}/snapshots/upload`,this.url)}getApiKey(){return this.apiKey}}ES=new WeakMap;function wet({apiKey:i}){let e,n=6333;e=pse(),window.location.port?n=window.location.port:window.location.protocol==="https:"?n=443:n=80;const r={url:e,apiKey:i,port:n};return new yet(r)}const Cet=["/datasets","/jwt","/tutorial"],xet=i=>Cet.some(e=>{if(e.includes("*")){const n=e.replace("*",".*");return new RegExp(`^${n}$`).test(i)}return i===e}),ket=i=>{if(!i)return!1;try{const e=JSON.parse(atob(i.split(".")[1]));return!e.access||!Array.isArray(e.access)?!1:e.access.some(({access:n})=>n==="prw")}catch{return!1}},Let={apiKey:""},Det=i=>{localStorage.setItem("settings",ls.stringify(i))},Eet=()=>{const i=localStorage.getItem("settings");return i?ls.parse(i):Let},bDe=$.createContext(),Ur=()=>{const i=$.useContext(bDe);if(!i)throw new Error("useClient must be used within ClientProvider");return{...i,isRestricted:ket(i.settings.apiKey)}},Iet=i=>{const[e,n]=$.useState(Eet()),r=wet(e);return afe(kE,e),$.useEffect(()=>{afe(kE,e),Det(e)},[e]),C.jsx(bDe.Provider,{value:{client:r,settings:e,setSettings:n},...i})};function yDe({open:i,setOpen:e,onApply:n}){const{settings:r,setSettings:s}=Ur(),[o,a]=nn.useState(!1),[l,c]=nn.useState(!1),u=()=>a(m=>!m),d=m=>{m.preventDefault()},[h,f]=nn.useState(""),p=()=>{c(!1),e(!1)},g=()=>{if(!h){c(!0);return}s({...r,apiKey:h}),e(!1),n()};return C.jsx("div",{children:C.jsxs(Vm,{open:i,onClose:p,slotProps:{transition:{onEntered:()=>{const m=document.getElementById("api-key-input");m&&m.focus()}}},children:[C.jsx(tx,{children:"Set API Key"}),C.jsxs(a1,{children:[C.jsx(pqe,{sx:{mb:2},children:"This instance of Qdrant might be protected by an API Key. If so, please enter your API Key to continue."}),C.jsx(Ep,{onChange:m=>f(m.target.value),onKeyDown:m=>{m.key==="Enter"&&(m.preventDefault(),g())},autoFocus:!0,id:"api-key-input",placeholder:"API Key",error:l,helperText:l?"API Key is required":"",type:o?"text":"password",fullWidth:!0,variant:"outlined",slotProps:{input:{endAdornment:C.jsx(TW,{position:"end",children:C.jsx(Ga,{"aria-label":"toggle password visibility",onClick:u,onMouseDown:d,children:o?C.jsx(VLe,{}):C.jsx(zLe,{})})})}}})]}),C.jsxs(CE,{sx:{p:3},children:[C.jsx(Ci,{variant:"outlined",color:"inherit",onClick:p,children:"Cancel"}),C.jsx(Ci,{variant:"contained",onClick:g,children:"Apply"})]})]})})}yDe.propTypes={open:Z.bool.isRequired,setOpen:Z.func.isRequired,onApply:Z.func.isRequired};/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Tet=i=>i.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Ret=i=>i.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,n,r)=>r?r.toUpperCase():n.toLowerCase()),lfe=i=>{const e=Ret(i);return e.charAt(0).toUpperCase()+e.slice(1)},wDe=(...i)=>i.filter((e,n,r)=>!!e&&e.trim()!==""&&r.indexOf(e)===n).join(" ").trim(),Aet=i=>{for(const e in i)if(e.startsWith("aria-")||e==="role"||e==="title")return!0};/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */var Net={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Met=$.forwardRef(({color:i="currentColor",size:e=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:s="",children:o,iconNode:a,...l},c)=>$.createElement("svg",{ref:c,...Net,width:e,height:e,stroke:i,strokeWidth:r?Number(n)*24/Number(e):n,className:wDe("lucide",s),...!o&&!Aet(l)&&{"aria-hidden":"true"},...l},[...a.map(([u,d])=>$.createElement(u,d)),...Array.isArray(o)?o:[o]]));/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const qi=(i,e)=>{const n=$.forwardRef(({className:r,...s},o)=>$.createElement(Met,{ref:o,iconNode:e,className:wDe(`lucide-${Tet(lfe(i))}`,`lucide-${i}`,r),...s}));return n.displayName=lfe(i),n};/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Pet=[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h2",key:"tvwodi"}],["path",{d:"M20 8v11a2 2 0 0 1-2 2h-2",key:"1gkqxj"}],["path",{d:"m9 15 3-3 3 3",key:"1pd0qc"}],["path",{d:"M12 12v9",key:"192myk"}]],CDe=qi("archive-restore",Pet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Oet=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],Fet=qi("arrow-left",Oet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Bet=[["path",{d:"M10 2v8l3-3 3 3V2",key:"sqw3rj"}],["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]],jet=qi("book-marked",Bet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Wet=[["path",{d:"M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",key:"18u6gg"}],["circle",{cx:"12",cy:"13",r:"3",key:"1vg3eu"}]],$et=qi("camera",Wet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const zet=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Vet=qi("chevron-down",zet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Het=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Uet=qi("chevron-right",Het);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const qet=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Ket=qi("circle-question-mark",qet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Get=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],Xet=qi("circle-x",Get);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Yet=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],SDe=qi("copy",Yet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Zet=[["path",{d:"M20 20v-7a4 4 0 0 0-4-4H4",key:"1nkjon"}],["path",{d:"M9 14 4 9l5-5",key:"102s5s"}]],Qet=qi("corner-up-left",Zet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Jet=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],ett=qi("download",Jet);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ttt=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],ntt=qi("ellipsis",ttt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const itt=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],rtt=qi("external-link",itt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const stt=[["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z",key:"1mlx9k"}]],_se=qi("file-code",stt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ott=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],att=qi("funnel",ott);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ltt=[["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"19",cy:"5",r:"1",key:"w8mnmm"}],["circle",{cx:"5",cy:"5",r:"1",key:"lttvr7"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}],["circle",{cx:"19",cy:"19",r:"1",key:"shf9b7"}],["circle",{cx:"5",cy:"19",r:"1",key:"bfqh0e"}]],ctt=qi("grip",ltt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const utt=[["path",{d:"m16 6-4-4-4 4",key:"13yo43"}],["path",{d:"M12 2v8",key:"1q4o3n"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",key:"w68u3i"}],["path",{d:"M6 18h.01",key:"uhywen"}],["path",{d:"M10 18h.01",key:"h775k"}]],dtt=qi("hard-drive-upload",utt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const htt=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],ftt=qi("key-round",htt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ptt=[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]],gtt=qi("key",ptt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const mtt=[["path",{d:"M5 12h14",key:"1ays0h"}]],_tt=qi("minus",mtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const vtt=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]],btt=qi("moon",vtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const ytt=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],wtt=qi("network",ytt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ctt=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],Stt=qi("pencil",Ctt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const xtt=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],ktt=qi("plus",xtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ltt=[["rect",{width:"20",height:"12",x:"2",y:"6",rx:"2",key:"9lu3g6"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M17 12h.01",key:"1m0b6t"}],["path",{d:"M7 12h.01",key:"eqddd0"}]],Dtt=qi("rectangle-ellipsis",Ltt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ett=[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]],xDe=qi("rocket",Ett);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Itt=[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}],["path",{d:"M7 8h8",key:"1jbsf9"}],["path",{d:"M7 12h10",key:"b7w52i"}],["path",{d:"M7 16h6",key:"1vyc9m"}]],Ttt=qi("scan-text",Itt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Rtt=[["path",{d:"m8 11 2 2 4-4",key:"1sed1v"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]],Att=qi("search-check",Rtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ntt=[["path",{d:"m13 13.5 2-2.5-2-2.5",key:"1rvxrh"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}],["path",{d:"M9 8.5 7 11l2 2.5",key:"6ffwbx"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Mtt=qi("search-code",Ntt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ptt=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Ott=qi("search",Ptt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ftt=[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]],Btt=qi("sliders-horizontal",Ftt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const jtt=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],Wtt=qi("sparkles",jtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const $tt=[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],ztt=qi("square-terminal",$tt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Vtt=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],Htt=qi("sun",Vtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Utt=[["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],vse=qi("trash",Utt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const qtt=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],Ktt=qi("upload",qtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Gtt=[["path",{d:"M19.5 7a24 24 0 0 1 0 10",key:"8n60xe"}],["path",{d:"M4.5 7a24 24 0 0 0 0 10",key:"2lmadr"}],["path",{d:"M7 19.5a24 24 0 0 0 10 0",key:"1q94o2"}],["path",{d:"M7 4.5a24 24 0 0 1 10 0",key:"2z8ypa"}],["rect",{x:"17",y:"17",width:"5",height:"5",rx:"1",key:"1ac74s"}],["rect",{x:"17",y:"2",width:"5",height:"5",rx:"1",key:"1e7h5j"}],["rect",{x:"2",y:"17",width:"5",height:"5",rx:"1",key:"1t4eah"}],["rect",{x:"2",y:"2",width:"5",height:"5",rx:"1",key:"940dhs"}]],Xtt=qi("vector-square",Gtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Ytt=[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]],Ztt=qi("workflow",Ytt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Qtt=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],kDe=qi("x",Qtt);/** * @license lucide-react v0.545.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Jtt=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],ent=qi("zap",Jtt),tu={100:"#bbdefb",300:"#64b5f6",500:"#2196f3",600:"#1e88e5",700:"#1976d2"},LDe={300:"#ff8a65ff",500:"#ff5722ff"},qc={50:"#fafafaff",100:"#f5f5f5ff",200:"#eeeeeeff",300:"#e0e0e0ff",400:"#bdbdbdff",600:"#757575ff",700:"#616161ff"},N2={300:"#4fc3f7ff",400:"#29b6f6ff",500:"#03a9f4ff",700:"#0288d1ff",900:"#01579bff"},EU={300:"#aed581ff"},xi={1:"#fcfdffff",100:"#e2e7f5ff",200:"#d3d9ebff",300:"#cad0e5ff",400:"#abb1c7ff",500:"#898ea3ff",600:"#656b7fff",700:"#4e5366ff",800:"#303547ff",900:"#111824ff",950:"#0b0f19ff"},RS={300:"#ffb74dff",400:"#ffa726ff",500:"#ff9800ff",700:"#f57c00ff",800:"#ef6c00ff",900:"#e65100ff"},M2={200:"#c2c5ff",300:"#9494ff",400:"#7e75ff",500:"#6047ff",600:"#5f36f5"},Yu={300:"#e57373ff",400:"#ef5350ff",500:"#f44336ff",600:"#e53935ff",700:"#d32f2fff",800:"#c62828ff"},AS={300:"#4db6acff",400:"#26a69aff",500:"#009688ff",600:"#00897bff",700:"#00796bff",900:"#004d40ff"},cfe={600:"#fdd835ff"},G_={common:{black:"#000000ff",white:"#ffffffff"},text:{primary:xi[1],secondary:xi[400],disabled:xi[700]},primary:{main:M2[300],dark:M2[500],light:M2[200],contrastText:xi[950]},secondary:{main:tu[300],dark:tu[700],light:tu[100],contrastText:xi[950]},error:{main:Yu[500],dark:Yu[700],light:Yu[300],contrastText:xi[1]},warning:{main:RS[400],dark:RS[700],light:RS[300],contrastText:xi[950]},info:{main:N2[400],dark:N2[700],light:N2[300],contrastText:xi[950]},success:{main:AS[400],dark:AS[700],light:AS[300],contrastText:xi[950]},action:{active:"#fcfdff8f",hover:"#fcfdff14",selected:"#fcfdff29",focus:"#fcfdff1f",disabled:"#fcfdff61",disabledBackground:"#fcfdff1f"},background:{default:xi[950],paper:"#111824ff",card:"#111824ff",code:"#111824",paperElevation0:xi[950],paperElevation1:"#111824ff",paperElevation2:"#141a2aff",paperElevation3:"#171d2cff",paperElevation4:"#191f2eff",paperElevation5:"#1c2130ff",paperElevation6:"#1e2433ff",paperElevation7:"#1e2433ff",paperElevation8:"#212635ff",paperElevation9:"#212635ff",paperElevation10:"#232937ff",paperElevation11:"#232937ff",paperElevation12:"#262b3aff",paperElevation13:"#262b3aff",paperElevation14:"#262b3aff",paperElevation15:"#282e3cff",paperElevation16:"#282e3cff",paperElevation17:"#282e3cff",paperElevation18:"#282e3cff",paperElevation19:"#282e3cff",paperElevation20:"#2b303eff",paperElevation21:"#2b303eff",paperElevation22:"#2b303eff",paperElevation23:"#2b303eff",paperElevation24:"#2b303eff"},elevationOutlined:"#ffffff1f",avatarFill:qc[600],inputStandardEnabledBorder:"#ffffff6b",inputStandardHoverBorder:"#ffffffff",switchKnobFillEnabled:qc[300],switchSlideFill:"#ffffff61",inputFilledEnabledFill:"#ffffff17",inputOutlinedEnabledBorder:"#ffffff3b",inputOutlinedHoverBorder:"#ffffffff",ratingEnabledBorder:"#ffffff3b",inputFilledHoverFill:"#ffffff1f",ratingActiveFill:"#ffb400ff",snackbarFill:"#1e2433ff",chipDefaultCloseFill:"#ffffffff",chipDefaultHoverFill:"#ffffff1f",chipDefaultEnabledBorder:qc[700],tooltipFill:"#616161e5",backdropFill:"#00000080",appBarDefaultFill:"#191f2eff",breadcrumbsCollapseFill:qc[600],alertErrorColor:"#f4c7c7ff",stepperConnector:qc[600],chipDefaultFocusFill:"#ffffff33",alertErrorBackground:"#291414ff",alertWarningColor:"#ffe2b7ff",alertWarningBackground:"#291d0bff",alertInfoColor:"#b8e7fbff",alertInfoBackground:"#0c2029ff",alertSuccessColor:"#cce8cdff",alertSuccessBackground:"#1a291cff",switchKnowFillDisabled:qc[600],nativeScrollbarBg:qc[700],divider:"#ffffff1f"},tnt={palette:G_,components:{MuiAlert:{styleOverrides:{root:{"&.MuiAlert-standardSuccess":{backgroundColor:G_.alertSuccessBackground,color:G_.alertSuccessColor},"&.MuiAlert-standardInfo":{backgroundColor:G_.alertInfoBackground,color:G_.alertInfoColor},"&.MuiAlert-standardWarning":{backgroundColor:G_.alertWarningBackground,color:G_.alertWarningColor},"&.MuiAlert-standardError":{backgroundColor:G_.alertErrorBackground,color:G_.alertErrorColor}}}}}},X_={common:{black:"#000000ff",white:"#ffffffff"},text:{primary:xi[900],secondary:xi[600],disabled:xi[400]},primary:{main:M2[500],dark:M2[600],light:M2[400],contrastText:xi[1]},secondary:{main:tu[500],dark:tu[700],light:tu[300],contrastText:xi[1]},error:{main:Yu[700],dark:Yu[800],light:Yu[400],contrastText:xi[1]},warning:{main:RS[800],dark:RS[900],light:RS[500],contrastText:xi[1]},info:{main:N2[700],dark:N2[900],light:N2[500],contrastText:xi[1]},success:{main:AS[600],dark:AS[900],light:AS[500],contrastText:xi[1]},action:{active:"#0b0f198f",hover:"#0b0f190a",selected:"#0b0f1914",focus:"#0b0f191f",disabled:"#0b0f1961",disabledBackground:"#0b0f191f"},background:{default:"#f7f8faff",paper:"#ffffffff",code:"#ffffff",paperElevation0:"#f7f8faff",paperElevation1:"#ffffffff",paperElevation2:"#ffffffff",paperElevation3:"#ffffffff",paperElevation4:"#ffffffff",paperElevation5:"#ffffffff",paperElevation6:"#ffffffff",paperElevation7:"#ffffffff",paperElevation8:"#ffffffff",paperElevation9:"#ffffffff",paperElevation10:"#ffffffff",paperElevation11:"#ffffffff",paperElevation12:"#ffffffff",paperElevation13:"#ffffffff",paperElevation14:"#ffffffff",paperElevation15:"#ffffffff",paperElevation16:"#ffffffff",paperElevation17:"#ffffffff",paperElevation18:"#ffffffff",paperElevation19:"#ffffffff",paperElevation20:"#ffffffff",paperElevation21:"#ffffffff",paperElevation22:"#ffffffff",paperElevation23:"#ffffffff",paperElevation24:"#ffffffff"},elevationOutlined:"#e0e0e0ff",avatarFill:qc[400],inputStandardEnabledBorder:"#0000006b",inputStandardHoverBorder:"#000000ff",switchKnobFillEnabled:qc[50],switchSlideFill:"#000000ff",inputFilledEnabledFill:"#0000000f",inputOutlinedEnabledBorder:"#0000003b",inputOutlinedHoverBorder:"#000000ff",ratingEnabledBorder:"#0000003b",inputFilledHoverFill:"#00000017",ratingActiveFill:"#ffb400ff",snackbarFill:"#323232ff",chipDefaultCloseFill:"#000000ff",chipDefaultHoverFill:"#0000001f",chipDefaultEnabledBorder:qc[400],tooltipFill:"#616161e5",backdropFill:"#00000080",appBarDefaultFill:qc[100],breadcrumbsCollapseFill:qc[100],alertErrorColor:"#5f2120ff",stepperConnector:qc[400],chipDefaultFocusFill:"#00000033",alertErrorBackground:"#fdededff",alertWarningColor:"#663c00ff",alertWarningBackground:"#fff4e5ff",alertInfoColor:"#014361ff",alertInfoBackground:"#e5f6fdff",alertSuccessColor:"#1e4641ff",alertSuccessBackground:"#edf7f5ff",switchKnowFillDisabled:qc[100],nativeScrollbarBg:qc[200],divider:"#0000001f"},nnt={palette:X_,components:{MuiButton:{styleOverrides:{outlined:({theme:i})=>({"&.MuiButton-colorTextPrimary":{border:`1px solid ${Pt(i.palette.divider,.12)}`}})}},MuiAlert:{styleOverrides:{root:{"&.MuiAlert-standardSuccess":{backgroundColor:X_.alertSuccessBackground,color:X_.alertSuccessColor},"&.MuiAlert-standardInfo":{backgroundColor:X_.alertInfoBackground,color:X_.alertInfoColor},"&.MuiAlert-standardWarning":{backgroundColor:X_.alertWarningBackground,color:X_.alertWarningColor},"&.MuiAlert-standardError":{backgroundColor:X_.alertErrorBackground,color:X_.alertErrorColor}}}}}},int={typography:{fontFamily:['"Mona Sans"',"-apple-system","BlinkMacSystemFont",'"Segoe UI"','"Roboto"','"Oxygen"','"Ubuntu"','"Cantarell"','"Fira Sans"','"Droid Sans"','"Helvetica Neue"',"sans-serif"].join(", "),allVariants:{fontFeatureSettings:"'ss01' on, 'ss05' on, 'ss06' on, 'liga' off, 'clig' off",textDecorationThickness:"1px",textUnderlineOffset:"2px","&:hover":{textDecorationThickness:"1px"}}},components:{MuiCardHeader:{styleOverrides:{root:({theme:i})=>({'&[variant="heading"]':{backgroundColor:Pt(i.palette.action.hover,.04),padding:"0.625rem 1rem",alignItems:"center","& .MuiCardHeader-title":{fontSize:"1.25rem",fontStyle:"normal",fontWeight:500,lineHeight:1,letterSpacing:"-0.03125rem",marginBottom:"-0.25rem"}}})}},MuiCard:{styleOverrides:{root:({theme:i})=>({borderRadius:"8px",border:`1px solid ${i.palette.divider}`,background:i.palette.background.paperElevation1})}},MuiCardContent:{styleOverrides:{root:({theme:i})=>({"&.MuiCardContent-variantHeading":{padding:"0.5rem 1rem","& .MuiTypography-body2":{color:i.palette.text.secondary,fontSize:"0.875rem",fontStyle:"normal",fontWeight:400,lineHeight:"150%"}}})}},MuiTab:{styleOverrides:{root:({theme:i})=>({color:i.palette.text.secondary,fontSize:"0.875rem",fontStyle:"normal",fontWeight:500,lineHeight:1.4,textTransform:"capitalize"})}},MuiTypography:{styleOverrides:{subtitle2:{fontSize:"0.875rem",fontStyle:"normal",fontWeight:500,lineHeight:"150%"},h4:{fontWeight:600,fontSize:"32px",lineHeight:1.25,letterSpacing:"-0.5px"},h5:{fontWeight:600,fontSize:"24px",lineHeight:1.3},body1:{fontSize:"16px",fontWeight:400,lineHeight:1.5},body2:{fontSize:"14px",fontWeight:400,lineHeight:1.5},subtitle1:{fontSize:"16px",fontWeight:500,lineHeight:1.5}}},MuiButton:{styleOverrides:{root:{display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"0.5rem",padding:"0.5rem 1rem",fontSize:"0.875rem",fontStyle:"normal",fontWeight:500,lineHeight:"1.4",textTransform:"capitalize"},outlinedInherit:({theme:i})=>({border:`1px solid ${i.palette.divider}`,color:i.palette.text.primary,"&:hover":{backgroundColor:i.palette.action.hover,border:`1px solid ${i.palette.divider}`}}),containedPrimary:({theme:i})=>({background:i.palette.primary.main,color:i.palette.primary.contrastText,boxShadow:"none","&:hover":{background:i.palette.primary.dark,boxShadow:"none"}})}},MuiLink:{styleOverrides:{root:{textDecorationThickness:"1px",textUnderlineOffset:"2px","&:hover":{textDecorationThickness:"1px"}}}},MuiAlert:{styleOverrides:{root:{borderRadius:"0.5rem",padding:"0.375rem 1rem",fontSize:"0.875rem",fontWeight:400,lineHeight:1.5,"& .MuiAlert-icon":{fontSize:"1.375rem",marginRight:"0.75rem",padding:"0.4375rem 0"},"& .MuiAlert-message":{padding:"0.5rem 0","& .MuiAlertTitle-root":{fontSize:"1rem",fontWeight:500,lineHeight:1.5,marginBottom:"0.25rem"}}}}},MuiDialog:{styleOverrides:{paper:({ownerState:i})=>({borderRadius:i.fullScreen?0:"0.5rem"})}},MuiTextField:{styleOverrides:{root:{"& .MuiOutlinedInput-root":{borderRadius:"0.5rem"}}}},MuiOutlinedInput:{styleOverrides:{root:{borderRadius:"0.5rem"}}}}},rnt=a5(int),snt=i=>{const e=pl(pl(rnt,i.palette.mode==="dark"?tnt:nnt),i);return a5(e)},DDe=$.createContext();function EDe({children:i,initialMode:e}){const[n,r]=$.useState(e);$.useEffect(()=>{localStorage.setItem("qdrant-web-ui-theme",n)},[n]);const s=nn.useMemo(()=>snt({palette:{mode:n}}),[n]);return $.useEffect(()=>{const o=a=>{let l=a.data;if(typeof l=="string")try{l=JSON.parse(l)}catch(u){console.log("could not parse message payload as JSON",u)}const c=(l==null?void 0:l.mode)??(l==null?void 0:l.qdrantTheme)??l;(c==="light"||c==="dark")&&(r(c),a.source.postMessage(`{ status: 'success', message: 'Color mode changed to ${c}' }`,a.origin))};return window.addEventListener("message",o),()=>window.removeEventListener("message",o)},[r]),C.jsx(DDe.Provider,{value:{colorMode:n,setColorMode:r},children:C.jsx(KWe,{theme:s,children:i})})}EDe.propTypes={children:Z.node.isRequired,initialMode:Z.string.isRequired};function ont(){return $.useContext(DDe)}const ant=ye(fZe)(({theme:i})=>({borderRadius:i.shape.borderRadius[1],border:`0.5px solid ${i.palette.divider}`,background:i.palette.background.default,padding:"2px"})),ufe=ye(cZe)(({theme:i})=>({display:"flex",width:"64px",height:"28px",padding:"6px 21px",justifyContent:"center",alignItems:"center",border:"none",background:"transparent","&.Mui-selected":{borderRadius:i.shape.borderRadius*1,border:`1px solid ${Pt(i.palette.divider,.12)}`,background:i.palette.background.paper}})),dfe=ye("div")(()=>({width:"20px",height:"20px",display:"flex",alignItems:"center",justifyContent:"center"}));function lnt(){const{colorMode:i,setColorMode:e}=ont(),n=(r,s)=>{s!==null&&e(s)};return C.jsxs(ant,{value:i,exclusive:!0,onChange:n,size:"small",children:[C.jsx(ufe,{value:"dark",children:C.jsx(ua,{title:"Dark Mode",children:C.jsx(dfe,{children:C.jsx(btt,{size:20})})})}),C.jsx(ufe,{value:"light",children:C.jsx(ua,{title:"Light Mode",children:C.jsx(dfe,{children:C.jsx(Htt,{size:20})})})})]})}const hfe=i=>new ResizeObserver(e=>{for(const n of e){const{target:r}=n,{width:s,height:o}=r.getBoundingClientRect();typeof i=="function"&&i(s,o)}}),IDe=function(i,e){const n=u=>u.split(".").map(d=>{const h=Number.parseInt(d,10);return Number.isNaN(h)?0:h}),[r=0,s=0,o=0]=n(i),[a=0,l=0,c=0]=n(e);return r!==a?r>a?1:-1:s!==l?s>l?1:-1:o!==c?o>c?1:-1:0},YZ=i=>{if(i==null)return null;const e=i.toString().trim().replace(/^v/i,"").split(".").map(n=>{const r=Number.parseInt(n,10);return Number.isNaN(r)?0:r});return e.length===0?null:e.join(".")},cnt=(i,e)=>{const n=YZ(i),r=YZ(e);return!n||!r?!1:IDe(n,r)===1},unt=i=>{const e=YZ(i);return e?`https://github.com/qdrant/qdrant/releases/tag/v${e}`:null},bse=i=>{const n="/dashboard/".replace(/\/?$/,"/"),r=i.startsWith("/")?i.slice(1):i;return`${n}${r}`},TDe=()=>{const n=$i().palette.mode==="dark"?"logo-red-white.svg":"logo-red-black.svg",r=bse(n);return C.jsx("img",{src:r,alt:"logo",width:"100px"})},ffe=240,dnt=ye("div")(({theme:i})=>({display:"flex",alignItems:"center",justifyContent:"flex-end",padding:i.spacing(0,1),...i.mixins.toolbar})),hnt=ye(pLe)(()=>({width:ffe,flexShrink:0,whiteSpace:"nowrap",boxSizing:"border-box","& .MuiDrawer-paper":{width:ffe,overflowX:"hidden"}})),RDe=ye(NKe,{shouldForwardProp:i=>i!=="isActive"})(({theme:i,isActive:e})=>({display:"flex",height:"40px",padding:"8px 12px",justifyContent:"space-between",alignItems:"center",alignSelf:"stretch",borderRadius:"8px","& .MuiListItemText-primary, & .MuiListItemIcon-root":{color:i.palette.text.secondary},"&:hover":{backgroundColor:Pt(i.palette.primary.light,.05)},...e&&{backgroundColor:Pt(i.palette.primary.light,.08),"& .MuiListItemIcon-root":{color:i.palette.primary.main},"& .MuiListItemText-primary":{color:i.palette.text.primary}}})),fnt=ye(tse)(()=>({display:"flex",padding:"24px 12px 0 12px",flexDirection:"column",alignItems:"flex-start",flex:"1 0 0",alignSelf:"stretch"})),pnt=ye(nse)(()=>({display:"flex",padding:"0.5rem 0.75rem",justifyContent:"flex-start",alignItems:"center",gap:"0.75rem",alignSelf:"stretch","& a":{textDecoration:"none","&:hover":{textDecoration:"underline",textDecorationThickness:"1px",textUnderlineOffset:"2px"}}})),gnt=ye(Je)(({theme:i})=>({color:i.palette.text.secondary,fontFeatureSettings:"'ss01' on, 'ss05' on, 'ss06' on, 'liga' off, 'clig' off",fontFamily:"Mona Sans, sans-serif",fontSize:"12px",fontStyle:"normal",fontWeight:400,lineHeight:"150%"})),pfe=ye(tse)(({theme:i})=>({marginTop:"auto",borderTop:`1px solid ${i.palette.divider}`,padding:"1rem"})),b5=$.createContext();function ADe({children:i}){const[e,n]=$.useState(null),[r,s]=$.useState(null),[o,a]=$.useState(!1),[l,c]=$.useState(!0),[u,d]=$.useState(null),{client:h}=Ur();return $.useEffect(()=>{async function f(){var p,g,m;try{const _=await h.api("service").telemetry();n(_.data.result.app.version),a(((p=_.data.result.app)==null?void 0:p.jwt_rbac)||!1),s((g=_.data.result.collections)==null?void 0:g.max_collections),(m=_.data.result.app)!=null&&m.hide_jwt_dashboard&&c(!1),d(null)}catch(_){_.status===403||_.status===401?d(_):console.log("error fetching telemetry",_)}}f()},[h]),C.jsx(b5.Provider,{value:{version:e,maxCollections:r,setMaxCollections:s,jwtEnabled:o,jwtVisible:l,authError:u,clearAuthError:()=>d(null)},children:i})}ADe.propTypes={children:Z.node.isRequired};function NDe(){const i=$.useContext(b5);if(i===void 0)throw new Error("useVersion must be used within a TelemetryProvider");return{version:i.version}}function mnt(){const i=$.useContext(b5);if(i===void 0)throw new Error("useMaxCollections must be used within a TelemetryProvider");return{maxCollections:i.maxCollections,setMaxCollections:i.setMaxCollections}}function _nt(){const i=$.useContext(b5);if(i===void 0)throw new Error("useJwt must be used within a TelemetryProvider");return{jwtEnabled:i.jwtEnabled,jwtVisible:i.jwtVisible}}function vnt(){const i=$.useContext(b5);if(i===void 0)throw new Error("useAuthError must be used within a TelemetryProvider");return{authError:i.authError,clearAuthError:i.clearAuthError}}const IU={},MDe=$.createContext(),bnt=bse("/cloud/data.json");function PDe({children:i}){const[e,n]=$.useState(null),[r,s]=$.useState(null),[o,a]=$.useState(!0),l=$.useMemo(()=>{const d=IU==null?void 0:IU.VITE_CLOUD_INFO_PATH;return typeof d=="string"&&d.trim().length>0?d:bnt},[]),c=$.useCallback(async()=>{a(!0),s(null);try{const d=await kE.get(l);n(d.data)}catch(d){s(d),n(null)}finally{a(!1)}},[l]);$.useEffect(()=>{c()},[c]);const u=$.useMemo(()=>({cloudInfo:e,error:r,isLoading:o,reload:c}),[e,r,o,c]);return C.jsx(MDe.Provider,{value:u,children:i})}PDe.propTypes={children:Z.node.isRequired};function ODe(){const i=$.useContext(MDe);if(i===void 0)throw new Error("useCloudInfo must be used within a CloudInfoProvider");return i}const HL={},FDe=$.createContext(),ynt="https://qdrant.tech/web-ui-info.json";function BDe({children:i}){const[e,n]=$.useState(null),[r,s]=$.useState(null),[o,a]=$.useState(!0),l=$.useMemo(()=>{const d=(HL==null?void 0:HL.VITE_EXTERNAL_INFO_PATH)??(HL==null?void 0:HL.VITE_WEB_INFO_PATH);return typeof d=="string"&&d.trim().length>0?d:ynt},[]),c=$.useCallback(async()=>{a(!0),s(null);try{const d=await fetch(l);if(!d.ok)throw new Error(`Failed to load external info: ${d.status}`);const h=await d.json();n(h)}catch(d){console.error("Error fetching external info:",d),s(d),n(null)}finally{a(!1)}},[l]);$.useEffect(()=>{c()},[c]);const u=$.useMemo(()=>({externalInfo:e,error:r,isLoading:o,reload:c,banner:e==null?void 0:e.banner,latestVersion:e==null?void 0:e.latest_version}),[e,r,o,c]);return C.jsx(FDe.Provider,{value:u,children:i})}BDe.propTypes={children:Z.node.isRequired};function jDe(){const i=$.useContext(FDe);if(i===void 0)throw new Error("useExternalInfo must be used within an ExternalInfoProvider");return i}function wnt(){const{version:i}=NDe(),{jwtEnabled:e,jwtVisible:n}=_nt(),{isRestricted:r}=Ur(),s=Wv(),{cloudInfo:o}=ODe(),{latestVersion:a}=jDe(),l=nn.useMemo(()=>cnt(a,i),[a,i]),c=nn.useMemo(()=>unt(a),[a]),u=h=>s.pathname===h||s.pathname.startsWith(h+"/"),d=(o==null?void 0:o.support_url)||l&&c;return C.jsxs(hnt,{variant:"permanent",children:[C.jsx(dnt,{sx:{justifyContent:"start",paddingLeft:"24px",paddingRight:"24px"},children:C.jsx(TDe,{width:120})}),C.jsx(SE,{}),C.jsxs(fnt,{children:[(o==null?void 0:o.cloud_backlink)&&C.jsx(b0,{title:"Back to Cloud",icon:C.jsx(Qet,{size:"16px"}),linkTo:o.cloud_backlink,active:u(o.cloud_backlink),disabled:!(o!=null&&o.cloud_backlink)}),!r&&C.jsx(b0,{title:"Welcome",icon:C.jsx(xDe,{size:"16px"}),linkTo:"/welcome",active:u("/welcome"),disabled:!1}),C.jsx(b0,{title:"Console",icon:C.jsx(ztt,{size:"16px"}),linkTo:"/console",active:u("/console"),disabled:!1}),C.jsx(b0,{title:"Collections",icon:C.jsx(Dtt,{size:"16px"}),linkTo:"/collections",active:u("/collections"),disabled:!1}),!r&&C.jsx(b0,{title:"Tutorial",icon:C.jsx(jet,{size:"16px"}),linkTo:"/tutorial",active:u("/tutorial"),disabled:!1}),!r&&Cnt("Datasets",C.jsx(_se,{size:"16px"}),"/datasets",s),!r&&n&&C.jsx(b0,{title:"Access Tokens",icon:C.jsx(ftt,{size:"16px"}),linkTo:"/jwt",active:u("/jwt"),disabled:!e})]}),d&&C.jsxs(pfe,{children:[(o==null?void 0:o.support_url)&&C.jsx(b0,{title:"Get Support",icon:C.jsx(Ket,{size:"16px"}),linkTo:o.support_url,active:!1,disabled:!1}),l&&c&&C.jsx(b0,{title:"Update Available",icon:C.jsx(dtt,{size:"16px"}),linkTo:c,active:!1,disabled:!1})]}),C.jsx(pfe,{children:C.jsx(pnt,{children:C.jsxs(gnt,{variant:"caption",children:["Qdrant v",i||"???"]})})})]})}function Cnt(i,e,n,r,s=!0){const o=r.pathname===n||r.pathname.startsWith(n+"/");return C.jsx(nse,{disablePadding:!0,sx:{display:"block"},children:C.jsxs(RDe,{component:lh,to:n,disabled:!s,isActive:o,children:[C.jsx(_Le,{sx:{minWidth:0,mr:3,justifyContent:"center"},children:e}),C.jsx(vLe,{primary:i})]})},i)}function b0({title:i,icon:e,linkTo:n,active:r=!1,disabled:s=!1}){return C.jsx(nse,{disablePadding:!0,sx:{display:"block"},children:C.jsxs(RDe,{component:lh,to:n,disabled:s,isActive:r,children:[C.jsx(_Le,{sx:{minWidth:0,mr:3,justifyContent:"center"},children:e}),C.jsx(vLe,{primary:i})]})},i)}b0.propTypes={title:Z.string.isRequired,icon:Z.element.isRequired,linkTo:Z.string.isRequired,active:Z.bool,disabled:Z.bool};const Snt=ye("div")(({theme:i})=>({display:"flex",alignItems:"center",justifyContent:"flex-end",padding:i.spacing(0,1),...i.mixins.toolbar}));function xnt(){const i=$i(),{authError:e,clearAuthError:n}=vnt(),{cloudInfo:r}=ODe(),[s,o]=$.useState(!1),[a,l]=$.useState(!1);$.useEffect(()=>{o(window.self!==window.top)},[]),$.useEffect(()=>{e&&l(!0)},[e]);const c=d=>{l(d),d||n()},u=()=>{window.location.reload()};return C.jsxs(Ye,{sx:{display:"flex"},children:[C.jsx(cLe,{}),s?C.jsx(C.Fragment,{}):C.jsxs(C.Fragment,{children:[C.jsx(zke,{position:"fixed",sx:{zIndex:d=>d.zIndex.drawer,background:i.palette.background.paper,boxShadow:"none",borderBottom:`1px solid ${i.palette.divider}`},children:C.jsxs(ELe,{children:[C.jsx(TDe,{width:200}),r!=null&&r.cluster_name?C.jsxs(Ye,{sx:{flexGrow:1,pl:"140px",display:"flex",alignItems:"center",gap:1},children:[C.jsx(Je,{variant:"body1",sx:{color:i.palette.text.primary},children:"cluster"}),C.jsx(Je,{variant:"body1",sx:{color:i.palette.text.primary},children:"/"}),C.jsx(Je,{component:lh,to:r.cloud_backlink,variant:"body1",sx:{color:i.palette.text.primary,fontWeight:500,textDecoration:"none","&:hover":{textDecoration:"underline",textDecorationThickness:"1px",textUnderlineOffset:"2px"}},children:r.cluster_name})]}):C.jsx(Ye,{sx:{flexGrow:1}}),(r==null?void 0:r.scale_url)&&C.jsx(Ci,{component:lh,to:r.scale_url,target:"_blank",variant:"contained",color:"primary",size:"small",endIcon:C.jsx(xDe,{size:16}),sx:{mr:2},children:"Upgrade Cluster"}),C.jsxs(Ye,{sx:{display:"flex",alignItems:"center",gap:2},children:[C.jsx(ua,{title:"API Key",children:C.jsx(Ga,{size:"large",onClick:()=>l(!0),children:C.jsx(gtt,{size:20})})}),C.jsx(lnt,{})]})]})}),C.jsx(wnt,{})]}),C.jsxs(Ye,{component:"main",sx:{flexGrow:1,overflow:"hidden"},children:[s?C.jsx(C.Fragment,{}):C.jsx(Snt,{}),C.jsx(lQe,{})]}),C.jsx(yDe,{open:a,setOpen:c,onApply:u})]})}function knt(){return C.jsx(ADe,{children:C.jsx(PDe,{children:C.jsx(BDe,{children:C.jsx(xnt,{})})})})}const{createElement:LE,createContext:Lnt,forwardRef:WDe,useCallback:Ub,useContext:$De,useEffect:hv,useImperativeHandle:zDe,useLayoutEffect:Dnt,useMemo:Ent,useRef:af,useState:GN}=ZS,gfe=ZS.useId,Int=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",k9=Int?Dnt:()=>{},Tnt=typeof gfe=="function"?gfe:()=>null;let Rnt=0;function yse(i=null){const e=Tnt(),n=af(i||e||null);return n.current===null&&(n.current=""+Rnt++),n.current}const VW=Lnt(null);VW.displayName="PanelGroupContext";function VDe({children:i=null,className:e="",collapsible:n=!1,defaultSize:r=null,forwardedRef:s,id:o=null,maxSize:a=100,minSize:l=10,onCollapse:c=null,onResize:u=null,order:d=null,style:h={},tagName:f="div"}){const p=$De(VW);if(p===null)throw Error("Panel components must be rendered within a PanelGroup container");const g=yse(o),{collapsePanel:m,expandPanel:_,getPanelStyle:b,registerPanel:y,resizePanel:x,unregisterPanel:k}=p,D=af({onCollapse:c,onResize:u});if(hv(()=>{D.current.onCollapse=c,D.current.onResize=u}),l<0||l>100)throw Error(`Panel minSize must be between 0 and 100, but was ${l}`);if(a<0||a>100)throw Error(`Panel maxSize must be between 0 and 100, but was ${a}`);if(r!==null){if(r<0||r>100)throw Error(`Panel defaultSize must be between 0 and 100, but was ${r}`);l>r&&!n&&(console.error(`Panel minSize ${l} cannot be greater than defaultSize ${r}`),r=l)}const R=b(g,r),E=af({size:mfe(R)}),A=af({callbacksRef:D,collapsible:n,defaultSize:r,id:g,maxSize:a,minSize:l,order:d});return k9(()=>{E.current.size=mfe(R),A.current.callbacksRef=D,A.current.collapsible=n,A.current.defaultSize=r,A.current.id=g,A.current.maxSize=a,A.current.minSize=l,A.current.order=d}),k9(()=>(y(g,A),()=>{k(g)}),[d,g,y,k]),zDe(s,()=>({collapse:()=>m(g),expand:()=>_(g),getCollapsed(){return E.current.size===0},getSize(){return E.current.size},resize:M=>x(g,M)}),[m,_,g,x]),LE(f,{children:i,className:e,"data-panel":"","data-panel-collapsible":n||void 0,"data-panel-id":g,"data-panel-size":parseFloat(""+R.flexGrow).toFixed(1),id:`data-panel-id-${g}`,style:{...R,...h}})}const ix=WDe((i,e)=>LE(VDe,{...i,forwardedRef:e}));VDe.displayName="Panel";ix.displayName="forwardRef(Panel)";function mfe(i){const{flexGrow:e}=i;return typeof e=="string"?parseFloat(e):e}const rx=10;function nN(i,e,n,r,s,o,a,l){const{sizes:c}=l||{},u=c||o;if(s===0)return u;const d=ef(e),h=u.concat();let f=0;{const m=s<0?r:n,_=d.findIndex(k=>k.current.id===m),b=d[_],y=u[_],x=_fe(b,Math.abs(s),y,i);if(y===x)return u;x===0&&y>0&&a.set(m,y),s=s<0?y-x:x-y}let p=s<0?n:r,g=d.findIndex(m=>m.current.id===p);for(;;){const m=d[g],_=u[g],b=Math.abs(s)-Math.abs(f),y=_fe(m,0-b,_,i);if(_!==y&&(y===0&&_>0&&a.set(m.current.id,_),f+=_-y,h[g]=y,f.toPrecision(rx).localeCompare(Math.abs(s).toPrecision(rx),void 0,{numeric:!0})>=0))break;if(s<0){if(--g<0)break}else if(++g>=d.length)break}return f===0?u:(p=s<0?r:n,g=d.findIndex(m=>m.current.id===p),h[g]=u[g]+f,h)}function UL(i,e,n){e.forEach((r,s)=>{const{callbacksRef:o,collapsible:a,id:l}=i[s].current,c=n[l];if(c!==r){n[l]=r;const{onCollapse:u,onResize:d}=o.current;d&&d(r),a&&u&&(!c&&r!==0?u(!1):c!==0&&r===0&&u(!0))}})}function TU(i,e){if(e.length<2)return[null,null];const n=e.findIndex(a=>a.current.id===i);if(n<0)return[null,null];const r=n===e.length-1,s=r?e[n-1].current.id:i,o=r?i:e[n+1].current.id;return[s,o]}function HDe(i,e,n){if(i.size===1)return"100";const s=ef(i).findIndex(a=>a.current.id===e),o=n[s];return o==null?"0":o.toPrecision(rx)}function Ant(i){const e=document.querySelector(`[data-panel-id="${i}"]`);return e||null}function wse(i){const e=document.querySelector(`[data-panel-group-id="${i}"]`);return e||null}function HW(i){const e=document.querySelector(`[data-panel-resize-handle-id="${i}"]`);return e||null}function Nnt(i){return UDe().findIndex(r=>r.getAttribute("data-panel-resize-handle-id")===i)??null}function UDe(){return Array.from(document.querySelectorAll("[data-panel-resize-handle-id]"))}function qDe(i){return Array.from(document.querySelectorAll(`[data-panel-resize-handle-id][data-panel-group-id="${i}"]`))}function Cse(i,e,n){var c,u,d,h;const r=HW(e),s=qDe(i),o=r?s.indexOf(r):-1,a=((u=(c=n[o])==null?void 0:c.current)==null?void 0:u.id)??null,l=((h=(d=n[o+1])==null?void 0:d.current)==null?void 0:h.id)??null;return[a,l]}function ef(i){return Array.from(i.values()).sort((e,n)=>{const r=e.current.order,s=n.current.order;return r==null&&s==null?0:r==null?-1:s==null?1:r-s})}function _fe(i,e,n,r){var a;const s=n+e;if(i.current.collapsible){if(n>0){if(s<=i.current.minSize/2)return 0}else if(!((a=r==null?void 0:r.type)==null?void 0:a.startsWith("key"))&&s{const{direction:a,panels:l}=i.current,c=wse(e),{height:u,width:d}=c.getBoundingClientRect(),f=qDe(e).map(p=>{const g=p.getAttribute("data-panel-resize-handle-id"),m=ef(l),[_,b]=Cse(e,g,m);if(_==null||b==null)return()=>{};let y=0,x=100,k=0,D=0;m.forEach(P=>{P.current.id===_?(x=P.current.maxSize,y=P.current.minSize):(k+=P.current.minSize,D+=P.current.maxSize)});const R=Math.min(x,100-k),E=Math.max(y,(m.length-1)*100-D),A=HDe(l,_,s);p.setAttribute("aria-valuemax",""+Math.round(R)),p.setAttribute("aria-valuemin",""+Math.round(E)),p.setAttribute("aria-valuenow",""+Math.round(parseInt(A)));const M=P=>{if(!P.defaultPrevented)switch(P.key){case"Enter":{P.preventDefault();const O=m.findIndex(B=>B.current.id===_);if(O>=0){const B=m[O],j=s[O];if(j!=null){let z=0;j.toPrecision(rx)<=B.current.minSize.toPrecision(rx)?z=a==="horizontal"?d:u:z=-(a==="horizontal"?d:u);const H=nN(P,l,_,b,z,s,o.current,null);s!==H&&r(H)}}break}}};p.addEventListener("keydown",M);const N=Ant(_);return N!=null&&p.setAttribute("aria-controls",N.id),()=>{p.removeAttribute("aria-valuemax"),p.removeAttribute("aria-valuemin"),p.removeAttribute("aria-valuenow"),p.removeEventListener("keydown",M),N!=null&&p.removeAttribute("aria-controls")}});return()=>{f.forEach(p=>p())}},[i,e,n,o,r,s])}function Pnt({disabled:i,handleId:e,resizeHandler:n}){hv(()=>{if(i||n==null)return;const r=HW(e);if(r==null)return;const s=o=>{if(!o.defaultPrevented)switch(o.key){case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"End":case"Home":{o.preventDefault(),n(o);break}case"F6":{o.preventDefault();const a=UDe(),l=Nnt(e);KDe(l!==null);const c=o.shiftKey?l>0?l-1:a.length-1:l+1{r.removeEventListener("keydown",s)}},[i,e,n])}function Ont(i,e){if(i.length!==e.length)return!1;for(let n=0;nE.current.id===k),R=r[D];if(R.current.collapsible){const E=d[D];(E===0||E.toPrecision(rx)===R.current.minSize.toPrecision(rx))&&(b=b<0?-R.current.minSize*g:R.current.minSize*g)}return b}else return GDe(i,n,s,l,c)}function Bnt(i){return i.type==="keydown"}function ZZ(i){return i.type.startsWith("mouse")}function QZ(i){return i.type.startsWith("touch")}let JZ=null,hS=null;function XDe(i){switch(i){case"horizontal":return"ew-resize";case"horizontal-max":return"w-resize";case"horizontal-min":return"e-resize";case"vertical":return"ns-resize";case"vertical-max":return"n-resize";case"vertical-min":return"s-resize"}}function jnt(){hS!==null&&(document.head.removeChild(hS),JZ=null,hS=null)}function RU(i){if(JZ===i)return;JZ=i;const e=XDe(i);hS===null&&(hS=document.createElement("style"),document.head.appendChild(hS)),hS.innerHTML=`*{cursor: ${e}!important;}`}function Wnt(i,e=10){let n=null;return(...s)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{i(...s)},e)}}function YDe(i){return i.map(e=>{const{minSize:n,order:r}=e.current;return r?`${r}:${n}`:`${n}`}).sort((e,n)=>e.localeCompare(n)).join(",")}function ZDe(i,e){try{const n=e.getItem(`PanelGroup:sizes:${i}`);if(n){const r=JSON.parse(n);if(typeof r=="object"&&r!=null)return r}}catch{}return null}function $nt(i,e,n){const r=ZDe(i,n);if(r){const s=YDe(e);return r[s]??null}return null}function znt(i,e,n,r){const s=YDe(e),o=ZDe(i,r)||{};o[s]=n;try{r.setItem(`PanelGroup:sizes:${i}`,JSON.stringify(o))}catch(a){console.error(a)}}const AU={};function vfe(i){try{if(typeof localStorage<"u")i.getItem=e=>localStorage.getItem(e),i.setItem=(e,n)=>{localStorage.setItem(e,n)};else throw new Error("localStorage not supported in this environment")}catch(e){console.error(e),i.getItem=()=>null,i.setItem=()=>{}}}const iN={getItem:i=>(vfe(iN),iN.getItem(i)),setItem:(i,e)=>{vfe(iN),iN.setItem(i,e)}};function QDe({autoSaveId:i,children:e=null,className:n="",direction:r,disablePointerEventsDuringResize:s=!1,forwardedRef:o,id:a=null,onLayout:l,storage:c=iN,style:u={},tagName:d="div"}){const h=yse(a),[f,p]=GN(null),[g,m]=GN(new Map),_=af(null),b=af({onLayout:l});hv(()=>{b.current.onLayout=l});const y=af({}),[x,k]=GN([]),D=af(new Map),R=af(0),E=af({direction:r,panels:g,sizes:x});zDe(o,()=>({getLayout:()=>{const{sizes:Y}=E.current;return Y},setLayout:Y=>{const X=Y.reduce((ee,le)=>ee+le,0);KDe(X===100,"Panel sizes must add up to 100%");const{panels:Q}=E.current,ie=y.current,K=ef(Q);UL(K,Y,ie),k(Y)}}),[]),k9(()=>{E.current.direction=r,E.current.panels=g,E.current.sizes=x}),Mnt({committedValuesRef:E,groupId:h,panels:g,setSizes:k,sizes:x,panelSizeBeforeCollapse:D}),hv(()=>{const{onLayout:Y}=b.current;if(Y){const{panels:X,sizes:Q}=E.current;if(Q.length>0){Y(Q);const ie=y.current,K=ef(X);UL(K,Q,ie)}}},[x]),k9(()=>{if(E.current.sizes.length===g.size)return;let X=null;if(i){const Q=ef(g);X=$nt(i,Q,c)}if(X!=null)k(X);else{const Q=ef(g);let ie=0,K=0,ee=0;if(Q.forEach(le=>{ee+=le.current.minSize,le.current.defaultSize===null?ie++:K+=le.current.defaultSize}),K>100)throw new Error("Default panel sizes cannot exceed 100%");if(Q.length>1&&ie===0&&K!==100)throw new Error("Invalid default sizes specified for panels");if(ee>100)throw new Error("Minimum panel sizes cannot exceed 100%");k(Q.map(le=>le.current.defaultSize===null?(100-K)/ie:le.current.defaultSize))}},[i,g,c]),hv(()=>{if(i){if(x.length===0||x.length!==g.size)return;const Y=ef(g);AU[i]||(AU[i]=Wnt(znt,100)),AU[i](i,Y,x,c)}},[i,g,x,c]);const A=Ub((Y,X)=>{const{panels:Q}=E.current;return Q.size===0?{flexBasis:0,flexGrow:X??void 0,flexShrink:1,overflow:"hidden"}:{flexBasis:0,flexGrow:HDe(Q,Y,x),flexShrink:1,overflow:"hidden",pointerEvents:s&&f!==null?"none":void 0}},[f,s,x]),M=Ub((Y,X)=>{m(Q=>{if(Q.has(Y))return Q;const ie=new Map(Q);return ie.set(Y,X),ie})},[]),N=Ub(Y=>Q=>{Q.preventDefault();const{direction:ie,panels:K,sizes:ee}=E.current,le=ef(K),[ke,xe]=Cse(h,Y,le);if(ke==null||xe==null)return;let me=Fnt(Q,h,Y,le,ie,ee,_.current);if(me===0)return;const je=wse(h).getBoundingClientRect(),qe=ie==="horizontal";document.dir==="rtl"&&qe&&(me=-me);const Ze=qe?je.width:je.height,We=me/Ze*100,ut=nN(Q,K,ke,xe,We,ee,D.current,_.current),st=!Ont(ee,ut);if((ZZ(Q)||QZ(Q))&&R.current!=We&&RU(st?qe?"horizontal":"vertical":qe?me<0?"horizontal-min":"horizontal-max":me<0?"vertical-min":"vertical-max"),st){const mt=y.current;UL(le,ut,mt),k(ut)}R.current=We},[h]),P=Ub(Y=>{m(X=>{if(!X.has(Y))return X;const Q=new Map(X);return Q.delete(Y),Q})},[]),O=Ub(Y=>{const{panels:X,sizes:Q}=E.current,ie=X.get(Y);if(ie==null||!ie.current.collapsible)return;const K=ef(X),ee=K.indexOf(ie);if(ee<0)return;const le=Q[ee];if(le===0)return;D.current.set(Y,le);const[ke,xe]=TU(Y,K);if(ke==null||xe==null)return;const Ee=ee===K.length-1?le:0-le,je=nN(null,X,ke,xe,Ee,Q,D.current,null);if(Q!==je){const qe=y.current;UL(K,je,qe),k(je)}},[]),B=Ub(Y=>{const{panels:X,sizes:Q}=E.current,ie=X.get(Y);if(ie==null)return;const K=D.current.get(Y)||ie.current.minSize;if(!K)return;const ee=ef(X),le=ee.indexOf(ie);if(le<0||Q[le]!==0)return;const[xe,me]=TU(Y,ee);if(xe==null||me==null)return;const je=le===ee.length-1?0-K:K,qe=nN(null,X,xe,me,je,Q,D.current,null);if(Q!==qe){const Ze=y.current;UL(ee,qe,Ze),k(qe)}},[]),j=Ub((Y,X)=>{const{panels:Q,sizes:ie}=E.current,K=Q.get(Y);if(K==null)return;const ee=ef(Q),le=ee.indexOf(K);if(le<0)return;const ke=ie[le];if(ke===X)return;K.current.collapsible&&X===0||(X=Math.min(K.current.maxSize,Math.max(K.current.minSize,X)));const[xe,me]=TU(Y,ee);if(xe==null||me==null)return;const je=le===ee.length-1?ke-X:X-ke,qe=nN(null,Q,xe,me,je,ie,D.current,null);if(ie!==qe){const Ze=y.current;UL(ee,qe,Ze),k(qe)}},[]),z=Ent(()=>({activeHandleId:f,collapsePanel:O,direction:r,expandPanel:B,getPanelStyle:A,groupId:h,registerPanel:M,registerResizeHandle:N,resizePanel:j,startDragging:(Y,X)=>{if(p(Y),ZZ(X)||QZ(X)){const Q=HW(Y);_.current={dragHandleRect:Q.getBoundingClientRect(),dragOffset:GDe(X,Y,r),sizes:E.current.sizes}}},stopDragging:()=>{jnt(),p(null),_.current=null},unregisterPanel:P}),[f,O,r,B,A,h,M,N,j,P]),H={display:"flex",flexDirection:r==="horizontal"?"row":"column",height:"100%",overflow:"hidden",width:"100%"};return LE(VW.Provider,{children:LE(d,{children:e,className:n,"data-panel-group":"","data-panel-group-direction":r,"data-panel-group-id":h,style:{...H,...u}}),value:z})}const UW=WDe((i,e)=>LE(QDe,{...i,forwardedRef:e}));QDe.displayName="PanelGroup";UW.displayName="forwardRef(PanelGroup)";function qW({children:i=null,className:e="",disabled:n=!1,id:r=null,onDragging:s,style:o={},tagName:a="div"}){const l=af(null),c=af({onDragging:s});hv(()=>{c.current.onDragging=s});const u=$De(VW);if(u===null)throw Error("PanelResizeHandle components must be rendered within a PanelGroup container");const{activeHandleId:d,direction:h,groupId:f,registerResizeHandle:p,startDragging:g,stopDragging:m}=u,_=yse(r),b=d===_,[y,x]=GN(!1),[k,D]=GN(null),R=Ub(()=>{l.current.blur(),m();const{onDragging:M}=c.current;M&&M(!1)},[m]);hv(()=>{if(n)D(null);else{const A=p(_);D(()=>A)}},[n,_,p]),hv(()=>{if(n||k==null||!b)return;const A=O=>{k(O)},M=O=>{k(O)},P=l.current.ownerDocument;return P.body.addEventListener("contextmenu",R),P.body.addEventListener("mousemove",A),P.body.addEventListener("touchmove",A),P.body.addEventListener("mouseleave",M),window.addEventListener("mouseup",R),window.addEventListener("touchend",R),()=>{P.body.removeEventListener("contextmenu",R),P.body.removeEventListener("mousemove",A),P.body.removeEventListener("touchmove",A),P.body.removeEventListener("mouseleave",M),window.removeEventListener("mouseup",R),window.removeEventListener("touchend",R)}},[h,n,b,k,R]),Pnt({disabled:n,handleId:_,resizeHandler:k});const E={cursor:XDe(h),touchAction:"none",userSelect:"none"};return LE(a,{children:i,className:e,"data-resize-handle-active":b?"pointer":y?"keyboard":void 0,"data-panel-group-direction":h,"data-panel-group-id":f,"data-panel-resize-handle-enabled":!n,"data-panel-resize-handle-id":_,onBlur:()=>x(!1),onFocus:()=>x(!0),onMouseDown:A=>{g(_,A.nativeEvent);const{onDragging:M}=c.current;M&&M(!0)},onMouseUp:R,onTouchCancel:R,onTouchEnd:R,onTouchStart:A=>{g(_,A.nativeEvent);const{onDragging:M}=c.current;M&&M(!0)},ref:l,role:"separator",style:{...E,...o},tabIndex:0})}qW.displayName="PanelResizeHandle";function XN(i){let n=i.split("?")[0].split(/\s+/);if(n.length==3&&n[2]==""&&n.pop(),n.length!=2)return n;let r=n[0],s=n[1];s=s.replace(/^\//,"");let o=s.split("/");return[r,...o]}class Vnt{constructor(e,n,r,s,o,a,l){this.method=e,this.path=n,this.body=r,this.operationId=s,this.tags=o,this.parameters=a,this.summary=l}}class JDe{constructor(e){this.openapi=e}getAllMethods(){var n,r,s,o,a,l;let e=[];for(let c in this.openapi.paths)for(let u in this.openapi.paths[c])e.push(new Vnt(u,c,(a=(o=(s=(r=(n=this.openapi.paths[c][u])==null?void 0:n.requestBody)==null?void 0:r.content)==null?void 0:s["application/json"])==null?void 0:o.schema)==null?void 0:a.$ref,this.openapi.paths[c][u].operationId,this.openapi.paths[c][u].tags,(l=this.openapi.paths[c][u])==null?void 0:l.parameters,this.openapi.paths[c][u].summary));return e}objectByRef(e){let n=e.split("/");n.shift();let r=this.openapi;for(let s of n)r=r[s];return r}_objectsByPath(e,n){let r=e;if(typeof r!="object"||r===null)return[];if(r!=null&&r.$ref)return this._objectsByPath(this.objectByRef(r.$ref),n);if(r!=null&&r.anyOf){let a=[];for(let l of r.anyOf)l!=null&&l.$ref&&a.push(...this._objectsByPath(this.objectByRef(l.$ref),n)),((l==null?void 0:l.type)==="object"||(l==null?void 0:l.type)==="array")&&a.push(...this._objectsByPath(l,n));return a}if(r!=null&&r.oneOf){let a=[];for(let l of r.oneOf)l!=null&&l.$ref&&a.push(...this._objectsByPath(this.objectByRef(l.$ref),n)),(l==null?void 0:l.type)==="object"&&a.push(...this._objectsByPath(l,n));return a}if(n===null)return[];if(n.length==0)return[r];let s=n[0],o=n.slice(1);if(typeof s=="number"||s instanceof Number)return(r==null?void 0:r.type)!="array"?[]:r!=null&&r.items?this._objectsByPath(r.items,o):[];if(typeof s=="string"||s instanceof String){if((r==null?void 0:r.type)!="object")return[];if(r!=null&&r.additionalProperties){let l=r.additionalProperties;return this._objectsByPath(l,o)}if(!(r!=null&&r.properties))return[];if(!(r!=null&&r.properties[s]))return[];let a=r.properties[s];return this._objectsByPath(a,o)}return[]}objectsByPath(e,n){let r=this.objectByRef(e);return this._objectsByPath(r,n)}allProperties(e,n,r){let s=this.objectsByPath(e,n),o=[];for(let a of s)if(a!=null&&a.properties)for(let l in a.properties)l.startsWith(r)&&o.push(l);return o}allEnumValues(e,n,r,s){const o=this.objectsByPath(e,n),a=[];function l(c,u){const d=[];return c.forEach(h=>{h!=null&&h.enum&&d.push(...h.enum.filter(f=>f.startsWith(u)))}),d}return o.forEach(c=>{c!=null&&c.properties&&Object.entries(c.properties).forEach(([u,d])=>{if(u===r){const h=l([d],s);if(a.push(...h),d!=null&&d.$ref){const f=l(this.objectsByPath(d.$ref,[]),s);a.push(...f)}d!=null&&d.anyOf&&d.anyOf.forEach(f=>{if(f!=null&&f.$ref){const p=l(this.objectsByPath(f.$ref,[]),s);a.push(...p)}f!=null&&f.enum&&a.push(...f.enum.filter(p=>p.startsWith(s)))})}})}),a}}class NU{constructor(e,n,r){this.name=e,this.accepted=n,this.completable=r,this.children=[],this.terminal=null}addChildren(e){this.children.push(e)}setTerminal(e){this.terminal=e}}class e2e{constructor(){this.root=new NU("root",e=>!0,e=>[])}_match(e){let n=this.root;for(let r of e){let s=!1;for(let o of n.children)if(o.accepted(r)){n=o,s=!0;break}if(!s)return null}return n}autocomplete(e){if(e.length==0)return[];let n=e.slice(0,e.length-1),r=e[e.length-1],s=this._match(n);if(!s)return[];let o=[];for(let a of s.children)o.push(...a.completable(r));return o}match(e){let n=this._match(e);return n?n.terminal:null}addPath(e,n={},r=null){let s=this.root;for(let o of e){let a=!1;for(let c of s.children)if(c.accepted(o)){s=c,a=!0;break}if(a)continue;let l=null;if(n[o])l=new NU(o,n[o][0],n[o][1]);else{let c=u=>o===u;o.startsWith("{")&&o.endsWith("}")&&(c=u=>u===o||u.match(/\w+/)),l=new NU(o,c,u=>o.startsWith(u)?[o]:[])}s.addChildren(l),s=l}s.setTerminal(r)}}class Hnt{constructor(e){this.openapi=e,this.extractor=new JDe(e),this.methods=this.extractor.getAllMethods(),this.trieCompletion=new e2e;for(let n of this.methods){let r=`${n.method.toUpperCase()} ${n.path}`,s=XN(r);this.trieCompletion.addPath(s,{},{operationId:n.operationId,tags:n.tags})}}getRequestDocs(e){let n=XN(e);return this.trieCompletion.match(n)}}const Unt=`{ "paths": { "/collections/{collection_name}/shards": { "put": { "tags": [ "Distributed" ], "summary": "Create shard key", "operationId": "create_shard_key", "requestBody": { "description": "Shard key configuration", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateShardingKey" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to create shards for", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "Wait for operation commit timeout in seconds. \\nIf timeout is reached - request will return with service error.\\n", "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } } }, "/collections/{collection_name}/shards/delete": { "post": { "tags": [ "Distributed" ], "summary": "Delete shard key", "operationId": "delete_shard_key", "requestBody": { "description": "Select shard key to delete", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DropShardingKey" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to create shards for", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "Wait for operation commit timeout in seconds. \\nIf timeout is reached - request will return with service error.\\n", "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } } }, "/": { "get": { "summary": "Returns information about the running Qdrant instance", "description": "Returns information about the running Qdrant instance like version and commit id", "operationId": "root", "tags": [ "Service" ], "responses": { "200": { "description": "Qdrant server version information", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VersionInfo" } } } }, "4XX": { "description": "error" } } } }, "/telemetry": { "get": { "summary": "Collect telemetry data", "description": "Collect telemetry data including app info, system info, collections info, cluster info, configs and statistics", "operationId": "telemetry", "tags": [ "Service" ], "parameters": [ { "name": "anonymize", "in": "query", "description": "If true, anonymize result", "required": false, "schema": { "type": "boolean" } }, { "name": "details_level", "in": "query", "description": "Level of details in telemetry data. Minimal level is 0, maximal is infinity", "required": false, "schema": { "type": "integer", "minimum": 0 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/TelemetryData" } } } } } } } } }, "/metrics": { "get": { "summary": "Collect Prometheus metrics data", "description": "Collect metrics data including app info, collections info, cluster info and statistics", "operationId": "metrics", "tags": [ "Service" ], "parameters": [ { "name": "anonymize", "in": "query", "description": "If true, anonymize result", "required": false, "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Metrics data in Prometheus format", "content": { "text/plain": { "schema": { "type": "string", "example": "# HELP app_info information about qdrant server\\n# TYPE app_info gauge\\napp_info{name=\\"qdrant\\",version=\\"0.11.1\\"} 1\\n# HELP cluster_enabled is cluster support enabled\\n# TYPE cluster_enabled gauge\\ncluster_enabled 0\\n# HELP collections_total number of collections\\n# TYPE collections_total gauge\\ncollections_total 1\\n" } } } }, "4XX": { "description": "error" } } } }, "/locks": { "post": { "summary": "Set lock options", "description": "Set lock options. If write is locked, all write operations and collection creation are forbidden. Returns previous lock options", "operationId": "post_locks", "tags": [ "Service" ], "requestBody": { "description": "Lock options and optional error message", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocksOption" } } } }, "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/LocksOption" } } } } } } } }, "get": { "summary": "Get lock options", "description": "Get lock options. If write is locked, all write operations and collection creation are forbidden", "operationId": "get_locks", "tags": [ "Service" ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/LocksOption" } } } } } } } } }, "/healthz": { "get": { "summary": "Kubernetes healthz endpoint", "description": "An endpoint for health checking used in Kubernetes.", "operationId": "healthz", "tags": [ "Service" ], "responses": { "200": { "description": "Healthz response", "content": { "text/plain": { "schema": { "type": "string", "example": "healthz check passed" } } } }, "4XX": { "description": "error" } } } }, "/livez": { "get": { "summary": "Kubernetes livez endpoint", "description": "An endpoint for health checking used in Kubernetes.", "operationId": "livez", "tags": [ "Service" ], "responses": { "200": { "description": "Healthz response", "content": { "text/plain": { "schema": { "type": "string", "example": "healthz check passed" } } } }, "4XX": { "description": "error" } } } }, "/readyz": { "get": { "summary": "Kubernetes readyz endpoint", "description": "An endpoint for health checking used in Kubernetes.", "operationId": "readyz", "tags": [ "Service" ], "responses": { "200": { "description": "Healthz response", "content": { "text/plain": { "schema": { "type": "string", "example": "healthz check passed" } } } }, "4XX": { "description": "error" } } } }, "/issues": { "get": { "summary": "Get issues", "description": "Get a report of performance issues and configuration suggestions", "operationId": "get_issues", "tags": [ "Beta" ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object" } } } }, "4XX": { "description": "error" } } }, "delete": { "summary": "Clear issues", "description": "Removes all issues reported so far", "operationId": "clear_issues", "tags": [ "Beta" ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "boolean" } } } }, "4XX": { "description": "error" } } } }, "/cluster": { "get": { "tags": [ "Distributed" ], "summary": "Get cluster status info", "description": "Get information about the current state and composition of the cluster", "operationId": "cluster_status", "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/ClusterStatus" } } } } } } } } }, "/cluster/recover": { "post": { "tags": [ "Distributed" ], "summary": "Tries to recover current peer Raft state.", "operationId": "recover_current_peer", "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } } }, "/cluster/peer/{peer_id}": { "delete": { "tags": [ "Distributed" ], "summary": "Remove peer from the cluster", "description": "Tries to remove peer from the cluster. Will return an error if peer has shards on it.", "operationId": "remove_peer", "parameters": [ { "name": "peer_id", "in": "path", "description": "Id of the peer", "required": true, "schema": { "type": "integer" } }, { "name": "force", "in": "query", "description": "If true - removes peer even if it has shards/replicas on it.", "schema": { "type": "boolean", "default": false } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } } }, "/collections": { "get": { "tags": [ "Collections" ], "summary": "List collections", "description": "Get list name of all existing collections", "operationId": "get_collections", "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/CollectionsResponse" } } } } } } } } }, "/collections/{collection_name}": { "get": { "tags": [ "Collections" ], "summary": "Collection info", "description": "Get detailed information about specified existing collection", "operationId": "get_collection", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to retrieve", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/CollectionInfo" } } } } } } } }, "put": { "tags": [ "Collections" ], "summary": "Create collection", "description": "Create new collection with given parameters", "operationId": "create_collection", "requestBody": { "description": "Parameters of a new collection", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCollection" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the new collection", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "Wait for operation commit timeout in seconds. \\nIf timeout is reached - request will return with service error.\\n", "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } }, "patch": { "tags": [ "Collections" ], "summary": "Update collection parameters", "description": "Update parameters of the existing collection", "operationId": "update_collection", "requestBody": { "description": "New parameters", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateCollection" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to update", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "Wait for operation commit timeout in seconds. \\nIf timeout is reached - request will return with service error.\\n", "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } }, "delete": { "tags": [ "Collections" ], "summary": "Delete collection", "description": "Drop collection and all associated data", "operationId": "delete_collection", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to delete", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "Wait for operation commit timeout in seconds. \\nIf timeout is reached - request will return with service error.\\n", "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } } }, "/collections/aliases": { "post": { "tags": [ "Aliases" ], "summary": "Update aliases of the collections", "operationId": "update_aliases", "requestBody": { "description": "Alias update operations", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ChangeAliasesOperation" } } } }, "parameters": [ { "name": "timeout", "in": "query", "description": "Wait for operation commit timeout in seconds. \\nIf timeout is reached - request will return with service error.\\n", "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } } }, "/collections/{collection_name}/index": { "put": { "tags": [ "Indexes" ], "summary": "Create index for field in collection", "description": "Create index for field in collection", "operationId": "create_field_index", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "requestBody": { "description": "Field name", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateFieldIndex" } } } }, "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/exists": { "get": { "tags": [ "Collections" ], "summary": "Check the existence of a collection", "description": "Returns \\"true\\" if the given collection name exists, and \\"false\\" otherwise", "operationId": "collection_exists", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/CollectionExistence" } } } } } } } } }, "/collections/{collection_name}/index/{field_name}": { "delete": { "tags": [ "Indexes" ], "summary": "Delete index for field in collection", "description": "Delete field index for collection", "operationId": "delete_field_index", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "field_name", "in": "path", "description": "Name of the field where to delete the index", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/cluster": { "get": { "tags": [ "Distributed" ], "summary": "Collection cluster info", "description": "Get cluster information for a collection", "operationId": "collection_cluster_info", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to retrieve the cluster info for", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/CollectionClusterInfo" } } } } } } } }, "post": { "tags": [ "Distributed" ], "summary": "Update collection cluster setup", "operationId": "update_collection_cluster", "requestBody": { "description": "Collection cluster update operations", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClusterOperations" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection on which to to apply the cluster update operation", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "Wait for operation commit timeout in seconds. \\nIf timeout is reached - request will return with service error.\\n", "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } } } } }, "/collections/{collection_name}/aliases": { "get": { "tags": [ "Aliases" ], "summary": "List aliases for collection", "description": "Get list of all aliases for a collection", "operationId": "get_collection_aliases", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/CollectionsAliasesResponse" } } } } } } } } }, "/aliases": { "get": { "tags": [ "Aliases" ], "summary": "List collections aliases", "description": "Get list of all existing collections aliases", "operationId": "get_collections_aliases", "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/CollectionsAliasesResponse" } } } } } } } } }, "/collections/{collection_name}/snapshots/upload": { "post": { "tags": [ "Snapshots" ], "summary": "Recover from an uploaded snapshot", "description": "Recover local collection data from an uploaded snapshot. This will overwrite any data, stored on this node, for the collection. If collection does not exist - it will be created.", "operationId": "recover_from_uploaded_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } }, { "name": "priority", "in": "query", "description": "Defines source of truth for snapshot recovery", "required": false, "schema": { "$ref": "#/components/schemas/SnapshotPriority" } }, { "name": "checksum", "in": "query", "description": "Optional SHA256 checksum to verify snapshot integrity before recovery.", "required": false, "schema": { "type": "string" } } ], "requestBody": { "description": "Snapshot to recover from", "content": { "multipart/form-data": { "schema": { "type": "object", "properties": { "snapshot": { "type": "string", "format": "binary" } } } } } }, "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } } }, "/collections/{collection_name}/snapshots/recover": { "put": { "tags": [ "Snapshots" ], "summary": "Recover from a snapshot", "description": "Recover local collection data from a snapshot. This will overwrite any data, stored on this node, for the collection. If collection does not exist - it will be created.", "operationId": "recover_from_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "description": "Snapshot to recover from", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SnapshotRecover" } } } }, "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } } }, "/collections/{collection_name}/snapshots": { "get": { "tags": [ "Snapshots" ], "summary": "List collection snapshots", "description": "Get list of snapshots for a collection", "operationId": "list_snapshots", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/SnapshotDescription" } } } } } } } } }, "post": { "tags": [ "Snapshots" ], "summary": "Create collection snapshot", "description": "Create new snapshot for a collection", "operationId": "create_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection for which to create a snapshot", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/SnapshotDescription" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } } }, "/collections/{collection_name}/snapshots/{snapshot_name}": { "delete": { "tags": [ "Snapshots" ], "summary": "Delete collection snapshot", "description": "Delete snapshot for a collection", "operationId": "delete_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection for which to delete a snapshot", "required": true, "schema": { "type": "string" } }, { "name": "snapshot_name", "in": "path", "description": "Name of the snapshot to delete", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } }, "get": { "tags": [ "Snapshots" ], "summary": "Download collection snapshot", "description": "Download specified snapshot from a collection as a file", "operationId": "get_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "snapshot_name", "in": "path", "description": "Name of the snapshot to download", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "Snapshot file", "content": { "application/octet-stream": { "schema": { "type": "string", "format": "binary" } } } } } } }, "/snapshots": { "get": { "tags": [ "Snapshots" ], "summary": "List of storage snapshots", "description": "Get list of snapshots of the whole storage", "operationId": "list_full_snapshots", "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/SnapshotDescription" } } } } } } } } }, "post": { "tags": [ "Snapshots" ], "summary": "Create storage snapshot", "description": "Create new snapshot of the whole storage", "operationId": "create_full_snapshot", "parameters": [ { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/SnapshotDescription" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } } }, "/snapshots/{snapshot_name}": { "delete": { "tags": [ "Snapshots" ], "summary": "Delete storage snapshot", "description": "Delete snapshot of the whole storage", "operationId": "delete_full_snapshot", "parameters": [ { "name": "snapshot_name", "in": "path", "description": "Name of the full snapshot to delete", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } }, "get": { "tags": [ "Snapshots" ], "summary": "Download storage snapshot", "description": "Download specified snapshot of the whole storage as a file", "operationId": "get_full_snapshot", "parameters": [ { "name": "snapshot_name", "in": "path", "description": "Name of the snapshot to download", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "Snapshot file", "content": { "application/octet-stream": { "schema": { "type": "string", "format": "binary" } } } } } } }, "/collections/{collection_name}/shards/{shard_id}/snapshots/upload": { "post": { "tags": [ "Snapshots" ], "summary": "Recover shard from an uploaded snapshot", "description": "Recover shard of a local collection from an uploaded snapshot. This will overwrite any data, stored on this node, for the collection shard.", "operationId": "recover_shard_from_uploaded_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "shard_id", "in": "path", "description": "Id of the shard to recover", "required": true, "schema": { "type": "integer" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } }, { "name": "priority", "in": "query", "description": "Defines source of truth for snapshot recovery", "required": false, "schema": { "$ref": "#/components/schemas/SnapshotPriority" } }, { "name": "checksum", "in": "query", "description": "Optional SHA256 checksum to verify snapshot integrity before recovery.", "required": false, "schema": { "type": "string" } } ], "requestBody": { "description": "Snapshot to recover from", "content": { "multipart/form-data": { "schema": { "type": "object", "properties": { "snapshot": { "type": "string", "format": "binary" } } } } } }, "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } } }, "/collections/{collection_name}/shards/{shard_id}/snapshots/recover": { "put": { "tags": [ "Snapshots" ], "summary": "Recover from a snapshot", "description": "Recover shard of a local collection data from a snapshot. This will overwrite any data, stored in this shard, for the collection.", "operationId": "recover_shard_from_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "shard_id", "in": "path", "description": "Id of the shard to recover", "required": true, "schema": { "type": "integer" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "description": "Snapshot to recover from", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ShardSnapshotRecover" } } } }, "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } } }, "/collections/{collection_name}/shards/{shard_id}/snapshots": { "get": { "tags": [ "Snapshots" ], "summary": "List shards snapshots for a collection", "description": "Get list of snapshots for a shard of a collection", "operationId": "list_shard_snapshots", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "shard_id", "in": "path", "description": "Id of the shard", "required": true, "schema": { "type": "integer" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/SnapshotDescription" } } } } } } } } }, "post": { "tags": [ "Snapshots" ], "summary": "Create shard snapshot", "description": "Create new snapshot of a shard for a collection", "operationId": "create_shard_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection for which to create a snapshot", "required": true, "schema": { "type": "string" } }, { "name": "shard_id", "in": "path", "description": "Id of the shard", "required": true, "schema": { "type": "integer" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/SnapshotDescription" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } } }, "/collections/{collection_name}/shards/{shard_id}/snapshots/{snapshot_name}": { "delete": { "tags": [ "Snapshots" ], "summary": "Delete shard snapshot", "description": "Delete snapshot of a shard for a collection", "operationId": "delete_shard_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection for which to delete a snapshot", "required": true, "schema": { "type": "string" } }, { "name": "shard_id", "in": "path", "description": "Id of the shard", "required": true, "schema": { "type": "integer" } }, { "name": "snapshot_name", "in": "path", "description": "Name of the snapshot to delete", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen. If false - let changes happen in background. Default is true.", "required": false, "schema": { "type": "boolean" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "boolean" } } } } } }, "202": { "description": "operation is accepted", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "string" } } } } } } } }, "get": { "tags": [ "Snapshots" ], "summary": "Download collection snapshot", "description": "Download specified snapshot of a shard from a collection as a file", "operationId": "get_shard_snapshot", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection", "required": true, "schema": { "type": "string" } }, { "name": "shard_id", "in": "path", "description": "Id of the shard", "required": true, "schema": { "type": "integer" } }, { "name": "snapshot_name", "in": "path", "description": "Name of the snapshot to download", "required": true, "schema": { "type": "string" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "Snapshot file", "content": { "application/octet-stream": { "schema": { "type": "string", "format": "binary" } } } } } } }, "/collections/{collection_name}/points/{id}": { "get": { "tags": [ "Points" ], "summary": "Get point", "description": "Retrieve full information of single point by id", "operationId": "get_point", "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to retrieve from", "required": true, "schema": { "type": "string" } }, { "name": "id", "in": "path", "description": "Id of the point", "required": true, "schema": { "$ref": "#/components/schemas/ExtendedPointId" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/Record" } } } } } } } } }, "/collections/{collection_name}/points": { "post": { "tags": [ "Points" ], "summary": "Get points", "description": "Retrieve multiple points by specified IDs", "operationId": "get_points", "requestBody": { "description": "List of points to retrieve", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PointRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to retrieve from", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/Record" } } } } } } } } }, "put": { "tags": [ "Points" ], "summary": "Upsert points", "description": "Perform insert + updates on points. If point with given ID already exists - it will be overwritten.", "operationId": "upsert_points", "requestBody": { "description": "Operation to perform on points", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PointInsertOperations" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to update from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/points/delete": { "post": { "tags": [ "Points" ], "summary": "Delete points", "description": "Delete points", "operationId": "delete_points", "requestBody": { "description": "Operation to perform on points", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PointsSelector" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to delete from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/points/vectors": { "put": { "tags": [ "Points" ], "summary": "Update vectors", "description": "Update specified named vectors on points, keep unspecified vectors intact.", "operationId": "update_vectors", "requestBody": { "description": "Update named vectors on points", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateVectors" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to update from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/points/vectors/delete": { "post": { "tags": [ "Points" ], "summary": "Delete vectors", "description": "Delete named vectors from the given points.", "operationId": "delete_vectors", "requestBody": { "description": "Delete named vectors from points", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteVectors" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to delete from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/points/payload": { "post": { "tags": [ "Points" ], "summary": "Set payload", "description": "Set payload values for points", "operationId": "set_payload", "requestBody": { "description": "Set payload on points", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetPayload" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to set from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } }, "put": { "tags": [ "Points" ], "summary": "Overwrite payload", "description": "Replace full payload of points with new one", "operationId": "overwrite_payload", "requestBody": { "description": "Payload and points selector", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetPayload" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to set from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/points/payload/delete": { "post": { "tags": [ "Points" ], "summary": "Delete payload", "description": "Delete specified key payload for points", "operationId": "delete_payload", "requestBody": { "description": "delete payload on points", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeletePayload" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to delete from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/points/payload/clear": { "post": { "tags": [ "Points" ], "summary": "Clear payload", "description": "Remove all payload for specified points", "operationId": "clear_payload", "requestBody": { "description": "clear payload on points", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PointsSelector" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to clear payload from", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } }, "/collections/{collection_name}/points/batch": { "post": { "tags": [ "Points" ], "summary": "Batch update points", "description": "Apply a series of update operations for points, vectors and payloads", "operationId": "batch_update", "requestBody": { "description": "update operations", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateOperations" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to apply operations on", "required": true, "schema": { "type": "string" } }, { "name": "wait", "in": "query", "description": "If true, wait for changes to actually happen", "required": false, "schema": { "type": "boolean" } }, { "name": "ordering", "in": "query", "description": "define ordering guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/WriteOrdering" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/UpdateResult" } } } } } } } } } }, "/collections/{collection_name}/points/scroll": { "post": { "tags": [ "Points" ], "summary": "Scroll points", "description": "Scroll request - paginate over all points which matches given filtering condition", "operationId": "scroll_points", "requestBody": { "description": "Pagination and filter parameters", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScrollRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to retrieve from", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/ScrollResult" } } } } } } } } }, "/collections/{collection_name}/points/search": { "post": { "tags": [ "Search" ], "summary": "Search points", "description": "Retrieve closest points based on vector similarity and given filtering conditions", "operationId": "search_points", "requestBody": { "description": "Search request with optional filtering", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } } } } } } } } } }, "/collections/{collection_name}/points/search/batch": { "post": { "tags": [ "Search" ], "summary": "Search batch points", "description": "Retrieve by batch the closest points based on vector similarity and given filtering conditions", "operationId": "search_batch_points", "requestBody": { "description": "Search batch request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchRequestBatch" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } } } } } } } } } } }, "/collections/{collection_name}/points/search/groups": { "post": { "tags": [ "Search" ], "summary": "Search point groups", "description": "Retrieve closest points based on vector similarity and given filtering conditions, grouped by a given payload field", "operationId": "search_point_groups", "requestBody": { "description": "Search request with optional filtering, grouped by a given payload field", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchGroupsRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/GroupsResult" } } } } } } } } }, "/collections/{collection_name}/points/recommend": { "post": { "tags": [ "Search" ], "summary": "Recommend points", "description": "Look for the points which are closer to stored positive examples and at the same time further to negative examples.", "operationId": "recommend_points", "requestBody": { "description": "Request points based on positive and negative examples.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RecommendRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } } } } } } } } } }, "/collections/{collection_name}/points/recommend/batch": { "post": { "tags": [ "Search" ], "summary": "Recommend batch points", "description": "Look for the points which are closer to stored positive examples and at the same time further to negative examples.", "operationId": "recommend_batch_points", "requestBody": { "description": "Request points based on positive and negative examples.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RecommendRequestBatch" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } } } } } } } } } } }, "/collections/{collection_name}/points/recommend/groups": { "post": { "tags": [ "Search" ], "summary": "Recommend point groups", "description": "Look for the points which are closer to stored positive examples and at the same time further to negative examples, grouped by a given payload field.", "operationId": "recommend_point_groups", "requestBody": { "description": "Request points based on positive and negative examples, grouped by a payload field.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RecommendGroupsRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/GroupsResult" } } } } } } } } }, "/collections/{collection_name}/points/discover": { "post": { "tags": [ "Search" ], "summary": "Discover points", "description": "Use context and a target to find the most similar points to the target, constrained by the context.\\nWhen using only the context (without a target), a special search - called context search - is performed where pairs of points are used to generate a loss that guides the search towards the zone where most positive examples overlap. This means that the score minimizes the scenario of finding a point closer to a negative than to a positive part of a pair.\\nSince the score of a context relates to loss, the maximum score a point can get is 0.0, and it becomes normal that many points can have a score of 0.0.\\nWhen using target (with or without context), the score behaves a little different: The integer part of the score represents the rank with respect to the context, while the decimal part of the score relates to the distance to the target. The context part of the score for each pair is calculated +1 if the point is closer to a positive than to a negative part of a pair, and -1 otherwise.\\n", "operationId": "discover_points", "requestBody": { "description": "Request points based on {positive, negative} pairs of examples, and/or a target", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DiscoverRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } } } } } } } } } }, "/collections/{collection_name}/points/discover/batch": { "post": { "tags": [ "Search" ], "summary": "Discover batch points", "description": "Look for points based on target and/or positive and negative example pairs, in batch.", "operationId": "discover_batch_points", "requestBody": { "description": "Batch request points based on { positive, negative } pairs of examples, and/or a target.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DiscoverRequestBatch" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } } } } } } } } } } }, "/collections/{collection_name}/points/count": { "post": { "tags": [ "Points" ], "summary": "Count points", "description": "Count points which matches given filtering condition", "operationId": "count_points", "requestBody": { "description": "Request counts of points which matches given filtering condition", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CountRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to count in", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/CountResult" } } } } } } } } }, "/collections/{collection_name}/facet": { "post": { "tags": [ "Points" ], "summary": "Facet a payload key with a given filter.", "description": "Count points that satisfy the given filter for each unique value of a payload key.", "operationId": "facet", "requestBody": { "description": "Request counts of points for each unique value of a payload key", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FacetRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to facet in", "required": true, "schema": { "type": "string" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/FacetResponse" } } } } } } } } }, "/collections/{collection_name}/points/query": { "post": { "tags": [ "Search" ], "summary": "Query points", "description": "Universally query points. This endpoint covers all capabilities of search, recommend, discover, filters. But also enables hybrid and multi-stage queries.", "operationId": "query_points", "requestBody": { "description": "Describes the query to make to the collection", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to query", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/QueryResponse" } } } } } } } } }, "/collections/{collection_name}/points/query/batch": { "post": { "tags": [ "Search" ], "summary": "Query points in batch", "description": "Universally query points in batch. This endpoint covers all capabilities of search, recommend, discover, filters. But also enables hybrid and multi-stage queries.", "operationId": "query_batch_points", "requestBody": { "description": "Describes the queries to make to the collection", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryRequestBatch" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to query", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/QueryResponse" } } } } } } } } } }, "/collections/{collection_name}/points/query/groups": { "post": { "tags": [ "Search" ], "summary": "Query points, grouped by a given payload field", "description": "Universally query points, grouped by a given payload field", "operationId": "query_points_groups", "requestBody": { "description": "Describes the query to make to the collection", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryGroupsRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to query", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/GroupsResult" } } } } } } } } }, "/collections/{collection_name}/points/search/matrix/pairs": { "post": { "tags": [ "Search" ], "summary": "Search points matrix distance pairs", "description": "Compute distance matrix for sampled points with a pair based output format", "operationId": "search_matrix_pairs", "requestBody": { "description": "Search matrix request with optional filtering", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchMatrixRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/SearchMatrixPairsResponse" } } } } } } } } }, "/collections/{collection_name}/points/search/matrix/offsets": { "post": { "tags": [ "Search" ], "summary": "Search points matrix distance offsets", "description": "Compute distance matrix for sampled points with an offset based output format", "operationId": "search_matrix_offsets", "requestBody": { "description": "Search matrix request with optional filtering", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchMatrixRequest" } } } }, "parameters": [ { "name": "collection_name", "in": "path", "description": "Name of the collection to search in", "required": true, "schema": { "type": "string" } }, { "name": "consistency", "in": "query", "description": "Define read consistency guarantees for the operation", "required": false, "schema": { "$ref": "#/components/schemas/ReadConsistency" } }, { "name": "timeout", "in": "query", "description": "If set, overrides global timeout for this request. Unit is seconds.", "required": false, "schema": { "type": "integer", "minimum": 1 } } ], "responses": { "default": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "4XX": { "description": "error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "200": { "description": "successful operation", "content": { "application/json": { "schema": { "type": "object", "properties": { "usage": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/HardwareUsage" }, { "nullable": true } ] }, "time": { "type": "number", "format": "float", "description": "Time spent to process this request", "example": 0.002 }, "status": { "type": "string", "example": "ok" }, "result": { "$ref": "#/components/schemas/SearchMatrixOffsetsResponse" } } } } } } } } } }, "openapi": "3.0.1", "security": [ { "api-key": [] }, { "bearerAuth": [] }, {} ], "info": { "title": "Qdrant API", "description": "API description for Qdrant vector search engine.\\n\\nThis document describes CRUD and search operations on collections of points (vectors with payload).\\n\\nQdrant supports any combinations of \`should\`, \`min_should\`, \`must\` and \`must_not\` conditions, which makes it possible to use in applications when object could not be described solely by vector. It could be location features, availability flags, and other custom properties businesses should take into account.\\n## Examples\\nThis examples cover the most basic use-cases - collection creation and basic vector search.\\n### Create collection\\nFirst - let's create a collection with dot-production metric.\\n\`\`\`\\ncurl -X PUT 'http://localhost:6333/collections/test_collection' \\\\\\n -H 'Content-Type: application/json' \\\\\\n --data-raw '{\\n \\"vectors\\": {\\n \\"size\\": 4,\\n \\"distance\\": \\"Dot\\"\\n }\\n }'\\n\\n\`\`\`\\nExpected response:\\n\`\`\`\\n{\\n \\"result\\": true,\\n \\"status\\": \\"ok\\",\\n \\"time\\": 0.031095451\\n}\\n\`\`\`\\nWe can ensure that collection was created:\\n\`\`\`\\ncurl 'http://localhost:6333/collections/test_collection'\\n\`\`\`\\nExpected response:\\n\`\`\`\\n{\\n \\"result\\": {\\n \\"status\\": \\"green\\",\\n \\"vectors_count\\": 0,\\n \\"segments_count\\": 5,\\n \\"disk_data_size\\": 0,\\n \\"ram_data_size\\": 0,\\n \\"config\\": {\\n \\"params\\": {\\n \\"vectors\\": {\\n \\"size\\": 4,\\n \\"distance\\": \\"Dot\\"\\n }\\n },\\n \\"hnsw_config\\": {\\n \\"m\\": 16,\\n \\"ef_construct\\": 100,\\n \\"full_scan_threshold\\": 10000\\n },\\n \\"optimizer_config\\": {\\n \\"deleted_threshold\\": 0.2,\\n \\"vacuum_min_vector_number\\": 1000,\\n \\"default_segment_number\\": 2,\\n \\"max_segment_size\\": null,\\n \\"memmap_threshold\\": null,\\n \\"indexing_threshold\\": 20000,\\n \\"flush_interval_sec\\": 5,\\n \\"max_optimization_threads\\": null\\n },\\n \\"wal_config\\": {\\n \\"wal_capacity_mb\\": 32,\\n \\"wal_segments_ahead\\": 0\\n }\\n }\\n },\\n \\"status\\": \\"ok\\",\\n \\"time\\": 2.1199e-05\\n}\\n\`\`\`\\n\\n### Add points\\nLet's now add vectors with some payload:\\n\`\`\`\\ncurl -L -X PUT 'http://localhost:6333/collections/test_collection/points?wait=true' \\\\ -H 'Content-Type: application/json' \\\\ --data-raw '{\\n \\"points\\": [\\n {\\"id\\": 1, \\"vector\\": [0.05, 0.61, 0.76, 0.74], \\"payload\\": {\\"city\\": \\"Berlin\\"}},\\n {\\"id\\": 2, \\"vector\\": [0.19, 0.81, 0.75, 0.11], \\"payload\\": {\\"city\\": [\\"Berlin\\", \\"London\\"] }},\\n {\\"id\\": 3, \\"vector\\": [0.36, 0.55, 0.47, 0.94], \\"payload\\": {\\"city\\": [\\"Berlin\\", \\"Moscow\\"] }},\\n {\\"id\\": 4, \\"vector\\": [0.18, 0.01, 0.85, 0.80], \\"payload\\": {\\"city\\": [\\"London\\", \\"Moscow\\"] }},\\n {\\"id\\": 5, \\"vector\\": [0.24, 0.18, 0.22, 0.44], \\"payload\\": {\\"count\\": [0]}},\\n {\\"id\\": 6, \\"vector\\": [0.35, 0.08, 0.11, 0.44]}\\n ]\\n}'\\n\`\`\`\\nExpected response:\\n\`\`\`\\n{\\n \\"result\\": {\\n \\"operation_id\\": 0,\\n \\"status\\": \\"completed\\"\\n },\\n \\"status\\": \\"ok\\",\\n \\"time\\": 0.000206061\\n}\\n\`\`\`\\n### Search with filtering\\nLet's start with a basic request:\\n\`\`\`\\ncurl -L -X POST 'http://localhost:6333/collections/test_collection/points/search' \\\\ -H 'Content-Type: application/json' \\\\ --data-raw '{\\n \\"vector\\": [0.2,0.1,0.9,0.7],\\n \\"top\\": 3\\n}'\\n\`\`\`\\nExpected response:\\n\`\`\`\\n{\\n \\"result\\": [\\n { \\"id\\": 4, \\"score\\": 1.362, \\"payload\\": null, \\"version\\": 0 },\\n { \\"id\\": 1, \\"score\\": 1.273, \\"payload\\": null, \\"version\\": 0 },\\n { \\"id\\": 3, \\"score\\": 1.208, \\"payload\\": null, \\"version\\": 0 }\\n ],\\n \\"status\\": \\"ok\\",\\n \\"time\\": 0.000055785\\n}\\n\`\`\`\\nBut result is different if we add a filter:\\n\`\`\`\\ncurl -L -X POST 'http://localhost:6333/collections/test_collection/points/search' \\\\ -H 'Content-Type: application/json' \\\\ --data-raw '{\\n \\"filter\\": {\\n \\"should\\": [\\n {\\n \\"key\\": \\"city\\",\\n \\"match\\": {\\n \\"value\\": \\"London\\"\\n }\\n }\\n ]\\n },\\n \\"vector\\": [0.2, 0.1, 0.9, 0.7],\\n \\"top\\": 3\\n}'\\n\`\`\`\\nExpected response:\\n\`\`\`\\n{\\n \\"result\\": [\\n { \\"id\\": 4, \\"score\\": 1.362, \\"payload\\": null, \\"version\\": 0 },\\n { \\"id\\": 2, \\"score\\": 0.871, \\"payload\\": null, \\"version\\": 0 }\\n ],\\n \\"status\\": \\"ok\\",\\n \\"time\\": 0.000093972\\n}\\n\`\`\`\\n", "contact": { "email": "andrey@vasnetsov.com" }, "license": { "name": "Apache 2.0", "url": "http://www.apache.org/licenses/LICENSE-2.0.html" }, "version": "master" }, "externalDocs": { "description": "Find out more about Qdrant applications and demo", "url": "https://qdrant.tech/documentation/" }, "servers": [ { "url": "{protocol}://{hostname}:{port}", "variables": { "protocol": { "enum": [ "http", "https" ], "default": "http" }, "hostname": { "default": "localhost" }, "port": { "default": "6333" } } } ], "tags": [ { "name": "Collections", "description": "Searchable collections of points." }, { "name": "Points", "description": "Float-point vectors with payload." }, { "name": "Search", "description": "Find points in a collection." }, { "name": "Aliases", "description": "Additional names for existing collections." }, { "name": "Indexes", "description": "Indexes for payloads associated with points." }, { "name": "Distributed", "description": "Service distributed setup." }, { "name": "Snapshots", "description": "Storage and collections snapshots." }, { "name": "Service", "description": "Qdrant service utilities." }, { "name": "Beta", "description": "Beta features, do not depend on these yet." } ], "components": { "securitySchemes": { "api-key": { "type": "apiKey", "in": "header", "name": "api-key", "description": "Authorization key, either read-write or read-only" }, "bearerAuth": { "type": "http", "scheme": "bearer" } }, "schemas": { "ErrorResponse": { "type": "object", "properties": { "time": { "type": "number", "format": "float", "description": "Time spent to process this request" }, "status": { "type": "object", "properties": { "error": { "type": "string", "description": "Description of the occurred error." } } }, "result": { "type": "object", "nullable": true } } }, "CollectionsResponse": { "type": "object", "required": [ "collections" ], "properties": { "collections": { "type": "array", "items": { "$ref": "#/components/schemas/CollectionDescription" } } }, "example": { "collections": [ { "name": "arivx-title" }, { "name": "arivx-abstract" }, { "name": "medium-title" }, { "name": "medium-text" } ] } }, "CollectionDescription": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string" } } }, "CollectionInfo": { "description": "Current statistics and configuration of the collection", "type": "object", "required": [ "config", "optimizer_status", "payload_schema", "segments_count", "status" ], "properties": { "status": { "$ref": "#/components/schemas/CollectionStatus" }, "optimizer_status": { "$ref": "#/components/schemas/OptimizersStatus" }, "vectors_count": { "description": "DEPRECATED: Approximate number of vectors in collection. All vectors in collection are available for querying. Calculated as \`points_count x vectors_per_point\`. Where \`vectors_per_point\` is a number of named vectors in schema.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "indexed_vectors_count": { "description": "Approximate number of indexed vectors in the collection. Indexed vectors in large segments are faster to query, as it is stored in a specialized vector index.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "points_count": { "description": "Approximate number of points (vectors + payloads) in collection. Each point could be accessed by unique id.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "segments_count": { "description": "Number of segments in collection. Each segment has independent vector as payload indexes", "type": "integer", "format": "uint", "minimum": 0 }, "config": { "$ref": "#/components/schemas/CollectionConfig" }, "payload_schema": { "description": "Types of stored payload", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PayloadIndexInfo" } } } }, "CollectionStatus": { "description": "Current state of the collection. \`Green\` - all good. \`Yellow\` - optimization is running, 'Grey' - optimizations are possible but not triggered, \`Red\` - some operations failed and was not recovered", "type": "string", "enum": [ "green", "yellow", "grey", "red" ] }, "OptimizersStatus": { "description": "Current state of the collection", "oneOf": [ { "description": "Optimizers are reporting as expected", "type": "string", "enum": [ "ok" ] }, { "description": "Something wrong happened with optimizers", "type": "object", "required": [ "error" ], "properties": { "error": { "type": "string" } }, "additionalProperties": false } ] }, "CollectionConfig": { "description": "Information about the collection configuration", "type": "object", "required": [ "hnsw_config", "optimizer_config", "params" ], "properties": { "params": { "$ref": "#/components/schemas/CollectionParams" }, "hnsw_config": { "$ref": "#/components/schemas/HnswConfig" }, "optimizer_config": { "$ref": "#/components/schemas/OptimizersConfig" }, "wal_config": { "anyOf": [ { "$ref": "#/components/schemas/WalConfig" }, { "nullable": true } ] }, "quantization_config": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/QuantizationConfig" }, { "nullable": true } ] }, "strict_mode_config": { "anyOf": [ { "$ref": "#/components/schemas/StrictModeConfig" }, { "nullable": true } ] } } }, "CollectionParams": { "type": "object", "properties": { "vectors": { "$ref": "#/components/schemas/VectorsConfig" }, "shard_number": { "description": "Number of shards the collection has", "default": 1, "type": "integer", "format": "uint32", "minimum": 1 }, "sharding_method": { "description": "Sharding method Default is Auto - points are distributed across all available shards Custom - points are distributed across shards according to shard key", "anyOf": [ { "$ref": "#/components/schemas/ShardingMethod" }, { "nullable": true } ] }, "replication_factor": { "description": "Number of replicas for each shard", "default": 1, "type": "integer", "format": "uint32", "minimum": 1 }, "write_consistency_factor": { "description": "Defines how many replicas should apply the operation for us to consider it successful. Increasing this number will make the collection more resilient to inconsistencies, but will also make it fail if not enough replicas are available. Does not have any performance impact.", "default": 1, "type": "integer", "format": "uint32", "minimum": 1 }, "read_fan_out_factor": { "description": "Defines how many additional replicas should be processing read request at the same time. Default value is Auto, which means that fan-out will be determined automatically based on the busyness of the local replica. Having more than 0 might be useful to smooth latency spikes of individual nodes.", "type": "integer", "format": "uint32", "minimum": 0, "nullable": true }, "on_disk_payload": { "description": "If true - point's payload will not be stored in memory. It will be read from the disk every time it is requested. This setting saves RAM by (slightly) increasing the response time. Note: those payload values that are involved in filtering and are indexed - remain in RAM.\\n\\nDefault: true", "default": true, "type": "boolean" }, "sparse_vectors": { "description": "Configuration of the sparse vector storage", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/SparseVectorParams" }, "nullable": true } } }, "VectorsConfig": { "description": "Vector params separator for single and multiple vector modes Single mode:\\n\\n{ \\"size\\": 128, \\"distance\\": \\"Cosine\\" }\\n\\nor multiple mode:\\n\\n{ \\"default\\": { \\"size\\": 128, \\"distance\\": \\"Cosine\\" } }", "anyOf": [ { "$ref": "#/components/schemas/VectorParams" }, { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/VectorParams" } } ] }, "VectorParams": { "description": "Params of single vector data storage", "type": "object", "required": [ "distance", "size" ], "properties": { "size": { "description": "Size of a vectors used", "type": "integer", "format": "uint64", "minimum": 1 }, "distance": { "$ref": "#/components/schemas/Distance" }, "hnsw_config": { "description": "Custom params for HNSW index. If none - values from collection configuration are used.", "anyOf": [ { "$ref": "#/components/schemas/HnswConfigDiff" }, { "nullable": true } ] }, "quantization_config": { "description": "Custom params for quantization. If none - values from collection configuration are used.", "anyOf": [ { "$ref": "#/components/schemas/QuantizationConfig" }, { "nullable": true } ] }, "on_disk": { "description": "If true, vectors are served from disk, improving RAM usage at the cost of latency Default: false", "type": "boolean", "nullable": true }, "datatype": { "description": "Defines which datatype should be used to represent vectors in the storage. Choosing different datatypes allows to optimize memory usage and performance vs accuracy.\\n\\n- For \`float32\` datatype - vectors are stored as single-precision floating point numbers, 4 bytes. - For \`float16\` datatype - vectors are stored as half-precision floating point numbers, 2 bytes. - For \`uint8\` datatype - vectors are stored as unsigned 8-bit integers, 1 byte. It expects vector elements to be in range \`[0, 255]\`.", "anyOf": [ { "$ref": "#/components/schemas/Datatype" }, { "nullable": true } ] }, "multivector_config": { "anyOf": [ { "$ref": "#/components/schemas/MultiVectorConfig" }, { "nullable": true } ] } } }, "Distance": { "description": "Type of internal tags, build from payload Distance function types used to compare vectors", "type": "string", "enum": [ "Cosine", "Euclid", "Dot", "Manhattan" ] }, "HnswConfigDiff": { "type": "object", "properties": { "m": { "description": "Number of edges per node in the index graph. Larger the value - more accurate the search, more space required.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "ef_construct": { "description": "Number of neighbours to consider during the index building. Larger the value - more accurate the search, more time required to build the index.", "type": "integer", "format": "uint", "minimum": 4, "nullable": true }, "full_scan_threshold": { "description": "Minimal size (in kilobytes) of vectors for additional payload-based indexing. If payload chunk is smaller than \`full_scan_threshold_kb\` additional indexing won't be used - in this case full-scan search should be preferred by query planner and additional indexing is not required. Note: 1Kb = 1 vector of size 256", "type": "integer", "format": "uint", "minimum": 10, "nullable": true }, "max_indexing_threads": { "description": "Number of parallel threads used for background index building. If 0 - automatically select from 8 to 16. Best to keep between 8 and 16 to prevent likelihood of building broken/inefficient HNSW graphs. On small CPUs, less threads are used.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "on_disk": { "description": "Store HNSW index on disk. If set to false, the index will be stored in RAM. Default: false", "type": "boolean", "nullable": true }, "payload_m": { "description": "Custom M param for additional payload-aware HNSW links. If not set, default M will be used.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true } } }, "QuantizationConfig": { "anyOf": [ { "$ref": "#/components/schemas/ScalarQuantization" }, { "$ref": "#/components/schemas/ProductQuantization" }, { "$ref": "#/components/schemas/BinaryQuantization" } ] }, "ScalarQuantization": { "type": "object", "required": [ "scalar" ], "properties": { "scalar": { "$ref": "#/components/schemas/ScalarQuantizationConfig" } } }, "ScalarQuantizationConfig": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/ScalarType" }, "quantile": { "description": "Quantile for quantization. Expected value range in [0.5, 1.0]. If not set - use the whole range of values", "type": "number", "format": "float", "maximum": 1, "minimum": 0.5, "nullable": true }, "always_ram": { "description": "If true - quantized vectors always will be stored in RAM, ignoring the config of main storage", "type": "boolean", "nullable": true } } }, "ScalarType": { "type": "string", "enum": [ "int8" ] }, "ProductQuantization": { "type": "object", "required": [ "product" ], "properties": { "product": { "$ref": "#/components/schemas/ProductQuantizationConfig" } } }, "ProductQuantizationConfig": { "type": "object", "required": [ "compression" ], "properties": { "compression": { "$ref": "#/components/schemas/CompressionRatio" }, "always_ram": { "type": "boolean", "nullable": true } } }, "CompressionRatio": { "type": "string", "enum": [ "x4", "x8", "x16", "x32", "x64" ] }, "BinaryQuantization": { "type": "object", "required": [ "binary" ], "properties": { "binary": { "$ref": "#/components/schemas/BinaryQuantizationConfig" } } }, "BinaryQuantizationConfig": { "type": "object", "properties": { "always_ram": { "type": "boolean", "nullable": true } } }, "Datatype": { "type": "string", "enum": [ "float32", "uint8", "float16" ] }, "MultiVectorConfig": { "type": "object", "required": [ "comparator" ], "properties": { "comparator": { "$ref": "#/components/schemas/MultiVectorComparator" } } }, "MultiVectorComparator": { "type": "string", "enum": [ "max_sim" ] }, "ShardingMethod": { "type": "string", "enum": [ "auto", "custom" ] }, "SparseVectorParams": { "description": "Params of single sparse vector data storage", "type": "object", "properties": { "index": { "description": "Custom params for index. If none - values from collection configuration are used.", "anyOf": [ { "$ref": "#/components/schemas/SparseIndexParams" }, { "nullable": true } ] }, "modifier": { "description": "Configures addition value modifications for sparse vectors. Default: none", "anyOf": [ { "$ref": "#/components/schemas/Modifier" }, { "nullable": true } ] } } }, "SparseIndexParams": { "description": "Configuration for sparse inverted index.", "type": "object", "properties": { "full_scan_threshold": { "description": "We prefer a full scan search upto (excluding) this number of vectors.\\n\\nNote: this is number of vectors, not KiloBytes.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "on_disk": { "description": "Store index on disk. If set to false, the index will be stored in RAM. Default: false", "type": "boolean", "nullable": true }, "datatype": { "description": "Defines which datatype should be used for the index. Choosing different datatypes allows to optimize memory usage and performance vs accuracy.\\n\\n- For \`float32\` datatype - vectors are stored as single-precision floating point numbers, 4 bytes. - For \`float16\` datatype - vectors are stored as half-precision floating point numbers, 2 bytes. - For \`uint8\` datatype - vectors are quantized to unsigned 8-bit integers, 1 byte. Quantization to fit byte range \`[0, 255]\` happens during indexing automatically, so the actual vector data does not need to conform to this range.", "anyOf": [ { "$ref": "#/components/schemas/Datatype" }, { "nullable": true } ] } } }, "Modifier": { "description": "If used, include weight modification, which will be applied to sparse vectors at query time: None - no modification (default) Idf - inverse document frequency, based on statistics of the collection", "type": "string", "enum": [ "none", "idf" ] }, "HnswConfig": { "description": "Config of HNSW index", "type": "object", "required": [ "ef_construct", "full_scan_threshold", "m" ], "properties": { "m": { "description": "Number of edges per node in the index graph. Larger the value - more accurate the search, more space required.", "type": "integer", "format": "uint", "minimum": 0 }, "ef_construct": { "description": "Number of neighbours to consider during the index building. Larger the value - more accurate the search, more time required to build index.", "type": "integer", "format": "uint", "minimum": 4 }, "full_scan_threshold": { "description": "Minimal size (in KiloBytes) of vectors for additional payload-based indexing. If payload chunk is smaller than \`full_scan_threshold_kb\` additional indexing won't be used - in this case full-scan search should be preferred by query planner and additional indexing is not required. Note: 1Kb = 1 vector of size 256", "type": "integer", "format": "uint", "minimum": 0 }, "max_indexing_threads": { "description": "Number of parallel threads used for background index building. If 0 - automatically select from 8 to 16. Best to keep between 8 and 16 to prevent likelihood of slow building or broken/inefficient HNSW graphs. On small CPUs, less threads are used.", "default": 0, "type": "integer", "format": "uint", "minimum": 0 }, "on_disk": { "description": "Store HNSW index on disk. If set to false, index will be stored in RAM. Default: false", "type": "boolean", "nullable": true }, "payload_m": { "description": "Custom M param for hnsw graph built for payload index. If not set, default M will be used.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true } } }, "OptimizersConfig": { "type": "object", "required": [ "default_segment_number", "deleted_threshold", "flush_interval_sec", "vacuum_min_vector_number" ], "properties": { "deleted_threshold": { "description": "The minimal fraction of deleted vectors in a segment, required to perform segment optimization", "type": "number", "format": "double", "maximum": 1, "minimum": 0 }, "vacuum_min_vector_number": { "description": "The minimal number of vectors in a segment, required to perform segment optimization", "type": "integer", "format": "uint", "minimum": 100 }, "default_segment_number": { "description": "Target amount of segments optimizer will try to keep. Real amount of segments may vary depending on multiple parameters: - Amount of stored points - Current write RPS\\n\\nIt is recommended to select default number of segments as a factor of the number of search threads, so that each segment would be handled evenly by one of the threads. If \`default_segment_number = 0\`, will be automatically selected by the number of available CPUs.", "type": "integer", "format": "uint", "minimum": 0 }, "max_segment_size": { "description": "Do not create segments larger this size (in kilobytes). Large segments might require disproportionately long indexation times, therefore it makes sense to limit the size of segments.\\n\\nIf indexing speed is more important - make this parameter lower. If search speed is more important - make this parameter higher. Note: 1Kb = 1 vector of size 256 If not set, will be automatically selected considering the number of available CPUs.", "default": null, "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "memmap_threshold": { "description": "Maximum size (in kilobytes) of vectors to store in-memory per segment. Segments larger than this threshold will be stored as read-only memmapped file.\\n\\nMemmap storage is disabled by default, to enable it, set this threshold to a reasonable value.\\n\\nTo disable memmap storage, set this to \`0\`. Internally it will use the largest threshold possible.\\n\\nNote: 1Kb = 1 vector of size 256", "default": null, "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "indexing_threshold": { "description": "Maximum size (in kilobytes) of vectors allowed for plain index, exceeding this threshold will enable vector indexing\\n\\nDefault value is 20,000, based on .\\n\\nTo disable vector indexing, set to \`0\`.\\n\\nNote: 1kB = 1 vector of size 256.", "default": null, "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "flush_interval_sec": { "description": "Minimum interval between forced flushes.", "type": "integer", "format": "uint64", "minimum": 0 }, "max_optimization_threads": { "description": "Max number of threads (jobs) for running optimizations per shard. Note: each optimization job will also use \`max_indexing_threads\` threads by itself for index building. If null - have no limit and choose dynamically to saturate CPU. If 0 - no optimization threads, optimizations will be disabled.", "default": null, "type": "integer", "format": "uint", "minimum": 0, "nullable": true } } }, "WalConfig": { "type": "object", "required": [ "wal_capacity_mb", "wal_segments_ahead" ], "properties": { "wal_capacity_mb": { "description": "Size of a single WAL segment in MB", "type": "integer", "format": "uint", "minimum": 1 }, "wal_segments_ahead": { "description": "Number of WAL segments to create ahead of actually used ones", "type": "integer", "format": "uint", "minimum": 0 } } }, "StrictModeConfig": { "type": "object", "properties": { "enabled": { "description": "Whether strict mode is enabled for a collection or not.", "type": "boolean", "nullable": true }, "max_query_limit": { "description": "Max allowed \`limit\` parameter for all APIs that don't have their own max limit.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "max_timeout": { "description": "Max allowed \`timeout\` parameter.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "unindexed_filtering_retrieve": { "description": "Allow usage of unindexed fields in retrieval based (eg. search) filters.", "type": "boolean", "nullable": true }, "unindexed_filtering_update": { "description": "Allow usage of unindexed fields in filtered updates (eg. delete by payload).", "type": "boolean", "nullable": true }, "search_max_hnsw_ef": { "description": "Max HNSW value allowed in search parameters.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "search_allow_exact": { "description": "Whether exact search is allowed or not.", "type": "boolean", "nullable": true }, "search_max_oversampling": { "description": "Max oversampling value allowed in search.", "type": "number", "format": "double", "nullable": true }, "upsert_max_batchsize": { "description": "Max batchsize when upserting", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "max_collection_vector_size_bytes": { "description": "Max size of a collections vector storage in bytes, ignoring replicas.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "read_rate_limit": { "description": "Max number of read operations per minute per replica", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "write_rate_limit": { "description": "Max number of write operations per minute per replica", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "max_collection_payload_size_bytes": { "description": "Max size of a collections payload storage in bytes", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "filter_max_conditions": { "description": "Max conditions a filter can have.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "condition_max_size": { "description": "Max size of a condition, eg. items in \`MatchAny\`.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "multivector_config": { "description": "Multivector configuration", "anyOf": [ { "$ref": "#/components/schemas/StrictModeMultivectorConfig" }, { "nullable": true } ] }, "sparse_config": { "description": "Sparse vector configuration", "anyOf": [ { "$ref": "#/components/schemas/StrictModeSparseConfig" }, { "nullable": true } ] } } }, "StrictModeMultivectorConfig": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/StrictModeMultivector" } }, "StrictModeMultivector": { "type": "object", "properties": { "max_vectors": { "description": "Max number of vectors in a multivector", "type": "integer", "format": "uint", "minimum": 1, "nullable": true } } }, "StrictModeSparseConfig": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/StrictModeSparse" } }, "StrictModeSparse": { "type": "object", "properties": { "max_length": { "description": "Max length of sparse vector", "type": "integer", "format": "uint", "minimum": 1, "nullable": true } } }, "PayloadIndexInfo": { "description": "Display payload field type & index information", "type": "object", "required": [ "data_type", "points" ], "properties": { "data_type": { "$ref": "#/components/schemas/PayloadSchemaType" }, "params": { "anyOf": [ { "$ref": "#/components/schemas/PayloadSchemaParams" }, { "nullable": true } ] }, "points": { "description": "Number of points indexed with this index", "type": "integer", "format": "uint", "minimum": 0 } } }, "PayloadSchemaType": { "description": "All possible names of payload types", "type": "string", "enum": [ "keyword", "integer", "float", "geo", "text", "bool", "datetime", "uuid" ] }, "PayloadSchemaParams": { "description": "Payload type with parameters", "anyOf": [ { "$ref": "#/components/schemas/KeywordIndexParams" }, { "$ref": "#/components/schemas/IntegerIndexParams" }, { "$ref": "#/components/schemas/FloatIndexParams" }, { "$ref": "#/components/schemas/GeoIndexParams" }, { "$ref": "#/components/schemas/TextIndexParams" }, { "$ref": "#/components/schemas/BoolIndexParams" }, { "$ref": "#/components/schemas/DatetimeIndexParams" }, { "$ref": "#/components/schemas/UuidIndexParams" } ] }, "KeywordIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/KeywordIndexType" }, "is_tenant": { "description": "If true - used for tenant optimization. Default: false.", "type": "boolean", "nullable": true }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "KeywordIndexType": { "type": "string", "enum": [ "keyword" ] }, "IntegerIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/IntegerIndexType" }, "lookup": { "description": "If true - support direct lookups.", "type": "boolean", "nullable": true }, "range": { "description": "If true - support ranges filters.", "type": "boolean", "nullable": true }, "is_principal": { "description": "If true - use this key to organize storage of the collection data. This option assumes that this key will be used in majority of filtered requests.", "type": "boolean", "nullable": true }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "IntegerIndexType": { "type": "string", "enum": [ "integer" ] }, "FloatIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/FloatIndexType" }, "is_principal": { "description": "If true - use this key to organize storage of the collection data. This option assumes that this key will be used in majority of filtered requests.", "type": "boolean", "nullable": true }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "FloatIndexType": { "type": "string", "enum": [ "float" ] }, "GeoIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/GeoIndexType" }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "GeoIndexType": { "type": "string", "enum": [ "geo" ] }, "TextIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/TextIndexType" }, "tokenizer": { "$ref": "#/components/schemas/TokenizerType" }, "min_token_len": { "description": "Minimum characters to be tokenized.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "max_token_len": { "description": "Maximum characters to be tokenized.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "lowercase": { "description": "If true, lowercase all tokens. Default: true.", "type": "boolean", "nullable": true }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "TextIndexType": { "type": "string", "enum": [ "text" ] }, "TokenizerType": { "type": "string", "enum": [ "prefix", "whitespace", "word", "multilingual" ] }, "BoolIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/BoolIndexType" }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "BoolIndexType": { "type": "string", "enum": [ "bool" ] }, "DatetimeIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/DatetimeIndexType" }, "is_principal": { "description": "If true - use this key to organize storage of the collection data. This option assumes that this key will be used in majority of filtered requests.", "type": "boolean", "nullable": true }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "DatetimeIndexType": { "type": "string", "enum": [ "datetime" ] }, "UuidIndexParams": { "type": "object", "required": [ "type" ], "properties": { "type": { "$ref": "#/components/schemas/UuidIndexType" }, "is_tenant": { "description": "If true - used for tenant optimization.", "type": "boolean", "nullable": true }, "on_disk": { "description": "If true, store the index on disk. Default: false.", "type": "boolean", "nullable": true } } }, "UuidIndexType": { "type": "string", "enum": [ "uuid" ] }, "PointRequest": { "type": "object", "required": [ "ids" ], "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "ids": { "description": "Look for points with ids", "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" } }, "with_payload": { "description": "Select which payload to return with the response. Default is true.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vector": { "$ref": "#/components/schemas/WithVector" } } }, "ShardKeySelector": { "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "type": "array", "items": { "$ref": "#/components/schemas/ShardKey" } } ] }, "ShardKey": { "anyOf": [ { "type": "string", "example": "region_1" }, { "type": "integer", "format": "uint64", "minimum": 0, "example": 12 } ] }, "ExtendedPointId": { "description": "Type, used for specifying point ID in user interface", "anyOf": [ { "type": "integer", "format": "uint64", "minimum": 0, "example": 42 }, { "type": "string", "format": "uuid", "example": "550e8400-e29b-41d4-a716-446655440000" } ] }, "WithPayloadInterface": { "description": "Options for specifying which payload to include or not", "anyOf": [ { "description": "If \`true\` - return all payload, If \`false\` - do not return payload", "type": "boolean" }, { "description": "Specify which fields to return", "type": "array", "items": { "type": "string" } }, { "$ref": "#/components/schemas/PayloadSelector" } ] }, "PayloadSelector": { "description": "Specifies how to treat payload selector", "anyOf": [ { "$ref": "#/components/schemas/PayloadSelectorInclude" }, { "$ref": "#/components/schemas/PayloadSelectorExclude" } ] }, "PayloadSelectorInclude": { "type": "object", "required": [ "include" ], "properties": { "include": { "description": "Only include this payload keys", "type": "array", "items": { "type": "string" } } }, "additionalProperties": false }, "PayloadSelectorExclude": { "type": "object", "required": [ "exclude" ], "properties": { "exclude": { "description": "Exclude this fields from returning payload", "type": "array", "items": { "type": "string" } } }, "additionalProperties": false }, "WithVector": { "description": "Options for specifying which vector to include", "anyOf": [ { "description": "If \`true\` - return all vector, If \`false\` - do not return vector", "type": "boolean" }, { "description": "Specify which vector to return", "type": "array", "items": { "type": "string" } } ] }, "Record": { "description": "Point data", "type": "object", "required": [ "id" ], "properties": { "id": { "$ref": "#/components/schemas/ExtendedPointId" }, "payload": { "description": "Payload - values assigned to the point", "anyOf": [ { "$ref": "#/components/schemas/Payload" }, { "nullable": true } ] }, "vector": { "description": "Vector of the point", "anyOf": [ { "$ref": "#/components/schemas/VectorStructOutput" }, { "nullable": true } ] }, "shard_key": { "description": "Shard Key", "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "nullable": true } ] }, "order_value": { "anyOf": [ { "$ref": "#/components/schemas/OrderValue" }, { "nullable": true } ] } } }, "Payload": { "type": "object", "additionalProperties": true, "example": { "city": "London", "color": "green" } }, "VectorStructOutput": { "description": "Vector data stored in Point", "anyOf": [ { "type": "array", "items": { "type": "number", "format": "float" }, "example": [ 0.875, 0.140625, 0.897599995136261 ] }, { "type": "array", "items": { "type": "array", "items": { "type": "number", "format": "float" } }, "example": [ [ 0.875, 0.140625, 0.11020000278949738 ], [ 0.7580000162124634, 0.28126001358032227, 0.9687100052833557 ], [ 0.6209999918937683, 0.42187801003456116, 0.9375 ] ] }, { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/VectorOutput" }, "example": { "image-embeddings": [ 0.8730000257492065, 0.140625, 0.897599995136261 ] } } ] }, "VectorOutput": { "description": "Vector Data stored in Point", "anyOf": [ { "type": "array", "items": { "type": "number", "format": "float" } }, { "$ref": "#/components/schemas/SparseVector" }, { "type": "array", "items": { "type": "array", "items": { "type": "number", "format": "float" } } } ] }, "SparseVector": { "description": "Sparse vector structure", "type": "object", "required": [ "indices", "values" ], "properties": { "indices": { "description": "Indices must be unique", "type": "array", "items": { "type": "integer", "format": "uint32", "minimum": 0 } }, "values": { "description": "Values and indices must be the same length", "type": "array", "items": { "type": "number", "format": "float" } } } }, "OrderValue": { "anyOf": [ { "type": "integer", "format": "int64", "example": 42 }, { "type": "number", "format": "double", "example": 42.5 } ] }, "SearchRequest": { "description": "Search request. Holds all conditions and parameters for the search of most similar points by vector similarity given the filtering restrictions.", "type": "object", "required": [ "limit", "vector" ], "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "vector": { "$ref": "#/components/schemas/NamedVectorStruct" }, "filter": { "description": "Look only for points which satisfies this conditions", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Additional search params", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "limit": { "description": "Max number of result to return", "type": "integer", "format": "uint", "minimum": 1 }, "offset": { "description": "Offset of the first result to return. May be used to paginate results. Note: large offset values may cause performance issues.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "with_payload": { "description": "Select which payload to return with the response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vector": { "description": "Options for specifying which vectors to include into response. Default is false.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] }, "score_threshold": { "description": "Define a minimal score threshold for the result. If defined, less similar results will not be returned. Score of the returned result might be higher or smaller than the threshold depending on the Distance function used. E.g. for cosine similarity only higher scores will be returned.", "type": "number", "format": "float", "nullable": true } } }, "NamedVectorStruct": { "description": "Vector data separator for named and unnamed modes Unnamed mode:\\n\\n{ \\"vector\\": [1.0, 2.0, 3.0] }\\n\\nor named mode:\\n\\n{ \\"vector\\": { \\"vector\\": [1.0, 2.0, 3.0], \\"name\\": \\"image-embeddings\\" } }", "anyOf": [ { "type": "array", "items": { "type": "number", "format": "float" } }, { "$ref": "#/components/schemas/NamedVector" }, { "$ref": "#/components/schemas/NamedSparseVector" } ] }, "NamedVector": { "description": "Dense vector data with name", "type": "object", "required": [ "name", "vector" ], "properties": { "name": { "description": "Name of vector data", "type": "string" }, "vector": { "description": "Vector data", "type": "array", "items": { "type": "number", "format": "float" } } } }, "NamedSparseVector": { "description": "Sparse vector data with name", "type": "object", "required": [ "name", "vector" ], "properties": { "name": { "description": "Name of vector data", "type": "string" }, "vector": { "$ref": "#/components/schemas/SparseVector" } } }, "Filter": { "type": "object", "properties": { "should": { "description": "At least one of those conditions should match", "default": null, "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "type": "array", "items": { "$ref": "#/components/schemas/Condition" } }, { "nullable": true } ] }, "min_should": { "description": "At least minimum amount of given conditions should match", "anyOf": [ { "$ref": "#/components/schemas/MinShould" }, { "nullable": true } ] }, "must": { "description": "All conditions must match", "default": null, "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "type": "array", "items": { "$ref": "#/components/schemas/Condition" } }, { "nullable": true } ] }, "must_not": { "description": "All conditions must NOT match", "default": null, "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "type": "array", "items": { "$ref": "#/components/schemas/Condition" } }, { "nullable": true } ] } }, "additionalProperties": false }, "Condition": { "anyOf": [ { "$ref": "#/components/schemas/FieldCondition" }, { "$ref": "#/components/schemas/IsEmptyCondition" }, { "$ref": "#/components/schemas/IsNullCondition" }, { "$ref": "#/components/schemas/HasIdCondition" }, { "$ref": "#/components/schemas/HasVectorCondition" }, { "$ref": "#/components/schemas/NestedCondition" }, { "$ref": "#/components/schemas/Filter" } ] }, "FieldCondition": { "description": "All possible payload filtering conditions", "type": "object", "required": [ "key" ], "properties": { "key": { "description": "Payload key", "type": "string" }, "match": { "description": "Check if point has field with a given value", "anyOf": [ { "$ref": "#/components/schemas/Match" }, { "nullable": true } ] }, "range": { "description": "Check if points value lies in a given range", "anyOf": [ { "$ref": "#/components/schemas/RangeInterface" }, { "nullable": true } ] }, "geo_bounding_box": { "description": "Check if points geo location lies in a given area", "anyOf": [ { "$ref": "#/components/schemas/GeoBoundingBox" }, { "nullable": true } ] }, "geo_radius": { "description": "Check if geo point is within a given radius", "anyOf": [ { "$ref": "#/components/schemas/GeoRadius" }, { "nullable": true } ] }, "geo_polygon": { "description": "Check if geo point is within a given polygon", "anyOf": [ { "$ref": "#/components/schemas/GeoPolygon" }, { "nullable": true } ] }, "values_count": { "description": "Check number of values of the field", "anyOf": [ { "$ref": "#/components/schemas/ValuesCount" }, { "nullable": true } ] } } }, "Match": { "description": "Match filter request", "anyOf": [ { "$ref": "#/components/schemas/MatchValue" }, { "$ref": "#/components/schemas/MatchText" }, { "$ref": "#/components/schemas/MatchAny" }, { "$ref": "#/components/schemas/MatchExcept" } ] }, "MatchValue": { "description": "Exact match of the given value", "type": "object", "required": [ "value" ], "properties": { "value": { "$ref": "#/components/schemas/ValueVariants" } } }, "ValueVariants": { "anyOf": [ { "type": "string" }, { "type": "integer", "format": "int64" }, { "type": "boolean" } ] }, "MatchText": { "description": "Full-text match of the strings.", "type": "object", "required": [ "text" ], "properties": { "text": { "type": "string" } } }, "MatchAny": { "description": "Exact match on any of the given values", "type": "object", "required": [ "any" ], "properties": { "any": { "$ref": "#/components/schemas/AnyVariants" } } }, "AnyVariants": { "anyOf": [ { "type": "array", "items": { "type": "string" }, "uniqueItems": true }, { "type": "array", "items": { "type": "integer", "format": "int64" }, "uniqueItems": true } ] }, "MatchExcept": { "description": "Should have at least one value not matching the any given values", "type": "object", "required": [ "except" ], "properties": { "except": { "$ref": "#/components/schemas/AnyVariants" } } }, "RangeInterface": { "anyOf": [ { "$ref": "#/components/schemas/Range" }, { "$ref": "#/components/schemas/DatetimeRange" } ] }, "Range": { "description": "Range filter request", "type": "object", "properties": { "lt": { "description": "point.key < range.lt", "type": "number", "format": "double", "nullable": true }, "gt": { "description": "point.key > range.gt", "type": "number", "format": "double", "nullable": true }, "gte": { "description": "point.key >= range.gte", "type": "number", "format": "double", "nullable": true }, "lte": { "description": "point.key <= range.lte", "type": "number", "format": "double", "nullable": true } } }, "DatetimeRange": { "description": "Range filter request", "type": "object", "properties": { "lt": { "description": "point.key < range.lt", "type": "string", "format": "date-time", "nullable": true }, "gt": { "description": "point.key > range.gt", "type": "string", "format": "date-time", "nullable": true }, "gte": { "description": "point.key >= range.gte", "type": "string", "format": "date-time", "nullable": true }, "lte": { "description": "point.key <= range.lte", "type": "string", "format": "date-time", "nullable": true } } }, "GeoBoundingBox": { "description": "Geo filter request\\n\\nMatches coordinates inside the rectangle, described by coordinates of lop-left and bottom-right edges", "type": "object", "required": [ "bottom_right", "top_left" ], "properties": { "top_left": { "$ref": "#/components/schemas/GeoPoint" }, "bottom_right": { "$ref": "#/components/schemas/GeoPoint" } } }, "GeoPoint": { "description": "Geo point payload schema", "type": "object", "required": [ "lat", "lon" ], "properties": { "lon": { "type": "number", "format": "double" }, "lat": { "type": "number", "format": "double" } } }, "GeoRadius": { "description": "Geo filter request\\n\\nMatches coordinates inside the circle of \`radius\` and center with coordinates \`center\`", "type": "object", "required": [ "center", "radius" ], "properties": { "center": { "$ref": "#/components/schemas/GeoPoint" }, "radius": { "description": "Radius of the area in meters", "type": "number", "format": "double" } } }, "GeoPolygon": { "description": "Geo filter request\\n\\nMatches coordinates inside the polygon, defined by \`exterior\` and \`interiors\`", "type": "object", "required": [ "exterior" ], "properties": { "exterior": { "$ref": "#/components/schemas/GeoLineString" }, "interiors": { "description": "Interior lines (if present) bound holes within the surface each GeoLineString must consist of a minimum of 4 points, and the first and last points must be the same.", "type": "array", "items": { "$ref": "#/components/schemas/GeoLineString" }, "nullable": true } } }, "GeoLineString": { "description": "Ordered sequence of GeoPoints representing the line", "type": "object", "required": [ "points" ], "properties": { "points": { "type": "array", "items": { "$ref": "#/components/schemas/GeoPoint" } } } }, "ValuesCount": { "description": "Values count filter request", "type": "object", "properties": { "lt": { "description": "point.key.length() < values_count.lt", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "gt": { "description": "point.key.length() > values_count.gt", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "gte": { "description": "point.key.length() >= values_count.gte", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "lte": { "description": "point.key.length() <= values_count.lte", "type": "integer", "format": "uint", "minimum": 0, "nullable": true } } }, "IsEmptyCondition": { "description": "Select points with empty payload for a specified field", "type": "object", "required": [ "is_empty" ], "properties": { "is_empty": { "$ref": "#/components/schemas/PayloadField" } } }, "PayloadField": { "description": "Payload field", "type": "object", "required": [ "key" ], "properties": { "key": { "description": "Payload field name", "type": "string" } } }, "IsNullCondition": { "description": "Select points with null payload for a specified field", "type": "object", "required": [ "is_null" ], "properties": { "is_null": { "$ref": "#/components/schemas/PayloadField" } } }, "HasIdCondition": { "description": "ID-based filtering condition", "type": "object", "required": [ "has_id" ], "properties": { "has_id": { "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" }, "uniqueItems": true } } }, "HasVectorCondition": { "description": "Filter points which have specific vector assigned", "type": "object", "required": [ "has_vector" ], "properties": { "has_vector": { "type": "string" } } }, "NestedCondition": { "type": "object", "required": [ "nested" ], "properties": { "nested": { "$ref": "#/components/schemas/Nested" } } }, "Nested": { "description": "Select points with payload for a specified nested field", "type": "object", "required": [ "filter", "key" ], "properties": { "key": { "type": "string" }, "filter": { "$ref": "#/components/schemas/Filter" } } }, "MinShould": { "type": "object", "required": [ "conditions", "min_count" ], "properties": { "conditions": { "type": "array", "items": { "$ref": "#/components/schemas/Condition" } }, "min_count": { "type": "integer", "format": "uint", "minimum": 0 } } }, "SearchParams": { "description": "Additional parameters of the search", "type": "object", "properties": { "hnsw_ef": { "description": "Params relevant to HNSW index Size of the beam in a beam-search. Larger the value - more accurate the result, more time required for search.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "exact": { "description": "Search without approximation. If set to true, search may run long but with exact results.", "default": false, "type": "boolean" }, "quantization": { "description": "Quantization params", "default": null, "anyOf": [ { "$ref": "#/components/schemas/QuantizationSearchParams" }, { "nullable": true } ] }, "indexed_only": { "description": "If enabled, the engine will only perform search among indexed or small segments. Using this option prevents slow searches in case of delayed index, but does not guarantee that all uploaded vectors will be included in search results", "default": false, "type": "boolean" } } }, "QuantizationSearchParams": { "description": "Additional parameters of the search", "type": "object", "properties": { "ignore": { "description": "If true, quantized vectors are ignored. Default is false.", "default": false, "type": "boolean" }, "rescore": { "description": "If true, use original vectors to re-score top-k results. Might require more time in case if original vectors are stored on disk. If not set, qdrant decides automatically apply rescoring or not.", "default": null, "type": "boolean", "nullable": true }, "oversampling": { "description": "Oversampling factor for quantization. Default is 1.0.\\n\\nDefines how many extra vectors should be pre-selected using quantized index, and then re-scored using original vectors.\\n\\nFor example, if \`oversampling\` is 2.4 and \`limit\` is 100, then 240 vectors will be pre-selected using quantized index, and then top-100 will be returned after re-scoring.", "default": null, "type": "number", "format": "double", "minimum": 1, "nullable": true } } }, "ScoredPoint": { "description": "Search result", "type": "object", "required": [ "id", "score", "version" ], "properties": { "id": { "$ref": "#/components/schemas/ExtendedPointId" }, "version": { "description": "Point version", "type": "integer", "format": "uint64", "minimum": 0, "example": 3 }, "score": { "description": "Points vector distance to the query vector", "type": "number", "format": "float", "example": 0.75 }, "payload": { "description": "Payload - values assigned to the point", "anyOf": [ { "$ref": "#/components/schemas/Payload" }, { "nullable": true } ] }, "vector": { "description": "Vector of the point", "anyOf": [ { "$ref": "#/components/schemas/VectorStructOutput" }, { "nullable": true } ] }, "shard_key": { "description": "Shard Key", "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "nullable": true } ] }, "order_value": { "description": "Order-by value", "anyOf": [ { "$ref": "#/components/schemas/OrderValue" }, { "nullable": true } ] } } }, "UpdateResult": { "type": "object", "required": [ "status" ], "properties": { "operation_id": { "description": "Sequential number of the operation", "type": "integer", "format": "uint64", "minimum": 0, "nullable": true }, "status": { "$ref": "#/components/schemas/UpdateStatus" } } }, "UpdateStatus": { "description": "\`Acknowledged\` - Request is saved to WAL and will be process in a queue. \`Completed\` - Request is completed, changes are actual.", "type": "string", "enum": [ "acknowledged", "completed" ] }, "RecommendRequest": { "description": "Recommendation request. Provides positive and negative examples of the vectors, which can be ids of points that are already stored in the collection, raw vectors, or even ids and vectors combined.\\n\\nService should look for the points which are closer to positive examples and at the same time further to negative examples. The concrete way of how to compare negative and positive distances is up to the \`strategy\` chosen.", "type": "object", "required": [ "limit" ], "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "positive": { "description": "Look for vectors closest to those", "default": [], "type": "array", "items": { "$ref": "#/components/schemas/RecommendExample" } }, "negative": { "description": "Try to avoid vectors like this", "default": [], "type": "array", "items": { "$ref": "#/components/schemas/RecommendExample" } }, "strategy": { "description": "How to use positive and negative examples to find the results", "anyOf": [ { "$ref": "#/components/schemas/RecommendStrategy" }, { "nullable": true } ] }, "filter": { "description": "Look only for points which satisfies this conditions", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Additional search params", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "limit": { "description": "Max number of result to return", "type": "integer", "format": "uint", "minimum": 1 }, "offset": { "description": "Offset of the first result to return. May be used to paginate results. Note: large offset values may cause performance issues.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "with_payload": { "description": "Select which payload to return with the response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vector": { "description": "Options for specifying which vectors to include into response. Default is false.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] }, "score_threshold": { "description": "Define a minimal score threshold for the result. If defined, less similar results will not be returned. Score of the returned result might be higher or smaller than the threshold depending on the Distance function used. E.g. for cosine similarity only higher scores will be returned.", "type": "number", "format": "float", "nullable": true }, "using": { "description": "Define which vector to use for recommendation, if not specified - try to use default vector", "default": null, "anyOf": [ { "$ref": "#/components/schemas/UsingVector" }, { "nullable": true } ] }, "lookup_from": { "description": "The location used to lookup vectors. If not specified - use current collection. Note: the other collection should have the same vector size as the current collection", "default": null, "anyOf": [ { "$ref": "#/components/schemas/LookupLocation" }, { "nullable": true } ] } } }, "RecommendExample": { "anyOf": [ { "$ref": "#/components/schemas/ExtendedPointId" }, { "type": "array", "items": { "type": "number", "format": "float" } }, { "$ref": "#/components/schemas/SparseVector" } ] }, "RecommendStrategy": { "description": "How to use positive and negative examples to find the results, default is \`average_vector\`:\\n\\n* \`average_vector\` - Average positive and negative vectors and create a single query with the formula \`query = avg_pos + avg_pos - avg_neg\`. Then performs normal search.\\n\\n* \`best_score\` - Uses custom search objective. Each candidate is compared against all examples, its score is then chosen from the \`max(max_pos_score, max_neg_score)\`. If the \`max_neg_score\` is chosen then it is squared and negated, otherwise it is just the \`max_pos_score\`.", "type": "string", "enum": [ "average_vector", "best_score" ] }, "UsingVector": { "anyOf": [ { "type": "string" } ] }, "LookupLocation": { "description": "Defines a location to use for looking up the vector. Specifies collection and vector field name.", "type": "object", "required": [ "collection" ], "properties": { "collection": { "description": "Name of the collection used for lookup", "type": "string" }, "vector": { "description": "Optional name of the vector field within the collection. If not provided, the default vector field will be used.", "default": null, "type": "string", "nullable": true }, "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "ScrollRequest": { "description": "Scroll request - paginate over all points which matches given condition", "type": "object", "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "offset": { "description": "Start ID to read points from.", "anyOf": [ { "$ref": "#/components/schemas/ExtendedPointId" }, { "nullable": true } ] }, "limit": { "description": "Page size. Default: 10", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "filter": { "description": "Look only for points which satisfies this conditions. If not provided - all points.", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "with_payload": { "description": "Select which payload to return with the response. Default is true.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vector": { "$ref": "#/components/schemas/WithVector" }, "order_by": { "description": "Order the records by a payload field.", "anyOf": [ { "$ref": "#/components/schemas/OrderByInterface" }, { "nullable": true } ] } } }, "OrderByInterface": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/OrderBy" } ] }, "OrderBy": { "type": "object", "required": [ "key" ], "properties": { "key": { "description": "Payload key to order by", "type": "string" }, "direction": { "description": "Direction of ordering: \`asc\` or \`desc\`. Default is ascending.", "anyOf": [ { "$ref": "#/components/schemas/Direction" }, { "nullable": true } ] }, "start_from": { "description": "Which payload value to start scrolling from. Default is the lowest value for \`asc\` and the highest for \`desc\`", "anyOf": [ { "$ref": "#/components/schemas/StartFrom" }, { "nullable": true } ] } } }, "Direction": { "type": "string", "enum": [ "asc", "desc" ] }, "StartFrom": { "anyOf": [ { "type": "integer", "format": "int64" }, { "type": "number", "format": "double" }, { "type": "string", "format": "date-time" } ] }, "ScrollResult": { "description": "Result of the points read request", "type": "object", "required": [ "points" ], "properties": { "points": { "description": "List of retrieved points", "type": "array", "items": { "$ref": "#/components/schemas/Record" }, "example": [ { "id": 40, "payload": { "city": "London", "color": "green" }, "vector": [ 0.875, 0.140625, 0.897599995136261 ], "shard_key": "region_1" }, { "id": 41, "payload": { "city": "Paris", "color": "red" }, "vector": [ 0.75, 0.640625, 0.8945000171661377 ], "shard_key": "region_1" } ] }, "next_page_offset": { "description": "Offset which should be used to retrieve a next page result", "anyOf": [ { "$ref": "#/components/schemas/ExtendedPointId" }, { "nullable": true } ] } } }, "CreateCollection": { "description": "Operation for creating new collection and (optionally) specify index params", "type": "object", "properties": { "vectors": { "$ref": "#/components/schemas/VectorsConfig" }, "shard_number": { "description": "For auto sharding: Number of shards in collection. - Default is 1 for standalone, otherwise equal to the number of nodes - Minimum is 1\\n\\nFor custom sharding: Number of shards in collection per shard group. - Default is 1, meaning that each shard key will be mapped to a single shard - Minimum is 1", "default": null, "type": "integer", "format": "uint32", "minimum": 1, "nullable": true }, "sharding_method": { "description": "Sharding method Default is Auto - points are distributed across all available shards Custom - points are distributed across shards according to shard key", "default": null, "anyOf": [ { "$ref": "#/components/schemas/ShardingMethod" }, { "nullable": true } ] }, "replication_factor": { "description": "Number of shards replicas. Default is 1 Minimum is 1", "default": null, "type": "integer", "format": "uint32", "minimum": 1, "nullable": true }, "write_consistency_factor": { "description": "Defines how many replicas should apply the operation for us to consider it successful. Increasing this number will make the collection more resilient to inconsistencies, but will also make it fail if not enough replicas are available. Does not have any performance impact.", "default": null, "type": "integer", "format": "uint32", "minimum": 1, "nullable": true }, "on_disk_payload": { "description": "If true - point's payload will not be stored in memory. It will be read from the disk every time it is requested. This setting saves RAM by (slightly) increasing the response time. Note: those payload values that are involved in filtering and are indexed - remain in RAM.\\n\\nDefault: true", "default": null, "type": "boolean", "nullable": true }, "hnsw_config": { "description": "Custom params for HNSW index. If none - values from service configuration file are used.", "anyOf": [ { "$ref": "#/components/schemas/HnswConfigDiff" }, { "nullable": true } ] }, "wal_config": { "description": "Custom params for WAL. If none - values from service configuration file are used.", "anyOf": [ { "$ref": "#/components/schemas/WalConfigDiff" }, { "nullable": true } ] }, "optimizers_config": { "description": "Custom params for Optimizers. If none - values from service configuration file are used.", "anyOf": [ { "$ref": "#/components/schemas/OptimizersConfigDiff" }, { "nullable": true } ] }, "init_from": { "description": "Specify other collection to copy data from.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/InitFrom" }, { "nullable": true } ] }, "quantization_config": { "description": "Quantization parameters. If none - quantization is disabled.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/QuantizationConfig" }, { "nullable": true } ] }, "sparse_vectors": { "description": "Sparse vector data config.", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/SparseVectorParams" }, "nullable": true }, "strict_mode_config": { "description": "Strict-mode config.", "anyOf": [ { "$ref": "#/components/schemas/StrictModeConfig" }, { "nullable": true } ] } } }, "WalConfigDiff": { "type": "object", "properties": { "wal_capacity_mb": { "description": "Size of a single WAL segment in MB", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "wal_segments_ahead": { "description": "Number of WAL segments to create ahead of actually used ones", "type": "integer", "format": "uint", "minimum": 0, "nullable": true } } }, "OptimizersConfigDiff": { "type": "object", "properties": { "deleted_threshold": { "description": "The minimal fraction of deleted vectors in a segment, required to perform segment optimization", "type": "number", "format": "double", "nullable": true }, "vacuum_min_vector_number": { "description": "The minimal number of vectors in a segment, required to perform segment optimization", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "default_segment_number": { "description": "Target amount of segments optimizer will try to keep. Real amount of segments may vary depending on multiple parameters: - Amount of stored points - Current write RPS\\n\\nIt is recommended to select default number of segments as a factor of the number of search threads, so that each segment would be handled evenly by one of the threads If \`default_segment_number = 0\`, will be automatically selected by the number of available CPUs", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "max_segment_size": { "description": "Do not create segments larger this size (in kilobytes). Large segments might require disproportionately long indexation times, therefore it makes sense to limit the size of segments.\\n\\nIf indexation speed have more priority for your - make this parameter lower. If search speed is more important - make this parameter higher. Note: 1Kb = 1 vector of size 256", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "memmap_threshold": { "description": "Maximum size (in kilobytes) of vectors to store in-memory per segment. Segments larger than this threshold will be stored as read-only memmapped file.\\n\\nMemmap storage is disabled by default, to enable it, set this threshold to a reasonable value.\\n\\nTo disable memmap storage, set this to \`0\`.\\n\\nNote: 1Kb = 1 vector of size 256", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "indexing_threshold": { "description": "Maximum size (in kilobytes) of vectors allowed for plain index, exceeding this threshold will enable vector indexing\\n\\nDefault value is 20,000, based on .\\n\\nTo disable vector indexing, set to \`0\`.\\n\\nNote: 1kB = 1 vector of size 256.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "flush_interval_sec": { "description": "Minimum interval between forced flushes.", "type": "integer", "format": "uint64", "minimum": 0, "nullable": true }, "max_optimization_threads": { "description": "Max number of threads (jobs) for running optimizations per shard. Note: each optimization job will also use \`max_indexing_threads\` threads by itself for index building. If \\"auto\\" - have no limit and choose dynamically to saturate CPU. If 0 - no optimization threads, optimizations will be disabled.", "anyOf": [ { "$ref": "#/components/schemas/MaxOptimizationThreads" }, { "nullable": true } ] } } }, "MaxOptimizationThreads": { "anyOf": [ { "$ref": "#/components/schemas/MaxOptimizationThreadsSetting" }, { "type": "integer", "format": "uint", "minimum": 0 } ] }, "MaxOptimizationThreadsSetting": { "type": "string", "enum": [ "auto" ] }, "InitFrom": { "description": "Operation for creating new collection and (optionally) specify index params", "type": "object", "required": [ "collection" ], "properties": { "collection": { "type": "string" } } }, "UpdateCollection": { "description": "Operation for updating parameters of the existing collection", "type": "object", "properties": { "vectors": { "description": "Map of vector data parameters to update for each named vector. To update parameters in a collection having a single unnamed vector, use an empty string as name.", "anyOf": [ { "$ref": "#/components/schemas/VectorsConfigDiff" }, { "nullable": true } ] }, "optimizers_config": { "description": "Custom params for Optimizers. If none - it is left unchanged. This operation is blocking, it will only proceed once all current optimizations are complete", "anyOf": [ { "$ref": "#/components/schemas/OptimizersConfigDiff" }, { "nullable": true } ] }, "params": { "description": "Collection base params. If none - it is left unchanged.", "anyOf": [ { "$ref": "#/components/schemas/CollectionParamsDiff" }, { "nullable": true } ] }, "hnsw_config": { "description": "HNSW parameters to update for the collection index. If none - it is left unchanged.", "anyOf": [ { "$ref": "#/components/schemas/HnswConfigDiff" }, { "nullable": true } ] }, "quantization_config": { "description": "Quantization parameters to update. If none - it is left unchanged.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/QuantizationConfigDiff" }, { "nullable": true } ] }, "sparse_vectors": { "description": "Map of sparse vector data parameters to update for each sparse vector.", "anyOf": [ { "$ref": "#/components/schemas/SparseVectorsConfig" }, { "nullable": true } ] }, "strict_mode_config": { "anyOf": [ { "$ref": "#/components/schemas/StrictModeConfig" }, { "nullable": true } ] } } }, "VectorsConfigDiff": { "description": "Vector update params for multiple vectors\\n\\n{ \\"vector_name\\": { \\"hnsw_config\\": { \\"m\\": 8 } } }", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/VectorParamsDiff" } }, "VectorParamsDiff": { "type": "object", "properties": { "hnsw_config": { "description": "Update params for HNSW index. If empty object - it will be unset.", "anyOf": [ { "$ref": "#/components/schemas/HnswConfigDiff" }, { "nullable": true } ] }, "quantization_config": { "description": "Update params for quantization. If none - it is left unchanged.", "anyOf": [ { "$ref": "#/components/schemas/QuantizationConfigDiff" }, { "nullable": true } ] }, "on_disk": { "description": "If true, vectors are served from disk, improving RAM usage at the cost of latency", "type": "boolean", "nullable": true } } }, "QuantizationConfigDiff": { "anyOf": [ { "$ref": "#/components/schemas/ScalarQuantization" }, { "$ref": "#/components/schemas/ProductQuantization" }, { "$ref": "#/components/schemas/BinaryQuantization" }, { "$ref": "#/components/schemas/Disabled" } ] }, "Disabled": { "type": "string", "enum": [ "Disabled" ] }, "CollectionParamsDiff": { "type": "object", "properties": { "replication_factor": { "description": "Number of replicas for each shard", "type": "integer", "format": "uint32", "minimum": 1, "nullable": true }, "write_consistency_factor": { "description": "Minimal number successful responses from replicas to consider operation successful", "type": "integer", "format": "uint32", "minimum": 1, "nullable": true }, "read_fan_out_factor": { "description": "Fan-out every read request to these many additional remote nodes (and return first available response)", "type": "integer", "format": "uint32", "minimum": 0, "nullable": true }, "on_disk_payload": { "description": "If true - point's payload will not be stored in memory. It will be read from the disk every time it is requested. This setting saves RAM by (slightly) increasing the response time. Note: those payload values that are involved in filtering and are indexed - remain in RAM.", "default": null, "type": "boolean", "nullable": true } } }, "SparseVectorsConfig": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/SparseVectorParams" } }, "ChangeAliasesOperation": { "description": "Operation for performing changes of collection aliases. Alias changes are atomic, meaning that no collection modifications can happen between alias operations.", "type": "object", "required": [ "actions" ], "properties": { "actions": { "type": "array", "items": { "$ref": "#/components/schemas/AliasOperations" } } } }, "AliasOperations": { "description": "Group of all the possible operations related to collection aliases", "anyOf": [ { "$ref": "#/components/schemas/CreateAliasOperation" }, { "$ref": "#/components/schemas/DeleteAliasOperation" }, { "$ref": "#/components/schemas/RenameAliasOperation" } ] }, "CreateAliasOperation": { "type": "object", "required": [ "create_alias" ], "properties": { "create_alias": { "$ref": "#/components/schemas/CreateAlias" } } }, "CreateAlias": { "description": "Create alternative name for a collection. Collection will be available under both names for search, retrieve,", "type": "object", "required": [ "alias_name", "collection_name" ], "properties": { "collection_name": { "type": "string" }, "alias_name": { "type": "string" } } }, "DeleteAliasOperation": { "description": "Delete alias if exists", "type": "object", "required": [ "delete_alias" ], "properties": { "delete_alias": { "$ref": "#/components/schemas/DeleteAlias" } } }, "DeleteAlias": { "description": "Delete alias if exists", "type": "object", "required": [ "alias_name" ], "properties": { "alias_name": { "type": "string" } } }, "RenameAliasOperation": { "description": "Change alias to a new one", "type": "object", "required": [ "rename_alias" ], "properties": { "rename_alias": { "$ref": "#/components/schemas/RenameAlias" } } }, "RenameAlias": { "description": "Change alias to a new one", "type": "object", "required": [ "new_alias_name", "old_alias_name" ], "properties": { "old_alias_name": { "type": "string" }, "new_alias_name": { "type": "string" } } }, "CreateFieldIndex": { "type": "object", "required": [ "field_name" ], "properties": { "field_name": { "type": "string" }, "field_schema": { "anyOf": [ { "$ref": "#/components/schemas/PayloadFieldSchema" }, { "nullable": true } ] } } }, "PayloadFieldSchema": { "anyOf": [ { "$ref": "#/components/schemas/PayloadSchemaType" }, { "$ref": "#/components/schemas/PayloadSchemaParams" } ] }, "PointsSelector": { "anyOf": [ { "$ref": "#/components/schemas/PointIdsList" }, { "$ref": "#/components/schemas/FilterSelector" } ] }, "PointIdsList": { "type": "object", "required": [ "points" ], "properties": { "points": { "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" } }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "FilterSelector": { "type": "object", "required": [ "filter" ], "properties": { "filter": { "$ref": "#/components/schemas/Filter" }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "PointInsertOperations": { "anyOf": [ { "$ref": "#/components/schemas/PointsBatch" }, { "$ref": "#/components/schemas/PointsList" } ] }, "PointsBatch": { "type": "object", "required": [ "batch" ], "properties": { "batch": { "$ref": "#/components/schemas/Batch" }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "Batch": { "type": "object", "required": [ "ids", "vectors" ], "properties": { "ids": { "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" } }, "vectors": { "$ref": "#/components/schemas/BatchVectorStruct" }, "payloads": { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/Payload" }, { "nullable": true } ] }, "nullable": true } } }, "BatchVectorStruct": { "anyOf": [ { "type": "array", "items": { "type": "array", "items": { "type": "number", "format": "float" } } }, { "type": "array", "items": { "type": "array", "items": { "type": "array", "items": { "type": "number", "format": "float" } } } }, { "type": "object", "additionalProperties": { "type": "array", "items": { "$ref": "#/components/schemas/Vector" } } }, { "type": "array", "items": { "$ref": "#/components/schemas/Document" } }, { "type": "array", "items": { "$ref": "#/components/schemas/Image" } }, { "type": "array", "items": { "$ref": "#/components/schemas/InferenceObject" } } ] }, "Vector": { "description": "Vector Data Vectors can be described directly with values Or specified with source \\"objects\\" for inference", "anyOf": [ { "type": "array", "items": { "type": "number", "format": "float" } }, { "$ref": "#/components/schemas/SparseVector" }, { "type": "array", "items": { "type": "array", "items": { "type": "number", "format": "float" } } }, { "$ref": "#/components/schemas/Document" }, { "$ref": "#/components/schemas/Image" }, { "$ref": "#/components/schemas/InferenceObject" } ] }, "Document": { "description": "WARN: Work-in-progress, unimplemented\\n\\nText document for embedding. Requires inference infrastructure, unimplemented.", "type": "object", "required": [ "model", "text" ], "properties": { "text": { "description": "Text of the document This field will be used as input for the embedding model", "type": "string", "example": "This is a document text" }, "model": { "description": "Name of the model used to generate the vector List of available models depends on a provider", "type": "string", "minLength": 1, "example": "jinaai/jina-embeddings-v2-base-en" }, "options": { "description": "Parameters for the model Values of the parameters are model-specific", "type": "object", "additionalProperties": true, "nullable": true } } }, "Image": { "description": "WARN: Work-in-progress, unimplemented\\n\\nImage object for embedding. Requires inference infrastructure, unimplemented.", "type": "object", "required": [ "image", "model" ], "properties": { "image": { "description": "Image data: base64 encoded image or an URL", "example": "https://example.com/image.jpg" }, "model": { "description": "Name of the model used to generate the vector List of available models depends on a provider", "type": "string", "minLength": 1, "example": "Qdrant/clip-ViT-B-32-vision" }, "options": { "description": "Parameters for the model Values of the parameters are model-specific", "type": "object", "additionalProperties": true, "nullable": true } } }, "InferenceObject": { "description": "WARN: Work-in-progress, unimplemented\\n\\nCustom object for embedding. Requires inference infrastructure, unimplemented.", "type": "object", "required": [ "model", "object" ], "properties": { "object": { "description": "Arbitrary data, used as input for the embedding model Used if the model requires more than one input or a custom input" }, "model": { "description": "Name of the model used to generate the vector List of available models depends on a provider", "type": "string", "minLength": 1, "example": "jinaai/jina-embeddings-v2-base-en" }, "options": { "description": "Parameters for the model Values of the parameters are model-specific", "type": "object", "additionalProperties": true, "nullable": true } } }, "PointsList": { "type": "object", "required": [ "points" ], "properties": { "points": { "type": "array", "items": { "$ref": "#/components/schemas/PointStruct" } }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "PointStruct": { "type": "object", "required": [ "id", "vector" ], "properties": { "id": { "$ref": "#/components/schemas/ExtendedPointId" }, "vector": { "$ref": "#/components/schemas/VectorStruct" }, "payload": { "description": "Payload values (optional)", "anyOf": [ { "$ref": "#/components/schemas/Payload" }, { "nullable": true } ] } } }, "VectorStruct": { "description": "Full vector data per point separator with single and multiple vector modes", "anyOf": [ { "type": "array", "items": { "type": "number", "format": "float" }, "example": [ 0.875, 0.140625, 0.897599995136261 ] }, { "type": "array", "items": { "type": "array", "items": { "type": "number", "format": "float" } }, "example": [ [ 0.875, 0.140625, 0.11020000278949738 ], [ 0.7580000162124634, 0.28126001358032227, 0.9687100052833557 ], [ 0.6209999918937683, 0.42187801003456116, 0.9375 ] ] }, { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Vector" }, "example": { "image-embeddings": [ 0.8730000257492065, 0.140625, 0.897599995136261 ] } }, { "$ref": "#/components/schemas/Document" }, { "$ref": "#/components/schemas/Image" }, { "$ref": "#/components/schemas/InferenceObject" } ] }, "SetPayload": { "description": "This data structure is used in API interface and applied across multiple shards", "type": "object", "required": [ "payload" ], "properties": { "payload": { "$ref": "#/components/schemas/Payload" }, "points": { "description": "Assigns payload to each point in this list", "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" }, "nullable": true }, "filter": { "description": "Assigns payload to each point that satisfy this filter condition", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "key": { "description": "Assigns payload to each point that satisfy this path of property", "type": "string", "nullable": true } } }, "DeletePayload": { "description": "This data structure is used in API interface and applied across multiple shards", "type": "object", "required": [ "keys" ], "properties": { "keys": { "description": "List of payload keys to remove from payload", "type": "array", "items": { "type": "string" } }, "points": { "description": "Deletes values from each point in this list", "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" }, "nullable": true }, "filter": { "description": "Deletes values from points that satisfy this filter condition", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "ClusterStatus": { "description": "Information about current cluster status and structure", "oneOf": [ { "type": "object", "required": [ "status" ], "properties": { "status": { "type": "string", "enum": [ "disabled" ] } } }, { "description": "Description of enabled cluster", "type": "object", "required": [ "consensus_thread_status", "message_send_failures", "peer_id", "peers", "raft_info", "status" ], "properties": { "status": { "type": "string", "enum": [ "enabled" ] }, "peer_id": { "description": "ID of this peer", "type": "integer", "format": "uint64", "minimum": 0 }, "peers": { "description": "Peers composition of the cluster with main information", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PeerInfo" } }, "raft_info": { "$ref": "#/components/schemas/RaftInfo" }, "consensus_thread_status": { "$ref": "#/components/schemas/ConsensusThreadStatus" }, "message_send_failures": { "description": "Consequent failures of message send operations in consensus by peer address. On the first success to send to that peer - entry is removed from this hashmap.", "type": "object", "additionalProperties": { "$ref": "#/components/schemas/MessageSendErrors" } } } } ] }, "PeerInfo": { "description": "Information of a peer in the cluster", "type": "object", "required": [ "uri" ], "properties": { "uri": { "type": "string" } } }, "RaftInfo": { "description": "Summary information about the current raft state", "type": "object", "required": [ "commit", "is_voter", "pending_operations", "term" ], "properties": { "term": { "description": "Raft divides time into terms of arbitrary length, each beginning with an election. If a candidate wins the election, it remains the leader for the rest of the term. The term number increases monotonically. Each server stores the current term number which is also exchanged in every communication.", "type": "integer", "format": "uint64", "minimum": 0 }, "commit": { "description": "The index of the latest committed (finalized) operation that this peer is aware of.", "type": "integer", "format": "uint64", "minimum": 0 }, "pending_operations": { "description": "Number of consensus operations pending to be applied on this peer", "type": "integer", "format": "uint", "minimum": 0 }, "leader": { "description": "Leader of the current term", "type": "integer", "format": "uint64", "minimum": 0, "nullable": true }, "role": { "description": "Role of this peer in the current term", "anyOf": [ { "$ref": "#/components/schemas/StateRole" }, { "nullable": true } ] }, "is_voter": { "description": "Is this peer a voter or a learner", "type": "boolean" } } }, "StateRole": { "description": "Role of the peer in the consensus", "type": "string", "enum": [ "Follower", "Candidate", "Leader", "PreCandidate" ] }, "ConsensusThreadStatus": { "description": "Information about current consensus thread status", "oneOf": [ { "type": "object", "required": [ "consensus_thread_status", "last_update" ], "properties": { "consensus_thread_status": { "type": "string", "enum": [ "working" ] }, "last_update": { "type": "string", "format": "date-time" } } }, { "type": "object", "required": [ "consensus_thread_status" ], "properties": { "consensus_thread_status": { "type": "string", "enum": [ "stopped" ] } } }, { "type": "object", "required": [ "consensus_thread_status", "err" ], "properties": { "consensus_thread_status": { "type": "string", "enum": [ "stopped_with_err" ] }, "err": { "type": "string" } } } ] }, "MessageSendErrors": { "description": "Message send failures for a particular peer", "type": "object", "required": [ "count" ], "properties": { "count": { "type": "integer", "format": "uint", "minimum": 0 }, "latest_error": { "type": "string", "nullable": true }, "latest_error_timestamp": { "description": "Timestamp of the latest error", "type": "string", "format": "date-time", "nullable": true } } }, "SnapshotDescription": { "type": "object", "required": [ "name", "size" ], "properties": { "name": { "type": "string" }, "creation_time": { "type": "string", "format": "partial-date-time", "nullable": true }, "size": { "type": "integer", "format": "uint64", "minimum": 0 }, "checksum": { "type": "string", "nullable": true } }, "example": { "name": "my-collection-3766212330831337-2024-07-22-08-31-55.snapshot", "creation_time": "2022-08-04T10:49:10", "size": 1000000, "checksum": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0" } }, "CountRequest": { "description": "Count Request Counts the number of points which satisfy the given filter. If filter is not provided, the count of all points in the collection will be returned.", "type": "object", "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "filter": { "description": "Look only for points which satisfies this conditions", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "exact": { "description": "If true, count exact number of points. If false, count approximate number of points faster. Approximate count might be unreliable during the indexing process. Default: true", "default": true, "type": "boolean" } } }, "CountResult": { "type": "object", "required": [ "count" ], "properties": { "count": { "description": "Number of points which satisfy the conditions", "type": "integer", "format": "uint", "minimum": 0 } } }, "CollectionClusterInfo": { "description": "Current clustering distribution for the collection", "type": "object", "required": [ "local_shards", "peer_id", "remote_shards", "shard_count", "shard_transfers" ], "properties": { "peer_id": { "description": "ID of this peer", "type": "integer", "format": "uint64", "minimum": 0 }, "shard_count": { "description": "Total number of shards", "type": "integer", "format": "uint", "minimum": 0 }, "local_shards": { "description": "Local shards", "type": "array", "items": { "$ref": "#/components/schemas/LocalShardInfo" } }, "remote_shards": { "description": "Remote shards", "type": "array", "items": { "$ref": "#/components/schemas/RemoteShardInfo" } }, "shard_transfers": { "description": "Shard transfers", "type": "array", "items": { "$ref": "#/components/schemas/ShardTransferInfo" } }, "resharding_operations": { "description": "Resharding operations", "type": "array", "items": { "$ref": "#/components/schemas/ReshardingInfo" }, "nullable": true } } }, "LocalShardInfo": { "type": "object", "required": [ "points_count", "shard_id", "state" ], "properties": { "shard_id": { "description": "Local shard id", "type": "integer", "format": "uint32", "minimum": 0 }, "shard_key": { "description": "User-defined sharding key", "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "nullable": true } ] }, "points_count": { "description": "Number of points in the shard", "type": "integer", "format": "uint", "minimum": 0 }, "state": { "$ref": "#/components/schemas/ReplicaState" } } }, "ReplicaState": { "description": "State of the single shard within a replica set.", "type": "string", "enum": [ "Active", "Dead", "Partial", "Initializing", "Listener", "PartialSnapshot", "Recovery", "Resharding", "ReshardingScaleDown" ] }, "RemoteShardInfo": { "type": "object", "required": [ "peer_id", "shard_id", "state" ], "properties": { "shard_id": { "description": "Remote shard id", "type": "integer", "format": "uint32", "minimum": 0 }, "shard_key": { "description": "User-defined sharding key", "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "nullable": true } ] }, "peer_id": { "description": "Remote peer id", "type": "integer", "format": "uint64", "minimum": 0 }, "state": { "$ref": "#/components/schemas/ReplicaState" } } }, "ShardTransferInfo": { "type": "object", "required": [ "from", "shard_id", "sync", "to" ], "properties": { "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "to_shard_id": { "description": "Target shard ID if different than source shard ID\\n\\nUsed exclusively with \`ReshardStreamRecords\` transfer method.", "type": "integer", "format": "uint32", "minimum": 0, "nullable": true }, "from": { "description": "Source peer id", "type": "integer", "format": "uint64", "minimum": 0 }, "to": { "description": "Destination peer id", "type": "integer", "format": "uint64", "minimum": 0 }, "sync": { "description": "If \`true\` transfer is a synchronization of a replicas If \`false\` transfer is a moving of a shard from one peer to another", "type": "boolean" }, "method": { "anyOf": [ { "$ref": "#/components/schemas/ShardTransferMethod" }, { "nullable": true } ] }, "comment": { "description": "A human-readable report of the transfer progress. Available only on the source peer.", "type": "string", "nullable": true } } }, "ShardTransferMethod": { "description": "Methods for transferring a shard from one node to another.", "oneOf": [ { "description": "Stream all shard records in batches until the whole shard is transferred.", "type": "string", "enum": [ "stream_records" ] }, { "description": "Snapshot the shard, transfer and restore it on the receiver.", "type": "string", "enum": [ "snapshot" ] }, { "description": "Attempt to transfer shard difference by WAL delta.", "type": "string", "enum": [ "wal_delta" ] }, { "description": "Shard transfer for resharding: stream all records in batches until all points are transferred.", "type": "string", "enum": [ "resharding_stream_records" ] } ] }, "ReshardingInfo": { "type": "object", "required": [ "direction", "peer_id", "shard_id" ], "properties": { "direction": { "$ref": "#/components/schemas/ReshardingDirection" }, "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "nullable": true } ] } } }, "ReshardingDirection": { "description": "Resharding direction, scale up or down in number of shards", "oneOf": [ { "description": "Scale up, add a new shard", "type": "string", "enum": [ "up" ] }, { "description": "Scale down, remove a shard", "type": "string", "enum": [ "down" ] } ] }, "TelemetryData": { "type": "object", "required": [ "app", "collections", "id" ], "properties": { "id": { "type": "string" }, "app": { "$ref": "#/components/schemas/AppBuildTelemetry" }, "collections": { "$ref": "#/components/schemas/CollectionsTelemetry" }, "cluster": { "anyOf": [ { "$ref": "#/components/schemas/ClusterTelemetry" }, { "nullable": true } ] }, "requests": { "anyOf": [ { "$ref": "#/components/schemas/RequestsTelemetry" }, { "nullable": true } ] }, "memory": { "anyOf": [ { "$ref": "#/components/schemas/MemoryTelemetry" }, { "nullable": true } ] }, "hardware": { "anyOf": [ { "$ref": "#/components/schemas/HardwareTelemetry" }, { "nullable": true } ] } } }, "AppBuildTelemetry": { "type": "object", "required": [ "name", "startup", "version" ], "properties": { "name": { "type": "string" }, "version": { "type": "string" }, "features": { "anyOf": [ { "$ref": "#/components/schemas/AppFeaturesTelemetry" }, { "nullable": true } ] }, "system": { "anyOf": [ { "$ref": "#/components/schemas/RunningEnvironmentTelemetry" }, { "nullable": true } ] }, "jwt_rbac": { "type": "boolean", "nullable": true }, "hide_jwt_dashboard": { "type": "boolean", "nullable": true }, "startup": { "type": "string", "format": "date-time" } } }, "AppFeaturesTelemetry": { "type": "object", "required": [ "debug", "gpu", "recovery_mode", "service_debug_feature", "web_feature" ], "properties": { "debug": { "type": "boolean" }, "web_feature": { "type": "boolean" }, "service_debug_feature": { "type": "boolean" }, "recovery_mode": { "type": "boolean" }, "gpu": { "type": "boolean" } } }, "RunningEnvironmentTelemetry": { "type": "object", "required": [ "cpu_flags", "is_docker" ], "properties": { "distribution": { "type": "string", "nullable": true }, "distribution_version": { "type": "string", "nullable": true }, "is_docker": { "type": "boolean" }, "cores": { "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "ram_size": { "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "disk_size": { "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "cpu_flags": { "type": "string" }, "cpu_endian": { "anyOf": [ { "$ref": "#/components/schemas/CpuEndian" }, { "nullable": true } ] }, "gpu_devices": { "type": "array", "items": { "$ref": "#/components/schemas/GpuDeviceTelemetry" }, "nullable": true } } }, "CpuEndian": { "type": "string", "enum": [ "little", "big", "other" ] }, "GpuDeviceTelemetry": { "type": "object", "required": [ "name" ], "properties": { "name": { "type": "string" } } }, "CollectionsTelemetry": { "type": "object", "required": [ "number_of_collections" ], "properties": { "number_of_collections": { "type": "integer", "format": "uint", "minimum": 0 }, "collections": { "type": "array", "items": { "$ref": "#/components/schemas/CollectionTelemetryEnum" }, "nullable": true } } }, "CollectionTelemetryEnum": { "anyOf": [ { "$ref": "#/components/schemas/CollectionTelemetry" }, { "$ref": "#/components/schemas/CollectionsAggregatedTelemetry" } ] }, "CollectionTelemetry": { "type": "object", "required": [ "config", "id", "init_time_ms", "resharding", "shard_clean_tasks", "shards", "transfers" ], "properties": { "id": { "type": "string" }, "init_time_ms": { "type": "integer", "format": "uint64", "minimum": 0 }, "config": { "$ref": "#/components/schemas/CollectionConfigInternal" }, "shards": { "type": "array", "items": { "$ref": "#/components/schemas/ReplicaSetTelemetry" } }, "transfers": { "type": "array", "items": { "$ref": "#/components/schemas/ShardTransferInfo" } }, "resharding": { "type": "array", "items": { "$ref": "#/components/schemas/ReshardingInfo" } }, "shard_clean_tasks": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ShardCleanStatusTelemetry" } } } }, "CollectionConfigInternal": { "type": "object", "required": [ "hnsw_config", "optimizer_config", "params", "wal_config" ], "properties": { "params": { "$ref": "#/components/schemas/CollectionParams" }, "hnsw_config": { "$ref": "#/components/schemas/HnswConfig" }, "optimizer_config": { "$ref": "#/components/schemas/OptimizersConfig" }, "wal_config": { "$ref": "#/components/schemas/WalConfig" }, "quantization_config": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/QuantizationConfig" }, { "nullable": true } ] }, "strict_mode_config": { "anyOf": [ { "$ref": "#/components/schemas/StrictModeConfig" }, { "nullable": true } ] }, "uuid": { "default": null, "type": "string", "format": "uuid", "nullable": true } } }, "ReplicaSetTelemetry": { "type": "object", "required": [ "id", "remote", "replicate_states" ], "properties": { "id": { "type": "integer", "format": "uint32", "minimum": 0 }, "key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "nullable": true } ] }, "local": { "anyOf": [ { "$ref": "#/components/schemas/LocalShardTelemetry" }, { "nullable": true } ] }, "remote": { "type": "array", "items": { "$ref": "#/components/schemas/RemoteShardTelemetry" } }, "replicate_states": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ReplicaState" } } } }, "LocalShardTelemetry": { "type": "object", "required": [ "optimizations", "segments", "total_optimized_points" ], "properties": { "variant_name": { "type": "string", "nullable": true }, "status": { "anyOf": [ { "$ref": "#/components/schemas/ShardStatus" }, { "nullable": true } ] }, "total_optimized_points": { "description": "Total number of optimized points since the last start.", "type": "integer", "format": "uint", "minimum": 0 }, "segments": { "type": "array", "items": { "$ref": "#/components/schemas/SegmentTelemetry" } }, "optimizations": { "$ref": "#/components/schemas/OptimizerTelemetry" }, "async_scorer": { "type": "boolean", "nullable": true } } }, "ShardStatus": { "description": "Current state of the shard (supports same states as the collection)\\n\\n\`Green\` - all good. \`Yellow\` - optimization is running, 'Grey' - optimizations are possible but not triggered, \`Red\` - some operations failed and was not recovered", "type": "string", "enum": [ "green", "yellow", "grey", "red" ] }, "SegmentTelemetry": { "type": "object", "required": [ "config", "info", "payload_field_indices", "vector_index_searches" ], "properties": { "info": { "$ref": "#/components/schemas/SegmentInfo" }, "config": { "$ref": "#/components/schemas/SegmentConfig" }, "vector_index_searches": { "type": "array", "items": { "$ref": "#/components/schemas/VectorIndexSearchesTelemetry" } }, "payload_field_indices": { "type": "array", "items": { "$ref": "#/components/schemas/PayloadIndexTelemetry" } } } }, "SegmentInfo": { "description": "Aggregated information about segment", "type": "object", "required": [ "disk_usage_bytes", "index_schema", "is_appendable", "num_deleted_vectors", "num_indexed_vectors", "num_points", "num_vectors", "payloads_size_bytes", "ram_usage_bytes", "segment_type", "vector_data", "vectors_size_bytes" ], "properties": { "segment_type": { "$ref": "#/components/schemas/SegmentType" }, "num_vectors": { "type": "integer", "format": "uint", "minimum": 0 }, "num_points": { "type": "integer", "format": "uint", "minimum": 0 }, "num_indexed_vectors": { "type": "integer", "format": "uint", "minimum": 0 }, "num_deleted_vectors": { "type": "integer", "format": "uint", "minimum": 0 }, "vectors_size_bytes": { "description": "An ESTIMATION of effective amount of bytes used for vectors Do NOT rely on this number unless you know what you are doing", "type": "integer", "format": "uint", "minimum": 0 }, "payloads_size_bytes": { "description": "An estimation of the effective amount of bytes used for payloads", "type": "integer", "format": "uint", "minimum": 0 }, "ram_usage_bytes": { "type": "integer", "format": "uint", "minimum": 0 }, "disk_usage_bytes": { "type": "integer", "format": "uint", "minimum": 0 }, "is_appendable": { "type": "boolean" }, "index_schema": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PayloadIndexInfo" } }, "vector_data": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/VectorDataInfo" } } } }, "SegmentType": { "description": "Type of segment", "type": "string", "enum": [ "plain", "indexed", "special" ] }, "VectorDataInfo": { "type": "object", "required": [ "num_deleted_vectors", "num_indexed_vectors", "num_vectors" ], "properties": { "num_vectors": { "type": "integer", "format": "uint", "minimum": 0 }, "num_indexed_vectors": { "type": "integer", "format": "uint", "minimum": 0 }, "num_deleted_vectors": { "type": "integer", "format": "uint", "minimum": 0 } } }, "SegmentConfig": { "type": "object", "required": [ "payload_storage_type" ], "properties": { "vector_data": { "default": {}, "type": "object", "additionalProperties": { "$ref": "#/components/schemas/VectorDataConfig" } }, "sparse_vector_data": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/SparseVectorDataConfig" } }, "payload_storage_type": { "$ref": "#/components/schemas/PayloadStorageType" } } }, "VectorDataConfig": { "description": "Config of single vector data storage", "type": "object", "required": [ "distance", "index", "size", "storage_type" ], "properties": { "size": { "description": "Size/dimensionality of the vectors used", "type": "integer", "format": "uint", "minimum": 0 }, "distance": { "$ref": "#/components/schemas/Distance" }, "storage_type": { "$ref": "#/components/schemas/VectorStorageType" }, "index": { "$ref": "#/components/schemas/Indexes" }, "quantization_config": { "description": "Vector specific quantization config that overrides collection config", "anyOf": [ { "$ref": "#/components/schemas/QuantizationConfig" }, { "nullable": true } ] }, "multivector_config": { "description": "Vector specific configuration to enable multiple vectors per point", "anyOf": [ { "$ref": "#/components/schemas/MultiVectorConfig" }, { "nullable": true } ] }, "datatype": { "description": "Vector specific configuration to set specific storage element type", "anyOf": [ { "$ref": "#/components/schemas/VectorStorageDatatype" }, { "nullable": true } ] } } }, "VectorStorageType": { "description": "Storage types for vectors", "oneOf": [ { "description": "Storage in memory (RAM)\\n\\nWill be very fast at the cost of consuming a lot of memory.", "type": "string", "enum": [ "Memory" ] }, { "description": "Storage in mmap file, not appendable\\n\\nSearch performance is defined by disk speed and the fraction of vectors that fit in memory.", "type": "string", "enum": [ "Mmap" ] }, { "description": "Storage in chunked mmap files, appendable\\n\\nSearch performance is defined by disk speed and the fraction of vectors that fit in memory.", "type": "string", "enum": [ "ChunkedMmap" ] }, { "description": "Same as \`ChunkedMmap\`, but vectors are forced to be locked in RAM In this way we avoid cold requests to disk, but risk to run out of memory\\n\\nDesigned as a replacement for \`Memory\`, which doesn't depend on RocksDB", "type": "string", "enum": [ "InRamChunkedMmap" ] } ] }, "Indexes": { "description": "Vector index configuration", "oneOf": [ { "description": "Do not use any index, scan whole vector collection during search. Guarantee 100% precision, but may be time consuming on large collections.", "type": "object", "required": [ "options", "type" ], "properties": { "type": { "type": "string", "enum": [ "plain" ] }, "options": { "type": "object" } } }, { "description": "Use filterable HNSW index for approximate search. Is very fast even on a very huge collections, but require additional space to store index and additional time to build it.", "type": "object", "required": [ "options", "type" ], "properties": { "type": { "type": "string", "enum": [ "hnsw" ] }, "options": { "$ref": "#/components/schemas/HnswConfig" } } } ] }, "VectorStorageDatatype": { "description": "Storage types for vectors", "type": "string", "enum": [ "float32", "float16", "uint8" ] }, "SparseVectorDataConfig": { "description": "Config of single sparse vector data storage", "type": "object", "required": [ "index" ], "properties": { "index": { "$ref": "#/components/schemas/SparseIndexConfig" }, "storage_type": { "$ref": "#/components/schemas/SparseVectorStorageType" } } }, "SparseIndexConfig": { "description": "Configuration for sparse inverted index.", "type": "object", "required": [ "index_type" ], "properties": { "full_scan_threshold": { "description": "We prefer a full scan search upto (excluding) this number of vectors.\\n\\nNote: this is number of vectors, not KiloBytes.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "index_type": { "$ref": "#/components/schemas/SparseIndexType" }, "datatype": { "description": "Datatype used to store weights in the index.", "anyOf": [ { "$ref": "#/components/schemas/VectorStorageDatatype" }, { "nullable": true } ] } } }, "SparseIndexType": { "description": "Sparse index types", "oneOf": [ { "description": "Mutable RAM sparse index", "type": "string", "enum": [ "MutableRam" ] }, { "description": "Immutable RAM sparse index", "type": "string", "enum": [ "ImmutableRam" ] }, { "description": "Mmap sparse index", "type": "string", "enum": [ "Mmap" ] } ] }, "SparseVectorStorageType": { "oneOf": [ { "description": "Storage on disk", "type": "string", "enum": [ "on_disk" ] }, { "description": "Storage in memory maps", "type": "string", "enum": [ "mmap" ] } ] }, "PayloadStorageType": { "description": "Type of payload storage", "oneOf": [ { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "in_memory" ] } } }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "on_disk" ] } } }, { "type": "object", "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "mmap" ] } } } ] }, "VectorIndexSearchesTelemetry": { "type": "object", "required": [ "filtered_exact", "filtered_large_cardinality", "filtered_plain", "filtered_small_cardinality", "filtered_sparse", "unfiltered_exact", "unfiltered_hnsw", "unfiltered_plain", "unfiltered_sparse" ], "properties": { "index_name": { "type": "string", "nullable": true }, "unfiltered_plain": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "unfiltered_hnsw": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "unfiltered_sparse": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "filtered_plain": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "filtered_small_cardinality": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "filtered_large_cardinality": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "filtered_exact": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "filtered_sparse": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "unfiltered_exact": { "$ref": "#/components/schemas/OperationDurationStatistics" } } }, "OperationDurationStatistics": { "type": "object", "required": [ "count", "total_duration_micros" ], "properties": { "count": { "type": "integer", "format": "uint", "minimum": 0 }, "fail_count": { "type": "integer", "format": "uint", "minimum": 0 }, "avg_duration_micros": { "description": "The average time taken by 128 latest operations, calculated as a weighted mean.", "type": "number", "format": "float", "nullable": true }, "min_duration_micros": { "description": "The minimum duration of the operations across all the measurements.", "type": "number", "format": "float", "nullable": true }, "max_duration_micros": { "description": "The maximum duration of the operations across all the measurements.", "type": "number", "format": "float", "nullable": true }, "total_duration_micros": { "description": "The total duration of all operations in microseconds.", "type": "integer", "format": "uint64", "minimum": 0 }, "last_responded": { "type": "string", "format": "date-time", "nullable": true } } }, "PayloadIndexTelemetry": { "type": "object", "required": [ "points_count", "points_values_count" ], "properties": { "field_name": { "type": "string", "nullable": true }, "points_values_count": { "description": "The amount of values indexed for all points.", "type": "integer", "format": "uint", "minimum": 0 }, "points_count": { "description": "The amount of points that have at least one value indexed.", "type": "integer", "format": "uint", "minimum": 0 }, "histogram_bucket_size": { "type": "integer", "format": "uint", "minimum": 0, "nullable": true } } }, "OptimizerTelemetry": { "type": "object", "required": [ "log", "optimizations", "status" ], "properties": { "status": { "$ref": "#/components/schemas/OptimizersStatus" }, "optimizations": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "log": { "type": "array", "items": { "$ref": "#/components/schemas/TrackerTelemetry" } } } }, "TrackerTelemetry": { "description": "Tracker object used in telemetry", "type": "object", "required": [ "name", "segment_ids", "start_at", "status" ], "properties": { "name": { "description": "Name of the optimizer", "type": "string" }, "segment_ids": { "description": "Segment IDs being optimized", "type": "array", "items": { "type": "integer", "format": "uint", "minimum": 0 } }, "status": { "$ref": "#/components/schemas/TrackerStatus" }, "start_at": { "description": "Start time of the optimizer", "type": "string", "format": "date-time" }, "end_at": { "description": "End time of the optimizer", "type": "string", "format": "date-time", "nullable": true } } }, "TrackerStatus": { "description": "Represents the current state of the optimizer being tracked", "oneOf": [ { "type": "string", "enum": [ "optimizing", "done" ] }, { "type": "object", "required": [ "cancelled" ], "properties": { "cancelled": { "type": "string" } }, "additionalProperties": false }, { "type": "object", "required": [ "error" ], "properties": { "error": { "type": "string" } }, "additionalProperties": false } ] }, "RemoteShardTelemetry": { "type": "object", "required": [ "searches", "shard_id", "updates" ], "properties": { "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "peer_id": { "type": "integer", "format": "uint64", "minimum": 0, "nullable": true }, "searches": { "$ref": "#/components/schemas/OperationDurationStatistics" }, "updates": { "$ref": "#/components/schemas/OperationDurationStatistics" } } }, "ShardCleanStatusTelemetry": { "oneOf": [ { "type": "string", "enum": [ "started", "done", "cancelled" ] }, { "type": "object", "required": [ "progress" ], "properties": { "progress": { "$ref": "#/components/schemas/ShardCleanStatusProgressTelemetry" } }, "additionalProperties": false }, { "type": "object", "required": [ "failed" ], "properties": { "failed": { "$ref": "#/components/schemas/ShardCleanStatusFailedTelemetry" } }, "additionalProperties": false } ] }, "ShardCleanStatusProgressTelemetry": { "type": "object", "required": [ "deleted_points" ], "properties": { "deleted_points": { "type": "integer", "format": "uint", "minimum": 0 } } }, "ShardCleanStatusFailedTelemetry": { "type": "object", "required": [ "reason" ], "properties": { "reason": { "type": "string" } } }, "CollectionsAggregatedTelemetry": { "type": "object", "required": [ "optimizers_status", "params", "vectors" ], "properties": { "vectors": { "type": "integer", "format": "uint", "minimum": 0 }, "optimizers_status": { "$ref": "#/components/schemas/OptimizersStatus" }, "params": { "$ref": "#/components/schemas/CollectionParams" } } }, "ClusterTelemetry": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean" }, "status": { "anyOf": [ { "$ref": "#/components/schemas/ClusterStatusTelemetry" }, { "nullable": true } ] }, "config": { "anyOf": [ { "$ref": "#/components/schemas/ClusterConfigTelemetry" }, { "nullable": true } ] }, "peers": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PeerInfo" }, "nullable": true }, "metadata": { "type": "object", "additionalProperties": true, "nullable": true } } }, "ClusterStatusTelemetry": { "type": "object", "required": [ "commit", "consensus_thread_status", "is_voter", "number_of_peers", "pending_operations", "term" ], "properties": { "number_of_peers": { "type": "integer", "format": "uint", "minimum": 0 }, "term": { "type": "integer", "format": "uint64", "minimum": 0 }, "commit": { "type": "integer", "format": "uint64", "minimum": 0 }, "pending_operations": { "type": "integer", "format": "uint", "minimum": 0 }, "role": { "anyOf": [ { "$ref": "#/components/schemas/StateRole" }, { "nullable": true } ] }, "is_voter": { "type": "boolean" }, "peer_id": { "type": "integer", "format": "uint64", "minimum": 0, "nullable": true }, "consensus_thread_status": { "$ref": "#/components/schemas/ConsensusThreadStatus" } } }, "ClusterConfigTelemetry": { "type": "object", "required": [ "consensus", "grpc_timeout_ms", "p2p" ], "properties": { "grpc_timeout_ms": { "type": "integer", "format": "uint64", "minimum": 0 }, "p2p": { "$ref": "#/components/schemas/P2pConfigTelemetry" }, "consensus": { "$ref": "#/components/schemas/ConsensusConfigTelemetry" } } }, "P2pConfigTelemetry": { "type": "object", "required": [ "connection_pool_size" ], "properties": { "connection_pool_size": { "type": "integer", "format": "uint", "minimum": 0 } } }, "ConsensusConfigTelemetry": { "type": "object", "required": [ "bootstrap_timeout_sec", "max_message_queue_size", "tick_period_ms" ], "properties": { "max_message_queue_size": { "type": "integer", "format": "uint", "minimum": 0 }, "tick_period_ms": { "type": "integer", "format": "uint64", "minimum": 0 }, "bootstrap_timeout_sec": { "type": "integer", "format": "uint64", "minimum": 0 } } }, "RequestsTelemetry": { "type": "object", "required": [ "grpc", "rest" ], "properties": { "rest": { "$ref": "#/components/schemas/WebApiTelemetry" }, "grpc": { "$ref": "#/components/schemas/GrpcTelemetry" } } }, "WebApiTelemetry": { "type": "object", "required": [ "responses" ], "properties": { "responses": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/OperationDurationStatistics" } } } } }, "GrpcTelemetry": { "type": "object", "required": [ "responses" ], "properties": { "responses": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/OperationDurationStatistics" } } } }, "MemoryTelemetry": { "type": "object", "required": [ "active_bytes", "allocated_bytes", "metadata_bytes", "resident_bytes", "retained_bytes" ], "properties": { "active_bytes": { "description": "Total number of bytes in active pages allocated by the application", "type": "integer", "format": "uint", "minimum": 0 }, "allocated_bytes": { "description": "Total number of bytes allocated by the application", "type": "integer", "format": "uint", "minimum": 0 }, "metadata_bytes": { "description": "Total number of bytes dedicated to metadata", "type": "integer", "format": "uint", "minimum": 0 }, "resident_bytes": { "description": "Maximum number of bytes in physically resident data pages mapped", "type": "integer", "format": "uint", "minimum": 0 }, "retained_bytes": { "description": "Total number of bytes in virtual memory mappings", "type": "integer", "format": "uint", "minimum": 0 } } }, "HardwareTelemetry": { "type": "object", "required": [ "collection_data" ], "properties": { "collection_data": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/HardwareUsage" } } } }, "HardwareUsage": { "description": "Usage of the hardware resources, spent to process the request", "type": "object", "required": [ "cpu", "io_read", "io_write" ], "properties": { "cpu": { "type": "integer", "format": "uint", "minimum": 0 }, "io_read": { "type": "integer", "format": "uint", "minimum": 0 }, "io_write": { "type": "integer", "format": "uint", "minimum": 0 } } }, "ClusterOperations": { "anyOf": [ { "$ref": "#/components/schemas/MoveShardOperation" }, { "$ref": "#/components/schemas/ReplicateShardOperation" }, { "$ref": "#/components/schemas/AbortTransferOperation" }, { "$ref": "#/components/schemas/DropReplicaOperation" }, { "$ref": "#/components/schemas/CreateShardingKeyOperation" }, { "$ref": "#/components/schemas/DropShardingKeyOperation" }, { "$ref": "#/components/schemas/RestartTransferOperation" }, { "$ref": "#/components/schemas/StartReshardingOperation" }, { "$ref": "#/components/schemas/AbortReshardingOperation" } ] }, "MoveShardOperation": { "type": "object", "required": [ "move_shard" ], "properties": { "move_shard": { "$ref": "#/components/schemas/MoveShard" } } }, "MoveShard": { "type": "object", "required": [ "from_peer_id", "shard_id", "to_peer_id" ], "properties": { "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "to_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "from_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "method": { "description": "Method for transferring the shard from one node to another", "anyOf": [ { "$ref": "#/components/schemas/ShardTransferMethod" }, { "nullable": true } ] } } }, "ReplicateShardOperation": { "type": "object", "required": [ "replicate_shard" ], "properties": { "replicate_shard": { "$ref": "#/components/schemas/ReplicateShard" } } }, "ReplicateShard": { "type": "object", "required": [ "from_peer_id", "shard_id", "to_peer_id" ], "properties": { "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "to_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "from_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "method": { "description": "Method for transferring the shard from one node to another", "anyOf": [ { "$ref": "#/components/schemas/ShardTransferMethod" }, { "nullable": true } ] } } }, "AbortTransferOperation": { "type": "object", "required": [ "abort_transfer" ], "properties": { "abort_transfer": { "$ref": "#/components/schemas/AbortShardTransfer" } } }, "AbortShardTransfer": { "type": "object", "required": [ "from_peer_id", "shard_id", "to_peer_id" ], "properties": { "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "to_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "from_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 } } }, "DropReplicaOperation": { "type": "object", "required": [ "drop_replica" ], "properties": { "drop_replica": { "$ref": "#/components/schemas/Replica" } } }, "Replica": { "type": "object", "required": [ "peer_id", "shard_id" ], "properties": { "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "peer_id": { "type": "integer", "format": "uint64", "minimum": 0 } } }, "CreateShardingKeyOperation": { "type": "object", "required": [ "create_sharding_key" ], "properties": { "create_sharding_key": { "$ref": "#/components/schemas/CreateShardingKey" } } }, "CreateShardingKey": { "type": "object", "required": [ "shard_key" ], "properties": { "shard_key": { "$ref": "#/components/schemas/ShardKey" }, "shards_number": { "description": "How many shards to create for this key If not specified, will use the default value from config", "type": "integer", "format": "uint32", "minimum": 1, "nullable": true }, "replication_factor": { "description": "How many replicas to create for each shard If not specified, will use the default value from config", "type": "integer", "format": "uint32", "minimum": 1, "nullable": true }, "placement": { "description": "Placement of shards for this key List of peer ids, that can be used to place shards for this key If not specified, will be randomly placed among all peers", "type": "array", "items": { "type": "integer", "format": "uint64", "minimum": 0 }, "nullable": true } } }, "DropShardingKeyOperation": { "type": "object", "required": [ "drop_sharding_key" ], "properties": { "drop_sharding_key": { "$ref": "#/components/schemas/DropShardingKey" } } }, "DropShardingKey": { "type": "object", "required": [ "shard_key" ], "properties": { "shard_key": { "$ref": "#/components/schemas/ShardKey" } } }, "RestartTransferOperation": { "type": "object", "required": [ "restart_transfer" ], "properties": { "restart_transfer": { "$ref": "#/components/schemas/RestartTransfer" } } }, "RestartTransfer": { "type": "object", "required": [ "from_peer_id", "method", "shard_id", "to_peer_id" ], "properties": { "shard_id": { "type": "integer", "format": "uint32", "minimum": 0 }, "from_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "to_peer_id": { "type": "integer", "format": "uint64", "minimum": 0 }, "method": { "$ref": "#/components/schemas/ShardTransferMethod" } } }, "StartReshardingOperation": { "type": "object", "required": [ "start_resharding" ], "properties": { "start_resharding": { "$ref": "#/components/schemas/StartResharding" } } }, "StartResharding": { "type": "object", "required": [ "direction" ], "properties": { "direction": { "$ref": "#/components/schemas/ReshardingDirection" }, "peer_id": { "type": "integer", "format": "uint64", "minimum": 0, "nullable": true }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKey" }, { "nullable": true } ] } } }, "AbortReshardingOperation": { "type": "object", "required": [ "abort_resharding" ], "properties": { "abort_resharding": { "$ref": "#/components/schemas/AbortResharding" } } }, "AbortResharding": { "type": "object" }, "SearchRequestBatch": { "type": "object", "required": [ "searches" ], "properties": { "searches": { "type": "array", "items": { "$ref": "#/components/schemas/SearchRequest" } } } }, "RecommendRequestBatch": { "type": "object", "required": [ "searches" ], "properties": { "searches": { "type": "array", "items": { "$ref": "#/components/schemas/RecommendRequest" } } } }, "LocksOption": { "type": "object", "required": [ "write" ], "properties": { "error_message": { "type": "string", "nullable": true }, "write": { "type": "boolean" } } }, "SnapshotRecover": { "type": "object", "required": [ "location" ], "properties": { "location": { "description": "Examples: - URL \`http://localhost:8080/collections/my_collection/snapshots/my_snapshot\` - Local path \`file:///qdrant/snapshots/test_collection-2022-08-04-10-49-10.snapshot\`", "type": "string", "format": "uri" }, "priority": { "description": "Defines which data should be used as a source of truth if there are other replicas in the cluster. If set to \`Snapshot\`, the snapshot will be used as a source of truth, and the current state will be overwritten. If set to \`Replica\`, the current state will be used as a source of truth, and after recovery if will be synchronized with the snapshot.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/SnapshotPriority" }, { "nullable": true } ] }, "checksum": { "description": "Optional SHA256 checksum to verify snapshot integrity before recovery.", "default": null, "type": "string", "nullable": true }, "api_key": { "description": "Optional API key used when fetching the snapshot from a remote URL.", "default": null, "type": "string", "nullable": true } } }, "SnapshotPriority": { "description": "Defines source of truth for snapshot recovery:\\n\\n\`NoSync\` means - restore snapshot without *any* additional synchronization. \`Snapshot\` means - prefer snapshot data over the current state. \`Replica\` means - prefer existing data over the snapshot.", "type": "string", "enum": [ "no_sync", "snapshot", "replica" ] }, "CollectionsAliasesResponse": { "type": "object", "required": [ "aliases" ], "properties": { "aliases": { "type": "array", "items": { "$ref": "#/components/schemas/AliasDescription" } } } }, "AliasDescription": { "type": "object", "required": [ "alias_name", "collection_name" ], "properties": { "alias_name": { "type": "string" }, "collection_name": { "type": "string" } }, "example": { "alias_name": "blogs-title", "collection_name": "arivx-title" } }, "WriteOrdering": { "description": "Defines write ordering guarantees for collection operations\\n\\n* \`weak\` - write operations may be reordered, works faster, default\\n\\n* \`medium\` - write operations go through dynamically selected leader, may be inconsistent for a short period of time in case of leader change\\n\\n* \`strong\` - Write operations go through the permanent leader, consistent, but may be unavailable if leader is down", "type": "string", "enum": [ "weak", "medium", "strong" ] }, "ReadConsistency": { "description": "Read consistency parameter\\n\\nDefines how many replicas should be queried to get the result\\n\\n* \`N\` - send N random request and return points, which present on all of them\\n\\n* \`majority\` - send N/2+1 random request and return points, which present on all of them\\n\\n* \`quorum\` - send requests to all nodes and return points which present on majority of them\\n\\n* \`all\` - send requests to all nodes and return points which present on all of them\\n\\nDefault value is \`Factor(1)\`", "anyOf": [ { "type": "integer", "format": "uint", "minimum": 0 }, { "$ref": "#/components/schemas/ReadConsistencyType" } ] }, "ReadConsistencyType": { "description": "* \`majority\` - send N/2+1 random request and return points, which present on all of them\\n\\n* \`quorum\` - send requests to all nodes and return points which present on majority of nodes\\n\\n* \`all\` - send requests to all nodes and return points which present on all nodes", "type": "string", "enum": [ "majority", "quorum", "all" ] }, "UpdateVectors": { "type": "object", "required": [ "points" ], "properties": { "points": { "description": "Points with named vectors", "type": "array", "items": { "$ref": "#/components/schemas/PointVectors" }, "minItems": 1 }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "PointVectors": { "type": "object", "required": [ "id", "vector" ], "properties": { "id": { "$ref": "#/components/schemas/ExtendedPointId" }, "vector": { "$ref": "#/components/schemas/VectorStruct" } } }, "DeleteVectors": { "type": "object", "required": [ "vector" ], "properties": { "points": { "description": "Deletes values from each point in this list", "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" }, "nullable": true }, "filter": { "description": "Deletes values from points that satisfy this filter condition", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "vector": { "description": "Vector names", "type": "array", "items": { "type": "string" }, "minItems": 1, "uniqueItems": true }, "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] } } }, "PointGroup": { "type": "object", "required": [ "hits", "id" ], "properties": { "hits": { "description": "Scored points that have the same value of the group_by key", "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } }, "id": { "$ref": "#/components/schemas/GroupId" }, "lookup": { "description": "Record that has been looked up using the group id", "anyOf": [ { "$ref": "#/components/schemas/Record" }, { "nullable": true } ] } } }, "GroupId": { "description": "Value of the group_by key, shared across all the hits in the group", "anyOf": [ { "type": "string" }, { "type": "integer", "format": "uint64", "minimum": 0 }, { "type": "integer", "format": "int64" } ] }, "SearchGroupsRequest": { "type": "object", "required": [ "group_by", "group_size", "limit", "vector" ], "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "vector": { "$ref": "#/components/schemas/NamedVectorStruct" }, "filter": { "description": "Look only for points which satisfies this conditions", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Additional search params", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "with_payload": { "description": "Select which payload to return with the response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vector": { "description": "Options for specifying which vectors to include into response. Default is false.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] }, "score_threshold": { "description": "Define a minimal score threshold for the result. If defined, less similar results will not be returned. Score of the returned result might be higher or smaller than the threshold depending on the Distance function used. E.g. for cosine similarity only higher scores will be returned.", "type": "number", "format": "float", "nullable": true }, "group_by": { "description": "Payload field to group by, must be a string or number field. If the field contains more than 1 value, all values will be used for grouping. One point can be in multiple groups.", "type": "string", "minLength": 1 }, "group_size": { "description": "Maximum amount of points to return per group", "type": "integer", "format": "uint32", "minimum": 1 }, "limit": { "description": "Maximum amount of groups to return", "type": "integer", "format": "uint32", "minimum": 1 }, "with_lookup": { "description": "Look for points in another collection using the group ids", "anyOf": [ { "$ref": "#/components/schemas/WithLookupInterface" }, { "nullable": true } ] } } }, "WithLookupInterface": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/WithLookup" } ] }, "WithLookup": { "type": "object", "required": [ "collection" ], "properties": { "collection": { "description": "Name of the collection to use for points lookup", "type": "string" }, "with_payload": { "description": "Options for specifying which payload to include (or not)", "default": true, "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vectors": { "description": "Options for specifying which vectors to include (or not)", "default": null, "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] } } }, "RecommendGroupsRequest": { "type": "object", "required": [ "group_by", "group_size", "limit" ], "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "positive": { "description": "Look for vectors closest to those", "default": [], "type": "array", "items": { "$ref": "#/components/schemas/RecommendExample" } }, "negative": { "description": "Try to avoid vectors like this", "default": [], "type": "array", "items": { "$ref": "#/components/schemas/RecommendExample" } }, "strategy": { "description": "How to use positive and negative examples to find the results", "default": null, "anyOf": [ { "$ref": "#/components/schemas/RecommendStrategy" }, { "nullable": true } ] }, "filter": { "description": "Look only for points which satisfies this conditions", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Additional search params", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "with_payload": { "description": "Select which payload to return with the response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vector": { "description": "Options for specifying which vectors to include into response. Default is false.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] }, "score_threshold": { "description": "Define a minimal score threshold for the result. If defined, less similar results will not be returned. Score of the returned result might be higher or smaller than the threshold depending on the Distance function used. E.g. for cosine similarity only higher scores will be returned.", "type": "number", "format": "float", "nullable": true }, "using": { "description": "Define which vector to use for recommendation, if not specified - try to use default vector", "default": null, "anyOf": [ { "$ref": "#/components/schemas/UsingVector" }, { "nullable": true } ] }, "lookup_from": { "description": "The location used to lookup vectors. If not specified - use current collection. Note: the other collection should have the same vector size as the current collection", "default": null, "anyOf": [ { "$ref": "#/components/schemas/LookupLocation" }, { "nullable": true } ] }, "group_by": { "description": "Payload field to group by, must be a string or number field. If the field contains more than 1 value, all values will be used for grouping. One point can be in multiple groups.", "type": "string", "minLength": 1 }, "group_size": { "description": "Maximum amount of points to return per group", "type": "integer", "format": "uint32", "minimum": 1 }, "limit": { "description": "Maximum amount of groups to return", "type": "integer", "format": "uint32", "minimum": 1 }, "with_lookup": { "description": "Look for points in another collection using the group ids", "anyOf": [ { "$ref": "#/components/schemas/WithLookupInterface" }, { "nullable": true } ] } } }, "GroupsResult": { "type": "object", "required": [ "groups" ], "properties": { "groups": { "type": "array", "items": { "$ref": "#/components/schemas/PointGroup" } } } }, "UpdateOperations": { "type": "object", "required": [ "operations" ], "properties": { "operations": { "type": "array", "items": { "$ref": "#/components/schemas/UpdateOperation" } } } }, "UpdateOperation": { "anyOf": [ { "$ref": "#/components/schemas/UpsertOperation" }, { "$ref": "#/components/schemas/DeleteOperation" }, { "$ref": "#/components/schemas/SetPayloadOperation" }, { "$ref": "#/components/schemas/OverwritePayloadOperation" }, { "$ref": "#/components/schemas/DeletePayloadOperation" }, { "$ref": "#/components/schemas/ClearPayloadOperation" }, { "$ref": "#/components/schemas/UpdateVectorsOperation" }, { "$ref": "#/components/schemas/DeleteVectorsOperation" } ] }, "UpsertOperation": { "type": "object", "required": [ "upsert" ], "properties": { "upsert": { "$ref": "#/components/schemas/PointInsertOperations" } } }, "DeleteOperation": { "type": "object", "required": [ "delete" ], "properties": { "delete": { "$ref": "#/components/schemas/PointsSelector" } } }, "SetPayloadOperation": { "type": "object", "required": [ "set_payload" ], "properties": { "set_payload": { "$ref": "#/components/schemas/SetPayload" } } }, "OverwritePayloadOperation": { "type": "object", "required": [ "overwrite_payload" ], "properties": { "overwrite_payload": { "$ref": "#/components/schemas/SetPayload" } } }, "DeletePayloadOperation": { "type": "object", "required": [ "delete_payload" ], "properties": { "delete_payload": { "$ref": "#/components/schemas/DeletePayload" } } }, "ClearPayloadOperation": { "type": "object", "required": [ "clear_payload" ], "properties": { "clear_payload": { "$ref": "#/components/schemas/PointsSelector" } } }, "UpdateVectorsOperation": { "type": "object", "required": [ "update_vectors" ], "properties": { "update_vectors": { "$ref": "#/components/schemas/UpdateVectors" } } }, "DeleteVectorsOperation": { "type": "object", "required": [ "delete_vectors" ], "properties": { "delete_vectors": { "$ref": "#/components/schemas/DeleteVectors" } } }, "ShardSnapshotRecover": { "type": "object", "required": [ "location" ], "properties": { "location": { "$ref": "#/components/schemas/ShardSnapshotLocation" }, "priority": { "default": null, "anyOf": [ { "$ref": "#/components/schemas/SnapshotPriority" }, { "nullable": true } ] }, "checksum": { "description": "Optional SHA256 checksum to verify snapshot integrity before recovery.", "default": null, "type": "string", "nullable": true }, "api_key": { "description": "Optional API key used when fetching the snapshot from a remote URL.", "default": null, "type": "string", "nullable": true } } }, "ShardSnapshotLocation": { "anyOf": [ { "type": "string", "format": "uri" }, { "type": "string" } ] }, "DiscoverRequest": { "description": "Use context and a target to find the most similar points, constrained by the context.", "type": "object", "required": [ "limit" ], "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "target": { "description": "Look for vectors closest to this.\\n\\nWhen using the target (with or without context), the integer part of the score represents the rank with respect to the context, while the decimal part of the score relates to the distance to the target.", "anyOf": [ { "$ref": "#/components/schemas/RecommendExample" }, { "nullable": true } ] }, "context": { "description": "Pairs of { positive, negative } examples to constrain the search.\\n\\nWhen using only the context (without a target), a special search - called context search - is performed where pairs of points are used to generate a loss that guides the search towards the zone where most positive examples overlap. This means that the score minimizes the scenario of finding a point closer to a negative than to a positive part of a pair.\\n\\nSince the score of a context relates to loss, the maximum score a point can get is 0.0, and it becomes normal that many points can have a score of 0.0.\\n\\nFor discovery search (when including a target), the context part of the score for each pair is calculated +1 if the point is closer to a positive than to a negative part of a pair, and -1 otherwise.", "type": "array", "items": { "$ref": "#/components/schemas/ContextExamplePair" }, "nullable": true }, "filter": { "description": "Look only for points which satisfies this conditions", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Additional search params", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "limit": { "description": "Max number of result to return", "type": "integer", "format": "uint", "minimum": 1 }, "offset": { "description": "Offset of the first result to return. May be used to paginate results. Note: large offset values may cause performance issues.", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "with_payload": { "description": "Select which payload to return with the response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "with_vector": { "description": "Options for specifying which vectors to include into response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] }, "using": { "description": "Define which vector to use for recommendation, if not specified - try to use default vector", "default": null, "anyOf": [ { "$ref": "#/components/schemas/UsingVector" }, { "nullable": true } ] }, "lookup_from": { "description": "The location used to lookup vectors. If not specified - use current collection. Note: the other collection should have the same vector size as the current collection", "default": null, "anyOf": [ { "$ref": "#/components/schemas/LookupLocation" }, { "nullable": true } ] } } }, "ContextExamplePair": { "type": "object", "required": [ "negative", "positive" ], "properties": { "positive": { "$ref": "#/components/schemas/RecommendExample" }, "negative": { "$ref": "#/components/schemas/RecommendExample" } } }, "DiscoverRequestBatch": { "type": "object", "required": [ "searches" ], "properties": { "searches": { "type": "array", "items": { "$ref": "#/components/schemas/DiscoverRequest" } } } }, "VersionInfo": { "type": "object", "required": [ "title", "version" ], "properties": { "title": { "type": "string" }, "version": { "type": "string" }, "commit": { "type": "string", "nullable": true } } }, "CollectionExistence": { "description": "State of existence of a collection, true = exists, false = does not exist", "type": "object", "required": [ "exists" ], "properties": { "exists": { "type": "boolean" } } }, "QueryRequest": { "type": "object", "properties": { "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "prefetch": { "description": "Sub-requests to perform first. If present, the query will be performed on the results of the prefetch(es).", "default": null, "anyOf": [ { "$ref": "#/components/schemas/Prefetch" }, { "type": "array", "items": { "$ref": "#/components/schemas/Prefetch" } }, { "nullable": true } ] }, "query": { "description": "Query to perform. If missing without prefetches, returns points ordered by their IDs.", "anyOf": [ { "$ref": "#/components/schemas/QueryInterface" }, { "nullable": true } ] }, "using": { "description": "Define which vector name to use for querying. If missing, the default vector is used.", "type": "string", "nullable": true }, "filter": { "description": "Filter conditions - return only those points that satisfy the specified conditions.", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Search params for when there is no prefetch", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "score_threshold": { "description": "Return points with scores better than this threshold.", "type": "number", "format": "float", "nullable": true }, "limit": { "description": "Max number of points to return. Default is 10.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "offset": { "description": "Offset of the result. Skip this many points. Default is 0", "type": "integer", "format": "uint", "minimum": 0, "nullable": true }, "with_vector": { "description": "Options for specifying which vectors to include into the response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] }, "with_payload": { "description": "Options for specifying which payload to include or not. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "lookup_from": { "description": "The location to use for IDs lookup, if not specified - use the current collection and the 'using' vector Note: the other collection vectors should have the same vector size as the 'using' vector in the current collection", "default": null, "anyOf": [ { "$ref": "#/components/schemas/LookupLocation" }, { "nullable": true } ] } } }, "Prefetch": { "type": "object", "properties": { "prefetch": { "description": "Sub-requests to perform first. If present, the query will be performed on the results of the prefetches.", "default": null, "anyOf": [ { "$ref": "#/components/schemas/Prefetch" }, { "type": "array", "items": { "$ref": "#/components/schemas/Prefetch" } }, { "nullable": true } ] }, "query": { "description": "Query to perform. If missing without prefetches, returns points ordered by their IDs.", "anyOf": [ { "$ref": "#/components/schemas/QueryInterface" }, { "nullable": true } ] }, "using": { "description": "Define which vector name to use for querying. If missing, the default vector is used.", "type": "string", "nullable": true }, "filter": { "description": "Filter conditions - return only those points that satisfy the specified conditions.", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Search params for when there is no prefetch", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "score_threshold": { "description": "Return points with scores better than this threshold.", "type": "number", "format": "float", "nullable": true }, "limit": { "description": "Max number of points to return. Default is 10.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "lookup_from": { "description": "The location to use for IDs lookup, if not specified - use the current collection and the 'using' vector Note: the other collection vectors should have the same vector size as the 'using' vector in the current collection", "default": null, "anyOf": [ { "$ref": "#/components/schemas/LookupLocation" }, { "nullable": true } ] } } }, "QueryInterface": { "anyOf": [ { "$ref": "#/components/schemas/VectorInput" }, { "$ref": "#/components/schemas/Query" } ] }, "VectorInput": { "anyOf": [ { "type": "array", "items": { "type": "number", "format": "float" } }, { "$ref": "#/components/schemas/SparseVector" }, { "type": "array", "items": { "type": "array", "items": { "type": "number", "format": "float" } } }, { "$ref": "#/components/schemas/ExtendedPointId" }, { "$ref": "#/components/schemas/Document" }, { "$ref": "#/components/schemas/Image" }, { "$ref": "#/components/schemas/InferenceObject" } ] }, "Query": { "anyOf": [ { "$ref": "#/components/schemas/NearestQuery" }, { "$ref": "#/components/schemas/RecommendQuery" }, { "$ref": "#/components/schemas/DiscoverQuery" }, { "$ref": "#/components/schemas/ContextQuery" }, { "$ref": "#/components/schemas/OrderByQuery" }, { "$ref": "#/components/schemas/FusionQuery" }, { "$ref": "#/components/schemas/SampleQuery" } ] }, "NearestQuery": { "type": "object", "required": [ "nearest" ], "properties": { "nearest": { "$ref": "#/components/schemas/VectorInput" } } }, "RecommendQuery": { "type": "object", "required": [ "recommend" ], "properties": { "recommend": { "$ref": "#/components/schemas/RecommendInput" } } }, "RecommendInput": { "type": "object", "properties": { "positive": { "description": "Look for vectors closest to the vectors from these points", "type": "array", "items": { "$ref": "#/components/schemas/VectorInput" }, "nullable": true }, "negative": { "description": "Try to avoid vectors like the vector from these points", "type": "array", "items": { "$ref": "#/components/schemas/VectorInput" }, "nullable": true }, "strategy": { "description": "How to use the provided vectors to find the results", "anyOf": [ { "$ref": "#/components/schemas/RecommendStrategy" }, { "nullable": true } ] } } }, "DiscoverQuery": { "type": "object", "required": [ "discover" ], "properties": { "discover": { "$ref": "#/components/schemas/DiscoverInput" } } }, "DiscoverInput": { "type": "object", "required": [ "context", "target" ], "properties": { "target": { "$ref": "#/components/schemas/VectorInput" }, "context": { "description": "Search space will be constrained by these pairs of vectors", "anyOf": [ { "$ref": "#/components/schemas/ContextPair" }, { "type": "array", "items": { "$ref": "#/components/schemas/ContextPair" } }, { "nullable": true } ] } } }, "ContextPair": { "type": "object", "required": [ "negative", "positive" ], "properties": { "positive": { "$ref": "#/components/schemas/VectorInput" }, "negative": { "$ref": "#/components/schemas/VectorInput" } } }, "ContextQuery": { "type": "object", "required": [ "context" ], "properties": { "context": { "$ref": "#/components/schemas/ContextInput" } } }, "ContextInput": { "anyOf": [ { "$ref": "#/components/schemas/ContextPair" }, { "type": "array", "items": { "$ref": "#/components/schemas/ContextPair" } }, { "nullable": true } ] }, "OrderByQuery": { "type": "object", "required": [ "order_by" ], "properties": { "order_by": { "$ref": "#/components/schemas/OrderByInterface" } } }, "FusionQuery": { "type": "object", "required": [ "fusion" ], "properties": { "fusion": { "$ref": "#/components/schemas/Fusion" } } }, "Fusion": { "description": "Fusion algorithm allows to combine results of multiple prefetches.\\n\\nAvailable fusion algorithms:\\n\\n* \`rrf\` - Reciprocal Rank Fusion * \`dbsf\` - Distribution-Based Score Fusion", "type": "string", "enum": [ "rrf", "dbsf" ] }, "SampleQuery": { "type": "object", "required": [ "sample" ], "properties": { "sample": { "$ref": "#/components/schemas/Sample" } } }, "Sample": { "type": "string", "enum": [ "random" ] }, "QueryRequestBatch": { "type": "object", "required": [ "searches" ], "properties": { "searches": { "type": "array", "items": { "$ref": "#/components/schemas/QueryRequest" } } } }, "QueryResponse": { "type": "object", "required": [ "points" ], "properties": { "points": { "type": "array", "items": { "$ref": "#/components/schemas/ScoredPoint" } } } }, "QueryGroupsRequest": { "type": "object", "required": [ "group_by" ], "properties": { "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "prefetch": { "description": "Sub-requests to perform first. If present, the query will be performed on the results of the prefetch(es).", "default": null, "anyOf": [ { "$ref": "#/components/schemas/Prefetch" }, { "type": "array", "items": { "$ref": "#/components/schemas/Prefetch" } }, { "nullable": true } ] }, "query": { "description": "Query to perform. If missing without prefetches, returns points ordered by their IDs.", "anyOf": [ { "$ref": "#/components/schemas/QueryInterface" }, { "nullable": true } ] }, "using": { "description": "Define which vector name to use for querying. If missing, the default vector is used.", "type": "string", "nullable": true }, "filter": { "description": "Filter conditions - return only those points that satisfy the specified conditions.", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "params": { "description": "Search params for when there is no prefetch", "anyOf": [ { "$ref": "#/components/schemas/SearchParams" }, { "nullable": true } ] }, "score_threshold": { "description": "Return points with scores better than this threshold.", "type": "number", "format": "float", "nullable": true }, "with_vector": { "description": "Options for specifying which vectors to include into the response. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithVector" }, { "nullable": true } ] }, "with_payload": { "description": "Options for specifying which payload to include or not. Default is false.", "anyOf": [ { "$ref": "#/components/schemas/WithPayloadInterface" }, { "nullable": true } ] }, "lookup_from": { "description": "The location to use for IDs lookup, if not specified - use the current collection and the 'using' vector Note: the other collection vectors should have the same vector size as the 'using' vector in the current collection", "default": null, "anyOf": [ { "$ref": "#/components/schemas/LookupLocation" }, { "nullable": true } ] }, "group_by": { "description": "Payload field to group by, must be a string or number field. If the field contains more than 1 value, all values will be used for grouping. One point can be in multiple groups.", "type": "string", "minLength": 1 }, "group_size": { "description": "Maximum amount of points to return per group. Default is 3.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "limit": { "description": "Maximum amount of groups to return. Default is 10.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "with_lookup": { "description": "Look for points in another collection using the group ids", "anyOf": [ { "$ref": "#/components/schemas/WithLookupInterface" }, { "nullable": true } ] } } }, "SearchMatrixRequest": { "type": "object", "properties": { "shard_key": { "description": "Specify in which shards to look for the points, if not specified - look in all shards", "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "filter": { "description": "Look only for points which satisfies this conditions", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "sample": { "description": "How many points to select and search within. Default is 10.", "type": "integer", "format": "uint", "minimum": 2, "nullable": true }, "limit": { "description": "How many neighbours per sample to find. Default is 3.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "using": { "description": "Define which vector name to use for querying. If missing, the default vector is used.", "type": "string", "nullable": true } } }, "SearchMatrixOffsetsResponse": { "type": "object", "required": [ "ids", "offsets_col", "offsets_row", "scores" ], "properties": { "offsets_row": { "description": "Row indices of the matrix", "type": "array", "items": { "type": "integer", "format": "uint64", "minimum": 0 } }, "offsets_col": { "description": "Column indices of the matrix", "type": "array", "items": { "type": "integer", "format": "uint64", "minimum": 0 } }, "scores": { "description": "Scores associated with matrix coordinates", "type": "array", "items": { "type": "number", "format": "float" } }, "ids": { "description": "Ids of the points in order", "type": "array", "items": { "$ref": "#/components/schemas/ExtendedPointId" } } } }, "SearchMatrixPairsResponse": { "type": "object", "required": [ "pairs" ], "properties": { "pairs": { "description": "List of pairs of points with scores", "type": "array", "items": { "$ref": "#/components/schemas/SearchMatrixPair" } } } }, "SearchMatrixPair": { "description": "Pair of points (a, b) with score", "type": "object", "required": [ "a", "b", "score" ], "properties": { "a": { "$ref": "#/components/schemas/ExtendedPointId" }, "b": { "$ref": "#/components/schemas/ExtendedPointId" }, "score": { "type": "number", "format": "float" } } }, "FacetRequest": { "type": "object", "required": [ "key" ], "properties": { "shard_key": { "anyOf": [ { "$ref": "#/components/schemas/ShardKeySelector" }, { "nullable": true } ] }, "key": { "description": "Payload key to use for faceting.", "type": "string" }, "limit": { "description": "Max number of hits to return. Default is 10.", "type": "integer", "format": "uint", "minimum": 1, "nullable": true }, "filter": { "description": "Filter conditions - only consider points that satisfy these conditions.", "anyOf": [ { "$ref": "#/components/schemas/Filter" }, { "nullable": true } ] }, "exact": { "description": "Whether to do a more expensive exact count for each of the values in the facet. Default is false.", "type": "boolean", "nullable": true } } }, "FacetResponse": { "type": "object", "required": [ "hits" ], "properties": { "hits": { "type": "array", "items": { "$ref": "#/components/schemas/FacetValueHit" } } } }, "FacetValueHit": { "type": "object", "required": [ "count", "value" ], "properties": { "value": { "$ref": "#/components/schemas/FacetValue" }, "count": { "type": "integer", "format": "uint", "minimum": 0 } } }, "FacetValue": { "anyOf": [ { "type": "string" }, { "type": "integer", "format": "int64" }, { "type": "boolean" } ] } } } } `,t2e=["POST","GET","PUT","DELETE","PATCH","HEAD"],qnt="https://api.qdrant.tech/api-reference/",Knt=new Hnt(JSON.parse(Unt)),Gnt={Method:t2e,tokenizer:{root:[[/@?[a-zA-Z][\w$]*/,{cases:{"@Method":"keyword","@default":"variable"}}],[/".*?"/,"string"],[/\/\/.*/,"comment"]]}},Xnt={comments:{lineComment:"//",blockComment:["/*","*/"]},surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:'"',close:'"'}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"}],indentationRules:{increaseIndentPattern:/{\s*$/,decreaseIndentPattern:/^\s*}/}},Ynt={scrollBeyondLastLine:!1,readOnly:!1,fontSize:12,wordWrap:"on",minimap:{enabled:!1},automaticLayout:!0,mouseWheelZoom:!0,glyphMargin:!0,wordBasedSuggestions:!1,scrollbar:{verticalScrollbarSize:7,horizontalScrollbarSize:7}};function Znt(i,e,n){return{provideCodeLenses:function(r){const s=Sse(r.getValue()),o=[];for(let a=0;a{}}},resolveCodeLens:function(r,s){return s}}}function Qnt(i,e){for(let n=0;n0){let n=i[i.length-1],r=!1;(n.value==="{"||n.value==="[")&&(r=!0),e.reverse().map(function(s){s==="}"?(r||i.push({type:"delimiter",value:","}),i.push({type:"string",value:YN},{type:"separator",value:":"},{type:"string",value:""},{type:"brace",value:"}"})):s==="]"&&(r||i.push({type:"delimiter",value:","}),i.push({type:"string",value:YN},{type:"paren",value:"]"})),r=!1})}return i}function bfe(i){var e="";return i.map(function(n){switch(n.type){case"string":e+='"'+n.value+'"';break;case"unclosed-string":e+='"'+n.value;break;default:e+=n.value;break}}),e}function tit(i){let e=Jnt(i),n=e.length,r=RC(e),s=n-r.length,o=s>0?e.slice(-s):[],a=eit(r),l=bfe(a),c=bfe(o);return[JSON.parse(l),c]}class yfe{constructor(e,n,r){this.data=e,this.path=n,this.editedChunk=r}getObjectByPath(){if(this.path===null)return null;let e=this.data;for(let n=0;n0?o=null:o="key",!s)return{key:null,value:null,editing:o};if(s.startsWith(",")&&(s=s.slice(1).trim(),s===""))return{key:null,value:null,editing:"key"};if(s==="")return{key:null,value:null,editing:o};let l=s.split(":");return l.length===1&&(r=l[0].trim(),r.startsWith('"')&&(r=r.slice(1)),r.endsWith('"')?r=r.slice(0,-1):e="key"),l.length!==2?{key:r,value:n,editing:e}:(r=l[0].trim(),r.startsWith('"')&&(r=r.slice(1)),r.endsWith('"')&&(r=r.slice(0,-1)),n=l[1].trim(),e="value",n!==""?(n.startsWith('"')&&(n=n.slice(1)),n.endsWith('"')&&(e=null,n=n.slice(0,-1))):n=null,{key:r,value:n,editing:e})}}function eQ(i){if(i instanceof Array){let e=i.length;if(e===0||i[e-1]!==YN)return null;if(i.pop(),e===1)return[];let r=eQ(i[e-2]);return r!==null?[e-2,...r]:[]}if(i instanceof Object){if(!i.hasOwnProperty(YN))return null;delete i[YN];let e=Object.keys(i);for(let n=0;n{let e=1,n=`${i.method.toUpperCase()} `,r=i.path;const s=i.parameters;if(s){for(let o of s)if(o.in==="path"&&o.required){const a=new RegExp(`\\{${o.name}\\}`,"g");r=r.replace(a,`\${${e}:${o.name}}`),e++}}return n+=r,[n,e]},rit=(i,e)=>{let n="";if(i.required&&i.required.length>0){n+="{";for(let r=0;rs=="{collection_name}"||s.match(/\w+/),s=>n.filter(o=>o.startsWith(s))]};for(let s of this.methods){let o=`${s.method.toUpperCase()} ${s.path}`,a=XN(o);this.trieCompletion.addPath(a,r,s.body)}}completeRequestHeader(e){let n=XN(e);return this.trieCompletion.autocomplete(n)}completeRequestBody(e,n){let r=XN(e),s=this.trieCompletion.match(r);return this.completeRequestBodyByDataRef(s,n)}completeRequestBodyByDataRef(e,n){if(!e)return[];let r=nit(n),s=r.getEditedChunk();if(s.editing==="value"){let o=this.extractor.allEnumValues(e,r.path,s.key||"",s.value||"");return s.value===null?o=o.map(a=>'"'+a+'"'):o=o.map(a=>a+'"'),o}if(s.editing==="key"){let o=this.extractor.allProperties(e,r.path,s.key||"");return s.key===null?o=o.map(a=>'"'+a+'": '):o=o.map(a=>a+'": '),o}return[]}getSnippets(){let e=[];for(let n of this.methods){let[r,s]=iit(n);const o=n.body;if(o){let a=this.extractor.objectByRef(o);const l=rit(a,s);r+=` `+l}e.push({label:n.operationId,documentation:n.summary,insertText:r})}return e}}const sit=(i,e)=>{let n=i;const r=n.match(/\$\{(\d+):collection_name\}/g);if(r)for(const s of r){const o=s.match(/\d+/)[0];if(e.length>0){const a=`\${${o}|${e.join(",")}|}`;n=n.replace(s,a)}}return n},oit=[{documentation:"Create Simple Collection",insertText:`PUT collections/\${1:new_collection_name} { "vectors": { "size": \${2:768}, "distance": "\${3|Dot,Cosine,Euclid,Manhattan|}" } }`},{documentation:"Create Hybrid Collection",insertText:`PUT collections/\${1:new_collection_name} { "vectors": { "\${2:dense_vector_name}": { "size": \${3:768}, "distance": "\${4|Dot,Cosine,Euclid,Manhattan|}" } }, "sparse_vectors": { "\${5:sparse_vector_name}": { "modifier": "\${6|idf,none|}", "index": { "on_disk": \${7|true,false|} } } } }`}],ait=async(i,e)=>{const r=await(await fetch("/dashboard/./openapi.json")).json();let s=[];try{s=(await e.getCollections()).collections.map(l=>l.name)}catch(l){console.error(l)}const o=new n2e(r,s);let a=o.getSnippets();return a=[...a,...oit],a=a.map(l=>(l.insertText=sit(l.insertText,s),l)),{provideCompletionItems:(l,c)=>{let u=[];const d=i.editor.selectedCodeBlock;if(!d){u=[...u,{label:"POST",kind:17,insertText:"POST"},{label:"GET",kind:17,insertText:"GET"},{label:"PUT",kind:17,insertText:"PUT"},{label:"DELETE",kind:17,insertText:"DELETE"},{label:"PATCH",kind:17,insertText:"PATCH"}];const f=l.getWordUntilPosition(c);return a.forEach(p=>{u.push({label:p.documentation,kind:1,documentation:p.documentation,insertText:p.insertText,insertTextRules:4,range:{startLineNumber:c.lineNumber,endLineNumber:c.lineNumber,startColumn:0,endColumn:f.endColumn}})}),{suggestions:u}}const h=c.lineNumber-d.blockStartLine;if(h<0)return{suggestions:[]};if(h===0){const f=d.blockText.slice(0,c.column-1);return u=o.completeRequestHeader(f),u=u.filter(p=>p!=="").map(p=>({label:p,kind:17,insertText:p})),{suggestions:u}}else{const f=d.blockText.split(/\r?\n/),p=f[h].slice(0,c.column-1),g=f.shift(),m=f.slice(0,h-1);m.push(p);const _=m.join(` `);let b=o.completeRequestBody(g,_);return b=b.reduce((y,x)=>(y.findIndex(k=>k.label===x)===-1&&y.push({label:x,kind:17,insertText:x}),y),[]),{suggestions:b}}},triggerCharacters:["/",'"',": "," "]}},lit=["POST","GET","PUT","DELETE","HEAD"];let tQ=[];function cit(i){const e=Sse(i);tQ=[];for(let n=0;n=48&&E<=57)R=R*16+E-48;else if(E>=65&&E<=70)R=R*16+E-65+10;else if(E>=97&&E<=102)R=R*16+E-97+10;else break;r++,D++}return D=n){x+=i.substring(k,r),h=2;break}const D=i.charCodeAt(r);if(D===34){x+=i.substring(k,r),r++;break}if(D===92){if(x+=i.substring(k,r),r++,r>=n){h=2;break}switch(i.charCodeAt(r++)){case 34:x+='"';break;case 92:x+="\\";break;case 47:x+="/";break;case 98:x+="\b";break;case 102:x+="\f";break;case 110:x+=` `;break;case 114:x+="\r";break;case 116:x+=" ";break;case 117:const E=f(4);E>=0?x+=String.fromCharCode(E):h=4;break;default:h=5}k=r;continue}if(D>=0&&D<=31)if(FR(D)){x+=i.substring(k,r),h=2;break}else h=6;r++}return x}function _(){if(s="",h=0,o=r,c=l,d=u,r>=n)return o=n,a=17;let x=i.charCodeAt(r);if(MU(x)){do r++,s+=String.fromCharCode(x),x=i.charCodeAt(r);while(MU(x));return a=15}if(FR(x))return r++,s+=String.fromCharCode(x),x===13&&i.charCodeAt(r)===10&&(r++,s+=` `),l++,u=r,a=14;switch(x){case 123:return r++,a=1;case 125:return r++,a=2;case 91:return r++,a=3;case 93:return r++,a=4;case 58:return r++,a=6;case 44:return r++,a=5;case 34:return r++,s=m(),a=10;case 47:const k=r-1;if(i.charCodeAt(r+1)===47){for(r+=2;r=12&&x<=15);return x}return{setPosition:p,getPosition:()=>r,scan:e?y:_,getToken:()=>a,getTokenValue:()=>s,getTokenOffset:()=>o,getTokenLength:()=>r-o,getTokenStartLine:()=>c,getTokenStartCharacter:()=>o-d,getTokenError:()=>h}}function MU(i){return i===32||i===9}function FR(i){return i===10||i===13}function qL(i){return i>=48&&i<=57}var wfe;(function(i){i[i.lineFeed=10]="lineFeed",i[i.carriageReturn=13]="carriageReturn",i[i.space=32]="space",i[i._0=48]="_0",i[i._1=49]="_1",i[i._2=50]="_2",i[i._3=51]="_3",i[i._4=52]="_4",i[i._5=53]="_5",i[i._6=54]="_6",i[i._7=55]="_7",i[i._8=56]="_8",i[i._9=57]="_9",i[i.a=97]="a",i[i.b=98]="b",i[i.c=99]="c",i[i.d=100]="d",i[i.e=101]="e",i[i.f=102]="f",i[i.g=103]="g",i[i.h=104]="h",i[i.i=105]="i",i[i.j=106]="j",i[i.k=107]="k",i[i.l=108]="l",i[i.m=109]="m",i[i.n=110]="n",i[i.o=111]="o",i[i.p=112]="p",i[i.q=113]="q",i[i.r=114]="r",i[i.s=115]="s",i[i.t=116]="t",i[i.u=117]="u",i[i.v=118]="v",i[i.w=119]="w",i[i.x=120]="x",i[i.y=121]="y",i[i.z=122]="z",i[i.A=65]="A",i[i.B=66]="B",i[i.C=67]="C",i[i.D=68]="D",i[i.E=69]="E",i[i.F=70]="F",i[i.G=71]="G",i[i.H=72]="H",i[i.I=73]="I",i[i.J=74]="J",i[i.K=75]="K",i[i.L=76]="L",i[i.M=77]="M",i[i.N=78]="N",i[i.O=79]="O",i[i.P=80]="P",i[i.Q=81]="Q",i[i.R=82]="R",i[i.S=83]="S",i[i.T=84]="T",i[i.U=85]="U",i[i.V=86]="V",i[i.W=87]="W",i[i.X=88]="X",i[i.Y=89]="Y",i[i.Z=90]="Z",i[i.asterisk=42]="asterisk",i[i.backslash=92]="backslash",i[i.closeBrace=125]="closeBrace",i[i.closeBracket=93]="closeBracket",i[i.colon=58]="colon",i[i.comma=44]="comma",i[i.dot=46]="dot",i[i.doubleQuote=34]="doubleQuote",i[i.minus=45]="minus",i[i.openBrace=123]="openBrace",i[i.openBracket=91]="openBracket",i[i.plus=43]="plus",i[i.slash=47]="slash",i[i.formFeed=12]="formFeed",i[i.tab=9]="tab"})(wfe||(wfe={}));new Array(20).fill(0).map((i,e)=>" ".repeat(e));const KL=200;new Array(KL).fill(0).map((i,e)=>` `+" ".repeat(e)),new Array(KL).fill(0).map((i,e)=>"\r"+" ".repeat(e)),new Array(KL).fill(0).map((i,e)=>`\r `+" ".repeat(e)),new Array(KL).fill(0).map((i,e)=>` `+" ".repeat(e)),new Array(KL).fill(0).map((i,e)=>"\r"+" ".repeat(e)),new Array(KL).fill(0).map((i,e)=>`\r `+" ".repeat(e));var Cfe;(function(i){i.DEFAULT={allowTrailingComma:!1}})(Cfe||(Cfe={}));function dit(i,e){let n=uit(i),r=[],s,o=0,a;do switch(a=n.getPosition(),s=n.scan(),s){case 12:case 13:case 17:o!==a&&r.push(i.substring(o,a)),e!==void 0&&r.push(n.getTokenValue().replace(/[^\r\n]/g,e)),o=n.getPosition();break}while(s!==17);return r.join("")}var Sfe;(function(i){i[i.None=0]="None",i[i.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",i[i.UnexpectedEndOfString=2]="UnexpectedEndOfString",i[i.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",i[i.InvalidUnicode=4]="InvalidUnicode",i[i.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",i[i.InvalidCharacter=6]="InvalidCharacter"})(Sfe||(Sfe={}));var xfe;(function(i){i[i.OpenBraceToken=1]="OpenBraceToken",i[i.CloseBraceToken=2]="CloseBraceToken",i[i.OpenBracketToken=3]="OpenBracketToken",i[i.CloseBracketToken=4]="CloseBracketToken",i[i.CommaToken=5]="CommaToken",i[i.ColonToken=6]="ColonToken",i[i.NullKeyword=7]="NullKeyword",i[i.TrueKeyword=8]="TrueKeyword",i[i.FalseKeyword=9]="FalseKeyword",i[i.StringLiteral=10]="StringLiteral",i[i.NumericLiteral=11]="NumericLiteral",i[i.LineCommentTrivia=12]="LineCommentTrivia",i[i.BlockCommentTrivia=13]="BlockCommentTrivia",i[i.LineBreakTrivia=14]="LineBreakTrivia",i[i.Trivia=15]="Trivia",i[i.Unknown=16]="Unknown",i[i.EOF=17]="EOF"})(xfe||(xfe={}));const hit=dit;var kfe;(function(i){i[i.InvalidSymbol=1]="InvalidSymbol",i[i.InvalidNumberFormat=2]="InvalidNumberFormat",i[i.PropertyNameExpected=3]="PropertyNameExpected",i[i.ValueExpected=4]="ValueExpected",i[i.ColonExpected=5]="ColonExpected",i[i.CommaExpected=6]="CommaExpected",i[i.CloseBraceExpected=7]="CloseBraceExpected",i[i.CloseBracketExpected=8]="CloseBracketExpected",i[i.EndOfFileExpected=9]="EndOfFileExpected",i[i.InvalidCommentToken=10]="InvalidCommentToken",i[i.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",i[i.UnexpectedEndOfString=12]="UnexpectedEndOfString",i[i.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",i[i.InvalidUnicode=14]="InvalidUnicode",i[i.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",i[i.InvalidCharacter=16]="InvalidCharacter"})(kfe||(kfe={}));function fit(i){const e=localStorage.getItem("history")?ls.parse(localStorage.getItem("history")):[];return e.length>=25&&e.pop(),e.unshift({idx:i.method+i.endpoint+Date.now(),code:i,time:new Date().toLocaleTimeString(),date:new Date().toLocaleDateString()}),localStorage.setItem("history",ls.stringify(e)),e}function nQ(i,e=!0){const n=i2e(i);return n.error?n:kE({method:n.method,url:n.endpoint,data:n.reqBody}).then(r=>(e&&fit(n),r.data)).catch(r=>{var s,o,a,l;return console.log(r),(o=(s=r.response)==null?void 0:s.data)!=null&&o.status?(l=(a=r.response)==null?void 0:a.data)==null?void 0:l.status:r})}function i2e(i){const e=i.split(/\r?\n/);let n=e.shift();n=n.replace(/\/\/.*$/gm,"");const r=e.join(` `),s=n.split(" ")[0],o=n.split(" ")[1];let a={};if(r)try{a=r===` `?{}:ls.parse(hit(r))}catch{return{method:null,endpoint:null,reqBody:null,error:"Fix the Position brackets to run & check the json"}}return s===""&&o===""?{method:null,endpoint:null,reqBody:a,error:"Add Headline or remove the line gap between json and headline (if any)"}:s===""?{method:null,endpoint:o,reqBody:a,error:"Add method"}:o===""?{method:s,endpoint:null,reqBody:a,error:"Add endpoint"}:{method:s,endpoint:o,reqBody:a,error:null}}function pit(i,e,n){return e in i?Object.defineProperty(i,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):i[e]=n,i}function Lfe(i,e){var n=Object.keys(i);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(i);e&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(i,s).enumerable})),n.push.apply(n,r)}return n}function Dfe(i){for(var e=1;e=0)&&(n[s]=i[s]);return n}function mit(i,e){if(i==null)return{};var n=git(i,e),r,s;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(i);for(s=0;s=0)&&Object.prototype.propertyIsEnumerable.call(i,r)&&(n[r]=i[r])}return n}function _it(i,e){return vit(i)||bit(i,e)||yit(i,e)||wit()}function vit(i){if(Array.isArray(i))return i}function bit(i,e){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(i)))){var n=[],r=!0,s=!1,o=void 0;try{for(var a=i[Symbol.iterator](),l;!(r=(l=a.next()).done)&&(n.push(l.value),!(e&&n.length===e));r=!0);}catch(c){s=!0,o=c}finally{try{!r&&a.return!=null&&a.return()}finally{if(s)throw o}}return n}}function yit(i,e){if(i){if(typeof i=="string")return Efe(i,e);var n=Object.prototype.toString.call(i).slice(8,-1);if(n==="Object"&&i.constructor&&(n=i.constructor.name),n==="Map"||n==="Set")return Array.from(i);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Efe(i,e)}}function Efe(i,e){(e==null||e>i.length)&&(e=i.length);for(var n=0,r=new Array(e);n=i.length?i.apply(this,s):function(){for(var a=arguments.length,l=new Array(a),c=0;c1&&arguments[1]!==void 0?arguments[1]:{};I3.initial(i),I3.handler(e);var n={current:i},r=rN(Pit)(n,e),s=rN(Mit)(n),o=rN(I3.changes)(i),a=rN(Nit)(n);function l(){var u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(d){return d};return I3.selector(u),u(n.current)}function c(u){Sit(r,s,o,a)(u)}return[l,c]}function Nit(i,e){return QM(e)?e(i.current):e}function Mit(i,e){return i.current=Tfe(Tfe({},i.current),e),e}function Pit(i,e,n){return QM(e)?e(i.current):Object.keys(n).forEach(function(r){var s;return(s=e[r])===null||s===void 0?void 0:s.call(e,i.current[r])}),n}var Oit={create:Ait},Fit={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs"}};function Bit(i){return function e(){for(var n=this,r=arguments.length,s=new Array(r),o=0;o=i.length?i.apply(this,s):function(){for(var a=arguments.length,l=new Array(a),c=0;c{r.current=!1}:i,e)}var Gd=crt;function ZN(){}function JD(i,e,n,r){return urt(i,r)||drt(i,e,n,r)}function urt(i,e){return i.editor.getModel(u2e(i,e))}function drt(i,e,n,r){return i.editor.createModel(e,n,r?u2e(i,r):void 0)}function u2e(i,e){return i.Uri.parse(e)}function hrt({original:i,modified:e,language:n,originalLanguage:r,modifiedLanguage:s,originalModelPath:o,modifiedModelPath:a,keepCurrentOriginalModel:l=!1,keepCurrentModifiedModel:c=!1,theme:u="light",loading:d="Loading...",options:h={},height:f="100%",width:p="100%",className:g,wrapperProps:m={},beforeMount:_=ZN,onMount:b=ZN}){let[y,x]=$.useState(!1),[k,D]=$.useState(!0),R=$.useRef(null),E=$.useRef(null),A=$.useRef(null),M=$.useRef(b),N=$.useRef(_),P=$.useRef(!1);c2e(()=>{let z=xse.init();return z.then(H=>(E.current=H)&&D(!1)).catch(H=>(H==null?void 0:H.type)!=="cancelation"&&console.error("Monaco initialization: error:",H)),()=>R.current?j():z.cancel()}),Gd(()=>{if(R.current&&E.current){let z=R.current.getOriginalEditor(),H=JD(E.current,i||"",r||n||"text",o||"");H!==z.getModel()&&z.setModel(H)}},[o],y),Gd(()=>{if(R.current&&E.current){let z=R.current.getModifiedEditor(),H=JD(E.current,e||"",s||n||"text",a||"");H!==z.getModel()&&z.setModel(H)}},[a],y),Gd(()=>{let z=R.current.getModifiedEditor();z.getOption(E.current.editor.EditorOption.readOnly)?z.setValue(e||""):e!==z.getValue()&&(z.executeEdits("",[{range:z.getModel().getFullModelRange(),text:e||"",forceMoveMarkers:!0}]),z.pushUndoStop())},[e],y),Gd(()=>{var z,H;(H=(z=R.current)==null?void 0:z.getModel())==null||H.original.setValue(i||"")},[i],y),Gd(()=>{let{original:z,modified:H}=R.current.getModel();E.current.editor.setModelLanguage(z,r||n||"text"),E.current.editor.setModelLanguage(H,s||n||"text")},[n,r,s],y),Gd(()=>{var z;(z=E.current)==null||z.editor.setTheme(u)},[u],y),Gd(()=>{var z;(z=R.current)==null||z.updateOptions(h)},[h],y);let O=$.useCallback(()=>{var Y;if(!E.current)return;N.current(E.current);let z=JD(E.current,i||"",r||n||"text",o||""),H=JD(E.current,e||"",s||n||"text",a||"");(Y=R.current)==null||Y.setModel({original:z,modified:H})},[n,e,s,i,r,o,a]),B=$.useCallback(()=>{var z;!P.current&&A.current&&(R.current=E.current.editor.createDiffEditor(A.current,{automaticLayout:!0,...h}),O(),(z=E.current)==null||z.editor.setTheme(u),x(!0),P.current=!0)},[h,u,O]);$.useEffect(()=>{y&&M.current(R.current,E.current)},[y]),$.useEffect(()=>{!k&&!y&&B()},[k,y,B]);function j(){var H,Y,X,Q;let z=(H=R.current)==null?void 0:H.getModel();l||((Y=z==null?void 0:z.original)==null||Y.dispose()),c||((X=z==null?void 0:z.modified)==null||X.dispose()),(Q=R.current)==null||Q.dispose()}return nn.createElement(l2e,{width:p,height:f,isEditorReady:y,loading:d,_ref:A,className:g,wrapperProps:m})}var frt=hrt;$.memo(frt);function prt(i){let e=$.useRef();return $.useEffect(()=>{e.current=i},[i]),e.current}var grt=prt,T3=new Map;function mrt({defaultValue:i,defaultLanguage:e,defaultPath:n,value:r,language:s,path:o,theme:a="light",line:l,loading:c="Loading...",options:u={},overrideServices:d={},saveViewState:h=!0,keepCurrentModel:f=!1,width:p="100%",height:g="100%",className:m,wrapperProps:_={},beforeMount:b=ZN,onMount:y=ZN,onChange:x,onValidate:k=ZN}){let[D,R]=$.useState(!1),[E,A]=$.useState(!0),M=$.useRef(null),N=$.useRef(null),P=$.useRef(null),O=$.useRef(y),B=$.useRef(b),j=$.useRef(),z=$.useRef(r),H=grt(o),Y=$.useRef(!1),X=$.useRef(!1);c2e(()=>{let K=xse.init();return K.then(ee=>(M.current=ee)&&A(!1)).catch(ee=>(ee==null?void 0:ee.type)!=="cancelation"&&console.error("Monaco initialization: error:",ee)),()=>N.current?ie():K.cancel()}),Gd(()=>{var ee,le,ke,xe;let K=JD(M.current,i||r||"",e||s||"",o||n||"");K!==((ee=N.current)==null?void 0:ee.getModel())&&(h&&T3.set(H,(le=N.current)==null?void 0:le.saveViewState()),(ke=N.current)==null||ke.setModel(K),h&&((xe=N.current)==null||xe.restoreViewState(T3.get(o))))},[o],D),Gd(()=>{var K;(K=N.current)==null||K.updateOptions(u)},[u],D),Gd(()=>{!N.current||r===void 0||(N.current.getOption(M.current.editor.EditorOption.readOnly)?N.current.setValue(r):r!==N.current.getValue()&&(X.current=!0,N.current.executeEdits("",[{range:N.current.getModel().getFullModelRange(),text:r,forceMoveMarkers:!0}]),N.current.pushUndoStop(),X.current=!1))},[r],D),Gd(()=>{var ee,le;let K=(ee=N.current)==null?void 0:ee.getModel();K&&s&&((le=M.current)==null||le.editor.setModelLanguage(K,s))},[s],D),Gd(()=>{var K;l!==void 0&&((K=N.current)==null||K.revealLine(l))},[l],D),Gd(()=>{var K;(K=M.current)==null||K.editor.setTheme(a)},[a],D);let Q=$.useCallback(()=>{var K;if(!(!P.current||!M.current)&&!Y.current){B.current(M.current);let ee=o||n,le=JD(M.current,r||i||"",e||s||"",ee||"");N.current=(K=M.current)==null?void 0:K.editor.create(P.current,{model:le,automaticLayout:!0,...u},d),h&&N.current.restoreViewState(T3.get(ee)),M.current.editor.setTheme(a),l!==void 0&&N.current.revealLine(l),R(!0),Y.current=!0}},[i,e,n,r,s,o,u,d,h,a,l]);$.useEffect(()=>{D&&O.current(N.current,M.current)},[D]),$.useEffect(()=>{!E&&!D&&Q()},[E,D,Q]),z.current=r,$.useEffect(()=>{var K,ee;D&&x&&((K=j.current)==null||K.dispose(),j.current=(ee=N.current)==null?void 0:ee.onDidChangeModelContent(le=>{X.current||x(N.current.getValue(),le)}))},[D,x]),$.useEffect(()=>{if(D){let K=M.current.editor.onDidChangeMarkers(ee=>{var ke;let le=(ke=N.current.getModel())==null?void 0:ke.uri;if(le&&ee.find(xe=>xe.path===le.path)){let xe=M.current.editor.getModelMarkers({resource:le});k==null||k(xe)}});return()=>{K==null||K.dispose()}}return()=>{}},[D,k]);function ie(){var K,ee;(K=j.current)==null||K.dispose(),f?h&&T3.set(o,N.current.saveViewState()):(ee=N.current.getModel())==null||ee.dispose(),N.current.dispose()}return nn.createElement(l2e,{width:p,height:g,isEditorReady:D,loading:c,_ref:P,className:m,wrapperProps:_})}var _rt=mrt,vrt=$.memo(_rt),d2e=vrt;const R3=(i,e="custom-language-theme")=>i.palette.mode==="dark"?Afe[e](i).dark:Afe[e](i).light,Afe={"custom-language-theme":i=>({dark:{base:"vs-dark",rules:[{token:"keyword",foreground:"#007acc"},{token:"string.key",foreground:"#f14c4c"},{token:"string.value",foreground:"#3794ff"},{token:"number",foreground:"#098658"},{token:"comment",foreground:"#6A9955"},{token:"string",foreground:"#f14c4c"}],colors:{"editor.foreground":"#FFFFFF","editor.background":i.palette.background.default}},light:{base:"vs",rules:[{token:"keyword",foreground:"#0000FF"},{token:"string.key",foreground:"#A31515"},{token:"string.value",foreground:"#0451A5"},{token:"number",foreground:"#098658"},{token:"comment",foreground:"#008000"},{token:"string",foreground:"#A31515"}],colors:{"editor.foreground":"#000000","editor.background":i.palette.background.default}}}),"qdrant-theme":i=>{const e=i.palette.mode==="dark";return{dark:{base:"vs-dark",rules:[{token:"keyword",foreground:i.palette.warning.main},{token:"string.key",foreground:Yu[600]},{token:"string.value",foreground:tu[600]},{token:"number",foreground:tu[600]},{token:"comment",foreground:e?xi[500]:xi[400]},{token:"string",foreground:Yu[600]}],colors:{"editor.foreground":i.palette.text.primary,"editor.background":i.palette.background.code}},light:{base:"vs",rules:[{token:"keyword",foreground:i.palette.warning.main},{token:"string.key",foreground:Yu[600]},{token:"string.value",foreground:tu[600]},{token:"number",foreground:tu[600]},{token:"comment",foreground:e?xi[500]:xi[400]},{token:"string",foreground:Yu[600]}],colors:{"editor.foreground":i.palette.text.primary,"editor.background":i.palette.background.code}}}}},kse=()=>{const[i,e]=$.useState(!1),n=()=>e(!i);return $.useEffect(()=>(window.addEventListener("resize",n),()=>{window.removeEventListener("resize",n)})),{width:window.innerWidth,height:window.innerHeight}};function Pd(i,e=0){return i[i.length-(1+e)]}function brt(i){if(i.length===0)throw new Error("Invalid tail call");return[i.slice(0,i.length-1),i[i.length-1]]}function ys(i,e,n=(r,s)=>r===s){if(i===e)return!0;if(!i||!e||i.length!==e.length)return!1;for(let r=0,s=i.length;rn(i[r],e))}function wrt(i,e){let n=0,r=i-1;for(;n<=r;){const s=(n+r)/2|0,o=e(s);if(o<0)n=s+1;else if(o>0)r=s-1;else return s}return-(n+1)}function iQ(i,e,n){if(i=i|0,i>=e.length)throw new TypeError("invalid index");const r=e[Math.floor(e.length*Math.random())],s=[],o=[],a=[];for(const l of e){const c=n(l,r);c<0?s.push(l):c>0?o.push(l):a.push(l)}return i!!e)}function Mfe(i){let e=0;for(let n=0;n0}function l1(i,e=n=>n){const n=new Set;return i.filter(r=>{const s=e(r);return n.has(s)?!1:(n.add(s),!0)})}function g2e(i,e){return i.length>0?i[0]:e}function Tl(i,e){let n=typeof e=="number"?i:0;typeof e=="number"?n=i:(n=0,e=i);const r=[];if(n<=e)for(let s=n;se;s--)r.push(s);return r}function GW(i,e,n){const r=i.slice(0,e),s=i.slice(e);return r.concat(n,s)}function BU(i,e){const n=i.indexOf(e);n>-1&&(i.splice(n,1),i.unshift(e))}function A3(i,e){const n=i.indexOf(e);n>-1&&(i.splice(n,1),i.push(e))}function rQ(i,e){for(const n of e)i.push(n)}function Lse(i){return Array.isArray(i)?i:[i]}function Srt(i,e,n){const r=m2e(i,e),s=i.length,o=n.length;i.length=s+o;for(let a=s-1;a>=r;a--)i[a+o]=i[a];for(let a=0;a0}i.isGreaterThan=r;function s(o){return o===0}i.isNeitherLessOrGreaterThan=s,i.greaterThan=1,i.lessThan=-1,i.neitherLessOrGreaterThan=0})(eP||(eP={}));function ch(i,e){return(n,r)=>e(i(n),i(r))}function xrt(...i){return(e,n)=>{for(const r of i){const s=r(e,n);if(!eP.isNeitherLessOrGreaterThan(s))return s}return eP.neitherLessOrGreaterThan}}const fv=(i,e)=>i-e,krt=(i,e)=>fv(i?1:0,e?1:0);function _2e(i){return(e,n)=>-i(e,n)}class Ev{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let n=this.firstIdx;for(;n=0&&e(this.items[n]);)n--;const r=n===this.lastIdx?null:this.items.slice(n+1,this.lastIdx+1);return this.lastIdx=n,r}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){const e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){const n=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,n}}class Rm{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(n=>(e.push(n),!0)),e}filter(e){return new Rm(n=>this.iterate(r=>e(r)?n(r):!0))}map(e){return new Rm(n=>this.iterate(r=>n(e(r))))}findLast(e){let n;return this.iterate(r=>(e(r)&&(n=r),!0)),n}findLastMaxBy(e){let n,r=!0;return this.iterate(s=>((r||eP.isGreaterThan(e(s,n)))&&(r=!1,n=s),!0)),n}}Rm.empty=new Rm(i=>{});function zl(i){return typeof i=="string"}function Bl(i){return typeof i=="object"&&i!==null&&!Array.isArray(i)&&!(i instanceof RegExp)&&!(i instanceof Date)}function Lrt(i){const e=Object.getPrototypeOf(Uint8Array);return typeof i=="object"&&i instanceof e}function c1(i){return typeof i=="number"&&!isNaN(i)}function Ofe(i){return!!i&&typeof i[Symbol.iterator]=="function"}function v2e(i){return i===!0||i===!1}function nu(i){return typeof i>"u"}function tP(i){return!Hu(i)}function Hu(i){return nu(i)||i===null}function Ui(i,e){if(!i)throw new Error("Unexpected type")}function fS(i){if(Hu(i))throw new Error("Assertion Failed: argument is undefined or null");return i}function nP(i){return typeof i=="function"}function Drt(i,e){const n=Math.min(i.length,e.length);for(let r=0;r{e[n]=r&&typeof r=="object"?T0(r):r}),e}function Irt(i){if(!i||typeof i!="object")return i;const e=[i];for(;e.length>0;){const n=e.shift();Object.freeze(n);for(const r in n)if(b2e.call(n,r)){const s=n[r];typeof s=="object"&&!Object.isFrozen(s)&&!Lrt(s)&&e.push(s)}}return i}const b2e=Object.prototype.hasOwnProperty;function y2e(i,e){return sQ(i,e,new Set)}function sQ(i,e,n){if(Hu(i))return i;const r=e(i);if(typeof r<"u")return r;if(Array.isArray(i)){const s=[];for(const o of i)s.push(sQ(o,e,n));return s}if(Bl(i)){if(n.has(i))throw new Error("Cannot clone recursive data-structure");n.add(i);const s={};for(const o in i)b2e.call(i,o)&&(s[o]=sQ(i[o],e,n));return n.delete(i),s}return i}function XW(i,e,n=!0){return Bl(i)?(Bl(e)&&Object.keys(e).forEach(r=>{r in i?n&&(Bl(i[r])&&Bl(e[r])?XW(i[r],e[r],n):i[r]=e[r]):i[r]=e[r]}),i):e}function od(i,e){if(i===e)return!0;if(i==null||e===null||e===void 0||typeof i!=typeof e||typeof i!="object"||Array.isArray(i)!==Array.isArray(e))return!1;let n,r;if(Array.isArray(i)){if(i.length!==e.length)return!1;for(n=0;nfunction(){const o=Array.prototype.slice.call(arguments,0);return e(s,o)},r={};for(const s of i)r[s]=n(s);return r}let Art=typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function Nrt(i,e){let n;return e.length===0?n=i:n=i.replace(/\{(\d+)\}/g,(r,s)=>{const o=s[0],a=e[o];let l=r;return typeof a=="string"?l=a:(typeof a=="number"||typeof a=="boolean"||a===void 0||a===null)&&(l=String(a)),l}),Art&&(n="["+n.replace(/[aouei]/g,"$&$&")+"]"),n}function L(i,e,...n){return Nrt(e,n)}var jU;const e2="en";let D9=!1,E9=!1,t8=!1,w2e=!1,Ese=!1,Ise=!1,C2e=!1,N3,n8=e2,Ffe=e2,Mrt,lp;const Cf=typeof self=="object"?self:typeof global=="object"?global:{};let Nl;typeof Cf.vscode<"u"&&typeof Cf.vscode.process<"u"?Nl=Cf.vscode.process:typeof process<"u"&&(Nl=process);const Prt=typeof((jU=Nl==null?void 0:Nl.versions)===null||jU===void 0?void 0:jU.electron)=="string",Ort=Prt&&(Nl==null?void 0:Nl.type)==="renderer";if(typeof navigator=="object"&&!Ort)lp=navigator.userAgent,D9=lp.indexOf("Windows")>=0,E9=lp.indexOf("Macintosh")>=0,Ise=(lp.indexOf("Macintosh")>=0||lp.indexOf("iPad")>=0||lp.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,t8=lp.indexOf("Linux")>=0,C2e=(lp==null?void 0:lp.indexOf("Mobi"))>=0,Ese=!0,L({},"_"),N3=e2,n8=N3,Ffe=navigator.language;else if(typeof Nl=="object"){D9=Nl.platform==="win32",E9=Nl.platform==="darwin",t8=Nl.platform==="linux",t8&&Nl.env.SNAP&&Nl.env.SNAP_REVISION,Nl.env.CI||Nl.env.BUILD_ARTIFACTSTAGINGDIRECTORY,N3=e2,n8=e2;const i=Nl.env.VSCODE_NLS_CONFIG;if(i)try{const e=JSON.parse(i),n=e.availableLanguages["*"];N3=e.locale,Ffe=e.osLocale,n8=n||e2,Mrt=e._translationsConfigFile}catch{}w2e=!0}else console.error("Unable to resolve platform.");const Aa=D9,ri=E9,_l=t8,Um=w2e,H1=Ese,Frt=Ese&&typeof Cf.importScripts=="function",Kp=Ise,Brt=C2e,qm=lp,jrt=n8,Wrt=typeof Cf.postMessage=="function"&&!Cf.importScripts,S2e=(()=>{if(Wrt){const i=[];Cf.addEventListener("message",n=>{if(n.data&&n.data.vscodeScheduleAsyncWork)for(let r=0,s=i.length;r{const r=++e;i.push({id:r,callback:n}),Cf.postMessage({vscodeScheduleAsyncWork:r},"*")}}return i=>setTimeout(i)})(),Zu=E9||Ise?2:D9?1:3;let Bfe=!0,jfe=!1;function x2e(){if(!jfe){jfe=!0;const i=new Uint8Array(2);i[0]=1,i[1]=2,Bfe=new Uint16Array(i.buffer)[0]===513}return Bfe}const k2e=!!(qm&&qm.indexOf("Chrome")>=0),$rt=!!(qm&&qm.indexOf("Firefox")>=0),zrt=!!(!k2e&&qm&&qm.indexOf("Safari")>=0),Vrt=!!(qm&&qm.indexOf("Edg/")>=0);qm&&qm.indexOf("Android")>=0;const za={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}};var Vn;(function(i){function e(y){return y&&typeof y=="object"&&typeof y[Symbol.iterator]=="function"}i.is=e;const n=Object.freeze([]);function r(){return n}i.empty=r;function*s(y){yield y}i.single=s;function o(y){return e(y)?y:s(y)}i.wrap=o;function a(y){return y||n}i.from=a;function*l(y){for(let x=y.length-1;x>=0;x--)yield y[x]}i.reverse=l;function c(y){return!y||y[Symbol.iterator]().next().done===!0}i.isEmpty=c;function u(y){return y[Symbol.iterator]().next().value}i.first=u;function d(y,x){for(const k of y)if(x(k))return!0;return!1}i.some=d;function h(y,x){for(const k of y)if(x(k))return k}i.find=h;function*f(y,x){for(const k of y)x(k)&&(yield k)}i.filter=f;function*p(y,x){let k=0;for(const D of y)yield x(D,k++)}i.map=p;function*g(...y){for(const x of y)for(const k of x)yield k}i.concat=g;function m(y,x,k){let D=k;for(const R of y)D=x(D,R);return D}i.reduce=m;function*_(y,x,k=y.length){for(x<0&&(x+=y.length),k<0?k+=y.length:k>y.length&&(k=y.length);x{s||(s=!0,this._remove(r))}}shift(){if(this._first!==Qs.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Qs.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Qs.Undefined&&e.next!==Qs.Undefined){const n=e.prev;n.next=e.next,e.next.prev=n}else e.prev===Qs.Undefined&&e.next===Qs.Undefined?(this._first=Qs.Undefined,this._last=Qs.Undefined):e.next===Qs.Undefined?(this._last=this._last.prev,this._last.next=Qs.Undefined):e.prev===Qs.Undefined&&(this._first=this._first.next,this._first.prev=Qs.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Qs.Undefined;)yield e.element,e=e.next}}const L2e="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function Hrt(i=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const n of L2e)i.indexOf(n)>=0||(e+="\\"+n);return e+="\\s]+)",new RegExp(e,"g")}const Tse=Hrt();function D2e(i){let e=Tse;if(i&&i instanceof RegExp)if(i.global)e=i;else{let n="g";i.ignoreCase&&(n+="i"),i.multiline&&(n+="m"),i.unicode&&(n+="u"),e=new RegExp(i.source,n)}return e.lastIndex=0,e}const E2e=new jl;E2e.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function iP(i,e,n,r,s){if(s||(s=Vn.first(E2e)),n.length>s.maxLen){let u=i-s.maxLen/2;return u<0?u=0:r+=u,n=n.substring(u,i+s.maxLen/2),iP(i,e,n,r,s)}const o=Date.now(),a=i-1-r;let l=-1,c=null;for(let u=1;!(Date.now()-o>=s.timeBudget);u++){const d=a-s.windowSize*u;e.lastIndex=Math.max(0,d);const h=Urt(e,n,a,l);if(!h&&c||(c=h,d<=0))break;l=d}if(c){const u={word:c[0],startColumn:r+1+c.index,endColumn:r+1+c.index+c[0].length};return e.lastIndex=0,u}return null}function Urt(i,e,n,r){let s;for(;s=i.exec(e);){const o=s.index||0;if(o<=n&&i.lastIndex>=n)return s;if(r>0&&o>r)return null}return null}const qb=8;class I2e{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class T2e{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class qr{constructor(e,n,r,s){this.id=e,this.name=n,this.defaultValue=r,this.schema=s}applyUpdate(e,n){return YW(e,n)}compute(e,n,r){return r}}class QN{constructor(e,n){this.newValue=e,this.didChange=n}}function YW(i,e){if(typeof i!="object"||typeof e!="object"||!i||!e)return new QN(e,i!==e);if(Array.isArray(i)||Array.isArray(e)){const r=Array.isArray(i)&&Array.isArray(e)&&ys(i,e);return new QN(e,!r)}let n=!1;for(const r in e)if(e.hasOwnProperty(r)){const s=YW(i[r],e[r]);s.didChange&&(i[r]=s.newValue,n=!0)}return new QN(i,n)}class w5{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,n){return YW(e,n)}validate(e){return this.defaultValue}}class MI{constructor(e,n,r,s){this.id=e,this.name=n,this.defaultValue=r,this.schema=s}applyUpdate(e,n){return YW(e,n)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,n,r){return r}}function Ut(i,e){return typeof i>"u"?e:i==="false"?!1:!!i}class li extends MI{constructor(e,n,r,s=void 0){typeof s<"u"&&(s.type="boolean",s.default=r),super(e,n,r,s)}validate(e){return Ut(e,this.defaultValue)}}function AC(i,e,n,r){if(typeof i>"u")return e;let s=parseInt(i,10);return isNaN(s)?e:(s=Math.max(n,s),s=Math.min(r,s),s|0)}class ir extends MI{static clampedInt(e,n,r,s){return AC(e,n,r,s)}constructor(e,n,r,s,o,a=void 0){typeof a<"u"&&(a.type="integer",a.default=r,a.minimum=s,a.maximum=o),super(e,n,r,a),this.minimum=s,this.maximum=o}validate(e){return ir.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}function qrt(i,e,n,r){if(typeof i>"u")return e;const s=mf.float(i,e);return mf.clamp(s,n,r)}class mf extends MI{static clamp(e,n,r){return er?r:e}static float(e,n){if(typeof e=="number")return e;if(typeof e>"u")return n;const r=parseFloat(e);return isNaN(r)?n:r}constructor(e,n,r,s,o){typeof o<"u"&&(o.type="number",o.default=r),super(e,n,r,o),this.validationFn=s}validate(e){return this.validationFn(mf.float(e,this.defaultValue))}}class Gc extends MI{static string(e,n){return typeof e!="string"?n:e}constructor(e,n,r,s=void 0){typeof s<"u"&&(s.type="string",s.default=r),super(e,n,r,s)}validate(e){return Gc.string(e,this.defaultValue)}}function Rs(i,e,n,r){return typeof i!="string"?e:r&&i in r?r[i]:n.indexOf(i)===-1?e:i}class ts extends MI{constructor(e,n,r,s,o=void 0){typeof o<"u"&&(o.type="string",o.enum=s,o.default=r),super(e,n,r,o),this._allowedValues=s}validate(e){return Rs(e,this.defaultValue,this._allowedValues)}}class M3 extends qr{constructor(e,n,r,s,o,a,l=void 0){typeof l<"u"&&(l.type="string",l.enum=o,l.default=s),super(e,n,r,l),this._allowedValues=o,this._convert=a}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}}function Krt(i){switch(i){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class Grt extends qr{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[L("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached"),L("accessibilitySupport.on","Optimize for usage with a Screen Reader"),L("accessibilitySupport.off","Assume a screen reader is not attached")],default:"auto",tags:["accessibility"],description:L("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,n,r){return r===0?e.accessibilitySupport:r}}class Xrt extends qr{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(23,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:L("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:L("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{insertSpace:Ut(n.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:Ut(n.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function Yrt(i){switch(i){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var na;(function(i){i[i.Line=1]="Line",i[i.Block=2]="Block",i[i.Underline=3]="Underline",i[i.LineThin=4]="LineThin",i[i.BlockOutline=5]="BlockOutline",i[i.UnderlineThin=6]="UnderlineThin"})(na||(na={}));function Zrt(i){switch(i){case"line":return na.Line;case"block":return na.Block;case"underline":return na.Underline;case"line-thin":return na.LineThin;case"block-outline":return na.BlockOutline;case"underline-thin":return na.UnderlineThin}}class Qrt extends w5{constructor(){super(140)}compute(e,n,r){const s=["monaco-editor"];return n.get(39)&&s.push(n.get(39)),e.extraEditorClassName&&s.push(e.extraEditorClassName),n.get(73)==="default"?s.push("mouse-default"):n.get(73)==="copy"&&s.push("mouse-copy"),n.get(110)&&s.push("showUnused"),n.get(138)&&s.push("showDeprecated"),s.join(" ")}}class Jrt extends li{constructor(){super(37,"emptySelectionClipboard",!0,{description:L("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,n,r){return r&&e.emptySelectionClipboard}}class est extends qr{constructor(){const e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(41,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:L("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[L("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),L("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),L("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:L("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[L("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),L("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),L("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:L("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:L("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:ri},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:L("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:L("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{cursorMoveOnType:Ut(n.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":Rs(n.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":Rs(n.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:Ut(n.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:Ut(n.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:Ut(n.loop,this.defaultValue.loop)}}}class Uu extends qr{constructor(){super(51,"fontLigatures",Uu.OFF,{anyOf:[{type:"boolean",description:L("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:L("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:L("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?Uu.OFF:e==="true"?Uu.ON:e:e?Uu.ON:Uu.OFF}}Uu.OFF='"liga" off, "calt" off';Uu.ON='"liga" on, "calt" on';class Ip extends qr{constructor(){super(54,"fontVariations",Ip.OFF,{anyOf:[{type:"boolean",description:L("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:L("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:L("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?Ip.OFF:e==="true"?Ip.TRANSLATE:e:e?Ip.TRANSLATE:Ip.OFF}compute(e,n,r){return e.fontInfo.fontVariationSettings}}Ip.OFF="normal";Ip.TRANSLATE="translate";class tst extends w5{constructor(){super(50)}compute(e,n,r){return e.fontInfo}}class nst extends MI{constructor(){super(52,"fontSize",su.fontSize,{type:"number",minimum:6,maximum:100,default:su.fontSize,description:L("fontSize","Controls the font size in pixels.")})}validate(e){const n=mf.float(e,this.defaultValue);return n===0?su.fontSize:mf.clamp(n,6,100)}compute(e,n,r){return e.fontInfo.fontSize}}class lm extends qr{constructor(){super(53,"fontWeight",su.fontWeight,{anyOf:[{type:"number",minimum:lm.MINIMUM_VALUE,maximum:lm.MAXIMUM_VALUE,errorMessage:L("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:lm.SUGGESTION_VALUES}],default:su.fontWeight,description:L("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(ir.clampedInt(e,su.fontWeight,lm.MINIMUM_VALUE,lm.MAXIMUM_VALUE))}}lm.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"];lm.MINIMUM_VALUE=1;lm.MAXIMUM_VALUE=1e3;class ist extends qr{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:""},n={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[L("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),L("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),L("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},r=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(58,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:L("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":Object.assign({description:L("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleTypeDefinitions":Object.assign({description:L("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleDeclarations":Object.assign({description:L("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleImplementations":Object.assign({description:L("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},n),"editor.gotoLocation.multipleReferences":Object.assign({description:L("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist.")},n),"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:r,description:L("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:r,description:L("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:r,description:L("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:r,description:L("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:r,description:L("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){var n,r,s,o,a;if(!e||typeof e!="object")return this.defaultValue;const l=e;return{multiple:Rs(l.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:(n=l.multipleDefinitions)!==null&&n!==void 0?n:Rs(l.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:(r=l.multipleTypeDefinitions)!==null&&r!==void 0?r:Rs(l.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:(s=l.multipleDeclarations)!==null&&s!==void 0?s:Rs(l.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:(o=l.multipleImplementations)!==null&&o!==void 0?o:Rs(l.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:(a=l.multipleReferences)!==null&&a!==void 0?a:Rs(l.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:Gc.string(l.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:Gc.string(l.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:Gc.string(l.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:Gc.string(l.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:Gc.string(l.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}}}class rst extends qr{constructor(){const e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(60,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:L("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:L("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:L("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,description:L("hover.hidingDelay","Controls the delay in milliseconds after thich the hover is hidden. Requires `editor.hover.sticky` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:L("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),delay:ir.clampedInt(n.delay,this.defaultValue.delay,0,1e4),sticky:Ut(n.sticky,this.defaultValue.sticky),hidingDelay:ir.clampedInt(n.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:Ut(n.above,this.defaultValue.above)}}}class P2 extends w5{constructor(){super(143)}compute(e,n,r){return P2.computeLayout(n,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){const n=e.height/e.lineHeight,r=Math.floor(e.paddingTop/e.lineHeight);let s=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(s=Math.max(s,n-1));const o=(r+e.viewLineCount+s)/(e.pixelRatio*e.height),a=Math.floor(e.viewLineCount/o);return{typicalViewportLineCount:n,extraLinesBeforeFirstLine:r,extraLinesBeyondLastLine:s,desiredRatio:o,minimapLineCount:a}}static _computeMinimapLayout(e,n){const r=e.outerWidth,s=e.outerHeight,o=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(o*s),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:s};const a=n.stableMinimapLayoutInput,l=a&&e.outerHeight===a.outerHeight&&e.lineHeight===a.lineHeight&&e.typicalHalfwidthCharacterWidth===a.typicalHalfwidthCharacterWidth&&e.pixelRatio===a.pixelRatio&&e.scrollBeyondLastLine===a.scrollBeyondLastLine&&e.paddingTop===a.paddingTop&&e.paddingBottom===a.paddingBottom&&e.minimap.enabled===a.minimap.enabled&&e.minimap.side===a.minimap.side&&e.minimap.size===a.minimap.size&&e.minimap.showSlider===a.minimap.showSlider&&e.minimap.renderCharacters===a.minimap.renderCharacters&&e.minimap.maxColumn===a.minimap.maxColumn&&e.minimap.scale===a.minimap.scale&&e.verticalScrollbarWidth===a.verticalScrollbarWidth&&e.isViewportWrapping===a.isViewportWrapping,c=e.lineHeight,u=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters;let f=o>=2?Math.round(e.minimap.scale*2):e.minimap.scale;const p=e.minimap.maxColumn,g=e.minimap.size,m=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,y=e.remainingWidth,x=e.isViewportWrapping,k=h?2:3;let D=Math.floor(o*s);const R=D/o;let E=!1,A=!1,M=k*f,N=f/o,P=1;if(g==="fill"||g==="fit"){const{typicalViewportLineCount:X,extraLinesBeforeFirstLine:Q,extraLinesBeyondLastLine:ie,desiredRatio:K,minimapLineCount:ee}=P2.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:s,lineHeight:c,pixelRatio:o});if(b/ee>1)E=!0,A=!0,f=1,M=1,N=f/o;else{let ke=!1,xe=f+1;if(g==="fit"){const me=Math.ceil((Q+b+ie)*M);x&&l&&y<=n.stableFitRemainingWidth?(ke=!0,xe=n.stableFitMaxMinimapScale):ke=me>D}if(g==="fill"||ke){E=!0;const me=f;M=Math.min(c*o,Math.max(1,Math.floor(1/K))),x&&l&&y<=n.stableFitRemainingWidth&&(xe=n.stableFitMaxMinimapScale),f=Math.min(xe,Math.max(1,Math.floor(M/k))),f>me&&(P=Math.min(2,f/me)),N=f/o/P,D=Math.ceil(Math.max(X,Q+b+ie)*M),x?(n.stableMinimapLayoutInput=e,n.stableFitRemainingWidth=y,n.stableFitMaxMinimapScale=f):(n.stableMinimapLayoutInput=null,n.stableFitRemainingWidth=0)}}}const O=Math.floor(p*N),B=Math.min(O,Math.max(0,Math.floor((y-_-2)*N/(u+N)))+qb);let j=Math.floor(o*B);const z=j/o;j=Math.floor(j*P);const H=h?1:2,Y=m==="left"?0:r-B-_;return{renderMinimap:H,minimapLeft:Y,minimapWidth:B,minimapHeightIsEditorHeight:E,minimapIsSampling:A,minimapScale:f,minimapLineHeight:M,minimapCanvasInnerWidth:j,minimapCanvasInnerHeight:D,minimapCanvasOuterWidth:z,minimapCanvasOuterHeight:R}}static computeLayout(e,n){const r=n.outerWidth|0,s=n.outerHeight|0,o=n.lineHeight|0,a=n.lineNumbersDigitCount|0,l=n.typicalHalfwidthCharacterWidth,c=n.maxDigitWidth,u=n.pixelRatio,d=n.viewLineCount,h=e.get(135),f=h==="inherit"?e.get(134):h,p=f==="inherit"?e.get(130):f,g=e.get(133),m=n.isDominatedByLongLines,_=e.get(57),b=e.get(67).renderType!==0,y=e.get(68),x=e.get(104),k=e.get(83),D=e.get(72),R=e.get(102),E=R.verticalScrollbarSize,A=R.verticalHasArrows,M=R.arrowSize,N=R.horizontalScrollbarSize,P=e.get(43),O=e.get(109)!=="never";let B=e.get(65);P&&O&&(B+=16);let j=0;if(b){const je=Math.max(a,y);j=Math.round(je*c)}let z=0;_&&(z=o*n.glyphMarginDecorationLaneCount);let H=0,Y=H+z,X=Y+j,Q=X+B;const ie=r-z-j-B;let K=!1,ee=!1,le=-1;f==="inherit"&&m?(K=!0,ee=!0):p==="on"||p==="bounded"?ee=!0:p==="wordWrapColumn"&&(le=g);const ke=P2._computeMinimapLayout({outerWidth:r,outerHeight:s,lineHeight:o,typicalHalfwidthCharacterWidth:l,pixelRatio:u,scrollBeyondLastLine:x,paddingTop:k.top,paddingBottom:k.bottom,minimap:D,verticalScrollbarWidth:E,viewLineCount:d,remainingWidth:ie,isViewportWrapping:ee},n.memory||new T2e);ke.renderMinimap!==0&&ke.minimapLeft===0&&(H+=ke.minimapWidth,Y+=ke.minimapWidth,X+=ke.minimapWidth,Q+=ke.minimapWidth);const xe=ie-ke.minimapWidth,me=Math.max(1,Math.floor((xe-E-2)/l)),Ee=A?M:0;return ee&&(le=Math.max(1,me),p==="bounded"&&(le=Math.min(le,g))),{width:r,height:s,glyphMarginLeft:H,glyphMarginWidth:z,glyphMarginDecorationLaneCount:n.glyphMarginDecorationLaneCount,lineNumbersLeft:Y,lineNumbersWidth:j,decorationsLeft:X,decorationsWidth:B,contentLeft:Q,contentWidth:xe,minimap:ke,viewportColumn:me,isWordWrapMinified:K,isViewportWrapping:ee,wrappingColumn:le,verticalScrollbarWidth:E,horizontalScrollbarHeight:N,overviewRuler:{top:Ee,width:E,height:s-2*Ee,right:0}}}}class sst extends qr{constructor(){super(137,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[L("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),L("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:L("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return Rs(e,"simple",["simple","advanced"])}compute(e,n,r){return n.get(2)===2?"advanced":r}}class ost extends qr{constructor(){const e={enabled:!0};super(64,"lightbulb",e,{"editor.lightbulb.enabled":{type:"boolean",default:e.enabled,description:L("codeActions","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:Ut(e.enabled,this.defaultValue.enabled)}}}class ast extends qr{constructor(){const e={enabled:!1,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(114,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:L("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor.")},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:10,description:L("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:L("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:L("editor.stickyScroll.scrollWithEditor","Enable scrolling of the sticky scroll widget with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),maxLineCount:ir.clampedInt(n.maxLineCount,this.defaultValue.maxLineCount,1,10),defaultModel:Rs(n.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:Ut(n.scrollWithEditor,this.defaultValue.scrollWithEditor)}}}class lst extends qr{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(139,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:L("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[L("editor.inlayHints.on","Inlay hints are enabled"),L("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",ri?"Ctrl+Option":"Ctrl+Alt"),L("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",ri?"Ctrl+Option":"Ctrl+Alt"),L("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:L("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:L("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:L("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return typeof n.enabled=="boolean"&&(n.enabled=n.enabled?"on":"off"),{enabled:Rs(n.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:ir.clampedInt(n.fontSize,this.defaultValue.fontSize,0,100),fontFamily:Gc.string(n.fontFamily,this.defaultValue.fontFamily),padding:Ut(n.padding,this.defaultValue.padding)}}}class cst extends qr{constructor(){super(65,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):ir.clampedInt(e,this.defaultValue,0,1e3)}compute(e,n,r){return r<0?ir.clampedInt(-r*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):r}}class ust extends mf{constructor(){super(66,"lineHeight",su.lineHeight,e=>mf.clamp(e,0,150),{markdownDescription:L("lineHeight",`Controls the line height. - Use 0 to automatically compute the line height from the font size. - Values between 0 and 8 will be used as a multiplier with the font size. - Values greater than or equal to 8 will be used as effective values.`)})}compute(e,n,r){return e.fontInfo.lineHeight}}class dst extends qr{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1};super(72,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:L("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:L("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[L("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),L("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),L("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:L("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:L("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:L("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:L("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:L("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:L("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),autohide:Ut(n.autohide,this.defaultValue.autohide),size:Rs(n.size,this.defaultValue.size,["proportional","fill","fit"]),side:Rs(n.side,this.defaultValue.side,["right","left"]),showSlider:Rs(n.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:Ut(n.renderCharacters,this.defaultValue.renderCharacters),scale:ir.clampedInt(n.scale,1,1,3),maxColumn:ir.clampedInt(n.maxColumn,this.defaultValue.maxColumn,1,1e4)}}}function hst(i){return i==="ctrlCmd"?ri?"metaKey":"ctrlKey":"altKey"}class fst extends qr{constructor(){super(83,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:L("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:L("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{top:ir.clampedInt(n.top,0,0,1e3),bottom:ir.clampedInt(n.bottom,0,0,1e3)}}}class pst extends qr{constructor(){const e={enabled:!0,cycle:!0};super(85,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:L("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:L("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),cycle:Ut(n.cycle,this.defaultValue.cycle)}}}class gst extends w5{constructor(){super(141)}compute(e,n,r){return e.pixelRatio}}class mst extends qr{constructor(){const e={other:"on",comments:"off",strings:"off"},n=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[L("on","Quick suggestions show inside the suggest widget"),L("inline","Quick suggestions show as ghost text"),L("off","Quick suggestions are disabled")]}];super(88,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:n,default:e.strings,description:L("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:n,default:e.comments,description:L("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:n,default:e.other,description:L("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:L("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the '{0}'-setting which controls if suggestions are triggered by special characters.","#editor.suggestOnTriggerCharacters#")}),this.defaultValue=e}validate(e){if(typeof e=="boolean"){const u=e?"on":"off";return{comments:u,strings:u,other:u}}if(!e||typeof e!="object")return this.defaultValue;const{other:n,comments:r,strings:s}=e,o=["on","inline","off"];let a,l,c;return typeof n=="boolean"?a=n?"on":"off":a=Rs(n,this.defaultValue.other,o),typeof r=="boolean"?l=r?"on":"off":l=Rs(r,this.defaultValue.comments,o),typeof s=="boolean"?c=s?"on":"off":c=Rs(s,this.defaultValue.strings,o),{other:a,comments:l,strings:c}}}class _st extends qr{constructor(){super(67,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[L("lineNumbers.off","Line numbers are not rendered."),L("lineNumbers.on","Line numbers are rendered as absolute number."),L("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),L("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:L("lineNumbers","Controls the display of line numbers.")})}validate(e){let n=this.defaultValue.renderType,r=this.defaultValue.renderFn;return typeof e<"u"&&(typeof e=="function"?(n=4,r=e):e==="interval"?n=3:e==="relative"?n=2:e==="on"?n=1:n=0),{renderType:n,renderFn:r}}}function I9(i){const e=i.get(97);return e==="editable"?i.get(90):e!=="on"}class vst extends qr{constructor(){const e=[],n={type:"number",description:L("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(101,"rulers",e,{type:"array",items:{anyOf:[n,{type:["object"],properties:{column:n,color:{type:"string",description:L("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:L("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){const n=[];for(const r of e)if(typeof r=="number")n.push({column:ir.clampedInt(r,0,0,1e4),color:null});else if(r&&typeof r=="object"){const s=r;n.push({column:ir.clampedInt(s.column,0,0,1e4),color:s.color})}return n.sort((r,s)=>r.column-s.column),n}return this.defaultValue}}class bst extends qr{constructor(){super(91,"readOnlyMessage",void 0)}validate(e){return!e||typeof e!="object"?this.defaultValue:e}}function Wfe(i,e){if(typeof i!="string")return e;switch(i){case"hidden":return 2;case"visible":return 3;default:return 1}}let yst=class extends qr{constructor(){const e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1};super(102,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[L("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),L("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),L("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:L("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[L("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),L("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),L("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:L("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:L("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:L("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:L("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e,r=ir.clampedInt(n.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),s=ir.clampedInt(n.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:ir.clampedInt(n.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:Wfe(n.vertical,this.defaultValue.vertical),horizontal:Wfe(n.horizontal,this.defaultValue.horizontal),useShadows:Ut(n.useShadows,this.defaultValue.useShadows),verticalHasArrows:Ut(n.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:Ut(n.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:Ut(n.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:Ut(n.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:r,horizontalSliderSize:ir.clampedInt(n.horizontalSliderSize,r,0,1e3),verticalScrollbarSize:s,verticalSliderSize:ir.clampedInt(n.verticalSliderSize,s,0,1e3),scrollByPage:Ut(n.scrollByPage,this.defaultValue.scrollByPage)}}};const Bu="inUntrustedWorkspace",fc={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};class wst extends qr{constructor(){const e={nonBasicASCII:Bu,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:Bu,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(124,"unicodeHighlight",e,{[fc.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,Bu],default:e.nonBasicASCII,description:L("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[fc.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:L("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[fc.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:L("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[fc.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,Bu],default:e.includeComments,description:L("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[fc.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,Bu],default:e.includeStrings,description:L("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[fc.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:L("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[fc.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:L("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,n){let r=!1;n.allowedCharacters&&e&&(od(e.allowedCharacters,n.allowedCharacters)||(e=Object.assign(Object.assign({},e),{allowedCharacters:n.allowedCharacters}),r=!0)),n.allowedLocales&&e&&(od(e.allowedLocales,n.allowedLocales)||(e=Object.assign(Object.assign({},e),{allowedLocales:n.allowedLocales}),r=!0));const s=super.applyUpdate(e,n);return r?new QN(s.newValue,!0):s}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{nonBasicASCII:O2(n.nonBasicASCII,Bu,[!0,!1,Bu]),invisibleCharacters:Ut(n.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:Ut(n.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:O2(n.includeComments,Bu,[!0,!1,Bu]),includeStrings:O2(n.includeStrings,Bu,[!0,!1,Bu]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,n){if(typeof e!="object"||!e)return n;const r={};for(const[s,o]of Object.entries(e))o===!0&&(r[s]=!0);return r}}class Cst extends qr{constructor(){const e={enabled:!0,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:!1,keepOnBlur:!1};super(62,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:L("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover"],enumDescriptions:[L("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),L("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion.")],description:L("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:e.suppressSuggestions,description:L("inlineSuggest.suppressSuggestions","Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),mode:Rs(n.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:Rs(n.showToolbar,this.defaultValue.showToolbar,["always","onHover"]),suppressSuggestions:Ut(n.suppressSuggestions,this.defaultValue.suppressSuggestions),keepOnBlur:Ut(n.keepOnBlur,this.defaultValue.keepOnBlur)}}}class Sst extends qr{constructor(){const e={enabled:za.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:za.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(15,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:L("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:L("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:Ut(n.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}class xst extends qr{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(16,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[L("editor.guides.bracketPairs.true","Enables bracket pair guides."),L("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),L("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:L("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[L("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),L("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),L("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:L("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:L("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:L("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[L("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),L("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),L("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:L("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{bracketPairs:O2(n.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:O2(n.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:Ut(n.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:Ut(n.indentation,this.defaultValue.indentation),highlightActiveIndentation:O2(n.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}function O2(i,e,n){const r=n.indexOf(i);return r===-1?e:n[r]}class kst extends qr{constructor(){const e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!1,localityBonus:!1,shareSuggestSelections:!1,selectionMode:"always",showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,matchOnWordStartOnly:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(117,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[L("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),L("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:L("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:L("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:L("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:L("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[L("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),L("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),L("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),L("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:e.selectionMode,markdownDescription:L("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions (`#editor.quickSuggestions#` and `#editor.suggestOnTriggerCharacters#`) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:L("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:L("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:L("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:L("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:L("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:L("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:L("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:L("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{insertMode:Rs(n.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:Ut(n.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:Ut(n.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:Ut(n.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:Ut(n.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:Rs(n.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:Ut(n.showIcons,this.defaultValue.showIcons),showStatusBar:Ut(n.showStatusBar,this.defaultValue.showStatusBar),preview:Ut(n.preview,this.defaultValue.preview),previewMode:Rs(n.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:Ut(n.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:Ut(n.showMethods,this.defaultValue.showMethods),showFunctions:Ut(n.showFunctions,this.defaultValue.showFunctions),showConstructors:Ut(n.showConstructors,this.defaultValue.showConstructors),showDeprecated:Ut(n.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:Ut(n.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:Ut(n.showFields,this.defaultValue.showFields),showVariables:Ut(n.showVariables,this.defaultValue.showVariables),showClasses:Ut(n.showClasses,this.defaultValue.showClasses),showStructs:Ut(n.showStructs,this.defaultValue.showStructs),showInterfaces:Ut(n.showInterfaces,this.defaultValue.showInterfaces),showModules:Ut(n.showModules,this.defaultValue.showModules),showProperties:Ut(n.showProperties,this.defaultValue.showProperties),showEvents:Ut(n.showEvents,this.defaultValue.showEvents),showOperators:Ut(n.showOperators,this.defaultValue.showOperators),showUnits:Ut(n.showUnits,this.defaultValue.showUnits),showValues:Ut(n.showValues,this.defaultValue.showValues),showConstants:Ut(n.showConstants,this.defaultValue.showConstants),showEnums:Ut(n.showEnums,this.defaultValue.showEnums),showEnumMembers:Ut(n.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:Ut(n.showKeywords,this.defaultValue.showKeywords),showWords:Ut(n.showWords,this.defaultValue.showWords),showColors:Ut(n.showColors,this.defaultValue.showColors),showFiles:Ut(n.showFiles,this.defaultValue.showFiles),showReferences:Ut(n.showReferences,this.defaultValue.showReferences),showFolders:Ut(n.showFolders,this.defaultValue.showFolders),showTypeParameters:Ut(n.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:Ut(n.showSnippets,this.defaultValue.showSnippets),showUsers:Ut(n.showUsers,this.defaultValue.showUsers),showIssues:Ut(n.showIssues,this.defaultValue.showIssues)}}}class Lst extends qr{constructor(){super(112,"smartSelect",{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:L("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"},"editor.smartSelect.selectSubwords":{description:L("selectSubwords","Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected."),default:!0,type:"boolean"}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:Ut(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace),selectSubwords:Ut(e.selectSubwords,this.defaultValue.selectSubwords)}}}class Dst extends qr{constructor(){super(136,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[L("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),L("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),L("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),L("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:L("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(e,n,r){return n.get(2)===2?0:r}}class Est extends w5{constructor(){super(144)}compute(e,n,r){const s=n.get(143);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:s.isWordWrapMinified,isViewportWrapping:s.isViewportWrapping,wrappingColumn:s.wrappingColumn}}}class Ist extends qr{constructor(){const e={enabled:!0,showDropSelector:"afterDrop"};super(36,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:L("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down `shift` (instead of opening the file in an editor).")},"editor.dropIntoEditor.showDropSelector":{type:"string",markdownDescription:L("dropIntoEditor.showDropSelector","Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped."),enum:["afterDrop","never"],enumDescriptions:[L("dropIntoEditor.showDropSelector.afterDrop","Show the drop selector widget after a file is dropped into the editor."),L("dropIntoEditor.showDropSelector.never","Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),showDropSelector:Rs(n.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}}}class Tst extends qr{constructor(){const e={enabled:!0,showPasteSelector:"afterPaste"};super(84,"pasteAs",e,{"editor.pasteAs.enabled":{type:"boolean",default:e.enabled,markdownDescription:L("pasteAs.enabled","Controls whether you can paste content in different ways.")},"editor.pasteAs.showPasteSelector":{type:"string",markdownDescription:L("pasteAs.showPasteSelector","Controls if a widget is shown when pasting content in to the editor. This widget lets you control how the file is pasted."),enum:["afterPaste","never"],enumDescriptions:[L("pasteAs.showPasteSelector.afterPaste","Show the paste selector widget after content is pasted into the editor."),L("pasteAs.showPasteSelector.never","Never show the paste selector widget. Instead the default pasting behavior is always used.")],default:"afterPaste"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const n=e;return{enabled:Ut(n.enabled,this.defaultValue.enabled),showPasteSelector:Rs(n.showPasteSelector,this.defaultValue.showPasteSelector,["afterPaste","never"])}}}const Rst="Consolas, 'Courier New', monospace",Ast="Menlo, Monaco, 'Courier New', monospace",Nst="'Droid Sans Mono', 'monospace', monospace",su={fontFamily:ri?Ast:_l?Nst:Rst,fontWeight:"normal",fontSize:ri?12:14,lineHeight:0,letterSpacing:0},t2=[];function it(i){return t2[i.id]=i,i}const rg={acceptSuggestionOnCommitCharacter:it(new li(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:L("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:it(new ts(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",L("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:L("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:it(new Grt),accessibilityPageSize:it(new ir(3,"accessibilityPageSize",10,1,1073741824,{description:L("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:it(new Gc(4,"ariaLabel",L("editorViewAccessibleLabel","Editor content"))),ariaRequired:it(new li(5,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:it(new li(8,"screenReaderAnnounceInlineSuggestion",!0,{description:L("screenReaderAnnounceInlineSuggestion","Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:it(new ts(6,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",L("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),L("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:L("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:it(new ts(7,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",L("editor.autoClosingComments.languageDefined","Use language configurations to determine when to autoclose comments."),L("editor.autoClosingComments.beforeWhitespace","Autoclose comments only when the cursor is to the left of whitespace."),""],description:L("autoClosingComments","Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:it(new ts(9,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",L("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:L("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:it(new ts(10,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",L("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:L("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:it(new ts(11,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",L("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),L("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:L("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:it(new M3(12,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],Krt,{enumDescriptions:[L("editor.autoIndent.none","The editor will not insert indentation automatically."),L("editor.autoIndent.keep","The editor will keep the current line's indentation."),L("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),L("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),L("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:L("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:it(new li(13,"automaticLayout",!1)),autoSurround:it(new ts(14,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[L("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),L("editor.autoSurround.quotes","Surround with quotes but not brackets."),L("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:L("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:it(new Sst),bracketPairGuides:it(new xst),stickyTabStops:it(new li(115,"stickyTabStops",!1,{description:L("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:it(new li(17,"codeLens",!0,{description:L("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:it(new Gc(18,"codeLensFontFamily","",{description:L("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:it(new ir(19,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:L("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:it(new li(20,"colorDecorators",!0,{description:L("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:it(new ts(146,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[L("editor.colorDecoratorActivatedOn.clickAndHover","Make the color picker appear both on click and hover of the color decorator"),L("editor.colorDecoratorActivatedOn.hover","Make the color picker appear on hover of the color decorator"),L("editor.colorDecoratorActivatedOn.click","Make the color picker appear on click of the color decorator")],description:L("colorDecoratorActivatedOn","Controls the condition to make a color picker appear from a color decorator")})),colorDecoratorsLimit:it(new ir(21,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:L("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:it(new li(22,"columnSelection",!1,{description:L("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:it(new Xrt),contextmenu:it(new li(24,"contextmenu",!0)),copyWithSyntaxHighlighting:it(new li(25,"copyWithSyntaxHighlighting",!0,{description:L("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:it(new M3(26,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],Yrt,{description:L("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:it(new ts(27,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[L("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),L("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),L("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:L("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:it(new M3(28,"cursorStyle",na.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],Zrt,{description:L("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:it(new ir(29,"cursorSurroundingLines",0,0,1073741824,{description:L("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:it(new ts(30,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[L("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),L("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],markdownDescription:L("cursorSurroundingLinesStyle","Controls when `#cursorSurroundingLines#` should be enforced.")})),cursorWidth:it(new ir(31,"cursorWidth",0,0,1073741824,{markdownDescription:L("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:it(new li(32,"disableLayerHinting",!1)),disableMonospaceOptimizations:it(new li(33,"disableMonospaceOptimizations",!1)),domReadOnly:it(new li(34,"domReadOnly",!1)),dragAndDrop:it(new li(35,"dragAndDrop",!0,{description:L("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:it(new Jrt),dropIntoEditor:it(new Ist),stickyScroll:it(new ast),experimentalWhitespaceRendering:it(new ts(38,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[L("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),L("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),L("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:L("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:it(new Gc(39,"extraEditorClassName","")),fastScrollSensitivity:it(new mf(40,"fastScrollSensitivity",5,i=>i<=0?5:i,{markdownDescription:L("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:it(new est),fixedOverflowWidgets:it(new li(42,"fixedOverflowWidgets",!1)),folding:it(new li(43,"folding",!0,{description:L("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:it(new ts(44,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[L("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),L("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:L("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:it(new li(45,"foldingHighlight",!0,{description:L("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:it(new li(46,"foldingImportsByDefault",!1,{description:L("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:it(new ir(47,"foldingMaximumRegions",5e3,10,65e3,{description:L("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:it(new li(48,"unfoldOnClickAfterEndOfLine",!1,{description:L("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:it(new Gc(49,"fontFamily",su.fontFamily,{description:L("fontFamily","Controls the font family.")})),fontInfo:it(new tst),fontLigatures2:it(new Uu),fontSize:it(new nst),fontWeight:it(new lm),fontVariations:it(new Ip),formatOnPaste:it(new li(55,"formatOnPaste",!1,{description:L("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:it(new li(56,"formatOnType",!1,{description:L("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:it(new li(57,"glyphMargin",!0,{description:L("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:it(new ist),hideCursorInOverviewRuler:it(new li(59,"hideCursorInOverviewRuler",!1,{description:L("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:it(new rst),inDiffEditor:it(new li(61,"inDiffEditor",!1)),letterSpacing:it(new mf(63,"letterSpacing",su.letterSpacing,i=>mf.clamp(i,-5,20),{description:L("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:it(new ost),lineDecorationsWidth:it(new cst),lineHeight:it(new ust),lineNumbers:it(new _st),lineNumbersMinChars:it(new ir(68,"lineNumbersMinChars",5,1,300)),linkedEditing:it(new li(69,"linkedEditing",!1,{description:L("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:it(new li(70,"links",!0,{description:L("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:it(new ts(71,"matchBrackets","always",["always","near","never"],{description:L("matchBrackets","Highlight matching brackets.")})),minimap:it(new dst),mouseStyle:it(new ts(73,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:it(new mf(74,"mouseWheelScrollSensitivity",1,i=>i===0?1:i,{markdownDescription:L("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:it(new li(75,"mouseWheelZoom",!1,{markdownDescription:L("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:it(new li(76,"multiCursorMergeOverlapping",!0,{description:L("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:it(new M3(77,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],hst,{markdownEnumDescriptions:[L("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),L("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:L({},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:it(new ts(78,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[L("multiCursorPaste.spread","Each cursor pastes a single line of the text."),L("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:L("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:it(new ir(79,"multiCursorLimit",1e4,1,1e5,{markdownDescription:L("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:it(new li(80,"occurrencesHighlight",!0,{description:L("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:it(new li(81,"overviewRulerBorder",!0,{description:L("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:it(new ir(82,"overviewRulerLanes",3,0,3)),padding:it(new fst),pasteAs:it(new Tst),parameterHints:it(new pst),peekWidgetDefaultFocus:it(new ts(86,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[L("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),L("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:L("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),definitionLinkOpensInPeek:it(new li(87,"definitionLinkOpensInPeek",!1,{description:L("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:it(new mst),quickSuggestionsDelay:it(new ir(89,"quickSuggestionsDelay",10,0,1073741824,{description:L("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:it(new li(90,"readOnly",!1)),readOnlyMessage:it(new bst),renameOnType:it(new li(92,"renameOnType",!1,{description:L("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:L("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:it(new li(93,"renderControlCharacters",!0,{description:L("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:it(new ts(94,"renderFinalNewline",_l?"dimmed":"on",["off","on","dimmed"],{description:L("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:it(new ts(95,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",L("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:L("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:it(new li(96,"renderLineHighlightOnlyWhenFocus",!1,{description:L("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:it(new ts(97,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:it(new ts(98,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",L("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),L("renderWhitespace.selection","Render whitespace characters only on selected text."),L("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:L("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:it(new ir(99,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:it(new li(100,"roundedSelection",!0,{description:L("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:it(new vst),scrollbar:it(new yst),scrollBeyondLastColumn:it(new ir(103,"scrollBeyondLastColumn",4,0,1073741824,{description:L("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:it(new li(104,"scrollBeyondLastLine",!0,{description:L("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:it(new li(105,"scrollPredominantAxis",!0,{description:L("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:it(new li(106,"selectionClipboard",!0,{description:L("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:_l})),selectionHighlight:it(new li(107,"selectionHighlight",!0,{description:L("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:it(new li(108,"selectOnLineNumbers",!0)),showFoldingControls:it(new ts(109,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[L("showFoldingControls.always","Always show the folding controls."),L("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),L("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:L("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:it(new li(110,"showUnused",!0,{description:L("showUnused","Controls fading out of unused code.")})),showDeprecated:it(new li(138,"showDeprecated",!0,{description:L("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:it(new lst),snippetSuggestions:it(new ts(111,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[L("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),L("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),L("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),L("snippetSuggestions.none","Do not show snippet suggestions.")],description:L("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:it(new Lst),smoothScrolling:it(new li(113,"smoothScrolling",!1,{description:L("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:it(new ir(116,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:it(new kst),inlineSuggest:it(new Cst),inlineCompletionsAccessibilityVerbose:it(new li(147,"inlineCompletionsAccessibilityVerbose",!1,{description:L("inlineCompletionsAccessibilityVerbose","Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.")})),suggestFontSize:it(new ir(118,"suggestFontSize",0,0,1e3,{markdownDescription:L("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:it(new ir(119,"suggestLineHeight",0,0,1e3,{markdownDescription:L("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:it(new li(120,"suggestOnTriggerCharacters",!0,{description:L("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:it(new ts(121,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[L("suggestSelection.first","Always select the first suggestion."),L("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),L("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:L("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:it(new ts(122,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[L("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),L("tabCompletion.off","Disable tab completions."),L("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:L("tabCompletion","Enables tab completions.")})),tabIndex:it(new ir(123,"tabIndex",0,-1,1073741824)),unicodeHighlight:it(new wst),unusualLineTerminators:it(new ts(125,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[L("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),L("unusualLineTerminators.off","Unusual line terminators are ignored."),L("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:L("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:it(new li(126,"useShadowDOM",!0)),useTabStops:it(new li(127,"useTabStops",!0,{description:L("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordBreak:it(new ts(128,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[L("wordBreak.normal","Use the default line break rule."),L("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:L("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSeparators:it(new Gc(129,"wordSeparators",L2e,{description:L("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:it(new ts(130,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[L("wordWrap.off","Lines will never wrap."),L("wordWrap.on","Lines will wrap at the viewport width."),L({},"Lines will wrap at `#editor.wordWrapColumn#`."),L({},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:L({},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:it(new Gc(131,"wordWrapBreakAfterCharacters"," })]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:it(new Gc(132,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:it(new ir(133,"wordWrapColumn",80,1,1073741824,{markdownDescription:L({},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:it(new ts(134,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:it(new ts(135,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:it(new Qrt),defaultColorDecorators:it(new li(145,"defaultColorDecorators",!1,{markdownDescription:L("defaultColorDecorators","Controls whether inline color decorations should be shown using the default document color provider")})),pixelRatio:it(new gst),tabFocusMode:it(new li(142,"tabFocusMode",!1,{markdownDescription:L("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:it(new P2),wrappingInfo:it(new Est),wrappingIndent:it(new Dst),wrappingStrategy:it(new sst)};class Mst{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?DE.isErrorNoTelemetry(e)?new DE(e.message+` `+e.stack):new Error(e.message+` `+e.stack):e},0)}}emit(e){this.listeners.forEach(n=>{n(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}}const R2e=new Mst;function Ln(i){sg(i)||R2e.onUnexpectedError(i)}function Us(i){sg(i)||R2e.onUnexpectedExternalError(i)}function $fe(i){if(i instanceof Error){const{name:e,message:n}=i,r=i.stacktrace||i.stack;return{$isError:!0,name:e,message:n,stack:r,noTelemetry:DE.isErrorNoTelemetry(i)}}return i}const T9="Canceled";function sg(i){return i instanceof U1?!0:i instanceof Error&&i.name===T9&&i.message===T9}class U1 extends Error{constructor(){super(T9),this.name=this.message}}function Pst(){const i=new Error(T9);return i.name=i.message,i}function uh(i){return i?new Error(`Illegal argument: ${i}`):new Error("Illegal argument")}function Rse(i){return i?new Error(`Illegal state: ${i}`):new Error("Illegal state")}class Ost extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class DE extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof DE)return e;const n=new DE;return n.message=e.message,n.stack=e.stack,n}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}}class Vs extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,Vs.prototype)}}function u1(i){const e=this;let n=!1,r;return function(){return n||(n=!0,r=i.apply(e,arguments)),r}}function Ase(i){return typeof i.dispose=="function"&&i.dispose.length===0}function Mi(i){if(Vn.is(i)){const e=[];for(const n of i)if(n)try{n.dispose()}catch(r){e.push(r)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(i)?[]:i}else if(i)return i.dispose(),i}function Sf(...i){return gn(()=>Mi(i))}function gn(i){return{dispose:u1(()=>{i()})}}class Xe{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{Mi(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?Xe.DISABLE_DISPOSED_WARNING||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):this._toDispose.add(e),e}deleteAndLeak(e){e&&this._toDispose.has(e)&&this._toDispose.delete(e)}}Xe.DISABLE_DISPOSED_WARNING=!1;class Le{constructor(){this._store=new Xe,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}}Le.None=Object.freeze({dispose(){}});class ha{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){var n;this._isDisposed||e===this._value||((n=this._value)===null||n===void 0||n.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){var e;this._isDisposed=!0,(e=this._value)===null||e===void 0||e.dispose(),this._value=void 0}}class Fst{constructor(e){this._disposable=e,this._counter=1}acquire(){return this._counter++,this}release(){return--this._counter===0&&this._disposable.dispose(),this}}class Bst{constructor(e){this.object=e}dispose(){}}class Nse{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{Mi(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,n,r=!1){var s;this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),r||(s=this._store.get(e))===null||s===void 0||s.dispose(),this._store.set(e,n)}deleteAndDispose(e){var n;(n=this._store.get(e))===null||n===void 0||n.dispose(),this._store.delete(e)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}const jst=globalThis.performance&&typeof globalThis.performance.now=="function";class Xa{static create(e){return new Xa(e)}constructor(e){this._now=jst&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var _t;(function(i){i.None=()=>Le.None;function e(O,B){return h(O,()=>{},0,void 0,!0,void 0,B)}i.defer=e;function n(O){return(B,j=null,z)=>{let H=!1,Y;return Y=O(X=>{if(!H)return Y?Y.dispose():H=!0,B.call(j,X)},null,z),H&&Y.dispose(),Y}}i.once=n;function r(O,B,j){return u((z,H=null,Y)=>O(X=>z.call(H,B(X)),null,Y),j)}i.map=r;function s(O,B,j){return u((z,H=null,Y)=>O(X=>{B(X),z.call(H,X)},null,Y),j)}i.forEach=s;function o(O,B,j){return u((z,H=null,Y)=>O(X=>B(X)&&z.call(H,X),null,Y),j)}i.filter=o;function a(O){return O}i.signal=a;function l(...O){return(B,j=null,z)=>{const H=Sf(...O.map(Y=>Y(X=>B.call(j,X))));return d(H,z)}}i.any=l;function c(O,B,j,z){let H=j;return r(O,Y=>(H=B(H,Y),H),z)}i.reduce=c;function u(O,B){let j;const z={onWillAddFirstListener(){j=O(H.fire,H)},onDidRemoveLastListener(){j==null||j.dispose()}},H=new _e(z);return B==null||B.add(H),H.event}function d(O,B){return B instanceof Array?B.push(O):B&&B.add(O),O}function h(O,B,j=100,z=!1,H=!1,Y,X){let Q,ie,K,ee=0,le;const ke={leakWarningThreshold:Y,onWillAddFirstListener(){Q=O(me=>{ee++,ie=B(ie,me),z&&!K&&(xe.fire(ie),ie=void 0),le=()=>{const Ee=ie;ie=void 0,K=void 0,(!z||ee>1)&&xe.fire(Ee),ee=0},typeof j=="number"?(clearTimeout(K),K=setTimeout(le,j)):K===void 0&&(K=0,queueMicrotask(le))})},onWillRemoveListener(){H&&ee>0&&(le==null||le())},onDidRemoveLastListener(){le=void 0,Q.dispose()}},xe=new _e(ke);return X==null||X.add(xe),xe.event}i.debounce=h;function f(O,B=0,j){return i.debounce(O,(z,H)=>z?(z.push(H),z):[H],B,void 0,!0,void 0,j)}i.accumulate=f;function p(O,B=(z,H)=>z===H,j){let z=!0,H;return o(O,Y=>{const X=z||!B(Y,H);return z=!1,H=Y,X},j)}i.latch=p;function g(O,B,j){return[i.filter(O,B,j),i.filter(O,z=>!B(z),j)]}i.split=g;function m(O,B=!1,j=[],z){let H=j.slice(),Y=O(ie=>{H?H.push(ie):Q.fire(ie)});z&&z.add(Y);const X=()=>{H==null||H.forEach(ie=>Q.fire(ie)),H=null},Q=new _e({onWillAddFirstListener(){Y||(Y=O(ie=>Q.fire(ie)),z&&z.add(Y))},onDidAddFirstListener(){H&&(B?setTimeout(X):X())},onDidRemoveLastListener(){Y&&Y.dispose(),Y=null}});return z&&z.add(Q),Q.event}i.buffer=m;function _(O,B){return(z,H,Y)=>{const X=B(new y);return O(function(Q){const ie=X.evaluate(Q);ie!==b&&z.call(H,ie)},void 0,Y)}}i.chain=_;const b=Symbol("HaltChainable");class y{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(j=>(B(j),j)),this}filter(B){return this.steps.push(j=>B(j)?j:b),this}reduce(B,j){let z=j;return this.steps.push(H=>(z=B(z,H),z)),this}latch(B=(j,z)=>j===z){let j=!0,z;return this.steps.push(H=>{const Y=j||!B(H,z);return j=!1,z=H,Y?H:b}),this}evaluate(B){for(const j of this.steps)if(B=j(B),B===b)break;return B}}function x(O,B,j=z=>z){const z=(...Q)=>X.fire(j(...Q)),H=()=>O.on(B,z),Y=()=>O.removeListener(B,z),X=new _e({onWillAddFirstListener:H,onDidRemoveLastListener:Y});return X.event}i.fromNodeEventEmitter=x;function k(O,B,j=z=>z){const z=(...Q)=>X.fire(j(...Q)),H=()=>O.addEventListener(B,z),Y=()=>O.removeEventListener(B,z),X=new _e({onWillAddFirstListener:H,onDidRemoveLastListener:Y});return X.event}i.fromDOMEventEmitter=k;function D(O){return new Promise(B=>n(O)(B))}i.toPromise=D;function R(O){const B=new _e;return O.then(j=>{B.fire(j)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}i.fromPromise=R;function E(O,B){return B(void 0),O(j=>B(j))}i.runAndSubscribe=E;function A(O,B){let j=null;function z(Y){j==null||j.dispose(),j=new Xe,B(Y,j)}z(void 0);const H=O(Y=>z(Y));return gn(()=>{H.dispose(),j==null||j.dispose()})}i.runAndSubscribeWithStore=A;class M{constructor(B,j){this._observable=B,this._counter=0,this._hasChanged=!1;const z={onWillAddFirstListener:()=>{B.addObserver(this)},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new _e(z),j&&j.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,j){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function N(O,B){return new M(O,B).emitter.event}i.fromObservable=N;function P(O){return B=>{let j=0,z=!1;const H={beginUpdate(){j++},endUpdate(){j--,j===0&&(O.reportChanges(),z&&(z=!1,B()))},handlePossibleChange(){},handleChange(){z=!0}};return O.addObserver(H),O.reportChanges(),{dispose(){O.removeObserver(H)}}}}i.fromObservableLight=P})(_t||(_t={}));class EE{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${EE._idPool++}`,EE.all.add(this)}start(e){this._stopWatch=new Xa,this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}}EE.all=new Set;EE._idPool=0;let Wst=-1;class $st{constructor(e,n=Math.random().toString(18).slice(2,5)){this.threshold=e,this.name=n,this._warnCountdown=0}dispose(){var e;(e=this._stacks)===null||e===void 0||e.clear()}check(e,n){const r=this.threshold;if(r<=0||n{const o=this._stacks.get(e.value)||0;this._stacks.set(e.value,o-1)}}}class Mse{static create(){var e;return new Mse((e=new Error().stack)!==null&&e!==void 0?e:"")}constructor(e){this.value=e}print(){console.warn(this.value.split(` `).slice(2).join(` `))}}class WU{constructor(e){this.value=e}}const zst=2;let _e=class{constructor(e){var n,r,s,o,a;this._size=0,this._options=e,this._leakageMon=!((n=this._options)===null||n===void 0)&&n.leakWarningThreshold?new $st((s=(r=this._options)===null||r===void 0?void 0:r.leakWarningThreshold)!==null&&s!==void 0?s:Wst):void 0,this._perfMon=!((o=this._options)===null||o===void 0)&&o._profName?new EE(this._options._profName):void 0,this._deliveryQueue=(a=this._options)===null||a===void 0?void 0:a.deliveryQueue}dispose(){var e,n,r,s;this._disposed||(this._disposed=!0,((e=this._deliveryQueue)===null||e===void 0?void 0:e.current)===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),(r=(n=this._options)===null||n===void 0?void 0:n.onDidRemoveLastListener)===null||r===void 0||r.call(n),(s=this._leakageMon)===null||s===void 0||s.dispose())}get event(){var e;return(e=this._event)!==null&&e!==void 0||(this._event=(n,r,s)=>{var o,a,l,c,u;if(this._leakageMon&&this._size>this._leakageMon.threshold*3)return console.warn(`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far`),Le.None;if(this._disposed)return Le.None;r&&(n=n.bind(r));const d=new WU(n);let h;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(d.stack=Mse.create(),h=this._leakageMon.check(d.stack,this._size+1)),this._listeners?this._listeners instanceof WU?((u=this._deliveryQueue)!==null&&u!==void 0||(this._deliveryQueue=new A2e),this._listeners=[this._listeners,d]):this._listeners.push(d):((a=(o=this._options)===null||o===void 0?void 0:o.onWillAddFirstListener)===null||a===void 0||a.call(o,this),this._listeners=d,(c=(l=this._options)===null||l===void 0?void 0:l.onDidAddFirstListener)===null||c===void 0||c.call(l,this)),this._size++;const f=gn(()=>{h==null||h(),this._removeListener(d)});return s instanceof Xe?s.add(f):Array.isArray(s)&&s.push(f),f}),this._event}_removeListener(e){var n,r,s,o;if((r=(n=this._options)===null||n===void 0?void 0:n.onWillRemoveListener)===null||r===void 0||r.call(n,this),!this._listeners)return;if(this._size===1){this._listeners=void 0,(o=(s=this._options)===null||s===void 0?void 0:s.onDidRemoveLastListener)===null||o===void 0||o.call(s,this),this._size=0;return}const a=this._listeners,l=a.indexOf(e);if(l===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,a[l]=void 0;const c=this._deliveryQueue.current===this;if(this._size*zst<=a.length){let u=0;for(let d=0;d0}};const Vst=()=>new A2e;class A2e{constructor(){this.i=-1,this.end=0}enqueue(e,n,r){this.i=0,this.end=r,this.current=e,this.value=n}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}class sx extends _e{constructor(e){super(e),this._isPaused=0,this._eventQueue=new jl,this._mergeFn=e==null?void 0:e.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0)if(this._mergeFn){if(this._eventQueue.size>0){const e=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(e))}}else for(;!this._isPaused&&this._eventQueue.size!==0;)super.fire(this._eventQueue.shift())}fire(e){this._size&&(this._isPaused!==0?this._eventQueue.push(e):super.fire(e))}}class N2e extends sx{constructor(e){var n;super(e),this._delay=(n=e.delay)!==null&&n!==void 0?n:100}fire(e){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(e)}}class Hst extends _e{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=e==null?void 0:e.merge}fire(e){this.hasListeners()&&(this._queuedEvents.push(e),this._queuedEvents.length===1&&queueMicrotask(()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach(n=>super.fire(n)),this._queuedEvents=[]}))}}class Ust{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new _e({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){const n={event:e,listener:null};return this.events.push(n),this.hasListeners&&this.hook(n),gn(u1(()=>{this.hasListeners&&this.unhook(n);const s=this.events.indexOf(n);this.events.splice(s,1)}))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach(e=>this.hook(e))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach(e=>this.unhook(e))}hook(e){e.listener=e.event(n=>this.emitter.fire(n))}unhook(e){e.listener&&e.listener.dispose(),e.listener=null}dispose(){this.emitter.dispose()}}class Pse{constructor(){this.buffers=[]}wrapEvent(e){return(n,r,s)=>e(o=>{const a=this.buffers[this.buffers.length-1];a?a.push(()=>n.call(r,o)):n.call(r,o)},void 0,s)}bufferEvents(e){const n=[];this.buffers.push(n);const r=e();return this.buffers.pop(),n.forEach(s=>s()),r}}class zfe{constructor(){this.listening=!1,this.inputEvent=_t.None,this.inputEventListener=Le.None,this.emitter=new _e({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}}),this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}}const M2e=Object.freeze(function(i,e){const n=setTimeout(i.bind(e),0);return{dispose(){clearTimeout(n)}}});var Hn;(function(i){function e(n){return n===i.None||n===i.Cancelled||n instanceof i8?!0:!n||typeof n!="object"?!1:typeof n.isCancellationRequested=="boolean"&&typeof n.onCancellationRequested=="function"}i.isCancellationToken=e,i.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:_t.None}),i.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:M2e})})(Hn||(Hn={}));class i8{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?M2e:(this._emitter||(this._emitter=new _e),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}let Ns=class{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new i8),this._token}cancel(){this._token?this._token instanceof i8&&this._token.cancel():this._token=Hn.Cancelled}dispose(e=!1){var n;e&&this.cancel(),(n=this._parentListener)===null||n===void 0||n.dispose(),this._token?this._token instanceof i8&&this._token.dispose():this._token=Hn.None}};class Ose{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,n){this._keyCodeToStr[e]=n,this._strToKeyCode[n.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const r8=new Ose,aQ=new Ose,lQ=new Ose,P2e=new Array(230),qst=Object.create(null),Kst=Object.create(null),Fse=[];for(let i=0;i<=193;i++)Fse[i]=-1;(function(){const i="",e=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN",i,i],[1,1,"Hyper",0,i,0,i,i,i],[1,2,"Super",0,i,0,i,i,i],[1,3,"Fn",0,i,0,i,i,i],[1,4,"FnLock",0,i,0,i,i,i],[1,5,"Suspend",0,i,0,i,i,i],[1,6,"Resume",0,i,0,i,i,i],[1,7,"Turbo",0,i,0,i,i,i],[1,8,"Sleep",0,i,0,"VK_SLEEP",i,i],[1,9,"WakeUp",0,i,0,i,i,i],[0,10,"KeyA",31,"A",65,"VK_A",i,i],[0,11,"KeyB",32,"B",66,"VK_B",i,i],[0,12,"KeyC",33,"C",67,"VK_C",i,i],[0,13,"KeyD",34,"D",68,"VK_D",i,i],[0,14,"KeyE",35,"E",69,"VK_E",i,i],[0,15,"KeyF",36,"F",70,"VK_F",i,i],[0,16,"KeyG",37,"G",71,"VK_G",i,i],[0,17,"KeyH",38,"H",72,"VK_H",i,i],[0,18,"KeyI",39,"I",73,"VK_I",i,i],[0,19,"KeyJ",40,"J",74,"VK_J",i,i],[0,20,"KeyK",41,"K",75,"VK_K",i,i],[0,21,"KeyL",42,"L",76,"VK_L",i,i],[0,22,"KeyM",43,"M",77,"VK_M",i,i],[0,23,"KeyN",44,"N",78,"VK_N",i,i],[0,24,"KeyO",45,"O",79,"VK_O",i,i],[0,25,"KeyP",46,"P",80,"VK_P",i,i],[0,26,"KeyQ",47,"Q",81,"VK_Q",i,i],[0,27,"KeyR",48,"R",82,"VK_R",i,i],[0,28,"KeyS",49,"S",83,"VK_S",i,i],[0,29,"KeyT",50,"T",84,"VK_T",i,i],[0,30,"KeyU",51,"U",85,"VK_U",i,i],[0,31,"KeyV",52,"V",86,"VK_V",i,i],[0,32,"KeyW",53,"W",87,"VK_W",i,i],[0,33,"KeyX",54,"X",88,"VK_X",i,i],[0,34,"KeyY",55,"Y",89,"VK_Y",i,i],[0,35,"KeyZ",56,"Z",90,"VK_Z",i,i],[0,36,"Digit1",22,"1",49,"VK_1",i,i],[0,37,"Digit2",23,"2",50,"VK_2",i,i],[0,38,"Digit3",24,"3",51,"VK_3",i,i],[0,39,"Digit4",25,"4",52,"VK_4",i,i],[0,40,"Digit5",26,"5",53,"VK_5",i,i],[0,41,"Digit6",27,"6",54,"VK_6",i,i],[0,42,"Digit7",28,"7",55,"VK_7",i,i],[0,43,"Digit8",29,"8",56,"VK_8",i,i],[0,44,"Digit9",30,"9",57,"VK_9",i,i],[0,45,"Digit0",21,"0",48,"VK_0",i,i],[1,46,"Enter",3,"Enter",13,"VK_RETURN",i,i],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE",i,i],[1,48,"Backspace",1,"Backspace",8,"VK_BACK",i,i],[1,49,"Tab",2,"Tab",9,"VK_TAB",i,i],[1,50,"Space",10,"Space",32,"VK_SPACE",i,i],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,i,0,i,i,i],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",i,i],[1,64,"F1",59,"F1",112,"VK_F1",i,i],[1,65,"F2",60,"F2",113,"VK_F2",i,i],[1,66,"F3",61,"F3",114,"VK_F3",i,i],[1,67,"F4",62,"F4",115,"VK_F4",i,i],[1,68,"F5",63,"F5",116,"VK_F5",i,i],[1,69,"F6",64,"F6",117,"VK_F6",i,i],[1,70,"F7",65,"F7",118,"VK_F7",i,i],[1,71,"F8",66,"F8",119,"VK_F8",i,i],[1,72,"F9",67,"F9",120,"VK_F9",i,i],[1,73,"F10",68,"F10",121,"VK_F10",i,i],[1,74,"F11",69,"F11",122,"VK_F11",i,i],[1,75,"F12",70,"F12",123,"VK_F12",i,i],[1,76,"PrintScreen",0,i,0,i,i,i],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL",i,i],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",i,i],[1,79,"Insert",19,"Insert",45,"VK_INSERT",i,i],[1,80,"Home",14,"Home",36,"VK_HOME",i,i],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",i,i],[1,82,"Delete",20,"Delete",46,"VK_DELETE",i,i],[1,83,"End",13,"End",35,"VK_END",i,i],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT",i,i],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",i],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",i],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",i],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",i],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK",i,i],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE",i,i],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY",i,i],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT",i,i],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD",i,i],[1,94,"NumpadEnter",3,i,0,i,i,i],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1",i,i],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2",i,i],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3",i,i],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4",i,i],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5",i,i],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6",i,i],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7",i,i],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8",i,i],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9",i,i],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0",i,i],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL",i,i],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102",i,i],[1,107,"ContextMenu",58,"ContextMenu",93,i,i,i],[1,108,"Power",0,i,0,i,i,i],[1,109,"NumpadEqual",0,i,0,i,i,i],[1,110,"F13",71,"F13",124,"VK_F13",i,i],[1,111,"F14",72,"F14",125,"VK_F14",i,i],[1,112,"F15",73,"F15",126,"VK_F15",i,i],[1,113,"F16",74,"F16",127,"VK_F16",i,i],[1,114,"F17",75,"F17",128,"VK_F17",i,i],[1,115,"F18",76,"F18",129,"VK_F18",i,i],[1,116,"F19",77,"F19",130,"VK_F19",i,i],[1,117,"F20",78,"F20",131,"VK_F20",i,i],[1,118,"F21",79,"F21",132,"VK_F21",i,i],[1,119,"F22",80,"F22",133,"VK_F22",i,i],[1,120,"F23",81,"F23",134,"VK_F23",i,i],[1,121,"F24",82,"F24",135,"VK_F24",i,i],[1,122,"Open",0,i,0,i,i,i],[1,123,"Help",0,i,0,i,i,i],[1,124,"Select",0,i,0,i,i,i],[1,125,"Again",0,i,0,i,i,i],[1,126,"Undo",0,i,0,i,i,i],[1,127,"Cut",0,i,0,i,i,i],[1,128,"Copy",0,i,0,i,i,i],[1,129,"Paste",0,i,0,i,i,i],[1,130,"Find",0,i,0,i,i,i],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE",i,i],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP",i,i],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN",i,i],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR",i,i],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1",i,i],[1,136,"KanaMode",0,i,0,i,i,i],[0,137,"IntlYen",0,i,0,i,i,i],[1,138,"Convert",0,i,0,i,i,i],[1,139,"NonConvert",0,i,0,i,i,i],[1,140,"Lang1",0,i,0,i,i,i],[1,141,"Lang2",0,i,0,i,i,i],[1,142,"Lang3",0,i,0,i,i,i],[1,143,"Lang4",0,i,0,i,i,i],[1,144,"Lang5",0,i,0,i,i,i],[1,145,"Abort",0,i,0,i,i,i],[1,146,"Props",0,i,0,i,i,i],[1,147,"NumpadParenLeft",0,i,0,i,i,i],[1,148,"NumpadParenRight",0,i,0,i,i,i],[1,149,"NumpadBackspace",0,i,0,i,i,i],[1,150,"NumpadMemoryStore",0,i,0,i,i,i],[1,151,"NumpadMemoryRecall",0,i,0,i,i,i],[1,152,"NumpadMemoryClear",0,i,0,i,i,i],[1,153,"NumpadMemoryAdd",0,i,0,i,i,i],[1,154,"NumpadMemorySubtract",0,i,0,i,i,i],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR",i,i],[1,156,"NumpadClearEntry",0,i,0,i,i,i],[1,0,i,5,"Ctrl",17,"VK_CONTROL",i,i],[1,0,i,4,"Shift",16,"VK_SHIFT",i,i],[1,0,i,6,"Alt",18,"VK_MENU",i,i],[1,0,i,57,"Meta",91,"VK_COMMAND",i,i],[1,157,"ControlLeft",5,i,0,"VK_LCONTROL",i,i],[1,158,"ShiftLeft",4,i,0,"VK_LSHIFT",i,i],[1,159,"AltLeft",6,i,0,"VK_LMENU",i,i],[1,160,"MetaLeft",57,i,0,"VK_LWIN",i,i],[1,161,"ControlRight",5,i,0,"VK_RCONTROL",i,i],[1,162,"ShiftRight",4,i,0,"VK_RSHIFT",i,i],[1,163,"AltRight",6,i,0,"VK_RMENU",i,i],[1,164,"MetaRight",57,i,0,"VK_RWIN",i,i],[1,165,"BrightnessUp",0,i,0,i,i,i],[1,166,"BrightnessDown",0,i,0,i,i,i],[1,167,"MediaPlay",0,i,0,i,i,i],[1,168,"MediaRecord",0,i,0,i,i,i],[1,169,"MediaFastForward",0,i,0,i,i,i],[1,170,"MediaRewind",0,i,0,i,i,i],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",i,i],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",i,i],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP",i,i],[1,174,"Eject",0,i,0,i,i,i],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",i,i],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",i,i],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",i,i],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",i,i],[1,179,"LaunchApp1",0,i,0,"VK_MEDIA_LAUNCH_APP1",i,i],[1,180,"SelectTask",0,i,0,i,i,i],[1,181,"LaunchScreenSaver",0,i,0,i,i,i],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH",i,i],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME",i,i],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK",i,i],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD",i,i],[1,186,"BrowserStop",0,i,0,"VK_BROWSER_STOP",i,i],[1,187,"BrowserRefresh",0,i,0,"VK_BROWSER_REFRESH",i,i],[1,188,"BrowserFavorites",0,i,0,"VK_BROWSER_FAVORITES",i,i],[1,189,"ZoomToggle",0,i,0,i,i,i],[1,190,"MailReply",0,i,0,i,i,i],[1,191,"MailForward",0,i,0,i,i,i],[1,192,"MailSend",0,i,0,i,i,i],[1,0,i,114,"KeyInComposition",229,i,i,i],[1,0,i,116,"ABNT_C2",194,"VK_ABNT_C2",i,i],[1,0,i,96,"OEM_8",223,"VK_OEM_8",i,i],[1,0,i,0,i,0,"VK_KANA",i,i],[1,0,i,0,i,0,"VK_HANGUL",i,i],[1,0,i,0,i,0,"VK_JUNJA",i,i],[1,0,i,0,i,0,"VK_FINAL",i,i],[1,0,i,0,i,0,"VK_HANJA",i,i],[1,0,i,0,i,0,"VK_KANJI",i,i],[1,0,i,0,i,0,"VK_CONVERT",i,i],[1,0,i,0,i,0,"VK_NONCONVERT",i,i],[1,0,i,0,i,0,"VK_ACCEPT",i,i],[1,0,i,0,i,0,"VK_MODECHANGE",i,i],[1,0,i,0,i,0,"VK_SELECT",i,i],[1,0,i,0,i,0,"VK_PRINT",i,i],[1,0,i,0,i,0,"VK_EXECUTE",i,i],[1,0,i,0,i,0,"VK_SNAPSHOT",i,i],[1,0,i,0,i,0,"VK_HELP",i,i],[1,0,i,0,i,0,"VK_APPS",i,i],[1,0,i,0,i,0,"VK_PROCESSKEY",i,i],[1,0,i,0,i,0,"VK_PACKET",i,i],[1,0,i,0,i,0,"VK_DBE_SBCSCHAR",i,i],[1,0,i,0,i,0,"VK_DBE_DBCSCHAR",i,i],[1,0,i,0,i,0,"VK_ATTN",i,i],[1,0,i,0,i,0,"VK_CRSEL",i,i],[1,0,i,0,i,0,"VK_EXSEL",i,i],[1,0,i,0,i,0,"VK_EREOF",i,i],[1,0,i,0,i,0,"VK_PLAY",i,i],[1,0,i,0,i,0,"VK_ZOOM",i,i],[1,0,i,0,i,0,"VK_NONAME",i,i],[1,0,i,0,i,0,"VK_PA1",i,i],[1,0,i,0,i,0,"VK_OEM_CLEAR",i,i]],n=[],r=[];for(const s of e){const[o,a,l,c,u,d,h,f,p]=s;if(r[a]||(r[a]=!0,qst[l]=a,Kst[l.toLowerCase()]=a,o&&(Fse[a]=c)),!n[c]){if(n[c]=!0,!u)throw new Error(`String representation missing for key code ${c} around scan code ${l}`);r8.define(c,u),aQ.define(c,f||u),lQ.define(c,p||f||u)}d&&(P2e[d]=c)}})();var W0;(function(i){function e(l){return r8.keyCodeToStr(l)}i.toString=e;function n(l){return r8.strToKeyCode(l)}i.fromString=n;function r(l){return aQ.keyCodeToStr(l)}i.toUserSettingsUS=r;function s(l){return lQ.keyCodeToStr(l)}i.toUserSettingsGeneral=s;function o(l){return aQ.strToKeyCode(l)||lQ.strToKeyCode(l)}i.fromUserSettings=o;function a(l){if(l>=98&&l<=113)return null;switch(l){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return r8.keyCodeToStr(l)}i.toElectronAccelerator=a})(W0||(W0={}));function ro(i,e){const n=(e&65535)<<16>>>0;return(i|n)>>>0}var Vfe={};let F2;if(typeof Cf.vscode<"u"&&typeof Cf.vscode.process<"u"){const i=Cf.vscode.process;F2={get platform(){return i.platform},get arch(){return i.arch},get env(){return i.env},cwd(){return i.cwd()}}}else typeof process<"u"?F2={get platform(){return process.platform},get arch(){return process.arch},get env(){return Vfe},cwd(){return Vfe.VSCODE_CWD||process.cwd()}}:F2={get platform(){return Aa?"win32":ri?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const R9=F2.cwd,O2e=F2.env,Gst=F2.platform,Xst=65,Yst=97,Zst=90,Qst=122,By=46,cl=47,Fu=92,Mb=58,Jst=63;class F2e extends Error{constructor(e,n,r){let s;typeof n=="string"&&n.indexOf("not ")===0?(s="must not be",n=n.replace(/^not /,"")):s="must be";const o=e.indexOf(".")!==-1?"property":"argument";let a=`The "${e}" ${o} ${s} of type ${n}`;a+=`. Received type ${typeof r}`,super(a),this.code="ERR_INVALID_ARG_TYPE"}}function eot(i,e){if(i===null||typeof i!="object")throw new F2e(e,"Object",i)}function Bo(i,e){if(typeof i!="string")throw new F2e(e,"string",i)}const q1=Gst==="win32";function Bi(i){return i===cl||i===Fu}function cQ(i){return i===cl}function Pb(i){return i>=Xst&&i<=Zst||i>=Yst&&i<=Qst}function A9(i,e,n,r){let s="",o=0,a=-1,l=0,c=0;for(let u=0;u<=i.length;++u){if(u2){const d=s.lastIndexOf(n);d===-1?(s="",o=0):(s=s.slice(0,d),o=s.length-1-s.lastIndexOf(n)),a=u,l=0;continue}else if(s.length!==0){s="",o=0,a=u,l=0;continue}}e&&(s+=s.length>0?`${n}..`:"..",o=2)}else s.length>0?s+=`${n}${i.slice(a+1,u)}`:s=i.slice(a+1,u),o=u-a-1;a=u,l=0}else c===By&&l!==-1?++l:l=-1}return s}function B2e(i,e){eot(e,"pathObject");const n=e.dir||e.root,r=e.base||`${e.name||""}${e.ext||""}`;return n?n===e.root?`${n}${r}`:`${n}${i}${r}`:r}const iu={resolve(...i){let e="",n="",r=!1;for(let s=i.length-1;s>=-1;s--){let o;if(s>=0){if(o=i[s],Bo(o,"path"),o.length===0)continue}else e.length===0?o=R9():(o=O2e[`=${e}`]||R9(),(o===void 0||o.slice(0,2).toLowerCase()!==e.toLowerCase()&&o.charCodeAt(2)===Fu)&&(o=`${e}\\`));const a=o.length;let l=0,c="",u=!1;const d=o.charCodeAt(0);if(a===1)Bi(d)&&(l=1,u=!0);else if(Bi(d))if(u=!0,Bi(o.charCodeAt(1))){let h=2,f=h;for(;h2&&Bi(o.charCodeAt(2))&&(u=!0,l=3));if(c.length>0)if(e.length>0){if(c.toLowerCase()!==e.toLowerCase())continue}else e=c;if(r){if(e.length>0)break}else if(n=`${o.slice(l)}\\${n}`,r=u,u&&e.length>0)break}return n=A9(n,!r,"\\",Bi),r?`${e}\\${n}`:`${e}${n}`||"."},normalize(i){Bo(i,"path");const e=i.length;if(e===0)return".";let n=0,r,s=!1;const o=i.charCodeAt(0);if(e===1)return cQ(o)?"\\":i;if(Bi(o))if(s=!0,Bi(i.charCodeAt(1))){let l=2,c=l;for(;l2&&Bi(i.charCodeAt(2))&&(s=!0,n=3));let a=n0&&Bi(i.charCodeAt(e-1))&&(a+="\\"),r===void 0?s?`\\${a}`:a:s?`${r}\\${a}`:`${r}${a}`},isAbsolute(i){Bo(i,"path");const e=i.length;if(e===0)return!1;const n=i.charCodeAt(0);return Bi(n)||e>2&&Pb(n)&&i.charCodeAt(1)===Mb&&Bi(i.charCodeAt(2))},join(...i){if(i.length===0)return".";let e,n;for(let o=0;o0&&(e===void 0?e=n=a:e+=`\\${a}`)}if(e===void 0)return".";let r=!0,s=0;if(typeof n=="string"&&Bi(n.charCodeAt(0))){++s;const o=n.length;o>1&&Bi(n.charCodeAt(1))&&(++s,o>2&&(Bi(n.charCodeAt(2))?++s:r=!1))}if(r){for(;s=2&&(e=`\\${e.slice(s)}`)}return iu.normalize(e)},relative(i,e){if(Bo(i,"from"),Bo(e,"to"),i===e)return"";const n=iu.resolve(i),r=iu.resolve(e);if(n===r||(i=n.toLowerCase(),e=r.toLowerCase(),i===e))return"";let s=0;for(;ss&&i.charCodeAt(o-1)===Fu;)o--;const a=o-s;let l=0;for(;ll&&e.charCodeAt(c-1)===Fu;)c--;const u=c-l,d=ad){if(e.charCodeAt(l+f)===Fu)return r.slice(l+f+1);if(f===2)return r.slice(l+f)}a>d&&(i.charCodeAt(s+f)===Fu?h=f:f===2&&(h=3)),h===-1&&(h=0)}let p="";for(f=s+h+1;f<=o;++f)(f===o||i.charCodeAt(f)===Fu)&&(p+=p.length===0?"..":"\\..");return l+=h,p.length>0?`${p}${r.slice(l,c)}`:(r.charCodeAt(l)===Fu&&++l,r.slice(l,c))},toNamespacedPath(i){if(typeof i!="string"||i.length===0)return i;const e=iu.resolve(i);if(e.length<=2)return i;if(e.charCodeAt(0)===Fu){if(e.charCodeAt(1)===Fu){const n=e.charCodeAt(2);if(n!==Jst&&n!==By)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Pb(e.charCodeAt(0))&&e.charCodeAt(1)===Mb&&e.charCodeAt(2)===Fu)return`\\\\?\\${e}`;return i},dirname(i){Bo(i,"path");const e=i.length;if(e===0)return".";let n=-1,r=0;const s=i.charCodeAt(0);if(e===1)return Bi(s)?i:".";if(Bi(s)){if(n=r=1,Bi(i.charCodeAt(1))){let l=2,c=l;for(;l2&&Bi(i.charCodeAt(2))?3:2,r=n);let o=-1,a=!0;for(let l=e-1;l>=r;--l)if(Bi(i.charCodeAt(l))){if(!a){o=l;break}}else a=!1;if(o===-1){if(n===-1)return".";o=n}return i.slice(0,o)},basename(i,e){e!==void 0&&Bo(e,"ext"),Bo(i,"path");let n=0,r=-1,s=!0,o;if(i.length>=2&&Pb(i.charCodeAt(0))&&i.charCodeAt(1)===Mb&&(n=2),e!==void 0&&e.length>0&&e.length<=i.length){if(e===i)return"";let a=e.length-1,l=-1;for(o=i.length-1;o>=n;--o){const c=i.charCodeAt(o);if(Bi(c)){if(!s){n=o+1;break}}else l===-1&&(s=!1,l=o+1),a>=0&&(c===e.charCodeAt(a)?--a===-1&&(r=o):(a=-1,r=l))}return n===r?r=l:r===-1&&(r=i.length),i.slice(n,r)}for(o=i.length-1;o>=n;--o)if(Bi(i.charCodeAt(o))){if(!s){n=o+1;break}}else r===-1&&(s=!1,r=o+1);return r===-1?"":i.slice(n,r)},extname(i){Bo(i,"path");let e=0,n=-1,r=0,s=-1,o=!0,a=0;i.length>=2&&i.charCodeAt(1)===Mb&&Pb(i.charCodeAt(0))&&(e=r=2);for(let l=i.length-1;l>=e;--l){const c=i.charCodeAt(l);if(Bi(c)){if(!o){r=l+1;break}continue}s===-1&&(o=!1,s=l+1),c===By?n===-1?n=l:a!==1&&(a=1):n!==-1&&(a=-1)}return n===-1||s===-1||a===0||a===1&&n===s-1&&n===r+1?"":i.slice(n,s)},format:B2e.bind(null,"\\"),parse(i){Bo(i,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(i.length===0)return e;const n=i.length;let r=0,s=i.charCodeAt(0);if(n===1)return Bi(s)?(e.root=e.dir=i,e):(e.base=e.name=i,e);if(Bi(s)){if(r=1,Bi(i.charCodeAt(1))){let h=2,f=h;for(;h0&&(e.root=i.slice(0,r));let o=-1,a=r,l=-1,c=!0,u=i.length-1,d=0;for(;u>=r;--u){if(s=i.charCodeAt(u),Bi(s)){if(!c){a=u+1;break}continue}l===-1&&(c=!1,l=u+1),s===By?o===-1?o=u:d!==1&&(d=1):o!==-1&&(d=-1)}return l!==-1&&(o===-1||d===0||d===1&&o===l-1&&o===a+1?e.base=e.name=i.slice(a,l):(e.name=i.slice(a,o),e.base=i.slice(a,l),e.ext=i.slice(o,l))),a>0&&a!==r?e.dir=i.slice(0,a-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},tot=(()=>{if(q1){const i=/\\/g;return()=>{const e=R9().replace(i,"/");return e.slice(e.indexOf("/"))}}return()=>R9()})(),to={resolve(...i){let e="",n=!1;for(let r=i.length-1;r>=-1&&!n;r--){const s=r>=0?i[r]:tot();Bo(s,"path"),s.length!==0&&(e=`${s}/${e}`,n=s.charCodeAt(0)===cl)}return e=A9(e,!n,"/",cQ),n?`/${e}`:e.length>0?e:"."},normalize(i){if(Bo(i,"path"),i.length===0)return".";const e=i.charCodeAt(0)===cl,n=i.charCodeAt(i.length-1)===cl;return i=A9(i,!e,"/",cQ),i.length===0?e?"/":n?"./":".":(n&&(i+="/"),e?`/${i}`:i)},isAbsolute(i){return Bo(i,"path"),i.length>0&&i.charCodeAt(0)===cl},join(...i){if(i.length===0)return".";let e;for(let n=0;n0&&(e===void 0?e=r:e+=`/${r}`)}return e===void 0?".":to.normalize(e)},relative(i,e){if(Bo(i,"from"),Bo(e,"to"),i===e||(i=to.resolve(i),e=to.resolve(e),i===e))return"";const n=1,r=i.length,s=r-n,o=1,a=e.length-o,l=sl){if(e.charCodeAt(o+u)===cl)return e.slice(o+u+1);if(u===0)return e.slice(o+u)}else s>l&&(i.charCodeAt(n+u)===cl?c=u:u===0&&(c=0));let d="";for(u=n+c+1;u<=r;++u)(u===r||i.charCodeAt(u)===cl)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(o+c)}`},toNamespacedPath(i){return i},dirname(i){if(Bo(i,"path"),i.length===0)return".";const e=i.charCodeAt(0)===cl;let n=-1,r=!0;for(let s=i.length-1;s>=1;--s)if(i.charCodeAt(s)===cl){if(!r){n=s;break}}else r=!1;return n===-1?e?"/":".":e&&n===1?"//":i.slice(0,n)},basename(i,e){e!==void 0&&Bo(e,"ext"),Bo(i,"path");let n=0,r=-1,s=!0,o;if(e!==void 0&&e.length>0&&e.length<=i.length){if(e===i)return"";let a=e.length-1,l=-1;for(o=i.length-1;o>=0;--o){const c=i.charCodeAt(o);if(c===cl){if(!s){n=o+1;break}}else l===-1&&(s=!1,l=o+1),a>=0&&(c===e.charCodeAt(a)?--a===-1&&(r=o):(a=-1,r=l))}return n===r?r=l:r===-1&&(r=i.length),i.slice(n,r)}for(o=i.length-1;o>=0;--o)if(i.charCodeAt(o)===cl){if(!s){n=o+1;break}}else r===-1&&(s=!1,r=o+1);return r===-1?"":i.slice(n,r)},extname(i){Bo(i,"path");let e=-1,n=0,r=-1,s=!0,o=0;for(let a=i.length-1;a>=0;--a){const l=i.charCodeAt(a);if(l===cl){if(!s){n=a+1;break}continue}r===-1&&(s=!1,r=a+1),l===By?e===-1?e=a:o!==1&&(o=1):e!==-1&&(o=-1)}return e===-1||r===-1||o===0||o===1&&e===r-1&&e===n+1?"":i.slice(e,r)},format:B2e.bind(null,"/"),parse(i){Bo(i,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(i.length===0)return e;const n=i.charCodeAt(0)===cl;let r;n?(e.root="/",r=1):r=0;let s=-1,o=0,a=-1,l=!0,c=i.length-1,u=0;for(;c>=r;--c){const d=i.charCodeAt(c);if(d===cl){if(!l){o=c+1;break}continue}a===-1&&(l=!1,a=c+1),d===By?s===-1?s=c:u!==1&&(u=1):s!==-1&&(u=-1)}if(a!==-1){const d=o===0&&n?1:o;s===-1||u===0||u===1&&s===a-1&&s===o+1?e.base=e.name=i.slice(d,a):(e.name=i.slice(d,s),e.base=i.slice(d,a),e.ext=i.slice(s,a))}return o>0?e.dir=i.slice(0,o-1):n&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};to.win32=iu.win32=iu;to.posix=iu.posix=to;const j2e=q1?iu.normalize:to.normalize,not=q1?iu.resolve:to.resolve,iot=q1?iu.relative:to.relative,W2e=q1?iu.dirname:to.dirname,jy=q1?iu.basename:to.basename,rot=q1?iu.extname:to.extname,Wp=q1?iu.sep:to.sep,sot=/^\w[\w\d+.-]*$/,oot=/^\//,aot=/^\/\//;function lot(i,e){if(!i.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${i.authority}", path: "${i.path}", query: "${i.query}", fragment: "${i.fragment}"}`);if(i.scheme&&!sot.test(i.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(i.path){if(i.authority){if(!oot.test(i.path))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')}else if(aot.test(i.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function cot(i,e){return!i&&!e?"file":i}function uot(i,e){switch(i){case"https":case"http":case"file":e?e[0]!==Sp&&(e=Sp+e):e=Sp;break}return e}const Es="",Sp="/",dot=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class Jt{static isUri(e){return e instanceof Jt?!0:e?typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function":!1}constructor(e,n,r,s,o,a=!1){typeof e=="object"?(this.scheme=e.scheme||Es,this.authority=e.authority||Es,this.path=e.path||Es,this.query=e.query||Es,this.fragment=e.fragment||Es):(this.scheme=cot(e,a),this.authority=n||Es,this.path=uot(this.scheme,r||Es),this.query=s||Es,this.fragment=o||Es,lot(this,a))}get fsPath(){return N9(this,!1)}with(e){if(!e)return this;let{scheme:n,authority:r,path:s,query:o,fragment:a}=e;return n===void 0?n=this.scheme:n===null&&(n=Es),r===void 0?r=this.authority:r===null&&(r=Es),s===void 0?s=this.path:s===null&&(s=Es),o===void 0?o=this.query:o===null&&(o=Es),a===void 0?a=this.fragment:a===null&&(a=Es),n===this.scheme&&r===this.authority&&s===this.path&&o===this.query&&a===this.fragment?this:new GL(n,r,s,o,a)}static parse(e,n=!1){const r=dot.exec(e);return r?new GL(r[2]||Es,P3(r[4]||Es),P3(r[5]||Es),P3(r[7]||Es),P3(r[9]||Es),n):new GL(Es,Es,Es,Es,Es)}static file(e){let n=Es;if(Aa&&(e=e.replace(/\\/g,Sp)),e[0]===Sp&&e[1]===Sp){const r=e.indexOf(Sp,2);r===-1?(n=e.substring(2),e=Sp):(n=e.substring(2,r),e=e.substring(r)||Sp)}return new GL("file",n,e,Es,Es)}static from(e,n){return new GL(e.scheme,e.authority,e.path,e.query,e.fragment,n)}static joinPath(e,...n){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let r;return Aa&&e.scheme==="file"?r=Jt.file(iu.join(N9(e,!0),...n)).path:r=to.join(e.path,...n),e.with({path:r})}toString(e=!1){return uQ(this,e)}toJSON(){return this}static revive(e){var n,r;if(e){if(e instanceof Jt)return e;{const s=new GL(e);return s._formatted=(n=e.external)!==null&&n!==void 0?n:null,s._fsPath=e._sep===$2e&&(r=e.fsPath)!==null&&r!==void 0?r:null,s}}else return e}}const $2e=Aa?1:void 0;let GL=class extends Jt{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=N9(this,!1)),this._fsPath}toString(e=!1){return e?uQ(this,!0):(this._formatted||(this._formatted=uQ(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=$2e),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}};const z2e={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function Hfe(i,e,n){let r,s=-1;for(let o=0;o=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||a===45||a===46||a===95||a===126||e&&a===47||n&&a===91||n&&a===93||n&&a===58)s!==-1&&(r+=encodeURIComponent(i.substring(s,o)),s=-1),r!==void 0&&(r+=i.charAt(o));else{r===void 0&&(r=i.substr(0,o));const l=z2e[a];l!==void 0?(s!==-1&&(r+=encodeURIComponent(i.substring(s,o)),s=-1),r+=l):s===-1&&(s=o)}}return s!==-1&&(r+=encodeURIComponent(i.substring(s))),r!==void 0?r:i}function hot(i){let e;for(let n=0;n1&&i.scheme==="file"?n=`//${i.authority}${i.path}`:i.path.charCodeAt(0)===47&&(i.path.charCodeAt(1)>=65&&i.path.charCodeAt(1)<=90||i.path.charCodeAt(1)>=97&&i.path.charCodeAt(1)<=122)&&i.path.charCodeAt(2)===58?e?n=i.path.substr(1):n=i.path[1].toLowerCase()+i.path.substr(2):n=i.path,Aa&&(n=n.replace(/\//g,"\\")),n}function uQ(i,e){const n=e?hot:Hfe;let r="",{scheme:s,authority:o,path:a,query:l,fragment:c}=i;if(s&&(r+=s,r+=":"),(o||s==="file")&&(r+=Sp,r+=Sp),o){let u=o.indexOf("@");if(u!==-1){const d=o.substr(0,u);o=o.substr(u+1),u=d.lastIndexOf(":"),u===-1?r+=n(d,!1,!1):(r+=n(d.substr(0,u),!1,!1),r+=":",r+=n(d.substr(u+1),!1,!0)),r+="@"}o=o.toLowerCase(),u=o.lastIndexOf(":"),u===-1?r+=n(o,!1,!0):(r+=n(o.substr(0,u),!1,!0),r+=o.substr(u))}if(a){if(a.length>=3&&a.charCodeAt(0)===47&&a.charCodeAt(2)===58){const u=a.charCodeAt(1);u>=65&&u<=90&&(a=`/${String.fromCharCode(u+32)}:${a.substr(3)}`)}else if(a.length>=2&&a.charCodeAt(1)===58){const u=a.charCodeAt(0);u>=65&&u<=90&&(a=`${String.fromCharCode(u+32)}:${a.substr(2)}`)}r+=n(a,!0,!1)}return l&&(r+="?",r+=n(l,!1,!1)),c&&(r+="#",r+=e?c:Hfe(c,!1,!1)),r}function V2e(i){try{return decodeURIComponent(i)}catch{return i.length>3?i.substr(0,3)+V2e(i.substr(3)):i}}const Ufe=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function P3(i){return i.match(Ufe)?i.replace(Ufe,e=>V2e(e)):i}let ve=class NC{constructor(e,n){this.lineNumber=e,this.column=n}with(e=this.lineNumber,n=this.column){return e===this.lineNumber&&n===this.column?this:new NC(e,n)}delta(e=0,n=0){return this.with(this.lineNumber+e,this.column+n)}equals(e){return NC.equals(this,e)}static equals(e,n){return!e&&!n?!0:!!e&&!!n&&e.lineNumber===n.lineNumber&&e.column===n.column}isBefore(e){return NC.isBefore(this,e)}static isBefore(e,n){return e.lineNumberr||e===r&&n>s?(this.startLineNumber=r,this.startColumn=s,this.endLineNumber=e,this.endColumn=n):(this.startLineNumber=e,this.startColumn=n,this.endLineNumber=r,this.endColumn=s)}isEmpty(){return Yo.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return Yo.containsPosition(this,e)}static containsPosition(e,n){return!(n.lineNumbere.endLineNumber||n.lineNumber===e.startLineNumber&&n.columne.endColumn)}static strictContainsPosition(e,n){return!(n.lineNumbere.endLineNumber||n.lineNumber===e.startLineNumber&&n.column<=e.startColumn||n.lineNumber===e.endLineNumber&&n.column>=e.endColumn)}containsRange(e){return Yo.containsRange(this,e)}static containsRange(e,n){return!(n.startLineNumbere.endLineNumber||n.endLineNumber>e.endLineNumber||n.startLineNumber===e.startLineNumber&&n.startColumne.endColumn)}strictContainsRange(e){return Yo.strictContainsRange(this,e)}static strictContainsRange(e,n){return!(n.startLineNumbere.endLineNumber||n.endLineNumber>e.endLineNumber||n.startLineNumber===e.startLineNumber&&n.startColumn<=e.startColumn||n.endLineNumber===e.endLineNumber&&n.endColumn>=e.endColumn)}plusRange(e){return Yo.plusRange(this,e)}static plusRange(e,n){let r,s,o,a;return n.startLineNumbere.endLineNumber?(o=n.endLineNumber,a=n.endColumn):n.endLineNumber===e.endLineNumber?(o=n.endLineNumber,a=Math.max(n.endColumn,e.endColumn)):(o=e.endLineNumber,a=e.endColumn),new Yo(r,s,o,a)}intersectRanges(e){return Yo.intersectRanges(this,e)}static intersectRanges(e,n){let r=e.startLineNumber,s=e.startColumn,o=e.endLineNumber,a=e.endColumn;const l=n.startLineNumber,c=n.startColumn,u=n.endLineNumber,d=n.endColumn;return ru?(o=u,a=d):o===u&&(a=Math.min(a,d)),r>o||r===o&&s>a?null:new Yo(r,s,o,a)}equalsRange(e){return Yo.equalsRange(this,e)}static equalsRange(e,n){return!e&&!n?!0:!!e&&!!n&&e.startLineNumber===n.startLineNumber&&e.startColumn===n.startColumn&&e.endLineNumber===n.endLineNumber&&e.endColumn===n.endColumn}getEndPosition(){return Yo.getEndPosition(this)}static getEndPosition(e){return new ve(e.endLineNumber,e.endColumn)}getStartPosition(){return Yo.getStartPosition(this)}static getStartPosition(e){return new ve(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,n){return new Yo(this.startLineNumber,this.startColumn,e,n)}setStartPosition(e,n){return new Yo(e,n,this.endLineNumber,this.endColumn)}collapseToStart(){return Yo.collapseToStart(this)}static collapseToStart(e){return new Yo(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return Yo.collapseToEnd(this)}static collapseToEnd(e){return new Yo(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new Yo(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}static fromPositions(e,n=e){return new Yo(e.lineNumber,e.column,n.lineNumber,n.column)}static lift(e){return e?new Yo(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&typeof e.startLineNumber=="number"&&typeof e.startColumn=="number"&&typeof e.endLineNumber=="number"&&typeof e.endColumn=="number"}static areIntersectingOrTouching(e,n){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}},Ft=class Xh extends J{constructor(e,n,r,s){super(e,n,r,s),this.selectionStartLineNumber=e,this.selectionStartColumn=n,this.positionLineNumber=r,this.positionColumn=s}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Xh.selectionsEqual(this,e)}static selectionsEqual(e,n){return e.selectionStartLineNumber===n.selectionStartLineNumber&&e.selectionStartColumn===n.selectionStartColumn&&e.positionLineNumber===n.positionLineNumber&&e.positionColumn===n.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,n){return this.getDirection()===0?new Xh(this.startLineNumber,this.startColumn,e,n):new Xh(e,n,this.startLineNumber,this.startColumn)}getPosition(){return new ve(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new ve(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,n){return this.getDirection()===0?new Xh(e,n,this.endLineNumber,this.endColumn):new Xh(this.endLineNumber,this.endColumn,e,n)}static fromPositions(e,n=e){return new Xh(e.lineNumber,e.column,n.lineNumber,n.column)}static fromRange(e,n){return n===0?new Xh(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Xh(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Xh(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,n){if(e&&!n||!e&&n)return!1;if(!e&&!n)return!0;if(e.length!==n.length)return!1;for(let r=0,s=e.length;r{this._tokenizationSupports.get(e)===n&&(this._tokenizationSupports.delete(e),this.handleChange([e]))})}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,n){var r;(r=this._factories.get(e))===null||r===void 0||r.dispose();const s=new pot(this,e,n);return this._factories.set(e,s),gn(()=>{const o=this._factories.get(e);!o||o!==s||(this._factories.delete(e),o.dispose())})}getOrCreate(e){return hQ(this,void 0,void 0,function*(){const n=this.get(e);if(n)return n;const r=this._factories.get(e);return!r||r.isResolved?null:(yield r.resolve(),this.get(e))})}isResolved(e){if(this.get(e))return!0;const r=this._factories.get(e);return!!(!r||r.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}};class pot extends Le{get isResolved(){return this._isResolved}constructor(e,n,r){super(),this._registry=e,this._languageId=n,this._factory=r,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}resolve(){return hQ(this,void 0,void 0,function*(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise})}_create(){return hQ(this,void 0,void 0,function*(){const e=yield this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))})}}let rP=class{constructor(e,n,r){this.offset=e,this.type=n,this.language=r,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}};class Bse{constructor(e,n){this.tokens=e,this.endState=n,this._tokenizationResultBrand=void 0}}class ZW{constructor(e,n){this.tokens=e,this.endState=n,this._encodedTokenizationResultBrand=void 0}}var sP;(function(i){const e=new Map;e.set(0,lt.symbolMethod),e.set(1,lt.symbolFunction),e.set(2,lt.symbolConstructor),e.set(3,lt.symbolField),e.set(4,lt.symbolVariable),e.set(5,lt.symbolClass),e.set(6,lt.symbolStruct),e.set(7,lt.symbolInterface),e.set(8,lt.symbolModule),e.set(9,lt.symbolProperty),e.set(10,lt.symbolEvent),e.set(11,lt.symbolOperator),e.set(12,lt.symbolUnit),e.set(13,lt.symbolValue),e.set(15,lt.symbolEnum),e.set(14,lt.symbolConstant),e.set(15,lt.symbolEnum),e.set(16,lt.symbolEnumMember),e.set(17,lt.symbolKeyword),e.set(27,lt.symbolSnippet),e.set(18,lt.symbolText),e.set(19,lt.symbolColor),e.set(20,lt.symbolFile),e.set(21,lt.symbolReference),e.set(22,lt.symbolCustomColor),e.set(23,lt.symbolFolder),e.set(24,lt.symbolTypeParameter),e.set(25,lt.account),e.set(26,lt.issues);function n(o){let a=e.get(o);return a||(console.info("No codicon found for CompletionItemKind "+o),a=lt.symbolProperty),a}i.toIcon=n;const r=new Map;r.set("method",0),r.set("function",1),r.set("constructor",2),r.set("field",3),r.set("variable",4),r.set("class",5),r.set("struct",6),r.set("interface",7),r.set("module",8),r.set("property",9),r.set("event",10),r.set("operator",11),r.set("unit",12),r.set("value",13),r.set("constant",14),r.set("enum",15),r.set("enum-member",16),r.set("enumMember",16),r.set("keyword",17),r.set("snippet",27),r.set("text",18),r.set("color",19),r.set("file",20),r.set("reference",21),r.set("customcolor",22),r.set("folder",23),r.set("type-parameter",24),r.set("typeParameter",24),r.set("account",25),r.set("issue",26);function s(o,a){let l=r.get(o);return typeof l>"u"&&!a&&(l=9),l}i.fromString=s})(sP||(sP={}));var pv;(function(i){i[i.Automatic=0]="Automatic",i[i.Explicit=1]="Explicit"})(pv||(pv={}));class U2e{constructor(e,n,r,s){this.range=e,this.text=n,this.completionKind=r,this.isSnippetText=s}equals(e){return J.lift(this.range).equalsRange(e.range)&&this.text===e.text&&this.completionKind===e.completionKind&&this.isSnippetText===e.isSnippetText}}var Am;(function(i){i[i.Invoke=1]="Invoke",i[i.TriggerCharacter=2]="TriggerCharacter",i[i.ContentChange=3]="ContentChange"})(Am||(Am={}));var oP;(function(i){i[i.Text=0]="Text",i[i.Read=1]="Read",i[i.Write=2]="Write"})(oP||(oP={}));function got(i){return i&&Jt.isUri(i.uri)&&J.isIRange(i.range)&&(J.isIRange(i.originSelectionRange)||J.isIRange(i.targetSelectionRange))}const mot={17:L("Array","array"),16:L("Boolean","boolean"),4:L("Class","class"),13:L("Constant","constant"),8:L("Constructor","constructor"),9:L("Enum","enumeration"),21:L("EnumMember","enumeration member"),23:L("Event","event"),7:L("Field","field"),0:L("File","file"),11:L("Function","function"),10:L("Interface","interface"),19:L("Key","key"),5:L("Method","method"),1:L("Module","module"),2:L("Namespace","namespace"),20:L("Null","null"),15:L("Number","number"),18:L("Object","object"),24:L("Operator","operator"),3:L("Package","package"),6:L("Property","property"),14:L("String","string"),22:L("Struct","struct"),25:L("TypeParameter","type parameter"),12:L("Variable","variable")};function _ot(i,e){return L("symbolAriaLabel","{0} ({1})",i,mot[e])}var M9;(function(i){const e=new Map;e.set(0,lt.symbolFile),e.set(1,lt.symbolModule),e.set(2,lt.symbolNamespace),e.set(3,lt.symbolPackage),e.set(4,lt.symbolClass),e.set(5,lt.symbolMethod),e.set(6,lt.symbolProperty),e.set(7,lt.symbolField),e.set(8,lt.symbolConstructor),e.set(9,lt.symbolEnum),e.set(10,lt.symbolInterface),e.set(11,lt.symbolFunction),e.set(12,lt.symbolVariable),e.set(13,lt.symbolConstant),e.set(14,lt.symbolString),e.set(15,lt.symbolNumber),e.set(16,lt.symbolBoolean),e.set(17,lt.symbolArray),e.set(18,lt.symbolObject),e.set(19,lt.symbolKey),e.set(20,lt.symbolNull),e.set(21,lt.symbolEnumMember),e.set(22,lt.symbolStruct),e.set(23,lt.symbolEvent),e.set(24,lt.symbolOperator),e.set(25,lt.symbolTypeParameter);function n(r){let s=e.get(r);return s||(console.info("No codicon found for SymbolKind "+r),s=lt.symbolProperty),s}i.toIcon=n})(M9||(M9={}));class Wl{static fromValue(e){switch(e){case"comment":return Wl.Comment;case"imports":return Wl.Imports;case"region":return Wl.Region}return new Wl(e)}constructor(e){this.value=e}}Wl.Comment=new Wl("comment");Wl.Imports=new Wl("imports");Wl.Region=new Wl("region");var fQ;(function(i){function e(n){return!n||typeof n!="object"?!1:typeof n.id=="string"&&typeof n.title=="string"}i.is=e})(fQ||(fQ={}));var P9;(function(i){i[i.Type=1]="Type",i[i.Parameter=2]="Parameter"})(P9||(P9={}));class vot{constructor(e){this.createSupport=e,this._tokenizationSupport=null}dispose(){this._tokenizationSupport&&this._tokenizationSupport.then(e=>{e&&e.dispose()})}get tokenizationSupport(){return this._tokenizationSupport||(this._tokenizationSupport=this.createSupport()),this._tokenizationSupport}}const Zr=new fot;var pQ;(function(i){i[i.Unknown=0]="Unknown",i[i.Disabled=1]="Disabled",i[i.Enabled=2]="Enabled"})(pQ||(pQ={}));var gQ;(function(i){i[i.Invoke=1]="Invoke",i[i.Auto=2]="Auto"})(gQ||(gQ={}));var mQ;(function(i){i[i.None=0]="None",i[i.KeepWhitespace=1]="KeepWhitespace",i[i.InsertAsSnippet=4]="InsertAsSnippet"})(mQ||(mQ={}));var _Q;(function(i){i[i.Method=0]="Method",i[i.Function=1]="Function",i[i.Constructor=2]="Constructor",i[i.Field=3]="Field",i[i.Variable=4]="Variable",i[i.Class=5]="Class",i[i.Struct=6]="Struct",i[i.Interface=7]="Interface",i[i.Module=8]="Module",i[i.Property=9]="Property",i[i.Event=10]="Event",i[i.Operator=11]="Operator",i[i.Unit=12]="Unit",i[i.Value=13]="Value",i[i.Constant=14]="Constant",i[i.Enum=15]="Enum",i[i.EnumMember=16]="EnumMember",i[i.Keyword=17]="Keyword",i[i.Text=18]="Text",i[i.Color=19]="Color",i[i.File=20]="File",i[i.Reference=21]="Reference",i[i.Customcolor=22]="Customcolor",i[i.Folder=23]="Folder",i[i.TypeParameter=24]="TypeParameter",i[i.User=25]="User",i[i.Issue=26]="Issue",i[i.Snippet=27]="Snippet"})(_Q||(_Q={}));var vQ;(function(i){i[i.Deprecated=1]="Deprecated"})(vQ||(vQ={}));var bQ;(function(i){i[i.Invoke=0]="Invoke",i[i.TriggerCharacter=1]="TriggerCharacter",i[i.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(bQ||(bQ={}));var yQ;(function(i){i[i.EXACT=0]="EXACT",i[i.ABOVE=1]="ABOVE",i[i.BELOW=2]="BELOW"})(yQ||(yQ={}));var wQ;(function(i){i[i.NotSet=0]="NotSet",i[i.ContentFlush=1]="ContentFlush",i[i.RecoverFromMarkers=2]="RecoverFromMarkers",i[i.Explicit=3]="Explicit",i[i.Paste=4]="Paste",i[i.Undo=5]="Undo",i[i.Redo=6]="Redo"})(wQ||(wQ={}));var CQ;(function(i){i[i.LF=1]="LF",i[i.CRLF=2]="CRLF"})(CQ||(CQ={}));var SQ;(function(i){i[i.Text=0]="Text",i[i.Read=1]="Read",i[i.Write=2]="Write"})(SQ||(SQ={}));var xQ;(function(i){i[i.None=0]="None",i[i.Keep=1]="Keep",i[i.Brackets=2]="Brackets",i[i.Advanced=3]="Advanced",i[i.Full=4]="Full"})(xQ||(xQ={}));var kQ;(function(i){i[i.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",i[i.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",i[i.accessibilitySupport=2]="accessibilitySupport",i[i.accessibilityPageSize=3]="accessibilityPageSize",i[i.ariaLabel=4]="ariaLabel",i[i.ariaRequired=5]="ariaRequired",i[i.autoClosingBrackets=6]="autoClosingBrackets",i[i.autoClosingComments=7]="autoClosingComments",i[i.screenReaderAnnounceInlineSuggestion=8]="screenReaderAnnounceInlineSuggestion",i[i.autoClosingDelete=9]="autoClosingDelete",i[i.autoClosingOvertype=10]="autoClosingOvertype",i[i.autoClosingQuotes=11]="autoClosingQuotes",i[i.autoIndent=12]="autoIndent",i[i.automaticLayout=13]="automaticLayout",i[i.autoSurround=14]="autoSurround",i[i.bracketPairColorization=15]="bracketPairColorization",i[i.guides=16]="guides",i[i.codeLens=17]="codeLens",i[i.codeLensFontFamily=18]="codeLensFontFamily",i[i.codeLensFontSize=19]="codeLensFontSize",i[i.colorDecorators=20]="colorDecorators",i[i.colorDecoratorsLimit=21]="colorDecoratorsLimit",i[i.columnSelection=22]="columnSelection",i[i.comments=23]="comments",i[i.contextmenu=24]="contextmenu",i[i.copyWithSyntaxHighlighting=25]="copyWithSyntaxHighlighting",i[i.cursorBlinking=26]="cursorBlinking",i[i.cursorSmoothCaretAnimation=27]="cursorSmoothCaretAnimation",i[i.cursorStyle=28]="cursorStyle",i[i.cursorSurroundingLines=29]="cursorSurroundingLines",i[i.cursorSurroundingLinesStyle=30]="cursorSurroundingLinesStyle",i[i.cursorWidth=31]="cursorWidth",i[i.disableLayerHinting=32]="disableLayerHinting",i[i.disableMonospaceOptimizations=33]="disableMonospaceOptimizations",i[i.domReadOnly=34]="domReadOnly",i[i.dragAndDrop=35]="dragAndDrop",i[i.dropIntoEditor=36]="dropIntoEditor",i[i.emptySelectionClipboard=37]="emptySelectionClipboard",i[i.experimentalWhitespaceRendering=38]="experimentalWhitespaceRendering",i[i.extraEditorClassName=39]="extraEditorClassName",i[i.fastScrollSensitivity=40]="fastScrollSensitivity",i[i.find=41]="find",i[i.fixedOverflowWidgets=42]="fixedOverflowWidgets",i[i.folding=43]="folding",i[i.foldingStrategy=44]="foldingStrategy",i[i.foldingHighlight=45]="foldingHighlight",i[i.foldingImportsByDefault=46]="foldingImportsByDefault",i[i.foldingMaximumRegions=47]="foldingMaximumRegions",i[i.unfoldOnClickAfterEndOfLine=48]="unfoldOnClickAfterEndOfLine",i[i.fontFamily=49]="fontFamily",i[i.fontInfo=50]="fontInfo",i[i.fontLigatures=51]="fontLigatures",i[i.fontSize=52]="fontSize",i[i.fontWeight=53]="fontWeight",i[i.fontVariations=54]="fontVariations",i[i.formatOnPaste=55]="formatOnPaste",i[i.formatOnType=56]="formatOnType",i[i.glyphMargin=57]="glyphMargin",i[i.gotoLocation=58]="gotoLocation",i[i.hideCursorInOverviewRuler=59]="hideCursorInOverviewRuler",i[i.hover=60]="hover",i[i.inDiffEditor=61]="inDiffEditor",i[i.inlineSuggest=62]="inlineSuggest",i[i.letterSpacing=63]="letterSpacing",i[i.lightbulb=64]="lightbulb",i[i.lineDecorationsWidth=65]="lineDecorationsWidth",i[i.lineHeight=66]="lineHeight",i[i.lineNumbers=67]="lineNumbers",i[i.lineNumbersMinChars=68]="lineNumbersMinChars",i[i.linkedEditing=69]="linkedEditing",i[i.links=70]="links",i[i.matchBrackets=71]="matchBrackets",i[i.minimap=72]="minimap",i[i.mouseStyle=73]="mouseStyle",i[i.mouseWheelScrollSensitivity=74]="mouseWheelScrollSensitivity",i[i.mouseWheelZoom=75]="mouseWheelZoom",i[i.multiCursorMergeOverlapping=76]="multiCursorMergeOverlapping",i[i.multiCursorModifier=77]="multiCursorModifier",i[i.multiCursorPaste=78]="multiCursorPaste",i[i.multiCursorLimit=79]="multiCursorLimit",i[i.occurrencesHighlight=80]="occurrencesHighlight",i[i.overviewRulerBorder=81]="overviewRulerBorder",i[i.overviewRulerLanes=82]="overviewRulerLanes",i[i.padding=83]="padding",i[i.pasteAs=84]="pasteAs",i[i.parameterHints=85]="parameterHints",i[i.peekWidgetDefaultFocus=86]="peekWidgetDefaultFocus",i[i.definitionLinkOpensInPeek=87]="definitionLinkOpensInPeek",i[i.quickSuggestions=88]="quickSuggestions",i[i.quickSuggestionsDelay=89]="quickSuggestionsDelay",i[i.readOnly=90]="readOnly",i[i.readOnlyMessage=91]="readOnlyMessage",i[i.renameOnType=92]="renameOnType",i[i.renderControlCharacters=93]="renderControlCharacters",i[i.renderFinalNewline=94]="renderFinalNewline",i[i.renderLineHighlight=95]="renderLineHighlight",i[i.renderLineHighlightOnlyWhenFocus=96]="renderLineHighlightOnlyWhenFocus",i[i.renderValidationDecorations=97]="renderValidationDecorations",i[i.renderWhitespace=98]="renderWhitespace",i[i.revealHorizontalRightPadding=99]="revealHorizontalRightPadding",i[i.roundedSelection=100]="roundedSelection",i[i.rulers=101]="rulers",i[i.scrollbar=102]="scrollbar",i[i.scrollBeyondLastColumn=103]="scrollBeyondLastColumn",i[i.scrollBeyondLastLine=104]="scrollBeyondLastLine",i[i.scrollPredominantAxis=105]="scrollPredominantAxis",i[i.selectionClipboard=106]="selectionClipboard",i[i.selectionHighlight=107]="selectionHighlight",i[i.selectOnLineNumbers=108]="selectOnLineNumbers",i[i.showFoldingControls=109]="showFoldingControls",i[i.showUnused=110]="showUnused",i[i.snippetSuggestions=111]="snippetSuggestions",i[i.smartSelect=112]="smartSelect",i[i.smoothScrolling=113]="smoothScrolling",i[i.stickyScroll=114]="stickyScroll",i[i.stickyTabStops=115]="stickyTabStops",i[i.stopRenderingLineAfter=116]="stopRenderingLineAfter",i[i.suggest=117]="suggest",i[i.suggestFontSize=118]="suggestFontSize",i[i.suggestLineHeight=119]="suggestLineHeight",i[i.suggestOnTriggerCharacters=120]="suggestOnTriggerCharacters",i[i.suggestSelection=121]="suggestSelection",i[i.tabCompletion=122]="tabCompletion",i[i.tabIndex=123]="tabIndex",i[i.unicodeHighlighting=124]="unicodeHighlighting",i[i.unusualLineTerminators=125]="unusualLineTerminators",i[i.useShadowDOM=126]="useShadowDOM",i[i.useTabStops=127]="useTabStops",i[i.wordBreak=128]="wordBreak",i[i.wordSeparators=129]="wordSeparators",i[i.wordWrap=130]="wordWrap",i[i.wordWrapBreakAfterCharacters=131]="wordWrapBreakAfterCharacters",i[i.wordWrapBreakBeforeCharacters=132]="wordWrapBreakBeforeCharacters",i[i.wordWrapColumn=133]="wordWrapColumn",i[i.wordWrapOverride1=134]="wordWrapOverride1",i[i.wordWrapOverride2=135]="wordWrapOverride2",i[i.wrappingIndent=136]="wrappingIndent",i[i.wrappingStrategy=137]="wrappingStrategy",i[i.showDeprecated=138]="showDeprecated",i[i.inlayHints=139]="inlayHints",i[i.editorClassName=140]="editorClassName",i[i.pixelRatio=141]="pixelRatio",i[i.tabFocusMode=142]="tabFocusMode",i[i.layoutInfo=143]="layoutInfo",i[i.wrappingInfo=144]="wrappingInfo",i[i.defaultColorDecorators=145]="defaultColorDecorators",i[i.colorDecoratorsActivatedOn=146]="colorDecoratorsActivatedOn",i[i.inlineCompletionsAccessibilityVerbose=147]="inlineCompletionsAccessibilityVerbose"})(kQ||(kQ={}));var LQ;(function(i){i[i.TextDefined=0]="TextDefined",i[i.LF=1]="LF",i[i.CRLF=2]="CRLF"})(LQ||(LQ={}));var DQ;(function(i){i[i.LF=0]="LF",i[i.CRLF=1]="CRLF"})(DQ||(DQ={}));var EQ;(function(i){i[i.Left=1]="Left",i[i.Right=2]="Right"})(EQ||(EQ={}));var IQ;(function(i){i[i.None=0]="None",i[i.Indent=1]="Indent",i[i.IndentOutdent=2]="IndentOutdent",i[i.Outdent=3]="Outdent"})(IQ||(IQ={}));var TQ;(function(i){i[i.Both=0]="Both",i[i.Right=1]="Right",i[i.Left=2]="Left",i[i.None=3]="None"})(TQ||(TQ={}));var RQ;(function(i){i[i.Type=1]="Type",i[i.Parameter=2]="Parameter"})(RQ||(RQ={}));var AQ;(function(i){i[i.Automatic=0]="Automatic",i[i.Explicit=1]="Explicit"})(AQ||(AQ={}));var NQ;(function(i){i[i.DependsOnKbLayout=-1]="DependsOnKbLayout",i[i.Unknown=0]="Unknown",i[i.Backspace=1]="Backspace",i[i.Tab=2]="Tab",i[i.Enter=3]="Enter",i[i.Shift=4]="Shift",i[i.Ctrl=5]="Ctrl",i[i.Alt=6]="Alt",i[i.PauseBreak=7]="PauseBreak",i[i.CapsLock=8]="CapsLock",i[i.Escape=9]="Escape",i[i.Space=10]="Space",i[i.PageUp=11]="PageUp",i[i.PageDown=12]="PageDown",i[i.End=13]="End",i[i.Home=14]="Home",i[i.LeftArrow=15]="LeftArrow",i[i.UpArrow=16]="UpArrow",i[i.RightArrow=17]="RightArrow",i[i.DownArrow=18]="DownArrow",i[i.Insert=19]="Insert",i[i.Delete=20]="Delete",i[i.Digit0=21]="Digit0",i[i.Digit1=22]="Digit1",i[i.Digit2=23]="Digit2",i[i.Digit3=24]="Digit3",i[i.Digit4=25]="Digit4",i[i.Digit5=26]="Digit5",i[i.Digit6=27]="Digit6",i[i.Digit7=28]="Digit7",i[i.Digit8=29]="Digit8",i[i.Digit9=30]="Digit9",i[i.KeyA=31]="KeyA",i[i.KeyB=32]="KeyB",i[i.KeyC=33]="KeyC",i[i.KeyD=34]="KeyD",i[i.KeyE=35]="KeyE",i[i.KeyF=36]="KeyF",i[i.KeyG=37]="KeyG",i[i.KeyH=38]="KeyH",i[i.KeyI=39]="KeyI",i[i.KeyJ=40]="KeyJ",i[i.KeyK=41]="KeyK",i[i.KeyL=42]="KeyL",i[i.KeyM=43]="KeyM",i[i.KeyN=44]="KeyN",i[i.KeyO=45]="KeyO",i[i.KeyP=46]="KeyP",i[i.KeyQ=47]="KeyQ",i[i.KeyR=48]="KeyR",i[i.KeyS=49]="KeyS",i[i.KeyT=50]="KeyT",i[i.KeyU=51]="KeyU",i[i.KeyV=52]="KeyV",i[i.KeyW=53]="KeyW",i[i.KeyX=54]="KeyX",i[i.KeyY=55]="KeyY",i[i.KeyZ=56]="KeyZ",i[i.Meta=57]="Meta",i[i.ContextMenu=58]="ContextMenu",i[i.F1=59]="F1",i[i.F2=60]="F2",i[i.F3=61]="F3",i[i.F4=62]="F4",i[i.F5=63]="F5",i[i.F6=64]="F6",i[i.F7=65]="F7",i[i.F8=66]="F8",i[i.F9=67]="F9",i[i.F10=68]="F10",i[i.F11=69]="F11",i[i.F12=70]="F12",i[i.F13=71]="F13",i[i.F14=72]="F14",i[i.F15=73]="F15",i[i.F16=74]="F16",i[i.F17=75]="F17",i[i.F18=76]="F18",i[i.F19=77]="F19",i[i.F20=78]="F20",i[i.F21=79]="F21",i[i.F22=80]="F22",i[i.F23=81]="F23",i[i.F24=82]="F24",i[i.NumLock=83]="NumLock",i[i.ScrollLock=84]="ScrollLock",i[i.Semicolon=85]="Semicolon",i[i.Equal=86]="Equal",i[i.Comma=87]="Comma",i[i.Minus=88]="Minus",i[i.Period=89]="Period",i[i.Slash=90]="Slash",i[i.Backquote=91]="Backquote",i[i.BracketLeft=92]="BracketLeft",i[i.Backslash=93]="Backslash",i[i.BracketRight=94]="BracketRight",i[i.Quote=95]="Quote",i[i.OEM_8=96]="OEM_8",i[i.IntlBackslash=97]="IntlBackslash",i[i.Numpad0=98]="Numpad0",i[i.Numpad1=99]="Numpad1",i[i.Numpad2=100]="Numpad2",i[i.Numpad3=101]="Numpad3",i[i.Numpad4=102]="Numpad4",i[i.Numpad5=103]="Numpad5",i[i.Numpad6=104]="Numpad6",i[i.Numpad7=105]="Numpad7",i[i.Numpad8=106]="Numpad8",i[i.Numpad9=107]="Numpad9",i[i.NumpadMultiply=108]="NumpadMultiply",i[i.NumpadAdd=109]="NumpadAdd",i[i.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",i[i.NumpadSubtract=111]="NumpadSubtract",i[i.NumpadDecimal=112]="NumpadDecimal",i[i.NumpadDivide=113]="NumpadDivide",i[i.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",i[i.ABNT_C1=115]="ABNT_C1",i[i.ABNT_C2=116]="ABNT_C2",i[i.AudioVolumeMute=117]="AudioVolumeMute",i[i.AudioVolumeUp=118]="AudioVolumeUp",i[i.AudioVolumeDown=119]="AudioVolumeDown",i[i.BrowserSearch=120]="BrowserSearch",i[i.BrowserHome=121]="BrowserHome",i[i.BrowserBack=122]="BrowserBack",i[i.BrowserForward=123]="BrowserForward",i[i.MediaTrackNext=124]="MediaTrackNext",i[i.MediaTrackPrevious=125]="MediaTrackPrevious",i[i.MediaStop=126]="MediaStop",i[i.MediaPlayPause=127]="MediaPlayPause",i[i.LaunchMediaPlayer=128]="LaunchMediaPlayer",i[i.LaunchMail=129]="LaunchMail",i[i.LaunchApp2=130]="LaunchApp2",i[i.Clear=131]="Clear",i[i.MAX_VALUE=132]="MAX_VALUE"})(NQ||(NQ={}));var MQ;(function(i){i[i.Hint=1]="Hint",i[i.Info=2]="Info",i[i.Warning=4]="Warning",i[i.Error=8]="Error"})(MQ||(MQ={}));var PQ;(function(i){i[i.Unnecessary=1]="Unnecessary",i[i.Deprecated=2]="Deprecated"})(PQ||(PQ={}));var OQ;(function(i){i[i.Inline=1]="Inline",i[i.Gutter=2]="Gutter"})(OQ||(OQ={}));var FQ;(function(i){i[i.UNKNOWN=0]="UNKNOWN",i[i.TEXTAREA=1]="TEXTAREA",i[i.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",i[i.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",i[i.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",i[i.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",i[i.CONTENT_TEXT=6]="CONTENT_TEXT",i[i.CONTENT_EMPTY=7]="CONTENT_EMPTY",i[i.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",i[i.CONTENT_WIDGET=9]="CONTENT_WIDGET",i[i.OVERVIEW_RULER=10]="OVERVIEW_RULER",i[i.SCROLLBAR=11]="SCROLLBAR",i[i.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",i[i.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(FQ||(FQ={}));var BQ;(function(i){i[i.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",i[i.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",i[i.TOP_CENTER=2]="TOP_CENTER"})(BQ||(BQ={}));var jQ;(function(i){i[i.Left=1]="Left",i[i.Center=2]="Center",i[i.Right=4]="Right",i[i.Full=7]="Full"})(jQ||(jQ={}));var WQ;(function(i){i[i.Left=0]="Left",i[i.Right=1]="Right",i[i.None=2]="None",i[i.LeftOfInjectedText=3]="LeftOfInjectedText",i[i.RightOfInjectedText=4]="RightOfInjectedText"})(WQ||(WQ={}));var $Q;(function(i){i[i.Off=0]="Off",i[i.On=1]="On",i[i.Relative=2]="Relative",i[i.Interval=3]="Interval",i[i.Custom=4]="Custom"})($Q||($Q={}));var zQ;(function(i){i[i.None=0]="None",i[i.Text=1]="Text",i[i.Blocks=2]="Blocks"})(zQ||(zQ={}));var VQ;(function(i){i[i.Smooth=0]="Smooth",i[i.Immediate=1]="Immediate"})(VQ||(VQ={}));var HQ;(function(i){i[i.Auto=1]="Auto",i[i.Hidden=2]="Hidden",i[i.Visible=3]="Visible"})(HQ||(HQ={}));var UQ;(function(i){i[i.LTR=0]="LTR",i[i.RTL=1]="RTL"})(UQ||(UQ={}));var qQ;(function(i){i[i.Invoke=1]="Invoke",i[i.TriggerCharacter=2]="TriggerCharacter",i[i.ContentChange=3]="ContentChange"})(qQ||(qQ={}));var KQ;(function(i){i[i.File=0]="File",i[i.Module=1]="Module",i[i.Namespace=2]="Namespace",i[i.Package=3]="Package",i[i.Class=4]="Class",i[i.Method=5]="Method",i[i.Property=6]="Property",i[i.Field=7]="Field",i[i.Constructor=8]="Constructor",i[i.Enum=9]="Enum",i[i.Interface=10]="Interface",i[i.Function=11]="Function",i[i.Variable=12]="Variable",i[i.Constant=13]="Constant",i[i.String=14]="String",i[i.Number=15]="Number",i[i.Boolean=16]="Boolean",i[i.Array=17]="Array",i[i.Object=18]="Object",i[i.Key=19]="Key",i[i.Null=20]="Null",i[i.EnumMember=21]="EnumMember",i[i.Struct=22]="Struct",i[i.Event=23]="Event",i[i.Operator=24]="Operator",i[i.TypeParameter=25]="TypeParameter"})(KQ||(KQ={}));var GQ;(function(i){i[i.Deprecated=1]="Deprecated"})(GQ||(GQ={}));var XQ;(function(i){i[i.Hidden=0]="Hidden",i[i.Blink=1]="Blink",i[i.Smooth=2]="Smooth",i[i.Phase=3]="Phase",i[i.Expand=4]="Expand",i[i.Solid=5]="Solid"})(XQ||(XQ={}));var YQ;(function(i){i[i.Line=1]="Line",i[i.Block=2]="Block",i[i.Underline=3]="Underline",i[i.LineThin=4]="LineThin",i[i.BlockOutline=5]="BlockOutline",i[i.UnderlineThin=6]="UnderlineThin"})(YQ||(YQ={}));var ZQ;(function(i){i[i.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",i[i.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",i[i.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",i[i.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(ZQ||(ZQ={}));var QQ;(function(i){i[i.None=0]="None",i[i.Same=1]="Same",i[i.Indent=2]="Indent",i[i.DeepIndent=3]="DeepIndent"})(QQ||(QQ={}));let C5=class{static chord(e,n){return ro(e,n)}};C5.CtrlCmd=2048;C5.Shift=1024;C5.Alt=512;C5.WinCtrl=256;function q2e(){return{editor:void 0,languages:void 0,CancellationTokenSource:Ns,Emitter:_e,KeyCode:NQ,KeyMod:C5,Position:ve,Range:J,Selection:Ft,SelectionDirection:UQ,MarkerSeverity:MQ,MarkerTag:PQ,Uri:Jt,Token:rP}}class bot{constructor(e){this.fn=e,this.lastCache=void 0,this.lastArgKey=void 0}get(e){const n=JSON.stringify(e);return this.lastArgKey!==n&&(this.lastArgKey=n,this.lastCache=this.fn(e)),this.lastCache}}class qfe{get cachedValues(){return this._map}constructor(e){this.fn=e,this._map=new Map}get(e){if(this._map.has(e))return this._map.get(e);const n=this.fn(e);return this._map.set(e,n),n}}class K1{constructor(e){this.executor=e,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}var IE;function K2e(i){return!i||typeof i!="string"?!0:i.trim().length===0}const yot=/{(\d+)}/g;function ox(i,...e){return e.length===0?i:i.replace(yot,function(n,r){const s=parseInt(r,10);return isNaN(s)||s<0||s>=e.length?n:e[s]})}function O9(i){return i.replace(/[<>&]/g,function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}})}function dd(i){return i.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function wot(i,e=" "){const n=S5(i,e);return G2e(n,e)}function S5(i,e){if(!i||!e)return i;const n=e.length;if(n===0||i.length===0)return i;let r=0;for(;i.indexOf(e,r)===r;)r=r+n;return i.substring(r)}function G2e(i,e){if(!i||!e)return i;const n=e.length,r=i.length;if(n===0||r===0)return i;let s=r,o=-1;for(;o=i.lastIndexOf(e,s-1),!(o===-1||o+n!==s);){if(o===0)return"";s=o}return i.substring(0,s)}function Cot(i){return i.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function Sot(i){return i.replace(/\*/g,"")}function X2e(i,e,n={}){if(!i)throw new Error("Cannot create regex from empty string");e||(i=dd(i)),n.wholeWord&&(/\B/.test(i.charAt(0))||(i="\\b"+i),/\B/.test(i.charAt(i.length-1))||(i=i+"\\b"));let r="";return n.global&&(r+="g"),n.matchCase||(r+="i"),n.multiline&&(r+="m"),n.unicode&&(r+="u"),new RegExp(i,r)}function xot(i){return i.source==="^"||i.source==="^$"||i.source==="$"||i.source==="^\\s*$"?!1:!!(i.exec("")&&i.lastIndex===0)}function Km(i){return i.split(/\r\n|\r|\n/)}function ml(i){for(let e=0,n=i.length;e=0;n--){const r=i.charCodeAt(n);if(r!==32&&r!==9)return n}return-1}function aP(i,e){return ie?1:0}function jse(i,e,n=0,r=i.length,s=0,o=e.length){for(;nu)return 1}const a=r-n,l=o-s;return al?1:0}function JQ(i,e){return x5(i,e,0,i.length,0,e.length)}function x5(i,e,n=0,r=i.length,s=0,o=e.length){for(;n=128||u>=128)return jse(i.toLowerCase(),e.toLowerCase(),n,r,s,o);gy(c)&&(c-=32),gy(u)&&(u-=32);const d=c-u;if(d!==0)return d}const a=r-n,l=o-s;return al?1:0}function O3(i){return i>=48&&i<=57}function gy(i){return i>=97&&i<=122}function nm(i){return i>=65&&i<=90}function n2(i,e){return i.length===e.length&&x5(i,e)===0}function Wse(i,e){const n=e.length;return e.length>i.length?!1:x5(i,e,0,n)===0}function ax(i,e){const n=Math.min(i.length,e.length);let r;for(r=0;r1){const r=i.charCodeAt(e-2);if(xo(r))return $se(r,n)}return n}class zse{get offset(){return this._offset}constructor(e,n=0){this._str=e,this._len=e.length,this._offset=n}setOffset(e){this._offset=e}prevCodePoint(){const e=kot(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=B9(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class j9{get offset(){return this._iterator.offset}constructor(e,n=0){this._iterator=new zse(e,n)}nextGraphemeLength(){const e=my.getInstance(),n=this._iterator,r=n.offset;let s=e.getGraphemeBreakType(n.nextCodePoint());for(;!n.eol();){const o=n.offset,a=e.getGraphemeBreakType(n.nextCodePoint());if(Kfe(s,a)){n.setOffset(o);break}s=a}return n.offset-r}prevGraphemeLength(){const e=my.getInstance(),n=this._iterator,r=n.offset;let s=e.getGraphemeBreakType(n.prevCodePoint());for(;n.offset>0;){const o=n.offset,a=e.getGraphemeBreakType(n.prevCodePoint());if(Kfe(a,s)){n.setOffset(o);break}s=a}return r-n.offset}eol(){return this._iterator.eol()}}function Vse(i,e){return new j9(i,e).nextGraphemeLength()}function Y2e(i,e){return new j9(i,e).prevGraphemeLength()}function Lot(i,e){e>0&&lx(i.charCodeAt(e))&&e--;const n=e+Vse(i,e);return[n-Y2e(i,n),n]}let $U;function Dot(){return/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/}function TE(i){return $U||($U=Dot()),$U.test(i)}const Eot=/^[\t\n\r\x20-\x7E]*$/;function k5(i){return Eot.test(i)}const Z2e=/[\u2028\u2029]/;function Q2e(i){return Z2e.test(i)}function d1(i){return i>=11904&&i<=55215||i>=63744&&i<=64255||i>=65281&&i<=65374}function Hse(i){return i>=127462&&i<=127487||i===8986||i===8987||i===9200||i===9203||i>=9728&&i<=10175||i===11088||i===11093||i>=127744&&i<=128591||i>=128640&&i<=128764||i>=128992&&i<=129008||i>=129280&&i<=129535||i>=129648&&i<=129782}const Iot="\uFEFF";function Use(i){return!!(i&&i.length>0&&i.charCodeAt(0)===65279)}function Tot(i,e=!1){return i?(e&&(i=i.replace(/\\./g,"")),i.toLowerCase()!==i):!1}function J2e(i){return i=i%(2*26),i<26?String.fromCharCode(97+i):String.fromCharCode(65+i-26)}function Kfe(i,e){return i===0?e!==5&&e!==7:i===2&&e===3?!1:i===4||i===2||i===3||e===4||e===2||e===3?!0:!(i===8&&(e===8||e===9||e===11||e===12)||(i===11||i===9)&&(e===9||e===10)||(i===12||i===10)&&e===10||e===5||e===13||e===7||i===1||i===13&&e===14||i===6&&e===6)}class my{static getInstance(){return my._INSTANCE||(my._INSTANCE=new my),my._INSTANCE}constructor(){this._data=Rot()}getGraphemeBreakType(e){if(e<32)return e===10?3:e===13?2:4;if(e<127)return 0;const n=this._data,r=n.length/3;let s=1;for(;s<=r;)if(en[3*s+1])s=2*s+1;else return n[3*s+2];return 0}}my._INSTANCE=null;function Rot(){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]")}function Aot(i,e){if(i===0)return 0;const n=Not(i,e);if(n!==void 0)return n;const r=new zse(e,i);return r.prevCodePoint(),r.offset}function Not(i,e){const n=new zse(e,i);let r=n.prevCodePoint();for(;Mot(r)||r===65039||r===8419;){if(n.offset===0)return;r=n.prevCodePoint()}if(!Hse(r))return;let s=n.offset;return s>0&&n.prevCodePoint()===8205&&(s=n.offset),s}function Mot(i){return 127995<=i&&i<=127999}const eEe=" ";class cx{static getInstance(e){return IE.cache.get(Array.from(e))}static getLocales(){return IE._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}IE=cx;cx.ambiguousCharacterData=new K1(()=>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,119846,109],"_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]}'));cx.cache=new bot(i=>{function e(u){const d=new Map;for(let h=0;h!u.startsWith("_")&&u in s);o.length===0&&(o=["_default"]);let a;for(const u of o){const d=e(s[u]);a=r(a,d)}const l=e(s._common),c=n(l,a);return new IE(c)});cx._locales=new K1(()=>Object.keys(IE.ambiguousCharacterData.value).filter(i=>!i.startsWith("_")));class Nm{static getRawData(){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]")}static getData(){return this._data||(this._data=new Set(Nm.getRawData())),this._data}static isInvisibleCharacter(e){return Nm.getData().has(e)}static get codePoints(){return Nm.getData()}}Nm._data=void 0;class eJ{constructor(){this._zoomFactor=1}getZoomFactor(){return this._zoomFactor}}eJ.INSTANCE=new eJ;class Pot extends Le{constructor(){super(),this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(!0),this._mediaQueryList=null,this._handleChange(!1)}_handleChange(e){var n;(n=this._mediaQueryList)===null||n===void 0||n.removeEventListener("change",this._listener),this._mediaQueryList=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),e&&this._onDidChange.fire()}}class Oot extends Le{get value(){return this._value}constructor(){super(),this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio();const e=this._register(new Pot);this._register(e.onDidChange(()=>{this._value=this._getPixelRatio(),this._onDidChange.fire(this._value)}))}_getPixelRatio(){const e=document.createElement("canvas").getContext("2d"),n=window.devicePixelRatio||1,r=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return n/r}}class Fot{constructor(){this._pixelRatioMonitor=null}_getOrCreatePixelRatioMonitor(){return this._pixelRatioMonitor||(this._pixelRatioMonitor=new Oot),this._pixelRatioMonitor}get value(){return this._getOrCreatePixelRatioMonitor().value}get onDidChange(){return this._getOrCreatePixelRatioMonitor().onDidChange}}function tEe(i,e){typeof i=="string"&&(i=window.matchMedia(i)),i.addEventListener("change",e)}const lP=new Fot;function Bot(){return eJ.INSTANCE.getZoomFactor()}const PI=navigator.userAgent,gh=PI.indexOf("Firefox")>=0,QW=PI.indexOf("AppleWebKit")>=0,qse=PI.indexOf("Chrome")>=0,h1=!qse&&PI.indexOf("Safari")>=0,nEe=!qse&&!h1&&QW;PI.indexOf("Electron/")>=0;const Gfe=PI.indexOf("Android")>=0;let zU=!1;if(window.matchMedia){const i=window.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=window.matchMedia("(display-mode: fullscreen)");zU=i.matches,tEe(i,({matches:n})=>{zU&&e.matches||(zU=n)})}class iEe{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){const n=sp(e);this._maxWidth!==n&&(this._maxWidth=n,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const n=sp(e);this._width!==n&&(this._width=n,this.domNode.style.width=this._width)}setHeight(e){const n=sp(e);this._height!==n&&(this._height=n,this.domNode.style.height=this._height)}setTop(e){const n=sp(e);this._top!==n&&(this._top=n,this.domNode.style.top=this._top)}setLeft(e){const n=sp(e);this._left!==n&&(this._left=n,this.domNode.style.left=this._left)}setBottom(e){const n=sp(e);this._bottom!==n&&(this._bottom=n,this.domNode.style.bottom=this._bottom)}setRight(e){const n=sp(e);this._right!==n&&(this._right=n,this.domNode.style.right=this._right)}setPaddingLeft(e){const n=sp(e);this._paddingLeft!==n&&(this._paddingLeft=n,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){const n=sp(e);this._fontSize!==n&&(this._fontSize=n,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){const n=sp(e);this._lineHeight!==n&&(this._lineHeight=n,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const n=sp(e);this._letterSpacing!==n&&(this._letterSpacing=n,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,n){this.domNode.classList.toggle(e,n),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,n){this.domNode.setAttribute(e,n)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}}function sp(i){return typeof i=="number"?`${i}px`:i}function Di(i){return new iEe(i)}function Ta(i,e){i instanceof iEe?(i.setFontFamily(e.getMassagedFontFamily()),i.setFontWeight(e.fontWeight),i.setFontSize(e.fontSize),i.setFontFeatureSettings(e.fontFeatureSettings),i.setFontVariationSettings(e.fontVariationSettings),i.setLineHeight(e.lineHeight),i.setLetterSpacing(e.letterSpacing)):(i.style.fontFamily=e.getMassagedFontFamily(),i.style.fontWeight=e.fontWeight,i.style.fontSize=e.fontSize+"px",i.style.fontFeatureSettings=e.fontFeatureSettings,i.style.fontVariationSettings=e.fontVariationSettings,i.style.lineHeight=e.lineHeight+"px",i.style.letterSpacing=e.letterSpacing+"px")}class jot{constructor(e,n){this.chr=e,this.type=n,this.width=0}fulfill(e){this.width=e}}class Kse{constructor(e,n){this._bareFontInfo=e,this._requests=n,this._container=null,this._testElements=null}read(){this._createDomElements(),document.body.appendChild(this._container),this._readFromDomElements(),document.body.removeChild(this._container),this._container=null,this._testElements=null}_createDomElements(){const e=document.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";const n=document.createElement("div");Ta(n,this._bareFontInfo),e.appendChild(n);const r=document.createElement("div");Ta(r,this._bareFontInfo),r.style.fontWeight="bold",e.appendChild(r);const s=document.createElement("div");Ta(s,this._bareFontInfo),s.style.fontStyle="italic",e.appendChild(s);const o=[];for(const a of this._requests){let l;a.type===0&&(l=n),a.type===2&&(l=r),a.type===1&&(l=s),l.appendChild(document.createElement("br"));const c=document.createElement("span");Kse._render(c,a),l.appendChild(c),o.push(c)}this._container=e,this._testElements=o}static _render(e,n){if(n.chr===" "){let r=" ";for(let s=0;s<8;s++)r+=r;e.innerText=r}else{let r=n.chr;for(let s=0;s<8;s++)r+=r;e.textContent=r}}_readFromDomElements(){for(let e=0,n=this._requests.length;e{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings()},5e3))}_evictUntrustedReadings(){const e=this._cache.getValues();let n=!1;for(const r of e)r.isTrusted||(n=!0,this._cache.remove(r));n&&this._onDidChange.fire()}readFontInfo(e){if(!this._cache.has(e)){let n=this._actualReadFontInfo(e);(n.typicalHalfwidthCharacterWidth<=2||n.typicalFullwidthCharacterWidth<=2||n.spaceWidth<=2||n.maxDigitWidth<=2)&&(n=new tJ({pixelRatio:lP.value,fontFamily:n.fontFamily,fontWeight:n.fontWeight,fontSize:n.fontSize,fontFeatureSettings:n.fontFeatureSettings,fontVariationSettings:n.fontVariationSettings,lineHeight:n.lineHeight,letterSpacing:n.letterSpacing,isMonospace:n.isMonospace,typicalHalfwidthCharacterWidth:Math.max(n.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(n.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:n.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(n.spaceWidth,5),middotWidth:Math.max(n.middotWidth,5),wsmiddotWidth:Math.max(n.wsmiddotWidth,5),maxDigitWidth:Math.max(n.maxDigitWidth,5)},!1)),this._writeToCache(e,n)}return this._cache.get(e)}_createRequest(e,n,r,s){const o=new jot(e,n);return r.push(o),s==null||s.push(o),o}_actualReadFontInfo(e){const n=[],r=[],s=this._createRequest("n",0,n,r),o=this._createRequest("m",0,n,null),a=this._createRequest(" ",0,n,r),l=this._createRequest("0",0,n,r),c=this._createRequest("1",0,n,r),u=this._createRequest("2",0,n,r),d=this._createRequest("3",0,n,r),h=this._createRequest("4",0,n,r),f=this._createRequest("5",0,n,r),p=this._createRequest("6",0,n,r),g=this._createRequest("7",0,n,r),m=this._createRequest("8",0,n,r),_=this._createRequest("9",0,n,r),b=this._createRequest("→",0,n,r),y=this._createRequest("→",0,n,null),x=this._createRequest("·",0,n,r),k=this._createRequest("⸱",0,n,null),D="|/-_ilm%";for(let N=0,P=D.length;N.001){E=!1;break}}let M=!0;return E&&y.width!==A&&(M=!1),y.width>b.width&&(M=!1),new tJ({pixelRatio:lP.value,fontFamily:e.fontFamily,fontWeight:e.fontWeight,fontSize:e.fontSize,fontFeatureSettings:e.fontFeatureSettings,fontVariationSettings:e.fontVariationSettings,lineHeight:e.lineHeight,letterSpacing:e.letterSpacing,isMonospace:E,typicalHalfwidthCharacterWidth:s.width,typicalFullwidthCharacterWidth:o.width,canUseHalfwidthRightwardsArrow:M,spaceWidth:a.width,middotWidth:x.width,wsmiddotWidth:k.width,maxDigitWidth:R},!0)}}class Xfe{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(e){const n=e.getId();return!!this._values[n]}get(e){const n=e.getId();return this._values[n]}put(e,n){const r=e.getId();this._keys[r]=e,this._values[r]=n}remove(e){const n=e.getId();delete this._keys[n],delete this._values[n]}getValues(){return Object.keys(this._keys).map(e=>this._values[e])}}const nJ=new Vot;var Np;(function(i){i.serviceIds=new Map,i.DI_TARGET="$di$target",i.DI_DEPENDENCIES="$di$dependencies";function e(n){return n[i.DI_DEPENDENCIES]||[]}i.getServiceDependencies=e})(Np||(Np={}));const hn=qn("instantiationService");function Hot(i,e,n){e[Np.DI_TARGET]===e?e[Np.DI_DEPENDENCIES].push({id:i,index:n}):(e[Np.DI_DEPENDENCIES]=[{id:i,index:n}],e[Np.DI_TARGET]=e)}function qn(i){if(Np.serviceIds.has(i))return Np.serviceIds.get(i);const e=function(n,r,s){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");Hot(e,n,s)};return e.toString=()=>i,Np.serviceIds.set(i,e),e}const Si=qn("codeEditorService"),Fr=qn("modelService"),Ec=qn("textModelService");var RE=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class Vl extends Le{constructor(e,n="",r="",s=!0,o){super(),this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,this._enabled=!0,this._id=e,this._label=n,this._cssClass=r,this._enabled=s,this._actionCallback=o}get id(){return this._id}get label(){return this._label}set label(e){this._setLabel(e)}_setLabel(e){this._label!==e&&(this._label=e,this._onDidChange.fire({label:e}))}get tooltip(){return this._tooltip||""}set tooltip(e){this._setTooltip(e)}_setTooltip(e){this._tooltip!==e&&(this._tooltip=e,this._onDidChange.fire({tooltip:e}))}get class(){return this._cssClass}set class(e){this._setClass(e)}_setClass(e){this._cssClass!==e&&(this._cssClass=e,this._onDidChange.fire({class:e}))}get enabled(){return this._enabled}set enabled(e){this._setEnabled(e)}_setEnabled(e){this._enabled!==e&&(this._enabled=e,this._onDidChange.fire({enabled:e}))}get checked(){return this._checked}set checked(e){this._setChecked(e)}_setChecked(e){this._checked!==e&&(this._checked=e,this._onDidChange.fire({checked:e}))}run(e,n){return RE(this,void 0,void 0,function*(){this._actionCallback&&(yield this._actionCallback(e))})}}class AE extends Le{constructor(){super(...arguments),this._onWillRun=this._register(new _e),this.onWillRun=this._onWillRun.event,this._onDidRun=this._register(new _e),this.onDidRun=this._onDidRun.event}run(e,n){return RE(this,void 0,void 0,function*(){if(!e.enabled)return;this._onWillRun.fire({action:e});let r;try{yield this.runAction(e,n)}catch(s){r=s}this._onDidRun.fire({action:e,error:r})})}runAction(e,n){return RE(this,void 0,void 0,function*(){yield e.run(n)})}}class Vo{constructor(){this.id=Vo.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=!1}static join(...e){let n=[];for(const r of e)r.length&&(n.length?n=[...n,new Vo,...r]:n=r);return n}run(){return RE(this,void 0,void 0,function*(){})}}Vo.ID="vs.actions.separator";class NE{get actions(){return this._actions}constructor(e,n,r,s){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=e,this.label=n,this.class=s,this._actions=r}run(){return RE(this,void 0,void 0,function*(){})}}class JW extends Vl{constructor(){super(JW.ID,L("submenu.empty","(empty)"),void 0,!1)}}JW.ID="vs.actions.empty";function B2(i){var e,n;return{id:i.id,label:i.label,class:void 0,enabled:(e=i.enabled)!==null&&e!==void 0?e:!0,checked:(n=i.checked)!==null&&n!==void 0?n:!1,run:(...r)=>RE(this,void 0,void 0,function*(){return i.run(...r)}),tooltip:i.label}}var iJ;(function(i){function e(n){return n&&typeof n=="object"&&typeof n.id=="string"}i.isThemeColor=e})(iJ||(iJ={}));var en;(function(i){i.iconNameSegment="[A-Za-z0-9]+",i.iconNameExpression="[A-Za-z0-9-]+",i.iconModifierExpression="~[A-Za-z]+",i.iconNameCharacter="[A-Za-z0-9~-]";const e=new RegExp(`^(${i.iconNameExpression})(${i.iconModifierExpression})?$`);function n(f){const p=e.exec(f.id);if(!p)return n(lt.error);const[,g,m]=p,_=["codicon","codicon-"+g];return m&&_.push("codicon-modifier-"+m.substring(1)),_}i.asClassNameArray=n;function r(f){return n(f).join(" ")}i.asClassName=r;function s(f){return"."+n(f).join(".")}i.asCSSSelector=s;function o(f){return f&&typeof f=="object"&&typeof f.id=="string"&&(typeof f.color>"u"||iJ.isThemeColor(f.color))}i.isThemeIcon=o;const a=new RegExp(`^\\$\\((${i.iconNameExpression}(?:${i.iconModifierExpression})?)\\)$`);function l(f){const p=a.exec(f);if(!p)return;const[,g]=p;return{id:g}}i.fromString=l;function c(f){return{id:f}}i.fromId=c;function u(f,p){let g=f.id;const m=g.lastIndexOf("~");return m!==-1&&(g=g.substring(0,m)),p&&(g=`${g}~${p}`),{id:g}}i.modify=u;function d(f){const p=f.id.lastIndexOf("~");if(p!==-1)return f.id.substring(p+1)}i.getModifier=d;function h(f,p){var g,m;return f.id===p.id&&((g=f.color)===null||g===void 0?void 0:g.id)===((m=p.color)===null||m===void 0?void 0:m.id)}i.isEqual=h})(en||(en={}));const us=qn("commandService"),si=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new _e,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(i,e){if(!i)throw new Error("invalid command");if(typeof i=="string"){if(!e)throw new Error("invalid command");return this.registerCommand({id:i,handler:e})}if(i.description){const a=[];for(const c of i.description.args)a.push(c.constraint);const l=i.handler;i.handler=function(c,...u){return Drt(u,a),l(c,...u)}}const{id:n}=i;let r=this._commands.get(n);r||(r=new jl,this._commands.set(n,r));const s=r.unshift(i),o=gn(()=>{s();const a=this._commands.get(n);a!=null&&a.isEmpty()&&this._commands.delete(n)});return this._onDidRegisterCommand.fire(n),o}registerCommandAlias(i,e){return si.registerCommand(i,(n,...r)=>n.get(us).executeCommand(e,...r))}getCommand(i){const e=this._commands.get(i);if(!(!e||e.isEmpty()))return Vn.first(e)}getCommands(){const i=new Map;for(const e of this._commands.keys()){const n=this.getCommand(e);n&&i.set(e,n)}return i}};si.registerCommand("noop",()=>{});function HU(...i){switch(i.length){case 1:return L("contextkey.scanner.hint.didYouMean1","Did you mean {0}?",i[0]);case 2:return L("contextkey.scanner.hint.didYouMean2","Did you mean {0} or {1}?",i[0],i[1]);case 3:return L("contextkey.scanner.hint.didYouMean3","Did you mean {0}, {1} or {2}?",i[0],i[1],i[2]);default:return}}const Uot=L("contextkey.scanner.hint.didYouForgetToOpenOrCloseQuote","Did you forget to open or close the quote?"),qot=L("contextkey.scanner.hint.didYouForgetToEscapeSlash","Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");let HC=class rJ{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(e){switch(e.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return e.isTripleEq?"===":"==";case 4:return e.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:return">=";case 8:return">=";case 9:return"=~";case 10:return e.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 17:return e.lexeme;case 18:return e.lexeme;case 19:return e.lexeme;case 20:return"EOF";default:throw Rse(`unhandled token type: ${JSON.stringify(e)}; have you forgotten to add a case?`)}}reset(e){return this._input=e,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const n=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:n})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const n=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:n})}else this._match(126)?this._addToken(9):this._error(HU("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(HU("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(HU("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(e){return this._isAtEnd()||this._input.charCodeAt(this._current)!==e?!1:(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(e){this._tokens.push({type:e,offset:this._start})}_error(e){const n=this._start,r=this._input.substring(this._start,this._current),s={type:19,offset:this._start,lexeme:r};this._errors.push({offset:n,lexeme:r,additionalInfo:e}),this._tokens.push(s)}_string(){this.stringRe.lastIndex=this._start;const e=this.stringRe.exec(this._input);if(e){this._current=this._start+e[0].length;const n=this._input.substring(this._start,this._current),r=rJ._keywords.get(n);r?this._addToken(r):this._tokens.push({type:17,lexeme:n,offset:this._start})}}_quotedString(){for(;this._peek()!==39&&!this._isAtEnd();)this._advance();if(this._isAtEnd()){this._error(Uot);return}this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1})}_regex(){let e=this._current,n=!1,r=!1;for(;;){if(e>=this._input.length){this._current=e,this._error(qot);return}const o=this._input.charCodeAt(e);if(n)n=!1;else if(o===47&&!r){e++;break}else o===91?r=!0:o===92?n=!0:o===93&&(r=!1);e++}for(;e=this._input.length}};HC._regexFlags=new Set(["i","g","s","m","y","u"].map(i=>i.charCodeAt(0)));HC._keywords=new Map([["not",14],["in",13],["false",12],["true",11]]);const Ya=new Map;Ya.set("false",!1);Ya.set("true",!0);Ya.set("isMac",ri);Ya.set("isLinux",_l);Ya.set("isWindows",Aa);Ya.set("isWeb",H1);Ya.set("isMacNative",ri&&!H1);Ya.set("isEdge",Vrt);Ya.set("isFirefox",$rt);Ya.set("isChrome",k2e);Ya.set("isSafari",zrt);const Kot=Object.prototype.hasOwnProperty,Got={regexParsingWithErrorRecovery:!0},Xot=L("contextkey.parser.error.emptyString","Empty context key expression"),Yot=L("contextkey.parser.error.emptyString.hint","Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),Zot=L("contextkey.parser.error.noInAfterNot","'in' after 'not'."),Yfe=L("contextkey.parser.error.closingParenthesis","closing parenthesis ')'"),Qot=L("contextkey.parser.error.unexpectedToken","Unexpected token"),Jot=L("contextkey.parser.error.unexpectedToken.hint","Did you forget to put && or || before the token?"),eat=L("contextkey.parser.error.unexpectedEOF","Unexpected end of expression"),tat=L("contextkey.parser.error.unexpectedEOF.hint","Did you forget to put a context key?");let rEe=class sN{constructor(e=Got){this._config=e,this._scanner=new HC,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(e){if(e===""){this._parsingErrors.push({message:Xot,offset:0,lexeme:"",additionalInfo:Yot});return}this._tokens=this._scanner.reset(e).scan(),this._current=0,this._parsingErrors=[];try{const n=this._expr();if(!this._isAtEnd()){const r=this._peek(),s=r.type===17?Jot:void 0;throw this._parsingErrors.push({message:Qot,offset:r.offset,lexeme:HC.getLexeme(r),additionalInfo:s}),sN._parseError}return n}catch(n){if(n!==sN._parseError)throw n;return}}_expr(){return this._or()}_or(){const e=[this._and()];for(;this._matchOne(16);){const n=this._and();e.push(n)}return e.length===1?e[0]:ze.or(...e)}_and(){const e=[this._term()];for(;this._matchOne(15);){const n=this._term();e.push(n)}return e.length===1?e[0]:ze.and(...e)}_term(){if(this._matchOne(2)){const e=this._peek();switch(e.type){case 11:return this._advance(),Hl.INSTANCE;case 12:return this._advance(),Cc.INSTANCE;case 0:{this._advance();const n=this._expr();return this._consume(1,Yfe),n==null?void 0:n.negate()}case 17:return this._advance(),Gx.create(e.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",e)}}return this._primary()}_primary(){const e=this._peek();switch(e.type){case 11:return this._advance(),ze.true();case 12:return this._advance(),ze.false();case 0:{this._advance();const n=this._expr();return this._consume(1,Yfe),n}case 17:{const n=e.lexeme;if(this._advance(),this._matchOne(9)){const s=this._peek();if(!this._config.regexParsingWithErrorRecovery){if(this._advance(),s.type!==10)throw this._errExpectedButGot("REGEX",s);const o=s.lexeme,a=o.lastIndexOf("/"),l=a===o.length-1?void 0:this._removeFlagsGY(o.substring(a+1));let c;try{c=new RegExp(o.substring(1,a),l)}catch{throw this._errExpectedButGot("REGEX",s)}return cP.create(n,c)}switch(s.type){case 10:case 19:{const o=[s.lexeme];this._advance();let a=this._peek(),l=0;for(let f=0;f=0){const u=o.slice(l+1,c),d=o[c+1]==="i"?"i":"";try{a=new RegExp(u,d)}catch{throw this._errExpectedButGot("REGEX",s)}}}if(a===null)throw this._errExpectedButGot("REGEX",s);return cP.create(n,a)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,Zot);const s=this._value();return ze.notIn(n,s)}switch(this._peek().type){case 3:{this._advance();const s=this._value();if(this._previous().type===18)return ze.equals(n,s);switch(s){case"true":return ze.has(n);case"false":return ze.not(n);default:return ze.equals(n,s)}}case 4:{this._advance();const s=this._value();if(this._previous().type===18)return ze.notEquals(n,s);switch(s){case"true":return ze.not(n);case"false":return ze.has(n);default:return ze.notEquals(n,s)}}case 5:return this._advance(),o$.create(n,this._value());case 6:return this._advance(),a$.create(n,this._value());case 7:return this._advance(),r$.create(n,this._value());case 8:return this._advance(),s$.create(n,this._value());case 13:return this._advance(),ze.in(n,this._value());default:return ze.has(n)}}case 20:throw this._parsingErrors.push({message:eat,offset:e.offset,lexeme:"",additionalInfo:tat}),sN._parseError;default:throw this._errExpectedButGot(`true | false | KEY | KEY '=~' REGEX | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){const e=this._peek();switch(e.type){case 17:case 18:return this._advance(),e.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(e){return e.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(e){return this._check(e)?(this._advance(),!0):!1}_advance(){return this._isAtEnd()||this._current++,this._previous()}_consume(e,n){if(this._check(e))return this._advance();throw this._errExpectedButGot(n,this._peek())}_errExpectedButGot(e,n,r){const s=L("contextkey.parser.error.expectedButGot",`Expected: {0} Received: '{1}'.`,e,HC.getLexeme(n)),o=n.offset,a=HC.getLexeme(n);return this._parsingErrors.push({message:s,offset:o,lexeme:a,additionalInfo:r}),sN._parseError}_check(e){return this._peek().type===e}_peek(){return this._tokens[this._current]}_isAtEnd(){return this._peek().type===20}};rEe._parseError=new Error;class ze{static false(){return Hl.INSTANCE}static true(){return Cc.INSTANCE}static has(e){return Kx.create(e)}static equals(e,n){return OI.create(e,n)}static notEquals(e,n){return n$.create(e,n)}static regex(e,n){return cP.create(e,n)}static in(e,n){return e$.create(e,n)}static notIn(e,n){return t$.create(e,n)}static not(e){return Gx.create(e)}static and(...e){return pS.create(e,null,!0)}static or(...e){return $0.create(e,null,!0)}static deserialize(e){return e==null?void 0:this._parser.parse(e)}}ze._parser=new rEe({regexParsingWithErrorRecovery:!1});function nat(i,e){const n=i?i.substituteConstants():void 0,r=e?e.substituteConstants():void 0;return!n&&!r?!0:!n||!r?!1:n.equals(r)}function JN(i,e){return i.cmp(e)}class Hl{constructor(){this.type=0}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!1}serialize(){return"false"}keys(){return[]}negate(){return Cc.INSTANCE}}Hl.INSTANCE=new Hl;class Cc{constructor(){this.type=1}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!0}serialize(){return"true"}keys(){return[]}negate(){return Hl.INSTANCE}}Cc.INSTANCE=new Cc;class Kx{static create(e,n=null){const r=Ya.get(e);return typeof r=="boolean"?r?Cc.INSTANCE:Hl.INSTANCE:new Kx(e,n)}constructor(e,n){this.key=e,this.negated=n,this.type=2}cmp(e){return e.type!==this.type?this.type-e.type:oEe(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ya.get(this.key);return typeof e=="boolean"?e?Cc.INSTANCE:Hl.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=Gx.create(this.key,this)),this.negated}}class OI{static create(e,n,r=null){if(typeof n=="boolean")return n?Kx.create(e,r):Gx.create(e,r);const s=Ya.get(e);return typeof s=="boolean"?n===(s?"true":"false")?Cc.INSTANCE:Hl.INSTANCE:new OI(e,n,r)}constructor(e,n,r){this.key=e,this.value=n,this.negated=r,this.type=4}cmp(e){return e.type!==this.type?this.type-e.type:Xx(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ya.get(this.key);if(typeof e=="boolean"){const n=e?"true":"false";return this.value===n?Cc.INSTANCE:Hl.INSTANCE}return this}evaluate(e){return e.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=n$.create(this.key,this.value,this)),this.negated}}class e${static create(e,n){return new e$(e,n)}constructor(e,n){this.key=e,this.valueKey=n,this.type=10,this.negated=null}cmp(e){return e.type!==this.type?this.type-e.type:Xx(this.key,this.valueKey,e.key,e.valueKey)}equals(e){return e.type===this.type?this.key===e.key&&this.valueKey===e.valueKey:!1}substituteConstants(){return this}evaluate(e){const n=e.getValue(this.valueKey),r=e.getValue(this.key);return Array.isArray(n)?n.includes(r):typeof r=="string"&&typeof n=="object"&&n!==null?Kot.call(n,r):!1}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=t$.create(this.key,this.valueKey)),this.negated}}class t${static create(e,n){return new t$(e,n)}constructor(e,n){this.key=e,this.valueKey=n,this.type=11,this._negated=e$.create(e,n)}cmp(e){return e.type!==this.type?this.type-e.type:this._negated.cmp(e._negated)}equals(e){return e.type===this.type?this._negated.equals(e._negated):!1}substituteConstants(){return this}evaluate(e){return!this._negated.evaluate(e)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class n${static create(e,n,r=null){if(typeof n=="boolean")return n?Gx.create(e,r):Kx.create(e,r);const s=Ya.get(e);return typeof s=="boolean"?n===(s?"true":"false")?Hl.INSTANCE:Cc.INSTANCE:new n$(e,n,r)}constructor(e,n,r){this.key=e,this.value=n,this.negated=r,this.type=5}cmp(e){return e.type!==this.type?this.type-e.type:Xx(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=Ya.get(this.key);if(typeof e=="boolean"){const n=e?"true":"false";return this.value===n?Hl.INSTANCE:Cc.INSTANCE}return this}evaluate(e){return e.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=OI.create(this.key,this.value,this)),this.negated}}class Gx{static create(e,n=null){const r=Ya.get(e);return typeof r=="boolean"?r?Hl.INSTANCE:Cc.INSTANCE:new Gx(e,n)}constructor(e,n){this.key=e,this.negated=n,this.type=3}cmp(e){return e.type!==this.type?this.type-e.type:oEe(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Ya.get(this.key);return typeof e=="boolean"?e?Hl.INSTANCE:Cc.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Kx.create(this.key,this)),this.negated}}function i$(i,e){if(typeof i=="string"){const n=parseFloat(i);isNaN(n)||(i=n)}return typeof i=="string"||typeof i=="number"?e(i):Hl.INSTANCE}class r${static create(e,n,r=null){return i$(n,s=>new r$(e,s,r))}constructor(e,n,r){this.key=e,this.value=n,this.negated=r,this.type=12}cmp(e){return e.type!==this.type?this.type-e.type:Xx(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=a$.create(this.key,this.value,this)),this.negated}}class s${static create(e,n,r=null){return i$(n,s=>new s$(e,s,r))}constructor(e,n,r){this.key=e,this.value=n,this.negated=r,this.type=13}cmp(e){return e.type!==this.type?this.type-e.type:Xx(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=o$.create(this.key,this.value,this)),this.negated}}class o${static create(e,n,r=null){return i$(n,s=>new o$(e,s,r))}constructor(e,n,r){this.key=e,this.value=n,this.negated=r,this.type=14}cmp(e){return e.type!==this.type?this.type-e.type:Xx(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))new a$(e,s,r))}constructor(e,n,r){this.key=e,this.value=n,this.negated=r,this.type=15}cmp(e){return e.type!==this.type?this.type-e.type:Xx(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=r$.create(this.key,this.value,this)),this.negated}}class cP{static create(e,n){return new cP(e,n)}constructor(e,n){this.key=e,this.regexp=n,this.type=7,this.negated=null}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.keye.key)return 1;const n=this.regexp?this.regexp.source:"",r=e.regexp?e.regexp.source:"";return nr?1:0}equals(e){if(e.type===this.type){const n=this.regexp?this.regexp.source:"",r=e.regexp?e.regexp.source:"";return this.key===e.key&&n===r}return!1}substituteConstants(){return this}evaluate(e){const n=e.getValue(this.key);return this.regexp?this.regexp.test(n):!1}serialize(){const e=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Gse.create(this)),this.negated}}class Gse{static create(e){return new Gse(e)}constructor(e){this._actual=e,this.type=8}cmp(e){return e.type!==this.type?this.type-e.type:this._actual.cmp(e._actual)}equals(e){return e.type===this.type?this._actual.equals(e._actual):!1}substituteConstants(){return this}evaluate(e){return!this._actual.evaluate(e)}serialize(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function sEe(i){let e=null;for(let n=0,r=i.length;ne.expr.length)return 1;for(let n=0,r=this.expr.length;n1;){const a=s[s.length-1];if(a.type!==9)break;s.pop();const l=s.pop(),c=s.length===0,u=$0.create(a.expr.map(d=>pS.create([d,l],null,r)),null,c);u&&(s.push(u),s.sort(JN))}if(s.length===1)return s[0];if(r){for(let a=0;ae.serialize()).join(" && ")}keys(){const e=[];for(const n of this.expr)e.push(...n.keys());return e}negate(){if(!this.negated){const e=[];for(const n of this.expr)e.push(n.negate());this.negated=$0.create(e,this,!0)}return this.negated}}class $0{static create(e,n,r){return $0._normalizeArr(e,n,r)}constructor(e,n){this.expr=e,this.negated=n,this.type=9}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.lengthe.expr.length)return 1;for(let n=0,r=this.expr.length;ne.serialize()).join(" || ")}keys(){const e=[];for(const n of this.expr)e.push(...n.keys());return e}negate(){if(!this.negated){const e=[];for(const n of this.expr)e.push(n.negate());for(;e.length>1;){const n=e.shift(),r=e.shift(),s=[];for(const o of Qfe(n))for(const a of Qfe(r))s.push(pS.create([o,a],null,!1));e.unshift($0.create(s,null,!1))}this.negated=$0.create(e,this,!0)}return this.negated}}class yt extends Kx{static all(){return yt._info.values()}constructor(e,n,r){super(e,null),this._defaultValue=n,typeof r=="object"?yt._info.push(Object.assign(Object.assign({},r),{key:e})):r!==!0&&yt._info.push({key:e,description:r,type:n!=null?typeof n:void 0})}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return OI.create(this.key,e)}}yt._info=[];const mn=qn("contextKeyService");function oEe(i,e){return ie?1:0}function Xx(i,e,n,r){return in?1:er?1:0}function sJ(i,e){if(i.type===0||e.type===1)return!0;if(i.type===9)return e.type===9?Zfe(i.expr,e.expr):!1;if(e.type===9){for(const n of e.expr)if(sJ(i,n))return!0;return!1}if(i.type===6){if(e.type===6)return Zfe(e.expr,i.expr);for(const n of i.expr)if(sJ(n,e))return!0;return!1}return i.equals(e)}function Zfe(i,e){let n=0,r=0;for(;n>>0,r=(i&4294901760)>>>16;return r!==0?new UU([F3(n,e),F3(r,e)]):new UU([F3(n,e)])}else{const n=[];for(let r=0;r{l(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(aat)),this._cachedMergedKeybindings.slice(0)}}const Sc=new Xse,oat={EditorModes:"platform.keybindingsRegistry"};Kr.add(oat.EditorModes,Sc);function aat(i,e){if(i.weight1!==e.weight1)return i.weight1-e.weight1;if(i.command&&e.command){if(i.commande.command)return 1}return i.weight2-e.weight2}var lat=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Jfe=function(i,e){return function(n,r){e(n,r,i)}},cat=function(i,e){var n={};for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&e.indexOf(r)<0&&(n[r]=i[r]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(i);sn===e}}z0._all=new Map;const sa=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new Hst({merge:z0.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(i){return this._commands.set(i.id,i),this._onDidChangeMenu.fire(z0.for(se.CommandPalette)),gn(()=>{this._commands.delete(i.id)&&this._onDidChangeMenu.fire(z0.for(se.CommandPalette))})}getCommand(i){return this._commands.get(i)}getCommands(){const i=new Map;return this._commands.forEach((e,n)=>i.set(n,e)),i}appendMenuItem(i,e){let n=this._menuItems.get(i);n||(n=new jl,this._menuItems.set(i,n));const r=n.push(e);return this._onDidChangeMenu.fire(z0.for(i)),gn(()=>{r(),this._onDidChangeMenu.fire(z0.for(i))})}appendMenuItems(i){const e=new Xe;for(const{id:n,item:r}of i)e.add(this.appendMenuItem(n,r));return e}getMenuItems(i){let e;return this._menuItems.has(i)?e=[...this._menuItems.get(i)]:e=[],i===se.CommandPalette&&this._appendImplicitItems(e),e}_appendImplicitItems(i){const e=new Set;for(const n of i)i2(n)&&(e.add(n.command.id),n.alt&&e.add(n.alt.id));this._commands.forEach((n,r)=>{e.has(r)||i.push({command:n})})}};class dP extends NE{constructor(e,n,r){super(`submenuitem.${e.submenu.id}`,typeof e.title=="string"?e.title:e.title.value,r,"submenu"),this.item=e,this.hideActions=n}}let If=s8=class{static label(e,n){return n!=null&&n.renderShortTitle&&e.shortTitle?typeof e.shortTitle=="string"?e.shortTitle:e.shortTitle.value:typeof e.title=="string"?e.title:e.title.value}constructor(e,n,r,s,o,a){var l,c;this.hideActions=s,this._commandService=a,this.id=e.id,this.label=s8.label(e,r),this.tooltip=(c=typeof e.tooltip=="string"?e.tooltip:(l=e.tooltip)===null||l===void 0?void 0:l.value)!==null&&c!==void 0?c:"",this.enabled=!e.precondition||o.contextMatchesRules(e.precondition),this.checked=void 0;let u;if(e.toggled){const d=e.toggled.condition?e.toggled:{condition:e.toggled};this.checked=o.contextMatchesRules(d.condition),this.checked&&d.tooltip&&(this.tooltip=typeof d.tooltip=="string"?d.tooltip:d.tooltip.value),this.checked&&en.isThemeIcon(d.icon)&&(u=d.icon),this.checked&&d.title&&(this.label=typeof d.title=="string"?d.title:d.title.value)}u||(u=en.isThemeIcon(e.icon)?e.icon:void 0),this.item=e,this.alt=n?new s8(n,void 0,r,s,o,a):void 0,this._options=r,this.class=u&&en.asClassName(u)}run(...e){var n,r;let s=[];return!((n=this._options)===null||n===void 0)&&n.arg&&(s=[...s,this._options.arg]),!((r=this._options)===null||r===void 0)&&r.shouldForwardArgs&&(s=[...s,...e]),this._commandService.executeCommand(this.id,...s)}};If=s8=lat([Jfe(4,mn),Jfe(5,us)],If);class md{constructor(e){this.desc=e}}function Ir(i){const e=new Xe,n=new i,r=n.desc,{f1:s,menu:o,keybinding:a,description:l}=r,c=cat(r,["f1","menu","keybinding","description"]);if(e.add(si.registerCommand({id:c.id,handler:(u,...d)=>n.run(u,...d),description:l})),Array.isArray(o))for(const u of o)e.add(sa.appendMenuItem(u.id,Object.assign({command:Object.assign(Object.assign({},c),{precondition:u.precondition===null?void 0:c.precondition})},u)));else o&&e.add(sa.appendMenuItem(o.id,Object.assign({command:Object.assign(Object.assign({},c),{precondition:o.precondition===null?void 0:c.precondition})},o)));if(s&&(e.add(sa.appendMenuItem(se.CommandPalette,{command:c,when:c.precondition})),e.add(sa.addCommand(c))),Array.isArray(a))for(const u of a)e.add(Sc.registerKeybindingRule(Object.assign(Object.assign({},u),{id:c.id,when:c.precondition?ze.and(c.precondition,u.when):u.when})));else a&&e.add(Sc.registerKeybindingRule(Object.assign(Object.assign({},a),{id:c.id,when:c.precondition?ze.and(c.precondition,a.when):a.when})));return e}const _d=qn("telemetryService"),vd=qn("logService");var La;(function(i){i[i.Off=0]="Off",i[i.Trace=1]="Trace",i[i.Debug=2]="Debug",i[i.Info=3]="Info",i[i.Warning=4]="Warning",i[i.Error=5]="Error"})(La||(La={}));const lEe=La.Info;class cEe extends Le{constructor(){super(...arguments),this.level=lEe,this._onDidChangeLogLevel=this._register(new _e),this.onDidChangeLogLevel=this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return this.level!==La.Off&&this.level<=e}}class dat extends cEe{constructor(e=lEe,n=!0){super(),this.useColors=n,this.setLevel(e)}trace(e,...n){this.checkLogLevel(La.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",e,...n):console.log(e,...n))}debug(e,...n){this.checkLogLevel(La.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",e,...n):console.log(e,...n))}info(e,...n){this.checkLogLevel(La.Info)&&(this.useColors?console.log("%c INFO","color: #33f",e,...n):console.log(e,...n))}warn(e,...n){this.checkLogLevel(La.Warning)&&(this.useColors?console.log("%c WARN","color: #993",e,...n):console.log(e,...n))}error(e,...n){this.checkLogLevel(La.Error)&&(this.useColors?console.log("%c ERR","color: #f33",e,...n):console.error(e,...n))}dispose(){}}class hat extends cEe{constructor(e){super(),this.loggers=e,e.length&&this.setLevel(e[0].getLevel())}setLevel(e){for(const n of this.loggers)n.setLevel(e);super.setLevel(e)}trace(e,...n){for(const r of this.loggers)r.trace(e,...n)}debug(e,...n){for(const r of this.loggers)r.debug(e,...n)}info(e,...n){for(const r of this.loggers)r.info(e,...n)}warn(e,...n){for(const r of this.loggers)r.warn(e,...n)}error(e,...n){for(const r of this.loggers)r.error(e,...n)}dispose(){for(const e of this.loggers)e.dispose()}}function fat(i){switch(i){case La.Trace:return"trace";case La.Debug:return"debug";case La.Info:return"info";case La.Warning:return"warn";case La.Error:return"error";case La.Off:return"off"}}new yt("logLevel",fat(La.Info));const Yse={clipboard:{writeText:Um||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:Um||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},pointerEvents:window.PointerEvent&&("ontouchstart"in window||window.navigator.maxTouchPoints>0||navigator.maxTouchPoints>0)};function pat(i){if(i.charCode){const n=String.fromCharCode(i.charCode).toUpperCase();return W0.fromString(n)}const e=i.keyCode;if(e===3)return 7;if(gh)switch(e){case 59:return 85;case 60:if(_l)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(ri)return 57;break}else if(QW){if(ri&&e===93)return 57;if(!ri&&e===92)return 57}return P2e[e]||0}const gat=ri?256:2048,mat=512,_at=1024,vat=ri?2048:256;class yr{constructor(e){this._standardKeyboardEventBrand=!0;const n=e;this.browserEvent=n,this.target=n.target,this.ctrlKey=n.ctrlKey,this.shiftKey=n.shiftKey,this.altKey=n.altKey,this.metaKey=n.metaKey,this.altGraphKey=n.getModifierState("AltGraph"),this.keyCode=pat(n),this.code=n.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(e){return this._asKeybinding===e}_computeKeybinding(){let e=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode);let n=0;return this.ctrlKey&&(n|=gat),this.altKey&&(n|=mat),this.shiftKey&&(n|=_at),this.metaKey&&(n|=vat),n|=e,n}_computeKeyCodeChord(){let e=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode),new Iv(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,e)}}let epe=!1,BR=null;function bat(i){if(!i.parent||i.parent===i)return null;try{const e=i.location,n=i.parent.location;if(e.origin!=="null"&&n.origin!=="null"&&e.origin!==n.origin)return epe=!0,null}catch{return epe=!0,null}return i.parent}class yat{static getSameOriginWindowChain(){if(!BR){BR=[];let e=window,n;do n=bat(e),n?BR.push({window:e,iframeElement:e.frameElement||null}):BR.push({window:e,iframeElement:null}),e=n;while(e)}return BR.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(e,n){if(!n||e===n)return{top:0,left:0};let r=0,s=0;const o=this.getSameOriginWindowChain();for(const a of o){if(r+=a.window.scrollY,s+=a.window.scrollX,a.window===n||!a.iframeElement)break;const l=a.iframeElement.getBoundingClientRect();r+=l.top,s+=l.left}return{top:r,left:s}}}class rh{constructor(e){this.timestamp=Date.now(),this.browserEvent=e,this.leftButton=e.button===0,this.middleButton=e.button===1,this.rightButton=e.button===2,this.buttons=e.buttons,this.target=e.target,this.detail=e.detail||1,e.type==="dblclick"&&(this.detail=2),this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,typeof e.pageX=="number"?(this.posx=e.pageX,this.posy=e.pageY):(this.posx=e.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=e.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);const n=yat.getPositionOfChildWindowRelativeToAncestorWindow(window,e.view);this.posx-=n.left,this.posy-=n.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}}class ux{constructor(e,n=0,r=0){if(this.browserEvent=e||null,this.target=e?e.target||e.targetNode||e.srcElement:null,this.deltaY=r,this.deltaX=n,e){const s=e,o=e;if(typeof s.wheelDeltaY<"u")this.deltaY=s.wheelDeltaY/120;else if(typeof o.VERTICAL_AXIS<"u"&&o.axis===o.VERTICAL_AXIS)this.deltaY=-o.detail/3;else if(e.type==="wheel"){const a=e;a.deltaMode===a.DOM_DELTA_LINE?gh&&!ri?this.deltaY=-e.deltaY/3:this.deltaY=-e.deltaY:this.deltaY=-e.deltaY/40}if(typeof s.wheelDeltaX<"u")h1&&Aa?this.deltaX=-(s.wheelDeltaX/120):this.deltaX=s.wheelDeltaX/120;else if(typeof o.HORIZONTAL_AXIS<"u"&&o.axis===o.HORIZONTAL_AXIS)this.deltaX=-e.detail/3;else if(e.type==="wheel"){const a=e;a.deltaMode===a.DOM_DELTA_LINE?gh&&!ri?this.deltaX=-e.deltaX/3:this.deltaX=-e.deltaX:this.deltaX=-e.deltaX/40}this.deltaY===0&&this.deltaX===0&&e.wheelDelta&&(this.deltaY=e.wheelDelta/120)}}preventDefault(){var e;(e=this.browserEvent)===null||e===void 0||e.preventDefault()}stopPropagation(){var e;(e=this.browserEvent)===null||e===void 0||e.stopPropagation()}}/*! @license DOMPurify 3.0.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.5/LICENSE */const{entries:uEe,setPrototypeOf:tpe,isFrozen:wat,getPrototypeOf:Cat,getOwnPropertyDescriptor:Sat}=Object;let{freeze:cu,seal:Gp,create:xat}=Object,{apply:aJ,construct:lJ}=typeof Reflect<"u"&&Reflect;aJ||(aJ=function(e,n,r){return e.apply(n,r)});cu||(cu=function(e){return e});Gp||(Gp=function(e){return e});lJ||(lJ=function(e,n){return new e(...n)});const kat=Tf(Array.prototype.forEach),npe=Tf(Array.prototype.pop),jR=Tf(Array.prototype.push),o8=Tf(String.prototype.toLowerCase),KU=Tf(String.prototype.toString),Lat=Tf(String.prototype.match),op=Tf(String.prototype.replace),Dat=Tf(String.prototype.indexOf),Eat=Tf(String.prototype.trim),Od=Tf(RegExp.prototype.test),WR=Iat(TypeError);function Tf(i){return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s/gm),Mat=Gp(/\${[\w\W]*}/gm),Pat=Gp(/^data-[\-\w.\u00B7-\uFFFF]/),Oat=Gp(/^aria-[\-\w]+$/),dEe=Gp(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Fat=Gp(/^(?:\w+script|data):/i),Bat=Gp(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),hEe=Gp(/^html$/i);var ape=Object.freeze({__proto__:null,MUSTACHE_EXPR:Aat,ERB_EXPR:Nat,TMPLIT_EXPR:Mat,DATA_ATTR:Pat,ARIA_ATTR:Oat,IS_ALLOWED_URI:dEe,IS_SCRIPT_OR_DATA:Fat,ATTR_WHITESPACE:Bat,DOCTYPE_NAME:hEe});const jat=()=>typeof window>"u"?null:window,Wat=function(e,n){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let r=null;const s="data-tt-policy-suffix";n&&n.hasAttribute(s)&&(r=n.getAttribute(s));const o="dompurify"+(r?"#"+r:"");try{return e.createPolicy(o,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}};function fEe(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:jat();const e=yn=>fEe(yn);if(e.version="3.0.5",e.removed=[],!i||!i.document||i.document.nodeType!==9)return e.isSupported=!1,e;const n=i.document,r=n.currentScript;let{document:s}=i;const{DocumentFragment:o,HTMLTemplateElement:a,Node:l,Element:c,NodeFilter:u,NamedNodeMap:d=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:h,DOMParser:f,trustedTypes:p}=i,g=c.prototype,m=B3(g,"cloneNode"),_=B3(g,"nextSibling"),b=B3(g,"childNodes"),y=B3(g,"parentNode");if(typeof a=="function"){const yn=s.createElement("template");yn.content&&yn.content.ownerDocument&&(s=yn.content.ownerDocument)}let x,k="";const{implementation:D,createNodeIterator:R,createDocumentFragment:E,getElementsByTagName:A}=s,{importNode:M}=n;let N={};e.isSupported=typeof uEe=="function"&&typeof y=="function"&&D&&D.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:P,ERB_EXPR:O,TMPLIT_EXPR:B,DATA_ATTR:j,ARIA_ATTR:z,IS_SCRIPT_OR_DATA:H,ATTR_WHITESPACE:Y}=ape;let{IS_ALLOWED_URI:X}=ape,Q=null;const ie=Vi({},[...ipe,...GU,...XU,...YU,...rpe]);let K=null;const ee=Vi({},[...spe,...ZU,...ope,...j3]);let le=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ke=null,xe=null,me=!0,Ee=!0,je=!1,qe=!0,Ze=!1,We=!1,ut=!1,st=!1,mt=!1,Rt=!1,Vt=!1,Ot=!0,vt=!1;const wn="user-content-";let Ce=!0,ge=!1,pe={},ne=null;const ae=Vi({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let ue=null;const de=Vi({},["audio","video","img","source","image","track"]);let Se=null;const Ie=Vi({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),nt="http://www.w3.org/1998/Math/MathML",Oe="http://www.w3.org/2000/svg",Ve="http://www.w3.org/1999/xhtml";let gt=Ve,$t=!1,Mt=null;const Bt=Vi({},[nt,Oe,Ve],KU);let jn;const Dt=["application/xhtml+xml","text/html"],Fn="text/html";let tn,pi=null;const Pi=s.createElement("form"),ti=function(Pe){return Pe instanceof RegExp||Pe instanceof Function},mi=function(Pe){if(!(pi&&pi===Pe)){if((!Pe||typeof Pe!="object")&&(Pe={}),Pe=XL(Pe),jn=Dt.indexOf(Pe.PARSER_MEDIA_TYPE)===-1?jn=Fn:jn=Pe.PARSER_MEDIA_TYPE,tn=jn==="application/xhtml+xml"?KU:o8,Q="ALLOWED_TAGS"in Pe?Vi({},Pe.ALLOWED_TAGS,tn):ie,K="ALLOWED_ATTR"in Pe?Vi({},Pe.ALLOWED_ATTR,tn):ee,Mt="ALLOWED_NAMESPACES"in Pe?Vi({},Pe.ALLOWED_NAMESPACES,KU):Bt,Se="ADD_URI_SAFE_ATTR"in Pe?Vi(XL(Ie),Pe.ADD_URI_SAFE_ATTR,tn):Ie,ue="ADD_DATA_URI_TAGS"in Pe?Vi(XL(de),Pe.ADD_DATA_URI_TAGS,tn):de,ne="FORBID_CONTENTS"in Pe?Vi({},Pe.FORBID_CONTENTS,tn):ae,ke="FORBID_TAGS"in Pe?Vi({},Pe.FORBID_TAGS,tn):{},xe="FORBID_ATTR"in Pe?Vi({},Pe.FORBID_ATTR,tn):{},pe="USE_PROFILES"in Pe?Pe.USE_PROFILES:!1,me=Pe.ALLOW_ARIA_ATTR!==!1,Ee=Pe.ALLOW_DATA_ATTR!==!1,je=Pe.ALLOW_UNKNOWN_PROTOCOLS||!1,qe=Pe.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Ze=Pe.SAFE_FOR_TEMPLATES||!1,We=Pe.WHOLE_DOCUMENT||!1,mt=Pe.RETURN_DOM||!1,Rt=Pe.RETURN_DOM_FRAGMENT||!1,Vt=Pe.RETURN_TRUSTED_TYPE||!1,st=Pe.FORCE_BODY||!1,Ot=Pe.SANITIZE_DOM!==!1,vt=Pe.SANITIZE_NAMED_PROPS||!1,Ce=Pe.KEEP_CONTENT!==!1,ge=Pe.IN_PLACE||!1,X=Pe.ALLOWED_URI_REGEXP||dEe,gt=Pe.NAMESPACE||Ve,le=Pe.CUSTOM_ELEMENT_HANDLING||{},Pe.CUSTOM_ELEMENT_HANDLING&&ti(Pe.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(le.tagNameCheck=Pe.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Pe.CUSTOM_ELEMENT_HANDLING&&ti(Pe.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(le.attributeNameCheck=Pe.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Pe.CUSTOM_ELEMENT_HANDLING&&typeof Pe.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(le.allowCustomizedBuiltInElements=Pe.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Ze&&(Ee=!1),Rt&&(mt=!0),pe&&(Q=Vi({},[...rpe]),K=[],pe.html===!0&&(Vi(Q,ipe),Vi(K,spe)),pe.svg===!0&&(Vi(Q,GU),Vi(K,ZU),Vi(K,j3)),pe.svgFilters===!0&&(Vi(Q,XU),Vi(K,ZU),Vi(K,j3)),pe.mathMl===!0&&(Vi(Q,YU),Vi(K,ope),Vi(K,j3))),Pe.ADD_TAGS&&(Q===ie&&(Q=XL(Q)),Vi(Q,Pe.ADD_TAGS,tn)),Pe.ADD_ATTR&&(K===ee&&(K=XL(K)),Vi(K,Pe.ADD_ATTR,tn)),Pe.ADD_URI_SAFE_ATTR&&Vi(Se,Pe.ADD_URI_SAFE_ATTR,tn),Pe.FORBID_CONTENTS&&(ne===ae&&(ne=XL(ne)),Vi(ne,Pe.FORBID_CONTENTS,tn)),Ce&&(Q["#text"]=!0),We&&Vi(Q,["html","head","body"]),Q.table&&(Vi(Q,["tbody"]),delete ke.tbody),Pe.TRUSTED_TYPES_POLICY){if(typeof Pe.TRUSTED_TYPES_POLICY.createHTML!="function")throw WR('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Pe.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw WR('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');x=Pe.TRUSTED_TYPES_POLICY,k=x.createHTML("")}else x===void 0&&(x=Wat(p,r)),x!==null&&typeof k=="string"&&(k=x.createHTML(""));cu&&cu(Pe),pi=Pe}},ds=Vi({},["mi","mo","mn","ms","mtext"]),Nr=Vi({},["foreignobject","desc","title","annotation-xml"]),Br=Vi({},["title","style","font","a","script"]),Mn=Vi({},GU);Vi(Mn,XU),Vi(Mn,Tat);const hr=Vi({},YU);Vi(hr,Rat);const rn=function(Pe){let De=y(Pe);(!De||!De.tagName)&&(De={namespaceURI:gt,tagName:"template"});const Ne=o8(Pe.tagName),At=o8(De.tagName);return Mt[Pe.namespaceURI]?Pe.namespaceURI===Oe?De.namespaceURI===Ve?Ne==="svg":De.namespaceURI===nt?Ne==="svg"&&(At==="annotation-xml"||ds[At]):!!Mn[Ne]:Pe.namespaceURI===nt?De.namespaceURI===Ve?Ne==="math":De.namespaceURI===Oe?Ne==="math"&&Nr[At]:!!hr[Ne]:Pe.namespaceURI===Ve?De.namespaceURI===Oe&&!Nr[At]||De.namespaceURI===nt&&!ds[At]?!1:!hr[Ne]&&(Br[Ne]||!Mn[Ne]):!!(jn==="application/xhtml+xml"&&Mt[Pe.namespaceURI]):!1},sn=function(Pe){jR(e.removed,{element:Pe});try{Pe.parentNode.removeChild(Pe)}catch{Pe.remove()}},Kn=function(Pe,De){try{jR(e.removed,{attribute:De.getAttributeNode(Pe),from:De})}catch{jR(e.removed,{attribute:null,from:De})}if(De.removeAttribute(Pe),Pe==="is"&&!K[Pe])if(mt||Rt)try{sn(De)}catch{}else try{De.setAttribute(Pe,"")}catch{}},ai=function(Pe){let De,Ne;if(st)Pe=""+Pe;else{const bn=Lat(Pe,/^[\r\n\t ]+/);Ne=bn&&bn[0]}jn==="application/xhtml+xml"&>===Ve&&(Pe=''+Pe+"");const At=x?x.createHTML(Pe):Pe;if(gt===Ve)try{De=new f().parseFromString(At,jn)}catch{}if(!De||!De.documentElement){De=D.createDocument(gt,"template",null);try{De.documentElement.innerHTML=$t?k:At}catch{}}const En=De.body||De.documentElement;return Pe&&Ne&&En.insertBefore(s.createTextNode(Ne),En.childNodes[0]||null),gt===Ve?A.call(De,We?"html":"body")[0]:We?De.documentElement:En},Ki=function(Pe){return R.call(Pe.ownerDocument||Pe,Pe,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT,null,!1)},so=function(Pe){return Pe instanceof h&&(typeof Pe.nodeName!="string"||typeof Pe.textContent!="string"||typeof Pe.removeChild!="function"||!(Pe.attributes instanceof d)||typeof Pe.removeAttribute!="function"||typeof Pe.setAttribute!="function"||typeof Pe.namespaceURI!="string"||typeof Pe.insertBefore!="function"||typeof Pe.hasChildNodes!="function")},_o=function(Pe){return typeof l=="object"?Pe instanceof l:Pe&&typeof Pe=="object"&&typeof Pe.nodeType=="number"&&typeof Pe.nodeName=="string"},Cs=function(Pe,De,Ne){N[Pe]&&kat(N[Pe],At=>{At.call(e,De,Ne,pi)})},_u=function(Pe){let De;if(Cs("beforeSanitizeElements",Pe,null),so(Pe))return sn(Pe),!0;const Ne=tn(Pe.nodeName);if(Cs("uponSanitizeElement",Pe,{tagName:Ne,allowedTags:Q}),Pe.hasChildNodes()&&!_o(Pe.firstElementChild)&&(!_o(Pe.content)||!_o(Pe.content.firstElementChild))&&Od(/<[/\w]/g,Pe.innerHTML)&&Od(/<[/\w]/g,Pe.textContent))return sn(Pe),!0;if(!Q[Ne]||ke[Ne]){if(!ke[Ne]&&qs(Ne)&&(le.tagNameCheck instanceof RegExp&&Od(le.tagNameCheck,Ne)||le.tagNameCheck instanceof Function&&le.tagNameCheck(Ne)))return!1;if(Ce&&!ne[Ne]){const At=y(Pe)||Pe.parentNode,En=b(Pe)||Pe.childNodes;if(En&&At){const bn=En.length;for(let Yn=bn-1;Yn>=0;--Yn)At.insertBefore(m(En[Yn],!0),_(Pe))}}return sn(Pe),!0}return Pe instanceof c&&!rn(Pe)||(Ne==="noscript"||Ne==="noembed"||Ne==="noframes")&&Od(/<\/no(script|embed|frames)/i,Pe.innerHTML)?(sn(Pe),!0):(Ze&&Pe.nodeType===3&&(De=Pe.textContent,De=op(De,P," "),De=op(De,O," "),De=op(De,B," "),Pe.textContent!==De&&(jR(e.removed,{element:Pe.cloneNode()}),Pe.textContent=De)),Cs("afterSanitizeElements",Pe,null),!1)},yl=function(Pe,De,Ne){if(Ot&&(De==="id"||De==="name")&&(Ne in s||Ne in Pi))return!1;if(!(Ee&&!xe[De]&&Od(j,De))){if(!(me&&Od(z,De))){if(!K[De]||xe[De]){if(!(qs(Pe)&&(le.tagNameCheck instanceof RegExp&&Od(le.tagNameCheck,Pe)||le.tagNameCheck instanceof Function&&le.tagNameCheck(Pe))&&(le.attributeNameCheck instanceof RegExp&&Od(le.attributeNameCheck,De)||le.attributeNameCheck instanceof Function&&le.attributeNameCheck(De))||De==="is"&&le.allowCustomizedBuiltInElements&&(le.tagNameCheck instanceof RegExp&&Od(le.tagNameCheck,Ne)||le.tagNameCheck instanceof Function&&le.tagNameCheck(Ne))))return!1}else if(!Se[De]){if(!Od(X,op(Ne,Y,""))){if(!((De==="src"||De==="xlink:href"||De==="href")&&Pe!=="script"&&Dat(Ne,"data:")===0&&ue[Pe])){if(!(je&&!Od(H,op(Ne,Y,"")))){if(Ne)return!1}}}}}}return!0},qs=function(Pe){return Pe.indexOf("-")>0},Ks=function(Pe){let De,Ne,At,En;Cs("beforeSanitizeAttributes",Pe,null);const{attributes:bn}=Pe;if(!bn)return;const Yn={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:K};for(En=bn.length;En--;){De=bn[En];const{name:fr,namespaceURI:Ei}=De;if(Ne=fr==="value"?De.value:Eat(De.value),At=tn(fr),Yn.attrName=At,Yn.attrValue=Ne,Yn.keepAttr=!0,Yn.forceKeepAttr=void 0,Cs("uponSanitizeAttribute",Pe,Yn),Ne=Yn.attrValue,Yn.forceKeepAttr||(Kn(fr,Pe),!Yn.keepAttr))continue;if(!qe&&Od(/\/>/i,Ne)){Kn(fr,Pe);continue}Ze&&(Ne=op(Ne,P," "),Ne=op(Ne,O," "),Ne=op(Ne,B," "));const dg=tn(Pe.nodeName);if(yl(dg,At,Ne)){if(vt&&(At==="id"||At==="name")&&(Kn(fr,Pe),Ne=wn+Ne),x&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!Ei)switch(p.getAttributeType(dg,At)){case"TrustedHTML":{Ne=x.createHTML(Ne);break}case"TrustedScriptURL":{Ne=x.createScriptURL(Ne);break}}try{Ei?Pe.setAttributeNS(Ei,fr,Ne):Pe.setAttribute(fr,Ne),npe(e.removed)}catch{}}}Cs("afterSanitizeAttributes",Pe,null)},ma=function yn(Pe){let De;const Ne=Ki(Pe);for(Cs("beforeSanitizeShadowDOM",Pe,null);De=Ne.nextNode();)Cs("uponSanitizeShadowNode",De,null),!_u(De)&&(De.content instanceof o&&yn(De.content),Ks(De));Cs("afterSanitizeShadowDOM",Pe,null)};return e.sanitize=function(yn){let Pe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},De,Ne,At,En;if($t=!yn,$t&&(yn=""),typeof yn!="string"&&!_o(yn))if(typeof yn.toString=="function"){if(yn=yn.toString(),typeof yn!="string")throw WR("dirty is not a string, aborting")}else throw WR("toString is not a function");if(!e.isSupported)return yn;if(ut||mi(Pe),e.removed=[],typeof yn=="string"&&(ge=!1),ge){if(yn.nodeName){const fr=tn(yn.nodeName);if(!Q[fr]||ke[fr])throw WR("root node is forbidden and cannot be sanitized in-place")}}else if(yn instanceof l)De=ai(""),Ne=De.ownerDocument.importNode(yn,!0),Ne.nodeType===1&&Ne.nodeName==="BODY"||Ne.nodeName==="HTML"?De=Ne:De.appendChild(Ne);else{if(!mt&&!Ze&&!We&&yn.indexOf("<")===-1)return x&&Vt?x.createHTML(yn):yn;if(De=ai(yn),!De)return mt?null:Vt?k:""}De&&st&&sn(De.firstChild);const bn=Ki(ge?yn:De);for(;At=bn.nextNode();)_u(At)||(At.content instanceof o&&ma(At.content),Ks(At));if(ge)return yn;if(mt){if(Rt)for(En=E.call(De.ownerDocument);De.firstChild;)En.appendChild(De.firstChild);else En=De;return(K.shadowroot||K.shadowrootmode)&&(En=M.call(n,En,!0)),En}let Yn=We?De.outerHTML:De.innerHTML;return We&&Q["!doctype"]&&De.ownerDocument&&De.ownerDocument.doctype&&De.ownerDocument.doctype.name&&Od(hEe,De.ownerDocument.doctype.name)&&(Yn=" `+Yn),Ze&&(Yn=op(Yn,P," "),Yn=op(Yn,O," "),Yn=op(Yn,B," ")),x&&Vt?x.createHTML(Yn):Yn},e.setConfig=function(yn){mi(yn),ut=!0},e.clearConfig=function(){pi=null,ut=!1},e.isValidAttribute=function(yn,Pe,De){pi||mi({});const Ne=tn(yn),At=tn(Pe);return yl(Ne,At,De)},e.addHook=function(yn,Pe){typeof Pe=="function"&&(N[yn]=N[yn]||[],jR(N[yn],Pe))},e.removeHook=function(yn){if(N[yn])return npe(N[yn])},e.removeHooks=function(yn){N[yn]&&(N[yn]=[])},e.removeAllHooks=function(){N={}},e}var u_=fEe();u_.version;u_.isSupported;const pEe=u_.sanitize;u_.setConfig;u_.clearConfig;u_.isValidAttribute;const gEe=u_.addHook,mEe=u_.removeHook;u_.removeHooks;u_.removeAllHooks;var Pn;(function(i){i.inMemory="inmemory",i.vscode="vscode",i.internal="private",i.walkThrough="walkThrough",i.walkThroughSnippet="walkThroughSnippet",i.http="http",i.https="https",i.file="file",i.mailto="mailto",i.untitled="untitled",i.data="data",i.command="command",i.vscodeRemote="vscode-remote",i.vscodeRemoteResource="vscode-remote-resource",i.vscodeManagedRemoteResource="vscode-managed-remote-resource",i.vscodeUserData="vscode-userdata",i.vscodeCustomEditor="vscode-custom-editor",i.vscodeNotebookCell="vscode-notebook-cell",i.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",i.vscodeNotebookCellOutput="vscode-notebook-cell-output",i.vscodeInteractiveInput="vscode-interactive-input",i.vscodeSettings="vscode-settings",i.vscodeWorkspaceTrust="vscode-workspace-trust",i.vscodeTerminal="vscode-terminal",i.vscodeChatSesssion="vscode-chat-editor",i.webviewPanel="webview-panel",i.vscodeWebview="vscode-webview",i.extension="extension",i.vscodeFileResource="vscode-file",i.tmp="tmp",i.vsls="vsls",i.vscodeSourceControl="vscode-scm"})(Pn||(Pn={}));const $at="tkn";class zat{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._remoteResourcesPath=`/${Pn.vscodeRemoteResource}`}setPreferredWebSchema(e){this._preferredWebSchema=e}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(l){return Ln(l),e}const n=e.authority;let r=this._hosts[n];r&&r.indexOf(":")!==-1&&r.indexOf("[")===-1&&(r=`[${r}]`);const s=this._ports[n],o=this._connectionTokens[n];let a=`path=${encodeURIComponent(e.path)}`;return typeof o=="string"&&(a+=`&${$at}=${encodeURIComponent(o)}`),Jt.from({scheme:H1?this._preferredWebSchema:Pn.vscodeRemoteResource,authority:`${r}:${s}`,path:this._remoteResourcesPath,query:a})}}const _Ee=new zat;class hP{uriToBrowserUri(e){return e.scheme===Pn.vscodeRemote?_Ee.rewrite(e):e.scheme===Pn.file&&(Um||Frt&&Cf.origin===`${Pn.vscodeFileResource}://${hP.FALLBACK_AUTHORITY}`)?e.with({scheme:Pn.vscodeFileResource,authority:e.authority||hP.FALLBACK_AUTHORITY,query:null,fragment:null}):e}}hP.FALLBACK_AUTHORITY="vscode-app";const vEe=new hP;var lpe;(function(i){const e=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);i.CoopAndCoep=Object.freeze(e.get("3"));const n="vscode-coi";function r(o){let a;typeof o=="string"?a=new URL(o).searchParams:o instanceof URL?a=o.searchParams:Jt.isUri(o)&&(a=new URL(o.toString(!0)).searchParams);const l=a==null?void 0:a.get(n);if(l)return e.get(l)}i.getHeadersFromQuery=r;function s(o,a,l){if(!globalThis.crossOriginIsolated)return;const c=a&&l?"3":l?"2":"1";o instanceof URLSearchParams?o.set(n,c):o[n]=c}i.addSearchParam=s})(lpe||(lpe={}));const{getWindows:Vat}=function(){const i=[],e=new _e;return{onDidCreateWindow:e.event,registerWindow(n){i.push(n);const r=new Xe;return r.add(gn(()=>{const s=i.indexOf(n);s!==-1&&i.splice(s,1)})),e.fire({window:n,disposableStore:r}),r},getWindows(){return i}}}();function la(i){for(;i.firstChild;)i.firstChild.remove()}function Zse(i){var e;return(e=i==null?void 0:i.isConnected)!==null&&e!==void 0?e:!1}class Hat{constructor(e,n,r,s){this._node=e,this._type=n,this._handler=r,this._options=s||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function Be(i,e,n,r){return new Hat(i,e,n,r)}function bEe(i){return function(e){return i(new rh(e))}}function Uat(i){return function(e){return i(new yr(e))}}const As=function(e,n,r,s){let o=r;return n==="click"||n==="mousedown"?o=bEe(r):(n==="keydown"||n==="keypress"||n==="keyup")&&(o=Uat(r)),Be(e,n,o,s)},qat=function(e,n,r){const s=bEe(n);return Kat(e,s,r)};function Kat(i,e,n){return Be(i,Kp&&Yse.pointerEvents?ht.POINTER_DOWN:ht.MOUSE_DOWN,e,n)}let W9,mh;class QU{constructor(e,n=0){this._runner=e,this.priority=n,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){Ln(e)}}static sort(e,n){return n.priority-e.priority}}(function(){let i=[],e=null,n=!1,r=!1;const s=()=>{for(n=!1,e=i,i=[],r=!0;e.length>0;)e.sort(QU.sort),e.shift().execute();r=!1};mh=(o,a=0)=>{const l=new QU(o,a);return i.push(l),n||(n=!0,requestAnimationFrame(s)),l},W9=(o,a)=>{if(r){const l=new QU(o,a);return e.push(l),l}else return mh(o,a)}})();function c$(i){return i.ownerDocument.defaultView.getComputedStyle(i,null)}function FI(i){var e;const n=i.ownerDocument,r=(e=n.defaultView)===null||e===void 0?void 0:e.window;if(i!==n.body)return new bi(i.clientWidth,i.clientHeight);if(Kp&&(r!=null&&r.visualViewport))return new bi(r.visualViewport.width,r.visualViewport.height);if(r!=null&&r.innerWidth&&r.innerHeight)return new bi(r.innerWidth,r.innerHeight);if(n.body&&n.body.clientWidth&&n.body.clientHeight)return new bi(n.body.clientWidth,n.body.clientHeight);if(n.documentElement&&n.documentElement.clientWidth&&n.documentElement.clientHeight)return new bi(n.documentElement.clientWidth,n.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}class _s{static convertToPixels(e,n){return parseFloat(n)||0}static getDimension(e,n,r){const s=c$(e),o=s?s.getPropertyValue(n):"0";return _s.convertToPixels(e,o)}static getBorderLeftWidth(e){return _s.getDimension(e,"border-left-width","borderLeftWidth")}static getBorderRightWidth(e){return _s.getDimension(e,"border-right-width","borderRightWidth")}static getBorderTopWidth(e){return _s.getDimension(e,"border-top-width","borderTopWidth")}static getBorderBottomWidth(e){return _s.getDimension(e,"border-bottom-width","borderBottomWidth")}static getPaddingLeft(e){return _s.getDimension(e,"padding-left","paddingLeft")}static getPaddingRight(e){return _s.getDimension(e,"padding-right","paddingRight")}static getPaddingTop(e){return _s.getDimension(e,"padding-top","paddingTop")}static getPaddingBottom(e){return _s.getDimension(e,"padding-bottom","paddingBottom")}static getMarginLeft(e){return _s.getDimension(e,"margin-left","marginLeft")}static getMarginTop(e){return _s.getDimension(e,"margin-top","marginTop")}static getMarginRight(e){return _s.getDimension(e,"margin-right","marginRight")}static getMarginBottom(e){return _s.getDimension(e,"margin-bottom","marginBottom")}}class bi{constructor(e,n){this.width=e,this.height=n}with(e=this.width,n=this.height){return e!==this.width||n!==this.height?new bi(e,n):this}static is(e){return typeof e=="object"&&typeof e.height=="number"&&typeof e.width=="number"}static lift(e){return e instanceof bi?e:new bi(e.width,e.height)}static equals(e,n){return e===n?!0:!e||!n?!1:e.width===n.width&&e.height===n.height}}bi.None=new bi(0,0);function yEe(i){let e=i.offsetParent,n=i.offsetTop,r=i.offsetLeft;for(;(i=i.parentNode)!==null&&i!==i.ownerDocument.body&&i!==i.ownerDocument.documentElement;){n-=i.scrollTop;const s=wEe(i)?null:c$(i);s&&(r-=s.direction!=="rtl"?i.scrollLeft:-i.scrollLeft),i===e&&(r+=_s.getBorderLeftWidth(i),n+=_s.getBorderTopWidth(i),n+=i.offsetTop,r+=i.offsetLeft,e=i.offsetParent)}return{left:r,top:n}}function Gat(i,e,n){typeof e=="number"&&(i.style.width=`${e}px`),typeof n=="number"&&(i.style.height=`${n}px`)}function no(i){var e,n,r,s;const o=i.getBoundingClientRect();return{left:o.left+((n=(e=i.ownerDocument.defaultView)===null||e===void 0?void 0:e.scrollX)!==null&&n!==void 0?n:0),top:o.top+((s=(r=i.ownerDocument.defaultView)===null||r===void 0?void 0:r.scrollY)!==null&&s!==void 0?s:0),width:o.width,height:o.height}}function Xat(i){let e=i,n=1;do{const r=c$(e).zoom;r!=null&&r!=="1"&&(n*=r),e=e.parentElement}while(e!==null&&e!==e.ownerDocument.documentElement);return n}function dc(i){const e=_s.getMarginLeft(i)+_s.getMarginRight(i);return i.offsetWidth+e}function JU(i){const e=_s.getBorderLeftWidth(i)+_s.getBorderRightWidth(i),n=_s.getPaddingLeft(i)+_s.getPaddingRight(i);return i.offsetWidth-e-n}function Yat(i){const e=_s.getBorderTopWidth(i)+_s.getBorderBottomWidth(i),n=_s.getPaddingTop(i)+_s.getPaddingBottom(i);return i.offsetHeight-e-n}function gS(i){const e=_s.getMarginTop(i)+_s.getMarginBottom(i);return i.offsetHeight+e}function Ia(i,e){for(;i;){if(i===e)return!0;i=i.parentNode}return!1}function Zat(i,e,n){for(;i&&i.nodeType===i.ELEMENT_NODE;){if(i.classList.contains(e))return i;if(n){if(typeof n=="string"){if(i.classList.contains(n))return null}else if(i===n)return null}i=i.parentNode}return null}function eq(i,e,n){return!!Zat(i,e,n)}function wEe(i){return i&&!!i.host&&!!i.mode}function $9(i){return!!dx(i)}function dx(i){for(var e;i.parentNode;){if(i===((e=i.ownerDocument)===null||e===void 0?void 0:e.body))return null;i=i.parentNode}return wEe(i)?i:null}function xf(){let i=u$().activeElement;for(;i!=null&&i.shadowRoot;)i=i.shadowRoot.activeElement;return i}function u$(){var i;return(i=[document,...Vat().map(n=>n.document)].find(n=>n.hasFocus()))!==null&&i!==void 0?i:document}function _h(i=document.getElementsByTagName("head")[0],e){const n=document.createElement("style");return n.type="text/css",n.media="screen",e==null||e(n),i.appendChild(n),n}let tq=null;function CEe(){return tq||(tq=_h()),tq}function Qat(i){var e,n;return!((e=i==null?void 0:i.sheet)===null||e===void 0)&&e.rules?i.sheet.rules:!((n=i==null?void 0:i.sheet)===null||n===void 0)&&n.cssRules?i.sheet.cssRules:[]}function cJ(i,e,n=CEe()){!n||!e||n.sheet.insertRule(i+"{"+e+"}",0)}function cpe(i,e=CEe()){if(!e)return;const n=Qat(e),r=[];for(let s=0;s=0;s--)e.sheet.deleteRule(r[s])}function Qse(i){return typeof HTMLElement=="object"?i instanceof HTMLElement:i&&typeof i=="object"&&i.nodeType===1&&typeof i.nodeName=="string"}const ht={CLICK:"click",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",CHANGE:"change",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function Jat(i){const e=i;return!!(e&&typeof e.preventDefault=="function"&&typeof e.stopPropagation=="function")}const Nn={stop:(i,e)=>(i.preventDefault(),e&&i.stopPropagation(),i)};function elt(i){const e=[];for(let n=0;i&&i.nodeType===i.ELEMENT_NODE;n++)e[n]=i.scrollTop,i=i.parentNode;return e}function tlt(i,e){for(let n=0;i&&i.nodeType===i.ELEMENT_NODE;n++)i.scrollTop!==e[n]&&(i.scrollTop=e[n]),i=i.parentNode}class z9 extends Le{static hasFocusWithin(e){if(Qse(e)){const n=dx(e),r=n?n.activeElement:e.ownerDocument.activeElement;return Ia(r,e)}else return Ia(window.document.activeElement,window.document)}constructor(e){super(),this._onDidFocus=this._register(new _e),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new _e),this.onDidBlur=this._onDidBlur.event;let n=z9.hasFocusWithin(e),r=!1;const s=()=>{r=!1,n||(n=!0,this._onDidFocus.fire())},o=()=>{n&&(r=!0,window.setTimeout(()=>{r&&(r=!1,n=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{z9.hasFocusWithin(e)!==n&&(n?o():s())},this._register(Be(e,ht.FOCUS,s,!0)),this._register(Be(e,ht.BLUR,o,!0)),e instanceof HTMLElement&&(this._register(Be(e,ht.FOCUS_IN,()=>this._refreshStateHandler())),this._register(Be(e,ht.FOCUS_OUT,()=>this._refreshStateHandler())))}}function Gm(i){return new z9(i)}function He(i,...e){if(i.append(...e),e.length===1&&typeof e[0]!="string")return e[0]}function SEe(i,e){return i.insertBefore(e,i.firstChild),e}function ca(i,...e){i.innerText="",He(i,...e)}const nlt=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var fP;(function(i){i.HTML="http://www.w3.org/1999/xhtml",i.SVG="http://www.w3.org/2000/svg"})(fP||(fP={}));function xEe(i,e,n,...r){const s=nlt.exec(e);if(!s)throw new Error("Bad use of emmet");const o=s[1]||"div";let a;return i!==fP.HTML?a=document.createElementNS(i,o):a=document.createElement(o),s[3]&&(a.id=s[3]),s[4]&&(a.className=s[4].replace(/\./g," ").trim()),n&&Object.entries(n).forEach(([l,c])=>{typeof c>"u"||(/^on\w+$/.test(l)?a[l]=c:l==="selected"?c&&a.setAttribute(l,"true"):a.setAttribute(l,c))}),a.append(...r),a}function tt(i,e,...n){return xEe(fP.HTML,i,e,...n)}tt.SVG=function(i,e,...n){return xEe(fP.SVG,i,e,...n)};function ilt(i,...e){i?Jc(...e):Pl(...e)}function Jc(...i){for(const e of i)e.style.display="",e.removeAttribute("aria-hidden")}function Pl(...i){for(const e of i)e.style.display="none",e.setAttribute("aria-hidden","true")}function upe(i){const e=window.devicePixelRatio*i;return Math.max(1,Math.floor(e))/window.devicePixelRatio}function kEe(i){window.open(i,"_blank","noopener")}function rlt(i){const e=()=>{i(),n=mh(e)};let n=mh(e);return gn(()=>n.dispose())}_Ee.setPreferredWebSchema(/^https:/.test(window.location.href)?"https":"http");function f1(i){return i?`url('${vEe.uriToBrowserUri(i).toString(!0).replace(/'/g,"%27")}')`:"url('')"}function dpe(i){return`'${i.replace(/'/g,"%27")}'`}function MS(i,e){if(i!==void 0){const n=i.match(/^\s*var\((.+)\)$/);if(n){const r=n[1].split(",",2);return r.length===2&&(e=MS(r[1].trim(),e)),`var(${r[0]}, ${e})`}return i}return e}function slt(i,e=!1){const n=document.createElement("a");return gEe("afterSanitizeAttributes",r=>{for(const s of["href","src"])if(r.hasAttribute(s)){const o=r.getAttribute(s);if(s==="href"&&o.startsWith("#"))continue;if(n.href=o,!i.includes(n.protocol.replace(/:$/,""))){if(e&&s==="src"&&n.href.startsWith("data:"))continue;r.removeAttribute(s)}}}),gn(()=>{mEe("afterSanitizeAttributes")})}const olt=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]);class Y0 extends _e{constructor(){super(),this._subscriptions=new Xe,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(Be(window,"keydown",e=>{if(e.defaultPrevented)return;const n=new yr(e);if(!(n.keyCode===6&&e.repeat)){if(e.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(e.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(e.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(e.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else if(n.keyCode!==6)this._keyStatus.lastKeyPressed=void 0;else return;this._keyStatus.altKey=e.altKey,this._keyStatus.ctrlKey=e.ctrlKey,this._keyStatus.metaKey=e.metaKey,this._keyStatus.shiftKey=e.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=e,this.fire(this._keyStatus))}},!0)),this._subscriptions.add(Be(window,"keyup",e=>{e.defaultPrevented||(!e.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!e.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!e.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!e.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=e.altKey,this._keyStatus.ctrlKey=e.ctrlKey,this._keyStatus.metaKey=e.metaKey,this._keyStatus.shiftKey=e.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=e,this.fire(this._keyStatus)))},!0)),this._subscriptions.add(Be(document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),this._subscriptions.add(Be(document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),this._subscriptions.add(Be(document.body,"mousemove",e=>{e.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),this._subscriptions.add(Be(window,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return Y0.instance||(Y0.instance=new Y0),Y0.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class alt extends Le{constructor(e,n){super(),this.element=e,this.callbacks=n,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this._register(Be(this.element,ht.DRAG_ENTER,e=>{this.counter++,this.dragStartTime=e.timeStamp,this.callbacks.onDragEnter(e)})),this._register(Be(this.element,ht.DRAG_OVER,e=>{var n,r;e.preventDefault(),(r=(n=this.callbacks).onDragOver)===null||r===void 0||r.call(n,e,e.timeStamp-this.dragStartTime)})),this._register(Be(this.element,ht.DRAG_LEAVE,e=>{this.counter--,this.counter===0&&(this.dragStartTime=0,this.callbacks.onDragLeave(e))})),this._register(Be(this.element,ht.DRAG_END,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd(e)})),this._register(Be(this.element,ht.DROP,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop(e)}))}}const llt=/(?[\w\-]+)?(?:#(?[\w\-]+))?(?(?:\.(?:[\w\-]+))*)(?:@(?(?:[\w\_])+))?/;function Jo(i,...e){let n,r;Array.isArray(e[0])?(n={},r=e[0]):(n=e[0]||{},r=e[1]);const s=llt.exec(i);if(!s||!s.groups)throw new Error("Bad use of h");const o=s.groups.tag||"div",a=document.createElement(o);s.groups.id&&(a.id=s.groups.id);const l=[];if(s.groups.class)for(const u of s.groups.class.split("."))u!==""&&l.push(u);if(n.className!==void 0)for(const u of n.className.split("."))u!==""&&l.push(u);l.length>0&&(a.className=l.join(" "));const c={};if(s.groups.name&&(c[s.groups.name]=a),r)for(const u of r)u instanceof HTMLElement?a.appendChild(u):typeof u=="string"?a.append(u):"root"in u&&(Object.assign(c,u),a.appendChild(u.root));for(const[u,d]of Object.entries(n))if(u!=="className")if(u==="style")for(const[h,f]of Object.entries(d))a.style.setProperty(hpe(h),typeof f=="number"?f+"px":""+f);else u==="tabIndex"?a.tabIndex=d:a.setAttribute(hpe(u),d.toString());return c.root=a,c}function hpe(i){return i.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}class d${constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this._description=e.description}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const e=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const n of e){let r=n.kbExpr;this.precondition&&(r?r=ze.and(r,this.precondition):r=this.precondition);const s={id:this.id,weight:n.weight,args:n.args,when:r,primary:n.primary,secondary:n.secondary,win:n.win,linux:n.linux,mac:n.mac};Sc.registerKeybindingRule(s)}}si.registerCommand({id:this.id,handler:(e,n)=>this.runCommand(e,n),description:this._description})}_registerMenuItem(e){sa.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title,icon:e.icon,precondition:this.precondition},when:e.when,order:e.order})}}class BI extends d${constructor(){super(...arguments),this._implementations=[]}addImplementation(e,n,r,s){return this._implementations.push({priority:e,name:n,implementation:r,when:s}),this._implementations.sort((o,a)=>a.priority-o.priority),{dispose:()=>{for(let o=0;o{if(l.get(mn).contextMatchesRules(r??void 0))return s(l,a,n)})}runCommand(e,n){return Ho.runEditorCommand(e,n,this.precondition,(r,s,o)=>this.runEditorCommand(r,s,o))}}class kt extends Ho{static convertOptions(e){let n;Array.isArray(e.menuOpts)?n=e.menuOpts:e.menuOpts?n=[e.menuOpts]:n=[];function r(s){return s.menuId||(s.menuId=se.EditorContext),s.title||(s.title=e.label),s.when=ze.and(e.precondition,s.when),s}return Array.isArray(e.contextMenuOpts)?n.push(...e.contextMenuOpts.map(r)):e.contextMenuOpts&&n.push(r(e.contextMenuOpts)),e.menuOpts=n,e}constructor(e){super(kt.convertOptions(e)),this.label=e.label,this.alias=e.alias}runEditorCommand(e,n,r){return this.reportTelemetry(e,n),this.run(e,n,r||{})}reportTelemetry(e,n){e.get(_d).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class DEe extends kt{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,n){return this._implementations.push([e,n]),this._implementations.sort((r,s)=>s[0]-r[0]),{dispose:()=>{for(let r=0;r{var a,l;const c=o.get(mn),u=o.get(vd);if(!c.contextMatchesRules((a=this.desc.precondition)!==null&&a!==void 0?a:void 0)){u.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,(l=this.desc.precondition)===null||l===void 0?void 0:l.serialize());return}return this.runEditorCommand(o,s,...n)})}}function d_(i,e){si.registerCommand(i,function(n,...r){const s=n.get(hn),[o,a]=r;Ui(Jt.isUri(o)),Ui(ve.isIPosition(a));const l=n.get(Fr).getModel(o);if(l){const c=ve.lift(a);return s.invokeFunction(e,l,c,...r.slice(2))}return n.get(Ec).createModelReference(o).then(c=>new Promise((u,d)=>{try{const h=s.invokeFunction(e,c.object.textEditorModel,ve.lift(a),r.slice(2));u(h)}catch(h){d(h)}}).finally(()=>{c.dispose()}))})}function ct(i){return th.INSTANCE.registerEditorCommand(i),i}function rt(i){const e=new i;return th.INSTANCE.registerEditorAction(e),e}function EEe(i){return th.INSTANCE.registerEditorAction(i),i}function clt(i){th.INSTANCE.registerEditorAction(i)}function _i(i,e,n){th.INSTANCE.registerEditorContribution(i,e,n)}var j2;(function(i){function e(a){return th.INSTANCE.getEditorCommand(a)}i.getEditorCommand=e;function n(){return th.INSTANCE.getEditorActions()}i.getEditorActions=n;function r(){return th.INSTANCE.getEditorContributions()}i.getEditorContributions=r;function s(a){return th.INSTANCE.getEditorContributions().filter(l=>a.indexOf(l.id)>=0)}i.getSomeEditorContributions=s;function o(){return th.INSTANCE.getDiffEditorContributions()}i.getDiffEditorContributions=o})(j2||(j2={}));const ult={EditorCommonContributions:"editor.contributions"};class th{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,n,r){this.editorContributions.push({id:e,ctor:n,instantiation:r})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}}th.INSTANCE=new th;Kr.add(ult.EditorCommonContributions,th.INSTANCE);function L5(i){return i.register(),i}const IEe=L5(new BI({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:se.MenubarEditMenu,group:"1_do",title:L({},"&&Undo"),order:1},{menuId:se.CommandPalette,group:"",title:L("undo","Undo"),order:1}]}));L5(new LEe(IEe,{id:"default:undo",precondition:void 0}));const TEe=L5(new BI({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:se.MenubarEditMenu,group:"1_do",title:L({},"&&Redo"),order:2},{menuId:se.CommandPalette,group:"",title:L("redo","Redo"),order:1}]}));L5(new LEe(TEe,{id:"default:redo",precondition:void 0}));const dlt=L5(new BI({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:se.MenubarSelectionMenu,group:"1_basic",title:L({},"&&Select All"),order:1},{menuId:se.CommandPalette,group:"",title:L("selectAll","Select All"),order:1}]})),REe=Symbol("MicrotaskDelay");var $d=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},oN=function(i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=i[Symbol.asyncIterator],n;return e?e.call(i):(i=typeof __values=="function"?__values(i):i[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=i[o]&&function(a){return new Promise(function(l,c){a=i[o](a),s(l,c,a.done,a.value)})}}function s(o,a,l,c){Promise.resolve(c).then(function(u){o({value:u,done:l})},a)}};function uJ(i){return!!i&&typeof i.then=="function"}function go(i){const e=new Ns,n=i(e.token),r=new Promise((s,o)=>{const a=e.token.onCancellationRequested(()=>{a.dispose(),e.dispose(),o(new U1)});Promise.resolve(n).then(l=>{a.dispose(),e.dispose(),s(l)},l=>{a.dispose(),e.dispose(),o(l)})});return new class{cancel(){e.cancel()}then(s,o){return r.then(s,o)}catch(s){return this.then(void 0,s)}finally(s){return r.finally(s)}}}function h$(i,e,n){return new Promise((r,s)=>{const o=e.onCancellationRequested(()=>{o.dispose(),r(n)});i.then(r,s).finally(()=>o.dispose())})}class hlt{constructor(){this.isDisposed=!1,this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(e){if(this.isDisposed)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const n=()=>{if(this.queuedPromise=null,this.isDisposed)return;const r=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,r};this.queuedPromise=new Promise(r=>{this.activePromise.then(n,n).then(r)})}return new Promise((n,r)=>{this.queuedPromise.then(n,r)})}return this.activePromise=e(),new Promise((n,r)=>{this.activePromise.then(s=>{this.activePromise=null,n(s)},s=>{this.activePromise=null,r(s)})})}dispose(){this.isDisposed=!0}}const flt=(i,e)=>{let n=!0;const r=setTimeout(()=>{n=!1,e()},i);return{isTriggered:()=>n,dispose:()=>{clearTimeout(r),n=!1}}},plt=i=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,i())}),{isTriggered:()=>e,dispose:()=>{e=!1}}};class Rf{constructor(e){this.defaultDelay=e,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,n=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((s,o)=>{this.doResolve=s,this.doReject=o}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const s=this.task;return this.task=null,s()}}));const r=()=>{var s;this.deferred=null,(s=this.doResolve)===null||s===void 0||s.call(this,null)};return this.deferred=n===REe?plt(r):flt(n,r),this.completionPromise}isTriggered(){var e;return!!(!((e=this.deferred)===null||e===void 0)&&e.isTriggered())}cancel(){var e;this.cancelTimeout(),this.completionPromise&&((e=this.doReject)===null||e===void 0||e.call(this,new U1),this.completionPromise=null)}cancelTimeout(){var e;(e=this.deferred)===null||e===void 0||e.dispose(),this.deferred=null}dispose(){this.cancel()}}class AEe{constructor(e){this.delayer=new Rf(e),this.throttler=new hlt}trigger(e,n){return this.delayer.trigger(()=>this.throttler.queue(e),n)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function p1(i,e){return e?new Promise((n,r)=>{const s=setTimeout(()=>{o.dispose(),n()},i),o=e.onCancellationRequested(()=>{clearTimeout(s),o.dispose(),r(new U1)})}):go(n=>p1(i,n))}function g1(i,e=0,n){const r=setTimeout(()=>{i(),n&&s.dispose()},e),s=gn(()=>{clearTimeout(r),n==null||n.deleteAndLeak(s)});return n==null||n.add(s),s}function NEe(i,e=r=>!!r,n=null){let r=0;const s=i.length,o=()=>{if(r>=s)return Promise.resolve(n);const a=i[r++];return Promise.resolve(a()).then(c=>e(c)?Promise.resolve(c):o())};return o()}class Mf{constructor(e,n){this._token=-1,typeof e=="function"&&typeof n=="number"&&this.setIfNotSet(e,n)}dispose(){this.cancel()}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,n){this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},n)}setIfNotSet(e,n){this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},n))}}class D5{constructor(){this._token=-1}dispose(){this.cancel()}cancel(){this._token!==-1&&(clearInterval(this._token),this._token=-1)}cancelAndSet(e,n){this.cancel(),this._token=setInterval(()=>{e()},n)}}class Ji{constructor(e,n){this.timeoutToken=-1,this.runner=e,this.timeout=n,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1,this.runner&&this.doRun()}doRun(){var e;(e=this.runner)===null||e===void 0||e.call(this)}}let Z0;(function(){typeof requestIdleCallback!="function"||typeof cancelIdleCallback!="function"?Z0=i=>{S2e(()=>{if(e)return;const n=Date.now()+15;i(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,n-Date.now())}}))});let e=!1;return{dispose(){e||(e=!0)}}}:Z0=(i,e)=>{const n=requestIdleCallback(i,typeof e=="number"?{timeout:e}:void 0);let r=!1;return{dispose(){r||(r=!0,cancelIdleCallback(n))}}}})();class a8{constructor(e){this._didRun=!1,this._executor=()=>{try{this._value=e()}catch(n){this._error=n}finally{this._didRun=!0}},this._handle=Z0(()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class f${get isRejected(){var e;return((e=this.outcome)===null||e===void 0?void 0:e.outcome)===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,n)=>{this.completeCallback=e,this.errorCallback=n})}complete(e){return new Promise(n=>{this.completeCallback(e),this.outcome={outcome:0,value:e},n()})}error(e){return new Promise(n=>{this.errorCallback(e),this.outcome={outcome:1,value:e},n()})}cancel(){return this.error(new U1)}}var dJ;(function(i){function e(r){return $d(this,void 0,void 0,function*(){let s;const o=yield Promise.all(r.map(a=>a.then(l=>l,l=>{s||(s=l)})));if(typeof s<"u")throw s;return o})}i.settled=e;function n(r){return new Promise((s,o)=>$d(this,void 0,void 0,function*(){try{yield r(s,o)}catch(a){o(a)}}))}i.withAsyncBody=n})(dJ||(dJ={}));class zs{static fromArray(e){return new zs(n=>{n.emitMany(e)})}static fromPromise(e){return new zs(n=>$d(this,void 0,void 0,function*(){n.emitMany(yield e)}))}static fromPromises(e){return new zs(n=>$d(this,void 0,void 0,function*(){yield Promise.all(e.map(r=>$d(this,void 0,void 0,function*(){return n.emitOne(yield r)})))}))}static merge(e){return new zs(n=>$d(this,void 0,void 0,function*(){yield Promise.all(e.map(r=>{var s,o,a;return $d(this,void 0,void 0,function*(){var l,c,u,d;try{for(s=!0,o=oN(r);a=yield o.next(),l=a.done,!l;s=!0){d=a.value,s=!1;const h=d;n.emitOne(h)}}catch(h){c={error:h}}finally{try{!s&&!l&&(u=o.return)&&(yield u.call(o))}finally{if(c)throw c.error}}})}))}))}constructor(e){this._state=0,this._results=[],this._error=null,this._onStateChanged=new _e,queueMicrotask(()=>$d(this,void 0,void 0,function*(){const n={emitOne:r=>this.emitOne(r),emitMany:r=>this.emitMany(r),reject:r=>this.reject(r)};try{yield Promise.resolve(e(n)),this.resolve()}catch(r){this.reject(r)}finally{n.emitOne=void 0,n.emitMany=void 0,n.reject=void 0}}))}[Symbol.asyncIterator](){let e=0;return{next:()=>$d(this,void 0,void 0,function*(){do{if(this._state===2)throw this._error;if(e$d(this,void 0,void 0,function*(){var s,o,a,l;try{for(var c=!0,u=oN(e),d;d=yield u.next(),s=d.done,!s;c=!0){l=d.value,c=!1;const h=l;r.emitOne(n(h))}}catch(h){o={error:h}}finally{try{!c&&!s&&(a=u.return)&&(yield a.call(u))}finally{if(o)throw o.error}}}))}map(e){return zs.map(this,e)}static filter(e,n){return new zs(r=>$d(this,void 0,void 0,function*(){var s,o,a,l;try{for(var c=!0,u=oN(e),d;d=yield u.next(),s=d.done,!s;c=!0){l=d.value,c=!1;const h=l;n(h)&&r.emitOne(h)}}catch(h){o={error:h}}finally{try{!c&&!s&&(a=u.return)&&(yield a.call(u))}finally{if(o)throw o.error}}}))}filter(e){return zs.filter(this,e)}static coalesce(e){return zs.filter(e,n=>!!n)}coalesce(){return zs.coalesce(this)}static toPromise(e){var n,r,s,o,a,l,c;return $d(this,void 0,void 0,function*(){const u=[];try{for(n=!0,r=oN(e);s=yield r.next(),o=s.done,!o;n=!0){c=s.value,n=!1;const d=c;u.push(d)}}catch(d){a={error:d}}finally{try{!n&&!o&&(l=r.return)&&(yield l.call(r))}finally{if(a)throw a.error}}return u})}toPromise(){return zs.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}}zs.EMPTY=zs.fromArray([]);class glt extends zs{constructor(e,n){super(n),this._source=e}cancel(){this._source.cancel()}}function mlt(i){const e=new Ns,n=i(e.token);return new glt(e,r=>$d(this,void 0,void 0,function*(){var s,o,a,l;const c=e.token.onCancellationRequested(()=>{c.dispose(),e.dispose(),r.reject(new U1)});try{try{for(var u=!0,d=oN(n),h;h=yield d.next(),s=h.done,!s;u=!0){l=h.value,u=!1;const f=l;if(e.token.isCancellationRequested)return;r.emitOne(f)}}catch(f){o={error:f}}finally{try{!u&&!s&&(a=d.return)&&(yield a.call(d))}finally{if(o)throw o.error}}c.dispose(),e.dispose()}catch(f){c.dispose(),e.dispose(),r.reject(f)}}))}const _lt="$initialize";let fpe=!1;function hJ(i){H1&&(fpe||(fpe=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(i.message))}class vlt{constructor(e,n,r,s){this.vsWorker=e,this.req=n,this.method=r,this.args=s,this.type=0}}class ppe{constructor(e,n,r,s){this.vsWorker=e,this.seq=n,this.res=r,this.err=s,this.type=1}}class blt{constructor(e,n,r,s){this.vsWorker=e,this.req=n,this.eventName=r,this.arg=s,this.type=2}}class ylt{constructor(e,n,r){this.vsWorker=e,this.req=n,this.event=r,this.type=3}}class wlt{constructor(e,n){this.vsWorker=e,this.req=n,this.type=4}}class Clt{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,n){const r=String(++this._lastSentReq);return new Promise((s,o)=>{this._pendingReplies[r]={resolve:s,reject:o},this._send(new vlt(this._workerId,r,e,n))})}listen(e,n){let r=null;const s=new _e({onWillAddFirstListener:()=>{r=String(++this._lastSentReq),this._pendingEmitters.set(r,s),this._send(new blt(this._workerId,r,e,n))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(r),this._send(new wlt(this._workerId,r)),r=null}});return s.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}const n=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let r=e.err;e.err.$isError&&(r=new Error,r.name=e.err.name,r.message=e.err.message,r.stack=e.err.stack),n.reject(r);return}n.resolve(e.res)}_handleRequestMessage(e){const n=e.req;this._handler.handleMessage(e.method,e.args).then(s=>{this._send(new ppe(this._workerId,n,s,void 0))},s=>{s.detail instanceof Error&&(s.detail=$fe(s.detail)),this._send(new ppe(this._workerId,n,void 0,$fe(s)))})}_handleSubscribeEventMessage(e){const n=e.req,r=this._handler.handleEvent(e.eventName,e.arg)(s=>{this._send(new ylt(this._workerId,n,s))});this._pendingEvents.set(n,r)}_handleEventMessage(e){if(!this._pendingEmitters.has(e.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){if(!this._pendingEvents.has(e.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)}_send(e){const n=[];if(e.type===0)for(let r=0;r{this._protocol.handleMessage(d)},d=>{s==null||s(d)})),this._protocol=new Clt({sendMessage:(d,h)=>{this._worker.postMessage(d,h)},handleMessage:(d,h)=>{if(typeof r[d]!="function")return Promise.reject(new Error("Missing method "+d+" on main thread host."));try{return Promise.resolve(r[d].apply(r,h))}catch(f){return Promise.reject(f)}},handleEvent:(d,h)=>{if(PEe(d)){const f=r[d].call(r,h);if(typeof f!="function")throw new Error(`Missing dynamic event ${d} on main thread host.`);return f}if(MEe(d)){const f=r[d];if(typeof f!="function")throw new Error(`Missing event ${d} on main thread host.`);return f}throw new Error(`Malformed event name ${d}`)}}),this._protocol.setWorkerId(this._worker.getId());let o=null;const a=globalThis.require;typeof a<"u"&&typeof a.getConfig=="function"?o=a.getConfig():typeof globalThis.requirejs<"u"&&(o=globalThis.requirejs.s.contexts._.config);const l=Dse(r);this._onModuleLoaded=this._protocol.sendMessage(_lt,[this._worker.getId(),JSON.parse(JSON.stringify(o)),n,l]);const c=(d,h)=>this._request(d,h),u=(d,h)=>this._protocol.listen(d,h);this._lazyProxy=new Promise((d,h)=>{s=h,this._onModuleLoaded.then(f=>{d(xlt(f,c,u))},f=>{h(f),this._onError("Worker failed to load "+n,f)})})}getProxyObject(){return this._lazyProxy}_request(e,n){return new Promise((r,s)=>{this._onModuleLoaded.then(()=>{this._protocol.sendMessage(e,n).then(r,s)},s)})}_onError(e,n){console.error(e),console.info(n)}}function MEe(i){return i[0]==="o"&&i[1]==="n"&&nm(i.charCodeAt(2))}function PEe(i){return/^onDynamic/.test(i)&&nm(i.charCodeAt(9))}function xlt(i,e,n){const r=a=>function(){const l=Array.prototype.slice.call(arguments,0);return e(a,l)},s=a=>function(l){return n(a,l)},o={};for(const a of i){if(PEe(a)){o[a]=s(a);continue}if(MEe(a)){o[a]=n(a,void 0);continue}o[a]=r(a)}return o}function $v(i,e){var n;const r=globalThis.MonacoEnvironment;if(r!=null&&r.createTrustedTypesPolicy)try{return r.createTrustedTypesPolicy(i,e)}catch(s){Ln(s);return}try{return(n=window.trustedTypes)===null||n===void 0?void 0:n.createPolicy(i,e)}catch(s){Ln(s);return}}const gpe=$v("defaultWorkerFactory",{createScriptURL:i=>i});function klt(i){const e=globalThis.MonacoEnvironment;if(e){if(typeof e.getWorker=="function")return e.getWorker("workerMain.js",i);if(typeof e.getWorkerUrl=="function"){const n=e.getWorkerUrl("workerMain.js",i);return new Worker(gpe?gpe.createScriptURL(n):n,{name:i})}}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function Llt(i){return typeof i.then=="function"}class Dlt{constructor(e,n,r,s,o){this.id=n,this.label=r;const a=klt(r);Llt(a)?this.worker=a:this.worker=Promise.resolve(a),this.postMessage(e,[]),this.worker.then(l=>{l.onmessage=function(c){s(c.data)},l.onmessageerror=o,typeof l.addEventListener=="function"&&l.addEventListener("error",o)})}getId(){return this.id}postMessage(e,n){var r;(r=this.worker)===null||r===void 0||r.then(s=>{try{s.postMessage(e,n)}catch(o){Ln(o),Ln(new Error(`FAILED to post message to '${this.label}'-worker`,{cause:o}))}})}dispose(){var e;(e=this.worker)===null||e===void 0||e.then(n=>n.terminate()),this.worker=null}}class p${constructor(e){this._label=e,this._webWorkerFailedBeforeError=!1}create(e,n,r){const s=++p$.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new Dlt(e,s,this._label||"anonymous"+s,n,o=>{hJ(o),this._webWorkerFailedBeforeError=o,r(o)})}}p$.LAST_WORKER_ID=0;var Hs;(function(i){i[i.None=0]="None",i[i.Indent=1]="Indent",i[i.IndentOutdent=2]="IndentOutdent",i[i.Outdent=3]="Outdent"})(Hs||(Hs={}));class nq{constructor(e){if(this._neutralCharacter=null,this._neutralCharacterSearched=!1,this.open=e.open,this.close=e.close,this._inString=!0,this._inComment=!0,this._inRegEx=!0,Array.isArray(e.notIn))for(let n=0,r=e.notIn.length;n0&&i.getLanguageId(a-1)===s;)a--;return new Ilt(i,s,a,o+1,i.getStartOffset(a),i.getEndOffset(o))}class Ilt{constructor(e,n,r,s,o,a){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=n,this._firstTokenIndex=r,this._lastTokenIndex=s,this.firstCharOffset=o,this._lastCharOffset=a}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getActualLineContentBefore(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)}}function Vg(i){return(i&3)!==0}class ME{constructor(e){if(e.autoClosingPairs?this._autoClosingPairs=e.autoClosingPairs.map(n=>new nq(n)):e.brackets?this._autoClosingPairs=e.brackets.map(n=>new nq({open:n[0],close:n[1]})):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const n=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new nq({open:n.open,close:n.close||""}))}this._autoCloseBeforeForQuotes=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:ME.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:ME.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(e){return e?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}}ME.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=`;:.,=}])> `;ME.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS=`'"\`;:.,=}])> `;const mpe=typeof Buffer<"u";let iq;class m${static wrap(e){return mpe&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new m$(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return mpe?this.buffer.toString():(iq||(iq=new TextDecoder),iq.decode(this.buffer))}}function Tlt(i,e){return i[e+0]<<0>>>0|i[e+1]<<8>>>0}function Rlt(i,e,n){i[n+0]=e&255,e=e>>>8,i[n+1]=e&255}function pp(i,e){return i[e]*Math.pow(2,24)+i[e+1]*Math.pow(2,16)+i[e+2]*Math.pow(2,8)+i[e+3]}function gp(i,e,n){i[n+3]=e,e=e>>>8,i[n+2]=e,e=e>>>8,i[n+1]=e,e=e>>>8,i[n]=e}function _pe(i,e){return i[e]}function vpe(i,e,n){i[n]=e}let rq;function OEe(){return rq||(rq=new TextDecoder("UTF-16LE")),rq}let sq;function Alt(){return sq||(sq=new TextDecoder("UTF-16BE")),sq}let oq;function FEe(){return oq||(oq=x2e()?OEe():Alt()),oq}function Nlt(i,e,n){const r=new Uint16Array(i.buffer,e,n);return n>0&&(r[0]===65279||r[0]===65534)?Mlt(i,e,n):OEe().decode(r)}function Mlt(i,e,n){const r=[];let s=0;for(let o=0;o=this._capacity){this._flushBuffer(),this._completedStrings[this._completedStrings.length]=e;return}for(let r=0;r[a[0].toLowerCase(),a[1].toLowerCase()]);const n=[];for(let a=0;a{const[c,u]=a,[d,h]=l;return c===d||c===h||u===d||u===h},s=(a,l)=>{const c=Math.min(a,l),u=Math.max(a,l);for(let d=0;d0&&o.push({open:l,close:c})}return o}class Olt{constructor(e,n){this._richEditBracketsBrand=void 0;const r=Plt(n);this.brackets=r.map((s,o)=>new V9(e,o,s.open,s.close,Flt(s.open,s.close,r,o),Blt(s.open,s.close,r,o))),this.forwardRegex=jlt(this.brackets),this.reversedRegex=Wlt(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const s of this.brackets){for(const o of s.open)this.textIsBracket[o]=s,this.textIsOpenBracket[o]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,o.length);for(const o of s.close)this.textIsBracket[o]=s,this.textIsOpenBracket[o]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,o.length)}}}function BEe(i,e,n,r){for(let s=0,o=e.length;s=0&&r.push(l);for(const l of a.close)l.indexOf(i)>=0&&r.push(l)}}function jEe(i,e){return i.length-e.length}function _$(i){if(i.length<=1)return i;const e=[],n=new Set;for(const r of i)n.has(r)||(e.push(r),n.add(r));return e}function Flt(i,e,n,r){let s=[];s=s.concat(i),s=s.concat(e);for(let o=0,a=s.length;o=0;a--)s[o++]=r.charCodeAt(a);return FEe().decode(s)}let e=null,n=null;return function(s){return e!==s&&(e=s,n=i(e)),n}}();class Yh{static _findPrevBracketInText(e,n,r,s){const o=r.match(e);if(!o)return null;const a=r.length-(o.index||0),l=o[0].length,c=s+a;return new J(n,c-l+1,n,c+1)}static findPrevBracketInRange(e,n,r,s,o){const l=Jse(r).substring(r.length-o,r.length-s);return this._findPrevBracketInText(e,n,l,s)}static findNextBracketInText(e,n,r,s){const o=r.match(e);if(!o)return null;const a=o.index||0,l=o[0].length;if(l===0)return null;const c=s+a;return new J(n,c+1,n,c+1+l)}static findNextBracketInRange(e,n,r,s,o){const a=r.substring(s,o);return this.findNextBracketInText(e,n,a,s)}}class zlt{constructor(e){this._richEditBrackets=e}getElectricCharacters(){const e=[];if(this._richEditBrackets)for(const n of this._richEditBrackets.brackets)for(const r of n.close){const s=r.charAt(r.length-1);e.push(s)}return l1(e)}onElectricCharacter(e,n,r){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const s=n.findTokenIndexAtOffset(r-1);if(Vg(n.getStandardTokenType(s)))return null;const o=this._richEditBrackets.reversedRegex,a=n.getLineContent().substring(0,r-1)+e,l=Yh.findPrevBracketInRange(o,1,a,0,a.length);if(!l)return null;const c=a.substring(l.startColumn-1,l.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[c])return null;const d=n.getActualLineContentBefore(l.startColumn-1);return/^\s*$/.test(d)?{matchOpenBracket:c}:null}}function W3(i){return i.global&&(i.lastIndex=0),!0}class Vlt{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&W3(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&W3(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&W3(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&W3(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(e))}getIndentMetadata(e){let n=0;return this.shouldIncrease(e)&&(n+=1),this.shouldDecrease(e)&&(n+=2),this.shouldIndentNextLine(e)&&(n+=4),this.shouldIgnore(e)&&(n+=8),n}}class r2{constructor(e){e=e||{},e.brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach(n=>{const r=r2._createOpenBracketRegExp(n[0]),s=r2._createCloseBracketRegExp(n[1]);r&&s&&this._brackets.push({open:n[0],openRegExp:r,close:n[1],closeRegExp:s})}),this._regExpRules=e.onEnterRules||[]}onEnter(e,n,r,s){if(e>=3)for(let o=0,a=this._regExpRules.length;ou.reg?(u.reg.lastIndex=0,u.reg.test(u.text)):!0))return l.action}if(e>=2&&r.length>0&&s.length>0)for(let o=0,a=this._brackets.length;o=2&&r.length>0){for(let o=0,a=this._brackets.length;o"u"?n:o}function Ult(i){return i.replace(/[\[\]]/g,"")}const Ar=qn("languageService");class im{constructor(e,n=[],r=!1){this.ctor=e,this.staticArguments=n,this.supportsDelayedInstantiation=r}}const zEe=[];function oi(i,e,n){e instanceof im||(e=new im(e,[],!!n)),zEe.push([i,e])}function ype(){return zEe}const bs=Object.freeze({text:"text/plain",binary:"application/octet-stream",unknown:"application/unknown",markdown:"text/markdown",latex:"text/latex",uriList:"text/uri-list"}),b$={JSONContribution:"base.contributions.json"};function qlt(i){return i.length>0&&i.charAt(i.length-1)==="#"?i.substring(0,i.length-1):i}class Klt{constructor(){this._onDidChangeSchema=new _e,this.schemasById={}}registerSchema(e,n){this.schemasById[qlt(e)]=n,this._onDidChangeSchema.fire(e)}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}}const Glt=new Klt;Kr.add(b$.JSONContribution,Glt);const ag={Configuration:"base.contributions.configuration"},$3="vscode://schemas/settings/resourceLanguage",wpe=Kr.as(b$.JSONContribution);class Xlt{constructor(){this.overrideIdentifiers=new Set,this._onDidSchemaChange=new _e,this._onDidUpdateConfiguration=new _e,this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:L("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},wpe.registerSchema($3,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,n=!0){this.registerConfigurations([e],n)}registerConfigurations(e,n=!0){const r=new Set;this.doRegisterConfigurations(e,n,r),wpe.registerSchema($3,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:r})}registerDefaultConfigurations(e){const n=new Set;this.doRegisterDefaultConfigurations(e,n),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:n,defaultsOverrides:!0})}doRegisterDefaultConfigurations(e,n){var r;const s=[];for(const{overrides:o,source:a}of e)for(const l in o)if(n.add(l),m1.test(l)){const c=this.configurationDefaultsOverrides.get(l),u=(r=c==null?void 0:c.valuesSources)!==null&&r!==void 0?r:new Map;if(a)for(const p of Object.keys(o[l]))u.set(p,a);const d=Object.assign(Object.assign({},(c==null?void 0:c.value)||{}),o[l]);this.configurationDefaultsOverrides.set(l,{source:a,value:d,valuesSources:u});const h=Ult(l),f={type:"object",default:d,description:L("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",h),$ref:$3,defaultDefaultValue:d,source:zl(a)?void 0:a,defaultValueSource:a};s.push(...H9(l)),this.configurationProperties[l]=f,this.defaultLanguageConfigurationOverridesNode.properties[l]=f}else{this.configurationDefaultsOverrides.set(l,{value:o[l],source:a});const c=this.configurationProperties[l];c&&(this.updatePropertyDefaultValue(l,c),this.updateSchema(l,c))}this.doRegisterOverrideIdentifiers(s)}registerOverrideIdentifiers(e){this.doRegisterOverrideIdentifiers(e),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(e){for(const n of e)this.overrideIdentifiers.add(n);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,n,r){e.forEach(s=>{this.validateAndRegisterProperties(s,n,s.extensionInfo,s.restrictedProperties,void 0,r),this.configurationContributors.push(s),this.registerJSONConfiguration(s)})}validateAndRegisterProperties(e,n=!0,r,s,o=3,a){var l;o=Hu(e.scope)?o:e.scope;const c=e.properties;if(c)for(const d in c){const h=c[d];if(n&&Qlt(d,h)){delete c[d];continue}if(h.source=r,h.defaultDefaultValue=c[d].default,this.updatePropertyDefaultValue(d,h),m1.test(d)?h.scope=void 0:(h.scope=Hu(h.scope)?o:h.scope,h.restricted=Hu(h.restricted)?!!(s!=null&&s.includes(d)):h.restricted),c[d].hasOwnProperty("included")&&!c[d].included){this.excludedConfigurationProperties[d]=c[d],delete c[d];continue}else this.configurationProperties[d]=c[d],!((l=c[d].policy)===null||l===void 0)&&l.name&&this.policyConfigurations.set(c[d].policy.name,d);!c[d].deprecationMessage&&c[d].markdownDeprecationMessage&&(c[d].deprecationMessage=c[d].markdownDeprecationMessage),a.add(d)}const u=e.allOf;if(u)for(const d of u)this.validateAndRegisterProperties(d,n,r,s,o,a)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(e){const n=r=>{const s=r.properties;if(s)for(const a in s)this.updateSchema(a,s[a]);const o=r.allOf;o==null||o.forEach(n)};n(e)}updateSchema(e,n){switch(n.scope){case 1:break;case 2:break;case 6:break;case 3:break;case 4:break;case 5:this.resourceLanguageSettingsSchema.properties[e]=n;break}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const n=`[${e}]`,r={type:"object",description:L("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:L("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:$3};this.updatePropertyDefaultValue(n,r)}}registerOverridePropertyPatternKey(){L("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),L("overrideSettings.errorMessage","This setting does not support per-language configuration."),this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,n){const r=this.configurationDefaultsOverrides.get(e);let s=r==null?void 0:r.value,o=r==null?void 0:r.source;nu(s)&&(s=n.defaultDefaultValue,o=void 0),nu(s)&&(s=Zlt(n.type)),n.default=s,n.defaultValueSource=o}}const VEe="\\[([^\\]]+)\\]",Cpe=new RegExp(VEe,"g"),Ylt=`^(${VEe})+$`,m1=new RegExp(Ylt);function H9(i){const e=[];if(m1.test(i)){let n=Cpe.exec(i);for(;n!=null&&n.length;){const r=n[1].trim();r&&e.push(r),n=Cpe.exec(i)}}return l1(e)}function Zlt(i){switch(Array.isArray(i)?i[0]:i){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const l8=new Xlt;Kr.add(ag.Configuration,l8);function Qlt(i,e){var n,r,s,o;return i.trim()?m1.test(i)?L("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",i):l8.getConfigurationProperties()[i]!==void 0?L("config.property.duplicate","Cannot register '{0}'. This property is already registered.",i):!((n=e.policy)===null||n===void 0)&&n.name&&l8.getPolicyConfigurations().get((r=e.policy)===null||r===void 0?void 0:r.name)!==void 0?L("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",i,(s=e.policy)===null||s===void 0?void 0:s.name,l8.getPolicyConfigurations().get((o=e.policy)===null||o===void 0?void 0:o.name)):null:L("config.property.empty","Cannot register an empty property")}const Jlt={ModesRegistry:"editor.modesRegistry"};class ect{constructor(){this._onDidChangeLanguages=new _e,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(e){return this._languages.push(e),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let n=0,r=this._languages.length;n{const c=new Set;return{info:new ict(this,l,c),closing:c}}),o=new qfe(l=>{const c=new Set,u=new Set;return{info:new rct(this,l,c,u),opening:c,openingColorized:u}});for(const[l,c]of r){const u=s.get(l),d=o.get(c);u.closing.add(d.info),d.opening.add(u.info)}const a=n.colorizedBracketPairs?Spe(n.colorizedBracketPairs):r.filter(l=>!(l[0]==="<"&&l[1]===">"));for(const[l,c]of a){const u=s.get(l),d=o.get(c);u.closing.add(d.info),d.openingColorized.add(u.info),d.opening.add(u.info)}this._openingBrackets=new Map([...s.cachedValues].map(([l,c])=>[l,c.info])),this._closingBrackets=new Map([...o.cachedValues].map(([l,c])=>[l,c.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(e){return this._openingBrackets.get(e)}getClosingBracketInfo(e){return this._closingBrackets.get(e)}getBracketInfo(e){return this.getOpeningBracketInfo(e)||this.getClosingBracketInfo(e)}}function Spe(i){return i.filter(([e,n])=>e!==""&&n!=="")}class HEe{constructor(e,n){this.config=e,this.bracketText=n}get languageId(){return this.config.languageId}}class ict extends HEe{constructor(e,n,r){super(e,n),this.openedBrackets=r,this.isOpeningBracket=!0}}class rct extends HEe{constructor(e,n,r,s){super(e,n),this.openingBrackets=r,this.openingColorizedBrackets=s,this.isOpeningBracket=!1}closes(e){return e.config!==this.config?!1:this.openingBrackets.has(e)}closesColorized(e){return e.config!==this.config?!1:this.openingColorizedBrackets.has(e)}getOpeningBrackets(){return[...this.openingBrackets]}}var sct=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},xpe=function(i,e){return function(n,r){e(n,r,i)}};class aq{constructor(e){this.languageId=e}affects(e){return this.languageId?this.languageId===e:!0}}const dr=qn("languageConfigurationService");let pJ=class extends Le{constructor(e,n){super(),this.configurationService=e,this.languageService=n,this._registry=this._register(new cct),this.onDidChangeEmitter=this._register(new _e),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const r=new Set(Object.values(gJ));this._register(this.configurationService.onDidChangeConfiguration(s=>{const o=s.change.keys.some(l=>r.has(l)),a=s.change.overrides.filter(([l,c])=>c.some(u=>r.has(u))).map(([l])=>l);if(o)this.configurations.clear(),this.onDidChangeEmitter.fire(new aq(void 0));else for(const l of a)this.languageService.isRegisteredLanguageId(l)&&(this.configurations.delete(l),this.onDidChangeEmitter.fire(new aq(l)))})),this._register(this._registry.onDidChange(s=>{this.configurations.delete(s.languageId),this.onDidChangeEmitter.fire(new aq(s.languageId))}))}register(e,n,r){return this._registry.register(e,n,r)}getLanguageConfiguration(e){let n=this.configurations.get(e);return n||(n=oct(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,n)),n}};pJ=sct([xpe(0,ei),xpe(1,Ar)],pJ);function oct(i,e,n,r){let s=e.getLanguageConfiguration(i);if(!s){if(!r.isRegisteredLanguageId(i))return new $2(i,{});s=new $2(i,{})}const o=act(s.languageId,n),a=qEe([s.underlyingConfig,o]);return new $2(s.languageId,a)}const gJ={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function act(i,e){const n=e.getValue(gJ.brackets,{overrideIdentifier:i}),r=e.getValue(gJ.colorizedBracketPairs,{overrideIdentifier:i});return{brackets:kpe(n),colorizedBracketPairs:kpe(r)}}function kpe(i){if(Array.isArray(i))return i.map(e=>{if(!(!Array.isArray(e)||e.length!==2))return[e[0],e[1]]}).filter(e=>!!e)}function UEe(i,e,n){const r=i.getLineContent(e);let s=ar(r);return s.length>n-1&&(s=s.substring(0,n-1)),s}function W2(i,e,n){i.tokenization.forceTokenization(e);const r=i.tokenization.getLineTokens(e),s=typeof n>"u"?i.getLineMaxColumn(e)-1:n-1;return g$(r,s)}class lct{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,n){const r=new Lpe(e,n,++this._order);return this._entries.push(r),this._resolved=null,gn(()=>{for(let s=0;se.configuration)))}}function qEe(i){let e={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const n of i)e={comments:n.comments||e.comments,brackets:n.brackets||e.brackets,wordPattern:n.wordPattern||e.wordPattern,indentationRules:n.indentationRules||e.indentationRules,onEnterRules:n.onEnterRules||e.onEnterRules,autoClosingPairs:n.autoClosingPairs||e.autoClosingPairs,surroundingPairs:n.surroundingPairs||e.surroundingPairs,autoCloseBefore:n.autoCloseBefore||e.autoCloseBefore,folding:n.folding||e.folding,colorizedBracketPairs:n.colorizedBracketPairs||e.colorizedBracketPairs,__electricCharacterSupport:n.__electricCharacterSupport||e.__electricCharacterSupport};return e}class Lpe{constructor(e,n,r){this.configuration=e,this.priority=n,this.order=r}static cmp(e,n){return e.priority===n.priority?e.order-n.order:e.priority-n.priority}}class Dpe{constructor(e){this.languageId=e}}class cct extends Le{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,this._register(this.register(ad,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(e,n,r=0){let s=this._entries.get(e);s||(s=new lct(e),this._entries.set(e,s));const o=s.register(n,r);return this._onDidChange.fire(new Dpe(e)),gn(()=>{o.dispose(),this._onDidChange.fire(new Dpe(e))})}getLanguageConfiguration(e){const n=this._entries.get(e);return(n==null?void 0:n.getResolvedConfiguration())||null}}class $2{constructor(e,n){this.languageId=e,this.underlyingConfig=n,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new r2(this.underlyingConfig):null,this.comments=$2._handleComments(this.underlyingConfig),this.characterPair=new ME(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||Tse,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new Vlt(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new nct(e,this.underlyingConfig)}getWordDefinition(){return D2e(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new Olt(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new zlt(this.brackets)),this._electricCharacter}onEnter(e,n,r,s){return this._onEnterSupport?this._onEnterSupport.onEnter(e,n,r,s):null}getAutoClosingPairs(){return new Elt(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(e){return this.characterPair.getAutoCloseBeforeSet(e)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const n=e.comments;if(!n)return null;const r={};if(n.lineComment&&(r.lineCommentToken=n.lineComment),n.blockComment){const[s,o]=n.blockComment;r.blockCommentStartToken=s,r.blockCommentEndToken=o}return r}}oi(dr,pJ,1);class Kb{constructor(e,n,r,s){this.originalStart=e,this.originalLength=n,this.modifiedStart=r,this.modifiedLength=s}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}function KEe(i){return y$(i,0)}function y$(i,e){switch(typeof i){case"object":return i===null?Q0(349,e):Array.isArray(i)?dct(i,e):hct(i,e);case"string":return eoe(i,e);case"boolean":return uct(i,e);case"number":return Q0(i,e);case"undefined":return Q0(937,e);default:return Q0(617,e)}}function Q0(i,e){return(e<<5)-e+i|0}function uct(i,e){return Q0(i?433:863,e)}function eoe(i,e){e=Q0(149417,e);for(let n=0,r=i.length;ny$(r,n),e)}function hct(i,e){return e=Q0(181387,e),Object.keys(i).sort().reduce((n,r)=>(n=eoe(r,n),y$(i[r],n)),e)}function lq(i,e,n=32){const r=n-e,s=~((1<>>r)>>>0}function Epe(i,e=0,n=i.byteLength,r=0){for(let s=0;sn.toString(16).padStart(2,"0")).join(""):fct((i>>>0).toString(16),e/4)}class w${constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const n=e.length;if(n===0)return;const r=this._buff;let s=this._buffLen,o=this._leftoverHighSurrogate,a,l;for(o!==0?(a=o,l=-1,o=0):(a=e.charCodeAt(0),l=0);;){let c=a;if(xo(a))if(l+1>>6,e[n++]=128|(r&63)>>>0):r<65536?(e[n++]=224|(r&61440)>>>12,e[n++]=128|(r&4032)>>>6,e[n++]=128|(r&63)>>>0):(e[n++]=240|(r&1835008)>>>18,e[n++]=128|(r&258048)>>>12,e[n++]=128|(r&4032)>>>6,e[n++]=128|(r&63)>>>0),n>=64&&(this._step(),n-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),n}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),zR(this._h0)+zR(this._h1)+zR(this._h2)+zR(this._h3)+zR(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,Epe(this._buff,this._buffLen),this._buffLen>56&&(this._step(),Epe(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=w$._bigBlock32,n=this._buffDV;for(let h=0;h<64;h+=4)e.setUint32(h,n.getUint32(h,!1),!1);for(let h=64;h<320;h+=4)e.setUint32(h,lq(e.getUint32(h-12,!1)^e.getUint32(h-32,!1)^e.getUint32(h-56,!1)^e.getUint32(h-64,!1),1),!1);let r=this._h0,s=this._h1,o=this._h2,a=this._h3,l=this._h4,c,u,d;for(let h=0;h<80;h++)h<20?(c=s&o|~s&a,u=1518500249):h<40?(c=s^o^a,u=1859775393):h<60?(c=s&o|s&a|o&a,u=2400959708):(c=s^o^a,u=3395469782),d=lq(r,5)+c+l+u+e.getUint32(h*4,!1)&4294967295,l=a,a=o,o=lq(s,30),s=r,r=d;this._h0=this._h0+r&4294967295,this._h1=this._h1+s&4294967295,this._h2=this._h2+o&4294967295,this._h3=this._h3+a&4294967295,this._h4=this._h4+l&4294967295}}w$._bigBlock32=new DataView(new ArrayBuffer(320));class Ipe{constructor(e){this.source=e}getElements(){const e=this.source,n=new Int32Array(e.length);for(let r=0,s=e.length;r0||this.m_modifiedCount>0)&&this.m_changes.push(new Kb(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,n){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,n),this.m_originalCount++}AddModifiedElement(e,n){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,n),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class cm{constructor(e,n,r=null){this.ContinueProcessingPredicate=r,this._originalSequence=e,this._modifiedSequence=n;const[s,o,a]=cm._getElements(e),[l,c,u]=cm._getElements(n);this._hasStrings=a&&u,this._originalStringElements=s,this._originalElementsOrHash=o,this._modifiedStringElements=l,this._modifiedElementsOrHash=c,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&typeof e[0]=="string"}static _getElements(e){const n=e.getElements();if(cm._isStringArray(n)){const r=new Int32Array(n.length);for(let s=0,o=n.length;s=e&&s>=r&&this.ElementsAreEqual(n,s);)n--,s--;if(e>n||r>s){let h;return r<=s?(YL.Assert(e===n+1,"originalStart should only be one more than originalEnd"),h=[new Kb(e,0,r,s-r+1)]):e<=n?(YL.Assert(r===s+1,"modifiedStart should only be one more than modifiedEnd"),h=[new Kb(e,n-e+1,r,0)]):(YL.Assert(e===n+1,"originalStart should only be one more than originalEnd"),YL.Assert(r===s+1,"modifiedStart should only be one more than modifiedEnd"),h=[]),h}const a=[0],l=[0],c=this.ComputeRecursionPoint(e,n,r,s,a,l,o),u=a[0],d=l[0];if(c!==null)return c;if(!o[0]){const h=this.ComputeDiffRecursive(e,u,r,d,o);let f=[];return o[0]?f=[new Kb(u+1,n-(u+1)+1,d+1,s-(d+1)+1)]:f=this.ComputeDiffRecursive(u+1,n,d+1,s,o),this.ConcatenateChanges(h,f)}return[new Kb(e,n-e+1,r,s-r+1)]}WALKTRACE(e,n,r,s,o,a,l,c,u,d,h,f,p,g,m,_,b,y){let x=null,k=null,D=new Tpe,R=n,E=r,A=p[0]-_[0]-s,M=-1073741824,N=this.m_forwardHistory.length-1;do{const P=A+e;P===R||P=0&&(u=this.m_forwardHistory[N],e=u[0],R=1,E=u.length-1)}while(--N>=-1);if(x=D.getReverseChanges(),y[0]){let P=p[0]+1,O=_[0]+1;if(x!==null&&x.length>0){const B=x[x.length-1];P=Math.max(P,B.getOriginalEnd()),O=Math.max(O,B.getModifiedEnd())}k=[new Kb(P,f-P+1,O,m-O+1)]}else{D=new Tpe,R=a,E=l,A=p[0]-_[0]-c,M=1073741824,N=b?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const P=A+o;P===R||P=d[P+1]?(h=d[P+1]-1,g=h-A-c,h>M&&D.MarkNextChange(),M=h+1,D.AddOriginalElement(h+1,g+1),A=P+1-o):(h=d[P-1],g=h-A-c,h>M&&D.MarkNextChange(),M=h,D.AddModifiedElement(h+1,g+1),A=P-1-o),N>=0&&(d=this.m_reverseHistory[N],o=d[0],R=1,E=d.length-1)}while(--N>=-1);k=D.getChanges()}return this.ConcatenateChanges(x,k)}ComputeRecursionPoint(e,n,r,s,o,a,l){let c=0,u=0,d=0,h=0,f=0,p=0;e--,r--,o[0]=0,a[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const g=n-e+(s-r),m=g+1,_=new Int32Array(m),b=new Int32Array(m),y=s-r,x=n-e,k=e-r,D=n-s,E=(x-y)%2===0;_[y]=e,b[x]=n,l[0]=!1;for(let A=1;A<=g/2+1;A++){let M=0,N=0;d=this.ClipDiagonalBound(y-A,A,y,m),h=this.ClipDiagonalBound(y+A,A,y,m);for(let O=d;O<=h;O+=2){O===d||OM+N&&(M=c,N=u),!E&&Math.abs(O-x)<=A-1&&c>=b[O])return o[0]=c,a[0]=u,B<=b[O]&&A<=1448?this.WALKTRACE(y,d,h,k,x,f,p,D,_,b,c,n,o,u,s,a,E,l):null}const P=(M-e+(N-r)-A)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(M,P))return l[0]=!0,o[0]=M,a[0]=N,P>0&&A<=1448?this.WALKTRACE(y,d,h,k,x,f,p,D,_,b,c,n,o,u,s,a,E,l):(e++,r++,[new Kb(e,n-e+1,r,s-r+1)]);f=this.ClipDiagonalBound(x-A,A,x,m),p=this.ClipDiagonalBound(x+A,A,x,m);for(let O=f;O<=p;O+=2){O===f||O=b[O+1]?c=b[O+1]-1:c=b[O-1],u=c-(O-x)-D;const B=c;for(;c>e&&u>r&&this.ElementsAreEqual(c,u);)c--,u--;if(b[O]=c,E&&Math.abs(O-y)<=A&&c<=_[O])return o[0]=c,a[0]=u,B>=_[O]&&A<=1448?this.WALKTRACE(y,d,h,k,x,f,p,D,_,b,c,n,o,u,s,a,E,l):null}if(A<=1447){let O=new Int32Array(h-d+2);O[0]=y-d+1,ZL.Copy2(_,d,O,1,h-d+1),this.m_forwardHistory.push(O),O=new Int32Array(p-f+2),O[0]=x-f+1,ZL.Copy2(b,f,O,1,p-f+1),this.m_reverseHistory.push(O)}}return this.WALKTRACE(y,d,h,k,x,f,p,D,_,b,c,n,o,u,s,a,E,l)}PrettifyChanges(e){for(let n=0;n0,l=r.modifiedLength>0;for(;r.originalStart+r.originalLength=0;n--){const r=e[n];let s=0,o=0;if(n>0){const h=e[n-1];s=h.originalStart+h.originalLength,o=h.modifiedStart+h.modifiedLength}const a=r.originalLength>0,l=r.modifiedLength>0;let c=0,u=this._boundaryScore(r.originalStart,r.originalLength,r.modifiedStart,r.modifiedLength);for(let h=1;;h++){const f=r.originalStart-h,p=r.modifiedStart-h;if(fu&&(u=m,c=h)}r.originalStart-=c,r.modifiedStart-=c;const d=[null];if(n>0&&this.ChangesOverlap(e[n-1],e[n],d)){e[n-1]=d[0],e.splice(n,1),n++;continue}}if(this._hasStrings)for(let n=1,r=e.length;n0&&p>c&&(c=p,u=h,d=f)}return c>0?[u,d]:null}_contiguousSequenceScore(e,n,r){let s=0;for(let o=0;o=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,n){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(n>0){const r=e+n;if(this._OriginalIsBoundary(r-1)||this._OriginalIsBoundary(r))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,n){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(n>0){const r=e+n;if(this._ModifiedIsBoundary(r-1)||this._ModifiedIsBoundary(r))return!0}return!1}_boundaryScore(e,n,r,s){const o=this._OriginalRegionIsBoundary(e,n)?1:0,a=this._ModifiedRegionIsBoundary(r,s)?1:0;return o+a}ConcatenateChanges(e,n){const r=[];if(e.length===0||n.length===0)return n.length>0?n:e;if(this.ChangesOverlap(e[e.length-1],n[0],r)){const s=new Array(e.length+n.length-1);return ZL.Copy(e,0,s,0,e.length-1),s[e.length-1]=r[0],ZL.Copy(n,1,s,e.length,n.length-1),s}else{const s=new Array(e.length+n.length);return ZL.Copy(e,0,s,0,e.length),ZL.Copy(n,0,s,e.length,n.length),s}}ChangesOverlap(e,n,r){if(YL.Assert(e.originalStart<=n.originalStart,"Left change is not less than or equal to right change"),YL.Assert(e.modifiedStart<=n.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=n.originalStart||e.modifiedStart+e.modifiedLength>=n.modifiedStart){const s=e.originalStart;let o=e.originalLength;const a=e.modifiedStart;let l=e.modifiedLength;return e.originalStart+e.originalLength>=n.originalStart&&(o=n.originalStart+n.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=n.modifiedStart&&(l=n.modifiedStart+n.modifiedLength-e.modifiedStart),r[0]=new Kb(s,o,a,l),!0}else return r[0]=null,!1}ClipDiagonalBound(e,n,r,s){if(e>=0&&e255?255:i|0}function QL(i){return i<0?0:i>4294967295?4294967295:i|0}class gct{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,n){e=QL(e);const r=this.values,s=this.prefixSum,o=n.length;return o===0?!1:(this.values=new Uint32Array(r.length+o),this.values.set(r.subarray(0,e),0),this.values.set(r.subarray(e),e+o),this.values.set(n,e),e-1=0&&this.prefixSum.set(s.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,n){return e=QL(e),n=QL(n),this.values[e]===n?!1:(this.values[e]=n,e-1=r.length)return!1;const o=r.length-e;return n>=o&&(n=o),n===0?!1:(this.values=new Uint32Array(r.length-n),this.values.set(r.subarray(0,e),0),this.values.set(r.subarray(e+n),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(s.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=QL(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let n=this.prefixSumValidIndex[0]+1;n===0&&(this.prefixSum[0]=this.values[0],n++),e>=this.values.length&&(e=this.values.length-1);for(let r=n;r<=e;r++)this.prefixSum[r]=this.prefixSum[r-1]+this.values[r];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let n=0,r=this.values.length-1,s=0,o=0,a=0;for(;n<=r;)if(s=n+(r-n)/2|0,o=this.prefixSum[s],a=o-this.values[s],e=o)n=s+1;else break;return new GEe(s,e-a)}}class mct{constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),e===0?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const n=this._indexBySum[e],r=n>0?this._prefixSum[n-1]:0;return new GEe(n,e-r)}removeValues(e,n){this._values.splice(e,n),this._invalidate(e)}insertValues(e,n){this._values=GW(this._values,e,n),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,n=this._values.length;e0?this._prefixSum[e-1]:0;this._prefixSum[e]=s+r;for(let o=0;o=0&&e<256?this._asciiMap[e]=r:this._map.set(e,r)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class q9{constructor(){this._actual=new WI(0)}add(e){this._actual.set(e,1)}has(e){return this._actual.get(e)===1}clear(){return this._actual.clear()}}class vct{constructor(e,n,r){const s=new Uint8Array(e*n);for(let o=0,a=e*n;on&&(n=c),l>r&&(r=l),u>r&&(r=u)}n++,r++;const s=new vct(r,n,0);for(let o=0,a=e.length;o=this._maxCharCode?0:this._states.get(e,n)}}let cq=null;function yct(){return cq===null&&(cq=new bct([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),cq}let VR=null;function wct(){if(VR===null){VR=new WI(0);const i=` <>'"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…`;for(let n=0;ns);if(s>0){const l=n.charCodeAt(s-1),c=n.charCodeAt(a);(l===40&&c===41||l===91&&c===93||l===123&&c===125)&&a--}return{range:{startLineNumber:r,startColumn:s+1,endLineNumber:r,endColumn:a+2},url:n.substring(s,a+1)}}static computeLinks(e,n=yct()){const r=wct(),s=[];for(let o=1,a=e.getLineCount();o<=a;o++){const l=e.getLineContent(o),c=l.length;let u=0,d=0,h=0,f=1,p=!1,g=!1,m=!1,_=!1;for(;u=0?(s+=r?1:-1,s<0?s=e.length-1:s%=e.length,e[s]):null}}mJ.INSTANCE=new mJ;class Sct extends WI{constructor(e){super(0);for(let n=0,r=e.length;n(e.hasOwnProperty(n)||(e[n]=i(n)),e[n])}const vh=xct(i=>new Sct(i));var hd;(function(i){i[i.Left=1]="Left",i[i.Center=2]="Center",i[i.Right=4]="Right",i[i.Full=7]="Full"})(hd||(hd={}));var z2;(function(i){i[i.Left=1]="Left",i[i.Right=2]="Right"})(z2||(z2={}));var ou;(function(i){i[i.Inline=1]="Inline",i[i.Gutter=2]="Gutter"})(ou||(ou={}));var Mp;(function(i){i[i.Both=0]="Both",i[i.Right=1]="Right",i[i.Left=2]="Left",i[i.None=3]="None"})(Mp||(Mp={}));class c8{get originalIndentSize(){return this._indentSizeIsTabSize?"tabSize":this.indentSize}constructor(e){this._textModelResolvedOptionsBrand=void 0,this.tabSize=Math.max(1,e.tabSize|0),e.indentSize==="tabSize"?(this.indentSize=this.tabSize,this._indentSizeIsTabSize=!0):(this.indentSize=Math.max(1,e.indentSize|0),this._indentSizeIsTabSize=!1),this.insertSpaces=!!e.insertSpaces,this.defaultEOL=e.defaultEOL|0,this.trimAutoWhitespace=!!e.trimAutoWhitespace,this.bracketPairColorizationOptions=e.bracketPairColorizationOptions}equals(e){return this.tabSize===e.tabSize&&this._indentSizeIsTabSize===e._indentSizeIsTabSize&&this.indentSize===e.indentSize&&this.insertSpaces===e.insertSpaces&&this.defaultEOL===e.defaultEOL&&this.trimAutoWhitespace===e.trimAutoWhitespace&&od(this.bracketPairColorizationOptions,e.bracketPairColorizationOptions)}createChangeEvent(e){return{tabSize:this.tabSize!==e.tabSize,indentSize:this.indentSize!==e.indentSize,insertSpaces:this.insertSpaces!==e.insertSpaces,trimAutoWhitespace:this.trimAutoWhitespace!==e.trimAutoWhitespace}}}class pP{constructor(e,n){this._findMatchBrand=void 0,this.range=e,this.matches=n}}function kct(i){return i&&typeof i.read=="function"}class uq{constructor(e,n,r,s,o,a){this.identifier=e,this.range=n,this.text=r,this.forceMoveMarkers=s,this.isAutoWhitespaceEdit=o,this._isTracked=a}}class Lct{constructor(e,n,r){this.regex=e,this.wordSeparators=n,this.simpleSearch=r}}class Dct{constructor(e,n,r){this.reverseEdits=e,this.changes=n,this.trimAutoWhitespaceLineNumbers=r}}function Ect(i){return!i.isTooLargeForSyncing()&&!i.isForSimpleWidget}const Ict=999;class MC{constructor(e,n,r,s){this.searchString=e,this.isRegex=n,this.matchCase=r,this.wordSeparators=s}parseSearchRequest(){if(this.searchString==="")return null;let e;this.isRegex?e=Tct(this.searchString):e=this.searchString.indexOf(` `)>=0;let n=null;try{n=X2e(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch{return null}if(!n)return null;let r=!this.isRegex&&!e;return r&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(r=this.matchCase),new Lct(n,this.wordSeparators?vh(this.wordSeparators):null,r?this.searchString:null)}}function Tct(i){if(!i||i.length===0)return!1;for(let e=0,n=i.length;e=n)break;const s=i.charCodeAt(e);if(s===110||s===114||s===87)return!0}}return!1}function UC(i,e,n){if(!n)return new pP(i,null);const r=[];for(let s=0,o=e.length;s>0);n[o]>=e?s=o-1:n[o+1]>=e?(r=o,s=o):r=o+1}return r+1}}class z3{static findMatches(e,n,r,s,o){const a=n.parseSearchRequest();return a?a.regex.multiline?this._doFindMatchesMultiline(e,r,new s2(a.wordSeparators,a.regex),s,o):this._doFindMatchesLineByLine(e,r,a,s,o):[]}static _getMultilineMatchRange(e,n,r,s,o,a){let l,c=0;s?(c=s.findLineFeedCountBeforeOffset(o),l=n+o+c):l=n+o;let u;if(s){const p=s.findLineFeedCountBeforeOffset(o+a.length)-c;u=l+a.length+p}else u=l+a.length;const d=e.getPositionAt(l),h=e.getPositionAt(u);return new J(d.lineNumber,d.column,h.lineNumber,h.column)}static _doFindMatchesMultiline(e,n,r,s,o){const a=e.getOffsetAt(n.getStartPosition()),l=e.getValueInRange(n,1),c=e.getEOL()===`\r `?new Rpe(l):null,u=[];let d=0,h;for(r.reset(0);h=r.next(l);)if(u[d++]=UC(this._getMultilineMatchRange(e,a,l,c,h.index,h[0]),h,s),d>=o)return u;return u}static _doFindMatchesLineByLine(e,n,r,s,o){const a=[];let l=0;if(n.startLineNumber===n.endLineNumber){const u=e.getLineContent(n.startLineNumber).substring(n.startColumn-1,n.endColumn-1);return l=this._findMatchesInLine(r,u,n.startLineNumber,n.startColumn-1,l,a,s,o),a}const c=e.getLineContent(n.startLineNumber).substring(n.startColumn-1);l=this._findMatchesInLine(r,c,n.startLineNumber,n.startColumn-1,l,a,s,o);for(let u=n.startLineNumber+1;u=c))return o;return o}const d=new s2(e.wordSeparators,e.regex);let h;d.reset(0);do if(h=d.next(n),h&&(a[o++]=UC(new J(r,h.index+1+s,r,h.index+1+h[0].length+s),h,l),o>=c))return o;while(h);return o}static findNextMatch(e,n,r,s){const o=n.parseSearchRequest();if(!o)return null;const a=new s2(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindNextMatchMultiline(e,r,a,s):this._doFindNextMatchLineByLine(e,r,a,s)}static _doFindNextMatchMultiline(e,n,r,s){const o=new ve(n.lineNumber,1),a=e.getOffsetAt(o),l=e.getLineCount(),c=e.getValueInRange(new J(o.lineNumber,o.column,l,e.getLineMaxColumn(l)),1),u=e.getEOL()===`\r `?new Rpe(c):null;r.reset(n.column-1);const d=r.next(c);return d?UC(this._getMultilineMatchRange(e,a,c,u,d.index,d[0]),d,s):n.lineNumber!==1||n.column!==1?this._doFindNextMatchMultiline(e,new ve(1,1),r,s):null}static _doFindNextMatchLineByLine(e,n,r,s){const o=e.getLineCount(),a=n.lineNumber,l=e.getLineContent(a),c=this._findFirstMatchInLine(r,l,a,n.column,s);if(c)return c;for(let u=1;u<=o;u++){const d=(a+u-1)%o,h=e.getLineContent(d+1),f=this._findFirstMatchInLine(r,h,d+1,1,s);if(f)return f}return null}static _findFirstMatchInLine(e,n,r,s,o){e.reset(s-1);const a=e.next(n);return a?UC(new J(r,a.index+1,r,a.index+1+a[0].length),a,o):null}static findPreviousMatch(e,n,r,s){const o=n.parseSearchRequest();if(!o)return null;const a=new s2(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindPreviousMatchMultiline(e,r,a,s):this._doFindPreviousMatchLineByLine(e,r,a,s)}static _doFindPreviousMatchMultiline(e,n,r,s){const o=this._doFindMatchesMultiline(e,new J(1,1,n.lineNumber,n.column),r,s,10*Ict);if(o.length>0)return o[o.length-1];const a=e.getLineCount();return n.lineNumber!==a||n.column!==e.getLineMaxColumn(a)?this._doFindPreviousMatchMultiline(e,new ve(a,e.getLineMaxColumn(a)),r,s):null}static _doFindPreviousMatchLineByLine(e,n,r,s){const o=e.getLineCount(),a=n.lineNumber,l=e.getLineContent(a).substring(0,n.column-1),c=this._findLastMatchInLine(r,l,a,s);if(c)return c;for(let u=1;u<=o;u++){const d=(o+a-u-1)%o,h=e.getLineContent(d+1),f=this._findLastMatchInLine(r,h,d+1,s);if(f)return f}return null}static _findLastMatchInLine(e,n,r,s){let o=null,a;for(e.reset(0);a=e.next(n);)o=UC(new J(r,a.index+1,r,a.index+1+a[0].length),a,s);return o}}function Rct(i,e,n,r,s){if(r===0)return!0;const o=e.charCodeAt(r-1);if(i.get(o)!==0||o===13||o===10)return!0;if(s>0){const a=e.charCodeAt(r);if(i.get(a)!==0)return!0}return!1}function Act(i,e,n,r,s){if(r+s===n)return!0;const o=e.charCodeAt(r+s);if(i.get(o)!==0||o===13||o===10)return!0;if(s>0){const a=e.charCodeAt(r+s-1);if(i.get(a)!==0)return!0}return!1}function toe(i,e,n,r,s){return Rct(i,e,n,r,s)&&Act(i,e,n,r,s)}class s2{constructor(e,n){this._wordSeparators=e,this._searchRegex=n,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const n=e.length;let r;do{if(this._prevMatchStartIndex+this._prevMatchLength===n||(r=this._searchRegex.exec(e),!r))return null;const s=r.index,o=r[0].length;if(s===this._prevMatchStartIndex&&o===this._prevMatchLength){if(o===0){B9(e,n,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=s,this._prevMatchLength=o,!this._wordSeparators||toe(this._wordSeparators,e,n,s,o))return r}while(r);return null}}class noe{static computeUnicodeHighlights(e,n,r){const s=r?r.startLineNumber:1,o=r?r.endLineNumber:e.getLineCount(),a=new Ape(n),l=a.getCandidateCodePoints();let c;l==="allNonBasicAscii"?c=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):c=new RegExp(`${Nct(Array.from(l))}`,"g");const u=new s2(null,c),d=[];let h=!1,f,p=0,g=0,m=0;e:for(let _=s,b=o;_<=b;_++){const y=e.getLineContent(_),x=y.length;u.reset(0);do if(f=u.next(y),f){let k=f.index,D=f.index+f[0].length;if(k>0){const M=y.charCodeAt(k-1);xo(M)&&k--}if(D+1=1e3){h=!0;break e}d.push(new J(_,k+1,_,D+1))}}while(f)}return{ranges:d,hasMore:h,ambiguousCharacterCount:p,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:m}}static computeUnicodeHighlightReason(e,n){const r=new Ape(n);switch(r.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const o=e.codePointAt(0),a=r.ambiguousCharacters.getPrimaryConfusable(o),l=cx.getLocales().filter(c=>!cx.getInstance(new Set([...n.allowedLocales,c])).isAmbiguous(o));return{kind:0,confusableWith:String.fromCodePoint(a),notAmbiguousInLocales:l}}case 1:return{kind:2}}}}function Nct(i,e){return`[${dd(i.map(r=>String.fromCodePoint(r)).join(""))}]`}class Ape{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=cx.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const n of Nm.codePoints)Npe(String.fromCodePoint(n))||e.add(n);if(this.options.ambiguousCharacters)for(const n of this.ambiguousCharacters.getConfusableCodePoints())e.add(n);for(const n of this.allowedCodePoints)e.delete(n);return e}shouldHighlightNonBasicASCII(e,n){const r=e.codePointAt(0);if(this.allowedCodePoints.has(r))return 0;if(this.options.nonBasicASCII)return 1;let s=!1,o=!1;if(n)for(const a of n){const l=a.codePointAt(0),c=k5(a);s=s||c,!c&&!this.ambiguousCharacters.isAmbiguous(l)&&!Nm.isInvisibleCharacter(l)&&(o=!0)}return!s&&o?0:this.options.invisibleCharacters&&!Npe(e)&&Nm.isInvisibleCharacter(r)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(r)?3:0}}function Npe(i){return i===" "||i===` `||i===" "}class u8{constructor(e,n,r){this.changes=e,this.moves=n,this.hitTimeout=r}}class XEe{constructor(e,n){this.lineRangeMapping=e,this.changes=n}}class Un{static addRange(e,n){let r=0;for(;rn))return new Un(e,n)}static ofLength(e){return new Un(0,e)}constructor(e,n){if(this.start=e,this.endExclusive=n,e>n)throw new Vs(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new Un(this.start+e,this.endExclusive+e)}deltaStart(e){return new Un(this.start+e,this.endExclusive)}deltaEnd(e){return new Un(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(e){return this.start===e.start&&this.endExclusive===e.endExclusive}containsRange(e){return this.start<=e.start&&e.endExclusive<=this.endExclusive}contains(e){return this.start<=e&&e=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let n=this.start;ne.toString()).join(", ")}intersectsStrict(e){let n=0;for(;ne+n.length,0)}}function G9(i,e,n){const r=Mct(i,e);if(r!==-1)return i[r]}function Mct(i,e,n=i.length-1){for(let r=n;r>=0;r--){const s=i[r];if(e(s))return r}return-1}function gP(i,e){const n=mP(i,e);return n===-1?void 0:i[n]}function mP(i,e,n=0,r=i.length){let s=n,o=r;for(;s0&&(n=s)}return n}function Oct(i,e){if(i.length===0)return;let n=i[0];for(let r=1;r=0&&(n=s)}return n}function Fct(i,e){return YEe(i,(n,r)=>-e(n,r))}function Bct(i,e){if(i.length===0)return-1;let n=0;for(let r=1;r0&&(n=r)}return n}function jct(i,e){for(const n of i){const r=e(n);if(r!==void 0)return r}}let Qn=class Gb{static fromRange(e){return new Gb(e.startLineNumber,e.endLineNumber)}static joinMany(e){if(e.length===0)return[];let n=new um(e[0].slice());for(let r=1;rn)throw new Vs(`startLineNumber ${e} cannot be after endLineNumberExclusive ${n}`);this.startLineNumber=e,this.endLineNumberExclusive=n}contains(e){return this.startLineNumber<=e&&es.endLineNumberExclusive>=e.startLineNumber),r=mP(this._normalizedRanges,s=>s.startLineNumber<=e.endLineNumberExclusive)+1;if(n===r)this._normalizedRanges.splice(n,0,e);else if(n===r-1){const s=this._normalizedRanges[n];this._normalizedRanges[n]=s.join(e)}else{const s=this._normalizedRanges[n].join(this._normalizedRanges[r-1]).join(e);this._normalizedRanges.splice(n,r-n,s)}}contains(e){const n=gP(this._normalizedRanges,r=>r.startLineNumber<=e);return!!n&&n.endLineNumberExclusive>e}getUnion(e){if(this._normalizedRanges.length===0)return e;if(e._normalizedRanges.length===0)return this;const n=[];let r=0,s=0,o=null;for(;r=a.startLineNumber?o=new Qn(o.startLineNumber,Math.max(o.endLineNumberExclusive,a.endLineNumberExclusive)):(n.push(o),o=a)}return o!==null&&n.push(o),new um(n)}subtractFrom(e){const n=_P(this._normalizedRanges,a=>a.endLineNumberExclusive>=e.startLineNumber),r=mP(this._normalizedRanges,a=>a.startLineNumber<=e.endLineNumberExclusive)+1;if(n===r)return new um([e]);const s=[];let o=e.startLineNumber;for(let a=n;ao&&s.push(new Qn(o,l.startLineNumber)),o=l.endLineNumberExclusive}return oe.toString()).join(", ")}getIntersection(e){const n=[];let r=0,s=0;for(;rn.delta(e)))}}class Xm{static inverse(e,n,r){const s=[];let o=1,a=1;for(const c of e){const u=new bh(new Qn(o,c.original.startLineNumber),new Qn(a,c.modified.startLineNumber),void 0);u.modified.isEmpty||s.push(u),o=c.original.endLineNumberExclusive,a=c.modified.endLineNumberExclusive}const l=new bh(new Qn(o,n+1),new Qn(a,r+1),void 0);return l.modified.isEmpty||s.push(l),s}constructor(e,n){this.original=e,this.modified=n}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new Xm(this.modified,this.original)}join(e){return new Xm(this.original.join(e.original),this.modified.join(e.modified))}}class bh extends Xm{constructor(e,n,r){super(e,n),this.innerChanges=r}flip(){var e;return new bh(this.modified,this.original,(e=this.innerChanges)===null||e===void 0?void 0:e.map(n=>n.flip()))}}class _1{constructor(e,n){this.originalRange=e,this.modifiedRange=n}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}flip(){return new _1(this.modifiedRange,this.originalRange)}}const Wct=3;class $ct{computeDiff(e,n,r){var s;const a=new Hct(e,n,{maxComputationTime:r.maxComputationTimeMs,shouldIgnoreTrimWhitespace:r.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),l=[];let c=null;for(const u of a.changes){let d;u.originalEndLineNumber===0?d=new Qn(u.originalStartLineNumber+1,u.originalStartLineNumber+1):d=new Qn(u.originalStartLineNumber,u.originalEndLineNumber+1);let h;u.modifiedEndLineNumber===0?h=new Qn(u.modifiedStartLineNumber+1,u.modifiedStartLineNumber+1):h=new Qn(u.modifiedStartLineNumber,u.modifiedEndLineNumber+1);let f=new bh(d,h,(s=u.charChanges)===null||s===void 0?void 0:s.map(p=>new _1(new J(p.originalStartLineNumber,p.originalStartColumn,p.originalEndLineNumber,p.originalEndColumn),new J(p.modifiedStartLineNumber,p.modifiedStartColumn,p.modifiedEndLineNumber,p.modifiedEndColumn))));c&&(c.modified.endLineNumberExclusive===f.modified.startLineNumber||c.original.endLineNumberExclusive===f.original.startLineNumber)&&(f=new bh(c.original.join(f.original),c.modified.join(f.modified),c.innerChanges&&f.innerChanges?c.innerChanges.concat(f.innerChanges):void 0),l.pop()),l.push(f),c=f}return uP(()=>aEe(l,(u,d)=>d.original.startLineNumber-u.original.endLineNumberExclusive===d.modified.startLineNumber-u.modified.endLineNumberExclusive&&u.original.endLineNumberExclusive(e===10?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[n]},${this._columns[n]})`).join(", ")+"]"}_assertIndex(e,n){if(e<0||e>=n.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return e===-1?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),this._charCodes[e]===10?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return e===-1?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),this._charCodes[e]===10?1:this._columns[e]+1)}}class V2{constructor(e,n,r,s,o,a,l,c){this.originalStartLineNumber=e,this.originalStartColumn=n,this.originalEndLineNumber=r,this.originalEndColumn=s,this.modifiedStartLineNumber=o,this.modifiedStartColumn=a,this.modifiedEndLineNumber=l,this.modifiedEndColumn=c}static createFromDiffChange(e,n,r){const s=n.getStartLineNumber(e.originalStart),o=n.getStartColumn(e.originalStart),a=n.getEndLineNumber(e.originalStart+e.originalLength-1),l=n.getEndColumn(e.originalStart+e.originalLength-1),c=r.getStartLineNumber(e.modifiedStart),u=r.getStartColumn(e.modifiedStart),d=r.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),h=r.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new V2(s,o,a,l,c,u,d,h)}}function Vct(i){if(i.length<=1)return i;const e=[i[0]];let n=e[0];for(let r=1,s=i.length;r0&&n.originalLength<20&&n.modifiedLength>0&&n.modifiedLength<20&&o()){const p=r.createCharSequence(e,n.originalStart,n.originalStart+n.originalLength-1),g=s.createCharSequence(e,n.modifiedStart,n.modifiedStart+n.modifiedLength-1);if(p.getElements().length>0&&g.getElements().length>0){let m=ZEe(p,g,o,!0).changes;l&&(m=Vct(m)),f=[];for(let _=0,b=m.length;_1&&m>1;){const _=f.charCodeAt(g-2),b=p.charCodeAt(m-2);if(_!==b)break;g--,m--}(g>1||m>1)&&this._pushTrimWhitespaceCharChange(s,o+1,1,g,a+1,1,m)}{let g=vJ(f,1),m=vJ(p,1);const _=f.length+1,b=p.length+1;for(;g<_&&m!0;const e=Date.now();return()=>Date.now()-e{r.push(ea.fromOffsetPairs(s?s.getEndExclusives():_m.zero,o?o.getStarts():new _m(n,(s?s.seq2Range.endExclusive-s.seq1Range.endExclusive:0)+n)))}),r}static fromOffsetPairs(e,n){return new ea(new Un(e.offset1,n.offset1),new Un(e.offset2,n.offset2))}constructor(e,n){this.seq1Range=e,this.seq2Range=n}swap(){return new ea(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(e){return new ea(this.seq1Range.join(e.seq1Range),this.seq2Range.join(e.seq2Range))}delta(e){return e===0?this:new ea(this.seq1Range.delta(e),this.seq2Range.delta(e))}deltaStart(e){return e===0?this:new ea(this.seq1Range.deltaStart(e),this.seq2Range.deltaStart(e))}deltaEnd(e){return e===0?this:new ea(this.seq1Range.deltaEnd(e),this.seq2Range.deltaEnd(e))}intersect(e){const n=this.seq1Range.intersect(e.seq1Range),r=this.seq2Range.intersect(e.seq2Range);if(!(!n||!r))return new ea(n,r)}getStarts(){return new _m(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new _m(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}class _m{constructor(e,n){this.offset1=e,this.offset2=n}toString(){return`${this.offset1} <-> ${this.offset2}`}}_m.zero=new _m(0,0);_m.max=new _m(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);class vP{isValid(){return!0}}vP.instance=new vP;class Uct{constructor(e){if(this.timeout=e,this.startTime=Date.now(),this.valid=!0,e<=0)throw new Vs("timeout must be positive")}isValid(){if(!(Date.now()-this.startTime0&&m>0&&a.get(g-1,m-1)===3&&(y+=l.get(g-1,m-1)),y+=s?s(g,m):1):y=-1;const x=Math.max(_,b,y);if(x===y){const k=g>0&&m>0?l.get(g-1,m-1):0;l.set(g,m,k+1),a.set(g,m,3)}else x===_?(l.set(g,m,0),a.set(g,m,1)):x===b&&(l.set(g,m,0),a.set(g,m,2));o.set(g,m,x)}const c=[];let u=e.length,d=n.length;function h(g,m){(g+1!==u||m+1!==d)&&c.push(new ea(new Un(g+1,u),new Un(m+1,d))),u=g,d=m}let f=e.length-1,p=n.length-1;for(;f>=0&&p>=0;)a.get(f,p)===3?(h(f,p),f--,p--):a.get(f,p)===1?f--:p--;return h(-1,-1),c.reverse(),new gv(c,!1)}}class QEe{compute(e,n,r=vP.instance){if(e.length===0||n.length===0)return gv.trivial(e,n);const s=e,o=n;function a(m,_){for(;ms.length||k>o.length)continue;const D=a(x,k);c.set(d,D);const R=x===b?u.get(d+1):u.get(d-1);if(u.set(d,D!==x?new Ope(R,x,k,D-x):R),c.get(d)===s.length&&c.get(d)-d===o.length)break e}}let h=u.get(d);const f=[];let p=s.length,g=o.length;for(;;){const m=h?h.x+h.length:0,_=h?h.y+h.length:0;if((m!==p||_!==g)&&f.push(new ea(new Un(m,p),new Un(_,g))),!h)break;p=h.x,g=h.y,h=h.prev}return f.reverse(),new gv(f,!1)}}class Ope{constructor(e,n,r,s){this.prev=e,this.x=n,this.y=r,this.length=s}}class Kct{constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,n){if(e<0){if(e=-e-1,e>=this.negativeArr.length){const r=this.negativeArr;this.negativeArr=new Int32Array(r.length*2),this.negativeArr.set(r)}this.negativeArr[e]=n}else{if(e>=this.positiveArr.length){const r=this.positiveArr;this.positiveArr=new Int32Array(r.length*2),this.positiveArr.set(r)}this.positiveArr[e]=n}}}class Gct{constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,n){e<0?(e=-e-1,this.negativeArr[e]=n):this.positiveArr[e]=n}}var Fpe,Bpe;class Xct{constructor(e,n){this.uri=e,this.value=n}}function Yct(i){return Array.isArray(i)}class Va{constructor(e,n){if(this[Fpe]="ResourceMap",e instanceof Va)this.map=new Map(e.map),this.toKey=n??Va.defaultToKey;else if(Yct(e)){this.map=new Map,this.toKey=n??Va.defaultToKey;for(const[r,s]of e)this.set(r,s)}else this.map=new Map,this.toKey=e??Va.defaultToKey}set(e,n){return this.map.set(this.toKey(e),new Xct(e,n)),this}get(e){var n;return(n=this.map.get(this.toKey(e)))===null||n===void 0?void 0:n.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,n){typeof n<"u"&&(e=e.bind(n));for(const[r,s]of this.map)e(s.value,s.uri,this)}*values(){for(const e of this.map.values())yield e.value}*keys(){for(const e of this.map.values())yield e.uri}*entries(){for(const e of this.map.values())yield[e.uri,e.value]}*[(Fpe=Symbol.toStringTag,Symbol.iterator)](){for(const[,e]of this.map)yield[e.uri,e.value]}}Va.defaultToKey=i=>i.toString();class Zct{constructor(){this[Bpe]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){var e;return(e=this._head)===null||e===void 0?void 0:e.value}get last(){var e;return(e=this._tail)===null||e===void 0?void 0:e.value}has(e){return this._map.has(e)}get(e,n=0){const r=this._map.get(e);if(r)return n!==0&&this.touch(r,n),r.value}set(e,n,r=0){let s=this._map.get(e);if(s)s.value=n,r!==0&&this.touch(s,r);else{switch(s={key:e,value:n,next:void 0,previous:void 0},r){case 0:this.addItemLast(s);break;case 1:this.addItemFirst(s);break;case 2:this.addItemLast(s);break;default:this.addItemLast(s);break}this._map.set(e,s),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const n=this._map.get(e);if(n)return this._map.delete(e),this.removeItem(n),this._size--,n.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,n){const r=this._state;let s=this._head;for(;s;){if(n?e.bind(n)(s.value,s.key,this):e(s.value,s.key,this),this._state!==r)throw new Error("LinkedMap got modified during iteration.");s=s.next}}keys(){const e=this,n=this._state;let r=this._head;const s={[Symbol.iterator](){return s},next(){if(e._state!==n)throw new Error("LinkedMap got modified during iteration.");if(r){const o={value:r.key,done:!1};return r=r.next,o}else return{value:void 0,done:!0}}};return s}values(){const e=this,n=this._state;let r=this._head;const s={[Symbol.iterator](){return s},next(){if(e._state!==n)throw new Error("LinkedMap got modified during iteration.");if(r){const o={value:r.value,done:!1};return r=r.next,o}else return{value:void 0,done:!0}}};return s}entries(){const e=this,n=this._state;let r=this._head;const s={[Symbol.iterator](){return s},next(){if(e._state!==n)throw new Error("LinkedMap got modified during iteration.");if(r){const o={value:[r.key,r.value],done:!1};return r=r.next,o}else return{value:void 0,done:!0}}};return s}[(Bpe=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let n=this._head,r=this.size;for(;n&&r>e;)this._map.delete(n.key),n=n.next,r--;this._head=n,this._size=r,n&&(n.previous=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const n=e.next,r=e.previous;if(!n||!r)throw new Error("Invalid list");n.previous=r,r.next=n}e.next=void 0,e.previous=void 0,this._state++}touch(e,n){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(n!==1&&n!==2)){if(n===1){if(e===this._head)return;const r=e.next,s=e.previous;e===this._tail?(s.next=void 0,this._tail=s):(r.previous=s,s.next=r),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(n===2){if(e===this._tail)return;const r=e.next,s=e.previous;e===this._head?(r.previous=void 0,this._head=r):(r.previous=s,s.next=r),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){const e=[];return this.forEach((n,r)=>{e.push([r,n])}),e}fromJSON(e){this.clear();for(const[n,r]of e)this.set(n,r)}}class G1 extends Zct{constructor(e,n=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,n),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,n=2){return super.get(e,n)}peek(e){return super.get(e,0)}set(e,n){return super.set(e,n,2),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}}class Qct{constructor(e){if(this._m1=new Map,this._m2=new Map,e)for(const[n,r]of e)this.set(n,r)}clear(){this._m1.clear(),this._m2.clear()}set(e,n){this._m1.set(e,n),this._m2.set(n,e)}get(e){return this._m1.get(e)}getKey(e){return this._m2.get(e)}delete(e){const n=this._m1.get(e);return n===void 0?!1:(this._m1.delete(e),this._m2.delete(n),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class roe{constructor(){this.map=new Map}add(e,n){let r=this.map.get(e);r||(r=new Set,this.map.set(e,r)),r.add(n)}delete(e,n){const r=this.map.get(e);r&&(r.delete(n),r.size===0&&this.map.delete(e))}forEach(e,n){const r=this.map.get(e);r&&r.forEach(n)}get(e){const n=this.map.get(e);return n||new Set}}class X9{constructor(e,n,r){this.lines=e,this.considerWhitespaceChanges=r,this.elements=[],this.firstCharOffsetByLine=[],this.additionalOffsetByLine=[];let s=!1;n.start>0&&n.endExclusive>=e.length&&(n=new Un(n.start-1,n.endExclusive),s=!0),this.lineRange=n,this.firstCharOffsetByLine[0]=0;for(let o=this.lineRange.start;oString.fromCharCode(n)).join("")}getElement(e){return this.elements[e]}get length(){return this.elements.length}getBoundaryScore(e){const n=Wpe(e>0?this.elements[e-1]:-1),r=Wpe(er<=e);return new ve(this.lineRange.start+n+1,e-this.firstCharOffsetByLine[n]+this.additionalOffsetByLine[n]+1)}translateRange(e){return J.fromPositions(this.translateOffset(e.start),this.translateOffset(e.endExclusive))}findWordContaining(e){if(e<0||e>=this.elements.length||!hq(this.elements[e]))return;let n=e;for(;n>0&&hq(this.elements[n-1]);)n--;let r=e;for(;ra<=e.start))!==null&&n!==void 0?n:0,o=(r=Pct(this.firstCharOffsetByLine,a=>e.endExclusive<=a))!==null&&r!==void 0?r:this.elements.length;return new Un(s,o)}}function hq(i){return i>=97&&i<=122||i>=65&&i<=90||i>=48&&i<=57}const Jct={0:0,1:0,2:0,3:10,4:2,5:3,6:10,7:10};function jpe(i){return Jct[i]}function Wpe(i){return i===10?7:i===13?6:bJ(i)?5:i>=97&&i<=122?0:i>=65&&i<=90?1:i>=48&&i<=57?2:i===-1?3:4}function eut(i,e,n,r,s,o){let{moves:a,excludedChanges:l}=tut(i,e,n,o);if(!o.isValid())return[];const c=i.filter(d=>!l.has(d)),u=nut(c,r,s,e,n,o);return rQ(a,u),a=iut(a),a=a.filter(d=>d.original.toOffsetRange().slice(e).map(f=>f.trim()).join(` `).length>=10),a=rut(i,a),a}function tut(i,e,n,r){const s=[],o=i.filter(c=>c.modified.isEmpty&&c.original.length>=3).map(c=>new OE(c.original,e,c)),a=new Set(i.filter(c=>c.original.isEmpty&&c.modified.length>=3).map(c=>new OE(c.modified,n,c))),l=new Set;for(const c of o){let u=-1,d;for(const h of a){const f=c.computeSimilarity(h);f>u&&(u=f,d=h)}if(u>.9&&d&&(a.delete(d),s.push(new Xm(c.range,d.range)),l.add(c.source),l.add(d.source)),!r.isValid())return{moves:s,excludedChanges:l}}return{moves:s,excludedChanges:l}}function nut(i,e,n,r,s,o){const a=[],l=new roe;for(const f of i)for(let p=f.original.startLineNumber;pf.modified.startLineNumber,fv));for(const f of i){let p=[];for(let g=f.modified.startLineNumber;g{for(const k of p)if(k.originalLineRange.endLineNumberExclusive+1===y.endLineNumberExclusive&&k.modifiedLineRange.endLineNumberExclusive+1===_.endLineNumberExclusive){k.originalLineRange=new Qn(k.originalLineRange.startLineNumber,y.endLineNumberExclusive),k.modifiedLineRange=new Qn(k.modifiedLineRange.startLineNumber,_.endLineNumberExclusive),b.push(k);return}const x={modifiedLineRange:_,originalLineRange:y};c.push(x),b.push(x)}),p=b}if(!o.isValid())return[]}c.sort(_2e(ch(f=>f.modifiedLineRange.length,fv)));const u=new um,d=new um;for(const f of c){const p=f.modifiedLineRange.startLineNumber-f.originalLineRange.startLineNumber,g=u.subtractFrom(f.modifiedLineRange),m=d.subtractFrom(f.originalLineRange).getWithDelta(p),_=g.getIntersection(m);for(const b of _.ranges){if(b.length<3)continue;const y=b,x=b.delta(-p);a.push(new Xm(x,y)),u.addRange(y),d.addRange(x)}}a.sort(ch(f=>f.original.startLineNumber,fv));const h=new E5(i);for(let f=0;fR.original.startLineNumber<=p.original.startLineNumber),m=gP(i,R=>R.modified.startLineNumber<=p.modified.startLineNumber),_=Math.max(p.original.startLineNumber-g.original.startLineNumber,p.modified.startLineNumber-m.modified.startLineNumber),b=h.findLastMonotonous(R=>R.original.startLineNumberR.modified.startLineNumberr.length||E>s.length||u.contains(E)||d.contains(R)||!$pe(r[R-1],s[E-1],o))break}k>0&&(d.addRange(new Qn(p.original.startLineNumber-k,p.original.startLineNumber)),u.addRange(new Qn(p.modified.startLineNumber-k,p.modified.startLineNumber)));let D;for(D=0;Dr.length||E>s.length||u.contains(E)||d.contains(R)||!$pe(r[R-1],s[E-1],o))break}D>0&&(d.addRange(new Qn(p.original.endLineNumberExclusive,p.original.endLineNumberExclusive+D)),u.addRange(new Qn(p.modified.endLineNumberExclusive,p.modified.endLineNumberExclusive+D))),(k>0||D>0)&&(a[f]=new Xm(new Qn(p.original.startLineNumber-k,p.original.endLineNumberExclusive+D),new Qn(p.modified.startLineNumber-k,p.modified.endLineNumberExclusive+D)))}return a}function $pe(i,e,n){if(i.trim()===e.trim())return!0;if(i.length>300&&e.length>300)return!1;const s=new QEe().compute(new X9([i],new Un(0,1),!1),new X9([e],new Un(0,1),!1),n);let o=0;const a=ea.invert(s.diffs,i.length);for(const d of a)d.seq1Range.forEach(h=>{bJ(i.charCodeAt(h))||o++});function l(d){let h=0;for(let f=0;fe.length?i:e);return o/c>.6&&c>10}function iut(i){if(i.length===0)return i;i.sort(ch(n=>n.original.startLineNumber,fv));const e=[i[0]];for(let n=1;n=0&&a>=0&&o+a<=2){e[e.length-1]=r.join(s);continue}e.push(s)}return e}function rut(i,e){const n=new E5(i);return e=e.filter(r=>{const s=n.findLastMonotonous(l=>l.original.endLineNumberExclusivel.modified.endLineNumberExclusive0&&(l=l.delta(u))}s.push(l)}return r.length>0&&s.push(r[r.length-1]),s}function out(i,e,n){if(!i.getBoundaryScore||!e.getBoundaryScore)return n;for(let r=0;r0?n[r-1]:void 0,o=n[r],a=r+1=r.start&&i.seq2Range.start-a>=s.start&&n.isStronglyEqual(i.seq2Range.start-a,i.seq2Range.endExclusive-a)&&a<100;)a++;a--;let l=0;for(;i.seq1Range.start+lu&&(u=g,c=d)}return i.delta(c)}function aut(i,e,n){const r=[];for(const s of n){const o=r[r.length-1];if(!o){r.push(s);continue}s.seq1Range.start-o.seq1Range.endExclusive<=2||s.seq2Range.start-o.seq2Range.endExclusive<=2?r[r.length-1]=new ea(o.seq1Range.join(s.seq1Range),o.seq2Range.join(s.seq2Range)):r.push(s)}return r}function lut(i,e,n){const r=[];let s;function o(){if(!s)return;const l=s.s1Range.length-s.deleted;s.s2Range.length-s.added,Math.max(s.deleted,s.added)+(s.count-1)>l&&r.push(new ea(s.s1Range,s.s2Range)),s=void 0}for(const l of n){let c=function(p,g){var m,_,b,y;if(!s||!s.s1Range.containsRange(p)||!s.s2Range.containsRange(g))if(s&&!(s.s1Range.endExclusive0||e.length>0;){const r=i[0],s=e[0];let o;r&&(!s||r.seq1Range.start0&&n[n.length-1].seq1Range.endExclusive>=o.seq1Range.start?n[n.length-1]=n[n.length-1].join(o):n.push(o)}return n}function uut(i,e,n){let r=n;if(r.length===0)return r;let s=0,o;do{o=!1;const a=[r[0]];for(let l=1;l5||p.seq1Range.length+p.seq2Range.length>5)};const c=r[l],u=a[a.length-1];d(u,c)?(o=!0,a[a.length-1]=a[a.length-1].join(c)):a.push(c)}r=a}while(s++<10&&o);return r}function dut(i,e,n){let r=n;if(r.length===0)return r;let s=0,o;do{o=!1;const l=[r[0]];for(let c=1;c5||m.length>500)return!1;const b=i.getText(m).trim();if(b.length>20||b.split(/\r\n|\r|\n/).length>1)return!1;const y=i.countLinesIn(p.seq1Range),x=p.seq1Range.length,k=e.countLinesIn(p.seq2Range),D=p.seq2Range.length,R=i.countLinesIn(g.seq1Range),E=g.seq1Range.length,A=e.countLinesIn(g.seq2Range),M=g.seq2Range.length,N=2*40+50;function P(O){return Math.min(O,N)}return Math.pow(Math.pow(P(y*40+x),1.5)+Math.pow(P(k*40+D),1.5),1.5)+Math.pow(Math.pow(P(R*40+E),1.5)+Math.pow(P(A*40+M),1.5),1.5)>Math.pow(Math.pow(N,1.5),1.5)*1.3};const u=r[c],d=l[l.length-1];h(d,u)?(o=!0,l[l.length-1]=l[l.length-1].join(u)):l.push(u)}r=l}while(s++<10&&o);const a=[];return Crt(r,(l,c,u)=>{let d=c;function h(b){return b.length>0&&b.trim().length<=3&&c.seq1Range.length+c.seq2Range.length>100}const f=i.extendToFullLines(c.seq1Range),p=i.getText(new Un(f.start,c.seq1Range.start));h(p)&&(d=d.deltaStart(-p.length));const g=i.getText(new Un(c.seq1Range.endExclusive,f.endExclusive));h(g)&&(d=d.deltaEnd(g.length));const m=ea.fromOffsetPairs(l?l.getEndExclusives():_m.zero,u?u.getStarts():_m.max),_=d.intersect(m);a.push(_)}),a}class Vpe{constructor(e,n){this.trimmedHash=e,this.lines=n}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){const n=e===0?0:Hpe(this.lines[e-1]),r=e===this.lines.length?0:Hpe(this.lines[e]);return 1e3-(n+r)}getText(e){return this.lines.slice(e.start,e.endExclusive).join(` `)}isStronglyEqual(e,n){return this.lines[e]===this.lines[n]}}function Hpe(i){let e=0;for(;eD===R))return new u8([],[],!1);if(e.length===1&&e[0].length===0||n.length===1&&n[0].length===0)return new u8([new bh(new Qn(1,e.length+1),new Qn(1,n.length+1),[new _1(new J(1,1,e.length,e[0].length+1),new J(1,1,n.length,n[0].length+1))])],[],!1);const s=r.maxComputationTimeMs===0?vP.instance:new Uct(r.maxComputationTimeMs),o=!r.ignoreTrimWhitespace,a=new Map;function l(D){let R=a.get(D);return R===void 0&&(R=a.size,a.set(D,R)),R}const c=e.map(D=>l(D.trim())),u=n.map(D=>l(D.trim())),d=new Vpe(c,e),h=new Vpe(u,n),f=d.length+h.length<1700?this.dynamicProgrammingDiffing.compute(d,h,s,(D,R)=>e[D]===n[R]?n[R].length===0?.1:1+Math.log(1+n[R].length):.99):this.myersDiffingAlgorithm.compute(d,h);let p=f.diffs,g=f.hitTimeout;p=yJ(d,h,p),p=uut(d,h,p);const m=[],_=D=>{if(o)for(let R=0;RD.seq1Range.start-b===D.seq2Range.start-y);const R=D.seq1Range.start-b;_(R),b=D.seq1Range.endExclusive,y=D.seq2Range.endExclusive;const E=this.refineDiff(e,n,D,s,o);E.hitTimeout&&(g=!0);for(const A of E.mappings)m.push(A)}_(e.length-b);const x=Upe(m,e,n);let k=[];return r.computeMoves&&(k=this.computeMoves(x,e,n,c,u,s,o)),uP(()=>{function D(E,A){if(E.lineNumber<1||E.lineNumber>A.length)return!1;const M=A[E.lineNumber-1];return!(E.column<1||E.column>M.length+1)}function R(E,A){return!(E.startLineNumber<1||E.startLineNumber>A.length+1||E.endLineNumberExclusive<1||E.endLineNumberExclusive>A.length+1)}for(const E of x){if(!E.innerChanges)return!1;for(const A of E.innerChanges)if(!(D(A.modifiedRange.getStartPosition(),n)&&D(A.modifiedRange.getEndPosition(),n)&&D(A.originalRange.getStartPosition(),e)&&D(A.originalRange.getEndPosition(),e)))return!1;if(!R(E.modified,n)||!R(E.original,e))return!1}return!0}),new u8(x,k,g)}computeMoves(e,n,r,s,o,a,l){return eut(e,n,r,s,o,a).map(d=>{const h=this.refineDiff(n,r,new ea(d.original.toOffsetRange(),d.modified.toOffsetRange()),a,l),f=Upe(h.mappings,n,r,!0);return new XEe(d,f)})}refineDiff(e,n,r,s,o){const a=new X9(e,r.seq1Range,o),l=new X9(n,r.seq2Range,o),c=a.length+l.length<500?this.dynamicProgrammingDiffing.compute(a,l,s):this.myersDiffingAlgorithm.compute(a,l,s);let u=c.diffs;return u=yJ(a,l,u),u=lut(a,l,u),u=aut(a,l,u),u=dut(a,l,u),{mappings:u.map(h=>new _1(a.translateRange(h.seq1Range),l.translateRange(h.seq2Range))),hitTimeout:c.hitTimeout}}}function Upe(i,e,n,r=!1){const s=[];for(const o of h2e(i.map(a=>hut(a,e,n)),(a,l)=>a.original.overlapOrTouch(l.original)||a.modified.overlapOrTouch(l.modified))){const a=o[0],l=o[o.length-1];s.push(new bh(a.original.join(l.original),a.modified.join(l.modified),o.map(c=>c.innerChanges[0])))}return uP(()=>!r&&s.length>0&&s[0].original.startLineNumber!==s[0].modified.startLineNumber?!1:aEe(s,(o,a)=>a.original.startLineNumber-o.original.endLineNumberExclusive===a.modified.startLineNumber-o.modified.endLineNumberExclusive&&o.original.endLineNumberExclusive=n[i.modifiedRange.startLineNumber-1].length&&i.originalRange.startColumn-1>=e[i.originalRange.startLineNumber-1].length&&i.originalRange.startLineNumber<=i.originalRange.endLineNumber+s&&i.modifiedRange.startLineNumber<=i.modifiedRange.endLineNumber+s&&(r=1);const o=new Qn(i.originalRange.startLineNumber+r,i.originalRange.endLineNumber+1+s),a=new Qn(i.modifiedRange.startLineNumber+r,i.modifiedRange.endLineNumber+1+s);return new bh(o,a,[i])}const qpe={getLegacy:()=>new $ct,getDefault:()=>new JEe};function Wy(i,e){const n=Math.pow(10,e);return Math.round(i*n)/n}class ii{constructor(e,n,r,s=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,e))|0,this.g=Math.min(255,Math.max(0,n))|0,this.b=Math.min(255,Math.max(0,r))|0,this.a=Wy(Math.max(Math.min(1,s),0),3)}static equals(e,n){return e.r===n.r&&e.g===n.g&&e.b===n.b&&e.a===n.a}}class lf{constructor(e,n,r,s){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=Wy(Math.max(Math.min(1,n),0),3),this.l=Wy(Math.max(Math.min(1,r),0),3),this.a=Wy(Math.max(Math.min(1,s),0),3)}static equals(e,n){return e.h===n.h&&e.s===n.s&&e.l===n.l&&e.a===n.a}static fromRGBA(e){const n=e.r/255,r=e.g/255,s=e.b/255,o=e.a,a=Math.max(n,r,s),l=Math.min(n,r,s);let c=0,u=0;const d=(l+a)/2,h=a-l;if(h>0){switch(u=Math.min(d<=.5?h/(2*d):h/(2-2*d),1),a){case n:c=(r-s)/h+(r1&&(r-=1),r<1/6?e+(n-e)*6*r:r<1/2?n:r<2/3?e+(n-e)*(2/3-r)*6:e}static toRGBA(e){const n=e.h/360,{s:r,l:s,a:o}=e;let a,l,c;if(r===0)a=l=c=s;else{const u=s<.5?s*(1+r):s+r-s*r,d=2*s-u;a=lf._hue2rgb(d,u,n+1/3),l=lf._hue2rgb(d,u,n),c=lf._hue2rgb(d,u,n-1/3)}return new ii(Math.round(a*255),Math.round(l*255),Math.round(c*255),o)}}class vm{constructor(e,n,r,s){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,e),0)|0,this.s=Wy(Math.max(Math.min(1,n),0),3),this.v=Wy(Math.max(Math.min(1,r),0),3),this.a=Wy(Math.max(Math.min(1,s),0),3)}static equals(e,n){return e.h===n.h&&e.s===n.s&&e.v===n.v&&e.a===n.a}static fromRGBA(e){const n=e.r/255,r=e.g/255,s=e.b/255,o=Math.max(n,r,s),a=Math.min(n,r,s),l=o-a,c=o===0?0:l/o;let u;return l===0?u=0:o===n?u=((r-s)/l%6+6)%6:o===r?u=(s-n)/l+2:u=(n-r)/l+4,new vm(Math.round(u*60),c,o,e.a)}static toRGBA(e){const{h:n,s:r,v:s,a:o}=e,a=s*r,l=a*(1-Math.abs(n/60%2-1)),c=s-a;let[u,d,h]=[0,0,0];return n<60?(u=a,d=l):n<120?(u=l,d=a):n<180?(d=a,h=l):n<240?(d=l,h=a):n<300?(u=l,h=a):n<=360&&(u=a,h=l),u=Math.round((u+c)*255),d=Math.round((d+c)*255),h=Math.round((h+c)*255),new ii(u,d,h,o)}}let Te=class Zh{static fromHex(e){return Zh.Format.CSS.parseHex(e)||Zh.red}static equals(e,n){return!e&&!n?!0:!e||!n?!1:e.equals(n)}get hsla(){return this._hsla?this._hsla:lf.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:vm.fromRGBA(this.rgba)}constructor(e){if(e)if(e instanceof ii)this.rgba=e;else if(e instanceof lf)this._hsla=e,this.rgba=lf.toRGBA(e);else if(e instanceof vm)this._hsva=e,this.rgba=vm.toRGBA(e);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(e){return!!e&&ii.equals(this.rgba,e.rgba)&&lf.equals(this.hsla,e.hsla)&&vm.equals(this.hsva,e.hsva)}getRelativeLuminance(){const e=Zh._relativeLuminanceForComponent(this.rgba.r),n=Zh._relativeLuminanceForComponent(this.rgba.g),r=Zh._relativeLuminanceForComponent(this.rgba.b),s=.2126*e+.7152*n+.0722*r;return Wy(s,4)}static _relativeLuminanceForComponent(e){const n=e/255;return n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4)}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(e){const n=this.getRelativeLuminance(),r=e.getRelativeLuminance();return n>r}isDarkerThan(e){const n=this.getRelativeLuminance(),r=e.getRelativeLuminance();return n0)for(const s of r){const o=s.filter(u=>u!==void 0),a=o[1],l=o[2];if(!l)continue;let c;if(a==="rgb"){const u=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;c=Kpe(HR(i,s),UR(l,u),!1)}else if(a==="rgba"){const u=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;c=Kpe(HR(i,s),UR(l,u),!0)}else if(a==="hsl"){const u=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;c=Gpe(HR(i,s),UR(l,u),!1)}else if(a==="hsla"){const u=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;c=Gpe(HR(i,s),UR(l,u),!0)}else a==="#"&&(c=fut(HR(i,s),a+l));c&&e.push(c)}return e}function gut(i){return!i||typeof i.getValue!="function"||typeof i.positionAt!="function"?[]:put(i)}var Ob=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class mut extends _ct{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(e){const n=[];for(let r=0;rthis._lines.length)n=this._lines.length,r=this._lines[n-1].length+1,s=!0;else{const o=this._lines[n-1].length+1;r<1?(r=1,s=!0):r>o&&(r=o,s=!0)}return s?{lineNumber:n,column:r}:e}}class $y{constructor(e,n){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=n,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(e){return this._models[e]}_getModels(){const e=[];return Object.keys(this._models).forEach(n=>e.push(this._models[n])),e}acceptNewModel(e){this._models[e.url]=new mut(Jt.parse(e.url),e.lines,e.EOL,e.versionId)}acceptModelChanged(e,n){if(!this._models[e])return;this._models[e].onEvents(n)}acceptRemovedModel(e){this._models[e]&&delete this._models[e]}computeUnicodeHighlights(e,n,r){return Ob(this,void 0,void 0,function*(){const s=this._getModel(e);return s?noe.computeUnicodeHighlights(s,n,r):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}})}computeDiff(e,n,r,s){return Ob(this,void 0,void 0,function*(){const o=this._getModel(e),a=this._getModel(n);return!o||!a?null:$y.computeDiff(o,a,r,s)})}static computeDiff(e,n,r,s){const o=s==="advanced"?qpe.getDefault():qpe.getLegacy(),a=e.getLinesContent(),l=n.getLinesContent(),c=o.computeDiff(a,l,r),u=c.changes.length>0?!1:this._modelsAreIdentical(e,n);function d(h){return h.map(f=>{var p;return[f.original.startLineNumber,f.original.endLineNumberExclusive,f.modified.startLineNumber,f.modified.endLineNumberExclusive,(p=f.innerChanges)===null||p===void 0?void 0:p.map(g=>[g.originalRange.startLineNumber,g.originalRange.startColumn,g.originalRange.endLineNumber,g.originalRange.endColumn,g.modifiedRange.startLineNumber,g.modifiedRange.startColumn,g.modifiedRange.endLineNumber,g.modifiedRange.endColumn])]})}return{identical:u,quitEarly:c.hitTimeout,changes:d(c.changes),moves:c.moves.map(h=>[h.lineRangeMapping.original.startLineNumber,h.lineRangeMapping.original.endLineNumberExclusive,h.lineRangeMapping.modified.startLineNumber,h.lineRangeMapping.modified.endLineNumberExclusive,d(h.changes)])}}static _modelsAreIdentical(e,n){const r=e.getLineCount(),s=n.getLineCount();if(r!==s)return!1;for(let o=1;o<=r;o++){const a=e.getLineContent(o),l=n.getLineContent(o);if(a!==l)return!1}return!0}computeMoreMinimalEdits(e,n,r){return Ob(this,void 0,void 0,function*(){const s=this._getModel(e);if(!s)return n;const o=[];let a;n=n.slice(0).sort((c,u)=>{if(c.range&&u.range)return J.compareRangesUsingStarts(c.range,u.range);const d=c.range?0:1,h=u.range?0:1;return d-h});let l=0;for(let c=1;c$y._diffLimit){o.push({range:c,text:u});continue}const f=pct(h,u,r),p=s.offsetAt(J.lift(c).getStartPosition());for(const g of f){const m=s.positionAt(p+g.originalStart),_=s.positionAt(p+g.originalStart+g.originalLength),b={text:u.substr(g.modifiedStart,g.modifiedLength),range:{startLineNumber:m.lineNumber,startColumn:m.column,endLineNumber:_.lineNumber,endColumn:_.column}};s.getValueInRange(b.range)!==b.text&&o.push(b)}}return typeof a=="number"&&o.push({eol:a,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),o})}computeLinks(e){return Ob(this,void 0,void 0,function*(){const n=this._getModel(e);return n?Cct(n):null})}computeDefaultDocumentColors(e){return Ob(this,void 0,void 0,function*(){const n=this._getModel(e);return n?gut(n):null})}textualSuggest(e,n,r,s){return Ob(this,void 0,void 0,function*(){const o=new Xa,a=new RegExp(r,s),l=new Set;e:for(const c of e){const u=this._getModel(c);if(u){for(const d of u.words(a))if(!(d===n||!isNaN(Number(d)))&&(l.add(d),l.size>$y._suggestionsLimit))break e}}return{words:Array.from(l),duration:o.elapsed()}})}computeWordRanges(e,n,r,s){return Ob(this,void 0,void 0,function*(){const o=this._getModel(e);if(!o)return Object.create(null);const a=new RegExp(r,s),l=Object.create(null);for(let c=n.startLineNumber;cthis._host.fhr(l,c)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(a,n),Promise.resolve(Dse(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))}fmr(e,n){if(!this._foreignModule||typeof this._foreignModule[e]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,n))}catch(r){return Promise.reject(r)}}}$y._diffLimit=1e5;$y._suggestionsLimit=1e4;typeof importScripts=="function"&&(globalThis.monaco=q2e());const ooe=qn("textResourceConfigurationService"),tIe=qn("textResourcePropertiesService"),Et=qn("ILanguageFeaturesService");var _ut=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},qR=function(i,e){return function(n,r){e(n,r,i)}},Y9=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const Xpe=60*1e3,Ype=5*60*1e3;function qC(i,e){const n=i.getModel(e);return!(!n||n.isTooLargeForSyncing())}let wJ=class extends Le{constructor(e,n,r,s,o){super(),this._modelService=e,this._workerManager=this._register(new but(this._modelService,s)),this._logService=r,this._register(o.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:(a,l)=>qC(this._modelService,a.uri)?this._workerManager.withWorker().then(c=>c.computeLinks(a.uri)).then(c=>c&&{links:c}):Promise.resolve({links:[]})})),this._register(o.completionProvider.register("*",new vut(this._workerManager,n,this._modelService,s)))}dispose(){super.dispose()}canComputeUnicodeHighlights(e){return qC(this._modelService,e)}computedUnicodeHighlights(e,n,r){return this._workerManager.withWorker().then(s=>s.computedUnicodeHighlights(e,n,r))}computeDiff(e,n,r,s){return Y9(this,void 0,void 0,function*(){const o=yield this._workerManager.withWorker().then(c=>c.computeDiff(e,n,r,s));if(!o)return null;return{identical:o.identical,quitEarly:o.quitEarly,changes:l(o.changes),moves:o.moves.map(c=>new XEe(new Xm(new Qn(c[0],c[1]),new Qn(c[2],c[3])),l(c[4])))};function l(c){return c.map(u=>{var d;return new bh(new Qn(u[0],u[1]),new Qn(u[2],u[3]),(d=u[4])===null||d===void 0?void 0:d.map(h=>new _1(new J(h[0],h[1],h[2],h[3]),new J(h[4],h[5],h[6],h[7]))))})}})}computeMoreMinimalEdits(e,n,r=!1){if(Ka(n)){if(!qC(this._modelService,e))return Promise.resolve(n);const s=Xa.create(),o=this._workerManager.withWorker().then(a=>a.computeMoreMinimalEdits(e,n,r));return o.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),s.elapsed())),Promise.race([o,p1(1e3).then(()=>n)])}else return Promise.resolve(void 0)}canNavigateValueSet(e){return qC(this._modelService,e)}navigateValueSet(e,n,r){return this._workerManager.withWorker().then(s=>s.navigateValueSet(e,n,r))}canComputeWordRanges(e){return qC(this._modelService,e)}computeWordRanges(e,n){return this._workerManager.withWorker().then(r=>r.computeWordRanges(e,n))}};wJ=_ut([qR(0,Fr),qR(1,ooe),qR(2,vd),qR(3,dr),qR(4,Et)],wJ);class vut{constructor(e,n,r,s){this.languageConfigurationService=s,this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=n,this._modelService=r}provideCompletionItems(e,n){return Y9(this,void 0,void 0,function*(){const r=this._configurationService.getValue(e.uri,n,"editor");if(!r.wordBasedSuggestions)return;const s=[];if(r.wordBasedSuggestionsMode==="currentDocument")qC(this._modelService,e.uri)&&s.push(e.uri);else for(const h of this._modelService.getModels())qC(this._modelService,h.uri)&&(h===e?s.unshift(h.uri):(r.wordBasedSuggestionsMode==="allDocuments"||h.getLanguageId()===e.getLanguageId())&&s.push(h.uri));if(s.length===0)return;const o=this.languageConfigurationService.getLanguageConfiguration(e.getLanguageId()).getWordDefinition(),a=e.getWordAtPosition(n),l=a?new J(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn):J.fromPositions(n),c=l.setEndPosition(n.lineNumber,n.column),d=yield(yield this._workerManager.withWorker()).textualSuggest(s,a==null?void 0:a.word,o);if(d)return{duration:d.duration,suggestions:d.words.map(h=>({kind:18,label:h,insertText:h,range:{insert:c,replace:l}}))}})}}class but extends Le{constructor(e,n){super(),this.languageConfigurationService=n,this._modelService=e,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new D5).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(Ype/2)),this._register(this._modelService.onModelRemoved(s=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;this._modelService.getModels().length===0&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;new Date().getTime()-this._lastWorkerUsedTime>Ype&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new aoe(this._modelService,!1,"editorWorkerService",this.languageConfigurationService)),Promise.resolve(this._editorWorkerClient)}}class yut extends Le{constructor(e,n,r){if(super(),this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),this._proxy=e,this._modelService=n,!r){const s=new D5;s.cancelAndSet(()=>this._checkStopModelSync(),Math.round(Xpe/2)),this._register(s)}}dispose(){for(const e in this._syncedModels)Mi(this._syncedModels[e]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(e,n){for(const r of e){const s=r.toString();this._syncedModels[s]||this._beginModelSync(r,n),this._syncedModels[s]&&(this._syncedModelsLastUsedTime[s]=new Date().getTime())}}_checkStopModelSync(){const e=new Date().getTime(),n=[];for(const r in this._syncedModelsLastUsedTime)e-this._syncedModelsLastUsedTime[r]>Xpe&&n.push(r);for(const r of n)this._stopModelSync(r)}_beginModelSync(e,n){const r=this._modelService.getModel(e);if(!r||!n&&r.isTooLargeForSyncing())return;const s=e.toString();this._proxy.acceptNewModel({url:r.uri.toString(),lines:r.getLinesContent(),EOL:r.getEOL(),versionId:r.getVersionId()});const o=new Xe;o.add(r.onDidChangeContent(a=>{this._proxy.acceptModelChanged(s.toString(),a)})),o.add(r.onWillDispose(()=>{this._stopModelSync(s)})),o.add(gn(()=>{this._proxy.acceptRemovedModel(s)})),this._syncedModels[s]=o}_stopModelSync(e){const n=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],Mi(n)}}class Zpe{constructor(e){this._instance=e,this._proxyObj=Promise.resolve(this._instance)}dispose(){this._instance.dispose()}getProxyObject(){return this._proxyObj}}class fq{constructor(e){this._workerClient=e}fhr(e,n){return this._workerClient.fhr(e,n)}}class aoe extends Le{constructor(e,n,r,s){super(),this.languageConfigurationService=s,this._disposed=!1,this._modelService=e,this._keepIdleModels=n,this._workerFactory=new p$(r),this._worker=null,this._modelManager=null}fhr(e,n){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(new Slt(this._workerFactory,"vs/editor/common/services/editorSimpleWorker",new fq(this)))}catch(e){hJ(e),this._worker=new Zpe(new $y(new fq(this),null))}return this._worker}_getProxy(){return this._getOrCreateWorker().getProxyObject().then(void 0,e=>(hJ(e),this._worker=new Zpe(new $y(new fq(this),null)),this._getOrCreateWorker().getProxyObject()))}_getOrCreateModelManager(e){return this._modelManager||(this._modelManager=this._register(new yut(e,this._modelService,this._keepIdleModels))),this._modelManager}_withSyncedResources(e,n=!1){return Y9(this,void 0,void 0,function*(){return this._disposed?Promise.reject(Pst()):this._getProxy().then(r=>(this._getOrCreateModelManager(r).ensureSyncedResources(e,n),r))})}computedUnicodeHighlights(e,n,r){return this._withSyncedResources([e]).then(s=>s.computeUnicodeHighlights(e.toString(),n,r))}computeDiff(e,n,r,s){return this._withSyncedResources([e,n],!0).then(o=>o.computeDiff(e.toString(),n.toString(),r,s))}computeMoreMinimalEdits(e,n,r){return this._withSyncedResources([e]).then(s=>s.computeMoreMinimalEdits(e.toString(),n,r))}computeLinks(e){return this._withSyncedResources([e]).then(n=>n.computeLinks(e.toString()))}computeDefaultDocumentColors(e){return this._withSyncedResources([e]).then(n=>n.computeDefaultDocumentColors(e.toString()))}textualSuggest(e,n,r){return Y9(this,void 0,void 0,function*(){const s=yield this._withSyncedResources(e),o=r.source,a=r.flags;return s.textualSuggest(e.map(l=>l.toString()),n,o,a)})}computeWordRanges(e,n){return this._withSyncedResources([e]).then(r=>{const s=this._modelService.getModel(e);if(!s)return Promise.resolve(null);const o=this.languageConfigurationService.getLanguageConfiguration(s.getLanguageId()).getWordDefinition(),a=o.source,l=o.flags;return r.computeWordRanges(e.toString(),n,a,l)})}navigateValueSet(e,n,r){return this._withSyncedResources([e]).then(s=>{const o=this._modelService.getModel(e);if(!o)return null;const a=this.languageConfigurationService.getLanguageConfiguration(o.getLanguageId()).getWordDefinition(),l=a.source,c=a.flags;return s.navigateValueSet(e.toString(),n,r,l,c)})}dispose(){super.dispose(),this._disposed=!0}}function wut(i,e,n){return new Cut(i,e,n)}class Cut extends aoe{constructor(e,n,r){super(e,r.keepIdleModels||!1,r.label,n),this._foreignModuleId=r.moduleId,this._foreignModuleCreateData=r.createData||null,this._foreignModuleHost=r.host||null,this._foreignProxy=null}fhr(e,n){if(!this._foreignModuleHost||typeof this._foreignModuleHost[e]!="function")return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,n))}catch(r){return Promise.reject(r)}}_getForeignProxy(){return this._foreignProxy||(this._foreignProxy=this._getProxy().then(e=>{const n=this._foreignModuleHost?Dse(this._foreignModuleHost):[];return e.loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,n).then(r=>{this._foreignModuleCreateData=null;const s=(l,c)=>e.fmr(l,c),o=(l,c)=>function(){const u=Array.prototype.slice.call(arguments,0);return c(l,u)},a={};for(const l of r)a[l]=o(l,s);return a})})),this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(e){return this._withSyncedResources(e).then(n=>this.getProxy())}}const I5={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"},FE=new class{clone(){return this}equals(i){return this===i}};function loe(i,e){return new Bse([new rP(0,"",i)],e)}function C$(i,e){const n=new Uint32Array(2);return n[0]=0,n[1]=(i<<0|0|0|32768|2<<24)>>>0,new ZW(n,e===null?FE:e)}class Da{static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static getClassNameFromMetadata(e){let r="mtk"+this.getForeground(e);const s=this.getFontStyle(e);return s&1&&(r+=" mtki"),s&2&&(r+=" mtkb"),s&4&&(r+=" mtku"),s&8&&(r+=" mtks"),r}static getInlineStyleFromMetadata(e,n){const r=this.getForeground(e),s=this.getFontStyle(e);let o=`color: ${n[r]};`;s&1&&(o+="font-style: italic;"),s&2&&(o+="font-weight: bold;");let a="";return s&4&&(a+=" underline"),s&8&&(a+=" line-through"),a&&(o+=`text-decoration:${a};`),o}static getPresentationFromMetadata(e){const n=this.getForeground(e),r=this.getFontStyle(e);return{foreground:n,italic:!!(r&1),bold:!!(r&2),underline:!!(r&4),strikethrough:!!(r&8)}}}class ko{static createEmpty(e,n){const r=ko.defaultTokenMetadata,s=new Uint32Array(2);return s[0]=e.length,s[1]=r,new ko(s,e,n)}constructor(e,n,r){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=n,this._languageIdCodec=r}equals(e){return e instanceof ko?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,n,r){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;const s=n<<1,o=s+(r<<1);for(let a=s;a0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){const n=this._tokens[(e<<1)+1],r=Da.getLanguageId(n);return this._languageIdCodec.decodeLanguageId(r)}getStandardTokenType(e){const n=this._tokens[(e<<1)+1];return Da.getTokenType(n)}getForeground(e){const n=this._tokens[(e<<1)+1];return Da.getForeground(n)}getClassName(e){const n=this._tokens[(e<<1)+1];return Da.getClassNameFromMetadata(n)}getInlineStyle(e,n){const r=this._tokens[(e<<1)+1];return Da.getInlineStyleFromMetadata(r,n)}getPresentation(e){const n=this._tokens[(e<<1)+1];return Da.getPresentationFromMetadata(n)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return ko.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,n,r){return new coe(this,e,n,r)}static convertToEndOffset(e,n){const s=(e.length>>>1)-1;for(let o=0;o>>1)-1;for(;rn&&(s=o)}return r}withInserted(e){if(e.length===0)return this;let n=0,r=0,s="";const o=new Array;let a=0;for(;;){const l=na){s+=this._text.substring(a,c.offset);const u=this._tokens[(n<<1)+1];o.push(s.length,u),a=c.offset}s+=c.text,o.push(s.length,c.tokenMetadata),r++}else break}return new ko(new Uint32Array(o),s,this._languageIdCodec)}}ko.defaultTokenMetadata=(32768|2<<24)>>>0;class coe{constructor(e,n,r,s){this._source=e,this._startOffset=n,this._endOffset=r,this._deltaOffset=s,this._firstTokenIndex=e.findTokenIndexAtOffset(n),this._tokensCount=0;for(let o=this._firstTokenIndex,a=e.getCount();o=r);o++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof coe?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){const n=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,n)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,n){return this._source.getInlineStyle(this._firstTokenIndex+e,n)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}}class ru{constructor(e,n,r,s){this.startColumn=e,this.endColumn=n,this.className=r,this.type=s,this._lineDecorationBrand=void 0}static _equals(e,n){return e.startColumn===n.startColumn&&e.endColumn===n.endColumn&&e.className===n.className&&e.type===n.type}static equalsArr(e,n){const r=e.length,s=n.length;if(r!==s)return!1;for(let o=0;o=o||(l[c++]=new ru(Math.max(1,u.startColumn-s+1),Math.min(a+1,u.endColumn-s+1),u.className,u.type));return l}static filter(e,n,r,s){if(e.length===0)return[];const o=[];let a=0;for(let l=0,c=e.length;ln||d.isEmpty()&&(u.type===0||u.type===3))continue;const h=d.startLineNumber===n?d.startColumn:r,f=d.endLineNumber===n?d.endColumn:s;o[a++]=new ru(h,f,u.inlineClassName,u.type)}return o}static _typeCompare(e,n){const r=[2,0,1,3];return r[e]-r[n]}static compare(e,n){if(e.startColumn!==n.startColumn)return e.startColumn-n.startColumn;if(e.endColumn!==n.endColumn)return e.endColumn-n.endColumn;const r=ru._typeCompare(e.type,n.type);return r!==0?r:e.className!==n.className?e.className0&&this.stopOffsets[0]0&&n=e){this.stopOffsets.splice(s,0,e),this.classNames.splice(s,0,n),this.metadata.splice(s,0,r);break}this.count++}}class Sut{static normalize(e,n){if(n.length===0)return[];const r=[],s=new Z9;let o=0;for(let a=0,l=n.length;a1){const m=e.charCodeAt(u-2);xo(m)&&u--}if(d>1){const m=e.charCodeAt(d-2);xo(m)&&d--}const p=u-1,g=d-2;o=s.consumeLowerThan(p,o,r),s.count===0&&(o=p),s.insert(g,h,f)}return s.consumeLowerThan(1073741824,o,r),r}}class Wo{constructor(e,n,r,s){this.endIndex=e,this.type=n,this.metadata=r,this.containsRTL=s,this._linePartBrand=void 0}isWhitespace(){return!!(this.metadata&1)}isPseudoAfter(){return!!(this.metadata&4)}}class nIe{constructor(e,n){this.startOffset=e,this.endOffset=n}equals(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset}}class X1{constructor(e,n,r,s,o,a,l,c,u,d,h,f,p,g,m,_,b,y,x){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=n,this.lineContent=r,this.continuesWithWrappedLine=s,this.isBasicASCII=o,this.containsRTL=a,this.fauxIndentLength=l,this.lineTokens=c,this.lineDecorations=u.sort(ru.compare),this.tabSize=d,this.startVisibleColumn=h,this.spaceWidth=f,this.stopRenderingLineAfter=m,this.renderWhitespace=_==="all"?4:_==="boundary"?1:_==="selection"?2:_==="trailing"?3:0,this.renderControlCharacters=b,this.fontLigatures=y,this.selectionsOnLine=x&&x.sort((R,E)=>R.startOffset>>16}static getCharIndex(e){return(e&65535)>>>0}constructor(e,n){this.length=e,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(e,n,r,s){const o=(n<<16|r<<0)>>>0;this._data[e-1]=o,this._horizontalOffset[e-1]=s}getHorizontalOffset(e){return this._horizontalOffset.length===0?0:this._horizontalOffset[e-1]}charOffsetToPartData(e){return this.length===0?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]}getDomPosition(e){const n=this.charOffsetToPartData(e-1),r=rm.getPartIndex(n),s=rm.getCharIndex(n);return new iIe(r,s)}getColumn(e,n){return this.partDataToCharOffset(e.partIndex,n,e.charIndex)+1}partDataToCharOffset(e,n,r){if(this.length===0)return 0;const s=(e<<16|r<<0)>>>0;let o=0,a=this.length-1;for(;o+1>>1,_=this._data[m];if(_===s)return m;_>s?a=m:o=m}if(o===a)return o;const l=this._data[o],c=this._data[a];if(l===s)return o;if(c===s)return a;const u=rm.getPartIndex(l),d=rm.getCharIndex(l),h=rm.getPartIndex(c);let f;u!==h?f=n:f=rm.getCharIndex(c);const p=r-d,g=f-r;return p<=g?o:a}}class CJ{constructor(e,n,r){this._renderLineOutputBrand=void 0,this.characterMapping=e,this.containsRTL=n,this.containsForeignElements=r}}function T5(i,e){if(i.lineContent.length===0){if(i.lineDecorations.length>0){e.appendString("");let n=0,r=0,s=0;for(const a of i.lineDecorations)(a.type===1||a.type===2)&&(e.appendString(''),a.type===1&&(s|=1,n++),a.type===2&&(s|=2,r++));e.appendString("");const o=new rm(1,n+r);return o.setColumnInfo(1,n,0,0),new CJ(o,!1,s)}return e.appendString(""),new CJ(new rm(0,0),!1,0)}return Aut(Lut(i),e)}class xut{constructor(e,n,r,s){this.characterMapping=e,this.html=n,this.containsRTL=r,this.containsForeignElements=s}}function S$(i){const e=new jI(1e4),n=T5(i,e);return new xut(n.characterMapping,e.build(),n.containsRTL,n.containsForeignElements)}class kut{constructor(e,n,r,s,o,a,l,c,u,d,h,f,p,g,m,_){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=n,this.lineContent=r,this.len=s,this.isOverflowing=o,this.overflowingCharCount=a,this.parts=l,this.containsForeignElements=c,this.fauxIndentLength=u,this.tabSize=d,this.startVisibleColumn=h,this.containsRTL=f,this.spaceWidth=p,this.renderSpaceCharCode=g,this.renderWhitespace=m,this.renderControlCharacters=_}}function Lut(i){const e=i.lineContent;let n,r,s;i.stopRenderingLineAfter!==-1&&i.stopRenderingLineAfter0){for(let l=0,c=i.lineDecorations.length;l0&&(o[a++]=new Wo(r,"",0,!1));let l=r;for(let c=0,u=n.getCount();c=s){const p=e?TE(i.substring(l,s)):!1;o[a++]=new Wo(s,h,0,p);break}const f=e?TE(i.substring(l,d)):!1;o[a++]=new Wo(d,h,0,f),l=d}return o}function Eut(i,e,n){let r=0;const s=[];let o=0;if(n)for(let a=0,l=e.length;a=50&&(s[o++]=new Wo(p+1,d,h,f),g=p+1,p=-1);g!==u&&(s[o++]=new Wo(u,d,h,f))}else s[o++]=c;r=u}else for(let a=0,l=e.length;a50){const h=c.type,f=c.metadata,p=c.containsRTL,g=Math.ceil(d/50);for(let m=1;m=8234&&i<=8238||i>=8294&&i<=8297||i>=8206&&i<=8207||i===1564}function Iut(i,e){const n=[];let r=new Wo(0,"",0,!1),s=0;for(const o of e){const a=o.endIndex;for(;sr.endIndex&&(r=new Wo(s,o.type,o.metadata,o.containsRTL),n.push(r)),r=new Wo(s+1,"mtkcontrol",o.metadata,!1),n.push(r))}s>r.endIndex&&(r=new Wo(a,o.type,o.metadata,o.containsRTL),n.push(r))}return n}function Tut(i,e,n,r){const s=i.continuesWithWrappedLine,o=i.fauxIndentLength,a=i.tabSize,l=i.startVisibleColumn,c=i.useMonospaceOptimizations,u=i.selectionsOnLine,d=i.renderWhitespace===1,h=i.renderWhitespace===3,f=i.renderSpaceWidth!==i.spaceWidth,p=[];let g=0,m=0,_=r[m].type,b=r[m].containsRTL,y=r[m].endIndex;const x=r.length;let k=!1,D=ml(e),R;D===-1?(k=!0,D=n,R=n):R=$p(e);let E=!1,A=0,M=u&&u[A],N=l%a;for(let O=o;O=M.endOffset&&(A++,M=u&&u[A]);let j;if(OR)j=!0;else if(B===9)j=!0;else if(B===32)if(d)if(E)j=!0;else{const z=O+1O),j&&h&&(j=k||O>R),j&&b&&O>=D&&O<=R&&(j=!1),E){if(!j||!c&&N>=a){if(f){const z=g>0?p[g-1].endIndex:o;for(let H=z+1;H<=O;H++)p[g++]=new Wo(H,"mtkw",1,!1)}else p[g++]=new Wo(O,"mtkw",1,!1);N=N%a}}else(O===y||j&&O>o)&&(p[g++]=new Wo(O,_,0,b),N=N%a);for(B===9?N=a:d1(B)?N+=2:N++,E=j;O===y&&(m++,m0?e.charCodeAt(n-1):0,B=n>1?e.charCodeAt(n-2):0;O===32&&B!==32&&B!==9||(P=!0)}else P=!0;if(P)if(f){const O=g>0?p[g-1].endIndex:o;for(let B=O+1;B<=n;B++)p[g++]=new Wo(B,"mtkw",1,!1)}else p[g++]=new Wo(n,"mtkw",1,!1);else p[g++]=new Wo(n,_,0,b);return p}function Rut(i,e,n,r){r.sort(ru.compare);const s=Sut.normalize(i,r),o=s.length;let a=0;const l=[];let c=0,u=0;for(let h=0,f=n.length;hu&&(u=y.startOffset,l[c++]=new Wo(u,m,_,b)),y.endOffset+1<=g)u=y.endOffset+1,l[c++]=new Wo(u,m+" "+y.className,_|y.metadata,b),a++;else{u=g,l[c++]=new Wo(u,m+" "+y.className,_|y.metadata,b);break}}g>u&&(u=g,l[c++]=new Wo(u,m,_,b))}const d=n[n.length-1].endIndex;if(a'):e.appendString("");for(let M=0,N=u.length;M=d&&(ie+=ee)}}for(H&&(e.appendString(' style="width:'),e.appendString(String(g*X)),e.appendString('px"')),e.appendASCIICharCode(62);k1?e.appendCharCode(8594):e.appendCharCode(65515);for(let ee=2;ee<=K;ee++)e.appendCharCode(160)}else ie=2,K=1,e.appendCharCode(m),e.appendCharCode(8204);R+=ie,E+=K,k>=d&&(D+=K)}}else for(e.appendASCIICharCode(62);k=d&&(D+=ie)}Y?A++:A=0,k>=a&&!x&&P.isPseudoAfter()&&(x=!0,y.setColumnInfo(k+1,M,R,E)),e.appendString("")}return x||y.setColumnInfo(a+1,u.length-1,R,E),l&&(e.appendString(''),e.appendString(L("showMore","Show more ({0})",Mut(c))),e.appendString("")),e.appendString(""),new CJ(y,p,s)}function Nut(i){return i.toString(16).toUpperCase().padStart(4,"0")}function Mut(i){return i<1024?L("overflow.chars","{0} chars",i):i<1024*1024?`${(i/1024).toFixed(1)} KB`:`${(i/1024/1024).toFixed(1)} MB`}class Jpe{constructor(e,n,r,s){this._viewportBrand=void 0,this.top=e|0,this.left=n|0,this.width=r|0,this.height=s|0}}class Put{constructor(e,n){this.tabSize=e,this.data=n}}class uoe{constructor(e,n,r,s,o,a,l){this._viewLineDataBrand=void 0,this.content=e,this.continuesWithWrappedLine=n,this.minColumn=r,this.maxColumn=s,this.startVisibleColumn=o,this.tokens=a,this.inlineDecorations=l}}class fd{constructor(e,n,r,s,o,a,l,c,u,d){this.minColumn=e,this.maxColumn=n,this.content=r,this.continuesWithWrappedLine=s,this.isBasicASCII=fd.isBasicASCII(r,a),this.containsRTL=fd.containsRTL(r,this.isBasicASCII,o),this.tokens=l,this.inlineDecorations=c,this.tabSize=u,this.startVisibleColumn=d}static isBasicASCII(e,n){return n?k5(e):!0}static containsRTL(e,n,r){return!n&&r?TE(e):!1}}class tM{constructor(e,n,r){this.range=e,this.inlineClassName=n,this.type=r}}class Out{constructor(e,n,r,s){this.startOffset=e,this.endOffset=n,this.inlineClassName=r,this.inlineClassNameAffectsLetterSpacing=s}toInlineDecoration(e){return new tM(new J(e,this.startOffset+1,e,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class sIe{constructor(e,n){this._viewModelDecorationBrand=void 0,this.range=e,this.options=n}}class bP{constructor(e,n,r){this.color=e,this.zIndex=n,this.data=r}static compareByRenderingProps(e,n){return e.zIndex===n.zIndex?e.colorn.color?1:0:e.zIndex-n.zIndex}static equals(e,n){return e.color===n.color&&e.zIndex===n.zIndex&&ys(e.data,n.data)}static equalsArr(e,n){return ys(e,n,bP.equals)}}function Fut(i){return Array.isArray(i)}function But(i){return!Fut(i)}function oIe(i){return typeof i=="string"}function ege(i){return!oIe(i)}function WD(i){return!i}function zy(i,e){return i.ignoreCase&&e?e.toLowerCase():e}function tge(i){return i.replace(/[&<>'"_]/g,"-")}function jut(i,e){console.log(`${i.languageId}: ${e}`)}function Lr(i,e){return new Error(`${i.languageId}: ${e}`)}function oy(i,e,n,r,s){const o=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let a=null;return e.replace(o,function(l,c,u,d,h,f,p,g,m){return WD(u)?WD(d)?!WD(h)&&h0;){const r=i.tokenizer[n];if(r)return r;const s=n.lastIndexOf(".");s<0?n=null:n=n.substr(0,s)}return null}function Wut(i,e){let n=e;for(;n&&n.length>0;){if(i.stateNames[n])return!0;const s=n.lastIndexOf(".");s<0?n=null:n=n.substr(0,s)}return!1}var $ut=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},zut=function(i,e){return function(n,r){e(n,r,i)}},SJ;const aIe=5;class yP{static create(e,n){return this._INSTANCE.create(e,n)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,n){if(e!==null&&e.depth>=this._maxCacheDepth)return new H2(e,n);let r=H2.getStackElementId(e);r.length>0&&(r+="|"),r+=n;let s=this._entries[r];return s||(s=new H2(e,n),this._entries[r]=s,s)}}yP._INSTANCE=new yP(aIe);class H2{constructor(e,n){this.parent=e,this.state=n,this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(e){let n="";for(;e!==null;)n.length>0&&(n+="|"),n+=e.state,e=e.parent;return n}static _equals(e,n){for(;e!==null&&n!==null;){if(e===n)return!0;if(e.state!==n.state)return!1;e=e.parent,n=n.parent}return e===null&&n===null}equals(e){return H2._equals(this,e)}push(e){return yP.create(this,e)}pop(){return this.parent}popall(){let e=this;for(;e.parent;)e=e.parent;return e}switchTo(e){return yP.create(this.parent,e)}}class o2{constructor(e,n){this.languageId=e,this.state=n}equals(e){return this.languageId===e.languageId&&this.state.equals(e.state)}clone(){return this.state.clone()===this.state?this:new o2(this.languageId,this.state)}}class ay{static create(e,n){return this._INSTANCE.create(e,n)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,n){if(n!==null)return new nM(e,n);if(e!==null&&e.depth>=this._maxCacheDepth)return new nM(e,n);const r=H2.getStackElementId(e);let s=this._entries[r];return s||(s=new nM(e,null),this._entries[r]=s,s)}}ay._INSTANCE=new ay(aIe);class nM{constructor(e,n){this.stack=e,this.embeddedLanguageData=n}clone(){return(this.embeddedLanguageData?this.embeddedLanguageData.clone():null)===this.embeddedLanguageData?this:ay.create(this.stack,this.embeddedLanguageData)}equals(e){return!(e instanceof nM)||!this.stack.equals(e.stack)?!1:this.embeddedLanguageData===null&&e.embeddedLanguageData===null?!0:this.embeddedLanguageData===null||e.embeddedLanguageData===null?!1:this.embeddedLanguageData.equals(e.embeddedLanguageData)}}class Vut{constructor(){this._tokens=[],this._languageId=null,this._lastTokenType=null,this._lastTokenLanguage=null}enterLanguage(e){this._languageId=e}emit(e,n){this._lastTokenType===n&&this._lastTokenLanguage===this._languageId||(this._lastTokenType=n,this._lastTokenLanguage=this._languageId,this._tokens.push(new rP(e,n,this._languageId)))}nestedLanguageTokenize(e,n,r,s){const o=r.languageId,a=r.state,l=Zr.get(o);if(!l)return this.enterLanguage(o),this.emit(s,""),a;const c=l.tokenize(e,n,a);if(s!==0)for(const u of c.tokens)this._tokens.push(new rP(u.offset+s,u.type,u.language));else this._tokens=this._tokens.concat(c.tokens);return this._lastTokenType=null,this._lastTokenLanguage=null,this._languageId=null,c.endState}finalize(e){return new Bse(this._tokens,e)}}class Q9{constructor(e,n){this._languageService=e,this._theme=n,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}enterLanguage(e){this._currentLanguageId=this._languageService.languageIdCodec.encodeLanguageId(e)}emit(e,n){const r=this._theme.match(this._currentLanguageId,n)|1024;this._lastTokenMetadata!==r&&(this._lastTokenMetadata=r,this._tokens.push(e),this._tokens.push(r))}static _merge(e,n,r){const s=e!==null?e.length:0,o=n.length,a=r!==null?r.length:0;if(s===0&&o===0&&a===0)return new Uint32Array(0);if(s===0&&o===0)return r;if(o===0&&a===0)return e;const l=new Uint32Array(s+o+a);e!==null&&l.set(e);for(let c=0;c{if(a)return;let c=!1;for(let u=0,d=l.changedLanguages.length;u{l.affectsConfiguration("editor.maxTokenizationLineLength")&&(this._maxTokenizationLineLength=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:this._languageId}))}))}getLoadStatus(){const e=[];for(const n in this._embeddedLanguages){const r=Zr.get(n);if(r){if(r instanceof SJ){const s=r.getLoadStatus();s.loaded===!1&&e.push(s.promise)}continue}Zr.isResolved(n)||e.push(Zr.getOrCreate(n))}return e.length===0?{loaded:!0}:{loaded:!1,promise:Promise.all(e).then(n=>{})}}getInitialState(){const e=yP.create(null,this._lexer.start);return ay.create(e,null)}tokenize(e,n,r){if(e.length>=this._maxTokenizationLineLength)return loe(this._languageId,r);const s=new Vut,o=this._tokenize(e,n,r,s);return s.finalize(o)}tokenizeEncoded(e,n,r){if(e.length>=this._maxTokenizationLineLength)return C$(this._languageService.languageIdCodec.encodeLanguageId(this._languageId),r);const s=new Q9(this._languageService,this._standaloneThemeService.getColorTheme().tokenTheme),o=this._tokenize(e,n,r,s);return s.finalize(o)}_tokenize(e,n,r,s){return r.embeddedLanguageData?this._nestedTokenize(e,n,r,0,s):this._myTokenize(e,n,r,0,s)}_findLeavingNestedLanguageOffset(e,n){let r=this._lexer.tokenizer[n.stack.state];if(!r&&(r=V3(this._lexer,n.stack.state),!r))throw Lr(this._lexer,"tokenizer state is not defined: "+n.stack.state);let s=-1,o=!1;for(const a of r){if(!ege(a.action)||a.action.nextEmbedded!=="@pop")continue;o=!0;let l=a.regex;const c=a.regex.source;if(c.substr(0,4)==="^(?:"&&c.substr(c.length-1,1)===")"){const d=(l.ignoreCase?"i":"")+(l.unicode?"u":"");l=new RegExp(c.substr(4,c.length-5),d)}const u=e.search(l);u===-1||u!==0&&a.matchOnlyAtLineStart||(s===-1||u0&&o.nestedLanguageTokenize(l,!1,r.embeddedLanguageData,s);const c=e.substring(a);return this._myTokenize(c,n,r,s+a,o)}_safeRuleName(e){return e?e.name:"(unknown)"}_myTokenize(e,n,r,s,o){o.enterLanguage(this._languageId);const a=e.length,l=n&&this._lexer.includeLF?e+` `:e,c=l.length;let u=r.embeddedLanguageData,d=r.stack,h=0,f=null,p=!0;for(;p||h=c)break;p=!1;let M=this._lexer.tokenizer[b];if(!M&&(M=V3(this._lexer,b),!M))throw Lr(this._lexer,"tokenizer state is not defined: "+b);const N=l.substr(h);for(const P of M)if((h===0||!P.matchOnlyAtLineStart)&&(y=N.match(P.regex),y)){x=y[0],k=P.action;break}}if(y||(y=[""],x=""),k||(h=this._lexer.maxStack)throw Lr(this._lexer,"maximum tokenizer stack size reached: ["+d.state+","+d.parent.state+",...]");d=d.push(b)}else if(k.next==="@pop"){if(d.depth<=1)throw Lr(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(D));d=d.pop()}else if(k.next==="@popall")d=d.popall();else{let M=oy(this._lexer,k.next,x,y,b);if(M[0]==="@"&&(M=M.substr(1)),V3(this._lexer,M))d=d.push(M);else throw Lr(this._lexer,"trying to set a next state '"+M+"' that is undefined in rule: "+this._safeRuleName(D))}}k.log&&typeof k.log=="string"&&jut(this._lexer,this._lexer.languageId+": "+oy(this._lexer,k.log,x,y,b))}if(E===null)throw Lr(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(D));const A=M=>{const N=this._languageService.getLanguageIdByLanguageName(M)||this._languageService.getLanguageIdByMimeType(M)||M,P=this._getNestedEmbeddedLanguageData(N);if(h0)throw Lr(this._lexer,"groups cannot be nested: "+this._safeRuleName(D));if(y.length!==E.length+1)throw Lr(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(D));let M=0;for(let N=1;Ni});class doe{static colorizeElement(e,n,r,s){s=s||{};const o=s.theme||"vs",a=s.mimeType||r.getAttribute("lang")||r.getAttribute("data-lang");if(!a)return console.error("Mode not detected"),Promise.resolve();const l=n.getLanguageIdByMimeType(a)||a;e.setTheme(o);const c=r.firstChild?r.firstChild.nodeValue:"";r.className+=" "+o;const u=d=>{var h;const f=(h=pq==null?void 0:pq.createHTML(d))!==null&&h!==void 0?h:d;r.innerHTML=f};return this.colorize(n,c||"",l,s).then(u,d=>console.error(d))}static colorize(e,n,r,s){return Uut(this,void 0,void 0,function*(){const o=e.languageIdCodec;let a=4;s&&typeof s.tabSize=="number"&&(a=s.tabSize),Use(n)&&(n=n.substr(1));const l=Km(n);if(!e.isRegisteredLanguageId(r))return nge(l,a,o);const c=yield Zr.getOrCreate(r);return c?qut(l,a,c,o):nge(l,a,o)})}static colorizeLine(e,n,r,s,o=4){const a=fd.isBasicASCII(e,n),l=fd.containsRTL(e,a,r);return S$(new X1(!1,!0,e,!1,a,l,0,s,[],o,0,0,0,0,-1,"none",!1,!1,null)).html}static colorizeModelLine(e,n,r=4){const s=e.getLineContent(n);e.tokenization.forceTokenization(n);const a=e.tokenization.getLineTokens(n).inflate();return this.colorizeLine(s,e.mightContainNonBasicASCII(),e.mightContainRTL(),a,r)}}function qut(i,e,n,r){return new Promise((s,o)=>{const a=()=>{const l=Kut(i,e,n,r);if(n instanceof wP){const c=n.getLoadStatus();if(c.loaded===!1){c.promise.then(a,o);return}}s(l)};a()})}function nge(i,e,n){let r=[];const o=new Uint32Array(2);o[0]=0,o[1]=33587200;for(let a=0,l=i.length;a")}return r.join("")}function Kut(i,e,n,r){let s=[],o=n.getInitialState();for(let a=0,l=i.length;a"),o=u.endState}return s.join("")}const ige=2e4;let KC,d8,xJ,h8,kJ;function Gut(i){KC=document.createElement("div"),KC.className="monaco-aria-container";const e=()=>{const r=document.createElement("div");return r.className="monaco-alert",r.setAttribute("role","alert"),r.setAttribute("aria-atomic","true"),KC.appendChild(r),r};d8=e(),xJ=e();const n=()=>{const r=document.createElement("div");return r.className="monaco-status",r.setAttribute("aria-live","polite"),r.setAttribute("aria-atomic","true"),KC.appendChild(r),r};h8=n(),kJ=n(),i.appendChild(KC)}function Ua(i){KC&&(d8.textContent!==i?(la(xJ),J9(d8,i)):(la(d8),J9(xJ,i)))}function v1(i){KC&&(h8.textContent!==i?(la(kJ),J9(h8,i)):(la(h8),J9(kJ,i)))}function J9(i,e){la(i),e.length>ige&&(e=e.substr(0,ige)),i.textContent=e,i.style.visibility="hidden",i.style.visibility="visible"}const hoe=qn("markerDecorationsService");var Xut=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Yut=function(i,e){return function(n,r){e(n,r,i)}};let CP=class{constructor(e,n){}dispose(){}};CP.ID="editor.contrib.markerDecorations";CP=Xut([Yut(1,hoe)],CP);_i(CP.ID,CP,0);class lIe extends Le{constructor(e,n){super(),this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,n)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null;const n=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()};let r=!1,s=!1;const o=()=>{if(r&&!s)try{r=!1,s=!0,n()}finally{requestAnimationFrame(()=>{s=!1,o()})}};this._resizeObserver=new ResizeObserver(a=>{e=a&&a[0]&&a[0].contentRect?a[0].contentRect:null,r=!0,o()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,n){let r=0,s=0;n?(r=n.width,s=n.height):this._referenceDomElement&&(r=this._referenceDomElement.clientWidth,s=this._referenceDomElement.clientHeight),r=Math.max(5,r),s=Math.max(5,s),(this._width!==r||this._height!==s)&&(this._width=r,this._height=s,e&&this._onDidChange.fire())}}class Vy{constructor(e,n){this.key=e,this.migrate=n}apply(e){const n=Vy._read(e,this.key),r=o=>Vy._read(e,o),s=(o,a)=>Vy._write(e,o,a);this.migrate(n,r,s)}static _read(e,n){if(typeof e>"u")return;const r=n.indexOf(".");if(r>=0){const s=n.substring(0,r);return this._read(e[s],n.substring(r+1))}return e[n]}static _write(e,n,r){const s=n.indexOf(".");if(s>=0){const o=n.substring(0,s);e[o]=e[o]||{},this._write(e[o],n.substring(s+1),r);return}e[n]=r}}Vy.items=[];function Y1(i,e){Vy.items.push(new Vy(i,e))}function Sh(i,e){Y1(i,(n,r,s)=>{if(typeof n<"u"){for(const[o,a]of e)if(n===o){s(i,a);return}}})}function Zut(i){Vy.items.forEach(e=>e.apply(i))}Sh("wordWrap",[[!0,"on"],[!1,"off"]]);Sh("lineNumbers",[[!0,"on"],[!1,"off"]]);Sh("cursorBlinking",[["visible","solid"]]);Sh("renderWhitespace",[[!0,"boundary"],[!1,"none"]]);Sh("renderLineHighlight",[[!0,"line"],[!1,"none"]]);Sh("acceptSuggestionOnEnter",[[!0,"on"],[!1,"off"]]);Sh("tabCompletion",[[!1,"off"],[!0,"onlySnippets"]]);Sh("hover",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);Sh("parameterHints",[[!0,{enabled:!0}],[!1,{enabled:!1}]]);Sh("autoIndent",[[!1,"advanced"],[!0,"full"]]);Sh("matchBrackets",[[!0,"always"],[!1,"never"]]);Sh("renderFinalNewline",[[!0,"on"],[!1,"off"]]);Sh("cursorSmoothCaretAnimation",[[!0,"on"],[!1,"off"]]);Y1("autoClosingBrackets",(i,e,n)=>{i===!1&&(n("autoClosingBrackets","never"),typeof e("autoClosingQuotes")>"u"&&n("autoClosingQuotes","never"),typeof e("autoSurround")>"u"&&n("autoSurround","never"))});Y1("renderIndentGuides",(i,e,n)=>{typeof i<"u"&&(n("renderIndentGuides",void 0),typeof e("guides.indentation")>"u"&&n("guides.indentation",!!i))});Y1("highlightActiveIndentGuide",(i,e,n)=>{typeof i<"u"&&(n("highlightActiveIndentGuide",void 0),typeof e("guides.highlightActiveIndentation")>"u"&&n("guides.highlightActiveIndentation",!!i))});const Qut={method:"showMethods",function:"showFunctions",constructor:"showConstructors",deprecated:"showDeprecated",field:"showFields",variable:"showVariables",class:"showClasses",struct:"showStructs",interface:"showInterfaces",module:"showModules",property:"showProperties",event:"showEvents",operator:"showOperators",unit:"showUnits",value:"showValues",constant:"showConstants",enum:"showEnums",enumMember:"showEnumMembers",keyword:"showKeywords",text:"showWords",color:"showColors",file:"showFiles",reference:"showReferences",folder:"showFolders",typeParameter:"showTypeParameters",snippet:"showSnippets"};Y1("suggest.filteredTypes",(i,e,n)=>{if(i&&typeof i=="object"){for(const r of Object.entries(Qut))i[r[0]]===!1&&typeof e(`suggest.${r[1]}`)>"u"&&n(`suggest.${r[1]}`,!1);n("suggest.filteredTypes",void 0)}});Y1("quickSuggestions",(i,e,n)=>{if(typeof i=="boolean"){const r=i?"on":"off";n("quickSuggestions",{comments:r,strings:r,other:r})}});Y1("experimental.stickyScroll.enabled",(i,e,n)=>{typeof i=="boolean"&&(n("experimental.stickyScroll.enabled",void 0),typeof e("stickyScroll.enabled")>"u"&&n("stickyScroll.enabled",i))});Y1("experimental.stickyScroll.maxLineCount",(i,e,n)=>{typeof i=="number"&&(n("experimental.stickyScroll.maxLineCount",void 0),typeof e("stickyScroll.maxLineCount")>"u"&&n("stickyScroll.maxLineCount",i))});class Jut{constructor(){this._tabFocus=!1,this._onDidChangeTabFocus=new _e,this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(e){this._tabFocus=e,this._onDidChangeTabFocus.fire(this._tabFocus)}}const BE=new Jut,zv=qn("accessibilityService"),R5=new yt("accessibilityModeEnabled",!1);var edt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},tdt=function(i,e){return function(n,r){e(n,r,i)}};let LJ=class extends Le{constructor(e,n,r,s){super(),this._accessibilityService=s,this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,this._onDidChangeFast=this._register(new _e),this.onDidChangeFast=this._onDidChangeFast.event,this._isDominatedByLongLines=!1,this._viewLineCount=1,this._lineNumbersDigitCount=1,this._reservedHeight=0,this._glyphMarginDecorationLaneCount=1,this._computeOptionsMemory=new T2e,this.isSimpleWidget=e,this._containerObserver=this._register(new lIe(r,n.dimension)),this._rawOptions=rge(n),this._validatedOptions=ly.validateOptions(this._rawOptions),this.options=this._computeOptions(),this.options.get(13)&&this._containerObserver.startObserving(),this._register(eh.onDidChangeZoomLevel(()=>this._recomputeOptions())),this._register(BE.onDidChangeTabFocus(()=>this._recomputeOptions())),this._register(this._containerObserver.onDidChange(()=>this._recomputeOptions())),this._register(nJ.onDidChange(()=>this._recomputeOptions())),this._register(lP.onDidChange(()=>this._recomputeOptions())),this._register(this._accessibilityService.onDidChangeScreenReaderOptimized(()=>this._recomputeOptions()))}_recomputeOptions(){const e=this._computeOptions(),n=ly.checkEquals(this.options,e);n!==null&&(this.options=e,this._onDidChangeFast.fire(n),this._onDidChange.fire(n))}_computeOptions(){const e=this._readEnvConfiguration(),n=NS.createFromValidatedSettings(this._validatedOptions,e.pixelRatio,this.isSimpleWidget),r=this._readFontInfo(n),s={memory:this._computeOptionsMemory,outerWidth:e.outerWidth,outerHeight:e.outerHeight-this._reservedHeight,fontInfo:r,extraEditorClassName:e.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,viewLineCount:this._viewLineCount,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:e.emptySelectionClipboard,pixelRatio:e.pixelRatio,tabFocusMode:BE.getTabFocusMode(),accessibilitySupport:e.accessibilitySupport,glyphMarginDecorationLaneCount:this._glyphMarginDecorationLaneCount};return ly.computeOptions(this._validatedOptions,s)}_readEnvConfiguration(){return{extraEditorClassName:idt(),outerWidth:this._containerObserver.getWidth(),outerHeight:this._containerObserver.getHeight(),emptySelectionClipboard:QW||gh,pixelRatio:lP.value,accessibilitySupport:this._accessibilityService.isScreenReaderOptimized()?2:this._accessibilityService.getAccessibilitySupport()}}_readFontInfo(e){return nJ.readFontInfo(e)}getRawOptions(){return this._rawOptions}updateOptions(e){const n=rge(e);ly.applyUpdate(this._rawOptions,n)&&(this._validatedOptions=ly.validateOptions(this._rawOptions),this._recomputeOptions())}observeContainer(e){this._containerObserver.observe(e)}setIsDominatedByLongLines(e){this._isDominatedByLongLines!==e&&(this._isDominatedByLongLines=e,this._recomputeOptions())}setModelLineCount(e){const n=ndt(e);this._lineNumbersDigitCount!==n&&(this._lineNumbersDigitCount=n,this._recomputeOptions())}setViewLineCount(e){this._viewLineCount!==e&&(this._viewLineCount=e,this._recomputeOptions())}setReservedHeight(e){this._reservedHeight!==e&&(this._reservedHeight=e,this._recomputeOptions())}setGlyphMarginDecorationLaneCount(e){this._glyphMarginDecorationLaneCount!==e&&(this._glyphMarginDecorationLaneCount=e,this._recomputeOptions())}};LJ=edt([tdt(3,zv)],LJ);function ndt(i){let e=0;for(;i;)i=Math.floor(i/10),e++;return e||1}function idt(){let i="";return!h1&&!nEe&&(i+="no-user-select "),h1&&(i+="no-minimap-shadow ",i+="enable-user-select "),ri&&(i+="mac "),i}class rdt{constructor(){this._values=[]}_read(e){return this._values[e]}get(e){return this._values[e]}_write(e,n){this._values[e]=n}}class sdt{constructor(){this._values=[]}_read(e){if(e>=this._values.length)throw new Error("Cannot read uninitialized value");return this._values[e]}get(e){return this._read(e)}_write(e,n){this._values[e]=n}}class ly{static validateOptions(e){const n=new rdt;for(const r of t2){const s=r.name==="_never_"?void 0:e[r.name];n._write(r.id,r.validate(s))}return n}static computeOptions(e,n){const r=new sdt;for(const s of t2)r._write(s.id,s.compute(n,r,e._read(s.id)));return r}static _deepEquals(e,n){if(typeof e!="object"||typeof n!="object"||!e||!n)return e===n;if(Array.isArray(e)||Array.isArray(n))return Array.isArray(e)&&Array.isArray(n)?ys(e,n):!1;if(Object.keys(e).length!==Object.keys(n).length)return!1;for(const r in e)if(!ly._deepEquals(e[r],n[r]))return!1;return!0}static checkEquals(e,n){const r=[];let s=!1;for(const o of t2){const a=!ly._deepEquals(e._read(o.id),n._read(o.id));r[o.id]=a,a&&(s=!0)}return s?new I2e(r):null}static applyUpdate(e,n){let r=!1;for(const s of t2)if(n.hasOwnProperty(s.name)){const o=s.applyUpdate(e[s.name],n[s.name]);e[s.name]=o.newValue,r=r||o.didChange}return r}}function rge(i){const e=T0(i);return Zut(e),e}function Ms(i,e,n){let r=null,s=null;if(typeof n.value=="function"?(r="value",s=n.value,s.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof n.get=="function"&&(r="get",s=n.get),!s)throw new Error("not supported");const o=`$memoize$${e}`;n[r]=function(...a){return this.hasOwnProperty(o)||Object.defineProperty(this,o,{configurable:!1,enumerable:!1,writable:!1,value:s.apply(this,a)}),this[o]}}var odt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},lr;(function(i){i.Tap="-monaco-gesturetap",i.Change="-monaco-gesturechange",i.Start="-monaco-gesturestart",i.End="-monaco-gesturesend",i.Contextmenu="-monaco-gesturecontextmenu"})(lr||(lr={}));class or extends Le{constructor(){super(),this.dispatched=!1,this.targets=new jl,this.ignoreTargets=new jl,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(Be(document,"touchstart",e=>this.onTouchStart(e),{passive:!1})),this._register(Be(document,"touchend",e=>this.onTouchEnd(e))),this._register(Be(document,"touchmove",e=>this.onTouchMove(e),{passive:!1}))}static addTarget(e){if(!or.isTouchDevice())return Le.None;or.INSTANCE||(or.INSTANCE=new or);const n=or.INSTANCE.targets.push(e);return gn(n)}static ignoreTarget(e){if(!or.isTouchDevice())return Le.None;or.INSTANCE||(or.INSTANCE=new or);const n=or.INSTANCE.ignoreTargets.push(e);return gn(n)}static isTouchDevice(){return"ontouchstart"in window||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){const n=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let r=0,s=e.targetTouches.length;r=or.HOLD_DELAY&&Math.abs(l.initialPageX-Pd(l.rollingPageX))<30&&Math.abs(l.initialPageY-Pd(l.rollingPageY))<30){const u=this.newGestureEvent(lr.Contextmenu,l.initialTarget);u.pageX=Pd(l.rollingPageX),u.pageY=Pd(l.rollingPageY),this.dispatchEvent(u)}else if(r===1){const u=Pd(l.rollingPageX),d=Pd(l.rollingPageY),h=Pd(l.rollingTimestamps)-l.rollingTimestamps[0],f=u-l.rollingPageX[0],p=d-l.rollingPageY[0],g=[...this.targets].filter(m=>l.initialTarget instanceof Node&&m.contains(l.initialTarget));this.inertia(g,n,Math.abs(f)/h,f>0?1:-1,u,Math.abs(p)/h,p>0?1:-1,d)}this.dispatchEvent(this.newGestureEvent(lr.End,l.initialTarget)),delete this.activeTouches[a.identifier]}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,n){const r=document.createEvent("CustomEvent");return r.initEvent(e,!1,!0),r.initialTarget=n,r.tapCount=0,r}dispatchEvent(e){if(e.type===lr.Tap){const n=new Date().getTime();let r=0;n-this._lastSetTapCountTime>or.CLEAR_TAP_COUNT_TIME?r=1:r=2,this._lastSetTapCountTime=n,e.tapCount=r}else(e.type===lr.Change||e.type===lr.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(const n of this.ignoreTargets)if(n.contains(e.initialTarget))return;for(const n of this.targets)n.contains(e.initialTarget)&&(n.dispatchEvent(e),this.dispatched=!0)}}inertia(e,n,r,s,o,a,l,c){this.handle=mh(()=>{const u=Date.now(),d=u-n;let h=0,f=0,p=!0;r+=or.SCROLL_FRICTION*d,a+=or.SCROLL_FRICTION*d,r>0&&(p=!1,h=s*r*d),a>0&&(p=!1,f=l*a*d);const g=this.newGestureEvent(lr.Change);g.translationX=h,g.translationY=f,e.forEach(m=>m.dispatchEvent(g)),p||this.inertia(e,u,r,s,o+h,a,l,c+f)})}onTouchMove(e){const n=Date.now();for(let r=0,s=e.changedTouches.length;r3&&(a.rollingPageX.shift(),a.rollingPageY.shift(),a.rollingTimestamps.shift()),a.rollingPageX.push(o.pageX),a.rollingPageY.push(o.pageY),a.rollingTimestamps.push(n)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}}or.SCROLL_FRICTION=-.005;or.HOLD_DELAY=700;or.CLEAR_TAP_COUNT_TIME=400;odt([Ms],or,"isTouchDevice",null);class $I{constructor(){this._hooks=new Xe,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(e,n){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;const r=this._onStopCallback;this._onStopCallback=null,e&&r&&r(n)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(e,n,r,s,o){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=s,this._onStopCallback=o;let a=e;try{e.setPointerCapture(n),this._hooks.add(gn(()=>{try{e.releasePointerCapture(n)}catch{}}))}catch{a=window}this._hooks.add(Be(a,ht.POINTER_MOVE,l=>{if(l.buttons!==r){this.stopMonitoring(!0);return}l.preventDefault(),this._pointerMoveCallback(l)})),this._hooks.add(Be(a,ht.POINTER_UP,l=>this.stopMonitoring(!0)))}}function foe(i){return`--vscode-${i.replace(/\./g,"-")}`}function wt(i){return`var(${foe(i)})`}function adt(i,e){return`var(${foe(i)}, ${e})`}const cIe={ColorContribution:"base.contributions.colors"};class ldt{constructor(){this._onDidChangeSchema=new _e,this.onDidChangeSchema=this._onDidChangeSchema.event,this.colorSchema={type:"object",properties:{}},this.colorReferenceSchema={type:"string",enum:[],enumDescriptions:[]},this.colorsById={}}registerColor(e,n,r,s=!1,o){const a={id:e,description:r,defaults:n,needsTransparency:s,deprecationMessage:o};this.colorsById[e]=a;const l={type:"string",description:r,format:"color-hex",defaultSnippets:[{body:"${1:#ff0000}"}]};return o&&(l.deprecationMessage=o),this.colorSchema.properties[e]=l,this.colorReferenceSchema.enum.push(e),this.colorReferenceSchema.enumDescriptions.push(r),this._onDidChangeSchema.fire(),e}getColors(){return Object.keys(this.colorsById).map(e=>this.colorsById[e])}resolveDefaultColor(e,n){const r=this.colorsById[e];if(r&&r.defaults){const s=r.defaults[n.type];return cp(s,n)}}getColorSchema(){return this.colorSchema}toString(){const e=(n,r)=>{const s=n.indexOf(".")===-1?0:1,o=r.indexOf(".")===-1?0:1;return s!==o?s-o:n.localeCompare(r)};return Object.keys(this.colorsById).sort(e).map(n=>`- \`${n}\`: ${this.colorsById[n].description}`).join(` `)}}const x$=new ldt;Kr.add(cIe.ColorContribution,x$);function ce(i,e,n,r,s){return x$.registerColor(i,e,n,r,s)}const ot=ce("foreground",{dark:"#CCCCCC",light:"#616161",hcDark:"#FFFFFF",hcLight:"#292929"},L("foreground","Overall foreground color. This color is only used if not overridden by a component."));ce("disabledForeground",{dark:"#CCCCCC80",light:"#61616180",hcDark:"#A5A5A5",hcLight:"#7F7F7F"},L("disabledForeground","Overall foreground for disabled elements. This color is only used if not overridden by a component."));const cdt=ce("errorForeground",{dark:"#F48771",light:"#A1260D",hcDark:"#F48771",hcLight:"#B5200D"},L("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component."));ce("descriptionForeground",{light:"#717171",dark:Ht(ot,.7),hcDark:Ht(ot,.7),hcLight:Ht(ot,.7)},L("descriptionForeground","Foreground color for description text providing additional information, for example for a label."));const _y=ce("icon.foreground",{dark:"#C5C5C5",light:"#424242",hcDark:"#FFFFFF",hcLight:"#292929"},L("iconForeground","The default color for icons in the workbench.")),Qu=ce("focusBorder",{dark:"#007FD4",light:"#0090F1",hcDark:"#F38518",hcLight:"#006BBD"},L("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),Jn=ce("contrastBorder",{light:null,dark:null,hcDark:"#6FC3DF",hcLight:"#0F4A85"},L("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),Dr=ce("contrastActiveBorder",{light:null,dark:null,hcDark:Qu,hcLight:Qu},L("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast."));ce("selection.background",{light:null,dark:null,hcDark:null,hcLight:null},L("selectionBackground","The background color of text selections in the workbench (e.g. for input fields or text areas). Note that this does not apply to selections within the editor."));ce("textSeparator.foreground",{light:"#0000002e",dark:"#ffffff2e",hcDark:Te.black,hcLight:"#292929"},L("textSeparatorForeground","Color for text separators."));const udt=ce("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hcDark:"#3794FF",hcLight:"#0F4A85"},L("textLinkForeground","Foreground color for links in text."));ce("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hcDark:"#3794FF",hcLight:"#0F4A85"},L("textLinkActiveForeground","Foreground color for links in text when clicked on and on mouse hover."));ce("textPreformat.foreground",{light:"#A31515",dark:"#D7BA7D",hcDark:"#D7BA7D",hcLight:"#292929"},L("textPreformatForeground","Foreground color for preformatted text segments."));ce("textBlockQuote.background",{light:"#7f7f7f1a",dark:"#7f7f7f1a",hcDark:null,hcLight:"#F2F2F2"},L("textBlockQuoteBackground","Background color for block quotes in text."));ce("textBlockQuote.border",{light:"#007acc80",dark:"#007acc80",hcDark:Te.white,hcLight:"#292929"},L("textBlockQuoteBorder","Border color for block quotes in text."));ce("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hcDark:Te.black,hcLight:"#F2F2F2"},L("textCodeBlockBackground","Background color for code blocks in text."));const bm=ce("widget.shadow",{dark:Ht(Te.black,.36),light:Ht(Te.black,.16),hcDark:null,hcLight:null},L("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),poe=ce("widget.border",{dark:null,light:null,hcDark:Jn,hcLight:Jn},L("widgetBorder","Border color of widgets such as find/replace inside the editor.")),uIe=ce("input.background",{dark:"#3C3C3C",light:Te.white,hcDark:Te.black,hcLight:Te.white},L("inputBoxBackground","Input box background.")),dIe=ce("input.foreground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("inputBoxForeground","Input box foreground.")),hIe=ce("input.border",{dark:null,light:null,hcDark:Jn,hcLight:Jn},L("inputBoxBorder","Input box border.")),goe=ce("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:Jn,hcLight:Jn},L("inputBoxActiveOptionBorder","Border color of activated options in input fields."));ce("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},L("inputOption.hoverBackground","Background color of activated options in input fields."));const mS=ce("inputOption.activeBackground",{dark:Ht(Qu,.4),light:Ht(Qu,.2),hcDark:Te.transparent,hcLight:Te.transparent},L("inputOption.activeBackground","Background hover color of options in input fields.")),moe=ce("inputOption.activeForeground",{dark:Te.white,light:Te.black,hcDark:ot,hcLight:ot},L("inputOption.activeForeground","Foreground color of activated options in input fields."));ce("input.placeholderForeground",{light:Ht(ot,.5),dark:Ht(ot,.5),hcDark:Ht(ot,.7),hcLight:Ht(ot,.7)},L("inputPlaceholderForeground","Input box foreground color for placeholder text."));const ddt=ce("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:Te.black,hcLight:Te.white},L("inputValidationInfoBackground","Input validation background color for information severity.")),hdt=ce("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:ot},L("inputValidationInfoForeground","Input validation foreground color for information severity.")),fdt=ce("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:Jn,hcLight:Jn},L("inputValidationInfoBorder","Input validation border color for information severity.")),pdt=ce("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:Te.black,hcLight:Te.white},L("inputValidationWarningBackground","Input validation background color for warning severity.")),gdt=ce("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:ot},L("inputValidationWarningForeground","Input validation foreground color for warning severity.")),mdt=ce("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:Jn,hcLight:Jn},L("inputValidationWarningBorder","Input validation border color for warning severity.")),_dt=ce("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:Te.black,hcLight:Te.white},L("inputValidationErrorBackground","Input validation background color for error severity.")),vdt=ce("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:ot},L("inputValidationErrorForeground","Input validation foreground color for error severity.")),bdt=ce("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:Jn,hcLight:Jn},L("inputValidationErrorBorder","Input validation border color for error severity.")),ym=ce("dropdown.background",{dark:"#3C3C3C",light:Te.white,hcDark:Te.black,hcLight:Te.white},L("dropdownBackground","Dropdown background.")),ydt=ce("dropdown.listBackground",{dark:null,light:null,hcDark:Te.black,hcLight:Te.white},L("dropdownListBackground","Dropdown list background.")),J0=ce("dropdown.foreground",{dark:"#F0F0F0",light:ot,hcDark:Te.white,hcLight:ot},L("dropdownForeground","Dropdown foreground.")),a2=ce("dropdown.border",{dark:ym,light:"#CECECE",hcDark:Jn,hcLight:Jn},L("dropdownBorder","Dropdown border.")),aN=ce("button.foreground",{dark:Te.white,light:Te.white,hcDark:Te.white,hcLight:Te.white},L("buttonForeground","Button foreground color.")),wdt=ce("button.separator",{dark:Ht(aN,.4),light:Ht(aN,.4),hcDark:Ht(aN,.4),hcLight:Ht(aN,.4)},L("buttonSeparator","Button separator color.")),lN=ce("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:null,hcLight:"#0F4A85"},L("buttonBackground","Button background color.")),Cdt=ce("button.hoverBackground",{dark:zp(lN,.2),light:Yx(lN,.2),hcDark:lN,hcLight:lN},L("buttonHoverBackground","Button background color when hovering.")),Sdt=ce("button.border",{dark:Jn,light:Jn,hcDark:Jn,hcLight:Jn},L("buttonBorder","Button border color.")),xdt=ce("button.secondaryForeground",{dark:Te.white,light:Te.white,hcDark:Te.white,hcLight:ot},L("buttonSecondaryForeground","Secondary button foreground color.")),DJ=ce("button.secondaryBackground",{dark:"#3A3D41",light:"#5F6A79",hcDark:null,hcLight:Te.white},L("buttonSecondaryBackground","Secondary button background color.")),kdt=ce("button.secondaryHoverBackground",{dark:zp(DJ,.2),light:Yx(DJ,.2),hcDark:null,hcLight:null},L("buttonSecondaryHoverBackground","Secondary button background color when hovering.")),f8=ce("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hcDark:Te.black,hcLight:"#0F4A85"},L("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),Ldt=ce("badge.foreground",{dark:Te.white,light:"#333",hcDark:Te.white,hcLight:Te.white},L("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),Ddt=ce("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hcDark:null,hcLight:null},L("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),cN=ce("scrollbarSlider.background",{dark:Te.fromHex("#797979").transparent(.4),light:Te.fromHex("#646464").transparent(.4),hcDark:Ht(Jn,.6),hcLight:Ht(Jn,.4)},L("scrollbarSliderBackground","Scrollbar slider background color.")),uN=ce("scrollbarSlider.hoverBackground",{dark:Te.fromHex("#646464").transparent(.7),light:Te.fromHex("#646464").transparent(.7),hcDark:Ht(Jn,.8),hcLight:Ht(Jn,.8)},L("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),dN=ce("scrollbarSlider.activeBackground",{dark:Te.fromHex("#BFBFBF").transparent(.4),light:Te.fromHex("#000000").transparent(.6),hcDark:Jn,hcLight:Jn},L("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),Edt=ce("progressBar.background",{dark:Te.fromHex("#0E70C0"),light:Te.fromHex("#0E70C0"),hcDark:Jn,hcLight:Jn},L("progressBarBackground","Background color of the progress bar that can show for long running operations."));ce("editorError.background",{dark:null,light:null,hcDark:null,hcLight:null},L("editorError.background","Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const wm=ce("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},L("editorError.foreground","Foreground color of error squigglies in the editor.")),Idt=ce("editorError.border",{dark:null,light:null,hcDark:Te.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},L("errorBorder","If set, color of double underlines for errors in the editor."));ce("editorWarning.background",{dark:null,light:null,hcDark:null,hcLight:null},L("editorWarning.background","Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const Ju=ce("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},L("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),SP=ce("editorWarning.border",{dark:null,light:null,hcDark:Te.fromHex("#FFCC00").transparent(.8),hcLight:Te.fromHex("#FFCC00").transparent(.8)},L("warningBorder","If set, color of double underlines for warnings in the editor."));ce("editorInfo.background",{dark:null,light:null,hcDark:null,hcLight:null},L("editorInfo.background","Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);const _c=ce("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hcDark:"#3794FF",hcLight:"#1a85ff"},L("editorInfo.foreground","Foreground color of info squigglies in the editor.")),xP=ce("editorInfo.border",{dark:null,light:null,hcDark:Te.fromHex("#3794FF").transparent(.8),hcLight:"#292929"},L("infoBorder","If set, color of double underlines for infos in the editor.")),Tdt=ce("editorHint.foreground",{dark:Te.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},L("editorHint.foreground","Foreground color of hint squigglies in the editor."));ce("editorHint.border",{dark:null,light:null,hcDark:Te.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},L("hintBorder","If set, color of double underlines for hints in the editor."));ce("sash.hoverBorder",{dark:Qu,light:Qu,hcDark:Qu,hcLight:Qu},L("sashActiveBorder","Border color of active sashes."));const Lo=ce("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:Te.black,hcLight:Te.white},L("editorBackground","Editor background color.")),_f=ce("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:Te.white,hcLight:ot},L("editorForeground","Editor default foreground color."));ce("editorStickyScroll.background",{light:Lo,dark:Lo,hcDark:Lo,hcLight:Lo},L("editorStickyScrollBackground","Sticky scroll background color for the editor"));ce("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:Te.fromHex("#0F4A85").transparent(.1)},L("editorStickyScrollHoverBackground","Sticky scroll on hover background color for the editor"));const cs=ce("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:Te.white},L("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),Cm=ce("editorWidget.foreground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),Sm=ce("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hcDark:Jn,hcLight:Jn},L("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget.")),Rdt=ce("editorWidget.resizeBorder",{light:null,dark:null,hcDark:null,hcLight:null},L("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),sge=ce("quickInput.background",{dark:cs,light:cs,hcDark:cs,hcLight:cs},L("pickerBackground","Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),Adt=ce("quickInput.foreground",{dark:Cm,light:Cm,hcDark:Cm,hcLight:Cm},L("pickerForeground","Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),Ndt=ce("quickInputTitle.background",{dark:new Te(new ii(255,255,255,.105)),light:new Te(new ii(0,0,0,.06)),hcDark:"#000000",hcLight:Te.white},L("pickerTitleBackground","Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),fIe=ce("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hcDark:Te.white,hcLight:"#0F4A85"},L("pickerGroupForeground","Quick picker color for grouping labels.")),Mdt=ce("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hcDark:Te.white,hcLight:"#0F4A85"},L("pickerGroupBorder","Quick picker color for grouping borders.")),Pdt=ce("keybindingLabel.background",{dark:new Te(new ii(128,128,128,.17)),light:new Te(new ii(221,221,221,.4)),hcDark:Te.transparent,hcLight:Te.transparent},L("keybindingLabelBackground","Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),Odt=ce("keybindingLabel.foreground",{dark:Te.fromHex("#CCCCCC"),light:Te.fromHex("#555555"),hcDark:Te.white,hcLight:ot},L("keybindingLabelForeground","Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),Fdt=ce("keybindingLabel.border",{dark:new Te(new ii(51,51,51,.6)),light:new Te(new ii(204,204,204,.4)),hcDark:new Te(new ii(111,195,223)),hcLight:Jn},L("keybindingLabelBorder","Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),Bdt=ce("keybindingLabel.bottomBorder",{dark:new Te(new ii(68,68,68,.6)),light:new Te(new ii(187,187,187,.4)),hcDark:new Te(new ii(111,195,223)),hcLight:ot},L("keybindingLabelBottomBorder","Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),vy=ce("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},L("editorSelectionBackground","Color of the editor selection.")),jdt=ce("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:Te.white},L("editorSelectionForeground","Color of the selected text for high contrast.")),pIe=ce("editor.inactiveSelectionBackground",{light:Ht(vy,.5),dark:Ht(vy,.5),hcDark:Ht(vy,.7),hcLight:Ht(vy,.5)},L("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),_oe=ce("editor.selectionHighlightBackground",{light:hge(vy,Lo,.3,.6),dark:hge(vy,Lo,.3,.6),hcDark:null,hcLight:null},L("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);ce("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:Dr,hcLight:Dr},L("editorSelectionHighlightBorder","Border color for regions with the same content as the selection."));const Wdt=ce("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},L("editorFindMatch","Color of the current search match.")),xm=ce("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},L("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),$dt=ce("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},L("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),zdt=ce("editor.findMatchBorder",{light:null,dark:null,hcDark:Dr,hcLight:Dr},L("editorFindMatchBorder","Border color of the current search match.")),by=ce("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:Dr,hcLight:Dr},L("findMatchHighlightBorder","Border color of the other search matches.")),Vdt=ce("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:Ht(Dr,.4),hcLight:Ht(Dr,.4)},L("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);ce("searchEditor.findMatchBackground",{light:Ht(xm,.66),dark:Ht(xm,.66),hcDark:xm,hcLight:xm},L("searchEditor.queryMatch","Color of the Search Editor query matches."));ce("searchEditor.findMatchBorder",{light:Ht(by,.66),dark:Ht(by,.66),hcDark:by,hcLight:by},L("searchEditor.editorFindMatchBorder","Border color of the Search Editor query matches."));ce("search.resultsInfoForeground",{light:ot,dark:Ht(ot,.65),hcDark:ot,hcLight:ot},L("search.resultsInfoForeground","Color of the text in the search viewlet's completion message."));ce("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},L("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);const e7=ce("editorHoverWidget.background",{light:cs,dark:cs,hcDark:cs,hcLight:cs},L("hoverBackground","Background color of the editor hover."));ce("editorHoverWidget.foreground",{light:Cm,dark:Cm,hcDark:Cm,hcLight:Cm},L("hoverForeground","Foreground color of the editor hover."));const Hdt=ce("editorHoverWidget.border",{light:Sm,dark:Sm,hcDark:Sm,hcLight:Sm},L("hoverBorder","Border color of the editor hover."));ce("editorHoverWidget.statusBarBackground",{dark:zp(e7,.2),light:Yx(e7,.05),hcDark:cs,hcLight:cs},L("statusBarBackground","Background color of the editor hover status bar."));const Udt=ce("editorLink.activeForeground",{dark:"#4E94CE",light:Te.blue,hcDark:Te.cyan,hcLight:"#292929"},L("activeLinkForeground","Color of active links.")),ev=ce("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:Te.white,hcLight:Te.black},L("editorInlayHintForeground","Foreground color of inline hints")),tv=ce("editorInlayHint.background",{dark:Ht(f8,.1),light:Ht(f8,.1),hcDark:Ht(Te.white,.1),hcLight:Ht(f8,.1)},L("editorInlayHintBackground","Background color of inline hints")),qdt=ce("editorInlayHint.typeForeground",{dark:ev,light:ev,hcDark:ev,hcLight:ev},L("editorInlayHintForegroundTypes","Foreground color of inline hints for types")),Kdt=ce("editorInlayHint.typeBackground",{dark:tv,light:tv,hcDark:tv,hcLight:tv},L("editorInlayHintBackgroundTypes","Background color of inline hints for types")),Gdt=ce("editorInlayHint.parameterForeground",{dark:ev,light:ev,hcDark:ev,hcLight:ev},L("editorInlayHintForegroundParameter","Foreground color of inline hints for parameters")),Xdt=ce("editorInlayHint.parameterBackground",{dark:tv,light:tv,hcDark:tv,hcLight:tv},L("editorInlayHintBackgroundParameter","Background color of inline hints for parameters"));ce("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},L("editorLightBulbForeground","The color used for the lightbulb actions icon."));ce("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},L("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon."));const EJ=new Te(new ii(155,185,85,.2)),IJ=new Te(new ii(255,0,0,.2)),Ydt=ce("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},L("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),Zdt=ce("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},L("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);ce("diffEditor.insertedLineBackground",{dark:EJ,light:EJ,hcDark:null,hcLight:null},L("diffEditorInsertedLines","Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0);ce("diffEditor.removedLineBackground",{dark:IJ,light:IJ,hcDark:null,hcLight:null},L("diffEditorRemovedLines","Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);ce("diffEditorGutter.insertedLineBackground",{dark:null,light:null,hcDark:null,hcLight:null},L("diffEditorInsertedLineGutter","Background color for the margin where lines got inserted."));ce("diffEditorGutter.removedLineBackground",{dark:null,light:null,hcDark:null,hcLight:null},L("diffEditorRemovedLineGutter","Background color for the margin where lines got removed."));const Qdt=ce("diffEditorOverview.insertedForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("diffEditorOverviewInserted","Diff overview ruler foreground for inserted content.")),Jdt=ce("diffEditorOverview.removedForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("diffEditorOverviewRemoved","Diff overview ruler foreground for removed content."));ce("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},L("diffEditorInsertedOutline","Outline color for the text that got inserted."));ce("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},L("diffEditorRemovedOutline","Outline color for text that got removed."));ce("diffEditor.border",{dark:null,light:null,hcDark:Jn,hcLight:Jn},L("diffEditorBorder","Border color between the two text editors."));ce("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},L("diffDiagonalFill","Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views."));ce("diffEditor.unchangedRegionBackground",{dark:"#3e3e3e",light:"#e4e4e4",hcDark:null,hcLight:null},L("diffEditor.unchangedRegionBackground","The background color of unchanged blocks in the diff editor."));ce("diffEditor.unchangedRegionForeground",{dark:"#a3a2a2",light:"#4d4c4c",hcDark:null,hcLight:null},L("diffEditor.unchangedRegionForeground","The foreground color of unchanged blocks in the diff editor."));ce("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},L("diffEditor.unchangedCodeBackground","The background color of unchanged code in the diff editor."));const eht=ce("list.focusBackground",{dark:null,light:null,hcDark:null,hcLight:null},L("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),tht=ce("list.focusForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),nht=ce("list.focusOutline",{dark:Qu,light:Qu,hcDark:Dr,hcLight:Dr},L("listFocusOutline","List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),iht=ce("list.focusAndSelectionOutline",{dark:null,light:null,hcDark:null,hcLight:null},L("listFocusAndSelectionOutline","List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.")),nv=ce("list.activeSelectionBackground",{dark:"#04395E",light:"#0060C0",hcDark:null,hcLight:Te.fromHex("#0F4A85").transparent(.1)},L("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),km=ce("list.activeSelectionForeground",{dark:Te.white,light:Te.white,hcDark:null,hcLight:null},L("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),hN=ce("list.activeSelectionIconForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("listActiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),rht=ce("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hcDark:null,hcLight:Te.fromHex("#0F4A85").transparent(.1)},L("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),sht=ce("list.inactiveSelectionForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),oht=ce("list.inactiveSelectionIconForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("listInactiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),aht=ce("list.inactiveFocusBackground",{dark:null,light:null,hcDark:null,hcLight:null},L("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),lht=ce("list.inactiveFocusOutline",{dark:null,light:null,hcDark:null,hcLight:null},L("listInactiveFocusOutline","List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),gIe=ce("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:Te.white.transparent(.1),hcLight:Te.fromHex("#0F4A85").transparent(.1)},L("listHoverBackground","List/Tree background when hovering over items using the mouse.")),mIe=ce("list.hoverForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),cht=ce("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hcDark:null,hcLight:null},L("listDropBackground","List/Tree drag and drop background when moving items around using the mouse.")),vf=ce("list.highlightForeground",{dark:"#2AAAFF",light:"#0066BF",hcDark:Qu,hcLight:Qu},L("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),H3=ce("list.focusHighlightForeground",{dark:vf,light:jht(nv,vf,"#BBE7FF"),hcDark:vf,hcLight:vf},L("listFocusHighlightForeground","List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree."));ce("list.invalidItemForeground",{dark:"#B89500",light:"#B89500",hcDark:"#B89500",hcLight:"#B5200D"},L("invalidItemForeground","List/Tree foreground color for invalid items, for example an unresolved root in explorer."));ce("list.errorForeground",{dark:"#F88070",light:"#B01011",hcDark:null,hcLight:null},L("listErrorForeground","Foreground color of list items containing errors."));ce("list.warningForeground",{dark:"#CCA700",light:"#855F00",hcDark:null,hcLight:null},L("listWarningForeground","Foreground color of list items containing warnings."));const uht=ce("listFilterWidget.background",{light:Yx(cs,0),dark:zp(cs,0),hcDark:cs,hcLight:cs},L("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),dht=ce("listFilterWidget.outline",{dark:Te.transparent,light:Te.transparent,hcDark:"#f38518",hcLight:"#007ACC"},L("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),hht=ce("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hcDark:Jn,hcLight:Jn},L("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),fht=ce("listFilterWidget.shadow",{dark:bm,light:bm,hcDark:bm,hcLight:bm},L("listFilterWidgetShadow","Shadow color of the type filter widget in lists and trees."));ce("list.filterMatchBackground",{dark:xm,light:xm,hcDark:null,hcLight:null},L("listFilterMatchHighlight","Background color of the filtered match."));ce("list.filterMatchBorder",{dark:by,light:by,hcDark:Jn,hcLight:Dr},L("listFilterMatchHighlightBorder","Border color of the filtered match."));const fN=ce("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hcDark:"#a9a9a9",hcLight:"#a5a5a5"},L("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),pht=ce("tree.inactiveIndentGuidesStroke",{dark:Ht(fN,.4),light:Ht(fN,.4),hcDark:Ht(fN,.4),hcLight:Ht(fN,.4)},L("treeInactiveIndentGuidesStroke","Tree stroke color for the indentation guides that are not active.")),ght=ce("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hcDark:null,hcLight:null},L("tableColumnsBorder","Table border color between columns.")),mht=ce("tree.tableOddRowsBackground",{dark:Ht(ot,.04),light:Ht(ot,.04),hcDark:null,hcLight:null},L("tableOddRowsBackgroundColor","Background color for odd table rows."));ce("list.deemphasizedForeground",{dark:"#8C8C8C",light:"#8E8E90",hcDark:"#A7A8A9",hcLight:"#666666"},L("listDeemphasizedForeground","List/Tree foreground color for items that are deemphasized. "));const _ht=ce("checkbox.background",{dark:ym,light:ym,hcDark:ym,hcLight:ym},L("checkbox.background","Background color of checkbox widget."));ce("checkbox.selectBackground",{dark:cs,light:cs,hcDark:cs,hcLight:cs},L("checkbox.select.background","Background color of checkbox widget when the element it's in is selected."));const vht=ce("checkbox.foreground",{dark:J0,light:J0,hcDark:J0,hcLight:J0},L("checkbox.foreground","Foreground color of checkbox widget.")),bht=ce("checkbox.border",{dark:a2,light:a2,hcDark:a2,hcLight:a2},L("checkbox.border","Border color of checkbox widget."));ce("checkbox.selectBorder",{dark:_y,light:_y,hcDark:_y,hcLight:_y},L("checkbox.select.border","Border color of checkbox widget when the element it's in is selected."));const oge=ce("quickInput.list.focusBackground",{dark:null,light:null,hcDark:null,hcLight:null},"",void 0,L("quickInput.list.focusBackground deprecation","Please use quickInputList.focusBackground instead")),_S=ce("quickInputList.focusForeground",{dark:km,light:km,hcDark:km,hcLight:km},L("quickInput.listFocusForeground","Quick picker foreground color for the focused item.")),l2=ce("quickInputList.focusIconForeground",{dark:hN,light:hN,hcDark:hN,hcLight:hN},L("quickInput.listFocusIconForeground","Quick picker icon foreground color for the focused item.")),vS=ce("quickInputList.focusBackground",{dark:kP(oge,nv),light:kP(oge,nv),hcDark:null,hcLight:null},L("quickInput.listFocusBackground","Quick picker background color for the focused item.")),yht=ce("menu.border",{dark:null,light:null,hcDark:Jn,hcLight:Jn},L("menuBorder","Border color of menus.")),wht=ce("menu.foreground",{dark:J0,light:J0,hcDark:J0,hcLight:J0},L("menuForeground","Foreground color of menu items.")),Cht=ce("menu.background",{dark:ym,light:ym,hcDark:ym,hcLight:ym},L("menuBackground","Background color of menu items.")),Sht=ce("menu.selectionForeground",{dark:km,light:km,hcDark:km,hcLight:km},L("menuSelectionForeground","Foreground color of the selected menu item in menus.")),xht=ce("menu.selectionBackground",{dark:nv,light:nv,hcDark:nv,hcLight:nv},L("menuSelectionBackground","Background color of the selected menu item in menus.")),kht=ce("menu.selectionBorder",{dark:null,light:null,hcDark:Dr,hcLight:Dr},L("menuSelectionBorder","Border color of the selected menu item in menus.")),Lht=ce("menu.separatorBackground",{dark:"#606060",light:"#D4D4D4",hcDark:Jn,hcLight:Jn},L("menuSeparatorBackground","Color of a separator menu item in menus.")),TJ=ce("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},L("toolbarHoverBackground","Toolbar background when hovering over actions using the mouse"));ce("toolbar.hoverOutline",{dark:null,light:null,hcDark:Dr,hcLight:Dr},L("toolbarHoverOutline","Toolbar outline when hovering over actions using the mouse"));ce("toolbar.activeBackground",{dark:zp(TJ,.1),light:Yx(TJ,.1),hcDark:null,hcLight:null},L("toolbarActiveBackground","Toolbar background when holding the mouse over actions"));ce("editor.snippetTabstopHighlightBackground",{dark:new Te(new ii(124,124,124,.3)),light:new Te(new ii(10,50,100,.2)),hcDark:new Te(new ii(124,124,124,.3)),hcLight:new Te(new ii(10,50,100,.2))},L("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop."));ce("editor.snippetTabstopHighlightBorder",{dark:null,light:null,hcDark:null,hcLight:null},L("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop."));ce("editor.snippetFinalTabstopHighlightBackground",{dark:null,light:null,hcDark:null,hcLight:null},L("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet."));ce("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new Te(new ii(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},L("snippetFinalTabstopHighlightBorder","Highlight border color of the final tabstop of a snippet."));const Dht=ce("breadcrumb.foreground",{light:Ht(ot,.8),dark:Ht(ot,.8),hcDark:Ht(ot,.8),hcLight:Ht(ot,.8)},L("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),Eht=ce("breadcrumb.background",{light:Lo,dark:Lo,hcDark:Lo,hcLight:Lo},L("breadcrumbsBackground","Background color of breadcrumb items.")),age=ce("breadcrumb.focusForeground",{light:Yx(ot,.2),dark:zp(ot,.1),hcDark:zp(ot,.1),hcLight:zp(ot,.1)},L("breadcrumbsFocusForeground","Color of focused breadcrumb items.")),Iht=ce("breadcrumb.activeSelectionForeground",{light:Yx(ot,.2),dark:zp(ot,.1),hcDark:zp(ot,.1),hcLight:zp(ot,.1)},L("breadcrumbsSelectedForeground","Color of selected breadcrumb items."));ce("breadcrumbPicker.background",{light:cs,dark:cs,hcDark:cs,hcLight:cs},L("breadcrumbsSelectedBackground","Background color of breadcrumb item picker."));const _Ie=.5,lge=Te.fromHex("#40C8AE").transparent(_Ie),cge=Te.fromHex("#40A6FF").transparent(_Ie),uge=Te.fromHex("#606060").transparent(.4),bf=.4,jE=1,c2=ce("merge.currentHeaderBackground",{dark:lge,light:lge,hcDark:null,hcLight:null},L("mergeCurrentHeaderBackground","Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);ce("merge.currentContentBackground",{dark:Ht(c2,bf),light:Ht(c2,bf),hcDark:Ht(c2,bf),hcLight:Ht(c2,bf)},L("mergeCurrentContentBackground","Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const u2=ce("merge.incomingHeaderBackground",{dark:cge,light:cge,hcDark:null,hcLight:null},L("mergeIncomingHeaderBackground","Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);ce("merge.incomingContentBackground",{dark:Ht(u2,bf),light:Ht(u2,bf),hcDark:Ht(u2,bf),hcLight:Ht(u2,bf)},L("mergeIncomingContentBackground","Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const d2=ce("merge.commonHeaderBackground",{dark:uge,light:uge,hcDark:null,hcLight:null},L("mergeCommonHeaderBackground","Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);ce("merge.commonContentBackground",{dark:Ht(d2,bf),light:Ht(d2,bf),hcDark:Ht(d2,bf),hcLight:Ht(d2,bf)},L("mergeCommonContentBackground","Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);const WE=ce("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},L("mergeBorder","Border color on headers and the splitter in inline merge-conflicts."));ce("editorOverviewRuler.currentContentForeground",{dark:Ht(c2,jE),light:Ht(c2,jE),hcDark:WE,hcLight:WE},L("overviewRulerCurrentContentForeground","Current overview ruler foreground for inline merge-conflicts."));ce("editorOverviewRuler.incomingContentForeground",{dark:Ht(u2,jE),light:Ht(u2,jE),hcDark:WE,hcLight:WE},L("overviewRulerIncomingContentForeground","Incoming overview ruler foreground for inline merge-conflicts."));ce("editorOverviewRuler.commonContentForeground",{dark:Ht(d2,jE),light:Ht(d2,jE),hcDark:WE,hcLight:WE},L("overviewRulerCommonContentForeground","Common ancestor overview ruler foreground for inline merge-conflicts."));const voe=ce("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:""},L("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),pN=ce("editorOverviewRuler.selectionHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hcDark:"#A0A0A0CC",hcLight:"#A0A0A0CC"},L("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),h2=ce("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hcDark:"#AB5A00",hcLight:"#0F4A85"},L("minimapFindMatchHighlight","Minimap marker color for find matches."),!0),k$=ce("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hcDark:"#ffffff",hcLight:"#0F4A85"},L("minimapSelectionOccurrenceHighlight","Minimap marker color for repeating editor selections."),!0),dge=ce("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hcDark:"#ffffff",hcLight:"#0F4A85"},L("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),Tht=ce("minimap.infoHighlight",{dark:_c,light:_c,hcDark:xP,hcLight:xP},L("minimapInfo","Minimap marker color for infos.")),Rht=ce("minimap.warningHighlight",{dark:Ju,light:Ju,hcDark:SP,hcLight:SP},L("overviewRuleWarning","Minimap marker color for warnings.")),Aht=ce("minimap.errorHighlight",{dark:new Te(new ii(255,18,18,.7)),light:new Te(new ii(255,18,18,.7)),hcDark:new Te(new ii(255,50,50,1)),hcLight:"#B5200D"},L("minimapError","Minimap marker color for errors.")),Nht=ce("minimap.background",{dark:null,light:null,hcDark:null,hcLight:null},L("minimapBackground","Minimap background color.")),Mht=ce("minimap.foregroundOpacity",{dark:Te.fromHex("#000f"),light:Te.fromHex("#000f"),hcDark:Te.fromHex("#000f"),hcLight:Te.fromHex("#000f")},L("minimapForegroundOpacity",'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.'));ce("minimapSlider.background",{light:Ht(cN,.5),dark:Ht(cN,.5),hcDark:Ht(cN,.5),hcLight:Ht(cN,.5)},L("minimapSliderBackground","Minimap slider background color."));ce("minimapSlider.hoverBackground",{light:Ht(uN,.5),dark:Ht(uN,.5),hcDark:Ht(uN,.5),hcLight:Ht(uN,.5)},L("minimapSliderHoverBackground","Minimap slider background color when hovering."));ce("minimapSlider.activeBackground",{light:Ht(dN,.5),dark:Ht(dN,.5),hcDark:Ht(dN,.5),hcLight:Ht(dN,.5)},L("minimapSliderActiveBackground","Minimap slider background color when clicked on."));const Pht=ce("problemsErrorIcon.foreground",{dark:wm,light:wm,hcDark:wm,hcLight:wm},L("problemsErrorIconForeground","The color used for the problems error icon.")),Oht=ce("problemsWarningIcon.foreground",{dark:Ju,light:Ju,hcDark:Ju,hcLight:Ju},L("problemsWarningIconForeground","The color used for the problems warning icon.")),Fht=ce("problemsInfoIcon.foreground",{dark:_c,light:_c,hcDark:_c,hcLight:_c},L("problemsInfoIconForeground","The color used for the problems info icon."));ce("charts.foreground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("chartsForeground","The foreground color used in charts."));ce("charts.lines",{dark:Ht(ot,.5),light:Ht(ot,.5),hcDark:Ht(ot,.5),hcLight:Ht(ot,.5)},L("chartsLines","The color used for horizontal lines in charts."));ce("charts.red",{dark:wm,light:wm,hcDark:wm,hcLight:wm},L("chartsRed","The red color used in chart visualizations."));ce("charts.blue",{dark:_c,light:_c,hcDark:_c,hcLight:_c},L("chartsBlue","The blue color used in chart visualizations."));ce("charts.yellow",{dark:Ju,light:Ju,hcDark:Ju,hcLight:Ju},L("chartsYellow","The yellow color used in chart visualizations."));ce("charts.orange",{dark:h2,light:h2,hcDark:h2,hcLight:h2},L("chartsOrange","The orange color used in chart visualizations."));ce("charts.green",{dark:"#89D185",light:"#388A34",hcDark:"#89D185",hcLight:"#374e06"},L("chartsGreen","The green color used in chart visualizations."));ce("charts.purple",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},L("chartsPurple","The purple color used in chart visualizations."));function Bht(i,e){var n,r,s,o;switch(i.op){case 0:return(n=cp(i.value,e))===null||n===void 0?void 0:n.darken(i.factor);case 1:return(r=cp(i.value,e))===null||r===void 0?void 0:r.lighten(i.factor);case 2:return(s=cp(i.value,e))===null||s===void 0?void 0:s.transparent(i.factor);case 3:{const a=cp(i.background,e);return a?(o=cp(i.value,e))===null||o===void 0?void 0:o.makeOpaque(a):cp(i.value,e)}case 4:for(const a of i.values){const l=cp(a,e);if(l)return l}return;case 6:return cp(e.defines(i.if)?i.then:i.else,e);case 5:{const a=cp(i.value,e);if(!a)return;const l=cp(i.background,e);return l?a.isDarkerThan(l)?Te.getLighterColor(a,l,i.factor).transparent(i.transparency):Te.getDarkerColor(a,l,i.factor).transparent(i.transparency):a.transparent(i.factor*i.transparency)}default:throw l$()}}function Yx(i,e){return{op:0,value:i,factor:e}}function zp(i,e){return{op:1,value:i,factor:e}}function Ht(i,e){return{op:2,value:i,factor:e}}function kP(...i){return{op:4,values:i}}function jht(i,e,n){return{op:6,if:i,then:e,else:n}}function hge(i,e,n,r){return{op:5,value:i,background:e,factor:n,transparency:r}}function cp(i,e){if(i!==null){if(typeof i=="string")return i[0]==="#"?Te.fromHex(i):e.getColor(i);if(i instanceof Te)return i;if(typeof i=="object")return Bht(i,e)}}const vIe="vscode://schemas/workbench-colors",bIe=Kr.as(b$.JSONContribution);bIe.registerSchema(vIe,x$.getColorSchema());const fge=new Ji(()=>bIe.notifySchemaChanged(vIe),200);x$.onDidChangeSchema(()=>{fge.isScheduled()||fge.schedule()});class L${constructor(e,n){this.x=e,this.y=n,this._pageCoordinatesBrand=void 0}toClientCoordinates(){return new yIe(this.x-window.scrollX,this.y-window.scrollY)}}class yIe{constructor(e,n){this.clientX=e,this.clientY=n,this._clientCoordinatesBrand=void 0}toPageCoordinates(){return new L$(this.clientX+window.scrollX,this.clientY+window.scrollY)}}class Wht{constructor(e,n,r,s){this.x=e,this.y=n,this.width=r,this.height=s,this._editorPagePositionBrand=void 0}}class $ht{constructor(e,n){this.x=e,this.y=n,this._positionRelativeToEditorBrand=void 0}}function boe(i){const e=no(i);return new Wht(e.left,e.top,e.width,e.height)}function yoe(i,e,n){const r=e.width/i.offsetWidth,s=e.height/i.offsetHeight,o=(n.x-e.x)/r,a=(n.y-e.y)/s;return new $ht(o,a)}class b1 extends rh{constructor(e,n,r){super(e),this._editorMouseEventBrand=void 0,this.isFromPointerCapture=n,this.pos=new L$(this.posx,this.posy),this.editorPos=boe(r),this.relativePos=yoe(r,this.editorPos,this.pos)}}class zht{constructor(e){this._editorViewDomNode=e}_create(e){return new b1(e,!1,this._editorViewDomNode)}onContextMenu(e,n){return Be(e,"contextmenu",r=>{n(this._create(r))})}onMouseUp(e,n){return Be(e,"mouseup",r=>{n(this._create(r))})}onMouseDown(e,n){return Be(e,ht.MOUSE_DOWN,r=>{n(this._create(r))})}onPointerDown(e,n){return Be(e,ht.POINTER_DOWN,r=>{n(this._create(r),r.pointerId)})}onMouseLeave(e,n){return Be(e,ht.MOUSE_LEAVE,r=>{n(this._create(r))})}onMouseMove(e,n){return Be(e,"mousemove",r=>n(this._create(r)))}}class Vht{constructor(e){this._editorViewDomNode=e}_create(e){return new b1(e,!1,this._editorViewDomNode)}onPointerUp(e,n){return Be(e,"pointerup",r=>{n(this._create(r))})}onPointerDown(e,n){return Be(e,ht.POINTER_DOWN,r=>{n(this._create(r),r.pointerId)})}onPointerLeave(e,n){return Be(e,ht.POINTER_LEAVE,r=>{n(this._create(r))})}onPointerMove(e,n){return Be(e,"pointermove",r=>n(this._create(r)))}}class Hht extends Le{constructor(e){super(),this._editorViewDomNode=e,this._globalPointerMoveMonitor=this._register(new $I),this._keydownListener=null}startMonitoring(e,n,r,s,o){this._keydownListener=As(e.ownerDocument,"keydown",a=>{a.toKeyCodeChord().isModifierKey()||this._globalPointerMoveMonitor.stopMonitoring(!0,a.browserEvent)},!0),this._globalPointerMoveMonitor.startMonitoring(e,n,r,a=>{s(new b1(a,!0,this._editorViewDomNode))},a=>{this._keydownListener.dispose(),o(a)})}stopMonitoring(){this._globalPointerMoveMonitor.stopMonitoring(!0)}}class A5{constructor(e){this._editor=e,this._instanceId=++A5._idPool,this._counter=0,this._rules=new Map,this._garbageCollectionScheduler=new Ji(()=>this.garbageCollect(),1e3)}createClassNameRef(e){const n=this.getOrCreateRule(e);return n.increaseRefCount(),{className:n.className,dispose:()=>{n.decreaseRefCount(),this._garbageCollectionScheduler.schedule()}}}getOrCreateRule(e){const n=this.computeUniqueKey(e);let r=this._rules.get(n);if(!r){const s=this._counter++;r=new Uht(n,`dyn-rule-${this._instanceId}-${s}`,$9(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0,e),this._rules.set(n,r)}return r}computeUniqueKey(e){return JSON.stringify(e)}garbageCollect(){for(const e of this._rules.values())e.hasReferences()||(this._rules.delete(e.key),e.dispose())}}A5._idPool=0;class Uht{constructor(e,n,r,s){this.key=e,this.className=n,this.properties=s,this._referenceCount=0,this._styleElement=_h(r),this._styleElement.textContent=this.getCssText(this.className,this.properties)}getCssText(e,n){let r=`.${e} {`;for(const s in n){const o=n[s];let a;typeof o=="object"?a=wt(o.id):a=o;const l=qht(s);r+=` ${l}: ${a};`}return r+=` }`,r}dispose(){this._styleElement.remove()}increaseRefCount(){this._referenceCount++}decreaseRefCount(){this._referenceCount--}hasReferences(){return this._referenceCount>0}}function qht(i){return i.replace(/(^[A-Z])/,([e])=>e.toLowerCase()).replace(/([A-Z])/g,([e])=>`-${e.toLowerCase()}`)}class N5 extends Le{constructor(){super(),this._shouldRender=!0}shouldRender(){return this._shouldRender}forceShouldRender(){this._shouldRender=!0}setShouldRender(){this._shouldRender=!0}onDidRender(){this._shouldRender=!1}onCompositionStart(e){return!1}onCompositionEnd(e){return!1}onConfigurationChanged(e){return!1}onCursorStateChanged(e){return!1}onDecorationsChanged(e){return!1}onFlushed(e){return!1}onFocusChanged(e){return!1}onLanguageConfigurationChanged(e){return!1}onLineMappingChanged(e){return!1}onLinesChanged(e){return!1}onLinesDeleted(e){return!1}onLinesInserted(e){return!1}onRevealRangeRequest(e){return!1}onScrollChanged(e){return!1}onThemeChanged(e){return!1}onTokensChanged(e){return!1}onTokensColorsChanged(e){return!1}onZonesChanged(e){return!1}handleEvents(e){let n=!1;for(let r=0,s=e.length;r=l.left?s.width=Math.max(s.width,l.left+l.width-s.left):(n[r++]=s,s=l)}return n[r++]=s,n}static _createHorizontalRangesFromClientRects(e,n,r){if(!e||e.length===0)return null;const s=[];for(let o=0,a=e.length;oc)return null;if(n=Math.min(c,Math.max(0,n)),s=Math.min(c,Math.max(0,s)),n===s&&r===o&&r===0&&!e.children[n].firstChild){const f=e.children[n].getClientRects();return a.markDidDomLayout(),this._createHorizontalRangesFromClientRects(f,a.clientRectDeltaLeft,a.clientRectScale)}n!==s&&s>0&&o===0&&(s--,o=1073741824);let u=e.children[n].firstChild,d=e.children[s].firstChild;if((!u||!d)&&(!u&&r===0&&n>0&&(u=e.children[n-1].firstChild,r=1073741824),!d&&o===0&&s>0&&(d=e.children[s-1].firstChild,o=1073741824)),!u||!d)return null;r=Math.min(u.textContent.length,Math.max(0,r)),o=Math.min(d.textContent.length,Math.max(0,o));const h=this._readClientRects(u,r,d,o,a.endNode);return a.markDidDomLayout(),this._createHorizontalRangesFromClientRects(h,a.clientRectDeltaLeft,a.clientRectScale)}}var sh;(function(i){i.DARK="dark",i.LIGHT="light",i.HIGH_CONTRAST_DARK="hcDark",i.HIGH_CONTRAST_LIGHT="hcLight"})(sh||(sh={}));function Vp(i){return i===sh.HIGH_CONTRAST_DARK||i===sh.HIGH_CONTRAST_LIGHT}function $E(i){return i===sh.DARK||i===sh.HIGH_CONTRAST_DARK}const Zht=function(){return Um?!0:!(_l||gh||h1)}();let U2=!0;class gge{constructor(e,n){this.themeType=n;const r=e.options,s=r.get(50);r.get(38)==="off"?this.renderWhitespace=r.get(98):this.renderWhitespace="none",this.renderControlCharacters=r.get(93),this.spaceWidth=s.spaceWidth,this.middotWidth=s.middotWidth,this.wsmiddotWidth=s.wsmiddotWidth,this.useMonospaceOptimizations=s.isMonospace&&!r.get(33),this.canUseHalfwidthRightwardsArrow=s.canUseHalfwidthRightwardsArrow,this.lineHeight=r.get(66),this.stopRenderingLineAfter=r.get(116),this.fontLigatures=r.get(51)}equals(e){return this.themeType===e.themeType&&this.renderWhitespace===e.renderWhitespace&&this.renderControlCharacters===e.renderControlCharacters&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.useMonospaceOptimizations===e.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter&&this.fontLigatures===e.fontLigatures}}class dm{constructor(e){this._options=e,this._isMaybeInvalid=!0,this._renderedViewLine=null}getDomNode(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null}setDomNode(e){if(this._renderedViewLine)this._renderedViewLine.domNode=Di(e);else throw new Error("I have no rendered view line to set the dom node to...")}onContentChanged(){this._isMaybeInvalid=!0}onTokensChanged(){this._isMaybeInvalid=!0}onDecorationsChanged(){this._isMaybeInvalid=!0}onOptionsChanged(e){this._isMaybeInvalid=!0,this._options=e}onSelectionChanged(){return Vp(this._options.themeType)||this._options.renderWhitespace==="selection"?(this._isMaybeInvalid=!0,!0):!1}renderLine(e,n,r,s){if(this._isMaybeInvalid===!1)return!1;this._isMaybeInvalid=!1;const o=r.getViewLineRenderingData(e),a=this._options,l=ru.filter(o.inlineDecorations,e,o.minColumn,o.maxColumn);let c=null;if(Vp(a.themeType)||this._options.renderWhitespace==="selection"){const f=r.selections;for(const p of f){if(p.endLineNumbere)continue;const g=p.startLineNumber===e?p.startColumn:o.minColumn,m=p.endLineNumber===e?p.endColumn:o.maxColumn;g');const d=T5(u,s);s.appendString("");let h=null;return U2&&Zht&&o.isBasicASCII&&a.useMonospaceOptimizations&&d.containsForeignElements===0&&(h=new U3(this._renderedViewLine?this._renderedViewLine.domNode:null,u,d.characterMapping)),h||(h=CIe(this._renderedViewLine?this._renderedViewLine.domNode:null,u,d.characterMapping,d.containsRTL,d.containsForeignElements)),this._renderedViewLine=h,!0}layoutLine(e,n){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(n),this._renderedViewLine.domNode.setHeight(this._options.lineHeight))}getWidth(e){return this._renderedViewLine?this._renderedViewLine.getWidth(e):0}getWidthIsFast(){return this._renderedViewLine?this._renderedViewLine.getWidthIsFast():!0}needsMonospaceFontCheck(){return this._renderedViewLine?this._renderedViewLine instanceof U3:!1}monospaceAssumptionsAreValid(){return this._renderedViewLine&&this._renderedViewLine instanceof U3?this._renderedViewLine.monospaceAssumptionsAreValid():U2}onMonospaceAssumptionsInvalidated(){this._renderedViewLine&&this._renderedViewLine instanceof U3&&(this._renderedViewLine=this._renderedViewLine.toSlowRenderedLine())}getVisibleRangesForRange(e,n,r,s){if(!this._renderedViewLine)return null;n=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,n)),r=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,r));const o=this._renderedViewLine.input.stopRenderingLineAfter;if(o!==-1&&n>o+1&&r>o+1)return new pge(!0,[new PS(this.getWidth(s),0)]);o!==-1&&n>o+1&&(n=o+1),o!==-1&&r>o+1&&(r=o+1);const a=this._renderedViewLine.getVisibleRangesForRange(e,n,r,s);return a&&a.length>0?new pge(!1,a):null}getColumnOfNodeOffset(e,n){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(e,n):1}}dm.CLASS_NAME="view-line";class U3{constructor(e,n,r){this._cachedWidth=-1,this.domNode=e,this.input=n;const s=Math.floor(n.lineContent.length/300);if(s>0){this._keyColumnPixelOffsetCache=new Float32Array(s);for(let o=0;o=2&&(console.warn("monospace assumptions have been violated, therefore disabling monospace optimizations!"),U2=!1)}return U2}toSlowRenderedLine(){return CIe(this.domNode,this.input,this._characterMapping,!1,0)}getVisibleRangesForRange(e,n,r,s){const o=this._getColumnPixelOffset(e,n,s),a=this._getColumnPixelOffset(e,r,s);return[new PS(o,a-o)]}_getColumnPixelOffset(e,n,r){if(n<=300){const u=this._characterMapping.getHorizontalOffset(n);return this._charWidth*u}const s=Math.floor((n-1)/300)-1,o=(s+1)*300+1;let a=-1;if(this._keyColumnPixelOffsetCache&&(a=this._keyColumnPixelOffsetCache[s],a===-1&&(a=this._actualReadPixelOffset(e,o,r),this._keyColumnPixelOffsetCache[s]=a)),a===-1){const u=this._characterMapping.getHorizontalOffset(n);return this._charWidth*u}const l=this._characterMapping.getHorizontalOffset(o),c=this._characterMapping.getHorizontalOffset(n);return a+this._charWidth*(c-l)}_getReadingTarget(e){return e.domNode.firstChild}_actualReadPixelOffset(e,n,r){if(!this.domNode)return-1;const s=this._characterMapping.getDomPosition(n),o=p8.readHorizontalRanges(this._getReadingTarget(this.domNode),s.partIndex,s.charIndex,s.partIndex,s.charIndex,r);return!o||o.length===0?-1:o[0].left}getColumnOfNodeOffset(e,n){return woe(this._characterMapping,e,n)}}class wIe{constructor(e,n,r,s,o){if(this.domNode=e,this.input=n,this._characterMapping=r,this._isWhitespaceOnly=/^\s*$/.test(n.lineContent),this._containsForeignElements=o,this._cachedWidth=-1,this._pixelOffsetCache=null,!s||this._characterMapping.length===0){this._pixelOffsetCache=new Float32Array(Math.max(2,this._characterMapping.length+1));for(let a=0,l=this._characterMapping.length;a<=l;a++)this._pixelOffsetCache[a]=-1}}_getReadingTarget(e){return e.domNode.firstChild}getWidth(e){return this.domNode?(this._cachedWidth===-1&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth,e==null||e.markDidDomLayout()),this._cachedWidth):0}getWidthIsFast(){return this._cachedWidth!==-1}getVisibleRangesForRange(e,n,r,s){if(!this.domNode)return null;if(this._pixelOffsetCache!==null){const o=this._readPixelOffset(this.domNode,e,n,s);if(o===-1)return null;const a=this._readPixelOffset(this.domNode,e,r,s);return a===-1?null:[new PS(o,a-o)]}return this._readVisibleRangesForRange(this.domNode,e,n,r,s)}_readVisibleRangesForRange(e,n,r,s,o){if(r===s){const a=this._readPixelOffset(e,n,r,o);return a===-1?null:[new PS(a,0)]}else return this._readRawVisibleRangesForRange(e,r,s,o)}_readPixelOffset(e,n,r,s){if(this._characterMapping.length===0){if(this._containsForeignElements===0||this._containsForeignElements===2)return 0;if(this._containsForeignElements===1)return this.getWidth(s);const o=this._getReadingTarget(e);return o.firstChild?(s.markDidDomLayout(),o.firstChild.offsetWidth):0}if(this._pixelOffsetCache!==null){const o=this._pixelOffsetCache[r];if(o!==-1)return o;const a=this._actualReadPixelOffset(e,n,r,s);return this._pixelOffsetCache[r]=a,a}return this._actualReadPixelOffset(e,n,r,s)}_actualReadPixelOffset(e,n,r,s){if(this._characterMapping.length===0){const c=p8.readHorizontalRanges(this._getReadingTarget(e),0,0,0,0,s);return!c||c.length===0?-1:c[0].left}if(r===this._characterMapping.length&&this._isWhitespaceOnly&&this._containsForeignElements===0)return this.getWidth(s);const o=this._characterMapping.getDomPosition(r),a=p8.readHorizontalRanges(this._getReadingTarget(e),o.partIndex,o.charIndex,o.partIndex,o.charIndex,s);if(!a||a.length===0)return-1;const l=a[0].left;if(this.input.isBasicASCII){const c=this._characterMapping.getHorizontalOffset(r),u=Math.round(this.input.spaceWidth*c);if(Math.abs(u-l)<=1)return u}return l}_readRawVisibleRangesForRange(e,n,r,s){if(n===1&&r===this._characterMapping.length)return[new PS(0,this.getWidth(s))];const o=this._characterMapping.getDomPosition(n),a=this._characterMapping.getDomPosition(r);return p8.readHorizontalRanges(this._getReadingTarget(e),o.partIndex,o.charIndex,a.partIndex,a.charIndex,s)}getColumnOfNodeOffset(e,n){return woe(this._characterMapping,e,n)}}class Qht extends wIe{_readVisibleRangesForRange(e,n,r,s,o){const a=super._readVisibleRangesForRange(e,n,r,s,o);if(!a||a.length===0||r===s||r===1&&s===this._characterMapping.length)return a;if(!this.input.containsRTL){const l=this._readPixelOffset(e,n,s,o);if(l!==-1){const c=a[a.length-1];c.left=n){const h=n-a;return u-n=4&&e[0]===3&&e[3]===7}static isStrictChildOfViewLines(e){return e.length>4&&e[0]===3&&e[3]===7}static isChildOfScrollableElement(e){return e.length>=2&&e[0]===3&&e[1]===5}static isChildOfMinimap(e){return e.length>=2&&e[0]===3&&e[1]===8}static isChildOfContentWidgets(e){return e.length>=4&&e[0]===3&&e[3]===1}static isChildOfOverflowGuard(e){return e.length>=1&&e[0]===3}static isChildOfOverflowingContentWidgets(e){return e.length>=1&&e[0]===2}static isChildOfOverlayWidgets(e){return e.length>=2&&e[0]===3&&e[1]===4}}class zE{constructor(e,n,r){this.viewModel=e.viewModel;const s=e.configuration.options;this.layoutInfo=s.get(143),this.viewDomNode=n.viewDomNode,this.lineHeight=s.get(66),this.stickyTabStops=s.get(115),this.typicalHalfwidthCharacterWidth=s.get(50).typicalHalfwidthCharacterWidth,this.lastRenderData=r,this._context=e,this._viewHelper=n}getZoneAtCoord(e){return zE.getZoneAtCoord(this._context,e)}static getZoneAtCoord(e,n){const r=e.viewLayout.getWhitespaceAtVerticalOffset(n);if(r){const s=r.verticalOffset+r.height/2,o=e.viewModel.getLineCount();let a=null,l,c=null;return r.afterLineNumber!==o&&(c=new ve(r.afterLineNumber+1,1)),r.afterLineNumber>0&&(a=new ve(r.afterLineNumber,e.viewModel.getLineMaxColumn(r.afterLineNumber))),c===null?l=a:a===null?l=c:n=e.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,Ca._getMouseColumn(this.mouseContentHorizontalOffset,e.typicalHalfwidthCharacterWidth))}}class Coe extends nft{constructor(e,n,r,s,o){super(e,n,r,s),this._ctx=e,o?(this.target=o,this.targetPath=Ym.collect(o,e.viewDomNode)):(this.target=null,this.targetPath=new Uint8Array(0))}toString(){return`pos(${this.pos.x},${this.pos.y}), editorPos(${this.editorPos.x},${this.editorPos.y}), relativePos(${this.relativePos.x},${this.relativePos.y}), mouseVerticalOffset: ${this.mouseVerticalOffset}, mouseContentHorizontalOffset: ${this.mouseContentHorizontalOffset} target: ${this.target?this.target.outerHTML:null}`}_getMouseColumn(e=null){return e&&e.columna.contentLeft+a.width)continue;const l=e.getVerticalOffsetForLineNumber(a.position.lineNumber);if(l<=o&&o<=l+a.height)return n.fulfillContentText(a.position,null,{mightBeForeignElement:!1,injectedText:null})}}return null}static _hitTestViewZone(e,n){const r=e.getZoneAtCoord(n.mouseVerticalOffset);if(r){const s=n.isInContentArea?8:5;return n.fulfillViewZone(s,r.position,r)}return null}static _hitTestTextArea(e,n){return Mu.isTextArea(n.targetPath)?e.lastRenderData.lastTextareaPosition?n.fulfillContentText(e.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1,injectedText:null}):n.fulfillTextarea():null}static _hitTestMargin(e,n){if(n.isInMarginArea){const r=e.getFullLineRangeAtCoord(n.mouseVerticalOffset),s=r.range.getStartPosition();let o=Math.abs(n.relativePos.x);const a={isAfterLines:r.isAfterLines,glyphMarginLeft:e.layoutInfo.glyphMarginLeft,glyphMarginWidth:e.layoutInfo.glyphMarginWidth,lineNumbersWidth:e.layoutInfo.lineNumbersWidth,offsetX:o};return o-=e.layoutInfo.glyphMarginLeft,o<=e.layoutInfo.glyphMarginWidth?n.fulfillMargin(2,s,r.range,a):(o-=e.layoutInfo.glyphMarginWidth,o<=e.layoutInfo.lineNumbersWidth?n.fulfillMargin(3,s,r.range,a):(o-=e.layoutInfo.lineNumbersWidth,n.fulfillMargin(4,s,r.range,a)))}return null}static _hitTestViewLines(e,n,r){if(!Mu.isChildOfViewLines(n.targetPath))return null;if(e.isInTopPadding(n.mouseVerticalOffset))return n.fulfillContentEmpty(new ve(1,1),mge);if(e.isAfterLines(n.mouseVerticalOffset)||e.isInBottomPadding(n.mouseVerticalOffset)){const o=e.viewModel.getLineCount(),a=e.viewModel.getLineMaxColumn(o);return n.fulfillContentEmpty(new ve(o,a),mge)}if(r){if(Mu.isStrictChildOfViewLines(n.targetPath)){const o=e.getLineNumberAtVerticalOffset(n.mouseVerticalOffset);if(e.viewModel.getLineLength(o)===0){const l=e.getLineWidth(o),c=gq(n.mouseContentHorizontalOffset-l);return n.fulfillContentEmpty(new ve(o,1),c)}const a=e.getLineWidth(o);if(n.mouseContentHorizontalOffset>=a){const l=gq(n.mouseContentHorizontalOffset-a),c=new ve(o,e.viewModel.getLineMaxColumn(o));return n.fulfillContentEmpty(c,l)}}return n.fulfillUnknown()}const s=Ca._doHitTest(e,n);return s.type===1?Ca.createMouseTargetFromHitTestPosition(e,n,s.spanNode,s.position,s.injectedText):this._createMouseTarget(e,n.withTarget(s.hitTarget),!0)}static _hitTestMinimap(e,n){if(Mu.isChildOfMinimap(n.targetPath)){const r=e.getLineNumberAtVerticalOffset(n.mouseVerticalOffset),s=e.viewModel.getLineMaxColumn(r);return n.fulfillScrollbar(new ve(r,s))}return null}static _hitTestScrollbarSlider(e,n){if(Mu.isChildOfScrollableElement(n.targetPath)&&n.target&&n.target.nodeType===1){const r=n.target.className;if(r&&/\b(slider|scrollbar)\b/.test(r)){const s=e.getLineNumberAtVerticalOffset(n.mouseVerticalOffset),o=e.viewModel.getLineMaxColumn(s);return n.fulfillScrollbar(new ve(s,o))}}return null}static _hitTestScrollbar(e,n){if(Mu.isChildOfScrollableElement(n.targetPath)){const r=e.getLineNumberAtVerticalOffset(n.mouseVerticalOffset),s=e.viewModel.getLineMaxColumn(r);return n.fulfillScrollbar(new ve(r,s))}return null}getMouseColumn(e){const n=this._context.configuration.options,r=n.get(143),s=this._context.viewLayout.getCurrentScrollLeft()+e.x-r.contentLeft;return Ca._getMouseColumn(s,n.get(50).typicalHalfwidthCharacterWidth)}static _getMouseColumn(e,n){return e<0?1:Math.round(e/n)+1}static createMouseTargetFromHitTestPosition(e,n,r,s,o){const a=s.lineNumber,l=s.column,c=e.getLineWidth(a);if(n.mouseContentHorizontalOffset>c){const b=gq(n.mouseContentHorizontalOffset-c);return n.fulfillContentEmpty(s,b)}const u=e.visibleRangeForPosition(a,l);if(!u)return n.fulfillUnknown(s);const d=u.left;if(Math.abs(n.mouseContentHorizontalOffset-d)<1)return n.fulfillContentText(s,null,{mightBeForeignElement:!!o,injectedText:o});const h=[];if(h.push({offset:u.left,column:l}),l>1){const b=e.visibleRangeForPosition(a,l-1);b&&h.push({offset:b.left,column:l-1})}const f=e.viewModel.getLineMaxColumn(a);if(lb.offset-y.offset);const p=n.pos.toClientCoordinates(),g=r.getBoundingClientRect(),m=g.left<=p.clientX&&p.clientX<=g.right;let _=null;for(let b=1;bo)){const l=Math.floor((s+o)/2);let c=n.pos.y+(l-n.mouseVerticalOffset);c<=n.editorPos.y&&(c=n.editorPos.y+1),c>=n.editorPos.y+n.editorPos.height&&(c=n.editorPos.y+n.editorPos.height-1);const u=new L$(n.pos.x,c),d=this._actualDoHitTestWithCaretRangeFromPoint(e,u.toClientCoordinates());if(d.type===1)return d}return this._actualDoHitTestWithCaretRangeFromPoint(e,n.pos.toClientCoordinates())}static _actualDoHitTestWithCaretRangeFromPoint(e,n){const r=dx(e.viewDomNode);let s;if(r?typeof r.caretRangeFromPoint>"u"?s=ift(r,n.clientX,n.clientY):s=r.caretRangeFromPoint(n.clientX,n.clientY):s=e.viewDomNode.ownerDocument.caretRangeFromPoint(n.clientX,n.clientY),!s||!s.startContainer)return new Xb;const o=s.startContainer;if(o.nodeType===o.TEXT_NODE){const a=o.parentNode,l=a?a.parentNode:null,c=l?l.parentNode:null;return(c&&c.nodeType===c.ELEMENT_NODE?c.className:null)===dm.CLASS_NAME?GC.createFromDOMInfo(e,a,s.startOffset):new Xb(o.parentNode)}else if(o.nodeType===o.ELEMENT_NODE){const a=o.parentNode,l=a?a.parentNode:null;return(l&&l.nodeType===l.ELEMENT_NODE?l.className:null)===dm.CLASS_NAME?GC.createFromDOMInfo(e,o,o.textContent.length):new Xb(o)}return new Xb}static _doHitTestWithCaretPositionFromPoint(e,n){const r=e.viewDomNode.ownerDocument.caretPositionFromPoint(n.clientX,n.clientY);if(r.offsetNode.nodeType===r.offsetNode.TEXT_NODE){const s=r.offsetNode.parentNode,o=s?s.parentNode:null,a=o?o.parentNode:null;return(a&&a.nodeType===a.ELEMENT_NODE?a.className:null)===dm.CLASS_NAME?GC.createFromDOMInfo(e,r.offsetNode.parentNode,r.offset):new Xb(r.offsetNode.parentNode)}if(r.offsetNode.nodeType===r.offsetNode.ELEMENT_NODE){const s=r.offsetNode.parentNode,o=s&&s.nodeType===s.ELEMENT_NODE?s.className:null,a=s?s.parentNode:null,l=a&&a.nodeType===a.ELEMENT_NODE?a.className:null;if(o===dm.CLASS_NAME){const c=r.offsetNode.childNodes[Math.min(r.offset,r.offsetNode.childNodes.length-1)];if(c)return GC.createFromDOMInfo(e,c,0)}else if(l===dm.CLASS_NAME)return GC.createFromDOMInfo(e,r.offsetNode,0)}return new Xb(r.offsetNode)}static _snapToSoftTabBoundary(e,n){const r=n.getLineContent(e.lineNumber),{tabSize:s}=n.model.getOptions(),o=LP.atomicPosition(r,e.column-1,s,2);return o!==-1?new ve(e.lineNumber,o+1):e}static _doHitTest(e,n){let r=new Xb;if(typeof e.viewDomNode.ownerDocument.caretRangeFromPoint=="function"?r=this._doHitTestWithCaretRangeFromPoint(e,n):e.viewDomNode.ownerDocument.caretPositionFromPoint&&(r=this._doHitTestWithCaretPositionFromPoint(e,n.pos.toClientCoordinates())),r.type===1){const s=e.viewModel.getInjectedTextAt(r.position),o=e.viewModel.normalizePosition(r.position,2);(s||!o.equals(r.position))&&(r=new SIe(o,r.spanNode,s))}return r}}function ift(i,e,n){const r=document.createRange();let s=i.elementFromPoint(e,n);if(s!==null){for(;s&&s.firstChild&&s.firstChild.nodeType!==s.firstChild.TEXT_NODE&&s.lastChild&&s.lastChild.firstChild;)s=s.lastChild;const o=s.getBoundingClientRect(),a=window.getComputedStyle(s,null).getPropertyValue("font-style"),l=window.getComputedStyle(s,null).getPropertyValue("font-variant"),c=window.getComputedStyle(s,null).getPropertyValue("font-weight"),u=window.getComputedStyle(s,null).getPropertyValue("font-size"),d=window.getComputedStyle(s,null).getPropertyValue("line-height"),h=window.getComputedStyle(s,null).getPropertyValue("font-family"),f=`${a} ${l} ${c} ${u}/${d} ${h}`,p=s.innerText;let g=o.left,m=0,_;if(e>o.left+o.width)m=p.length;else{const b=bS.getInstance();for(let y=0;yn(new rh(r))))}onmousedown(e,n){this._register(Be(e,ht.MOUSE_DOWN,r=>n(new rh(r))))}onmouseover(e,n){this._register(Be(e,ht.MOUSE_OVER,r=>n(new rh(r))))}onmouseleave(e,n){this._register(Be(e,ht.MOUSE_LEAVE,r=>n(new rh(r))))}onkeydown(e,n){this._register(Be(e,ht.KEY_DOWN,r=>n(new yr(r))))}onkeyup(e,n){this._register(Be(e,ht.KEY_UP,r=>n(new yr(r))))}oninput(e,n){this._register(Be(e,ht.INPUT,n))}onblur(e,n){this._register(Be(e,ht.BLUR,n))}onfocus(e,n){this._register(Be(e,ht.FOCUS,n))}ignoreGesture(e){return or.ignoreTarget(e)}};const VE=11;class rft extends Pf{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.classList.add(...en.asClassNameArray(e.icon)),this.domNode.style.position="absolute",this.domNode.style.width=VE+"px",this.domNode.style.height=VE+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new $I),this._register(As(this.bgDomNode,ht.POINTER_DOWN,n=>this._arrowPointerDown(n))),this._register(As(this.domNode,ht.POINTER_DOWN,n=>this._arrowPointerDown(n))),this._pointerdownRepeatTimer=this._register(new D5),this._pointerdownScheduleRepeatTimer=this._register(new Mf)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const n=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24)};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(n,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,r=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}}class sft extends Le{constructor(e,n,r){super(),this._visibility=e,this._visibleClassName=n,this._invisibleClassName=r,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new Mf)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){const e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{var e;(e=this._domNode)===null||e===void 0||e.setClassName(this._visibleClassName)},0))}_hide(e){var n;this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,(n=this._domNode)===null||n===void 0||n.setClassName(this._invisibleClassName+(e?" fade":"")))}}const oft=140;class xIe extends Pf{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new sft(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new $I),this._shouldRender=!0,this.domNode=Di(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(Be(this.domNode.domNode,ht.POINTER_DOWN,n=>this._domNodePointerDown(n)))}_createArrow(e){const n=this._register(new rft(e));this.domNode.domNode.appendChild(n.bgDomNode),this.domNode.domNode.appendChild(n.domNode)}_createSlider(e,n,r,s){this.slider=Di(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(n),typeof r=="number"&&this.slider.setWidth(r),typeof s=="number"&&this.slider.setHeight(s),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(Be(this.slider.domNode,ht.POINTER_DOWN,o=>{o.button===0&&(o.preventDefault(),this._sliderPointerDown(o))})),this.onclick(this.slider.domNode,o=>{o.leftButton&&o.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){const n=this.domNode.domNode.getClientRects()[0].top,r=n+this._scrollbarState.getSliderPosition(),s=n+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),o=this._sliderPointerPosition(e);r<=o&&o<=s?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let n,r;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")n=e.offsetX,r=e.offsetY;else{const o=no(this.domNode.domNode);n=e.pageX-o.left,r=e.pageY-o.top}const s=this._pointerDownRelativePosition(n,r);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(s):this._scrollbarState.getDesiredScrollPositionFromOffset(s)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const n=this._sliderPointerPosition(e),r=this._sliderOrthogonalPointerPosition(e),s=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,o=>{const a=this._sliderOrthogonalPointerPosition(o),l=Math.abs(a-r);if(Aa&&l>oft){this._setDesiredScrollPositionNow(s.getScrollPosition());return}const u=this._sliderPointerPosition(o)-n;this._setDesiredScrollPositionNow(s.getDesiredScrollPositionFromDelta(u))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){const n={};this.writeScrollPosition(n,e),this._scrollable.setScrollPositionNow(n)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}const aft=20;class HE{constructor(e,n,r,s,o,a){this._scrollbarSize=Math.round(n),this._oppositeScrollbarSize=Math.round(r),this._arrowSize=Math.round(e),this._visibleSize=s,this._scrollSize=o,this._scrollPosition=a,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new HE(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){const n=Math.round(e);return this._visibleSize!==n?(this._visibleSize=n,this._refreshComputedValues(),!0):!1}setScrollSize(e){const n=Math.round(e);return this._scrollSize!==n?(this._scrollSize=n,this._refreshComputedValues(),!0):!1}setScrollPosition(e){const n=Math.round(e);return this._scrollPosition!==n?(this._scrollPosition=n,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,n,r,s,o){const a=Math.max(0,r-e),l=Math.max(0,a-2*n),c=s>0&&s>r;if(!c)return{computedAvailableSize:Math.round(a),computedIsNeeded:c,computedSliderSize:Math.round(l),computedSliderRatio:0,computedSliderPosition:0};const u=Math.round(Math.max(aft,Math.floor(r*l/s))),d=(l-u)/(s-r),h=o*d;return{computedAvailableSize:Math.round(a),computedIsNeeded:c,computedSliderSize:Math.round(u),computedSliderRatio:d,computedSliderPosition:Math.round(h)}}_refreshComputedValues(){const e=HE._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;const n=e-this._arrowSize-this._computedSliderSize/2;return Math.round(n/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;const n=e-this._arrowSize;let r=this._scrollPosition;return nthis._host.onMouseWheel(new ux(null,1,0))}),this._createArrow({className:"scra",icon:lt.scrollbarButtonRight,top:l,left:void 0,bottom:void 0,right:a,bgWidth:n.arrowSize,bgHeight:n.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new ux(null,-1,0))})}this._createSlider(Math.floor((n.horizontalScrollbarSize-n.horizontalSliderSize)/2),0,void 0,n.horizontalSliderSize)}_updateSlider(e,n){this.slider.setWidth(e),this.slider.setLeft(n)}_renderDomNode(e,n){this.domNode.setWidth(e),this.domNode.setHeight(n),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,n){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,n){e.scrollLeft=n}updateOptions(e){this.updateScrollbarSize(e.horizontal===2?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}}class cft extends xIe{constructor(e,n,r){const s=e.getScrollDimensions(),o=e.getCurrentScrollPosition();if(super({lazyRender:n.lazyRender,host:r,scrollbarState:new HE(n.verticalHasArrows?n.arrowSize:0,n.vertical===2?0:n.verticalScrollbarSize,0,s.height,s.scrollHeight,o.scrollTop),visibility:n.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:n.scrollByPage}),n.verticalHasArrows){const a=(n.arrowSize-VE)/2,l=(n.verticalScrollbarSize-VE)/2;this._createArrow({className:"scra",icon:lt.scrollbarButtonUp,top:a,left:l,bottom:void 0,right:void 0,bgWidth:n.verticalScrollbarSize,bgHeight:n.arrowSize,onActivate:()=>this._host.onMouseWheel(new ux(null,0,1))}),this._createArrow({className:"scra",icon:lt.scrollbarButtonDown,top:void 0,left:l,bottom:a,right:void 0,bgWidth:n.verticalScrollbarSize,bgHeight:n.arrowSize,onActivate:()=>this._host.onMouseWheel(new ux(null,0,-1))})}this._createSlider(0,Math.floor((n.verticalScrollbarSize-n.verticalSliderSize)/2),n.verticalSliderSize,void 0)}_updateSlider(e,n){this.slider.setHeight(e),this.slider.setTop(n)}_renderDomNode(e,n){this.domNode.setWidth(n),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,n){return n}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,n){e.scrollTop=n}updateOptions(e){this.updateScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}}class t7{constructor(e,n,r,s,o,a,l){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(n=n|0,r=r|0,s=s|0,o=o|0,a=a|0,l=l|0),this.rawScrollLeft=s,this.rawScrollTop=l,n<0&&(n=0),s+n>r&&(s=r-n),s<0&&(s=0),o<0&&(o=0),l+o>a&&(l=a-o),l<0&&(l=0),this.width=n,this.scrollWidth=r,this.scrollLeft=s,this.height=o,this.scrollHeight=a,this.scrollTop=l}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,n){return new t7(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,n?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,n?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new t7(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,n){const r=this.width!==e.width,s=this.scrollWidth!==e.scrollWidth,o=this.scrollLeft!==e.scrollLeft,a=this.height!==e.height,l=this.scrollHeight!==e.scrollHeight,c=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:n,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:r,scrollWidthChanged:s,scrollLeftChanged:o,heightChanged:a,scrollHeightChanged:l,scrollTopChanged:c}}}class M5 extends Le{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new _e),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new t7(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,n){var r;const s=this._state.withScrollDimensions(e,n);this._setState(s,!!this._smoothScrolling),(r=this._smoothScrolling)===null||r===void 0||r.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){const n=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(n,!1)}setScrollPositionSmooth(e,n){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};const r=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===r.scrollLeft&&this._smoothScrolling.to.scrollTop===r.scrollTop)return;let s;n?s=new DP(this._smoothScrolling.from,r,this._smoothScrolling.startTime,this._smoothScrolling.duration):s=this._smoothScrolling.combine(this._state,r,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=s}else{const r=this._state.withScrollPosition(e);this._smoothScrolling=DP.start(this._state,r,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;const e=this._smoothScrolling.tick(),n=this._state.withScrollPosition(e);if(this._setState(n,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,n){const r=this._state;r.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(r,n)))}}class _ge{constructor(e,n,r){this.scrollLeft=e,this.scrollTop=n,this.isDone=r}}function mq(i,e){const n=e-i;return function(r){return i+n*hft(r)}}function uft(i,e,n){return function(r){return r2.5*r){let o,a;return e0&&Math.abs(e.deltaY)>0)return 1;let n=.5;return this._front===-1&&this._rear===-1||this._memory[this._rear],(!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(n+=.25),Math.min(Math.max(n,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}}n7.INSTANCE=new n7;class Soe extends Pf{get options(){return this._options}constructor(e,n,r){super(),this._onScroll=this._register(new _e),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new _e),e.style.overflow="hidden",this._options=gft(n),this._scrollable=r,this._register(this._scrollable.onScroll(o=>{this._onWillScroll.fire(o),this._onDidScroll(o),this._onScroll.fire(o)}));const s={onMouseWheel:o=>this._onMouseWheel(o),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new cft(this._scrollable,this._options,s)),this._horizontalScrollbar=this._register(new lft(this._scrollable,this._options,s)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=Di(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=Di(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=Di(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,o=>this._onMouseOver(o)),this.onmouseleave(this._listenOnDomNode,o=>this._onMouseLeave(o)),this._hideTimeout=this._register(new Mf),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=Mi(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,ri&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new ux(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=Mi(this._mouseWheelToDispose),e)){const r=s=>{this._onMouseWheel(new ux(s))};this._mouseWheelToDispose.push(Be(this._listenOnDomNode,ht.MOUSE_WHEEL,r,{passive:!1}))}}_onMouseWheel(e){var n;if(!((n=e.browserEvent)===null||n===void 0)&&n.defaultPrevented)return;const r=n7.INSTANCE;r.acceptStandardWheelEvent(e);let s=!1;if(e.deltaY||e.deltaX){let a=e.deltaY*this._options.mouseWheelScrollSensitivity,l=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&l+a===0?l=a=0:Math.abs(a)>=Math.abs(l)?l=0:a=0),this._options.flipAxes&&([a,l]=[l,a]);const c=!ri&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||c)&&!l&&(l=a,a=0),e.browserEvent&&e.browserEvent.altKey&&(l=l*this._options.fastScrollSensitivity,a=a*this._options.fastScrollSensitivity);const u=this._scrollable.getFutureScrollPosition();let d={};if(a){const h=vge*a,f=u.scrollTop-(h<0?Math.floor(h):Math.ceil(h));this._verticalScrollbar.writeScrollPosition(d,f)}if(l){const h=vge*l,f=u.scrollLeft-(h<0?Math.floor(h):Math.ceil(h));this._horizontalScrollbar.writeScrollPosition(d,f)}d=this._scrollable.validateScrollPosition(d),(u.scrollLeft!==d.scrollLeft||u.scrollTop!==d.scrollTop)&&(this._options.mouseWheelSmoothScroll&&r.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(d):this._scrollable.setScrollPositionNow(d),s=!0)}let o=s;!o&&this._options.alwaysConsumeMouseWheel&&(o=!0),!o&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(o=!0),o&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){const e=this._scrollable.getCurrentScrollPosition(),n=e.scrollTop>0,r=e.scrollLeft>0,s=r?" left":"",o=n?" top":"",a=r||n?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${s}`),this._topShadowDomNode.setClassName(`shadow${o}`),this._topLeftShadowDomNode.setClassName(`shadow${a}${o}${s}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),fft)}}class kIe extends Soe{constructor(e,n){n=n||{},n.mouseWheelSmoothScroll=!1;const r=new M5({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:s=>mh(s)});super(e,n,r),this._register(r)}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}}class xoe extends Soe{constructor(e,n,r){super(e,n,r)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class P5 extends Soe{constructor(e,n){n=n||{},n.mouseWheelSmoothScroll=!1;const r=new M5({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:s=>mh(s)});super(e,n,r),this._register(r),this._element=e,this._register(this.onScroll(s=>{s.scrollTopChanged&&(this._element.scrollTop=s.scrollTop),s.scrollLeftChanged&&(this._element.scrollLeft=s.scrollLeft)})),this.scanDomNode()}setScrollPosition(e){this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}function gft(i){const e={lazyRender:typeof i.lazyRender<"u"?i.lazyRender:!1,className:typeof i.className<"u"?i.className:"",useShadows:typeof i.useShadows<"u"?i.useShadows:!0,handleMouseWheel:typeof i.handleMouseWheel<"u"?i.handleMouseWheel:!0,flipAxes:typeof i.flipAxes<"u"?i.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof i.consumeMouseWheelIfScrollbarIsNeeded<"u"?i.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof i.alwaysConsumeMouseWheel<"u"?i.alwaysConsumeMouseWheel:!1,scrollYToX:typeof i.scrollYToX<"u"?i.scrollYToX:!1,mouseWheelScrollSensitivity:typeof i.mouseWheelScrollSensitivity<"u"?i.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof i.fastScrollSensitivity<"u"?i.fastScrollSensitivity:5,scrollPredominantAxis:typeof i.scrollPredominantAxis<"u"?i.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof i.mouseWheelSmoothScroll<"u"?i.mouseWheelSmoothScroll:!0,arrowSize:typeof i.arrowSize<"u"?i.arrowSize:11,listenOnDomNode:typeof i.listenOnDomNode<"u"?i.listenOnDomNode:null,horizontal:typeof i.horizontal<"u"?i.horizontal:1,horizontalScrollbarSize:typeof i.horizontalScrollbarSize<"u"?i.horizontalScrollbarSize:10,horizontalSliderSize:typeof i.horizontalSliderSize<"u"?i.horizontalSliderSize:0,horizontalHasArrows:typeof i.horizontalHasArrows<"u"?i.horizontalHasArrows:!1,vertical:typeof i.vertical<"u"?i.vertical:1,verticalScrollbarSize:typeof i.verticalScrollbarSize<"u"?i.verticalScrollbarSize:10,verticalHasArrows:typeof i.verticalHasArrows<"u"?i.verticalHasArrows:!1,verticalSliderSize:typeof i.verticalSliderSize<"u"?i.verticalSliderSize:0,scrollByPage:typeof i.scrollByPage<"u"?i.scrollByPage:!1};return e.horizontalSliderSize=typeof i.horizontalSliderSize<"u"?i.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof i.verticalSliderSize<"u"?i.verticalSliderSize:e.verticalScrollbarSize,ri&&(e.className+=" mac"),e}class koe extends N5{constructor(e,n,r){super(),this._mouseLeaveMonitor=null,this._context=e,this.viewController=n,this.viewHelper=r,this.mouseTargetFactory=new Ca(this._context,r),this._mouseDownOperation=this._register(new mft(this._context,this.viewController,this.viewHelper,this.mouseTargetFactory,(a,l)=>this._createMouseTarget(a,l),a=>this._getMouseColumn(a))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(143).height;const s=new zht(this.viewHelper.viewDomNode);this._register(s.onContextMenu(this.viewHelper.viewDomNode,a=>this._onContextMenu(a,!0))),this._register(s.onMouseMove(this.viewHelper.viewDomNode,a=>{this._onMouseMove(a),this._mouseLeaveMonitor||(this._mouseLeaveMonitor=Be(this.viewHelper.viewDomNode.ownerDocument,"mousemove",l=>{this.viewHelper.viewDomNode.contains(l.target)||this._onMouseLeave(new b1(l,!1,this.viewHelper.viewDomNode))}))})),this._register(s.onMouseUp(this.viewHelper.viewDomNode,a=>this._onMouseUp(a))),this._register(s.onMouseLeave(this.viewHelper.viewDomNode,a=>this._onMouseLeave(a)));let o=0;this._register(s.onPointerDown(this.viewHelper.viewDomNode,(a,l)=>{o=l})),this._register(Be(this.viewHelper.viewDomNode,ht.POINTER_UP,a=>{this._mouseDownOperation.onPointerUp()})),this._register(s.onMouseDown(this.viewHelper.viewDomNode,a=>this._onMouseDown(a,o))),this._setupMouseWheelZoomListener(),this._context.addEventHandler(this)}_setupMouseWheelZoomListener(){const e=n7.INSTANCE;let n=0,r=eh.getZoomLevel(),s=!1,o=0;const a=c=>{if(this.viewController.emitMouseWheel(c),!this._context.configuration.options.get(75))return;const u=new ux(c);if(e.acceptStandardWheelEvent(u),e.isPhysicalMouseWheel()){if(l(c)){const d=eh.getZoomLevel(),h=u.deltaY>0?1:-1;eh.setZoomLevel(d+h),u.preventDefault(),u.stopPropagation()}}else Date.now()-n>50&&(r=eh.getZoomLevel(),s=l(c),o=0),n=Date.now(),o+=u.deltaY,s&&(eh.setZoomLevel(r+o/5),u.preventDefault(),u.stopPropagation())};this._register(Be(this.viewHelper.viewDomNode,ht.MOUSE_WHEEL,a,{capture:!0,passive:!1}));function l(c){return ri?(c.metaKey||c.ctrlKey)&&!c.shiftKey&&!c.altKey:c.ctrlKey&&!c.metaKey&&!c.shiftKey&&!c.altKey}}dispose(){this._context.removeEventHandler(this),this._mouseLeaveMonitor&&(this._mouseLeaveMonitor.dispose(),this._mouseLeaveMonitor=null),super.dispose()}onConfigurationChanged(e){if(e.hasChanged(143)){const n=this._context.configuration.options.get(143).height;this._height!==n&&(this._height=n,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(e){return this._mouseDownOperation.onCursorStateChanged(e),!1}onFocusChanged(e){return!1}getTargetAtClientPoint(e,n){const s=new yIe(e,n).toPageCoordinates(),o=boe(this.viewHelper.viewDomNode);if(s.yo.y+o.height||s.xo.x+o.width)return null;const a=yoe(this.viewHelper.viewDomNode,o,s);return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),o,s,a,null)}_createMouseTarget(e,n){let r=e.target;if(!this.viewHelper.viewDomNode.contains(r)){const s=dx(this.viewHelper.viewDomNode);s&&(r=s.elementsFromPoint(e.posx,e.posy).find(o=>this.viewHelper.viewDomNode.contains(o)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),e.editorPos,e.pos,e.relativePos,n?r:null)}_getMouseColumn(e){return this.mouseTargetFactory.getMouseColumn(e.relativePos)}_onContextMenu(e,n){this.viewController.emitContextMenu({event:e,target:this._createMouseTarget(e,n)})}_onMouseMove(e){this.mouseTargetFactory.mouseTargetIsWidget(e)||e.preventDefault(),!(this._mouseDownOperation.isActive()||e.timestamp{e.preventDefault(),this.viewHelper.focusTextArea()};if(d&&(s||a&&l))h(),this._mouseDownOperation.start(r.type,e,n);else if(o)e.preventDefault();else if(c){const f=r.detail;d&&this.viewHelper.shouldSuppressMouseDownOnViewZone(f.viewZoneId)&&(h(),this._mouseDownOperation.start(r.type,e,n),e.preventDefault())}else u&&this.viewHelper.shouldSuppressMouseDownOnWidget(r.detail)&&(h(),e.preventDefault());this.viewController.emitMouseDown({event:e,target:r})}}class mft extends Le{constructor(e,n,r,s,o,a){super(),this._context=e,this._viewController=n,this._viewHelper=r,this._mouseTargetFactory=s,this._createMouseTarget=o,this._getMouseColumn=a,this._mouseMoveMonitor=this._register(new Hht(this._viewHelper.viewDomNode)),this._topBottomDragScrolling=this._register(new _ft(this._context,this._viewHelper,this._mouseTargetFactory,(l,c,u)=>this._dispatchMouse(l,c,u))),this._mouseState=new E$,this._currentSelection=new Ft(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(e){this._lastMouseEvent=e,this._mouseState.setModifiers(e);const n=this._findMousePosition(e,!1);n&&(this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:e,target:n}):n.type===13&&(n.outsidePosition==="above"||n.outsidePosition==="below")?this._topBottomDragScrolling.start(n,e):(this._topBottomDragScrolling.stop(),this._dispatchMouse(n,!0,1)))}start(e,n,r){this._lastMouseEvent=n,this._mouseState.setStartedOnLineNumbers(e===3),this._mouseState.setStartButtons(n),this._mouseState.setModifiers(n);const s=this._findMousePosition(n,!0);if(!s||!s.position)return;this._mouseState.trySetCount(n.detail,s.position),n.detail=this._mouseState.count;const o=this._context.configuration.options;if(!o.get(90)&&o.get(35)&&!o.get(22)&&!this._mouseState.altKey&&n.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&s.type===6&&s.position&&this._currentSelection.containsPosition(s.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,r,n.buttons,a=>this._onMouseDownThenMove(a),a=>{const l=this._findMousePosition(this._lastMouseEvent,!1);a&&a instanceof KeyboardEvent?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:l?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(s,n.shiftKey,1),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(this._viewHelper.viewLinesDomNode,r,n.buttons,a=>this._onMouseDownThenMove(a),()=>this._stop()))}_stop(){this._isActive=!1,this._topBottomDragScrolling.stop()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onPointerUp(){this._mouseMoveMonitor.stopMonitoring()}onCursorStateChanged(e){this._currentSelection=e.selections[0]}_getPositionOutsideEditor(e){const n=e.editorPos,r=this._context.viewModel,s=this._context.viewLayout,o=this._getMouseColumn(e);if(e.posyn.y+n.height){const l=e.posy-n.y-n.height,c=s.getCurrentScrollTop()+e.relativePos.y,u=zE.getZoneAtCoord(this._context,c);if(u){const h=this._helpPositionJumpOverViewZone(u);if(h)return dl.createOutsideEditor(o,h,"below",l)}const d=s.getLineNumberAtVerticalOffset(c);return dl.createOutsideEditor(o,new ve(d,r.getLineMaxColumn(d)),"below",l)}const a=s.getLineNumberAtVerticalOffset(s.getCurrentScrollTop()+e.relativePos.y);if(e.posxn.x+n.width){const l=e.posx-n.x-n.width;return dl.createOutsideEditor(o,new ve(a,r.getLineMaxColumn(a)),"right",l)}return null}_findMousePosition(e,n){const r=this._getPositionOutsideEditor(e);if(r)return r;const s=this._createMouseTarget(e,n);if(!s.position)return null;if(s.type===8||s.type===5){const a=this._helpPositionJumpOverViewZone(s.detail);if(a)return dl.createViewZone(s.type,s.element,s.mouseColumn,a,s.detail)}return s}_helpPositionJumpOverViewZone(e){const n=new ve(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),r=e.positionBefore,s=e.positionAfter;return r&&s?r.isBefore(n)?r:s:null}_dispatchMouse(e,n,r){e.position&&this._viewController.dispatchMouse({position:e.position,mouseColumn:e.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,revealType:r,inSelectionMode:n,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton,onInjectedText:e.type===6&&e.detail.injectedText!==null})}}class _ft extends Le{constructor(e,n,r,s){super(),this._context=e,this._viewHelper=n,this._mouseTargetFactory=r,this._dispatchMouse=s,this._operation=null}dispose(){super.dispose(),this.stop()}start(e,n){this._operation?this._operation.setPosition(e,n):this._operation=new vft(this._context,this._viewHelper,this._mouseTargetFactory,this._dispatchMouse,e,n)}stop(){this._operation&&(this._operation.dispose(),this._operation=null)}}class vft extends Le{constructor(e,n,r,s,o,a){super(),this._context=e,this._viewHelper=n,this._mouseTargetFactory=r,this._dispatchMouse=s,this._position=o,this._mouseEvent=a,this._lastTime=Date.now(),this._animationFrameDisposable=mh(()=>this._execute())}dispose(){this._animationFrameDisposable.dispose()}setPosition(e,n){this._position=e,this._mouseEvent=n}_tick(){const e=Date.now(),n=e-this._lastTime;return this._lastTime=e,n}_getScrollSpeed(){const e=this._context.configuration.options.get(66),n=this._context.configuration.options.get(143).height/e,r=this._position.outsideDistance/e;return r<=1.5?Math.max(30,n*(1+r)):r<=3?Math.max(60,n*(2+r)):Math.max(200,n*(7+r))}_execute(){const e=this._context.configuration.options.get(66),n=this._getScrollSpeed(),r=this._tick(),s=n*(r/1e3)*e,o=this._position.outsidePosition==="above"?-s:s;this._context.viewModel.viewLayout.deltaScrollNow(0,o),this._viewHelper.renderNow();const a=this._context.viewLayout.getLinesViewportData(),l=this._position.outsidePosition==="above"?a.startLineNumber:a.endLineNumber;let c;{const u=boe(this._viewHelper.viewDomNode),d=this._context.configuration.options.get(143).horizontalScrollbarHeight,h=new L$(this._mouseEvent.pos.x,u.y+u.height-d-.1),f=yoe(this._viewHelper.viewDomNode,u,h);c=this._mouseTargetFactory.createMouseTarget(this._viewHelper.getLastRenderData(),u,h,f,null)}(!c.position||c.position.lineNumber!==l)&&(this._position.outsidePosition==="above"?c=dl.createOutsideEditor(this._position.mouseColumn,new ve(l,1),"above",this._position.outsideDistance):c=dl.createOutsideEditor(this._position.mouseColumn,new ve(l,this._context.viewModel.getLineMaxColumn(l)),"below",this._position.outsideDistance)),this._dispatchMouse(c,!0,2),this._animationFrameDisposable=mh(()=>this._execute())}}class E${get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get count(){return this._lastMouseDownCount}setModifiers(e){this._altKey=e.altKey,this._ctrlKey=e.ctrlKey,this._metaKey=e.metaKey,this._shiftKey=e.shiftKey}setStartButtons(e){this._leftButton=e.leftButton,this._middleButton=e.middleButton}setStartedOnLineNumbers(e){this._startedOnLineNumbers=e}trySetCount(e,n){const r=new Date().getTime();r-this._lastSetMouseDownCountTime>E$.CLEAR_MOUSE_DOWN_COUNT_TIME&&(e=1),this._lastSetMouseDownCountTime=r,e>this._lastMouseDownCount+1&&(e=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(n)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=n,this._lastMouseDownCount=Math.min(e,this._lastMouseDownPositionEqualCount)}}E$.CLEAR_MOUSE_DOWN_COUNT_TIME=400;class Xn{get event(){return this.emitter.event}constructor(e,n,r){const s=o=>this.emitter.fire(o);this.emitter=new _e({onWillAddFirstListener:()=>e.addEventListener(n,s,r),onDidRemoveLastListener:()=>e.removeEventListener(n,s,r)})}dispose(){this.emitter.dispose()}}var yy;(function(i){const e={total:0,min:Number.MAX_VALUE,max:0},n=Object.assign({},e),r=Object.assign({},e),s=Object.assign({},e);let o=0;const a={keydown:0,input:0,render:0};function l(){b(),performance.mark("inputlatency/start"),performance.mark("keydown/start"),a.keydown=1,queueMicrotask(c)}i.onKeyDown=l;function c(){a.keydown===1&&(performance.mark("keydown/end"),a.keydown=2)}function u(){performance.mark("input/start"),a.input=1,_()}i.onBeforeInput=u;function d(){a.input===0&&u(),queueMicrotask(h)}i.onInput=d;function h(){a.input===1&&(performance.mark("input/end"),a.input=2)}function f(){b()}i.onKeyUp=f;function p(){b()}i.onSelectionChange=p;function g(){a.keydown===2&&a.input===2&&a.render===0&&(performance.mark("render/start"),a.render=1,queueMicrotask(m),_())}i.onRenderStart=g;function m(){a.render===1&&(performance.mark("render/end"),a.render=2)}function _(){setTimeout(b)}function b(){a.keydown===2&&a.input===2&&a.render===2&&(performance.mark("inputlatency/end"),performance.measure("keydown","keydown/start","keydown/end"),performance.measure("input","input/start","input/end"),performance.measure("render","render/start","render/end"),performance.measure("inputlatency","inputlatency/start","inputlatency/end"),y("keydown",e),y("input",n),y("render",r),y("inputlatency",s),o++,x())}function y(E,A){const M=performance.getEntriesByName(E)[0].duration;A.total+=M,A.min=Math.min(A.min,M),A.max=Math.max(A.max,M)}function x(){performance.clearMarks("keydown/start"),performance.clearMarks("keydown/end"),performance.clearMarks("input/start"),performance.clearMarks("input/end"),performance.clearMarks("render/start"),performance.clearMarks("render/end"),performance.clearMarks("inputlatency/start"),performance.clearMarks("inputlatency/end"),performance.clearMeasures("keydown"),performance.clearMeasures("input"),performance.clearMeasures("render"),performance.clearMeasures("inputlatency"),a.keydown=0,a.input=0,a.render=0}function k(){if(o===0)return;const E={keydown:D(e),input:D(n),render:D(r),total:D(s),sampleCount:o};return R(e),R(n),R(r),R(s),o=0,E}i.getAndClearMeasurements=k;function D(E){return{average:E.total/o,max:E.max,min:E.min}}function R(E){E.total=0,E.min=Number.MAX_VALUE,E.max=0}})(yy||(yy={}));class Qo{constructor(e,n,r,s,o){this.value=e,this.selectionStart=n,this.selectionEnd=r,this.selection=s,this.newlineCountBeforeSelection=o}toString(){return`[ <${this.value}>, selectionStart: ${this.selectionStart}, selectionEnd: ${this.selectionEnd}]`}static readFromTextArea(e,n){const r=e.getValue(),s=e.getSelectionStart(),o=e.getSelectionEnd();let a;if(n){const l=r.substring(0,s),c=n.value.substring(0,n.selectionStart);l===c&&(a=n.newlineCountBeforeSelection)}return new Qo(r,s,o,null,a)}collapseSelection(){return this.selectionStart===this.value.length?this:new Qo(this.value,this.value.length,this.value.length,null,void 0)}writeToTextArea(e,n,r){n.setValue(e,this.value),r&&n.setSelectionRange(e,this.selectionStart,this.selectionEnd)}deduceEditorPosition(e){var n,r,s,o,a,l,c,u;if(e<=this.selectionStart){const f=this.value.substring(e,this.selectionStart);return this._finishDeduceEditorPosition((r=(n=this.selection)===null||n===void 0?void 0:n.getStartPosition())!==null&&r!==void 0?r:null,f,-1)}if(e>=this.selectionEnd){const f=this.value.substring(this.selectionEnd,e);return this._finishDeduceEditorPosition((o=(s=this.selection)===null||s===void 0?void 0:s.getEndPosition())!==null&&o!==void 0?o:null,f,1)}const d=this.value.substring(this.selectionStart,e);if(d.indexOf("…")===-1)return this._finishDeduceEditorPosition((l=(a=this.selection)===null||a===void 0?void 0:a.getStartPosition())!==null&&l!==void 0?l:null,d,1);const h=this.value.substring(e,this.selectionEnd);return this._finishDeduceEditorPosition((u=(c=this.selection)===null||c===void 0?void 0:c.getEndPosition())!==null&&u!==void 0?u:null,h,-1)}_finishDeduceEditorPosition(e,n,r){let s=0,o=-1;for(;(o=n.indexOf(` `,o+1))!==-1;)s++;return[e,r*n.length,s]}static deduceInput(e,n,r){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};const s=Math.min(ax(e.value,n.value),e.selectionStart,n.selectionStart),o=Math.min(F9(e.value,n.value),e.value.length-e.selectionEnd,n.value.length-n.selectionEnd);e.value.substring(s,e.value.length-o);const a=n.value.substring(s,n.value.length-o),l=e.selectionStart-s,c=e.selectionEnd-s,u=n.selectionStart-s,d=n.selectionEnd-s;if(u===d){const f=e.selectionStart-s;return{text:a,replacePrevCharCnt:f,replaceNextCharCnt:0,positionDelta:0}}const h=c-l;return{text:a,replacePrevCharCnt:h,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(e,n){if(!e)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(e.value===n.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:n.selectionEnd-e.selectionEnd};const r=Math.min(ax(e.value,n.value),e.selectionEnd),s=Math.min(F9(e.value,n.value),e.value.length-e.selectionEnd),o=e.value.substring(r,e.value.length-s),a=n.value.substring(r,n.value.length-s);e.selectionStart-r;const l=e.selectionEnd-r;n.selectionStart-r;const c=n.selectionEnd-r;return{text:a,replacePrevCharCnt:l,replaceNextCharCnt:o.length-l,positionDelta:c-a.length}}}Qo.EMPTY=new Qo("",0,0,null,void 0);class f2{static _getPageOfLine(e,n){return Math.floor((e-1)/n)}static _getRangeForPage(e,n){const r=e*n,s=r+1,o=r+n;return new J(s,1,o+1,1)}static fromEditorSelection(e,n,r,s){const a=f2._getPageOfLine(n.startLineNumber,r),l=f2._getRangeForPage(a,r),c=f2._getPageOfLine(n.endLineNumber,r),u=f2._getRangeForPage(c,r);let d=l.intersectRanges(new J(1,1,n.startLineNumber,n.startColumn));if(s&&e.getValueLengthInRange(d,1)>500){const b=e.modifyPosition(d.getEndPosition(),-500);d=J.fromPositions(b,d.getEndPosition())}const h=e.getValueInRange(d,1),f=e.getLineCount(),p=e.getLineMaxColumn(f);let g=u.intersectRanges(new J(n.endLineNumber,n.endColumn,f,p));if(s&&e.getValueLengthInRange(g,1)>500){const b=e.modifyPosition(g.getStartPosition(),500);g=J.fromPositions(g.getStartPosition(),b)}const m=e.getValueInRange(g,1);let _;if(a===c||a+1===c)_=e.getValueInRange(n,1);else{const b=l.intersectRanges(n),y=u.intersectRanges(n);_=e.getValueInRange(b,1)+"…"+e.getValueInRange(y,1)}return s&&_.length>2*500&&(_=_.substring(0,500)+"…"+_.substring(_.length-500,_.length)),new Qo(h+_+m,h.length,h.length+_.length,n,d.endLineNumber-d.startLineNumber)}}var i7;(function(i){i.Tap="-monaco-textarea-synthetic-tap"})(i7||(i7={}));const RJ={forceCopyWithSyntaxHighlighting:!1};class EP{constructor(){this._lastState=null}set(e,n){this._lastState={lastCopiedValue:e,data:n}}get(e){return this._lastState&&this._lastState.lastCopiedValue===e?this._lastState.data:(this._lastState=null,null)}}EP.INSTANCE=new EP;class bft{constructor(){this._lastTypeTextLength=0}handleCompositionUpdate(e){e=e||"";const n={text:e,replacePrevCharCnt:this._lastTypeTextLength,replaceNextCharCnt:0,positionDelta:0};return this._lastTypeTextLength=e.length,n}}class yft extends Le{get textAreaState(){return this._textAreaState}constructor(e,n,r,s){super(),this._host=e,this._textArea=n,this._OS=r,this._browser=s,this._onFocus=this._register(new _e),this.onFocus=this._onFocus.event,this._onBlur=this._register(new _e),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new _e),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new _e),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new _e),this.onCut=this._onCut.event,this._onPaste=this._register(new _e),this.onPaste=this._onPaste.event,this._onType=this._register(new _e),this.onType=this._onType.event,this._onCompositionStart=this._register(new _e),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new _e),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new _e),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new _e),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._asyncTriggerCut=this._register(new Ji(()=>this._onCut.fire(),0)),this._asyncFocusGainWriteScreenReaderContent=this._register(new Ji(()=>this.writeScreenReaderContent("asyncFocusGain"),0)),this._textAreaState=Qo.EMPTY,this._selectionChangeListener=null,this.writeScreenReaderContent("ctor"),this._hasFocus=!1,this._currentComposition=null;let o=null;this._register(this._textArea.onKeyDown(a=>{const l=new yr(a);(l.keyCode===114||this._currentComposition&&l.keyCode===1)&&l.stopPropagation(),l.equals(9)&&l.preventDefault(),o=l,this._onKeyDown.fire(l)})),this._register(this._textArea.onKeyUp(a=>{const l=new yr(a);this._onKeyUp.fire(l)})),this._register(this._textArea.onCompositionStart(a=>{const l=new bft;if(this._currentComposition){this._currentComposition=l;return}if(this._currentComposition=l,this._OS===2&&o&&o.equals(114)&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===a.data&&(o.code==="ArrowRight"||o.code==="ArrowLeft")){l.handleCompositionUpdate("x"),this._onCompositionStart.fire({data:a.data});return}if(this._browser.isAndroid){this._onCompositionStart.fire({data:a.data});return}this._onCompositionStart.fire({data:a.data})})),this._register(this._textArea.onCompositionUpdate(a=>{const l=this._currentComposition;if(!l)return;if(this._browser.isAndroid){const u=Qo.readFromTextArea(this._textArea,this._textAreaState),d=Qo.deduceAndroidCompositionInput(this._textAreaState,u);this._textAreaState=u,this._onType.fire(d),this._onCompositionUpdate.fire(a);return}const c=l.handleCompositionUpdate(a.data);this._textAreaState=Qo.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(c),this._onCompositionUpdate.fire(a)})),this._register(this._textArea.onCompositionEnd(a=>{const l=this._currentComposition;if(!l)return;if(this._currentComposition=null,this._browser.isAndroid){const u=Qo.readFromTextArea(this._textArea,this._textAreaState),d=Qo.deduceAndroidCompositionInput(this._textAreaState,u);this._textAreaState=u,this._onType.fire(d),this._onCompositionEnd.fire();return}const c=l.handleCompositionUpdate(a.data);this._textAreaState=Qo.readFromTextArea(this._textArea,this._textAreaState),this._onType.fire(c),this._onCompositionEnd.fire()})),this._register(this._textArea.onInput(a=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._currentComposition)return;const l=Qo.readFromTextArea(this._textArea,this._textAreaState),c=Qo.deduceInput(this._textAreaState,l,this._OS===2);c.replacePrevCharCnt===0&&c.text.length===1&&(xo(c.text.charCodeAt(0))||c.text.charCodeAt(0)===127)||(this._textAreaState=l,(c.text!==""||c.replacePrevCharCnt!==0||c.replaceNextCharCnt!==0||c.positionDelta!==0)&&this._onType.fire(c))})),this._register(this._textArea.onCut(a=>{this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(a),this._asyncTriggerCut.schedule()})),this._register(this._textArea.onCopy(a=>{this._ensureClipboardGetsEditorSelection(a)})),this._register(this._textArea.onPaste(a=>{if(this._textArea.setIgnoreSelectionChangeTime("received paste event"),a.preventDefault(),!a.clipboardData)return;let[l,c]=AJ.getTextData(a.clipboardData);l&&(c=c||EP.INSTANCE.get(l),this._onPaste.fire({text:l,metadata:c}))})),this._register(this._textArea.onFocus(()=>{const a=this._hasFocus;this._setHasFocus(!0),this._browser.isSafari&&!a&&this._hasFocus&&this._asyncFocusGainWriteScreenReaderContent.schedule()})),this._register(this._textArea.onBlur(()=>{this._currentComposition&&(this._currentComposition=null,this.writeScreenReaderContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(this._textArea.onSyntheticTap(()=>{this._browser.isAndroid&&this._currentComposition&&(this._currentComposition=null,this.writeScreenReaderContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let e=0;return Be(this._textArea.ownerDocument,"selectionchange",n=>{if(yy.onSelectionChange(),!this._hasFocus||this._currentComposition||!this._browser.isChrome)return;const r=Date.now(),s=r-e;if(e=r,s<5)return;const o=r-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),o<100||!this._textAreaState.selection)return;const a=this._textArea.getValue();if(this._textAreaState.value!==a)return;const l=this._textArea.getSelectionStart(),c=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===l&&this._textAreaState.selectionEnd===c)return;const u=this._textAreaState.deduceEditorPosition(l),d=this._host.deduceModelPosition(u[0],u[1],u[2]),h=this._textAreaState.deduceEditorPosition(c),f=this._host.deduceModelPosition(h[0],h[1],h[2]),p=new Ft(d.lineNumber,d.column,f.lineNumber,f.column);this._onSelectionChangeRequest.fire(p)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){this._setHasFocus(this._textArea.hasFocus())}_setHasFocus(e){this._hasFocus!==e&&(this._hasFocus=e,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeScreenReaderContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire())}_setAndWriteTextAreaState(e,n){this._hasFocus||(n=n.collapseSelection()),n.writeToTextArea(e,this._textArea,this._hasFocus),this._textAreaState=n}writeScreenReaderContent(e){this._currentComposition||this._setAndWriteTextAreaState(e,this._host.getScreenReaderContent())}_ensureClipboardGetsEditorSelection(e){const n=this._host.getDataToCopy(),r={version:1,isFromEmptySelection:n.isFromEmptySelection,multicursorText:n.multicursorText,mode:n.mode};EP.INSTANCE.set(this._browser.isFirefox?n.text.replace(/\r\n/g,` `):n.text,r),e.preventDefault(),e.clipboardData&&AJ.setTextData(e.clipboardData,n.text,n.html,r)}}const AJ={getTextData(i){const e=i.getData(bs.text);let n=null;const r=i.getData("vscode-editor-data");if(typeof r=="string")try{n=JSON.parse(r),n.version!==1&&(n=null)}catch{}return e.length===0&&n===null&&i.files.length>0?[Array.prototype.slice.call(i.files,0).map(o=>o.name).join(` `),null]:[e,n]},setTextData(i,e,n,r){i.setData(bs.text,e),typeof n=="string"&&i.setData("text/html",n),i.setData("vscode-editor-data",JSON.stringify(r))}};class wft extends Le{get ownerDocument(){return this._actual.ownerDocument}constructor(e){super(),this._actual=e,this.onKeyDown=this._register(new Xn(this._actual,"keydown")).event,this.onKeyUp=this._register(new Xn(this._actual,"keyup")).event,this.onCompositionStart=this._register(new Xn(this._actual,"compositionstart")).event,this.onCompositionUpdate=this._register(new Xn(this._actual,"compositionupdate")).event,this.onCompositionEnd=this._register(new Xn(this._actual,"compositionend")).event,this.onBeforeInput=this._register(new Xn(this._actual,"beforeinput")).event,this.onInput=this._register(new Xn(this._actual,"input")).event,this.onCut=this._register(new Xn(this._actual,"cut")).event,this.onCopy=this._register(new Xn(this._actual,"copy")).event,this.onPaste=this._register(new Xn(this._actual,"paste")).event,this.onFocus=this._register(new Xn(this._actual,"focus")).event,this.onBlur=this._register(new Xn(this._actual,"blur")).event,this._onSyntheticTap=this._register(new _e),this.onSyntheticTap=this._onSyntheticTap.event,this._ignoreSelectionChangeTime=0,this._register(this.onKeyDown(()=>yy.onKeyDown())),this._register(this.onBeforeInput(()=>yy.onBeforeInput())),this._register(this.onInput(()=>yy.onInput())),this._register(this.onKeyUp(()=>yy.onKeyUp())),this._register(Be(this._actual,i7.Tap,()=>this._onSyntheticTap.fire()))}hasFocus(){const e=dx(this._actual);return e?e.activeElement===this._actual:Zse(this._actual)?this._actual.ownerDocument.activeElement===this._actual:!1}setIgnoreSelectionChangeTime(e){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.value}setValue(e,n){const r=this._actual;r.value!==n&&(this.setIgnoreSelectionChangeTime("setValue"),r.value=n)}getSelectionStart(){return this._actual.selectionDirection==="backward"?this._actual.selectionEnd:this._actual.selectionStart}getSelectionEnd(){return this._actual.selectionDirection==="backward"?this._actual.selectionStart:this._actual.selectionEnd}setSelectionRange(e,n,r){const s=this._actual;let o=null;const a=dx(s);a?o=a.activeElement:o=s.ownerDocument.activeElement;const l=o===s,c=s.selectionStart,u=s.selectionEnd;if(l&&c===n&&u===r){gh&&window.parent!==window&&s.focus();return}if(l){this.setIgnoreSelectionChangeTime("setSelectionRange"),s.setSelectionRange(n,r),gh&&window.parent!==window&&s.focus();return}try{const d=elt(s);this.setIgnoreSelectionChangeTime("setSelectionRange"),s.focus(),s.setSelectionRange(n,r),tlt(s,d)}catch{}}}class Cft extends koe{constructor(e,n,r){super(e,n,r),this._register(or.addTarget(this.viewHelper.linesContentDomNode)),this._register(Be(this.viewHelper.linesContentDomNode,lr.Tap,o=>this.onTap(o))),this._register(Be(this.viewHelper.linesContentDomNode,lr.Change,o=>this.onChange(o))),this._register(Be(this.viewHelper.linesContentDomNode,lr.Contextmenu,o=>this._onContextMenu(new b1(o,!1,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(Be(this.viewHelper.linesContentDomNode,"pointerdown",o=>{const a=o.pointerType;if(a==="mouse"){this._lastPointerType="mouse";return}else a==="touch"?this._lastPointerType="touch":this._lastPointerType="pen"}));const s=new Vht(this.viewHelper.viewDomNode);this._register(s.onPointerMove(this.viewHelper.viewDomNode,o=>this._onMouseMove(o))),this._register(s.onPointerUp(this.viewHelper.viewDomNode,o=>this._onMouseUp(o))),this._register(s.onPointerLeave(this.viewHelper.viewDomNode,o=>this._onMouseLeave(o))),this._register(s.onPointerDown(this.viewHelper.viewDomNode,(o,a)=>this._onMouseDown(o,a)))}onTap(e){if(!e.initialTarget||!this.viewHelper.linesContentDomNode.contains(e.initialTarget))return;e.preventDefault(),this.viewHelper.focusTextArea();const n=this._createMouseTarget(new b1(e,!1,this.viewHelper.viewDomNode),!1);n.position&&this.viewController.dispatchMouse({position:n.position,mouseColumn:n.position.column,startedOnLineNumbers:!1,revealType:1,mouseDownCount:e.tapCount,inSelectionMode:!1,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1,onInjectedText:n.type===6&&n.detail.injectedText!==null})}onChange(e){this._lastPointerType==="touch"&&this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)}_onMouseDown(e,n){e.browserEvent.pointerType!=="touch"&&super._onMouseDown(e,n)}}class Sft extends koe{constructor(e,n,r){super(e,n,r),this._register(or.addTarget(this.viewHelper.linesContentDomNode)),this._register(Be(this.viewHelper.linesContentDomNode,lr.Tap,s=>this.onTap(s))),this._register(Be(this.viewHelper.linesContentDomNode,lr.Change,s=>this.onChange(s))),this._register(Be(this.viewHelper.linesContentDomNode,lr.Contextmenu,s=>this._onContextMenu(new b1(s,!1,this.viewHelper.viewDomNode),!1)))}onTap(e){e.preventDefault(),this.viewHelper.focusTextArea();const n=this._createMouseTarget(new b1(e,!1,this.viewHelper.viewDomNode),!1);if(n.position){const r=document.createEvent("CustomEvent");r.initEvent(i7.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(r),this.viewController.moveTo(n.position,1)}}onChange(e){this._context.viewModel.viewLayout.deltaScrollNow(-e.translationX,-e.translationY)}}class xft extends Le{constructor(e,n,r){super(),Kp&&Yse.pointerEvents?this.handler=this._register(new Cft(e,n,r)):window.TouchEvent?this.handler=this._register(new Sft(e,n,r)):this.handler=this._register(new koe(e,n,r))}getTargetAtClientPoint(e,n){return this.handler.getTargetAtClientPoint(e,n)}}class Zx extends N5{}const Do=qn("themeService");function Qr(i){return{id:i}}function NJ(i){switch(i){case sh.DARK:return"vs-dark";case sh.HIGH_CONTRAST_DARK:return"hc-black";case sh.HIGH_CONTRAST_LIGHT:return"hc-light";default:return"vs"}}const LIe={ThemingContribution:"base.contributions.theming"};class kft{constructor(){this.themingParticipants=[],this.themingParticipants=[],this.onThemingParticipantAddedEmitter=new _e}onColorThemeChange(e){return this.themingParticipants.push(e),this.onThemingParticipantAddedEmitter.fire(e),gn(()=>{const n=this.themingParticipants.indexOf(e);this.themingParticipants.splice(n,1)})}getThemingParticipants(){return this.themingParticipants}}const DIe=new kft;Kr.add(LIe.ThemingContribution,DIe);function Of(i){return DIe.onColorThemeChange(i)}class Lft extends Le{constructor(e){super(),this.themeService=e,this.theme=e.getColorTheme(),this._register(this.themeService.onDidColorThemeChange(n=>this.onThemeChange(n)))}onThemeChange(e){this.theme=e,this.updateStyles()}updateStyles(){}}const EIe=ce("editor.lineHighlightBackground",{dark:null,light:null,hcDark:null,hcLight:null},L("lineHighlight","Background color for the highlight of line at the cursor position.")),bge=ce("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:Jn},L("lineHighlightBorderBox","Background color for the border around the line at the cursor position."));ce("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},L("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0);ce("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Dr,hcLight:Dr},L("rangeHighlightBorder","Background color of the border around highlighted ranges."),!0);ce("editor.symbolHighlightBackground",{dark:xm,light:xm,hcDark:null,hcLight:null},L("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0);ce("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Dr,hcLight:Dr},L("symbolHighlightBorder","Background color of the border around highlighted symbols."),!0);const IIe=ce("editorCursor.foreground",{dark:"#AEAFAD",light:Te.black,hcDark:Te.white,hcLight:"#0F4A85"},L("caret","Color of the editor cursor.")),Dft=ce("editorCursor.background",null,L("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),iv=ce("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},L("editorWhitespaces","Color of whitespace characters in the editor.")),Eft=ce("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:Te.white,hcLight:"#292929"},L("editorLineNumbers","Color of editor line numbers.")),q3=ce("editorIndentGuide.background",{dark:iv,light:iv,hcDark:iv,hcLight:iv},L("editorIndentGuides","Color of the editor indentation guides."),!1,L("deprecatedEditorIndentGuides","'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),K3=ce("editorIndentGuide.activeBackground",{dark:iv,light:iv,hcDark:iv,hcLight:iv},L("editorActiveIndentGuide","Color of the active editor indentation guides."),!1,L("deprecatedEditorActiveIndentGuide","'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),O5=ce("editorIndentGuide.background1",{dark:q3,light:q3,hcDark:q3,hcLight:q3},L("editorIndentGuides1","Color of the editor indentation guides (1).")),Ift=ce("editorIndentGuide.background2",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorIndentGuides2","Color of the editor indentation guides (2).")),Tft=ce("editorIndentGuide.background3",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorIndentGuides3","Color of the editor indentation guides (3).")),Rft=ce("editorIndentGuide.background4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorIndentGuides4","Color of the editor indentation guides (4).")),Aft=ce("editorIndentGuide.background5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorIndentGuides5","Color of the editor indentation guides (5).")),Nft=ce("editorIndentGuide.background6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorIndentGuides6","Color of the editor indentation guides (6).")),F5=ce("editorIndentGuide.activeBackground1",{dark:K3,light:K3,hcDark:K3,hcLight:K3},L("editorActiveIndentGuide1","Color of the active editor indentation guides (1).")),Mft=ce("editorIndentGuide.activeBackground2",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorActiveIndentGuide2","Color of the active editor indentation guides (2).")),Pft=ce("editorIndentGuide.activeBackground3",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorActiveIndentGuide3","Color of the active editor indentation guides (3).")),Oft=ce("editorIndentGuide.activeBackground4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorActiveIndentGuide4","Color of the active editor indentation guides (4).")),Fft=ce("editorIndentGuide.activeBackground5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorActiveIndentGuide5","Color of the active editor indentation guides (5).")),Bft=ce("editorIndentGuide.activeBackground6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorActiveIndentGuide6","Color of the active editor indentation guides (6).")),G3=ce("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Dr,hcLight:Dr},L("editorActiveLineNumber","Color of editor active line number"),!1,L("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead."));ce("editorLineNumber.activeForeground",{dark:G3,light:G3,hcDark:G3,hcLight:G3},L("editorActiveLineNumber","Color of editor active line number"));const jft=ce("editorLineNumber.dimmedForeground",{dark:null,light:null,hcDark:null,hcLight:null},L("editorDimmedLineNumber","Color of the final editor line when editor.renderFinalNewline is set to dimmed."));ce("editorRuler.foreground",{dark:"#5A5A5A",light:Te.lightgrey,hcDark:Te.white,hcLight:"#292929"},L("editorRuler","Color of the editor rulers."));ce("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},L("editorCodeLensForeground","Foreground color of editor CodeLens"));ce("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},L("editorBracketMatchBackground","Background color behind matching brackets"));ce("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:Jn,hcLight:Jn},L("editorBracketMatchBorder","Color for matching brackets boxes"));const Wft=ce("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},L("editorOverviewRulerBorder","Color of the overview ruler border.")),$ft=ce("editorOverviewRuler.background",null,L("editorOverviewRulerBackground","Background color of the editor overview ruler."));ce("editorGutter.background",{dark:Lo,light:Lo,hcDark:Lo,hcLight:Lo},L("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers."));ce("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:Te.fromHex("#fff").transparent(.8),hcLight:Jn},L("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor."));const zft=ce("editorUnnecessaryCode.opacity",{dark:Te.fromHex("#000a"),light:Te.fromHex("#0007"),hcDark:null,hcLight:null},L("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`));ce("editorGhostText.border",{dark:null,light:null,hcDark:Te.fromHex("#fff").transparent(.8),hcLight:Te.fromHex("#292929").transparent(.8)},L("editorGhostTextBorder","Border color of ghost text in the editor."));ce("editorGhostText.foreground",{dark:Te.fromHex("#ffffff56"),light:Te.fromHex("#0007"),hcDark:null,hcLight:null},L("editorGhostTextForeground","Foreground color of the ghost text in the editor."));ce("editorGhostText.background",{dark:null,light:null,hcDark:null,hcLight:null},L("editorGhostTextBackground","Background color of the ghost text in the editor."));const X3=new Te(new ii(0,122,204,.6)),TIe=ce("editorOverviewRuler.rangeHighlightForeground",{dark:X3,light:X3,hcDark:X3,hcLight:X3},L("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0),Vft=ce("editorOverviewRuler.errorForeground",{dark:new Te(new ii(255,18,18,.7)),light:new Te(new ii(255,18,18,.7)),hcDark:new Te(new ii(255,50,50,1)),hcLight:"#B5200D"},L("overviewRuleError","Overview ruler marker color for errors.")),Hft=ce("editorOverviewRuler.warningForeground",{dark:Ju,light:Ju,hcDark:SP,hcLight:SP},L("overviewRuleWarning","Overview ruler marker color for warnings.")),Uft=ce("editorOverviewRuler.infoForeground",{dark:_c,light:_c,hcDark:xP,hcLight:xP},L("overviewRuleInfo","Overview ruler marker color for infos.")),RIe=ce("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},L("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),AIe=ce("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},L("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),NIe=ce("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},L("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),MIe=ce("editorBracketHighlight.foreground4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),PIe=ce("editorBracketHighlight.foreground5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),OIe=ce("editorBracketHighlight.foreground6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),qft=ce("editorBracketHighlight.unexpectedBracket.foreground",{dark:new Te(new ii(255,18,18,.8)),light:new Te(new ii(255,18,18,.8)),hcDark:new Te(new ii(255,50,50,1)),hcLight:""},L("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),Kft=ce("editorBracketPairGuide.background1",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),Gft=ce("editorBracketPairGuide.background2",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),Xft=ce("editorBracketPairGuide.background3",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),Yft=ce("editorBracketPairGuide.background4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),Zft=ce("editorBracketPairGuide.background5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),Qft=ce("editorBracketPairGuide.background6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),Jft=ce("editorBracketPairGuide.activeBackground1",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),ept=ce("editorBracketPairGuide.activeBackground2",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),tpt=ce("editorBracketPairGuide.activeBackground3",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),npt=ce("editorBracketPairGuide.activeBackground4",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),ipt=ce("editorBracketPairGuide.activeBackground5",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),rpt=ce("editorBracketPairGuide.activeBackground6",{dark:"#00000000",light:"#00000000",hcDark:"#00000000",hcLight:"#00000000"},L("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));ce("editorUnicodeHighlight.border",{dark:"#BD9B03",light:"#CEA33D",hcDark:"#ff0000",hcLight:"#CEA33D"},L("editorUnicodeHighlight.border","Border color used to highlight unicode characters."));ce("editorUnicodeHighlight.background",{dark:"#bd9b0326",light:"#cea33d14",hcDark:"#00000000",hcLight:"#cea33d14"},L("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));Of((i,e)=>{const n=i.getColor(Lo),r=i.getColor(EIe),s=r&&!r.isTransparent()?r:n;s&&e.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${s}; }`)});class B5 extends Zx{constructor(e){super(),this._context=e,this._readConfig(),this._lastCursorModelPosition=new ve(1,1),this._renderResult=null,this._activeLineNumber=1,this._context.addEventHandler(this)}_readConfig(){const e=this._context.configuration.options;this._lineHeight=e.get(66);const n=e.get(67);this._renderLineNumbers=n.renderType,this._renderCustomLineNumbers=n.renderFn,this._renderFinalNewline=e.get(94);const r=e.get(143);this._lineNumbersLeft=r.lineNumbersLeft,this._lineNumbersWidth=r.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){return this._readConfig(),!0}onCursorStateChanged(e){const n=e.selections[0].getPosition();this._lastCursorModelPosition=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(n);let r=!1;return this._activeLineNumber!==n.lineNumber&&(this._activeLineNumber=n.lineNumber,r=!0),(this._renderLineNumbers===2||this._renderLineNumbers===3)&&(r=!0),r}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_getLineRenderLineNumber(e){const n=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ve(e,1));if(n.column!==1)return"";const r=n.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(r);if(this._renderLineNumbers===2){const s=Math.abs(this._lastCursorModelPosition.lineNumber-r);return s===0?''+r+"":String(s)}return this._renderLineNumbers===3?this._lastCursorModelPosition.lineNumber===r||r%10===0?String(r):"":String(r)}prepareRender(e){if(this._renderLineNumbers===0){this._renderResult=null;return}const n=_l?this._lineHeight%2===0?" lh-even":" lh-odd":"",r=e.visibleRange.startLineNumber,s=e.visibleRange.endLineNumber,o=this._context.viewModel.getLineCount(),a=[];for(let l=r;l<=s;l++){const c=l-r,u=this._getLineRenderLineNumber(l);if(!u){a[c]="";continue}let d="";if(l===o&&this._context.viewModel.getLineLength(l)===0){if(this._renderFinalNewline==="off"){a[c]="";continue}this._renderFinalNewline==="dimmed"&&(d=" dimmed-line-number")}l===this._activeLineNumber&&(d=" active-line-number"),a[c]=`
${u}
`}this._renderResult=a}render(e,n){if(!this._renderResult)return"";const r=n-e;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}B5.CLASS_NAME="line-numbers";Of((i,e)=>{const n=i.getColor(Eft),r=i.getColor(jft);r?e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${r}; }`):n&&e.addRule(`.monaco-editor .line-numbers.dimmed-line-number { color: ${n.transparent(.4)}; }`)});class hx extends hu{constructor(e){super(e);const n=this._context.configuration.options,r=n.get(143);this._canUseLayerHinting=!n.get(32),this._contentLeft=r.contentLeft,this._glyphMarginLeft=r.glyphMarginLeft,this._glyphMarginWidth=r.glyphMarginWidth,this._domNode=Di(document.createElement("div")),this._domNode.setClassName(hx.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=Di(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName(hx.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(e){const n=this._context.configuration.options,r=n.get(143);return this._canUseLayerHinting=!n.get(32),this._contentLeft=r.contentLeft,this._glyphMarginLeft=r.glyphMarginLeft,this._glyphMarginWidth=r.glyphMarginWidth,!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollTopChanged}prepareRender(e){}render(e){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");const n=e.scrollTop-e.bigNumbersDelta;this._domNode.setTop(-n);const r=Math.min(e.scrollHeight,1e6);this._domNode.setHeight(r),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(r)}}hx.CLASS_NAME="glyph-margin";hx.OUTER_CLASS_NAME="margin";const q2="monaco-mouse-cursor-text";class spt{constructor(){this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this._enabled=!0}get enabled(){return this._enabled}enable(){this._enabled=!0,this._onDidChange.fire()}disable(){this._enabled=!1,this._onDidChange.fire()}}const iM=new spt,sr=qn("keybindingService");var opt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},apt=function(i,e){return function(n,r){e(n,r,i)}};class lpt{constructor(e,n,r,s,o){this._context=e,this.modelLineNumber=n,this.distanceToModelLineStart=r,this.widthOfHiddenLineTextBefore=s,this.distanceToModelLineEnd=o,this._visibleTextAreaBrand=void 0,this.startPosition=null,this.endPosition=null,this.visibleTextareaStart=null,this.visibleTextareaEnd=null,this._previousPresentation=null}prepareRender(e){const n=new ve(this.modelLineNumber,this.distanceToModelLineStart+1),r=new ve(this.modelLineNumber,this._context.viewModel.model.getLineMaxColumn(this.modelLineNumber)-this.distanceToModelLineEnd);this.startPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(n),this.endPosition=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(r),this.startPosition.lineNumber===this.endPosition.lineNumber?(this.visibleTextareaStart=e.visibleRangeForPosition(this.startPosition),this.visibleTextareaEnd=e.visibleRangeForPosition(this.endPosition)):(this.visibleTextareaStart=null,this.visibleTextareaEnd=null)}definePresentation(e){return this._previousPresentation||(e?this._previousPresentation=e:this._previousPresentation={foreground:1,italic:!1,bold:!1,underline:!1,strikethrough:!1}),this._previousPresentation}}const _q=gh;let MJ=class extends hu{constructor(e,n,r,s){super(e),this._keybindingService=s,this._primaryCursorPosition=new ve(1,1),this._primaryCursorVisibleRange=null,this._viewController=n,this._visibleRangeProvider=r,this._scrollLeft=0,this._scrollTop=0;const o=this._context.configuration.options,a=o.get(143);this._setAccessibilityOptions(o),this._contentLeft=a.contentLeft,this._contentWidth=a.contentWidth,this._contentHeight=a.height,this._fontInfo=o.get(50),this._lineHeight=o.get(66),this._emptySelectionClipboard=o.get(37),this._copyWithSyntaxHighlighting=o.get(25),this._visibleTextArea=null,this._selections=[new Ft(1,1,1,1)],this._modelSelections=[new Ft(1,1,1,1)],this._lastRenderPosition=null,this.textArea=Di(document.createElement("textarea")),Ym.write(this.textArea,6),this.textArea.setClassName(`inputarea ${q2}`),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:l}=this._context.viewModel.model.getOptions();this.textArea.domNode.style.tabSize=`${l*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",this._getAriaLabel(o)),this.textArea.setAttribute("aria-required",o.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(o.get(123))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",L("editor","editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-autocomplete",o.get(90)?"none":"both"),this._ensureReadOnlyAttribute(),this.textAreaCover=Di(document.createElement("div")),this.textAreaCover.setPosition("absolute");const c={getLineCount:()=>this._context.viewModel.getLineCount(),getLineMaxColumn:h=>this._context.viewModel.getLineMaxColumn(h),getValueInRange:(h,f)=>this._context.viewModel.getValueInRange(h,f),getValueLengthInRange:(h,f)=>this._context.viewModel.getValueLengthInRange(h,f),modifyPosition:(h,f)=>this._context.viewModel.modifyPosition(h,f)},u={getDataToCopy:()=>{const h=this._context.viewModel.getPlainTextToCopy(this._modelSelections,this._emptySelectionClipboard,Aa),f=this._context.viewModel.model.getEOL(),p=this._emptySelectionClipboard&&this._modelSelections.length===1&&this._modelSelections[0].isEmpty(),g=Array.isArray(h)?h:null,m=Array.isArray(h)?h.join(f):h;let _,b=null;if(RJ.forceCopyWithSyntaxHighlighting||this._copyWithSyntaxHighlighting&&m.length<65536){const y=this._context.viewModel.getRichTextToCopy(this._modelSelections,this._emptySelectionClipboard);y&&(_=y.html,b=y.mode)}return{isFromEmptySelection:p,multicursorText:g,text:m,html:_,mode:b}},getScreenReaderContent:()=>{if(this._accessibilitySupport===1){const h=this._selections[0];if(ri&&h.isEmpty()){const p=h.getStartPosition();let g=this._getWordBeforePosition(p);if(g.length===0&&(g=this._getCharacterBeforePosition(p)),g.length>0)return new Qo(g,g.length,g.length,J.fromPositions(p),0)}if(ri&&!h.isEmpty()&&c.getValueLengthInRange(h,0)<500){const p=c.getValueInRange(h,0);return new Qo(p,0,p.length,h,0)}if(h1&&!h.isEmpty()){const p="vscode-placeholder";return new Qo(p,0,p.length,null,void 0)}return Qo.EMPTY}if(Gfe){const h=this._selections[0];if(h.isEmpty()){const f=h.getStartPosition(),[p,g]=this._getAndroidWordAtPosition(f);if(p.length>0)return new Qo(p,g,g,J.fromPositions(f),0)}return Qo.EMPTY}return f2.fromEditorSelection(c,this._selections[0],this._accessibilityPageSize,this._accessibilitySupport===0)},deduceModelPosition:(h,f,p)=>this._context.viewModel.deduceModelPositionRelativeToViewPosition(h,f,p)},d=this._register(new wft(this.textArea.domNode));this._textAreaInput=this._register(new yft(u,d,Zu,{isAndroid:Gfe,isChrome:qse,isFirefox:gh,isSafari:h1})),this._register(this._textAreaInput.onKeyDown(h=>{this._viewController.emitKeyDown(h)})),this._register(this._textAreaInput.onKeyUp(h=>{this._viewController.emitKeyUp(h)})),this._register(this._textAreaInput.onPaste(h=>{let f=!1,p=null,g=null;h.metadata&&(f=this._emptySelectionClipboard&&!!h.metadata.isFromEmptySelection,p=typeof h.metadata.multicursorText<"u"?h.metadata.multicursorText:null,g=h.metadata.mode),this._viewController.paste(h.text,f,p,g)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(h=>{h.replacePrevCharCnt||h.replaceNextCharCnt||h.positionDelta?this._viewController.compositionType(h.text,h.replacePrevCharCnt,h.replaceNextCharCnt,h.positionDelta):this._viewController.type(h.text)})),this._register(this._textAreaInput.onSelectionChangeRequest(h=>{this._viewController.setSelection(h)})),this._register(this._textAreaInput.onCompositionStart(h=>{const f=this.textArea.domNode,p=this._modelSelections[0],{distanceToModelLineStart:g,widthOfHiddenTextBefore:m}=(()=>{const b=f.value.substring(0,Math.min(f.selectionStart,f.selectionEnd)),y=b.lastIndexOf(` `),x=b.substring(y+1),k=x.lastIndexOf(" "),D=x.length-k-1,R=p.getStartPosition(),E=Math.min(R.column-1,D),A=R.column-1-E,M=x.substring(0,x.length-E),{tabSize:N}=this._context.viewModel.model.getOptions(),P=cpt(this.textArea.domNode.ownerDocument,M,this._fontInfo,N);return{distanceToModelLineStart:A,widthOfHiddenTextBefore:P}})(),{distanceToModelLineEnd:_}=(()=>{const b=f.value.substring(Math.max(f.selectionStart,f.selectionEnd)),y=b.indexOf(` `),x=y===-1?b:b.substring(0,y),k=x.indexOf(" "),D=k===-1?x.length:x.length-k-1,R=p.getEndPosition(),E=Math.min(this._context.viewModel.model.getLineMaxColumn(R.lineNumber)-R.column,D);return{distanceToModelLineEnd:this._context.viewModel.model.getLineMaxColumn(R.lineNumber)-R.column-E}})();this._context.viewModel.revealRange("keyboard",!0,J.fromPositions(this._selections[0].getStartPosition()),0,1),this._visibleTextArea=new lpt(this._context,p.startLineNumber,g,m,_),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render(),this.textArea.setClassName(`inputarea ${q2} ime-input`),this._viewController.compositionStart(),this._context.viewModel.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(h=>{this._visibleTextArea&&(this._visibleTextArea.prepareRender(this._visibleRangeProvider),this._render())})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off"),this._render(),this.textArea.setClassName(`inputarea ${q2}`),this._viewController.compositionEnd(),this._context.viewModel.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.viewModel.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.viewModel.setHasFocus(!1)})),this._register(iM.onDidChange(()=>{this._ensureReadOnlyAttribute()}))}writeScreenReaderContent(e){this._textAreaInput.writeScreenReaderContent(e)}dispose(){super.dispose()}_getAndroidWordAtPosition(e){const n='`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',r=this._context.viewModel.getLineContent(e.lineNumber),s=vh(n);let o=!0,a=e.column,l=!0,c=e.column,u=0;for(;u<50&&(o||l);){if(o&&a<=1&&(o=!1),o){const d=r.charCodeAt(a-2);s.get(d)!==0?o=!1:a--}if(l&&c>r.length&&(l=!1),l){const d=r.charCodeAt(c-1);s.get(d)!==0?l=!1:c++}u++}return[r.substring(a-1,c-1),e.column-a]}_getWordBeforePosition(e){const n=this._context.viewModel.getLineContent(e.lineNumber),r=vh(this._context.configuration.options.get(129));let s=e.column,o=0;for(;s>1;){const a=n.charCodeAt(s-2);if(r.get(a)!==0||o>50)return n.substring(s-1,e.column-1);o++,s--}return n.substring(0,e.column-1)}_getCharacterBeforePosition(e){if(e.column>1){const r=this._context.viewModel.getLineContent(e.lineNumber).charAt(e.column-2);if(!xo(r.charCodeAt(0)))return r}return""}_getAriaLabel(e){var n,r,s;if(e.get(2)===1){const a=(n=this._keybindingService.lookupKeybinding("editor.action.toggleScreenReaderAccessibilityMode"))===null||n===void 0?void 0:n.getAriaLabel(),l=(r=this._keybindingService.lookupKeybinding("workbench.action.showCommands"))===null||r===void 0?void 0:r.getAriaLabel(),c=(s=this._keybindingService.lookupKeybinding("workbench.action.openGlobalKeybindings"))===null||s===void 0?void 0:s.getAriaLabel(),u=L("accessibilityModeOff","The editor is not accessible at this time.");return a?L("accessibilityOffAriaLabel","{0} To enable screen reader optimized mode, use {1}",u,a):l?L("accessibilityOffAriaLabelNoKb","{0} To enable screen reader optimized mode, open the quick pick with {1} and run the command Toggle Screen Reader Accessibility Mode, which is currently not triggerable via keyboard.",u,l):c?L("accessibilityOffAriaLabelNoKbs","{0} Please assign a keybinding for the command Toggle Screen Reader Accessibility Mode by accessing the keybindings editor with {1} and run it.",u,c):u}return e.get(4)}_setAccessibilityOptions(e){this._accessibilitySupport=e.get(2);const n=e.get(3);this._accessibilitySupport===2&&n===rg.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=n;const s=e.get(143).wrappingColumn;if(s!==-1&&this._accessibilitySupport!==1){const o=e.get(50);this._textAreaWrapping=!0,this._textAreaWidth=Math.round(s*o.typicalHalfwidthCharacterWidth)}else this._textAreaWrapping=!1,this._textAreaWidth=_q?0:1}onConfigurationChanged(e){const n=this._context.configuration.options,r=n.get(143);this._setAccessibilityOptions(n),this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,this._contentHeight=r.height,this._fontInfo=n.get(50),this._lineHeight=n.get(66),this._emptySelectionClipboard=n.get(37),this._copyWithSyntaxHighlighting=n.get(25),this.textArea.setAttribute("wrap",this._textAreaWrapping&&!this._visibleTextArea?"on":"off");const{tabSize:s}=this._context.viewModel.model.getOptions();return this.textArea.domNode.style.tabSize=`${s*this._fontInfo.spaceWidth}px`,this.textArea.setAttribute("aria-label",this._getAriaLabel(n)),this.textArea.setAttribute("aria-required",n.get(5)?"true":"false"),this.textArea.setAttribute("tabindex",String(n.get(123))),(e.hasChanged(34)||e.hasChanged(90))&&this._ensureReadOnlyAttribute(),e.hasChanged(2)&&this._textAreaInput.writeScreenReaderContent("strategy changed"),!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),this._modelSelections=e.modelSelections.slice(0),this._textAreaInput.writeScreenReaderContent("selection changed"),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return this._scrollLeft=e.scrollLeft,this._scrollTop=e.scrollTop,!0}onZonesChanged(e){return!0}isFocused(){return this._textAreaInput.isFocused()}focusTextArea(){this._textAreaInput.focusTextArea()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(e){e.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",e.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),e.role&&this.textArea.setAttribute("role",e.role)}_ensureReadOnlyAttribute(){const e=this._context.configuration.options;!iM.enabled||e.get(34)&&e.get(90)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")}prepareRender(e){var n;this._primaryCursorPosition=new ve(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=e.visibleRangeForPosition(this._primaryCursorPosition),(n=this._visibleTextArea)===null||n===void 0||n.prepareRender(e)}render(e){this._textAreaInput.writeScreenReaderContent("render"),this._render()}_render(){var e;if(this._visibleTextArea){const s=this._visibleTextArea.visibleTextareaStart,o=this._visibleTextArea.visibleTextareaEnd,a=this._visibleTextArea.startPosition,l=this._visibleTextArea.endPosition;if(a&&l&&s&&o&&o.left>=this._scrollLeft&&s.left<=this._scrollLeft+this._contentWidth){const c=this._context.viewLayout.getVerticalOffsetForLineNumber(this._primaryCursorPosition.lineNumber)-this._scrollTop,u=this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));let d=this._visibleTextArea.widthOfHiddenLineTextBefore,h=this._contentLeft+s.left-this._scrollLeft,f=o.left-s.left+1;if(hthis._contentWidth&&(f=this._contentWidth);const p=this._context.viewModel.getViewLineData(a.lineNumber),g=p.tokens.findTokenIndexAtOffset(a.column-1),m=p.tokens.findTokenIndexAtOffset(l.column-1),_=g===m,b=this._visibleTextArea.definePresentation(_?p.tokens.getPresentation(g):null);this.textArea.domNode.scrollTop=u*this._lineHeight,this.textArea.domNode.scrollLeft=d,this._doRender({lastRenderPosition:null,top:c,left:h,width:f,height:this._lineHeight,useCover:!1,color:(Zr.getColorMap()||[])[b.foreground],italic:b.italic,bold:b.bold,underline:b.underline,strikethrough:b.strikethrough})}return}if(!this._primaryCursorVisibleRange){this._renderAtTopLeft();return}const n=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(nthis._contentLeft+this._contentWidth){this._renderAtTopLeft();return}const r=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(r<0||r>this._contentHeight){this._renderAtTopLeft();return}if(ri){this._doRender({lastRenderPosition:this._primaryCursorPosition,top:r,left:this._textAreaWrapping?this._contentLeft:n,width:this._textAreaWidth,height:this._lineHeight,useCover:!1}),this.textArea.domNode.scrollLeft=this._primaryCursorVisibleRange.left;const s=(e=this._textAreaInput.textAreaState.newlineCountBeforeSelection)!==null&&e!==void 0?e:this._newlinecount(this.textArea.domNode.value.substr(0,this.textArea.domNode.selectionStart));this.textArea.domNode.scrollTop=s*this._lineHeight;return}this._doRender({lastRenderPosition:this._primaryCursorPosition,top:r,left:this._textAreaWrapping?this._contentLeft:n,width:this._textAreaWidth,height:_q?0:1,useCover:!1})}_newlinecount(e){let n=0,r=-1;do{if(r=e.indexOf(` `,r+1),r===-1)break;n++}while(!0);return n}_renderAtTopLeft(){this._doRender({lastRenderPosition:null,top:0,left:0,width:this._textAreaWidth,height:_q?0:1,useCover:!0})}_doRender(e){this._lastRenderPosition=e.lastRenderPosition;const n=this.textArea,r=this.textAreaCover;Ta(n,this._fontInfo),n.setTop(e.top),n.setLeft(e.left),n.setWidth(e.width),n.setHeight(e.height),n.setColor(e.color?Te.Format.CSS.formatHex(e.color):""),n.setFontStyle(e.italic?"italic":""),e.bold&&n.setFontWeight("bold"),n.setTextDecoration(`${e.underline?" underline":""}${e.strikethrough?" line-through":""}`),r.setTop(e.useCover?e.top:0),r.setLeft(e.useCover?e.left:0),r.setWidth(e.useCover?e.width:0),r.setHeight(e.useCover?e.height:0);const s=this._context.configuration.options;s.get(57)?r.setClassName("monaco-editor-background textAreaCover "+hx.OUTER_CLASS_NAME):s.get(67).renderType!==0?r.setClassName("monaco-editor-background textAreaCover "+B5.CLASS_NAME):r.setClassName("monaco-editor-background textAreaCover")}};MJ=opt([apt(3,sr)],MJ);function cpt(i,e,n,r){if(e.length===0)return 0;const s=i.createElement("div");s.style.position="absolute",s.style.top="-50000px",s.style.width="50000px";const o=i.createElement("span");Ta(o,n),o.style.whiteSpace="pre",o.style.tabSize=`${r*n.spaceWidth}px`,o.append(e),s.appendChild(o),i.body.appendChild(s);const a=o.offsetWidth;return i.body.removeChild(s),a}function upt(i,e,n){let r=0;for(let o=0;o!0,hpt=()=>!1,fpt=i=>i===" "||i===" ";class JL{static shouldRecreate(e){return e.hasChanged(143)||e.hasChanged(129)||e.hasChanged(37)||e.hasChanged(76)||e.hasChanged(78)||e.hasChanged(79)||e.hasChanged(6)||e.hasChanged(7)||e.hasChanged(11)||e.hasChanged(9)||e.hasChanged(10)||e.hasChanged(14)||e.hasChanged(127)||e.hasChanged(50)||e.hasChanged(90)}constructor(e,n,r,s){var o;this.languageConfigurationService=s,this._cursorMoveConfigurationBrand=void 0,this._languageId=e;const a=r.options,l=a.get(143),c=a.get(50);this.readOnly=a.get(90),this.tabSize=n.tabSize,this.indentSize=n.indentSize,this.insertSpaces=n.insertSpaces,this.stickyTabStops=a.get(115),this.lineHeight=c.lineHeight,this.typicalHalfwidthCharacterWidth=c.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(l.height/this.lineHeight)-2),this.useTabStops=a.get(127),this.wordSeparators=a.get(129),this.emptySelectionClipboard=a.get(37),this.copyWithSyntaxHighlighting=a.get(25),this.multiCursorMergeOverlapping=a.get(76),this.multiCursorPaste=a.get(78),this.multiCursorLimit=a.get(79),this.autoClosingBrackets=a.get(6),this.autoClosingComments=a.get(7),this.autoClosingQuotes=a.get(11),this.autoClosingDelete=a.get(9),this.autoClosingOvertype=a.get(10),this.autoSurround=a.get(14),this.autoIndent=a.get(12),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(e,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(e,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(e,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(e).getAutoClosingPairs();const u=this.languageConfigurationService.getLanguageConfiguration(e).getSurroundingPairs();if(u)for(const h of u)this.surroundingPairs[h.open]=h.close;const d=this.languageConfigurationService.getLanguageConfiguration(e).comments;this.blockCommentStartToken=(o=d==null?void 0:d.blockCommentStartToken)!==null&&o!==void 0?o:null}get electricChars(){var e;if(!this._electricChars){this._electricChars={};const n=(e=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter)===null||e===void 0?void 0:e.getElectricCharacters();if(n)for(const r of n)this._electricChars[r]=!0}return this._electricChars}onElectricCharacter(e,n,r){const s=g$(n,r-1),o=this.languageConfigurationService.getLanguageConfiguration(s.languageId).electricCharacter;return o?o.onElectricCharacter(e,s,r-s.firstCharOffset):null}normalizeIndentation(e){return Loe(e,this.indentSize,this.insertSpaces)}_getShouldAutoClose(e,n,r){switch(n){case"beforeWhitespace":return fpt;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(e,r);case"always":return dpt;case"never":return hpt}}_getLanguageDefinedShouldAutoClose(e,n){const r=this.languageConfigurationService.getLanguageConfiguration(e).getAutoCloseBeforeSet(n);return s=>r.indexOf(s)!==-1}visibleColumnFromColumn(e,n){return ho.visibleColumnFromColumn(e.getLineContent(n.lineNumber),n.column,this.tabSize)}columnFromVisibleColumn(e,n,r){const s=ho.columnFromVisibleColumn(e.getLineContent(n),r,this.tabSize),o=e.getLineMinColumn(n);if(sa?a:s}}let hi=class FIe{static fromModelState(e){return new ppt(e)}static fromViewState(e){return new gpt(e)}static fromModelSelection(e){const n=Ft.liftSelection(e),r=new ta(J.fromPositions(n.getSelectionStart()),0,0,n.getPosition(),0);return FIe.fromModelState(r)}static fromModelSelections(e){const n=[];for(let r=0,s=e.length;ro,u=s>a,d=sa||bs||_0&&s--,XC.columnSelect(e,n,r.fromViewLineNumber,r.fromViewVisualColumn,r.toViewLineNumber,s)}static columnSelectRight(e,n,r){let s=0;const o=Math.min(r.fromViewLineNumber,r.toViewLineNumber),a=Math.max(r.fromViewLineNumber,r.toViewLineNumber);for(let c=o;c<=a;c++){const u=n.getLineMaxColumn(c),d=e.visibleColumnFromColumn(n,new ve(c,u));s=Math.max(s,d)}let l=r.toViewVisualColumn;return le.getLineMinColumn(n.lineNumber))return n.delta(void 0,-Y2e(e.getLineContent(n.lineNumber),n.column-1));if(n.lineNumber>1){const r=n.lineNumber-1;return new ve(r,e.getLineMaxColumn(r))}else return n}static leftPositionAtomicSoftTabs(e,n,r){if(n.column<=e.getLineIndentColumn(n.lineNumber)){const s=e.getLineMinColumn(n.lineNumber),o=e.getLineContent(n.lineNumber),a=LP.atomicPosition(o,n.column-1,r,0);if(a!==-1&&a+1>=s)return new ve(n.lineNumber,a+1)}return this.leftPosition(e,n)}static left(e,n,r){const s=e.stickyTabStops?Ri.leftPositionAtomicSoftTabs(n,r,e.tabSize):Ri.leftPosition(n,r);return new vq(s.lineNumber,s.column,0)}static moveLeft(e,n,r,s,o){let a,l;if(r.hasSelection()&&!s)a=r.selection.startLineNumber,l=r.selection.startColumn;else{const c=r.position.delta(void 0,-(o-1)),u=n.normalizePosition(Ri.clipPositionColumn(c,n),0),d=Ri.left(e,n,u);a=d.lineNumber,l=d.column}return r.move(s,a,l,0)}static clipPositionColumn(e,n){return new ve(e.lineNumber,Ri.clipRange(e.column,n.getLineMinColumn(e.lineNumber),n.getLineMaxColumn(e.lineNumber)))}static clipRange(e,n,r){return er?r:e}static rightPosition(e,n,r){return rd?(r=d,l?s=n.getLineMaxColumn(r):s=Math.min(n.getLineMaxColumn(r),s)):s=e.columnFromVisibleColumn(n,r,u),p?o=0:o=u-ho.visibleColumnFromColumn(n.getLineContent(r),s,e.tabSize),c!==void 0){const g=new ve(r,s),m=n.normalizePosition(g,c);o=o+(s-m.column),r=m.lineNumber,s=m.column}return new vq(r,s,o)}static down(e,n,r,s,o,a,l){return this.vertical(e,n,r,s,o,r+a,l,4)}static moveDown(e,n,r,s,o){let a,l;r.hasSelection()&&!s?(a=r.selection.endLineNumber,l=r.selection.endColumn):(a=r.position.lineNumber,l=r.position.column);let c=0,u;do if(u=Ri.down(e,n,a+c,l,r.leftoverVisibleColumns,o,!0),n.normalizePosition(new ve(u.lineNumber,u.column),2).lineNumber>a)break;while(c++<10&&a+c1&&this._isBlankLine(n,o);)o--;for(;o>1&&!this._isBlankLine(n,o);)o--;return r.move(s,o,n.getLineMinColumn(o),0)}static moveToNextBlankLine(e,n,r,s){const o=n.getLineCount();let a=r.position.lineNumber;for(;a=f.length+1)return!1;const p=f.charAt(h.column-2),g=s.get(p);if(!g)return!1;if(Yb(p)){if(r==="never")return!1}else if(n==="never")return!1;const m=f.charAt(h.column-1);let _=!1;for(const b of g)b.open===p&&b.close===m&&(_=!0);if(!_)return!1;if(e==="auto"){let b=!1;for(let y=0,x=l.length;y1){const o=n.getLineContent(s.lineNumber),a=ml(o),l=a===-1?o.length+1:a+1;if(s.column<=l){const c=r.visibleColumnFromColumn(n,s),u=ho.prevIndentTabStop(c,r.indentSize),d=r.columnFromVisibleColumn(n,s.lineNumber,u);return new J(s.lineNumber,d,s.lineNumber,s.column)}}return J.fromPositions(fx.getPositionAfterDeleteLeft(s,n),s)}static getPositionAfterDeleteLeft(e,n){if(e.column>1){const r=Aot(e.column-1,n.getLineContent(e.lineNumber));return e.with(void 0,r+1)}else if(e.lineNumber>1){const r=e.lineNumber-1;return new ve(r,n.getLineMaxColumn(r))}else return e}static cut(e,n,r){const s=[];let o=null;r.sort((a,l)=>ve.compare(a.getStartPosition(),l.getEndPosition()));for(let a=0,l=r.length;a1&&(o==null?void 0:o.endLineNumber)!==u.lineNumber?(d=u.lineNumber-1,h=n.getLineMaxColumn(u.lineNumber-1),f=u.lineNumber,p=n.getLineMaxColumn(u.lineNumber)):(d=u.lineNumber,h=1,f=u.lineNumber,p=n.getLineMaxColumn(u.lineNumber));const g=new J(d,h,f,p);o=g,g.isEmpty()?s[a]=null:s[a]=new Sa(g,"")}else s[a]=null;else s[a]=new Sa(c,"")}return new lc(0,s,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class wi{static _createWord(e,n,r,s,o){return{start:s,end:o,wordType:n,nextCharClass:r}}static _findPreviousWordOnLine(e,n,r){const s=n.getLineContent(r.lineNumber);return this._doFindPreviousWordOnLine(s,e,r)}static _doFindPreviousWordOnLine(e,n,r){let s=0;for(let o=r.column-2;o>=0;o--){const a=e.charCodeAt(o),l=n.get(a);if(l===0){if(s===2)return this._createWord(e,s,l,o+1,this._findEndOfWord(e,n,s,o+1));s=1}else if(l===2){if(s===1)return this._createWord(e,s,l,o+1,this._findEndOfWord(e,n,s,o+1));s=2}else if(l===1&&s!==0)return this._createWord(e,s,l,o+1,this._findEndOfWord(e,n,s,o+1))}return s!==0?this._createWord(e,s,1,0,this._findEndOfWord(e,n,s,0)):null}static _findEndOfWord(e,n,r,s){const o=e.length;for(let a=s;a=0;o--){const a=e.charCodeAt(o),l=n.get(a);if(l===1||r===1&&l===2||r===2&&l===0)return o+1}return 0}static moveWordLeft(e,n,r,s){let o=r.lineNumber,a=r.column;a===1&&o>1&&(o=o-1,a=n.getLineMaxColumn(o));let l=wi._findPreviousWordOnLine(e,n,new ve(o,a));if(s===0)return new ve(o,l?l.start+1:1);if(s===1)return l&&l.wordType===2&&l.end-l.start===1&&l.nextCharClass===0&&(l=wi._findPreviousWordOnLine(e,n,new ve(o,l.start+1))),new ve(o,l?l.start+1:1);if(s===3){for(;l&&l.wordType===2;)l=wi._findPreviousWordOnLine(e,n,new ve(o,l.start+1));return new ve(o,l?l.start+1:1)}return l&&a<=l.end+1&&(l=wi._findPreviousWordOnLine(e,n,new ve(o,l.start+1))),new ve(o,l?l.end+1:1)}static _moveWordPartLeft(e,n){const r=n.lineNumber,s=e.getLineMaxColumn(r);if(n.column===1)return r>1?new ve(r-1,e.getLineMaxColumn(r-1)):n;const o=e.getLineContent(r);for(let a=n.column-1;a>1;a--){const l=o.charCodeAt(a-2),c=o.charCodeAt(a-1);if(l===95&&c!==95)return new ve(r,a);if(l===45&&c!==45)return new ve(r,a);if((gy(l)||O3(l))&&nm(c))return new ve(r,a);if(nm(l)&&nm(c)&&a+1=c.start+1&&(c=wi._findNextWordOnLine(e,n,new ve(o,c.end+1))),c?a=c.start+1:a=n.getLineMaxColumn(o);return new ve(o,a)}static _moveWordPartRight(e,n){const r=n.lineNumber,s=e.getLineMaxColumn(r);if(n.column===s)return r1?u=1:(c--,u=s.getLineMaxColumn(c)):(d&&u<=d.end+1&&(d=wi._findPreviousWordOnLine(r,s,new ve(c,d.start+1))),d?u=d.end+1:u>1?u=1:(c--,u=s.getLineMaxColumn(c))),new J(c,u,l.lineNumber,l.column)}static deleteInsideWord(e,n,r){if(!r.isEmpty())return r;const s=new ve(r.positionLineNumber,r.positionColumn),o=this._deleteInsideWordWhitespace(n,s);return o||this._deleteInsideWordDetermineDeleteRange(e,n,s)}static _charAtIsWhitespace(e,n){const r=e.charCodeAt(n);return r===32||r===9}static _deleteInsideWordWhitespace(e,n){const r=e.getLineContent(n.lineNumber),s=r.length;if(s===0)return null;let o=Math.max(n.column-2,0);if(!this._charAtIsWhitespace(r,o))return null;let a=Math.min(n.column-1,s-1);if(!this._charAtIsWhitespace(r,a))return null;for(;o>0&&this._charAtIsWhitespace(r,o-1);)o--;for(;a+11?new J(r.lineNumber-1,n.getLineMaxColumn(r.lineNumber-1),r.lineNumber,1):r.lineNumberh.start+1<=r.column&&r.column<=h.end+1,l=(h,f)=>(h=Math.min(h,r.column),f=Math.max(f,r.column),new J(r.lineNumber,h,r.lineNumber,f)),c=h=>{let f=h.start+1,p=h.end+1,g=!1;for(;p-11&&this._charAtIsWhitespace(s,f-2);)f--;return l(f,p)},u=wi._findPreviousWordOnLine(e,n,r);if(u&&a(u))return c(u);const d=wi._findNextWordOnLine(e,n,r);return d&&a(d)?c(d):u&&d?l(u.end+1,d.start+1):u?l(u.start+1,u.end+1):d?l(d.start+1,d.end+1):l(1,o+1)}static _deleteWordPartLeft(e,n){if(!n.isEmpty())return n;const r=n.getPosition(),s=wi._moveWordPartLeft(e,r);return new J(r.lineNumber,r.column,s.lineNumber,s.column)}static _findFirstNonWhitespaceChar(e,n){const r=e.length;for(let s=n;s=f.start+1&&(f=wi._findNextWordOnLine(r,s,new ve(c,f.end+1))),f?u=f.start+1:u!!e)}class Zo{static addCursorDown(e,n,r){const s=[];let o=0;for(let a=0,l=n.length;au&&(d=u,h=e.model.getLineMaxColumn(d)),hi.fromModelState(new ta(new J(a.lineNumber,1,d,h),2,0,new ve(d,h),0))}const c=n.modelState.selectionStart.getStartPosition().lineNumber;if(a.lineNumberc){const u=e.getLineCount();let d=l.lineNumber+1,h=1;return d>u&&(d=u,h=e.getLineMaxColumn(d)),hi.fromViewState(n.viewState.move(!0,d,h,0))}else{const u=n.modelState.selectionStart.getEndPosition();return hi.fromModelState(n.modelState.move(!0,u.lineNumber,u.column,0))}}static word(e,n,r,s){const o=e.model.validatePosition(s);return hi.fromModelState(wi.word(e.cursorConfig,e.model,n.modelState,r,o))}static cancelSelection(e,n){if(!n.modelState.hasSelection())return new hi(n.modelState,n.viewState);const r=n.viewState.position.lineNumber,s=n.viewState.position.column;return hi.fromViewState(new ta(new J(r,s,r,s),0,0,new ve(r,s),0))}static moveTo(e,n,r,s,o){if(r){if(n.modelState.selectionStartKind===1)return this.word(e,n,r,s);if(n.modelState.selectionStartKind===2)return this.line(e,n,r,s,o)}const a=e.model.validatePosition(s),l=o?e.coordinatesConverter.validateViewPosition(new ve(o.lineNumber,o.column),a):e.coordinatesConverter.convertModelPositionToViewPosition(a);return hi.fromViewState(n.viewState.move(r,l.lineNumber,l.column,0))}static simpleMove(e,n,r,s,o,a){switch(r){case 0:return a===4?this._moveHalfLineLeft(e,n,s):this._moveLeft(e,n,s,o);case 1:return a===4?this._moveHalfLineRight(e,n,s):this._moveRight(e,n,s,o);case 2:return a===2?this._moveUpByViewLines(e,n,s,o):this._moveUpByModelLines(e,n,s,o);case 3:return a===2?this._moveDownByViewLines(e,n,s,o):this._moveDownByModelLines(e,n,s,o);case 4:return a===2?n.map(l=>hi.fromViewState(Ri.moveToPrevBlankLine(e.cursorConfig,e,l.viewState,s))):n.map(l=>hi.fromModelState(Ri.moveToPrevBlankLine(e.cursorConfig,e.model,l.modelState,s)));case 5:return a===2?n.map(l=>hi.fromViewState(Ri.moveToNextBlankLine(e.cursorConfig,e,l.viewState,s))):n.map(l=>hi.fromModelState(Ri.moveToNextBlankLine(e.cursorConfig,e.model,l.modelState,s)));case 6:return this._moveToViewMinColumn(e,n,s);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,n,s);case 8:return this._moveToViewCenterColumn(e,n,s);case 9:return this._moveToViewMaxColumn(e,n,s);case 10:return this._moveToViewLastNonWhitespaceColumn(e,n,s);default:return null}}static viewportMove(e,n,r,s,o){const a=e.getCompletelyVisibleViewRange(),l=e.coordinatesConverter.convertViewRangeToModelRange(a);switch(r){case 11:{const c=this._firstLineNumberInRange(e.model,l,o),u=e.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(e,n[0],s,c,u)]}case 13:{const c=this._lastLineNumberInRange(e.model,l,o),u=e.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(e,n[0],s,c,u)]}case 12:{const c=Math.round((l.startLineNumber+l.endLineNumber)/2),u=e.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(e,n[0],s,c,u)]}case 14:{const c=[];for(let u=0,d=n.length;ur.endLineNumber-1?a=r.endLineNumber-1:ohi.fromViewState(Ri.moveLeft(e.cursorConfig,e,o.viewState,r,s)))}static _moveHalfLineLeft(e,n,r){const s=[];for(let o=0,a=n.length;ohi.fromViewState(Ri.moveRight(e.cursorConfig,e,o.viewState,r,s)))}static _moveHalfLineRight(e,n,r){const s=[];for(let o=0,a=n.length;o1&&s.firstCharOffset===0){const m=W2(e,n.startLineNumber-1);m.languageId===s.languageId&&(u=m.getLineContent())}const d=o.onEnter(i,u,l,c);if(!d)return null;const h=d.indentAction;let f=d.appendText;const p=d.removeText||0;f?h===Hs.Indent&&(f=" "+f):h===Hs.Indent||h===Hs.IndentOutdent?f=" ":f="";let g=UEe(e,n.startLineNumber,n.startColumn);return p&&(g=g.substring(0,g.length-p)),{indentAction:h,appendText:f,removeText:p,indentation:g}}var _pt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},vpt=function(i,e){return function(n,r){e(n,r,i)}},m8;const bq=Object.create(null);function tC(i,e){if(e<=0)return"";bq[i]||(bq[i]=["",i]);const n=bq[i];for(let r=n.length;r<=e;r++)n[r]=n[r-1]+i;return n[e]}let nh=m8=class{static unshiftIndent(e,n,r,s,o){const a=ho.visibleColumnFromColumn(e,n,r);if(o){const l=tC(" ",s),u=ho.prevIndentTabStop(a,s)/s;return tC(l,u)}else{const l=" ",u=ho.prevRenderTabStop(a,r)/r;return tC(l,u)}}static shiftIndent(e,n,r,s,o){const a=ho.visibleColumnFromColumn(e,n,r);if(o){const l=tC(" ",s),u=ho.nextIndentTabStop(a,s)/s;return tC(l,u)}else{const l=" ",u=ho.nextRenderTabStop(a,r)/r;return tC(l,u)}}constructor(e,n,r){this._languageConfigurationService=r,this._opts=n,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(e,n,r){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(n,r):e.addEditOperation(n,r)}getEditOperations(e,n){const r=this._selection.startLineNumber;let s=this._selection.endLineNumber;this._selection.endColumn===1&&r!==s&&(s=s-1);const{tabSize:o,indentSize:a,insertSpaces:l}=this._opts,c=r===s;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(e.getLineContent(r))&&(this._useLastEditRangeForCursorEndPosition=!0);let u=0,d=0;for(let h=r;h<=s;h++,u=d){d=0;const f=e.getLineContent(h);let p=ml(f);if(this._opts.isUnshift&&(f.length===0||p===0)||!c&&!this._opts.isUnshift&&f.length===0)continue;if(p===-1&&(p=f.length),h>1&&ho.visibleColumnFromColumn(f,p+1,o)%a!==0&&e.tokenization.isCheapToTokenize(h-1)){const _=K2(this._opts.autoIndent,e,new J(h-1,e.getLineMaxColumn(h-1),h-1,e.getLineMaxColumn(h-1)),this._languageConfigurationService);if(_){if(d=u,_.appendText)for(let b=0,y=_.appendText.length;b1){let s,o=-1;for(s=e-1;s>=1;s--){if(i.tokenization.getLanguageIdAtPosition(s,0)!==r)return o;const a=i.getLineContent(s);if(n.shouldIgnore(a)||/^\s+$/.test(a)||a===""){o=s;continue}return s}}return-1}function T$(i,e,n,r=!0,s){if(i<4)return null;const o=s.getLanguageConfiguration(e.tokenization.getLanguageId()).indentRulesSupport;if(!o)return null;if(n<=1)return{indentation:"",action:null};for(let c=n-1;c>0&&e.getLineContent(c)==="";c--)if(c===1)return{indentation:"",action:null};const a=wpt(e,n,o);if(a<0)return null;if(a<1)return{indentation:"",action:null};const l=e.getLineContent(a);if(o.shouldIncrease(l)||o.shouldIndentNextLine(l))return{indentation:ar(l),action:Hs.Indent,line:a};if(o.shouldDecrease(l))return{indentation:ar(l),action:null,line:a};{if(a===1)return{indentation:ar(e.getLineContent(a)),action:null,line:a};const c=a-1,u=o.getIndentMetadata(e.getLineContent(c));if(!(u&3)&&u&4){let d=0;for(let h=c-1;h>0;h--)if(!o.shouldIndentNextLine(e.getLineContent(h))){d=h;break}return{indentation:ar(e.getLineContent(d+1)),action:null,line:d+1}}if(r)return{indentation:ar(e.getLineContent(a)),action:null,line:a};for(let d=a;d>0;d--){const h=e.getLineContent(d);if(o.shouldIncrease(h))return{indentation:ar(h),action:Hs.Indent,line:d};if(o.shouldIndentNextLine(h)){let f=0;for(let p=d-1;p>0;p--)if(!o.shouldIndentNextLine(e.getLineContent(d))){f=p;break}return{indentation:ar(e.getLineContent(f+1)),action:null,line:f+1}}else if(o.shouldDecrease(h))return{indentation:ar(h),action:null,line:d}}return{indentation:ar(e.getLineContent(1)),action:null,line:1}}}function rM(i,e,n,r,s,o){if(i<4)return null;const a=o.getLanguageConfiguration(n);if(!a)return null;const l=o.getLanguageConfiguration(n).indentRulesSupport;if(!l)return null;const c=T$(i,e,r,void 0,o),u=e.getLineContent(r);if(c){const d=c.line;if(d!==void 0){let h=!0;for(let f=d;f0&&o.getLanguageId(0)!==a.languageId?(c=!0,u=l.substr(0,n.startColumn-1-a.firstCharOffset)):u=o.getLineContent().substring(0,n.startColumn-1);let d;n.isEmpty()?d=l.substr(n.startColumn-1-a.firstCharOffset):d=W2(e,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-a.firstCharOffset);const h=s.getLanguageConfiguration(a.languageId).indentRulesSupport;if(!h)return null;const f=u,p=ar(u),g={tokenization:{getLineTokens:y=>e.tokenization.getLineTokens(y),getLanguageId:()=>e.getLanguageId(),getLanguageIdAtPosition:(y,x)=>e.getLanguageIdAtPosition(y,x)},getLineContent:y=>y===n.startLineNumber?f:e.getLineContent(y)},m=ar(o.getLineContent()),_=T$(i,g,n.startLineNumber+1,void 0,s);if(!_){const y=c?m:p;return{beforeEnter:y,afterEnter:y}}let b=c?m:_.indentation;return _.action===Hs.Indent&&(b=r.shiftIndent(b)),h.shouldDecrease(d)&&(b=r.unshiftIndent(b)),{beforeEnter:c?m:p,afterEnter:b}}function Spt(i,e,n,r,s,o){if(i<4)return null;const a=W2(e,n.startLineNumber,n.startColumn);if(a.firstCharOffset)return null;const l=o.getLanguageConfiguration(a.languageId).indentRulesSupport;if(!l)return null;const c=a.getLineContent(),u=c.substr(0,n.startColumn-1-a.firstCharOffset);let d;if(n.isEmpty()?d=c.substr(n.startColumn-1-a.firstCharOffset):d=W2(e,n.endLineNumber,n.endColumn).getLineContent().substr(n.endColumn-1-a.firstCharOffset),!l.shouldDecrease(u+d)&&l.shouldDecrease(u+r+d)){const h=T$(i,e,n.startLineNumber,!1,o);if(!h)return null;let f=h.indentation;return h.action!==Hs.Indent&&(f=s.unshiftIndent(f)),f}return null}function BIe(i,e,n){const r=n.getLanguageConfiguration(i.getLanguageId()).indentRulesSupport;return!r||e<1||e>i.getLineCount()?null:r.getIndentMetadata(i.getLineContent(e))}class zr{static indent(e,n,r){if(n===null||r===null)return[];const s=[];for(let o=0,a=r.length;o1){let l;for(l=r-1;l>=1;l--){const d=n.getLineContent(l);if($p(d)>=0)break}if(l<1)return null;const c=n.getLineMaxColumn(l),u=K2(e.autoIndent,n,new J(l,c,l,c),e.languageConfigurationService);u&&(o=u.indentation+u.appendText)}return s&&(s===Hs.Indent&&(o=zr.shiftIndent(e,o)),s===Hs.Outdent&&(o=zr.unshiftIndent(e,o)),o=e.normalizeIndentation(o)),o||null}static _replaceJumpToNextIndent(e,n,r,s){let o="";const a=r.getStartPosition();if(e.insertSpaces){const l=e.visibleColumnFromColumn(n,a),c=e.indentSize,u=c-l%c;for(let d=0;dthis._compositionType(r,d,o,a,l,c));return new lc(4,u,{shouldPushStackElementBefore:Q3(e,4),shouldPushStackElementAfter:!1})}static _compositionType(e,n,r,s,o,a){if(!n.isEmpty())return null;const l=n.getPosition(),c=Math.max(1,l.column-s),u=Math.min(e.getLineMaxColumn(l.lineNumber),l.column+o),d=new J(l.lineNumber,c,l.lineNumber,u);return e.getValueInRange(d)===r&&a===0?null:new g8(d,r,0,a)}static _typeCommand(e,n,r){return r?new Y3(e,n,!0):new Sa(e,n,!0)}static _enter(e,n,r,s){if(e.autoIndent===0)return zr._typeCommand(s,` `,r);if(!n.tokenization.isCheapToTokenize(s.getStartPosition().lineNumber)||e.autoIndent===1){const c=n.getLineContent(s.startLineNumber),u=ar(c).substring(0,s.startColumn-1);return zr._typeCommand(s,` `+e.normalizeIndentation(u),r)}const o=K2(e.autoIndent,n,s,e.languageConfigurationService);if(o){if(o.indentAction===Hs.None)return zr._typeCommand(s,` `+e.normalizeIndentation(o.indentation+o.appendText),r);if(o.indentAction===Hs.Indent)return zr._typeCommand(s,` `+e.normalizeIndentation(o.indentation+o.appendText),r);if(o.indentAction===Hs.IndentOutdent){const c=e.normalizeIndentation(o.indentation),u=e.normalizeIndentation(o.indentation+o.appendText),d=` `+u+` `+c;return r?new Y3(s,d,!0):new g8(s,d,-1,u.length-c.length,!0)}else if(o.indentAction===Hs.Outdent){const c=zr.unshiftIndent(e,o.indentation);return zr._typeCommand(s,` `+e.normalizeIndentation(c+o.appendText),r)}}const a=n.getLineContent(s.startLineNumber),l=ar(a).substring(0,s.startColumn-1);if(e.autoIndent>=4){const c=Cpt(e.autoIndent,n,s,{unshiftIndent:u=>zr.unshiftIndent(e,u),shiftIndent:u=>zr.shiftIndent(e,u),normalizeIndentation:u=>e.normalizeIndentation(u)},e.languageConfigurationService);if(c){let u=e.visibleColumnFromColumn(n,s.getEndPosition());const d=s.endColumn,h=n.getLineContent(s.endLineNumber),f=ml(h);if(f>=0?s=s.setEndPosition(s.endLineNumber,Math.max(s.endColumn,f+1)):s=s.setEndPosition(s.endLineNumber,n.getLineMaxColumn(s.endLineNumber)),r)return new Y3(s,` `+e.normalizeIndentation(c.afterEnter),!0);{let p=0;return d<=f+1&&(e.insertSpaces||(u=Math.ceil(u/e.indentSize)),p=Math.min(u+1-e.normalizeIndentation(c.afterEnter).length-1,0)),new g8(s,` `+e.normalizeIndentation(c.afterEnter),0,p,!0)}}}return zr._typeCommand(s,` `+e.normalizeIndentation(l),r)}static _isAutoIndentType(e,n,r){if(e.autoIndent<4)return!1;for(let s=0,o=r.length;szr.shiftIndent(e,l),unshiftIndent:l=>zr.unshiftIndent(e,l)},e.languageConfigurationService);if(a===null)return null;if(a!==e.normalizeIndentation(o)){const l=n.getLineFirstNonWhitespaceColumn(r.startLineNumber);return l===0?zr._typeCommand(new J(r.startLineNumber,1,r.endLineNumber,r.endColumn),e.normalizeIndentation(a)+s,!1):zr._typeCommand(new J(r.startLineNumber,1,r.endLineNumber,r.endColumn),e.normalizeIndentation(a)+n.getLineContent(r.startLineNumber).substring(l-1,r.startColumn-1)+s,!1)}return null}static _isAutoClosingOvertype(e,n,r,s,o){if(e.autoClosingOvertype==="never"||!e.autoClosingPairs.autoClosingPairsCloseSingleChar.has(o))return!1;for(let a=0,l=r.length;a2?d.charCodeAt(u.column-2):0)===92&&f)return!1;if(e.autoClosingOvertype==="auto"){let g=!1;for(let m=0,_=s.length;m<_;m++){const b=s[m];if(u.lineNumber===b.startLineNumber&&u.column===b.startColumn){g=!0;break}}if(!g)return!1}}return!0}static _runAutoClosingOvertype(e,n,r,s,o){const a=[];for(let l=0,c=s.length;ln.startsWith(c.open)),l=o.some(c=>n.startsWith(c.close));return!a&&l}static _findAutoClosingPairOpen(e,n,r,s){const o=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(s);if(!o)return null;let a=null;for(const l of o)if(a===null||l.open.length>a.open.length){let c=!0;for(const u of r)if(n.getValueInRange(new J(u.lineNumber,u.column-l.open.length+1,u.lineNumber,u.column))+s!==l.open){c=!1;break}c&&(a=l)}return a}static _findContainedAutoClosingPair(e,n){if(n.open.length<=1)return null;const r=n.close.charAt(n.close.length-1),s=e.autoClosingPairs.autoClosingPairsCloseByEnd.get(r)||[];let o=null;for(const a of s)a.open!==n.open&&n.open.includes(a.open)&&n.close.endsWith(a.close)&&(!o||a.open.length>o.open.length)&&(o=a);return o}static _getAutoClosingPairClose(e,n,r,s,o){for(const g of r)if(!g.isEmpty())return null;const a=r.map(g=>{const m=g.getPosition();return o?{lineNumber:m.lineNumber,beforeColumn:m.column-s.length,afterColumn:m.column}:{lineNumber:m.lineNumber,beforeColumn:m.column,afterColumn:m.column}}),l=this._findAutoClosingPairOpen(e,n,a.map(g=>new ve(g.lineNumber,g.beforeColumn)),s);if(!l)return null;let c,u;if(Yb(s)?(c=e.autoClosingQuotes,u=e.shouldAutoCloseBefore.quote):(e.blockCommentStartToken?l.open.includes(e.blockCommentStartToken):!1)?(c=e.autoClosingComments,u=e.shouldAutoCloseBefore.comment):(c=e.autoClosingBrackets,u=e.shouldAutoCloseBefore.bracket),c==="never")return null;const h=this._findContainedAutoClosingPair(e,l),f=h?h.close:"";let p=!0;for(const g of a){const{lineNumber:m,beforeColumn:_,afterColumn:b}=g,y=n.getLineContent(m),x=y.substring(0,_-1),k=y.substring(b-1);if(k.startsWith(f)||(p=!1),k.length>0){const A=k.charAt(0);if(!zr._isBeforeClosingBrace(e,k)&&!u(A))return null}if(l.open.length===1&&(s==="'"||s==='"')&&c!=="always"){const A=vh(e.wordSeparators);if(x.length>0){const M=x.charCodeAt(x.length-1);if(A.get(M)===0)return null}}if(!n.tokenization.isCheapToTokenize(m))return null;n.tokenization.forceTokenization(m);const D=n.tokenization.getLineTokens(m),R=g$(D,_-1);if(!l.shouldAutoClose(R,_-R.firstCharOffset))return null;const E=l.findNeutralCharacter();if(E){const A=n.tokenization.getTokenTypeIfInsertingCharacter(m,_,E);if(!l.isOK(A))return null}}return p?l.close.substring(0,l.close.length-f.length):l.close}static _runAutoClosingOpenCharType(e,n,r,s,o,a,l){const c=[];for(let u=0,d=s.length;unew Sa(new J(f.positionLineNumber,f.positionColumn,f.positionLineNumber,f.positionColumn+1),"",!1));return new lc(4,h,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}const d=this._getAutoClosingPairClose(n,r,o,c,!0);return d!==null?this._runAutoClosingOpenCharType(e,n,r,o,c,!0,d):null}static typeWithInterceptors(e,n,r,s,o,a,l){if(!e&&l===` `){const d=[];for(let h=0,f=o.length;h{const s=n.get(Si).getFocusedCodeEditor();return s&&s.hasTextFocus()?this._runEditorCommand(n,s,r):!1}),e.addImplementation(1e3,"generic-dom-input-textarea",(n,r)=>{const s=xf();return s&&["input","textarea"].indexOf(s.tagName.toLowerCase())>=0?(this.runDOMCommand(s),!0):!1}),e.addImplementation(0,"generic-dom",(n,r)=>{const s=n.get(Si).getActiveCodeEditor();return s?(s.focus(),this._runEditorCommand(n,s,r)):!1})}_runEditorCommand(e,n,r){const s=this.runEditorCommand(e,n,r);return s||!0}}var Oo;(function(i){class e extends ns{constructor(y){super(y),this._inSelectionMode=y.inSelectionMode}runCoreEditorCommand(y,x){if(!x.position)return;y.model.pushStackElement(),y.setCursorStates(x.source,3,[Zo.moveTo(y,y.getPrimaryCursorState(),this._inSelectionMode,x.position,x.viewPosition)])&&x.revealType!==2&&y.revealPrimaryCursor(x.source,!0,!0)}}i.MoveTo=ct(new e({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),i.MoveToSelect=ct(new e({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class n extends ns{runCoreEditorCommand(y,x){y.model.pushStackElement();const k=this._getColumnSelectResult(y,y.getPrimaryCursorState(),y.getCursorColumnSelectData(),x);k!==null&&(y.setCursorStates(x.source,3,k.viewStates.map(D=>hi.fromViewState(D))),y.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:k.fromLineNumber,fromViewVisualColumn:k.fromVisualColumn,toViewLineNumber:k.toLineNumber,toViewVisualColumn:k.toVisualColumn}),k.reversed?y.revealTopMostCursor(x.source):y.revealBottomMostCursor(x.source))}}i.ColumnSelect=ct(new class extends n{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(b,y,x,k){if(typeof k.position>"u"||typeof k.viewPosition>"u"||typeof k.mouseColumn>"u")return null;const D=b.model.validatePosition(k.position),R=b.coordinatesConverter.validateViewPosition(new ve(k.viewPosition.lineNumber,k.viewPosition.column),D),E=k.doColumnSelect?x.fromViewLineNumber:R.lineNumber,A=k.doColumnSelect?x.fromViewVisualColumn:k.mouseColumn-1;return XC.columnSelect(b.cursorConfig,b,E,A,R.lineNumber,k.mouseColumn-1)}}),i.CursorColumnSelectLeft=ct(new class extends n{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(b,y,x,k){return XC.columnSelectLeft(b.cursorConfig,b,x)}}),i.CursorColumnSelectRight=ct(new class extends n{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(b,y,x,k){return XC.columnSelectRight(b.cursorConfig,b,x)}});class r extends n{constructor(y){super(y),this._isPaged=y.isPaged}_getColumnSelectResult(y,x,k,D){return XC.columnSelectUp(y.cursorConfig,y,k,this._isPaged)}}i.CursorColumnSelectUp=ct(new r({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:3600,linux:{primary:0}}})),i.CursorColumnSelectPageUp=ct(new r({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:3595,linux:{primary:0}}}));class s extends n{constructor(y){super(y),this._isPaged=y.isPaged}_getColumnSelectResult(y,x,k,D){return XC.columnSelectDown(y.cursorConfig,y,k,this._isPaged)}}i.CursorColumnSelectDown=ct(new s({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:3602,linux:{primary:0}}})),i.CursorColumnSelectPageDown=ct(new s({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:3596,linux:{primary:0}}}));class o extends ns{constructor(){super({id:"cursorMove",precondition:void 0,description:r7.description})}runCoreEditorCommand(y,x){const k=r7.parse(x);k&&this._runCursorMove(y,x.source,k)}_runCursorMove(y,x,k){y.model.pushStackElement(),y.setCursorStates(x,3,o._move(y,y.getCursorStates(),k)),y.revealPrimaryCursor(x,!0)}static _move(y,x,k){const D=k.select,R=k.value;switch(k.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return Zo.simpleMove(y,x,k.direction,D,R,k.unit);case 11:case 13:case 12:case 14:return Zo.viewportMove(y,x,k.direction,D,R);default:return null}}}i.CursorMoveImpl=o,i.CursorMove=ct(new o);class a extends ns{constructor(y){super(y),this._staticArgs=y.args}runCoreEditorCommand(y,x){let k=this._staticArgs;this._staticArgs.value===-1&&(k={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:x.pageSize||y.cursorConfig.pageSize}),y.model.pushStackElement(),y.setCursorStates(x.source,3,Zo.simpleMove(y,y.getCursorStates(),k.direction,k.select,k.value,k.unit)),y.revealPrimaryCursor(x.source,!0)}}i.CursorLeft=ct(new a({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),i.CursorLeftSelect=ct(new a({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:1039}})),i.CursorRight=ct(new a({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),i.CursorRightSelect=ct(new a({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:1041}})),i.CursorUp=ct(new a({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),i.CursorUpSelect=ct(new a({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),i.CursorPageUp=ct(new a({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:11}})),i.CursorPageUpSelect=ct(new a({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:1035}})),i.CursorDown=ct(new a({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),i.CursorDownSelect=ct(new a({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),i.CursorPageDown=ct(new a({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:12}})),i.CursorPageDownSelect=ct(new a({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:1036}})),i.CreateCursor=ct(new class extends ns{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(b,y){if(!y.position)return;let x;y.wholeLine?x=Zo.line(b,b.getPrimaryCursorState(),!1,y.position,y.viewPosition):x=Zo.moveTo(b,b.getPrimaryCursorState(),!1,y.position,y.viewPosition);const k=b.getCursorStates();if(k.length>1){const D=x.modelState?x.modelState.position:null,R=x.viewState?x.viewState.position:null;for(let E=0,A=k.length;ER&&(D=R);const E=new J(D,1,D,b.model.getLineMaxColumn(D));let A=0;if(x.at)switch(x.at){case p2.RawAtArgument.Top:A=3;break;case p2.RawAtArgument.Center:A=1;break;case p2.RawAtArgument.Bottom:A=4;break}const M=b.coordinatesConverter.convertModelRangeToViewRange(E);b.revealRange(y.source,!1,M,A,0)}}),i.SelectAll=new class extends PJ{constructor(){super(dlt)}runDOMCommand(b){gh&&(b.focus(),b.select()),b.ownerDocument.execCommand("selectAll")}runEditorCommand(b,y,x){const k=y._getViewModel();k&&this.runCoreEditorCommand(k,x)}runCoreEditorCommand(b,y){b.model.pushStackElement(),b.setCursorStates("keyboard",3,[Zo.selectAll(b,b.getPrimaryCursorState())])}},i.SetSelection=ct(new class extends ns{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(b,y){y.selection&&(b.model.pushStackElement(),b.setCursorStates(y.source,3,[hi.fromModelSelection(y.selection)]))}})})(Oo||(Oo={}));const kpt=ze.and(oe.textInputFocus,oe.columnSelection);function zI(i,e){Sc.registerKeybindingRule({id:i,primary:e,when:kpt,weight:yi+1})}zI(Oo.CursorColumnSelectLeft.id,1039);zI(Oo.CursorColumnSelectRight.id,1041);zI(Oo.CursorColumnSelectUp.id,1040);zI(Oo.CursorColumnSelectPageUp.id,1035);zI(Oo.CursorColumnSelectDown.id,1042);zI(Oo.CursorColumnSelectPageDown.id,1036);function Cge(i){return i.register(),i}var G2;(function(i){class e extends Ho{runEditorCommand(r,s,o){const a=s._getViewModel();a&&this.runCoreEditingCommand(s,a,o||{})}}i.CoreEditingCommand=e,i.LineBreakInsert=ct(new class extends e{constructor(){super({id:"lineBreakInsert",precondition:oe.writable,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(n,r,s){n.pushUndoStop(),n.executeCommands(this.id,zr.lineBreakInsert(r.cursorConfig,r.model,r.getCursorStates().map(o=>o.modelState.selection)))}}),i.Outdent=ct(new class extends e{constructor(){super({id:"outdent",precondition:oe.writable,kbOpts:{weight:yi,kbExpr:ze.and(oe.editorTextFocus,oe.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(n,r,s){n.pushUndoStop(),n.executeCommands(this.id,zr.outdent(r.cursorConfig,r.model,r.getCursorStates().map(o=>o.modelState.selection))),n.pushUndoStop()}}),i.Tab=ct(new class extends e{constructor(){super({id:"tab",precondition:oe.writable,kbOpts:{weight:yi,kbExpr:ze.and(oe.editorTextFocus,oe.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(n,r,s){n.pushUndoStop(),n.executeCommands(this.id,zr.tab(r.cursorConfig,r.model,r.getCursorStates().map(o=>o.modelState.selection))),n.pushUndoStop()}}),i.DeleteLeft=ct(new class extends e{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(n,r,s){const[o,a]=fx.deleteLeft(r.getPrevEditOperationType(),r.cursorConfig,r.model,r.getCursorStates().map(l=>l.modelState.selection),r.getCursorAutoClosedCharacters());o&&n.pushUndoStop(),n.executeCommands(this.id,a),r.setPrevEditOperationType(2)}}),i.DeleteRight=ct(new class extends e{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:yi,kbExpr:oe.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(n,r,s){const[o,a]=fx.deleteRight(r.getPrevEditOperationType(),r.cursorConfig,r.model,r.getCursorStates().map(l=>l.modelState.selection));o&&n.pushUndoStop(),n.executeCommands(this.id,a),r.setPrevEditOperationType(3)}}),i.Undo=new class extends PJ{constructor(){super(IEe)}runDOMCommand(n){n.ownerDocument.execCommand("undo")}runEditorCommand(n,r,s){if(!(!r.hasModel()||r.getOption(90)===!0))return r.getModel().undo()}},i.Redo=new class extends PJ{constructor(){super(TEe)}runDOMCommand(n){n.ownerDocument.execCommand("redo")}runEditorCommand(n,r,s){if(!(!r.hasModel()||r.getOption(90)===!0))return r.getModel().redo()}}})(G2||(G2={}));class Sge extends d${constructor(e,n,r){super({id:e,precondition:void 0,description:r}),this._handlerId=n}runCommand(e,n){const r=e.get(Si).getFocusedCodeEditor();r&&r.trigger("keyboard",this._handlerId,n)}}function Qx(i,e){Cge(new Sge("default:"+i,i)),Cge(new Sge(i,i,e))}Qx("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]});Qx("replacePreviousChar");Qx("compositionType");Qx("compositionStart");Qx("compositionEnd");Qx("paste");Qx("cut");class Lpt{constructor(e,n,r,s){this.configuration=e,this.viewModel=n,this.userInputEvents=r,this.commandDelegate=s}paste(e,n,r,s){this.commandDelegate.paste(e,n,r,s)}type(e){this.commandDelegate.type(e)}compositionType(e,n,r,s){this.commandDelegate.compositionType(e,n,r,s)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(e){Oo.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:e})}_validateViewColumn(e){const n=this.viewModel.getLineMinColumn(e.lineNumber);return e.column=4?this._selectAll():e.mouseDownCount===3?this._hasMulticursorModifier(e)?e.inSelectionMode?this._lastCursorLineSelectDrag(e.position,e.revealType):this._lastCursorLineSelect(e.position,e.revealType):e.inSelectionMode?this._lineSelectDrag(e.position,e.revealType):this._lineSelect(e.position,e.revealType):e.mouseDownCount===2?e.onInjectedText||(this._hasMulticursorModifier(e)?this._lastCursorWordSelect(e.position,e.revealType):e.inSelectionMode?this._wordSelectDrag(e.position,e.revealType):this._wordSelect(e.position,e.revealType)):this._hasMulticursorModifier(e)?this._hasNonMulticursorModifier(e)||(e.shiftKey?this._columnSelect(e.position,e.mouseColumn,!0):e.inSelectionMode?this._lastCursorMoveToSelect(e.position,e.revealType):this._createCursor(e.position,!1)):e.inSelectionMode?e.altKey?this._columnSelect(e.position,e.mouseColumn,!0):s?this._columnSelect(e.position,e.mouseColumn,!0):this._moveToSelect(e.position,e.revealType):this.moveTo(e.position,e.revealType)}_usualArgs(e,n){return e=this._validateViewColumn(e),{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,revealType:n}}moveTo(e,n){Oo.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_moveToSelect(e,n){Oo.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_columnSelect(e,n,r){e=this._validateViewColumn(e),Oo.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,mouseColumn:n,doColumnSelect:r})}_createCursor(e,n){e=this._validateViewColumn(e),Oo.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(e),viewPosition:e,wholeLine:n})}_lastCursorMoveToSelect(e,n){Oo.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_wordSelect(e,n){Oo.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_wordSelectDrag(e,n){Oo.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_lastCursorWordSelect(e,n){Oo.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_lineSelect(e,n){Oo.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_lineSelectDrag(e,n){Oo.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_lastCursorLineSelect(e,n){Oo.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_lastCursorLineSelectDrag(e,n){Oo.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(e,n))}_selectAll(){Oo.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(e){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(e)}emitKeyDown(e){this.userInputEvents.emitKeyDown(e)}emitKeyUp(e){this.userInputEvents.emitKeyUp(e)}emitContextMenu(e){this.userInputEvents.emitContextMenu(e)}emitMouseMove(e){this.userInputEvents.emitMouseMove(e)}emitMouseLeave(e){this.userInputEvents.emitMouseLeave(e)}emitMouseUp(e){this.userInputEvents.emitMouseUp(e)}emitMouseDown(e){this.userInputEvents.emitMouseDown(e)}emitMouseDrag(e){this.userInputEvents.emitMouseDrag(e)}emitMouseDrop(e){this.userInputEvents.emitMouseDrop(e)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(e){this.userInputEvents.emitMouseWheel(e)}}class R${constructor(e){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=e}emitKeyDown(e){var n;(n=this.onKeyDown)===null||n===void 0||n.call(this,e)}emitKeyUp(e){var n;(n=this.onKeyUp)===null||n===void 0||n.call(this,e)}emitContextMenu(e){var n;(n=this.onContextMenu)===null||n===void 0||n.call(this,this._convertViewToModelMouseEvent(e))}emitMouseMove(e){var n;(n=this.onMouseMove)===null||n===void 0||n.call(this,this._convertViewToModelMouseEvent(e))}emitMouseLeave(e){var n;(n=this.onMouseLeave)===null||n===void 0||n.call(this,this._convertViewToModelMouseEvent(e))}emitMouseDown(e){var n;(n=this.onMouseDown)===null||n===void 0||n.call(this,this._convertViewToModelMouseEvent(e))}emitMouseUp(e){var n;(n=this.onMouseUp)===null||n===void 0||n.call(this,this._convertViewToModelMouseEvent(e))}emitMouseDrag(e){var n;(n=this.onMouseDrag)===null||n===void 0||n.call(this,this._convertViewToModelMouseEvent(e))}emitMouseDrop(e){var n;(n=this.onMouseDrop)===null||n===void 0||n.call(this,this._convertViewToModelMouseEvent(e))}emitMouseDropCanceled(){var e;(e=this.onMouseDropCanceled)===null||e===void 0||e.call(this)}emitMouseWheel(e){var n;(n=this.onMouseWheel)===null||n===void 0||n.call(this,e)}_convertViewToModelMouseEvent(e){return e.target?{event:e.event,target:this._convertViewToModelMouseTarget(e.target)}:e}_convertViewToModelMouseTarget(e){return R$.convertViewToModelMouseTarget(e,this._coordinatesConverter)}static convertViewToModelMouseTarget(e,n){const r=Object.assign({},e);return r.position&&(r.position=n.convertViewPositionToModelPosition(r.position)),r.range&&(r.range=n.convertViewRangeToModelRange(r.range)),(r.type===5||r.type===8)&&(r.detail=this.convertViewToModelViewZoneData(r.detail,n)),r}static convertViewToModelViewZoneData(e,n){return{viewZoneId:e.viewZoneId,positionBefore:e.positionBefore?n.convertViewPositionToModelPosition(e.positionBefore):e.positionBefore,positionAfter:e.positionAfter?n.convertViewPositionToModelPosition(e.positionAfter):e.positionAfter,position:n.convertViewPositionToModelPosition(e.position),afterLineNumber:n.convertViewPositionToModelPosition(new ve(e.afterLineNumber,1)).lineNumber}}}class WIe{constructor(e){this._createLine=e,this._set(1,[])}flush(){this._set(1,[])}_set(e,n){this._lines=n,this._rendLineNumberStart=e}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(e){const n=e-this._rendLineNumberStart;if(n<0||n>=this._lines.length)throw new Vs("Illegal value for lineNumber");return this._lines[n]}onLinesDeleted(e,n){if(this.getCount()===0)return null;const r=this.getStartLineNumber(),s=this.getEndLineNumber();if(ns)return null;let o=0,a=0;for(let c=r;c<=s;c++){const u=c-this._rendLineNumberStart;e<=c&&c<=n&&(a===0?(o=u,a=1):a++)}if(e=s&&l<=o&&(this._lines[l-this._rendLineNumberStart].onContentChanged(),a=!0);return a}onLinesInserted(e,n){if(this.getCount()===0)return null;const r=n-e+1,s=this.getStartLineNumber(),o=this.getEndLineNumber();if(e<=s)return this._rendLineNumberStart+=r,null;if(e>o)return null;if(r+e>o)return this._lines.splice(e-this._rendLineNumberStart,o-e+1);const a=[];for(let h=0;hr)continue;const c=Math.max(n,l.fromLineNumber),u=Math.min(r,l.toLineNumber);for(let d=c;d<=u;d++){const h=d-this._rendLineNumberStart;this._lines[h].onTokensChanged(),s=!0}}return s}}class $Ie{constructor(e){this._host=e,this.domNode=this._createDomNode(),this._linesCollection=new WIe(()=>this._host.createVisibleLine())}_createDomNode(){const e=Di(document.createElement("div"));return e.setClassName("view-layer"),e.setPosition("absolute"),e.domNode.setAttribute("role","presentation"),e.domNode.setAttribute("aria-hidden","true"),e}onConfigurationChanged(e){return!!e.hasChanged(143)}onFlushed(e){return this._linesCollection.flush(),!0}onLinesChanged(e){return this._linesCollection.onLinesChanged(e.fromLineNumber,e.count)}onLinesDeleted(e){const n=this._linesCollection.onLinesDeleted(e.fromLineNumber,e.toLineNumber);if(n)for(let r=0,s=n.length;rn){const a=n,l=Math.min(r,o.rendLineNumberStart-1);a<=l&&(this._insertLinesBefore(o,a,l,s,n),o.linesLength+=l-a+1)}else if(o.rendLineNumberStart0&&(this._removeLinesBefore(o,a),o.linesLength-=a)}if(o.rendLineNumberStart=n,o.rendLineNumberStart+o.linesLength-1r){const a=Math.max(0,r-o.rendLineNumberStart+1),c=o.linesLength-1-a+1;c>0&&(this._removeLinesAfter(o,c),o.linesLength-=c)}return this._finishRendering(o,!1,s),o}_renderUntouchedLines(e,n,r,s,o){const a=e.rendLineNumberStart,l=e.lines;for(let c=n;c<=r;c++){const u=a+c;l[c].layoutLine(u,s[u-o])}}_insertLinesBefore(e,n,r,s,o){const a=[];let l=0;for(let c=n;c<=r;c++)a[l++]=this.host.createVisibleLine();e.lines=a.concat(e.lines)}_removeLinesBefore(e,n){for(let r=0;r=0;l--){const c=e.lines[l];s[l]&&(c.setDomNode(a),a=a.previousSibling)}}_finishRenderingInvalidLines(e,n,r){const s=document.createElement("div");V0._ttPolicy&&(n=V0._ttPolicy.createHTML(n)),s.innerHTML=n;for(let o=0;oi});V0._sb=new jI(1e5);class zIe extends hu{constructor(e){super(e),this._visibleLines=new $Ie(this),this.domNode=this._visibleLines.domNode;const r=this._context.configuration.options.get(50);Ta(this.domNode,r),this._dynamicOverlays=[],this._isFocused=!1,this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let e=0,n=this._dynamicOverlays.length;er.shouldRender());for(let r=0,s=n.length;r'),s.appendString(o),s.appendString(""),!0)}layoutLine(e,n){this._domNode&&(this._domNode.setTop(n),this._domNode.setHeight(this._lineHeight))}}class Ept extends zIe{constructor(e){super(e);const r=this._context.configuration.options.get(143);this._contentWidth=r.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(e){const r=this._context.configuration.options.get(143);return this._contentWidth=r.contentWidth,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollWidthChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e),this.domNode.setWidth(Math.max(e.scrollWidth,this._contentWidth))}}class Ipt extends zIe{constructor(e){super(e);const n=this._context.configuration.options,r=n.get(143);this._contentLeft=r.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),Ta(this.domNode,n.get(50))}onConfigurationChanged(e){const n=this._context.configuration.options;Ta(this.domNode,n.get(50));const r=n.get(143);return this._contentLeft=r.contentLeft,super.onConfigurationChanged(e)||!0}onScrollChanged(e){return super.onScrollChanged(e)||e.scrollHeightChanged}_viewOverlaysRender(e){super._viewOverlaysRender(e);const n=Math.min(e.scrollHeight,1e6);this.domNode.setHeight(n),this.domNode.setWidth(this._contentLeft)}}class Tpt extends hu{constructor(e,n){super(e),this._viewDomNode=n,this._widgets={},this.domNode=Di(document.createElement("div")),Ym.write(this.domNode,1),this.domNode.setClassName("contentWidgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this.overflowingContentWidgetsDomNode=Di(document.createElement("div")),Ym.write(this.overflowingContentWidgetsDomNode,2),this.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets")}dispose(){super.dispose(),this._widgets={}}onConfigurationChanged(e){const n=Object.keys(this._widgets);for(const r of n)this._widgets[r].onConfigurationChanged(e);return!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLineMappingChanged(e){return this._updateAnchorsViewPositions(),!0}onLinesChanged(e){return this._updateAnchorsViewPositions(),!0}onLinesDeleted(e){return this._updateAnchorsViewPositions(),!0}onLinesInserted(e){return this._updateAnchorsViewPositions(),!0}onScrollChanged(e){return!0}onZonesChanged(e){return!0}_updateAnchorsViewPositions(){const e=Object.keys(this._widgets);for(const n of e)this._widgets[n].updateAnchorViewPosition()}addWidget(e){const n=new Rpt(this._context,this._viewDomNode,e);this._widgets[n.id]=n,n.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(n.domNode):this.domNode.appendChild(n.domNode),this.setShouldRender()}setWidgetPosition(e,n,r,s,o){this._widgets[e.getId()].setPosition(n,r,s,o),this.setShouldRender()}removeWidget(e){const n=e.getId();if(this._widgets.hasOwnProperty(n)){const r=this._widgets[n];delete this._widgets[n];const s=r.domNode.domNode;s.parentNode.removeChild(s),s.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}}shouldSuppressMouseDownOnWidget(e){return this._widgets.hasOwnProperty(e)?this._widgets[e].suppressMouseDown:!1}onBeforeRender(e){const n=Object.keys(this._widgets);for(const r of n)this._widgets[r].onBeforeRender(e)}prepareRender(e){const n=Object.keys(this._widgets);for(const r of n)this._widgets[r].prepareRender(e)}render(e){const n=Object.keys(this._widgets);for(const r of n)this._widgets[r].render(e)}}class Rpt{constructor(e,n,r){this._primaryAnchor=new KR(null,null),this._secondaryAnchor=new KR(null,null),this._context=e,this._viewDomNode=n,this._actual=r,this.domNode=Di(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=this._actual.allowEditorOverflow||!1,this.suppressMouseDown=this._actual.suppressMouseDown||!1;const s=this._context.configuration.options,o=s.get(143);this._fixedOverflowWidgets=s.get(42),this._contentWidth=o.contentWidth,this._contentLeft=o.contentLeft,this._lineHeight=s.get(66),this._affinity=null,this._preference=[],this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setDisplay("none"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}onConfigurationChanged(e){const n=this._context.configuration.options;if(this._lineHeight=n.get(66),e.hasChanged(143)){const r=n.get(143);this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,this._maxWidth=this._getMaxWidth()}}updateAnchorViewPosition(){this._setPosition(this._affinity,this._primaryAnchor.modelPosition,this._secondaryAnchor.modelPosition)}_setPosition(e,n,r){this._affinity=e,this._primaryAnchor=s(n,this._context.viewModel,this._affinity),this._secondaryAnchor=s(r,this._context.viewModel,this._affinity);function s(o,a,l){if(!o)return new KR(null,null);const c=a.model.validatePosition(o);if(a.coordinatesConverter.modelPositionIsVisible(c)){const u=a.coordinatesConverter.convertModelPositionToViewPosition(c,l??void 0);return new KR(o,u)}return new KR(o,null)}}_getMaxWidth(){const e=this.domNode.domNode.ownerDocument,n=e.defaultView;return this.allowEditorOverflow?(n==null?void 0:n.innerWidth)||e.documentElement.offsetWidth||e.body.offsetWidth:this._contentWidth}setPosition(e,n,r,s){this._setPosition(s,e,n),this._preference=r,this._primaryAnchor.viewPosition&&this._preference&&this._preference.length>0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(e,n,r,s){const o=e.top,a=o,l=e.top+e.height,c=s.viewportHeight-l,u=o-r,d=a>=r,h=l,f=c>=r;let p=e.left;return p+n>s.scrollLeft+s.viewportWidth&&(p=s.scrollLeft+s.viewportWidth-n),pu){const p=f-(u-s);f-=p,r-=p}if(f=b,k=p+r<=g.height-y;return this._fixedOverflowWidgets?{fitsAbove:x,aboveTop:Math.max(f,b),fitsBelow:k,belowTop:p,left:_}:{fitsAbove:x,aboveTop:l,fitsBelow:k,belowTop:c,left:m}}_prepareRenderWidgetAtExactPositionOverflowing(e){return new GR(e.top,e.left+this._contentLeft)}_getAnchorsCoordinates(e){var n,r;const s=l(this._primaryAnchor.viewPosition,this._affinity,this._lineHeight),o=((n=this._secondaryAnchor.viewPosition)===null||n===void 0?void 0:n.lineNumber)===((r=this._primaryAnchor.viewPosition)===null||r===void 0?void 0:r.lineNumber)?this._secondaryAnchor.viewPosition:null,a=l(o,this._affinity,this._lineHeight);return{primary:s,secondary:a};function l(c,u,d){if(!c)return null;const h=e.visibleRangeForPosition(c);if(!h)return null;const f=c.column===1&&u===3?0:h.left,p=e.getVerticalOffsetForLineNumber(c.lineNumber)-e.scrollTop;return new xge(p,f,d)}}_reduceAnchorCoordinates(e,n,r){if(!n)return e;const s=this._context.configuration.options.get(50);let o=n.left;return oe.endLineNumber||this.domNode.setMaxWidth(this._maxWidth)}prepareRender(e){this._renderData=this._prepareRenderWidget(e)}render(e){if(!this._renderData){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this.domNode.setVisibility("hidden")),typeof this._actual.afterRender=="function"&&wq(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?(this.domNode.setTop(this._renderData.coordinate.top),this.domNode.setLeft(this._renderData.coordinate.left)):(this.domNode.setTop(this._renderData.coordinate.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),typeof this._actual.afterRender=="function"&&wq(this._actual.afterRender,this._actual,this._renderData.position)}}class KR{constructor(e,n){this.modelPosition=e,this.viewPosition=n}}class GR{constructor(e,n){this.top=e,this.left=n,this._coordinateBrand=void 0}}class xge{constructor(e,n,r){this.top=e,this.left=n,this.height=r,this._anchorCoordinateBrand=void 0}}function wq(i,e,...n){try{return i.call(e,...n)}catch{return null}}class VIe extends Zx{constructor(e){super(),this._context=e;const n=this._context.configuration.options,r=n.get(143);this._lineHeight=n.get(66),this._renderLineHighlight=n.get(95),this._renderLineHighlightOnlyWhenFocus=n.get(96),this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new Ft(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let e=!1;const n=this._selections.map(s=>s.positionLineNumber);n.sort((s,o)=>s-o),ys(this._cursorLineNumbers,n)||(this._cursorLineNumbers=n,e=!0);const r=this._selections.every(s=>s.isEmpty());return this._selectionIsEmpty!==r&&(this._selectionIsEmpty=r,e=!0),e}onThemeChanged(e){return this._readFromSelections()}onConfigurationChanged(e){const n=this._context.configuration.options,r=n.get(143);return this._lineHeight=n.get(66),this._renderLineHighlight=n.get(95),this._renderLineHighlightOnlyWhenFocus=n.get(96),this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,!0}onCursorStateChanged(e){return this._selections=e.selections,this._readFromSelections()}onFlushed(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollWidthChanged||e.scrollTopChanged}onZonesChanged(e){return!0}onFocusChanged(e){return this._renderLineHighlightOnlyWhenFocus?(this._focused=e.isFocused,!0):!1}prepareRender(e){if(!this._shouldRenderThis()){this._renderData=null;return}const n=this._renderOne(e),r=e.visibleRange.startLineNumber,s=e.visibleRange.endLineNumber,o=this._cursorLineNumbers.length;let a=0;const l=[];for(let c=r;c<=s;c++){const u=c-r;for(;a=this._renderData.length?"":this._renderData[r]}_shouldRenderInMargin(){return(this._renderLineHighlight==="gutter"||this._renderLineHighlight==="all")&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderInContent(){return(this._renderLineHighlight==="line"||this._renderLineHighlight==="all")&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class Apt extends VIe{_renderOne(e){return`
`}_shouldRenderThis(){return this._shouldRenderInContent()}_shouldRenderOther(){return this._shouldRenderInMargin()}}class Npt extends VIe{_renderOne(e){return`
`}_shouldRenderThis(){return!0}_shouldRenderOther(){return this._shouldRenderInContent()}}Of((i,e)=>{const n=i.getColor(EIe);if(n&&(e.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${n}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${n}; border: none; }`)),!n||n.isTransparent()||i.defines(bge)){const r=i.getColor(bge);r&&(e.addRule(`.monaco-editor .view-overlays .current-line { border: 2px solid ${r}; }`),e.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { border: 2px solid ${r}; }`),Vp(i.type)&&(e.addRule(".monaco-editor .view-overlays .current-line { border-width: 1px; }"),e.addRule(".monaco-editor .margin-view-overlays .current-line-margin { border-width: 1px; }")))}});class Mpt extends Zx{constructor(e){super(),this._context=e;const n=this._context.configuration.options;this._lineHeight=n.get(66),this._typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const n=this._context.configuration.options;return this._lineHeight=n.get(66),this._typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged||e.scrollWidthChanged}onZonesChanged(e){return!0}prepareRender(e){const n=e.getDecorationsInViewport();let r=[],s=0;for(let c=0,u=n.length;c{if(c.options.zIndexu.options.zIndex)return 1;const d=c.options.className,h=u.options.className;return dh?1:J.compareRangesUsingStarts(c.range,u.range)});const o=e.visibleRange.startLineNumber,a=e.visibleRange.endLineNumber,l=[];for(let c=o;c<=a;c++){const u=c-o;l[u]=""}this._renderWholeLineDecorations(e,r,l),this._renderNormalDecorations(e,r,l),this._renderResult=l}_renderWholeLineDecorations(e,n,r){const s=String(this._lineHeight),o=e.visibleRange.startLineNumber,a=e.visibleRange.endLineNumber;for(let l=0,c=n.length;l',h=Math.max(u.range.startLineNumber,o),f=Math.min(u.range.endLineNumber,a);for(let p=h;p<=f;p++){const g=p-o;r[g]+=d}}}_renderNormalDecorations(e,n,r){var s;const o=String(this._lineHeight),a=e.visibleRange.startLineNumber;let l=null,c=!1,u=null,d=!1;for(let h=0,f=n.length;h';c[p]+=y}}}render(e,n){if(!this._renderResult)return"";const r=n-e;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}class Ppt extends hu{constructor(e,n,r,s){super(e);const o=this._context.configuration.options,a=o.get(102),l=o.get(74),c=o.get(40),u=o.get(105),d={listenOnDomNode:r.domNode,className:"editor-scrollable "+NJ(e.theme.type),useShadows:!1,lazyRender:!0,vertical:a.vertical,horizontal:a.horizontal,verticalHasArrows:a.verticalHasArrows,horizontalHasArrows:a.horizontalHasArrows,verticalScrollbarSize:a.verticalScrollbarSize,verticalSliderSize:a.verticalSliderSize,horizontalScrollbarSize:a.horizontalScrollbarSize,horizontalSliderSize:a.horizontalSliderSize,handleMouseWheel:a.handleMouseWheel,alwaysConsumeMouseWheel:a.alwaysConsumeMouseWheel,arrowSize:a.arrowSize,mouseWheelScrollSensitivity:l,fastScrollSensitivity:c,scrollPredominantAxis:u,scrollByPage:a.scrollByPage};this.scrollbar=this._register(new xoe(n.domNode,d,this._context.viewLayout.getScrollable())),Ym.write(this.scrollbar.getDomNode(),5),this.scrollbarDomNode=Di(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const h=(f,p,g)=>{const m={};{const _=f.scrollTop;_&&(m.scrollTop=this._context.viewLayout.getCurrentScrollTop()+_,f.scrollTop=0)}if(g){const _=f.scrollLeft;_&&(m.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+_,f.scrollLeft=0)}this._context.viewModel.viewLayout.setScrollPosition(m,1)};this._register(Be(r.domNode,"scroll",f=>h(r.domNode,!0,!0))),this._register(Be(n.domNode,"scroll",f=>h(n.domNode,!0,!1))),this._register(Be(s.domNode,"scroll",f=>h(s.domNode,!0,!1))),this._register(Be(this.scrollbarDomNode.domNode,"scroll",f=>h(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){const e=this._context.configuration.options,n=e.get(143);this.scrollbarDomNode.setLeft(n.contentLeft),e.get(72).side==="right"?this.scrollbarDomNode.setWidth(n.contentWidth+n.minimap.minimapWidth):this.scrollbarDomNode.setWidth(n.contentWidth),this.scrollbarDomNode.setHeight(n.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarPointerDown(e){this.scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this.scrollbar.delegateScrollFromMouseWheelEvent(e)}onConfigurationChanged(e){if(e.hasChanged(102)||e.hasChanged(74)||e.hasChanged(40)){const n=this._context.configuration.options,r=n.get(102),s=n.get(74),o=n.get(40),a=n.get(105),l={vertical:r.vertical,horizontal:r.horizontal,verticalScrollbarSize:r.verticalScrollbarSize,horizontalScrollbarSize:r.horizontalScrollbarSize,scrollByPage:r.scrollByPage,handleMouseWheel:r.handleMouseWheel,mouseWheelScrollSensitivity:s,fastScrollSensitivity:o,scrollPredominantAxis:a};this.scrollbar.updateOptions(l)}return e.hasChanged(143)&&this._setLayout(),!0}onScrollChanged(e){return!0}onThemeChanged(e){return this.scrollbar.updateClassName("editor-scrollable "+NJ(this._context.theme.type)),!0}prepareRender(e){}render(e){this.scrollbar.renderNow()}}class HIe extends Le{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}function A$(i,e){let n=0,r=0;const s=i.length;for(;rs)throw new Vs("Illegal value for lineNumber");const o=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,a=!!(o&&o.offSide);let l=-2,c=-1,u=-2,d=-1;const h=E=>{if(l!==-1&&(l===-2||l>E-1)){l=-1,c=-1;for(let A=E-2;A>=0;A--){const M=this._computeIndentLevel(A);if(M>=0){l=A,c=M;break}}}if(u===-2){u=-1,d=-1;for(let A=E;A=0){u=A,d=M;break}}}};let f=-2,p=-1,g=-2,m=-1;const _=E=>{if(f===-2){f=-1,p=-1;for(let A=E-2;A>=0;A--){const M=this._computeIndentLevel(A);if(M>=0){f=A,p=M;break}}}if(g!==-1&&(g===-2||g=0){g=A,m=M;break}}}};let b=0,y=!0,x=0,k=!0,D=0,R=0;for(let E=0;y||k;E++){const A=e-E,M=e+E;E>1&&(A<1||A1&&(M>s||M>r)&&(k=!1),E>5e4&&(y=!1,k=!1);let N=-1;if(y&&A>=1){const O=this._computeIndentLevel(A-1);O>=0?(u=A-1,d=O,N=Math.ceil(O/this.textModel.getOptions().indentSize)):(h(A),N=this._getIndentLevelForWhitespaceLine(a,c,d))}let P=-1;if(k&&M<=s){const O=this._computeIndentLevel(M-1);O>=0?(f=M-1,p=O,P=Math.ceil(O/this.textModel.getOptions().indentSize)):(_(M),P=this._getIndentLevelForWhitespaceLine(a,p,m))}if(E===0){R=N;continue}if(E===1){if(M<=s&&P>=0&&R+1===P){y=!1,b=M,x=M,D=P;continue}if(A>=1&&N>=0&&N-1===R){k=!1,b=A,x=A,D=N;continue}if(b=e,x=e,D=R,D===0)return{startLineNumber:b,endLineNumber:x,indent:D}}y&&(N>=D?b=A:y=!1),k&&(P>=D?x=M:k=!1)}return{startLineNumber:b,endLineNumber:x,indent:D}}getLinesBracketGuides(e,n,r,s){var o;const a=[];for(let f=e;f<=n;f++)a.push([]);const l=!0,c=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new J(e,1,n,this.textModel.getLineMaxColumn(n))).toArray();let u;if(r&&c.length>0){const f=(e<=r.lineNumber&&r.lineNumber<=n?c:this.textModel.bracketPairs.getBracketPairsInRange(J.fromPositions(r)).toArray()).filter(p=>J.strictContainsPosition(p.range,r));u=(o=G9(f,p=>l))===null||o===void 0?void 0:o.range}const d=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,h=new UIe;for(const f of c){if(!f.closingBracketRange)continue;const p=u&&f.range.equalsRange(u);if(!p&&!s.includeInactive)continue;const g=h.getInlineClassName(f.nestingLevel,f.nestingLevelOfEqualBracketType,d)+(s.highlightActive&&p?" "+h.activeClassName:""),m=f.openingBracketRange.getStartPosition(),_=f.closingBracketRange.getStartPosition(),b=s.horizontalGuides===OS.Enabled||s.horizontalGuides===OS.EnabledForActive&&p;if(f.range.startLineNumber===f.range.endLineNumber){b&&a[f.range.startLineNumber-e].push(new yS(-1,f.openingBracketRange.getEndPosition().column,g,new sM(!1,_.column),-1,-1));continue}const y=this.getVisibleColumnFromPosition(_),x=this.getVisibleColumnFromPosition(f.openingBracketRange.getStartPosition()),k=Math.min(x,y,f.minVisibleColumnIndentation+1);let D=!1;ml(this.textModel.getLineContent(f.closingBracketRange.startLineNumber))=e&&x>k&&a[m.lineNumber-e].push(new yS(k,-1,g,new sM(!1,m.column),-1,-1)),_.lineNumber<=n&&y>k&&a[_.lineNumber-e].push(new yS(k,-1,g,new sM(!D,_.column),-1,-1)))}for(const f of a)f.sort((p,g)=>p.visibleColumn-g.visibleColumn);return a}getVisibleColumnFromPosition(e){return ho.visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,n){this.assertNotDisposed();const r=this.textModel.getLineCount();if(e<1||e>r)throw new Error("Illegal value for startLineNumber");if(n<1||n>r)throw new Error("Illegal value for endLineNumber");const s=this.textModel.getOptions(),o=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,a=!!(o&&o.offSide),l=new Array(n-e+1);let c=-2,u=-1,d=-2,h=-1;for(let f=e;f<=n;f++){const p=f-e,g=this._computeIndentLevel(f-1);if(g>=0){c=f-1,u=g,l[p]=Math.ceil(g/s.indentSize);continue}if(c===-2){c=-1,u=-1;for(let m=f-2;m>=0;m--){const _=this._computeIndentLevel(m);if(_>=0){c=m,u=_;break}}}if(d!==-1&&(d===-2||d=0){d=m,h=_;break}}}l[p]=this._getIndentLevelForWhitespaceLine(a,u,h)}return l}_getIndentLevelForWhitespaceLine(e,n,r){const s=this.textModel.getOptions();return n===-1||r===-1?0:nc||this._maxIndentLeft>0&&x>this._maxIndentLeft)break;const k=y.horizontalLine?y.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",D=y.horizontalLine?((o=(s=e.visibleRangeForPosition(new ve(p,y.horizontalLine.endColumn)))===null||s===void 0?void 0:s.left)!==null&&o!==void 0?o:x+this._spaceWidth)-x:this._spaceWidth;_+=`
`}f[g]=_}this._renderResult=f}getGuidesByLine(e,n,r){const s=this._bracketPairGuideOptions.bracketPairs!==!1?this._context.viewModel.getBracketGuidesInRangeByLine(e,n,r,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:this._bracketPairGuideOptions.bracketPairsHorizontal===!0?OS.Enabled:this._bracketPairGuideOptions.bracketPairsHorizontal==="active"?OS.EnabledForActive:OS.Disabled,includeInactive:this._bracketPairGuideOptions.bracketPairs===!0}):null,o=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(e,n):null;let a=0,l=0,c=0;if(this._bracketPairGuideOptions.highlightActiveIndentation!==!1&&r){const h=this._context.viewModel.getActiveIndentGuide(r.lineNumber,e,n);a=h.startLineNumber,l=h.endLineNumber,c=h.indent}const{indentSize:u}=this._context.viewModel.model.getOptions(),d=[];for(let h=e;h<=n;h++){const f=new Array;d.push(f);const p=s?s[h-e]:[],g=new Ev(p),m=o?o[h-e]:0;for(let _=1;_<=m;_++){const b=(_-1)*u+1,y=(this._bracketPairGuideOptions.highlightActiveIndentation==="always"||p.length===0)&&a<=h&&h<=l&&_===c;f.push(...g.takeWhile(k=>k.visibleColumn!0)||[])}return d}render(e,n){if(!this._renderResult)return"";const r=n-e;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}function eD(i){if(!(i&&i.isTransparent()))return i}Of((i,e)=>{const n=[{bracketColor:RIe,guideColor:Kft,guideColorActive:Jft},{bracketColor:AIe,guideColor:Gft,guideColorActive:ept},{bracketColor:NIe,guideColor:Xft,guideColorActive:tpt},{bracketColor:MIe,guideColor:Yft,guideColorActive:npt},{bracketColor:PIe,guideColor:Zft,guideColorActive:ipt},{bracketColor:OIe,guideColor:Qft,guideColorActive:rpt}],r=new UIe,s=[{indentColor:O5,indentColorActive:F5},{indentColor:Ift,indentColorActive:Mft},{indentColor:Tft,indentColorActive:Pft},{indentColor:Rft,indentColorActive:Oft},{indentColor:Aft,indentColorActive:Fft},{indentColor:Nft,indentColorActive:Bft}],o=n.map(l=>{var c,u;const d=i.getColor(l.bracketColor),h=i.getColor(l.guideColor),f=i.getColor(l.guideColorActive),p=eD((c=eD(h))!==null&&c!==void 0?c:d==null?void 0:d.transparent(.3)),g=eD((u=eD(f))!==null&&u!==void 0?u:d);if(!(!p||!g))return{guideColor:p,guideColorActive:g}}).filter(tP),a=s.map(l=>{const c=i.getColor(l.indentColor),u=i.getColor(l.indentColorActive),d=eD(c),h=eD(u);if(!(!d||!h))return{indentColor:d,indentColorActive:h}}).filter(tP);if(o.length>0){for(let l=0;l<30;l++){const c=o[l%o.length];e.addRule(`.monaco-editor .${r.getInlineClassNameOfLevel(l).replace(/ /g,".")} { --guide-color: ${c.guideColor}; --guide-color-active: ${c.guideColorActive}; }`)}e.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),e.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),e.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),e.addRule(`.monaco-editor .vertical.${r.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),e.addRule(`.monaco-editor .horizontal-top.${r.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),e.addRule(`.monaco-editor .horizontal-bottom.${r.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}if(a.length>0){for(let l=0;l<30;l++){const c=a[l%a.length];e.addRule(`.monaco-editor .lines-content .core-guide-indent.lvl-${l} { --indent-color: ${c.indentColor}; --indent-color-active: ${c.indentColorActive}; }`)}e.addRule(".monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 var(--indent-color) inset; }"),e.addRule(".monaco-editor .lines-content .core-guide-indent.indent-active { box-shadow: 1px 0 0 0 var(--indent-color-active) inset; }")}});class Cq{get didDomLayout(){return this._didDomLayout}readClientRect(){if(!this._clientRectRead){this._clientRectRead=!0;const e=this._domNode.getBoundingClientRect();this.markDidDomLayout(),this._clientRectDeltaLeft=e.left,this._clientRectScale=e.width/this._domNode.offsetWidth}}get clientRectDeltaLeft(){return this._clientRectRead||this.readClientRect(),this._clientRectDeltaLeft}get clientRectScale(){return this._clientRectRead||this.readClientRect(),this._clientRectScale}constructor(e,n){this._domNode=e,this.endNode=n,this._didDomLayout=!1,this._clientRectDeltaLeft=0,this._clientRectScale=1,this._clientRectRead=!1}markDidDomLayout(){this._didDomLayout=!0}}class Bpt{constructor(){this._currentVisibleRange=new J(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(e){this._currentVisibleRange=e}}class jpt{constructor(e,n,r,s,o,a,l){this.minimalReveal=e,this.lineNumber=n,this.startColumn=r,this.endColumn=s,this.startScrollTop=o,this.stopScrollTop=a,this.scrollType=l,this.type="range",this.minLineNumber=n,this.maxLineNumber=n}}class Wpt{constructor(e,n,r,s,o){this.minimalReveal=e,this.selections=n,this.startScrollTop=r,this.stopScrollTop=s,this.scrollType=o,this.type="selections";let a=n[0].startLineNumber,l=n[0].endLineNumber;for(let c=1,u=n.length;c{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new Ji(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new Bpt,this._horizontalRevealRequest=null,this._stickyScrollEnabled=s.get(114).enabled,this._maxNumberStickyLines=s.get(114).maxLineCount}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}createVisibleLine(){return new dm(this._viewLineOptions)}onConfigurationChanged(e){this._visibleLines.onConfigurationChanged(e),e.hasChanged(144)&&(this._maxLineWidth=0);const n=this._context.configuration.options,r=n.get(50),s=n.get(144);return this._lineHeight=n.get(66),this._typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this._isViewportWrapping=s.isViewportWrapping,this._revealHorizontalRightPadding=n.get(99),this._cursorSurroundingLines=n.get(29),this._cursorSurroundingLinesStyle=n.get(30),this._canUseLayerHinting=!n.get(32),this._stickyScrollEnabled=n.get(114).enabled,this._maxNumberStickyLines=n.get(114).maxLineCount,Ta(this.domNode,r),this._onOptionsMaybeChanged(),e.hasChanged(143)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){const e=this._context.configuration,n=new gge(e,this._context.theme.type);if(!this._viewLineOptions.equals(n)){this._viewLineOptions=n;const r=this._visibleLines.getStartLineNumber(),s=this._visibleLines.getEndLineNumber();for(let o=r;o<=s;o++)this._visibleLines.getVisibleLine(o).onOptionsChanged(this._viewLineOptions);return!0}return!1}onCursorStateChanged(e){const n=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();let s=!1;for(let o=n;o<=r;o++)s=this._visibleLines.getVisibleLine(o).onSelectionChanged()||s;return s}onDecorationsChanged(e){{const n=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();for(let s=n;s<=r;s++)this._visibleLines.getVisibleLine(s).onDecorationsChanged()}return!0}onFlushed(e){const n=this._visibleLines.onFlushed(e);return this._maxLineWidth=0,n}onLinesChanged(e){return this._visibleLines.onLinesChanged(e)}onLinesDeleted(e){return this._visibleLines.onLinesDeleted(e)}onLinesInserted(e){return this._visibleLines.onLinesInserted(e)}onRevealRangeRequest(e){const n=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),e.source,e.minimalReveal,e.range,e.selections,e.verticalType);if(n===-1)return!1;let r=this._context.viewLayout.validateScrollPosition({scrollTop:n});e.revealHorizontal?e.range&&e.range.startLineNumber!==e.range.endLineNumber?r={scrollTop:r.scrollTop,scrollLeft:0}:e.range?this._horizontalRevealRequest=new jpt(e.minimalReveal,e.range.startLineNumber,e.range.startColumn,e.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),r.scrollTop,e.scrollType):e.selections&&e.selections.length>0&&(this._horizontalRevealRequest=new Wpt(e.minimalReveal,e.selections,this._context.viewLayout.getCurrentScrollTop(),r.scrollTop,e.scrollType)):this._horizontalRevealRequest=null;const o=Math.abs(this._context.viewLayout.getCurrentScrollTop()-r.scrollTop)<=this._lineHeight?1:e.scrollType;return this._context.viewModel.viewLayout.setScrollPosition(r,o),!0}onScrollChanged(e){if(this._horizontalRevealRequest&&e.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&e.scrollTopChanged){const n=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),r=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(e.scrollTopr)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(e.scrollWidth),this._visibleLines.onScrollChanged(e)||!0}onTokensChanged(e){return this._visibleLines.onTokensChanged(e)}onZonesChanged(e){return this._context.viewModel.viewLayout.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(e)}onThemeChanged(e){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(e,n){const r=this._getViewLineDomNode(e);if(r===null)return null;const s=this._getLineNumberFor(r);if(s===-1||s<1||s>this._context.viewModel.getLineCount())return null;if(this._context.viewModel.getLineMaxColumn(s)===1)return new ve(s,1);const o=this._visibleLines.getStartLineNumber(),a=this._visibleLines.getEndLineNumber();if(sa)return null;let l=this._visibleLines.getVisibleLine(s).getColumnOfNodeOffset(e,n);const c=this._context.viewModel.getLineMinColumn(s);return lr)return-1;const s=new Cq(this.domNode.domNode,this._textRangeRestingSpot),o=this._visibleLines.getVisibleLine(e).getWidth(s);return this._updateLineWidthsSlowIfDomDidLayout(s),o}linesVisibleRangesForRange(e,n){if(this.shouldRender())return null;const r=e.endLineNumber,s=J.intersectRanges(e,this._lastRenderedData.getCurrentVisibleRange());if(!s)return null;const o=[];let a=0;const l=new Cq(this.domNode.domNode,this._textRangeRestingSpot);let c=0;n&&(c=this._context.viewModel.coordinatesConverter.convertViewPositionToModelPosition(new ve(s.startLineNumber,1)).lineNumber);const u=this._visibleLines.getStartLineNumber(),d=this._visibleLines.getEndLineNumber();for(let h=s.startLineNumber;h<=s.endLineNumber;h++){if(hd)continue;const f=h===s.startLineNumber?s.startColumn:1,p=h!==s.endLineNumber,g=p?this._context.viewModel.getLineMaxColumn(h):s.endColumn,m=this._visibleLines.getVisibleLine(h).getVisibleRangesForRange(h,f,g,l);if(m){if(n&&hthis._visibleLines.getEndLineNumber())return null;const s=new Cq(this.domNode.domNode,this._textRangeRestingSpot),o=this._visibleLines.getVisibleLine(e).getVisibleRangesForRange(e,n,r,s);return this._updateLineWidthsSlowIfDomDidLayout(s),o}visibleRangeForPosition(e){const n=this._visibleRangesForLineRange(e.lineNumber,e.column,e.column);return n?new Yht(n.outsideRenderedLine,n.ranges[0].left):null}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidthsSlowIfDomDidLayout(e){e.didDomLayout&&(this._asyncUpdateLineWidths.isScheduled()||(this._asyncUpdateLineWidths.cancel(),this._updateLineWidthsSlow()))}_updateLineWidths(e){const n=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();let s=1,o=!0;for(let a=n;a<=r;a++){const l=this._visibleLines.getVisibleLine(a);if(e&&!l.getWidthIsFast()){o=!1;continue}s=Math.max(s,l.getWidth(null))}return o&&n===1&&r===this._context.viewModel.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(s),o}_checkMonospaceFontAssumptions(){let e=-1,n=-1;const r=this._visibleLines.getStartLineNumber(),s=this._visibleLines.getEndLineNumber();for(let o=r;o<=s;o++){const a=this._visibleLines.getVisibleLine(o);if(a.needsMonospaceFontCheck()){const l=a.getWidth(null);l>n&&(n=l,e=o)}}if(e!==-1&&!this._visibleLines.getVisibleLine(e).monospaceAssumptionsAreValid())for(let o=r;o<=s;o++)this._visibleLines.getVisibleLine(o).onMonospaceAssumptionsInvalidated()}prepareRender(){throw new Error("Not supported")}render(){throw new Error("Not supported")}renderText(e){if(this._visibleLines.renderLines(e),this._lastRenderedData.setCurrentVisibleRange(e.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){const r=this._horizontalRevealRequest;if(e.startLineNumber<=r.minLineNumber&&r.maxLineNumber<=e.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();const s=this._computeScrollLeftToReveal(r);s&&(this._isViewportWrapping||this._ensureMaxLineWidth(s.maxHorizontalOffset),this._context.viewModel.viewLayout.setScrollPosition({scrollLeft:s.scrollLeft},r.scrollType))}}if(this._updateLineWidthsFast()?this._asyncUpdateLineWidths.cancel():this._asyncUpdateLineWidths.schedule(),_l&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){const r=this._visibleLines.getStartLineNumber(),s=this._visibleLines.getEndLineNumber();for(let o=r;o<=s;o++)if(this._visibleLines.getVisibleLine(o).needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");const n=this._context.viewLayout.getCurrentScrollTop()-e.bigNumbersDelta;this._linesContent.setTop(-n),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(e){const n=Math.ceil(e);this._maxLineWidth0){let b=o[0].startLineNumber,y=o[0].endLineNumber;for(let x=1,k=o.length;xc){if(!d)return-1;_=h}else if(a===5||a===6)if(a===6&&l<=h&&f<=u)_=l;else{const b=Math.max(5*this._lineHeight,c*.2),y=h-b,x=f-c;_=Math.max(x,y)}else if(a===1||a===2)if(a===2&&l<=h&&f<=u)_=l;else{const b=(h+f)/2;_=Math.max(0,b-c/2)}else _=this._computeMinimumScrolling(l,u,h,f,a===3,a===4);return _}_computeScrollLeftToReveal(e){const n=this._context.viewLayout.getCurrentViewport(),r=this._context.configuration.options.get(143),s=n.left,o=s+n.width-r.verticalScrollbarWidth;let a=1073741824,l=0;if(e.type==="range"){const u=this._visibleRangesForLineRange(e.lineNumber,e.startColumn,e.endColumn);if(!u)return null;for(const d of u.ranges)a=Math.min(a,Math.round(d.left)),l=Math.max(l,Math.round(d.left+d.width))}else for(const u of e.selections){if(u.startLineNumber!==u.endLineNumber)return null;const d=this._visibleRangesForLineRange(u.startLineNumber,u.startColumn,u.endColumn);if(!d)return null;for(const h of d.ranges)a=Math.min(a,Math.round(h.left)),l=Math.max(l,Math.round(h.left+h.width))}return e.minimalReveal||(a=Math.max(0,a-N$.HORIZONTAL_EXTRA_PX),l+=this._revealHorizontalRightPadding),e.type==="selections"&&l-a>n.width?null:{scrollLeft:this._computeMinimumScrolling(s,o,a,l),maxHorizontalOffset:l}}_computeMinimumScrolling(e,n,r,s,o,a){e=e|0,n=n|0,r=r|0,s=s|0,o=!!o,a=!!a;const l=n-e;if(s-rn)return Math.max(0,s-l)}else return r;return e}}N$.HORIZONTAL_EXTRA_PX=30;class OJ{constructor(e,n,r,s){this._decorationToRenderBrand=void 0,this.startLineNumber=+e,this.endLineNumber=+n,this.className=String(r),this.zIndex=s??0}}class $pt{constructor(e,n){this.className=e,this.zIndex=n}}class zpt{constructor(){this.decorations=[]}add(e){this.decorations.push(e)}getDecorations(){return this.decorations}}class qIe extends Zx{_render(e,n,r){const s=[];for(let l=e;l<=n;l++){const c=l-e;s[c]=new zpt}if(r.length===0)return s;r.sort((l,c)=>l.className===c.className?l.startLineNumber===c.startLineNumber?l.endLineNumber-c.endLineNumber:l.startLineNumber-c.startLineNumber:l.classNames)continue;const l=Math.max(a.startLineNumber,r),c=Math.min(o.preference.lane,this._glyphMarginDecorationLaneCount);n.push(new Upt(l,c,o.preference.zIndex,o))}}_collectSortedGlyphRenderRequests(e){const n=[];return this._collectDecorationBasedGlyphRenderRequest(e,n),this._collectWidgetBasedGlyphRenderRequest(e,n),n.sort((r,s)=>r.lineNumber===s.lineNumber?r.lane===s.lane?r.zIndex===s.zIndex?s.type===r.type?r.type===0&&s.type===0?r.className0;){const s=n.peek();if(!s)break;const o=n.takeWhile(l=>l.lineNumber===s.lineNumber&&l.lane===s.lane);if(!o||o.length===0)break;const a=o[0];if(a.type===0){const l=[];for(const c of o){if(c.zIndex!==a.zIndex||c.type!==a.type)break;(l.length===0||l[l.length-1]!==c.className)&&l.push(c.className)}r.push(a.accept(l.join(" ")))}else a.widget.renderInfo={lineNumber:a.lineNumber,lane:a.lane}}this._decorationGlyphsToRender=r}render(e){if(!this._glyphMargin){for(const r of Object.values(this._widgets))r.domNode.setDisplay("none");for(;this._managedDomNodes.length>0;){const r=this._managedDomNodes.pop();r==null||r.domNode.remove()}return}const n=Math.round(this._glyphMarginWidth/this._glyphMarginDecorationLaneCount);for(const r of Object.values(this._widgets))if(!r.renderInfo)r.domNode.setDisplay("none");else{const s=e.viewportData.relativeVerticalOffset[r.renderInfo.lineNumber-e.viewportData.startLineNumber],o=this._glyphMarginLeft+(r.renderInfo.lane-1)*this._lineHeight;r.domNode.setDisplay("block"),r.domNode.setTop(s),r.domNode.setLeft(o),r.domNode.setWidth(n),r.domNode.setHeight(this._lineHeight)}for(let r=0;rthis._decorationGlyphsToRender.length;){const r=this._managedDomNodes.pop();r==null||r.domNode.remove()}}}class Hpt{constructor(e,n,r,s){this.lineNumber=e,this.lane=n,this.zIndex=r,this.className=s,this.type=0}accept(e){return new qpt(this.lineNumber,this.lane,e)}}class Upt{constructor(e,n,r,s){this.lineNumber=e,this.lane=n,this.zIndex=r,this.widget=s,this.type=1}}class qpt{constructor(e,n,r){this.lineNumber=e,this.lane=n,this.combinedClassName=r}}class Kpt extends qIe{constructor(e){super(),this._context=e;const r=this._context.configuration.options.get(143);this._decorationsLeft=r.decorationsLeft,this._decorationsWidth=r.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const r=this._context.configuration.options.get(143);return this._decorationsLeft=r.decorationsLeft,this._decorationsWidth=r.decorationsWidth,!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_getDecorations(e){const n=e.getDecorationsInViewport(),r=[];let s=0;for(let o=0,a=n.length;o',c=[];for(let u=n;u<=r;u++){const d=u-n,h=s[d].getDecorations();let f="";for(const p of h)f+='
';o[l]=u}this._renderResult=o}render(e,n){return this._renderResult?this._renderResult[n-e]:""}}class oh{constructor(e,n,r,s){this._rgba8Brand=void 0,this.r=oh._clamp(e),this.g=oh._clamp(n),this.b=oh._clamp(r),this.a=oh._clamp(s)}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}static _clamp(e){return e<0?0:e>255?255:e|0}}oh.Empty=new oh(0,0,0,0);class j5 extends Le{static getInstance(){return this._INSTANCE||(this._INSTANCE=new j5),this._INSTANCE}constructor(){super(),this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(Zr.onDidChange(e=>{e.changedColorMap&&this._updateColorMap()}))}_updateColorMap(){const e=Zr.getColorMap();if(!e){this._colors=[oh.Empty],this._backgroundIsLight=!0;return}this._colors=[oh.Empty];for(let r=1;r=.5,this._onDidChange.fire(void 0)}getColor(e){return(e<1||e>=this._colors.length)&&(e=2),this._colors[e]}backgroundIsLight(){return this._backgroundIsLight}}j5._INSTANCE=null;const Xpt=(()=>{const i=[];for(let e=32;e<=126;e++)i.push(e);return i.push(65533),i})(),Ypt=(i,e)=>(i-=32,i<0||i>96?e<=2?(i+96)%96:95:i);class IP{constructor(e,n){this.scale=n,this._minimapCharRendererBrand=void 0,this.charDataNormal=IP.soften(e,12/15),this.charDataLight=IP.soften(e,50/60)}static soften(e,n){const r=new Uint8ClampedArray(e.length);for(let s=0,o=e.length;se.width||r+g>e.height){console.warn("bad render request outside image data");return}const m=d?this.charDataLight:this.charDataNormal,_=Ypt(s,u),b=e.width*4,y=l.r,x=l.g,k=l.b,D=o.r-y,R=o.g-x,E=o.b-k,A=Math.max(a,c),M=e.data;let N=_*f*p,P=r*b+n*4;for(let O=0;Oe.width||r+h>e.height){console.warn("bad render request outside image data");return}const f=e.width*4,p=.5*(o/255),g=a.r,m=a.g,_=a.b,b=s.r-g,y=s.g-m,x=s.b-_,k=g+b*p,D=m+y*p,R=_+x*p,E=Math.max(o,l),A=e.data;let M=r*f+n*4;for(let N=0;N{const e=new Uint8ClampedArray(i.length/2);for(let n=0;n>1]=kge[i[n]]<<4|kge[i[n+1]]&15;return e},Dge={1:u1(()=>Lge("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:u1(()=>Lge("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class oM{static create(e,n){if(this.lastCreated&&e===this.lastCreated.scale&&n===this.lastFontFamily)return this.lastCreated;let r;return Dge[e]?r=new IP(Dge[e](),e):r=oM.createFromSampleData(oM.createSampleData(n).data,e),this.lastFontFamily=n,this.lastCreated=r,r}static createSampleData(e){const n=document.createElement("canvas"),r=n.getContext("2d");n.style.height="16px",n.height=16,n.width=96*10,n.style.width=96*10+"px",r.fillStyle="#ffffff",r.font=`bold 16px ${e}`,r.textBaseline="middle";let s=0;for(const o of Xpt)r.fillText(String.fromCharCode(o),s,16/2),s+=10;return r.getImageData(0,0,96*10,16)}static createFromSampleData(e,n){if(e.length!==61440)throw new Error("Unexpected source in MinimapCharRenderer");const s=oM._downsample(e,n);return new IP(s,n)}static _downsampleChar(e,n,r,s,o){const a=1*o,l=2*o;let c=s,u=0;for(let d=0;d0){const u=255/c;for(let d=0;doM.create(this.fontScale,c.fontFamily)),this.defaultBackgroundColor=r.getColor(2),this.backgroundColor=TP._getMinimapBackground(n,this.defaultBackgroundColor),this.foregroundAlpha=TP._getMinimapForegroundOpacity(n)}static _getMinimapBackground(e,n){const r=e.getColor(Nht);return r?new oh(r.rgba.r,r.rgba.g,r.rgba.b,Math.round(255*r.rgba.a)):n}static _getMinimapForegroundOpacity(e){const n=e.getColor(Mht);return n?oh._clamp(Math.round(255*n.rgba.a)):255}equals(e){return this.renderMinimap===e.renderMinimap&&this.size===e.size&&this.minimapHeightIsEditorHeight===e.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===e.scrollBeyondLastLine&&this.paddingTop===e.paddingTop&&this.paddingBottom===e.paddingBottom&&this.showSlider===e.showSlider&&this.autohide===e.autohide&&this.pixelRatio===e.pixelRatio&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.lineHeight===e.lineHeight&&this.minimapLeft===e.minimapLeft&&this.minimapWidth===e.minimapWidth&&this.minimapHeight===e.minimapHeight&&this.canvasInnerWidth===e.canvasInnerWidth&&this.canvasInnerHeight===e.canvasInnerHeight&&this.canvasOuterWidth===e.canvasOuterWidth&&this.canvasOuterHeight===e.canvasOuterHeight&&this.isSampling===e.isSampling&&this.editorHeight===e.editorHeight&&this.fontScale===e.fontScale&&this.minimapLineHeight===e.minimapLineHeight&&this.minimapCharWidth===e.minimapCharWidth&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(e.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(e.backgroundColor)&&this.foregroundAlpha===e.foregroundAlpha}}class aM{constructor(e,n,r,s,o,a,l,c,u){this.scrollTop=e,this.scrollHeight=n,this.sliderNeeded=r,this._computedSliderRatio=s,this.sliderTop=o,this.sliderHeight=a,this.topPaddingLineCount=l,this.startLineNumber=c,this.endLineNumber=u}getDesiredScrollTopFromDelta(e){return Math.round(this.scrollTop+e/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(e){return Math.round((e-this.sliderHeight/2)/this._computedSliderRatio)}intersectWithViewport(e){const n=Math.max(this.startLineNumber,e.startLineNumber),r=Math.min(this.endLineNumber,e.endLineNumber);return n>r?null:[n,r]}getYForLineNumber(e,n){return+(e-this.startLineNumber+this.topPaddingLineCount)*n}static create(e,n,r,s,o,a,l,c,u,d,h){const f=e.pixelRatio,p=e.minimapLineHeight,g=Math.floor(e.canvasInnerHeight/p),m=e.lineHeight;if(e.minimapHeightIsEditorHeight){let R=c*e.lineHeight+e.paddingTop+e.paddingBottom;e.scrollBeyondLastLine&&(R+=Math.max(0,o-e.lineHeight-e.paddingBottom));const E=Math.max(1,Math.floor(o*o/R)),A=Math.max(0,e.minimapHeight-E),M=A/(d-o),N=u*M,P=A>0,O=Math.floor(e.canvasInnerHeight/e.minimapLineHeight),B=Math.floor(e.paddingTop/e.lineHeight);return new aM(u,d,P,M,N,E,B,1,Math.min(l,O))}let _;if(a&&r!==l){const R=r-n+1;_=Math.floor(R*p/f)}else{const R=o/m;_=Math.floor(R*p/f)}const b=Math.floor(e.paddingTop/m);let y=Math.floor(e.paddingBottom/m);if(e.scrollBeyondLastLine){const R=o/m;y=Math.max(y,R-1)}let x;if(y>0){const R=o/m;x=(b+l+y-R-1)*p/f}else x=Math.max(0,(b+l)*p/f-_);x=Math.min(e.minimapHeight-_,x);const k=x/(d-o),D=u*k;if(g>=b+l+y){const R=x>0;return new aM(u,d,R,k,D,_,b,1,l)}else{let R;n>1?R=n+b:R=Math.max(1,u/m);let E,A=Math.max(1,Math.floor(R-D*f/p));Au&&(A=Math.min(A,h.startLineNumber),E=Math.max(E,h.topPaddingLineCount)),h.scrollTop=e.paddingTop?P=(n-A+E+N)*p/f:P=u/e.paddingTop*(E+N)*p/f,new aM(u,d,!0,k,P,_,E,A,M)}}}class s7{constructor(e){this.dy=e}onContentChanged(){this.dy=-1}onTokensChanged(){this.dy=-1}}s7.INVALID=new s7(-1);class Ege{constructor(e,n,r){this.renderedLayout=e,this._imageData=n,this._renderedLines=new WIe(()=>s7.INVALID),this._renderedLines._set(e.startLineNumber,r)}linesEquals(e){if(!this.scrollEquals(e))return!1;const r=this._renderedLines._get().lines;for(let s=0,o=r.length;s1){for(let b=0,y=s-1;b0&&this.minimapLines[r-1]>=e;)r--;let s=this.modelLineToMinimapLine(n)-1;for(;s+1n)return null}return[r+1,s+1]}decorationLineRangeToMinimapLineRange(e,n){let r=this.modelLineToMinimapLine(e),s=this.modelLineToMinimapLine(n);return e!==n&&s===r&&(s===this.minimapLines.length?r>1&&r--:s++),[r,s]}onLinesDeleted(e){const n=e.toLineNumber-e.fromLineNumber+1;let r=this.minimapLines.length,s=0;for(let o=this.minimapLines.length-1;o>=0&&!(this.minimapLines[o]=0&&!(this.minimapLines[r]0,scrollWidth:e.scrollWidth,scrollHeight:e.scrollHeight,viewportStartLineNumber:n,viewportEndLineNumber:r,viewportStartLineNumberVerticalOffset:e.getVerticalOffsetForLineNumber(n),scrollTop:e.scrollTop,scrollLeft:e.scrollLeft,viewportWidth:e.viewportWidth,viewportHeight:e.viewportHeight};this._actual.render(s)}_recreateLineSampling(){this._minimapSelections=null;const e=!!this._samplingState,[n,r]=RP.compute(this.options,this._context.viewModel.getLineCount(),this._samplingState);if(this._samplingState=n,e&&this._samplingState)for(const s of r)switch(s.type){case"deleted":this._actual.onLinesDeleted(s.deleteFromLineNumber,s.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(s.insertFromLineNumber,s.insertToLineNumber);break;case"flush":this._actual.onFlushed();break}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.viewModel.getLineCount()}getRealLineCount(){return this._context.viewModel.getLineCount()}getLineContent(e){return this._samplingState?this._context.viewModel.getLineContent(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineContent(e)}getLineMaxColumn(e){return this._samplingState?this._context.viewModel.getLineMaxColumn(this._samplingState.minimapLines[e-1]):this._context.viewModel.getLineMaxColumn(e)}getMinimapLinesRenderingData(e,n,r){if(this._samplingState){const s=[];for(let o=0,a=n-e+1;o{if(r.preventDefault(),this._model.options.renderMinimap===0||!this._lastRenderData)return;if(this._model.options.size!=="proportional"){if(r.button===0&&this._lastRenderData){const u=no(this._slider.domNode),d=u.top+u.height/2;this._startSliderDragging(r,d,this._lastRenderData.renderedLayout)}return}const o=this._model.options.minimapLineHeight,a=this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*r.offsetY;let c=Math.floor(a/o)+this._lastRenderData.renderedLayout.startLineNumber-this._lastRenderData.renderedLayout.topPaddingLineCount;c=Math.min(c,this._model.getLineCount()),this._model.revealLineNumber(c)}),this._sliderPointerMoveMonitor=new $I,this._sliderPointerDownListener=As(this._slider.domNode,ht.POINTER_DOWN,r=>{r.preventDefault(),r.stopPropagation(),r.button===0&&this._lastRenderData&&this._startSliderDragging(r,r.pageY,this._lastRenderData.renderedLayout)}),this._gestureDisposable=or.addTarget(this._domNode.domNode),this._sliderTouchStartListener=Be(this._domNode.domNode,lr.Start,r=>{r.preventDefault(),r.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(r))},{passive:!1}),this._sliderTouchMoveListener=Be(this._domNode.domNode,lr.Change,r=>{r.preventDefault(),r.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(r)},{passive:!1}),this._sliderTouchEndListener=As(this._domNode.domNode,lr.End,r=>{r.preventDefault(),r.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_startSliderDragging(e,n,r){if(!e.target||!(e.target instanceof Element))return;const s=e.pageX;this._slider.toggleClassName("active",!0);const o=(a,l)=>{const c=no(this._domNode.domNode),u=Math.min(Math.abs(l-s),Math.abs(l-c.left),Math.abs(l-c.left-c.width));if(Aa&&u>Zpt){this._model.setScrollTop(r.scrollTop);return}const d=a-n;this._model.setScrollTop(r.getDesiredScrollTopFromDelta(d))};e.pageY!==n&&o(e.pageY,s),this._sliderPointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,a=>o(a.pageY,a.pageX),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(e){const n=this._domNode.domNode.getBoundingClientRect().top,r=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(e.pageY-n);this._model.setScrollTop(r)}dispose(){this._pointerDownListener.dispose(),this._sliderPointerMoveMonitor.dispose(),this._sliderPointerDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){const e=["minimap"];return this._model.options.showSlider==="always"?e.push("slider-always"):e.push("slider-mouseover"),this._model.options.autohide&&e.push("autohide"),e.join(" ")}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return this._buffers||this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new Eoe(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(e,n){return this._lastRenderData?this._lastRenderData.onLinesChanged(e,n):!1}onLinesDeleted(e,n){var r;return(r=this._lastRenderData)===null||r===void 0||r.onLinesDeleted(e,n),!0}onLinesInserted(e,n){var r;return(r=this._lastRenderData)===null||r===void 0||r.onLinesInserted(e,n),!0}onScrollChanged(){return this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(dge),this._renderDecorations=!0,!0}onTokensChanged(e){return this._lastRenderData?this._lastRenderData.onTokensChanged(e):!1}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(e){if(this._model.options.renderMinimap===0){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}e.scrollLeft+e.viewportWidth>=e.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");const r=aM.create(this._model.options,e.viewportStartLineNumber,e.viewportEndLineNumber,e.viewportStartLineNumberVerticalOffset,e.viewportHeight,e.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),e.scrollTop,e.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(r.sliderNeeded?"block":"none"),this._slider.setTop(r.sliderTop),this._slider.setHeight(r.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(r.sliderHeight),this.renderDecorations(r),this._lastRenderData=this.renderLines(r)}renderDecorations(e){if(this._renderDecorations){this._renderDecorations=!1;const n=this._model.getSelections();n.sort(J.compareRangesUsingStarts);const r=this._model.getMinimapDecorationsInViewport(e.startLineNumber,e.endLineNumber);r.sort((f,p)=>(f.options.zIndex||0)-(p.options.zIndex||0));const{canvasInnerWidth:s,canvasInnerHeight:o}=this._model.options,a=this._model.options.minimapLineHeight,l=this._model.options.minimapCharWidth,c=this._model.getOptions().tabSize,u=this._decorationsCanvas.domNode.getContext("2d");u.clearRect(0,0,s,o);const d=new Ige(e.startLineNumber,e.endLineNumber,!1);this._renderSelectionLineHighlights(u,n,d,e,a),this._renderDecorationsLineHighlights(u,r,d,e,a);const h=new Ige(e.startLineNumber,e.endLineNumber,null);this._renderSelectionsHighlights(u,n,h,e,a,c,l,s),this._renderDecorationsHighlights(u,r,h,e,a,c,l,s)}}_renderSelectionLineHighlights(e,n,r,s,o){if(!this._selectionColor||this._selectionColor.isTransparent())return;e.fillStyle=this._selectionColor.transparent(.5).toString();let a=0,l=0;for(const c of n){const u=s.intersectWithViewport(c);if(!u)continue;const[d,h]=u;for(let g=d;g<=h;g++)r.set(g,!0);const f=s.getYForLineNumber(d,o),p=s.getYForLineNumber(h,o);l>=f||(l>a&&e.fillRect(qb,a,e.canvas.width,l-a),a=f),l=p}l>a&&e.fillRect(qb,a,e.canvas.width,l-a)}_renderDecorationsLineHighlights(e,n,r,s,o){const a=new Map;for(let l=n.length-1;l>=0;l--){const c=n[l],u=c.options.minimap;if(!u||u.position!==ou.Inline)continue;const d=s.intersectWithViewport(c.range);if(!d)continue;const[h,f]=d,p=u.getColor(this._theme.value);if(!p||p.isTransparent())continue;let g=a.get(p.toString());g||(g=p.transparent(.5).toString(),a.set(p.toString(),g)),e.fillStyle=g;for(let m=h;m<=f;m++){if(r.has(m))continue;r.set(m,!0);const _=s.getYForLineNumber(h,o);e.fillRect(qb,_,e.canvas.width,o)}}}_renderSelectionsHighlights(e,n,r,s,o,a,l,c){if(!(!this._selectionColor||this._selectionColor.isTransparent()))for(const u of n){const d=s.intersectWithViewport(u);if(!d)continue;const[h,f]=d;for(let p=h;p<=f;p++)this.renderDecorationOnLine(e,r,u,this._selectionColor,s,p,o,o,a,l,c)}}_renderDecorationsHighlights(e,n,r,s,o,a,l,c){for(const u of n){const d=u.options.minimap;if(!d)continue;const h=s.intersectWithViewport(u.range);if(!h)continue;const[f,p]=h,g=d.getColor(this._theme.value);if(!(!g||g.isTransparent()))for(let m=f;m<=p;m++)switch(d.position){case ou.Inline:this.renderDecorationOnLine(e,r,u.range,g,s,m,o,o,a,l,c);continue;case ou.Gutter:{const _=s.getYForLineNumber(m,o);this.renderDecoration(e,g,2,_,Qpt,o);continue}}}}renderDecorationOnLine(e,n,r,s,o,a,l,c,u,d,h){const f=o.getYForLineNumber(a,c);if(f+l<0||f>this._model.options.canvasInnerHeight)return;const{startLineNumber:p,endLineNumber:g}=r,m=p===a?r.startColumn:1,_=g===a?r.endColumn:this._model.getLineMaxColumn(a),b=this.getXOffsetForPosition(n,a,m,u,d,h),y=this.getXOffsetForPosition(n,a,_,u,d,h);this.renderDecoration(e,s,b,f,y-b,l)}getXOffsetForPosition(e,n,r,s,o,a){if(r===1)return qb;if((r-1)*o>=a)return a;let c=e.get(n);if(!c){const u=this._model.getLineContent(n);c=[qb];let d=qb;for(let h=1;h=a){c[h]=a;break}c[h]=g,d=g}e.set(n,c)}return r-1D?Math.floor((s-D)/2):0,E=f.a/255,A=new oh(Math.round((f.r-h.r)*E+h.r),Math.round((f.g-h.g)*E+h.g),Math.round((f.b-h.b)*E+h.b),255);let M=e.topPaddingLineCount*s;const N=[];for(let z=0,H=r-n+1;z=0&&Py)return;const O=_.charCodeAt(D);if(O===9){const B=f-(D+R)%f;R+=B-1,k+=B*a}else if(O===32)k+=a;else{const B=d1(O)?2:1;for(let j=0;jy)return}}}}}class Ige{constructor(e,n,r){this._startLineNumber=e,this._endLineNumber=n,this._defaultValue=r,this._values=[];for(let s=0,o=this._endLineNumber-this._startLineNumber+1;sthis._endLineNumber||(this._values[e-this._startLineNumber]=n)}get(e){return ethis._endLineNumber?this._defaultValue:this._values[e-this._startLineNumber]}}class egt extends hu{constructor(e){super(e);const r=this._context.configuration.options.get(143);this._widgets={},this._verticalScrollbarWidth=r.verticalScrollbarWidth,this._minimapWidth=r.minimap.minimapWidth,this._horizontalScrollbarHeight=r.horizontalScrollbarHeight,this._editorHeight=r.height,this._editorWidth=r.width,this._domNode=Di(document.createElement("div")),Ym.write(this._domNode,4),this._domNode.setClassName("overlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(e){const r=this._context.configuration.options.get(143);return this._verticalScrollbarWidth=r.verticalScrollbarWidth,this._minimapWidth=r.minimap.minimapWidth,this._horizontalScrollbarHeight=r.horizontalScrollbarHeight,this._editorHeight=r.height,this._editorWidth=r.width,!0}addWidget(e){const n=Di(e.getDomNode());this._widgets[e.getId()]={widget:e,preference:null,domNode:n},n.setPosition("absolute"),n.setAttribute("widgetId",e.getId()),this._domNode.appendChild(n),this.setShouldRender(),this._updateMaxMinWidth()}setWidgetPosition(e,n){const r=this._widgets[e.getId()];return r.preference===n?(this._updateMaxMinWidth(),!1):(r.preference=n,this.setShouldRender(),this._updateMaxMinWidth(),!0)}removeWidget(e){const n=e.getId();if(this._widgets.hasOwnProperty(n)){const s=this._widgets[n].domNode.domNode;delete this._widgets[n],s.parentNode.removeChild(s),this.setShouldRender(),this._updateMaxMinWidth()}}_updateMaxMinWidth(){var e,n;let r=0;const s=Object.keys(this._widgets);for(let o=0,a=s.length;o=3){const o=Math.floor(s/3),a=Math.floor(s/3),l=s-o-a,c=e,u=c+o,d=c+o+l;return[[0,c,u,c,d,c,u,c],[0,o,l,o+l,a,o+l+a,l+a,o+l+a]]}else if(r===2){const o=Math.floor(s/2),a=s-o,l=e,c=l+o;return[[0,l,l,l,c,l,l,l],[0,o,o,o,a,o+a,o+a,o+a]]}else{const o=e,a=s;return[[0,o,o,o,o,o,o,o],[0,a,a,a,a,a,a,a]]}}equals(e){return this.lineHeight===e.lineHeight&&this.pixelRatio===e.pixelRatio&&this.overviewRulerLanes===e.overviewRulerLanes&&this.renderBorder===e.renderBorder&&this.borderColor===e.borderColor&&this.hideCursor===e.hideCursor&&this.cursorColor===e.cursorColor&&this.themeType===e.themeType&&Te.equals(this.backgroundColor,e.backgroundColor)&&this.top===e.top&&this.right===e.right&&this.domWidth===e.domWidth&&this.domHeight===e.domHeight&&this.canvasWidth===e.canvasWidth&&this.canvasHeight===e.canvasHeight}}class ngt extends hu{constructor(e){super(e),this._actualShouldRender=0,this._renderedDecorations=[],this._renderedCursorPositions=[],this._domNode=Di(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=Zr.onDidChange(n=>{n.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(e){const n=new tgt(this._context.configuration,this._context.theme);return this._settings&&this._settings.equals(n)?!1:(this._settings=n,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,e&&this._render(),!0)}_markRenderingIsNeeded(){return this._actualShouldRender=2,!0}_markRenderingIsMaybeNeeded(){return this._actualShouldRender=1,!0}onConfigurationChanged(e){return this._updateSettings(!1)?this._markRenderingIsNeeded():!1}onCursorStateChanged(e){this._cursorPositions=[];for(let n=0,r=e.selections.length;ng.lineNumber===m.lineNumber)&&(this._actualShouldRender=2),this._actualShouldRender===1)return;this._renderedDecorations=n,this._renderedCursorPositions=this._cursorPositions,this._domNode.setDisplay("block");const r=this._settings.canvasWidth,s=this._settings.canvasHeight,o=this._settings.lineHeight,a=this._context.viewLayout,l=this._context.viewLayout.getScrollHeight(),c=s/l,u=6*this._settings.pixelRatio|0,d=u/2|0,h=this._domNode.domNode.getContext("2d");e?e.isOpaque()?(h.fillStyle=Te.Format.CSS.formatHexA(e),h.fillRect(0,0,r,s)):(h.clearRect(0,0,r,s),h.fillStyle=Te.Format.CSS.formatHexA(e),h.fillRect(0,0,r,s)):h.clearRect(0,0,r,s);const f=this._settings.x,p=this._settings.w;for(const g of n){const m=g.color,_=g.data;h.fillStyle=m;let b=0,y=0,x=0;for(let k=0,D=_.length/3;ks&&(O=s-d),M=O-d,N=O+d}M>x+1||R!==b?(k!==0&&h.fillRect(f[b],y,p[b],x-y),b=R,y=M,x=N):N>x&&(x=N)}h.fillRect(f[b],y,p[b],x-y)}if(!this._settings.hideCursor&&this._settings.cursorColor){const g=2*this._settings.pixelRatio|0,m=g/2|0,_=this._settings.x[7],b=this._settings.w[7];h.fillStyle=this._settings.cursorColor;let y=-100,x=-100;for(let k=0,D=this._cursorPositions.length;ks&&(E=s-m);const A=E-m,M=A+g;A>x+1?(k!==0&&h.fillRect(_,y,b,x-y),y=A,x=M):M>x&&(x=M)}h.fillRect(_,y,b,x-y)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(h.beginPath(),h.lineWidth=1,h.strokeStyle=this._settings.borderColor,h.moveTo(0,0),h.lineTo(0,s),h.stroke(),h.moveTo(0,0),h.lineTo(r,0),h.stroke())}}class Tge{constructor(e,n,r){this._colorZoneBrand=void 0,this.from=e|0,this.to=n|0,this.colorId=r|0}static compare(e,n){return e.colorId===n.colorId?e.from===n.from?e.to-n.to:e.from-n.from:e.colorId-n.colorId}}class KIe{constructor(e,n,r,s){this._overviewRulerZoneBrand=void 0,this.startLineNumber=e,this.endLineNumber=n,this.heightInLines=r,this.color=s,this._colorZone=null}static compare(e,n){return e.color===n.color?e.startLineNumber===n.startLineNumber?e.heightInLines===n.heightInLines?e.endLineNumber-n.endLineNumber:e.heightInLines-n.heightInLines:e.startLineNumber-n.startLineNumber:e.colorr&&(m=r-_);const b=d.color;let y=this._color2Id[b];y||(y=++this._lastAssignedId,this._color2Id[b]=y,this._id2Color[y]=b);const x=new Tge(m-_,m+_,y);d.setColorZone(x),l.push(x)}return this._colorZonesInvalid=!1,l.sort(Tge.compare),l}}class rgt extends N5{constructor(e,n){super(),this._context=e;const r=this._context.configuration.options;this._domNode=Di(document.createElement("canvas")),this._domNode.setClassName(n),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new igt(s=>this._context.viewLayout.getVerticalOffsetForLineNumber(s)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(r.get(66)),this._zoneManager.setPixelRatio(r.get(141)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(e){const n=this._context.configuration.options;return e.hasChanged(66)&&(this._zoneManager.setLineHeight(n.get(66)),this._render()),e.hasChanged(141)&&(this._zoneManager.setPixelRatio(n.get(141)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(e){return this._render(),!0}onScrollChanged(e){return e.scrollHeightChanged&&(this._zoneManager.setOuterHeight(e.scrollHeight),this._render()),!0}onZonesChanged(e){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(e){this._domNode.setTop(e.top),this._domNode.setRight(e.right);let n=!1;n=this._zoneManager.setDOMWidth(e.width)||n,n=this._zoneManager.setDOMHeight(e.height)||n,n&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(e){this._zoneManager.setZones(e),this._render()}_render(){if(this._zoneManager.getOuterHeight()===0)return!1;const e=this._zoneManager.getCanvasWidth(),n=this._zoneManager.getCanvasHeight(),r=this._zoneManager.resolveColorZones(),s=this._zoneManager.getId2Color(),o=this._domNode.domNode.getContext("2d");return o.clearRect(0,0,e,n),r.length>0&&this._renderOneLane(o,r,s,e),!0}_renderOneLane(e,n,r,s){let o=0,a=0,l=0;for(const c of n){const u=c.colorId,d=c.from,h=c.to;u!==o?(e.fillRect(0,a,s,l-a),o=u,e.fillStyle=r[o],a=d,l=h):l>=d?l=Math.max(l,h):(e.fillRect(0,a,s,l-a),a=d,l=h)}e.fillRect(0,a,s,l-a)}}class sgt extends hu{constructor(e){super(e),this.domNode=Di(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const n=this._context.configuration.options;this._rulers=n.get(101),this._typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(e){const n=this._context.configuration.options;return this._rulers=n.get(101),this._typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,!0}onScrollChanged(e){return e.scrollHeightChanged}prepareRender(e){}_ensureRulersCount(){const e=this._renderedRulers.length,n=this._rulers.length;if(e===n)return;if(e0;){const l=Di(document.createElement("div"));l.setClassName("view-ruler"),l.setWidth(o),this.domNode.appendChild(l),this._renderedRulers.push(l),a--}return}let r=e-n;for(;r>0;){const s=this._renderedRulers.pop();this.domNode.removeChild(s),r--}}render(e){this._ensureRulersCount();for(let n=0,r=this._rulers.length;n0;return this._shouldShow!==e?(this._shouldShow=e,!0):!1}getDomNode(){return this._domNode}_updateWidth(){const n=this._context.configuration.options.get(143);n.minimap.renderMinimap===0||n.minimap.minimapWidth>0&&n.minimap.minimapLeft===0?this._width=n.width:this._width=n.width-n.verticalScrollbarWidth}onConfigurationChanged(e){const r=this._context.configuration.options.get(102);return this._useShadows=r.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(e){return this._scrollTop=e.scrollTop,this._updateShouldShow()}prepareRender(e){}render(e){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}class agt{constructor(e){this.left=e.left,this.width=e.width,this.startStyle=null,this.endStyle=null}}class lgt{constructor(e,n){this.lineNumber=e,this.ranges=n}}function cgt(i){return new agt(i)}function ugt(i){return new lgt(i.lineNumber,i.ranges.map(cgt))}class gs extends Zx{constructor(e){super(),this._previousFrameVisibleRangesWithStyle=[],this._context=e;const n=this._context.configuration.options;this._lineHeight=n.get(66),this._roundedSelection=n.get(100),this._typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){const n=this._context.configuration.options;return this._lineHeight=n.get(66),this._roundedSelection=n.get(100),this._typicalHalfwidthCharacterWidth=n.get(50).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(e){return this._selections=e.selections.slice(0),!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}_visibleRangesHaveGaps(e){for(let n=0,r=e.length;n1)return!0;return!1}_enrichVisibleRangesWithStyle(e,n,r){const s=this._typicalHalfwidthCharacterWidth/4;let o=null,a=null;if(r&&r.length>0&&n.length>0){const l=n[0].lineNumber;if(l===e.startLineNumber)for(let u=0;!o&&u=0;u--)r[u].lineNumber===c&&(a=r[u].ranges[0]);o&&!o.startStyle&&(o=null),a&&!a.startStyle&&(a=null)}for(let l=0,c=n.length;l0){const g=n[l-1].ranges[0].left,m=n[l-1].ranges[0].left+n[l-1].ranges[0].width;J3(d-g)g&&(f.top=1),J3(h-m)'}_actualRenderOneSelection(e,n,r,s){if(s.length===0)return;const o=!!s[0].ranges[0].startStyle,a=this._lineHeight.toString(),l=(this._lineHeight-1).toString(),c=s[0].lineNumber,u=s[s.length-1].lineNumber;for(let d=0,h=s.length;d1,u)}this._previousFrameVisibleRangesWithStyle=o,this._renderResult=n.map(([a,l])=>a+l)}render(e,n){if(!this._renderResult)return"";const r=n-e;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}gs.SELECTION_CLASS_NAME="selected-text";gs.SELECTION_TOP_LEFT="top-left-radius";gs.SELECTION_BOTTOM_LEFT="bottom-left-radius";gs.SELECTION_TOP_RIGHT="top-right-radius";gs.SELECTION_BOTTOM_RIGHT="bottom-right-radius";gs.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background";gs.ROUNDED_PIECE_WIDTH=10;Of((i,e)=>{const n=i.getColor(jdt);n&&!n.isTransparent()&&e.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${n}; }`)});function J3(i){return i<0?-i:i}class Rge{constructor(e,n,r,s,o,a,l){this.top=e,this.left=n,this.paddingLeft=r,this.width=s,this.height=o,this.textContent=a,this.textContentClassName=l}}class Age{constructor(e){this._context=e;const n=this._context.configuration.options,r=n.get(50);this._cursorStyle=n.get(28),this._lineHeight=n.get(66),this._typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(n.get(31),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=Di(document.createElement("div")),this._domNode.setClassName(`cursor ${q2}`),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),Ta(this._domNode,r),this._domNode.setDisplay("none"),this._position=new ve(1,1),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(e){const n=this._context.configuration.options,r=n.get(50);return this._cursorStyle=n.get(28),this._lineHeight=n.get(66),this._typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(n.get(31),this._typicalHalfwidthCharacterWidth),Ta(this._domNode,r),!0}onCursorPositionChanged(e,n){return n?this._domNode.domNode.style.transitionProperty="none":this._domNode.domNode.style.transitionProperty="",this._position=e,!0}_getGraphemeAwarePosition(){const{lineNumber:e,column:n}=this._position,r=this._context.viewModel.getLineContent(e),[s,o]=Lot(r,n-1);return[new ve(e,s+1),r.substring(s,o)]}_prepareRender(e){let n="",r="";const[s,o]=this._getGraphemeAwarePosition();if(this._cursorStyle===na.Line||this._cursorStyle===na.LineThin){const f=e.visibleRangeForPosition(s);if(!f||f.outsideRenderedLine)return null;let p;this._cursorStyle===na.Line?(p=upe(this._lineCursorWidth>0?this._lineCursorWidth:2),p>2&&(n=o,r=this._getTokenClassName(s))):p=upe(1);let g=f.left,m=0;p>=2&&g>=1&&(m=1,g-=m);const _=e.getVerticalOffsetForLineNumber(s.lineNumber)-e.bigNumbersDelta;return new Rge(_,g,m,p,this._lineHeight,n,r)}const a=e.linesVisibleRangesForRange(new J(s.lineNumber,s.column,s.lineNumber,s.column+o.length),!1);if(!a||a.length===0)return null;const l=a[0];if(l.outsideRenderedLine||l.ranges.length===0)return null;const c=l.ranges[0],u=o===" "?this._typicalHalfwidthCharacterWidth:c.width<1?this._typicalHalfwidthCharacterWidth:c.width;this._cursorStyle===na.Block&&(n=o,r=this._getTokenClassName(s));let d=e.getVerticalOffsetForLineNumber(s.lineNumber)-e.bigNumbersDelta,h=this._lineHeight;return(this._cursorStyle===na.Underline||this._cursorStyle===na.UnderlineThin)&&(d+=this._lineHeight-2,h=2),new Rge(d,c.left,0,u,h,n,r)}_getTokenClassName(e){const n=this._context.viewModel.getViewLineData(e.lineNumber),r=n.tokens.findTokenIndexAtOffset(e.column-1);return n.tokens.getClassName(r)}prepareRender(e){this._renderData=this._prepareRender(e)}render(e){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${q2} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setPaddingLeft(this._renderData.paddingLeft),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}class AP extends hu{constructor(e){super(e);const n=this._context.configuration.options;this._readOnly=n.get(90),this._cursorBlinking=n.get(26),this._cursorStyle=n.get(28),this._cursorSmoothCaretAnimation=n.get(27),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new Age(this._context),this._secondaryCursors=[],this._renderData=[],this._domNode=Di(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new Mf,this._cursorFlatBlinkInterval=new D5,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(e){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(e){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(e){const n=this._context.configuration.options;this._readOnly=n.get(90),this._cursorBlinking=n.get(26),this._cursorStyle=n.get(28),this._cursorSmoothCaretAnimation=n.get(27),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(e);for(let r=0,s=this._secondaryCursors.length;rn.length){const o=this._secondaryCursors.length-n.length;for(let a=0;a{for(let s=0,o=e.ranges.length;s{this._isVisible?this._hide():this._show()},AP.BLINK_INTERVAL):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},AP.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let e="cursors-layer";switch(this._selectionIsEmpty||(e+=" has-selection"),this._cursorStyle){case na.Line:e+=" cursor-line-style";break;case na.Block:e+=" cursor-block-style";break;case na.Underline:e+=" cursor-underline-style";break;case na.LineThin:e+=" cursor-line-thin-style";break;case na.BlockOutline:e+=" cursor-block-outline-style";break;case na.UnderlineThin:e+=" cursor-underline-thin-style";break;default:e+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:e+=" cursor-blink";break;case 2:e+=" cursor-smooth";break;case 3:e+=" cursor-phase";break;case 4:e+=" cursor-expand";break;case 5:e+=" cursor-solid";break;default:e+=" cursor-solid"}else e+=" cursor-solid";return(this._cursorSmoothCaretAnimation==="on"||this._cursorSmoothCaretAnimation==="explicit")&&(e+=" cursor-smooth-caret-animation"),e}_show(){this._primaryCursor.show();for(let e=0,n=this._secondaryCursors.length;e{const n=i.getColor(IIe);if(n){let r=i.getColor(Dft);r||(r=n.opposite()),e.addRule(`.monaco-editor .cursors-layer .cursor { background-color: ${n}; border-color: ${n}; color: ${r}; }`),Vp(i.type)&&e.addRule(`.monaco-editor .cursors-layer.has-selection .cursor { border-left: 1px solid ${r}; border-right: 1px solid ${r}; }`)}});const Sq=()=>{throw new Error("Invalid change accessor")};class dgt extends hu{constructor(e){super(e);const n=this._context.configuration.options,r=n.get(143);this._lineHeight=n.get(66),this._contentWidth=r.contentWidth,this._contentLeft=r.contentLeft,this.domNode=Di(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=Di(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){const e=this._context.viewLayout.getWhitespaces(),n=new Map;for(const s of e)n.set(s.id,s);let r=!1;return this._context.viewModel.changeWhitespace(s=>{const o=Object.keys(this._zones);for(let a=0,l=o.length;a{const s={addZone:o=>(n=!0,this._addZone(r,o)),removeZone:o=>{o&&(n=this._removeZone(r,o)||n)},layoutZone:o=>{o&&(n=this._layoutZone(r,o)||n)}};hgt(e,s),s.addZone=Sq,s.removeZone=Sq,s.layoutZone=Sq}),n}_addZone(e,n){const r=this._computeWhitespaceProps(n),o={whitespaceId:e.insertWhitespace(r.afterViewLineNumber,this._getZoneOrdinal(n),r.heightInPx,r.minWidthInPx),delegate:n,isInHiddenArea:r.isInHiddenArea,isVisible:!1,domNode:Di(n.domNode),marginDomNode:n.marginDomNode?Di(n.marginDomNode):null};return this._safeCallOnComputedHeight(o.delegate,r.heightInPx),o.domNode.setPosition("absolute"),o.domNode.domNode.style.width="100%",o.domNode.setDisplay("none"),o.domNode.setAttribute("monaco-view-zone",o.whitespaceId),this.domNode.appendChild(o.domNode),o.marginDomNode&&(o.marginDomNode.setPosition("absolute"),o.marginDomNode.domNode.style.width="100%",o.marginDomNode.setDisplay("none"),o.marginDomNode.setAttribute("monaco-view-zone",o.whitespaceId),this.marginDomNode.appendChild(o.marginDomNode)),this._zones[o.whitespaceId]=o,this.setShouldRender(),o.whitespaceId}_removeZone(e,n){if(this._zones.hasOwnProperty(n)){const r=this._zones[n];return delete this._zones[n],e.removeWhitespace(r.whitespaceId),r.domNode.removeAttribute("monaco-visible-view-zone"),r.domNode.removeAttribute("monaco-view-zone"),r.domNode.domNode.parentNode.removeChild(r.domNode.domNode),r.marginDomNode&&(r.marginDomNode.removeAttribute("monaco-visible-view-zone"),r.marginDomNode.removeAttribute("monaco-view-zone"),r.marginDomNode.domNode.parentNode.removeChild(r.marginDomNode.domNode)),this.setShouldRender(),!0}return!1}_layoutZone(e,n){if(this._zones.hasOwnProperty(n)){const r=this._zones[n],s=this._computeWhitespaceProps(r.delegate);return r.isInHiddenArea=s.isInHiddenArea,e.changeOneWhitespace(r.whitespaceId,s.afterViewLineNumber,s.heightInPx),this._safeCallOnComputedHeight(r.delegate,s.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(e){return this._zones.hasOwnProperty(e)?!!this._zones[e].delegate.suppressMouseDown:!1}_heightInPixels(e){return typeof e.heightInPx=="number"?e.heightInPx:typeof e.heightInLines=="number"?this._lineHeight*e.heightInLines:this._lineHeight}_minWidthInPixels(e){return typeof e.minWidthInPx=="number"?e.minWidthInPx:0}_safeCallOnComputedHeight(e,n){if(typeof e.onComputedHeight=="function")try{e.onComputedHeight(n)}catch(r){Ln(r)}}_safeCallOnDomNodeTop(e,n){if(typeof e.onDomNodeTop=="function")try{e.onDomNodeTop(n)}catch(r){Ln(r)}}prepareRender(e){}render(e){const n=e.viewportData.whitespaceViewportData,r={};let s=!1;for(const a of n)this._zones[a.id].isInHiddenArea||(r[a.id]=a,s=!0);const o=Object.keys(this._zones);for(let a=0,l=o.length;al)continue;const p=f.startLineNumber===l?f.startColumn:u.minColumn,g=f.endLineNumber===l?f.endColumn:u.maxColumn;p=N.endOffset&&(M++,N=r&&r[M]),B!==9&&B!==32||f&&!R&&O<=A)continue;if(h&&O>=E&&O<=A&&B===32){const z=O-1>=0?l.charCodeAt(O-1):0,H=O+1=0?l.charCodeAt(O-1):0;if(B===32&&z!==32&&z!==9)continue}if(r&&(!N||N.startOffset>O||N.endOffset<=O))continue;const j=e.visibleRangeForPosition(new ve(n,O+1));j&&(a?(P=Math.max(P,j.left),B===9?D+=this._renderArrow(p,_,j.left):D+=``):B===9?D+=`
${k?"→":"→"}
`:D+=`
${String.fromCharCode(x)}
`)}return a?(P=Math.round(P+_),``+D+""):D}_renderArrow(e,n,r){const s=n/7,o=n,a=e/2,l=r,c={x:0,y:s/2},u={x:100/125*o,y:c.y},d={x:u.x-.2*u.x,y:u.y+.2*u.x},h={x:d.x+.1*u.x,y:d.y+.1*u.x},f={x:h.x+.35*u.x,y:h.y-.35*u.x},p={x:f.x,y:-f.y},g={x:h.x,y:-h.y},m={x:d.x,y:-d.y},_={x:u.x,y:-u.y},b={x:c.x,y:-c.y};return``}render(e,n){if(!this._renderResult)return"";const r=n-e;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}class Nge{constructor(e){const n=e.options,r=n.get(50),s=n.get(38);s==="off"?(this.renderWhitespace="none",this.renderWithSVG=!1):s==="svg"?(this.renderWhitespace=n.get(98),this.renderWithSVG=!0):(this.renderWhitespace=n.get(98),this.renderWithSVG=!1),this.spaceWidth=r.spaceWidth,this.middotWidth=r.middotWidth,this.wsmiddotWidth=r.wsmiddotWidth,this.canUseHalfwidthRightwardsArrow=r.canUseHalfwidthRightwardsArrow,this.lineHeight=n.get(66),this.stopRenderingLineAfter=n.get(116)}equals(e){return this.renderWhitespace===e.renderWhitespace&&this.renderWithSVG===e.renderWithSVG&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.lineHeight===e.lineHeight&&this.stopRenderingLineAfter===e.stopRenderingLineAfter}}var vgt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},bgt=function(i,e){return function(n,r){e(n,r,i)}};let FJ=class extends N5{constructor(e,n,r,s,o,a,l){super(),this._instantiationService=l,this._shouldRecomputeGlyphMarginLanes=!1,this._selections=[new Ft(1,1,1,1)],this._renderAnimationFrame=null;const c=new Lpt(n,s,o,e);this._context=new pgt(n,r,s),this._context.addEventHandler(this),this._viewParts=[],this._textAreaHandler=this._instantiationService.createInstance(MJ,this._context,c,this._createTextAreaHandlerHelper()),this._viewParts.push(this._textAreaHandler),this._linesContent=Di(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=Di(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),this._overflowGuardContainer=Di(document.createElement("div")),Ym.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._scrollbar=new Ppt(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new N$(this._context,this._linesContent),this._viewZones=new dgt(this._context),this._viewParts.push(this._viewZones);const u=new ngt(this._context);this._viewParts.push(u);const d=new ogt(this._context);this._viewParts.push(d);const h=new Ept(this._context);this._viewParts.push(h),h.addDynamicOverlay(new Apt(this._context)),h.addDynamicOverlay(new gs(this._context)),h.addDynamicOverlay(new Fpt(this._context)),h.addDynamicOverlay(new Mpt(this._context)),h.addDynamicOverlay(new _gt(this._context));const f=new Ipt(this._context);this._viewParts.push(f),f.addDynamicOverlay(new Npt(this._context)),f.addDynamicOverlay(new Gpt(this._context)),f.addDynamicOverlay(new Kpt(this._context)),f.addDynamicOverlay(new B5(this._context)),this._glyphMarginWidgets=new Vpt(this._context),this._viewParts.push(this._glyphMarginWidgets);const p=new hx(this._context);p.getDomNode().appendChild(this._viewZones.marginDomNode),p.getDomNode().appendChild(f.getDomNode()),p.getDomNode().appendChild(this._glyphMarginWidgets.domNode),this._viewParts.push(p),this._contentWidgets=new Tpt(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new AP(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new egt(this._context),this._viewParts.push(this._overlayWidgets);const g=new sgt(this._context);this._viewParts.push(g);const m=new mgt(this._context);this._viewParts.push(m);const _=new Jpt(this._context);if(this._viewParts.push(_),u){const b=this._scrollbar.getOverviewRulerLayoutInfo();b.parent.insertBefore(u.getDomNode(),b.insertBefore)}this._linesContent.appendChild(h.getDomNode()),this._linesContent.appendChild(g.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(p.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._overflowGuardContainer.appendChild(d.getDomNode()),this._overflowGuardContainer.appendChild(this._textAreaHandler.textArea),this._overflowGuardContainer.appendChild(this._textAreaHandler.textAreaCover),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(_.getDomNode()),this._overflowGuardContainer.appendChild(m.domNode),this.domNode.appendChild(this._overflowGuardContainer),a?a.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode):this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this._applyLayout(),this._pointerHandler=this._register(new xft(this._context,c,this._createPointerHandlerHelper()))}_flushAccumulatedAndRenderNow(){this._shouldRecomputeGlyphMarginLanes&&(this._shouldRecomputeGlyphMarginLanes=!1,this._context.configuration.setGlyphMarginDecorationLaneCount(this._computeGlyphMarginLaneCount())),yy.onRenderStart(),this._renderNow()}_computeGlyphMarginLaneCount(){const e=this._context.viewModel.model;let n=[];n=n.concat(e.getAllMarginDecorations().map(o=>{var a,l;const c=(l=(a=o.options.glyphMargin)===null||a===void 0?void 0:a.position)!==null&&l!==void 0?l:z2.Left;return{range:o.range,lane:c}})),n=n.concat(this._glyphMarginWidgets.getWidgets().map(o=>({range:e.validateRange(o.preference.range),lane:o.preference.lane}))),n.sort((o,a)=>J.compareRangesUsingStarts(o.range,a.range));let r=null,s=null;for(const o of n)if(o.lane===z2.Left&&(!r||J.compareRangesUsingEnds(r,o.range)<0)&&(r=o.range),o.lane===z2.Right&&(!s||J.compareRangesUsingEnds(s,o.range)<0)&&(s=o.range),r&&s){if(r.endLineNumber{this.focus()},dispatchTextAreaEvent:e=>{this._textAreaHandler.textArea.domNode.dispatchEvent(e)},getLastRenderData:()=>{const e=this._viewCursors.getLastRenderData()||[],n=this._textAreaHandler.getLastRenderData();return new tft(e,n)},renderNow:()=>{this.render(!0,!1)},shouldSuppressMouseDownOnViewZone:e=>this._viewZones.shouldSuppressMouseDownOnViewZone(e),shouldSuppressMouseDownOnWidget:e=>this._contentWidgets.shouldSuppressMouseDownOnWidget(e),getPositionFromDOMInfo:(e,n)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(e,n)),visibleRangeForPosition:(e,n)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(new ve(e,n))),getLineWidth:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getLineWidth(e))}}_createTextAreaHandlerHelper(){return{visibleRangeForPosition:e=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(e))}}_applyLayout(){const n=this._context.configuration.options.get(143);this.domNode.setWidth(n.width),this.domNode.setHeight(n.height),this._overflowGuardContainer.setWidth(n.width),this._overflowGuardContainer.setHeight(n.height),this._linesContent.setWidth(1e6),this._linesContent.setHeight(1e6)}_getEditorClassName(){const e=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(140)+" "+NJ(this._context.theme.type)+e}handleEvents(e){super.handleEvents(e),this._scheduleRender()}onConfigurationChanged(e){return this.domNode.setClassName(this._getEditorClassName()),this._applyLayout(),!1}onCursorStateChanged(e){return this._selections=e.selections,!1}onDecorationsChanged(e){return e.affectsGlyphMargin&&(this._shouldRecomputeGlyphMarginLanes=!0),!1}onFocusChanged(e){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(e){return this._context.theme.update(e.theme),this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){this._renderAnimationFrame!==null&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewLines.dispose();for(const e of this._viewParts)e.dispose();super.dispose()}_scheduleRender(){this._renderAnimationFrame===null&&(this._renderAnimationFrame=W9(this._onRenderScheduled.bind(this),100))}_onRenderScheduled(){this._renderAnimationFrame=null,this._flushAccumulatedAndRenderNow()}_renderNow(){ygt(()=>this._actualRender())}_getViewPartsToRender(){const e=[];let n=0;for(const r of this._viewParts)r.shouldRender()&&(e[n++]=r);return e}_actualRender(){if(!Zse(this.domNode.domNode))return;let e=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&e.length===0)return;const n=this._context.viewLayout.getLinesViewportData();this._context.viewModel.setViewport(n.startLineNumber,n.endLineNumber,n.centeredLineNumber);const r=new ggt(this._selections,n,this._context.viewLayout.getWhitespaceViewportData(),this._context.viewModel);this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(r),this._viewLines.shouldRender()&&(this._viewLines.renderText(r),this._viewLines.onDidRender(),e=this._getViewPartsToRender());const s=new Ght(this._context.viewLayout,r,this._viewLines);for(const o of e)o.prepareRender(s);for(const o of e)o.render(s),o.onDidRender()}delegateVerticalScrollbarPointerDown(e){this._scrollbar.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){this._scrollbar.delegateScrollFromMouseWheelEvent(e)}restoreState(e){this._context.viewModel.viewLayout.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft},1),this._context.viewModel.visibleLinesStabilized()}getOffsetForColumn(e,n){const r=this._context.viewModel.model.validatePosition({lineNumber:e,column:n}),s=this._context.viewModel.coordinatesConverter.convertModelPositionToViewPosition(r);this._flushAccumulatedAndRenderNow();const o=this._viewLines.visibleRangeForPosition(new ve(s.lineNumber,s.column));return o?o.left:-1}getTargetAtClientPoint(e,n){const r=this._pointerHandler.getTargetAtClientPoint(e,n);return r?R$.convertViewToModelMouseTarget(r,this._context.viewModel.coordinatesConverter):null}createOverviewRuler(e){return new rgt(this._context,e)}change(e){this._viewZones.changeViewZones(e),this._scheduleRender()}render(e,n){if(n){this._viewLines.forceShouldRender();for(const r of this._viewParts)r.forceShouldRender()}e?this._flushAccumulatedAndRenderNow():this._scheduleRender()}writeScreenReaderContent(e){this._textAreaHandler.writeScreenReaderContent(e)}focus(){this._textAreaHandler.focusTextArea()}isFocused(){return this._textAreaHandler.isFocused()}setAriaOptions(e){this._textAreaHandler.setAriaOptions(e)}addContentWidget(e){this._contentWidgets.addWidget(e.widget),this.layoutContentWidget(e),this._scheduleRender()}layoutContentWidget(e){var n,r,s,o,a,l,c,u;this._contentWidgets.setWidgetPosition(e.widget,(r=(n=e.position)===null||n===void 0?void 0:n.position)!==null&&r!==void 0?r:null,(o=(s=e.position)===null||s===void 0?void 0:s.secondaryPosition)!==null&&o!==void 0?o:null,(l=(a=e.position)===null||a===void 0?void 0:a.preference)!==null&&l!==void 0?l:null,(u=(c=e.position)===null||c===void 0?void 0:c.positionAffinity)!==null&&u!==void 0?u:null),this._scheduleRender()}removeContentWidget(e){this._contentWidgets.removeWidget(e.widget),this._scheduleRender()}addOverlayWidget(e){this._overlayWidgets.addWidget(e.widget),this.layoutOverlayWidget(e),this._scheduleRender()}layoutOverlayWidget(e){const n=e.position?e.position.preference:null;this._overlayWidgets.setWidgetPosition(e.widget,n)&&this._scheduleRender()}removeOverlayWidget(e){this._overlayWidgets.removeWidget(e.widget),this._scheduleRender()}addGlyphMarginWidget(e){this._glyphMarginWidgets.addWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}layoutGlyphMarginWidget(e){const n=e.position;this._glyphMarginWidgets.setWidgetPosition(e.widget,n)&&(this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender())}removeGlyphMarginWidget(e){this._glyphMarginWidgets.removeWidget(e.widget),this._shouldRecomputeGlyphMarginLanes=!0,this._scheduleRender()}};FJ=vgt([bgt(6,hn)],FJ);function ygt(i){try{return i()}catch(e){Ln(e)}}class GIe{constructor(e,n,r,s,o,a){this.id=e,this.label=n,this.alias=r,this._precondition=s,this._run=o,this._contextKeyService=a}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(e){return this.isSupported()?this._run(e):Promise.resolve(void 0)}}function y1(i){let e=0,n=0,r=0,s=0;for(let o=0,a=i.length;o=ed&&(n=n-i%ed),n}function kgt(i,e){return i.reduce((n,r)=>Jr(n,e(r)),$l)}function XIe(i,e){return i===e}function MP(i,e){const n=i,r=e;if(r-n<=0)return $l;const o=Math.floor(n/ed),a=Math.floor(r/ed),l=r-a*ed;if(o===a){const c=n-o*ed;return Is(0,l-c)}else return Is(a-o,l)}function X2(i,e){return i=e}function g2(i){return Is(i.lineNumber-1,i.column-1)}function FS(i,e){const n=i,r=Math.floor(n/ed),s=n-r*ed,o=e,a=Math.floor(o/ed),l=o-a*ed;return new J(r+1,s+1,a+1,l+1)}function Lgt(i){const e=Km(i);return Is(e.length-1,e[e.length-1].length)}class rv{static fromModelContentChanges(e){return e.map(r=>{const s=J.lift(r.range);return new rv(g2(s.getStartPosition()),g2(s.getEndPosition()),Lgt(r.text))}).reverse()}constructor(e,n,r){this.startOffset=e,this.endOffset=n,this.newLength=r}toString(){return`[${dh(this.startOffset)}...${dh(this.endOffset)}) -> ${dh(this.newLength)}`}}class Dgt{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map(n=>Ioe.from(n))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);const n=this.edits[this.nextEditIdx],r=n?this.translateOldToCur(n.offsetObj):null;return r===null?null:MP(e,r)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?Is(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):Is(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){const n=dh(e);return n.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?Is(n.lineCount-this.deltaOldToNewLineCount,n.columnCount-this.deltaOldToNewColumnCount):Is(n.lineCount-this.deltaOldToNewLineCount,n.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx>5;if(s===0){const a=1<this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));const e=this.lineIdx,n=this.lineCharOffset;let r=0;for(;;){const o=this.lineTokens,a=o.getCount();let l=null;if(this.lineTokenOffset1e3))break;if(r>1500)break}const s=Sgt(e,n,this.lineIdx,this.lineCharOffset);return new cy(s,0,-1,eo.getEmpty(),new YC(s))}}class Ngt{constructor(e,n){this.text=e,this._offset=$l,this.idx=0;const r=n.getRegExpStr(),s=r?new RegExp(r+`| `,"gi"):null,o=[];let a,l=0,c=0,u=0,d=0;const h=[];for(let g=0;g<60;g++)h.push(new cy(Is(0,g),0,-1,eo.getEmpty(),new YC(Is(0,g))));const f=[];for(let g=0;g<60;g++)f.push(new cy(Is(1,g),0,-1,eo.getEmpty(),new YC(Is(1,g))));if(s)for(s.lastIndex=0;(a=s.exec(e))!==null;){const g=a.index,m=a[0];if(m===` `)l++,c=g+1;else{if(u!==g){let _;if(d===l){const b=g-u;if(bMgt(n)).join("|")}}get regExpGlobal(){if(!this.hasRegExp){const e=this.getRegExpStr();this._regExpGlobal=e?new RegExp(e,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(e){return this.map.get(e.toLowerCase())}findClosingTokenText(e){for(const[n,r]of this.map)if(r.kind===2&&r.bracketIds.intersects(e))return n}get isEmpty(){return this.map.size===0}}function Mgt(i){let e=dd(i);return/^[\w ]+/.test(i)&&(e=`\\b${e}`),/[\w ]+$/.test(i)&&(e=`${e}\\b`),e}class QIe{constructor(e,n){this.denseKeyProvider=e,this.getLanguageConfiguration=n,this.languageIdToBracketTokens=new Map}didLanguageChange(e){return this.languageIdToBracketTokens.has(e)}getSingleLanguageBracketTokens(e){let n=this.languageIdToBracketTokens.get(e);return n||(n=Aoe.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,n)),n}}function Pgt(i){if(i.length===0)return null;if(i.length===1)return i[0];let e=0;function n(){if(e>=i.length)return null;const a=e,l=i[a].listHeight;for(e++;e=2?JIe(a===0&&e===i.length?i:i.slice(a,e),!1):i[a]}let r=n(),s=n();if(!s)return r;for(let a=n();a;a=n())Oge(r,s)<=Oge(s,a)?(r=xq(r,s),s=a):s=xq(s,a);return xq(r,s)}function JIe(i,e=!1){if(i.length===0)return null;if(i.length===1)return i[0];let n=i.length;for(;n>3;){const r=n>>1;for(let s=0;s=3?i[2]:null,e)}function Oge(i,e){return Math.abs(i.listHeight-e.listHeight)}function xq(i,e){return i.listHeight===e.listHeight?Zm.create23(i,e,null,!1):i.listHeight>e.listHeight?Ogt(i,e):Fgt(e,i)}function Ogt(i,e){i=i.toMutable();let n=i;const r=[];let s;for(;;){if(e.listHeight===n.listHeight){s=e;break}if(n.kind!==4)throw new Error("unexpected");r.push(n),n=n.makeLastElementMutable()}for(let o=r.length-1;o>=0;o--){const a=r[o];s?a.childrenLength>=3?s=Zm.create23(a.unappendChild(),s,null,!1):(a.appendChildOfSameHeight(s),s=void 0):a.handleChildrenChanged()}return s?Zm.create23(i,s,null,!1):i}function Fgt(i,e){i=i.toMutable();let n=i;const r=[];for(;e.listHeight!==n.listHeight;){if(n.kind!==4)throw new Error("unexpected");r.push(n),n=n.makeFirstElementMutable()}let s=e;for(let o=r.length-1;o>=0;o--){const a=r[o];s?a.childrenLength>=3?s=Zm.create23(s,a.unprependChild(),null,!1):(a.prependChildOfSameHeight(s),s=void 0):a.handleChildrenChanged()}return s?Zm.create23(s,i,null,!1):i}class Bgt{constructor(e){this.lastOffset=$l,this.nextNodes=[e],this.offsets=[$l],this.idxs=[]}readLongestNodeAt(e,n){if(X2(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){const r=XR(this.nextNodes);if(!r)return;const s=XR(this.offsets);if(X2(e,s))return;if(X2(s,e))if(Jr(s,r.length)<=e)this.nextNodeAfterCurrent();else{const o=kq(r);o!==-1?(this.nextNodes.push(r.getChild(o)),this.offsets.push(s),this.idxs.push(o)):this.nextNodeAfterCurrent()}else{if(n(r))return this.nextNodeAfterCurrent(),r;{const o=kq(r);if(o===-1){this.nextNodeAfterCurrent();return}else this.nextNodes.push(r.getChild(o)),this.offsets.push(s),this.idxs.push(o)}}}}nextNodeAfterCurrent(){for(;;){const e=XR(this.offsets),n=XR(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),this.idxs.length===0)break;const r=XR(this.nextNodes),s=kq(r,this.idxs[this.idxs.length-1]);if(s!==-1){this.nextNodes.push(r.getChild(s)),this.offsets.push(Jr(e,n.length)),this.idxs[this.idxs.length-1]=s;break}else this.idxs.pop()}}}function kq(i,e=-1){for(;;){if(e++,e>=i.childrenLength)return-1;if(i.getChild(e))return e}}function XR(i){return i.length>0?i[i.length-1]:void 0}function BJ(i,e,n,r){return new jgt(i,e,n,r).parseDocument()}class jgt{constructor(e,n,r,s){if(this.tokenizer=e,this.createImmutableLists=s,this._itemsConstructed=0,this._itemsFromCache=0,r&&s)throw new Error("Not supported");this.oldNodeReader=r?new Bgt(r):void 0,this.positionMapper=new Dgt(n)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(eo.getEmpty(),0);return e||(e=Zm.getEmpty()),e}parseList(e,n){const r=[];for(;;){let o=this.tryReadChildFromCache(e);if(!o){const a=this.tokenizer.peek();if(!a||a.kind===2&&a.bracketIds.intersects(e))break;o=this.parseChild(e,n+1)}o.kind===4&&o.childrenLength===0||r.push(o)}return this.oldNodeReader?Pgt(r):JIe(r,this.createImmutableLists)}tryReadChildFromCache(e){if(this.oldNodeReader){const n=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(n===null||!a7(n)){const r=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),s=>n!==null&&!X2(s.length,n)?!1:s.canBeReused(e));if(r)return this._itemsFromCache++,this.tokenizer.skip(r.length),r}}}parseChild(e,n){this._itemsConstructed++;const r=this.tokenizer.read();switch(r.kind){case 2:return new Rgt(r.bracketIds,r.length);case 0:return r.astNode;case 1:{if(n>300)return new YC(r.length);const s=e.merge(r.bracketIds),o=this.parseList(s,n+1),a=this.tokenizer.peek();return a&&a.kind===2&&(a.bracketId===r.bracketId||a.bracketIds.intersects(r.bracketIds))?(this.tokenizer.read(),PP.create(r.astNode,o,a.astNode)):PP.create(r.astNode,o,null)}default:throw new Error("unexpected")}}}function u7(i,e){if(i.length===0)return e;if(e.length===0)return i;const n=new Ev(Fge(i)),r=Fge(e);r.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let s=n.dequeue();function o(u){if(u===void 0){const h=n.takeWhile(f=>!0)||[];return s&&h.unshift(s),h}const d=[];for(;s&&!a7(u);){const[h,f]=s.splitAt(u);d.push(h),u=MP(h.lengthAfter,u),s=f??n.dequeue()}return a7(u)||d.push(new wy(!1,u,u)),d}const a=[];function l(u,d,h){if(a.length>0&&XIe(a[a.length-1].endOffset,u)){const f=a[a.length-1];a[a.length-1]=new rv(f.startOffset,d,Jr(f.newLength,h))}else a.push({startOffset:u,endOffset:d,newLength:h})}let c=$l;for(const u of r){const d=o(u.lengthBefore);if(u.modified){const h=kgt(d,p=>p.lengthBefore),f=Jr(c,h);l(c,f,u.lengthAfter),c=f}else for(const h of d){const f=c;c=Jr(c,h.lengthBefore),h.modified&&l(f,c,h.lengthAfter)}}return a}class wy{constructor(e,n,r){this.modified=e,this.lengthBefore=n,this.lengthAfter=r}splitAt(e){const n=MP(e,this.lengthAfter);return XIe(n,$l)?[this,void 0]:this.modified?[new wy(this.modified,this.lengthBefore,e),new wy(this.modified,$l,n)]:[new wy(this.modified,e,e),new wy(this.modified,n,n)]}toString(){return`${this.modified?"M":"U"}:${dh(this.lengthBefore)} -> ${dh(this.lengthAfter)}`}}function Fge(i){const e=[];let n=$l;for(const r of i){const s=MP(n,r.startOffset);a7(s)||e.push(new wy(!1,s,s));const o=MP(r.startOffset,r.endOffset);e.push(new wy(!0,o,r.newLength)),n=r.endOffset}return e}class Wgt extends Le{didLanguageChange(e){return this.brackets.didLanguageChange(e)}constructor(e,n){if(super(),this.textModel=e,this.getLanguageConfiguration=n,this.didChangeEmitter=new _e,this.denseKeyProvider=new YIe,this.brackets=new QIe(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],e.tokenization.hasTokens)e.tokenization.backgroundTokenizationState===2?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const r=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),s=new Ngt(this.textModel.getValue(),r);this.initialAstWithoutTokens=BJ(s,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(this.textModel.tokenization.backgroundTokenizationState===2){const e=this.initialAstWithoutTokens===void 0;this.initialAstWithoutTokens=void 0,e||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:e}){const n=e.map(r=>new rv(Is(r.fromLineNumber-1,0),Is(r.toLineNumber,0),Is(r.toLineNumber-r.fromLineNumber+1,0)));this.handleEdits(n,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){const n=rv.fromModelContentChanges(e.changes);this.handleEdits(n,!1)}handleEdits(e,n){const r=u7(this.queuedTextEdits,e);this.queuedTextEdits=r,this.initialAstWithoutTokens&&!n&&(this.queuedTextEditsForInitialAstWithoutTokens=u7(this.queuedTextEditsForInitialAstWithoutTokens,e))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(e,n,r){const s=n,o=new ZIe(this.textModel,this.brackets);return BJ(o,e,s,r)}getBracketsInRange(e,n){this.flushQueue();const r=Is(e.startLineNumber-1,e.startColumn-1),s=Is(e.endLineNumber-1,e.endColumn-1);return new Rm(o=>{const a=this.initialAstWithoutTokens||this.astWithTokens;jJ(a,$l,a.length,r,s,o,0,0,new Map,n)})}getBracketPairsInRange(e,n){this.flushQueue();const r=g2(e.getStartPosition()),s=g2(e.getEndPosition());return new Rm(o=>{const a=this.initialAstWithoutTokens||this.astWithTokens,l=new $gt(o,n,this.textModel);WJ(a,$l,a.length,r,s,l,0,new Map)})}getFirstBracketAfter(e){this.flushQueue();const n=this.initialAstWithoutTokens||this.astWithTokens;return tTe(n,$l,n.length,g2(e))}getFirstBracketBefore(e){this.flushQueue();const n=this.initialAstWithoutTokens||this.astWithTokens;return eTe(n,$l,n.length,g2(e))}}function eTe(i,e,n,r){if(i.kind===4||i.kind===2){const s=[];for(const o of i.children)n=Jr(e,o.length),s.push({nodeOffsetStart:e,nodeOffsetEnd:n}),e=n;for(let o=s.length-1;o>=0;o--){const{nodeOffsetStart:a,nodeOffsetEnd:l}=s[o];if(X2(a,r)){const c=eTe(i.children[o],a,l,r);if(c)return c}}return null}else{if(i.kind===3)return null;if(i.kind===1){const s=FS(e,n);return{bracketInfo:i.bracketInfo,range:s}}}return null}function tTe(i,e,n,r){if(i.kind===4||i.kind===2){for(const s of i.children){if(n=Jr(e,s.length),X2(r,n)){const o=tTe(s,e,n,r);if(o)return o}e=n}return null}else{if(i.kind===3)return null;if(i.kind===1){const s=FS(e,n);return{bracketInfo:i.bracketInfo,range:s}}}return null}function jJ(i,e,n,r,s,o,a,l,c,u,d=!1){if(a>200)return!0;e:for(;;)switch(i.kind){case 4:{const h=i.childrenLength;for(let f=0;f200)return!0;let u=!0;if(i.kind===2){let d=0;if(l){let p=l.get(i.openingBracket.text);p===void 0&&(p=0),d=p,p++,l.set(i.openingBracket.text,p)}const h=Jr(e,i.openingBracket.length);let f=-1;if(o.includeMinIndentation&&(f=i.computeMinIndentation(e,o.textModel)),u=o.push(new Cgt(FS(e,n),FS(e,h),i.closingBracket?FS(Jr(h,((c=i.child)===null||c===void 0?void 0:c.length)||$l),n):void 0,a,d,i,f)),e=h,u&&i.child){const p=i.child;if(n=Jr(e,p.length),Y2(e,s)&&gN(n,r)&&(u=WJ(p,e,n,r,s,o,a+1,l),!u))return!1}l==null||l.set(i.openingBracket.text,d)}else{let d=e;for(const h of i.children){const f=d;if(d=Jr(d,h.length),Y2(f,s)&&Y2(r,d)&&(u=WJ(h,f,d,r,s,o,a,l),!u))return!1}}return u}class zgt extends Le{get canBuildAST(){return this.textModel.getValueLength()<=5e6}constructor(e,n){super(),this.textModel=e,this.languageConfigurationService=n,this.bracketPairsTree=this._register(new ha),this.onDidChangeEmitter=new _e,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1,this._register(this.languageConfigurationService.onDidChange(r=>{var s;(!r.languageId||!((s=this.bracketPairsTree.value)===null||s===void 0)&&s.object.didLanguageChange(r.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}))}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){var n;(n=this.bracketPairsTree.value)===null||n===void 0||n.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){var e;(e=this.bracketPairsTree.value)===null||e===void 0||e.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){var n;(n=this.bracketPairsTree.value)===null||n===void 0||n.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){const e=new Xe;this.bracketPairsTree.value=Vgt(e.add(new Wgt(this.textModel,n=>this.languageConfigurationService.getLanguageConfiguration(n))),e),e.add(this.bracketPairsTree.value.object.onDidChange(n=>this.onDidChangeEmitter.fire(n))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(e){var n;return this.bracketsRequested=!0,this.updateBracketPairsTree(),((n=this.bracketPairsTree.value)===null||n===void 0?void 0:n.object.getBracketPairsInRange(e,!1))||Rm.empty}getBracketPairsInRangeWithMinIndentation(e){var n;return this.bracketsRequested=!0,this.updateBracketPairsTree(),((n=this.bracketPairsTree.value)===null||n===void 0?void 0:n.object.getBracketPairsInRange(e,!0))||Rm.empty}getBracketsInRange(e,n=!1){var r;return this.bracketsRequested=!0,this.updateBracketPairsTree(),((r=this.bracketPairsTree.value)===null||r===void 0?void 0:r.object.getBracketsInRange(e,n))||Rm.empty}findMatchingBracketUp(e,n,r){const s=this.textModel.validatePosition(n),o=this.textModel.getLanguageIdAtPosition(s.lineNumber,s.column);if(this.canBuildAST){const a=this.languageConfigurationService.getLanguageConfiguration(o).bracketsNew.getClosingBracketInfo(e);if(!a)return null;const l=this.getBracketPairsInRange(J.fromPositions(n,n)).findLast(c=>a.closes(c.openingBracketInfo));return l?l.openingBracketRange:null}else{const a=e.toLowerCase(),l=this.languageConfigurationService.getLanguageConfiguration(o).brackets;if(!l)return null;const c=l.textIsBracket[a];return c?e6(this._findMatchingBracketUp(c,s,Lq(r))):null}}matchBracket(e,n){if(this.canBuildAST){const r=this.getBracketPairsInRange(J.fromPositions(e,e)).filter(s=>s.closingBracketRange!==void 0&&(s.openingBracketRange.containsPosition(e)||s.closingBracketRange.containsPosition(e))).findLastMaxBy(ch(s=>s.openingBracketRange.containsPosition(e)?s.openingBracketRange:s.closingBracketRange,J.compareRangesUsingStarts));return r?[r.openingBracketRange,r.closingBracketRange]:null}else{const r=Lq(n);return this._matchBracket(this.textModel.validatePosition(e),r)}}_establishBracketSearchOffsets(e,n,r,s){const o=n.getCount(),a=n.getLanguageId(s);let l=Math.max(0,e.column-1-r.maxBracketLength);for(let u=s-1;u>=0;u--){const d=n.getEndOffset(u);if(d<=l)break;if(Vg(n.getStandardTokenType(u))||n.getLanguageId(u)!==a){l=d;break}}let c=Math.min(n.getLineContent().length,e.column-1+r.maxBracketLength);for(let u=s+1;u=c)break;if(Vg(n.getStandardTokenType(u))||n.getLanguageId(u)!==a){c=d;break}}return{searchStartOffset:l,searchEndOffset:c}}_matchBracket(e,n){const r=e.lineNumber,s=this.textModel.tokenization.getLineTokens(r),o=this.textModel.getLineContent(r),a=s.findTokenIndexAtOffset(e.column-1);if(a<0)return null;const l=this.languageConfigurationService.getLanguageConfiguration(s.getLanguageId(a)).brackets;if(l&&!Vg(s.getStandardTokenType(a))){let{searchStartOffset:c,searchEndOffset:u}=this._establishBracketSearchOffsets(e,s,l,a),d=null;for(;;){const h=Yh.findNextBracketInRange(l.forwardRegex,r,o,c,u);if(!h)break;if(h.startColumn<=e.column&&e.column<=h.endColumn){const f=o.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),p=this._matchFoundBracket(h,l.textIsBracket[f],l.textIsOpenBracket[f],n);if(p){if(p instanceof R0)return null;d=p}}c=h.endColumn-1}if(d)return d}if(a>0&&s.getStartOffset(a)===e.column-1){const c=a-1,u=this.languageConfigurationService.getLanguageConfiguration(s.getLanguageId(c)).brackets;if(u&&!Vg(s.getStandardTokenType(c))){const{searchStartOffset:d,searchEndOffset:h}=this._establishBracketSearchOffsets(e,s,u,c),f=Yh.findPrevBracketInRange(u.reversedRegex,r,o,d,h);if(f&&f.startColumn<=e.column&&e.column<=f.endColumn){const p=o.substring(f.startColumn-1,f.endColumn-1).toLowerCase(),g=this._matchFoundBracket(f,u.textIsBracket[p],u.textIsOpenBracket[p],n);if(g)return g instanceof R0?null:g}}}return null}_matchFoundBracket(e,n,r,s){if(!n)return null;const o=r?this._findMatchingBracketDown(n,e.getEndPosition(),s):this._findMatchingBracketUp(n,e.getStartPosition(),s);return o?o instanceof R0?o:[e,o]:null}_findMatchingBracketUp(e,n,r){const s=e.languageId,o=e.reversedRegex;let a=-1,l=0;const c=(u,d,h,f)=>{for(;;){if(r&&++l%100===0&&!r())return R0.INSTANCE;const p=Yh.findPrevBracketInRange(o,u,d,h,f);if(!p)break;const g=d.substring(p.startColumn-1,p.endColumn-1).toLowerCase();if(e.isOpen(g)?a++:e.isClose(g)&&a--,a===0)return p;f=p.startColumn-1}return null};for(let u=n.lineNumber;u>=1;u--){const d=this.textModel.tokenization.getLineTokens(u),h=d.getCount(),f=this.textModel.getLineContent(u);let p=h-1,g=f.length,m=f.length;u===n.lineNumber&&(p=d.findTokenIndexAtOffset(n.column-1),g=n.column-1,m=n.column-1);let _=!0;for(;p>=0;p--){const b=d.getLanguageId(p)===s&&!Vg(d.getStandardTokenType(p));if(b)_?g=d.getStartOffset(p):(g=d.getStartOffset(p),m=d.getEndOffset(p));else if(_&&g!==m){const y=c(u,f,g,m);if(y)return y}_=b}if(_&&g!==m){const b=c(u,f,g,m);if(b)return b}}return null}_findMatchingBracketDown(e,n,r){const s=e.languageId,o=e.forwardRegex;let a=1,l=0;const c=(d,h,f,p)=>{for(;;){if(r&&++l%100===0&&!r())return R0.INSTANCE;const g=Yh.findNextBracketInRange(o,d,h,f,p);if(!g)break;const m=h.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(e.isOpen(m)?a++:e.isClose(m)&&a--,a===0)return g;f=g.endColumn-1}return null},u=this.textModel.getLineCount();for(let d=n.lineNumber;d<=u;d++){const h=this.textModel.tokenization.getLineTokens(d),f=h.getCount(),p=this.textModel.getLineContent(d);let g=0,m=0,_=0;d===n.lineNumber&&(g=h.findTokenIndexAtOffset(n.column-1),m=n.column-1,_=n.column-1);let b=!0;for(;g=1;l--){const c=this.textModel.tokenization.getLineTokens(l),u=c.getCount(),d=this.textModel.getLineContent(l);let h=u-1,f=d.length,p=d.length;if(l===r.lineNumber){h=c.findTokenIndexAtOffset(r.column-1),f=r.column-1,p=r.column-1;const m=c.getLanguageId(h);s!==m&&(s=m,o=this.languageConfigurationService.getLanguageConfiguration(s).brackets,a=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew)}let g=!0;for(;h>=0;h--){const m=c.getLanguageId(h);if(s!==m){if(o&&a&&g&&f!==p){const b=Yh.findPrevBracketInRange(o.reversedRegex,l,d,f,p);if(b)return this._toFoundBracket(a,b);g=!1}s=m,o=this.languageConfigurationService.getLanguageConfiguration(s).brackets,a=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew}const _=!!o&&!Vg(c.getStandardTokenType(h));if(_)g?f=c.getStartOffset(h):(f=c.getStartOffset(h),p=c.getEndOffset(h));else if(a&&o&&g&&f!==p){const b=Yh.findPrevBracketInRange(o.reversedRegex,l,d,f,p);if(b)return this._toFoundBracket(a,b)}g=_}if(a&&o&&g&&f!==p){const m=Yh.findPrevBracketInRange(o.reversedRegex,l,d,f,p);if(m)return this._toFoundBracket(a,m)}}return null}findNextBracket(e){var n;const r=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),((n=this.bracketPairsTree.value)===null||n===void 0?void 0:n.object.getFirstBracketAfter(r))||null;const s=this.textModel.getLineCount();let o=null,a=null,l=null;for(let c=r.lineNumber;c<=s;c++){const u=this.textModel.tokenization.getLineTokens(c),d=u.getCount(),h=this.textModel.getLineContent(c);let f=0,p=0,g=0;if(c===r.lineNumber){f=u.findTokenIndexAtOffset(r.column-1),p=r.column-1,g=r.column-1;const _=u.getLanguageId(f);o!==_&&(o=_,a=this.languageConfigurationService.getLanguageConfiguration(o).brackets,l=this.languageConfigurationService.getLanguageConfiguration(o).bracketsNew)}let m=!0;for(;fm.closingBracketRange!==void 0&&m.range.strictContainsRange(p));return g?[g.openingBracketRange,g.closingBracketRange]:null}const s=Lq(n),o=this.textModel.getLineCount(),a=new Map;let l=[];const c=(p,g)=>{if(!a.has(p)){const m=[];for(let _=0,b=g?g.brackets.length:0;_{for(;;){if(s&&++u%100===0&&!s())return R0.INSTANCE;const y=Yh.findNextBracketInRange(p.forwardRegex,g,m,_,b);if(!y)break;const x=m.substring(y.startColumn-1,y.endColumn-1).toLowerCase(),k=p.textIsBracket[x];if(k&&(k.isOpen(x)?l[k.index]++:k.isClose(x)&&l[k.index]--,l[k.index]===-1))return this._matchFoundBracket(y,k,!1,s);_=y.endColumn-1}return null};let h=null,f=null;for(let p=r.lineNumber;p<=o;p++){const g=this.textModel.tokenization.getLineTokens(p),m=g.getCount(),_=this.textModel.getLineContent(p);let b=0,y=0,x=0;if(p===r.lineNumber){b=g.findTokenIndexAtOffset(r.column-1),y=r.column-1,x=r.column-1;const D=g.getLanguageId(b);h!==D&&(h=D,f=this.languageConfigurationService.getLanguageConfiguration(h).brackets,c(h,f))}let k=!0;for(;be==null?void 0:e.dispose()}}function Lq(i){if(typeof i>"u")return()=>!0;{const e=Date.now();return()=>Date.now()-e<=i}}class R0{constructor(){this._searchCanceledBrand=void 0}}R0.INSTANCE=new R0;function e6(i){return i instanceof R0?null:i}class Hgt extends Le{constructor(e){super(),this.textModel=e,this.colorProvider=new nTe,this.onDidChangeEmitter=new _e,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=e.getOptions().bracketPairColorizationOptions,this._register(e.bracketPairs.onDidChange(n=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(e){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(e,n,r,s){return s?[]:n===void 0?[]:this.colorizationOptions.enabled?this.textModel.bracketPairs.getBracketsInRange(e,!0).map(a=>({id:`bracket${a.range.toString()}-${a.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(a,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:a.range})).toArray():[]}getAllDecorations(e,n){return e===void 0?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new J(1,1,this.textModel.getLineCount(),1),e,n):[]}}class nTe{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(e,n){return e.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(n?e.nestingLevelOfEqualBracketType:e.nestingLevel)}getInlineClassNameOfLevel(e){return`bracket-highlighting-${e%30}`}}Of((i,e)=>{const n=[RIe,AIe,NIe,MIe,PIe,OIe],r=new nTe;e.addRule(`.monaco-editor .${r.unexpectedClosingBracketClassName} { color: ${i.getColor(qft)}; }`);const s=n.map(o=>i.getColor(o)).filter(o=>!!o).filter(o=>!o.isTransparent());for(let o=0;o<30;o++){const a=s[o%s.length];e.addRule(`.monaco-editor .${r.getInlineClassNameOfLevel(o)} { color: ${a}; }`)}});function t6(i){return i.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class xa{get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}constructor(e,n,r,s){this.oldPosition=e,this.oldText=n,this.newPosition=r,this.newText=s}toString(){return this.oldText.length===0?`(insert@${this.oldPosition} "${t6(this.newText)}")`:this.newText.length===0?`(delete@${this.oldPosition} "${t6(this.oldText)}")`:`(replace@${this.oldPosition} "${t6(this.oldText)}" with "${t6(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,n,r){const s=n.length;gp(e,s,r),r+=4;for(let o=0;oi.length)return!1;if(n){if(!Wse(i,e))return!1;if(e.length===i.length)return!0;let o=e.length;return e.charAt(e.length-1)===r&&o--,i.charAt(o)===r}return e.charAt(e.length-1)!==r&&(e+=r),i.indexOf(e)===0}function rTe(i){return i>=65&&i<=90||i>=97&&i<=122}function Kgt(i,e=Aa){return e?rTe(i.charCodeAt(0))&&i.charCodeAt(1)===58:!1}function Hg(i){return N9(i,!0)}class Ggt{constructor(e){this._ignorePathCasing=e}compare(e,n,r=!1){return e===n?0:aP(this.getComparisonKey(e,r),this.getComparisonKey(n,r))}isEqual(e,n,r=!1){return e===n?!0:!e||!n?!1:this.getComparisonKey(e,r)===this.getComparisonKey(n,r)}getComparisonKey(e,n=!1){return e.with({path:this._ignorePathCasing(e)?e.path.toLowerCase():void 0,fragment:n?null:void 0}).toString()}isEqualOrParent(e,n,r=!1){if(e.scheme===n.scheme){if(e.scheme===Pn.file)return $J(Hg(e),Hg(n),this._ignorePathCasing(e))&&e.query===n.query&&(r||e.fragment===n.fragment);if(Wge(e.authority,n.authority))return $J(e.path,n.path,this._ignorePathCasing(e),"/")&&e.query===n.query&&(r||e.fragment===n.fragment)}return!1}joinPath(e,...n){return Jt.joinPath(e,...n)}basenameOrAuthority(e){return yh(e)||e.authority}basename(e){return to.basename(e.path)}extname(e){return to.extname(e.path)}dirname(e){if(e.path.length===0)return e;let n;return e.scheme===Pn.file?n=Jt.file(W2e(Hg(e))).path:(n=to.dirname(e.path),e.authority&&n.length&&n.charCodeAt(0)!==47&&(console.error(`dirname("${e.toString})) resulted in a relative path`),n="/")),e.with({path:n})}normalizePath(e){if(!e.path.length)return e;let n;return e.scheme===Pn.file?n=Jt.file(j2e(Hg(e))).path:n=to.normalize(e.path),e.with({path:n})}relativePath(e,n){if(e.scheme!==n.scheme||!Wge(e.authority,n.authority))return;if(e.scheme===Pn.file){const o=iot(Hg(e),Hg(n));return Aa?iTe(o):o}let r=e.path||"/";const s=n.path||"/";if(this._ignorePathCasing(e)){let o=0;for(const a=Math.min(r.length,s.length);oBge(r).length&&r[r.length-1]===n}else{const r=e.path;return r.length>1&&r.charCodeAt(r.length-1)===47&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,n=Wp){return $ge(e,n)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,n=Wp){let r=!1;if(e.scheme===Pn.file){const s=Hg(e);r=s!==void 0&&s.length===Bge(s).length&&s[s.length-1]===n}else{n="/";const s=e.path;r=s.length===1&&s.charCodeAt(s.length-1)===47}return!r&&!$ge(e,n)?e.with({path:e.path+"/"}):e}}const Er=new Ggt(()=>!1),Noe=Er.isEqual.bind(Er);Er.isEqualOrParent.bind(Er);Er.getComparisonKey.bind(Er);const Xgt=Er.basenameOrAuthority.bind(Er),yh=Er.basename.bind(Er),Ygt=Er.extname.bind(Er),M$=Er.dirname.bind(Er),Zgt=Er.joinPath.bind(Er),Qgt=Er.normalizePath.bind(Er),Jgt=Er.relativePath.bind(Er),jge=Er.resolvePath.bind(Er);Er.isAbsolutePath.bind(Er);const Wge=Er.isEqualAuthority.bind(Er),$ge=Er.hasTrailingPathSeparator.bind(Er);Er.removeTrailingPathSeparator.bind(Er);Er.addTrailingPathSeparator.bind(Er);var w1;(function(i){i.META_DATA_LABEL="label",i.META_DATA_DESCRIPTION="description",i.META_DATA_SIZE="size",i.META_DATA_MIME="mime";function e(n){const r=new Map;n.path.substring(n.path.indexOf(";")+1,n.path.lastIndexOf(";")).split(";").forEach(a=>{const[l,c]=a.split(":");l&&c&&r.set(l,c)});const o=n.path.substring(0,n.path.indexOf(";"));return o&&r.set(i.META_DATA_MIME,o),r}i.parseMetaData=e})(w1||(w1={}));function tD(i){return i.toString()}class Fo{static create(e,n){const r=e.getAlternativeVersionId(),s=zJ(e);return new Fo(r,r,s,s,n,n,[])}constructor(e,n,r,s,o,a,l){this.beforeVersionId=e,this.afterVersionId=n,this.beforeEOL=r,this.afterEOL=s,this.beforeCursorState=o,this.afterCursorState=a,this.changes=l}append(e,n,r,s,o){n.length>0&&(this.changes=Ugt(this.changes,n)),this.afterEOL=r,this.afterVersionId=s,this.afterCursorState=o}static _writeSelectionsSize(e){return 4+4*4*(e?e.length:0)}static _writeSelections(e,n,r){if(gp(e,n?n.length:0,r),r+=4,n)for(const s of n)gp(e,s.selectionStartLineNumber,r),r+=4,gp(e,s.selectionStartColumn,r),r+=4,gp(e,s.positionLineNumber,r),r+=4,gp(e,s.positionColumn,r),r+=4;return r}static _readSelections(e,n,r){const s=pp(e,n);n+=4;for(let o=0;on.toString()).join(", ")}matchesResource(e){return(Jt.isUri(this.model)?this.model:this.model.uri).toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof Fo}append(e,n,r,s,o){this._data instanceof Fo&&this._data.append(e,n,r,s,o)}close(){this._data instanceof Fo&&(this._data=this._data.serialize())}open(){this._data instanceof Fo||(this._data=Fo.deserialize(this._data))}undo(){if(Jt.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof Fo&&(this._data=this._data.serialize());const e=Fo.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(Jt.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof Fo&&(this._data=this._data.serialize());const e=Fo.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof Fo&&(this._data=this._data.serialize()),this._data.byteLength+168}}class emt{get resources(){return this._editStackElementsArr.map(e=>e.resource)}constructor(e,n,r){this.label=e,this.code=n,this.type=1,this._isOpen=!0,this._editStackElementsArr=r.slice(0),this._editStackElementsMap=new Map;for(const s of this._editStackElementsArr){const o=tD(s.resource);this._editStackElementsMap.set(o,s)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){const n=tD(e);return this._editStackElementsMap.has(n)}setModel(e){const n=tD(Jt.isUri(e)?e:e.uri);this._editStackElementsMap.has(n)&&this._editStackElementsMap.get(n).setModel(e)}canAppend(e){if(!this._isOpen)return!1;const n=tD(e.uri);return this._editStackElementsMap.has(n)?this._editStackElementsMap.get(n).canAppend(e):!1}append(e,n,r,s,o){const a=tD(e.uri);this._editStackElementsMap.get(a).append(e,n,r,s,o)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const e of this._editStackElementsArr)e.undo()}redo(){for(const e of this._editStackElementsArr)e.redo()}heapSize(e){const n=tD(e);return this._editStackElementsMap.has(n)?this._editStackElementsMap.get(n).heapSize():0}split(){return this._editStackElementsArr}toString(){const e=[];for(const n of this._editStackElementsArr)e.push(`${yh(n.resource)}: ${n}`);return`{${e.join(", ")}}`}}function zJ(i){return i.getEOL()===` `?0:1}function A0(i){return i?i instanceof sTe||i instanceof emt:!1}class Moe{constructor(e,n){this._model=e,this._undoRedoService=n}pushStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);A0(e)&&e.close()}popStackElement(){const e=this._undoRedoService.getLastElement(this._model.uri);A0(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e,n){const r=this._undoRedoService.getLastElement(this._model.uri);if(A0(r)&&r.canAppend(this._model))return r;const s=new sTe(L("edit","Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(s,n),s}pushEOL(e){const n=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(e),n.append(this._model,[],zJ(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,n,r,s){const o=this._getOrCreateEditStackElement(e,s),a=this._model.applyEdits(n,!0),l=Moe._computeCursorState(r,a),c=a.map((u,d)=>({index:d,textChange:u.textChange}));return c.sort((u,d)=>u.textChange.oldPosition===d.textChange.oldPosition?u.index-d.index:u.textChange.oldPosition-d.textChange.oldPosition),o.append(this._model,c.map(u=>u.textChange),zJ(this._model),this._model.getAlternativeVersionId(),l),l}static _computeCursorState(e,n){try{return e?e(n):null}catch(r){return Ln(r),null}}}class tmt{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function nmt(i,e,n,r,s){s.spacesDiff=0,s.looksLikeAlignment=!1;let o;for(o=0;o0&&l>0||c>0&&u>0)return;const d=Math.abs(l-u),h=Math.abs(a-c);if(d===0){s.spacesDiff=h,h>0&&0<=c-1&&c-10?s++:k>1&&o++,nmt(a,l,_,x,h),h.looksLikeAlignment&&!(n&&e===h.spacesDiff)))continue;const R=h.spacesDiff;R<=u&&d[R]++,a=_,l=x}let f=n;s!==o&&(f=s{const _=d[m];_>g&&(g=_,p=m)}),p===4&&d[4]>0&&d[2]>0&&d[2]>=d[4]/2&&(p=2)}return{insertSpaces:f,tabSize:p}}function cc(i){return(i.metadata&1)>>>0}function kr(i,e){i.metadata=i.metadata&254|e<<0}function Ra(i){return(i.metadata&2)>>>1===1}function _r(i,e){i.metadata=i.metadata&253|(e?1:0)<<1}function oTe(i){return(i.metadata&4)>>>2===1}function Vge(i,e){i.metadata=i.metadata&251|(e?1:0)<<2}function aTe(i){return(i.metadata&64)>>>6===1}function Hge(i,e){i.metadata=i.metadata&191|(e?1:0)<<6}function imt(i){return(i.metadata&24)>>>3}function Uge(i,e){i.metadata=i.metadata&231|e<<3}function rmt(i){return(i.metadata&32)>>>5===1}function qge(i,e){i.metadata=i.metadata&223|(e?1:0)<<5}class lTe{constructor(e,n,r){this.metadata=0,this.parent=this,this.left=this,this.right=this,kr(this,1),this.start=n,this.end=r,this.delta=0,this.maxEnd=r,this.id=e,this.ownerId=0,this.options=null,Vge(this,!1),Hge(this,!1),Uge(this,1),qge(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=n,this.cachedAbsoluteEnd=r,this.range=null,_r(this,!1)}reset(e,n,r,s){this.start=n,this.end=r,this.maxEnd=r,this.cachedVersionId=e,this.cachedAbsoluteStart=n,this.cachedAbsoluteEnd=r,this.range=s}setOptions(e){this.options=e;const n=this.options.className;Vge(this,n==="squiggly-error"||n==="squiggly-warning"||n==="squiggly-info"),Hge(this,this.options.glyphMarginClassName!==null),Uge(this,this.options.stickiness),qge(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(e,n,r){this.cachedVersionId!==r&&(this.range=null),this.cachedVersionId=r,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=n}detach(){this.parent=null,this.left=null,this.right=null}}const Wn=new lTe(null,0,0);Wn.parent=Wn;Wn.left=Wn;Wn.right=Wn;kr(Wn,0);class Dq{constructor(){this.root=Wn,this.requestNormalizeDelta=!1}intervalSearch(e,n,r,s,o,a){return this.root===Wn?[]:hmt(this,e,n,r,s,o,a)}search(e,n,r,s){return this.root===Wn?[]:dmt(this,e,n,r,s)}collectNodesFromOwner(e){return cmt(this,e)}collectNodesPostOrder(){return umt(this)}insert(e){Kge(this,e),this._normalizeDeltaIfNecessary()}delete(e){Gge(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,n){const r=e;let s=0;for(;e!==this.root;)e===e.parent.right&&(s+=e.parent.delta),e=e.parent;const o=r.start+s,a=r.end+s;r.setCachedOffsets(o,a,n)}acceptReplace(e,n,r,s){const o=amt(this,e,e+n);for(let a=0,l=o.length;an||r===1?!1:r===2?!0:e}function omt(i,e,n,r,s){const o=imt(i),a=o===0||o===2,l=o===1||o===2,c=n-e,u=r,d=Math.min(c,u),h=i.start;let f=!1;const p=i.end;let g=!1;e<=h&&p<=n&&rmt(i)&&(i.start=e,f=!0,i.end=e,g=!0);{const _=s?1:c>0?2:0;!f&&nD(h,a,e,_)&&(f=!0),!g&&nD(p,l,e,_)&&(g=!0)}if(d>0&&!s){const _=c>u?2:0;!f&&nD(h,a,e+d,_)&&(f=!0),!g&&nD(p,l,e+d,_)&&(g=!0)}{const _=s?1:0;!f&&nD(h,a,n,_)&&(i.start=e+u,f=!0),!g&&nD(p,l,n,_)&&(i.end=e+u,g=!0)}const m=u-c;f||(i.start=Math.max(0,h+m)),g||(i.end=Math.max(0,p+m)),i.start>i.end&&(i.end=i.start)}function amt(i,e,n){let r=i.root,s=0,o=0,a=0,l=0;const c=[];let u=0;for(;r!==Wn;){if(Ra(r)){_r(r.left,!1),_r(r.right,!1),r===r.parent.right&&(s-=r.parent.delta),r=r.parent;continue}if(!Ra(r.left)){if(o=s+r.maxEnd,on){_r(r,!0);continue}if(l=s+r.end,l>=e&&(r.setCachedOffsets(a,l,0),c[u++]=r),_r(r,!0),r.right!==Wn&&!Ra(r.right)){s+=r.delta,r=r.right;continue}}return _r(i.root,!1),c}function lmt(i,e,n,r){let s=i.root,o=0,a=0,l=0;const c=r-(n-e);for(;s!==Wn;){if(Ra(s)){_r(s.left,!1),_r(s.right,!1),s===s.parent.right&&(o-=s.parent.delta),C1(s),s=s.parent;continue}if(!Ra(s.left)){if(a=o+s.maxEnd,an){s.start+=c,s.end+=c,s.delta+=c,(s.delta<-1073741824||s.delta>1073741824)&&(i.requestNormalizeDelta=!0),_r(s,!0);continue}if(_r(s,!0),s.right!==Wn&&!Ra(s.right)){o+=s.delta,s=s.right;continue}}_r(i.root,!1)}function cmt(i,e){let n=i.root;const r=[];let s=0;for(;n!==Wn;){if(Ra(n)){_r(n.left,!1),_r(n.right,!1),n=n.parent;continue}if(n.left!==Wn&&!Ra(n.left)){n=n.left;continue}if(n.ownerId===e&&(r[s++]=n),_r(n,!0),n.right!==Wn&&!Ra(n.right)){n=n.right;continue}}return _r(i.root,!1),r}function umt(i){let e=i.root;const n=[];let r=0;for(;e!==Wn;){if(Ra(e)){_r(e.left,!1),_r(e.right,!1),e=e.parent;continue}if(e.left!==Wn&&!Ra(e.left)){e=e.left;continue}if(e.right!==Wn&&!Ra(e.right)){e=e.right;continue}n[r++]=e,_r(e,!0)}return _r(i.root,!1),n}function dmt(i,e,n,r,s){let o=i.root,a=0,l=0,c=0;const u=[];let d=0;for(;o!==Wn;){if(Ra(o)){_r(o.left,!1),_r(o.right,!1),o===o.parent.right&&(a-=o.parent.delta),o=o.parent;continue}if(o.left!==Wn&&!Ra(o.left)){o=o.left;continue}l=a+o.start,c=a+o.end,o.setCachedOffsets(l,c,r);let h=!0;if(e&&o.ownerId&&o.ownerId!==e&&(h=!1),n&&oTe(o)&&(h=!1),s&&!aTe(o)&&(h=!1),h&&(u[d++]=o),_r(o,!0),o.right!==Wn&&!Ra(o.right)){a+=o.delta,o=o.right;continue}}return _r(i.root,!1),u}function hmt(i,e,n,r,s,o,a){let l=i.root,c=0,u=0,d=0,h=0;const f=[];let p=0;for(;l!==Wn;){if(Ra(l)){_r(l.left,!1),_r(l.right,!1),l===l.parent.right&&(c-=l.parent.delta),l=l.parent;continue}if(!Ra(l.left)){if(u=c+l.maxEnd,un){_r(l,!0);continue}if(h=c+l.end,h>=e){l.setCachedOffsets(d,h,o);let g=!0;r&&l.ownerId&&l.ownerId!==r&&(g=!1),s&&oTe(l)&&(g=!1),a&&!aTe(l)&&(g=!1),g&&(f[p++]=l)}if(_r(l,!0),l.right!==Wn&&!Ra(l.right)){c+=l.delta,l=l.right;continue}}return _r(i.root,!1),f}function Kge(i,e){if(i.root===Wn)return e.parent=Wn,e.left=Wn,e.right=Wn,kr(e,0),i.root=e,i.root;fmt(i,e),Zb(e.parent);let n=e;for(;n!==i.root&&cc(n.parent)===1;)if(n.parent===n.parent.parent.left){const r=n.parent.parent.right;cc(r)===1?(kr(n.parent,0),kr(r,0),kr(n.parent.parent,1),n=n.parent.parent):(n===n.parent.right&&(n=n.parent,lM(i,n)),kr(n.parent,0),kr(n.parent.parent,1),cM(i,n.parent.parent))}else{const r=n.parent.parent.left;cc(r)===1?(kr(n.parent,0),kr(r,0),kr(n.parent.parent,1),n=n.parent.parent):(n===n.parent.left&&(n=n.parent,cM(i,n)),kr(n.parent,0),kr(n.parent.parent,1),lM(i,n.parent.parent))}return kr(i.root,0),e}function fmt(i,e){let n=0,r=i.root;const s=e.start,o=e.end;for(;;)if(gmt(s,o,r.start+n,r.end+n)<0)if(r.left===Wn){e.start-=n,e.end-=n,e.maxEnd-=n,r.left=e;break}else r=r.left;else if(r.right===Wn){e.start-=n+r.delta,e.end-=n+r.delta,e.maxEnd-=n+r.delta,r.right=e;break}else n+=r.delta,r=r.right;e.parent=r,e.left=Wn,e.right=Wn,kr(e,1)}function Gge(i,e){let n,r;if(e.left===Wn?(n=e.right,r=e,n.delta+=e.delta,(n.delta<-1073741824||n.delta>1073741824)&&(i.requestNormalizeDelta=!0),n.start+=e.delta,n.end+=e.delta):e.right===Wn?(n=e.left,r=e):(r=pmt(e.right),n=r.right,n.start+=r.delta,n.end+=r.delta,n.delta+=r.delta,(n.delta<-1073741824||n.delta>1073741824)&&(i.requestNormalizeDelta=!0),r.start+=e.delta,r.end+=e.delta,r.delta=e.delta,(r.delta<-1073741824||r.delta>1073741824)&&(i.requestNormalizeDelta=!0)),r===i.root){i.root=n,kr(n,0),e.detach(),Eq(),C1(n),i.root.parent=Wn;return}const s=cc(r)===1;if(r===r.parent.left?r.parent.left=n:r.parent.right=n,r===e?n.parent=r.parent:(r.parent===e?n.parent=r:n.parent=r.parent,r.left=e.left,r.right=e.right,r.parent=e.parent,kr(r,cc(e)),e===i.root?i.root=r:e===e.parent.left?e.parent.left=r:e.parent.right=r,r.left!==Wn&&(r.left.parent=r),r.right!==Wn&&(r.right.parent=r)),e.detach(),s){Zb(n.parent),r!==e&&(Zb(r),Zb(r.parent)),Eq();return}Zb(n),Zb(n.parent),r!==e&&(Zb(r),Zb(r.parent));let o;for(;n!==i.root&&cc(n)===0;)n===n.parent.left?(o=n.parent.right,cc(o)===1&&(kr(o,0),kr(n.parent,1),lM(i,n.parent),o=n.parent.right),cc(o.left)===0&&cc(o.right)===0?(kr(o,1),n=n.parent):(cc(o.right)===0&&(kr(o.left,0),kr(o,1),cM(i,o),o=n.parent.right),kr(o,cc(n.parent)),kr(n.parent,0),kr(o.right,0),lM(i,n.parent),n=i.root)):(o=n.parent.left,cc(o)===1&&(kr(o,0),kr(n.parent,1),cM(i,n.parent),o=n.parent.left),cc(o.left)===0&&cc(o.right)===0?(kr(o,1),n=n.parent):(cc(o.left)===0&&(kr(o.right,0),kr(o,1),lM(i,o),o=n.parent.left),kr(o,cc(n.parent)),kr(n.parent,0),kr(o.left,0),cM(i,n.parent),n=i.root));kr(n,0),Eq()}function pmt(i){for(;i.left!==Wn;)i=i.left;return i}function Eq(){Wn.parent=Wn,Wn.delta=0,Wn.start=0,Wn.end=0}function lM(i,e){const n=e.right;n.delta+=e.delta,(n.delta<-1073741824||n.delta>1073741824)&&(i.requestNormalizeDelta=!0),n.start+=e.delta,n.end+=e.delta,e.right=n.left,n.left!==Wn&&(n.left.parent=e),n.parent=e.parent,e.parent===Wn?i.root=n:e===e.parent.left?e.parent.left=n:e.parent.right=n,n.left=e,e.parent=n,C1(e),C1(n)}function cM(i,e){const n=e.left;e.delta-=n.delta,(e.delta<-1073741824||e.delta>1073741824)&&(i.requestNormalizeDelta=!0),e.start-=n.delta,e.end-=n.delta,e.left=n.right,n.right!==Wn&&(n.right.parent=e),n.parent=e.parent,e.parent===Wn?i.root=n:e===e.parent.right?e.parent.right=n:e.parent.left=n,n.right=e,e.parent=n,C1(e),C1(n)}function cTe(i){let e=i.end;if(i.left!==Wn){const n=i.left.maxEnd;n>e&&(e=n)}if(i.right!==Wn){const n=i.right.maxEnd+i.delta;n>e&&(e=n)}return e}function C1(i){i.maxEnd=cTe(i)}function Zb(i){for(;i!==Wn;){const e=cTe(i);if(i.maxEnd===e)return;i.maxEnd=e,i=i.parent}}function gmt(i,e,n,r){return i===n?e-r:i-n}class VJ{constructor(e,n){this.piece=e,this.color=n,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==xn)return Poe(this.right);let e=this;for(;e.parent!==xn&&e.parent.left!==e;)e=e.parent;return e.parent===xn?xn:e.parent}prev(){if(this.left!==xn)return uTe(this.left);let e=this;for(;e.parent!==xn&&e.parent.right!==e;)e=e.parent;return e.parent===xn?xn:e.parent}detach(){this.parent=null,this.left=null,this.right=null}}const xn=new VJ(null,0);xn.parent=xn;xn.left=xn;xn.right=xn;xn.color=0;function Poe(i){for(;i.left!==xn;)i=i.left;return i}function uTe(i){for(;i.right!==xn;)i=i.right;return i}function Ooe(i){return i===xn?0:i.size_left+i.piece.length+Ooe(i.right)}function Foe(i){return i===xn?0:i.lf_left+i.piece.lineFeedCnt+Foe(i.right)}function Iq(){xn.parent=xn}function uM(i,e){const n=e.right;n.size_left+=e.size_left+(e.piece?e.piece.length:0),n.lf_left+=e.lf_left+(e.piece?e.piece.lineFeedCnt:0),e.right=n.left,n.left!==xn&&(n.left.parent=e),n.parent=e.parent,e.parent===xn?i.root=n:e.parent.left===e?e.parent.left=n:e.parent.right=n,n.left=e,e.parent=n}function dM(i,e){const n=e.left;e.left=n.right,n.right!==xn&&(n.right.parent=e),n.parent=e.parent,e.size_left-=n.size_left+(n.piece?n.piece.length:0),e.lf_left-=n.lf_left+(n.piece?n.piece.lineFeedCnt:0),e.parent===xn?i.root=n:e===e.parent.right?e.parent.right=n:e.parent.left=n,n.right=e,e.parent=n}function n6(i,e){let n,r;if(e.left===xn?(r=e,n=r.right):e.right===xn?(r=e,n=r.left):(r=Poe(e.right),n=r.right),r===i.root){i.root=n,n.color=0,e.detach(),Iq(),i.root.parent=xn;return}const s=r.color===1;if(r===r.parent.left?r.parent.left=n:r.parent.right=n,r===e?(n.parent=r.parent,mN(i,n)):(r.parent===e?n.parent=r:n.parent=r.parent,mN(i,n),r.left=e.left,r.right=e.right,r.parent=e.parent,r.color=e.color,e===i.root?i.root=r:e===e.parent.left?e.parent.left=r:e.parent.right=r,r.left!==xn&&(r.left.parent=r),r.right!==xn&&(r.right.parent=r),r.size_left=e.size_left,r.lf_left=e.lf_left,mN(i,r)),e.detach(),n.parent.left===n){const a=Ooe(n),l=Foe(n);if(a!==n.parent.size_left||l!==n.parent.lf_left){const c=a-n.parent.size_left,u=l-n.parent.lf_left;n.parent.size_left=a,n.parent.lf_left=l,y0(i,n.parent,c,u)}}if(mN(i,n.parent),s){Iq();return}let o;for(;n!==i.root&&n.color===0;)n===n.parent.left?(o=n.parent.right,o.color===1&&(o.color=0,n.parent.color=1,uM(i,n.parent),o=n.parent.right),o.left.color===0&&o.right.color===0?(o.color=1,n=n.parent):(o.right.color===0&&(o.left.color=0,o.color=1,dM(i,o),o=n.parent.right),o.color=n.parent.color,n.parent.color=0,o.right.color=0,uM(i,n.parent),n=i.root)):(o=n.parent.left,o.color===1&&(o.color=0,n.parent.color=1,dM(i,n.parent),o=n.parent.left),o.left.color===0&&o.right.color===0?(o.color=1,n=n.parent):(o.left.color===0&&(o.right.color=0,o.color=1,uM(i,o),o=n.parent.left),o.color=n.parent.color,n.parent.color=0,o.left.color=0,dM(i,n.parent),n=i.root));n.color=0,Iq()}function Xge(i,e){for(mN(i,e);e!==i.root&&e.parent.color===1;)if(e.parent===e.parent.parent.left){const n=e.parent.parent.right;n.color===1?(e.parent.color=0,n.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.right&&(e=e.parent,uM(i,e)),e.parent.color=0,e.parent.parent.color=1,dM(i,e.parent.parent))}else{const n=e.parent.parent.left;n.color===1?(e.parent.color=0,n.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.left&&(e=e.parent,dM(i,e)),e.parent.color=0,e.parent.parent.color=1,uM(i,e.parent.parent))}i.root.color=0}function y0(i,e,n,r){for(;e!==i.root&&e!==xn;)e.parent.left===e&&(e.parent.size_left+=n,e.parent.lf_left+=r),e=e.parent}function mN(i,e){let n=0,r=0;if(e!==i.root){for(;e!==i.root&&e===e.parent.right;)e=e.parent;if(e!==i.root)for(e=e.parent,n=Ooe(e.left)-e.size_left,r=Foe(e.left)-e.lf_left,e.size_left+=n,e.lf_left+=r;e!==i.root&&(n!==0||r!==0);)e.parent.left===e&&(e.parent.size_left+=n,e.parent.lf_left+=r),e=e.parent}}const Y_=65535;function dTe(i){let e;return i[i.length-1]<65536?e=new Uint16Array(i.length):e=new Uint32Array(i.length),e.set(i,0),e}class mmt{constructor(e,n,r,s,o){this.lineStarts=e,this.cr=n,this.lf=r,this.crlf=s,this.isBasicASCII=o}}function x0(i,e=!0){const n=[0];let r=1;for(let s=0,o=i.length;s126)&&(a=!1)}const l=new mmt(dTe(i),r,s,o,a);return i.length=0,l}class Bc{constructor(e,n,r,s,o){this.bufferIndex=e,this.start=n,this.end=r,this.lineFeedCnt=s,this.length=o}}class ZC{constructor(e,n){this.buffer=e,this.lineStarts=n}}class vmt{constructor(e,n){this._pieces=[],this._tree=e,this._BOM=n,this._index=0,e.root!==xn&&e.iterate(e.root,r=>(r!==xn&&this._pieces.push(r.piece),!0))}read(){return this._pieces.length===0?this._index===0?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:this._index===0?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class bmt{constructor(e){this._limit=e,this._cache=[]}get(e){for(let n=this._cache.length-1;n>=0;n--){const r=this._cache[n];if(r.nodeStartOffset<=e&&r.nodeStartOffset+r.node.piece.length>=e)return r}return null}get2(e){for(let n=this._cache.length-1;n>=0;n--){const r=this._cache[n];if(r.nodeStartLineNumber&&r.nodeStartLineNumber=e)return r}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let n=!1;const r=this._cache;for(let s=0;s=e){r[s]=null,n=!0;continue}}if(n){const s=[];for(const o of r)o!==null&&s.push(o);this._cache=s}}}class ymt{constructor(e,n,r){this.create(e,n,r)}create(e,n,r){this._buffers=[new ZC("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=xn,this._lineCnt=1,this._length=0,this._EOL=n,this._EOLLength=n.length,this._EOLNormalized=r;let s=null;for(let o=0,a=e.length;o0){e[o].lineStarts||(e[o].lineStarts=x0(e[o].buffer));const l=new Bc(o+1,{line:0,column:0},{line:e[o].lineStarts.length-1,column:e[o].buffer.length-e[o].lineStarts[e[o].lineStarts.length-1]},e[o].lineStarts.length-1,e[o].buffer.length);this._buffers.push(e[o]),s=this.rbInsertRight(s,l)}this._searchCache=new bmt(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){const n=Y_,r=n-Math.floor(n/3),s=r*2;let o="",a=0;const l=[];if(this.iterate(this.root,c=>{const u=this.getNodeContent(c),d=u.length;if(a<=r||a+d0){const c=o.replace(/\r\n|\r|\n/g,e);l.push(new ZC(c,x0(c)))}this.create(l,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new vmt(this,e)}getOffsetAt(e,n){let r=0,s=this.root;for(;s!==xn;)if(s.left!==xn&&s.lf_left+1>=e)s=s.left;else if(s.lf_left+s.piece.lineFeedCnt+1>=e){r+=s.size_left;const o=this.getAccumulatedValue(s,e-s.lf_left-2);return r+=o+n-1}else e-=s.lf_left+s.piece.lineFeedCnt,r+=s.size_left+s.piece.length,s=s.right;return r}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let n=this.root,r=0;const s=e;for(;n!==xn;)if(n.size_left!==0&&n.size_left>=e)n=n.left;else if(n.size_left+n.piece.length>=e){const o=this.getIndexOf(n,e-n.size_left);if(r+=n.lf_left+o.index,o.index===0){const a=this.getOffsetAt(r+1,1),l=s-a;return new ve(r+1,l+1)}return new ve(r+1,o.remainder+1)}else if(e-=n.size_left+n.piece.length,r+=n.lf_left+n.piece.lineFeedCnt,n.right===xn){const o=this.getOffsetAt(r+1,1),a=s-e-o;return new ve(r+1,a+1)}else n=n.right;return new ve(1,1)}getValueInRange(e,n){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";const r=this.nodeAt2(e.startLineNumber,e.startColumn),s=this.nodeAt2(e.endLineNumber,e.endColumn),o=this.getValueInRange2(r,s);return n?n!==this._EOL||!this._EOLNormalized?o.replace(/\r\n|\r|\n/g,n):n===this.getEOL()&&this._EOLNormalized?o:o.replace(/\r\n|\r|\n/g,n):o}getValueInRange2(e,n){if(e.node===n.node){const l=e.node,c=this._buffers[l.piece.bufferIndex].buffer,u=this.offsetInBuffer(l.piece.bufferIndex,l.piece.start);return c.substring(u+e.remainder,u+n.remainder)}let r=e.node;const s=this._buffers[r.piece.bufferIndex].buffer,o=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);let a=s.substring(o+e.remainder,o+r.piece.length);for(r=r.next();r!==xn;){const l=this._buffers[r.piece.bufferIndex].buffer,c=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);if(r===n.node){a+=l.substring(c,c+n.remainder);break}else a+=l.substr(c,r.piece.length);r=r.next()}return a}getLinesContent(){const e=[];let n=0,r="",s=!1;return this.iterate(this.root,o=>{if(o===xn)return!0;const a=o.piece;let l=a.length;if(l===0)return!0;const c=this._buffers[a.bufferIndex].buffer,u=this._buffers[a.bufferIndex].lineStarts,d=a.start.line,h=a.end.line;let f=u[d]+a.start.column;if(s&&(c.charCodeAt(f)===10&&(f++,l--),e[n++]=r,r="",s=!1,l===0))return!0;if(d===h)return!this._EOLNormalized&&c.charCodeAt(f+l-1)===13?(s=!0,r+=c.substr(f,l-1)):r+=c.substr(f,l),!0;r+=this._EOLNormalized?c.substring(f,Math.max(f,u[d+1]-this._EOLLength)):c.substring(f,u[d+1]).replace(/(\r\n|\r|\n)$/,""),e[n++]=r;for(let p=d+1;pk+g,n.reset(0)):(y=f.buffer,x=k=>k,n.reset(g));do if(_=n.next(y),_){if(x(_.index)>=m)return d;this.positionInBuffer(e,x(_.index)-p,b);const k=this.getLineFeedCnt(e.piece.bufferIndex,o,b),D=b.line===o.line?b.column-o.column+s:b.column+1,R=D+_[0].length;if(h[d++]=UC(new J(r+k,D,r+k,R),_,c),x(_.index)+_[0].length>=m||d>=u)return d}while(_);return d}findMatchesLineByLine(e,n,r,s){const o=[];let a=0;const l=new s2(n.wordSeparators,n.regex);let c=this.nodeAt2(e.startLineNumber,e.startColumn);if(c===null)return[];const u=this.nodeAt2(e.endLineNumber,e.endColumn);if(u===null)return[];let d=this.positionInBuffer(c.node,c.remainder);const h=this.positionInBuffer(u.node,u.remainder);if(c.node===u.node)return this.findMatchesInNode(c.node,l,e.startLineNumber,e.startColumn,d,h,n,r,s,a,o),o;let f=e.startLineNumber,p=c.node;for(;p!==u.node;){const m=this.getLineFeedCnt(p.piece.bufferIndex,d,p.piece.end);if(m>=1){const b=this._buffers[p.piece.bufferIndex].lineStarts,y=this.offsetInBuffer(p.piece.bufferIndex,p.piece.start),x=b[d.line+m],k=f===e.startLineNumber?e.startColumn:1;if(a=this.findMatchesInNode(p,l,f,k,d,this.positionInBuffer(p,x-y),n,r,s,a,o),a>=s)return o;f+=m}const _=f===e.startLineNumber?e.startColumn-1:0;if(f===e.endLineNumber){const b=this.getLineContent(f).substring(_,e.endColumn-1);return a=this._findMatchesInLine(n,l,b,e.endLineNumber,_,a,o,r,s),o}if(a=this._findMatchesInLine(n,l,this.getLineContent(f).substr(_),f,_,a,o,r,s),a>=s)return o;f++,c=this.nodeAt2(f,1),p=c.node,d=this.positionInBuffer(c.node,c.remainder)}if(f===e.endLineNumber){const m=f===e.startLineNumber?e.startColumn-1:0,_=this.getLineContent(f).substring(m,e.endColumn-1);return a=this._findMatchesInLine(n,l,_,e.endLineNumber,m,a,o,r,s),o}const g=f===e.startLineNumber?e.startColumn:1;return a=this.findMatchesInNode(u.node,l,f,g,d,h,n,r,s,a,o),o}_findMatchesInLine(e,n,r,s,o,a,l,c,u){const d=e.wordSeparators;if(!c&&e.simpleSearch){const f=e.simpleSearch,p=f.length,g=r.length;let m=-p;for(;(m=r.indexOf(f,m+p))!==-1;)if((!d||toe(d,r,g,m,p))&&(l[a++]=new pP(new J(s,m+1+o,s,m+1+p+o),null),a>=u))return a;return a}let h;n.reset(0);do if(h=n.next(r),h&&(l[a++]=UC(new J(s,h.index+1+o,s,h.index+1+h[0].length+o),h,c),a>=u))return a;while(h);return a}insert(e,n,r=!1){if(this._EOLNormalized=this._EOLNormalized&&r,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==xn){const{node:s,remainder:o,nodeStartOffset:a}=this.nodeAt(e),l=s.piece,c=l.bufferIndex,u=this.positionInBuffer(s,o);if(s.piece.bufferIndex===0&&l.end.line===this._lastChangeBufferPos.line&&l.end.column===this._lastChangeBufferPos.column&&a+l.length===e&&n.lengthe){const d=[];let h=new Bc(l.bufferIndex,u,l.end,this.getLineFeedCnt(l.bufferIndex,u,l.end),this.offsetInBuffer(c,l.end)-this.offsetInBuffer(c,u));if(this.shouldCheckCRLF()&&this.endWithCR(n)&&this.nodeCharCodeAt(s,o)===10){const m={line:h.start.line+1,column:0};h=new Bc(h.bufferIndex,m,h.end,this.getLineFeedCnt(h.bufferIndex,m,h.end),h.length-1),n+=` `}if(this.shouldCheckCRLF()&&this.startWithLF(n))if(this.nodeCharCodeAt(s,o-1)===13){const m=this.positionInBuffer(s,o-1);this.deleteNodeTail(s,m),n="\r"+n,s.piece.length===0&&d.push(s)}else this.deleteNodeTail(s,u);else this.deleteNodeTail(s,u);const f=this.createNewPieces(n);h.length>0&&this.rbInsertRight(s,h);let p=s;for(let g=0;g=0;a--)o=this.rbInsertLeft(o,s[a]);this.validateCRLFWithPrevNode(o),this.deleteNodes(r)}insertContentToNodeRight(e,n){this.adjustCarriageReturnFromNext(e,n)&&(e+=` `);const r=this.createNewPieces(e),s=this.rbInsertRight(n,r[0]);let o=s;for(let a=1;a=f)u=h+1;else break;return r?(r.line=h,r.column=c-p,null):{line:h,column:c-p}}getLineFeedCnt(e,n,r){if(r.column===0)return r.line-n.line;const s=this._buffers[e].lineStarts;if(r.line===s.length-1)return r.line-n.line;const o=s[r.line+1],a=s[r.line]+r.column;if(o>a+1)return r.line-n.line;const l=a-1;return this._buffers[e].buffer.charCodeAt(l)===13?r.line-n.line+1:r.line-n.line}offsetInBuffer(e,n){return this._buffers[e].lineStarts[n.line]+n.column}deleteNodes(e){for(let n=0;nY_){const d=[];for(;e.length>Y_;){const f=e.charCodeAt(Y_-1);let p;f===13||f>=55296&&f<=56319?(p=e.substring(0,Y_-1),e=e.substring(Y_-1)):(p=e.substring(0,Y_),e=e.substring(Y_));const g=x0(p);d.push(new Bc(this._buffers.length,{line:0,column:0},{line:g.length-1,column:p.length-g[g.length-1]},g.length-1,p.length)),this._buffers.push(new ZC(p,g))}const h=x0(e);return d.push(new Bc(this._buffers.length,{line:0,column:0},{line:h.length-1,column:e.length-h[h.length-1]},h.length-1,e.length)),this._buffers.push(new ZC(e,h)),d}let n=this._buffers[0].buffer.length;const r=x0(e,!1);let s=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===n&&n!==0&&this.startWithLF(e)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},s=this._lastChangeBufferPos;for(let d=0;d=e-1)r=r.left;else if(r.lf_left+r.piece.lineFeedCnt>e-1){const c=this.getAccumulatedValue(r,e-r.lf_left-2),u=this.getAccumulatedValue(r,e-r.lf_left-1),d=this._buffers[r.piece.bufferIndex].buffer,h=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);return a+=r.size_left,this._searchCache.set({node:r,nodeStartOffset:a,nodeStartLineNumber:l-(e-1-r.lf_left)}),d.substring(h+c,h+u-n)}else if(r.lf_left+r.piece.lineFeedCnt===e-1){const c=this.getAccumulatedValue(r,e-r.lf_left-2),u=this._buffers[r.piece.bufferIndex].buffer,d=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);s=u.substring(d+c,d+r.piece.length);break}else e-=r.lf_left+r.piece.lineFeedCnt,a+=r.size_left+r.piece.length,r=r.right}for(r=r.next();r!==xn;){const a=this._buffers[r.piece.bufferIndex].buffer;if(r.piece.lineFeedCnt>0){const l=this.getAccumulatedValue(r,0),c=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);return s+=a.substring(c,c+l-n),s}else{const l=this.offsetInBuffer(r.piece.bufferIndex,r.piece.start);s+=a.substr(l,r.piece.length)}r=r.next()}return s}computeBufferMetadata(){let e=this.root,n=1,r=0;for(;e!==xn;)n+=e.lf_left+e.piece.lineFeedCnt,r+=e.size_left+e.piece.length,e=e.right;this._lineCnt=n,this._length=r,this._searchCache.validate(this._length)}getIndexOf(e,n){const r=e.piece,s=this.positionInBuffer(e,n),o=s.line-r.start.line;if(this.offsetInBuffer(r.bufferIndex,r.end)-this.offsetInBuffer(r.bufferIndex,r.start)===n){const a=this.getLineFeedCnt(e.piece.bufferIndex,r.start,s);if(a!==o)return{index:a,remainder:0}}return{index:o,remainder:s.column}}getAccumulatedValue(e,n){if(n<0)return 0;const r=e.piece,s=this._buffers[r.bufferIndex].lineStarts,o=r.start.line+n+1;return o>r.end.line?s[r.end.line]+r.end.column-s[r.start.line]-r.start.column:s[o]-s[r.start.line]-r.start.column}deleteNodeTail(e,n){const r=e.piece,s=r.lineFeedCnt,o=this.offsetInBuffer(r.bufferIndex,r.end),a=n,l=this.offsetInBuffer(r.bufferIndex,a),c=this.getLineFeedCnt(r.bufferIndex,r.start,a),u=c-s,d=l-o,h=r.length+d;e.piece=new Bc(r.bufferIndex,r.start,a,c,h),y0(this,e,d,u)}deleteNodeHead(e,n){const r=e.piece,s=r.lineFeedCnt,o=this.offsetInBuffer(r.bufferIndex,r.start),a=n,l=this.getLineFeedCnt(r.bufferIndex,a,r.end),c=this.offsetInBuffer(r.bufferIndex,a),u=l-s,d=o-c,h=r.length+d;e.piece=new Bc(r.bufferIndex,a,r.end,l,h),y0(this,e,d,u)}shrinkNode(e,n,r){const s=e.piece,o=s.start,a=s.end,l=s.length,c=s.lineFeedCnt,u=n,d=this.getLineFeedCnt(s.bufferIndex,s.start,u),h=this.offsetInBuffer(s.bufferIndex,n)-this.offsetInBuffer(s.bufferIndex,o);e.piece=new Bc(s.bufferIndex,s.start,u,d,h),y0(this,e,h-l,d-c);const f=new Bc(s.bufferIndex,r,a,this.getLineFeedCnt(s.bufferIndex,r,a),this.offsetInBuffer(s.bufferIndex,a)-this.offsetInBuffer(s.bufferIndex,r)),p=this.rbInsertRight(e,f);this.validateCRLFWithPrevNode(p)}appendToNode(e,n){this.adjustCarriageReturnFromNext(n,e)&&(n+=` `);const r=this.shouldCheckCRLF()&&this.startWithLF(n)&&this.endWithCR(e),s=this._buffers[0].buffer.length;this._buffers[0].buffer+=n;const o=x0(n,!1);for(let p=0;pe)n=n.left;else if(n.size_left+n.piece.length>=e){s+=n.size_left;const o={node:n,remainder:e-n.size_left,nodeStartOffset:s};return this._searchCache.set(o),o}else e-=n.size_left+n.piece.length,s+=n.size_left+n.piece.length,n=n.right;return null}nodeAt2(e,n){let r=this.root,s=0;for(;r!==xn;)if(r.left!==xn&&r.lf_left>=e-1)r=r.left;else if(r.lf_left+r.piece.lineFeedCnt>e-1){const o=this.getAccumulatedValue(r,e-r.lf_left-2),a=this.getAccumulatedValue(r,e-r.lf_left-1);return s+=r.size_left,{node:r,remainder:Math.min(o+n-1,a),nodeStartOffset:s}}else if(r.lf_left+r.piece.lineFeedCnt===e-1){const o=this.getAccumulatedValue(r,e-r.lf_left-2);if(o+n-1<=r.piece.length)return{node:r,remainder:o+n-1,nodeStartOffset:s};n-=r.piece.length-o;break}else e-=r.lf_left+r.piece.lineFeedCnt,s+=r.size_left+r.piece.length,r=r.right;for(r=r.next();r!==xn;){if(r.piece.lineFeedCnt>0){const o=this.getAccumulatedValue(r,0),a=this.offsetOfNode(r);return{node:r,remainder:Math.min(n-1,o),nodeStartOffset:a}}else if(r.piece.length>=n-1){const o=this.offsetOfNode(r);return{node:r,remainder:n-1,nodeStartOffset:o}}else n-=r.piece.length;r=r.next()}return null}nodeCharCodeAt(e,n){if(e.piece.lineFeedCnt<1)return-1;const r=this._buffers[e.piece.bufferIndex],s=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start)+n;return r.buffer.charCodeAt(s)}offsetOfNode(e){if(!e)return 0;let n=e.size_left;for(;e!==this.root;)e.parent.right===e&&(n+=e.parent.size_left+e.parent.piece.length),e=e.parent;return n}shouldCheckCRLF(){return!(this._EOLNormalized&&this._EOL===` `)}startWithLF(e){if(typeof e=="string")return e.charCodeAt(0)===10;if(e===xn||e.piece.lineFeedCnt===0)return!1;const n=e.piece,r=this._buffers[n.bufferIndex].lineStarts,s=n.start.line,o=r[s]+n.start.column;return s===r.length-1||r[s+1]>o+1?!1:this._buffers[n.bufferIndex].buffer.charCodeAt(o)===10}endWithCR(e){return typeof e=="string"?e.charCodeAt(e.length-1)===13:e===xn||e.piece.lineFeedCnt===0?!1:this.nodeCharCodeAt(e,e.piece.length-1)===13}validateCRLFWithPrevNode(e){if(this.shouldCheckCRLF()&&this.startWithLF(e)){const n=e.prev();this.endWithCR(n)&&this.fixCRLF(n,e)}}validateCRLFWithNextNode(e){if(this.shouldCheckCRLF()&&this.endWithCR(e)){const n=e.next();this.startWithLF(n)&&this.fixCRLF(e,n)}}fixCRLF(e,n){const r=[],s=this._buffers[e.piece.bufferIndex].lineStarts;let o;e.piece.end.column===0?o={line:e.piece.end.line-1,column:s[e.piece.end.line]-s[e.piece.end.line-1]-1}:o={line:e.piece.end.line,column:e.piece.end.column-1};const a=e.piece.length-1,l=e.piece.lineFeedCnt-1;e.piece=new Bc(e.piece.bufferIndex,e.piece.start,o,l,a),y0(this,e,-1,-1),e.piece.length===0&&r.push(e);const c={line:n.piece.start.line+1,column:0},u=n.piece.length-1,d=this.getLineFeedCnt(n.piece.bufferIndex,c,n.piece.end);n.piece=new Bc(n.piece.bufferIndex,c,n.piece.end,d,u),y0(this,n,-1,-1),n.piece.length===0&&r.push(n);const h=this.createNewPieces(`\r `);this.rbInsertRight(e,h[0]);for(let f=0;f_.sortIndex-b.sortIndex)}this._mightContainRTL=s,this._mightContainUnusualLineTerminators=o,this._mightContainNonBasicASCII=a;const p=this._doApplyEdits(c);let g=null;if(n&&h.length>0){h.sort((m,_)=>_.lineNumber-m.lineNumber),g=[];for(let m=0,_=h.length;m<_;m++){const b=h[m].lineNumber;if(m>0&&h[m-1].lineNumber===b)continue;const y=h[m].oldContent,x=this.getLineContent(b);x.length===0||x===y||ml(x)!==-1||g.push(b)}}return this._onDidChangeContent.fire(),new Dct(f,p,g)}_reduceOperations(e){return e.length<1e3?e:[this._toSingleEditOperation(e)]}_toSingleEditOperation(e){let n=!1;const r=e[0].range,s=e[e.length-1].range,o=new J(r.startLineNumber,r.startColumn,s.endLineNumber,s.endColumn);let a=r.startLineNumber,l=r.startColumn;const c=[];for(let p=0,g=e.length;p0&&c.push(m.text),a=_.endLineNumber,l=_.endColumn}const u=c.join(""),[d,h,f]=y1(u);return{sortIndex:0,identifier:e[0].identifier,range:o,rangeOffset:this.getOffsetAt(o.startLineNumber,o.startColumn),rangeLength:this.getValueLengthInRange(o,0),text:u,eolCount:d,firstLineLength:h,lastLineLength:f,forceMoveMarkers:n,isAutoWhitespaceEdit:!1}}_doApplyEdits(e){e.sort(Z2._sortOpsDescending);const n=[];for(let r=0;r0){const f=c.eolCount+1;f===1?h=new J(u,d,u,d+c.firstLineLength):h=new J(u,d,u+f-1,c.lastLineLength+1)}else h=new J(u,d,u,d);r=h.endLineNumber,s=h.endColumn,n.push(h),o=c}return n}static _sortOpsAscending(e,n){const r=J.compareRangesUsingEnds(e.range,n.range);return r===0?e.sortIndex-n.sortIndex:r}static _sortOpsDescending(e,n){const r=J.compareRangesUsingEnds(e.range,n.range);return r===0?n.sortIndex-e.sortIndex:-r}}class wmt{constructor(e,n,r,s,o,a,l,c,u){this._chunks=e,this._bom=n,this._cr=r,this._lf=s,this._crlf=o,this._containsRTL=a,this._containsUnusualLineTerminators=l,this._isBasicASCII=c,this._normalizeEOL=u}_getEOL(e){const n=this._cr+this._lf+this._crlf,r=this._cr+this._crlf;return n===0?e===1?` `:`\r `:r>n/2?`\r `:` `}create(e){const n=this._getEOL(e),r=this._chunks;if(this._normalizeEOL&&(n===`\r `&&(this._cr>0||this._lf>0)||n===` `&&(this._cr>0||this._crlf>0)))for(let o=0,a=r.length;o=55296&&n<=56319?(this._acceptChunk1(e.substr(0,e.length-1),!1),this._hasPreviousChar=!0,this._previousChar=n):(this._acceptChunk1(e,!1),this._hasPreviousChar=!1,this._previousChar=n)}_acceptChunk1(e,n){!n&&e.length===0||(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+e):this._acceptChunk2(e))}_acceptChunk2(e){const n=_mt(this._tmpLineStarts,e);this.chunks.push(new ZC(e,n.lineStarts)),this.cr+=n.cr,this.lf+=n.lf,this.crlf+=n.crlf,n.isBasicASCII||(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=TE(e)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=Q2e(e)))}finish(e=!0){return this._finish(),new wmt(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,e)}_finish(){if(this.chunks.length===0&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;const e=this.chunks[this.chunks.length-1];e.buffer+=String.fromCharCode(this._previousChar);const n=x0(e.buffer);e.lineStarts=n,this._previousChar===13&&this.cr++}}}class Cmt{constructor(e){this._default=e,this._store=[]}get(e){return e=this._store.length;)this._store[this._store.length]=this._default;this._store[e]=n}replace(e,n,r){if(e>=this._store.length)return;if(n===0){this.insert(e,r);return}else if(r===0){this.delete(e,n);return}const s=this._store.slice(0,e),o=this._store.slice(e+n),a=Smt(r,this._default);this._store=s.concat(a,o)}delete(e,n){n===0||e>=this._store.length||this._store.splice(e,n)}insert(e,n){if(n===0||e>=this._store.length)return;const r=[];for(let s=0;s0){const r=this._tokens[this._tokens.length-1];if(r.endLineNumber+1===e){r.appendLineTokens(n);return}}this._tokens.push(new xmt(e,[n]))}finalize(){return this._tokens}}class kmt{constructor(e,n){this.tokenizationSupport=n,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new UJ(e)}getStartState(e){return this.store.getStartState(e,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class Lmt extends kmt{constructor(e,n,r,s){super(e,n),this._textModel=r,this._languageIdCodec=s}updateTokensUntilLine(e,n){const r=this._textModel.getLanguageId();for(;;){const s=this.getFirstInvalidLine();if(!s||s.lineNumber>n)break;const o=this._textModel.getLineContent(s.lineNumber),a=YR(this._languageIdCodec,r,this.tokenizationSupport,o,!0,s.startState);e.add(s.lineNumber,a.tokens),this.store.setEndState(s.lineNumber,a.endState)}}getTokenTypeIfInsertingCharacter(e,n){const r=this.getStartState(e.lineNumber);if(!r)return 0;const s=this._textModel.getLanguageId(),o=this._textModel.getLineContent(e.lineNumber),a=o.substring(0,e.column-1)+n+o.substring(e.column-1),l=YR(this._languageIdCodec,s,this.tokenizationSupport,a,!0,r),c=new ko(l.tokens,a,this._languageIdCodec);if(c.getCount()===0)return 0;const u=c.findTokenIndexAtOffset(e.column-1);return c.getStandardTokenType(u)}tokenizeLineWithEdit(e,n,r){const s=e.lineNumber,o=e.column,a=this.getStartState(s);if(!a)return null;const l=this._textModel.getLineContent(s),c=l.substring(0,o-1)+r+l.substring(o-1+n),u=this._textModel.getLanguageIdAtPosition(s,0),d=YR(this._languageIdCodec,u,this.tokenizationSupport,c,!0,a);return new ko(d.tokens,c,this._languageIdCodec)}isCheapToTokenize(e){const n=this.store.getFirstInvalidEndStateLineNumberOrMax();return e1&&l>=1;l--){const c=this._textModel.getLineFirstNonWhitespaceColumn(l);if(c!==0&&c0&&r>0&&(r--,n--),this._lineEndStates.replace(e.startLineNumber,r,n)}}class Emt{constructor(){this._ranges=[]}get min(){return this._ranges.length===0?null:this._ranges[0].start}delete(e){const n=this._ranges.findIndex(r=>r.contains(e));if(n!==-1){const r=this._ranges[n];r.start===e?r.endExclusive===e+1?this._ranges.splice(n,1):this._ranges[n]=new Un(e+1,r.endExclusive):r.endExclusive===e+1?this._ranges[n]=new Un(r.start,e):this._ranges.splice(n,1,new Un(r.start,e),new Un(e+1,r.endExclusive))}}addRange(e){Un.addRange(e,this._ranges)}addRangeAndResize(e,n){let r=0;for(;!(r>=this._ranges.length||e.start<=this._ranges[r].endExclusive);)r++;let s=r;for(;!(s>=this._ranges.length||e.endExclusivee.toString()).join(" + ")}}function YR(i,e,n,r,s,o){let a=null;if(n)try{a=n.tokenizeEncoded(r,s,o.clone())}catch(l){Ln(l)}return a||(a=C$(i.encodeLanguageId(e),o)),ko.convertToEndOffset(a.tokens,r.length),a}class Imt{constructor(e,n){this._tokenizerWithStateStore=e,this._backgroundTokenStore=n,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){this._isScheduled||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._isScheduled=!0,Z0(e=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(e)}))}_backgroundTokenizeWithDeadline(e){const n=Date.now()+e.timeRemaining(),r=()=>{this._isDisposed||!this._tokenizerWithStateStore._textModel.isAttachedToEditor()||!this._hasLinesToTokenize()||(this._backgroundTokenizeForAtLeast1ms(),Date.now()1||this._tokenizeOneInvalidLine(n)>=e)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(n.finalize()),this.checkFinished()}_hasLinesToTokenize(){return this._tokenizerWithStateStore?!this._tokenizerWithStateStore.store.allStatesValid():!1}_tokenizeOneInvalidLine(e){var n;const r=(n=this._tokenizerWithStateStore)===null||n===void 0?void 0:n.getFirstInvalidLine();return r?(this._tokenizerWithStateStore.updateTokensUntilLine(e,r.lineNumber),r.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){this._isDisposed||this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(e,n){this._tokenizerWithStateStore.store.invalidateEndStateRange(new Qn(e,n))}}const k0=new Uint32Array(0).buffer;class Qg{static deleteBeginning(e,n){return e===null||e===k0?e:Qg.delete(e,0,n)}static deleteEnding(e,n){if(e===null||e===k0)return e;const r=H0(e),s=r[r.length-2];return Qg.delete(e,n,s)}static delete(e,n,r){if(e===null||e===k0||n===r)return e;const s=H0(e),o=s.length>>>1;if(n===0&&s[s.length-2]===r)return k0;const a=ko.findIndexInTokensArray(s,n),l=a>0?s[a-1<<1]:0,c=s[a<<1];if(rd&&(s[u++]=g,s[u++]=s[(p<<1)+1],d=g)}if(u===s.length)return e;const f=new Uint32Array(u);return f.set(s.subarray(0,u),0),f.buffer}static append(e,n){if(n===k0)return e;if(e===k0)return n;if(e===null)return e;if(n===null)return null;const r=H0(e),s=H0(n),o=s.length>>>1,a=new Uint32Array(r.length+s.length);a.set(r,0);let l=r.length;const c=r[r.length-2];for(let u=0;u>>1;let a=ko.findIndexInTokensArray(s,n);a>0&&s[a-1<<1]===n&&a--;for(let l=a;l0}getTokens(e,n,r){let s=null;if(n1&&(o=Da.getLanguageId(s[1])!==e),!o)return k0}if(!s||s.length===0){const o=new Uint32Array(2);return o[0]=n,o[1]=Yge(e),o.buffer}return s[s.length-2]=n,s.byteOffset===0&&s.byteLength===s.buffer.byteLength?s.buffer:s}_ensureLine(e){for(;e>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(e,n){n!==0&&(e+n>this._len&&(n=this._len-e),this._lineTokens.splice(e,n),this._len-=n)}_insertLines(e,n){if(n===0)return;const r=[];for(let s=0;s=this._len)return;if(e.startLineNumber===e.endLineNumber){if(e.startColumn===e.endColumn)return;this._lineTokens[n]=Qg.delete(this._lineTokens[n],e.startColumn-1,e.endColumn-1);return}this._lineTokens[n]=Qg.deleteEnding(this._lineTokens[n],e.startColumn-1);const r=e.endLineNumber-1;let s=null;r=this._len)){if(n===0){this._lineTokens[s]=Qg.insert(this._lineTokens[s],e.column-1,r);return}this._lineTokens[s]=Qg.deleteEnding(this._lineTokens[s],e.column-1),this._lineTokens[s]=Qg.insert(this._lineTokens[s],e.column-1,r),this._insertLines(e.lineNumber,n)}}setMultilineTokens(e,n){if(e.length===0)return{changes:[]};const r=[];for(let s=0,o=e.length;s>>0}class Boe{constructor(e){this._pieces=[],this._isComplete=!1,this._languageIdCodec=e}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return this._pieces.length===0}set(e,n){this._pieces=e||[],this._isComplete=n}setPartial(e,n){let r=e;if(n.length>0){const o=n[0].getRange(),a=n[n.length-1].getRange();if(!o||!a)return e;r=e.plusRange(o).plusRange(a)}let s=null;for(let o=0,a=this._pieces.length;or.endLineNumber){s=s||{index:o};break}if(l.removeTokens(r),l.isEmpty()){this._pieces.splice(o,1),o--,a--;continue}if(l.endLineNumberr.endLineNumber){s=s||{index:o};continue}const[c,u]=l.split(r);if(c.isEmpty()){s=s||{index:o};continue}u.isEmpty()||(this._pieces.splice(o,1,c,u),o++,a++,s=s||{index:o})}return s=s||{index:this._pieces.length},n.length>0&&(this._pieces=GW(this._pieces,s.index,n)),r}isComplete(){return this._isComplete}addSparseTokens(e,n){if(n.getLineContent().length===0)return n;const r=this._pieces;if(r.length===0)return n;const s=Boe._findFirstPieceWithLine(r,e),o=r[s].getLineTokens(e);if(!o)return n;const a=n.getCount(),l=o.getCount();let c=0;const u=[];let d=0,h=0;const f=(p,g)=>{p!==h&&(h=p,u[d++]=p,u[d++]=g)};for(let p=0;p>>0,y=~b>>>0;for(;cn)s=o-1;else{for(;o>r&&e[o-1].startLineNumber<=n&&n<=e[o-1].endLineNumber;)o--;return o}}return r}acceptEdit(e,n,r,s,o){for(const a of this._pieces)a.acceptEdit(e,n,r,s,o)}}class d7 extends HIe{constructor(e,n,r,s,o,a){super(),this._languageService=e,this._languageConfigurationService=n,this._textModel=r,this._bracketPairsTextModelPart=s,this._languageId=o,this._attachedViews=a,this._semanticTokens=new Boe(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new _e),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new _e),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new _e),this.onDidChangeTokens=this._onDidChangeTokens.event,this.grammarTokens=this._register(new Tmt(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews)),this._register(this._languageConfigurationService.onDidChange(l=>{l.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})})),this._register(this.grammarTokens.onDidChangeTokens(l=>{this._emitModelTokensChangedEvent(l)})),this._register(this.grammarTokens.onDidChangeBackgroundTokenizationState(l=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()}))}handleDidChangeContent(e){if(e.isFlush)this._semanticTokens.flush();else if(!e.isEolChange)for(const n of e.changes){const[r,s,o]=y1(n.text);this._semanticTokens.acceptEdit(n.range,r,s,o,n.text.length>0?n.text.charCodeAt(0):0)}this.grammarTokens.handleDidChangeContent(e)}handleDidChangeAttached(){this.grammarTokens.handleDidChangeAttached()}getLineTokens(e){this.validateLineNumber(e);const n=this.grammarTokens.getLineTokens(e);return this._semanticTokens.addSparseTokens(e,n)}_emitModelTokensChangedEvent(e){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(e),this._onDidChangeTokens.fire(e))}validateLineNumber(e){if(e<1||e>this._textModel.getLineCount())throw new Vs("Illegal value for lineNumber")}get hasTokens(){return this.grammarTokens.hasTokens}resetTokenization(){this.grammarTokens.resetTokenization()}get backgroundTokenizationState(){return this.grammarTokens.backgroundTokenizationState}forceTokenization(e){this.validateLineNumber(e),this.grammarTokens.forceTokenization(e)}isCheapToTokenize(e){return this.validateLineNumber(e),this.grammarTokens.isCheapToTokenize(e)}tokenizeIfCheap(e){this.validateLineNumber(e),this.grammarTokens.tokenizeIfCheap(e)}getTokenTypeIfInsertingCharacter(e,n,r){return this.grammarTokens.getTokenTypeIfInsertingCharacter(e,n,r)}tokenizeLineWithEdit(e,n,r){return this.grammarTokens.tokenizeLineWithEdit(e,n,r)}setSemanticTokens(e,n){this._semanticTokens.set(e,n),this._emitModelTokensChangedEvent({semanticTokensApplied:e!==null,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(e,n){if(this.hasCompleteSemanticTokens())return;const r=this._textModel.validateRange(this._semanticTokens.setPartial(e,n));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:r.startLineNumber,toLineNumber:r.endLineNumber}]})}getWordAtPosition(e){this.assertNotDisposed();const n=this._textModel.validatePosition(e),r=this._textModel.getLineContent(n.lineNumber),s=this.getLineTokens(n.lineNumber),o=s.findTokenIndexAtOffset(n.column-1),[a,l]=d7._findLanguageBoundaries(s,o),c=iP(n.column,this.getLanguageConfiguration(s.getLanguageId(o)).getWordDefinition(),r.substring(a,l),a);if(c&&c.startColumn<=e.column&&e.column<=c.endColumn)return c;if(o>0&&a===n.column-1){const[u,d]=d7._findLanguageBoundaries(s,o-1),h=iP(n.column,this.getLanguageConfiguration(s.getLanguageId(o-1)).getWordDefinition(),r.substring(u,d),u);if(h&&h.startColumn<=e.column&&e.column<=h.endColumn)return h}return null}getLanguageConfiguration(e){return this._languageConfigurationService.getLanguageConfiguration(e)}static _findLanguageBoundaries(e,n){const r=e.getLanguageId(n);let s=0;for(let a=n;a>=0&&e.getLanguageId(a)===r;a--)s=e.getStartOffset(a);let o=e.getLineContent().length;for(let a=n,l=e.getCount();a{const a=this.getLanguageId();o.changedLanguages.indexOf(a)!==-1&&this.resetTokenization()})),this.resetTokenization(),this._register(s.onDidChangeVisibleRanges(({view:o,state:a})=>{if(a){let l=this._attachedViewStates.get(o);l||(l=new Rmt(()=>this.refreshRanges(l.lineRanges)),this._attachedViewStates.set(o,l)),l.handleStateChange(a)}else this._attachedViewStates.deleteAndDispose(o)}))}resetTokenization(e=!0){var n;this._tokens.flush(),(n=this._debugBackgroundTokens)===null||n===void 0||n.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new UJ(this._textModel.getLineCount())),e&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});const r=()=>{if(this._textModel.isTooLargeForTokenization())return[null,null];const a=Zr.get(this.getLanguageId());if(!a)return[null,null];let l;try{l=a.getInitialState()}catch(c){return Ln(c),[null,null]}return[a,l]},[s,o]=r();if(s&&o?this._tokenizer=new Lmt(this._textModel.getLineCount(),s,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){const a={setTokens:l=>{this.setTokens(l)},backgroundTokenizationFinished:()=>{if(this._backgroundTokenizationState===2)return;const l=2;this._backgroundTokenizationState=l,this._onDidChangeBackgroundTokenizationState.fire()},setEndState:(l,c)=>{var u;if(!this._tokenizer)return;const d=this._tokenizer.store.getFirstInvalidEndStateLineNumber();d!==null&&l>=d&&((u=this._tokenizer)===null||u===void 0||u.store.setEndState(l,c))}};s&&s.createBackgroundTokenizer&&!s.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=s.createBackgroundTokenizer(this._textModel,a)),this._backgroundTokenizer.value||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new Imt(this._tokenizer,a),this._defaultBackgroundTokenizer.handleChanges()),s!=null&&s.backgroundTokenizerShouldOnlyVerifyTokens&&s.createBackgroundTokenizer?(this._debugBackgroundTokens=new FP(this._languageIdCodec),this._debugBackgroundStates=new UJ(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=s.createBackgroundTokenizer(this._textModel,{setTokens:l=>{var c;(c=this._debugBackgroundTokens)===null||c===void 0||c.setMultilineTokens(l,this._textModel)},backgroundTokenizationFinished(){},setEndState:(l,c)=>{var u;(u=this._debugBackgroundStates)===null||u===void 0||u.setEndState(l,c)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){var e;(e=this._defaultBackgroundTokenizer)===null||e===void 0||e.handleChanges()}handleDidChangeContent(e){var n,r,s;if(e.isFlush)this.resetTokenization(!1);else if(!e.isEolChange){for(const o of e.changes){const[a,l]=y1(o.text);this._tokens.acceptEdit(o.range,a,l),(n=this._debugBackgroundTokens)===null||n===void 0||n.acceptEdit(o.range,a,l)}(r=this._debugBackgroundStates)===null||r===void 0||r.acceptChanges(e.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(e.changes),(s=this._defaultBackgroundTokenizer)===null||s===void 0||s.handleChanges()}}setTokens(e){const{changes:n}=this._tokens.setMultilineTokens(e,this._textModel);return n.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:n}),{changes:n}}refreshAllVisibleLineTokens(){const e=Qn.joinMany([...this._attachedViewStates].map(([n,r])=>r.lineRanges));this.refreshRanges(e)}refreshRanges(e){for(const n of e)this.refreshRange(n.startLineNumber,n.endLineNumberExclusive-1)}refreshRange(e,n){var r,s;if(!this._tokenizer)return;e=Math.max(1,Math.min(this._textModel.getLineCount(),e)),n=Math.min(this._textModel.getLineCount(),n);const o=new HJ,{heuristicTokens:a}=this._tokenizer.tokenizeHeuristically(o,e,n),l=this.setTokens(o.finalize());if(a)for(const c of l.changes)(r=this._backgroundTokenizer.value)===null||r===void 0||r.requestTokens(c.fromLineNumber,c.toLineNumber+1);(s=this._defaultBackgroundTokenizer)===null||s===void 0||s.checkFinished()}forceTokenization(e){var n,r;const s=new HJ;(n=this._tokenizer)===null||n===void 0||n.updateTokensUntilLine(s,e),this.setTokens(s.finalize()),(r=this._defaultBackgroundTokenizer)===null||r===void 0||r.checkFinished()}isCheapToTokenize(e){return this._tokenizer?this._tokenizer.isCheapToTokenize(e):!0}tokenizeIfCheap(e){this.isCheapToTokenize(e)&&this.forceTokenization(e)}getLineTokens(e){var n;const r=this._textModel.getLineContent(e),s=this._tokens.getTokens(this._textModel.getLanguageId(),e-1,r);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>e&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>e){const o=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),e-1,r);!s.equals(o)&&(!((n=this._debugBackgroundTokenizer.value)===null||n===void 0)&&n.reportMismatchingTokens)&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(e)}return s}getTokenTypeIfInsertingCharacter(e,n,r){if(!this._tokenizer)return 0;const s=this._textModel.validatePosition(new ve(e,n));return this.forceTokenization(s.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(s,r)}tokenizeLineWithEdit(e,n,r){if(!this._tokenizer)return null;const s=this._textModel.validatePosition(e);return this.forceTokenization(s.lineNumber),this._tokenizer.tokenizeLineWithEdit(s,n,r)}get hasTokens(){return this._tokens.hasTokens}}class Rmt extends Le{get lineRanges(){return this._lineRanges}constructor(e){super(),this._refreshTokens=e,this.runner=this._register(new Ji(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){ys(this._computedLineRanges,this._lineRanges,(e,n)=>e.equals(n))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(e){this._lineRanges=e.visibleLineRanges,e.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class Amt{constructor(){this.changeType=1}}class Xp{static applyInjectedText(e,n){if(!n||n.length===0)return e;let r="",s=0;for(const o of n)r+=e.substring(s,o.column-1),s=o.column-1,r+=o.options.content;return r+=e.substring(s),r}static fromDecorations(e){const n=[];for(const r of e)r.options.before&&r.options.before.content.length>0&&n.push(new Xp(r.ownerId,r.range.startLineNumber,r.range.startColumn,r.options.before,0)),r.options.after&&r.options.after.content.length>0&&n.push(new Xp(r.ownerId,r.range.endLineNumber,r.range.endColumn,r.options.after,1));return n.sort((r,s)=>r.lineNumber===s.lineNumber?r.column===s.column?r.order-s.order:r.column-s.column:r.lineNumber-s.lineNumber),n}constructor(e,n,r,s,o){this.ownerId=e,this.lineNumber=n,this.column=r,this.options=s,this.order=o}}class Zge{constructor(e,n,r){this.changeType=2,this.lineNumber=e,this.detail=n,this.injectedText=r}}class Nmt{constructor(e,n){this.changeType=3,this.fromLineNumber=e,this.toLineNumber=n}}class Mmt{constructor(e,n,r,s){this.changeType=4,this.injectedTexts=s,this.fromLineNumber=e,this.toLineNumber=n,this.detail=r}}class Pmt{constructor(){this.changeType=5}}class Q2{constructor(e,n,r,s){this.changes=e,this.versionId=n,this.isUndoing=r,this.isRedoing=s,this.resultingSelection=null}containsEvent(e){for(let n=0,r=this.changes.length;n=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Tq=function(i,e){return function(n,r){e(n,r,i)}},PC;function Fmt(i){const e=new hTe;return e.acceptChunk(i),e.finish()}function Bmt(i){const e=new hTe;let n;for(;typeof(n=i.read())=="string";)e.acceptChunk(n);return e.finish()}function Qge(i,e){let n;return typeof i=="string"?n=Fmt(i):kct(i)?n=Bmt(i):n=i,n.create(e)}let i6=0;const jmt=999,Wmt=1e4;class $mt{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;const e=[];let n=0,r=0;do{const s=this._source.read();if(s===null)return this._eos=!0,n===0?null:e.join("");if(s.length>0&&(e[n++]=s,r+=s.length),r>=64*1024)return e.join("")}while(!0)}}const ZR=()=>{throw new Error("Invalid change accessor")};let Qm=PC=class extends Le{static resolveOptions(e,n){if(n.detectIndentation){const r=zge(e,n.tabSize,n.insertSpaces);return new c8({tabSize:r.tabSize,indentSize:"tabSize",insertSpaces:r.insertSpaces,trimAutoWhitespace:n.trimAutoWhitespace,defaultEOL:n.defaultEOL,bracketPairColorizationOptions:n.bracketPairColorizationOptions})}return new c8(n)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent(n=>e(n.contentChangedEvent))}onDidChangeContentOrInjectedText(e){return Sf(this._eventEmitter.fastEvent(n=>e(n)),this._onDidChangeInjectedText.event(n=>e(n)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(e,n,r,s=null,o,a,l){super(),this._undoRedoService=o,this._languageService=a,this._languageConfigurationService=l,this._onWillDispose=this._register(new _e),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new qmt(p=>this.handleBeforeFireDecorationsChangedEvent(p))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new _e),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new _e),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new _e),this._eventEmitter=this._register(new Kmt),this._languageSelectionListener=this._register(new ha),this._deltaDecorationCallCnt=0,this._attachedViews=new Gmt,i6++,this.id="$model"+i6,this.isForSimpleWidget=r.isForSimpleWidget,typeof s>"u"||s===null?this._associatedResource=Jt.parse("inmemory://model/"+i6):this._associatedResource=s,this._attachedEditorCount=0;const{textBuffer:c,disposable:u}=Qge(e,r.defaultEOL);this._buffer=c,this._bufferDisposable=u,this._options=PC.resolveOptions(this._buffer,r);const d=typeof n=="string"?n:n.languageId;typeof n!="string"&&(this._languageSelectionListener.value=n.onDidChange(()=>this._setLanguage(n.languageId))),this._bracketPairs=this._register(new zgt(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new Opt(this,this._languageConfigurationService)),this._decorationProvider=this._register(new Hgt(this)),this._tokenizationTextModelPart=new d7(this._languageService,this._languageConfigurationService,this,this._bracketPairs,d,this._attachedViews);const h=this._buffer.getLineCount(),f=this._buffer.getValueLengthInRange(new J(1,1,h,this._buffer.getLineLength(h)+1),0);r.largeFileOptimizations?(this._isTooLargeForTokenization=f>PC.LARGE_FILE_SIZE_THRESHOLD||h>PC.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=f>PC.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._isTooLargeForSyncing=f>PC._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=J2e(i6),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new Jge,this._commandManager=new Moe(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(d)}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;const e=new Z2([],"",` `,!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=Le.None}_assertNotDisposed(){if(this._isDisposed)throw new Error("Model is disposed!")}_emitContentChangedEvent(e,n){this.__isDisposing||(this._tokenizationTextModelPart.handleDidChangeContent(n),this._bracketPairs.handleDidChangeContent(n),this._eventEmitter.fire(new BS(e,n)))}setValue(e){if(this._assertNotDisposed(),e==null)throw uh();const{textBuffer:n,disposable:r}=Qge(e,this._options.defaultEOL);this._setValueFromTextBuffer(n,r)}_createContentChanged2(e,n,r,s,o,a,l,c){return{changes:[{range:e,rangeOffset:n,rangeLength:r,text:s}],eol:this._buffer.getEOL(),isEolChange:c,versionId:this.getVersionId(),isUndoing:o,isRedoing:a,isFlush:l}}_setValueFromTextBuffer(e,n){this._assertNotDisposed();const r=this.getFullModelRange(),s=this.getValueLengthInRange(r),o=this.getLineCount(),a=this.getLineMaxColumn(o);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=n,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new Jge,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new Q2([new Amt],this._versionId,!1,!1),this._createContentChanged2(new J(1,1,o,a),0,s,this.getValue(),!1,!1,!0,!1))}setEOL(e){this._assertNotDisposed();const n=e===1?`\r `:` `;if(this._buffer.getEOL()===n)return;const r=this.getFullModelRange(),s=this.getValueLengthInRange(r),o=this.getLineCount(),a=this.getLineMaxColumn(o);this._onBeforeEOLChange(),this._buffer.setEOL(n),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new Q2([new Pmt],this._versionId,!1,!1),this._createContentChanged2(new J(1,1,o,a),0,s,this.getValue(),!1,!1,!1,!0))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const e=this.getVersionId(),n=this._decorationsTree.collectNodesPostOrder();for(let r=0,s=n.length;r0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,n=0;const r=this._buffer.getLineCount();for(let s=1;s<=r;s++){const o=this._buffer.getLineLength(s);o>=Wmt?n+=o:e+=o}return n>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();const n=typeof e.tabSize<"u"?e.tabSize:this._options.tabSize,r=typeof e.indentSize<"u"?e.indentSize:this._options.originalIndentSize,s=typeof e.insertSpaces<"u"?e.insertSpaces:this._options.insertSpaces,o=typeof e.trimAutoWhitespace<"u"?e.trimAutoWhitespace:this._options.trimAutoWhitespace,a=typeof e.bracketColorizationOptions<"u"?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,l=new c8({tabSize:n,indentSize:r,insertSpaces:s,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:o,bracketPairColorizationOptions:a});if(this._options.equals(l))return;const c=this._options.createChangeEvent(l);this._options=l,this._bracketPairs.handleDidChangeOptions(c),this._decorationProvider.handleDidChangeOptions(c),this._onDidChangeOptions.fire(c)}detectIndentation(e,n){this._assertNotDisposed();const r=zge(this._buffer,n,e);this.updateOptions({insertSpaces:r.insertSpaces,tabSize:r.tabSize,indentSize:r.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),Loe(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){const n=this.findMatches(Z2e.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,n.map(r=>({range:r.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();const n=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(n.lineNumber,n.column)}getPositionAt(e){this._assertNotDisposed();const n=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(n)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,n=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new Vs("Operation would exceed heap memory limits");const r=this.getFullModelRange(),s=this.getValueInRange(r,e);return n?this._buffer.getBOM()+s:s}createSnapshot(e=!1){return new $mt(this._buffer.createSnapshot(e))}getValueLength(e,n=!1){this._assertNotDisposed();const r=this.getFullModelRange(),s=this.getValueLengthInRange(r,e);return n?this._buffer.getBOM().length+s:s}getValueInRange(e,n=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),n)}getValueLengthInRange(e,n=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),n)}getCharacterCountInRange(e,n=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),n)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Vs("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Vs("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new Vs("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),this._buffer.getEOL()===` `?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Vs("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Vs("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw new Vs("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){const n=this._buffer.getLineCount(),r=e.startLineNumber,s=e.startColumn;let o=Math.floor(typeof r=="number"&&!isNaN(r)?r:1),a=Math.floor(typeof s=="number"&&!isNaN(s)?s:1);if(o<1)o=1,a=1;else if(o>n)o=n,a=this.getLineMaxColumn(o);else if(a<=1)a=1;else{const h=this.getLineMaxColumn(o);a>=h&&(a=h)}const l=e.endLineNumber,c=e.endColumn;let u=Math.floor(typeof l=="number"&&!isNaN(l)?l:1),d=Math.floor(typeof c=="number"&&!isNaN(c)?c:1);if(u<1)u=1,d=1;else if(u>n)u=n,d=this.getLineMaxColumn(u);else if(d<=1)d=1;else{const h=this.getLineMaxColumn(u);d>=h&&(d=h)}return r===o&&s===a&&l===u&&c===d&&e instanceof J&&!(e instanceof Ft)?e:new J(o,a,u,d)}_isValidPosition(e,n,r){if(typeof e!="number"||typeof n!="number"||isNaN(e)||isNaN(n)||e<1||n<1||(e|0)!==e||(n|0)!==n)return!1;const s=this._buffer.getLineCount();if(e>s)return!1;if(n===1)return!0;const o=this.getLineMaxColumn(e);if(n>o)return!1;if(r===1){const a=this._buffer.getLineCharCode(e,n-2);if(xo(a))return!1}return!0}_validatePosition(e,n,r){const s=Math.floor(typeof e=="number"&&!isNaN(e)?e:1),o=Math.floor(typeof n=="number"&&!isNaN(n)?n:1),a=this._buffer.getLineCount();if(s<1)return new ve(1,1);if(s>a)return new ve(a,this.getLineMaxColumn(a));if(o<=1)return new ve(s,1);const l=this.getLineMaxColumn(s);if(o>=l)return new ve(s,l);if(r===1){const c=this._buffer.getLineCharCode(s,o-2);if(xo(c))return new ve(s,o-1)}return new ve(s,o)}validatePosition(e){return this._assertNotDisposed(),e instanceof ve&&this._isValidPosition(e.lineNumber,e.column,1)?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,n){const r=e.startLineNumber,s=e.startColumn,o=e.endLineNumber,a=e.endColumn;if(!this._isValidPosition(r,s,0)||!this._isValidPosition(o,a,0))return!1;if(n===1){const l=s>1?this._buffer.getLineCharCode(r,s-2):0,c=a>1&&a<=this._buffer.getLineLength(o)?this._buffer.getLineCharCode(o,a-2):0,u=xo(l),d=xo(c);return!u&&!d}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof J&&!(e instanceof Ft)&&this._isValidRange(e,1))return e;const r=this._validatePosition(e.startLineNumber,e.startColumn,0),s=this._validatePosition(e.endLineNumber,e.endColumn,0),o=r.lineNumber,a=r.column,l=s.lineNumber,c=s.column;{const u=a>1?this._buffer.getLineCharCode(o,a-2):0,d=c>1&&c<=this._buffer.getLineLength(l)?this._buffer.getLineCharCode(l,c-2):0,h=xo(u),f=xo(d);return!h&&!f?new J(o,a,l,c):o===l&&a===c?new J(o,a-1,l,c-1):h&&f?new J(o,a-1,l,c+1):h?new J(o,a-1,l,c):new J(o,a,l,c+1)}}modifyPosition(e,n){this._assertNotDisposed();const r=this.getOffsetAt(e)+n;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,r)))}getFullModelRange(){this._assertNotDisposed();const e=this.getLineCount();return new J(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,n,r,s){return this._buffer.findMatchesLineByLine(e,n,r,s)}findMatches(e,n,r,s,o,a,l=jmt){this._assertNotDisposed();let c=null;n!==null&&(Array.isArray(n)||(n=[n]),n.every(h=>J.isIRange(h))&&(c=n.map(h=>this.validateRange(h)))),c===null&&(c=[this.getFullModelRange()]),c=c.sort((h,f)=>h.startLineNumber-f.startLineNumber||h.startColumn-f.startColumn);const u=[];u.push(c.reduce((h,f)=>J.areIntersecting(h,f)?h.plusRange(f):(u.push(h),f)));let d;if(!r&&e.indexOf(` `)<0){const f=new MC(e,r,s,o).parseSearchRequest();if(!f)return[];d=p=>this.findMatchesLineByLine(p,f,a,l)}else d=h=>z3.findMatches(this,new MC(e,r,s,o),h,a,l);return u.map(d).reduce((h,f)=>h.concat(f),[])}findNextMatch(e,n,r,s,o,a){this._assertNotDisposed();const l=this.validatePosition(n);if(!r&&e.indexOf(` `)<0){const u=new MC(e,r,s,o).parseSearchRequest();if(!u)return null;const d=this.getLineCount();let h=new J(l.lineNumber,l.column,d,this.getLineMaxColumn(d)),f=this.findMatchesLineByLine(h,u,a,1);return z3.findNextMatch(this,new MC(e,r,s,o),l,a),f.length>0||(h=new J(1,1,l.lineNumber,this.getLineMaxColumn(l.lineNumber)),f=this.findMatchesLineByLine(h,u,a,1),f.length>0)?f[0]:null}return z3.findNextMatch(this,new MC(e,r,s,o),l,a)}findPreviousMatch(e,n,r,s,o,a){this._assertNotDisposed();const l=this.validatePosition(n);return z3.findPreviousMatch(this,new MC(e,r,s,o),l,a)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if((this.getEOL()===` `?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof uq?e:new uq(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){const n=[];for(let r=0,s=e.length;r({range:this.validateRange(l.range),text:l.text}));let a=!0;if(e)for(let l=0,c=e.length;lu.endLineNumber,m=u.startLineNumber>p.endLineNumber;if(!g&&!m){d=!0;break}}if(!d){a=!1;break}}if(a)for(let l=0,c=this._trimAutoWhitespaceLines.length;lg.endLineNumber)&&!(u===g.startLineNumber&&g.startColumn===d&&g.isEmpty()&&m&&m.length>0&&m.charAt(0)===` `)&&!(u===g.startLineNumber&&g.startColumn===1&&g.isEmpty()&&m&&m.length>0&&m.charAt(m.length-1)===` `)){h=!1;break}}if(h){const f=new J(u,1,u,d);n.push(new uq(null,f,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,n,r,s)}_applyUndo(e,n,r,s){const o=e.map(a=>{const l=this.getPositionAt(a.newPosition),c=this.getPositionAt(a.newEnd);return{range:new J(l.lineNumber,l.column,c.lineNumber,c.column),text:a.oldText}});this._applyUndoRedoEdits(o,n,!0,!1,r,s)}_applyRedo(e,n,r,s){const o=e.map(a=>{const l=this.getPositionAt(a.oldPosition),c=this.getPositionAt(a.oldEnd);return{range:new J(l.lineNumber,l.column,c.lineNumber,c.column),text:a.newText}});this._applyUndoRedoEdits(o,n,!1,!0,r,s)}_applyUndoRedoEdits(e,n,r,s,o,a){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=r,this._isRedoing=s,this.applyEdits(e,!1),this.setEOL(n),this._overwriteAlternativeVersionId(o)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(a),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,n=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const r=this._validateEditOperations(e);return this._doApplyEdits(r,n)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,n){const r=this._buffer.getLineCount(),s=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,n),o=this._buffer.getLineCount(),a=s.changes;if(this._trimAutoWhitespaceLines=s.trimAutoWhitespaceLineNumbers,a.length!==0){for(let u=0,d=a.length;u=0;M--){const N=p+M,P=x+M;A.takeFromEndWhile(B=>B.lineNumber>P);const O=A.takeFromEndWhile(B=>B.lineNumber===P);l.push(new Zge(N,this.getLineContent(P),O))}if(bY.lineNumberY.lineNumber===H)}l.push(new Mmt(N+1,p+_,j,B))}c+=y}this._emitContentChangedEvent(new Q2(l,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:a,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return s.reverseEdits===null?void 0:s.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(e===null||e.size===0)return;const r=Array.from(e).map(s=>new Zge(s,this.getLineContent(s),this._getInjectedTextInLine(s)));this._onDidChangeInjectedText.fire(new fTe(r))}changeDecorations(e,n=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(n,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,n){const r={addDecoration:(o,a)=>this._deltaDecorationsImpl(e,[],[{range:o,options:a}])[0],changeDecoration:(o,a)=>{this._changeDecorationImpl(o,a)},changeDecorationOptions:(o,a)=>{this._changeDecorationOptionsImpl(o,tme(a))},removeDecoration:o=>{this._deltaDecorationsImpl(e,[o],[])},deltaDecorations:(o,a)=>o.length===0&&a.length===0?[]:this._deltaDecorationsImpl(e,o,a)};let s=null;try{s=n(r)}catch(o){Ln(o)}return r.addDecoration=ZR,r.changeDecoration=ZR,r.changeDecorationOptions=ZR,r.removeDecoration=ZR,r.deltaDecorations=ZR,s}deltaDecorations(e,n,r=0){if(this._assertNotDisposed(),e||(e=[]),e.length===0&&n.length===0)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),Ln(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(r,e,n)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,n,r){const s=e?this._decorations[e]:null;if(!s)return n?this._deltaDecorationsImpl(0,[],[{range:n,options:eme[r]}],!0)[0]:null;if(!n)return this._decorationsTree.delete(s),delete this._decorations[s.id],null;const o=this._validateRangeRelaxedNoAllocations(n),a=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),l=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);return this._decorationsTree.delete(s),s.reset(this.getVersionId(),a,l,o),s.setOptions(eme[r]),this._decorationsTree.insert(s),s.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;const n=this._decorationsTree.collectNodesFromOwner(e);for(let r=0,s=n.length;rthis.getLineCount()?[]:this.getLinesDecorations(e,e,n,r)}getLinesDecorations(e,n,r=0,s=!1,o=!1){const a=this.getLineCount(),l=Math.min(a,Math.max(1,e)),c=Math.min(a,Math.max(1,n)),u=this.getLineMaxColumn(c),d=new J(l,1,c,u),h=this._getDecorationsInRange(d,r,s,o);return rQ(h,this._decorationProvider.getDecorationsInRange(d,r,s)),h}getDecorationsInRange(e,n=0,r=!1,s=!1,o=!1){const a=this.validateRange(e),l=this._getDecorationsInRange(a,n,r,o);return rQ(l,this._decorationProvider.getDecorationsInRange(a,n,r,s)),l}getOverviewRulerDecorations(e=0,n=!1){return this._decorationsTree.getAll(this,e,n,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){const n=this._buffer.getOffsetAt(e,1),r=n+this._buffer.getLineLength(e),s=this._decorationsTree.getInjectedTextInInterval(this,n,r,0);return Xp.fromDecorations(s).filter(o=>o.lineNumber===e)}getAllDecorations(e=0,n=!1){let r=this._decorationsTree.getAll(this,e,n,!1,!1);return r=r.concat(this._decorationProvider.getAllDecorations(e,n)),r}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!0)}_getDecorationsInRange(e,n,r,s){const o=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),a=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,o,a,n,r,s)}getRangeAt(e,n){return this._buffer.getRangeAt(e,n-e)}_changeDecorationImpl(e,n){const r=this._decorations[e];if(!r)return;if(r.options.after){const l=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.endLineNumber)}if(r.options.before){const l=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.startLineNumber)}const s=this._validateRangeRelaxedNoAllocations(n),o=this._buffer.getOffsetAt(s.startLineNumber,s.startColumn),a=this._buffer.getOffsetAt(s.endLineNumber,s.endColumn);this._decorationsTree.delete(r),r.reset(this.getVersionId(),o,a,s),this._decorationsTree.insert(r),this._onDidChangeDecorations.checkAffectedAndFire(r.options),r.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(s.endLineNumber),r.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(s.startLineNumber)}_changeDecorationOptionsImpl(e,n){const r=this._decorations[e];if(!r)return;const s=!!(r.options.overviewRuler&&r.options.overviewRuler.color),o=!!(n.overviewRuler&&n.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(r.options),this._onDidChangeDecorations.checkAffectedAndFire(n),r.options.after||n.after){const a=this._decorationsTree.getNodeRange(this,r);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(r.options.before||n.before){const a=this._decorationsTree.getNodeRange(this,r);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}s!==o?(this._decorationsTree.delete(r),r.setOptions(n),this._decorationsTree.insert(r)):r.setOptions(n)}_deltaDecorationsImpl(e,n,r,s=!1){const o=this.getVersionId(),a=n.length;let l=0;const c=r.length;let u=0;this._onDidChangeDecorations.beginDeferredEmit();try{const d=new Array(c);for(;lthis._setLanguage(e.languageId,n)),this._setLanguage(e.languageId,n))}_setLanguage(e,n){this.tokenization.setLanguageId(e,n),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,n){return this.tokenization.getLanguageIdAtPosition(e,n)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,n){return e}getLineIndentColumn(e){return zmt(this.getLineContent(e))+1}};Qm._MODEL_SYNC_LIMIT=50*1024*1024;Qm.LARGE_FILE_SIZE_THRESHOLD=20*1024*1024;Qm.LARGE_FILE_LINE_COUNT_THRESHOLD=300*1e3;Qm.LARGE_FILE_HEAP_OPERATION_THRESHOLD=256*1024*1024;Qm.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:za.tabSize,indentSize:za.indentSize,insertSpaces:za.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:za.trimAutoWhitespace,largeFileOptimizations:za.largeFileOptimizations,bracketPairColorizationOptions:za.bracketPairColorizationOptions};Qm=PC=Omt([Tq(4,P$),Tq(5,Ar),Tq(6,dr)],Qm);function zmt(i){let e=0;for(const n of i)if(n===" "||n===" ")e++;else break;return e}function Rq(i){return!!(i.options.overviewRuler&&i.options.overviewRuler.color)}function Aq(i){return!!i.options.after||!!i.options.before}class Jge{constructor(){this._decorationsTree0=new Dq,this._decorationsTree1=new Dq,this._injectedTextDecorationsTree=new Dq}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1)}_ensureNodesHaveRanges(e,n){for(const r of n)r.range===null&&(r.range=e.getRangeAt(r.cachedAbsoluteStart,r.cachedAbsoluteEnd));return n}getAllInInterval(e,n,r,s,o,a){const l=e.getVersionId(),c=this._intervalSearch(n,r,s,o,l,a);return this._ensureNodesHaveRanges(e,c)}_intervalSearch(e,n,r,s,o,a){const l=this._decorationsTree0.intervalSearch(e,n,r,s,o,a),c=this._decorationsTree1.intervalSearch(e,n,r,s,o,a),u=this._injectedTextDecorationsTree.intervalSearch(e,n,r,s,o,a);return l.concat(c).concat(u)}getInjectedTextInInterval(e,n,r,s){const o=e.getVersionId(),a=this._injectedTextDecorationsTree.intervalSearch(n,r,s,!1,o,!1);return this._ensureNodesHaveRanges(e,a).filter(l=>l.options.showIfCollapsed||!l.range.isEmpty())}getAllInjectedText(e,n){const r=e.getVersionId(),s=this._injectedTextDecorationsTree.search(n,!1,r,!1);return this._ensureNodesHaveRanges(e,s).filter(o=>o.options.showIfCollapsed||!o.range.isEmpty())}getAll(e,n,r,s,o){const a=e.getVersionId(),l=this._search(n,r,s,a,o);return this._ensureNodesHaveRanges(e,l)}_search(e,n,r,s,o){if(r)return this._decorationsTree1.search(e,n,s,o);{const a=this._decorationsTree0.search(e,n,s,o),l=this._decorationsTree1.search(e,n,s,o),c=this._injectedTextDecorationsTree.search(e,n,s,o);return a.concat(l).concat(c)}}collectNodesFromOwner(e){const n=this._decorationsTree0.collectNodesFromOwner(e),r=this._decorationsTree1.collectNodesFromOwner(e),s=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return n.concat(r).concat(s)}collectNodesPostOrder(){const e=this._decorationsTree0.collectNodesPostOrder(),n=this._decorationsTree1.collectNodesPostOrder(),r=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(n).concat(r)}insert(e){Aq(e)?this._injectedTextDecorationsTree.insert(e):Rq(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){Aq(e)?this._injectedTextDecorationsTree.delete(e):Rq(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,n){const r=e.getVersionId();return n.cachedVersionId!==r&&this._resolveNode(n,r),n.range===null&&(n.range=e.getRangeAt(n.cachedAbsoluteStart,n.cachedAbsoluteEnd)),n.range}_resolveNode(e,n){Aq(e)?this._injectedTextDecorationsTree.resolveNode(e,n):Rq(e)?this._decorationsTree1.resolveNode(e,n):this._decorationsTree0.resolveNode(e,n)}acceptReplace(e,n,r,s){this._decorationsTree0.acceptReplace(e,n,r,s),this._decorationsTree1.acceptReplace(e,n,r,s),this._injectedTextDecorationsTree.acceptReplace(e,n,r,s)}}function Z_(i){return i.replace(/[^a-z0-9\-_]/gi," ")}class gTe{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class Vmt extends gTe{constructor(e){super(e),this._resolvedColor=null,this.position=typeof e.position=="number"?e.position:hd.Center}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,n){if(typeof e=="string")return e;const r=e?n.getColor(e.id):null;return r?r.toString():""}}class Hmt{constructor(e){var n;this.position=(n=e==null?void 0:e.position)!==null&&n!==void 0?n:z2.Left}}class Umt extends gTe{constructor(e){super(e),this.position=e.position}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,n){return typeof e=="string"?Te.fromHex(e):n.getColor(e.id)}}class S1{static from(e){return e instanceof S1?e:new S1(e)}constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}}class kn{static register(e){return new kn(e)}static createDynamic(e){return new kn(e)}constructor(e){var n,r,s,o,a,l;this.description=e.description,this.blockClassName=e.blockClassName?Z_(e.blockClassName):null,this.blockDoesNotCollapse=(n=e.blockDoesNotCollapse)!==null&&n!==void 0?n:null,this.blockIsAfterEnd=(r=e.blockIsAfterEnd)!==null&&r!==void 0?r:null,this.blockPadding=(s=e.blockPadding)!==null&&s!==void 0?s:null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Z_(e.className):null,this.shouldFillLineOnLineBreak=(o=e.shouldFillLineOnLineBreak)!==null&&o!==void 0?o:null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new Vmt(e.overviewRuler):null,this.minimap=e.minimap?new Umt(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new Hmt(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?Z_(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Z_(e.linesDecorationsClassName):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Z_(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Z_(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Z_(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Z_(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Z_(e.afterContentClassName):null,this.after=e.after?S1.from(e.after):null,this.before=e.before?S1.from(e.before):null,this.hideInCommentTokens=(a=e.hideInCommentTokens)!==null&&a!==void 0?a:!1,this.hideInStringTokens=(l=e.hideInStringTokens)!==null&&l!==void 0?l:!1}}kn.EMPTY=kn.register({description:"empty"});const eme=[kn.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),kn.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),kn.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),kn.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function tme(i){return i instanceof kn?i:kn.createDynamic(i)}class qmt extends Le{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new _e),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){var e;this._deferredCnt--,this._deferredCnt===0&&(this._shouldFireDeferred&&this.doFire(),(e=this._affectedInjectedTextLines)===null||e===void 0||e.clear(),this._affectedInjectedTextLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||(this._affectsMinimap=!!(e.minimap&&e.minimap.position)),this._affectsOverviewRuler||(this._affectsOverviewRuler=!!(e.overviewRuler&&e.overviewRuler.color)),this._affectsGlyphMargin||(this._affectsGlyphMargin=!!e.glyphMarginClassName),this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){this._deferredCnt===0?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines);const e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}}class Kmt extends Le{constructor(){super(),this._fastEmitter=this._register(new _e),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new _e),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;const n=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(n),this._slowEmitter.fire(n)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}class Gmt{constructor(){this._onDidChangeVisibleRanges=new _e,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set}attachView(){const e=new Xmt(n=>{this._onDidChangeVisibleRanges.fire({view:e,state:n})});return this._views.add(e),e}detachView(e){this._views.delete(e),this._onDidChangeVisibleRanges.fire({view:e,state:void 0})}}class Xmt{constructor(e){this.handleStateChange=e}setVisibleLines(e,n){const r=e.map(s=>new Qn(s.startLineNumber,s.endLineNumber+1));this.handleStateChange({visibleLineRanges:r,stabilized:n})}}class h7{constructor(e){this._selTrackedRange=null,this._trackSelection=!0,this._setState(e,new ta(new J(1,1,1,1),0,0,new ve(1,1),0),new ta(new J(1,1,1,1),0,0,new ve(1,1),0))}dispose(e){this._removeTrackedRange(e)}startTrackingSelection(e){this._trackSelection=!0,this._updateTrackedRange(e)}stopTrackingSelection(e){this._trackSelection=!1,this._removeTrackedRange(e)}_updateTrackedRange(e){this._trackSelection&&(this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0))}_removeTrackedRange(e){this._selTrackedRange=e.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new hi(this.modelState,this.viewState)}readSelectionFromMarkers(e){const n=e.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.isEmpty()&&!n.isEmpty()?Ft.fromRange(n.collapseToEnd(),this.modelState.selection.getDirection()):Ft.fromRange(n,this.modelState.selection.getDirection())}ensureValidState(e){this._setState(e,this.modelState,this.viewState)}setState(e,n,r){this._setState(e,n,r)}static _validatePositionWithCache(e,n,r,s){return n.equals(r)?s:e.normalizePosition(n,2)}static _validateViewState(e,n){const r=n.position,s=n.selectionStart.getStartPosition(),o=n.selectionStart.getEndPosition(),a=e.normalizePosition(r,2),l=this._validatePositionWithCache(e,s,r,a),c=this._validatePositionWithCache(e,o,s,l);return r.equals(a)&&s.equals(l)&&o.equals(c)?n:new ta(J.fromPositions(l,c),n.selectionStartKind,n.selectionStartLeftoverVisibleColumns+s.column-l.column,a,n.leftoverVisibleColumns+r.column-a.column)}_setState(e,n,r){if(r&&(r=h7._validateViewState(e.viewModel,r)),n){const s=e.model.validateRange(n.selectionStart),o=n.selectionStart.equalsRange(s)?n.selectionStartLeftoverVisibleColumns:0,a=e.model.validatePosition(n.position),l=n.position.equals(a)?n.leftoverVisibleColumns:0;n=new ta(s,n.selectionStartKind,o,a,l)}else{if(!r)return;const s=e.model.validateRange(e.coordinatesConverter.convertViewRangeToModelRange(r.selectionStart)),o=e.model.validatePosition(e.coordinatesConverter.convertViewPositionToModelPosition(r.position));n=new ta(s,r.selectionStartKind,r.selectionStartLeftoverVisibleColumns,o,r.leftoverVisibleColumns)}if(r){const s=e.coordinatesConverter.validateViewRange(r.selectionStart,n.selectionStart),o=e.coordinatesConverter.validateViewPosition(r.position,n.position);r=new ta(s,n.selectionStartKind,n.selectionStartLeftoverVisibleColumns,o,n.leftoverVisibleColumns)}else{const s=e.coordinatesConverter.convertModelPositionToViewPosition(new ve(n.selectionStart.startLineNumber,n.selectionStart.startColumn)),o=e.coordinatesConverter.convertModelPositionToViewPosition(new ve(n.selectionStart.endLineNumber,n.selectionStart.endColumn)),a=new J(s.lineNumber,s.column,o.lineNumber,o.column),l=e.coordinatesConverter.convertModelPositionToViewPosition(n.position);r=new ta(a,n.selectionStartKind,n.selectionStartLeftoverVisibleColumns,l,n.leftoverVisibleColumns)}this.modelState=n,this.viewState=r,this._updateTrackedRange(e)}}class nme{constructor(e){this.context=e,this.cursors=[new h7(e)],this.lastAddedCursorIndex=0}dispose(){for(const e of this.cursors)e.dispose(this.context)}startTrackingSelections(){for(const e of this.cursors)e.startTrackingSelection(this.context)}stopTrackingSelections(){for(const e of this.cursors)e.stopTrackingSelection(this.context)}updateContext(e){this.context=e}ensureValidState(){for(const e of this.cursors)e.ensureValidState(this.context)}readSelectionFromMarkers(){return this.cursors.map(e=>e.readSelectionFromMarkers(this.context))}getAll(){return this.cursors.map(e=>e.asCursorState())}getViewPositions(){return this.cursors.map(e=>e.viewState.position)}getTopMostViewPosition(){return Fct(this.cursors,ch(e=>e.viewState.position,ve.compare)).viewState.position}getBottomMostViewPosition(){return Oct(this.cursors,ch(e=>e.viewState.position,ve.compare)).viewState.position}getSelections(){return this.cursors.map(e=>e.modelState.selection)}getViewSelections(){return this.cursors.map(e=>e.viewState.selection)}setSelections(e){this.setStates(hi.fromModelSelections(e))}getPrimaryCursor(){return this.cursors[0].asCursorState()}setStates(e){e!==null&&(this.cursors[0].setState(this.context,e[0].modelState,e[0].viewState),this._setSecondaryStates(e.slice(1)))}_setSecondaryStates(e){const n=this.cursors.length-1,r=e.length;if(nr){const s=n-r;for(let o=0;o=e+1&&this.lastAddedCursorIndex--,this.cursors[e+1].dispose(this.context),this.cursors.splice(e+1,1)}normalize(){if(this.cursors.length===1)return;const e=this.cursors.slice(0),n=[];for(let r=0,s=e.length;rr.selection,J.compareRangesUsingStarts));for(let r=0;rh&&m.index--;e.splice(h,1),n.splice(d,1),this._removeSecondaryCursor(h-1),r--}}}}class ime{constructor(e,n,r,s){this._cursorContextBrand=void 0,this.model=e,this.viewModel=n,this.coordinatesConverter=r,this.cursorConfig=s}}class Ymt{constructor(){this.type=0}}class Zmt{constructor(){this.type=1}}class Qmt{constructor(e){this.type=2,this._source=e}hasChanged(e){return this._source.hasChanged(e)}}class Jmt{constructor(e,n,r){this.selections=e,this.modelSelections=n,this.reason=r,this.type=3}}class iD{constructor(e){this.type=4,e?(this.affectsMinimap=e.affectsMinimap,this.affectsOverviewRuler=e.affectsOverviewRuler,this.affectsGlyphMargin=e.affectsGlyphMargin):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0,this.affectsGlyphMargin=!0)}}class r6{constructor(){this.type=5}}class e_t{constructor(e){this.type=6,this.isFocused=e}}class t_t{constructor(){this.type=7}}class s6{constructor(){this.type=8}}class mTe{constructor(e,n){this.fromLineNumber=e,this.count=n,this.type=9}}class qJ{constructor(e,n){this.type=10,this.fromLineNumber=e,this.toLineNumber=n}}class KJ{constructor(e,n){this.type=11,this.fromLineNumber=e,this.toLineNumber=n}}class v8{constructor(e,n,r,s,o,a,l){this.source=e,this.minimalReveal=n,this.range=r,this.selections=s,this.verticalType=o,this.revealHorizontal=a,this.scrollType=l,this.type=12}}class n_t{constructor(e){this.type=13,this.scrollWidth=e.scrollWidth,this.scrollLeft=e.scrollLeft,this.scrollHeight=e.scrollHeight,this.scrollTop=e.scrollTop,this.scrollWidthChanged=e.scrollWidthChanged,this.scrollLeftChanged=e.scrollLeftChanged,this.scrollHeightChanged=e.scrollHeightChanged,this.scrollTopChanged=e.scrollTopChanged}}class i_t{constructor(e){this.theme=e,this.type=14}}class r_t{constructor(e){this.type=15,this.ranges=e}}class s_t{constructor(){this.type=16}}let o_t=class{constructor(){this.type=17}};class a_t extends Le{constructor(){super(),this._onEvent=this._register(new _e),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(e){this._addOutgoingEvent(e),this._emitOutgoingEvents()}_addOutgoingEvent(e){for(let n=0,r=this._outgoingEvents.length;n0;){if(this._collector||this._isConsumingViewEventQueue)return;const e=this._outgoingEvents.shift();e.isNoOp()||this._onEvent.fire(e)}}addViewEventHandler(e){for(let n=0,r=this._eventHandlers.length;n0&&this._emitMany(n)}this._emitOutgoingEvents()}emitSingleViewEvent(e){try{this.beginEmitViewEvents().emitViewEvent(e)}finally{this.endEmitViewEvents()}}_emitMany(e){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(e):this._viewEventQueue=e,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){const e=this._viewEventQueue;this._viewEventQueue=null;const n=this._eventHandlers.slice(0);for(const r of n)r.handleEvents(e)}}}class l_t{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(e){this.viewEvents.push(e)}emitOutgoingEvent(e){this.outgoingEvents.push(e)}}class joe{constructor(e,n,r,s){this.kind=0,this._oldContentWidth=e,this._oldContentHeight=n,this.contentWidth=r,this.contentHeight=s,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}attemptToMerge(e){return e.kind!==this.kind?null:new joe(this._oldContentWidth,this._oldContentHeight,e.contentWidth,e.contentHeight)}}class Woe{constructor(e,n){this.kind=1,this.oldHasFocus=e,this.hasFocus=n}isNoOp(){return this.oldHasFocus===this.hasFocus}attemptToMerge(e){return e.kind!==this.kind?null:new Woe(this.oldHasFocus,e.hasFocus)}}class $oe{constructor(e,n,r,s,o,a,l,c){this.kind=2,this._oldScrollWidth=e,this._oldScrollLeft=n,this._oldScrollHeight=r,this._oldScrollTop=s,this.scrollWidth=o,this.scrollLeft=a,this.scrollHeight=l,this.scrollTop=c,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}attemptToMerge(e){return e.kind!==this.kind?null:new $oe(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,e.scrollWidth,e.scrollLeft,e.scrollHeight,e.scrollTop)}}class c_t{constructor(){this.kind=3}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class u_t{constructor(){this.kind=4}isNoOp(){return!1}attemptToMerge(e){return e.kind!==this.kind?null:this}}class f7{constructor(e,n,r,s,o,a,l){this.kind=6,this.oldSelections=e,this.selections=n,this.oldModelVersionId=r,this.modelVersionId=s,this.source=o,this.reason=a,this.reachedMaxCursorCount=l}static _selectionsAreEqual(e,n){if(!e&&!n)return!0;if(!e||!n)return!1;const r=e.length,s=n.length;if(r!==s)return!1;for(let o=0;o0){const e=this._cursors.getSelections();for(let n=0;na&&(s=s.slice(0,a),o=!0);const l=hM.from(this._model,this);return this._cursors.setStates(s),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(e,n,r,l,o)}setCursorColumnSelectData(e){this._columnSelectData=e}revealPrimary(e,n,r,s,o,a){const l=this._cursors.getViewPositions();let c=null,u=null;l.length>1?u=this._cursors.getViewSelections():c=J.fromPositions(l[0],l[0]),e.emitViewEvent(new v8(n,r,c,u,s,o,a))}saveState(){const e=[],n=this._cursors.getSelections();for(let r=0,s=n.length;r0){const o=hi.fromModelSelections(r.resultingSelection);this.setStates(e,"modelChange",r.isUndoing?5:r.isRedoing?6:2,o)&&this.revealPrimary(e,"modelChange",!1,0,!0,0)}else{const o=this._cursors.readSelectionFromMarkers();this.setStates(e,"modelChange",2,hi.fromModelSelections(o))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;const e=this._cursors.getPrimaryCursor(),n=e.viewState.selectionStart.getStartPosition(),r=e.viewState.position;return{isReal:!1,fromViewLineNumber:n.lineNumber,fromViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,n),toViewLineNumber:r.lineNumber,toViewVisualColumn:this.context.cursorConfig.visibleColumnFromColumn(this._viewModel,r)}}getSelections(){return this._cursors.getSelections()}setSelections(e,n,r,s){this.setStates(e,n,s,hi.fromModelSelections(r))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(e){this._prevEditOperationType=e}_pushAutoClosedAction(e,n){const r=[],s=[];for(let l=0,c=e.length;l0&&this._pushAutoClosedAction(r,s),this._prevEditOperationType=e.type}e.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(e){(!e||e.length===0)&&(e=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(e),this._cursors.normalize()}_emitStateChangedIfNecessary(e,n,r,s,o){const a=hM.from(this._model,this);if(a.equals(s))return!1;const l=this._cursors.getSelections(),c=this._cursors.getViewSelections();if(e.emitViewEvent(new Jmt(c,l,r)),!s||s.cursorState.length!==a.cursorState.length||a.cursorState.some((u,d)=>!u.modelState.equals(s.cursorState[d].modelState))){const u=s?s.cursorState.map(h=>h.modelState.selection):null,d=s?s.modelVersionId:0;e.emitOutgoingEvent(new f7(u,l,d,a.modelVersionId,n||"keyboard",r,o))}return!0}_findAutoClosingPairs(e){if(!e.length)return null;const n=[];for(let r=0,s=e.length;r=0)return null;const a=o.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!a)return null;const l=a[1],c=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(l);if(!c||c.length!==1)return null;const u=c[0].open,d=o.text.length-a[2].length-1,h=o.text.lastIndexOf(u,d-1);if(h===-1)return null;n.push([h,d])}return n}executeEdits(e,n,r,s){let o=null;n==="snippet"&&(o=this._findAutoClosingPairs(r)),o&&(r[0]._isTracked=!0);const a=[],l=[],c=this._model.pushEditOperations(this.getSelections(),r,u=>{if(o)for(let h=0,f=o.length;h0&&this._pushAutoClosedAction(a,l)}_executeEdit(e,n,r,s=0){if(this.context.cursorConfig.readOnly)return;const o=hM.from(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),e()}catch(a){Ln(a)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(n,r,s,o,!1)&&this.revealPrimary(n,r,!1,0,!0,0)}getAutoClosedCharacters(){return rme.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(e){this._compositionState=new fM(this._model,this.getSelections())}endComposition(e,n){const r=this._compositionState?this._compositionState.deduceOutcome(this._model,this.getSelections()):null;this._compositionState=null,this._executeEdit(()=>{n==="keyboard"&&this._executeEditOperation(zr.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,r,this.getSelections(),this.getAutoClosedCharacters()))},e,n)}type(e,n,r){this._executeEdit(()=>{if(r==="keyboard"){const s=n.length;let o=0;for(;o{const u=c.getPosition();return new Ft(u.lineNumber,u.column+o,u.lineNumber,u.column+o)});this.setSelections(e,a,l,0)}return}this._executeEdit(()=>{this._executeEditOperation(zr.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),n,r,s,o))},e,a)}paste(e,n,r,s,o){this._executeEdit(()=>{this._executeEditOperation(zr.paste(this.context.cursorConfig,this._model,this.getSelections(),n,r,s||[]))},e,o,4)}cut(e,n){this._executeEdit(()=>{this._executeEditOperation(fx.cut(this.context.cursorConfig,this._model,this.getSelections()))},e,n)}executeCommand(e,n,r){this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new lc(0,[n],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,r)}executeCommands(e,n,r){this._executeEdit(()=>{this._executeEditOperation(new lc(0,n,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},e,r)}}class hM{static from(e,n){return new hM(e.getVersionId(),n.getCursorStates())}constructor(e,n){this.modelVersionId=e,this.cursorState=n}equals(e){if(!e||this.modelVersionId!==e.modelVersionId||this.cursorState.length!==e.cursorState.length)return!1;for(let n=0,r=this.cursorState.length;n=n.length||!n[r].strictContainsRange(e[r]))return!1;return!0}}class b_t{static executeCommands(e,n,r){const s={model:e,selectionsBefore:n,trackedRanges:[],trackedRangesDirection:[]},o=this._innerExecuteCommands(s,r);for(let a=0,l=s.trackedRanges.length;a0&&(a[0]._isTracked=!0);let l=e.model.pushEditOperations(e.selectionsBefore,a,u=>{const d=[];for(let p=0;pp.identifier.minor-g.identifier.minor,f=[];for(let p=0;p0?(d[p].sort(h),f[p]=n[p].computeCursorState(e.model,{getInverseEditOperations:()=>d[p],getTrackedSelection:g=>{const m=parseInt(g,10),_=e.model._getTrackedRange(e.trackedRanges[m]);return e.trackedRangesDirection[m]===0?new Ft(_.startLineNumber,_.startColumn,_.endLineNumber,_.endColumn):new Ft(_.endLineNumber,_.endColumn,_.startLineNumber,_.startColumn)}})):f[p]=e.selectionsBefore[p];return f});l||(l=e.selectionsBefore);const c=[];for(const u in o)o.hasOwnProperty(u)&&c.push(parseInt(u,10));c.sort((u,d)=>d-u);for(const u of c)l.splice(u,1);return l}static _arrayIsEmpty(e){for(let n=0,r=e.length;n{J.isEmpty(h)&&f===""||s.push({identifier:{major:n,minor:o++},range:h,text:f,forceMoveMarkers:p,isAutoWhitespaceEdit:r.insertsAutoWhitespace})};let l=!1;const d={addEditOperation:a,addTrackedEditOperation:(h,f,p)=>{l=!0,a(h,f,p)},trackSelection:(h,f)=>{const p=Ft.liftSelection(h);let g;if(p.isEmpty())if(typeof f=="boolean")f?g=2:g=3;else{const b=e.model.getLineMaxColumn(p.startLineNumber);p.startColumn===b?g=2:g=3}else g=1;const m=e.trackedRanges.length,_=e.model._setTrackedRange(null,p,g);return e.trackedRanges[m]=_,e.trackedRangesDirection[m]=p.getDirection(),m.toString()}};try{r.getEditOperations(e.model,d)}catch(h){return Ln(h),{operations:[],hadTrackedEditOperation:!1}}return{operations:s,hadTrackedEditOperation:l}}static _getLoserCursorMap(e){e=e.slice(0),e.sort((r,s)=>-J.compareRangesUsingEnds(r.range,s.range));const n={};for(let r=1;ro.identifier.major?a=s.identifier.major:a=o.identifier.major,n[a.toString()]=!0;for(let l=0;l0&&r--}}return n}}class y_t{constructor(e,n,r){this.text=e,this.startSelection=n,this.endSelection=r}}class fM{static _capture(e,n){const r=[];for(const s of n){if(s.startLineNumber!==s.endLineNumber)return null;r.push(new y_t(e.getLineContent(s.startLineNumber),s.startColumn-1,s.endColumn-1))}return r}constructor(e,n){this._original=fM._capture(e,n)}deduceOutcome(e,n){if(!this._original)return null;const r=fM._capture(e,n);if(!r||this._original.length!==r.length)return null;const s=[];for(let o=0,a=this._original.length;oFE,tokenizeEncoded:(i,e,n)=>C$(0,n)};function C_t(i,e,n){return w_t(this,void 0,void 0,function*(){if(!n)return ome(e,i.languageIdCodec,sme);const r=yield Zr.getOrCreate(n);return ome(e,i.languageIdCodec,r||sme)})}function S_t(i,e,n,r,s,o,a){let l="
",c=r,u=0,d=!0;for(let h=0,f=e.getCount();h0;)a&&d?(g+=" ",d=!1):(g+=" ",d=!0),_--;break}case 60:g+="<",d=!1;break;case 62:g+=">",d=!1;break;case 38:g+="&",d=!1;break;case 0:g+="�",d=!1;break;case 65279:case 8232:case 8233:case 133:g+="�",d=!1;break;case 13:g+="​",d=!1;break;case 32:a&&d?(g+=" ",d=!1):(g+=" ",d=!0);break;default:g+=String.fromCharCode(m),d=!1}}if(l+=`${g}`,p>s||c>=s)break}return l+="
",l}function ome(i,e,n){let r='
';const s=Km(i);let o=n.getInitialState();for(let a=0,l=s.length;a0&&(r+="
");const u=n.tokenizeEncoded(c,!0,o);ko.convertToEndOffset(u.tokens,c.length);const h=new ko(u.tokens,c,e).inflate();let f=0;for(let p=0,g=h.getCount();p${O9(c.substring(f,_))}`,f=_}o=u.endState}return r+="
",r}class x_t{constructor(){this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[]}insert(e){this._hasPending=!0,this._inserts.push(e)}change(e){this._hasPending=!0,this._changes.push(e)}remove(e){this._hasPending=!0,this._removes.push(e)}mustCommit(){return this._hasPending}commit(e){if(!this._hasPending)return;const n=this._inserts,r=this._changes,s=this._removes;this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[],e._commitPendingChanges(n,r,s)}}class k_t{constructor(e,n,r,s,o){this.id=e,this.afterLineNumber=n,this.ordinal=r,this.height=s,this.minWidth=o,this.prefixSum=0}}let _Te=class GJ{constructor(e,n,r,s){this._instanceId=J2e(++GJ.INSTANCE_COUNT),this._pendingChanges=new x_t,this._lastWhitespaceId=0,this._arr=[],this._prefixSumValidIndex=-1,this._minWidth=-1,this._lineCount=e,this._lineHeight=n,this._paddingTop=r,this._paddingBottom=s}static findInsertionIndex(e,n,r){let s=0,o=e.length;for(;s>>1;n===e[a].afterLineNumber?r{n=!0,s=s|0,o=o|0,a=a|0,l=l|0;const c=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new k_t(c,s,o,a,l)),c},changeOneWhitespace:(s,o,a)=>{n=!0,o=o|0,a=a|0,this._pendingChanges.change({id:s,newAfterLineNumber:o,newHeight:a})},removeWhitespace:s=>{n=!0,this._pendingChanges.remove({id:s})}})}finally{this._pendingChanges.commit(this)}return n}_commitPendingChanges(e,n,r){if((e.length>0||r.length>0)&&(this._minWidth=-1),e.length+n.length+r.length<=1){for(const c of e)this._insertWhitespace(c);for(const c of n)this._changeOneWhitespace(c.id,c.newAfterLineNumber,c.newHeight);for(const c of r){const u=this._findWhitespaceIndex(c.id);u!==-1&&this._removeWhitespace(u)}return}const s=new Set;for(const c of r)s.add(c.id);const o=new Map;for(const c of n)o.set(c.id,c);const a=c=>{const u=[];for(const d of c)if(!s.has(d.id)){if(o.has(d.id)){const h=o.get(d.id);d.afterLineNumber=h.newAfterLineNumber,d.height=h.newHeight}u.push(d)}return u},l=a(this._arr).concat(a(e));l.sort((c,u)=>c.afterLineNumber===u.afterLineNumber?c.ordinal-u.ordinal:c.afterLineNumber-u.afterLineNumber),this._arr=l,this._prefixSumValidIndex=-1}_checkPendingChanges(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)}_insertWhitespace(e){const n=GJ.findInsertionIndex(this._arr,e.afterLineNumber,e.ordinal);this._arr.splice(n,0,e),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,n-1)}_findWhitespaceIndex(e){const n=this._arr;for(let r=0,s=n.length;rn&&(this._arr[r].afterLineNumber-=n-e+1)}}onLinesInserted(e,n){this._checkPendingChanges(),e=e|0,n=n|0,this._lineCount+=n-e+1;for(let r=0,s=this._arr.length;r=n.length||n[l+1].afterLineNumber>=e)return l;r=l+1|0}else s=l-1|0}return-1}_findFirstWhitespaceAfterLineNumber(e){e=e|0;const r=this._findLastWhitespaceBeforeLineNumber(e)+1;return r1?r=this._lineHeight*(e-1):r=0;const s=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e-(n?1:0));return r+s+this._paddingTop}getVerticalOffsetAfterLineNumber(e,n=!1){this._checkPendingChanges(),e=e|0;const r=this._lineHeight*e,s=this.getWhitespaceAccumulatedHeightBeforeLineNumber(e+(n?1:0));return r+s+this._paddingTop}getWhitespaceMinWidth(){if(this._checkPendingChanges(),this._minWidth===-1){let e=0;for(let n=0,r=this._arr.length;nn}isInTopPadding(e){return this._paddingTop===0?!1:(this._checkPendingChanges(),e=n-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(e){if(this._checkPendingChanges(),e=e|0,e<0)return 1;const n=this._lineCount|0,r=this._lineHeight;let s=1,o=n;for(;s=l+r)s=a+1;else{if(e>=l)return a;o=a}}return s>n?n:s}getLinesViewportData(e,n){this._checkPendingChanges(),e=e|0,n=n|0;const r=this._lineHeight,s=this.getLineNumberAtOrAfterVerticalOffset(e)|0,o=this.getVerticalOffsetForLineNumber(s)|0;let a=this._lineCount|0,l=this.getFirstWhitespaceIndexAfterLineNumber(s)|0;const c=this.getWhitespacesCount()|0;let u,d;l===-1?(l=c,d=a+1,u=0):(d=this.getAfterLineNumberForWhitespaceIndex(l)|0,u=this.getHeightForWhitespaceIndex(l)|0);let h=o,f=h;const p=5e5;let g=0;o>=p&&(g=Math.floor(o/p)*p,g=Math.floor(g/r)*r,f-=g);const m=[],_=e+(n-e)/2;let b=-1;for(let D=s;D<=a;D++){if(b===-1){const R=h,E=h+r;(R<=_&&__)&&(b=D)}for(h+=r,m[D-s]=f,f+=r;d===D;)f+=u,h+=u,l++,l>=c?d=a+1:(d=this.getAfterLineNumberForWhitespaceIndex(l)|0,u=this.getHeightForWhitespaceIndex(l)|0);if(h>=n){a=D;break}}b===-1&&(b=a);const y=this.getVerticalOffsetForLineNumber(a)|0;let x=s,k=a;return xn&&k--,{bigNumbersDelta:g,startLineNumber:s,endLineNumber:a,relativeVerticalOffset:m,centeredLineNumber:b,completelyVisibleStartLineNumber:x,completelyVisibleEndLineNumber:k}}getVerticalOffsetForWhitespaceIndex(e){this._checkPendingChanges(),e=e|0;const n=this.getAfterLineNumberForWhitespaceIndex(e);let r;n>=1?r=this._lineHeight*n:r=0;let s;return e>0?s=this.getWhitespacesAccumulatedHeight(e-1):s=0,r+s+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(e){this._checkPendingChanges(),e=e|0;let n=0,r=this.getWhitespacesCount()-1;if(r<0)return-1;const s=this.getVerticalOffsetForWhitespaceIndex(r),o=this.getHeightForWhitespaceIndex(r);if(e>=s+o)return-1;for(;n=l+c)n=a+1;else{if(e>=l)return a;r=a}}return n}getWhitespaceAtVerticalOffset(e){this._checkPendingChanges(),e=e|0;const n=this.getWhitespaceIndexAtOrAfterVerticallOffset(e);if(n<0||n>=this.getWhitespacesCount())return null;const r=this.getVerticalOffsetForWhitespaceIndex(n);if(r>e)return null;const s=this.getHeightForWhitespaceIndex(n),o=this.getIdForWhitespaceIndex(n),a=this.getAfterLineNumberForWhitespaceIndex(n);return{id:o,afterLineNumber:a,verticalOffset:r,height:s}}getWhitespaceViewportData(e,n){this._checkPendingChanges(),e=e|0,n=n|0;const r=this.getWhitespaceIndexAtOrAfterVerticallOffset(e),s=this.getWhitespacesCount()-1;if(r<0)return[];const o=[];for(let a=r;a<=s;a++){const l=this.getVerticalOffsetForWhitespaceIndex(a),c=this.getHeightForWhitespaceIndex(a);if(l>=n)break;o.push({id:this.getIdForWhitespaceIndex(a),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex(a),verticalOffset:l,height:c})}return o}getWhitespaces(){return this._checkPendingChanges(),this._arr.slice(0)}getWhitespacesCount(){return this._checkPendingChanges(),this._arr.length}getIdForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].id}getAfterLineNumberForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].afterLineNumber}getHeightForWhitespaceIndex(e){return this._checkPendingChanges(),e=e|0,this._arr[e].height}};_Te.INSTANCE_COUNT=0;const L_t=125;class _N{constructor(e,n,r,s){e=e|0,n=n|0,r=r|0,s=s|0,e<0&&(e=0),n<0&&(n=0),r<0&&(r=0),s<0&&(s=0),this.width=e,this.contentWidth=n,this.scrollWidth=Math.max(e,n),this.height=r,this.contentHeight=s,this.scrollHeight=Math.max(r,s)}equals(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight}}class D_t extends Le{constructor(e,n){super(),this._onDidContentSizeChange=this._register(new _e),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new _N(0,0,0,0),this._scrollable=this._register(new M5({forceIntegerValues:!0,smoothScrollDuration:e,scheduleAtNextAnimationFrame:n})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(e){this._scrollable.setSmoothScrollDuration(e)}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}getScrollDimensions(){return this._dimensions}setScrollDimensions(e){if(this._dimensions.equals(e))return;const n=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight},!0);const r=n.contentWidth!==e.contentWidth,s=n.contentHeight!==e.contentHeight;(r||s)&&this._onDidContentSizeChange.fire(new joe(n.contentWidth,n.contentHeight,e.contentWidth,e.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(e){this._scrollable.setScrollPositionNow(e)}setScrollPositionSmooth(e){this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}}class E_t extends Le{constructor(e,n,r){super(),this._configuration=e;const s=this._configuration.options,o=s.get(143),a=s.get(83);this._linesLayout=new _Te(n,s.get(66),a.top,a.bottom),this._maxLineWidth=0,this._overlayWidgetsMinWidth=0,this._scrollable=this._register(new D_t(0,r)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new _N(o.contentWidth,0,o.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(113)?L_t:0)}onConfigurationChanged(e){const n=this._configuration.options;if(e.hasChanged(66)&&this._linesLayout.setLineHeight(n.get(66)),e.hasChanged(83)){const r=n.get(83);this._linesLayout.setPadding(r.top,r.bottom)}if(e.hasChanged(143)){const r=n.get(143),s=r.contentWidth,o=r.height,a=this._scrollable.getScrollDimensions(),l=a.contentWidth;this._scrollable.setScrollDimensions(new _N(s,a.contentWidth,o,this._getContentHeight(s,o,l)))}else this._updateHeight();e.hasChanged(113)&&this._configureSmoothScrollDuration()}onFlushed(e){this._linesLayout.onFlushed(e)}onLinesDeleted(e,n){this._linesLayout.onLinesDeleted(e,n)}onLinesInserted(e,n){this._linesLayout.onLinesInserted(e,n)}_getHorizontalScrollbarHeight(e,n){const s=this._configuration.options.get(102);return s.horizontal===2||e>=n?0:s.horizontalScrollbarSize}_getContentHeight(e,n,r){const s=this._configuration.options;let o=this._linesLayout.getLinesTotalHeight();return s.get(104)?o+=Math.max(0,n-s.get(66)-s.get(83).bottom):o+=this._getHorizontalScrollbarHeight(e,r),o}_updateHeight(){const e=this._scrollable.getScrollDimensions(),n=e.width,r=e.height,s=e.contentWidth;this._scrollable.setScrollDimensions(new _N(n,e.contentWidth,r,this._getContentHeight(n,r,s)))}getCurrentViewport(){const e=this._scrollable.getScrollDimensions(),n=this._scrollable.getCurrentScrollPosition();return new Jpe(n.scrollTop,n.scrollLeft,e.width,e.height)}getFutureViewport(){const e=this._scrollable.getScrollDimensions(),n=this._scrollable.getFutureScrollPosition();return new Jpe(n.scrollTop,n.scrollLeft,e.width,e.height)}_computeContentWidth(){const e=this._configuration.options,n=this._maxLineWidth,r=e.get(144),s=e.get(50),o=e.get(143);if(r.isViewportWrapping){const a=e.get(72);return n>o.contentWidth+s.typicalHalfwidthCharacterWidth&&a.enabled&&a.side==="right"?n+o.verticalScrollbarWidth:n}else{const a=e.get(103)*s.typicalHalfwidthCharacterWidth,l=this._linesLayout.getWhitespaceMinWidth();return Math.max(n+a+o.verticalScrollbarWidth,l,this._overlayWidgetsMinWidth)}}setMaxLineWidth(e){this._maxLineWidth=e,this._updateContentWidth()}setOverlayWidgetsMinWidth(e){this._overlayWidgetsMinWidth=e,this._updateContentWidth()}_updateContentWidth(){const e=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new _N(e.width,this._computeContentWidth(),e.height,e.contentHeight)),this._updateHeight()}saveState(){const e=this._scrollable.getFutureScrollPosition(),n=e.scrollTop,r=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(n),s=this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(r);return{scrollTop:n,scrollTopWithoutViewZones:n-s,scrollLeft:e.scrollLeft}}changeWhitespace(e){const n=this._linesLayout.changeWhitespace(e);return n&&this.onHeightMaybeChanged(),n}getVerticalOffsetForLineNumber(e,n=!1){return this._linesLayout.getVerticalOffsetForLineNumber(e,n)}getVerticalOffsetAfterLineNumber(e,n=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(e,n)}isAfterLines(e){return this._linesLayout.isAfterLines(e)}isInTopPadding(e){return this._linesLayout.isInTopPadding(e)}isInBottomPadding(e){return this._linesLayout.isInBottomPadding(e)}getLineNumberAtVerticalOffset(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)}getWhitespaceAtVerticalOffset(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)}getLinesViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)}getLinesViewportDataAtScrollTop(e){const n=this._scrollable.getScrollDimensions();return e+n.height>n.scrollHeight&&(e=n.scrollHeight-n.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+n.height)}getWhitespaceViewportData(){const e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}setScrollPosition(e,n){n===1?this._scrollable.setScrollPositionNow(e):this._scrollable.setScrollPositionSmooth(e)}hasPendingScrollAnimation(){return this._scrollable.hasPendingScrollAnimation()}deltaScrollNow(e,n){const r=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:r.scrollLeft+e,scrollTop:r.scrollTop+n})}}class I_t{constructor(e,n,r,s,o){this.editorId=e,this.model=n,this.configuration=r,this._linesCollection=s,this._coordinatesConverter=o,this._decorationsCache=Object.create(null),this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}_clearCachedModelDecorationsResolver(){this._cachedModelDecorationsResolver=null,this._cachedModelDecorationsResolverViewRange=null}dispose(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}reset(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onModelDecorationsChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}onLineMappingChanged(){this._decorationsCache=Object.create(null),this._clearCachedModelDecorationsResolver()}_getOrCreateViewModelDecoration(e){const n=e.id;let r=this._decorationsCache[n];if(!r){const s=e.range,o=e.options;let a;if(o.isWholeLine){const l=this._coordinatesConverter.convertModelPositionToViewPosition(new ve(s.startLineNumber,1),0,!1,!0),c=this._coordinatesConverter.convertModelPositionToViewPosition(new ve(s.endLineNumber,this.model.getLineMaxColumn(s.endLineNumber)),1);a=new J(l.lineNumber,l.column,c.lineNumber,c.column)}else a=this._coordinatesConverter.convertModelRangeToViewRange(s,1);r=new sIe(a,o),this._decorationsCache[n]=r}return r}getMinimapDecorationsInRange(e){return this._getDecorationsInRange(e,!0,!1).decorations}getDecorationsViewportData(e){let n=this._cachedModelDecorationsResolver!==null;return n=n&&e.equalsRange(this._cachedModelDecorationsResolverViewRange),n||(this._cachedModelDecorationsResolver=this._getDecorationsInRange(e,!1,!1),this._cachedModelDecorationsResolverViewRange=e),this._cachedModelDecorationsResolver}getInlineDecorationsOnLine(e,n=!1,r=!1){const s=new J(e,this._linesCollection.getViewLineMinColumn(e),e,this._linesCollection.getViewLineMaxColumn(e));return this._getDecorationsInRange(s,n,r).inlineDecorations[0]}_getDecorationsInRange(e,n,r){const s=this._linesCollection.getDecorationsInRange(e,this.editorId,I9(this.configuration.options),n,r),o=e.startLineNumber,a=e.endLineNumber,l=[];let c=0;const u=[];for(let d=o;d<=a;d++)u[d-o]=[];for(let d=0,h=s.length;dn===1)}function Hoe(i,e){return vTe(i,e.range,n=>n===2)}function vTe(i,e,n){for(let r=e.startLineNumber;r<=e.endLineNumber;r++){const s=i.tokenization.getLineTokens(r),o=r===e.startLineNumber,a=r===e.endLineNumber;let l=o?s.findTokenIndexAtOffset(e.startColumn-1):0;for(;le.endColumn-1);){if(!n(s.getStandardTokenType(l)))return!1;l++}}return!0}function Nq(i,e){return i===null?e?p7.INSTANCE:g7.INSTANCE:new T_t(i,e)}class T_t{constructor(e,n){this._projectionData=e,this._isVisible=n}isVisible(){return this._isVisible}setVisible(e){return this._isVisible=e,this}getProjectionData(){return this._projectionData}getViewLineCount(){return this._isVisible?this._projectionData.getOutputLineCount():0}getViewLineContent(e,n,r){this._assertVisible();const s=r>0?this._projectionData.breakOffsets[r-1]:0,o=this._projectionData.breakOffsets[r];let a;if(this._projectionData.injectionOffsets!==null){const l=this._projectionData.injectionOffsets.map((u,d)=>new Xp(0,0,u+1,this._projectionData.injectionOptions[d],0));a=Xp.applyInjectedText(e.getLineContent(n),l).substring(s,o)}else a=e.getValueInRange({startLineNumber:n,startColumn:s+1,endLineNumber:n,endColumn:o+1});return r>0&&(a=ame(this._projectionData.wrappedTextIndentLength)+a),a}getViewLineLength(e,n,r){return this._assertVisible(),this._projectionData.getLineLength(r)}getViewLineMinColumn(e,n,r){return this._assertVisible(),this._projectionData.getMinOutputOffset(r)+1}getViewLineMaxColumn(e,n,r){return this._assertVisible(),this._projectionData.getMaxOutputOffset(r)+1}getViewLineData(e,n,r){const s=new Array;return this.getViewLinesData(e,n,r,1,0,[!0],s),s[0]}getViewLinesData(e,n,r,s,o,a,l){this._assertVisible();const c=this._projectionData,u=c.injectionOffsets,d=c.injectionOptions;let h=null;if(u){h=[];let p=0,g=0;for(let m=0;m0?c.breakOffsets[m-1]:0,y=c.breakOffsets[m];for(;gy)break;if(b0?c.wrappedTextIndentLength:0,A=E+Math.max(k-b,0),M=E+Math.min(D-b,y-b);A!==M&&_.push(new Out(A,M,R.inlineClassName,R.inlineClassNameAffectsLetterSpacing))}}if(D<=y)p+=x,g++;else break}}}let f;u?f=e.tokenization.getLineTokens(n).withInserted(u.map((p,g)=>({offset:p,text:d[g].content,tokenMetadata:ko.defaultTokenMetadata}))):f=e.tokenization.getLineTokens(n);for(let p=r;p0?s.wrappedTextIndentLength:0,a=r>0?s.breakOffsets[r-1]:0,l=s.breakOffsets[r],c=e.sliceAndInflate(a,l,o);let u=c.getLineContent();r>0&&(u=ame(s.wrappedTextIndentLength)+u);const d=this._projectionData.getMinOutputOffset(r)+1,h=u.length+1,f=r+1=Mq.length)for(let e=1;e<=i;e++)Mq[e]=R_t(e);return Mq[i]}function R_t(i){return new Array(i+1).join(" ")}class A_t{constructor(e,n,r,s,o,a,l,c,u,d){this._editorId=e,this.model=n,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=r,this._monospaceLineBreaksComputerFactory=s,this.fontInfo=o,this.tabSize=a,this.wrappingStrategy=l,this.wrappingColumn=c,this.wrappingIndent=u,this.wordBreak=d,this._constructLines(!0,null)}dispose(){this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[])}createCoordinatesConverter(){return new M_t(this)}_constructLines(e,n){this.modelLineProjections=[],e&&(this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,[]));const r=this.model.getLinesContent(),s=this.model.getInjectedTextDecorations(this._editorId),o=r.length,a=this.createLineBreaksComputer(),l=new Ev(Xp.fromDecorations(s));for(let m=0;mb.lineNumber===m+1);a.addRequest(r[m],_,n?n[m]:null)}const c=a.finalize(),u=[],d=this.hiddenAreasDecorationIds.map(m=>this.model.getDecorationRange(m)).sort(J.compareRangesUsingStarts);let h=1,f=0,p=-1,g=p+1=h&&_<=f,y=Nq(c[m],!b);u[m]=y.getViewLineCount(),this.modelLineProjections[m]=y}this._validModelVersionId=this.model.getVersionId(),this.projectedModelLineLineCounts=new mct(u)}getHiddenAreas(){return this.hiddenAreasDecorationIds.map(e=>this.model.getDecorationRange(e))}setHiddenAreas(e){const n=e.map(f=>this.model.validateRange(f)),r=N_t(n),s=this.hiddenAreasDecorationIds.map(f=>this.model.getDecorationRange(f)).sort(J.compareRangesUsingStarts);if(r.length===s.length){let f=!1;for(let p=0;p({range:f,options:kn.EMPTY}));this.hiddenAreasDecorationIds=this.model.deltaDecorations(this.hiddenAreasDecorationIds,o);const a=r;let l=1,c=0,u=-1,d=u+1=l&&p<=c?this.modelLineProjections[f].isVisible()&&(this.modelLineProjections[f]=this.modelLineProjections[f].setVisible(!1),g=!0):(h=!0,this.modelLineProjections[f].isVisible()||(this.modelLineProjections[f]=this.modelLineProjections[f].setVisible(!0),g=!0)),g){const m=this.modelLineProjections[f].getViewLineCount();this.projectedModelLineLineCounts.setValue(f,m)}}return h||this.setHiddenAreas([]),!0}modelPositionIsVisible(e,n){return e<1||e>this.modelLineProjections.length?!1:this.modelLineProjections[e-1].isVisible()}getModelLineViewLineCount(e){return e<1||e>this.modelLineProjections.length?1:this.modelLineProjections[e-1].getViewLineCount()}setTabSize(e){return this.tabSize===e?!1:(this.tabSize=e,this._constructLines(!1,null),!0)}setWrappingSettings(e,n,r,s,o){const a=this.fontInfo.equals(e),l=this.wrappingStrategy===n,c=this.wrappingColumn===r,u=this.wrappingIndent===s,d=this.wordBreak===o;if(a&&l&&c&&u&&d)return!1;const h=a&&l&&!c&&u&&d;this.fontInfo=e,this.wrappingStrategy=n,this.wrappingColumn=r,this.wrappingIndent=s,this.wordBreak=o;let f=null;if(h){f=[];for(let p=0,g=this.modelLineProjections.length;p2&&!this.modelLineProjections[n-2].isVisible(),a=n===1?1:this.projectedModelLineLineCounts.getPrefixSum(n-1)+1;let l=0;const c=[],u=[];for(let d=0,h=s.length;dc?(d=this.projectedModelLineLineCounts.getPrefixSum(n-1)+1,h=d+c-1,g=h+1,m=g+(o-c)-1,u=!0):on?n:e|0}getActiveIndentGuide(e,n,r){e=this._toValidViewLineNumber(e),n=this._toValidViewLineNumber(n),r=this._toValidViewLineNumber(r);const s=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),o=this.convertViewPositionToModelPosition(n,this.getViewLineMinColumn(n)),a=this.convertViewPositionToModelPosition(r,this.getViewLineMinColumn(r)),l=this.model.guides.getActiveIndentGuide(s.lineNumber,o.lineNumber,a.lineNumber),c=this.convertModelPositionToViewPosition(l.startLineNumber,1),u=this.convertModelPositionToViewPosition(l.endLineNumber,this.model.getLineMaxColumn(l.endLineNumber));return{startLineNumber:c.lineNumber,endLineNumber:u.lineNumber,indent:l.indent}}getViewLineInfo(e){e=this._toValidViewLineNumber(e);const n=this.projectedModelLineLineCounts.getIndexOf(e-1),r=n.index,s=n.remainder;return new lme(r+1,s)}getMinColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getMaxColumnOfViewLine(e){return this.modelLineProjections[e.modelLineNumber-1].getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(e){const n=this.modelLineProjections[e.modelLineNumber-1],r=n.getViewLineMinColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),s=n.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,r);return new ve(e.modelLineNumber,s)}getModelEndPositionOfViewLine(e){const n=this.modelLineProjections[e.modelLineNumber-1],r=n.getViewLineMaxColumn(this.model,e.modelLineNumber,e.modelLineWrappedLineIdx),s=n.getModelColumnOfViewPosition(e.modelLineWrappedLineIdx,r);return new ve(e.modelLineNumber,s)}getViewLineInfosGroupedByModelRanges(e,n){const r=this.getViewLineInfo(e),s=this.getViewLineInfo(n),o=new Array;let a=this.getModelStartPositionOfViewLine(r),l=new Array;for(let c=r.modelLineNumber;c<=s.modelLineNumber;c++){const u=this.modelLineProjections[c-1];if(u.isVisible()){const d=c===r.modelLineNumber?r.modelLineWrappedLineIdx:0,h=c===s.modelLineNumber?s.modelLineWrappedLineIdx+1:u.getViewLineCount();for(let f=d;f{if(p.forWrappedLinesAfterColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,p.forWrappedLinesAfterColumn).lineNumber>=d.modelLineWrappedLineIdx||p.forWrappedLinesBeforeOrAtColumn!==-1&&this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,p.forWrappedLinesBeforeOrAtColumn).lineNumberd.modelLineWrappedLineIdx)return}const m=this.convertModelPositionToViewPosition(d.modelLineNumber,p.horizontalLine.endColumn),_=this.modelLineProjections[d.modelLineNumber-1].getViewPositionOfModelPosition(0,p.horizontalLine.endColumn);return _.lineNumber===d.modelLineWrappedLineIdx?new yS(p.visibleColumn,g,p.className,new sM(p.horizontalLine.top,m.column),-1,-1):_.lineNumber!!p))}}return a}getViewLinesIndentGuides(e,n){e=this._toValidViewLineNumber(e),n=this._toValidViewLineNumber(n);const r=this.convertViewPositionToModelPosition(e,this.getViewLineMinColumn(e)),s=this.convertViewPositionToModelPosition(n,this.getViewLineMaxColumn(n));let o=[];const a=[],l=[],c=r.lineNumber-1,u=s.lineNumber-1;let d=null;for(let g=c;g<=u;g++){const m=this.modelLineProjections[g];if(m.isVisible()){const _=m.getViewLineNumberOfModelPosition(0,g===c?r.column:1),b=m.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(g+1)),y=b-_+1;let x=0;y>1&&m.getViewLineMinColumn(this.model,g+1,b)===1&&(x=_===0?1:2),a.push(y),l.push(x),d===null&&(d=new ve(g+1,0))}else d!==null&&(o=o.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,g)),d=null)}d!==null&&(o=o.concat(this.model.guides.getLinesIndentGuides(d.lineNumber,s.lineNumber)),d=null);const h=n-e+1,f=new Array(h);let p=0;for(let g=0,m=o.length;gn&&(g=!0,p=n-o+1),h.getViewLinesData(this.model,u+1,f,p,o-e,r,c),o+=p,g)break}return c}validateViewPosition(e,n,r){e=this._toValidViewLineNumber(e);const s=this.projectedModelLineLineCounts.getIndexOf(e-1),o=s.index,a=s.remainder,l=this.modelLineProjections[o],c=l.getViewLineMinColumn(this.model,o+1,a),u=l.getViewLineMaxColumn(this.model,o+1,a);nu&&(n=u);const d=l.getModelColumnOfViewPosition(a,n);return this.model.validatePosition(new ve(o+1,d)).equals(r)?new ve(e,n):this.convertModelPositionToViewPosition(r.lineNumber,r.column)}validateViewRange(e,n){const r=this.validateViewPosition(e.startLineNumber,e.startColumn,n.getStartPosition()),s=this.validateViewPosition(e.endLineNumber,e.endColumn,n.getEndPosition());return new J(r.lineNumber,r.column,s.lineNumber,s.column)}convertViewPositionToModelPosition(e,n){const r=this.getViewLineInfo(e),s=this.modelLineProjections[r.modelLineNumber-1].getModelColumnOfViewPosition(r.modelLineWrappedLineIdx,n);return this.model.validatePosition(new ve(r.modelLineNumber,s))}convertViewRangeToModelRange(e){const n=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),r=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);return new J(n.lineNumber,n.column,r.lineNumber,r.column)}convertModelPositionToViewPosition(e,n,r=2,s=!1,o=!1){const a=this.model.validatePosition(new ve(e,n)),l=a.lineNumber,c=a.column;let u=l-1,d=!1;if(o)for(;u0&&!this.modelLineProjections[u].isVisible();)u--,d=!0;if(u===0&&!this.modelLineProjections[u].isVisible())return new ve(s?0:1,1);const h=1+this.projectedModelLineLineCounts.getPrefixSum(u);let f;return d?o?f=this.modelLineProjections[u].getViewPositionOfModelPosition(h,1,r):f=this.modelLineProjections[u].getViewPositionOfModelPosition(h,this.model.getLineMaxColumn(u+1),r):f=this.modelLineProjections[l-1].getViewPositionOfModelPosition(h,c,r),f}convertModelRangeToViewRange(e,n=0){if(e.isEmpty()){const r=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,n);return J.fromPositions(r)}else{const r=this.convertModelPositionToViewPosition(e.startLineNumber,e.startColumn,1),s=this.convertModelPositionToViewPosition(e.endLineNumber,e.endColumn,0);return new J(r.lineNumber,r.column,s.lineNumber,s.column)}}getViewLineNumberOfModelPosition(e,n){let r=e-1;if(this.modelLineProjections[r].isVisible()){const o=1+this.projectedModelLineLineCounts.getPrefixSum(r);return this.modelLineProjections[r].getViewLineNumberOfModelPosition(o,n)}for(;r>0&&!this.modelLineProjections[r].isVisible();)r--;if(r===0&&!this.modelLineProjections[r].isVisible())return 1;const s=1+this.projectedModelLineLineCounts.getPrefixSum(r);return this.modelLineProjections[r].getViewLineNumberOfModelPosition(s,this.model.getLineMaxColumn(r+1))}getDecorationsInRange(e,n,r,s,o){const a=this.convertViewPositionToModelPosition(e.startLineNumber,e.startColumn),l=this.convertViewPositionToModelPosition(e.endLineNumber,e.endColumn);if(l.lineNumber-a.lineNumber<=e.endLineNumber-e.startLineNumber)return this.model.getDecorationsInRange(new J(a.lineNumber,1,l.lineNumber,l.column),n,r,s,o);let c=[];const u=a.lineNumber-1,d=l.lineNumber-1;let h=null;for(let m=u;m<=d;m++)if(this.modelLineProjections[m].isVisible())h===null&&(h=new ve(m+1,m===u?a.column:1));else if(h!==null){const b=this.model.getLineMaxColumn(m);c=c.concat(this.model.getDecorationsInRange(new J(h.lineNumber,h.column,m,b),n,r,s)),h=null}h!==null&&(c=c.concat(this.model.getDecorationsInRange(new J(h.lineNumber,h.column,l.lineNumber,l.column),n,r,s)),h=null),c.sort((m,_)=>{const b=J.compareRangesUsingStarts(m.range,_.range);return b===0?m.id<_.id?-1:m.id>_.id?1:0:b});const f=[];let p=0,g=null;for(const m of c){const _=m.id;g!==_&&(g=_,f[p++]=m)}return f}getInjectedTextAt(e){const n=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[n.modelLineNumber-1].getInjectedTextAt(n.modelLineWrappedLineIdx,e.column)}normalizePosition(e,n){const r=this.getViewLineInfo(e.lineNumber);return this.modelLineProjections[r.modelLineNumber-1].normalizePosition(r.modelLineWrappedLineIdx,e,n)}getLineIndentColumn(e){const n=this.getViewLineInfo(e);return n.modelLineWrappedLineIdx===0?this.model.getLineIndentColumn(n.modelLineNumber):0}}function N_t(i){if(i.length===0)return[];const e=i.slice();e.sort(J.compareRangesUsingStarts);const n=[];let r=e[0].startLineNumber,s=e[0].endLineNumber;for(let o=1,a=e.length;os+1?(n.push(new J(r,1,s,1)),r=l.startLineNumber,s=l.endLineNumber):l.endLineNumber>s&&(s=l.endLineNumber)}return n.push(new J(r,1,s,1)),n}class lme{constructor(e,n){this.modelLineNumber=e,this.modelLineWrappedLineIdx=n}}class cme{constructor(e,n){this.modelRange=e,this.viewLines=n}}class M_t{constructor(e){this._lines=e}convertViewPositionToModelPosition(e){return this._lines.convertViewPositionToModelPosition(e.lineNumber,e.column)}convertViewRangeToModelRange(e){return this._lines.convertViewRangeToModelRange(e)}validateViewPosition(e,n){return this._lines.validateViewPosition(e.lineNumber,e.column,n)}validateViewRange(e,n){return this._lines.validateViewRange(e,n)}convertModelPositionToViewPosition(e,n,r,s){return this._lines.convertModelPositionToViewPosition(e.lineNumber,e.column,n,r,s)}convertModelRangeToViewRange(e,n){return this._lines.convertModelRangeToViewRange(e,n)}modelPositionIsVisible(e){return this._lines.modelPositionIsVisible(e.lineNumber,e.column)}getModelLineViewLineCount(e){return this._lines.getModelLineViewLineCount(e)}getViewLineNumberOfModelPosition(e,n){return this._lines.getViewLineNumberOfModelPosition(e,n)}}class P_t{constructor(e){this.model=e}dispose(){}createCoordinatesConverter(){return new O_t(this)}getHiddenAreas(){return[]}setHiddenAreas(e){return!1}setTabSize(e){return!1}setWrappingSettings(e,n,r,s){return!1}createLineBreaksComputer(){const e=[];return{addRequest:(n,r,s)=>{e.push(null)},finalize:()=>e}}onModelFlushed(){}onModelLinesDeleted(e,n,r){return new qJ(n,r)}onModelLinesInserted(e,n,r,s){return new KJ(n,r)}onModelLineChanged(e,n,r){return[!1,new mTe(n,1),null,null]}acceptVersionId(e){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(e,n,r){return{startLineNumber:e,endLineNumber:e,indent:0}}getViewLinesBracketGuides(e,n,r){return new Array(n-e+1).fill([])}getViewLinesIndentGuides(e,n){const r=n-e+1,s=new Array(r);for(let o=0;on)}getModelLineViewLineCount(e){return 1}getViewLineNumberOfModelPosition(e,n){return e}}let F_t=class extends Le{constructor(e,n,r,s,o,a,l,c,u){if(super(),this.languageConfigurationService=l,this._themeService=c,this._attachedView=u,this.hiddenAreasModel=new j_t,this.previousHiddenAreas=[],this._editorId=e,this._configuration=n,this.model=r,this._eventDispatcher=new a_t,this.onEvent=this._eventDispatcher.onEvent,this.cursorConfig=new JL(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._updateConfigurationViewLineCount=this._register(new Ji(()=>this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStart=Uoe.create(this.model),this.model.isTooLargeForTokenization())this._lines=new P_t(this.model);else{const d=this._configuration.options,h=d.get(50),f=d.get(137),p=d.get(144),g=d.get(136),m=d.get(128);this._lines=new A_t(this._editorId,this.model,s,o,h,this.model.getOptions().tabSize,f,p.wrappingColumn,g,m)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new v_t(r,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new E_t(this._configuration,this.getLineCount(),a)),this._register(this.viewLayout.onDidScroll(d=>{d.scrollTopChanged&&this._handleVisibleLinesChanged(),d.scrollTopChanged&&this._viewportStart.invalidate(),this._eventDispatcher.emitSingleViewEvent(new n_t(d)),this._eventDispatcher.emitOutgoingEvent(new $oe(d.oldScrollWidth,d.oldScrollLeft,d.oldScrollHeight,d.oldScrollTop,d.scrollWidth,d.scrollLeft,d.scrollHeight,d.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(d=>{this._eventDispatcher.emitOutgoingEvent(d)})),this._decorations=new I_t(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(d=>{try{const h=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(h,d)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(j5.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new s_t)})),this._register(this._themeService.onDidColorThemeChange(d=>{this._invalidateDecorationsColorCache(),this._eventDispatcher.emitSingleViewEvent(new i_t(d))})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this._viewportStart.dispose(),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(e){this._eventDispatcher.addViewEventHandler(e)}removeViewEventHandler(e){this._eventDispatcher.removeViewEventHandler(e)}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}getModelVisibleRanges(){const e=this.viewLayout.getLinesViewportData(),n=new J(e.startLineNumber,this.getLineMinColumn(e.startLineNumber),e.endLineNumber,this.getLineMaxColumn(e.endLineNumber));return this._toModelVisibleRanges(n)}visibleLinesStabilized(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!0)}_handleVisibleLinesChanged(){const e=this.getModelVisibleRanges();this._attachedView.setVisibleLines(e,!1)}setHasFocus(e){this._hasFocus=e,this._cursor.setHasFocus(e),this._eventDispatcher.emitSingleViewEvent(new e_t(e)),this._eventDispatcher.emitOutgoingEvent(new Woe(!e,e))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new Ymt)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new Zmt)}_captureStableViewport(){if(this._viewportStart.isValid&&this.viewLayout.getCurrentScrollTop()>0){const e=new ve(this._viewportStart.viewLineNumber,this.getLineMinColumn(this._viewportStart.viewLineNumber)),n=this.coordinatesConverter.convertViewPositionToModelPosition(e);return new dme(n,this._viewportStart.startLineDelta)}return new dme(null,0)}_onConfigurationChanged(e,n){const r=this._captureStableViewport(),s=this._configuration.options,o=s.get(50),a=s.get(137),l=s.get(144),c=s.get(136),u=s.get(128);this._lines.setWrappingSettings(o,a,l.wrappingColumn,c,u)&&(e.emitViewEvent(new r6),e.emitViewEvent(new s6),e.emitViewEvent(new iD(null)),this._cursor.onLineMappingChanged(e),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this._updateConfigurationViewLineCount.schedule()),n.hasChanged(90)&&(this._decorations.reset(),e.emitViewEvent(new iD(null))),e.emitViewEvent(new Qmt(n)),this.viewLayout.onConfigurationChanged(n),r.recoverViewportStart(this.coordinatesConverter,this.viewLayout),JL.shouldRecreate(n)&&(this.cursorConfig=new JL(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(e=>{try{const r=this._eventDispatcher.beginEmitViewEvents();let s=!1,o=!1;const a=e instanceof BS?e.rawContentChangedEvent.changes:e.changes,l=e instanceof BS?e.rawContentChangedEvent.versionId:null,c=this._lines.createLineBreaksComputer();for(const h of a)switch(h.changeType){case 4:{for(let f=0;f!m.ownerId||m.ownerId===this._editorId)),c.addRequest(p,g,null)}break}case 2:{let f=null;h.injectedText&&(f=h.injectedText.filter(p=>!p.ownerId||p.ownerId===this._editorId)),c.addRequest(h.detail,f,null);break}}const u=c.finalize(),d=new Ev(u);for(const h of a)switch(h.changeType){case 1:{this._lines.onModelFlushed(),r.emitViewEvent(new r6),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount()),s=!0;break}case 3:{const f=this._lines.onModelLinesDeleted(l,h.fromLineNumber,h.toLineNumber);f!==null&&(r.emitViewEvent(f),this.viewLayout.onLinesDeleted(f.fromLineNumber,f.toLineNumber)),s=!0;break}case 4:{const f=d.takeCount(h.detail.length),p=this._lines.onModelLinesInserted(l,h.fromLineNumber,h.toLineNumber,f);p!==null&&(r.emitViewEvent(p),this.viewLayout.onLinesInserted(p.fromLineNumber,p.toLineNumber)),s=!0;break}case 2:{const f=d.dequeue(),[p,g,m,_]=this._lines.onModelLineChanged(l,h.lineNumber,f);o=p,g&&r.emitViewEvent(g),m&&(r.emitViewEvent(m),this.viewLayout.onLinesInserted(m.fromLineNumber,m.toLineNumber)),_&&(r.emitViewEvent(_),this.viewLayout.onLinesDeleted(_.fromLineNumber,_.toLineNumber));break}case 5:break}l!==null&&this._lines.acceptVersionId(l),this.viewLayout.onHeightMaybeChanged(),!s&&o&&(r.emitViewEvent(new s6),r.emitViewEvent(new iD(null)),this._cursor.onLineMappingChanged(r),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}const n=this._viewportStart.isValid;if(this._viewportStart.invalidate(),this._configuration.setModelLineCount(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&n){const r=this.model._getTrackedRange(this._viewportStart.modelTrackedRange);if(r){const s=this.coordinatesConverter.convertModelPositionToViewPosition(r.getStartPosition()),o=this.viewLayout.getVerticalOffsetForLineNumber(s.lineNumber);this.viewLayout.setScrollPosition({scrollTop:o+this._viewportStart.startLineDelta},1)}}try{const r=this._eventDispatcher.beginEmitViewEvents();e instanceof BS&&r.emitOutgoingEvent(new g_t(e.contentChangedEvent)),this._cursor.onModelContentChanged(r,e)}finally{this._eventDispatcher.endEmitViewEvents()}this._handleVisibleLinesChanged()})),this._register(this.model.onDidChangeTokens(e=>{const n=[];for(let r=0,s=e.ranges.length;r{this._eventDispatcher.emitSingleViewEvent(new t_t),this.cursorConfig=new JL(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new p_t(e))})),this._register(this.model.onDidChangeLanguage(e=>{this.cursorConfig=new JL(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new f_t(e))})),this._register(this.model.onDidChangeOptions(e=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{const n=this._eventDispatcher.beginEmitViewEvents();n.emitViewEvent(new r6),n.emitViewEvent(new s6),n.emitViewEvent(new iD(null)),this._cursor.onLineMappingChanged(n),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new JL(this.model.getLanguageId(),this.model.getOptions(),this._configuration,this.languageConfigurationService),this._cursor.updateConfiguration(this.cursorConfig),this._eventDispatcher.emitOutgoingEvent(new m_t(e))})),this._register(this.model.onDidChangeDecorations(e=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new iD(e)),this._eventDispatcher.emitOutgoingEvent(new h_t(e))}))}setHiddenAreas(e,n){this.hiddenAreasModel.setHiddenAreas(n,e);const r=this.hiddenAreasModel.getMergedRanges();if(r===this.previousHiddenAreas)return;this.previousHiddenAreas=r;const s=this._captureStableViewport();let o=!1;try{const a=this._eventDispatcher.beginEmitViewEvents();o=this._lines.setHiddenAreas(r),o&&(a.emitViewEvent(new r6),a.emitViewEvent(new s6),a.emitViewEvent(new iD(null)),this._cursor.onLineMappingChanged(a),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged()),s.recoverViewportStart(this.coordinatesConverter,this.viewLayout)}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),o&&this._eventDispatcher.emitOutgoingEvent(new u_t)}getVisibleRangesPlusViewportAboveBelow(){const e=this._configuration.options.get(143),n=this._configuration.options.get(66),r=Math.max(20,Math.round(e.height/n)),s=this.viewLayout.getLinesViewportData(),o=Math.max(1,s.completelyVisibleStartLineNumber-r),a=Math.min(this.getLineCount(),s.completelyVisibleEndLineNumber+r);return this._toModelVisibleRanges(new J(o,this.getLineMinColumn(o),a,this.getLineMaxColumn(a)))}getVisibleRanges(){const e=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(e)}getHiddenAreas(){return this._lines.getHiddenAreas()}_toModelVisibleRanges(e){const n=this.coordinatesConverter.convertViewRangeToModelRange(e),r=this._lines.getHiddenAreas();if(r.length===0)return[n];const s=[];let o=0,a=n.startLineNumber,l=n.startColumn;const c=n.endLineNumber,u=n.endColumn;for(let d=0,h=r.length;dc||(a"u")return this._reduceRestoreStateCompatibility(e);const n=this.model.validatePosition(e.firstPosition),r=this.coordinatesConverter.convertModelPositionToViewPosition(n),s=this.viewLayout.getVerticalOffsetForLineNumber(r.lineNumber)-e.firstPositionDeltaTop;return{scrollLeft:e.scrollLeft,scrollTop:s}}_reduceRestoreStateCompatibility(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTopWithoutViewZones}}getTabSize(){return this.model.getOptions().tabSize}getLineCount(){return this._lines.getViewLineCount()}setViewport(e,n,r){this._viewportStart.update(this,e)}getActiveIndentGuide(e,n,r){return this._lines.getActiveIndentGuide(e,n,r)}getLinesIndentGuides(e,n){return this._lines.getViewLinesIndentGuides(e,n)}getBracketGuidesInRangeByLine(e,n,r,s){return this._lines.getViewLinesBracketGuides(e,n,r,s)}getLineContent(e){return this._lines.getViewLineContent(e)}getLineLength(e){return this._lines.getViewLineLength(e)}getLineMinColumn(e){return this._lines.getViewLineMinColumn(e)}getLineMaxColumn(e){return this._lines.getViewLineMaxColumn(e)}getLineFirstNonWhitespaceColumn(e){const n=ml(this.getLineContent(e));return n===-1?0:n+1}getLineLastNonWhitespaceColumn(e){const n=$p(this.getLineContent(e));return n===-1?0:n+2}getMinimapDecorationsInRange(e){return this._decorations.getMinimapDecorationsInRange(e)}getDecorationsInViewport(e){return this._decorations.getDecorationsViewportData(e).decorations}getInjectedTextAt(e){return this._lines.getInjectedTextAt(e)}getViewportViewLineRenderingData(e,n){const s=this._decorations.getDecorationsViewportData(e).inlineDecorations[n-e.startLineNumber];return this._getViewLineRenderingData(n,s)}getViewLineRenderingData(e){const n=this._decorations.getInlineDecorationsOnLine(e);return this._getViewLineRenderingData(e,n)}_getViewLineRenderingData(e,n){const r=this.model.mightContainRTL(),s=this.model.mightContainNonBasicASCII(),o=this.getTabSize(),a=this._lines.getViewLineData(e);return a.inlineDecorations&&(n=[...n,...a.inlineDecorations.map(l=>l.toInlineDecoration(e))]),new fd(a.minColumn,a.maxColumn,a.content,a.continuesWithWrappedLine,r,s,a.tokens,n,o,a.startVisibleColumn)}getViewLineData(e){return this._lines.getViewLineData(e)}getMinimapLinesRenderingData(e,n,r){const s=this._lines.getViewLinesData(e,n,r);return new Put(this.getTabSize(),s)}getAllOverviewRulerDecorations(e){const n=this.model.getOverviewRulerDecorations(this._editorId,I9(this._configuration.options)),r=new B_t;for(const s of n){const o=s.options,a=o.overviewRuler;if(!a)continue;const l=a.position;if(l===0)continue;const c=a.getColor(e.value),u=this.coordinatesConverter.getViewLineNumberOfModelPosition(s.range.startLineNumber,s.range.startColumn),d=this.coordinatesConverter.getViewLineNumberOfModelPosition(s.range.endLineNumber,s.range.endColumn);r.accept(c,o.zIndex,u,d,l)}return r.asArray}_invalidateDecorationsColorCache(){const e=this.model.getOverviewRulerDecorations();for(const n of e){const r=n.options.overviewRuler;r==null||r.invalidateCachedColor();const s=n.options.minimap;s==null||s.invalidateCachedColor()}}getValueInRange(e,n){const r=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueInRange(r,n)}getValueLengthInRange(e,n){const r=this.coordinatesConverter.convertViewRangeToModelRange(e);return this.model.getValueLengthInRange(r,n)}modifyPosition(e,n){const r=this.coordinatesConverter.convertViewPositionToModelPosition(e);return this.model.modifyPosition(r,n)}deduceModelPositionRelativeToViewPosition(e,n,r){const s=this.coordinatesConverter.convertViewPositionToModelPosition(e);this.model.getEOL().length===2&&(n<0?n-=r:n+=r);const a=this.model.getOffsetAt(s)+n;return this.model.getPositionAt(a)}getPlainTextToCopy(e,n,r){const s=r?`\r `:this.model.getEOL();e=e.slice(0),e.sort(J.compareRangesUsingStarts);let o=!1,a=!1;for(const c of e)c.isEmpty()?o=!0:a=!0;if(!a){if(!n)return"";const c=e.map(d=>d.startLineNumber);let u="";for(let d=0;d0&&c[d-1]===c[d]||(u+=this.model.getLineContent(c[d])+s);return u}if(o&&n){const c=[];let u=0;for(const d of e){const h=d.startLineNumber;d.isEmpty()?h!==u&&c.push(this.model.getLineContent(h)):c.push(this.model.getValueInRange(d,r?2:0)),u=h}return c.length===1?c[0]:c}const l=[];for(const c of e)c.isEmpty()||l.push(this.model.getValueInRange(c,r?2:0));return l.length===1?l[0]:l}getRichTextToCopy(e,n){const r=this.model.getLanguageId();if(r===ad||e.length!==1)return null;let s=e[0];if(s.isEmpty()){if(!n)return null;const d=s.startLineNumber;s=new J(d,this.model.getLineMinColumn(d),d,this.model.getLineMaxColumn(d))}const o=this._configuration.options.get(50),a=this._getColorMap(),c=/[:;\\\/<>]/.test(o.fontFamily)||o.fontFamily===su.fontFamily;let u;return c?u=su.fontFamily:(u=o.fontFamily,u=u.replace(/"/g,"'"),/[,']/.test(u)||/[+ ]/.test(u)&&(u=`'${u}'`),u=`${u}, ${su.fontFamily}`),{mode:r,html:`
`+this._getHTMLToCopy(s,a)+"
"}}_getHTMLToCopy(e,n){const r=e.startLineNumber,s=e.startColumn,o=e.endLineNumber,a=e.endColumn,l=this.getTabSize();let c="";for(let u=r;u<=o;u++){const d=this.model.tokenization.getLineTokens(u),h=d.getLineContent(),f=u===r?s-1:0,p=u===o?a-1:h.length;h===""?c+="
":c+=S_t(h,d.inflate(),n,f,p,l,Aa)}return c}_getColorMap(){const e=Zr.getColorMap(),n=["#000000"];if(e)for(let r=1,s=e.length;rthis._cursor.setStates(s,e,n,r))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(e){this._cursor.setCursorColumnSelectData(e)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(e){this._cursor.setPrevEditOperationType(e)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(e,n,r=0){this._withViewEventsCollector(s=>this._cursor.setSelections(s,e,n,r))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(e){this._withViewEventsCollector(n=>this._cursor.restoreState(n,e))}_executeCursorEdit(e){if(this._cursor.context.cursorConfig.readOnly){this._eventDispatcher.emitOutgoingEvent(new d_t);return}this._withViewEventsCollector(e)}executeEdits(e,n,r){this._executeCursorEdit(s=>this._cursor.executeEdits(s,e,n,r))}startComposition(){this._executeCursorEdit(e=>this._cursor.startComposition(e))}endComposition(e){this._executeCursorEdit(n=>this._cursor.endComposition(n,e))}type(e,n){this._executeCursorEdit(r=>this._cursor.type(r,e,n))}compositionType(e,n,r,s,o){this._executeCursorEdit(a=>this._cursor.compositionType(a,e,n,r,s,o))}paste(e,n,r,s){this._executeCursorEdit(o=>this._cursor.paste(o,e,n,r,s))}cut(e){this._executeCursorEdit(n=>this._cursor.cut(n,e))}executeCommand(e,n){this._executeCursorEdit(r=>this._cursor.executeCommand(r,e,n))}executeCommands(e,n){this._executeCursorEdit(r=>this._cursor.executeCommands(r,e,n))}revealPrimaryCursor(e,n,r=!1){this._withViewEventsCollector(s=>this._cursor.revealPrimary(s,e,r,0,n,0))}revealTopMostCursor(e){const n=this._cursor.getTopMostViewPosition(),r=new J(n.lineNumber,n.column,n.lineNumber,n.column);this._withViewEventsCollector(s=>s.emitViewEvent(new v8(e,!1,r,null,0,!0,0)))}revealBottomMostCursor(e){const n=this._cursor.getBottomMostViewPosition(),r=new J(n.lineNumber,n.column,n.lineNumber,n.column);this._withViewEventsCollector(s=>s.emitViewEvent(new v8(e,!1,r,null,0,!0,0)))}revealRange(e,n,r,s,o){this._withViewEventsCollector(a=>a.emitViewEvent(new v8(e,!1,r,null,s,n,o)))}changeWhitespace(e){this.viewLayout.changeWhitespace(e)&&(this._eventDispatcher.emitSingleViewEvent(new o_t),this._eventDispatcher.emitOutgoingEvent(new c_t))}_withViewEventsCollector(e){try{const n=this._eventDispatcher.beginEmitViewEvents();return e(n)}finally{this._eventDispatcher.endEmitViewEvents()}}normalizePosition(e,n){return this._lines.normalizePosition(e,n)}getLineIndentColumn(e){return this._lines.getLineIndentColumn(e)}};class Uoe{static create(e){const n=e._setTrackedRange(null,new J(1,1,1,1),1);return new Uoe(e,1,!1,n,0)}get viewLineNumber(){return this._viewLineNumber}get isValid(){return this._isValid}get modelTrackedRange(){return this._modelTrackedRange}get startLineDelta(){return this._startLineDelta}constructor(e,n,r,s,o){this._model=e,this._viewLineNumber=n,this._isValid=r,this._modelTrackedRange=s,this._startLineDelta=o}dispose(){this._model._setTrackedRange(this._modelTrackedRange,null,1)}update(e,n){const r=e.coordinatesConverter.convertViewPositionToModelPosition(new ve(n,e.getLineMinColumn(n))),s=e.model._setTrackedRange(this._modelTrackedRange,new J(r.lineNumber,r.column,r.lineNumber,r.column),1),o=e.viewLayout.getVerticalOffsetForLineNumber(n),a=e.viewLayout.getCurrentScrollTop();this._viewLineNumber=n,this._isValid=!0,this._modelTrackedRange=s,this._startLineDelta=a-o}invalidate(){this._isValid=!1}}class B_t{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(e,n,r,s,o){const a=this._asMap[e];if(a){const l=a.data,c=l[l.length-3],u=l[l.length-1];if(c===o&&u+1>=r){s>u&&(l[l.length-1]=s);return}l.push(o,r,s)}else{const l=new bP(e,n,[o,r,s]);this._asMap[e]=l,this.asArray.push(l)}}}class j_t{constructor(){this.hiddenAreas=new Map,this.shouldRecompute=!1,this.ranges=[]}setHiddenAreas(e,n){const r=this.hiddenAreas.get(e);r&&ume(r,n)||(this.hiddenAreas.set(e,n),this.shouldRecompute=!0)}getMergedRanges(){if(!this.shouldRecompute)return this.ranges;this.shouldRecompute=!1;const e=Array.from(this.hiddenAreas.values()).reduce((n,r)=>W_t(n,r),[]);return ume(this.ranges,e)?this.ranges:(this.ranges=e,this.ranges)}}function W_t(i,e){const n=[];let r=0,s=0;for(;r0?this.wrappedTextIndentLength:0}getLineLength(e){const n=e>0?this.breakOffsets[e-1]:0;let s=this.breakOffsets[e]-n;return e>0&&(s+=this.wrappedTextIndentLength),s}getMaxOutputOffset(e){return this.getLineLength(e)}translateToInputOffset(e,n){e>0&&(n=Math.max(0,n-this.wrappedTextIndentLength));let s=e===0?n:this.breakOffsets[e-1]+n;if(this.injectionOffsets!==null)for(let o=0;othis.injectionOffsets[o];o++)s0?this.breakOffsets[o-1]:0,n===0)if(e<=a)s=o-1;else if(e>c)r=o+1;else break;else if(e=c)r=o+1;else break}let l=e-a;return o>0&&(l+=this.wrappedTextIndentLength),new o6(o,l)}normalizeOutputPosition(e,n,r){if(this.injectionOffsets!==null){const s=this.outputPositionToOffsetInInputWithInjections(e,n),o=this.normalizeOffsetInInputWithInjectionsAroundInjections(s,r);if(o!==s)return this.offsetInInputWithInjectionsToOutputPosition(o,r)}if(r===0){if(e>0&&n===this.getMinOutputOffset(e))return new o6(e-1,this.getMaxOutputOffset(e-1))}else if(r===1){const s=this.getOutputLineCount()-1;if(e0&&(n=Math.max(0,n-this.wrappedTextIndentLength)),(e>0?this.breakOffsets[e-1]:0)+n}normalizeOffsetInInputWithInjectionsAroundInjections(e,n){const r=this.getInjectedTextAtOffset(e);if(!r)return e;if(n===2){if(e===r.offsetInInputWithInjections+r.length&&hme(this.injectionOptions[r.injectedTextIndex].cursorStops))return r.offsetInInputWithInjections+r.length;{let s=r.offsetInInputWithInjections;if(fme(this.injectionOptions[r.injectedTextIndex].cursorStops))return s;let o=r.injectedTextIndex-1;for(;o>=0&&this.injectionOffsets[o]===this.injectionOffsets[r.injectedTextIndex]&&!(hme(this.injectionOptions[o].cursorStops)||(s-=this.injectionOptions[o].content.length,fme(this.injectionOptions[o].cursorStops)));)o--;return s}}else if(n===1||n===4){let s=r.offsetInInputWithInjections+r.length,o=r.injectedTextIndex;for(;o+1=0&&this.injectionOffsets[o-1]===this.injectionOffsets[o];)s-=this.injectionOptions[o-1].content.length,o--;return s}l$()}getInjectedText(e,n){const r=this.outputPositionToOffsetInInputWithInjections(e,n),s=this.getInjectedTextAtOffset(r);return s?{options:this.injectionOptions[s.injectedTextIndex]}:null}getInjectedTextAtOffset(e){const n=this.injectionOffsets,r=this.injectionOptions;if(n!==null){let s=0;for(let o=0;oe)break;if(e<=c)return{injectedTextIndex:o,offsetInInputWithInjections:l,length:a};s+=a}}}}function hme(i){return i==null?!0:i===Mp.Right||i===Mp.Both}function fme(i){return i==null?!0:i===Mp.Left||i===Mp.Both}class o6{constructor(e,n){this.outputLineIndex=e,this.outputOffset=n}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(e){return new ve(e+this.outputLineIndex,this.outputOffset+1)}}class qoe{static create(e){return new qoe(e.get(132),e.get(131))}constructor(e,n){this.classifier=new z_t(e,n)}createLineBreaksComputer(e,n,r,s,o){const a=[],l=[],c=[];return{addRequest:(u,d,h)=>{a.push(u),l.push(d),c.push(h)},finalize:()=>{const u=e.typicalFullwidthCharacterWidth/e.typicalHalfwidthCharacterWidth,d=[];for(let h=0,f=a.length;h=0&&e<256?this._asciiMap[e]:e>=12352&&e<=12543||e>=13312&&e<=19903||e>=19968&&e<=40959?3:this._map.get(e)||this._defaultValue}}let XJ=[],YJ=[];function V_t(i,e,n,r,s,o,a,l){if(s===-1)return null;const c=n.length;if(c<=1)return null;const u=l==="keepAll",d=e.breakOffsets,h=e.breakOffsetsVisibleColumn,f=bTe(n,r,s,o,a),p=s-f,g=XJ,m=YJ;let _=0,b=0,y=0,x=s;const k=d.length;let D=0;if(D>=0){let R=Math.abs(h[D]-x);for(;D+1=R)break;R=E,D++}}for(;DR&&(R=b,E=y);let A=0,M=0,N=0,P=0;if(E<=x){let B=E,j=R===0?0:n.charCodeAt(R-1),z=R===0?0:i.get(j),H=!0;for(let Y=R;Yb&&ZJ(j,z,Q,ie,u)&&(A=X,M=B),B+=K,B>x){X>b?(N=X,P=B-K):(N=Y+1,P=B),B-M>p&&(A=0),H=!1;break}j=Q,z=ie}if(H){_>0&&(g[_]=d[d.length-1],m[_]=h[d.length-1],_++);break}}if(A===0){let B=E,j=n.charCodeAt(R),z=i.get(j),H=!1;for(let Y=R-1;Y>=b;Y--){const X=Y+1,Q=n.charCodeAt(Y);if(Q===9){H=!0;break}let ie,K;if(lx(Q)?(Y--,ie=0,K=2):(ie=i.get(Q),K=d1(Q)?o:1),B<=x){if(N===0&&(N=X,P=B),B<=x-p)break;if(ZJ(Q,ie,j,z,u)){A=X,M=B;break}}B-=K,j=Q,z=ie}if(A!==0){const Y=p-(P-M);if(Y<=r){const X=n.charCodeAt(N);let Q;xo(X)?Q=2:Q=gM(X,P,r,o),Y-Q<0&&(A=0)}}if(H){D--;continue}}if(A===0&&(A=N,M=P),A<=b){const B=n.charCodeAt(b);xo(B)?(A=b+2,M=y+2):(A=b+1,M=y+gM(B,y,r,o))}for(b=A,g[_]=A,y=M,m[_]=M,_++,x=M+p;D<0||D=O)break;O=B,D++}}return _===0?null:(g.length=_,m.length=_,XJ=e.breakOffsets,YJ=e.breakOffsetsVisibleColumn,e.breakOffsets=g,e.breakOffsetsVisibleColumn=m,e.wrappedTextIndentLength=f,e)}function H_t(i,e,n,r,s,o,a,l){const c=Xp.applyInjectedText(e,n);let u,d;if(n&&n.length>0?(u=n.map(M=>M.options),d=n.map(M=>M.column-1)):(u=null,d=null),s===-1)return u?new pM(d,u,[c.length],[],0):null;const h=c.length;if(h<=1)return u?new pM(d,u,[c.length],[],0):null;const f=l==="keepAll",p=bTe(c,r,s,o,a),g=s-p,m=[],_=[];let b=0,y=0,x=0,k=s,D=c.charCodeAt(0),R=i.get(D),E=gM(D,0,r,o),A=1;xo(D)&&(E+=1,D=c.charCodeAt(1),R=i.get(D),A++);for(let M=A;Mk&&((y===0||E-x>g)&&(y=N,x=E-B),m[b]=y,_[b]=x,b++,k=x+g,y=0),D=P,R=O}return b===0&&(!n||n.length===0)?null:(m[b]=h,_[b]=E,new pM(d,u,m,_,p))}function gM(i,e,n,r){return i===9?n-e%n:d1(i)||i<32?r:1}function pme(i,e){return e-i%e}function ZJ(i,e,n,r,s){return n!==32&&(e===2&&r!==2||e!==1&&r===1||!s&&e===3&&r!==2||!s&&r===3&&e!==1)}function bTe(i,e,n,r,s){let o=0;if(s!==0){const a=ml(i);if(a!==-1){for(let c=0;cn&&(o=0)}}return o}const Pq=$v("domLineBreaksComputer",{createHTML:i=>i});class Koe{static create(){return new Koe}constructor(){}createLineBreaksComputer(e,n,r,s,o){const a=[],l=[];return{addRequest:(c,u,d)=>{a.push(c),l.push(u)},finalize:()=>U_t(a,e,n,r,s,o,l)}}}function U_t(i,e,n,r,s,o,a){var l;function c(M){const N=a[M];if(N){const P=Xp.applyInjectedText(i[M],N),O=N.map(j=>j.options),B=N.map(j=>j.column-1);return new pM(B,O,[P.length],[],0)}else return null}if(r===-1){const M=[];for(let N=0,P=i.length;Nu?(P=0,O=0):B=u-H}const j=N.substr(P),z=q_t(j,O,n,B,g,f);m[M]=P,_[M]=O,b[M]=j,y[M]=z[0],x[M]=z[1]}const k=g.build(),D=(l=Pq==null?void 0:Pq.createHTML(k))!==null&&l!==void 0?l:k;p.innerHTML=D,p.style.position="absolute",p.style.top="10000",o==="keepAll"?(p.style.wordBreak="keep-all",p.style.overflowWrap="anywhere"):(p.style.wordBreak="inherit",p.style.overflowWrap="break-word"),document.body.appendChild(p);const R=document.createRange(),E=Array.prototype.slice.call(p.children,0),A=[];for(let M=0;MQ.options),Y=X.map(Q=>Q.column-1)):(H=null,Y=null),A[M]=new pM(Y,H,P,z,B)}return document.body.removeChild(p),A}function q_t(i,e,n,r,s,o){if(o!==0){const f=String(o);s.appendString('
');const a=i.length;let l=e,c=0;const u=[],d=[];let h=0");for(let f=0;f"),u[f]=c,d[f]=l;const p=h;h=f+1"),u[i.length]=c,d[i.length]=l,s.appendString("
"),[u,d]}function K_t(i,e,n,r){if(n.length<=1)return null;const s=Array.prototype.slice.call(e.children,0),o=[];try{QJ(i,s,r,0,null,n.length-1,null,o)}catch(a){return console.log(a),null}return o.length===0?null:(o.push(n.length),o)}function QJ(i,e,n,r,s,o,a,l){if(r===o||(s=s||Oq(i,e,n[r],n[r+1]),a=a||Oq(i,e,n[o],n[o+1]),Math.abs(s[0].top-a[0].top)<=.1))return;if(r+1===o){l.push(o);return}const c=r+(o-r)/2|0,u=Oq(i,e,n[c],n[c+1]);QJ(i,e,n,r,s,c,u,l),QJ(i,e,n,c,u,o,a,l)}function Oq(i,e,n,r){return i.setStart(e[n/16384|0].firstChild,n%16384),i.setEnd(e[r/16384|0].firstChild,r%16384),i.getClientRects()}class G_t extends Le{constructor(){super(),this._editor=null,this._instantiationService=null,this._instances=this._register(new Nse),this._pending=new Map,this._finishedInstantiation=[],this._finishedInstantiation[0]=!1,this._finishedInstantiation[1]=!1,this._finishedInstantiation[2]=!1,this._finishedInstantiation[3]=!1}initialize(e,n,r){this._editor=e,this._instantiationService=r;for(const s of n){if(this._pending.has(s.id)){Ln(new Error(`Cannot have two contributions with the same id ${s.id}`));continue}this._pending.set(s.id,s)}this._instantiateSome(0),this._register(Z0(()=>{this._instantiateSome(1)})),this._register(Z0(()=>{this._instantiateSome(2)})),this._register(Z0(()=>{this._instantiateSome(3)},5e3))}saveViewState(){const e={};for(const[n,r]of this._instances)typeof r.saveViewState=="function"&&(e[n]=r.saveViewState());return e}restoreViewState(e){for(const[n,r]of this._instances)typeof r.restoreViewState=="function"&&r.restoreViewState(e[n])}get(e){return this._instantiateById(e),this._instances.get(e)||null}onBeforeInteractionEvent(){this._instantiateSome(2)}onAfterModelAttached(){this._register(Z0(()=>{this._instantiateSome(1)},50))}_instantiateSome(e){if(this._finishedInstantiation[e])return;this._finishedInstantiation[e]=!0;const n=this._findPendingContributionsByInstantiation(e);for(const r of n)this._instantiateById(r.id)}_findPendingContributionsByInstantiation(e){const n=[];for(const[,r]of this._pending)r.instantiation===e&&n.push(r);return n}_instantiateById(e){const n=this._pending.get(e);if(n){if(this._pending.delete(e),!this._instantiationService||!this._editor)throw new Error("Cannot instantiate contributions before being initialized!");try{const r=this._instantiationService.createInstance(n.ctor,this._editor);this._instances.set(n.id,r),typeof r.restoreViewState=="function"&&n.instantiation!==0&&console.warn(`Editor contribution '${n.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`)}catch(r){Ln(r)}}}}var X_t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Q_=function(i,e){return function(n,r){e(n,r,i)}},Y_t=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},OC;let Z_t=0,Q_t=class{constructor(e,n,r,s,o,a){this.model=e,this.viewModel=n,this.view=r,this.hasRealView=s,this.listenersToRemove=o,this.attachedView=a}dispose(){Mi(this.listenersToRemove),this.model.onBeforeDetached(this.attachedView),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}},qE=OC=class extends Le{get isSimpleWidget(){return this._configuration.isSimpleWidget}constructor(e,n,r,s,o,a,l,c,u,d,h,f){var p;super(),this.languageConfigurationService=h,this._deliveryQueue=Vst(),this._contributions=this._register(new G_t),this._onDidDispose=this._register(new _e),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeModelTokens=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onDidChangeModel=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new al(this._contributions,this._deliveryQueue)),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new gme({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new gme({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new al(this._contributions,this._deliveryQueue)),this.onWillType=this._onWillType.event,this._onDidType=this._register(new al(this._contributions,this._deliveryQueue)),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new al(this._contributions,this._deliveryQueue)),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new al(this._contributions,this._deliveryQueue)),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new al(this._contributions,this._deliveryQueue)),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new al(this._contributions,this._deliveryQueue)),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new al(this._contributions,this._deliveryQueue)),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new al(this._contributions,this._deliveryQueue)),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new al(this._contributions,this._deliveryQueue)),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new al(this._contributions,this._deliveryQueue)),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new _e({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._actions=new Map,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection(),o.willCreateCodeEditor();const g=Object.assign({},n);this._domElement=e,this._overflowWidgetsDomNode=g.overflowWidgetsDomNode,delete g.overflowWidgetsDomNode,this._id=++Z_t,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=r.telemetryData,this._configuration=this._register(this._createConfiguration(r.isSimpleWidget||!1,g,d)),this._register(this._configuration.onDidChange(b=>{this._onDidChangeConfiguration.fire(b);const y=this._configuration.options;if(b.hasChanged(143)){const x=y.get(143);this._onDidLayoutChange.fire(x)}})),this._contextKeyService=this._register(l.createScoped(this._domElement)),this._notificationService=u,this._codeEditorService=o,this._commandService=a,this._themeService=c,this._register(new J_t(this,this._contextKeyService)),this._register(new e0t(this,this._contextKeyService,f)),this._instantiationService=s.createChild(new O$([mn,this._contextKeyService])),this._modelData=null,this._focusTracker=new t0t(e),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={},this._glyphMarginWidgets={};let m;Array.isArray(r.contributions)?m=r.contributions:m=j2.getEditorContributions(),this._contributions.initialize(this,m,this._instantiationService);for(const b of j2.getEditorActions()){if(this._actions.has(b.id)){Ln(new Error(`Cannot have two actions with the same id ${b.id}`));continue}const y=new GIe(b.id,b.label,b.alias,(p=b.precondition)!==null&&p!==void 0?p:void 0,()=>this._instantiationService.invokeFunction(x=>Promise.resolve(b.runEditorCommand(x,this,null))),this._contextKeyService);this._actions.set(y.id,y)}const _=()=>!this._configuration.options.get(90)&&this._configuration.options.get(36).enabled;this._register(new alt(this._domElement,{onDragEnter:()=>{},onDragOver:b=>{if(!_())return;const y=this.getTargetAtClientPoint(b.clientX,b.clientY);y!=null&&y.position&&this.showDropIndicatorAt(y.position)},onDrop:b=>Y_t(this,void 0,void 0,function*(){if(!_()||(this.removeDropIndicator(),!b.dataTransfer))return;const y=this.getTargetAtClientPoint(b.clientX,b.clientY);y!=null&&y.position&&this._onDropIntoEditor.fire({position:y.position,event:b})}),onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}writeScreenReaderContent(e){var n;(n=this._modelData)===null||n===void 0||n.view.writeScreenReaderContent(e)}_createConfiguration(e,n,r){return new LJ(e,n,this._domElement,r)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return I5.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose(),this._actions.clear(),this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(e){return this._instantiationService.invokeFunction(e)}updateOptions(e){this._configuration.updateOptions(e||{})}getOptions(){return this._configuration.options}getOption(e){return this._configuration.options.get(e)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(e){return this._modelData?wi.getWordAtPosition(this._modelData.model,this._configuration.options.get(129),e):null}getValue(e=null){if(!this._modelData)return"";const n=!!(e&&e.preserveBOM);let r=0;return e&&e.lineEnding&&e.lineEnding===` `?r=1:e&&e.lineEnding&&e.lineEnding===`\r `&&(r=2),this._modelData.model.getValue(r,n)}setValue(e){this._modelData&&this._modelData.model.setValue(e)}getModel(){return this._modelData?this._modelData.model:null}setModel(e=null){const n=e;if(this._modelData===null&&n===null||this._modelData&&this._modelData.model===n)return;const r=this.hasTextFocus(),s=this._detachModel();this._attachModel(n),r&&this.hasModel()&&this.focus();const o={oldModelUrl:s?s.uri:null,newModelUrl:n?n.uri:null};this._removeDecorationTypes(),this._onDidChangeModel.fire(o),this._postDetachModelCleanup(s),this._contributions.onAfterModelAttached()}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(const e in this._decorationTypeSubtypes){const n=this._decorationTypeSubtypes[e];for(const r in n)this._removeDecorationType(e+"-"+r)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(e,n,r,s){const o=e.model.validatePosition({lineNumber:n,column:r}),a=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(o);return e.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(a.lineNumber,s)}getTopForLineNumber(e,n=!1){return this._modelData?OC._getVerticalOffsetForPosition(this._modelData,e,1,n):-1}getTopForPosition(e,n){return this._modelData?OC._getVerticalOffsetForPosition(this._modelData,e,n,!1):-1}static _getVerticalOffsetForPosition(e,n,r,s=!1){const o=e.model.validatePosition({lineNumber:n,column:r}),a=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(o);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(a.lineNumber,s)}getBottomForLineNumber(e,n=!1){return this._modelData?OC._getVerticalOffsetAfterPosition(this._modelData,e,1,n):-1}setHiddenAreas(e,n){var r;(r=this._modelData)===null||r===void 0||r.viewModel.setHiddenAreas(e.map(s=>J.lift(s)),n)}getVisibleColumnFromPosition(e){if(!this._modelData)return e.column;const n=this._modelData.model.validatePosition(e),r=this._modelData.model.getOptions().tabSize;return ho.visibleColumnFromColumn(this._modelData.model.getLineContent(n.lineNumber),n.column,r)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(e,n="api"){if(this._modelData){if(!ve.isIPosition(e))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections(n,[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}}_sendRevealRange(e,n,r,s){if(!this._modelData)return;if(!J.isIRange(e))throw new Error("Invalid arguments");const o=this._modelData.model.validateRange(e),a=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(o);this._modelData.viewModel.revealRange("api",r,a,n,s)}revealLine(e,n=0){this._revealLine(e,0,n)}revealLineInCenter(e,n=0){this._revealLine(e,1,n)}revealLineInCenterIfOutsideViewport(e,n=0){this._revealLine(e,2,n)}revealLineNearTop(e,n=0){this._revealLine(e,5,n)}_revealLine(e,n,r){if(typeof e!="number")throw new Error("Invalid arguments");this._sendRevealRange(new J(e,1,e,1),n,!1,r)}revealPosition(e,n=0){this._revealPosition(e,0,!0,n)}revealPositionInCenter(e,n=0){this._revealPosition(e,1,!0,n)}revealPositionInCenterIfOutsideViewport(e,n=0){this._revealPosition(e,2,!0,n)}revealPositionNearTop(e,n=0){this._revealPosition(e,5,!0,n)}_revealPosition(e,n,r,s){if(!ve.isIPosition(e))throw new Error("Invalid arguments");this._sendRevealRange(new J(e.lineNumber,e.column,e.lineNumber,e.column),n,r,s)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(e,n="api"){const r=Ft.isISelection(e),s=J.isIRange(e);if(!r&&!s)throw new Error("Invalid arguments");if(r)this._setSelectionImpl(e,n);else if(s){const o={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(o,n)}}_setSelectionImpl(e,n){if(!this._modelData)return;const r=new Ft(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.viewModel.setSelections(n,[r])}revealLines(e,n,r=0){this._revealLines(e,n,0,r)}revealLinesInCenter(e,n,r=0){this._revealLines(e,n,1,r)}revealLinesInCenterIfOutsideViewport(e,n,r=0){this._revealLines(e,n,2,r)}revealLinesNearTop(e,n,r=0){this._revealLines(e,n,5,r)}_revealLines(e,n,r,s){if(typeof e!="number"||typeof n!="number")throw new Error("Invalid arguments");this._sendRevealRange(new J(e,1,n,1),r,!1,s)}revealRange(e,n=0,r=!1,s=!0){this._revealRange(e,r?1:0,s,n)}revealRangeInCenter(e,n=0){this._revealRange(e,1,!0,n)}revealRangeInCenterIfOutsideViewport(e,n=0){this._revealRange(e,2,!0,n)}revealRangeNearTop(e,n=0){this._revealRange(e,5,!0,n)}revealRangeNearTopIfOutsideViewport(e,n=0){this._revealRange(e,6,!0,n)}revealRangeAtTop(e,n=0){this._revealRange(e,3,!0,n)}_revealRange(e,n,r,s){if(!J.isIRange(e))throw new Error("Invalid arguments");this._sendRevealRange(J.lift(e),n,r,s)}setSelections(e,n="api",r=0){if(this._modelData){if(!e||e.length===0)throw new Error("Invalid arguments");for(let s=0,o=e.length;s0&&this._modelData.viewModel.restoreCursorState(r):this._modelData.viewModel.restoreCursorState([r]),this._contributions.restoreViewState(n.contributionsState||{});const s=this._modelData.viewModel.reduceRestoreState(n.viewState);this._modelData.view.restoreState(s)}}handleInitialized(){var e;(e=this._getViewModel())===null||e===void 0||e.visibleLinesStabilized()}getContribution(e){return this._contributions.get(e)}getActions(){return Array.from(this._actions.values())}getSupportedActions(){let e=this.getActions();return e=e.filter(n=>n.isSupported()),e}getAction(e){return this._actions.get(e)||null}trigger(e,n,r){switch(r=r||{},n){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(e);return;case"type":{const o=r;this._type(e,o.text||"");return}case"replacePreviousChar":{const o=r;this._compositionType(e,o.text||"",o.replaceCharCnt||0,0,0);return}case"compositionType":{const o=r;this._compositionType(e,o.text||"",o.replacePrevCharCnt||0,o.replaceNextCharCnt||0,o.positionDelta||0);return}case"paste":{const o=r;this._paste(e,o.text||"",o.pasteOnNewLine||!1,o.multicursorText||null,o.mode||null);return}case"cut":this._cut(e);return}const s=this.getAction(n);if(s){Promise.resolve(s.run(r)).then(void 0,Ln);return}this._modelData&&(this._triggerEditorCommand(e,n,r)||this._triggerCommand(n,r))}_triggerCommand(e,n){this._commandService.executeCommand(e,n)}_startComposition(){this._modelData&&(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(e){this._modelData&&(this._modelData.viewModel.endComposition(e),this._onDidCompositionEnd.fire())}_type(e,n){!this._modelData||n.length===0||(e==="keyboard"&&this._onWillType.fire(n),this._modelData.viewModel.type(n,e),e==="keyboard"&&this._onDidType.fire(n))}_compositionType(e,n,r,s,o){this._modelData&&this._modelData.viewModel.compositionType(n,r,s,o,e)}_paste(e,n,r,s,o){if(!this._modelData||n.length===0)return;const a=this._modelData.viewModel,l=a.getSelection().getStartPosition();a.paste(n,r,s,e);const c=a.getSelection().getStartPosition();e==="keyboard"&&this._onDidPaste.fire({range:new J(l.lineNumber,l.column,c.lineNumber,c.column),languageId:o})}_cut(e){this._modelData&&this._modelData.viewModel.cut(e)}_triggerEditorCommand(e,n,r){const s=j2.getEditorCommand(n);return s?(r=r||{},r.source=e,this._instantiationService.invokeFunction(o=>{Promise.resolve(s.runEditorCommand(o,this,r)).then(void 0,Ln)}),!0):!1}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!this._modelData||this._configuration.options.get(90)?!1:(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!this._modelData||this._configuration.options.get(90)?!1:(this._modelData.model.popStackElement(),!0)}executeEdits(e,n,r){if(!this._modelData||this._configuration.options.get(90))return!1;let s;return r?Array.isArray(r)?s=()=>r:s=r:s=()=>null,this._modelData.viewModel.executeEdits(e,n,s),!0}executeCommand(e,n){this._modelData&&this._modelData.viewModel.executeCommand(n,e)}executeCommands(e,n){this._modelData&&this._modelData.viewModel.executeCommands(n,e)}createDecorationsCollection(e){return new n0t(this,e)}changeDecorations(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null}getLineDecorations(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,I9(this._configuration.options)):null}getDecorationsInRange(e){return this._modelData?this._modelData.model.getDecorationsInRange(e,this._id,I9(this._configuration.options)):null}deltaDecorations(e,n){return this._modelData?e.length===0&&n.length===0?e:this._modelData.model.deltaDecorations(e,n,this._id):[]}removeDecorations(e){!this._modelData||e.length===0||this._modelData.model.changeDecorations(n=>{n.deltaDecorations(e,[])})}removeDecorationsByType(e){const n=this._decorationTypeKeysToIds[e];n&&this.deltaDecorations(n,[]),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]}getLayoutInfo(){return this._configuration.options.get(143)}createOverviewRuler(e){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.createOverviewRuler(e)}getContainerDomNode(){return this._domElement}getDomNode(){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.domNode.domNode}delegateVerticalScrollbarPointerDown(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateVerticalScrollbarPointerDown(e)}delegateScrollFromMouseWheelEvent(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateScrollFromMouseWheelEvent(e)}layout(e){this._configuration.observeContainer(e),this.render()}focus(){!this._modelData||!this._modelData.hasRealView||this._modelData.view.focus()}hasTextFocus(){return!this._modelData||!this._modelData.hasRealView?!1:this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(e){const n={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id."),this._contentWidgets[e.getId()]=n,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(n)}layoutContentWidget(e){const n=e.getId();if(this._contentWidgets.hasOwnProperty(n)){const r=this._contentWidgets[n];r.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(r)}}removeContentWidget(e){const n=e.getId();if(this._contentWidgets.hasOwnProperty(n)){const r=this._contentWidgets[n];delete this._contentWidgets[n],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(r)}}addOverlayWidget(e){const n={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=n,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(n)}layoutOverlayWidget(e){const n=e.getId();if(this._overlayWidgets.hasOwnProperty(n)){const r=this._overlayWidgets[n];r.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(r)}}removeOverlayWidget(e){const n=e.getId();if(this._overlayWidgets.hasOwnProperty(n)){const r=this._overlayWidgets[n];delete this._overlayWidgets[n],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(r)}}addGlyphMarginWidget(e){const n={widget:e,position:e.getPosition()};this._glyphMarginWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a glyph margin widget with the same id."),this._glyphMarginWidgets[e.getId()]=n,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addGlyphMarginWidget(n)}layoutGlyphMarginWidget(e){const n=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(n)){const r=this._glyphMarginWidgets[n];r.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutGlyphMarginWidget(r)}}removeGlyphMarginWidget(e){const n=e.getId();if(this._glyphMarginWidgets.hasOwnProperty(n)){const r=this._glyphMarginWidgets[n];delete this._glyphMarginWidgets[n],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeGlyphMarginWidget(r)}}changeViewZones(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.change(e)}getTargetAtClientPoint(e,n){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.getTargetAtClientPoint(e,n)}getScrolledVisiblePosition(e){if(!this._modelData||!this._modelData.hasRealView)return null;const n=this._modelData.model.validatePosition(e),r=this._configuration.options,s=r.get(143),o=OC._getVerticalOffsetForPosition(this._modelData,n.lineNumber,n.column)-this.getScrollTop(),a=this._modelData.view.getOffsetForColumn(n.lineNumber,n.column)+s.glyphMarginWidth+s.lineNumbersWidth+s.decorationsWidth-this.getScrollLeft();return{top:o,left:a,height:r.get(66)}}getOffsetForColumn(e,n){return!this._modelData||!this._modelData.hasRealView?-1:this._modelData.view.getOffsetForColumn(e,n)}render(e=!1){!this._modelData||!this._modelData.hasRealView||this._modelData.view.render(!0,e)}setAriaOptions(e){!this._modelData||!this._modelData.hasRealView||this._modelData.view.setAriaOptions(e)}applyFontInfo(e){Ta(e,this._configuration.options.get(50))}setBanner(e,n){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),this._bannerDomNode=e,this._configuration.setReservedHeight(e?n:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(e){if(!e){this._modelData=null;return}const n=[];this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setModelLineCount(e.getLineCount());const r=e.onBeforeAttached(),s=new F_t(this._id,this._configuration,e,Koe.create(),qoe.create(this._configuration.options),l=>mh(l),this.languageConfigurationService,this._themeService,r);n.push(e.onWillDispose(()=>this.setModel(null))),n.push(s.onEvent(l=>{switch(l.kind){case 0:this._onDidContentSizeChange.fire(l);break;case 1:this._editorTextFocus.setValue(l.hasFocus);break;case 2:this._onDidScrollChange.fire(l);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{if(l.reachedMaxCursorCount){const h=this.getOption(79),f=L("cursors.maximum","The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.",h);this._notificationService.prompt(F$.Warning,f,[{label:"Find and Replace",run:()=>{this._commandService.executeCommand("editor.action.startFindReplaceAction")}},{label:L("goToSetting","Increase Multi Cursor Limit"),run:()=>{this._commandService.executeCommand("workbench.action.openSettings2",{query:"editor.multiCursorLimit"})}}])}const c=[];for(let h=0,f=l.selections.length;h{this._paste("keyboard",o,a,l,c)},type:o=>{this._type("keyboard",o)},compositionType:(o,a,l,c)=>{this._compositionType("keyboard",o,a,l,c)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:n={paste:(o,a,l,c)=>{const u={text:o,pasteOnNewLine:a,multicursorText:l,mode:c};this._commandService.executeCommand("paste",u)},type:o=>{const a={text:o};this._commandService.executeCommand("type",a)},compositionType:(o,a,l,c)=>{if(l||c){const u={text:o,replacePrevCharCnt:a,replaceNextCharCnt:l,positionDelta:c};this._commandService.executeCommand("compositionType",u)}else{const u={text:o,replaceCharCnt:a};this._commandService.executeCommand("replacePreviousChar",u)}},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};const r=new R$(e.coordinatesConverter);return r.onKeyDown=o=>this._onKeyDown.fire(o),r.onKeyUp=o=>this._onKeyUp.fire(o),r.onContextMenu=o=>this._onContextMenu.fire(o),r.onMouseMove=o=>this._onMouseMove.fire(o),r.onMouseLeave=o=>this._onMouseLeave.fire(o),r.onMouseDown=o=>this._onMouseDown.fire(o),r.onMouseUp=o=>this._onMouseUp.fire(o),r.onMouseDrag=o=>this._onMouseDrag.fire(o),r.onMouseDrop=o=>this._onMouseDrop.fire(o),r.onMouseDropCanceled=o=>this._onMouseDropCanceled.fire(o),r.onMouseWheel=o=>this._onMouseWheel.fire(o),[new FJ(n,this._configuration,this._themeService.getColorTheme(),e,r,this._overflowWidgetsDomNode,this._instantiationService),!0]}_postDetachModelCleanup(e){e==null||e.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(!this._modelData)return null;const e=this._modelData.model,n=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),n&&this._domElement.contains(n)&&this._domElement.removeChild(n),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),e}_removeDecorationType(e){this._codeEditorService.removeDecorationType(e)}hasModel(){return this._modelData!==null}showDropIndicatorAt(e){const n=[{range:new J(e.lineNumber,e.column,e.lineNumber,e.column),options:OC.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(n),this.revealPosition(e,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}setContextValue(e,n){this._contextKeyService.createKey(e,n)}};qE.dropIntoEditorDecorationOptions=kn.register({description:"workbench-dnd-target",className:"dnd-target"});qE=OC=X_t([Q_(3,hn),Q_(4,Si),Q_(5,us),Q_(6,mn),Q_(7,Do),Q_(8,Ps),Q_(9,zv),Q_(10,dr),Q_(11,Et)],qE);class gme extends Le{constructor(e){super(),this._emitterOptions=e,this._onDidChangeToTrue=this._register(new _e(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new _e(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(e){const n=e?2:1;this._value!==n&&(this._value=n,this._value===2?this._onDidChangeToTrue.fire():this._value===1&&this._onDidChangeToFalse.fire())}}class al extends _e{constructor(e,n){super({deliveryQueue:n}),this._contributions=e}fire(e){this._contributions.onBeforeInteractionEvent(),super.fire(e)}}class J_t extends Le{constructor(e,n){super(),this._editor=e,n.createKey("editorId",e.getId()),this._editorSimpleInput=oe.editorSimpleInput.bindTo(n),this._editorFocus=oe.focus.bindTo(n),this._textInputFocus=oe.textInputFocus.bindTo(n),this._editorTextFocus=oe.editorTextFocus.bindTo(n),this._tabMovesFocus=oe.tabMovesFocus.bindTo(n),this._editorReadonly=oe.readOnly.bindTo(n),this._inDiffEditor=oe.inDiffEditor.bindTo(n),this._editorColumnSelection=oe.columnSelection.bindTo(n),this._hasMultipleSelections=oe.hasMultipleSelections.bindTo(n),this._hasNonEmptySelection=oe.hasNonEmptySelection.bindTo(n),this._canUndo=oe.canUndo.bindTo(n),this._canRedo=oe.canRedo.bindTo(n),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._register(BE.onDidChangeTabFocus(r=>this._tabMovesFocus.set(r))),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){const e=this._editor.getOptions();this._tabMovesFocus.set(BE.getTabFocusMode()),this._editorReadonly.set(e.get(90)),this._inDiffEditor.set(e.get(61)),this._editorColumnSelection.set(e.get(22))}_updateFromSelection(){const e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some(n=>!n.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){const e=this._editor.getModel();this._canUndo.set(!!(e&&e.canUndo())),this._canRedo.set(!!(e&&e.canRedo()))}}class e0t extends Le{constructor(e,n,r){super(),this._editor=e,this._contextKeyService=n,this._languageFeaturesService=r,this._langId=oe.languageId.bindTo(n),this._hasCompletionItemProvider=oe.hasCompletionItemProvider.bindTo(n),this._hasCodeActionsProvider=oe.hasCodeActionsProvider.bindTo(n),this._hasCodeLensProvider=oe.hasCodeLensProvider.bindTo(n),this._hasDefinitionProvider=oe.hasDefinitionProvider.bindTo(n),this._hasDeclarationProvider=oe.hasDeclarationProvider.bindTo(n),this._hasImplementationProvider=oe.hasImplementationProvider.bindTo(n),this._hasTypeDefinitionProvider=oe.hasTypeDefinitionProvider.bindTo(n),this._hasHoverProvider=oe.hasHoverProvider.bindTo(n),this._hasDocumentHighlightProvider=oe.hasDocumentHighlightProvider.bindTo(n),this._hasDocumentSymbolProvider=oe.hasDocumentSymbolProvider.bindTo(n),this._hasReferenceProvider=oe.hasReferenceProvider.bindTo(n),this._hasRenameProvider=oe.hasRenameProvider.bindTo(n),this._hasSignatureHelpProvider=oe.hasSignatureHelpProvider.bindTo(n),this._hasInlayHintsProvider=oe.hasInlayHintsProvider.bindTo(n),this._hasDocumentFormattingProvider=oe.hasDocumentFormattingProvider.bindTo(n),this._hasDocumentSelectionFormattingProvider=oe.hasDocumentSelectionFormattingProvider.bindTo(n),this._hasMultipleDocumentFormattingProvider=oe.hasMultipleDocumentFormattingProvider.bindTo(n),this._hasMultipleDocumentSelectionFormattingProvider=oe.hasMultipleDocumentSelectionFormattingProvider.bindTo(n),this._isInWalkThrough=oe.isInWalkThroughSnippet.bindTo(n);const s=()=>this._update();this._register(e.onDidChangeModel(s)),this._register(e.onDidChangeModelLanguage(s)),this._register(r.completionProvider.onDidChange(s)),this._register(r.codeActionProvider.onDidChange(s)),this._register(r.codeLensProvider.onDidChange(s)),this._register(r.definitionProvider.onDidChange(s)),this._register(r.declarationProvider.onDidChange(s)),this._register(r.implementationProvider.onDidChange(s)),this._register(r.typeDefinitionProvider.onDidChange(s)),this._register(r.hoverProvider.onDidChange(s)),this._register(r.documentHighlightProvider.onDidChange(s)),this._register(r.documentSymbolProvider.onDidChange(s)),this._register(r.referenceProvider.onDidChange(s)),this._register(r.renameProvider.onDidChange(s)),this._register(r.documentFormattingEditProvider.onDidChange(s)),this._register(r.documentRangeFormattingEditProvider.onDidChange(s)),this._register(r.signatureHelpProvider.onDidChange(s)),this._register(r.inlayHintsProvider.onDidChange(s)),s()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInWalkThrough.reset()})}_update(){const e=this._editor.getModel();if(!e){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(e.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(e)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(e)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(e)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(e)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(e)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(e)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(e)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(e)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(e)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(e)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(e)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(e)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(e)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(e)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(e)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(e).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._isInWalkThrough.set(e.uri.scheme===Pn.walkThroughSnippet)})}}class t0t extends Le{constructor(e){super(),this._onChange=this._register(new _e),this.onChange=this._onChange.event,this._hasFocus=!1,this._domFocusTracker=this._register(Gm(e)),this._register(this._domFocusTracker.onDidFocus(()=>{this._hasFocus=!0,this._onChange.fire(void 0)})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasFocus=!1,this._onChange.fire(void 0)}))}hasFocus(){return this._hasFocus}}class n0t{get length(){return this._decorationIds.length}constructor(e,n){this._editor=e,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(n)&&n.length>0&&this.set(n)}onDidChange(e,n,r){return this._editor.onDidChangeModelDecorations(s=>{this._isChangingDecorations||e.call(n,s)},r)}getRange(e){return!this._editor.hasModel()||e>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[e])}getRanges(){if(!this._editor.hasModel())return[];const e=this._editor.getModel(),n=[];for(const r of this._decorationIds){const s=e.getDecorationRange(r);s&&n.push(s)}return n}has(e){return this._decorationIds.includes(e.id)}clear(){this._decorationIds.length!==0&&this.set([])}set(e){try{this._isChangingDecorations=!0,this._editor.changeDecorations(n=>{this._decorationIds=n.deltaDecorations(this._decorationIds,e)})}finally{this._isChangingDecorations=!1}return this._decorationIds}}const i0t=encodeURIComponent("");function Fq(i){return i0t+encodeURIComponent(i.toString())+r0t}const s0t=encodeURIComponent('');function a0t(i){return s0t+encodeURIComponent(i.toString())+o0t}Of((i,e)=>{const n=i.getColor(wm);n&&e.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${Fq(n)}") repeat-x bottom left; }`);const r=i.getColor(Ju);r&&e.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${Fq(r)}") repeat-x bottom left; }`);const s=i.getColor(_c);s&&e.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${Fq(s)}") repeat-x bottom left; }`);const o=i.getColor(Tdt);o&&e.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${a0t(o)}") no-repeat bottom left; }`);const a=i.getColor(zft);a&&e.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${a.rgba.a}; }`)});var l0t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},c0t=function(i,e){return function(n,r){e(n,r,i)}},u0t=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let JJ=class extends Le{constructor(e){super(),this._themeService=e,this._onWillCreateCodeEditor=this._register(new _e),this._onCodeEditorAdd=this._register(new _e),this.onCodeEditorAdd=this._onCodeEditorAdd.event,this._onCodeEditorRemove=this._register(new _e),this.onCodeEditorRemove=this._onCodeEditorRemove.event,this._onWillCreateDiffEditor=this._register(new _e),this._onDiffEditorAdd=this._register(new _e),this.onDiffEditorAdd=this._onDiffEditorAdd.event,this._onDiffEditorRemove=this._register(new _e),this.onDiffEditorRemove=this._onDiffEditorRemove.event,this._decorationOptionProviders=new Map,this._codeEditorOpenHandlers=new jl,this._modelProperties=new Map,this._codeEditors=Object.create(null),this._diffEditors=Object.create(null),this._globalStyleSheet=null}willCreateCodeEditor(){this._onWillCreateCodeEditor.fire()}addCodeEditor(e){this._codeEditors[e.getId()]=e,this._onCodeEditorAdd.fire(e)}removeCodeEditor(e){delete this._codeEditors[e.getId()]&&this._onCodeEditorRemove.fire(e)}listCodeEditors(){return Object.keys(this._codeEditors).map(e=>this._codeEditors[e])}willCreateDiffEditor(){this._onWillCreateDiffEditor.fire()}addDiffEditor(e){this._diffEditors[e.getId()]=e,this._onDiffEditorAdd.fire(e)}listDiffEditors(){return Object.keys(this._diffEditors).map(e=>this._diffEditors[e])}getFocusedCodeEditor(){let e=null;const n=this.listCodeEditors();for(const r of n){if(r.hasTextFocus())return r;r.hasWidgetFocus()&&(e=r)}return e}removeDecorationType(e){const n=this._decorationOptionProviders.get(e);n&&(n.refCount--,n.refCount<=0&&(this._decorationOptionProviders.delete(e),n.dispose(),this.listCodeEditors().forEach(r=>r.removeDecorationsByType(e))))}setModelProperty(e,n,r){const s=e.toString();let o;this._modelProperties.has(s)?o=this._modelProperties.get(s):(o=new Map,this._modelProperties.set(s,o)),o.set(n,r)}getModelProperty(e,n){const r=e.toString();if(this._modelProperties.has(r))return this._modelProperties.get(r).get(n)}openCodeEditor(e,n,r){return u0t(this,void 0,void 0,function*(){for(const s of this._codeEditorOpenHandlers){const o=yield s(e,n,r);if(o!==null)return o}return null})}registerCodeEditorOpenHandler(e){const n=this._codeEditorOpenHandlers.unshift(e);return gn(n)}};JJ=l0t([c0t(0,Do)],JJ);var d0t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},mme=function(i,e){return function(n,r){e(n,r,i)}},h0t=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let m7=class extends JJ{constructor(e,n){super(n),this._register(this.onCodeEditorAdd(()=>this._checkContextKey())),this._register(this.onCodeEditorRemove(()=>this._checkContextKey())),this._editorIsOpen=e.createKey("editorIsOpen",!1),this._activeCodeEditor=null,this._register(this.registerCodeEditorOpenHandler((r,s,o)=>h0t(this,void 0,void 0,function*(){return s?this.doOpenEditor(s,r):null})))}_checkContextKey(){let e=!1;for(const n of this.listCodeEditors())if(!n.isSimpleWidget){e=!0;break}this._editorIsOpen.set(e)}setActiveCodeEditor(e){this._activeCodeEditor=e}getActiveCodeEditor(){return this._activeCodeEditor}doOpenEditor(e,n){if(!this.findModel(e,n.resource)){if(n.resource){const o=n.resource.scheme;if(o===Pn.http||o===Pn.https)return kEe(n.resource.toString()),e}return null}const s=n.options?n.options.selection:null;if(s)if(typeof s.endLineNumber=="number"&&typeof s.endColumn=="number")e.setSelection(s),e.revealRangeInCenter(s,1);else{const o={lineNumber:s.startLineNumber,column:s.startColumn};e.setPosition(o),e.revealPositionInCenter(o,1)}return e}findModel(e,n){const r=e.getModel();return r&&r.uri.toString()!==n.toString()?null:r}};m7=d0t([mme(0,mn),mme(1,Do)],m7);oi(Si,m7,0);const VI=qn("layoutService");var yTe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},wTe=function(i,e){return function(n,r){e(n,r,i)}};let _7=class{get dimension(){return this._dimension||(this._dimension=FI(window.document.body)),this._dimension}get hasContainer(){return!1}get container(){throw new Error("ILayoutService.container is not available in the standalone editor!")}focus(){var e;(e=this._codeEditorService.getFocusedCodeEditor())===null||e===void 0||e.focus()}constructor(e){this._codeEditorService=e,this.onDidLayout=_t.None,this.offset={top:0,quickPickTop:0}}};_7=yTe([wTe(0,Si)],_7);let eee=class extends _7{get hasContainer(){return!1}get container(){return this._container}constructor(e,n){super(n),this._container=e}};eee=yTe([wTe(1,Si)],eee);oi(VI,_7,1);const W5=qn("dialogService");var f0t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},_me=function(i,e){return function(n,r){e(n,r,i)}},a6=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function l6(i){return i.scheme===Pn.file?i.fsPath:i.path}let CTe=0;class c6{constructor(e,n,r,s,o,a,l){this.id=++CTe,this.type=0,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabel=n,this.strResource=r,this.resourceLabels=[this.resourceLabel],this.strResources=[this.strResource],this.groupId=s,this.groupOrder=o,this.sourceId=a,this.sourceOrder=l,this.isValid=!0}setValid(e){this.isValid=e}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.isValid?" VALID":"INVALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class vme{constructor(e,n){this.resourceLabel=e,this.reason=n}}class bme{constructor(){this.elements=new Map}createMessage(){const e=[],n=[];for(const[,s]of this.elements)(s.reason===0?e:n).push(s.resourceLabel);const r=[];return e.length>0&&r.push(L({},"The following files have been closed and modified on disk: {0}.",e.join(", "))),n.length>0&&r.push(L({},"The following files have been modified in an incompatible way: {0}.",n.join(", "))),r.join(` `)}get size(){return this.elements.size}has(e){return this.elements.has(e)}set(e,n){this.elements.set(e,n)}delete(e){return this.elements.delete(e)}}class p0t{constructor(e,n,r,s,o,a,l){this.id=++CTe,this.type=1,this.actual=e,this.label=e.label,this.confirmBeforeUndo=e.confirmBeforeUndo||!1,this.resourceLabels=n,this.strResources=r,this.groupId=s,this.groupOrder=o,this.sourceId=a,this.sourceOrder=l,this.removedResources=null,this.invalidatedResources=null}canSplit(){return typeof this.actual.split=="function"}removeResource(e,n,r){this.removedResources||(this.removedResources=new bme),this.removedResources.has(n)||this.removedResources.set(n,new vme(e,r))}setValid(e,n,r){r?this.invalidatedResources&&(this.invalidatedResources.delete(n),this.invalidatedResources.size===0&&(this.invalidatedResources=null)):(this.invalidatedResources||(this.invalidatedResources=new bme),this.invalidatedResources.has(n)||this.invalidatedResources.set(n,new vme(e,0)))}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources?"INVALID":" VALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class STe{constructor(e,n){this.resourceLabel=e,this.strResource=n,this._past=[],this._future=[],this.locked=!1,this.versionId=1}dispose(){for(const e of this._past)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);for(const e of this._future)e.type===1&&e.removeResource(this.resourceLabel,this.strResource,0);this.versionId++}toString(){const e=[];e.push(`* ${this.strResource}:`);for(let n=0;n=0;n--)e.push(` * [REDO] ${this._future[n]}`);return e.join(` `)}flushAllElements(){this._past=[],this._future=[],this.versionId++}_setElementValidFlag(e,n){e.type===1?e.setValid(this.resourceLabel,this.strResource,n):e.setValid(n)}setElementsValidFlag(e,n){for(const r of this._past)n(r.actual)&&this._setElementValidFlag(r,e);for(const r of this._future)n(r.actual)&&this._setElementValidFlag(r,e)}pushElement(e){for(const n of this._future)n.type===1&&n.removeResource(this.resourceLabel,this.strResource,1);this._future=[],this._past.push(e),this.versionId++}createSnapshot(e){const n=[];for(let r=0,s=this._past.length;r=0;r--)n.push(this._future[r].id);return new pTe(e,n)}restoreSnapshot(e){const n=e.elements.length;let r=!0,s=0,o=-1;for(let l=0,c=this._past.length;l=n||u.id!==e.elements[s])&&(r=!1,o=0),!r&&u.type===1&&u.removeResource(this.resourceLabel,this.strResource,0)}let a=-1;for(let l=this._future.length-1;l>=0;l--,s++){const c=this._future[l];r&&(s>=n||c.id!==e.elements[s])&&(r=!1,a=l),!r&&c.type===1&&c.removeResource(this.resourceLabel,this.strResource,0)}o!==-1&&(this._past=this._past.slice(0,o)),a!==-1&&(this._future=this._future.slice(a+1)),this.versionId++}getElements(){const e=[],n=[];for(const r of this._past)e.push(r.actual);for(const r of this._future)n.push(r.actual);return{past:e,future:n}}getClosestPastElement(){return this._past.length===0?null:this._past[this._past.length-1]}getSecondClosestPastElement(){return this._past.length<2?null:this._past[this._past.length-2]}getClosestFutureElement(){return this._future.length===0?null:this._future[this._future.length-1]}hasPastElements(){return this._past.length>0}hasFutureElements(){return this._future.length>0}splitPastWorkspaceElement(e,n){for(let r=this._past.length-1;r>=0;r--)if(this._past[r]===e){n.has(this.strResource)?this._past[r]=n.get(this.strResource):this._past.splice(r,1);break}this.versionId++}splitFutureWorkspaceElement(e,n){for(let r=this._future.length-1;r>=0;r--)if(this._future[r]===e){n.has(this.strResource)?this._future[r]=n.get(this.strResource):this._future.splice(r,1);break}this.versionId++}moveBackward(e){this._past.pop(),this._future.push(e),this.versionId++}moveForward(e){this._future.pop(),this._past.push(e),this.versionId++}}class Bq{constructor(e){this.editStacks=e,this._versionIds=[];for(let n=0,r=this.editStacks.length;nn.sourceOrder)&&(n=a,r=s)}return[n,r]}canUndo(e){if(e instanceof hm){const[,r]=this._findClosestUndoElementWithSource(e.id);return!!r}const n=this.getUriComparisonKey(e);return this._editStacks.has(n)?this._editStacks.get(n).hasPastElements():!1}_onError(e,n){Ln(e);for(const r of n.strResources)this.removeElements(r);this._notificationService.error(e)}_acquireLocks(e){for(const n of e.editStacks)if(n.locked)throw new Error("Cannot acquire edit stack lock");for(const n of e.editStacks)n.locked=!0;return()=>{for(const n of e.editStacks)n.locked=!1}}_safeInvokeWithLocks(e,n,r,s,o){const a=this._acquireLocks(r);let l;try{l=n()}catch(c){return a(),s.dispose(),this._onError(c,e)}return l?l.then(()=>(a(),s.dispose(),o()),c=>(a(),s.dispose(),this._onError(c,e))):(a(),s.dispose(),o())}_invokeWorkspacePrepare(e){return a6(this,void 0,void 0,function*(){if(typeof e.actual.prepareUndoRedo>"u")return Le.None;const n=e.actual.prepareUndoRedo();return typeof n>"u"?Le.None:n})}_invokeResourcePrepare(e,n){if(e.actual.type!==1||typeof e.actual.prepareUndoRedo>"u")return n(Le.None);const r=e.actual.prepareUndoRedo();return r?Ase(r)?n(r):r.then(s=>n(s)):n(Le.None)}_getAffectedEditStacks(e){const n=[];for(const r of e.strResources)n.push(this._editStacks.get(r)||xTe);return new Bq(n)}_tryToSplitAndUndo(e,n,r,s){if(n.canSplit())return this._splitPastWorkspaceElement(n,r),this._notificationService.warn(s),new u6(this._undo(e,0,!0));for(const o of n.strResources)this.removeElements(o);return this._notificationService.warn(s),new u6}_checkWorkspaceUndo(e,n,r,s){if(n.removedResources)return this._tryToSplitAndUndo(e,n,n.removedResources,L({},"Could not undo '{0}' across all files. {1}",n.label,n.removedResources.createMessage()));if(s&&n.invalidatedResources)return this._tryToSplitAndUndo(e,n,n.invalidatedResources,L({},"Could not undo '{0}' across all files. {1}",n.label,n.invalidatedResources.createMessage()));const o=[];for(const l of r.editStacks)l.getClosestPastElement()!==n&&o.push(l.resourceLabel);if(o.length>0)return this._tryToSplitAndUndo(e,n,null,L({},"Could not undo '{0}' across all files because changes were made to {1}",n.label,o.join(", ")));const a=[];for(const l of r.editStacks)l.locked&&a.push(l.resourceLabel);return a.length>0?this._tryToSplitAndUndo(e,n,null,L({},"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}",n.label,a.join(", "))):r.isValid()?null:this._tryToSplitAndUndo(e,n,null,L({},"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime",n.label))}_workspaceUndo(e,n,r){const s=this._getAffectedEditStacks(n),o=this._checkWorkspaceUndo(e,n,s,!1);return o?o.returnValue:this._confirmAndExecuteWorkspaceUndo(e,n,s,r)}_isPartOfUndoGroup(e){if(!e.groupId)return!1;for(const[,n]of this._editStacks){const r=n.getClosestPastElement();if(r){if(r===e){const s=n.getSecondClosestPastElement();if(s&&s.groupId===e.groupId)return!0}if(r.groupId===e.groupId)return!0}}return!1}_confirmAndExecuteWorkspaceUndo(e,n,r,s){return a6(this,void 0,void 0,function*(){if(n.canSplit()&&!this._isPartOfUndoGroup(n)){let l;(function(d){d[d.All=0]="All",d[d.This=1]="This",d[d.Cancel=2]="Cancel"})(l||(l={}));const{result:c}=yield this._dialogService.prompt({type:vs.Info,message:L("confirmWorkspace","Would you like to undo '{0}' across all files?",n.label),buttons:[{label:L({},"&&Undo in {0} Files",r.editStacks.length),run:()=>l.All},{label:L({},"Undo this &&File"),run:()=>l.This}],cancelButton:{run:()=>l.Cancel}});if(c===l.Cancel)return;if(c===l.This)return this._splitPastWorkspaceElement(n,null),this._undo(e,0,!0);const u=this._checkWorkspaceUndo(e,n,r,!1);if(u)return u.returnValue;s=!0}let o;try{o=yield this._invokeWorkspacePrepare(n)}catch(l){return this._onError(l,n)}const a=this._checkWorkspaceUndo(e,n,r,!0);if(a)return o.dispose(),a.returnValue;for(const l of r.editStacks)l.moveBackward(n);return this._safeInvokeWithLocks(n,()=>n.actual.undo(),r,o,()=>this._continueUndoInGroup(n.groupId,s))})}_resourceUndo(e,n,r){if(!n.isValid){e.flushAllElements();return}if(e.locked){const s=L({},"Could not undo '{0}' because there is already an undo or redo operation running.",n.label);this._notificationService.warn(s);return}return this._invokeResourcePrepare(n,s=>(e.moveBackward(n),this._safeInvokeWithLocks(n,()=>n.actual.undo(),new Bq([e]),s,()=>this._continueUndoInGroup(n.groupId,r))))}_findClosestUndoElementInGroup(e){if(!e)return[null,null];let n=null,r=null;for(const[s,o]of this._editStacks){const a=o.getClosestPastElement();a&&a.groupId===e&&(!n||a.groupOrder>n.groupOrder)&&(n=a,r=s)}return[n,r]}_continueUndoInGroup(e,n){if(!e)return;const[,r]=this._findClosestUndoElementInGroup(e);if(r)return this._undo(r,0,n)}undo(e){if(e instanceof hm){const[,n]=this._findClosestUndoElementWithSource(e.id);return n?this._undo(n,e.id,!1):void 0}return typeof e=="string"?this._undo(e,0,!1):this._undo(this.getUriComparisonKey(e),0,!1)}_undo(e,n=0,r){if(!this._editStacks.has(e))return;const s=this._editStacks.get(e),o=s.getClosestPastElement();if(!o)return;if(o.groupId){const[l,c]=this._findClosestUndoElementInGroup(o.groupId);if(o!==l&&c)return this._undo(c,n,r)}if((o.sourceId!==n||o.confirmBeforeUndo)&&!r)return this._confirmAndContinueUndo(e,n,o);try{return o.type===1?this._workspaceUndo(e,o,r):this._resourceUndo(s,o,r)}finally{}}_confirmAndContinueUndo(e,n,r){return a6(this,void 0,void 0,function*(){if((yield this._dialogService.confirm({message:L("confirmDifferentSource","Would you like to undo '{0}'?",r.label),primaryButton:L({},"&&Yes"),cancelButton:L("confirmDifferentSource.no","No")})).confirmed)return this._undo(e,n,!0)})}_findClosestRedoElementWithSource(e){if(!e)return[null,null];let n=null,r=null;for(const[s,o]of this._editStacks){const a=o.getClosestFutureElement();a&&a.sourceId===e&&(!n||a.sourceOrder0)return this._tryToSplitAndRedo(e,n,null,L({},"Could not redo '{0}' across all files because changes were made to {1}",n.label,o.join(", ")));const a=[];for(const l of r.editStacks)l.locked&&a.push(l.resourceLabel);return a.length>0?this._tryToSplitAndRedo(e,n,null,L({},"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}",n.label,a.join(", "))):r.isValid()?null:this._tryToSplitAndRedo(e,n,null,L({},"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime",n.label))}_workspaceRedo(e,n){const r=this._getAffectedEditStacks(n),s=this._checkWorkspaceRedo(e,n,r,!1);return s?s.returnValue:this._executeWorkspaceRedo(e,n,r)}_executeWorkspaceRedo(e,n,r){return a6(this,void 0,void 0,function*(){let s;try{s=yield this._invokeWorkspacePrepare(n)}catch(a){return this._onError(a,n)}const o=this._checkWorkspaceRedo(e,n,r,!0);if(o)return s.dispose(),o.returnValue;for(const a of r.editStacks)a.moveForward(n);return this._safeInvokeWithLocks(n,()=>n.actual.redo(),r,s,()=>this._continueRedoInGroup(n.groupId))})}_resourceRedo(e,n){if(!n.isValid){e.flushAllElements();return}if(e.locked){const r=L({},"Could not redo '{0}' because there is already an undo or redo operation running.",n.label);this._notificationService.warn(r);return}return this._invokeResourcePrepare(n,r=>(e.moveForward(n),this._safeInvokeWithLocks(n,()=>n.actual.redo(),new Bq([e]),r,()=>this._continueRedoInGroup(n.groupId))))}_findClosestRedoElementInGroup(e){if(!e)return[null,null];let n=null,r=null;for(const[s,o]of this._editStacks){const a=o.getClosestFutureElement();a&&a.groupId===e&&(!n||a.groupOrderXoe(i,n))}function m0t(i){let e;const n=/^L?(\d+)(?:,(\d+))?(-L?(\d+)(?:,(\d+))?)?/.exec(i.fragment);return n&&(e={startLineNumber:parseInt(n[1]),startColumn:n[2]?parseInt(n[2]):1,endLineNumber:n[4]?parseInt(n[4]):void 0,endColumn:n[4]?n[5]?parseInt(n[5]):1:void 0},i=i.with({fragment:""})),{selection:e,uri:i}}var _0t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},wme=function(i,e){return function(n,r){e(n,r,i)}};const xh=qn("ILanguageFeatureDebounceService");var v7;(function(i){const e=new WeakMap;let n=0;function r(s){let o=e.get(s);return o===void 0&&(o=++n,e.set(s,o)),o}i.of=r})(v7||(v7={}));class v0t{constructor(e){this._default=e}get(e){return this._default}update(e,n){return this._default}default(){return this._default}}class b0t{constructor(e,n,r,s,o,a){this._logService=e,this._name=n,this._registry=r,this._default=s,this._min=o,this._max=a,this._cache=new G1(50,.7)}_key(e){return e.id+this._registry.all(e).reduce((n,r)=>y$(v7.of(r),n),0)}get(e){const n=this._key(e),r=this._cache.get(n);return r?Kc(r.value,this._min,this._max):this.default()}update(e,n){const r=this._key(e);let s=this._cache.get(r);s||(s=new g0t(6),this._cache.set(r,s));const o=Kc(s.update(n),this._min,this._max);return Xoe(e.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${e.uri.toString()} is ${o}ms`),o}_overall(){const e=new kTe;for(const[,n]of this._cache)e.update(n.value);return e.value}default(){const e=this._overall()|0||this._default;return Kc(e,this._min,this._max)}}let nee=class{constructor(e,n){this._logService=e,this._data=new Map,this._isDev=n.isExtensionDevelopment||!n.isBuilt}for(e,n,r){var s,o,a;const l=(s=r==null?void 0:r.min)!==null&&s!==void 0?s:50,c=(o=r==null?void 0:r.max)!==null&&o!==void 0?o:Math.pow(l,2),u=(a=r==null?void 0:r.key)!==null&&a!==void 0?a:void 0,d=`${v7.of(e)},${l}${u?","+u:""}`;let h=this._data.get(d);return h||(this._isDev?h=new b0t(this._logService,n,e,this._overallAverage()|0||l*1.5,l,c):(this._logService.debug(`[DEBOUNCE: ${n}] is disabled in developed mode`),h=new v0t(l*1.5)),this._data.set(d,h)),h}_overallAverage(){const e=new kTe;for(const n of this._data.values())e.update(n.default());return e.value}};nee=_0t([wme(0,vd),wme(1,Goe)],nee);oi(xh,nee,1);class mM{static create(e,n){return new mM(e,new b7(n))}get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._endLineNumber}constructor(e,n){this._startLineNumber=e,this._tokens=n,this._endLineNumber=this._startLineNumber+this._tokens.getMaxDeltaLine()}toString(){return this._tokens.toString(this._startLineNumber)}_updateEndLineNumber(){this._endLineNumber=this._startLineNumber+this._tokens.getMaxDeltaLine()}isEmpty(){return this._tokens.isEmpty()}getLineTokens(e){return this._startLineNumber<=e&&e<=this._endLineNumber?this._tokens.getLineTokens(e-this._startLineNumber):null}getRange(){const e=this._tokens.getRange();return e&&new J(this._startLineNumber+e.startLineNumber,e.startColumn,this._startLineNumber+e.endLineNumber,e.endColumn)}removeTokens(e){const n=e.startLineNumber-this._startLineNumber,r=e.endLineNumber-this._startLineNumber;this._startLineNumber+=this._tokens.removeTokens(n,e.startColumn-1,r,e.endColumn-1),this._updateEndLineNumber()}split(e){const n=e.startLineNumber-this._startLineNumber,r=e.endLineNumber-this._startLineNumber,[s,o,a]=this._tokens.split(n,e.startColumn-1,r,e.endColumn-1);return[new mM(this._startLineNumber,s),new mM(this._startLineNumber+a,o)]}applyEdit(e,n){const[r,s,o]=y1(n);this.acceptEdit(e,r,s,o,n.length>0?n.charCodeAt(0):0)}acceptEdit(e,n,r,s,o){this._acceptDeleteRange(e),this._acceptInsertText(new ve(e.startLineNumber,e.startColumn),n,r,s,o),this._updateEndLineNumber()}_acceptDeleteRange(e){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return;const n=e.startLineNumber-this._startLineNumber,r=e.endLineNumber-this._startLineNumber;if(r<0){const o=r-n;this._startLineNumber-=o;return}const s=this._tokens.getMaxDeltaLine();if(!(n>=s+1)){if(n<0&&r>=s+1){this._startLineNumber=0,this._tokens.clear();return}if(n<0){const o=-n;this._startLineNumber-=o,this._tokens.acceptDeleteRange(e.startColumn-1,0,0,r,e.endColumn-1)}else this._tokens.acceptDeleteRange(0,n,e.startColumn-1,r,e.endColumn-1)}}_acceptInsertText(e,n,r,s,o){if(n===0&&r===0)return;const a=e.lineNumber-this._startLineNumber;if(a<0){this._startLineNumber+=n;return}const l=this._tokens.getMaxDeltaLine();a>=l+1||this._tokens.acceptInsertText(a,e.column-1,n,r,s,o)}}class b7{constructor(e){this._tokens=e,this._tokenCount=e.length/4}toString(e){const n=[];for(let r=0;re)r=s-1;else{let a=s;for(;a>n&&this._getDeltaLine(a-1)===e;)a--;let l=s;for(;le||f===e&&g>=n)&&(fe||g===e&&_>=n){if(go?m-=o-r:m=r;else if(p===n&&g===r)if(p===s&&m>o)m-=o-r;else{d=!0;continue}else if(po)p=n,g=r,m=g+(m-o);else{d=!0;continue}else if(p>s){if(c===0&&!d){u=l;break}p-=c}else if(p===s&&g>=o)e&&p===0&&(g+=e,m+=e),p-=c,g-=o-r,m-=o-r;else throw new Error("Not possible!");const b=4*u;a[b]=p,a[b+1]=g,a[b+2]=m,a[b+3]=_,u++}this._tokenCount=u}acceptInsertText(e,n,r,s,o,a){const l=r===0&&s===1&&(a>=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122),c=this._tokens,u=this._tokenCount;for(let d=0;d=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},jq=function(i,e){return function(n,r){e(n,r,i)}};let iee=class{constructor(e,n,r,s){this._legend=e,this._themeService=n,this._languageService=r,this._logService=s,this._hasWarnedOverlappingTokens=!1,this._hasWarnedInvalidLengthTokens=!1,this._hasWarnedInvalidEditStart=!1,this._hashTable=new N0}getMetadata(e,n,r){const s=this._languageService.languageIdCodec.encodeLanguageId(r),o=this._hashTable.get(e,n,s);let a;if(o)a=o.metadata,this._logService.getLevel()===La.Trace&&this._logService.trace(`SemanticTokensProviderStyling [CACHED] ${e} / ${n}: foreground ${Da.getForeground(a)}, fontStyle ${Da.getFontStyle(a).toString(2)}`);else{let l=this._legend.tokenTypes[e];const c=[];if(l){let u=n;for(let h=0;u>0&&h>1;u>0&&this._logService.getLevel()===La.Trace&&(this._logService.trace(`SemanticTokensProviderStyling: unknown token modifier index: ${n.toString(2)} for legend: ${JSON.stringify(this._legend.tokenModifiers)}`),c.push("not-in-legend"));const d=this._themeService.getColorTheme().getTokenStyleMetadata(l,c,r);if(typeof d>"u")a=2147483647;else{if(a=0,typeof d.italic<"u"){const h=(d.italic?1:0)<<11;a|=h|1}if(typeof d.bold<"u"){const h=(d.bold?2:0)<<11;a|=h|2}if(typeof d.underline<"u"){const h=(d.underline?4:0)<<11;a|=h|4}if(typeof d.strikethrough<"u"){const h=(d.strikethrough?8:0)<<11;a|=h|8}if(d.foreground){const h=d.foreground<<15;a|=h|16}a===0&&(a=2147483647)}}else this._logService.getLevel()===La.Trace&&this._logService.trace(`SemanticTokensProviderStyling: unknown token type index: ${e} for legend: ${JSON.stringify(this._legend.tokenTypes)}`),a=2147483647,l="not-in-legend";this._hashTable.add(e,n,s,a),this._logService.getLevel()===La.Trace&&this._logService.trace(`SemanticTokensProviderStyling ${e} (${l}) / ${n} (${c.join(" ")}): foreground ${Da.getForeground(a)}, fontStyle ${Da.getFontStyle(a).toString(2)}`)}return a}warnOverlappingSemanticTokens(e,n){this._hasWarnedOverlappingTokens||(this._hasWarnedOverlappingTokens=!0,console.warn(`Overlapping semantic tokens detected at lineNumber ${e}, column ${n}`))}warnInvalidLengthSemanticTokens(e,n){this._hasWarnedInvalidLengthTokens||(this._hasWarnedInvalidLengthTokens=!0,console.warn(`Semantic token with invalid length detected at lineNumber ${e}, column ${n}`))}warnInvalidEditStart(e,n,r,s,o){this._hasWarnedInvalidEditStart||(this._hasWarnedInvalidEditStart=!0,console.warn(`Invalid semantic tokens edit detected (previousResultId: ${e}, resultId: ${n}) at edit #${r}: The provided start offset ${s} is outside the previous data (length ${o}).`))}};iee=y0t([jq(1,Do),jq(2,Ar),jq(3,vd)],iee);function LTe(i,e,n){const r=i.data,s=i.data.length/5|0,o=Math.max(Math.ceil(s/1024),400),a=[];let l=0,c=1,u=0;for(;ld&&r[5*y]===0;)y--;if(y-1===d){let x=h;for(;x+1R)e.warnOverlappingSemanticTokens(D,R+1);else{const P=e.getMetadata(M,N,n);P!==2147483647&&(g===0&&(g=D),f[p]=D-g,f[p+1]=R,f[p+2]=A,f[p+3]=P,p+=4,m=D,_=A)}c=D,u=R,l++}p!==f.length&&(f=f.subarray(0,p));const b=mM.create(g,f);a.push(b)}return a}class w0t{constructor(e,n,r,s){this.tokenTypeIndex=e,this.tokenModifierSet=n,this.languageId=r,this.metadata=s,this.next=null}}class N0{constructor(){this._elementsCount=0,this._currentLengthIndex=0,this._currentLength=N0._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=this._growCount){const o=this._elements;this._currentLengthIndex++,this._currentLength=N0._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Wq=function(i,e){return function(n,r){e(n,r,i)}};let ree=class extends Le{constructor(e,n,r){super(),this._themeService=e,this._logService=n,this._languageService=r,this._caches=new WeakMap,this._register(this._themeService.onDidColorThemeChange(()=>{this._caches=new WeakMap}))}getStyling(e){return this._caches.has(e)||this._caches.set(e,new iee(e.getLegend(),this._themeService,this._languageService,this._logService)),this._caches.get(e)}};ree=C0t([Wq(0,Do),Wq(1,vd),Wq(2,Ar)],ree);oi(B$,ree,1);var Sme=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const d6="**",xme="/",b8="[/\\\\]",y8="[^/\\\\]",S0t=/\//g;function kme(i,e){switch(i){case 0:return"";case 1:return`${y8}*?`;default:return`(?:${b8}|${y8}+${b8}${e?`|${b8}${y8}+`:""})*?`}}function Lme(i,e){if(!i)return[];const n=[];let r=!1,s=!1,o="";for(const a of i){switch(a){case e:if(!r&&!s){n.push(o),o="";continue}break;case"{":r=!0;break;case"}":r=!1;break;case"[":s=!0;break;case"]":s=!1;break}o+=a}return o&&n.push(o),n}function DTe(i){if(!i)return"";let e="";const n=Lme(i,xme);if(n.every(r=>r===d6))e=".*";else{let r=!1;n.forEach((s,o)=>{if(s===d6){if(r)return;e+=kme(2,o===n.length-1)}else{let a=!1,l="",c=!1,u="";for(const d of s){if(d!=="}"&&a){l+=d;continue}if(c&&(d!=="]"||!u)){let h;d==="-"?h=d:(d==="^"||d==="!")&&!u?h="^":d===xme?h="":h=dd(d),u+=h;continue}switch(d){case"{":a=!0;continue;case"[":c=!0;continue;case"}":{const f=`(?:${Lme(l,",").map(p=>DTe(p)).join("|")})`;e+=f,a=!1,l="";break}case"]":{e+="["+u+"]",c=!1,u="";break}case"?":e+=y8;continue;case"*":e+=kme(1);continue;default:e+=dd(d)}}oYoe(l,e)).filter(l=>l!==Mm),i),r=n.length;if(!r)return Mm;if(r===1)return n[0];const s=function(l,c){for(let u=0,d=n.length;u!!l.allBasenames);o&&(s.allBasenames=o.allBasenames);const a=n.reduce((l,c)=>c.allPaths?l.concat(c.allPaths):l,[]);return a.length&&(s.allPaths=a),s}function Tme(i,e,n){const r=Wp===to.sep,s=r?i:i.replace(S0t,Wp),o=Wp+s,a=to.sep+i;let l;return n?l=function(c,u){return typeof c=="string"&&(c===s||c.endsWith(o)||!r&&(c===i||c.endsWith(a)))?e:null}:l=function(c,u){return typeof c=="string"&&(c===s||!r&&c===i)?e:null},l.allPaths=[(n?"*/":"./")+i],l}function N0t(i){try{const e=new RegExp(`^${DTe(i)}$`);return function(n){return e.lastIndex=0,typeof n=="string"&&e.test(n)?i:null}}catch{return Mm}}function M0t(i,e,n){return!i||typeof e!="string"?!1:ETe(i)(e,void 0,n)}function ETe(i,e={}){if(!i)return Eme;if(typeof i=="string"||P0t(i)){const n=Yoe(i,e);if(n===Mm)return Eme;const r=function(s,o){return!!n(s,o)};return n.allBasenames&&(r.allBasenames=n.allBasenames),n.allPaths&&(r.allPaths=n.allPaths),r}return O0t(i,e)}function P0t(i){const e=i;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function O0t(i,e){const n=ITe(Object.getOwnPropertyNames(i).map(l=>F0t(l,i[l],e)).filter(l=>l!==Mm)),r=n.length;if(!r)return Mm;if(!n.some(l=>!!l.requiresSiblings)){if(r===1)return n[0];const l=function(d,h){let f;for(let p=0,g=n.length;p!!d.allBasenames);c&&(l.allBasenames=c.allBasenames);const u=n.reduce((d,h)=>h.allPaths?d.concat(h.allPaths):d,[]);return u.length&&(l.allPaths=u),l}const s=function(l,c,u){let d,h;for(let f=0,p=n.length;f!!l.allBasenames);o&&(s.allBasenames=o.allBasenames);const a=n.reduce((l,c)=>c.allPaths?l.concat(c.allPaths):l,[]);return a.length&&(s.allPaths=a),s}function F0t(i,e,n){if(e===!1)return Mm;const r=Yoe(i,n);if(r===Mm)return Mm;if(typeof e=="boolean")return r;if(e){const s=e.when;if(typeof s=="string"){const o=(a,l,c,u)=>{if(!u||!r(a,l))return null;const d=s.replace("$(basename)",()=>c),h=u(d);return uJ(h)?h.then(f=>f?i:null):h?i:null};return o.requiresSiblings=!0,o}}return r}function ITe(i,e){const n=i.filter(l=>!!l.basenames);if(n.length<2)return i;const r=n.reduce((l,c)=>{const u=c.basenames;return u?l.concat(u):l},[]);let s;if(e){s=[];for(let l=0,c=r.length;l{const u=c.patterns;return u?l.concat(u):l},[]);const o=function(l,c){if(typeof l!="string")return null;if(!c){let d;for(d=l.length;d>0;d--){const h=l.charCodeAt(d-1);if(h===47||h===92)break}c=l.substr(d)}const u=r.indexOf(c);return u!==-1?s[u]:null};o.basenames=r,o.patterns=s,o.allBasenames=r;const a=i.filter(l=>!l.basenames);return a.push(o),a}function TTe(i,e,n,r,s,o){if(Array.isArray(i)){let a=0;for(const l of i){const c=TTe(l,e,n,r,s,o);if(c===10)return c;c>a&&(a=c)}return a}else{if(typeof i=="string")return r?i==="*"?5:i===n?10:0:0;if(i){const{language:a,pattern:l,scheme:c,hasAccessToAllModels:u,notebookType:d}=i;if(!r&&!u)return 0;d&&s&&(e=s);let h=0;if(c)if(c===e.scheme)h=10;else if(c==="*")h=5;else return 0;if(a)if(a===n)h=10;else if(a==="*")h=Math.max(h,5);else return 0;if(d)if(d===o)h=10;else if(d==="*"&&o!==void 0)h=Math.max(h,5);else return 0;if(l){let f;if(typeof l=="string"?f=l:f=Object.assign(Object.assign({},l),{base:j2e(l.base)}),f===e.fsPath||M0t(f,e.fsPath))h=10;else return 0}return h}else return 0}}function RTe(i){return typeof i=="string"?!1:Array.isArray(i)?i.every(RTe):!!i.exclusive}class Rme{constructor(e,n,r,s){this.uri=e,this.languageId=n,this.notebookUri=r,this.notebookType=s}equals(e){var n,r;return this.notebookType===e.notebookType&&this.languageId===e.languageId&&this.uri.toString()===e.uri.toString()&&((n=this.notebookUri)===null||n===void 0?void 0:n.toString())===((r=e.notebookUri)===null||r===void 0?void 0:r.toString())}}class is{constructor(e){this._notebookInfoResolver=e,this._clock=0,this._entries=[],this._onDidChange=new _e,this.onDidChange=this._onDidChange.event}register(e,n){let r={selector:e,provider:n,_score:-1,_time:this._clock++};return this._entries.push(r),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),gn(()=>{if(r){const s=this._entries.indexOf(r);s>=0&&(this._entries.splice(s,1),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),r=void 0)}})}has(e){return this.all(e).length>0}all(e){if(!e)return[];this._updateScores(e);const n=[];for(const r of this._entries)r._score>0&&n.push(r.provider);return n}ordered(e){const n=[];return this._orderedForEach(e,r=>n.push(r.provider)),n}orderedGroups(e){const n=[];let r,s;return this._orderedForEach(e,o=>{r&&s===o._score?r.push(o.provider):(s=o._score,r=[o.provider],n.push(r))}),n}_orderedForEach(e,n){this._updateScores(e);for(const r of this._entries)r._score>0&&n(r)}_updateScores(e){var n,r;const s=(n=this._notebookInfoResolver)===null||n===void 0?void 0:n.call(this,e.uri),o=s?new Rme(e.uri,e.getLanguageId(),s.uri,s.type):new Rme(e.uri,e.getLanguageId(),void 0,void 0);if(!(!((r=this._lastCandidate)===null||r===void 0)&&r.equals(o))){this._lastCandidate=o;for(const a of this._entries)if(a._score=TTe(a.selector,o.uri,o.languageId,Ect(e),o.notebookUri,o.notebookType),RTe(a.selector)&&a._score>0){for(const l of this._entries)l._score=0;a._score=1e3;break}this._entries.sort(is._compareByScoreAndTime)}}static _compareByScoreAndTime(e,n){return e._scoren._score?-1:vN(e.selector)&&!vN(n.selector)?1:!vN(e.selector)&&vN(n.selector)?-1:e._timen._time?-1:0}}function vN(i){return typeof i=="string"?!1:Array.isArray(i)?i.some(vN):!!i.isBuiltin}class B0t{constructor(){this.referenceProvider=new is(this._score.bind(this)),this.renameProvider=new is(this._score.bind(this)),this.codeActionProvider=new is(this._score.bind(this)),this.definitionProvider=new is(this._score.bind(this)),this.typeDefinitionProvider=new is(this._score.bind(this)),this.declarationProvider=new is(this._score.bind(this)),this.implementationProvider=new is(this._score.bind(this)),this.documentSymbolProvider=new is(this._score.bind(this)),this.inlayHintsProvider=new is(this._score.bind(this)),this.colorProvider=new is(this._score.bind(this)),this.codeLensProvider=new is(this._score.bind(this)),this.documentFormattingEditProvider=new is(this._score.bind(this)),this.documentRangeFormattingEditProvider=new is(this._score.bind(this)),this.onTypeFormattingEditProvider=new is(this._score.bind(this)),this.signatureHelpProvider=new is(this._score.bind(this)),this.hoverProvider=new is(this._score.bind(this)),this.documentHighlightProvider=new is(this._score.bind(this)),this.selectionRangeProvider=new is(this._score.bind(this)),this.foldingRangeProvider=new is(this._score.bind(this)),this.linkProvider=new is(this._score.bind(this)),this.inlineCompletionsProvider=new is(this._score.bind(this)),this.completionProvider=new is(this._score.bind(this)),this.linkedEditingRangeProvider=new is(this._score.bind(this)),this.documentRangeSemanticTokensProvider=new is(this._score.bind(this)),this.documentSemanticTokensProvider=new is(this._score.bind(this)),this.documentOnDropEditProvider=new is(this._score.bind(this)),this.documentPasteEditProvider=new is(this._score.bind(this))}_score(e){var n;return(n=this._notebookTypeResolver)===null||n===void 0?void 0:n.call(this,e)}}oi(Et,B0t,1);const $5=qn("IWorkspaceEditService");class Zoe{constructor(e){this.metadata=e}static convert(e){return e.edits.map(n=>{if(mv.is(n))return mv.lift(n);if(J2.is(n))return J2.lift(n);throw new Error("Unsupported edit")})}}class mv extends Zoe{static is(e){return e instanceof mv?!0:Bl(e)&&Jt.isUri(e.resource)&&Bl(e.textEdit)}static lift(e){return e instanceof mv?e:new mv(e.resource,e.textEdit,e.versionId,e.metadata)}constructor(e,n,r=void 0,s){super(s),this.resource=e,this.textEdit=n,this.versionId=r}}class J2 extends Zoe{static is(e){return e instanceof J2?!0:Bl(e)&&(!!e.newResource||!!e.oldResource)}static lift(e){return e instanceof J2?e:new J2(e.oldResource,e.newResource,e.options,e.metadata)}constructor(e,n,r={},s){super(s),this.oldResource=e,this.newResource=n,this.options=r}}const ll={enableSplitViewResizing:!0,renderSideBySide:!0,renderMarginRevertIcon:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit",diffAlgorithm:"advanced",accessibilityVerbose:!1,experimental:{showMoves:!1,showEmptyDecorations:!0},hideUnchangedRegions:{enabled:!1,contextLineCount:3,minimumLineCount:3,revealLineCount:20},isInEmbeddedEditor:!1,onlyShowAccessibleDiffViewer:!1,renderSideBySideInlineBreakpoint:900,useInlineViewWhenSpaceIsLimited:!0},j$=Object.freeze({id:"editor",order:5,type:"object",title:L("editorConfigurationTitle","Editor"),scope:5}),y7=Object.assign(Object.assign({},j$),{properties:{"editor.tabSize":{type:"number",default:za.tabSize,minimum:1,markdownDescription:L("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.indentSize":{anyOf:[{type:"string",enum:["tabSize"]},{type:"number",minimum:1}],default:"tabSize",markdownDescription:L("indentSize",'The number of spaces used for indentation or `"tabSize"` to use the value from `#editor.tabSize#`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.')},"editor.insertSpaces":{type:"boolean",default:za.insertSpaces,markdownDescription:L("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.detectIndentation":{type:"boolean",default:za.detectIndentation,markdownDescription:L("detectIndentation","Controls whether {0} and {1} will be automatically detected when a file is opened based on the file contents.","`#editor.tabSize#`","`#editor.insertSpaces#`")},"editor.trimAutoWhitespace":{type:"boolean",default:za.trimAutoWhitespace,description:L("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:za.largeFileOptimizations,description:L("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{type:"boolean",default:!0,description:L("wordBasedSuggestions","Controls whether completions should be computed based on words in the document.")},"editor.wordBasedSuggestionsMode":{enum:["currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[L("wordBasedSuggestionsMode.currentDocument","Only suggest words from the active document."),L("wordBasedSuggestionsMode.matchingDocuments","Suggest words from all open documents of the same language."),L("wordBasedSuggestionsMode.allDocuments","Suggest words from all open documents.")],description:L("wordBasedSuggestionsMode","Controls from which documents word based completions are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[L("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),L("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),L("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:L("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:L("stablePeek","Keep peek editors open even when double-clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:L("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.experimental.asyncTokenization":{type:"boolean",default:!1,description:L("editor.experimental.asyncTokenization","Controls whether the tokenization should happen asynchronously on a web worker."),tags:["experimental"]},"editor.experimental.asyncTokenizationLogging":{type:"boolean",default:!1,description:L("editor.experimental.asyncTokenizationLogging","Controls whether async tokenization should be logged. For debugging only.")},"editor.experimental.asyncTokenizationVerification":{type:"boolean",default:!1,description:L("editor.experimental.asyncTokenizationVerification","Controls whether async tokenization should be verified against legacy background tokenization. Might slow down tokenization. For debugging only."),tags:["experimental"]},"editor.language.brackets":{type:["array","null"],default:null,description:L("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:L("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:L("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:L("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:L("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:L("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:ll.maxComputationTime,description:L("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:ll.maxFileSize,description:L("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:ll.renderSideBySide,description:L("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderSideBySideInlineBreakpoint":{type:"number",default:ll.renderSideBySideInlineBreakpoint,description:L("renderSideBySideInlineBreakpoint","If the diff editor width is smaller than this value, the inline view is used.")},"diffEditor.useInlineViewWhenSpaceIsLimited":{type:"boolean",default:ll.useInlineViewWhenSpaceIsLimited,description:L("useInlineViewWhenSpaceIsLimited","If enabled and the editor width is too small, the inline view is used.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:ll.renderMarginRevertIcon,description:L("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:ll.ignoreTrimWhitespace,description:L("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:ll.renderIndicators,description:L("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:ll.diffCodeLens,description:L("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:ll.diffWordWrap,markdownEnumDescriptions:[L("wordWrap.off","Lines will never wrap."),L("wordWrap.on","Lines will wrap at the viewport width."),L("wordWrap.inherit","Lines will wrap according to the {0} setting.","`#editor.wordWrap#`")]},"diffEditor.diffAlgorithm":{type:"string",enum:["legacy","advanced"],default:ll.diffAlgorithm,markdownEnumDescriptions:[L("diffAlgorithm.legacy","Uses the legacy diffing algorithm."),L("diffAlgorithm.advanced","Uses the advanced diffing algorithm.")],tags:["experimental"]},"diffEditor.hideUnchangedRegions.enabled":{type:"boolean",default:ll.hideUnchangedRegions.enabled,markdownDescription:L("hideUnchangedRegions.enabled","Controls whether the diff editor shows unchanged regions.")},"diffEditor.hideUnchangedRegions.revealLineCount":{type:"integer",default:ll.hideUnchangedRegions.revealLineCount,markdownDescription:L("hideUnchangedRegions.revealLineCount","Controls how many lines are used for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.minimumLineCount":{type:"integer",default:ll.hideUnchangedRegions.minimumLineCount,markdownDescription:L("hideUnchangedRegions.minimumLineCount","Controls how many lines are used as a minimum for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.contextLineCount":{type:"integer",default:ll.hideUnchangedRegions.contextLineCount,markdownDescription:L("hideUnchangedRegions.contextLineCount","Controls how many lines are used as context when comparing unchanged regions."),minimum:1},"diffEditor.experimental.showMoves":{type:"boolean",default:ll.experimental.showMoves,markdownDescription:L("showMoves","Controls whether the diff editor should show detected code moves.")},"diffEditor.experimental.showEmptyDecorations":{type:"boolean",default:ll.experimental.showEmptyDecorations,description:L("showEmptyDecorations","Controls whether the diff editor shows empty decorations to see where characters got inserted or deleted.")}}});function j0t(i){return typeof i.type<"u"||typeof i.anyOf<"u"}for(const i of t2){const e=i.schema;if(typeof e<"u")if(j0t(e))y7.properties[`editor.${i.name}`]=e;else for(const n in e)Object.hasOwnProperty.call(e,n)&&(y7.properties[n]=e[n])}let h6=null;function ATe(){return h6===null&&(h6=Object.create(null),Object.keys(y7.properties).forEach(i=>{h6[i]=!0})),h6}function W0t(i){return ATe()[`editor.${i}`]||!1}function $0t(i){return ATe()[`diffEditor.${i}`]||!1}const z0t=Kr.as(ag.Configuration);z0t.registerConfiguration(y7);class Vr{static insert(e,n){return{range:new J(e.lineNumber,e.column,e.lineNumber,e.column),text:n,forceMoveMarkers:!0}}static delete(e){return{range:e,text:null}}static replace(e,n){return{range:e,text:n}}static replaceMove(e,n){return{range:e,text:n,forceMoveMarkers:!0}}}function zq(i){return Object.isFrozen(i)?i:Irt(i)}class Wa{constructor(e={},n=[],r=[],s){this._contents=e,this._keys=n,this._overrides=r,this.raw=s,this.overrideConfigurations=new Map}get rawConfiguration(){var e;if(!this._rawConfiguration)if(!((e=this.raw)===null||e===void 0)&&e.length){const n=this.raw.map(r=>{if(r instanceof Wa)return r;const s=new V0t("");return s.parseRaw(r),s.configurationModel});this._rawConfiguration=n.reduce((r,s)=>s===r?s:r.merge(s),n[0])}else this._rawConfiguration=this;return this._rawConfiguration}get contents(){return this._contents}get overrides(){return this._overrides}get keys(){return this._keys}isEmpty(){return this._keys.length===0&&Object.keys(this._contents).length===0&&this._overrides.length===0}getValue(e){return e?bpe(this.contents,e):this.contents}inspect(e,n){const r=this.rawConfiguration.getValue(e),s=n?this.rawConfiguration.getOverrideValue(e,n):void 0,o=n?this.rawConfiguration.override(n).getValue(e):r;return{value:r,override:s,merged:o}}getOverrideValue(e,n){const r=this.getContentsForOverrideIdentifer(n);return r?e?bpe(r,e):r:void 0}override(e){let n=this.overrideConfigurations.get(e);return n||(n=this.createOverrideConfigurationModel(e),this.overrideConfigurations.set(e,n)),n}merge(...e){var n,r;const s=T0(this.contents),o=T0(this.overrides),a=[...this.keys],l=!((n=this.raw)===null||n===void 0)&&n.length?[...this.raw]:[this];for(const c of e)if(l.push(...!((r=c.raw)===null||r===void 0)&&r.length?c.raw:[c]),!c.isEmpty()){this.mergeContents(s,c.contents);for(const u of c.overrides){const[d]=o.filter(h=>ys(h.identifiers,u.identifiers));d?(this.mergeContents(d.contents,u.contents),d.keys.push(...u.keys),d.keys=l1(d.keys)):o.push(T0(u))}for(const u of c.keys)a.indexOf(u)===-1&&a.push(u)}return new Wa(s,a,o,l.every(c=>c instanceof Wa)?void 0:l)}createOverrideConfigurationModel(e){const n=this.getContentsForOverrideIdentifer(e);if(!n||typeof n!="object"||!Object.keys(n).length)return this;const r={};for(const s of l1([...Object.keys(this.contents),...Object.keys(n)])){let o=this.contents[s];const a=n[s];a&&(typeof o=="object"&&typeof a=="object"?(o=T0(o),this.mergeContents(o,a)):o=a),r[s]=o}return new Wa(r,this.keys,this.overrides)}mergeContents(e,n){for(const r of Object.keys(n)){if(r in e&&Bl(e[r])&&Bl(n[r])){this.mergeContents(e[r],n[r]);continue}e[r]=T0(n[r])}}getContentsForOverrideIdentifer(e){let n=null,r=null;const s=o=>{o&&(r?this.mergeContents(r,o):r=T0(o))};for(const o of this.overrides)o.identifiers.length===1&&o.identifiers[0]===e?n=o.contents:o.identifiers.includes(e)&&s(o.contents);return s(n),r}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}addValue(e,n){this.updateValue(e,n,!0)}setValue(e,n){this.updateValue(e,n,!1)}removeValue(e){const n=this.keys.indexOf(e);n!==-1&&(this.keys.splice(n,1),Hlt(this.contents,e),m1.test(e)&&this.overrides.splice(this.overrides.findIndex(r=>ys(r.identifiers,H9(e))),1))}updateValue(e,n,r){WEe(this.contents,e,n,s=>console.error(s)),r=r||this.keys.indexOf(e)===-1,r&&this.keys.push(e),m1.test(e)&&this.overrides.push({identifiers:H9(e),keys:Object.keys(this.contents[e]),contents:fJ(this.contents[e],s=>console.error(s))})}}class V0t{constructor(e){this._name=e,this._raw=null,this._configurationModel=null,this._restrictedConfigurations=[]}get configurationModel(){return this._configurationModel||new Wa}parseRaw(e,n){this._raw=e;const{contents:r,keys:s,overrides:o,restricted:a,hasExcludedProperties:l}=this.doParseRaw(e,n);this._configurationModel=new Wa(r,s,o,l?[e]:void 0),this._restrictedConfigurations=a||[]}doParseRaw(e,n){const r=Kr.as(ag.Configuration).getConfigurationProperties(),s=this.filter(e,r,!0,n);e=s.raw;const o=fJ(e,c=>console.error(`Conflict in settings file ${this._name}: ${c}`)),a=Object.keys(e),l=this.toOverrides(e,c=>console.error(`Conflict in settings file ${this._name}: ${c}`));return{contents:o,keys:a,overrides:l,restricted:s.restricted,hasExcludedProperties:s.hasExcludedProperties}}filter(e,n,r,s){var o,a,l;let c=!1;if(!(s!=null&&s.scopes)&&!(s!=null&&s.skipRestricted)&&!(!((o=s==null?void 0:s.exclude)===null||o===void 0)&&o.length))return{raw:e,restricted:[],hasExcludedProperties:c};const u={},d=[];for(const h in e)if(m1.test(h)&&r){const f=this.filter(e[h],n,!1,s);u[h]=f.raw,c=c||f.hasExcludedProperties,d.push(...f.restricted)}else{const f=n[h],p=f?typeof f.scope<"u"?f.scope:3:void 0;f!=null&&f.restricted&&d.push(h),!(!((a=s.exclude)===null||a===void 0)&&a.includes(h))&&(!((l=s.include)===null||l===void 0)&&l.includes(h)||(p===void 0||s.scopes===void 0||s.scopes.includes(p))&&!(s.skipRestricted&&(f!=null&&f.restricted)))?u[h]=e[h]:c=!0}return{raw:u,restricted:d,hasExcludedProperties:c}}toOverrides(e,n){const r=[];for(const s of Object.keys(e))if(m1.test(s)){const o={};for(const a in e[s])o[a]=e[s][a];r.push({identifiers:H9(s),keys:Object.keys(o),contents:fJ(o,n)})}return r}}class H0t{constructor(e,n,r,s,o,a,l,c,u,d,h,f,p){this.key=e,this.overrides=n,this._value=r,this.overrideIdentifiers=s,this.defaultConfiguration=o,this.policyConfiguration=a,this.applicationConfiguration=l,this.userConfiguration=c,this.localUserConfiguration=u,this.remoteUserConfiguration=d,this.workspaceConfiguration=h,this.folderConfigurationModel=f,this.memoryConfigurationModel=p}inspect(e,n,r){const s=e.inspect(n,r);return{get value(){return zq(s.value)},get override(){return zq(s.override)},get merged(){return zq(s.merged)}}}get userInspectValue(){return this._userInspectValue||(this._userInspectValue=this.inspect(this.userConfiguration,this.key,this.overrides.overrideIdentifier)),this._userInspectValue}get user(){return this.userInspectValue.value!==void 0||this.userInspectValue.override!==void 0?{value:this.userInspectValue.value,override:this.userInspectValue.override}:void 0}}class W${constructor(e,n,r,s,o=new Wa,a=new Wa,l=new Va,c=new Wa,u=new Va){this._defaultConfiguration=e,this._policyConfiguration=n,this._applicationConfiguration=r,this._localUserConfiguration=s,this._remoteUserConfiguration=o,this._workspaceConfiguration=a,this._folderConfigurations=l,this._memoryConfiguration=c,this._memoryConfigurationByResource=u,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new Va,this._userConfiguration=null}getValue(e,n,r){return this.getConsolidatedConfigurationModel(e,n,r).getValue(e)}updateValue(e,n,r={}){let s;r.resource?(s=this._memoryConfigurationByResource.get(r.resource),s||(s=new Wa,this._memoryConfigurationByResource.set(r.resource,s))):s=this._memoryConfiguration,n===void 0?s.removeValue(e):s.setValue(e,n),r.resource||(this._workspaceConsolidatedConfiguration=null)}inspect(e,n,r){const s=this.getConsolidatedConfigurationModel(e,n,r),o=this.getFolderConfigurationModelForResource(n.resource,r),a=n.resource?this._memoryConfigurationByResource.get(n.resource)||this._memoryConfiguration:this._memoryConfiguration,l=new Set;for(const c of s.overrides)for(const u of c.identifiers)s.getOverrideValue(e,u)!==void 0&&l.add(u);return new H0t(e,n,s.getValue(e),l.size?[...l]:void 0,this._defaultConfiguration,this._policyConfiguration.isEmpty()?void 0:this._policyConfiguration,this.applicationConfiguration.isEmpty()?void 0:this.applicationConfiguration,this.userConfiguration,this.localUserConfiguration,this.remoteUserConfiguration,r?this._workspaceConfiguration:void 0,o||void 0,a)}get applicationConfiguration(){return this._applicationConfiguration}get userConfiguration(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration)),this._userConfiguration}get localUserConfiguration(){return this._localUserConfiguration}get remoteUserConfiguration(){return this._remoteUserConfiguration}getConsolidatedConfigurationModel(e,n,r){let s=this.getConsolidatedConfigurationModelForResource(n,r);return n.overrideIdentifier&&(s=s.override(n.overrideIdentifier)),!this._policyConfiguration.isEmpty()&&this._policyConfiguration.getValue(e)!==void 0&&(s=s.merge(this._policyConfiguration)),s}getConsolidatedConfigurationModelForResource({resource:e},n){let r=this.getWorkspaceConsolidatedConfiguration();if(n&&e){const s=n.getFolder(e);s&&(r=this.getFolderConsolidatedConfiguration(s.uri)||r);const o=this._memoryConfigurationByResource.get(e);o&&(r=r.merge(o))}return r}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.applicationConfiguration,this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration)),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(e){let n=this._foldersConsolidatedConfigurations.get(e);if(!n){const r=this.getWorkspaceConsolidatedConfiguration(),s=this._folderConfigurations.get(e);s?(n=r.merge(s),this._foldersConsolidatedConfigurations.set(e,n)):n=r}return n}getFolderConfigurationModelForResource(e,n){if(n&&e){const r=n.getFolder(e);if(r)return this._folderConfigurations.get(r.uri)}}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},policy:{contents:this._policyConfiguration.contents,overrides:this._policyConfiguration.overrides,keys:this._policyConfiguration.keys},application:{contents:this.applicationConfiguration.contents,overrides:this.applicationConfiguration.overrides,keys:this.applicationConfiguration.keys},user:{contents:this.userConfiguration.contents,overrides:this.userConfiguration.overrides,keys:this.userConfiguration.keys},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((e,n)=>{const{contents:r,overrides:s,keys:o}=this._folderConfigurations.get(n);return e.push([n,{contents:r,overrides:s,keys:o}]),e},[])}}static parse(e){const n=this.parseConfigurationModel(e.defaults),r=this.parseConfigurationModel(e.policy),s=this.parseConfigurationModel(e.application),o=this.parseConfigurationModel(e.user),a=this.parseConfigurationModel(e.workspace),l=e.folders.reduce((c,u)=>(c.set(Jt.revive(u[0]),this.parseConfigurationModel(u[1])),c),new Va);return new W$(n,r,s,o,new Wa,a,l,new Wa,new Va)}static parseConfigurationModel(e){return new Wa(e.contents,e.keys,e.overrides)}}class U0t{constructor(e,n,r,s){this.change=e,this.previous=n,this.currentConfiguraiton=r,this.currentWorkspace=s,this._marker=` `,this._markerCode1=this._marker.charCodeAt(0),this._markerCode2=46,this.affectedKeys=new Set,this._previousConfiguration=void 0;for(const o of e.keys)this.affectedKeys.add(o);for(const[,o]of e.overrides)for(const a of o)this.affectedKeys.add(a);this._affectsConfigStr=this._marker;for(const o of this.affectedKeys)this._affectsConfigStr+=o+this._marker}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=W$.parse(this.previous.data)),this._previousConfiguration}affectsConfiguration(e,n){var r;const s=this._marker+e,o=this._affectsConfigStr.indexOf(s);if(o<0)return!1;const a=o+s.length;if(a>=this._affectsConfigStr.length)return!1;const l=this._affectsConfigStr.charCodeAt(a);if(l!==this._markerCode1&&l!==this._markerCode2)return!1;if(n){const c=this.previousConfiguration?this.previousConfiguration.getValue(e,n,(r=this.previous)===null||r===void 0?void 0:r.workspace):void 0,u=this.currentConfiguraiton.getValue(e,n,this.currentWorkspace);return!od(c,u)}return!0}}const w7={kind:0},q0t={kind:1};function K0t(i,e,n){return{kind:2,commandId:i,commandArgs:e,isBubble:n}}class _M{constructor(e,n,r){var s;this._log=r,this._defaultKeybindings=e,this._defaultBoundCommands=new Map;for(const o of e){const a=o.command;a&&a.charAt(0)!=="-"&&this._defaultBoundCommands.set(a,!0)}this._map=new Map,this._lookupMap=new Map,this._keybindings=_M.handleRemovals([].concat(e).concat(n));for(let o=0,a=this._keybindings.length;o"u"){this._map.set(e,[n]),this._addToLookupMap(n);return}for(let s=r.length-1;s>=0;s--){const o=r[s];if(o.command===n.command)continue;let a=!0;for(let l=1;l"u"?(n=[e],this._lookupMap.set(e.command,n)):n.push(e)}_removeFromLookupMap(e){if(!e.command)return;const n=this._lookupMap.get(e.command);if(!(typeof n>"u")){for(let r=0,s=n.length;r"u"||r.length===0)return null;if(r.length===1)return r[0];for(let s=r.length-1;s>=0;s--){const o=r[s];if(n.contextMatchesRules(o.when))return o}return r[r.length-1]}resolve(e,n,r){const s=[...n,r];this._log(`| Resolving ${s}`);const o=this._map.get(s[0]);if(o===void 0)return this._log("\\ No keybinding entries."),w7;let a=null;if(s.length<2)a=o;else{a=[];for(let c=0,u=o.length;cd.chords.length)continue;let h=!0;for(let f=1;f=0;r--){const s=n[r];if(_M._contextMatchesRules(e,s.when))return s}return null}static _contextMatchesRules(e,n){return n?n.evaluate(e):!0}}function Ame(i){return i?`${i.serialize()}`:"no when condition"}function Nme(i){return i.extensionId?i.isBuiltinExtension?`built-in extension ${i.extensionId}`:`user extension ${i.extensionId}`:i.isDefault?"built-in":"user"}const G0t=/^(cursor|delete|undo|redo|tab|editor\.action\.clipboard)/;class X0t extends Le{get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:_t.None}get inChordMode(){return this._currentChords.length>0}constructor(e,n,r,s,o){super(),this._contextKeyService=e,this._commandService=n,this._telemetryService=r,this._notificationService=s,this._logService=o,this._onDidUpdateKeybindings=this._register(new _e),this._currentChords=[],this._currentChordChecker=new D5,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=m2.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new Mf,this._logging=!1}dispose(){super.dispose()}_log(e){this._logging&&this._logService.info(`[KeybindingService]: ${e}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(e,n){const r=this._getResolver().lookupPrimaryKeybinding(e,n||this._contextKeyService);if(r)return r.resolvedKeybinding}dispatchEvent(e,n){return this._dispatch(e,n)}softDispatch(e,n){this._log("/ Soft dispatching keyboard event");const r=this.resolveKeyboardEvent(e);if(r.hasMultipleChords())return console.warn("keyboard event should not be mapped to multiple chords"),w7;const[s]=r.getDispatchChords();if(s===null)return this._log("\\ Keyboard event cannot be dispatched"),w7;const o=this._contextKeyService.getContext(n),a=this._currentChords.map(({keypress:l})=>l);return this._getResolver().resolve(o,a,s)}_scheduleLeaveChordMode(){const e=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus()){this._leaveChordMode();return}Date.now()-e>5e3&&this._leaveChordMode()},500)}_expectAnotherChord(e,n){switch(this._currentChords.push({keypress:e,label:n}),this._currentChords.length){case 0:throw Rse("impossible");case 1:this._currentChordStatusMessage=this._notificationService.status(L("first.chord","({0}) was pressed. Waiting for second key of chord...",n));break;default:{const r=this._currentChords.map(({label:s})=>s).join(", ");this._currentChordStatusMessage=this._notificationService.status(L("next.chord","({0}) was pressed. Waiting for next key of chord...",r))}}this._scheduleLeaveChordMode(),iM.enabled&&iM.disable()}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChords=[],iM.enable()}_dispatch(e,n){return this._doDispatch(this.resolveKeyboardEvent(e),n,!1)}_singleModifierDispatch(e,n){const r=this.resolveKeyboardEvent(e),[s]=r.getSingleModifierDispatchChords();if(s)return this._ignoreSingleModifiers.has(s)?(this._log(`+ Ignoring single modifier ${s} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=m2.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=m2.EMPTY,this._currentSingleModifier===null?(this._log(`+ Storing single modifier for possible chord ${s}.`),this._currentSingleModifier=s,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):s===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${s} ${s}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(r,n,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${s}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1));const[o]=r.getChords();return this._ignoreSingleModifiers=new m2(o),this._currentSingleModifier!==null&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(e,n,r=!1){var s;let o=!1;if(e.hasMultipleChords())return console.warn("Unexpected keyboard event mapped to multiple chords"),!1;let a=null,l=null;if(r){const[h]=e.getSingleModifierDispatchChords();a=h,l=h?[h]:[]}else[a]=e.getDispatchChords(),l=this._currentChords.map(({keypress:h})=>h);if(a===null)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),o;const c=this._contextKeyService.getContext(n),u=e.getLabel(),d=this._getResolver().resolve(c,l,a);switch(d.kind){case 0:{if(this._logService.trace("KeybindingService#dispatch",u,"[ No matching keybinding ]"),this.inChordMode){const h=this._currentChords.map(({label:f})=>f).join(", ");this._log(`+ Leaving multi-chord mode: Nothing bound to "${h}, ${u}".`),this._notificationService.status(L("missing.chord","The key combination ({0}, {1}) is not a command.",h,u),{hideAfter:10*1e3}),this._leaveChordMode(),o=!0}return o}case 1:return this._logService.trace("KeybindingService#dispatch",u,"[ Several keybindings match - more chords needed ]"),o=!0,this._expectAnotherChord(a,u),this._log(this._currentChords.length===1?"+ Entering multi-chord mode...":"+ Continuing multi-chord mode..."),o;case 2:{if(this._logService.trace("KeybindingService#dispatch",u,`[ Will dispatch command ${d.commandId} ]`),d.commandId===null||d.commandId===""){if(this.inChordMode){const h=this._currentChords.map(({label:f})=>f).join(", ");this._log(`+ Leaving chord mode: Nothing bound to "${h}, ${u}".`),this._notificationService.status(L("missing.chord","The key combination ({0}, {1}) is not a command.",h,u),{hideAfter:10*1e3}),this._leaveChordMode(),o=!0}}else this.inChordMode&&this._leaveChordMode(),d.isBubble||(o=!0),this._log(`+ Invoking command ${d.commandId}.`),typeof d.commandArgs>"u"?this._commandService.executeCommand(d.commandId).then(void 0,h=>this._notificationService.warn(h)):this._commandService.executeCommand(d.commandId,d.commandArgs).then(void 0,h=>this._notificationService.warn(h)),G0t.test(d.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:d.commandId,from:"keybinding",detail:(s=e.getUserSettingsLabel())!==null&&s!==void 0?s:void 0});return o}}}mightProducePrintableCharacter(e){return e.ctrlKey||e.metaKey?!1:e.keyCode>=31&&e.keyCode<=56||e.keyCode>=21&&e.keyCode<=30}}class m2{constructor(e){this._ctrlKey=e?e.ctrlKey:!1,this._shiftKey=e?e.shiftKey:!1,this._altKey=e?e.altKey:!1,this._metaKey=e?e.metaKey:!1}has(e){switch(e){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}}m2.EMPTY=new m2(null);class Mme{constructor(e,n,r,s,o,a,l){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=e,this.chords=e?see(e.getDispatchChords()):[],e&&this.chords.length===0&&(this.chords=see(e.getSingleModifierDispatchChords())),this.bubble=n?n.charCodeAt(0)===94:!1,this.command=this.bubble?n.substr(1):n,this.commandArgs=r,this.when=s,this.isDefault=o,this.extensionId=a,this.isBuiltinExtension=l}}function see(i){const e=[];for(let n=0,r=i.length;nthis._getLabel(e))}getAriaLabel(){return Y0t.toLabel(this._os,this._chords,e=>this._getAriaLabel(e))}getElectronAccelerator(){return this._chords.length>1||this._chords[0].isDuplicateModifierCase()?null:Z0t.toLabel(this._os,this._chords,e=>this._getElectronAccelerator(e))}getUserSettingsLabel(){return Q0t.toLabel(this._os,this._chords,e=>this._getUserSettingsLabel(e))}hasMultipleChords(){return this._chords.length>1}getChords(){return this._chords.map(e=>this._getChord(e))}_getChord(e){return new iat(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,this._getLabel(e),this._getAriaLabel(e))}getDispatchChords(){return this._chords.map(e=>this._getChordDispatch(e))}getSingleModifierDispatchChords(){return this._chords.map(e=>this._getSingleModifierChordDispatch(e))}}class jP extends evt{constructor(e,n){super(n,e)}_keyCodeToUILabel(e){if(this._os===2)switch(e){case 15:return"←";case 16:return"↑";case 17:return"→";case 18:return"↓"}return W0.toString(e)}_getLabel(e){return e.isDuplicateModifierCase()?"":this._keyCodeToUILabel(e.keyCode)}_getAriaLabel(e){return e.isDuplicateModifierCase()?"":W0.toString(e.keyCode)}_getElectronAccelerator(e){return W0.toElectronAccelerator(e.keyCode)}_getUserSettingsLabel(e){if(e.isDuplicateModifierCase())return"";const n=W0.toUserSettingsUS(e.keyCode);return n&&n.toLowerCase()}_getChordDispatch(e){return jP.getDispatchStr(e)}static getDispatchStr(e){if(e.isModifierKey())return null;let n="";return e.ctrlKey&&(n+="ctrl+"),e.shiftKey&&(n+="shift+"),e.altKey&&(n+="alt+"),e.metaKey&&(n+="meta+"),n+=W0.toString(e.keyCode),n}_getSingleModifierChordDispatch(e){return e.keyCode===5&&!e.shiftKey&&!e.altKey&&!e.metaKey?"ctrl":e.keyCode===4&&!e.ctrlKey&&!e.altKey&&!e.metaKey?"shift":e.keyCode===6&&!e.ctrlKey&&!e.shiftKey&&!e.metaKey?"alt":e.keyCode===57&&!e.ctrlKey&&!e.shiftKey&&!e.altKey?"meta":null}static _scanCodeToKeyCode(e){const n=Fse[e];if(n!==-1)return n;switch(e){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 88;case 52:return 86;case 53:return 92;case 54:return 94;case 55:return 93;case 56:return 0;case 57:return 85;case 58:return 95;case 59:return 91;case 60:return 87;case 61:return 89;case 62:return 90;case 106:return 97}return 0}static _toKeyCodeChord(e){if(!e)return null;if(e instanceof Iv)return e;const n=this._scanCodeToKeyCode(e.scanCode);return n===0?null:new Iv(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,n)}static resolveKeybinding(e,n){const r=see(e.chords.map(s=>this._toKeyCodeChord(s)));return r.length>0?[new jP(r,n)]:[]}}const KE=qn("labelService"),NTe=qn("progressService");class _v{constructor(e,n){this.callback=e,this.report=n!=null&&n.async?this._reportAsync.bind(this):this._reportSync.bind(this)}_reportSync(e){this._value=e,this.callback(this._value)}_reportAsync(e){Promise.resolve(this._lastTask).finally(()=>{this._value=e;const n=this.callback(this._value);this._lastTask=Promise.resolve(n).finally(()=>this._lastTask=void 0)})}}_v.None=Object.freeze({report(){}});const Z1=qn("editorProgressService");class tvt{constructor(){this._value="",this._pos=0}reset(e){return this._value=e,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos=0;n--,this._valueLen--){const r=this._value.charCodeAt(n);if(!(r===47||this._splitOnBackslash&&r===92))break}return this.next()}hasNext(){return this._to!1,n=()=>!1){return new eE(new rvt(e,n))}static forStrings(){return new eE(new tvt)}static forConfigKeys(){return new eE(new nvt)}constructor(e){this._iter=e}clear(){this._root=void 0}set(e,n){const r=this._iter.reset(e);let s;this._root||(this._root=new f6,this._root.segment=r.value());const o=[];for(s=this._root;;){const l=r.cmp(s.segment);if(l>0)s.left||(s.left=new f6,s.left.segment=r.value()),o.push([-1,s]),s=s.left;else if(l<0)s.right||(s.right=new f6,s.right.segment=r.value()),o.push([1,s]),s=s.right;else if(r.hasNext())r.next(),s.mid||(s.mid=new f6,s.mid.segment=r.value()),o.push([0,s]),s=s.mid;else break}const a=s.value;s.value=n,s.key=e;for(let l=o.length-1;l>=0;l--){const c=o[l][1];c.updateHeight();const u=c.balanceFactor();if(u<-1||u>1){const d=o[l][0],h=o[l+1][0];if(d===1&&h===1)o[l][1]=c.rotateLeft();else if(d===-1&&h===-1)o[l][1]=c.rotateRight();else if(d===1&&h===-1)c.right=o[l+1][1]=o[l+1][1].rotateRight(),o[l][1]=c.rotateLeft();else if(d===-1&&h===1)c.left=o[l+1][1]=o[l+1][1].rotateLeft(),o[l][1]=c.rotateRight();else throw new Error;if(l>0)switch(o[l-1][0]){case-1:o[l-1][1].left=o[l][1];break;case 1:o[l-1][1].right=o[l][1];break;case 0:o[l-1][1].mid=o[l][1];break}else this._root=o[0][1]}}return a}get(e){var n;return(n=this._getNode(e))===null||n===void 0?void 0:n.value}_getNode(e){const n=this._iter.reset(e);let r=this._root;for(;r;){const s=n.cmp(r.segment);if(s>0)r=r.left;else if(s<0)r=r.right;else if(n.hasNext())n.next(),r=r.mid;else break}return r}has(e){const n=this._getNode(e);return!((n==null?void 0:n.value)===void 0&&(n==null?void 0:n.mid)===void 0)}delete(e){return this._delete(e,!1)}deleteSuperstr(e){return this._delete(e,!0)}_delete(e,n){var r;const s=this._iter.reset(e),o=[];let a=this._root;for(;a;){const l=s.cmp(a.segment);if(l>0)o.push([-1,a]),a=a.left;else if(l<0)o.push([1,a]),a=a.right;else if(s.hasNext())s.next(),o.push([0,a]),a=a.mid;else break}if(a){if(n?(a.left=void 0,a.mid=void 0,a.right=void 0,a.height=1):(a.key=void 0,a.value=void 0),!a.mid&&!a.value)if(a.left&&a.right){const l=this._min(a.right);if(l.key){const{key:c,value:u,segment:d}=l;this._delete(l.key,!1),a.key=c,a.value=u,a.segment=d}}else{const l=(r=a.left)!==null&&r!==void 0?r:a.right;if(o.length>0){const[c,u]=o[o.length-1];switch(c){case-1:u.left=l;break;case 0:u.mid=l;break;case 1:u.right=l;break}}else this._root=l}for(let l=o.length-1;l>=0;l--){const c=o[l][1];c.updateHeight();const u=c.balanceFactor();if(u>1?(c.right.balanceFactor()>=0||(c.right=c.right.rotateRight()),o[l][1]=c.rotateLeft()):u<-1&&(c.left.balanceFactor()<=0||(c.left=c.left.rotateLeft()),o[l][1]=c.rotateRight()),l>0)switch(o[l-1][0]){case-1:o[l-1][1].left=o[l][1];break;case 1:o[l-1][1].right=o[l][1];break;case 0:o[l-1][1].mid=o[l][1];break}else this._root=o[0][1]}}}_min(e){for(;e.left;)e=e.left;return e}findSubstr(e){const n=this._iter.reset(e);let r=this._root,s;for(;r;){const o=n.cmp(r.segment);if(o>0)r=r.left;else if(o<0)r=r.right;else if(n.hasNext())n.next(),s=r.value||s,r=r.mid;else break}return r&&r.value||s}findSuperstr(e){return this._findSuperstrOrElement(e,!1)}_findSuperstrOrElement(e,n){const r=this._iter.reset(e);let s=this._root;for(;s;){const o=r.cmp(s.segment);if(o>0)s=s.left;else if(o<0)s=s.right;else if(r.hasNext())r.next(),s=s.mid;else return s.mid?this._entries(s.mid):n?s.value:void 0}}forEach(e){for(const[n,r]of this)e(r,n)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(e){const n=[];return this._dfsEntries(e,n),n[Symbol.iterator]()}_dfsEntries(e,n){e&&(e.left&&this._dfsEntries(e.left,n),e.value&&n.push([e.key,e.value]),e.mid&&this._dfsEntries(e.mid,n),e.right&&this._dfsEntries(e.right,n))}}const px=qn("contextService");function oee(i){const e=i;return typeof(e==null?void 0:e.id)=="string"&&Jt.isUri(e.uri)}function svt(i){const e=i;return typeof(e==null?void 0:e.id)=="string"&&!oee(i)&&!lvt(i)}const ovt={id:"empty-window"};function avt(i,e){if(typeof i=="string"||typeof i>"u")return typeof i=="string"?{id:jy(i)}:ovt;const n=i;return n.configuration?{id:n.id,configPath:n.configuration}:n.folders.length===1?{id:n.id,uri:n.folders[0].uri}:{id:n.id}}function lvt(i){const e=i;return typeof(e==null?void 0:e.id)=="string"&&Jt.isUri(e.configPath)}class cvt{constructor(e,n){this.raw=n,this.uri=e.uri,this.index=e.index,this.name=e.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}const aee="code-workspace";L("codeWorkspace","Code Workspace");const MTe="4064f6ec-cb38-4ad0-af64-ee6467e63c82";function uvt(i){return i.id===MTe}var lee;(function(i){i.inspectTokensAction=L("inspectTokens","Developer: Inspect Tokens")})(lee||(lee={}));var C7;(function(i){i.gotoLineActionLabel=L("gotoLineActionLabel","Go to Line/Column...")})(C7||(C7={}));var cee;(function(i){i.helpQuickAccessActionLabel=L("helpQuickAccess","Show all Quick Access Providers")})(cee||(cee={}));var S7;(function(i){i.quickCommandActionLabel=L("quickCommandActionLabel","Command Palette"),i.quickCommandHelp=L("quickCommandActionHelp","Show And Run Commands")})(S7||(S7={}));var WP;(function(i){i.quickOutlineActionLabel=L("quickOutlineActionLabel","Go to Symbol..."),i.quickOutlineByCategoryActionLabel=L("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(WP||(WP={}));var x7;(function(i){i.editorViewAccessibleLabel=L("editorViewAccessibleLabel","Editor content"),i.accessibilityHelpMessage=L("accessibilityHelpMessage","Press Alt+F1 for Accessibility Options.")})(x7||(x7={}));var uee;(function(i){i.toggleHighContrast=L("toggleHighContrast","Toggle High Contrast Theme")})(uee||(uee={}));var dee;(function(i){i.bulkEditServiceSummary=L("bulkEditServiceSummary","Made {0} edits in {1} files")})(dee||(dee={}));const PTe=qn("workspaceTrustManagementService"),Vv=qn("contextViewService"),Ff=qn("contextMenuService");var Ba;(function(i){function e(o,a){if(o.start>=a.end||a.start>=o.end)return{start:0,end:0};const l=Math.max(o.start,a.start),c=Math.min(o.end,a.end);return c-l<=0?{start:0,end:0}:{start:l,end:c}}i.intersect=e;function n(o){return o.end-o.start<=0}i.isEmpty=n;function r(o,a){return!n(e(o,a))}i.intersects=r;function s(o,a){const l=[],c={start:o.start,end:Math.min(a.start,o.end)},u={start:Math.max(a.end,o.start),end:o.end};return n(c)||l.push(c),n(u)||l.push(u),l}i.relativeComplement=s})(Ba||(Ba={}));function dvt(i){const e=i;return!!e&&typeof e.x=="number"&&typeof e.y=="number"}var Cy;(function(i){i[i.AVOID=0]="AVOID",i[i.ALIGN=1]="ALIGN"})(Cy||(Cy={}));function _2(i,e,n){const r=n.mode===Cy.ALIGN?n.offset:n.offset+n.size,s=n.mode===Cy.ALIGN?n.offset+n.size:n.offset;return n.position===0?e<=i-r?r:e<=s?s-e:Math.max(i-e,0):e<=s?s-e:e<=i-r?r:0}class GE extends Le{constructor(e,n){super(),this.container=null,this.delegate=null,this.toDisposeOnClean=Le.None,this.toDisposeOnSetContainer=Le.None,this.shadowRoot=null,this.shadowRootHostElement=null,this.view=tt(".context-view"),this.useFixedPosition=!1,this.useShadowDOM=!1,Pl(this.view),this.setContainer(e,n),this._register(gn(()=>this.setContainer(null,1)))}setContainer(e,n){var r;if(this.container&&(this.toDisposeOnSetContainer.dispose(),this.shadowRoot?(this.shadowRoot.removeChild(this.view),this.shadowRoot=null,(r=this.shadowRootHostElement)===null||r===void 0||r.remove(),this.shadowRootHostElement=null):this.container.removeChild(this.view),this.container=null),e){if(this.container=e,this.useFixedPosition=n!==1,this.useShadowDOM=n===3,this.useShadowDOM){this.shadowRootHostElement=tt(".shadow-root-host"),this.container.appendChild(this.shadowRootHostElement),this.shadowRoot=this.shadowRootHostElement.attachShadow({mode:"open"});const o=document.createElement("style");o.textContent=hvt,this.shadowRoot.appendChild(o),this.shadowRoot.appendChild(this.view),this.shadowRoot.appendChild(tt("slot"))}else this.container.appendChild(this.view);const s=new Xe;GE.BUBBLE_UP_EVENTS.forEach(o=>{s.add(As(this.container,o,a=>{this.onDOMEvent(a,!1)}))}),GE.BUBBLE_DOWN_EVENTS.forEach(o=>{s.add(As(this.container,o,a=>{this.onDOMEvent(a,!0)},!0))}),this.toDisposeOnSetContainer=s}}show(e){var n,r;this.isVisible()&&this.hide(),la(this.view),this.view.className="context-view",this.view.style.top="0px",this.view.style.left="0px",this.view.style.zIndex="2575",this.view.style.position=this.useFixedPosition?"fixed":"absolute",Jc(this.view),this.toDisposeOnClean=e.render(this.view)||Le.None,this.delegate=e,this.doLayout(),(r=(n=this.delegate).focus)===null||r===void 0||r.call(n)}getViewElement(){return this.view}layout(){if(this.isVisible()){if(this.delegate.canRelayout===!1&&!(Kp&&Yse.pointerEvents)){this.hide();return}this.delegate.layout&&this.delegate.layout(),this.doLayout()}}doLayout(){if(!this.isVisible())return;const e=this.delegate.getAnchor();let n;if(Qse(e)){const h=no(e),f=Xat(e);n={top:h.top*f,left:h.left*f,width:h.width*f,height:h.height*f}}else dvt(e)?n={top:e.y,left:e.x,width:e.width||1,height:e.height||2}:n={top:e.posy,left:e.posx,width:2,height:2};const r=dc(this.view),s=gS(this.view),o=this.delegate.anchorPosition||0,a=this.delegate.anchorAlignment||0,l=this.delegate.anchorAxisAlignment||0;let c,u;if(l===0){const h={offset:n.top-window.pageYOffset,size:n.height,position:o===0?0:1},f={offset:n.left,size:n.width,position:a===0?0:1,mode:Cy.ALIGN};c=_2(window.innerHeight,s,h)+window.pageYOffset,Ba.intersects({start:c,end:c+s},{start:h.offset,end:h.offset+h.size})&&(f.mode=Cy.AVOID),u=_2(window.innerWidth,r,f)}else{const h={offset:n.left,size:n.width,position:a===0?0:1},f={offset:n.top,size:n.height,position:o===0?0:1,mode:Cy.ALIGN};u=_2(window.innerWidth,r,h),Ba.intersects({start:u,end:u+r},{start:h.offset,end:h.offset+h.size})&&(f.mode=Cy.AVOID),c=_2(window.innerHeight,s,f)+window.pageYOffset}this.view.classList.remove("top","bottom","left","right"),this.view.classList.add(o===0?"bottom":"top"),this.view.classList.add(a===0?"left":"right"),this.view.classList.toggle("fixed",this.useFixedPosition);const d=no(this.container);this.view.style.top=`${c-(this.useFixedPosition?no(this.view).top:d.top)}px`,this.view.style.left=`${u-(this.useFixedPosition?no(this.view).left:d.left)}px`,this.view.style.width="initial"}hide(e){const n=this.delegate;this.delegate=null,n!=null&&n.onHide&&n.onHide(e),this.toDisposeOnClean.dispose(),Pl(this.view)}isVisible(){return!!this.delegate}onDOMEvent(e,n){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(e,document.activeElement):n&&!Ia(e.target,this.container)&&this.hide())}dispose(){this.hide(),super.dispose()}}GE.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"];GE.BUBBLE_DOWN_EVENTS=["click"];const hvt=` :host { all: initial; /* 1st rule so subsequent properties are reset. */ } .codicon[class*='codicon-'] { font: normal normal normal 16px/1 codicon; display: inline-block; text-decoration: none; text-rendering: auto; text-align: center; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; user-select: none; -webkit-user-select: none; -ms-user-select: none; } :host { font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", system-ui, "Ubuntu", "Droid Sans", sans-serif; } :host-context(.mac) { font-family: -apple-system, BlinkMacSystemFont, sans-serif; } :host-context(.mac:lang(zh-Hans)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif; } :host-context(.mac:lang(zh-Hant)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", sans-serif; } :host-context(.mac:lang(ja)) { font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic Pro", sans-serif; } :host-context(.mac:lang(ko)) { font-family: -apple-system, BlinkMacSystemFont, "Nanum Gothic", "Apple SD Gothic Neo", "AppleGothic", sans-serif; } :host-context(.windows) { font-family: "Segoe WPC", "Segoe UI", sans-serif; } :host-context(.windows:lang(zh-Hans)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft YaHei", sans-serif; } :host-context(.windows:lang(zh-Hant)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft Jhenghei", sans-serif; } :host-context(.windows:lang(ja)) { font-family: "Segoe WPC", "Segoe UI", "Yu Gothic UI", "Meiryo UI", sans-serif; } :host-context(.windows:lang(ko)) { font-family: "Segoe WPC", "Segoe UI", "Malgun Gothic", "Dotom", sans-serif; } :host-context(.linux) { font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif; } :host-context(.linux:lang(zh-Hans)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans SC", "Source Han Sans CN", "Source Han Sans", sans-serif; } :host-context(.linux:lang(zh-Hant)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans TC", "Source Han Sans TW", "Source Han Sans", sans-serif; } :host-context(.linux:lang(ja)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", sans-serif; } :host-context(.linux:lang(ko)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; } `;var fvt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},pvt=function(i,e){return function(n,r){e(n,r,i)}};let hee=class extends Le{constructor(e){super(),this.layoutService=e,this.currentViewDisposable=Le.None,this.container=e.hasContainer?e.container:null,this.contextView=this._register(new GE(this.container,1)),this.layout(),this._register(e.onDidLayout(()=>this.layout()))}setContainer(e,n){this.contextView.setContainer(e,n||1)}showContextView(e,n,r){n?(n!==this.container||this.shadowRoot!==r)&&(this.container=n,this.setContainer(n,r?3:2)):this.layoutService.hasContainer&&this.container!==this.layoutService.container&&(this.container=this.layoutService.container,this.setContainer(this.container,1)),this.shadowRoot=r,this.contextView.show(e);const s=gn(()=>{this.currentViewDisposable===s&&this.hideContextView()});return this.currentViewDisposable=s,s}getContextViewElement(){return this.contextView.getViewElement()}layout(){this.contextView.layout()}hideContextView(e){this.contextView.hide(e)}};hee=fvt([pvt(0,VI)],hee);let XE=[],Joe=[],OTe=[];function p6(i,e=!1){gvt(i,!1,e)}function gvt(i,e,n){const r=mvt(i,e);XE.push(r),r.userConfigured?OTe.push(r):Joe.push(r),n&&!r.userConfigured&&XE.forEach(s=>{s.mime===r.mime||s.userConfigured||(r.extension&&s.extension===r.extension&&console.warn(`Overwriting extension <<${r.extension}>> to now point to mime <<${r.mime}>>`),r.filename&&s.filename===r.filename&&console.warn(`Overwriting filename <<${r.filename}>> to now point to mime <<${r.mime}>>`),r.filepattern&&s.filepattern===r.filepattern&&console.warn(`Overwriting filepattern <<${r.filepattern}>> to now point to mime <<${r.mime}>>`),r.firstline&&s.firstline===r.firstline&&console.warn(`Overwriting firstline <<${r.firstline}>> to now point to mime <<${r.mime}>>`))})}function mvt(i,e){return{id:i.id,mime:i.mime,filename:i.filename,extension:i.extension,filepattern:i.filepattern,firstline:i.firstline,userConfigured:e,filenameLowercase:i.filename?i.filename.toLowerCase():void 0,extensionLowercase:i.extension?i.extension.toLowerCase():void 0,filepatternLowercase:i.filepattern?ETe(i.filepattern.toLowerCase()):void 0,filepatternOnPath:i.filepattern?i.filepattern.indexOf(to.sep)>=0:!1}}function _vt(){XE=XE.filter(i=>i.userConfigured),Joe=[]}function vvt(i,e){return bvt(i,e).map(n=>n.id)}function bvt(i,e){let n;if(i)switch(i.scheme){case Pn.file:n=i.fsPath;break;case Pn.data:{n=w1.parseMetaData(i).get(w1.META_DATA_LABEL);break}case Pn.vscodeNotebookCell:n=void 0;break;default:n=i.path}if(!n)return[{id:"unknown",mime:bs.unknown}];n=n.toLowerCase();const r=jy(n),s=Pme(n,r,OTe);if(s)return[s,{id:ad,mime:bs.text}];const o=Pme(n,r,Joe);if(o)return[o,{id:ad,mime:bs.text}];if(e){const a=yvt(e);if(a)return[a,{id:ad,mime:bs.text}]}return[{id:"unknown",mime:bs.unknown}]}function Pme(i,e,n){var r;let s,o,a;for(let l=n.length-1;l>=0;l--){const c=n[l];if(e===c.filenameLowercase){s=c;break}if(c.filepattern&&(!o||c.filepattern.length>o.filepattern.length)){const u=c.filepatternOnPath?i:e;!((r=c.filepatternLowercase)===null||r===void 0)&&r.call(c,u)&&(o=c)}c.extension&&(!a||c.extension.length>a.extension.length)&&e.endsWith(c.extensionLowercase)&&(a=c)}if(s)return s;if(o)return o;if(a)return a}function yvt(i){if(Use(i)&&(i=i.substr(1)),i.length>0)for(let e=XE.length-1;e>=0;e--){const n=XE[e];if(!n.firstline)continue;const r=i.match(n.firstline);if(r&&r.length>0)return n}}const g6=Object.prototype.hasOwnProperty,Ome="vs.editor.nullLanguage";class wvt{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(Ome,0),this._register(ad,1),this._nextLanguageId=2}_register(e,n){this._languageIdToLanguage[n]=e,this._languageToLanguageId.set(e,n)}register(e){if(this._languageToLanguageId.has(e))return;const n=this._nextLanguageId++;this._register(e,n)}encodeLanguageId(e){return this._languageToLanguageId.get(e)||0}decodeLanguageId(e){return this._languageIdToLanguage[e]||Ome}}class $P extends Le{constructor(e=!0,n=!1){super(),this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,$P.instanceCount++,this._warnOnOverwrite=n,this.languageIdCodec=new wvt,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},e&&(this._initializeFromRegistry(),this._register(PE.onDidChangeLanguages(r=>{this._initializeFromRegistry()})))}dispose(){$P.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},_vt();const e=[].concat(PE.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(e)}_registerLanguages(e){for(const n of e)this._registerLanguage(n);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(n=>{const r=this._languages[n];r.name&&(this._nameMap[r.name]=r.identifier),r.aliases.forEach(s=>{this._lowercaseNameMap[s.toLowerCase()]=r.identifier}),r.mimetypes.forEach(s=>{this._mimeTypesMap[s]=r.identifier})}),Kr.as(ag.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(e){const n=e.id;let r;g6.call(this._languages,n)?r=this._languages[n]:(this.languageIdCodec.register(n),r={identifier:n,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[n]=r),this._mergeLanguage(r,e)}_mergeLanguage(e,n){const r=n.id;let s=null;if(Array.isArray(n.mimetypes)&&n.mimetypes.length>0&&(e.mimetypes.push(...n.mimetypes),s=n.mimetypes[0]),s||(s=`text/x-${r}`,e.mimetypes.push(s)),Array.isArray(n.extensions)){n.configuration?e.extensions=n.extensions.concat(e.extensions):e.extensions=e.extensions.concat(n.extensions);for(const l of n.extensions)p6({id:r,mime:s,extension:l},this._warnOnOverwrite)}if(Array.isArray(n.filenames))for(const l of n.filenames)p6({id:r,mime:s,filename:l},this._warnOnOverwrite),e.filenames.push(l);if(Array.isArray(n.filenamePatterns))for(const l of n.filenamePatterns)p6({id:r,mime:s,filepattern:l},this._warnOnOverwrite);if(typeof n.firstLine=="string"&&n.firstLine.length>0){let l=n.firstLine;l.charAt(0)!=="^"&&(l="^"+l);try{const c=new RegExp(l);xot(c)||p6({id:r,mime:s,firstline:c},this._warnOnOverwrite)}catch(c){console.warn(`[${n.id}]: Invalid regular expression \`${l}\`: `,c)}}e.aliases.push(r);let o=null;if(typeof n.aliases<"u"&&Array.isArray(n.aliases)&&(n.aliases.length===0?o=[null]:o=n.aliases),o!==null)for(const l of o)!l||l.length===0||e.aliases.push(l);const a=o!==null&&o.length>0;if(!(a&&o[0]===null)){const l=(a?o[0]:null)||r;(a||!e.name)&&(e.name=l)}n.configuration&&e.configurationFiles.push(n.configuration),n.icon&&e.icons.push(n.icon)}isRegisteredLanguageId(e){return e?g6.call(this._languages,e):!1}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(e){const n=e.toLowerCase();return g6.call(this._lowercaseNameMap,n)?this._lowercaseNameMap[n]:null}getLanguageIdByMimeType(e){return e&&g6.call(this._mimeTypesMap,e)?this._mimeTypesMap[e]:null}guessLanguageIdByFilepathOrFirstLine(e,n){return!e&&!n?[]:vvt(e,n)}}$P.instanceCount=0;class zP extends Le{constructor(e=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new _e),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new _e),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new _e({leakWarningThreshold:200})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,zP.instanceCount++,this._registry=this._register(new $P(!0,e)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){zP.instanceCount--,super.dispose()}isRegisteredLanguageId(e){return this._registry.isRegisteredLanguageId(e)}getLanguageIdByLanguageName(e){return this._registry.getLanguageIdByLanguageName(e)}getLanguageIdByMimeType(e){return this._registry.getLanguageIdByMimeType(e)}guessLanguageIdByFilepathOrFirstLine(e,n){const r=this._registry.guessLanguageIdByFilepathOrFirstLine(e,n);return g2e(r,null)}createById(e){return new Fme(this.onDidChange,()=>this._createAndGetLanguageIdentifier(e))}createByFilepathOrFirstLine(e,n){return new Fme(this.onDidChange,()=>{const r=this.guessLanguageIdByFilepathOrFirstLine(e,n);return this._createAndGetLanguageIdentifier(r)})}_createAndGetLanguageIdentifier(e){return(!e||!this.isRegisteredLanguageId(e))&&(e=ad),e}requestBasicLanguageFeatures(e){this._requestedBasicLanguages.has(e)||(this._requestedBasicLanguages.add(e),this._onDidRequestBasicLanguageFeatures.fire(e))}requestRichLanguageFeatures(e){this._requestedRichLanguages.has(e)||(this._requestedRichLanguages.add(e),this.requestBasicLanguageFeatures(e),Zr.getOrCreate(e),this._onDidRequestRichLanguageFeatures.fire(e))}}zP.instanceCount=0;class Fme{constructor(e,n){this._onDidChangeLanguages=e,this._selector=n,this._listener=null,this._emitter=null,this.languageId=this._selector()}_dispose(){this._listener&&(this._listener.dispose(),this._listener=null),this._emitter&&(this._emitter.dispose(),this._emitter=null)}get onDidChange(){return this._listener||(this._listener=this._onDidChangeLanguages(()=>this._evaluate())),this._emitter||(this._emitter=new _e({onDidRemoveLastListener:()=>{this._dispose()}})),this._emitter.event}_evaluate(){var e;const n=this._selector();n!==this.languageId&&(this.languageId=n,(e=this._emitter)===null||e===void 0||e.fire(this.languageId))}}const VP={RESOURCES:"ResourceURLs",TEXT:bs.text,INTERNAL_URI_LIST:"application/vnd.code.uri-list"};function eae(...i){return function(e,n){for(let r=0,s=i.length;r0?[{start:0,end:e.length}]:[]:null}function BTe(i,e){const n=e.toLowerCase().indexOf(i.toLowerCase());return n===-1?null:[{start:n,end:n+i.length}]}function jTe(i,e){return fee(i.toLowerCase(),e.toLowerCase(),0,0)}function fee(i,e,n,r){if(n===i.length)return[];if(r===e.length)return null;if(i[n]===e[r]){let s=null;return(s=fee(i,e,n+1,r+1))?iae({start:r,end:r+1},s):null}return fee(i,e,n,r+1)}function tae(i){return 97<=i&&i<=122}function z$(i){return 65<=i&&i<=90}function nae(i){return 48<=i&&i<=57}function WTe(i){return i===32||i===9||i===10||i===13}const $Te=new Set;"()[]{}<>`'\"-/;:,.?!".split("").forEach(i=>$Te.add(i.charCodeAt(0)));function k7(i){return WTe(i)||$Te.has(i)}function Cvt(i,e){return i===e||k7(i)&&k7(e)}function zTe(i){return tae(i)||z$(i)||nae(i)}function iae(i,e){return e.length===0?e=[i]:i.end===e[0].start?e[0].start=i.start:e.unshift(i),e}function VTe(i,e){for(let n=e;n0&&!zTe(i.charCodeAt(n-1)))return n}return i.length}function pee(i,e,n,r){if(n===i.length)return[];if(r===e.length)return null;if(i[n]!==e[r].toLowerCase())return null;{let s=null,o=r+1;for(s=pee(i,e,n+1,r+1);!s&&(o=VTe(e,o)).6}function kvt(i){const{upperPercent:e,lowerPercent:n,alphaPercent:r,numericPercent:s}=i;return n>.2&&e<.8&&r>.6&&s<.2}function Lvt(i){let e=0,n=0,r=0,s=0;for(let o=0;o60)return null;const n=Svt(e);if(!kvt(n)){if(!xvt(n))return null;e=e.toLowerCase()}let r=null,s=0;for(i=i.toLowerCase();s0&&k7(i.charCodeAt(n-1)))return n;return i.length}const Evt=eae(HP,HTe,BTe),Ivt=eae(HP,HTe,jTe),Bme=new G1(1e4);function jme(i,e,n=!1){if(typeof i!="string"||typeof e!="string")return null;let r=Bme.get(i);r||(r=new RegExp(Cot(i),"i"),Bme.set(i,r));const s=r.exec(e);return s?[{start:s.index,end:s.index+s[0].length}]:n?Ivt(i,e):Evt(i,e)}function Tvt(i,e){const n=gx(i,i.toLowerCase(),0,e,e.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return n?z5(n):null}function Rvt(i,e,n,r,s,o){const a=Math.min(13,i.length);for(;n"u")return[];const e=[],n=i[1];for(let r=i.length-1;r>1;r--){const s=i[r]+n,o=e[e.length-1];o&&o.end===s?o.end=s+1:e.push({start:s,end:s+1})}return e}const Sy=128;function rae(){const i=[],e=[];for(let n=0;n<=Sy;n++)e[n]=0;for(let n=0;n<=Sy;n++)i.push(e.slice(0));return i}function qTe(i){const e=[];for(let n=0;n<=i;n++)e[n]=0;return e}const KTe=qTe(2*Sy),mee=qTe(2*Sy),J_=rae(),nC=rae(),m6=rae();function _6(i,e){if(e<0||e>=i.length)return!1;const n=i.codePointAt(e);switch(n){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 62:case 40:case 41:case 91:case 93:case 123:case 125:return!0;case void 0:return!1;default:return!!Hse(n)}}function Wme(i,e){if(e<0||e>=i.length)return!1;switch(i.charCodeAt(e)){case 32:case 9:return!0;default:return!1}}function w8(i,e,n){return e[i]!==n[i]}function Avt(i,e,n,r,s,o,a=!1){for(;eSy?Sy:i.length,c=r.length>Sy?Sy:r.length;if(n>=l||o>=c||l-n>c-o||!Avt(e,n,l,s,o,c,!0))return;Nvt(l,c,n,o,e,s);let u=1,d=1,h=n,f=o;const p=[!1];for(u=1,h=n;hy,M=A?nC[u][d-1]+(J_[u][d-1]>0?-5:0):0,N=f>y+1&&J_[u][d-1]>0,P=N?nC[u][d-2]+(J_[u][d-2]>0?-5:0):0;if(N&&(!A||P>=M)&&(!R||P>=E))nC[u][d]=P,m6[u][d]=3,J_[u][d]=0;else if(A&&(!R||M>=E))nC[u][d]=M,m6[u][d]=2,J_[u][d]=0;else if(R)nC[u][d]=E,m6[u][d]=1,J_[u][d]=J_[u-1][d-1]+1;else throw new Error("not possible")}}if(!p[0]&&!a.firstMatchCanBeWeak)return;u--,d--;const g=[nC[u][d],o];let m=0,_=0;for(;u>=1;){let y=d;do{const x=m6[u][y];if(x===3)y=y-2;else if(x===2)y=y-1;else break}while(y>=1);m>1&&e[n+u-1]===s[o+d-1]&&!w8(y+o-1,r,s)&&m+1>J_[u][y]&&(y=d),y===d?m++:m=1,_||(_=y),u--,d=y-1,g.push(d)}c===l&&a.boostFullMatch&&(g[0]+=2);const b=_-l;return g[0]-=b,g}function Nvt(i,e,n,r,s,o){let a=i-1,l=e-1;for(;a>=n&&l>=r;)s[a]===o[l]&&(mee[a]=l,a--),l--}function Mvt(i,e,n,r,s,o,a,l,c,u,d){if(e[n]!==o[a])return Number.MIN_SAFE_INTEGER;let h=1,f=!1;return a===n-r?h=i[n]===s[a]?7:5:w8(a,s,o)&&(a===0||!w8(a-1,s,o))?(h=i[n]===s[a]?7:5,f=!0):_6(o,a)&&(a===0||!_6(o,a-1))?h=5:(_6(o,a-1)||Wme(o,a-1))&&(h=5,f=!0),h>1&&n===r&&(d[0]=!0),f||(f=w8(a,s,o)||_6(o,a-1)||Wme(o,a-1)),n===r?a>c&&(h-=f?3:5):u?h+=f?2:0:h+=f?0:1,a+1===l&&(h-=f?3:5),h}function Pvt(i,e,n,r,s,o,a){return Ovt(i,e,n,r,s,o,!0,a)}function Ovt(i,e,n,r,s,o,a,l){let c=gx(i,e,n,r,s,o,l);if(i.length>=3){const u=Math.min(7,i.length-1);for(let d=n+1;dc[0])&&(c=f))}}}return c}function Fvt(i,e){if(e+1>=i.length)return;const n=i[e],r=i[e+1];if(n!==r)return i.slice(0,e)+r+n+i.slice(e+2)}const Bvt="$(",sae=new RegExp(`\\$\\(${en.iconNameExpression}(?:${en.iconModifierExpression})?\\)`,"g"),jvt=new RegExp(`(\\\\)?${sae.source}`,"g");function Wvt(i){return i.replace(jvt,(e,n)=>n?e:`\\${e}`)}const $vt=new RegExp(`\\\\${sae.source}`,"g");function zvt(i){return i.replace($vt,e=>`\\${e}`)}const Vvt=new RegExp(`(\\s)?(\\\\)?${sae.source}(\\s)?`,"g");function oae(i){return i.indexOf(Bvt)===-1?i:i.replace(Vvt,(e,n,r,s)=>r?e:n||s||"")}function Hvt(i){return i?i.replace(/\$\((.*?)\)/g,(e,n)=>` ${n} `).trim():""}const Vq=new RegExp(`\\$\\(${en.iconNameCharacter}+\\)`,"g");function bN(i){Vq.lastIndex=0;let e="";const n=[];let r=0;for(;;){const s=Vq.lastIndex,o=Vq.exec(i),a=i.substring(s,o==null?void 0:o.index);if(a.length>0){e+=a;for(let l=0;l" ".repeat(s.length)).replace(/\>/gm,"\\>").replace(/\n/g,n===1?`\\ `:` `),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,n){return this.value+="\n```",this.value+=e,this.value+=` `,this.value+=n,this.value+="\n```\n",this}appendLink(e,n,r){return this.value+="[",this.value+=this._escape(n,"]"),this.value+="](",this.value+=this._escape(String(e),")"),r&&(this.value+=` "${this._escape(this._escape(r,'"'),")")}"`),this.value+=")",this}_escape(e,n){const r=new RegExp(dd(n),"g");return e.replace(r,(s,o)=>e.charAt(o-1)!=="\\"?`\\${s}`:s)}}function YE(i){return Hy(i)?!i.value:Array.isArray(i)?i.every(YE):!0}function Hy(i){return i instanceof Ea?!0:i&&typeof i=="object"?typeof i.value=="string"&&(typeof i.isTrusted=="boolean"||typeof i.isTrusted=="object"||i.isTrusted===void 0)&&(typeof i.supportThemeIcons=="boolean"||i.supportThemeIcons===void 0):!1}function Uvt(i,e){return i===e?!0:!i||!e?!1:i.value===e.value&&i.isTrusted===e.isTrusted&&i.supportThemeIcons===e.supportThemeIcons&&i.supportHtml===e.supportHtml&&(i.baseUri===e.baseUri||!!i.baseUri&&!!e.baseUri&&Noe(Jt.from(i.baseUri),Jt.from(e.baseUri)))}function qvt(i){return i.replace(/[\\`*_{}[\]()#+\-!~]/g,"\\$&")}function v6(i){return i.replace(/"/g,""")}function Uq(i){return i&&i.replace(/\\([\\`*_{}[\]()#+\-.!~])/g,"$1")}function Kvt(i){const e=[],n=i.split("|").map(s=>s.trim());i=n[0];const r=n[1];if(r){const s=/height=(\d+)/.exec(r),o=/width=(\d+)/.exec(r),a=s?s[1]:"",l=o?o[1]:"",c=isFinite(parseInt(l)),u=isFinite(parseInt(a));c&&e.push(`width="${l}"`),u&&e.push(`height="${a}"`)}return{href:i,dimensions:e}}var _ee=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function Gvt(i,e){zl(e)?i.title=oae(e):e!=null&&e.markdownNotSupportedFallback?i.title=e.markdownNotSupportedFallback:i.removeAttribute("title")}class Xvt{constructor(e,n,r){this.hoverDelegate=e,this.target=n,this.fadeInAnimation=r}update(e,n,r){var s;return _ee(this,void 0,void 0,function*(){if(this._cancellationTokenSource&&(this._cancellationTokenSource.dispose(!0),this._cancellationTokenSource=void 0),this.isDisposed)return;let o;if(e===void 0||zl(e)||e instanceof HTMLElement)o=e;else if(!nP(e.markdown))o=(s=e.markdown)!==null&&s!==void 0?s:e.markdownNotSupportedFallback;else{this._hoverWidget||this.show(L("iconLabel.loading","Loading..."),n),this._cancellationTokenSource=new Ns;const a=this._cancellationTokenSource.token;if(o=yield e.markdown(a),o===void 0&&(o=e.markdownNotSupportedFallback),this.isDisposed||a.isCancellationRequested)return}this.show(o,n,r)})}show(e,n,r){const s=this._hoverWidget;if(this.hasContent(e)){const o=Object.assign({content:e,target:this.target,showPointer:this.hoverDelegate.placement==="element",hoverPosition:2,skipFadeInAnimation:!this.fadeInAnimation||!!s},r);this._hoverWidget=this.hoverDelegate.showHover(o,n)}s==null||s.dispose()}hasContent(e){return e?Hy(e)?!!e.value:!0:!1}get isDisposed(){var e;return(e=this._hoverWidget)===null||e===void 0?void 0:e.isDisposed}dispose(){var e,n;(e=this._hoverWidget)===null||e===void 0||e.dispose(),(n=this._cancellationTokenSource)===null||n===void 0||n.dispose(!0),this._cancellationTokenSource=void 0}}function GTe(i,e,n,r){let s,o;const a=(h,f)=>{var p;const g=o!==void 0;h&&(o==null||o.dispose(),o=void 0),f&&(s==null||s.dispose(),s=void 0),g&&((p=i.onDidHideHover)===null||p===void 0||p.call(i))},l=(h,f,p)=>new Mf(()=>_ee(this,void 0,void 0,function*(){(!o||o.isDisposed)&&(o=new Xvt(i,p||e,h>0),yield o.update(n,f,r))}),h),c=()=>{if(s)return;const h=new Xe,f=m=>a(!1,m.fromElement===e);h.add(Be(e,ht.MOUSE_LEAVE,f,!0));const p=()=>a(!0,!0);h.add(Be(e,ht.MOUSE_DOWN,p,!0));const g={targetElements:[e],dispose:()=>{}};if(i.placement===void 0||i.placement==="mouse"){const m=_=>{g.x=_.x+10,_.target instanceof HTMLElement&&_.target.classList.contains("action-label")&&a(!0,!0)};h.add(Be(e,ht.MOUSE_MOVE,m,!0))}h.add(l(i.delay,!1,g)),s=h},u=Be(e,ht.MOUSE_OVER,c,!0);return{show:h=>{a(!1,!0),l(0,h)},hide:()=>{a(!0,!0)},update:(h,f)=>_ee(this,void 0,void 0,function*(){n=h,yield o==null?void 0:o.update(n,void 0,f)}),dispose:()=>{u.dispose(),a(!0,!0)}}}function Yvt(i,e={}){const n=aae(e);return n.textContent=i,n}function Zvt(i,e={}){const n=aae(e);return XTe(n,Jvt(i,!!e.renderCodeSegments),e.actionHandler,e.renderCodeSegments),n}function aae(i){const e=i.inline?"span":"div",n=document.createElement(e);return i.className&&(n.className=i.className),n}class Qvt{constructor(e){this.source=e,this.index=0}eos(){return this.index>=this.source.length}next(){const e=this.peek();return this.advance(),e}peek(){return this.source[this.index]}advance(){this.index++}}function XTe(i,e,n,r){let s;if(e.type===2)s=document.createTextNode(e.content||"");else if(e.type===3)s=document.createElement("b");else if(e.type===4)s=document.createElement("i");else if(e.type===7&&r)s=document.createElement("code");else if(e.type===5&&n){const o=document.createElement("a");n.disposables.add(As(o,"click",a=>{n.callback(String(e.index),a)})),s=o}else e.type===8?s=document.createElement("br"):e.type===1&&(s=i);s&&i!==s&&i.appendChild(s),s&&Array.isArray(e.children)&&e.children.forEach(o=>{XTe(s,o,n,r)})}function Jvt(i,e){const n={type:1,children:[]};let r=0,s=n;const o=[],a=new Qvt(i);for(;!a.eos();){let l=a.next();const c=l==="\\"&&vee(a.peek(),e)!==0;if(c&&(l=a.next()),!c&&ebt(l,e)&&l===a.peek()){a.advance(),s.type===2&&(s=o.pop());const u=vee(l,e);if(s.type===u||s.type===5&&u===6)s=o.pop();else{const d={type:u,children:[]};u===5&&(d.index=r,r++),s.children.push(d),o.push(s),s=d}}else if(l===` `)s.type===2&&(s=o.pop()),s.children.push({type:8});else if(s.type!==2){const u={type:2,content:l};s.children.push(u),o.push(s),s=u}else s.content+=l}return s.type===2&&(s=o.pop()),n}function ebt(i,e){return vee(i,e)!==0}function vee(i,e){switch(i){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return e?7:0;default:return 0}}const tbt=new RegExp(`(\\\\)?\\$\\((${en.iconNameExpression}(?:${en.iconModifierExpression})?)\\)`,"g");function Uy(i){const e=new Array;let n,r=0,s=0;for(;(n=tbt.exec(i))!==null;){s=n.index||0,rCe.length)&&(ge=Ce.length);for(var pe=0,ne=new Array(ge);pe=Ce.length?{done:!0}:{done:!1,value:Ce[ne++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function l(){return{async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}e.defaults=l();function c(Ce){e.defaults=Ce}var u=/[&<>"']/,d=/[&<>"']/g,h=/[<>"']|&(?!#?\w+;)/,f=/[<>"']|&(?!#?\w+;)/g,p={"&":"&","<":"<",">":">",'"':""","'":"'"},g=function(ge){return p[ge]};function m(Ce,ge){if(ge){if(u.test(Ce))return Ce.replace(d,g)}else if(h.test(Ce))return Ce.replace(f,g);return Ce}var _=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function b(Ce){return Ce.replace(_,function(ge,pe){return pe=pe.toLowerCase(),pe==="colon"?":":pe.charAt(0)==="#"?pe.charAt(1)==="x"?String.fromCharCode(parseInt(pe.substring(2),16)):String.fromCharCode(+pe.substring(1)):""})}var y=/(^|[^\[])\^/g;function x(Ce,ge){Ce=typeof Ce=="string"?Ce:Ce.source,ge=ge||"";var pe={replace:function(ae,ue){return ue=ue.source||ue,ue=ue.replace(y,"$1"),Ce=Ce.replace(ae,ue),pe},getRegex:function(){return new RegExp(Ce,ge)}};return pe}var k=/[^\w:]/g,D=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function R(Ce,ge,pe){if(Ce){var ne;try{ne=decodeURIComponent(b(pe)).replace(k,"").toLowerCase()}catch{return null}if(ne.indexOf("javascript:")===0||ne.indexOf("vbscript:")===0||ne.indexOf("data:")===0)return null}ge&&!D.test(pe)&&(pe=P(ge,pe));try{pe=encodeURI(pe).replace(/%25/g,"%")}catch{return null}return pe}var E={},A=/^[^:]+:\/*[^/]*$/,M=/^([^:]+:)[\s\S]*$/,N=/^([^:]+:\/*[^/]*)[\s\S]*$/;function P(Ce,ge){E[" "+Ce]||(A.test(Ce)?E[" "+Ce]=Ce+"/":E[" "+Ce]=z(Ce,"/",!0)),Ce=E[" "+Ce];var pe=Ce.indexOf(":")===-1;return ge.substring(0,2)==="//"?pe?ge:Ce.replace(M,"$1")+ge:ge.charAt(0)==="/"?pe?ge:Ce.replace(N,"$1")+ge:Ce+ge}var O={exec:function(){}};function B(Ce){for(var ge=1,pe,ne;ge=0&&Se[nt]==="\\";)Ie=!Ie;return Ie?"|":" |"}),ne=pe.split(/ \|/),ae=0;if(ne[0].trim()||ne.shift(),ne.length>0&&!ne[ne.length-1].trim()&&ne.pop(),ne.length>ge)ne.splice(ge);else for(;ne.length1;)ge&1&&(pe+=Ce),ge>>=1,Ce+=Ce;return pe+Ce}function Q(Ce,ge,pe,ne){var ae=ge.href,ue=ge.title?m(ge.title):null,de=Ce[1].replace(/\\([\[\]])/g,"$1");if(Ce[0].charAt(0)!=="!"){ne.state.inLink=!0;var Se={type:"link",raw:pe,href:ae,title:ue,text:de,tokens:ne.inlineTokens(de)};return ne.state.inLink=!1,Se}return{type:"image",raw:pe,href:ae,title:ue,text:m(de)}}function ie(Ce,ge){var pe=Ce.match(/^(\s+)(?:```)/);if(pe===null)return ge;var ne=pe[1];return ge.split(` `).map(function(ae){var ue=ae.match(/^\s+/);if(ue===null)return ae;var de=ue[0];return de.length>=ne.length?ae.slice(ne.length):ae}).join(` `)}var K=function(){function Ce(pe){this.options=pe||e.defaults}var ge=Ce.prototype;return ge.space=function(ne){var ae=this.rules.block.newline.exec(ne);if(ae&&ae[0].length>0)return{type:"space",raw:ae[0]}},ge.code=function(ne){var ae=this.rules.block.code.exec(ne);if(ae){var ue=ae[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:ae[0],codeBlockStyle:"indented",text:this.options.pedantic?ue:z(ue,` `)}}},ge.fences=function(ne){var ae=this.rules.block.fences.exec(ne);if(ae){var ue=ae[0],de=ie(ue,ae[3]||"");return{type:"code",raw:ue,lang:ae[2]?ae[2].trim():ae[2],text:de}}},ge.heading=function(ne){var ae=this.rules.block.heading.exec(ne);if(ae){var ue=ae[2].trim();if(/#$/.test(ue)){var de=z(ue,"#");(this.options.pedantic||!de||/ $/.test(de))&&(ue=de.trim())}return{type:"heading",raw:ae[0],depth:ae[1].length,text:ue,tokens:this.lexer.inline(ue)}}},ge.hr=function(ne){var ae=this.rules.block.hr.exec(ne);if(ae)return{type:"hr",raw:ae[0]}},ge.blockquote=function(ne){var ae=this.rules.block.blockquote.exec(ne);if(ae){var ue=ae[0].replace(/^ *>[ \t]?/gm,"");return{type:"blockquote",raw:ae[0],tokens:this.lexer.blockTokens(ue,[]),text:ue}}},ge.list=function(ne){var ae=this.rules.block.list.exec(ne);if(ae){var ue,de,Se,Ie,nt,Oe,Ve,gt,$t,Mt,Bt,jn,Dt=ae[1].trim(),Fn=Dt.length>1,tn={type:"list",raw:"",ordered:Fn,start:Fn?+Dt.slice(0,-1):"",loose:!1,items:[]};Dt=Fn?"\\d{1,9}\\"+Dt.slice(-1):"\\"+Dt,this.options.pedantic&&(Dt=Fn?Dt:"[*+-]");for(var pi=new RegExp("^( {0,3}"+Dt+")((?:[ ][^\\n]*)?(?:\\n|$))");ne&&(jn=!1,!(!(ae=pi.exec(ne))||this.rules.block.hr.test(ne)));){if(ue=ae[0],ne=ne.substring(ue.length),gt=ae[2].split(` `,1)[0],$t=ne.split(` `,1)[0],this.options.pedantic?(Ie=2,Bt=gt.trimLeft()):(Ie=ae[2].search(/[^ ]/),Ie=Ie>4?1:Ie,Bt=gt.slice(Ie),Ie+=ae[1].length),Oe=!1,!gt&&/^ *$/.test($t)&&(ue+=$t+` `,ne=ne.substring($t.length+1),jn=!0),!jn)for(var Pi=new RegExp("^ {0,"+Math.min(3,Ie-1)+"}(?:[*+-]|\\d{1,9}[.)])((?: [^\\n]*)?(?:\\n|$))"),ti=new RegExp("^ {0,"+Math.min(3,Ie-1)+"}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)"),mi=new RegExp("^ {0,"+Math.min(3,Ie-1)+"}(?:```|~~~)"),ds=new RegExp("^ {0,"+Math.min(3,Ie-1)+"}#");ne&&(Mt=ne.split(` `,1)[0],gt=Mt,this.options.pedantic&&(gt=gt.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!(mi.test(gt)||ds.test(gt)||Pi.test(gt)||ti.test(ne)));){if(gt.search(/[^ ]/)>=Ie||!gt.trim())Bt+=` `+gt.slice(Ie);else if(!Oe)Bt+=` `+gt;else break;!Oe&&!gt.trim()&&(Oe=!0),ue+=Mt+` `,ne=ne.substring(Mt.length+1)}tn.loose||(Ve?tn.loose=!0:/\n *\n *$/.test(ue)&&(Ve=!0)),this.options.gfm&&(de=/^\[[ xX]\] /.exec(Bt),de&&(Se=de[0]!=="[ ] ",Bt=Bt.replace(/^\[[ xX]\] +/,""))),tn.items.push({type:"list_item",raw:ue,task:!!de,checked:Se,loose:!1,text:Bt}),tn.raw+=ue}tn.items[tn.items.length-1].raw=ue.trimRight(),tn.items[tn.items.length-1].text=Bt.trimRight(),tn.raw=tn.raw.trimRight();var Nr=tn.items.length;for(nt=0;nt1)return!0}return!1});!tn.loose&&Br.length&&Mn&&(tn.loose=!0,tn.items[nt].loose=!0)}return tn}},ge.html=function(ne){var ae=this.rules.block.html.exec(ne);if(ae){var ue={type:"html",raw:ae[0],pre:!this.options.sanitizer&&(ae[1]==="pre"||ae[1]==="script"||ae[1]==="style"),text:ae[0]};if(this.options.sanitize){var de=this.options.sanitizer?this.options.sanitizer(ae[0]):m(ae[0]);ue.type="paragraph",ue.text=de,ue.tokens=this.lexer.inline(de)}return ue}},ge.def=function(ne){var ae=this.rules.block.def.exec(ne);if(ae){ae[3]&&(ae[3]=ae[3].substring(1,ae[3].length-1));var ue=ae[1].toLowerCase().replace(/\s+/g," ");return{type:"def",tag:ue,raw:ae[0],href:ae[2],title:ae[3]}}},ge.table=function(ne){var ae=this.rules.block.table.exec(ne);if(ae){var ue={type:"table",header:j(ae[1]).map(function(Ve){return{text:Ve}}),align:ae[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:ae[3]&&ae[3].trim()?ae[3].replace(/\n[ \t]*$/,"").split(` `):[]};if(ue.header.length===ue.align.length){ue.raw=ae[0];var de=ue.align.length,Se,Ie,nt,Oe;for(Se=0;Se/i.test(ae[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(ae[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(ae[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:ae[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(ae[0]):m(ae[0]):ae[0]}},ge.link=function(ne){var ae=this.rules.inline.link.exec(ne);if(ae){var ue=ae[2].trim();if(!this.options.pedantic&&/^$/.test(ue))return;var de=z(ue.slice(0,-1),"\\");if((ue.length-de.length)%2===0)return}else{var Se=H(ae[2],"()");if(Se>-1){var Ie=ae[0].indexOf("!")===0?5:4,nt=Ie+ae[1].length+Se;ae[2]=ae[2].substring(0,Se),ae[0]=ae[0].substring(0,nt).trim(),ae[3]=""}}var Oe=ae[2],Ve="";if(this.options.pedantic){var gt=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(Oe);gt&&(Oe=gt[1],Ve=gt[3])}else Ve=ae[3]?ae[3].slice(1,-1):"";return Oe=Oe.trim(),/^$/.test(ue)?Oe=Oe.slice(1):Oe=Oe.slice(1,-1)),Q(ae,{href:Oe&&Oe.replace(this.rules.inline._escapes,"$1"),title:Ve&&Ve.replace(this.rules.inline._escapes,"$1")},ae[0],this.lexer)}},ge.reflink=function(ne,ae){var ue;if((ue=this.rules.inline.reflink.exec(ne))||(ue=this.rules.inline.nolink.exec(ne))){var de=(ue[2]||ue[1]).replace(/\s+/g," ");if(de=ae[de.toLowerCase()],!de||!de.href){var Se=ue[0].charAt(0);return{type:"text",raw:Se,text:Se}}return Q(ue,de,ue[0],this.lexer)}},ge.emStrong=function(ne,ae,ue){ue===void 0&&(ue="");var de=this.rules.inline.emStrong.lDelim.exec(ne);if(de&&!(de[3]&&ue.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDF70-\uDF81\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var Se=de[1]||de[2]||"";if(!Se||Se&&(ue===""||this.rules.inline.punctuation.exec(ue))){var Ie=de[0].length-1,nt,Oe,Ve=Ie,gt=0,$t=de[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for($t.lastIndex=0,ae=ae.slice(-1*ne.length+Ie);(de=$t.exec(ae))!=null;)if(nt=de[1]||de[2]||de[3]||de[4]||de[5]||de[6],!!nt){if(Oe=nt.length,de[3]||de[4]){Ve+=Oe;continue}else if((de[5]||de[6])&&Ie%3&&!((Ie+Oe)%3)){gt+=Oe;continue}if(Ve-=Oe,!(Ve>0)){if(Oe=Math.min(Oe,Oe+Ve+gt),Math.min(Ie,Oe)%2){var Mt=ne.slice(1,Ie+de.index+Oe);return{type:"em",raw:ne.slice(0,Ie+de.index+Oe+1),text:Mt,tokens:this.lexer.inlineTokens(Mt)}}var Bt=ne.slice(2,Ie+de.index+Oe-1);return{type:"strong",raw:ne.slice(0,Ie+de.index+Oe+1),text:Bt,tokens:this.lexer.inlineTokens(Bt)}}}}}},ge.codespan=function(ne){var ae=this.rules.inline.code.exec(ne);if(ae){var ue=ae[2].replace(/\n/g," "),de=/[^ ]/.test(ue),Se=/^ /.test(ue)&&/ $/.test(ue);return de&&Se&&(ue=ue.substring(1,ue.length-1)),ue=m(ue,!0),{type:"codespan",raw:ae[0],text:ue}}},ge.br=function(ne){var ae=this.rules.inline.br.exec(ne);if(ae)return{type:"br",raw:ae[0]}},ge.del=function(ne){var ae=this.rules.inline.del.exec(ne);if(ae)return{type:"del",raw:ae[0],text:ae[2],tokens:this.lexer.inlineTokens(ae[2])}},ge.autolink=function(ne,ae){var ue=this.rules.inline.autolink.exec(ne);if(ue){var de,Se;return ue[2]==="@"?(de=m(this.options.mangle?ae(ue[1]):ue[1]),Se="mailto:"+de):(de=m(ue[1]),Se=de),{type:"link",raw:ue[0],text:de,href:Se,tokens:[{type:"text",raw:de,text:de}]}}},ge.url=function(ne,ae){var ue;if(ue=this.rules.inline.url.exec(ne)){var de,Se;if(ue[2]==="@")de=m(this.options.mangle?ae(ue[0]):ue[0]),Se="mailto:"+de;else{var Ie;do Ie=ue[0],ue[0]=this.rules.inline._backpedal.exec(ue[0])[0];while(Ie!==ue[0]);de=m(ue[0]),ue[1]==="www."?Se="http://"+de:Se=de}return{type:"link",raw:ue[0],text:de,href:Se,tokens:[{type:"text",raw:de,text:de}]}}},ge.inlineText=function(ne,ae){var ue=this.rules.inline.text.exec(ne);if(ue){var de;return this.lexer.state.inRawBlock?de=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(ue[0]):m(ue[0]):ue[0]:de=m(this.options.smartypants?ae(ue[0]):ue[0]),{type:"text",raw:ue[0],text:de}}},Ce}(),ee={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?]+)>?(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:O,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};ee._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/,ee._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,ee.def=x(ee.def).replace("label",ee._label).replace("title",ee._title).getRegex(),ee.bullet=/(?:[*+-]|\d{1,9}[.)])/,ee.listItemStart=x(/^( *)(bull) */).replace("bull",ee.bullet).getRegex(),ee.list=x(ee.list).replace(/bull/g,ee.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+ee.def.source+")").getRegex(),ee._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ee._comment=/|$)/,ee.html=x(ee.html,"i").replace("comment",ee._comment).replace("tag",ee._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ee.paragraph=x(ee._paragraph).replace("hr",ee.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ee._tag).getRegex(),ee.blockquote=x(ee.blockquote).replace("paragraph",ee.paragraph).getRegex(),ee.normal=B({},ee),ee.gfm=B({},ee.normal,{table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),ee.gfm.table=x(ee.gfm.table).replace("hr",ee.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ee._tag).getRegex(),ee.gfm.paragraph=x(ee._paragraph).replace("hr",ee.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",ee.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ee._tag).getRegex(),ee.pedantic=B({},ee.normal,{html:x(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",ee._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:O,paragraph:x(ee.normal._paragraph).replace("hr",ee.hr).replace("heading",` *#{1,6} *[^ ]`).replace("lheading",ee.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var le={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:O,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^[^_*]*?\_\_[^_*]*?\*[^_*]*?(?=\_\_)|[^*]+(?=[^*])|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/^[^_*]*?\*\*[^_*]*?\_[^_*]*?(?=\*\*)|[^_]+(?=[^_])|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:O,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~",le.punctuation=x(le.punctuation).replace(/punctuation/g,le._punctuation).getRegex(),le.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,le.escapedEmSt=/\\\*|\\_/g,le._comment=x(ee._comment).replace("(?:-->|$)","-->").getRegex(),le.emStrong.lDelim=x(le.emStrong.lDelim).replace(/punct/g,le._punctuation).getRegex(),le.emStrong.rDelimAst=x(le.emStrong.rDelimAst,"g").replace(/punct/g,le._punctuation).getRegex(),le.emStrong.rDelimUnd=x(le.emStrong.rDelimUnd,"g").replace(/punct/g,le._punctuation).getRegex(),le._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,le._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,le._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,le.autolink=x(le.autolink).replace("scheme",le._scheme).replace("email",le._email).getRegex(),le._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,le.tag=x(le.tag).replace("comment",le._comment).replace("attribute",le._attribute).getRegex(),le._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,le._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,le._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,le.link=x(le.link).replace("label",le._label).replace("href",le._href).replace("title",le._title).getRegex(),le.reflink=x(le.reflink).replace("label",le._label).replace("ref",ee._label).getRegex(),le.nolink=x(le.nolink).replace("ref",ee._label).getRegex(),le.reflinkSearch=x(le.reflinkSearch,"g").replace("reflink",le.reflink).replace("nolink",le.nolink).getRegex(),le.normal=B({},le),le.pedantic=B({},le.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:x(/^!?\[(label)\]\((.*?)\)/).replace("label",le._label).getRegex(),reflink:x(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",le._label).getRegex()}),le.gfm=B({},le.normal,{escape:x(le.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(ne="x"+ne.toString(16)),ge+="&#"+ne+";";return ge}var me=function(){function Ce(pe){this.tokens=[],this.tokens.links=Object.create(null),this.options=pe||e.defaults,this.options.tokenizer=this.options.tokenizer||new K,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var ne={block:ee.normal,inline:le.normal};this.options.pedantic?(ne.block=ee.pedantic,ne.inline=le.pedantic):this.options.gfm&&(ne.block=ee.gfm,this.options.breaks?ne.inline=le.breaks:ne.inline=le.gfm),this.tokenizer.rules=ne}Ce.lex=function(ne,ae){var ue=new Ce(ae);return ue.lex(ne)},Ce.lexInline=function(ne,ae){var ue=new Ce(ae);return ue.inlineTokens(ne)};var ge=Ce.prototype;return ge.lex=function(ne){ne=ne.replace(/\r\n|\r/g,` `),this.blockTokens(ne,this.tokens);for(var ae;ae=this.inlineQueue.shift();)this.inlineTokens(ae.src,ae.tokens);return this.tokens},ge.blockTokens=function(ne,ae){var ue=this;ae===void 0&&(ae=[]),this.options.pedantic?ne=ne.replace(/\t/g," ").replace(/^ +$/gm,""):ne=ne.replace(/^( *)(\t+)/gm,function(Ve,gt,$t){return gt+" ".repeat($t.length)});for(var de,Se,Ie,nt;ne;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(Ve){return(de=Ve.call({lexer:ue},ne,ae))?(ne=ne.substring(de.raw.length),ae.push(de),!0):!1}))){if(de=this.tokenizer.space(ne)){ne=ne.substring(de.raw.length),de.raw.length===1&&ae.length>0?ae[ae.length-1].raw+=` `:ae.push(de);continue}if(de=this.tokenizer.code(ne)){ne=ne.substring(de.raw.length),Se=ae[ae.length-1],Se&&(Se.type==="paragraph"||Se.type==="text")?(Se.raw+=` `+de.raw,Se.text+=` `+de.text,this.inlineQueue[this.inlineQueue.length-1].src=Se.text):ae.push(de);continue}if(de=this.tokenizer.fences(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.heading(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.hr(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.blockquote(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.list(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.html(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.def(ne)){ne=ne.substring(de.raw.length),Se=ae[ae.length-1],Se&&(Se.type==="paragraph"||Se.type==="text")?(Se.raw+=` `+de.raw,Se.text+=` `+de.raw,this.inlineQueue[this.inlineQueue.length-1].src=Se.text):this.tokens.links[de.tag]||(this.tokens.links[de.tag]={href:de.href,title:de.title});continue}if(de=this.tokenizer.table(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.lheading(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(Ie=ne,this.options.extensions&&this.options.extensions.startBlock&&function(){var Ve=1/0,gt=ne.slice(1),$t=void 0;ue.options.extensions.startBlock.forEach(function(Mt){$t=Mt.call({lexer:this},gt),typeof $t=="number"&&$t>=0&&(Ve=Math.min(Ve,$t))}),Ve<1/0&&Ve>=0&&(Ie=ne.substring(0,Ve+1))}(),this.state.top&&(de=this.tokenizer.paragraph(Ie))){Se=ae[ae.length-1],nt&&Se.type==="paragraph"?(Se.raw+=` `+de.raw,Se.text+=` `+de.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=Se.text):ae.push(de),nt=Ie.length!==ne.length,ne=ne.substring(de.raw.length);continue}if(de=this.tokenizer.text(ne)){ne=ne.substring(de.raw.length),Se=ae[ae.length-1],Se&&Se.type==="text"?(Se.raw+=` `+de.raw,Se.text+=` `+de.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=Se.text):ae.push(de);continue}if(ne){var Oe="Infinite loop on byte: "+ne.charCodeAt(0);if(this.options.silent){console.error(Oe);break}else throw new Error(Oe)}}return this.state.top=!0,ae},ge.inline=function(ne,ae){return ae===void 0&&(ae=[]),this.inlineQueue.push({src:ne,tokens:ae}),ae},ge.inlineTokens=function(ne,ae){var ue=this;ae===void 0&&(ae=[]);var de,Se,Ie,nt=ne,Oe,Ve,gt;if(this.tokens.links){var $t=Object.keys(this.tokens.links);if($t.length>0)for(;(Oe=this.tokenizer.rules.inline.reflinkSearch.exec(nt))!=null;)$t.includes(Oe[0].slice(Oe[0].lastIndexOf("[")+1,-1))&&(nt=nt.slice(0,Oe.index)+"["+X("a",Oe[0].length-2)+"]"+nt.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(Oe=this.tokenizer.rules.inline.blockSkip.exec(nt))!=null;)nt=nt.slice(0,Oe.index)+"["+X("a",Oe[0].length-2)+"]"+nt.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(Oe=this.tokenizer.rules.inline.escapedEmSt.exec(nt))!=null;)nt=nt.slice(0,Oe.index)+"++"+nt.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;ne;)if(Ve||(gt=""),Ve=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(Bt){return(de=Bt.call({lexer:ue},ne,ae))?(ne=ne.substring(de.raw.length),ae.push(de),!0):!1}))){if(de=this.tokenizer.escape(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.tag(ne)){ne=ne.substring(de.raw.length),Se=ae[ae.length-1],Se&&de.type==="text"&&Se.type==="text"?(Se.raw+=de.raw,Se.text+=de.text):ae.push(de);continue}if(de=this.tokenizer.link(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.reflink(ne,this.tokens.links)){ne=ne.substring(de.raw.length),Se=ae[ae.length-1],Se&&de.type==="text"&&Se.type==="text"?(Se.raw+=de.raw,Se.text+=de.text):ae.push(de);continue}if(de=this.tokenizer.emStrong(ne,nt,gt)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.codespan(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.br(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.del(ne)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(de=this.tokenizer.autolink(ne,xe)){ne=ne.substring(de.raw.length),ae.push(de);continue}if(!this.state.inLink&&(de=this.tokenizer.url(ne,xe))){ne=ne.substring(de.raw.length),ae.push(de);continue}if(Ie=ne,this.options.extensions&&this.options.extensions.startInline&&function(){var Bt=1/0,jn=ne.slice(1),Dt=void 0;ue.options.extensions.startInline.forEach(function(Fn){Dt=Fn.call({lexer:this},jn),typeof Dt=="number"&&Dt>=0&&(Bt=Math.min(Bt,Dt))}),Bt<1/0&&Bt>=0&&(Ie=ne.substring(0,Bt+1))}(),de=this.tokenizer.inlineText(Ie,ke)){ne=ne.substring(de.raw.length),de.raw.slice(-1)!=="_"&&(gt=de.raw.slice(-1)),Ve=!0,Se=ae[ae.length-1],Se&&Se.type==="text"?(Se.raw+=de.raw,Se.text+=de.text):ae.push(de);continue}if(ne){var Mt="Infinite loop on byte: "+ne.charCodeAt(0);if(this.options.silent){console.error(Mt);break}else throw new Error(Mt)}}return ae},r(Ce,null,[{key:"rules",get:function(){return{block:ee,inline:le}}}]),Ce}(),Ee=function(){function Ce(pe){this.options=pe||e.defaults}var ge=Ce.prototype;return ge.code=function(ne,ae,ue){var de=(ae||"").match(/\S*/)[0];if(this.options.highlight){var Se=this.options.highlight(ne,de);Se!=null&&Se!==ne&&(ue=!0,ne=Se)}return ne=ne.replace(/\n$/,"")+` `,de?'
'+(ue?ne:m(ne,!0))+`
`:"
"+(ue?ne:m(ne,!0))+`
`},ge.blockquote=function(ne){return`
`+ne+`
`},ge.html=function(ne){return ne},ge.heading=function(ne,ae,ue,de){if(this.options.headerIds){var Se=this.options.headerPrefix+de.slug(ue);return"'+ne+" `}return""+ne+" `},ge.hr=function(){return this.options.xhtml?`
`:`
`},ge.list=function(ne,ae,ue){var de=ae?"ol":"ul",Se=ae&&ue!==1?' start="'+ue+'"':"";return"<"+de+Se+`> `+ne+" `},ge.listitem=function(ne){return"
  • "+ne+`
  • `},ge.checkbox=function(ne){return" "},ge.paragraph=function(ne){return"

    "+ne+`

    `},ge.table=function(ne,ae){return ae&&(ae=""+ae+""),` `+ne+` `+ae+`
    `},ge.tablerow=function(ne){return` `+ne+` `},ge.tablecell=function(ne,ae){var ue=ae.header?"th":"td",de=ae.align?"<"+ue+' align="'+ae.align+'">':"<"+ue+">";return de+ne+(" `)},ge.strong=function(ne){return""+ne+""},ge.em=function(ne){return""+ne+""},ge.codespan=function(ne){return""+ne+""},ge.br=function(){return this.options.xhtml?"
    ":"
    "},ge.del=function(ne){return""+ne+""},ge.link=function(ne,ae,ue){if(ne=R(this.options.sanitize,this.options.baseUrl,ne),ne===null)return ue;var de='",de},ge.image=function(ne,ae,ue){if(ne=R(this.options.sanitize,this.options.baseUrl,ne),ne===null)return ue;var de=''+ue+'":">",de},ge.text=function(ne){return ne},Ce}(),je=function(){function Ce(){}var ge=Ce.prototype;return ge.strong=function(ne){return ne},ge.em=function(ne){return ne},ge.codespan=function(ne){return ne},ge.del=function(ne){return ne},ge.html=function(ne){return ne},ge.text=function(ne){return ne},ge.link=function(ne,ae,ue){return""+ue},ge.image=function(ne,ae,ue){return""+ue},ge.br=function(){return""},Ce}(),qe=function(){function Ce(){this.seen={}}var ge=Ce.prototype;return ge.serialize=function(ne){return ne.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},ge.getNextSafeSlug=function(ne,ae){var ue=ne,de=0;if(this.seen.hasOwnProperty(ue)){de=this.seen[ne];do de++,ue=ne+"-"+de;while(this.seen.hasOwnProperty(ue))}return ae||(this.seen[ne]=de,this.seen[ue]=0),ue},ge.slug=function(ne,ae){ae===void 0&&(ae={});var ue=this.serialize(ne);return this.getNextSafeSlug(ue,ae.dryrun)},Ce}(),Ze=function(){function Ce(pe){this.options=pe||e.defaults,this.options.renderer=this.options.renderer||new Ee,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new je,this.slugger=new qe}Ce.parse=function(ne,ae){var ue=new Ce(ae);return ue.parse(ne)},Ce.parseInline=function(ne,ae){var ue=new Ce(ae);return ue.parseInline(ne)};var ge=Ce.prototype;return ge.parse=function(ne,ae){ae===void 0&&(ae=!0);var ue="",de,Se,Ie,nt,Oe,Ve,gt,$t,Mt,Bt,jn,Dt,Fn,tn,pi,Pi,ti,mi,ds,Nr=ne.length;for(de=0;de0&&pi.tokens[0].type==="paragraph"?(pi.tokens[0].text=mi+" "+pi.tokens[0].text,pi.tokens[0].tokens&&pi.tokens[0].tokens.length>0&&pi.tokens[0].tokens[0].type==="text"&&(pi.tokens[0].tokens[0].text=mi+" "+pi.tokens[0].tokens[0].text)):pi.tokens.unshift({type:"text",text:mi}):tn+=mi),tn+=this.parse(pi.tokens,Fn),Mt+=this.renderer.listitem(tn,ti,Pi);ue+=this.renderer.list(Mt,jn,Dt);continue}case"html":{ue+=this.renderer.html(Bt.text);continue}case"paragraph":{ue+=this.renderer.paragraph(this.parseInline(Bt.tokens));continue}case"text":{for(Mt=Bt.tokens?this.parseInline(Bt.tokens):Bt.text;de+1"u"||Ce===null)throw new Error("marked(): input parameter is undefined or null");if(typeof Ce!="string")throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(Ce)+", string expected");if(typeof ge=="function"&&(pe=ge,ge=null),ge=B({},We.defaults,ge||{}),Y(ge),pe){var ne=ge.highlight,ae;try{ae=me.lex(Ce,ge)}catch(nt){return pe(nt)}var ue=function(Oe){var Ve;if(!Oe)try{ge.walkTokens&&We.walkTokens(ae,ge.walkTokens),Ve=Ze.parse(ae,ge)}catch(gt){Oe=gt}return ge.highlight=ne,Oe?pe(Oe):pe(null,Ve)};if(!ne||ne.length<3||(delete ge.highlight,!ae.length))return ue();var de=0;We.walkTokens(ae,function(nt){nt.type==="code"&&(de++,setTimeout(function(){ne(nt.text,nt.lang,function(Oe,Ve){if(Oe)return ue(Oe);Ve!=null&&Ve!==nt.text&&(nt.text=Ve,nt.escaped=!0),de--,de===0&&ue()})},0))}),de===0&&ue();return}function Se(nt){if(nt.message+=` Please report this to https://github.com/markedjs/marked.`,ge.silent)return"

    An error occurred:

    "+m(nt.message+"",!0)+"
    ";throw nt}try{var Ie=me.lex(Ce,ge);if(ge.walkTokens){if(ge.async)return Promise.all(We.walkTokens(Ie,ge.walkTokens)).then(function(){return Ze.parse(Ie,ge)}).catch(Se);We.walkTokens(Ie,ge.walkTokens)}return Ze.parse(Ie,ge)}catch(nt){Se(nt)}}We.options=We.setOptions=function(Ce){return B(We.defaults,Ce),c(We.defaults),We},We.getDefaults=l,We.defaults=e.defaults,We.use=function(){for(var Ce=arguments.length,ge=new Array(Ce),pe=0;pe"u"||Ce===null)throw new Error("marked.parseInline(): input parameter is undefined or null");if(typeof Ce!="string")throw new Error("marked.parseInline(): input parameter is of type "+Object.prototype.toString.call(Ce)+", string expected");ge=B({},We.defaults,ge||{}),Y(ge);try{var pe=me.lexInline(Ce,ge);return ge.walkTokens&&We.walkTokens(pe,ge.walkTokens),Ze.parseInline(pe,ge)}catch(ne){if(ne.message+=` Please report this to https://github.com/markedjs/marked.`,ge.silent)return"

    An error occurred:

    "+m(ne.message+"",!0)+"
    ";throw ne}},We.Parser=Ze,We.parser=Ze.parse,We.Renderer=Ee,We.TextRenderer=je,We.Lexer=me,We.lexer=me.lex,We.Tokenizer=K,We.Slugger=qe,We.parse=We;var ut=We.options,st=We.setOptions,mt=We.use,Rt=We.walkTokens,Vt=We.parseInline,Ot=We,vt=Ze.parse,wn=me.lex;e.Lexer=me,e.Parser=Ze,e.Renderer=Ee,e.Slugger=qe,e.TextRenderer=je,e.Tokenizer=K,e.getDefaults=l,e.lexer=wn,e.marked=We,e.options=ut,e.parse=Ot,e.parseInline=Vt,e.parser=vt,e.setOptions=st,e.use=mt,e.walkTokens=Rt,Object.defineProperty(e,"__esModule",{value:!0})})})();Kl.Lexer||exports.Lexer;Kl.Parser||exports.Parser;Kl.Renderer||exports.Renderer;Kl.Slugger||exports.Slugger;Kl.TextRenderer||exports.TextRenderer;Kl.Tokenizer||exports.Tokenizer;Kl.getDefaults||exports.getDefaults;Kl.lexer||exports.lexer;var fm=Kl.marked||exports.marked;Kl.options||exports.options;Kl.parse||exports.parse;Kl.parseInline||exports.parseInline;Kl.parser||exports.parser;Kl.setOptions||exports.setOptions;Kl.use||exports.use;Kl.walkTokens||exports.walkTokens;function nbt(i){return JSON.stringify(i,ibt)}function wee(i){let e=JSON.parse(i);return e=Cee(e),e}function ibt(i,e){return e instanceof RegExp?{$mid:2,source:e.source,flags:e.flags}:e}function Cee(i,e=0){if(!i||e>200)return i;if(typeof i=="object"){switch(i.$mid){case 1:return Jt.revive(i);case 2:return new RegExp(i.source,i.flags);case 17:return new Date(i.source)}if(i instanceof m$||i instanceof Uint8Array)return i;if(Array.isArray(i))for(let n=0;n{let r=[],s=[];return i&&({href:i,dimensions:r}=Kvt(i),s.push(`src="${v6(i)}"`)),n&&s.push(`alt="${v6(n)}"`),e&&s.push(`title="${v6(e)}"`),r.length&&(s=s.concat(r)),""},paragraph:i=>`

    ${i}

    `,link:(i,e,n)=>typeof i!="string"?"":(i===n&&(n=Uq(n)),e=typeof e=="string"?v6(Uq(e)):"",i=Uq(i),i=i.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"),`
    ${n}`)});function H$(i,e={},n={}){var r,s;const o=new Xe;let a=!1;const l=aae(e),c=function(b){let y;try{y=wee(decodeURIComponent(b))}catch{}return y?(y=y2e(y,x=>{if(i.uris&&i.uris[x])return Jt.revive(i.uris[x])}),encodeURIComponent(JSON.stringify(y))):b},u=function(b,y){const x=i.uris&&i.uris[b];let k=Jt.revive(x);return y?b.startsWith(Pn.data+":")?b:(k||(k=Jt.parse(b)),vEe.uriToBrowserUri(k).toString(!0)):!k||Jt.parse(b).toString()===k.toString()?b:(k.query&&(k=k.with({query:c(k.query)})),k.toString())},d=new fm.Renderer;d.image=qq.image,d.link=qq.link,d.paragraph=qq.paragraph;const h=[],f=[];if(e.codeBlockRendererSync?d.code=(b,y)=>{const x=yee.nextId(),k=e.codeBlockRendererSync($me(y),b);return f.push([x,k]),`
    ${O9(b)}
    `}:e.codeBlockRenderer&&(d.code=(b,y)=>{const x=yee.nextId(),k=e.codeBlockRenderer($me(y),b);return h.push(k.then(D=>[x,D])),`
    ${O9(b)}
    `}),e.actionHandler){const b=function(k){let D=k.target;if(!(D.tagName!=="A"&&(D=D.parentElement,!D||D.tagName!=="A")))try{let R=D.dataset.href;R&&(i.baseUri&&(R=Kq(Jt.from(i.baseUri),R)),e.actionHandler.callback(R,k))}catch(R){Ln(R)}finally{k.preventDefault()}},y=e.actionHandler.disposables.add(new Xn(l,"click")),x=e.actionHandler.disposables.add(new Xn(l,"auxclick"));e.actionHandler.disposables.add(_t.any(y.event,x.event)(k=>{const D=new rh(k);!D.leftButton&&!D.middleButton||b(D)})),e.actionHandler.disposables.add(Be(l,"keydown",k=>{const D=new yr(k);!D.equals(10)&&!D.equals(3)||b(D)}))}i.supportHtml||(n.sanitizer=b=>(i.isTrusted?b.match(/^(]+>)|(<\/\s*span>)$/):void 0)?b:"",n.sanitize=!0,n.silent=!0),n.renderer=d;let p=(r=i.value)!==null&&r!==void 0?r:"";p.length>1e5&&(p=`${p.substr(0,1e5)}…`),i.supportThemeIcons&&(p=zvt(p));let g;if(e.fillInIncompleteTokens){const b=Object.assign(Object.assign({},fm.defaults),n),y=fm.lexer(p,b),x=dbt(y);g=fm.parser(x,b)}else g=fm.parse(p,n);i.supportThemeIcons&&(g=Uy(g).map(y=>typeof y=="string"?y:y.outerHTML).join(""));const _=new DOMParser().parseFromString(See(i,g),"text/html");if(_.body.querySelectorAll("img").forEach(b=>{const y=b.getAttribute("src");if(y){let x=y;try{i.baseUri&&(x=Kq(Jt.from(i.baseUri),x))}catch{}b.src=u(x,!0)}}),_.body.querySelectorAll("a").forEach(b=>{const y=b.getAttribute("href");if(b.setAttribute("href",""),!y||/^data:|javascript:/i.test(y)||/^command:/i.test(y)&&!i.isTrusted||/^command:(\/\/\/)?_workbench\.downloadResource/i.test(y))b.replaceWith(...b.childNodes);else{let x=u(y,!1);i.baseUri&&(x=Kq(Jt.from(i.baseUri),y)),b.dataset.href=x}}),l.innerHTML=See(i,_.body.innerHTML),h.length>0)Promise.all(h).then(b=>{var y,x;if(a)return;const k=new Map(b),D=l.querySelectorAll("div[data-code]");for(const R of D){const E=k.get((y=R.dataset.code)!==null&&y!==void 0?y:"");E&&ca(R,E)}(x=e.asyncRenderCallback)===null||x===void 0||x.call(e)});else if(f.length>0){const b=new Map(f),y=l.querySelectorAll("div[data-code]");for(const x of y){const k=b.get((s=x.dataset.code)!==null&&s!==void 0?s:"");k&&ca(x,k)}}if(e.asyncRenderCallback)for(const b of l.getElementsByTagName("img")){const y=o.add(Be(b,"load",()=>{y.dispose(),e.asyncRenderCallback()}))}return{element:l,dispose:()=>{a=!0,o.dispose()}}}function $me(i){if(!i)return"";const e=i.split(/[\s+|:|,|\{|\?]/,1);return e.length?e[0]:i}function Kq(i,e){return/^\w[\w\d+.-]*:/.test(e)?e:i.path.endsWith("/")?jge(i,e).toString():jge(M$(i),e).toString()}function See(i,e){const{config:n,allowedSchemes:r}=sbt(i);gEe("uponSanitizeAttribute",(o,a)=>{if(a.attrName==="style"||a.attrName==="class"){if(o.tagName==="SPAN"){if(a.attrName==="style"){a.keepAttr=/^(color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?(background-color\:(#[0-9a-fA-F]+|var\(--vscode(-[a-zA-Z]+)+\));)?$/.test(a.attrValue);return}else if(a.attrName==="class"){a.keepAttr=/^codicon codicon-[a-z\-]+( codicon-modifier-[a-z\-]+)?$/.test(a.attrValue);return}}a.keepAttr=!1;return}});const s=slt(r);try{return pEe(e,Object.assign(Object.assign({},n),{RETURN_TRUSTED_TYPE:!0}))}finally{mEe("uponSanitizeAttribute"),s.dispose()}}const rbt=["align","autoplay","alt","class","controls","data-code","data-href","height","href","loop","muted","playsinline","poster","src","style","target","title","width","start"];function sbt(i){const e=[Pn.http,Pn.https,Pn.mailto,Pn.data,Pn.file,Pn.vscodeFileResource,Pn.vscodeRemote,Pn.vscodeRemoteResource];return i.isTrusted&&e.push(Pn.command),{config:{ALLOWED_TAGS:[...olt],ALLOWED_ATTR:rbt,ALLOW_UNKNOWN_PROTOCOLS:!0},allowedSchemes:e}}function obt(i){return typeof i=="string"?i:abt(i)}function abt(i){var e;let n=(e=i.value)!==null&&e!==void 0?e:"";n.length>1e5&&(n=`${n.substr(0,1e5)}…`);const r=fm.parse(n,{renderer:cbt.value}).replace(/&(#\d+|[a-zA-Z]+);/g,s=>{var o;return(o=lbt.get(s))!==null&&o!==void 0?o:s});return See({isTrusted:!1},r).toString()}const lbt=new Map([[""",'"'],[" "," "],["&","&"],["'","'"],["<","<"],[">",">"]]),cbt=new K1(()=>{const i=new fm.Renderer;return i.code=e=>e,i.blockquote=e=>e,i.html=e=>"",i.heading=(e,n,r)=>e+` `,i.hr=()=>"",i.list=(e,n)=>e,i.listitem=e=>e+` `,i.paragraph=e=>e+` `,i.table=(e,n)=>e+n+` `,i.tablerow=e=>e,i.tablecell=(e,n)=>e+" ",i.strong=e=>e,i.em=e=>e,i.codespan=e=>e,i.br=()=>` `,i.del=e=>e,i.image=(e,n,r)=>"",i.text=e=>e,i.link=(e,n,r)=>r,i});function cae(i){let e="";return i.forEach(n=>{e+=n.raw}),e}function ubt(i){for(const e of i.tokens)if(e.type==="text"){const n=e.raw.split(` `),r=n[n.length-1];if(r.includes("`"))return fbt(i);if(r.includes("**"))return vbt(i);if(r.match(/\*\w/))return pbt(i);if(r.match(/(^|\s)__\w/))return bbt(i);if(r.match(/(^|\s)_\w/))return gbt(i);if(r.match(/(^|\s)\[.*\]\(\w*/))return mbt(i);if(r.match(/(^|\s)\[\w/))return _bt(i)}}function dbt(i){let e,n;for(e=0;e"u"&&a.match(/^\s*\|/)){const l=a.match(/(\|[^\|]+)(?=\||$)/g);l&&(r=l.length)}else if(typeof r=="number")if(a.match(/^\s*\|/)){if(o!==n.length-1)return;s=!0}else return}if(typeof r=="number"&&r>0){const o=s?n.slice(0,-1).join(` `):e,a=!!o.match(/\|\s*$/),l=o+(a?"":"|")+` |${" --- |".repeat(r)}`;return fm.lexer(l)}}class wbt{constructor(e){this.spliceables=e}splice(e,n,r){this.spliceables.forEach(s=>s.splice(e,n,r))}}class rD extends Error{constructor(e,n){super(`ListError [${e}] ${n}`)}}function zme(i,e){const n=[];for(const r of e){if(i.start>=r.range.end)continue;if(i.ende.concat(n),[]))}class Vme{get paddingTop(){return this._paddingTop}set paddingTop(e){this._size=this._size+e-this._paddingTop,this._paddingTop=e}constructor(e){this.groups=[],this._size=0,this._paddingTop=0,this._paddingTop=e??0,this._size=this._paddingTop}splice(e,n,r=[]){const s=r.length-n,o=zme({start:0,end:e},this.groups),a=zme({start:e+n,end:Number.POSITIVE_INFINITY},this.groups).map(c=>({range:xee(c.range,s),size:c.size})),l=r.map((c,u)=>({range:{start:e+u,end:e+u+1},size:c.size}));this.groups=Sbt(o,l,a),this._size=this._paddingTop+this.groups.reduce((c,u)=>c+u.size*(u.range.end-u.range.start),0)}get count(){const e=this.groups.length;return e?this.groups[e-1].range.end:0}get size(){return this._size}indexAt(e){if(e<0)return-1;if(e{for(const r of e)this.getRenderer(n).disposeTemplate(r.templateData),r.templateData=null}),this.cache.clear(),this.transactionNodesPendingRemoval.clear()}getRenderer(e){const n=this.renderers.get(e);if(!n)throw new Error(`No renderer found for ${e}`);return n}}var Hv=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o};const iC={CurrentDragAndDropData:void 0},jg={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements(i){return[i]},getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class V5{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class Lbt{constructor(e){this.elements=e}update(){}getData(){return this.elements}}class Dbt{constructor(){this.types=[],this.files=[]}update(e){if(e.types&&this.types.splice(0,this.types.length,...e.types),e.files){this.files.splice(0,this.files.length);for(let n=0;ns,e!=null&&e.getPosInSet?this.getPosInSet=e.getPosInSet.bind(e):this.getPosInSet=(n,r)=>r+1,e!=null&&e.getRole?this.getRole=e.getRole.bind(e):this.getRole=n=>"listitem",e!=null&&e.isChecked?this.isChecked=e.isChecked.bind(e):this.isChecked=n=>{}}}class kh{get contentHeight(){return this.rangeMap.size}get onDidScroll(){return this.scrollableElement.onScroll}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(e){if(e!==this._horizontalScrolling){if(e&&this.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=e,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(const n of this.items)this.measureItemWidth(n);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:JU(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}}constructor(e,n,r,s=jg){var o,a,l,c,u,d,h,f,p,g,m,_,b;if(this.virtualDelegate=n,this.domId=`list_id_${++kh.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new Rf(50),this.splicing=!1,this.dragOverAnimationStopDisposable=Le.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=Le.None,this.onDragLeaveTimeout=Le.None,this.disposables=new Xe,this._onDidChangeContentHeight=new _e,this._onDidChangeContentWidth=new _e,this._horizontalScrolling=!1,s.horizontalScrolling&&s.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=new Vme((o=s.paddingTop)!==null&&o!==void 0?o:0);for(const x of r)this.renderers.set(x.templateId,x);this.cache=this.disposables.add(new kbt(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support",typeof s.mouseSupport=="boolean"?s.mouseSupport:!0),this._horizontalScrolling=(a=s.horizontalScrolling)!==null&&a!==void 0?a:jg.horizontalScrolling,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.paddingBottom=typeof s.paddingBottom>"u"?0:s.paddingBottom,this.accessibilityProvider=new Ibt(s.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows",((l=s.transformOptimization)!==null&&l!==void 0?l:jg.transformOptimization)&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)",this.rowsContainer.style.overflow="hidden",this.rowsContainer.style.contain="strict"),this.disposables.add(or.addTarget(this.rowsContainer)),this.scrollable=this.disposables.add(new M5({forceIntegerValues:!0,smoothScrollDuration:(c=s.smoothScrolling)!==null&&c!==void 0&&c?125:0,scheduleAtNextAnimationFrame:x=>mh(x)})),this.scrollableElement=this.disposables.add(new xoe(this.rowsContainer,{alwaysConsumeMouseWheel:(u=s.alwaysConsumeMouseWheel)!==null&&u!==void 0?u:jg.alwaysConsumeMouseWheel,horizontal:1,vertical:(d=s.verticalScrollMode)!==null&&d!==void 0?d:jg.verticalScrollMode,useShadows:(h=s.useShadows)!==null&&h!==void 0?h:jg.useShadows,mouseWheelScrollSensitivity:s.mouseWheelScrollSensitivity,fastScrollSensitivity:s.fastScrollSensitivity,scrollByPage:s.scrollByPage},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),e.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add(Be(this.rowsContainer,lr.Change,x=>this.onTouchChange(x))),this.disposables.add(Be(this.scrollableElement.getDomNode(),"scroll",x=>x.target.scrollTop=0)),this.disposables.add(Be(this.domNode,"dragover",x=>this.onDragOver(this.toDragEvent(x)))),this.disposables.add(Be(this.domNode,"drop",x=>this.onDrop(this.toDragEvent(x)))),this.disposables.add(Be(this.domNode,"dragleave",x=>this.onDragLeave(this.toDragEvent(x)))),this.disposables.add(Be(this.domNode,"dragend",x=>this.onDragEnd(x))),this.setRowLineHeight=(f=s.setRowLineHeight)!==null&&f!==void 0?f:jg.setRowLineHeight,this.setRowHeight=(p=s.setRowHeight)!==null&&p!==void 0?p:jg.setRowHeight,this.supportDynamicHeights=(g=s.supportDynamicHeights)!==null&&g!==void 0?g:jg.supportDynamicHeights,this.dnd=(m=s.dnd)!==null&&m!==void 0?m:this.disposables.add(jg.dnd),this.layout((_=s.initialSize)===null||_===void 0?void 0:_.height,(b=s.initialSize)===null||b===void 0?void 0:b.width)}updateOptions(e){e.paddingBottom!==void 0&&(this.paddingBottom=e.paddingBottom,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),e.smoothScrolling!==void 0&&this.scrollable.setSmoothScrollDuration(e.smoothScrolling?125:0),e.horizontalScrolling!==void 0&&(this.horizontalScrolling=e.horizontalScrolling);let n;if(e.scrollByPage!==void 0&&(n=Object.assign(Object.assign({},n??{}),{scrollByPage:e.scrollByPage})),e.mouseWheelScrollSensitivity!==void 0&&(n=Object.assign(Object.assign({},n??{}),{mouseWheelScrollSensitivity:e.mouseWheelScrollSensitivity})),e.fastScrollSensitivity!==void 0&&(n=Object.assign(Object.assign({},n??{}),{fastScrollSensitivity:e.fastScrollSensitivity})),n&&this.scrollableElement.updateOptions(n),e.paddingTop!==void 0&&e.paddingTop!==this.rangeMap.paddingTop){const r=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),s=e.paddingTop-this.rangeMap.paddingTop;this.rangeMap.paddingTop=e.paddingTop,this.render(r,Math.max(0,this.lastRenderTop+s),this.lastRenderHeight,void 0,void 0,!0),this.setScrollTop(this.lastRenderTop),this.eventuallyUpdateScrollDimensions(),this.supportDynamicHeights&&this._rerender(this.lastRenderTop,this.lastRenderHeight)}}splice(e,n,r=[]){if(this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(e,n,r)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(e,n,r=[]){const s=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),o={start:e,end:e+n},a=Ba.intersect(s,o),l=new Map;for(let R=a.end-1;R>=a.start;R--){const E=this.items[R];if(E.dragStartDisposable.dispose(),E.checkedDisposable.dispose(),E.row){let A=l.get(E.templateId);A||(A=[],l.set(E.templateId,A));const M=this.renderers.get(E.templateId);M&&M.disposeElement&&M.disposeElement(E.element,R,E.row.templateData,E.size),A.push(E.row)}E.row=null}const c={start:e+n,end:this.items.length},u=Ba.intersect(c,s),d=Ba.relativeComplement(c,s),h=r.map(R=>({id:String(this.itemId++),element:R,templateId:this.virtualDelegate.getTemplateId(R),size:this.virtualDelegate.getHeight(R),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(R),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:Le.None,checkedDisposable:Le.None}));let f;e===0&&n>=this.items.length?(this.rangeMap=new Vme(this.rangeMap.paddingTop),this.rangeMap.splice(0,0,h),f=this.items,this.items=h):(this.rangeMap.splice(e,n,h),f=this.items.splice(e,n,...h));const p=r.length-n,g=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),m=xee(u,p),_=Ba.intersect(g,m);for(let R=_.start;R<_.end;R++)this.updateItemInDOM(this.items[R],R);const b=Ba.relativeComplement(m,g);for(const R of b)for(let E=R.start;Exee(R,p)),k=[{start:e,end:e+r.length},...y].map(R=>Ba.intersect(g,R)),D=this.getNextToLastElement(k);for(const R of k)for(let E=R.start;ER.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=mh(()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling){this.scrollableElementWidthDelayer.cancel();return}this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let e=0;for(const n of this.items)typeof n.width<"u"&&(e=Math.max(e,n.width));this.scrollWidth=e,this.scrollableElement.setScrollDimensions({scrollWidth:e===0?0:e+10}),this._onDidChangeContentWidth.fire(this.scrollWidth)}rerender(){if(this.supportDynamicHeights){for(const e of this.items)e.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}}get length(){return this.items.length}get renderHeight(){return this.scrollableElement.getScrollDimensions().height}get firstVisibleIndex(){const e=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),n=this.rangeMap.positionAt(e.start),r=this.rangeMap.positionAt(e.start+1);return r!==-1&&(r-n)/2+n{for(const h of u)for(let f=h.start;fs.row.domNode.setAttribute("aria-checked",String(!!h));d(l.value),s.checkedDisposable=l.onDidChange(d)}(o||!s.row.domNode.parentElement)&&(n?this.rowsContainer.insertBefore(s.row.domNode,n):this.rowsContainer.appendChild(s.row.domNode)),this.updateItemInDOM(s,e);const c=this.renderers.get(s.templateId);if(!c)throw new Error(`No renderer found for template id ${s.templateId}`);c==null||c.renderElement(s.element,e,s.row.templateData,s.size);const u=this.dnd.getDragURI(s.element);s.dragStartDisposable.dispose(),s.row.domNode.draggable=!!u,u&&(s.dragStartDisposable=Be(s.row.domNode,"dragstart",d=>this.onDragStart(s.element,u,d))),this.horizontalScrolling&&(this.measureItemWidth(s),this.eventuallyUpdateScrollWidth())}measureItemWidth(e){if(!e.row||!e.row.domNode)return;e.row.domNode.style.width="fit-content",e.width=JU(e.row.domNode);const n=window.getComputedStyle(e.row.domNode);n.paddingLeft&&(e.width+=parseFloat(n.paddingLeft)),n.paddingRight&&(e.width+=parseFloat(n.paddingRight)),e.row.domNode.style.width=""}updateItemInDOM(e,n){e.row.domNode.style.top=`${this.elementTop(n)}px`,this.setRowHeight&&(e.row.domNode.style.height=`${e.size}px`),this.setRowLineHeight&&(e.row.domNode.style.lineHeight=`${e.size}px`),e.row.domNode.setAttribute("data-index",`${n}`),e.row.domNode.setAttribute("data-last-element",n===this.length-1?"true":"false"),e.row.domNode.setAttribute("data-parity",n%2===0?"even":"odd"),e.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(e.element,n,this.length))),e.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(e.element,n))),e.row.domNode.setAttribute("id",this.getElementDomId(n)),e.row.domNode.classList.toggle("drop-target",e.dropTarget)}removeItemFromDOM(e){const n=this.items[e];if(n.dragStartDisposable.dispose(),n.checkedDisposable.dispose(),n.row){const r=this.renderers.get(n.templateId);r&&r.disposeElement&&r.disposeElement(n.element,e,n.row.templateData,n.size),this.cache.release(n.row),n.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){return this.scrollableElement.getScrollPosition().scrollTop}setScrollTop(e,n){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:e,reuseAnimation:n})}get scrollTop(){return this.getScrollTop()}set scrollTop(e){this.setScrollTop(e)}get scrollHeight(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.paddingBottom}get onMouseClick(){return _t.map(this.disposables.add(new Xn(this.domNode,"click")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseDblClick(){return _t.map(this.disposables.add(new Xn(this.domNode,"dblclick")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseMiddleClick(){return _t.filter(_t.map(this.disposables.add(new Xn(this.domNode,"auxclick")).event,e=>this.toMouseEvent(e),this.disposables),e=>e.browserEvent.button===1,this.disposables)}get onMouseDown(){return _t.map(this.disposables.add(new Xn(this.domNode,"mousedown")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOver(){return _t.map(this.disposables.add(new Xn(this.domNode,"mouseover")).event,e=>this.toMouseEvent(e),this.disposables)}get onMouseOut(){return _t.map(this.disposables.add(new Xn(this.domNode,"mouseout")).event,e=>this.toMouseEvent(e),this.disposables)}get onContextMenu(){return _t.any(_t.map(this.disposables.add(new Xn(this.domNode,"contextmenu")).event,e=>this.toMouseEvent(e),this.disposables),_t.map(this.disposables.add(new Xn(this.domNode,lr.Contextmenu)).event,e=>this.toGestureEvent(e),this.disposables))}get onTouchStart(){return _t.map(this.disposables.add(new Xn(this.domNode,"touchstart")).event,e=>this.toTouchEvent(e),this.disposables)}get onTap(){return _t.map(this.disposables.add(new Xn(this.rowsContainer,lr.Tap)).event,e=>this.toGestureEvent(e),this.disposables)}toMouseEvent(e){const n=this.getItemIndexFromEventTarget(e.target||null),r=typeof n>"u"?void 0:this.items[n],s=r&&r.element;return{browserEvent:e,index:n,element:s}}toTouchEvent(e){const n=this.getItemIndexFromEventTarget(e.target||null),r=typeof n>"u"?void 0:this.items[n],s=r&&r.element;return{browserEvent:e,index:n,element:s}}toGestureEvent(e){const n=this.getItemIndexFromEventTarget(e.initialTarget||null),r=typeof n>"u"?void 0:this.items[n],s=r&&r.element;return{browserEvent:e,index:n,element:s}}toDragEvent(e){const n=this.getItemIndexFromEventTarget(e.target||null),r=typeof n>"u"?void 0:this.items[n],s=r&&r.element;return{browserEvent:e,index:n,element:s}}onScroll(e){try{const n=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(n,e.scrollTop,e.height,e.scrollLeft,e.scrollWidth),this.supportDynamicHeights&&this._rerender(e.scrollTop,e.height,e.inSmoothScrolling)}catch(n){throw console.error("Got bad scroll event:",e),n}}onTouchChange(e){e.preventDefault(),e.stopPropagation(),this.scrollTop-=e.translationY}onDragStart(e,n,r){var s,o;if(!r.dataTransfer)return;const a=this.dnd.getDragElements(e);if(r.dataTransfer.effectAllowed="copyMove",r.dataTransfer.setData(VP.TEXT,n),r.dataTransfer.setDragImage){let l;this.dnd.getDragLabel&&(l=this.dnd.getDragLabel(a,r)),typeof l>"u"&&(l=String(a.length));const c=tt(".monaco-drag-image");c.textContent=l;const d=(h=>{for(;h&&!h.classList.contains("monaco-workbench");)h=h.parentElement;return h||document.body})(this.domNode);d.appendChild(c),r.dataTransfer.setDragImage(c,-10,-10),setTimeout(()=>d.removeChild(c),0)}this.domNode.classList.add("dragging"),this.currentDragData=new V5(a),iC.CurrentDragAndDropData=new Lbt(a),(o=(s=this.dnd).onDragStart)===null||o===void 0||o.call(s,this.currentDragData,r)}onDragOver(e){var n;if(e.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),iC.CurrentDragAndDropData&&iC.CurrentDragAndDropData.getData()==="vscode-ui"||(this.setupDragAndDropScrollTopAnimation(e.browserEvent),!e.browserEvent.dataTransfer))return!1;if(!this.currentDragData)if(iC.CurrentDragAndDropData)this.currentDragData=iC.CurrentDragAndDropData;else{if(!e.browserEvent.dataTransfer.types)return!1;this.currentDragData=new Dbt}const r=this.dnd.onDragOver(this.currentDragData,e.element,e.index,e.browserEvent);if(this.canDrop=typeof r=="boolean"?r:r.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;e.browserEvent.dataTransfer.dropEffect=typeof r!="boolean"&&r.effect===0?"copy":"move";let s;if(typeof r!="boolean"&&r.feedback?s=r.feedback:typeof e.index>"u"?s=[-1]:s=[e.index],s=l1(s).filter(o=>o>=-1&&oo-a),s=s[0]===-1?[-1]:s,Ebt(this.currentDragFeedback,s))return!0;if(this.currentDragFeedback=s,this.currentDragFeedbackDisposable.dispose(),s[0]===-1)this.domNode.classList.add("drop-target"),this.rowsContainer.classList.add("drop-target"),this.currentDragFeedbackDisposable=gn(()=>{this.domNode.classList.remove("drop-target"),this.rowsContainer.classList.remove("drop-target")});else{for(const o of s){const a=this.items[o];a.dropTarget=!0,(n=a.row)===null||n===void 0||n.domNode.classList.add("drop-target")}this.currentDragFeedbackDisposable=gn(()=>{var o;for(const a of s){const l=this.items[a];l.dropTarget=!1,(o=l.row)===null||o===void 0||o.domNode.classList.remove("drop-target")}})}return!0}onDragLeave(e){var n,r;this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=g1(()=>this.clearDragOverFeedback(),100,this.disposables),this.currentDragData&&((r=(n=this.dnd).onDragLeave)===null||r===void 0||r.call(n,this.currentDragData,e.element,e.index,e.browserEvent))}onDrop(e){if(!this.canDrop)return;const n=this.currentDragData;this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,iC.CurrentDragAndDropData=void 0,!(!n||!e.browserEvent.dataTransfer)&&(e.browserEvent.preventDefault(),n.update(e.browserEvent.dataTransfer),this.dnd.drop(n,e.element,e.index,e.browserEvent))}onDragEnd(e){var n,r;this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.domNode.classList.remove("dragging"),this.currentDragData=void 0,iC.CurrentDragAndDropData=void 0,(r=(n=this.dnd).onDragEnd)===null||r===void 0||r.call(n,e)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=Le.None}setupDragAndDropScrollTopAnimation(e){if(!this.dragOverAnimationDisposable){const n=yEe(this.domNode).top;this.dragOverAnimationDisposable=rlt(this.animateDragAndDropScrollTop.bind(this,n))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=g1(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3,this.disposables),this.dragOverMouseY=e.pageY}animateDragAndDropScrollTop(e){if(this.dragOverMouseY===void 0)return;const n=this.dragOverMouseY-e,r=this.renderHeight-35;n<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(n-35))):n>r&&(this.scrollTop+=Math.min(14,Math.floor(.3*(n-r))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getItemIndexFromEventTarget(e){const n=this.scrollableElement.getDomNode();let r=e;for(;r instanceof HTMLElement&&r!==this.rowsContainer&&n.contains(r);){const s=r.getAttribute("data-index");if(s){const o=Number(s);if(!isNaN(o))return o}r=r.parentElement}}getRenderRange(e,n){return{start:this.rangeMap.indexAt(e),end:this.rangeMap.indexAfter(e+n-1)}}_rerender(e,n,r){const s=this.getRenderRange(e,n);let o,a;e===this.elementTop(s.start)?(o=s.start,a=0):s.end-s.start>1&&(o=s.start+1,a=this.elementTop(o)-e);let l=0;for(;;){const c=this.getRenderRange(e,n);let u=!1;for(let d=c.start;d=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Hme=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class Tbt{constructor(e){this.trait=e,this.renderedElements=[]}get templateId(){return`template:${this.trait.name}`}renderTemplate(e){return e}renderElement(e,n,r){const s=this.renderedElements.findIndex(o=>o.templateData===r);if(s>=0){const o=this.renderedElements[s];this.trait.unrender(r),o.index=n}else{const o={index:n,templateData:r};this.renderedElements.push(o)}this.trait.renderIndex(n,r)}splice(e,n,r){const s=[];for(const o of this.renderedElements)o.index=e+n&&s.push({index:o.index+r-n,templateData:o.templateData});this.renderedElements=s}renderIndexes(e){for(const{index:n,templateData:r}of this.renderedElements)e.indexOf(n)>-1&&this.trait.renderIndex(n,r)}disposeTemplate(e){const n=this.renderedElements.findIndex(r=>r.templateData===e);n<0||this.renderedElements.splice(n,1)}}let L7=class{get name(){return this._trait}get renderer(){return new Tbt(this)}constructor(e){this._trait=e,this.length=0,this.indexes=[],this.sortedIndexes=[],this._onChange=new _e,this.onChange=this._onChange.event}splice(e,n,r){var s;n=Math.max(0,Math.min(n,this.length-e));const o=r.length-n,a=e+n,l=[];let c=0;for(;c=a;)l.push(this.sortedIndexes[c++]+o);const u=this.length+o;if(this.sortedIndexes.length>0&&l.length===0&&u>0){const d=(s=this.sortedIndexes.find(h=>h>=e))!==null&&s!==void 0?s:u-1;l.push(Math.min(d,u-1))}this.renderer.splice(e,n,r.length),this._set(l,l),this.length=u}renderIndex(e,n){n.classList.toggle(this._trait,this.contains(e))}unrender(e){e.classList.remove(this._trait)}set(e,n){return this._set(e,[...e].sort(qme),n)}_set(e,n,r){const s=this.indexes,o=this.sortedIndexes;this.indexes=e,this.sortedIndexes=n;const a=kee(o,e);return this.renderer.renderIndexes(a),this._onChange.fire({indexes:e,browserEvent:r}),s}get(){return this.indexes}contains(e){return JM(this.sortedIndexes,e,qme)>=0}dispose(){Mi(this._onChange)}};ek([Ms],L7.prototype,"renderer",null);class Rbt extends L7{constructor(e){super("selected"),this.setAriaSelected=e}renderIndex(e,n){super.renderIndex(e,n),this.setAriaSelected&&(this.contains(e)?n.setAttribute("aria-selected","true"):n.setAttribute("aria-selected","false"))}}class Gq{constructor(e,n,r){this.trait=e,this.view=n,this.identityProvider=r}splice(e,n,r){if(!this.identityProvider)return this.trait.splice(e,n,new Array(r.length).fill(!1));const s=this.trait.get().map(l=>this.identityProvider.getId(this.view.element(l)).toString());if(s.length===0)return this.trait.splice(e,n,new Array(r.length).fill(!1));const o=new Set(s),a=r.map(l=>o.has(this.identityProvider.getId(l).toString()));this.trait.splice(e,n,a)}}function qy(i){return i.tagName==="INPUT"||i.tagName==="TEXTAREA"}function v2(i){return i.classList.contains("monaco-editor")?!0:i.classList.contains("monaco-list")||!i.parentElement?!1:v2(i.parentElement)}function YTe(i){return i.tagName==="A"&&i.classList.contains("monaco-button")||i.tagName==="DIV"&&i.classList.contains("monaco-button-dropdown")?!0:i.classList.contains("monaco-list")||!i.parentElement?!1:YTe(i.parentElement)}class ZTe{get onKeyDown(){return _t.chain(this.disposables.add(new Xn(this.view.domNode,"keydown")).event,e=>e.filter(n=>!qy(n.target)).map(n=>new yr(n)))}constructor(e,n,r){this.list=e,this.view=n,this.disposables=new Xe,this.multipleSelectionDisposables=new Xe,this.multipleSelectionSupport=r.multipleSelectionSupport,this.disposables.add(this.onKeyDown(s=>{switch(s.keyCode){case 3:return this.onEnter(s);case 16:return this.onUpArrow(s);case 18:return this.onDownArrow(s);case 11:return this.onPageUpArrow(s);case 12:return this.onPageDownArrow(s);case 9:return this.onEscape(s);case 31:this.multipleSelectionSupport&&(ri?s.metaKey:s.ctrlKey)&&this.onCtrlA(s)}}))}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionSupport=e.multipleSelectionSupport)}onEnter(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(this.list.getFocus(),e.browserEvent)}onUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPrevious(1,!1,e.browserEvent);const n=this.list.getFocus()[0];this.list.setAnchor(n),this.list.reveal(n),this.view.domNode.focus()}onDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNext(1,!1,e.browserEvent);const n=this.list.getFocus()[0];this.list.setAnchor(n),this.list.reveal(n),this.view.domNode.focus()}onPageUpArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusPreviousPage(e.browserEvent);const n=this.list.getFocus()[0];this.list.setAnchor(n),this.list.reveal(n),this.view.domNode.focus()}onPageDownArrow(e){e.preventDefault(),e.stopPropagation(),this.list.focusNextPage(e.browserEvent);const n=this.list.getFocus()[0];this.list.setAnchor(n),this.list.reveal(n),this.view.domNode.focus()}onCtrlA(e){e.preventDefault(),e.stopPropagation(),this.list.setSelection(Tl(this.list.length),e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(e){this.list.getSelection().length&&(e.preventDefault(),e.stopPropagation(),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}ek([Ms],ZTe.prototype,"onKeyDown",null);var pm;(function(i){i[i.Automatic=0]="Automatic",i[i.Trigger=1]="Trigger"})(pm||(pm={}));var b2;(function(i){i[i.Idle=0]="Idle",i[i.Typing=1]="Typing"})(b2||(b2={}));const Abt=new class{mightProducePrintableCharacter(i){return i.ctrlKey||i.metaKey||i.altKey?!1:i.keyCode>=31&&i.keyCode<=56||i.keyCode>=21&&i.keyCode<=30||i.keyCode>=98&&i.keyCode<=107||i.keyCode>=85&&i.keyCode<=95}};class Nbt{constructor(e,n,r,s,o){this.list=e,this.view=n,this.keyboardNavigationLabelProvider=r,this.keyboardNavigationEventFilter=s,this.delegate=o,this.enabled=!1,this.state=b2.Idle,this.mode=pm.Automatic,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new Xe,this.disposables=new Xe,this.updateOptions(e.options)}updateOptions(e){var n,r;!((n=e.typeNavigationEnabled)!==null&&n!==void 0)||n?this.enable():this.disable(),this.mode=(r=e.typeNavigationMode)!==null&&r!==void 0?r:pm.Automatic}enable(){if(this.enabled)return;let e=!1;const n=_t.chain(this.enabledDisposables.add(new Xn(this.view.domNode,"keydown")).event,o=>o.filter(a=>!qy(a.target)).filter(()=>this.mode===pm.Automatic||this.triggered).map(a=>new yr(a)).filter(a=>e||this.keyboardNavigationEventFilter(a)).filter(a=>this.delegate.mightProducePrintableCharacter(a)).forEach(a=>Nn.stop(a,!0)).map(a=>a.browserEvent.key)),r=_t.debounce(n,()=>null,800,void 0,void 0,void 0,this.enabledDisposables);_t.reduce(_t.any(n,r),(o,a)=>a===null?null:(o||"")+a,void 0,this.enabledDisposables)(this.onInput,this,this.enabledDisposables),r(this.onClear,this,this.enabledDisposables),n(()=>e=!0,void 0,this.enabledDisposables),r(()=>e=!1,void 0,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){this.enabled&&(this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1)}onClear(){var e;const n=this.list.getFocus();if(n.length>0&&n[0]===this.previouslyFocused){const r=(e=this.list.options.accessibilityProvider)===null||e===void 0?void 0:e.getAriaLabel(this.list.element(n[0]));r&&Ua(r)}this.previouslyFocused=-1}onInput(e){if(!e){this.state=b2.Idle,this.triggered=!1;return}const n=this.list.getFocus(),r=n.length>0?n[0]:0,s=this.state===b2.Idle?1:0;this.state=b2.Typing;for(let o=0;o1&&u.length===1){this.previouslyFocused=r,this.list.setFocus([a]),this.list.reveal(a);return}}}else if(typeof c>"u"||HP(e,c)){this.previouslyFocused=r,this.list.setFocus([a]),this.list.reveal(a);return}}}dispose(){this.disable(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class Mbt{constructor(e,n){this.list=e,this.view=n,this.disposables=new Xe;const r=_t.chain(this.disposables.add(new Xn(n.domNode,"keydown")).event,o=>o.filter(a=>!qy(a.target)).map(a=>new yr(a)));_t.chain(r,o=>o.filter(a=>a.keyCode===2&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&!a.altKey))(this.onTab,this,this.disposables)}onTab(e){if(e.target!==this.view.domNode)return;const n=this.list.getFocus();if(n.length===0)return;const r=this.view.domElement(n[0]);if(!r)return;const s=r.querySelector("[tabIndex]");if(!s||!(s instanceof HTMLElement)||s.tabIndex===-1)return;const o=window.getComputedStyle(s);o.visibility==="hidden"||o.display==="none"||(e.preventDefault(),e.stopPropagation(),s.focus())}dispose(){this.disposables.dispose()}}function QTe(i){return ri?i.browserEvent.metaKey:i.browserEvent.ctrlKey}function JTe(i){return i.browserEvent.shiftKey}function Pbt(i){return i instanceof MouseEvent&&i.button===2}const Ume={isSelectionSingleChangeEvent:QTe,isSelectionRangeChangeEvent:JTe};class eRe{constructor(e){this.list=e,this.disposables=new Xe,this._onPointer=new _e,this.onPointer=this._onPointer.event,e.options.multipleSelectionSupport!==!1&&(this.multipleSelectionController=this.list.options.multipleSelectionController||Ume),this.mouseSupport=typeof e.options.mouseSupport>"u"||!!e.options.mouseSupport,this.mouseSupport&&(e.onMouseDown(this.onMouseDown,this,this.disposables),e.onContextMenu(this.onContextMenu,this,this.disposables),e.onMouseDblClick(this.onDoubleClick,this,this.disposables),e.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(or.addTarget(e.getHTMLElement()))),_t.any(e.onMouseClick,e.onMouseMiddleClick,e.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(e){e.multipleSelectionSupport!==void 0&&(this.multipleSelectionController=void 0,e.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||Ume))}isSelectionSingleChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(e):!1}isSelectionRangeChangeEvent(e){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(e):!1}isSelectionChangeEvent(e){return this.isSelectionSingleChangeEvent(e)||this.isSelectionRangeChangeEvent(e)}onMouseDown(e){v2(e.browserEvent.target)||document.activeElement!==e.browserEvent.target&&this.list.domFocus()}onContextMenu(e){if(qy(e.browserEvent.target)||v2(e.browserEvent.target))return;const n=typeof e.index>"u"?[]:[e.index];this.list.setFocus(n,e.browserEvent)}onViewPointer(e){if(!this.mouseSupport||qy(e.browserEvent.target)||v2(e.browserEvent.target)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const n=e.index;if(typeof n>"u"){this.list.setFocus([],e.browserEvent),this.list.setSelection([],e.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionChangeEvent(e))return this.changeSelection(e);this.list.setFocus([n],e.browserEvent),this.list.setAnchor(n),Pbt(e.browserEvent)||this.list.setSelection([n],e.browserEvent),this._onPointer.fire(e)}onDoubleClick(e){if(qy(e.browserEvent.target)||v2(e.browserEvent.target)||this.isSelectionChangeEvent(e)||e.browserEvent.isHandledByList)return;e.browserEvent.isHandledByList=!0;const n=this.list.getFocus();this.list.setSelection(n,e.browserEvent)}changeSelection(e){const n=e.index;let r=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(e)){if(typeof r>"u"){const d=this.list.getFocus()[0];r=d??n,this.list.setAnchor(r)}const s=Math.min(r,n),o=Math.max(r,n),a=Tl(s,o+1),l=this.list.getSelection(),c=Bbt(kee(l,[r]),r);if(c.length===0)return;const u=kee(a,jbt(l,c));this.list.setSelection(u,e.browserEvent),this.list.setFocus([n],e.browserEvent)}else if(this.isSelectionSingleChangeEvent(e)){const s=this.list.getSelection(),o=s.filter(a=>a!==n);this.list.setFocus([n]),this.list.setAnchor(n),s.length===o.length?this.list.setSelection([...o,n],e.browserEvent):this.list.setSelection(o,e.browserEvent)}}dispose(){this.disposables.dispose()}}class tRe{constructor(e,n){this.styleElement=e,this.selectorSuffix=n}style(e){var n,r;const s=this.selectorSuffix&&`.${this.selectorSuffix}`,o=[];e.listBackground&&o.push(`.monaco-list${s} .monaco-list-rows { background: ${e.listBackground}; }`),e.listFocusBackground&&(o.push(`.monaco-list${s}:focus .monaco-list-row.focused { background-color: ${e.listFocusBackground}; }`),o.push(`.monaco-list${s}:focus .monaco-list-row.focused:hover { background-color: ${e.listFocusBackground}; }`)),e.listFocusForeground&&o.push(`.monaco-list${s}:focus .monaco-list-row.focused { color: ${e.listFocusForeground}; }`),e.listActiveSelectionBackground&&(o.push(`.monaco-list${s}:focus .monaco-list-row.selected { background-color: ${e.listActiveSelectionBackground}; }`),o.push(`.monaco-list${s}:focus .monaco-list-row.selected:hover { background-color: ${e.listActiveSelectionBackground}; }`)),e.listActiveSelectionForeground&&o.push(`.monaco-list${s}:focus .monaco-list-row.selected { color: ${e.listActiveSelectionForeground}; }`),e.listActiveSelectionIconForeground&&o.push(`.monaco-list${s}:focus .monaco-list-row.selected .codicon { color: ${e.listActiveSelectionIconForeground}; }`),e.listFocusAndSelectionBackground&&o.push(` .monaco-drag-image, .monaco-list${s}:focus .monaco-list-row.selected.focused { background-color: ${e.listFocusAndSelectionBackground}; } `),e.listFocusAndSelectionForeground&&o.push(` .monaco-drag-image, .monaco-list${s}:focus .monaco-list-row.selected.focused { color: ${e.listFocusAndSelectionForeground}; } `),e.listInactiveFocusForeground&&(o.push(`.monaco-list${s} .monaco-list-row.focused { color: ${e.listInactiveFocusForeground}; }`),o.push(`.monaco-list${s} .monaco-list-row.focused:hover { color: ${e.listInactiveFocusForeground}; }`)),e.listInactiveSelectionIconForeground&&o.push(`.monaco-list${s} .monaco-list-row.focused .codicon { color: ${e.listInactiveSelectionIconForeground}; }`),e.listInactiveFocusBackground&&(o.push(`.monaco-list${s} .monaco-list-row.focused { background-color: ${e.listInactiveFocusBackground}; }`),o.push(`.monaco-list${s} .monaco-list-row.focused:hover { background-color: ${e.listInactiveFocusBackground}; }`)),e.listInactiveSelectionBackground&&(o.push(`.monaco-list${s} .monaco-list-row.selected { background-color: ${e.listInactiveSelectionBackground}; }`),o.push(`.monaco-list${s} .monaco-list-row.selected:hover { background-color: ${e.listInactiveSelectionBackground}; }`)),e.listInactiveSelectionForeground&&o.push(`.monaco-list${s} .monaco-list-row.selected { color: ${e.listInactiveSelectionForeground}; }`),e.listHoverBackground&&o.push(`.monaco-list${s}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: ${e.listHoverBackground}; }`),e.listHoverForeground&&o.push(`.monaco-list${s}:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused) { color: ${e.listHoverForeground}; }`);const a=MS(e.listFocusAndSelectionOutline,MS(e.listSelectionOutline,(n=e.listFocusOutline)!==null&&n!==void 0?n:""));a&&o.push(`.monaco-list${s}:focus .monaco-list-row.focused.selected { outline: 1px solid ${a}; outline-offset: -1px;}`),e.listFocusOutline&&o.push(` .monaco-drag-image, .monaco-list${s}:focus .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } .monaco-workbench.context-menu-visible .monaco-list${s}.last-focused .monaco-list-row.focused { outline: 1px solid ${e.listFocusOutline}; outline-offset: -1px; } `);const l=MS(e.listSelectionOutline,(r=e.listInactiveFocusOutline)!==null&&r!==void 0?r:"");l&&o.push(`.monaco-list${s} .monaco-list-row.focused.selected { outline: 1px dotted ${l}; outline-offset: -1px; }`),e.listSelectionOutline&&o.push(`.monaco-list${s} .monaco-list-row.selected { outline: 1px dotted ${e.listSelectionOutline}; outline-offset: -1px; }`),e.listInactiveFocusOutline&&o.push(`.monaco-list${s} .monaco-list-row.focused { outline: 1px dotted ${e.listInactiveFocusOutline}; outline-offset: -1px; }`),e.listHoverOutline&&o.push(`.monaco-list${s} .monaco-list-row:hover { outline: 1px dashed ${e.listHoverOutline}; outline-offset: -1px; }`),e.listDropBackground&&o.push(` .monaco-list${s}.drop-target, .monaco-list${s} .monaco-list-rows.drop-target, .monaco-list${s} .monaco-list-row.drop-target { background-color: ${e.listDropBackground} !important; color: inherit !important; } `),e.tableColumnsBorder&&o.push(` .monaco-table > .monaco-split-view2, .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before, .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2, .monaco-workbench:not(.reduce-motion) .monaco-table:hover > .monaco-split-view2 .monaco-sash.vertical::before { border-color: ${e.tableColumnsBorder}; } .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2, .monaco-workbench:not(.reduce-motion) .monaco-table > .monaco-split-view2 .monaco-sash.vertical::before { border-color: transparent; } `),e.tableOddRowsBackgroundColor&&o.push(` .monaco-table .monaco-list-row[data-parity=odd]:not(.focused):not(.selected):not(:hover) .monaco-table-tr, .monaco-table .monaco-list:not(:focus) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr, .monaco-table .monaco-list:not(.focused) .monaco-list-row[data-parity=odd].focused:not(.selected):not(:hover) .monaco-table-tr { background-color: ${e.tableOddRowsBackgroundColor}; } `),this.styleElement.textContent=o.join(` `)}}const Obt={listFocusBackground:"#7FB0D0",listActiveSelectionBackground:"#0E639C",listActiveSelectionForeground:"#FFFFFF",listActiveSelectionIconForeground:"#FFFFFF",listFocusAndSelectionOutline:"#90C2F9",listFocusAndSelectionBackground:"#094771",listFocusAndSelectionForeground:"#FFFFFF",listInactiveSelectionBackground:"#3F3F46",listInactiveSelectionIconForeground:"#FFFFFF",listHoverBackground:"#2A2D2E",listDropBackground:"#383B3D",treeIndentGuidesStroke:"#a9a9a9",treeInactiveIndentGuidesStroke:Te.fromHex("#a9a9a9").transparent(.4).toString(),tableColumnsBorder:Te.fromHex("#cccccc").transparent(.2).toString(),tableOddRowsBackgroundColor:Te.fromHex("#cccccc").transparent(.04).toString(),listBackground:void 0,listFocusForeground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusForeground:void 0,listInactiveFocusBackground:void 0,listHoverForeground:void 0,listFocusOutline:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listHoverOutline:void 0},Fbt={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){},dispose(){}}};function Bbt(i,e){const n=i.indexOf(e);if(n===-1)return[];const r=[];let s=n-1;for(;s>=0&&i[s]===e-(n-s);)r.push(i[s--]);for(r.reverse(),s=n;s=i.length)n.push(e[s++]);else if(s>=e.length)n.push(i[r++]);else if(i[r]===e[s]){n.push(i[r]),r++,s++;continue}else i[r]=i.length)n.push(e[s++]);else if(s>=e.length)n.push(i[r++]);else if(i[r]===e[s]){r++,s++;continue}else i[r]i-e;class Wbt{constructor(e,n){this._templateId=e,this.renderers=n}get templateId(){return this._templateId}renderTemplate(e){return this.renderers.map(n=>n.renderTemplate(e))}renderElement(e,n,r,s){let o=0;for(const a of this.renderers)a.renderElement(e,n,r[o++],s)}disposeElement(e,n,r,s){var o;let a=0;for(const l of this.renderers)(o=l.disposeElement)===null||o===void 0||o.call(l,e,n,r[a],s),a+=1}disposeTemplate(e){let n=0;for(const r of this.renderers)r.disposeTemplate(e[n++])}}class $bt{constructor(e){this.accessibilityProvider=e,this.templateId="a18n"}renderTemplate(e){return e}renderElement(e,n,r){const s=this.accessibilityProvider.getAriaLabel(e);s?r.setAttribute("aria-label",s):r.removeAttribute("aria-label");const o=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(e);typeof o=="number"?r.setAttribute("aria-level",`${o}`):r.removeAttribute("aria-level")}disposeTemplate(e){}}class zbt{constructor(e,n){this.list=e,this.dnd=n}getDragElements(e){const n=this.list.getSelectedElements();return n.indexOf(e)>-1?n:[e]}getDragURI(e){return this.dnd.getDragURI(e)}getDragLabel(e,n){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e,n)}onDragStart(e,n){var r,s;(s=(r=this.dnd).onDragStart)===null||s===void 0||s.call(r,e,n)}onDragOver(e,n,r,s){return this.dnd.onDragOver(e,n,r,s)}onDragLeave(e,n,r,s){var o,a;(a=(o=this.dnd).onDragLeave)===null||a===void 0||a.call(o,e,n,r,s)}onDragEnd(e){var n,r;(r=(n=this.dnd).onDragEnd)===null||r===void 0||r.call(n,e)}drop(e,n,r,s){this.dnd.drop(e,n,r,s)}dispose(){this.dnd.dispose()}}class Bf{get onDidChangeFocus(){return _t.map(this.eventBufferer.wrapEvent(this.focus.onChange),e=>this.toListEvent(e),this.disposables)}get onDidChangeSelection(){return _t.map(this.eventBufferer.wrapEvent(this.selection.onChange),e=>this.toListEvent(e),this.disposables)}get domId(){return this.view.domId}get onDidScroll(){return this.view.onDidScroll}get onMouseClick(){return this.view.onMouseClick}get onMouseDblClick(){return this.view.onMouseDblClick}get onMouseMiddleClick(){return this.view.onMouseMiddleClick}get onPointer(){return this.mouseController.onPointer}get onMouseDown(){return this.view.onMouseDown}get onMouseOver(){return this.view.onMouseOver}get onMouseOut(){return this.view.onMouseOut}get onTouchStart(){return this.view.onTouchStart}get onTap(){return this.view.onTap}get onContextMenu(){let e=!1;const n=_t.chain(this.disposables.add(new Xn(this.view.domNode,"keydown")).event,o=>o.map(a=>new yr(a)).filter(a=>e=a.keyCode===58||a.shiftKey&&a.keyCode===68).map(a=>Nn.stop(a,!0)).filter(()=>!1)),r=_t.chain(this.disposables.add(new Xn(this.view.domNode,"keyup")).event,o=>o.forEach(()=>e=!1).map(a=>new yr(a)).filter(a=>a.keyCode===58||a.shiftKey&&a.keyCode===68).map(a=>Nn.stop(a,!0)).map(({browserEvent:a})=>{const l=this.getFocus(),c=l.length?l[0]:void 0,u=typeof c<"u"?this.view.element(c):void 0,d=typeof c<"u"?this.view.domElement(c):this.view.domNode;return{index:c,element:u,anchor:d,browserEvent:a}})),s=_t.chain(this.view.onContextMenu,o=>o.filter(a=>!e).map(({element:a,index:l,browserEvent:c})=>({element:a,index:l,anchor:new rh(c),browserEvent:c})));return _t.any(n,r,s)}get onKeyDown(){return this.disposables.add(new Xn(this.view.domNode,"keydown")).event}get onDidFocus(){return _t.signal(this.disposables.add(new Xn(this.view.domNode,"focus",!0)).event)}constructor(e,n,r,s,o=Fbt){var a,l,c,u;this.user=e,this._options=o,this.focus=new L7("focused"),this.anchor=new L7("anchor"),this.eventBufferer=new Pse,this._ariaLabel="",this.disposables=new Xe,this._onDidDispose=new _e,this.onDidDispose=this._onDidDispose.event;const d=this._options.accessibilityProvider&&this._options.accessibilityProvider.getWidgetRole?(a=this._options.accessibilityProvider)===null||a===void 0?void 0:a.getWidgetRole():"list";this.selection=new Rbt(d!=="listbox");const h=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=o.accessibilityProvider,this.accessibilityProvider&&(h.push(new $bt(this.accessibilityProvider)),(c=(l=this.accessibilityProvider).onDidChangeActiveDescendant)===null||c===void 0||c.call(l,this.onDidChangeActiveDescendant,this,this.disposables)),s=s.map(p=>new Wbt(p.templateId,[...h,p]));const f=Object.assign(Object.assign({},o),{dnd:o.dnd&&new zbt(this,o.dnd)});if(this.view=this.createListView(n,r,s,f),this.view.domNode.setAttribute("role",d),o.styleController)this.styleController=o.styleController(this.view.domId);else{const p=_h(this.view.domNode);this.styleController=new tRe(p,this.view.domId)}if(this.spliceable=new wbt([new Gq(this.focus,this.view,o.identityProvider),new Gq(this.selection,this.view,o.identityProvider),new Gq(this.anchor,this.view,o.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.anchor),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.disposables.add(new Mbt(this,this.view)),(typeof o.keyboardSupport!="boolean"||o.keyboardSupport)&&(this.keyboardController=new ZTe(this,this.view,o),this.disposables.add(this.keyboardController)),o.keyboardNavigationLabelProvider){const p=o.keyboardNavigationDelegate||Abt;this.typeNavigationController=new Nbt(this,this.view,o.keyboardNavigationLabelProvider,(u=o.keyboardNavigationEventFilter)!==null&&u!==void 0?u:()=>!0,p),this.disposables.add(this.typeNavigationController)}this.mouseController=this.createMouseController(o),this.disposables.add(this.mouseController),this.onDidChangeFocus(this._onFocusChange,this,this.disposables),this.onDidChangeSelection(this._onSelectionChange,this,this.disposables),this.accessibilityProvider&&(this.ariaLabel=this.accessibilityProvider.getWidgetAriaLabel()),this._options.multipleSelectionSupport!==!1&&this.view.domNode.setAttribute("aria-multiselectable","true")}createListView(e,n,r,s){return new kh(e,n,r,s)}createMouseController(e){return new eRe(this)}updateOptions(e={}){var n,r;this._options=Object.assign(Object.assign({},this._options),e),(n=this.typeNavigationController)===null||n===void 0||n.updateOptions(this._options),this._options.multipleSelectionController!==void 0&&(this._options.multipleSelectionSupport?this.view.domNode.setAttribute("aria-multiselectable","true"):this.view.domNode.removeAttribute("aria-multiselectable")),this.mouseController.updateOptions(e),(r=this.keyboardController)===null||r===void 0||r.updateOptions(e),this.view.updateOptions(e)}get options(){return this._options}splice(e,n,r=[]){if(e<0||e>this.view.length)throw new rD(this.user,`Invalid start index: ${e}`);if(n<0)throw new rD(this.user,`Invalid delete count: ${n}`);n===0&&r.length===0||this.eventBufferer.bufferEvents(()=>this.spliceable.splice(e,n,r))}rerender(){this.view.rerender()}element(e){return this.view.element(e)}get length(){return this.view.length}get contentHeight(){return this.view.contentHeight}get scrollTop(){return this.view.getScrollTop()}set scrollTop(e){this.view.setScrollTop(e)}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get firstVisibleIndex(){return this.view.firstVisibleIndex}get ariaLabel(){return this._ariaLabel}set ariaLabel(e){this._ariaLabel=e,this.view.domNode.setAttribute("aria-label",e)}domFocus(){this.view.domNode.focus({preventScroll:!0})}layout(e,n){this.view.layout(e,n)}setSelection(e,n){for(const r of e)if(r<0||r>=this.length)throw new rD(this.user,`Invalid index ${r}`);this.selection.set(e,n)}getSelection(){return this.selection.get()}getSelectedElements(){return this.getSelection().map(e=>this.view.element(e))}setAnchor(e){if(typeof e>"u"){this.anchor.set([]);return}if(e<0||e>=this.length)throw new rD(this.user,`Invalid index ${e}`);this.anchor.set([e])}getAnchor(){return g2e(this.anchor.get(),void 0)}getAnchorElement(){const e=this.getAnchor();return typeof e>"u"?void 0:this.element(e)}setFocus(e,n){for(const r of e)if(r<0||r>=this.length)throw new rD(this.user,`Invalid index ${r}`);this.focus.set(e,n)}focusNext(e=1,n=!1,r,s){if(this.length===0)return;const o=this.focus.get(),a=this.findNextIndex(o.length>0?o[0]+e:0,n,s);a>-1&&this.setFocus([a],r)}focusPrevious(e=1,n=!1,r,s){if(this.length===0)return;const o=this.focus.get(),a=this.findPreviousIndex(o.length>0?o[0]-e:0,n,s);a>-1&&this.setFocus([a],r)}focusNextPage(e,n){return Hme(this,void 0,void 0,function*(){let r=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);r=r===0?0:r-1;const s=this.getFocus()[0];if(s!==r&&(s===void 0||r>s)){const o=this.findPreviousIndex(r,!1,n);o>-1&&s!==o?this.setFocus([o],e):this.setFocus([r],e)}else{const o=this.view.getScrollTop();let a=o+this.view.renderHeight;r>s&&(a-=this.view.elementHeight(r)),this.view.setScrollTop(a),this.view.getScrollTop()!==o&&(this.setFocus([]),yield p1(0),yield this.focusNextPage(e,n))}})}focusPreviousPage(e,n){return Hme(this,void 0,void 0,function*(){let r;const s=this.view.getScrollTop();s===0?r=this.view.indexAt(s):r=this.view.indexAfter(s-1);const o=this.getFocus()[0];if(o!==r&&(o===void 0||o>=r)){const a=this.findNextIndex(r,!1,n);a>-1&&o!==a?this.setFocus([a],e):this.setFocus([r],e)}else{const a=s;this.view.setScrollTop(s-this.view.renderHeight),this.view.getScrollTop()!==a&&(this.setFocus([]),yield p1(0),yield this.focusPreviousPage(e,n))}})}focusLast(e,n){if(this.length===0)return;const r=this.findPreviousIndex(this.length-1,!1,n);r>-1&&this.setFocus([r],e)}focusFirst(e,n){this.focusNth(0,e,n)}focusNth(e,n,r){if(this.length===0)return;const s=this.findNextIndex(e,!1,r);s>-1&&this.setFocus([s],n)}findNextIndex(e,n=!1,r){for(let s=0;s=this.length&&!n)return-1;if(e=e%this.length,!r||r(this.element(e)))return e;e++}return-1}findPreviousIndex(e,n=!1,r){for(let s=0;sthis.view.element(e))}reveal(e,n){if(e<0||e>=this.length)throw new rD(this.user,`Invalid index ${e}`);const r=this.view.getScrollTop(),s=this.view.elementTop(e),o=this.view.elementHeight(e);if(c1(n)){const a=o-this.view.renderHeight;this.view.setScrollTop(a*Kc(n,0,1)+s)}else{const a=s+o,l=r+this.view.renderHeight;s=l||(s=l&&o>=this.view.renderHeight?this.view.setScrollTop(s):a>=l&&this.view.setScrollTop(a-this.view.renderHeight))}}getHTMLElement(){return this.view.domNode}getElementID(e){return this.view.getElementDomId(e)}style(e){this.styleController.style(e)}toListEvent({indexes:e,browserEvent:n}){return{indexes:e,elements:e.map(r=>this.view.element(r)),browserEvent:n}}_onFocusChange(){const e=this.focus.get();this.view.domNode.classList.toggle("element-focused",e.length>0),this.onDidChangeActiveDescendant()}onDidChangeActiveDescendant(){var e;const n=this.focus.get();if(n.length>0){let r;!((e=this.accessibilityProvider)===null||e===void 0)&&e.getActiveDescendantId&&(r=this.accessibilityProvider.getActiveDescendantId(this.view.element(n[0]))),this.view.domNode.setAttribute("aria-activedescendant",r||this.view.getElementDomId(n[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")}_onSelectionChange(){const e=this.selection.get();this.view.domNode.classList.toggle("selection-none",e.length===0),this.view.domNode.classList.toggle("selection-single",e.length===1),this.view.domNode.classList.toggle("selection-multiple",e.length>1)}dispose(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidDispose.dispose()}}ek([Ms],Bf.prototype,"onDidChangeFocus",null);ek([Ms],Bf.prototype,"onDidChangeSelection",null);ek([Ms],Bf.prototype,"onContextMenu",null);ek([Ms],Bf.prototype,"onKeyDown",null);ek([Ms],Bf.prototype,"onDidFocus",null);const wS=tt,nRe="selectOption.entry.template";class Vbt{get templateId(){return nRe}renderTemplate(e){const n=Object.create(null);return n.root=e,n.text=He(e,wS(".option-text")),n.detail=He(e,wS(".option-detail")),n.decoratorRight=He(e,wS(".option-decorator-right")),n}renderElement(e,n,r){const s=r,o=e.text,a=e.detail,l=e.decoratorRight,c=e.isDisabled;s.text.textContent=o,s.detail.textContent=a||"",s.decoratorRight.innerText=l||"",c?s.root.classList.add("option-disabled"):s.root.classList.remove("option-disabled")}disposeTemplate(e){}}class gm extends Le{constructor(e,n,r,s,o){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=s,this.selectBoxOptions=o||Object.create(null),typeof this.selectBoxOptions.minBottomMargin!="number"?this.selectBoxOptions.minBottomMargin=gm.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box monaco-select-box-dropdown-padding",typeof this.selectBoxOptions.ariaLabel=="string"&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),typeof this.selectBoxOptions.ariaDescription=="string"&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new _e,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(r),this.selected=n||0,e&&this.setOptions(e,n),this.initStyleSheet()}getHeight(){return 22}getTemplateId(){return nRe}constructSelectDropDown(e){this.contextViewProvider=e,this.selectDropDownContainer=tt(".monaco-select-box-dropdown-container"),this.selectDropDownContainer.classList.add("monaco-select-box-dropdown-padding"),this.selectionDetailsPane=He(this.selectDropDownContainer,wS(".select-box-details-pane"));const n=He(this.selectDropDownContainer,wS(".select-box-dropdown-container-width-control")),r=He(n,wS(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",He(r,this.widthControlElement),this._dropDownPosition=0,this.styleElement=_h(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register(Be(this.selectDropDownContainer,ht.DRAG_START,s=>{Nn.stop(s,!0)}))}registerListeners(){this._register(As(this.selectElement,"change",n=>{this.selected=n.target.selectedIndex,this._onDidSelect.fire({index:n.target.selectedIndex,selected:n.target.value}),this.options[this.selected]&&this.options[this.selected].text&&(this.selectElement.title=this.options[this.selected].text)})),this._register(Be(this.selectElement,ht.CLICK,n=>{Nn.stop(n),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(Be(this.selectElement,ht.MOUSE_DOWN,n=>{Nn.stop(n)}));let e;this._register(Be(this.selectElement,"touchstart",n=>{e=this._isVisible})),this._register(Be(this.selectElement,"touchend",n=>{Nn.stop(n),e?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register(Be(this.selectElement,ht.KEY_DOWN,n=>{const r=new yr(n);let s=!1;ri?(r.keyCode===18||r.keyCode===16||r.keyCode===10||r.keyCode===3)&&(s=!0):(r.keyCode===18&&r.altKey||r.keyCode===16&&r.altKey||r.keyCode===10||r.keyCode===3)&&(s=!0),s&&(this.showSelectDropDown(),Nn.stop(n,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,n){ys(this.options,e)||(this.options=e,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((r,s)=>{this.selectElement.add(this.createOption(r.text,s,r.isDisabled)),typeof r.description=="string"&&(this._hasDetails=!0)})),n!==void 0&&(this.select(n),this._currentSelection=this.selected)}setOptionsList(){var e;(e=this.selectList)===null||e===void 0||e.splice(0,this.selectList.length,this.options)}select(e){e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&(this.selectElement.title=this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(e){this.selectElement.tabIndex=e?0:-1}render(e){this.container=e,e.classList.add("select-container"),e.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){const e=[];this.styles.listFocusBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(e.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),e.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1.6px dotted ${this.styles.listFocusOutline} !important; outline-offset: -1.6px !important; }`),this.styles.listHoverOutline&&e.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1.6px dashed ${this.styles.listHoverOutline} !important; outline-offset: -1.6px !important; }`),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),e.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=e.join(` `)}styleSelectElement(){var e,n,r;const s=(e=this.styles.selectBackground)!==null&&e!==void 0?e:"",o=(n=this.styles.selectForeground)!==null&&n!==void 0?n:"",a=(r=this.styles.selectBorder)!==null&&r!==void 0?r:"";this.selectElement.style.backgroundColor=s,this.selectElement.style.color=o,this.selectElement.style.borderColor=a}styleList(){var e,n;const r=(e=this.styles.selectBackground)!==null&&e!==void 0?e:"",s=MS(this.styles.selectListBackground,r);this.selectDropDownListContainer.style.backgroundColor=s,this.selectionDetailsPane.style.backgroundColor=s;const o=(n=this.styles.focusBorder)!==null&&n!==void 0?n:"";this.selectDropDownContainer.style.outlineColor=o,this.selectDropDownContainer.style.outlineOffset="-1px",this.selectList.style(this.styles)}createOption(e,n,r){const s=document.createElement("option");return s.value=e,s.text=e,s.disabled=!!r,s}showSelectDropDown(){this.selectionDetailsPane.innerText="",!(!this.contextViewProvider||this._isVisible)&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:e=>this.renderSelectDropDown(e),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible"),this.selectElement.classList.remove("synthetic-focus")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(e){!this.contextViewProvider||!this._isVisible||(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),e&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(e,n){return e.appendChild(this.selectDropDownContainer),this.layoutSelectDropDown(n),{dispose:()=>{try{e.removeChild(this.selectDropDownContainer)}catch{}}}}measureMaxDetailsHeight(){let e=0;return this.options.forEach((n,r)=>{this.updateDetail(r),this.selectionDetailsPane.offsetHeight>e&&(e=this.selectionDetailsPane.offsetHeight)}),e}layoutSelectDropDown(e){if(this._skipLayout)return!1;if(this.selectList){this.selectDropDownContainer.classList.add("visible");const n=no(this.selectElement),r=getComputedStyle(this.selectElement),s=parseFloat(r.getPropertyValue("--dropdown-padding-top"))+parseFloat(r.getPropertyValue("--dropdown-padding-bottom")),o=window.innerHeight-n.top-n.height-(this.selectBoxOptions.minBottomMargin||0),a=n.top-gm.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,l=this.selectElement.offsetWidth,c=this.setWidthControlElement(this.widthControlElement),u=Math.max(c,Math.round(l)).toString()+"px";this.selectDropDownContainer.style.width=u,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let d=this.selectList.contentHeight;this._hasDetails&&this._cachedMaxDetailsHeight===void 0&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());const h=this._hasDetails?this._cachedMaxDetailsHeight:0,f=d+s+h,p=Math.floor((o-s-h)/this.getHeight()),g=Math.floor((a-s-h)/this.getHeight());if(e)return n.top+n.height>window.innerHeight-22||n.topp&&this.options.length>p?(this._dropDownPosition=1,this.selectDropDownContainer.removeChild(this.selectDropDownListContainer),this.selectDropDownContainer.removeChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownContainer.removeChild(this.selectDropDownListContainer),this.selectDropDownContainer.removeChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(n.top+n.height>window.innerHeight-22||n.topo&&(d=p*this.getHeight())}else f>a&&(d=g*this.getHeight());return this.selectList.layout(d),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=d+s+"px",this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=d+s+"px",this.updateDetail(this.selected),this.selectDropDownContainer.style.width=u,this.selectDropDownListContainer.setAttribute("tabindex","0"),this.selectElement.classList.add("synthetic-focus"),this.selectDropDownContainer.classList.add("synthetic-focus"),!0}else return!1}setWidthControlElement(e){let n=0;if(e){let r=0,s=0;this.options.forEach((o,a)=>{const l=o.detail?o.detail.length:0,c=o.decoratorRight?o.decoratorRight.length:0,u=o.text.length+l+c;u>s&&(r=a,s=u)}),e.textContent=this.options[r].text+(this.options[r].decoratorRight?this.options[r].decoratorRight+" ":""),n=dc(e)}return n}createSelectList(e){if(this.selectList)return;this.selectDropDownListContainer=He(e,wS(".select-box-dropdown-list-container")),this.listRenderer=new Vbt,this.selectList=new Bf("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:s=>{let o=s.text;return s.detail&&(o+=`. ${s.detail}`),s.decoratorRight&&(o+=`. ${s.decoratorRight}`),s.description&&(o+=`. ${s.description}`),o},getWidgetAriaLabel:()=>L({},"Select Box"),getRole:()=>ri?"":"option",getWidgetRole:()=>"listbox"}}),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);const n=this._register(new Xn(this.selectDropDownListContainer,"keydown")),r=_t.chain(n.event,s=>s.filter(()=>this.selectList.length>0).map(o=>new yr(o)));this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===3))(this.onEnter,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===2))(this.onEnter,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===9))(this.onEscape,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===16))(this.onUpArrow,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===18))(this.onDownArrow,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===12))(this.onPageDown,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===11))(this.onPageUp,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===14))(this.onHome,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode===13))(this.onEnd,this)),this._register(_t.chain(r,s=>s.filter(o=>o.keyCode>=21&&o.keyCode<=56||o.keyCode>=85&&o.keyCode<=113))(this.onCharacter,this)),this._register(Be(this.selectList.getHTMLElement(),ht.POINTER_UP,s=>this.onPointerUp(s))),this._register(this.selectList.onMouseOver(s=>typeof s.index<"u"&&this.selectList.setFocus([s.index]))),this._register(this.selectList.onDidChangeFocus(s=>this.onListFocus(s))),this._register(Be(this.selectDropDownContainer,ht.FOCUS_OUT,s=>{!this._isVisible||Ia(s.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(e){if(!this.selectList.length)return;Nn.stop(e);const n=e.target;if(!n||n.classList.contains("slider"))return;const r=n.closest(".monaco-list-row");if(!r)return;const s=Number(r.getAttribute("data-index")),o=r.classList.contains("option-disabled");s>=0&&s{for(let a=0;athis.selected+2)this.selected+=2;else{if(n)return;this.selected++}this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0])}}onUpArrow(e){this.selected>0&&(Nn.stop(e,!0),this.options[this.selected-1].isDisabled&&this.selected>1?this.selected-=2:this.selected--,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}onPageUp(e){Nn.stop(e),this.selectList.focusPreviousPage(),setTimeout(()=>{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected{this.selected=this.selectList.getFocus()[0],this.options[this.selected].isDisabled&&this.selected>0&&(this.selected--,this.selectList.setFocus([this.selected])),this.selectList.reveal(this.selected),this.select(this.selected)},1)}onHome(e){Nn.stop(e),!(this.options.length<2)&&(this.selected=0,this.options[this.selected].isDisabled&&this.selected>1&&this.selected++,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(e){Nn.stop(e),!(this.options.length<2)&&(this.selected=this.options.length-1,this.options[this.selected].isDisabled&&this.selected>1&&this.selected--,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(e){const n=W0.toString(e.keyCode);let r=-1;for(let s=0;s{this._register(Be(this.selectElement,e,n=>{this.selectElement.focus()}))}),this._register(As(this.selectElement,"click",e=>{Nn.stop(e,!0)})),this._register(As(this.selectElement,"change",e=>{this.selectElement.title=e.target.value,this._onDidSelect.fire({index:e.target.selectedIndex,selected:e.target.value})})),this._register(As(this.selectElement,"keydown",e=>{let n=!1;ri?(e.keyCode===18||e.keyCode===16||e.keyCode===10)&&(n=!0):(e.keyCode===18&&e.altKey||e.keyCode===10||e.keyCode===3)&&(n=!0),n&&e.stopPropagation()}))}get onDidSelect(){return this._onDidSelect.event}setOptions(e,n){(!this.options||!ys(this.options,e))&&(this.options=e,this.selectElement.options.length=0,this.options.forEach((r,s)=>{this.selectElement.add(this.createOption(r.text,s,r.isDisabled))})),n!==void 0&&this.select(n)}select(e){this.options.length===0?this.selected=0:e>=0&&ethis.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.selected{this.element&&this.handleActionChangeEvent(s)}))}handleActionChangeEvent(e){e.enabled!==void 0&&this.updateEnabled(),e.checked!==void 0&&this.updateChecked(),e.class!==void 0&&this.updateClass(),e.label!==void 0&&(this.updateLabel(),this.updateTooltip()),e.tooltip!==void 0&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new AE)),this._actionRunner}set actionRunner(e){this._actionRunner=e}isEnabled(){return this._action.enabled}setActionContext(e){this._context=e}render(e){const n=this.element=e;this._register(or.addTarget(e));const r=this.options&&this.options.draggable;r&&(e.draggable=!0,gh&&this._register(Be(e,ht.DRAG_START,s=>{var o;return(o=s.dataTransfer)===null||o===void 0?void 0:o.setData(VP.TEXT,this._action.label)}))),this._register(Be(n,lr.Tap,s=>this.onClick(s,!0))),this._register(Be(n,ht.MOUSE_DOWN,s=>{r||Nn.stop(s,!0),this._action.enabled&&s.button===0&&n.classList.add("active")})),ri&&this._register(Be(n,ht.CONTEXT_MENU,s=>{s.button===0&&s.ctrlKey===!0&&this.onClick(s)})),this._register(Be(n,ht.CLICK,s=>{Nn.stop(s,!0),this.options&&this.options.isMenu||this.onClick(s)})),this._register(Be(n,ht.DBLCLICK,s=>{Nn.stop(s,!0)})),[ht.MOUSE_UP,ht.MOUSE_OUT].forEach(s=>{this._register(Be(n,s,o=>{Nn.stop(o),n.classList.remove("active")}))})}onClick(e,n=!1){var r;Nn.stop(e,!0);const s=Hu(this._context)?!((r=this.options)===null||r===void 0)&&r.useEventAsContext?e:{preserveFocus:n}:this._context;this.actionRunner.run(this._action,s)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(e){this.element&&(this.element.tabIndex=e?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getTooltip(){return this.action.tooltip}updateTooltip(){var e;if(!this.element)return;const n=(e=this.getTooltip())!==null&&e!==void 0?e:"";this.updateAriaLabel(),this.options.hoverDelegate?(this.element.title="",this.customHover?this.customHover.update(n):(this.customHover=GTe(this.options.hoverDelegate,this.element,n),this._store.add(this.customHover))):this.element.title=n}updateAriaLabel(){var e;if(this.element){const n=(e=this.getTooltip())!==null&&e!==void 0?e:"";this.element.setAttribute("aria-label",n)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class ZE extends xp{constructor(e,n,r){super(e,n,r),this.options=r,this.options.icon=r.icon!==void 0?r.icon:!1,this.options.label=r.label!==void 0?r.label:!0,this.cssClass=""}render(e){super.render(e),this.element&&(this.label=He(this.element,tt("a.action-label"))),this.label&&this.label.setAttribute("role",this.getDefaultAriaRole()),this.options.label&&this.options.keybinding&&this.element&&(He(this.element,tt("span.keybinding")).textContent=this.options.keybinding),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===Vo.ID?"presentation":this.options.isMenu?"menuitem":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(e){this.label&&(this.label.tabIndex=e?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:!this.options.label&&this.action.label&&this.options.icon&&(e=this.action.label,this.options.keybinding&&(e=L({},"{0} ({1})",e,this.options.keybinding))),e??void 0}updateClass(){var e;this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.action.class,this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):(e=this.label)===null||e===void 0||e.classList.remove("codicon")}updateEnabled(){var e,n;this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),(e=this.element)===null||e===void 0||e.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),(n=this.element)===null||n===void 0||n.classList.add("disabled"))}updateAriaLabel(){var e;if(this.label){const n=(e=this.getTooltip())!==null&&e!==void 0?e:"";this.label.setAttribute("aria-label",n)}}updateChecked(){this.label&&(this.action.checked!==void 0?(this.label.classList.toggle("checked",this.action.checked),this.label.setAttribute("aria-checked",this.action.checked?"true":"false"),this.label.setAttribute("role","checkbox")):(this.label.classList.remove("checked"),this.label.setAttribute("aria-checked",""),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class qbt extends xp{constructor(e,n,r,s,o,a,l){super(e,n),this.selectBox=new Ubt(r,s,o,a,l),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(e){this.selectBox.select(e)}registerListeners(){this._register(this.selectBox.onDidSelect(e=>this.runAction(e.selected,e.index)))}runAction(e,n){this.actionRunner.run(this._action,this.getActionContext(e,n))}getActionContext(e,n){return e}setFocusable(e){this.selectBox.setFocusable(e)}focus(){var e;(e=this.selectBox)===null||e===void 0||e.focus()}blur(){var e;(e=this.selectBox)===null||e===void 0||e.blur()}render(e){this.selectBox.render(e)}}class Kbt extends AE{constructor(e,n){super(),this._onDidChangeVisibility=this._register(new _e),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=He(e,tt(".monaco-dropdown")),this._label=He(this._element,tt(".dropdown-label"));let r=n.labelRenderer;r||(r=o=>(o.textContent=n.label||"",null));for(const o of[ht.CLICK,ht.MOUSE_DOWN,lr.Tap])this._register(Be(this.element,o,a=>Nn.stop(a,!0)));for(const o of[ht.MOUSE_DOWN,lr.Tap])this._register(Be(this._label,o,a=>{a instanceof MouseEvent&&(a.detail>1||a.button!==0)||(this.visible?this.hide():this.show())}));this._register(Be(this._label,ht.KEY_UP,o=>{const a=new yr(o);(a.equals(3)||a.equals(10))&&(Nn.stop(o,!0),this.visible?this.hide():this.show())}));const s=r(this._label);s&&this._register(s),this._register(or.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&(this.boxContainer.remove(),this.boxContainer=void 0),this.contents&&(this.contents.remove(),this.contents=void 0),this._label&&(this._label.remove(),this._label=void 0)}}class Gbt extends Kbt{constructor(e,n){super(e,n),this._options=n,this._actions=[],this.actions=n.actions||[]}set menuOptions(e){this._menuOptions=e}get menuOptions(){return this._menuOptions}get actions(){return this._options.actionProvider?this._options.actionProvider.getActions():this._actions}set actions(e){this._actions=e}show(){super.show(),this.element.classList.add("active"),this._options.contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:(e,n)=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(e,n):void 0,getKeyBinding:e=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(e):void 0,getMenuClassName:()=>this._options.menuClassName||"",onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this._options.menuAsChild?this.element:void 0,skipTelemetry:this._options.skipTelemetry})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove("active")}}class D7 extends xp{constructor(e,n,r,s=Object.create(null)){super(null,e,s),this.actionItem=null,this._onDidChangeVisibility=this._register(new _e),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this.menuActionsOrProvider=n,this.contextMenuProvider=r,this.options=s,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(e){this.actionItem=e;const n=o=>{this.element=He(o,tt("a.action-label"));let a=[];return typeof this.options.classNames=="string"?a=this.options.classNames.split(/\s+/g).filter(l=>!!l):this.options.classNames&&(a=this.options.classNames),a.find(l=>l==="icon")||a.push("codicon"),this.element.classList.add(...a),this.element.setAttribute("role","button"),this.element.setAttribute("aria-haspopup","true"),this.element.setAttribute("aria-expanded","false"),this.element.title=this._action.label||"",this.element.ariaLabel=this._action.label||"",null},r=Array.isArray(this.menuActionsOrProvider),s={contextMenuProvider:this.contextMenuProvider,labelRenderer:n,menuAsChild:this.options.menuAsChild,actions:r?this.menuActionsOrProvider:void 0,actionProvider:r?void 0:this.menuActionsOrProvider,skipTelemetry:this.options.skipTelemetry};if(this.dropdownMenu=this._register(new Gbt(e,s)),this._register(this.dropdownMenu.onDidChangeVisibility(o=>{var a;(a=this.element)===null||a===void 0||a.setAttribute("aria-expanded",`${o}`),this._onDidChangeVisibility.fire(o)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){const o=this;this.dropdownMenu.menuOptions=Object.assign(Object.assign({},this.dropdownMenu.menuOptions),{get anchorAlignment(){return o.options.anchorAlignmentProvider()}})}this.updateTooltip(),this.updateEnabled()}getTooltip(){let e=null;return this.action.tooltip?e=this.action.tooltip:this.action.label&&(e=this.action.label),e??void 0}setActionContext(e){super.setActionContext(e),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=e:this.dropdownMenu.menuOptions={context:e})}show(){var e;(e=this.dropdownMenu)===null||e===void 0||e.show()}updateEnabled(){var e,n;const r=!this.action.enabled;(e=this.actionItem)===null||e===void 0||e.classList.toggle("disabled",r),(n=this.element)===null||n===void 0||n.classList.toggle("disabled",r)}}function Xbt(i){return i?i.condition!==void 0:!1}var yN=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},tE;(function(i){i[i.STORAGE_DOES_NOT_EXIST=0]="STORAGE_DOES_NOT_EXIST",i[i.STORAGE_IN_MEMORY=1]="STORAGE_IN_MEMORY"})(tE||(tE={}));var y2;(function(i){i[i.None=0]="None",i[i.Initialized=1]="Initialized",i[i.Closed=2]="Closed"})(y2||(y2={}));class nE extends Le{constructor(e,n=Object.create(null)){super(),this.database=e,this.options=n,this._onDidChangeStorage=this._register(new sx),this.onDidChangeStorage=this._onDidChangeStorage.event,this.state=y2.None,this.cache=new Map,this.flushDelayer=this._register(new AEe(nE.DEFAULT_FLUSH_DELAY)),this.pendingDeletes=new Set,this.pendingInserts=new Map,this.whenFlushedCallbacks=[],this.registerListeners()}registerListeners(){this._register(this.database.onDidChangeItemsExternal(e=>this.onDidChangeItemsExternal(e)))}onDidChangeItemsExternal(e){var n,r;this._onDidChangeStorage.pause();try{(n=e.changed)===null||n===void 0||n.forEach((s,o)=>this.acceptExternal(o,s)),(r=e.deleted)===null||r===void 0||r.forEach(s=>this.acceptExternal(s,void 0))}finally{this._onDidChangeStorage.resume()}}acceptExternal(e,n){if(this.state===y2.Closed)return;let r=!1;Hu(n)?r=this.cache.delete(e):this.cache.get(e)!==n&&(this.cache.set(e,n),r=!0),r&&this._onDidChangeStorage.fire({key:e,external:!0})}get(e,n){const r=this.cache.get(e);return Hu(r)?n:r}getBoolean(e,n){const r=this.get(e);return Hu(r)?n:r==="true"}getNumber(e,n){const r=this.get(e);return Hu(r)?n:parseInt(r,10)}set(e,n,r=!1){return yN(this,void 0,void 0,function*(){if(this.state===y2.Closed)return;if(Hu(n))return this.delete(e,r);const s=Bl(n)||Array.isArray(n)?nbt(n):String(n);if(this.cache.get(e)!==s)return this.cache.set(e,s),this.pendingInserts.set(e,s),this.pendingDeletes.delete(e),this._onDidChangeStorage.fire({key:e,external:r}),this.doFlush()})}delete(e,n=!1){return yN(this,void 0,void 0,function*(){if(!(this.state===y2.Closed||!this.cache.delete(e)))return this.pendingDeletes.has(e)||this.pendingDeletes.add(e),this.pendingInserts.delete(e),this._onDidChangeStorage.fire({key:e,external:n}),this.doFlush()})}get hasPending(){return this.pendingInserts.size>0||this.pendingDeletes.size>0}flushPending(){return yN(this,void 0,void 0,function*(){if(!this.hasPending)return;const e={insert:this.pendingInserts,delete:this.pendingDeletes};return this.pendingDeletes=new Set,this.pendingInserts=new Map,this.database.updateItems(e).finally(()=>{var n;if(!this.hasPending)for(;this.whenFlushedCallbacks.length;)(n=this.whenFlushedCallbacks.pop())===null||n===void 0||n()})})}doFlush(e){return yN(this,void 0,void 0,function*(){return this.options.hint===tE.STORAGE_IN_MEMORY?this.flushPending():this.flushDelayer.trigger(()=>this.flushPending(),e)})}}nE.DEFAULT_FLUSH_DELAY=100;class Xq{constructor(){this.onDidChangeItemsExternal=_t.None,this.items=new Map}updateItems(e){var n,r;return yN(this,void 0,void 0,function*(){(n=e.insert)===null||n===void 0||n.forEach((s,o)=>this.items.set(o,s)),(r=e.delete)===null||r===void 0||r.forEach(s=>this.items.delete(s))})}}const C8="__$__targetStorageMarker",jf=qn("storageService");var E7;(function(i){i[i.NONE=0]="NONE",i[i.SHUTDOWN=1]="SHUTDOWN"})(E7||(E7={}));function Ybt(i){const e=i.get(C8);if(e)try{return JSON.parse(e)}catch{}return Object.create(null)}class U$ extends Le{constructor(e={flushInterval:U$.DEFAULT_FLUSH_INTERVAL}){super(),this.options=e,this._onDidChangeValue=this._register(new sx),this._onDidChangeTarget=this._register(new sx),this._onWillSaveState=this._register(new _e),this.onWillSaveState=this._onWillSaveState.event,this._workspaceKeyTargets=void 0,this._profileKeyTargets=void 0,this._applicationKeyTargets=void 0}onDidChangeValue(e,n,r){return _t.filter(this._onDidChangeValue.event,s=>s.scope===e&&(n===void 0||s.key===n),r)}emitDidChangeValue(e,n){const{key:r,external:s}=n;if(r===C8){switch(e){case-1:this._applicationKeyTargets=void 0;break;case 0:this._profileKeyTargets=void 0;break;case 1:this._workspaceKeyTargets=void 0;break}this._onDidChangeTarget.fire({scope:e})}else this._onDidChangeValue.fire({scope:e,key:r,target:this.getKeyTargets(e)[r],external:s})}get(e,n,r){var s;return(s=this.getStorage(n))===null||s===void 0?void 0:s.get(e,r)}getBoolean(e,n,r){var s;return(s=this.getStorage(n))===null||s===void 0?void 0:s.getBoolean(e,r)}getNumber(e,n,r){var s;return(s=this.getStorage(n))===null||s===void 0?void 0:s.getNumber(e,r)}store(e,n,r,s,o=!1){if(Hu(n)){this.remove(e,r,o);return}this.withPausedEmitters(()=>{var a;this.updateKeyTarget(e,r,s),(a=this.getStorage(r))===null||a===void 0||a.set(e,n,o)})}remove(e,n,r=!1){this.withPausedEmitters(()=>{var s;this.updateKeyTarget(e,n,void 0),(s=this.getStorage(n))===null||s===void 0||s.delete(e,r)})}withPausedEmitters(e){this._onDidChangeValue.pause(),this._onDidChangeTarget.pause();try{e()}finally{this._onDidChangeValue.resume(),this._onDidChangeTarget.resume()}}updateKeyTarget(e,n,r,s=!1){var o,a;const l=this.getKeyTargets(n);typeof r=="number"?l[e]!==r&&(l[e]=r,(o=this.getStorage(n))===null||o===void 0||o.set(C8,JSON.stringify(l),s)):typeof l[e]=="number"&&(delete l[e],(a=this.getStorage(n))===null||a===void 0||a.set(C8,JSON.stringify(l),s))}get workspaceKeyTargets(){return this._workspaceKeyTargets||(this._workspaceKeyTargets=this.loadKeyTargets(1)),this._workspaceKeyTargets}get profileKeyTargets(){return this._profileKeyTargets||(this._profileKeyTargets=this.loadKeyTargets(0)),this._profileKeyTargets}get applicationKeyTargets(){return this._applicationKeyTargets||(this._applicationKeyTargets=this.loadKeyTargets(-1)),this._applicationKeyTargets}getKeyTargets(e){switch(e){case-1:return this.applicationKeyTargets;case 0:return this.profileKeyTargets;default:return this.workspaceKeyTargets}}loadKeyTargets(e){const n=this.getStorage(e);return n?Ybt(n):Object.create(null)}}U$.DEFAULT_FLUSH_INTERVAL=60*1e3;class Zbt extends U${constructor(){super(),this.applicationStorage=this._register(new nE(new Xq,{hint:tE.STORAGE_IN_MEMORY})),this.profileStorage=this._register(new nE(new Xq,{hint:tE.STORAGE_IN_MEMORY})),this.workspaceStorage=this._register(new nE(new Xq,{hint:tE.STORAGE_IN_MEMORY})),this._register(this.workspaceStorage.onDidChangeStorage(e=>this.emitDidChangeValue(1,e))),this._register(this.profileStorage.onDidChangeStorage(e=>this.emitDidChangeValue(0,e))),this._register(this.applicationStorage.onDidChangeStorage(e=>this.emitDidChangeValue(-1,e)))}getStorage(e){switch(e){case-1:return this.applicationStorage;case 0:return this.profileStorage;default:return this.workspaceStorage}}}function Qbt(i,e){const n=Object.assign({},e);for(const r in i){const s=i[r];n[r]=s!==void 0?wt(s):void 0}return n}const Jbt={keybindingLabelBackground:wt(Pdt),keybindingLabelForeground:wt(Odt),keybindingLabelBorder:wt(Fdt),keybindingLabelBottomBorder:wt(Bdt),keybindingLabelShadow:wt(bm)},eyt={buttonForeground:wt(aN),buttonSeparator:wt(wdt),buttonBackground:wt(lN),buttonHoverBackground:wt(Cdt),buttonSecondaryForeground:wt(xdt),buttonSecondaryBackground:wt(DJ),buttonSecondaryHoverBackground:wt(kdt),buttonBorder:wt(Sdt)},tyt={progressBarBackground:wt(Edt)},I7={inputActiveOptionBorder:wt(goe),inputActiveOptionForeground:wt(moe),inputActiveOptionBackground:wt(mS)};wt(_ht),wt(bht),wt(vht);wt(cs),wt(Cm),wt(bm),wt(Jn),wt(Pht),wt(Oht),wt(Fht),wt(udt);const T7={inputBackground:wt(uIe),inputForeground:wt(dIe),inputBorder:wt(hIe),inputValidationInfoBorder:wt(fdt),inputValidationInfoBackground:wt(ddt),inputValidationInfoForeground:wt(hdt),inputValidationWarningBorder:wt(mdt),inputValidationWarningBackground:wt(pdt),inputValidationWarningForeground:wt(gdt),inputValidationErrorBorder:wt(bdt),inputValidationErrorBackground:wt(_dt),inputValidationErrorForeground:wt(vdt)},nyt={listFilterWidgetBackground:wt(uht),listFilterWidgetOutline:wt(dht),listFilterWidgetNoMatchesOutline:wt(hht),listFilterWidgetShadow:wt(fht),inputBoxStyles:T7,toggleStyles:I7},iRe={badgeBackground:wt(f8),badgeForeground:wt(Ldt),badgeBorder:wt(Jn)};wt(Eht),wt(Dht),wt(age),wt(age),wt(Iht);const tk={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:wt(eht),listFocusForeground:wt(tht),listFocusOutline:wt(nht),listActiveSelectionBackground:wt(nv),listActiveSelectionForeground:wt(km),listActiveSelectionIconForeground:wt(hN),listFocusAndSelectionOutline:wt(iht),listFocusAndSelectionBackground:wt(nv),listFocusAndSelectionForeground:wt(km),listInactiveSelectionBackground:wt(rht),listInactiveSelectionIconForeground:wt(oht),listInactiveSelectionForeground:wt(sht),listInactiveFocusBackground:wt(aht),listInactiveFocusOutline:wt(lht),listHoverBackground:wt(gIe),listHoverForeground:wt(mIe),listDropBackground:wt(cht),listSelectionOutline:wt(Dr),listHoverOutline:wt(Dr),treeIndentGuidesStroke:wt(fN),treeInactiveIndentGuidesStroke:wt(pht),tableColumnsBorder:wt(ght),tableOddRowsBackgroundColor:wt(mht)};function HI(i){return Qbt(i,tk)}const iyt={selectBackground:wt(ym),selectListBackground:wt(ydt),selectForeground:wt(J0),decoratorRightForeground:wt(fIe),selectBorder:wt(a2),focusBorder:wt(Qu),listFocusBackground:wt(vS),listInactiveSelectionIconForeground:wt(l2),listFocusForeground:wt(_S),listFocusOutline:adt(Dr,Te.transparent.toString()),listHoverBackground:wt(gIe),listHoverForeground:wt(mIe),listHoverOutline:wt(Dr),selectListBorder:wt(Sm),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0},ryt={shadowColor:wt(bm),borderColor:wt(yht),foregroundColor:wt(wht),backgroundColor:wt(Cht),selectionForegroundColor:wt(Sht),selectionBackgroundColor:wt(xht),selectionBorderColor:wt(kht),separatorColor:wt(Lht),scrollbarShadow:wt(Ddt),scrollbarSliderBackground:wt(cN),scrollbarSliderHoverBackground:wt(uN),scrollbarSliderActiveBackground:wt(dN)};var q$=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},gc=function(i,e){return function(n,r){e(n,r,i)}},rRe=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function syt(i,e,n,r){const s=i.getActions(e),o=Y0.getInstance(),a=o.keyStatus.altKey||(Aa||_l)&&o.keyStatus.shiftKey;oRe(s,n,a,l=>l==="navigation")}function sRe(i,e,n,r,s,o){const a=i.getActions(e);oRe(a,n,!1,typeof r=="string"?c=>c===r:r,s,o)}function oRe(i,e,n,r=a=>a==="navigation",s=()=>!1,o=!1){let a,l;Array.isArray(e)?(a=e,l=e):(a=e.primary,l=e.secondary);const c=new Set;for(const[u,d]of i){let h;r(u)?(h=a,h.length>0&&o&&h.push(new Vo)):(h=l,h.length>0&&h.push(new Vo));for(let f of d){n&&(f=f instanceof If&&f.alt?f.alt:f);const p=h.push(f);f instanceof NE&&c.add({group:u,action:f,index:p-1})}}for(const{group:u,action:d,index:h}of c){const f=r(u)?a:l,p=d.actions;s(d,u,f.length)&&f.splice(h,1,...p)}}let mx=class extends ZE{constructor(e,n,r,s,o,a,l,c){super(void 0,e,{icon:!!(e.class||e.item.icon),label:!e.class&&!e.item.icon,draggable:n==null?void 0:n.draggable,keybinding:n==null?void 0:n.keybinding,hoverDelegate:n==null?void 0:n.hoverDelegate}),this._keybindingService=r,this._notificationService=s,this._contextKeyService=o,this._themeService=a,this._contextMenuService=l,this._accessibilityService=c,this._wantsAltCommand=!1,this._itemClassDispose=this._register(new ha),this._altKey=Y0.getInstance()}get _menuItemAction(){return this._action}get _commandAction(){return this._wantsAltCommand&&this._menuItemAction.alt||this._menuItemAction}onClick(e){return rRe(this,void 0,void 0,function*(){e.preventDefault(),e.stopPropagation();try{yield this.actionRunner.run(this._commandAction,this._context)}catch(n){this._notificationService.error(n)}})}render(e){if(super.render(e),e.classList.add("menu-entry"),this.options.icon&&this._updateItemClass(this._menuItemAction.item),this._menuItemAction.alt){let n=!1;const r=()=>{var s;const o=!!(!((s=this._menuItemAction.alt)===null||s===void 0)&&s.enabled)&&(!this._accessibilityService.isMotionReduced()||n)&&(this._altKey.keyStatus.altKey||this._altKey.keyStatus.shiftKey&&n);o!==this._wantsAltCommand&&(this._wantsAltCommand=o,this.updateLabel(),this.updateTooltip(),this.updateClass())};this._register(this._altKey.event(r)),this._register(Be(e,"mouseleave",s=>{n=!1,r()})),this._register(Be(e,"mouseenter",s=>{n=!0,r()})),r()}}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this._commandAction.label)}getTooltip(){var e;const n=this._keybindingService.lookupKeybinding(this._commandAction.id,this._contextKeyService),r=n&&n.getLabel(),s=this._commandAction.tooltip||this._commandAction.label;let o=r?L("titleAndKb","{0} ({1})",s,r):s;if(!this._wantsAltCommand&&(!((e=this._menuItemAction.alt)===null||e===void 0)&&e.enabled)){const a=this._menuItemAction.alt.tooltip||this._menuItemAction.alt.label,l=this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id,this._contextKeyService),c=l&&l.getLabel(),u=c?L("titleAndKb","{0} ({1})",a,c):a;o=L("titleAndKbAndAlt",`{0} [{1}] {2}`,o,Qoe.modifierLabels[Zu].altKey,u)}return o}updateClass(){this.options.icon&&(this._commandAction!==this._menuItemAction?this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.alt.item):this._updateItemClass(this._menuItemAction.item))}_updateItemClass(e){this._itemClassDispose.value=void 0;const{element:n,label:r}=this;if(!n||!r)return;const s=this._commandAction.checked&&Xbt(e.toggled)&&e.toggled.icon?e.toggled.icon:e.icon;if(s)if(en.isThemeIcon(s)){const o=en.asClassNameArray(s);r.classList.add(...o),this._itemClassDispose.value=gn(()=>{r.classList.remove(...o)})}else{const o=$E(this._themeService.getColorTheme().type)?f1(s.dark):f1(s.light),a=tt("span");a.style.webkitMask=a.style.mask=`${o} no-repeat 50% 50%`,a.style.background="var(--vscode-icon-foreground)",a.style.display="inline-block",a.style.width="100%",a.style.height="100%",r.appendChild(a),r.classList.add("icon"),this._itemClassDispose.value=Sf(gn(()=>{r.classList.remove("icon"),ca(r)}),this._themeService.onDidColorThemeChange(()=>{this.updateClass()}))}}};mx=q$([gc(2,sr),gc(3,Ps),gc(4,mn),gc(5,Do),gc(6,Ff),gc(7,zv)],mx);let Lee=class extends D7{constructor(e,n,r,s,o){var a,l,c;const u=Object.assign(Object.assign({},n),{menuAsChild:(a=n==null?void 0:n.menuAsChild)!==null&&a!==void 0?a:!1,classNames:(l=n==null?void 0:n.classNames)!==null&&l!==void 0?l:en.isThemeIcon(e.item.icon)?en.asClassName(e.item.icon):void 0,keybindingProvider:(c=n==null?void 0:n.keybindingProvider)!==null&&c!==void 0?c:d=>r.lookupKeybinding(d.id)});super(e,{getActions:()=>e.actions},s,u),this._keybindingService=r,this._contextMenuService=s,this._themeService=o}render(e){super.render(e),Ui(this.element),e.classList.add("menu-entry");const n=this._action,{icon:r}=n.item;if(r&&!en.isThemeIcon(r)){this.element.classList.add("icon");const s=()=>{this.element&&(this.element.style.backgroundImage=$E(this._themeService.getColorTheme().type)?f1(r.dark):f1(r.light))};s(),this._register(this._themeService.onDidColorThemeChange(()=>{s()}))}}};Lee=q$([gc(2,sr),gc(3,Ff),gc(4,Do)],Lee);let Dee=class extends xp{constructor(e,n,r,s,o,a,l,c){var u,d,h;super(null,e),this._keybindingService=r,this._notificationService=s,this._contextMenuService=o,this._menuService=a,this._instaService=l,this._storageService=c,this._container=null,this._options=n,this._storageKey=`${e.item.submenu.id}_lastActionId`;let f;const p=n!=null&&n.persistLastActionId?c.get(this._storageKey,1):void 0;p&&(f=e.actions.find(m=>p===m.id)),f||(f=e.actions[0]),this._defaultAction=this._instaService.createInstance(mx,f,{keybinding:this._getDefaultActionKeybindingLabel(f)});const g=Object.assign(Object.assign({keybindingProvider:m=>this._keybindingService.lookupKeybinding(m.id)},n),{menuAsChild:(u=n==null?void 0:n.menuAsChild)!==null&&u!==void 0?u:!0,classNames:(d=n==null?void 0:n.classNames)!==null&&d!==void 0?d:["codicon","codicon-chevron-down"],actionRunner:(h=n==null?void 0:n.actionRunner)!==null&&h!==void 0?h:new AE});this._dropdown=new D7(e,e.actions,this._contextMenuService,g),this._dropdown.actionRunner.onDidRun(m=>{m.action instanceof If&&this.update(m.action)})}update(e){var n;!((n=this._options)===null||n===void 0)&&n.persistLastActionId&&this._storageService.store(this._storageKey,e.id,1,1),this._defaultAction.dispose(),this._defaultAction=this._instaService.createInstance(mx,e,{keybinding:this._getDefaultActionKeybindingLabel(e)}),this._defaultAction.actionRunner=new class extends AE{runAction(r,s){return rRe(this,void 0,void 0,function*(){yield r.run(void 0)})}},this._container&&this._defaultAction.render(SEe(this._container,tt(".action-container")))}_getDefaultActionKeybindingLabel(e){var n;let r;if(!((n=this._options)===null||n===void 0)&&n.renderKeybindingWithDefaultActionLabel){const s=this._keybindingService.lookupKeybinding(e.id);s&&(r=`(${s.getLabel()})`)}return r}setActionContext(e){super.setActionContext(e),this._defaultAction.setActionContext(e),this._dropdown.setActionContext(e)}render(e){this._container=e,super.render(this._container),this._container.classList.add("monaco-dropdown-with-default");const n=tt(".action-container");this._defaultAction.render(He(this._container,n)),this._register(Be(n,ht.KEY_DOWN,s=>{const o=new yr(s);o.equals(17)&&(this._defaultAction.element.tabIndex=-1,this._dropdown.focus(),o.stopPropagation())}));const r=tt(".dropdown-action-container");this._dropdown.render(He(this._container,r)),this._register(Be(r,ht.KEY_DOWN,s=>{var o;const a=new yr(s);a.equals(15)&&(this._defaultAction.element.tabIndex=0,this._dropdown.setFocusable(!1),(o=this._defaultAction.element)===null||o===void 0||o.focus(),a.stopPropagation())}))}focus(e){e?this._dropdown.focus():(this._defaultAction.element.tabIndex=0,this._defaultAction.element.focus())}blur(){this._defaultAction.element.tabIndex=-1,this._dropdown.blur(),this._container.blur()}setFocusable(e){e?this._defaultAction.element.tabIndex=0:(this._defaultAction.element.tabIndex=-1,this._dropdown.setFocusable(!1))}dispose(){this._defaultAction.dispose(),this._dropdown.dispose(),super.dispose()}};Dee=q$([gc(2,sr),gc(3,Ps),gc(4,Ff),gc(5,c_),gc(6,hn),gc(7,jf)],Dee);let Eee=class extends qbt{constructor(e,n){super(null,e,e.actions.map(r=>({text:r.id===Vo.ID?"─────────":r.label,isDisabled:!r.enabled})),0,n,iyt,{ariaLabel:e.tooltip,optionsAsChildren:!0}),this.select(Math.max(0,e.actions.findIndex(r=>r.checked)))}render(e){super.render(e),e.style.borderColor=wt(a2)}runAction(e,n){const r=this.action.actions[n];r&&this.actionRunner.run(r)}};Eee=q$([gc(1,Vv)],Eee);function oyt(i,e,n){return e instanceof If?i.createInstance(mx,e,n):e instanceof dP?e.item.isSelection?i.createInstance(Eee,e):e.item.rememberDefaultAction?i.createInstance(Dee,e,Object.assign(Object.assign({},n),{persistLastActionId:!0})):i.createInstance(Lee,e,n):void 0}var ayt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class wh extends Le{constructor(e,n={}){var r,s,o,a,l,c;super(),this._actionRunnerDisposables=this._register(new Xe),this.viewItemDisposables=this._register(new Nse),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new _e),this.onDidBlur=this._onDidBlur.event,this._onDidCancel=this._register(new _e({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.onDidCancel=this._onDidCancel.event,this.cancelHasListener=!1,this._onDidRun=this._register(new _e),this.onDidRun=this._onDidRun.event,this._onWillRun=this._register(new _e),this.onWillRun=this._onWillRun.event,this.options=n,this._context=(r=n.context)!==null&&r!==void 0?r:null,this._orientation=(s=this.options.orientation)!==null&&s!==void 0?s:0,this._triggerKeys={keyDown:(a=(o=this.options.triggerKeys)===null||o===void 0?void 0:o.keyDown)!==null&&a!==void 0?a:!1,keys:(c=(l=this.options.triggerKeys)===null||l===void 0?void 0:l.keys)!==null&&c!==void 0?c:[3,10]},this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new AE,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(h=>this._onDidRun.fire(h))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(h=>this._onWillRun.fire(h))),this.viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar",n.animated!==!1&&this.domNode.classList.add("animated");let u,d;switch(this._orientation){case 0:u=[15],d=[17];break;case 1:u=[16],d=[18],this.domNode.className+=" vertical";break}this._register(Be(this.domNode,ht.KEY_DOWN,h=>{const f=new yr(h);let p=!0;const g=typeof this.focusedItem=="number"?this.viewItems[this.focusedItem]:void 0;u&&(f.equals(u[0])||f.equals(u[1]))?p=this.focusPrevious():d&&(f.equals(d[0])||f.equals(d[1]))?p=this.focusNext():f.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():f.equals(14)?p=this.focusFirst():f.equals(13)?p=this.focusLast():f.equals(2)&&g instanceof xp&&g.trapsArrowNavigation?p=this.focusNext():this.isTriggerKeyEvent(f)?this._triggerKeys.keyDown?this.doTrigger(f):this.triggerKeyDown=!0:p=!1,p&&(f.preventDefault(),f.stopPropagation())})),this._register(Be(this.domNode,ht.KEY_UP,h=>{const f=new yr(h);this.isTriggerKeyEvent(f)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(f)),f.preventDefault(),f.stopPropagation()):(f.equals(2)||f.equals(1026))&&this.updateFocusedItem()})),this.focusTracker=this._register(Gm(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(xf()===this.domNode||!Ia(xf(),this.domNode))&&(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),e.appendChild(this.domNode)}refreshRole(){this.length()>=2?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(e){if(this.focusable=e,this.focusable){const n=this.viewItems.find(r=>r instanceof xp&&r.isEnabled());n instanceof xp&&n.setFocusable(!0)}else this.viewItems.forEach(n=>{n instanceof xp&&n.setFocusable(!1)})}isTriggerKeyEvent(e){let n=!1;return this._triggerKeys.keys.forEach(r=>{n=n||e.equals(r)}),n}updateFocusedItem(){for(let e=0;en.setActionContext(e))}get actionRunner(){return this._actionRunner}set actionRunner(e){this._actionRunner=e,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(n=>this._onDidRun.fire(n))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(n=>this._onWillRun.fire(n))),this.viewItems.forEach(n=>n.actionRunner=e)}getContainer(){return this.domNode}getAction(e){var n;if(typeof e=="number")return(n=this.viewItems[e])===null||n===void 0?void 0:n.action;if(e instanceof HTMLElement){for(;e.parentElement!==this.actionsList;){if(!e.parentElement)return;e=e.parentElement}for(let r=0;r{const a=document.createElement("li");a.className="action-item",a.setAttribute("role","presentation");let l;const c=Object.assign({hoverDelegate:this.options.hoverDelegate},n);this.options.actionViewItemProvider&&(l=this.options.actionViewItemProvider(o,c)),l||(l=new ZE(this.context,o,c)),this.options.allowContextMenu||this.viewItemDisposables.set(l,Be(a,ht.CONTEXT_MENU,u=>{Nn.stop(u,!0)})),l.actionRunner=this._actionRunner,l.setActionContext(this.context),l.render(a),this.focusable&&l instanceof xp&&this.viewItems.length===0&&l.setFocusable(!0),s===null||s<0||s>=this.actionsList.children.length?(this.actionsList.appendChild(a),this.viewItems.push(l)):(this.actionsList.insertBefore(a,this.actionsList.children[s]),this.viewItems.splice(s,0,l),s++)}),typeof this.focusedItem=="number"&&this.focus(this.focusedItem),this.refreshRole()}clear(){this.isEmpty()||(this.viewItems=Mi(this.viewItems),this.viewItemDisposables.clearAndDisposeAll(),la(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return this.viewItems.length===0}focus(e){let n=!1,r;if(e===void 0?n=!0:typeof e=="number"?r=e:typeof e=="boolean"&&(n=e),n&&typeof this.focusedItem>"u"){const s=this.viewItems.findIndex(o=>o.isEnabled());this.focusedItem=s===-1?void 0:s,this.updateFocus(void 0,void 0,!0)}else r!==void 0&&(this.focusedItem=r),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(e){if(typeof this.focusedItem>"u")this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;const n=this.focusedItem;let r;do{if(!e&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=n,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,r=this.viewItems[this.focusedItem]}while(this.focusedItem!==n&&(this.options.focusOnlyEnabledItems&&!r.isEnabled()||r.action.id===Vo.ID));return this.updateFocus(),!0}focusPrevious(e){if(typeof this.focusedItem>"u")this.focusedItem=0;else if(this.viewItems.length<=1)return!1;const n=this.focusedItem;let r;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!e&&this.options.preventLoopNavigation)return this.focusedItem=n,!1;this.focusedItem=this.viewItems.length-1}r=this.viewItems[this.focusedItem]}while(this.focusedItem!==n&&(this.options.focusOnlyEnabledItems&&!r.isEnabled()||r.action.id===Vo.ID));return this.updateFocus(!0),!0}updateFocus(e,n,r=!1){var s;typeof this.focusedItem>"u"&&this.actionsList.focus({preventScroll:n}),this.previouslyFocusedItem!==void 0&&this.previouslyFocusedItem!==this.focusedItem&&((s=this.viewItems[this.previouslyFocusedItem])===null||s===void 0||s.blur());const o=this.focusedItem!==void 0&&this.viewItems[this.focusedItem];if(o){let a=!0;nP(o.focus)||(a=!1),this.options.focusOnlyEnabledItems&&nP(o.isEnabled)&&!o.isEnabled()&&(a=!1),o.action.id===Vo.ID&&(a=!1),a?(r||this.previouslyFocusedItem!==this.focusedItem)&&(o.focus(e),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:n}),this.previouslyFocusedItem=void 0)}}doTrigger(e){if(typeof this.focusedItem>"u")return;const n=this.viewItems[this.focusedItem];if(n instanceof xp){const r=n._context===null||n._context===void 0?e:n._context;this.run(n._action,r)}}run(e,n){return ayt(this,void 0,void 0,function*(){yield this._actionRunner.run(e,n)})}dispose(){this._context=void 0,this.viewItems=Mi(this.viewItems),this.getContainer().remove(),super.dispose()}}const Iee=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,Yq=/(&)?(&)([^\s&])/g;var R7;(function(i){i[i.Right=0]="Right",i[i.Left=1]="Left"})(R7||(R7={}));class iE extends wh{constructor(e,n,r,s){e.classList.add("monaco-menu-container"),e.setAttribute("role","presentation");const o=document.createElement("div");o.classList.add("monaco-menu"),o.setAttribute("role","presentation"),super(o,{orientation:1,actionViewItemProvider:c=>this.doGetActionViewItem(c,r,a),context:r.context,actionRunner:r.actionRunner,ariaLabel:r.ariaLabel,ariaRole:"menu",focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...ri||_l?[10]:[]],keyDown:!0}}),this.menuStyles=s,this.menuElement=o,this.actionsList.tabIndex=0,this.menuDisposables=this._register(new Xe),this.initializeOrUpdateStyleSheet(e,s),this._register(or.addTarget(o)),Be(o,ht.KEY_DOWN,c=>{new yr(c).equals(2)&&c.preventDefault()}),r.enableMnemonics&&this.menuDisposables.add(Be(o,ht.KEY_DOWN,c=>{const u=c.key.toLocaleLowerCase();if(this.mnemonics.has(u)){Nn.stop(c,!0);const d=this.mnemonics.get(u);if(d.length===1&&(d[0]instanceof Kme&&d[0].container&&this.focusItemByElement(d[0].container),d[0].onClick(c)),d.length>1){const h=d.shift();h&&h.container&&(this.focusItemByElement(h.container),d.push(h)),this.mnemonics.set(u,d)}}})),_l&&this._register(Be(o,ht.KEY_DOWN,c=>{const u=new yr(c);u.equals(14)||u.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),Nn.stop(c,!0)):(u.equals(13)||u.equals(12))&&(this.focusedItem=0,this.focusPrevious(),Nn.stop(c,!0))})),this._register(Be(this.domNode,ht.MOUSE_OUT,c=>{const u=c.relatedTarget;Ia(u,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),c.stopPropagation())})),this._register(Be(this.actionsList,ht.MOUSE_OVER,c=>{let u=c.target;if(!(!u||!Ia(u,this.actionsList)||u===this.actionsList)){for(;u.parentElement!==this.actionsList&&u.parentElement!==null;)u=u.parentElement;if(u.classList.contains("action-item")){const d=this.focusedItem;this.setFocusedItem(u),d!==this.focusedItem&&this.updateFocus()}}})),this._register(or.addTarget(this.actionsList)),this._register(Be(this.actionsList,lr.Tap,c=>{let u=c.initialTarget;if(!(!u||!Ia(u,this.actionsList)||u===this.actionsList)){for(;u.parentElement!==this.actionsList&&u.parentElement!==null;)u=u.parentElement;if(u.classList.contains("action-item")){const d=this.focusedItem;this.setFocusedItem(u),d!==this.focusedItem&&this.updateFocus()}}}));const a={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new P5(o,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));const l=this.scrollableElement.getDomNode();l.style.position="",this.styleScrollElement(l,s),this._register(Be(o,lr.Change,c=>{Nn.stop(c,!0);const u=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:u-c.translationY})})),this._register(Be(l,ht.MOUSE_UP,c=>{c.preventDefault()})),o.style.maxHeight=`${Math.max(10,window.innerHeight-e.getBoundingClientRect().top-35)}px`,n=n.filter(c=>{var u;return!((u=r.submenuIds)===null||u===void 0)&&u.has(c.id)?(console.warn(`Found submenu cycle: ${c.id}`),!1):!0}),this.push(n,{icon:!0,label:!0,isMenu:!0}),e.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(c=>!(c instanceof Gme)).forEach((c,u,d)=>{c.updatePositionInSet(u+1,d.length)})}initializeOrUpdateStyleSheet(e,n){this.styleSheet||($9(e)?this.styleSheet=_h(e):(iE.globalStyleSheet||(iE.globalStyleSheet=_h()),this.styleSheet=iE.globalStyleSheet)),this.styleSheet.textContent=cyt(n,$9(e))}styleScrollElement(e,n){var r,s;const o=(r=n.foregroundColor)!==null&&r!==void 0?r:"",a=(s=n.backgroundColor)!==null&&s!==void 0?s:"",l=n.borderColor?`1px solid ${n.borderColor}`:"",c="5px",u=n.shadowColor?`0 2px 8px ${n.shadowColor}`:"";e.style.outline=l,e.style.borderRadius=c,e.style.color=o,e.style.backgroundColor=a,e.style.boxShadow=u}getContainer(){return this.scrollableElement.getDomNode()}get onScroll(){return this.scrollableElement.onScroll}focusItemByElement(e){const n=this.focusedItem;this.setFocusedItem(e),n!==this.focusedItem&&this.updateFocus()}setFocusedItem(e){for(let n=0;n{this.element&&(this._register(Be(this.element,ht.MOUSE_UP,o=>{if(Nn.stop(o,!0),gh){if(new rh(o).rightButton)return;this.onClick(o)}else setTimeout(()=>{this.onClick(o)},0)})),this._register(Be(this.element,ht.CONTEXT_MENU,o=>{Nn.stop(o,!0)})))},100),this._register(this.runOnceToEnableMouseUp)}render(e){super.render(e),this.element&&(this.container=e,this.item=He(this.element,tt("a.action-menu-item")),this._action.id===Vo.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",`${this.mnemonic}`)),this.check=He(this.item,tt("span.menu-item-check"+en.asCSSSelector(lt.menuSelection))),this.check.setAttribute("role","none"),this.label=He(this.item,tt("span.action-label")),this.options.label&&this.options.keybinding&&(He(this.item,tt("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked(),this.applyStyle())}blur(){super.blur(),this.applyStyle()}focus(){var e;super.focus(),(e=this.item)===null||e===void 0||e.focus(),this.applyStyle()}updatePositionInSet(e,n){this.item&&(this.item.setAttribute("aria-posinset",`${e}`),this.item.setAttribute("aria-setsize",`${n}`))}updateLabel(){var e;if(this.label&&this.options.label){la(this.label);let n=oae(this.action.label);if(n){const r=lyt(n);this.options.enableMnemonics||(n=r),this.label.setAttribute("aria-label",r.replace(/&&/g,"&"));const s=Iee.exec(n);if(s){n=O9(n),Yq.lastIndex=0;let o=Yq.exec(n);for(;o&&o[1];)o=Yq.exec(n);const a=l=>l.replace(/&&/g,"&");o?this.label.append(S5(a(n.substr(0,o.index))," "),tt("u",{"aria-hidden":"true"},o[3]),G2e(a(n.substr(o.index+o[0].length))," ")):this.label.innerText=a(n).trim(),(e=this.item)===null||e===void 0||e.setAttribute("aria-keyshortcuts",(s[1]?s[1]:s[3]).toLocaleLowerCase())}else this.label.innerText=n.replace(/&&/g,"&").trim()}}}updateTooltip(){}updateClass(){this.cssClass&&this.item&&this.item.classList.remove(...this.cssClass.split(" ")),this.options.icon&&this.label?(this.cssClass=this.action.class||"",this.label.classList.add("icon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" ")),this.updateEnabled()):this.label&&this.label.classList.remove("icon")}updateEnabled(){this.action.enabled?(this.element&&(this.element.classList.remove("disabled"),this.element.removeAttribute("aria-disabled")),this.item&&(this.item.classList.remove("disabled"),this.item.removeAttribute("aria-disabled"),this.item.tabIndex=0)):(this.element&&(this.element.classList.add("disabled"),this.element.setAttribute("aria-disabled","true")),this.item&&(this.item.classList.add("disabled"),this.item.setAttribute("aria-disabled","true")))}updateChecked(){if(!this.item)return;const e=this.action.checked;this.item.classList.toggle("checked",!!e),e!==void 0?(this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked",e?"true":"false")):(this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked",""))}getMnemonic(){return this.mnemonic}applyStyle(){const e=this.element&&this.element.classList.contains("focused"),n=e&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,r=e&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,s=e&&this.menuStyle.selectionBorderColor?`1px solid ${this.menuStyle.selectionBorderColor}`:"",o=e&&this.menuStyle.selectionBorderColor?"-1px":"";this.item&&(this.item.style.color=n??"",this.item.style.backgroundColor=r??"",this.item.style.outline=s,this.item.style.outlineOffset=o),this.check&&(this.check.style.color=n??"")}}class Kme extends aRe{constructor(e,n,r,s,o){super(e,e,s,o),this.submenuActions=n,this.parentData=r,this.submenuOptions=s,this.mysubmenu=null,this.submenuDisposables=this._register(new Xe),this.mouseOver=!1,this.expandDirection=s&&s.expandDirection!==void 0?s.expandDirection:R7.Right,this.showScheduler=new Ji(()=>{this.mouseOver&&(this.cleanupExistingSubmenu(!1),this.createSubmenu(!1))},250),this.hideScheduler=new Ji(()=>{this.element&&!Ia(xf(),this.element)&&this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))},750)}render(e){super.render(e),this.element&&(this.item&&(this.item.classList.add("monaco-submenu-item"),this.item.tabIndex=0,this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=He(this.item,tt("span.submenu-indicator"+en.asCSSSelector(lt.menuSubmenu))),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(Be(this.element,ht.KEY_UP,n=>{const r=new yr(n);(r.equals(17)||r.equals(3))&&(Nn.stop(n,!0),this.createSubmenu(!0))})),this._register(Be(this.element,ht.KEY_DOWN,n=>{const r=new yr(n);xf()===this.item&&(r.equals(17)||r.equals(3))&&Nn.stop(n,!0)})),this._register(Be(this.element,ht.MOUSE_OVER,n=>{this.mouseOver||(this.mouseOver=!0,this.showScheduler.schedule())})),this._register(Be(this.element,ht.MOUSE_LEAVE,n=>{this.mouseOver=!1})),this._register(Be(this.element,ht.FOCUS_OUT,n=>{this.element&&!Ia(xf(),this.element)&&this.hideScheduler.schedule()})),this._register(this.parentData.parent.onScroll(()=>{this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))})))}updateEnabled(){}onClick(e){Nn.stop(e,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)}cleanupExistingSubmenu(e){if(this.parentData.submenu&&(e||this.parentData.submenu!==this.mysubmenu)){try{this.parentData.submenu.dispose()}catch{}this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0)}}calculateSubmenuMenuLayout(e,n,r,s){const o={top:0,left:0};return o.left=_2(e.width,n.width,{position:s===R7.Right?0:1,offset:r.left,size:r.width}),o.left>=r.left&&o.left{new yr(u).equals(15)&&(Nn.stop(u,!0),this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0))})),this.submenuDisposables.add(Be(this.submenuContainer,ht.KEY_DOWN,u=>{new yr(u).equals(15)&&Nn.stop(u,!0)})),this.submenuDisposables.add(this.parentData.submenu.onDidCancel(()=>{this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0)})),this.parentData.submenu.focus(e),this.mysubmenu=this.parentData.submenu}}updateAriaExpanded(e){var n;this.item&&((n=this.item)===null||n===void 0||n.setAttribute("aria-expanded",e))}applyStyle(){super.applyStyle();const n=this.element&&this.element.classList.contains("focused")&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=n??"")}dispose(){super.dispose(),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)}}class Gme extends ZE{constructor(e,n,r,s){super(e,n,r),this.menuStyles=s}render(e){super.render(e),this.label&&(this.label.style.borderBottomColor=this.menuStyles.separatorColor?`${this.menuStyles.separatorColor}`:"")}}function lyt(i){const e=Iee,n=e.exec(i);if(!n)return i;const r=!n[1];return i.replace(e,r?"$2$3":"").trim()}function Xme(i){const e=H2e()[i.id];return`.codicon-${i.id}:before { content: '\\${e.toString(16)}'; }`}function cyt(i,e){let n=` .monaco-menu { font-size: 13px; border-radius: 5px; min-width: 160px; } ${Xme(lt.menuSelection)} ${Xme(lt.menuSubmenu)} .monaco-menu .monaco-action-bar { text-align: right; overflow: hidden; white-space: nowrap; } .monaco-menu .monaco-action-bar .actions-container { display: flex; margin: 0 auto; padding: 0; width: 100%; justify-content: flex-end; } .monaco-menu .monaco-action-bar.vertical .actions-container { display: inline-block; } .monaco-menu .monaco-action-bar.reverse .actions-container { flex-direction: row-reverse; } .monaco-menu .monaco-action-bar .action-item { cursor: pointer; display: inline-block; transition: transform 50ms ease; position: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */ } .monaco-menu .monaco-action-bar .action-item.disabled { cursor: default; } .monaco-menu .monaco-action-bar.animated .action-item.active { transform: scale(1.272019649, 1.272019649); /* 1.272019649 = √φ */ } .monaco-menu .monaco-action-bar .action-item .icon, .monaco-menu .monaco-action-bar .action-item .codicon { display: inline-block; } .monaco-menu .monaco-action-bar .action-item .codicon { display: flex; align-items: center; } .monaco-menu .monaco-action-bar .action-label { font-size: 11px; margin-right: 4px; } .monaco-menu .monaco-action-bar .action-item.disabled .action-label, .monaco-menu .monaco-action-bar .action-item.disabled .action-label:hover { color: var(--vscode-disabledForeground); } /* Vertical actions */ .monaco-menu .monaco-action-bar.vertical { text-align: left; } .monaco-menu .monaco-action-bar.vertical .action-item { display: block; } .monaco-menu .monaco-action-bar.vertical .action-label.separator { display: block; border-bottom: 1px solid var(--vscode-menu-separatorBackground); padding-top: 1px; padding: 30px; } .monaco-menu .secondary-actions .monaco-action-bar .action-label { margin-left: 6px; } /* Action Items */ .monaco-menu .monaco-action-bar .action-item.select-container { overflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */ flex: 1; max-width: 170px; min-width: 60px; display: flex; align-items: center; justify-content: center; margin-right: 10px; } .monaco-menu .monaco-action-bar.vertical { margin-left: 0; overflow: visible; } .monaco-menu .monaco-action-bar.vertical .actions-container { display: block; } .monaco-menu .monaco-action-bar.vertical .action-item { padding: 0; transform: none; display: flex; } .monaco-menu .monaco-action-bar.vertical .action-item.active { transform: none; } .monaco-menu .monaco-action-bar.vertical .action-menu-item { flex: 1 1 auto; display: flex; height: 2em; align-items: center; position: relative; margin: 0 4px; border-radius: 4px; } .monaco-menu .monaco-action-bar.vertical .action-menu-item:hover .keybinding, .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .keybinding { opacity: unset; } .monaco-menu .monaco-action-bar.vertical .action-label { flex: 1 1 auto; text-decoration: none; padding: 0 1em; background: none; font-size: 12px; line-height: 1; } .monaco-menu .monaco-action-bar.vertical .keybinding, .monaco-menu .monaco-action-bar.vertical .submenu-indicator { display: inline-block; flex: 2 1 auto; padding: 0 1em; text-align: right; font-size: 12px; line-height: 1; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator { height: 100%; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon { font-size: 16px !important; display: flex; align-items: center; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon::before { margin-left: auto; margin-right: -20px; } .monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding, .monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator { opacity: 0.4; } .monaco-menu .monaco-action-bar.vertical .action-label:not(.separator) { display: inline-block; box-sizing: border-box; margin: 0; } .monaco-menu .monaco-action-bar.vertical .action-item { position: static; overflow: visible; } .monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu { position: absolute; } .monaco-menu .monaco-action-bar.vertical .action-label.separator { width: 100%; height: 0px !important; opacity: 1; } .monaco-menu .monaco-action-bar.vertical .action-label.separator.text { padding: 0.7em 1em 0.1em 1em; font-weight: bold; opacity: 1; } .monaco-menu .monaco-action-bar.vertical .action-label:hover { color: inherit; } .monaco-menu .monaco-action-bar.vertical .menu-item-check { position: absolute; visibility: hidden; width: 1em; height: 100%; } .monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check { visibility: visible; display: flex; align-items: center; justify-content: center; } /* Context Menu */ .context-view.monaco-menu-container { outline: 0; border: none; animation: fadeIn 0.083s linear; -webkit-app-region: no-drag; } .context-view.monaco-menu-container :focus, .context-view.monaco-menu-container .monaco-action-bar.vertical:focus, .context-view.monaco-menu-container .monaco-action-bar.vertical :focus { outline: 0; } .hc-black .context-view.monaco-menu-container, .hc-light .context-view.monaco-menu-container, :host-context(.hc-black) .context-view.monaco-menu-container, :host-context(.hc-light) .context-view.monaco-menu-container { box-shadow: none; } .hc-black .monaco-menu .monaco-action-bar.vertical .action-item.focused, .hc-light .monaco-menu .monaco-action-bar.vertical .action-item.focused, :host-context(.hc-black) .monaco-menu .monaco-action-bar.vertical .action-item.focused, :host-context(.hc-light) .monaco-menu .monaco-action-bar.vertical .action-item.focused { background: none; } /* Vertical Action Bar Styles */ .monaco-menu .monaco-action-bar.vertical { padding: 4px 0; } .monaco-menu .monaco-action-bar.vertical .action-menu-item { height: 2em; } .monaco-menu .monaco-action-bar.vertical .action-label:not(.separator), .monaco-menu .monaco-action-bar.vertical .keybinding { font-size: inherit; padding: 0 2em; } .monaco-menu .monaco-action-bar.vertical .menu-item-check { font-size: inherit; width: 2em; } .monaco-menu .monaco-action-bar.vertical .action-label.separator { font-size: inherit; margin: 5px 0 !important; padding: 0; border-radius: 0; } .linux .monaco-menu .monaco-action-bar.vertical .action-label.separator, :host-context(.linux) .monaco-menu .monaco-action-bar.vertical .action-label.separator { margin-left: 0; margin-right: 0; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator { font-size: 60%; padding: 0 1.8em; } .linux .monaco-menu .monaco-action-bar.vertical .submenu-indicator, :host-context(.linux) .monaco-menu .monaco-action-bar.vertical .submenu-indicator { height: 100%; mask-size: 10px 10px; -webkit-mask-size: 10px 10px; } .monaco-menu .action-item { cursor: default; }`;if(e){n+=` /* Arrows */ .monaco-scrollable-element > .scrollbar > .scra { cursor: pointer; font-size: 11px !important; } .monaco-scrollable-element > .visible { opacity: 1; /* Background rule added for IE9 - to allow clicks on dom node */ background:rgba(0,0,0,0); transition: opacity 100ms linear; } .monaco-scrollable-element > .invisible { opacity: 0; pointer-events: none; } .monaco-scrollable-element > .invisible.fade { transition: opacity 800ms linear; } /* Scrollable Content Inset Shadow */ .monaco-scrollable-element > .shadow { position: absolute; display: none; } .monaco-scrollable-element > .shadow.top { display: block; top: 0; left: 3px; height: 3px; width: 100%; } .monaco-scrollable-element > .shadow.left { display: block; top: 3px; left: 0; height: 100%; width: 3px; } .monaco-scrollable-element > .shadow.top-left-corner { display: block; top: 0; left: 0; height: 3px; width: 3px; } `;const r=i.scrollbarShadow;r&&(n+=` .monaco-scrollable-element > .shadow.top { box-shadow: ${r} 0 6px 6px -6px inset; } .monaco-scrollable-element > .shadow.left { box-shadow: ${r} 6px 0 6px -6px inset; } .monaco-scrollable-element > .shadow.top.left { box-shadow: ${r} 6px 6px 6px -6px inset; } `);const s=i.scrollbarSliderBackground;s&&(n+=` .monaco-scrollable-element > .scrollbar > .slider { background: ${s}; } `);const o=i.scrollbarSliderHoverBackground;o&&(n+=` .monaco-scrollable-element > .scrollbar > .slider:hover { background: ${o}; } `);const a=i.scrollbarSliderActiveBackground;a&&(n+=` .monaco-scrollable-element > .scrollbar > .slider.active { background: ${a}; } `)}return n}class uyt{constructor(e,n,r,s){this.contextViewService=e,this.telemetryService=n,this.notificationService=r,this.keybindingService=s,this.focusToReturn=null,this.lastContainer=null,this.block=null,this.blockDisposable=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){const n=e.getActions();if(!n.length)return;this.focusToReturn=document.activeElement;let r;const s=Qse(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:o=>{var a;this.lastContainer=o;const l=e.getMenuClassName?e.getMenuClassName():"";l&&(o.className+=" "+l),this.options.blockMouse&&(this.block=o.appendChild(tt(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",(a=this.blockDisposable)===null||a===void 0||a.dispose(),this.blockDisposable=Be(this.block,ht.MOUSE_DOWN,d=>d.stopPropagation()));const c=new Xe,u=e.actionRunner||new AE;return u.onWillRun(d=>this.onActionRun(d,!e.skipTelemetry),this,c),u.onDidRun(this.onDidActionRun,this,c),r=new iE(o,n,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:u,getKeyBinding:e.getKeyBinding?e.getKeyBinding:d=>this.keybindingService.lookupKeybinding(d.id)},ryt),r.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,c),r.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,c),c.add(Be(window,ht.BLUR,()=>this.contextViewService.hideContextView(!0))),c.add(Be(window,ht.MOUSE_DOWN,d=>{if(d.defaultPrevented)return;const h=new rh(d);let f=h.target;if(!h.rightButton){for(;f;){if(f===o)return;f=f.parentElement}this.contextViewService.hideContextView(!0)}})),Sf(c,r)},focus:()=>{r==null||r.focus(!!e.autoSelectFirstItem)},onHide:o=>{var a,l,c;(a=e.onHide)===null||a===void 0||a.call(e,!!o),this.block&&(this.block.remove(),this.block=null),(l=this.blockDisposable)===null||l===void 0||l.dispose(),this.blockDisposable=null,this.lastContainer&&(xf()===this.lastContainer||Ia(xf(),this.lastContainer))&&((c=this.focusToReturn)===null||c===void 0||c.focus()),this.lastContainer=null}},s,!!s)}onActionRun(e,n){n&&this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1)}onDidActionRun(e){e.error&&!sg(e.error)&&this.notificationService.error(e.error)}}var dyt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},sD=function(i,e){return function(n,r){e(n,r,i)}};let Tee=class extends Le{get contextMenuHandler(){return this._contextMenuHandler||(this._contextMenuHandler=new uyt(this.contextViewService,this.telemetryService,this.notificationService,this.keybindingService)),this._contextMenuHandler}constructor(e,n,r,s,o,a){super(),this.telemetryService=e,this.notificationService=n,this.contextViewService=r,this.keybindingService=s,this.menuService=o,this.contextKeyService=a,this._contextMenuHandler=void 0,this._onDidShowContextMenu=this._store.add(new _e),this._onDidHideContextMenu=this._store.add(new _e)}configure(e){this.contextMenuHandler.configure(e)}showContextMenu(e){e=Ree.transform(e,this.menuService,this.contextKeyService),this.contextMenuHandler.showContextMenu(Object.assign(Object.assign({},e),{onHide:n=>{var r;(r=e.onHide)===null||r===void 0||r.call(e,n),this._onDidHideContextMenu.fire()}})),Y0.getInstance().resetKeyStatus(),this._onDidShowContextMenu.fire()}};Tee=dyt([sD(0,_d),sD(1,Ps),sD(2,Vv),sD(3,sr),sD(4,c_),sD(5,mn)],Tee);var Ree;(function(i){function e(r){return r&&r.menuId instanceof se}function n(r,s,o){if(!e(r))return r;const{menuId:a,menuActionOptions:l,contextKeyService:c}=r;return Object.assign(Object.assign({},r),{getActions:()=>{const u=[];if(a){const d=s.createMenu(a,c??o);syt(d,l,u),d.dispose()}return r.getActions?Vo.join(r.getActions(),u):u}})}i.transform=n})(Ree||(Ree={}));var A7;(function(i){i[i.API=0]="API",i[i.USER=1]="USER"})(A7||(A7={}));var uae=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},N7=function(i,e){return function(n,r){e(n,r,i)}},QC=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let Aee=class{constructor(e){this._commandService=e}open(e,n){return QC(this,void 0,void 0,function*(){if(!Xoe(e,Pn.command))return!1;if(!(n!=null&&n.allowCommands)||(typeof e=="string"&&(e=Jt.parse(e)),Array.isArray(n.allowCommands)&&!n.allowCommands.includes(e.path)))return!0;let r=[];try{r=wee(decodeURIComponent(e.query))}catch{try{r=wee(e.query)}catch{}}return Array.isArray(r)||(r=[r]),yield this._commandService.executeCommand(e.path,...r),!0})}};Aee=uae([N7(0,us)],Aee);let Nee=class{constructor(e){this._editorService=e}open(e,n){return QC(this,void 0,void 0,function*(){typeof e=="string"&&(e=Jt.parse(e));const{selection:r,uri:s}=m0t(e);return e=s,e.scheme===Pn.file&&(e=Qgt(e)),yield this._editorService.openCodeEditor({resource:e,options:Object.assign({selection:r,source:n!=null&&n.fromUserGesture?A7.USER:A7.API},n==null?void 0:n.editorOptions)},this._editorService.getFocusedCodeEditor(),n==null?void 0:n.openToSide),!0})}};Nee=uae([N7(0,Si)],Nee);let Mee=class{constructor(e,n){this._openers=new jl,this._validators=new jl,this._resolvers=new jl,this._resolvedUriTargets=new Va(r=>r.with({path:null,fragment:null,query:null}).toString()),this._externalOpeners=new jl,this._defaultExternalOpener={openExternal:r=>QC(this,void 0,void 0,function*(){return yme(r,Pn.http,Pn.https)?kEe(r):window.location.href=r,!0})},this._openers.push({open:(r,s)=>QC(this,void 0,void 0,function*(){return s!=null&&s.openExternal||yme(r,Pn.mailto,Pn.http,Pn.https,Pn.vsls)?(yield this._doOpenExternal(r,s),!0):!1})}),this._openers.push(new Aee(n)),this._openers.push(new Nee(e))}registerOpener(e){return{dispose:this._openers.unshift(e)}}open(e,n){var r;return QC(this,void 0,void 0,function*(){const s=typeof e=="string"?Jt.parse(e):e,o=(r=this._resolvedUriTargets.get(s))!==null&&r!==void 0?r:e;for(const a of this._validators)if(!(yield a.shouldOpen(o,n)))return!1;for(const a of this._openers)if(yield a.open(e,n))return!0;return!1})}resolveExternalUri(e,n){return QC(this,void 0,void 0,function*(){for(const r of this._resolvers)try{const s=yield r.resolveExternalUri(e,n);if(s)return this._resolvedUriTargets.has(s.resolved)||this._resolvedUriTargets.set(s.resolved,e),s}catch{}throw new Error("Could not resolve external URI: "+e.toString())})}_doOpenExternal(e,n){return QC(this,void 0,void 0,function*(){const r=typeof e=="string"?Jt.parse(e):e;let s;try{s=(yield this.resolveExternalUri(r,n)).resolved}catch{s=r}let o;if(typeof e=="string"&&r.toString()===s.toString()?o=e:o=encodeURI(s.toString(!0)),n!=null&&n.allowContributedOpeners){const a=typeof(n==null?void 0:n.allowContributedOpeners)=="string"?n==null?void 0:n.allowContributedOpeners:void 0;for(const l of this._externalOpeners)if(yield l.openExternal(o,{sourceUri:r,preferredOpenerId:a},Hn.None))return!0}return this._defaultExternalOpener.openExternal(o,{sourceUri:r},Hn.None)})}dispose(){this._validators.clear()}};Mee=uae([N7(0,Si),N7(1,us)],Mee);const Wf=qn("editorWorkerService");var es;(function(i){i[i.Hint=1]="Hint",i[i.Info=2]="Info",i[i.Warning=4]="Warning",i[i.Error=8]="Error"})(es||(es={}));(function(i){function e(a,l){return l-a}i.compare=e;const n=Object.create(null);n[i.Error]=L("sev.error","Error"),n[i.Warning]=L("sev.warning","Warning"),n[i.Info]=L("sev.info","Info");function r(a){return n[a]||""}i.toString=r;function s(a){switch(a){case vs.Error:return i.Error;case vs.Warning:return i.Warning;case vs.Info:return i.Info;case vs.Ignore:return i.Hint}}i.fromSeverity=s;function o(a){switch(a){case i.Error:return vs.Error;case i.Warning:return vs.Warning;case i.Info:return vs.Info;case i.Hint:return vs.Ignore}}i.toSeverity=o})(es||(es={}));var M7;(function(i){const e="";function n(s){return r(s,!0)}i.makeKey=n;function r(s,o){const a=[e];return s.source?a.push(s.source.replace("¦","\\¦")):a.push(e),s.code?typeof s.code=="string"?a.push(s.code.replace("¦","\\¦")):a.push(s.code.value.replace("¦","\\¦")):a.push(e),s.severity!==void 0&&s.severity!==null?a.push(es.toString(s.severity)):a.push(e),s.message&&o?a.push(s.message.replace("¦","\\¦")):a.push(e),s.startLineNumber!==void 0&&s.startLineNumber!==null?a.push(s.startLineNumber.toString()):a.push(e),s.startColumn!==void 0&&s.startColumn!==null?a.push(s.startColumn.toString()):a.push(e),s.endLineNumber!==void 0&&s.endLineNumber!==null?a.push(s.endLineNumber.toString()):a.push(e),s.endColumn!==void 0&&s.endColumn!==null?a.push(s.endColumn.toString()):a.push(e),a.push(e),a.join("¦")}i.makeKeyOptionalMessage=r})(M7||(M7={}));const h_=qn("markerService");function hyt(i,e){const n=[],r=[];for(const s of i)e.has(s)||n.push(s);for(const s of e)i.has(s)||r.push(s);return{removed:n,added:r}}function fyt(i,e){const n=new Set;for(const r of e)i.has(r)&&n.add(r);return n}var pyt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Yme=function(i,e){return function(n,r){e(n,r,i)}};let Pee=class extends Le{constructor(e,n){super(),this._markerService=n,this._onDidChangeMarker=this._register(new _e),this._markerDecorations=new Va,e.getModels().forEach(r=>this._onModelAdded(r)),this._register(e.onModelAdded(this._onModelAdded,this)),this._register(e.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach(e=>e.dispose()),this._markerDecorations.clear()}getMarker(e,n){const r=this._markerDecorations.get(e);return r&&r.getMarker(n)||null}_handleMarkerChange(e){e.forEach(n=>{const r=this._markerDecorations.get(n);r&&this._updateDecorations(r)})}_onModelAdded(e){const n=new gyt(e);this._markerDecorations.set(e.uri,n),this._updateDecorations(n)}_onModelRemoved(e){var n;const r=this._markerDecorations.get(e.uri);r&&(r.dispose(),this._markerDecorations.delete(e.uri)),(e.uri.scheme===Pn.inMemory||e.uri.scheme===Pn.internal||e.uri.scheme===Pn.vscode)&&((n=this._markerService)===null||n===void 0||n.read({resource:e.uri}).map(s=>s.owner).forEach(s=>this._markerService.remove(s,[e.uri])))}_updateDecorations(e){const n=this._markerService.read({resource:e.model.uri,take:500});e.update(n)&&this._onDidChangeMarker.fire(e.model)}};Pee=pyt([Yme(0,Fr),Yme(1,h_)],Pee);class gyt extends Le{constructor(e){super(),this.model=e,this._map=new Qct,this._register(gn(()=>{this.model.deltaDecorations([...this._map.values()],[]),this._map.clear()}))}update(e){const{added:n,removed:r}=hyt(new Set(this._map.keys()),new Set(e));if(n.length===0&&r.length===0)return!1;const s=r.map(l=>this._map.get(l)),o=n.map(l=>({range:this._createDecorationRange(this.model,l),options:this._createDecorationOption(l)})),a=this.model.deltaDecorations(s,o);for(const l of r)this._map.delete(l);for(let l=0;l=s)return r;const o=e.getWordAtPosition(r.getStartPosition());o&&(r=new J(r.startLineNumber,o.startColumn,r.endLineNumber,o.endColumn))}else if(n.endColumn===Number.MAX_VALUE&&n.startColumn===1&&r.startLineNumber===r.endLineNumber){const s=e.getLineFirstNonWhitespaceColumn(n.startLineNumber);s=0:!1}}var myt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},QR=function(i,e){return function(n,r){e(n,r,i)}},$D;function rC(i){return i.toString()}class _yt{constructor(e,n,r){this.model=e,this._modelEventListeners=new Xe,this.model=e,this._modelEventListeners.add(e.onWillDispose(()=>n(e))),this._modelEventListeners.add(e.onDidChangeLanguage(s=>r(e,s)))}dispose(){this._modelEventListeners.dispose()}}const vyt=_l||ri?1:2;class byt{constructor(e,n,r,s,o,a,l,c){this.uri=e,this.initialUndoRedoSnapshot=n,this.time=r,this.sharesUndoRedoStack=s,this.heapSize=o,this.sha1=a,this.versionId=l,this.alternativeVersionId=c}}let P7=$D=class extends Le{constructor(e,n,r,s,o){super(),this._configurationService=e,this._resourcePropertiesService=n,this._undoRedoService=r,this._languageService=s,this._languageConfigurationService=o,this._onModelAdded=this._register(new _e),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new _e),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new _e),this.onModelLanguageChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._register(this._configurationService.onDidChangeConfiguration(a=>this._updateModelOptions(a))),this._updateModelOptions(void 0)}static _readModelOptions(e,n){var r;let s=za.tabSize;if(e.editor&&typeof e.editor.tabSize<"u"){const p=parseInt(e.editor.tabSize,10);isNaN(p)||(s=p),s<1&&(s=1)}let o="tabSize";if(e.editor&&typeof e.editor.indentSize<"u"&&e.editor.indentSize!=="tabSize"){const p=parseInt(e.editor.indentSize,10);isNaN(p)||(o=Math.max(p,1))}let a=za.insertSpaces;e.editor&&typeof e.editor.insertSpaces<"u"&&(a=e.editor.insertSpaces==="false"?!1:!!e.editor.insertSpaces);let l=vyt;const c=e.eol;c===`\r `?l=2:c===` `&&(l=1);let u=za.trimAutoWhitespace;e.editor&&typeof e.editor.trimAutoWhitespace<"u"&&(u=e.editor.trimAutoWhitespace==="false"?!1:!!e.editor.trimAutoWhitespace);let d=za.detectIndentation;e.editor&&typeof e.editor.detectIndentation<"u"&&(d=e.editor.detectIndentation==="false"?!1:!!e.editor.detectIndentation);let h=za.largeFileOptimizations;e.editor&&typeof e.editor.largeFileOptimizations<"u"&&(h=e.editor.largeFileOptimizations==="false"?!1:!!e.editor.largeFileOptimizations);let f=za.bracketPairColorizationOptions;return!((r=e.editor)===null||r===void 0)&&r.bracketPairColorization&&typeof e.editor.bracketPairColorization=="object"&&(f={enabled:!!e.editor.bracketPairColorization.enabled,independentColorPoolPerBracketType:!!e.editor.bracketPairColorization.independentColorPoolPerBracketType}),{isForSimpleWidget:n,tabSize:s,indentSize:o,insertSpaces:a,detectIndentation:d,defaultEOL:l,trimAutoWhitespace:u,largeFileOptimizations:h,bracketPairColorizationOptions:f}}_getEOL(e,n){if(e)return this._resourcePropertiesService.getEOL(e,n);const r=this._configurationService.getValue("files.eol",{overrideIdentifier:n});return r&&typeof r=="string"&&r!=="auto"?r:Zu===3||Zu===2?` `:`\r `}_shouldRestoreUndoStack(){const e=this._configurationService.getValue("files.restoreUndoStack");return typeof e=="boolean"?e:!0}getCreationOptions(e,n,r){const s=typeof e=="string"?e:e.languageId;let o=this._modelCreationOptionsByLanguageAndResource[s+n];if(!o){const a=this._configurationService.getValue("editor",{overrideIdentifier:s,resource:n}),l=this._getEOL(n,s);o=$D._readModelOptions({editor:a,eol:l},r),this._modelCreationOptionsByLanguageAndResource[s+n]=o}return o}_updateModelOptions(e){const n=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);const r=Object.keys(this._models);for(let s=0,o=r.length;se){const n=[];for(this._disposedModels.forEach(r=>{r.sharesUndoRedoStack||n.push(r)}),n.sort((r,s)=>r.time-s.time);n.length>0&&this._disposedModelsHeapSize>e;){const r=n.shift();this._removeDisposedModel(r.uri),r.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(r.initialUndoRedoSnapshot)}}}_createModelData(e,n,r,s){const o=this.getCreationOptions(n,r,s),a=new Qm(e,n,o,r,this._undoRedoService,this._languageService,this._languageConfigurationService);if(r&&this._disposedModels.has(rC(r))){const u=this._removeDisposedModel(r),d=this._undoRedoService.getElements(r),h=this._getSHA1Computer(),f=h.canComputeSHA1(a)?h.computeSHA1(a)===u.sha1:!1;if(f||u.sharesUndoRedoStack){for(const p of d.past)A0(p)&&p.matchesResource(r)&&p.setModel(a);for(const p of d.future)A0(p)&&p.matchesResource(r)&&p.setModel(a);this._undoRedoService.setElementsValidFlag(r,!0,p=>A0(p)&&p.matchesResource(r)),f&&(a._overwriteVersionId(u.versionId),a._overwriteAlternativeVersionId(u.alternativeVersionId),a._overwriteInitialUndoRedoSnapshot(u.initialUndoRedoSnapshot))}else u.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(u.initialUndoRedoSnapshot)}const l=rC(a.uri);if(this._models[l])throw new Error("ModelService: Cannot add model because it already exists!");const c=new _yt(a,u=>this._onWillDispose(u),(u,d)=>this._onDidChangeLanguage(u,d));return this._models[l]=c,c}createModel(e,n,r,s=!1){let o;return n?o=this._createModelData(e,n,r,s):o=this._createModelData(e,ad,r,s),this._onModelAdded.fire(o.model),o.model}getModels(){const e=[],n=Object.keys(this._models);for(let r=0,s=n.length;r0||u.future.length>0){for(const d of u.past)A0(d)&&d.matchesResource(e.uri)&&(o=!0,a+=d.heapSize(e.uri),d.setModel(e.uri));for(const d of u.future)A0(d)&&d.matchesResource(e.uri)&&(o=!0,a+=d.heapSize(e.uri),d.setModel(e.uri))}}const l=$D.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK,c=this._getSHA1Computer();if(o)if(!s&&(a>l||!c.canComputeSHA1(e))){const u=r.model.getInitialUndoRedoSnapshot();u!==null&&this._undoRedoService.restoreSnapshot(u)}else this._ensureDisposedModelsHeapSize(l-a),this._undoRedoService.setElementsValidFlag(e.uri,!1,u=>A0(u)&&u.matchesResource(e.uri)),this._insertDisposedModel(new byt(e.uri,r.model.getInitialUndoRedoSnapshot(),Date.now(),s,a,c.computeSHA1(e),e.getVersionId(),e.getAlternativeVersionId()));else if(!s){const u=r.model.getInitialUndoRedoSnapshot();u!==null&&this._undoRedoService.restoreSnapshot(u)}delete this._models[n],r.dispose(),delete this._modelCreationOptionsByLanguageAndResource[e.getLanguageId()+e.uri],this._onModelRemoved.fire(e)}_onDidChangeLanguage(e,n){const r=n.oldLanguage,s=e.getLanguageId(),o=this.getCreationOptions(r,e.uri,e.isForSimpleWidget),a=this.getCreationOptions(s,e.uri,e.isForSimpleWidget);$D._setModelOptionsForModel(e,a,o),this._onModelModeChanged.fire({model:e,oldLanguageId:r})}_getSHA1Computer(){return new K$}};P7.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=20*1024*1024;P7=$D=myt([QR(0,ei),QR(1,tIe),QR(2,P$),QR(3,Ar),QR(4,dr)],P7);class K${canComputeSHA1(e){return e.getValueLength()<=K$.MAX_MODEL_SIZE}computeSHA1(e){const n=new w$,r=e.createSnapshot();let s;for(;s=r.read();)n.update(s);return n.digest()}}K$.MAX_MODEL_SIZE=10*1024*1024;class yyt{get templateId(){return this.renderer.templateId}constructor(e,n){this.renderer=e,this.modelProvider=n}renderTemplate(e){return{data:this.renderer.renderTemplate(e),disposable:Le.None}}renderElement(e,n,r,s){var o;if((o=r.disposable)===null||o===void 0||o.dispose(),!r.data)return;const a=this.modelProvider();if(a.isResolved(e))return this.renderer.renderElement(a.get(e),e,r.data,s);const l=new Ns,c=a.resolve(e,l.token);r.disposable={dispose:()=>l.cancel()},this.renderer.renderPlaceholder(e,r.data),c.then(u=>this.renderer.renderElement(u,e,r.data,s))}disposeTemplate(e){e.disposable&&(e.disposable.dispose(),e.disposable=void 0),e.data&&(this.renderer.disposeTemplate(e.data),e.data=void 0)}}class wyt{constructor(e,n){this.modelProvider=e,this.accessibilityProvider=n}getWidgetAriaLabel(){return this.accessibilityProvider.getWidgetAriaLabel()}getAriaLabel(e){const n=this.modelProvider();return n.isResolved(e)?this.accessibilityProvider.getAriaLabel(n.get(e)):null}}function Cyt(i,e){return Object.assign(Object.assign({},e),{accessibilityProvider:e.accessibilityProvider&&new wyt(i,e.accessibilityProvider)})}class Syt{constructor(e,n,r,s,o={}){const a=()=>this.model,l=s.map(c=>new yyt(c,a));this.list=new Bf(e,n,r,l,Cyt(a,o))}updateOptions(e){this.list.updateOptions(e)}getHTMLElement(){return this.list.getHTMLElement()}get onDidFocus(){return this.list.onDidFocus}get widget(){return this.list}get onDidDispose(){return this.list.onDidDispose}get onMouseDblClick(){return _t.map(this.list.onMouseDblClick,({element:e,index:n,browserEvent:r})=>({element:e===void 0?void 0:this._model.get(e),index:n,browserEvent:r}))}get onPointer(){return _t.map(this.list.onPointer,({element:e,index:n,browserEvent:r})=>({element:e===void 0?void 0:this._model.get(e),index:n,browserEvent:r}))}get onDidChangeSelection(){return _t.map(this.list.onDidChangeSelection,({elements:e,indexes:n,browserEvent:r})=>({elements:e.map(s=>this._model.get(s)),indexes:n,browserEvent:r}))}get model(){return this._model}set model(e){this._model=e,this.list.splice(0,this.list.length,Tl(e.length))}getFocus(){return this.list.getFocus()}getSelection(){return this.list.getSelection()}getSelectedElements(){return this.getSelection().map(e=>this.model.get(e))}style(e){this.list.style(e)}dispose(){this.list.dispose()}}var UI=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o};const xyt=!1;var O7;(function(i){i.North="north",i.South="south",i.East="east",i.West="west"})(O7||(O7={}));let kyt=4;const Lyt=new _e;let Dyt=300;const Eyt=new _e;class dae{constructor(){this.disposables=new Xe}get onPointerMove(){return this.disposables.add(new Xn(window,"mousemove")).event}get onPointerUp(){return this.disposables.add(new Xn(window,"mouseup")).event}dispose(){this.disposables.dispose()}}UI([Ms],dae.prototype,"onPointerMove",null);UI([Ms],dae.prototype,"onPointerUp",null);class hae{get onPointerMove(){return this.disposables.add(new Xn(this.el,lr.Change)).event}get onPointerUp(){return this.disposables.add(new Xn(this.el,lr.End)).event}constructor(e){this.el=e,this.disposables=new Xe}dispose(){this.disposables.dispose()}}UI([Ms],hae.prototype,"onPointerMove",null);UI([Ms],hae.prototype,"onPointerUp",null);class F7{get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}constructor(e){this.factory=e}dispose(){}}UI([Ms],F7.prototype,"onPointerMove",null);UI([Ms],F7.prototype,"onPointerUp",null);const Zme="pointer-events-disabled";class ja extends Le{get state(){return this._state}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}set state(e){this._state!==e&&(this.el.classList.toggle("disabled",e===0),this.el.classList.toggle("minimum",e===1),this.el.classList.toggle("maximum",e===2),this._state=e,this.onDidEnablementChange.fire(e))}set orthogonalStartSash(e){if(this._orthogonalStartSash!==e){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),e){const n=r=>{this.orthogonalStartDragHandleDisposables.clear(),r!==0&&(this._orthogonalStartDragHandle=He(this.el,tt(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add(gn(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add(new Xn(this._orthogonalStartDragHandle,"mouseenter")).event(()=>ja.onMouseEnter(e),void 0,this.orthogonalStartDragHandleDisposables),this.orthogonalStartDragHandleDisposables.add(new Xn(this._orthogonalStartDragHandle,"mouseleave")).event(()=>ja.onMouseLeave(e),void 0,this.orthogonalStartDragHandleDisposables))};this.orthogonalStartSashDisposables.add(e.onDidEnablementChange.event(n,this)),n(e.state)}this._orthogonalStartSash=e}}set orthogonalEndSash(e){if(this._orthogonalEndSash!==e){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),e){const n=r=>{this.orthogonalEndDragHandleDisposables.clear(),r!==0&&(this._orthogonalEndDragHandle=He(this.el,tt(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add(gn(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add(new Xn(this._orthogonalEndDragHandle,"mouseenter")).event(()=>ja.onMouseEnter(e),void 0,this.orthogonalEndDragHandleDisposables),this.orthogonalEndDragHandleDisposables.add(new Xn(this._orthogonalEndDragHandle,"mouseleave")).event(()=>ja.onMouseLeave(e),void 0,this.orthogonalEndDragHandleDisposables))};this.orthogonalEndSashDisposables.add(e.onDidEnablementChange.event(n,this)),n(e.state)}this._orthogonalEndSash=e}}constructor(e,n,r){super(),this.hoverDelay=Dyt,this.hoverDelayer=this._register(new Rf(this.hoverDelay)),this._state=3,this.onDidEnablementChange=this._register(new _e),this._onDidStart=this._register(new _e),this._onDidChange=this._register(new _e),this._onDidReset=this._register(new _e),this._onDidEnd=this._register(new _e),this.orthogonalStartSashDisposables=this._register(new Xe),this.orthogonalStartDragHandleDisposables=this._register(new Xe),this.orthogonalEndSashDisposables=this._register(new Xe),this.orthogonalEndDragHandleDisposables=this._register(new Xe),this.onDidStart=this._onDidStart.event,this.onDidChange=this._onDidChange.event,this.onDidReset=this._onDidReset.event,this.onDidEnd=this._onDidEnd.event,this.linkedSash=void 0,this.el=He(e,tt(".monaco-sash")),r.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${r.orthogonalEdge}`),ri&&this.el.classList.add("mac");const s=this._register(new Xn(this.el,"mousedown")).event;this._register(s(h=>this.onPointerStart(h,new dae),this));const o=this._register(new Xn(this.el,"dblclick")).event;this._register(o(this.onPointerDoublePress,this));const a=this._register(new Xn(this.el,"mouseenter")).event;this._register(a(()=>ja.onMouseEnter(this)));const l=this._register(new Xn(this.el,"mouseleave")).event;this._register(l(()=>ja.onMouseLeave(this))),this._register(or.addTarget(this.el));const c=this._register(new Xn(this.el,lr.Start)).event;this._register(c(h=>this.onPointerStart(h,new hae(this.el)),this));const u=this._register(new Xn(this.el,lr.Tap)).event;let d;this._register(u(h=>{if(d){clearTimeout(d),d=void 0,this.onPointerDoublePress(h);return}clearTimeout(d),d=setTimeout(()=>d=void 0,250)},this)),typeof r.size=="number"?(this.size=r.size,r.orientation===0?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=kyt,this._register(Lyt.event(h=>{this.size=h,this.layout()}))),this._register(Eyt.event(h=>this.hoverDelay=h)),this.layoutProvider=n,this.orthogonalStartSash=r.orthogonalStartSash,this.orthogonalEndSash=r.orthogonalEndSash,this.orientation=r.orientation||0,this.orientation===1?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",xyt),this.layout()}onPointerStart(e,n){Nn.stop(e);let r=!1;if(!e.__orthogonalSashEvent){const g=this.getOrthogonalSash(e);g&&(r=!0,e.__orthogonalSashEvent=!0,g.onPointerStart(e,new F7(n)))}if(this.linkedSash&&!e.__linkedSashEvent&&(e.__linkedSashEvent=!0,this.linkedSash.onPointerStart(e,new F7(n))),!this.state)return;const s=document.getElementsByTagName("iframe");for(const g of s)g.classList.add(Zme);const o=e.pageX,a=e.pageY,l=e.altKey,c={startX:o,currentX:o,startY:a,currentY:a,altKey:l};this.el.classList.add("active"),this._onDidStart.fire(c);const u=_h(this.el),d=()=>{let g="";r?g="all-scroll":this.orientation===1?this.state===1?g="s-resize":this.state===2?g="n-resize":g=ri?"row-resize":"ns-resize":this.state===1?g="e-resize":this.state===2?g="w-resize":g=ri?"col-resize":"ew-resize",u.textContent=`* { cursor: ${g} !important; }`},h=new Xe;d(),r||this.onDidEnablementChange.event(d,null,h);const f=g=>{Nn.stop(g,!1);const m={startX:o,currentX:g.pageX,startY:a,currentY:g.pageY,altKey:l};this._onDidChange.fire(m)},p=g=>{Nn.stop(g,!1),this.el.removeChild(u),this.el.classList.remove("active"),this._onDidEnd.fire(),h.dispose();for(const m of s)m.classList.remove(Zme)};n.onPointerMove(f,null,h),n.onPointerUp(p,null,h),h.add(n)}onPointerDoublePress(e){const n=this.getOrthogonalSash(e);n&&n._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(e,n=!1){e.el.classList.contains("active")?(e.hoverDelayer.cancel(),e.el.classList.add("hover")):e.hoverDelayer.trigger(()=>e.el.classList.add("hover"),e.hoverDelay).then(void 0,()=>{}),!n&&e.linkedSash&&ja.onMouseEnter(e.linkedSash,!0)}static onMouseLeave(e,n=!1){e.hoverDelayer.cancel(),e.el.classList.remove("hover"),!n&&e.linkedSash&&ja.onMouseLeave(e.linkedSash,!0)}clearSashHoverState(){ja.onMouseLeave(this)}layout(){if(this.orientation===0){const e=this.layoutProvider;this.el.style.left=e.getVerticalSashLeft(this)-this.size/2+"px",e.getVerticalSashTop&&(this.el.style.top=e.getVerticalSashTop(this)+"px"),e.getVerticalSashHeight&&(this.el.style.height=e.getVerticalSashHeight(this)+"px")}else{const e=this.layoutProvider;this.el.style.top=e.getHorizontalSashTop(this)-this.size/2+"px",e.getHorizontalSashLeft&&(this.el.style.left=e.getHorizontalSashLeft(this)+"px"),e.getHorizontalSashWidth&&(this.el.style.width=e.getHorizontalSashWidth(this)+"px")}}getOrthogonalSash(e){var n;const r=(n=e.initialTarget)!==null&&n!==void 0?n:e.target;if(!(!r||!(r instanceof HTMLElement))&&r.classList.contains("orthogonal-drag-handle"))return r.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash}dispose(){super.dispose(),this.el.remove()}}const Iyt={separatorBorder:Te.transparent};class lRe{set size(e){this._size=e}get size(){return this._size}get visible(){return typeof this._cachedVisibleSize>"u"}setVisible(e,n){var r,s;e!==this.visible&&(e?(this.size=Kc(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize=typeof n=="number"?n:this.size,this.size=0),this.container.classList.toggle("visible",e),(s=(r=this.view).setVisible)===null||s===void 0||s.call(r,e))}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get proportionalLayout(){var e;return(e=this.view.proportionalLayout)!==null&&e!==void 0?e:!0}get snap(){return!!this.view.snap}set enabled(e){this.container.style.pointerEvents=e?"":"none"}constructor(e,n,r,s){this.container=e,this.view=n,this.disposable=s,this._cachedVisibleSize=void 0,typeof r=="number"?(this._size=r,this._cachedVisibleSize=void 0,e.classList.add("visible")):(this._size=0,this._cachedVisibleSize=r.cachedVisibleSize)}layout(e,n){this.layoutContainer(e),this.view.layout(this.size,e,n)}dispose(){this.disposable.dispose()}}class Tyt extends lRe{layoutContainer(e){this.container.style.top=`${e}px`,this.container.style.height=`${this.size}px`}}class Ryt extends lRe{layoutContainer(e){this.container.style.left=`${e}px`,this.container.style.width=`${this.size}px`}}var L0;(function(i){i[i.Idle=0]="Idle",i[i.Busy=1]="Busy"})(L0||(L0={}));var B7;(function(i){i.Distribute={type:"distribute"};function e(s){return{type:"split",index:s}}i.Split=e;function n(s){return{type:"auto",index:s}}i.Auto=n;function r(s){return{type:"invisible",cachedVisibleSize:s}}i.Invisible=r})(B7||(B7={}));class cRe extends Le{get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(e){for(const n of this.sashItems)n.sash.orthogonalStartSash=e;this._orthogonalStartSash=e}set orthogonalEndSash(e){for(const n of this.sashItems)n.sash.orthogonalEndSash=e;this._orthogonalEndSash=e}set startSnappingEnabled(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())}set endSnappingEnabled(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())}constructor(e,n={}){var r,s,o,a,l;super(),this.size=0,this.contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=L0.Idle,this._onDidSashChange=this._register(new _e),this._onDidSashReset=this._register(new _e),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=(r=n.orientation)!==null&&r!==void 0?r:0,this.inverseAltBehavior=(s=n.inverseAltBehavior)!==null&&s!==void 0?s:!1,this.proportionalLayout=(o=n.proportionalLayout)!==null&&o!==void 0?o:!0,this.getSashOrthogonalSize=n.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(this.orientation===0?"vertical":"horizontal"),e.appendChild(this.el),this.sashContainer=He(this.el,tt(".sash-container")),this.viewContainer=tt(".split-view-container"),this.scrollable=this._register(new M5({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:mh})),this.scrollableElement=this._register(new xoe(this.viewContainer,{vertical:this.orientation===0?(a=n.scrollbarVisibility)!==null&&a!==void 0?a:1:2,horizontal:this.orientation===1?(l=n.scrollbarVisibility)!==null&&l!==void 0?l:1:2},this.scrollable));const c=this._register(new Xn(this.viewContainer,"scroll")).event;this._register(c(u=>{const d=this.scrollableElement.getScrollPosition(),h=Math.abs(this.viewContainer.scrollLeft-d.scrollLeft)<=1?void 0:this.viewContainer.scrollLeft,f=Math.abs(this.viewContainer.scrollTop-d.scrollTop)<=1?void 0:this.viewContainer.scrollTop;(h!==void 0||f!==void 0)&&this.scrollableElement.setScrollPosition({scrollLeft:h,scrollTop:f})})),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(u=>{u.scrollTopChanged&&(this.viewContainer.scrollTop=u.scrollTop),u.scrollLeftChanged&&(this.viewContainer.scrollLeft=u.scrollLeft)})),He(this.el,this.scrollableElement.getDomNode()),this.style(n.styles||Iyt),n.descriptor&&(this.size=n.descriptor.size,n.descriptor.views.forEach((u,d)=>{const h=nu(u.visible)||u.visible?u.size:{type:"invisible",cachedVisibleSize:u.size},f=u.view;this.doAddView(f,h,d,!0)}),this.contentSize=this.viewItems.reduce((u,d)=>u+d.size,0),this.saveProportions())}style(e){e.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))}addView(e,n,r=this.viewItems.length,s){this.doAddView(e,n,r,s)}layout(e,n){const r=Math.max(this.size,this.contentSize);if(this.size=e,this.layoutContext=n,this.proportions){let s=0;for(let o=0;othis.viewItems[l].priority===1),a=s.filter(l=>this.viewItems[l].priority===2);this.resize(this.viewItems.length-1,e-r,void 0,o,a)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this.contentSize>0&&(this.proportions=this.viewItems.map(e=>e.proportionalLayout?e.size/this.contentSize:void 0))}onSashStart({sash:e,start:n,alt:r}){for(const l of this.viewItems)l.enabled=!1;const s=this.sashItems.findIndex(l=>l.sash===e),o=Sf(Be(document.body,"keydown",l=>a(this.sashDragState.current,l.altKey)),Be(document.body,"keyup",()=>a(this.sashDragState.current,!1))),a=(l,c)=>{const u=this.viewItems.map(g=>g.size);let d=Number.NEGATIVE_INFINITY,h=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(c=!c),c)if(s===this.sashItems.length-1){const m=this.viewItems[s];d=(m.minimumSize-m.size)/2,h=(m.maximumSize-m.size)/2}else{const m=this.viewItems[s+1];d=(m.size-m.maximumSize)/2,h=(m.size-m.minimumSize)/2}let f,p;if(!c){const g=Tl(s,-1),m=Tl(s+1,this.viewItems.length),_=g.reduce((A,M)=>A+(this.viewItems[M].minimumSize-u[M]),0),b=g.reduce((A,M)=>A+(this.viewItems[M].viewMaximumSize-u[M]),0),y=m.length===0?Number.POSITIVE_INFINITY:m.reduce((A,M)=>A+(u[M]-this.viewItems[M].minimumSize),0),x=m.length===0?Number.NEGATIVE_INFINITY:m.reduce((A,M)=>A+(u[M]-this.viewItems[M].viewMaximumSize),0),k=Math.max(_,x),D=Math.min(y,b),R=this.findFirstSnapIndex(g),E=this.findFirstSnapIndex(m);if(typeof R=="number"){const A=this.viewItems[R],M=Math.floor(A.viewMinimumSize/2);f={index:R,limitDelta:A.visible?k-M:k+M,size:A.size}}if(typeof E=="number"){const A=this.viewItems[E],M=Math.floor(A.viewMinimumSize/2);p={index:E,limitDelta:A.visible?D+M:D-M,size:A.size}}}this.sashDragState={start:l,current:l,index:s,sizes:u,minDelta:d,maxDelta:h,alt:c,snapBefore:f,snapAfter:p,disposable:o}};a(n,r)}onSashChange({current:e}){const{index:n,start:r,sizes:s,alt:o,minDelta:a,maxDelta:l,snapBefore:c,snapAfter:u}=this.sashDragState;this.sashDragState.current=e;const d=e-r,h=this.resize(n,d,s,void 0,void 0,a,l,c,u);if(o){const f=n===this.sashItems.length-1,p=this.viewItems.map(x=>x.size),g=f?n:n+1,m=this.viewItems[g],_=m.size-m.maximumSize,b=m.size-m.minimumSize,y=f?n-1:n+1;this.resize(y,-h,p,void 0,void 0,_,b)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(e){this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions();for(const n of this.viewItems)n.enabled=!0}onViewChange(e,n){const r=this.viewItems.indexOf(e);r<0||r>=this.viewItems.length||(n=typeof n=="number"?n:e.size,n=Kc(n,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&r>0?(this.resize(r-1,Math.floor((e.size-n)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=n,this.relayout([r],void 0)))}resizeView(e,n){if(this.state!==L0.Idle)throw new Error("Cant modify splitview");if(this.state=L0.Busy,e<0||e>=this.viewItems.length)return;const r=Tl(this.viewItems.length).filter(l=>l!==e),s=[...r.filter(l=>this.viewItems[l].priority===1),e],o=r.filter(l=>this.viewItems[l].priority===2),a=this.viewItems[e];n=Math.round(n),n=Kc(n,a.minimumSize,Math.min(a.maximumSize,this.size)),a.size=n,this.relayout(s,o),this.state=L0.Idle}distributeViewSizes(){const e=[];let n=0;for(const l of this.viewItems)l.maximumSize-l.minimumSize>0&&(e.push(l),n+=l.size);const r=Math.floor(n/e.length);for(const l of e)l.size=Kc(r,l.minimumSize,l.maximumSize);const s=Tl(this.viewItems.length),o=s.filter(l=>this.viewItems[l].priority===1),a=s.filter(l=>this.viewItems[l].priority===2);this.relayout(o,a)}getViewSize(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size}doAddView(e,n,r=this.viewItems.length,s){if(this.state!==L0.Idle)throw new Error("Cant modify splitview");this.state=L0.Busy;const o=tt(".split-view-view");r===this.viewItems.length?this.viewContainer.appendChild(o):this.viewContainer.insertBefore(o,this.viewContainer.children.item(r));const a=e.onDidChange(f=>this.onViewChange(d,f)),l=gn(()=>this.viewContainer.removeChild(o)),c=Sf(a,l);let u;typeof n=="number"?u=n:(n.type==="auto"&&(this.areViewsDistributed()?n={type:"distribute"}:n={type:"split",index:n.index}),n.type==="split"?u=this.getViewSize(n.index)/2:n.type==="invisible"?u={cachedVisibleSize:n.cachedVisibleSize}:u=e.minimumSize);const d=this.orientation===0?new Tyt(o,e,u,c):new Ryt(o,e,u,c);if(this.viewItems.splice(r,0,d),this.viewItems.length>1){const f={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},p=this.orientation===0?new ja(this.sashContainer,{getHorizontalSashTop:A=>this.getSashPosition(A),getHorizontalSashWidth:this.getSashOrthogonalSize},Object.assign(Object.assign({},f),{orientation:1})):new ja(this.sashContainer,{getVerticalSashLeft:A=>this.getSashPosition(A),getVerticalSashHeight:this.getSashOrthogonalSize},Object.assign(Object.assign({},f),{orientation:0})),g=this.orientation===0?A=>({sash:p,start:A.startY,current:A.currentY,alt:A.altKey}):A=>({sash:p,start:A.startX,current:A.currentX,alt:A.altKey}),_=_t.map(p.onDidStart,g)(this.onSashStart,this),y=_t.map(p.onDidChange,g)(this.onSashChange,this),k=_t.map(p.onDidEnd,()=>this.sashItems.findIndex(A=>A.sash===p))(this.onSashEnd,this),D=p.onDidReset(()=>{const A=this.sashItems.findIndex(B=>B.sash===p),M=Tl(A,-1),N=Tl(A+1,this.viewItems.length),P=this.findFirstSnapIndex(M),O=this.findFirstSnapIndex(N);typeof P=="number"&&!this.viewItems[P].visible||typeof O=="number"&&!this.viewItems[O].visible||this._onDidSashReset.fire(A)}),R=Sf(_,y,k,D,p),E={sash:p,disposable:R};this.sashItems.splice(r-1,0,E)}o.appendChild(e.element);let h;typeof n!="number"&&n.type==="split"&&(h=[n.index]),s||this.relayout([r],h),this.state=L0.Idle,!s&&typeof n!="number"&&n.type==="distribute"&&this.distributeViewSizes()}relayout(e,n){const r=this.viewItems.reduce((s,o)=>s+o.size,0);this.resize(this.viewItems.length-1,this.size-r,void 0,e,n),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(e,n,r=this.viewItems.map(d=>d.size),s,o,a=Number.NEGATIVE_INFINITY,l=Number.POSITIVE_INFINITY,c,u){if(e<0||e>=this.viewItems.length)return 0;const d=Tl(e,-1),h=Tl(e+1,this.viewItems.length);if(o)for(const E of o)BU(d,E),BU(h,E);if(s)for(const E of s)A3(d,E),A3(h,E);const f=d.map(E=>this.viewItems[E]),p=d.map(E=>r[E]),g=h.map(E=>this.viewItems[E]),m=h.map(E=>r[E]),_=d.reduce((E,A)=>E+(this.viewItems[A].minimumSize-r[A]),0),b=d.reduce((E,A)=>E+(this.viewItems[A].maximumSize-r[A]),0),y=h.length===0?Number.POSITIVE_INFINITY:h.reduce((E,A)=>E+(r[A]-this.viewItems[A].minimumSize),0),x=h.length===0?Number.NEGATIVE_INFINITY:h.reduce((E,A)=>E+(r[A]-this.viewItems[A].maximumSize),0),k=Math.max(_,x,a),D=Math.min(y,b,l);let R=!1;if(c){const E=this.viewItems[c.index],A=n>=c.limitDelta;R=A!==E.visible,E.setVisible(A,c.size)}if(!R&&u){const E=this.viewItems[u.index],A=nl+c.size,0);let r=this.size-n;const s=Tl(this.viewItems.length-1,-1),o=s.filter(l=>this.viewItems[l].priority===1),a=s.filter(l=>this.viewItems[l].priority===2);for(const l of a)BU(s,l);for(const l of o)A3(s,l);typeof e=="number"&&A3(s,e);for(let l=0;r!==0&&ln+r.size,0);let e=0;for(const n of this.viewItems)n.layout(e,this.layoutContext),e+=n.size;this.sashItems.forEach(n=>n.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){this.orientation===0?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this.contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this.contentSize})}updateSashEnablement(){let e=!1;const n=this.viewItems.map(c=>e=c.size-c.minimumSize>0||e);e=!1;const r=this.viewItems.map(c=>e=c.maximumSize-c.size>0||e),s=[...this.viewItems].reverse();e=!1;const o=s.map(c=>e=c.size-c.minimumSize>0||e).reverse();e=!1;const a=s.map(c=>e=c.maximumSize-c.size>0||e).reverse();let l=0;for(let c=0;c0||this.startSnappingEnabled)?u.state=1:y&&n[c]&&(l0)return;if(!r.visible&&r.snap)return n}}areViewsDistributed(){let e,n;for(const r of this.viewItems)if(e=e===void 0?r.size:Math.min(e,r.size),n=n===void 0?r.size:Math.max(n,r.size),n-e>2)return!1;return!0}dispose(){var e;(e=this.sashDragState)===null||e===void 0||e.disposable.dispose(),Mi(this.viewItems),this.viewItems=[],this.sashItems.forEach(n=>n.disposable.dispose()),this.sashItems=[],super.dispose()}}class H5{constructor(e,n,r){this.columns=e,this.getColumnSize=r,this.templateId=H5.TemplateId,this.renderedTemplates=new Set;const s=new Map(n.map(o=>[o.templateId,o]));this.renderers=[];for(const o of e){const a=s.get(o.templateId);if(!a)throw new Error(`Table cell renderer for template id ${o.templateId} not found.`);this.renderers.push(a)}}renderTemplate(e){const n=He(e,tt(".monaco-table-tr")),r=[],s=[];for(let a=0;anew Nyt(d,h)),c={size:l.reduce((d,h)=>d+h.column.weight,0),views:l.map(d=>({size:d.column.weight,view:d}))};this.splitview=this.disposables.add(new cRe(this.domNode,{orientation:1,scrollbarVisibility:2,getSashOrthogonalSize:()=>this.cachedHeight,descriptor:c})),this.splitview.el.style.height=`${r.headerRowHeight}px`,this.splitview.el.style.lineHeight=`${r.headerRowHeight}px`;const u=new H5(s,o,d=>this.splitview.getViewSize(d));this.list=this.disposables.add(new Bf(e,this.domNode,Ayt(r),[u],a)),_t.any(...l.map(d=>d.onDidLayout))(([d,h])=>u.layoutColumn(d,h),null,this.disposables),this.splitview.onDidSashReset(d=>{const h=s.reduce((p,g)=>p+g.weight,0),f=s[d].weight/h*this.cachedWidth;this.splitview.resizeView(d,f)},null,this.disposables),this.styleElement=_h(this.domNode),this.style(Obt)}updateOptions(e){this.list.updateOptions(e)}splice(e,n,r=[]){this.list.splice(e,n,r)}getHTMLElement(){return this.domNode}style(e){const n=[];n.push(`.monaco-table.${this.domId} > .monaco-split-view2 .monaco-sash.vertical::before { top: ${this.virtualDelegate.headerRowHeight+1}px; height: calc(100% - ${this.virtualDelegate.headerRowHeight}px); }`),this.styleElement.textContent=n.join(` `),this.list.style(e)}getSelectedElements(){return this.list.getSelectedElements()}getSelection(){return this.list.getSelection()}getFocus(){return this.list.getFocus()}dispose(){this.disposables.dispose()}}G$.InstanceCount=0;class qI extends Pf{constructor(e){super(),this._onChange=this._register(new _e),this.onChange=this._onChange.event,this._onKeyDown=this._register(new _e),this.onKeyDown=this._onKeyDown.event,this._opts=e,this._checked=this._opts.isChecked;const n=["monaco-custom-toggle"];this._opts.icon&&(this._icon=this._opts.icon,n.push(...en.asClassNameArray(this._icon))),this._opts.actionClassName&&n.push(...this._opts.actionClassName.split(" ")),this._checked&&n.push("checked"),this.domNode=document.createElement("div"),this.domNode.title=this._opts.title,this.domNode.classList.add(...n),this._opts.notFocusable||(this.domNode.tabIndex=0),this.domNode.setAttribute("role","checkbox"),this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.setAttribute("aria-label",this._opts.title),this.applyStyles(),this.onclick(this.domNode,r=>{this.enabled&&(this.checked=!this._checked,this._onChange.fire(!1),r.preventDefault())}),this._register(this.ignoreGesture(this.domNode)),this.onkeydown(this.domNode,r=>{if(r.keyCode===10||r.keyCode===3){this.checked=!this._checked,this._onChange.fire(!0),r.preventDefault(),r.stopPropagation();return}this._onKeyDown.fire(r)})}get enabled(){return this.domNode.getAttribute("aria-disabled")!=="true"}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(e){this._checked=e,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}width(){return 22}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder||"",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground||"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground||"")}enable(){this.domNode.setAttribute("aria-disabled",String(!1))}disable(){this.domNode.setAttribute("aria-disabled",String(!0))}}const Myt=L("caseDescription","Match Case"),Pyt=L("wordsDescription","Match Whole Word"),Oyt=L("regexDescription","Use Regular Expression");class uRe extends qI{constructor(e){super({icon:lt.caseSensitive,title:Myt+e.appendTitle,isChecked:e.isChecked,inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class dRe extends qI{constructor(e){super({icon:lt.wholeWord,title:Pyt+e.appendTitle,isChecked:e.isChecked,inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class hRe extends qI{constructor(e){super({icon:lt.regex,title:Oyt+e.appendTitle,isChecked:e.isChecked,inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class Fyt{constructor(e,n=0,r=e.length,s=n-1){this.items=e,this.start=n,this.end=r,this.index=s}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class Byt{constructor(e=[],n=10){this._initialize(e),this._limit=n,this._onChange()}getHistory(){return this._elements}add(e){this._history.delete(e),this._history.add(e),this._onChange()}next(){return this._navigator.next()}previous(){return this._currentPosition()!==0?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return this._navigator.current()===null}has(e){return this._history.has(e)}_onChange(){this._reduceToLimit();const e=this._elements;this._navigator=new Fyt(e,0,e.length,e.length)}_reduceToLimit(){const e=this._elements;e.length>this._limit&&this._initialize(e.slice(e.length-this._limit))}_currentPosition(){const e=this._navigator.current();return e?this._elements.indexOf(e):-1}_initialize(e){this._history=new Set;for(const n of e)this._history.add(n)}get _elements(){const e=[];return this._history.forEach(n=>e.push(n)),e}}const JR=tt;let jyt=class extends Pf{constructor(e,n,r){var s;super(),this.state="idle",this.maxHeight=Number.POSITIVE_INFINITY,this._onDidChange=this._register(new _e),this.onDidChange=this._onDidChange.event,this._onDidHeightChange=this._register(new _e),this.onDidHeightChange=this._onDidHeightChange.event,this.contextViewProvider=n,this.options=r,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=(s=this.options.tooltip)!==null&&s!==void 0?s:this.placeholder||"",this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=He(e,JR(".monaco-inputbox.idle"));const o=this.options.flexibleHeight?"textarea":"input",a=He(this.element,JR(".ibwrapper"));if(this.input=He(a,JR(o+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight=typeof this.options.flexibleMaxHeight=="number"?this.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,this.mirror=He(a,JR("div.mirror")),this.mirror.innerText=" ",this.scrollableElement=new kIe(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),He(e,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(u=>this.input.scrollTop=u.scrollTop));const l=this._register(new Xn(document,"selectionchange")),c=_t.filter(l.event,()=>{const u=document.getSelection();return(u==null?void 0:u.anchorNode)===a});this._register(c(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new wh(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(e){this.placeholder=e,this.input.setAttribute("placeholder",e)}setTooltip(e){this.tooltip=e,this.input.title=e}get inputElement(){return this.input}get value(){return this.input.value}set value(e){this.input.value!==e&&(this.input.value=e,this.onValueChange())}get height(){return typeof this.cachedHeight=="number"?this.cachedHeight:gS(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return document.activeElement===this.input}select(e=null){this.input.select(),e&&(this.input.setSelectionRange(e.start,e.end),e.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(e){this.input.style.width=`calc(100% - ${e}px)`,this.mirror&&(this.mirror.style.paddingRight=e+"px")}updateScrollDimensions(){if(typeof this.cachedContentHeight!="number"||typeof this.cachedHeight!="number"||!this.scrollableElement)return;const e=this.cachedContentHeight,n=this.cachedHeight,r=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:e,height:n}),this.scrollableElement.setScrollPosition({scrollTop:r})}showMessage(e,n){if(this.state==="open"&&od(this.message,e))return;this.message=e,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(e.type));const r=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${MS(r.border,"transparent")}`,this.message.content&&(this.hasFocus()||n)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let e=null;return this.validation&&(e=this.validation(this.value),e?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(e)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),e==null?void 0:e.type}stylesForType(e){const n=this.options.inputBoxStyles;switch(e){case 1:return{border:n.inputValidationInfoBorder,background:n.inputValidationInfoBackground,foreground:n.inputValidationInfoForeground};case 2:return{border:n.inputValidationWarningBorder,background:n.inputValidationWarningBackground,foreground:n.inputValidationWarningForeground};default:return{border:n.inputValidationErrorBorder,background:n.inputValidationErrorBackground,foreground:n.inputValidationErrorForeground}}}classForType(e){switch(e){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){if(!this.contextViewProvider||!this.message)return;let e;const n=()=>e.style.width=dc(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:s=>{var o,a;if(!this.message)return null;e=He(s,JR(".monaco-inputbox-container")),n();const l={inline:!0,className:"monaco-inputbox-message"},c=this.message.formatContent?Zvt(this.message.content,l):Yvt(this.message.content,l);c.classList.add(this.classForType(this.message.type));const u=this.stylesForType(this.message.type);return c.style.backgroundColor=(o=u.background)!==null&&o!==void 0?o:"",c.style.color=(a=u.foreground)!==null&&a!==void 0?a:"",c.style.border=u.border?`1px solid ${u.border}`:"",He(e,c),null},onHide:()=>{this.state="closed"},layout:n});let r;this.message.type===3?r=L("alertErrorMessage","Error: {0}",this.message.content):this.message.type===2?r=L("alertWarningMessage","Warning: {0}",this.message.content):r=L("alertInfoMessage","Info: {0}",this.message.content),Ua(r),this.state="open"}_hideMessage(){this.contextViewProvider&&(this.state==="open"&&this.contextViewProvider.hideContextView(),this.state="idle")}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),this.state==="open"&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;const e=this.value,r=e.charCodeAt(e.length-1)===10?" ":"";(e+r).replace(/\u000c/g,"")?this.mirror.textContent=e+r:this.mirror.innerText=" ",this.layout()}applyStyles(){var e,n,r;const s=this.options.inputBoxStyles,o=(e=s.inputBackground)!==null&&e!==void 0?e:"",a=(n=s.inputForeground)!==null&&n!==void 0?n:"",l=(r=s.inputBorder)!==null&&r!==void 0?r:"";this.element.style.backgroundColor=o,this.element.style.color=a,this.input.style.backgroundColor="inherit",this.input.style.color=a,this.element.style.border=`1px solid ${MS(l,"transparent")}`}layout(){if(!this.mirror)return;const e=this.cachedContentHeight;this.cachedContentHeight=gS(this.mirror),e!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(e){const n=this.inputElement,r=n.selectionStart,s=n.selectionEnd,o=n.value;r!==null&&s!==null&&(this.value=o.substr(0,r)+e+o.substr(s),n.setSelectionRange(r+1,r+1),this.layout())}dispose(){var e;this._hideMessage(),this.message=null,(e=this.actionbar)===null||e===void 0||e.dispose(),super.dispose()}};class fRe extends jyt{constructor(e,n,r){const s=L({},"for history"),o=` or ⇅ ${s}`,a=` (⇅ ${s})`;super(e,n,r),this._onDidFocus=this._register(new _e),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new _e),this.onDidBlur=this._onDidBlur.event,this.history=new Byt(r.history,100);const l=()=>{if(r.showHistoryHint&&r.showHistoryHint()&&!this.placeholder.endsWith(o)&&!this.placeholder.endsWith(a)&&this.history.getHistory().length){const c=this.placeholder.endsWith(")")?o:a,u=this.placeholder+c;r.showPlaceholderOnFocus&&document.activeElement!==this.input?this.placeholder=u:this.setPlaceHolder(u)}};this.observer=new MutationObserver((c,u)=>{c.forEach(d=>{d.target.textContent||l()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>l()),this.onblur(this.input,()=>{const c=u=>{if(this.placeholder.endsWith(u)){const d=this.placeholder.slice(0,this.placeholder.length-u.length);return r.showPlaceholderOnFocus?this.placeholder=d:this.setPlaceHolder(d),!0}else return!1};c(a)||c(o)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(e){this.value&&(e||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let e=this.getNextValue();e&&(e=e===this.value?this.getNextValue():e),this.value=e??"",v1(this.value?this.value:L("clearedInput","Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let e=this.getPreviousValue();e&&(e=e===this.value?this.getPreviousValue():e),e&&(this.value=e,v1(this.value))}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let e=this.history.current();return e||(e=this.history.last(),this.history.next()),e}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}const Wyt=L("defaultLabel","input");class pRe extends Pf{constructor(e,n,r){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new ha),this.additionalToggles=[],this._onDidOptionChange=this._register(new _e),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new _e),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new _e),this.onMouseDown=this._onMouseDown.event,this._onInput=this._register(new _e),this._onKeyUp=this._register(new _e),this._onCaseSensitiveKeyDown=this._register(new _e),this.onCaseSensitiveKeyDown=this._onCaseSensitiveKeyDown.event,this._onRegexKeyDown=this._register(new _e),this.onRegexKeyDown=this._onRegexKeyDown.event,this._lastHighlightFindOptions=0,this.placeholder=r.placeholder||"",this.validation=r.validation,this.label=r.label||Wyt,this.showCommonFindToggles=!!r.showCommonFindToggles;const s=r.appendCaseSensitiveLabel||"",o=r.appendWholeWordsLabel||"",a=r.appendRegexLabel||"",l=r.history||[],c=!!r.flexibleHeight,u=!!r.flexibleWidth,d=r.flexibleMaxHeight;if(this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new fRe(this.domNode,n,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},history:l,showHistoryHint:r.showHistoryHint,flexibleHeight:c,flexibleWidth:u,flexibleMaxHeight:d,inputBoxStyles:r.inputBoxStyles})),this.showCommonFindToggles){this.regex=this._register(new hRe(Object.assign({appendTitle:a,isChecked:!1},r.toggleStyles))),this._register(this.regex.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(f=>{this._onRegexKeyDown.fire(f)})),this.wholeWords=this._register(new dRe(Object.assign({appendTitle:o,isChecked:!1},r.toggleStyles))),this._register(this.wholeWords.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new uRe(Object.assign({appendTitle:s,isChecked:!1},r.toggleStyles))),this._register(this.caseSensitive.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(f=>{this._onCaseSensitiveKeyDown.fire(f)}));const h=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,f=>{if(f.equals(15)||f.equals(17)||f.equals(9)){const p=h.indexOf(document.activeElement);if(p>=0){let g=-1;f.equals(17)?g=(p+1)%h.length:f.equals(15)&&(p===0?g=h.length-1:g=p-1),f.equals(9)?(h[p].blur(),this.inputBox.focus()):g>=0&&h[g].focus(),Nn.stop(f,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(r==null?void 0:r.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),e==null||e.appendChild(this.domNode),this._register(Be(this.inputBox.inputElement,"compositionstart",h=>{this.imeSessionInProgress=!0})),this._register(Be(this.inputBox.inputElement,"compositionend",h=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,h=>this._onKeyDown.fire(h)),this.onkeyup(this.inputBox.inputElement,h=>this._onKeyUp.fire(h)),this.oninput(this.inputBox.inputElement,h=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,h=>this._onMouseDown.fire(h))}get onDidChange(){return this.inputBox.onDidChange}layout(e){this.inputBox.layout(),this.updateInputBoxPadding(e.collapsedFindWidget)}enable(){var e,n,r;this.domNode.classList.remove("disabled"),this.inputBox.enable(),(e=this.regex)===null||e===void 0||e.enable(),(n=this.wholeWords)===null||n===void 0||n.enable(),(r=this.caseSensitive)===null||r===void 0||r.enable();for(const s of this.additionalToggles)s.enable()}disable(){var e,n,r;this.domNode.classList.add("disabled"),this.inputBox.disable(),(e=this.regex)===null||e===void 0||e.disable(),(n=this.wholeWords)===null||n===void 0||n.disable(),(r=this.caseSensitive)===null||r===void 0||r.disable();for(const s of this.additionalToggles)s.disable()}setFocusInputOnOptionClick(e){this.fixFocusOnOptionClickEnabled=e}setEnabled(e){e?this.enable():this.disable()}setAdditionalToggles(e){for(const n of this.additionalToggles)n.domNode.remove();this.additionalToggles=[],this.additionalTogglesDisposables.value=new Xe;for(const n of e??[])this.additionalTogglesDisposables.value.add(n),this.controls.appendChild(n.domNode),this.additionalTogglesDisposables.value.add(n.onChange(r=>{this._onDidOptionChange.fire(r),!r&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(n);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}updateInputBoxPadding(e=!1){var n,r,s,o,a,l;e?this.inputBox.paddingRight=0:this.inputBox.paddingRight=((r=(n=this.caseSensitive)===null||n===void 0?void 0:n.width())!==null&&r!==void 0?r:0)+((o=(s=this.wholeWords)===null||s===void 0?void 0:s.width())!==null&&o!==void 0?o:0)+((l=(a=this.regex)===null||a===void 0?void 0:a.width())!==null&&l!==void 0?l:0)+this.additionalToggles.reduce((c,u)=>c+u.width(),0)}getValue(){return this.inputBox.value}setValue(e){this.inputBox.value!==e&&(this.inputBox.value=e)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){var e,n;return(n=(e=this.caseSensitive)===null||e===void 0?void 0:e.checked)!==null&&n!==void 0?n:!1}setCaseSensitive(e){this.caseSensitive&&(this.caseSensitive.checked=e)}getWholeWords(){var e,n;return(n=(e=this.wholeWords)===null||e===void 0?void 0:e.checked)!==null&&n!==void 0?n:!1}setWholeWords(e){this.wholeWords&&(this.wholeWords.checked=e)}getRegex(){var e,n;return(n=(e=this.regex)===null||e===void 0?void 0:e.checked)!==null&&n!==void 0?n:!1}setRegex(e){this.regex&&(this.regex.checked=e,this.validate())}focusOnCaseSensitive(){var e;(e=this.caseSensitive)===null||e===void 0||e.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(e){this.inputBox.showMessage(e)}clearMessage(){this.inputBox.hideMessage()}}var Gg;(function(i){i[i.Expanded=0]="Expanded",i[i.Collapsed=1]="Collapsed",i[i.PreserveOrExpanded=2]="PreserveOrExpanded",i[i.PreserveOrCollapsed=3]="PreserveOrCollapsed"})(Gg||(Gg={}));var CS;(function(i){i[i.Unknown=0]="Unknown",i[i.Twistie=1]="Twistie",i[i.Element=2]="Element",i[i.Filter=3]="Filter"})(CS||(CS={}));class qu extends Error{constructor(e,n){super(`TreeError [${e}] ${n}`)}}class fae{constructor(e){this.fn=e,this._map=new WeakMap}map(e){let n=this._map.get(e);return n||(n=this.fn(e),this._map.set(e,n)),n}}function pae(i){return typeof i=="object"&&"visibility"in i&&"data"in i}function UP(i){switch(i){case!0:return 1;case!1:return 0;default:return i}}function Zq(i){return typeof i.collapsible=="boolean"}class $yt{constructor(e,n,r,s={}){this.user=e,this.list=n,this.rootRef=[],this.eventBufferer=new Pse,this._onDidChangeCollapseState=new _e,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new _e,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new _e,this.onDidSplice=this._onDidSplice.event,this.refilterDelayer=new Rf(REe),this.collapseByDefault=typeof s.collapseByDefault>"u"?!1:s.collapseByDefault,this.filter=s.filter,this.autoExpandSingleChildren=typeof s.autoExpandSingleChildren>"u"?!1:s.autoExpandSingleChildren,this.root={parent:void 0,element:r,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visibility:1,visible:!0,filterData:void 0}}splice(e,n,r=Vn.empty(),s={}){if(e.length===0)throw new qu(this.user,"Invalid tree location");s.diffIdentityProvider?this.spliceSmart(s.diffIdentityProvider,e,n,r,s):this.spliceSimple(e,n,r,s)}spliceSmart(e,n,r,s,o,a){var l;s===void 0&&(s=Vn.empty()),a===void 0&&(a=(l=o.diffDepth)!==null&&l!==void 0?l:0);const{parentNode:c}=this.getParentNodeWithListIndex(n);if(!c.lastDiffIds)return this.spliceSimple(n,r,s,o);const u=[...s],d=n[n.length-1],h=new cm({getElements:()=>c.lastDiffIds},{getElements:()=>[...c.children.slice(0,d),...u,...c.children.slice(d+r)].map(_=>e.getId(_.element).toString())}).ComputeDiff(!1);if(h.quitEarly)return c.lastDiffIds=void 0,this.spliceSimple(n,r,u,o);const f=n.slice(0,-1),p=(_,b,y)=>{if(a>0)for(let x=0;xy.originalStart-b.originalStart))p(g,m,g-(_.originalStart+_.originalLength)),g=_.originalStart,m=_.modifiedStart-d,this.spliceSimple([...f,g],_.originalLength,Vn.slice(u,m,m+_.modifiedLength),o);p(g,m,g)}spliceSimple(e,n,r=Vn.empty(),{onDidCreateNode:s,onDidDeleteNode:o,diffIdentityProvider:a}){const{parentNode:l,listIndex:c,revealed:u,visible:d}=this.getParentNodeWithListIndex(e),h=[],f=Vn.map(r,E=>this.createTreeNode(E,l,l.visible?1:0,u,h,s)),p=e[e.length-1],g=l.children.length>0;let m=0;for(let E=p;E>=0&&Ea.getId(E.element).toString())):l.lastDiffIds=l.children.map(E=>a.getId(E.element).toString()):l.lastDiffIds=void 0;let k=0;for(const E of x)E.visible&&k++;if(k!==0)for(let E=p+_.length;EA+(M.visible?M.renderNodeCount:0),0);this._updateAncestorsRenderNodeCount(l,y-E),this.list.splice(c,E,h)}if(x.length>0&&o){const E=A=>{o(A),A.children.forEach(E)};x.forEach(E)}this._onDidSplice.fire({insertedNodes:_,deletedNodes:x});const D=l.children.length>0;g!==D&&this.setCollapsible(e.slice(0,-1),D);let R=l;for(;R;){if(R.visibility===2){this.refilterDelayer.trigger(()=>this.refilter());break}R=R.parent}}rerender(e){if(e.length===0)throw new qu(this.user,"Invalid tree location");const{node:n,listIndex:r,revealed:s}=this.getTreeNodeWithListIndex(e);n.visible&&s&&this.list.splice(r,1,[n])}has(e){return this.hasTreeNode(e)}getListIndex(e){const{listIndex:n,visible:r,revealed:s}=this.getTreeNodeWithListIndex(e);return r&&s?n:-1}getListRenderCount(e){return this.getTreeNode(e).renderNodeCount}isCollapsible(e){return this.getTreeNode(e).collapsible}setCollapsible(e,n){const r=this.getTreeNode(e);typeof n>"u"&&(n=!r.collapsible);const s={collapsible:n};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,s))}isCollapsed(e){return this.getTreeNode(e).collapsed}setCollapsed(e,n,r){const s=this.getTreeNode(e);typeof n>"u"&&(n=!s.collapsed);const o={collapsed:n,recursive:r||!1};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(e,o))}_setCollapseState(e,n){const{node:r,listIndex:s,revealed:o}=this.getTreeNodeWithListIndex(e),a=this._setListNodeCollapseState(r,s,o,n);if(r!==this.root&&this.autoExpandSingleChildren&&a&&!Zq(n)&&r.collapsible&&!r.collapsed&&!n.recursive){let l=-1;for(let c=0;c-1){l=-1;break}else l=c;l>-1&&this._setCollapseState([...e,l],n)}return a}_setListNodeCollapseState(e,n,r,s){const o=this._setNodeCollapseState(e,s,!1);if(!r||!e.visible||!o)return o;const a=e.renderNodeCount,l=this.updateNodeAfterCollapseChange(e),c=a-(n===-1?0:1);return this.list.splice(n+1,c,l.slice(1)),o}_setNodeCollapseState(e,n,r){let s;if(e===this.root?s=!1:(Zq(n)?(s=e.collapsible!==n.collapsible,e.collapsible=n.collapsible):e.collapsible?(s=e.collapsed!==n.collapsed,e.collapsed=n.collapsed):s=!1,s&&this._onDidChangeCollapseState.fire({node:e,deep:r})),!Zq(n)&&n.recursive)for(const o of e.children)s=this._setNodeCollapseState(o,n,!0)||s;return s}expandTo(e){this.eventBufferer.bufferEvents(()=>{let n=this.getTreeNode(e);for(;n.parent;)n=n.parent,e=e.slice(0,e.length-1),n.collapsed&&this._setCollapseState(e,{collapsed:!1,recursive:!1})})}refilter(){const e=this.root.renderNodeCount,n=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,e,n),this.refilterDelayer.cancel()}createTreeNode(e,n,r,s,o,a){const l={parent:n,element:e.element,children:[],depth:n.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:typeof e.collapsible=="boolean"?e.collapsible:typeof e.collapsed<"u",collapsed:typeof e.collapsed>"u"?this.collapseByDefault:e.collapsed,renderNodeCount:1,visibility:1,visible:!0,filterData:void 0},c=this._filterNode(l,r);l.visibility=c,s&&o.push(l);const u=e.children||Vn.empty(),d=s&&c!==0&&!l.collapsed;let h=0,f=1;for(const p of u){const g=this.createTreeNode(p,l,c,d,o,a);l.children.push(g),f+=g.renderNodeCount,g.visible&&(g.visibleChildIndex=h++)}return l.collapsible=l.collapsible||l.children.length>0,l.visibleChildrenCount=h,l.visible=c===2?h>0:c===1,l.visible?l.collapsed||(l.renderNodeCount=f):(l.renderNodeCount=0,s&&o.pop()),a==null||a(l),l}updateNodeAfterCollapseChange(e){const n=e.renderNodeCount,r=[];return this._updateNodeAfterCollapseChange(e,r),this._updateAncestorsRenderNodeCount(e.parent,r.length-n),r}_updateNodeAfterCollapseChange(e,n){if(e.visible===!1)return 0;if(n.push(e),e.renderNodeCount=1,!e.collapsed)for(const r of e.children)e.renderNodeCount+=this._updateNodeAfterCollapseChange(r,n);return this._onDidChangeRenderNodeCount.fire(e),e.renderNodeCount}updateNodeAfterFilterChange(e){const n=e.renderNodeCount,r=[];return this._updateNodeAfterFilterChange(e,e.visible?1:0,r),this._updateAncestorsRenderNodeCount(e.parent,r.length-n),r}_updateNodeAfterFilterChange(e,n,r,s=!0){let o;if(e!==this.root){if(o=this._filterNode(e,n),o===0)return e.visible=!1,e.renderNodeCount=0,!1;s&&r.push(e)}const a=r.length;e.renderNodeCount=e===this.root?0:1;let l=!1;if(!e.collapsed||o!==0){let c=0;for(const u of e.children)l=this._updateNodeAfterFilterChange(u,o,r,s&&!e.collapsed)||l,u.visible&&(u.visibleChildIndex=c++);e.visibleChildrenCount=c}else e.visibleChildrenCount=0;return e!==this.root&&(e.visible=o===2?l:o===1,e.visibility=o),e.visible?e.collapsed||(e.renderNodeCount+=r.length-a):(e.renderNodeCount=0,s&&r.pop()),this._onDidChangeRenderNodeCount.fire(e),e.visible}_updateAncestorsRenderNodeCount(e,n){if(n!==0)for(;e;)e.renderNodeCount+=n,this._onDidChangeRenderNodeCount.fire(e),e=e.parent}_filterNode(e,n){const r=this.filter?this.filter.filter(e.element,n):1;return typeof r=="boolean"?(e.filterData=void 0,r?1:0):pae(r)?(e.filterData=r.data,UP(r.visibility)):(e.filterData=void 0,UP(r))}hasTreeNode(e,n=this.root){if(!e||e.length===0)return!0;const[r,...s]=e;return r<0||r>n.children.length?!1:this.hasTreeNode(s,n.children[r])}getTreeNode(e,n=this.root){if(!e||e.length===0)return n;const[r,...s]=e;if(r<0||r>n.children.length)throw new qu(this.user,"Invalid tree location");return this.getTreeNode(s,n.children[r])}getTreeNodeWithListIndex(e){if(e.length===0)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};const{parentNode:n,listIndex:r,revealed:s,visible:o}=this.getParentNodeWithListIndex(e),a=e[e.length-1];if(a<0||a>n.children.length)throw new qu(this.user,"Invalid tree location");const l=n.children[a];return{node:l,listIndex:r,revealed:s,visible:o&&l.visible}}getParentNodeWithListIndex(e,n=this.root,r=0,s=!0,o=!0){const[a,...l]=e;if(a<0||a>n.children.length)throw new qu(this.user,"Invalid tree location");for(let c=0;cn.element)),this.data=e}}function Qq(i){return i instanceof V5?new zyt(i):i}class Vyt{constructor(e,n){this.modelProvider=e,this.dnd=n,this.autoExpandDisposable=Le.None,this.disposables=new Xe}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,n){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(r=>r.element),n)}onDragStart(e,n){var r,s;(s=(r=this.dnd).onDragStart)===null||s===void 0||s.call(r,Qq(e),n)}onDragOver(e,n,r,s,o=!0){const a=this.dnd.onDragOver(Qq(e),n&&n.element,r,s),l=this.autoExpandNode!==n;if(l&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=n),typeof n>"u")return a;if(l&&typeof a!="boolean"&&a.autoExpand&&(this.autoExpandDisposable=g1(()=>{const f=this.modelProvider(),p=f.getNodeLocation(n);f.isCollapsed(p)&&f.setCollapsed(p,!1),this.autoExpandNode=void 0},500,this.disposables)),typeof a=="boolean"||!a.accept||typeof a.bubble>"u"||a.feedback){if(!o){const f=typeof a=="boolean"?a:a.accept,p=typeof a=="boolean"?void 0:a.effect;return{accept:f,effect:p,feedback:[r]}}return a}if(a.bubble===1){const f=this.modelProvider(),p=f.getNodeLocation(n),g=f.getParentNodeLocation(p),m=f.getNode(g),_=g&&f.getListIndex(g);return this.onDragOver(e,m,_,s,!1)}const c=this.modelProvider(),u=c.getNodeLocation(n),d=c.getListIndex(u),h=c.getListRenderCount(u);return Object.assign(Object.assign({},a),{feedback:Tl(d,d+h)})}drop(e,n,r,s){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(Qq(e),n&&n.element,r,s)}onDragEnd(e){var n,r;(r=(n=this.dnd).onDragEnd)===null||r===void 0||r.call(n,e)}dispose(){this.disposables.dispose(),this.dnd.dispose()}}function Hyt(i,e){return e&&Object.assign(Object.assign({},e),{identityProvider:e.identityProvider&&{getId(n){return e.identityProvider.getId(n.element)}},dnd:e.dnd&&new Vyt(i,e.dnd),multipleSelectionController:e.multipleSelectionController&&{isSelectionSingleChangeEvent(n){return e.multipleSelectionController.isSelectionSingleChangeEvent(Object.assign(Object.assign({},n),{element:n.element}))},isSelectionRangeChangeEvent(n){return e.multipleSelectionController.isSelectionRangeChangeEvent(Object.assign(Object.assign({},n),{element:n.element}))}},accessibilityProvider:e.accessibilityProvider&&Object.assign(Object.assign({},e.accessibilityProvider),{getSetSize(n){const r=i(),s=r.getNodeLocation(n),o=r.getParentNodeLocation(s);return r.getNode(o).visibleChildrenCount},getPosInSet(n){return n.visibleChildIndex+1},isChecked:e.accessibilityProvider&&e.accessibilityProvider.isChecked?n=>e.accessibilityProvider.isChecked(n.element):void 0,getRole:e.accessibilityProvider&&e.accessibilityProvider.getRole?n=>e.accessibilityProvider.getRole(n.element):()=>"treeitem",getAriaLabel(n){return e.accessibilityProvider.getAriaLabel(n.element)},getWidgetAriaLabel(){return e.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:e.accessibilityProvider&&e.accessibilityProvider.getWidgetRole?()=>e.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:e.accessibilityProvider&&e.accessibilityProvider.getAriaLevel?n=>e.accessibilityProvider.getAriaLevel(n.element):n=>n.depth,getActiveDescendantId:e.accessibilityProvider.getActiveDescendantId&&(n=>e.accessibilityProvider.getActiveDescendantId(n.element))}),keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&Object.assign(Object.assign({},e.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel(n){return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(n.element)}})})}class gae{constructor(e){this.delegate=e}getHeight(e){return this.delegate.getHeight(e.element)}getTemplateId(e){return this.delegate.getTemplateId(e.element)}hasDynamicHeight(e){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(e.element)}setDynamicHeight(e,n){var r,s;(s=(r=this.delegate).setDynamicHeight)===null||s===void 0||s.call(r,e.element,n)}}var qP;(function(i){i.None="none",i.OnHover="onHover",i.Always="always"})(qP||(qP={}));class Uyt{get elements(){return this._elements}constructor(e,n=[]){this._elements=n,this.disposables=new Xe,this.onDidChange=_t.forEach(e,r=>this._elements=r,this.disposables)}dispose(){this.disposables.dispose()}}class KP{constructor(e,n,r,s,o,a={}){var l;this.renderer=e,this.modelProvider=n,this.activeNodes=s,this.renderedIndentGuides=o,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=KP.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.activeIndentNodes=new Set,this.indentGuidesDisposable=Le.None,this.disposables=new Xe,this.templateId=e.templateId,this.updateOptions(a),_t.map(r,c=>c.node)(this.onDidChangeNodeTwistieState,this,this.disposables),(l=e.onDidChangeTwistieState)===null||l===void 0||l.call(e,this.onDidChangeTwistieState,this,this.disposables)}updateOptions(e={}){if(typeof e.indent<"u"){const n=Kc(e.indent,0,40);if(n!==this.indent){this.indent=n;for(const[r,s]of this.renderedNodes)this.renderTreeElement(r,s)}}if(typeof e.renderIndentGuides<"u"){const n=e.renderIndentGuides!==qP.None;if(n!==this.shouldRenderIndentGuides){this.shouldRenderIndentGuides=n;for(const[r,s]of this.renderedNodes)this._renderIndentGuides(r,s);if(this.indentGuidesDisposable.dispose(),n){const r=new Xe;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,r),this.indentGuidesDisposable=r,this._onDidChangeActiveNodes(this.activeNodes.elements)}}}typeof e.hideTwistiesOfChildlessElements<"u"&&(this.hideTwistiesOfChildlessElements=e.hideTwistiesOfChildlessElements)}renderTemplate(e){const n=He(e,tt(".monaco-tl-row")),r=He(n,tt(".monaco-tl-indent")),s=He(n,tt(".monaco-tl-twistie")),o=He(n,tt(".monaco-tl-contents")),a=this.renderer.renderTemplate(o);return{container:e,indent:r,twistie:s,indentGuidesDisposable:Le.None,templateData:a}}renderElement(e,n,r,s){this.renderedNodes.set(e,r),this.renderedElements.set(e.element,e),this.renderTreeElement(e,r),this.renderer.renderElement(e,n,r.templateData,s)}disposeElement(e,n,r,s){var o,a;r.indentGuidesDisposable.dispose(),(a=(o=this.renderer).disposeElement)===null||a===void 0||a.call(o,e,n,r.templateData,s),typeof s=="number"&&(this.renderedNodes.delete(e),this.renderedElements.delete(e.element))}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}onDidChangeTwistieState(e){const n=this.renderedElements.get(e);n&&this.onDidChangeNodeTwistieState(n)}onDidChangeNodeTwistieState(e){const n=this.renderedNodes.get(e);n&&(this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderTreeElement(e,n))}renderTreeElement(e,n){const r=KP.DefaultIndent+(e.depth-1)*this.indent;n.twistie.style.paddingLeft=`${r}px`,n.indent.style.width=`${r+this.indent-16}px`,e.collapsible?n.container.setAttribute("aria-expanded",String(!e.collapsed)):n.container.removeAttribute("aria-expanded"),n.twistie.classList.remove(...en.asClassNameArray(lt.treeItemExpanded));let s=!1;this.renderer.renderTwistie&&(s=this.renderer.renderTwistie(e.element,n.twistie)),e.collapsible&&(!this.hideTwistiesOfChildlessElements||e.visibleChildrenCount>0)?(s||n.twistie.classList.add(...en.asClassNameArray(lt.treeItemExpanded)),n.twistie.classList.add("collapsible"),n.twistie.classList.toggle("collapsed",e.collapsed)):n.twistie.classList.remove("collapsible","collapsed"),this._renderIndentGuides(e,n)}_renderIndentGuides(e,n){if(la(n.indent),n.indentGuidesDisposable.dispose(),!this.shouldRenderIndentGuides)return;const r=new Xe,s=this.modelProvider();for(;;){const o=s.getNodeLocation(e),a=s.getParentNodeLocation(o);if(!a)break;const l=s.getNode(a),c=tt(".indent-guide",{style:`width: ${this.indent}px`});this.activeIndentNodes.has(l)&&c.classList.add("active"),n.indent.childElementCount===0?n.indent.appendChild(c):n.indent.insertBefore(c,n.indent.firstElementChild),this.renderedIndentGuides.add(l,c),r.add(gn(()=>this.renderedIndentGuides.delete(l,c))),e=l}n.indentGuidesDisposable=r}_onDidChangeActiveNodes(e){if(!this.shouldRenderIndentGuides)return;const n=new Set,r=this.modelProvider();e.forEach(s=>{const o=r.getNodeLocation(s);try{const a=r.getParentNodeLocation(o);s.collapsible&&s.children.length>0&&!s.collapsed?n.add(s):a&&n.add(r.getNode(a))}catch{}}),this.activeIndentNodes.forEach(s=>{n.has(s)||this.renderedIndentGuides.forEach(s,o=>o.classList.remove("active"))}),n.forEach(s=>{this.activeIndentNodes.has(s)||this.renderedIndentGuides.forEach(s,o=>o.classList.add("active"))}),this.activeIndentNodes=n}dispose(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),Mi(this.disposables)}}KP.DefaultIndent=8;class qyt{get totalCount(){return this._totalCount}get matchCount(){return this._matchCount}constructor(e,n,r){this.tree=e,this.keyboardNavigationLabelProvider=n,this._filter=r,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new Xe,e.onWillRefilter(this.reset,this,this.disposables)}filter(e,n){let r=1;if(this._filter){const a=this._filter.filter(e,n);if(typeof a=="boolean"?r=a?1:0:pae(a)?r=UP(a.visibility):r=a,r===0)return!1}if(this._totalCount++,!this._pattern)return this._matchCount++,{data:Hp.Default,visibility:r};const s=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e),o=Array.isArray(s)?s:[s];for(const a of o){const l=a&&a.toString();if(typeof l>"u")return{data:Hp.Default,visibility:r};let c;if(this.tree.findMatchType===_x.Contiguous){const u=l.toLowerCase().indexOf(this._lowercasePattern);if(u>-1){c=[Number.MAX_SAFE_INTEGER,0];for(let d=this._lowercasePattern.length;d>0;d--)c.push(u+d-1)}}else c=gx(this._pattern,this._lowercasePattern,0,l,l.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0});if(c)return this._matchCount++,o.length===1?{data:c,visibility:r}:{data:{label:l,score:c},visibility:r}}return this.tree.findMode===Lm.Filter?typeof this.tree.options.defaultFindVisibility=="number"?this.tree.options.defaultFindVisibility:this.tree.options.defaultFindVisibility?this.tree.options.defaultFindVisibility(e):2:{data:Hp.Default,visibility:r}}reset(){this._totalCount=0,this._matchCount=0}dispose(){Mi(this.disposables)}}var Lm;(function(i){i[i.Highlight=0]="Highlight",i[i.Filter=1]="Filter"})(Lm||(Lm={}));var _x;(function(i){i[i.Fuzzy=0]="Fuzzy",i[i.Contiguous=1]="Contiguous"})(_x||(_x={}));let Kyt=class{get pattern(){return this._pattern}get mode(){return this._mode}set mode(e){e!==this._mode&&(this._mode=e,this.widget&&(this.widget.mode=this._mode),this.tree.refilter(),this.render(),this._onDidChangeMode.fire(e))}get matchType(){return this._matchType}set matchType(e){e!==this._matchType&&(this._matchType=e,this.widget&&(this.widget.matchType=this._matchType),this.tree.refilter(),this.render(),this._onDidChangeMatchType.fire(e))}constructor(e,n,r,s,o,a={}){var l,c;this.tree=e,this.view=r,this.filter=s,this.contextViewProvider=o,this.options=a,this._pattern="",this.width=0,this._onDidChangeMode=new _e,this.onDidChangeMode=this._onDidChangeMode.event,this._onDidChangeMatchType=new _e,this.onDidChangeMatchType=this._onDidChangeMatchType.event,this._onDidChangePattern=new _e,this._onDidChangeOpenState=new _e,this.onDidChangeOpenState=this._onDidChangeOpenState.event,this.enabledDisposables=new Xe,this.disposables=new Xe,this._mode=(l=e.options.defaultFindMode)!==null&&l!==void 0?l:Lm.Highlight,this._matchType=(c=e.options.defaultFindMatchType)!==null&&c!==void 0?c:_x.Fuzzy,n.onDidSplice(this.onDidSpliceModel,this,this.disposables)}updateOptions(e={}){e.defaultFindMode!==void 0&&(this.mode=e.defaultFindMode),e.defaultFindMatchType!==void 0&&(this.matchType=e.defaultFindMatchType)}onDidSpliceModel(){!this.widget||this.pattern.length===0||(this.tree.refilter(),this.render())}render(){var e,n,r,s;const o=this.filter.totalCount>0&&this.filter.matchCount===0;this.pattern&&o?!((e=this.tree.options.showNotFoundMessage)!==null&&e!==void 0)||e?(n=this.widget)===null||n===void 0||n.showMessage({type:2,content:L("not found","No elements found.")}):(r=this.widget)===null||r===void 0||r.showMessage({type:2}):(s=this.widget)===null||s===void 0||s.clearMessage()}shouldAllowFocus(e){return!this.widget||!this.pattern||this._mode===Lm.Filter||this.filter.totalCount>0&&this.filter.matchCount<=1?!0:!Hp.isDefault(e.filterData)}layout(e){var n;this.width=e,(n=this.widget)===null||n===void 0||n.layout(e)}dispose(){this._history=void 0,this._onDidChangePattern.dispose(),this.enabledDisposables.dispose(),this.disposables.dispose()}};function Qme(i){let e=CS.Unknown;return eq(i.browserEvent.target,"monaco-tl-twistie","monaco-tl-row")?e=CS.Twistie:eq(i.browserEvent.target,"monaco-tl-contents","monaco-tl-row")?e=CS.Element:eq(i.browserEvent.target,"monaco-tree-type-filter","monaco-list")&&(e=CS.Filter),{browserEvent:i.browserEvent,element:i.element?i.element.element:null,target:e}}function S8(i,e){e(i),i.children.forEach(n=>S8(n,e))}class Jq{get nodeSet(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet}constructor(e,n){this.getFirstViewElementWithTrait=e,this.identityProvider=n,this.nodes=[],this._onDidChange=new _e,this.onDidChange=this._onDidChange.event}set(e,n){!(n!=null&&n.__forceEvent)&&ys(this.nodes,e)||this._set(e,!1,n)}_set(e,n,r){if(this.nodes=[...e],this.elements=void 0,this._nodeSet=void 0,!n){const s=this;this._onDidChange.fire({get elements(){return s.get()},browserEvent:r})}}get(){return this.elements||(this.elements=this.nodes.map(e=>e.element)),[...this.elements]}getNodes(){return this.nodes}has(e){return this.nodeSet.has(e)}onDidModelSplice({insertedNodes:e,deletedNodes:n}){if(!this.identityProvider){const c=this.createNodeSet(),u=d=>c.delete(d);n.forEach(d=>S8(d,u)),this.set([...c.values()]);return}const r=new Set,s=c=>r.add(this.identityProvider.getId(c.element).toString());n.forEach(c=>S8(c,s));const o=new Map,a=c=>o.set(this.identityProvider.getId(c.element).toString(),c);e.forEach(c=>S8(c,a));const l=[];for(const c of this.nodes){const u=this.identityProvider.getId(c.element).toString();if(!r.has(u))l.push(c);else{const h=o.get(u);h&&h.visible&&l.push(h)}}if(this.nodes.length>0&&l.length===0){const c=this.getFirstViewElementWithTrait();c&&l.push(c)}this._set(l,!0)}createNodeSet(){const e=new Set;for(const n of this.nodes)e.add(n);return e}}class Gyt extends eRe{constructor(e,n){super(e),this.tree=n}onViewPointer(e){if(YTe(e.browserEvent.target)||qy(e.browserEvent.target)||v2(e.browserEvent.target)||e.browserEvent.isHandledByList)return;const n=e.element;if(!n)return super.onViewPointer(e);if(this.isSelectionRangeChangeEvent(e)||this.isSelectionSingleChangeEvent(e))return super.onViewPointer(e);const r=e.browserEvent.target,s=r.classList.contains("monaco-tl-twistie")||r.classList.contains("monaco-icon-label")&&r.classList.contains("folder-icon")&&e.browserEvent.offsetX<16;let o=!1;if(typeof this.tree.expandOnlyOnTwistieClick=="function"?o=this.tree.expandOnlyOnTwistieClick(n.element):o=!!this.tree.expandOnlyOnTwistieClick,o&&!s&&e.browserEvent.detail!==2)return super.onViewPointer(e);if(!this.tree.expandOnDoubleClick&&e.browserEvent.detail===2)return super.onViewPointer(e);if(n.collapsible){const a=this.tree.getNodeLocation(n),l=e.browserEvent.altKey;if(this.tree.setFocus([a]),this.tree.toggleCollapsed(a,l),o&&s){e.browserEvent.isHandledByList=!0;return}}super.onViewPointer(e)}onDoubleClick(e){e.browserEvent.target.classList.contains("monaco-tl-twistie")||!this.tree.expandOnDoubleClick||e.browserEvent.isHandledByList||super.onDoubleClick(e)}}class Xyt extends Bf{constructor(e,n,r,s,o,a,l,c){super(e,n,r,s,c),this.focusTrait=o,this.selectionTrait=a,this.anchorTrait=l}createMouseController(e){return new Gyt(this,e.tree)}splice(e,n,r=[]){if(super.splice(e,n,r),r.length===0)return;const s=[],o=[];let a;r.forEach((l,c)=>{this.focusTrait.has(l)&&s.push(e+c),this.selectionTrait.has(l)&&o.push(e+c),this.anchorTrait.has(l)&&(a=e+c)}),s.length>0&&super.setFocus(l1([...super.getFocus(),...s])),o.length>0&&super.setSelection(l1([...super.getSelection(),...o])),typeof a=="number"&&super.setAnchor(a)}setFocus(e,n,r=!1){super.setFocus(e,n),r||this.focusTrait.set(e.map(s=>this.element(s)),n)}setSelection(e,n,r=!1){super.setSelection(e,n),r||this.selectionTrait.set(e.map(s=>this.element(s)),n)}setAnchor(e,n=!1){super.setAnchor(e),n||(typeof e>"u"?this.anchorTrait.set([]):this.anchorTrait.set([this.element(e)]))}}class gRe{get onDidScroll(){return this.view.onDidScroll}get onDidChangeFocus(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)}get onDidChangeSelection(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)}get onMouseDblClick(){return _t.filter(_t.map(this.view.onMouseDblClick,Qme),e=>e.target!==CS.Filter)}get onPointer(){return _t.map(this.view.onPointer,Qme)}get onDidFocus(){return this.view.onDidFocus}get onDidChangeModel(){return _t.signal(this.model.onDidSplice)}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get findMode(){var e,n;return(n=(e=this.findController)===null||e===void 0?void 0:e.mode)!==null&&n!==void 0?n:Lm.Highlight}set findMode(e){this.findController&&(this.findController.mode=e)}get findMatchType(){var e,n;return(n=(e=this.findController)===null||e===void 0?void 0:e.matchType)!==null&&n!==void 0?n:_x.Fuzzy}set findMatchType(e){this.findController&&(this.findController.matchType=e)}get expandOnDoubleClick(){return typeof this._options.expandOnDoubleClick>"u"?!0:this._options.expandOnDoubleClick}get expandOnlyOnTwistieClick(){return typeof this._options.expandOnlyOnTwistieClick>"u"?!0:this._options.expandOnlyOnTwistieClick}get onDidDispose(){return this.view.onDidDispose}constructor(e,n,r,s,o={}){var a;this._user=e,this._options=o,this.eventBufferer=new Pse,this.onDidChangeFindOpenState=_t.None,this.disposables=new Xe,this._onWillRefilter=new _e,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new _e;const l=new gae(r),c=new zfe,u=new zfe,d=this.disposables.add(new Uyt(u.event)),h=new roe;this.renderers=s.map(_=>new KP(_,()=>this.model,c.event,d,h,o));for(const _ of this.renderers)this.disposables.add(_);let f;o.keyboardNavigationLabelProvider&&(f=new qyt(this,o.keyboardNavigationLabelProvider,o.filter),o=Object.assign(Object.assign({},o),{filter:f}),this.disposables.add(f)),this.focus=new Jq(()=>this.view.getFocusedElements()[0],o.identityProvider),this.selection=new Jq(()=>this.view.getSelectedElements()[0],o.identityProvider),this.anchor=new Jq(()=>this.view.getAnchorElement(),o.identityProvider),this.view=new Xyt(e,n,l,this.renderers,this.focus,this.selection,this.anchor,Object.assign(Object.assign({},Hyt(()=>this.model,o)),{tree:this})),this.model=this.createModel(e,this.view,o),c.input=this.model.onDidChangeCollapseState;const p=_t.forEach(this.model.onDidSplice,_=>{this.eventBufferer.bufferEvents(()=>{this.focus.onDidModelSplice(_),this.selection.onDidModelSplice(_)})},this.disposables);p(()=>null,null,this.disposables);const g=this.disposables.add(new _e),m=this.disposables.add(new Rf(0));if(this.disposables.add(_t.any(p,this.focus.onDidChange,this.selection.onDidChange)(()=>{m.trigger(()=>{const _=new Set;for(const b of this.focus.getNodes())_.add(b);for(const b of this.selection.getNodes())_.add(b);g.fire([..._.values()])})})),u.input=g.event,o.keyboardSupport!==!1){const _=_t.chain(this.view.onKeyDown,b=>b.filter(y=>!qy(y.target)).map(y=>new yr(y)));_t.chain(_,b=>b.filter(y=>y.keyCode===15))(this.onLeftArrow,this,this.disposables),_t.chain(_,b=>b.filter(y=>y.keyCode===17))(this.onRightArrow,this,this.disposables),_t.chain(_,b=>b.filter(y=>y.keyCode===10))(this.onSpace,this,this.disposables)}if((!((a=o.findWidgetEnabled)!==null&&a!==void 0)||a)&&o.keyboardNavigationLabelProvider&&o.contextViewProvider){const _=this.options.findWidgetStyles?{styles:this.options.findWidgetStyles}:void 0;this.findController=new Kyt(this,this.model,this.view,f,o.contextViewProvider,_),this.focusNavigationFilter=b=>this.findController.shouldAllowFocus(b),this.onDidChangeFindOpenState=this.findController.onDidChangeOpenState,this.disposables.add(this.findController),this.onDidChangeFindMode=this.findController.onDidChangeMode,this.onDidChangeFindMatchType=this.findController.onDidChangeMatchType}else this.onDidChangeFindMode=_t.None,this.onDidChangeFindMatchType=_t.None;this.styleElement=_h(this.view.getHTMLElement()),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===qP.Always)}updateOptions(e={}){var n;this._options=Object.assign(Object.assign({},this._options),e);for(const r of this.renderers)r.updateOptions(e);this.view.updateOptions(this._options),(n=this.findController)===null||n===void 0||n.updateOptions(e),this._onDidUpdateOptions.fire(this._options),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===qP.Always)}get options(){return this._options}getHTMLElement(){return this.view.getHTMLElement()}get scrollTop(){return this.view.scrollTop}set scrollTop(e){this.view.scrollTop=e}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}domFocus(){this.view.domFocus()}layout(e,n){var r;this.view.layout(e,n),c1(n)&&((r=this.findController)===null||r===void 0||r.layout(n))}style(e){const n=`.${this.view.domId}`,r=[];e.treeIndentGuidesStroke&&(r.push(`.monaco-list${n}:hover .monaco-tl-indent > .indent-guide, .monaco-list${n}.always .monaco-tl-indent > .indent-guide { border-color: ${e.treeInactiveIndentGuidesStroke}; }`),r.push(`.monaco-list${n} .monaco-tl-indent > .indent-guide.active { border-color: ${e.treeIndentGuidesStroke}; }`)),this.styleElement.textContent=r.join(` `),this.view.style(e)}getParentElement(e){const n=this.model.getParentNodeLocation(e);return this.model.getNode(n).element}getFirstElementChild(e){return this.model.getFirstElementChild(e)}getNode(e){return this.model.getNode(e)}getNodeLocation(e){return this.model.getNodeLocation(e)}collapse(e,n=!1){return this.model.setCollapsed(e,!0,n)}expand(e,n=!1){return this.model.setCollapsed(e,!1,n)}toggleCollapsed(e,n=!1){return this.model.setCollapsed(e,void 0,n)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,n){return this.model.setCollapsible(e,n)}isCollapsed(e){return this.model.isCollapsed(e)}refilter(){this._onWillRefilter.fire(void 0),this.model.refilter()}setSelection(e,n){const r=e.map(o=>this.model.getNode(o));this.selection.set(r,n);const s=e.map(o=>this.model.getListIndex(o)).filter(o=>o>-1);this.view.setSelection(s,n,!0)}getSelection(){return this.selection.get()}setFocus(e,n){const r=e.map(o=>this.model.getNode(o));this.focus.set(r,n);const s=e.map(o=>this.model.getListIndex(o)).filter(o=>o>-1);this.view.setFocus(s,n,!0)}getFocus(){return this.focus.get()}reveal(e,n){this.model.expandTo(e);const r=this.model.getListIndex(e);r!==-1&&this.view.reveal(r,n)}onLeftArrow(e){e.preventDefault(),e.stopPropagation();const n=this.view.getFocusedElements();if(n.length===0)return;const r=n[0],s=this.model.getNodeLocation(r);if(!this.model.setCollapsed(s,!0)){const a=this.model.getParentNodeLocation(s);if(!a)return;const l=this.model.getListIndex(a);this.view.reveal(l),this.view.setFocus([l])}}onRightArrow(e){e.preventDefault(),e.stopPropagation();const n=this.view.getFocusedElements();if(n.length===0)return;const r=n[0],s=this.model.getNodeLocation(r);if(!this.model.setCollapsed(s,!1)){if(!r.children.some(c=>c.visible))return;const[a]=this.view.getFocus(),l=a+1;this.view.reveal(l),this.view.setFocus([l])}}onSpace(e){e.preventDefault(),e.stopPropagation();const n=this.view.getFocusedElements();if(n.length===0)return;const r=n[0],s=this.model.getNodeLocation(r),o=e.browserEvent.altKey;this.model.setCollapsed(s,void 0,o)}dispose(){Mi(this.disposables),this.view.dispose()}}class mae{constructor(e,n,r={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new $yt(e,n,null,r),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,r.sorter&&(this.sorter={compare(s,o){return r.sorter.compare(s.element,o.element)}}),this.identityProvider=r.identityProvider}setChildren(e,n=Vn.empty(),r={}){const s=this.getElementLocation(e);this._setChildren(s,this.preserveCollapseState(n),r)}_setChildren(e,n=Vn.empty(),r){const s=new Set,o=new Set,a=c=>{var u;if(c.element===null)return;const d=c;if(s.add(d.element),this.nodes.set(d.element,d),this.identityProvider){const h=this.identityProvider.getId(d.element).toString();o.add(h),this.nodesByIdentity.set(h,d)}(u=r.onDidCreateNode)===null||u===void 0||u.call(r,d)},l=c=>{var u;if(c.element===null)return;const d=c;if(s.has(d.element)||this.nodes.delete(d.element),this.identityProvider){const h=this.identityProvider.getId(d.element).toString();o.has(h)||this.nodesByIdentity.delete(h)}(u=r.onDidDeleteNode)===null||u===void 0||u.call(r,d)};this.model.splice([...e,0],Number.MAX_VALUE,n,Object.assign(Object.assign({},r),{onDidCreateNode:a,onDidDeleteNode:l}))}preserveCollapseState(e=Vn.empty()){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),Vn.map(e,n=>{let r=this.nodes.get(n.element);if(!r&&this.identityProvider){const a=this.identityProvider.getId(n.element).toString();r=this.nodesByIdentity.get(a)}if(!r){let a;return typeof n.collapsed>"u"?a=void 0:n.collapsed===Gg.Collapsed||n.collapsed===Gg.PreserveOrCollapsed?a=!0:n.collapsed===Gg.Expanded||n.collapsed===Gg.PreserveOrExpanded?a=!1:a=!!n.collapsed,Object.assign(Object.assign({},n),{children:this.preserveCollapseState(n.children),collapsed:a})}const s=typeof n.collapsible=="boolean"?n.collapsible:r.collapsible;let o;return typeof n.collapsed>"u"||n.collapsed===Gg.PreserveOrCollapsed||n.collapsed===Gg.PreserveOrExpanded?o=r.collapsed:n.collapsed===Gg.Collapsed?o=!0:n.collapsed===Gg.Expanded?o=!1:o=!!n.collapsed,Object.assign(Object.assign({},n),{collapsible:s,collapsed:o,children:this.preserveCollapseState(n.children)})})}rerender(e){const n=this.getElementLocation(e);this.model.rerender(n)}getFirstElementChild(e=null){const n=this.getElementLocation(e);return this.model.getFirstElementChild(n)}has(e){return this.nodes.has(e)}getListIndex(e){const n=this.getElementLocation(e);return this.model.getListIndex(n)}getListRenderCount(e){const n=this.getElementLocation(e);return this.model.getListRenderCount(n)}isCollapsible(e){const n=this.getElementLocation(e);return this.model.isCollapsible(n)}setCollapsible(e,n){const r=this.getElementLocation(e);return this.model.setCollapsible(r,n)}isCollapsed(e){const n=this.getElementLocation(e);return this.model.isCollapsed(n)}setCollapsed(e,n,r){const s=this.getElementLocation(e);return this.model.setCollapsed(s,n,r)}expandTo(e){const n=this.getElementLocation(e);this.model.expandTo(n)}refilter(){this.model.refilter()}getNode(e=null){if(e===null)return this.model.getNode(this.model.rootRef);const n=this.nodes.get(e);if(!n)throw new qu(this.user,`Tree element not found: ${e}`);return n}getNodeLocation(e){return e.element}getParentNodeLocation(e){if(e===null)throw new qu(this.user,"Invalid getParentNodeLocation call");const n=this.nodes.get(e);if(!n)throw new qu(this.user,`Tree element not found: ${e}`);const r=this.model.getNodeLocation(n),s=this.model.getParentNodeLocation(r);return this.model.getNode(s).element}getElementLocation(e){if(e===null)return[];const n=this.nodes.get(e);if(!n)throw new qu(this.user,`Tree element not found: ${e}`);return this.model.getNodeLocation(n)}}function x8(i){const e=[i.element],n=i.incompressible||!1;return{element:{elements:e,incompressible:n},children:Vn.map(Vn.from(i.children),x8),collapsible:i.collapsible,collapsed:i.collapsed}}function k8(i){const e=[i.element],n=i.incompressible||!1;let r,s;for(;[s,r]=Vn.consume(Vn.from(i.children),2),!(s.length!==1||s[0].incompressible);)i=s[0],e.push(i.element);return{element:{elements:e,incompressible:n},children:Vn.map(Vn.concat(s,r),k8),collapsible:i.collapsible,collapsed:i.collapsed}}function Oee(i,e=0){let n;return eOee(r,0)),e===0&&i.element.incompressible?{element:i.element.elements[e],children:n,incompressible:!0,collapsible:i.collapsible,collapsed:i.collapsed}:{element:i.element.elements[e],children:n,collapsible:i.collapsible,collapsed:i.collapsed}}function Jme(i){return Oee(i,0)}function mRe(i,e,n){return i.element===e?Object.assign(Object.assign({},i),{children:n}):Object.assign(Object.assign({},i),{children:Vn.map(Vn.from(i.children),r=>mRe(r,e,n))})}const Yyt=i=>({getId(e){return e.elements.map(n=>i.getId(n).toString()).join("\0")}});class Zyt{get onDidSplice(){return this.model.onDidSplice}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get onDidChangeRenderNodeCount(){return this.model.onDidChangeRenderNodeCount}constructor(e,n,r={}){this.user=e,this.rootRef=null,this.nodes=new Map,this.model=new mae(e,n,r),this.enabled=typeof r.compressionEnabled>"u"?!0:r.compressionEnabled,this.identityProvider=r.identityProvider}setChildren(e,n=Vn.empty(),r){const s=r.diffIdentityProvider&&Yyt(r.diffIdentityProvider);if(e===null){const g=Vn.map(n,this.enabled?k8:x8);this._setChildren(null,g,{diffIdentityProvider:s,diffDepth:1/0});return}const o=this.nodes.get(e);if(!o)throw new qu(this.user,"Unknown compressed tree node");const a=this.model.getNode(o),l=this.model.getParentNodeLocation(o),c=this.model.getNode(l),u=Jme(a),d=mRe(u,e,n),h=(this.enabled?k8:x8)(d),f=r.diffIdentityProvider?(g,m)=>r.diffIdentityProvider.getId(g)===r.diffIdentityProvider.getId(m):void 0;if(ys(h.element.elements,a.element.elements,f)){this._setChildren(o,h.children||Vn.empty(),{diffIdentityProvider:s,diffDepth:1});return}const p=c.children.map(g=>g===a?h:g);this._setChildren(c.element,p,{diffIdentityProvider:s,diffDepth:a.depth-c.depth})}setCompressionEnabled(e){if(e===this.enabled)return;this.enabled=e;const r=this.model.getNode().children,s=Vn.map(r,Jme),o=Vn.map(s,e?k8:x8);this._setChildren(null,o,{diffIdentityProvider:this.identityProvider,diffDepth:1/0})}_setChildren(e,n,r){const s=new Set,o=l=>{for(const c of l.element.elements)s.add(c),this.nodes.set(c,l.element)},a=l=>{for(const c of l.element.elements)s.has(c)||this.nodes.delete(c)};this.model.setChildren(e,n,Object.assign(Object.assign({},r),{onDidCreateNode:o,onDidDeleteNode:a}))}has(e){return this.nodes.has(e)}getListIndex(e){const n=this.getCompressedNode(e);return this.model.getListIndex(n)}getListRenderCount(e){const n=this.getCompressedNode(e);return this.model.getListRenderCount(n)}getNode(e){if(typeof e>"u")return this.model.getNode();const n=this.getCompressedNode(e);return this.model.getNode(n)}getNodeLocation(e){const n=this.model.getNodeLocation(e);return n===null?null:n.elements[n.elements.length-1]}getParentNodeLocation(e){const n=this.getCompressedNode(e),r=this.model.getParentNodeLocation(n);return r===null?null:r.elements[r.elements.length-1]}getFirstElementChild(e){const n=this.getCompressedNode(e);return this.model.getFirstElementChild(n)}isCollapsible(e){const n=this.getCompressedNode(e);return this.model.isCollapsible(n)}setCollapsible(e,n){const r=this.getCompressedNode(e);return this.model.setCollapsible(r,n)}isCollapsed(e){const n=this.getCompressedNode(e);return this.model.isCollapsed(n)}setCollapsed(e,n,r){const s=this.getCompressedNode(e);return this.model.setCollapsed(s,n,r)}expandTo(e){const n=this.getCompressedNode(e);this.model.expandTo(n)}rerender(e){const n=this.getCompressedNode(e);this.model.rerender(n)}refilter(){this.model.refilter()}getCompressedNode(e){if(e===null)return null;const n=this.nodes.get(e);if(!n)throw new qu(this.user,`Tree element not found: ${e}`);return n}}const Qyt=i=>i[i.length-1];class _ae{get element(){return this.node.element===null?null:this.unwrapper(this.node.element)}get children(){return this.node.children.map(e=>new _ae(this.unwrapper,e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e,n){this.unwrapper=e,this.node=n}}function Jyt(i,e){return{splice(n,r,s){e.splice(n,r,s.map(o=>i.map(o)))},updateElementHeight(n,r){e.updateElementHeight(n,r)}}}function e1t(i,e){return Object.assign(Object.assign({},e),{identityProvider:e.identityProvider&&{getId(n){return e.identityProvider.getId(i(n))}},sorter:e.sorter&&{compare(n,r){return e.sorter.compare(n.elements[0],r.elements[0])}},filter:e.filter&&{filter(n,r){return e.filter.filter(i(n),r)}}})}class t1t{get onDidSplice(){return _t.map(this.model.onDidSplice,({insertedNodes:e,deletedNodes:n})=>({insertedNodes:e.map(r=>this.nodeMapper.map(r)),deletedNodes:n.map(r=>this.nodeMapper.map(r))}))}get onDidChangeCollapseState(){return _t.map(this.model.onDidChangeCollapseState,({node:e,deep:n})=>({node:this.nodeMapper.map(e),deep:n}))}get onDidChangeRenderNodeCount(){return _t.map(this.model.onDidChangeRenderNodeCount,e=>this.nodeMapper.map(e))}constructor(e,n,r={}){this.rootRef=null,this.elementMapper=r.elementMapper||Qyt;const s=o=>this.elementMapper(o.elements);this.nodeMapper=new fae(o=>new _ae(s,o)),this.model=new Zyt(e,Jyt(this.nodeMapper,n),e1t(s,r))}setChildren(e,n=Vn.empty(),r={}){this.model.setChildren(e,n,r)}setCompressionEnabled(e){this.model.setCompressionEnabled(e)}has(e){return this.model.has(e)}getListIndex(e){return this.model.getListIndex(e)}getListRenderCount(e){return this.model.getListRenderCount(e)}getNode(e){return this.nodeMapper.map(this.model.getNode(e))}getNodeLocation(e){return e.element}getParentNodeLocation(e){return this.model.getParentNodeLocation(e)}getFirstElementChild(e){const n=this.model.getFirstElementChild(e);return n===null||typeof n>"u"?n:this.elementMapper(n.elements)}isCollapsible(e){return this.model.isCollapsible(e)}setCollapsible(e,n){return this.model.setCollapsible(e,n)}isCollapsed(e){return this.model.isCollapsed(e)}setCollapsed(e,n,r){return this.model.setCollapsed(e,n,r)}expandTo(e){return this.model.expandTo(e)}rerender(e){return this.model.rerender(e)}refilter(){return this.model.refilter()}getCompressedTreeNode(e=null){return this.model.getNode(e)}}var n1t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o};class vae extends gRe{get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}constructor(e,n,r,s,o={}){super(e,n,r,s,o),this.user=e}setChildren(e,n=Vn.empty(),r){this.model.setChildren(e,n,r)}rerender(e){if(e===void 0){this.view.rerender();return}this.model.rerender(e)}hasElement(e){return this.model.has(e)}createModel(e,n,r){return new mae(e,n,r)}}class _Re{get compressedTreeNodeProvider(){return this._compressedTreeNodeProvider()}constructor(e,n){this._compressedTreeNodeProvider=e,this.renderer=n,this.templateId=n.templateId,n.onDidChangeTwistieState&&(this.onDidChangeTwistieState=n.onDidChangeTwistieState)}renderTemplate(e){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(e)}}renderElement(e,n,r,s){const o=this.compressedTreeNodeProvider.getCompressedTreeNode(e.element);o.element.elements.length===1?(r.compressedTreeNode=void 0,this.renderer.renderElement(e,n,r.data,s)):(r.compressedTreeNode=o,this.renderer.renderCompressedElements(o,n,r.data,s))}disposeElement(e,n,r,s){var o,a,l,c;r.compressedTreeNode?(a=(o=this.renderer).disposeCompressedElements)===null||a===void 0||a.call(o,r.compressedTreeNode,n,r.data,s):(c=(l=this.renderer).disposeElement)===null||c===void 0||c.call(l,e,n,r.data,s)}disposeTemplate(e){this.renderer.disposeTemplate(e.data)}renderTwistie(e,n){return this.renderer.renderTwistie?this.renderer.renderTwistie(e,n):!1}}n1t([Ms],_Re.prototype,"compressedTreeNodeProvider",null);function i1t(i,e){return e&&Object.assign(Object.assign({},e),{keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&{getKeyboardNavigationLabel(n){let r;try{r=i().getCompressedTreeNode(n)}catch{return e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(n)}return r.element.elements.length===1?e.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(n):e.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(r.element.elements)}}})}class vRe extends vae{constructor(e,n,r,s,o={}){const a=()=>this,l=s.map(c=>new _Re(a,c));super(e,n,r,l,i1t(a,o))}setChildren(e,n=Vn.empty(),r){this.model.setChildren(e,n,r)}createModel(e,n,r){return new t1t(e,n,r)}updateOptions(e={}){super.updateOptions(e),typeof e.compressionEnabled<"u"&&this.model.setCompressionEnabled(e.compressionEnabled)}getCompressedTreeNode(e=null){return this.model.getCompressedTreeNode(e)}}var Bb=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function eK(i){return Object.assign(Object.assign({},i),{children:[],refreshPromise:void 0,stale:!0,slow:!1,collapsedByDefault:void 0})}function Fee(i,e){return e.parent?e.parent===i?!0:Fee(i,e.parent):!1}function r1t(i,e){return i===e||Fee(i,e)||Fee(e,i)}class bae{get element(){return this.node.element.element}get children(){return this.node.children.map(e=>new bae(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class s1t{constructor(e,n,r){this.renderer=e,this.nodeMapper=n,this.onDidChangeTwistieState=r,this.renderedNodes=new Map,this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,n,r,s){this.renderer.renderElement(this.nodeMapper.map(e),n,r.templateData,s)}renderTwistie(e,n){return e.slow?(n.classList.add(...en.asClassNameArray(lt.treeItemLoading)),!0):(n.classList.remove(...en.asClassNameArray(lt.treeItemLoading)),!1)}disposeElement(e,n,r,s){var o,a;(a=(o=this.renderer).disposeElement)===null||a===void 0||a.call(o,this.nodeMapper.map(e),n,r.templateData,s)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear()}}function e_e(i){return{browserEvent:i.browserEvent,elements:i.elements.map(e=>e.element)}}function t_e(i){return{browserEvent:i.browserEvent,element:i.element&&i.element.element,target:i.target}}class o1t extends V5{constructor(e){super(e.elements.map(n=>n.element)),this.data=e}}function tK(i){return i instanceof V5?new o1t(i):i}class a1t{constructor(e){this.dnd=e}getDragURI(e){return this.dnd.getDragURI(e.element)}getDragLabel(e,n){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(e.map(r=>r.element),n)}onDragStart(e,n){var r,s;(s=(r=this.dnd).onDragStart)===null||s===void 0||s.call(r,tK(e),n)}onDragOver(e,n,r,s,o=!0){return this.dnd.onDragOver(tK(e),n&&n.element,r,s)}drop(e,n,r,s){this.dnd.drop(tK(e),n&&n.element,r,s)}onDragEnd(e){var n,r;(r=(n=this.dnd).onDragEnd)===null||r===void 0||r.call(n,e)}dispose(){this.dnd.dispose()}}function bRe(i){return i&&Object.assign(Object.assign({},i),{collapseByDefault:!0,identityProvider:i.identityProvider&&{getId(e){return i.identityProvider.getId(e.element)}},dnd:i.dnd&&new a1t(i.dnd),multipleSelectionController:i.multipleSelectionController&&{isSelectionSingleChangeEvent(e){return i.multipleSelectionController.isSelectionSingleChangeEvent(Object.assign(Object.assign({},e),{element:e.element}))},isSelectionRangeChangeEvent(e){return i.multipleSelectionController.isSelectionRangeChangeEvent(Object.assign(Object.assign({},e),{element:e.element}))}},accessibilityProvider:i.accessibilityProvider&&Object.assign(Object.assign({},i.accessibilityProvider),{getPosInSet:void 0,getSetSize:void 0,getRole:i.accessibilityProvider.getRole?e=>i.accessibilityProvider.getRole(e.element):()=>"treeitem",isChecked:i.accessibilityProvider.isChecked?e=>{var n;return!!(!((n=i.accessibilityProvider)===null||n===void 0)&&n.isChecked(e.element))}:void 0,getAriaLabel(e){return i.accessibilityProvider.getAriaLabel(e.element)},getWidgetAriaLabel(){return i.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:i.accessibilityProvider.getWidgetRole?()=>i.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:i.accessibilityProvider.getAriaLevel&&(e=>i.accessibilityProvider.getAriaLevel(e.element)),getActiveDescendantId:i.accessibilityProvider.getActiveDescendantId&&(e=>i.accessibilityProvider.getActiveDescendantId(e.element))}),filter:i.filter&&{filter(e,n){return i.filter.filter(e.element,n)}},keyboardNavigationLabelProvider:i.keyboardNavigationLabelProvider&&Object.assign(Object.assign({},i.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel(e){return i.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(e.element)}}),sorter:void 0,expandOnlyOnTwistieClick:typeof i.expandOnlyOnTwistieClick>"u"?void 0:typeof i.expandOnlyOnTwistieClick!="function"?i.expandOnlyOnTwistieClick:e=>i.expandOnlyOnTwistieClick(e.element),defaultFindVisibility:e=>e.hasChildren&&e.stale?1:typeof i.defaultFindVisibility=="number"?i.defaultFindVisibility:typeof i.defaultFindVisibility>"u"?2:i.defaultFindVisibility(e.element)})}function Bee(i,e){e(i),i.children.forEach(n=>Bee(n,e))}class yRe{get onDidScroll(){return this.tree.onDidScroll}get onDidChangeFocus(){return _t.map(this.tree.onDidChangeFocus,e_e)}get onDidChangeSelection(){return _t.map(this.tree.onDidChangeSelection,e_e)}get onMouseDblClick(){return _t.map(this.tree.onMouseDblClick,t_e)}get onPointer(){return _t.map(this.tree.onPointer,t_e)}get onDidFocus(){return this.tree.onDidFocus}get onDidChangeModel(){return this.tree.onDidChangeModel}get onDidChangeCollapseState(){return this.tree.onDidChangeCollapseState}get onDidChangeFindOpenState(){return this.tree.onDidChangeFindOpenState}get onDidDispose(){return this.tree.onDidDispose}constructor(e,n,r,s,o,a={}){this.user=e,this.dataSource=o,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new _e,this._onDidChangeNodeSlowState=new _e,this.nodeMapper=new fae(l=>new bae(l)),this.disposables=new Xe,this.identityProvider=a.identityProvider,this.autoExpandSingleChildren=typeof a.autoExpandSingleChildren>"u"?!1:a.autoExpandSingleChildren,this.sorter=a.sorter,this.collapseByDefault=a.collapseByDefault,this.tree=this.createTree(e,n,r,s,a),this.onDidChangeFindMode=this.tree.onDidChangeFindMode,this.root=eK({element:void 0,parent:null,hasChildren:!0}),this.identityProvider&&(this.root=Object.assign(Object.assign({},this.root),{id:null})),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}createTree(e,n,r,s,o){const a=new gae(r),l=s.map(u=>new s1t(u,this.nodeMapper,this._onDidChangeNodeSlowState.event)),c=bRe(o)||{};return new vae(e,n,a,l,c)}updateOptions(e={}){this.tree.updateOptions(e)}getHTMLElement(){return this.tree.getHTMLElement()}get scrollTop(){return this.tree.scrollTop}set scrollTop(e){this.tree.scrollTop=e}get scrollHeight(){return this.tree.scrollHeight}get renderHeight(){return this.tree.renderHeight}domFocus(){this.tree.domFocus()}layout(e,n){this.tree.layout(e,n)}style(e){this.tree.style(e)}getInput(){return this.root.element}setInput(e,n){return Bb(this,void 0,void 0,function*(){this.refreshPromises.forEach(s=>s.cancel()),this.refreshPromises.clear(),this.root.element=e;const r=n&&{viewState:n,focus:[],selection:[]};yield this._updateChildren(e,!0,!1,r),r&&(this.tree.setFocus(r.focus),this.tree.setSelection(r.selection)),n&&typeof n.scrollTop=="number"&&(this.scrollTop=n.scrollTop)})}_updateChildren(e=this.root.element,n=!0,r=!1,s,o){return Bb(this,void 0,void 0,function*(){if(typeof this.root.element>"u")throw new qu(this.user,"Tree input not set");this.root.refreshPromise&&(yield this.root.refreshPromise,yield _t.toPromise(this._onDidRender.event));const a=this.getDataNode(e);if(yield this.refreshAndRenderNode(a,n,s,o),r)try{this.tree.rerender(a)}catch{}})}rerender(e){if(e===void 0||e===this.root.element){this.tree.rerender();return}const n=this.getDataNode(e);this.tree.rerender(n)}getNode(e=this.root.element){const n=this.getDataNode(e),r=this.tree.getNode(n===this.root?null:n);return this.nodeMapper.map(r)}collapse(e,n=!1){const r=this.getDataNode(e);return this.tree.collapse(r===this.root?null:r,n)}expand(e,n=!1){return Bb(this,void 0,void 0,function*(){if(typeof this.root.element>"u")throw new qu(this.user,"Tree input not set");this.root.refreshPromise&&(yield this.root.refreshPromise,yield _t.toPromise(this._onDidRender.event));const r=this.getDataNode(e);if(this.tree.hasElement(r)&&!this.tree.isCollapsible(r)||(r.refreshPromise&&(yield this.root.refreshPromise,yield _t.toPromise(this._onDidRender.event)),r!==this.root&&!r.refreshPromise&&!this.tree.isCollapsed(r)))return!1;const s=this.tree.expand(r===this.root?null:r,n);return r.refreshPromise&&(yield this.root.refreshPromise,yield _t.toPromise(this._onDidRender.event)),s})}setSelection(e,n){const r=e.map(s=>this.getDataNode(s));this.tree.setSelection(r,n)}getSelection(){return this.tree.getSelection().map(n=>n.element)}setFocus(e,n){const r=e.map(s=>this.getDataNode(s));this.tree.setFocus(r,n)}getFocus(){return this.tree.getFocus().map(n=>n.element)}reveal(e,n){this.tree.reveal(this.getDataNode(e),n)}getParentElement(e){const n=this.tree.getParentElement(this.getDataNode(e));return n&&n.element}getFirstElementChild(e=this.root.element){const n=this.getDataNode(e),r=this.tree.getFirstElementChild(n===this.root?null:n);return r&&r.element}getDataNode(e){const n=this.nodes.get(e===this.root.element?null:e);if(!n)throw new qu(this.user,`Data tree node not found: ${e}`);return n}refreshAndRenderNode(e,n,r,s){return Bb(this,void 0,void 0,function*(){yield this.refreshNode(e,n,r),this.render(e,r,s)})}refreshNode(e,n,r){return Bb(this,void 0,void 0,function*(){let s;if(this.subTreeRefreshPromises.forEach((o,a)=>{!s&&r1t(a,e)&&(s=o.then(()=>this.refreshNode(e,n,r)))}),s)return s;if(e!==this.root&&this.tree.getNode(e).collapsed){e.hasChildren=!!this.dataSource.hasChildren(e.element),e.stale=!0;return}return this.doRefreshSubTree(e,n,r)})}doRefreshSubTree(e,n,r){return Bb(this,void 0,void 0,function*(){let s;e.refreshPromise=new Promise(o=>s=o),this.subTreeRefreshPromises.set(e,e.refreshPromise),e.refreshPromise.finally(()=>{e.refreshPromise=void 0,this.subTreeRefreshPromises.delete(e)});try{const o=yield this.doRefreshNode(e,n,r);e.stale=!1,yield dJ.settled(o.map(a=>this.doRefreshSubTree(a,n,r)))}finally{s()}})}doRefreshNode(e,n,r){return Bb(this,void 0,void 0,function*(){e.hasChildren=!!this.dataSource.hasChildren(e.element);let s;if(!e.hasChildren)s=Promise.resolve(Vn.empty());else{const o=this.doGetChildren(e);if(Ofe(o))s=Promise.resolve(o);else{const a=p1(800);a.then(()=>{e.slow=!0,this._onDidChangeNodeSlowState.fire(e)},l=>null),s=o.finally(()=>a.cancel())}}try{const o=yield s;return this.setChildren(e,o,n,r)}catch(o){if(e!==this.root&&this.tree.hasElement(e)&&this.tree.collapse(e),sg(o))return[];throw o}finally{e.slow&&(e.slow=!1,this._onDidChangeNodeSlowState.fire(e))}})}doGetChildren(e){let n=this.refreshPromises.get(e);if(n)return n;const r=this.dataSource.getChildren(e.element);return Ofe(r)?this.processChildren(r):(n=go(()=>Bb(this,void 0,void 0,function*(){return this.processChildren(yield r)})),this.refreshPromises.set(e,n),n.finally(()=>{this.refreshPromises.delete(e)}))}_onDidChangeCollapseState({node:e,deep:n}){e.element!==null&&!e.collapsed&&e.element.stale&&(n?this.collapse(e.element.element):this.refreshAndRenderNode(e.element,!1).catch(Ln))}setChildren(e,n,r,s){const o=[...n];if(e.children.length===0&&o.length===0)return[];const a=new Map,l=new Map;for(const d of e.children)if(a.set(d.element,d),this.identityProvider){const h=this.tree.isCollapsed(d);l.set(d.id,{node:d,collapsed:h})}const c=[],u=o.map(d=>{const h=!!this.dataSource.hasChildren(d);if(!this.identityProvider){const m=eK({element:d,parent:e,hasChildren:h});return h&&this.collapseByDefault&&!this.collapseByDefault(d)&&(m.collapsedByDefault=!1,c.push(m)),m}const f=this.identityProvider.getId(d).toString(),p=l.get(f);if(p){const m=p.node;return a.delete(m.element),this.nodes.delete(m.element),this.nodes.set(d,m),m.element=d,m.hasChildren=h,r?p.collapsed?(m.children.forEach(_=>Bee(_,b=>this.nodes.delete(b.element))),m.children.splice(0,m.children.length),m.stale=!0):c.push(m):h&&this.collapseByDefault&&!this.collapseByDefault(d)&&(m.collapsedByDefault=!1,c.push(m)),m}const g=eK({element:d,parent:e,id:f,hasChildren:h});return s&&s.viewState.focus&&s.viewState.focus.indexOf(f)>-1&&s.focus.push(g),s&&s.viewState.selection&&s.viewState.selection.indexOf(f)>-1&&s.selection.push(g),s&&s.viewState.expanded&&s.viewState.expanded.indexOf(f)>-1?c.push(g):h&&this.collapseByDefault&&!this.collapseByDefault(d)&&(g.collapsedByDefault=!1,c.push(g)),g});for(const d of a.values())Bee(d,h=>this.nodes.delete(h.element));for(const d of u)this.nodes.set(d.element,d);return e.children.splice(0,e.children.length,...u),e!==this.root&&this.autoExpandSingleChildren&&u.length===1&&c.length===0&&(u[0].collapsedByDefault=!1,c.push(u[0])),c}render(e,n,r){const s=e.children.map(a=>this.asTreeElement(a,n)),o=r&&Object.assign(Object.assign({},r),{diffIdentityProvider:r.diffIdentityProvider&&{getId(a){return r.diffIdentityProvider.getId(a.element)}}});this.tree.setChildren(e===this.root?null:e,s,o),e!==this.root&&this.tree.setCollapsible(e,e.hasChildren),this._onDidRender.fire()}asTreeElement(e,n){if(e.stale)return{element:e,collapsible:e.hasChildren,collapsed:!0};let r;return n&&n.viewState.expanded&&e.id&&n.viewState.expanded.indexOf(e.id)>-1?r=!1:r=e.collapsedByDefault,e.collapsedByDefault=void 0,{element:e,children:e.hasChildren?Vn.map(e.children,s=>this.asTreeElement(s,n)):[],collapsible:e.hasChildren,collapsed:r}}processChildren(e){return this.sorter&&(e=[...e].sort(this.sorter.compare.bind(this.sorter))),e}dispose(){this.disposables.dispose(),this.tree.dispose()}}class yae{get element(){return{elements:this.node.element.elements.map(e=>e.element),incompressible:this.node.element.incompressible}}get children(){return this.node.children.map(e=>new yae(e))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(e){this.node=e}}class l1t{constructor(e,n,r,s){this.renderer=e,this.nodeMapper=n,this.compressibleNodeMapperProvider=r,this.onDidChangeTwistieState=s,this.renderedNodes=new Map,this.disposables=[],this.templateId=e.templateId}renderTemplate(e){return{templateData:this.renderer.renderTemplate(e)}}renderElement(e,n,r,s){this.renderer.renderElement(this.nodeMapper.map(e),n,r.templateData,s)}renderCompressedElements(e,n,r,s){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(e),n,r.templateData,s)}renderTwistie(e,n){return e.slow?(n.classList.add(...en.asClassNameArray(lt.treeItemLoading)),!0):(n.classList.remove(...en.asClassNameArray(lt.treeItemLoading)),!1)}disposeElement(e,n,r,s){var o,a;(a=(o=this.renderer).disposeElement)===null||a===void 0||a.call(o,this.nodeMapper.map(e),n,r.templateData,s)}disposeCompressedElements(e,n,r,s){var o,a;(a=(o=this.renderer).disposeCompressedElements)===null||a===void 0||a.call(o,this.compressibleNodeMapperProvider().map(e),n,r.templateData,s)}disposeTemplate(e){this.renderer.disposeTemplate(e.templateData)}dispose(){this.renderedNodes.clear(),this.disposables=Mi(this.disposables)}}function c1t(i){const e=i&&bRe(i);return e&&Object.assign(Object.assign({},e),{keyboardNavigationLabelProvider:e.keyboardNavigationLabelProvider&&Object.assign(Object.assign({},e.keyboardNavigationLabelProvider),{getCompressedNodeKeyboardNavigationLabel(n){return i.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(n.map(r=>r.element))}})})}class u1t extends yRe{constructor(e,n,r,s,o,a,l={}){super(e,n,r,o,a,l),this.compressionDelegate=s,this.compressibleNodeMapper=new fae(c=>new yae(c)),this.filter=l.filter}createTree(e,n,r,s,o){const a=new gae(r),l=s.map(u=>new l1t(u,this.nodeMapper,()=>this.compressibleNodeMapper,this._onDidChangeNodeSlowState.event)),c=c1t(o)||{};return new vRe(e,n,a,l,c)}asTreeElement(e,n){return Object.assign({incompressible:this.compressionDelegate.isIncompressible(e.element)},super.asTreeElement(e,n))}updateOptions(e={}){this.tree.updateOptions(e)}render(e,n){if(!this.identityProvider)return super.render(e,n);const r=f=>this.identityProvider.getId(f).toString(),s=f=>{const p=new Set;for(const g of f){const m=this.tree.getCompressedTreeNode(g===this.root?null:g);if(m.element)for(const _ of m.element.elements)p.add(r(_.element))}return p},o=s(this.tree.getSelection()),a=s(this.tree.getFocus());super.render(e,n);const l=this.getSelection();let c=!1;const u=this.getFocus();let d=!1;const h=f=>{const p=f.element;if(p)for(let g=0;g{const r=this.filter.filter(n,1),s=d1t(r);if(s===2)throw new Error("Recursive tree visibility not supported in async data compressed trees");return s===1})),super.processChildren(e)}}function d1t(i){return typeof i=="boolean"?i?1:0:pae(i)?UP(i.visibility):UP(i)}class h1t extends gRe{constructor(e,n,r,s,o,a={}){super(e,n,r,s,a),this.user=e,this.dataSource=o,this.identityProvider=a.identityProvider}createModel(e,n,r){return new mae(e,n,r)}}new yt("isMac",ri,L("isMac","Whether the operating system is macOS"));new yt("isLinux",_l,L("isLinux","Whether the operating system is Linux"));const X$=new yt("isWindows",Aa,L("isWindows","Whether the operating system is Windows")),wRe=new yt("isWeb",H1,L("isWeb","Whether the platform is a web browser"));new yt("isMacNative",ri&&!H1,L("isMacNative","Whether the operating system is macOS on a non-browser platform"));new yt("isIOS",Kp,L("isIOS","Whether the operating system is iOS"));new yt("isMobile",Brt,L("isMobile","Whether the platform is a mobile web browser"));new yt("isDevelopment",!1,!0);new yt("productQualityType","",L("productQualityType","Quality type of VS Code"));const CRe="inputFocus";new yt(CRe,!1,L("inputFocus","Whether keyboard focus is inside an input box"));var Uv=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},wr=function(i,e){return function(n,r){e(n,r,i)}};const Lh=qn("listService");class f1t{get lastFocusedList(){return this._lastFocusedWidget}constructor(){this.disposables=new Xe,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}setLastFocusedList(e){var n,r;e!==this._lastFocusedWidget&&((n=this._lastFocusedWidget)===null||n===void 0||n.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,(r=this._lastFocusedWidget)===null||r===void 0||r.getHTMLElement().classList.add("last-focused"))}register(e,n){if(this._hasCreatedStyleController||(this._hasCreatedStyleController=!0,new tRe(_h(),"").style(tk)),this.lists.some(s=>s.widget===e))throw new Error("Cannot register the same widget multiple times");const r={widget:e,extraContextKeys:n};return this.lists.push(r),e.getHTMLElement()===document.activeElement&&this.setLastFocusedList(e),Sf(e.onDidFocus(()=>this.setLastFocusedList(e)),gn(()=>this.lists.splice(this.lists.indexOf(r),1)),e.onDidDispose(()=>{this.lists=this.lists.filter(s=>s!==r),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}}const GP=new yt("listScrollAtBoundary","none");ze.or(GP.isEqualTo("top"),GP.isEqualTo("both"));ze.or(GP.isEqualTo("bottom"),GP.isEqualTo("both"));const SRe=new yt("listFocus",!0),Y$=new yt("listSupportsMultiselect",!0),xRe=ze.and(SRe,ze.not(CRe)),wae=new yt("listHasSelectionOrFocus",!1),Cae=new yt("listDoubleSelection",!1),Sae=new yt("listMultiSelection",!1),Z$=new yt("listSelectionNavigation",!1),p1t=new yt("listSupportsFind",!0),xae=new yt("treeElementCanCollapse",!1),g1t=new yt("treeElementHasParent",!1),kae=new yt("treeElementCanExpand",!1),m1t=new yt("treeElementHasChild",!1),_1t=new yt("treeFindOpen",!1),kRe="listTypeNavigationMode",LRe="listAutomaticKeyboardNavigation";function Q$(i,e){const n=i.createScoped(e.getHTMLElement());return SRe.bindTo(n),n}function J$(i,e){const n=GP.bindTo(i),r=()=>{const s=e.scrollTop===0,o=e.scrollHeight-e.renderHeight-e.scrollTop<1;s&&o?n.set("both"):s?n.set("top"):o?n.set("bottom"):n.set("none")};return r(),e.onDidScroll(r)}const nk="workbench.list.multiSelectModifier",L8="workbench.list.openMode",hh="workbench.list.horizontalScrolling",Lae="workbench.list.defaultFindMode",Dae="workbench.list.typeNavigationMode",j7="workbench.list.keyboardNavigation",Yp="workbench.list.scrollByPage",Eae="workbench.list.defaultFindMatchType",XP="workbench.tree.indent",W7="workbench.tree.renderIndentGuides",Zp="workbench.list.smoothScrolling",Jm="workbench.list.mouseWheelScrollSensitivity",e_="workbench.list.fastScrollSensitivity",$7="workbench.tree.expandMode";function t_(i){return i.getValue(nk)==="alt"}class v1t extends Le{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=t_(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(nk)&&(this.useAltAsMultipleSelectionModifier=t_(this.configurationService))}))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:QTe(e)}isSelectionRangeChangeEvent(e){return JTe(e)}}function ez(i,e){var n;const r=i.get(ei),s=i.get(sr),o=new Xe;return[Object.assign(Object.assign({},e),{keyboardNavigationDelegate:{mightProducePrintableCharacter(l){return s.mightProducePrintableCharacter(l)}},smoothScrolling:!!r.getValue(Zp),mouseWheelScrollSensitivity:r.getValue(Jm),fastScrollSensitivity:r.getValue(e_),multipleSelectionController:(n=e.multipleSelectionController)!==null&&n!==void 0?n:o.add(new v1t(r)),keyboardNavigationEventFilter:w1t(s),scrollByPage:!!r.getValue(Yp)}),o]}let jee=class extends Bf{constructor(e,n,r,s,o,a,l,c,u){const d=typeof o.horizontalScrolling<"u"?o.horizontalScrolling:!!c.getValue(hh),[h,f]=u.invokeFunction(ez,o);super(e,n,r,s,Object.assign(Object.assign({keyboardSupport:!1},h),{horizontalScrolling:d})),this.disposables.add(f),this.contextKeyService=Q$(a,this),this.disposables.add(J$(this.contextKeyService,this)),this.listSupportsMultiSelect=Y$.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(o.multipleSelectionSupport!==!1),Z$.bindTo(this.contextKeyService).set(!!o.selectionNavigation),this.listHasSelectionOrFocus=wae.bindTo(this.contextKeyService),this.listDoubleSelection=Cae.bindTo(this.contextKeyService),this.listMultiSelection=Sae.bindTo(this.contextKeyService),this.horizontalScrolling=o.horizontalScrolling,this._useAltAsMultipleSelectionModifier=t_(c),this.disposables.add(this.contextKeyService),this.disposables.add(l.register(this)),this.updateStyles(o.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const g=this.getSelection(),m=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(g.length>0||m.length>0),this.listMultiSelection.set(g.length>1),this.listDoubleSelection.set(g.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const g=this.getSelection(),m=this.getFocus();this.listHasSelectionOrFocus.set(g.length>0||m.length>0)})),this.disposables.add(c.onDidChangeConfiguration(g=>{g.affectsConfiguration(nk)&&(this._useAltAsMultipleSelectionModifier=t_(c));let m={};if(g.affectsConfiguration(hh)&&this.horizontalScrolling===void 0){const _=!!c.getValue(hh);m=Object.assign(Object.assign({},m),{horizontalScrolling:_})}if(g.affectsConfiguration(Yp)){const _=!!c.getValue(Yp);m=Object.assign(Object.assign({},m),{scrollByPage:_})}if(g.affectsConfiguration(Zp)){const _=!!c.getValue(Zp);m=Object.assign(Object.assign({},m),{smoothScrolling:_})}if(g.affectsConfiguration(Jm)){const _=c.getValue(Jm);m=Object.assign(Object.assign({},m),{mouseWheelScrollSensitivity:_})}if(g.affectsConfiguration(e_)){const _=c.getValue(e_);m=Object.assign(Object.assign({},m),{fastScrollSensitivity:_})}Object.keys(m).length>0&&this.updateOptions(m)})),this.navigator=new DRe(this,Object.assign({configurationService:c},o)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?HI(e):tk)}};jee=Uv([wr(5,mn),wr(6,Lh),wr(7,ei),wr(8,hn)],jee);let n_e=class extends Syt{constructor(e,n,r,s,o,a,l,c,u){const d=typeof o.horizontalScrolling<"u"?o.horizontalScrolling:!!c.getValue(hh),[h,f]=u.invokeFunction(ez,o);super(e,n,r,s,Object.assign(Object.assign({keyboardSupport:!1},h),{horizontalScrolling:d})),this.disposables=new Xe,this.disposables.add(f),this.contextKeyService=Q$(a,this),this.disposables.add(J$(this.contextKeyService,this.widget)),this.horizontalScrolling=o.horizontalScrolling,this.listSupportsMultiSelect=Y$.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(o.multipleSelectionSupport!==!1),Z$.bindTo(this.contextKeyService).set(!!o.selectionNavigation),this._useAltAsMultipleSelectionModifier=t_(c),this.disposables.add(this.contextKeyService),this.disposables.add(l.register(this)),this.updateStyles(o.overrideStyles),this.disposables.add(c.onDidChangeConfiguration(g=>{g.affectsConfiguration(nk)&&(this._useAltAsMultipleSelectionModifier=t_(c));let m={};if(g.affectsConfiguration(hh)&&this.horizontalScrolling===void 0){const _=!!c.getValue(hh);m=Object.assign(Object.assign({},m),{horizontalScrolling:_})}if(g.affectsConfiguration(Yp)){const _=!!c.getValue(Yp);m=Object.assign(Object.assign({},m),{scrollByPage:_})}if(g.affectsConfiguration(Zp)){const _=!!c.getValue(Zp);m=Object.assign(Object.assign({},m),{smoothScrolling:_})}if(g.affectsConfiguration(Jm)){const _=c.getValue(Jm);m=Object.assign(Object.assign({},m),{mouseWheelScrollSensitivity:_})}if(g.affectsConfiguration(e_)){const _=c.getValue(e_);m=Object.assign(Object.assign({},m),{fastScrollSensitivity:_})}Object.keys(m).length>0&&this.updateOptions(m)})),this.navigator=new DRe(this,Object.assign({configurationService:c},o)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?HI(e):tk)}dispose(){this.disposables.dispose(),super.dispose()}};n_e=Uv([wr(5,mn),wr(6,Lh),wr(7,ei),wr(8,hn)],n_e);let i_e=class extends G${constructor(e,n,r,s,o,a,l,c,u,d){const h=typeof a.horizontalScrolling<"u"?a.horizontalScrolling:!!u.getValue(hh),[f,p]=d.invokeFunction(ez,a);super(e,n,r,s,o,Object.assign(Object.assign({keyboardSupport:!1},f),{horizontalScrolling:h})),this.disposables.add(p),this.contextKeyService=Q$(l,this),this.disposables.add(J$(this.contextKeyService,this)),this.listSupportsMultiSelect=Y$.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(a.multipleSelectionSupport!==!1),Z$.bindTo(this.contextKeyService).set(!!a.selectionNavigation),this.listHasSelectionOrFocus=wae.bindTo(this.contextKeyService),this.listDoubleSelection=Cae.bindTo(this.contextKeyService),this.listMultiSelection=Sae.bindTo(this.contextKeyService),this.horizontalScrolling=a.horizontalScrolling,this._useAltAsMultipleSelectionModifier=t_(u),this.disposables.add(this.contextKeyService),this.disposables.add(c.register(this)),this.updateStyles(a.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const m=this.getSelection(),_=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(m.length>0||_.length>0),this.listMultiSelection.set(m.length>1),this.listDoubleSelection.set(m.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const m=this.getSelection(),_=this.getFocus();this.listHasSelectionOrFocus.set(m.length>0||_.length>0)})),this.disposables.add(u.onDidChangeConfiguration(m=>{m.affectsConfiguration(nk)&&(this._useAltAsMultipleSelectionModifier=t_(u));let _={};if(m.affectsConfiguration(hh)&&this.horizontalScrolling===void 0){const b=!!u.getValue(hh);_=Object.assign(Object.assign({},_),{horizontalScrolling:b})}if(m.affectsConfiguration(Yp)){const b=!!u.getValue(Yp);_=Object.assign(Object.assign({},_),{scrollByPage:b})}if(m.affectsConfiguration(Zp)){const b=!!u.getValue(Zp);_=Object.assign(Object.assign({},_),{smoothScrolling:b})}if(m.affectsConfiguration(Jm)){const b=u.getValue(Jm);_=Object.assign(Object.assign({},_),{mouseWheelScrollSensitivity:b})}if(m.affectsConfiguration(e_)){const b=u.getValue(e_);_=Object.assign(Object.assign({},_),{fastScrollSensitivity:b})}Object.keys(_).length>0&&this.updateOptions(_)})),this.navigator=new b1t(this,Object.assign({configurationService:u},a)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles!==void 0&&this.updateStyles(e.overrideStyles),e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){this.style(e?HI(e):tk)}dispose(){this.disposables.dispose(),super.dispose()}};i_e=Uv([wr(6,mn),wr(7,Lh),wr(8,ei),wr(9,hn)],i_e);class Iae extends Le{constructor(e,n){var r;super(),this.widget=e,this._onDidOpen=this._register(new _e),this.onDidOpen=this._onDidOpen.event,this._register(_t.filter(this.widget.onDidChangeSelection,s=>s.browserEvent instanceof KeyboardEvent)(s=>this.onSelectionFromKeyboard(s))),this._register(this.widget.onPointer(s=>this.onPointer(s.element,s.browserEvent))),this._register(this.widget.onMouseDblClick(s=>this.onMouseDblClick(s.element,s.browserEvent))),typeof(n==null?void 0:n.openOnSingleClick)!="boolean"&&(n!=null&&n.configurationService)?(this.openOnSingleClick=(n==null?void 0:n.configurationService.getValue(L8))!=="doubleClick",this._register(n==null?void 0:n.configurationService.onDidChangeConfiguration(s=>{s.affectsConfiguration(L8)&&(this.openOnSingleClick=(n==null?void 0:n.configurationService.getValue(L8))!=="doubleClick")}))):this.openOnSingleClick=(r=n==null?void 0:n.openOnSingleClick)!==null&&r!==void 0?r:!0}onSelectionFromKeyboard(e){if(e.elements.length!==1)return;const n=e.browserEvent,r=typeof n.preserveFocus=="boolean"?n.preserveFocus:!0,s=typeof n.pinned=="boolean"?n.pinned:!r;this._open(this.getSelectedElement(),r,s,!1,e.browserEvent)}onPointer(e,n){if(!this.openOnSingleClick||n.detail===2)return;const s=n.button===1,o=!0,a=s,l=n.ctrlKey||n.metaKey||n.altKey;this._open(e,o,a,l,n)}onMouseDblClick(e,n){if(!n)return;const r=n.target;if(r.classList.contains("monaco-tl-twistie")||r.classList.contains("monaco-icon-label")&&r.classList.contains("folder-icon")&&n.offsetX<16)return;const o=!1,a=!0,l=n.ctrlKey||n.metaKey||n.altKey;this._open(e,o,a,l,n)}_open(e,n,r,s,o){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:n,pinned:r,revealIfVisible:!0},sideBySide:s,element:e,browserEvent:o})}}class DRe extends Iae{constructor(e,n){super(e,n),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class b1t extends Iae{constructor(e,n){super(e,n)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class y1t extends Iae{constructor(e,n){super(e,n)}getSelectedElement(){var e;return(e=this.widget.getSelection()[0])!==null&&e!==void 0?e:void 0}}function w1t(i){let e=!1;return n=>{if(n.toKeyCodeChord().isModifierKey())return!1;if(e)return e=!1,!1;const r=i.softDispatch(n,n.target);return r.kind===1?(e=!0,!1):(e=!1,r.kind===0)}}let r_e=class extends vae{constructor(e,n,r,s,o,a,l,c,u){const{options:d,getTypeNavigationMode:h,disposable:f}=a.invokeFunction(U5,o);super(e,n,r,s,d),this.disposables.add(f),this.internals=new vx(this,o,h,o.overrideStyles,l,c,u),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};r_e=Uv([wr(5,hn),wr(6,mn),wr(7,Lh),wr(8,ei)],r_e);let s_e=class extends vRe{constructor(e,n,r,s,o,a,l,c,u){const{options:d,getTypeNavigationMode:h,disposable:f}=a.invokeFunction(U5,o);super(e,n,r,s,d),this.disposables.add(f),this.internals=new vx(this,o,h,o.overrideStyles,l,c,u),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};s_e=Uv([wr(5,hn),wr(6,mn),wr(7,Lh),wr(8,ei)],s_e);let o_e=class extends h1t{constructor(e,n,r,s,o,a,l,c,u,d){const{options:h,getTypeNavigationMode:f,disposable:p}=l.invokeFunction(U5,a);super(e,n,r,s,o,h),this.disposables.add(p),this.internals=new vx(this,a,f,a.overrideStyles,c,u,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles!==void 0&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};o_e=Uv([wr(6,hn),wr(7,mn),wr(8,Lh),wr(9,ei)],o_e);let Wee=class extends yRe{get onDidOpen(){return this.internals.onDidOpen}constructor(e,n,r,s,o,a,l,c,u,d){const{options:h,getTypeNavigationMode:f,disposable:p}=l.invokeFunction(U5,a);super(e,n,r,s,o,h),this.disposables.add(p),this.internals=new vx(this,a,f,a.overrideStyles,c,u,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};Wee=Uv([wr(6,hn),wr(7,mn),wr(8,Lh),wr(9,ei)],Wee);let a_e=class extends u1t{constructor(e,n,r,s,o,a,l,c,u,d,h){const{options:f,getTypeNavigationMode:p,disposable:g}=c.invokeFunction(U5,l);super(e,n,r,s,o,a,f),this.disposables.add(g),this.internals=new vx(this,l,p,l.overrideStyles,u,d,h),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};a_e=Uv([wr(7,hn),wr(8,mn),wr(9,Lh),wr(10,ei)],a_e);function ERe(i){const e=i.getValue(Lae);if(e==="highlight")return Lm.Highlight;if(e==="filter")return Lm.Filter;const n=i.getValue(j7);if(n==="simple"||n==="highlight")return Lm.Highlight;if(n==="filter")return Lm.Filter}function IRe(i){const e=i.getValue(Eae);if(e==="fuzzy")return _x.Fuzzy;if(e==="contiguous")return _x.Contiguous}function U5(i,e){var n;const r=i.get(ei),s=i.get(Vv),o=i.get(mn),a=i.get(hn),l=()=>{const p=o.getContextKeyValue(kRe);if(p==="automatic")return pm.Automatic;if(p==="trigger"||o.getContextKeyValue(LRe)===!1)return pm.Trigger;const m=r.getValue(Dae);if(m==="automatic")return pm.Automatic;if(m==="trigger")return pm.Trigger},c=e.horizontalScrolling!==void 0?e.horizontalScrolling:!!r.getValue(hh),[u,d]=a.invokeFunction(ez,e),h=e.paddingBottom,f=e.renderIndentGuides!==void 0?e.renderIndentGuides:r.getValue(W7);return{getTypeNavigationMode:l,disposable:d,options:Object.assign(Object.assign({keyboardSupport:!1},u),{indent:typeof r.getValue(XP)=="number"?r.getValue(XP):void 0,renderIndentGuides:f,smoothScrolling:!!r.getValue(Zp),defaultFindMode:ERe(r),defaultFindMatchType:IRe(r),horizontalScrolling:c,scrollByPage:!!r.getValue(Yp),paddingBottom:h,hideTwistiesOfChildlessElements:e.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:(n=e.expandOnlyOnTwistieClick)!==null&&n!==void 0?n:r.getValue($7)==="doubleClick",contextViewProvider:s,findWidgetStyles:nyt})}}let vx=class{get onDidOpen(){return this.navigator.onDidOpen}constructor(e,n,r,s,o,a,l){var c;this.tree=e,this.disposables=[],this.contextKeyService=Q$(o,e),this.disposables.push(J$(this.contextKeyService,e)),this.listSupportsMultiSelect=Y$.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(n.multipleSelectionSupport!==!1),Z$.bindTo(this.contextKeyService).set(!!n.selectionNavigation),this.listSupportFindWidget=p1t.bindTo(this.contextKeyService),this.listSupportFindWidget.set((c=n.findWidgetEnabled)!==null&&c!==void 0?c:!0),this.hasSelectionOrFocus=wae.bindTo(this.contextKeyService),this.hasDoubleSelection=Cae.bindTo(this.contextKeyService),this.hasMultiSelection=Sae.bindTo(this.contextKeyService),this.treeElementCanCollapse=xae.bindTo(this.contextKeyService),this.treeElementHasParent=g1t.bindTo(this.contextKeyService),this.treeElementCanExpand=kae.bindTo(this.contextKeyService),this.treeElementHasChild=m1t.bindTo(this.contextKeyService),this.treeFindOpen=_1t.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=t_(l),this.updateStyleOverrides(s);const d=()=>{const f=e.getFocus()[0];if(!f)return;const p=e.getNode(f);this.treeElementCanCollapse.set(p.collapsible&&!p.collapsed),this.treeElementHasParent.set(!!e.getParentElement(f)),this.treeElementCanExpand.set(p.collapsible&&p.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(f))},h=new Set;h.add(kRe),h.add(LRe),this.disposables.push(this.contextKeyService,a.register(e),e.onDidChangeSelection(()=>{const f=e.getSelection(),p=e.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(f.length>0||p.length>0),this.hasMultiSelection.set(f.length>1),this.hasDoubleSelection.set(f.length===2)})}),e.onDidChangeFocus(()=>{const f=e.getSelection(),p=e.getFocus();this.hasSelectionOrFocus.set(f.length>0||p.length>0),d()}),e.onDidChangeCollapseState(d),e.onDidChangeModel(d),e.onDidChangeFindOpenState(f=>this.treeFindOpen.set(f)),l.onDidChangeConfiguration(f=>{let p={};if(f.affectsConfiguration(nk)&&(this._useAltAsMultipleSelectionModifier=t_(l)),f.affectsConfiguration(XP)){const g=l.getValue(XP);p=Object.assign(Object.assign({},p),{indent:g})}if(f.affectsConfiguration(W7)&&n.renderIndentGuides===void 0){const g=l.getValue(W7);p=Object.assign(Object.assign({},p),{renderIndentGuides:g})}if(f.affectsConfiguration(Zp)){const g=!!l.getValue(Zp);p=Object.assign(Object.assign({},p),{smoothScrolling:g})}if(f.affectsConfiguration(Lae)||f.affectsConfiguration(j7)){const g=ERe(l);p=Object.assign(Object.assign({},p),{defaultFindMode:g})}if(f.affectsConfiguration(Dae)||f.affectsConfiguration(j7)){const g=r();p=Object.assign(Object.assign({},p),{typeNavigationMode:g})}if(f.affectsConfiguration(Eae)){const g=IRe(l);p=Object.assign(Object.assign({},p),{defaultFindMatchType:g})}if(f.affectsConfiguration(hh)&&n.horizontalScrolling===void 0){const g=!!l.getValue(hh);p=Object.assign(Object.assign({},p),{horizontalScrolling:g})}if(f.affectsConfiguration(Yp)){const g=!!l.getValue(Yp);p=Object.assign(Object.assign({},p),{scrollByPage:g})}if(f.affectsConfiguration($7)&&n.expandOnlyOnTwistieClick===void 0&&(p=Object.assign(Object.assign({},p),{expandOnlyOnTwistieClick:l.getValue($7)==="doubleClick"})),f.affectsConfiguration(Jm)){const g=l.getValue(Jm);p=Object.assign(Object.assign({},p),{mouseWheelScrollSensitivity:g})}if(f.affectsConfiguration(e_)){const g=l.getValue(e_);p=Object.assign(Object.assign({},p),{fastScrollSensitivity:g})}Object.keys(p).length>0&&e.updateOptions(p)}),this.contextKeyService.onDidChangeContext(f=>{f.affectsSome(h)&&e.updateOptions({typeNavigationMode:r()})})),this.navigator=new y1t(e,Object.assign({configurationService:l},n)),this.disposables.push(this.navigator)}updateOptions(e){e.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){this.tree.style(e?HI(e):tk)}dispose(){this.disposables=Mi(this.disposables)}};vx=Uv([wr(4,mn),wr(5,Lh),wr(6,ei)],vx);const C1t=Kr.as(ag.Configuration);C1t.registerConfiguration({id:"workbench",order:7,title:L("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[nk]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[L("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),L("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:L({},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[L8]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:L({},"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[hh]:{type:"boolean",default:!1,description:L("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[Yp]:{type:"boolean",default:!1,description:L("list.scrollByPage","Controls whether clicks in the scrollbar scroll page by page.")},[XP]:{type:"number",default:8,minimum:4,maximum:40,description:L("tree indent setting","Controls tree indentation in pixels.")},[W7]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:L("render tree indent guides","Controls whether the tree should render indent guides.")},[Zp]:{type:"boolean",default:!1,description:L("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[Jm]:{type:"number",default:1,markdownDescription:L("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[e_]:{type:"number",default:5,markdownDescription:L("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[Lae]:{type:"string",enum:["highlight","filter"],enumDescriptions:[L("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),L("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:L("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[j7]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[L("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),L("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),L("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:L("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:L("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' and 'workbench.list.typeNavigationMode' instead.")},[Eae]:{type:"string",enum:["fuzzy","contiguous"],enumDescriptions:[L("defaultFindMatchTypeSettingKey.fuzzy","Use fuzzy matching when searching."),L("defaultFindMatchTypeSettingKey.contiguous","Use contiguous matching when searching.")],default:"fuzzy",description:L("defaultFindMatchTypeSettingKey","Controls the type of matching used when searching lists and trees in the workbench.")},[$7]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:L("expand mode","Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[Dae]:{type:"string",enum:["automatic","trigger"],default:"automatic",markdownDescription:L("typeNavigationMode2","Controls how type navigation works in lists and trees in the workbench. When set to `trigger`, type navigation begins once the `list.triggerTypeNavigation` command is run.")}}});var $ee;(function(i){i[i.PRESERVE=0]="PRESERVE",i[i.LAST=1]="LAST"})($ee||($ee={}));const ik={Quickaccess:"workbench.contributions.quickaccess"};class S1t{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(e){return e.prefix.length===0?this.defaultProvider=e:this.providers.push(e),this.providers.sort((n,r)=>r.prefix.length-n.prefix.length),gn(()=>{this.providers.splice(this.providers.indexOf(e),1),this.defaultProvider===e&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return Hm([this.defaultProvider,...this.providers])}getQuickAccessProvider(e){return e&&this.providers.find(r=>e.startsWith(r.prefix))||void 0||this.defaultProvider}}Kr.add(ik.Quickaccess,new S1t);const x1t={ctrlCmd:!1,alt:!1};var YP;(function(i){i[i.Blur=1]="Blur",i[i.Gesture=2]="Gesture",i[i.Other=3]="Other"})(YP||(YP={}));var _p;(function(i){i[i.NONE=0]="NONE",i[i.FIRST=1]="FIRST",i[i.SECOND=2]="SECOND",i[i.LAST=3]="LAST"})(_p||(_p={}));const lg=qn("quickInputService");var k1t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},l_e=function(i,e){return function(n,r){e(n,r,i)}};let zee=class extends Le{constructor(e,n){super(),this.quickInputService=e,this.instantiationService=n,this.registry=Kr.as(ik.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0}show(e="",n){this.doShowOrPick(e,!1,n)}doShowOrPick(e,n,r){var s;const[o,a]=this.getOrInstantiateProvider(e),l=this.visibleQuickAccess,c=l==null?void 0:l.descriptor;if(l&&a&&c===a){e!==a.prefix&&!(r!=null&&r.preserveValue)&&(l.picker.value=e),this.adjustValueSelection(l.picker,a,r);return}if(a&&!(r!=null&&r.preserveValue)){let p;if(l&&c&&c!==a){const g=l.value.substr(c.prefix.length);g&&(p=`${a.prefix}${g}`)}if(!p){const g=o==null?void 0:o.defaultFilterValue;g===$ee.LAST?p=this.lastAcceptedPickerValues.get(a):typeof g=="string"&&(p=`${a.prefix}${g}`)}typeof p=="string"&&(e=p)}const u=new Xe,d=u.add(this.quickInputService.createQuickPick());d.value=e,this.adjustValueSelection(d,a,r),d.placeholder=a==null?void 0:a.placeholder,d.quickNavigate=r==null?void 0:r.quickNavigateConfiguration,d.hideInput=!!d.quickNavigate&&!l,(typeof(r==null?void 0:r.itemActivation)=="number"||r!=null&&r.quickNavigateConfiguration)&&(d.itemActivation=(s=r==null?void 0:r.itemActivation)!==null&&s!==void 0?s:_p.SECOND),d.contextKey=a==null?void 0:a.contextKey,d.filterValue=p=>p.substring(a?a.prefix.length:0);let h;n&&(h=new f$,u.add(_t.once(d.onWillAccept)(p=>{p.veto(),d.hide()}))),u.add(this.registerPickerListeners(d,o,a,e,r==null?void 0:r.providerOptions));const f=u.add(new Ns);if(o&&u.add(o.provide(d,f.token,r==null?void 0:r.providerOptions)),_t.once(d.onDidHide)(()=>{d.selectedItems.length===0&&f.cancel(),u.dispose(),h==null||h.complete(d.selectedItems.slice(0))}),d.show(),n)return h==null?void 0:h.p}adjustValueSelection(e,n,r){var s;let o;r!=null&&r.preserveValue?o=[e.value.length,e.value.length]:o=[(s=n==null?void 0:n.prefix.length)!==null&&s!==void 0?s:0,e.value.length],e.valueSelection=o}registerPickerListeners(e,n,r,s,o){const a=new Xe,l=this.visibleQuickAccess={picker:e,descriptor:r,value:s};return a.add(gn(()=>{l===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)})),a.add(e.onDidChangeValue(c=>{const[u]=this.getOrInstantiateProvider(c);u!==n?this.show(c,{preserveValue:!0,providerOptions:o}):l.value=c})),r&&a.add(e.onDidAccept(()=>{this.lastAcceptedPickerValues.set(r,e.value)})),a}getOrInstantiateProvider(e){const n=this.registry.getQuickAccessProvider(e);if(!n)return[void 0,void 0];let r=this.mapProviderToDescriptor.get(n);return r||(r=this.instantiationService.createInstance(n.ctor),this.mapProviderToDescriptor.set(n,r)),[r,n]}};zee=k1t([l_e(0,lg),l_e(1,hn)],zee);Te.white.toString(),Te.white.toString();class Vee extends Le{get onDidClick(){return this._onDidClick.event}constructor(e,n){super(),this._label="",this._onDidClick=this._register(new _e),this.options=n,this._element=document.createElement("a"),this._element.classList.add("monaco-button"),this._element.tabIndex=0,this._element.setAttribute("role","button"),this._element.classList.toggle("secondary",!!n.secondary);const r=n.secondary?n.buttonSecondaryBackground:n.buttonBackground,s=n.secondary?n.buttonSecondaryForeground:n.buttonForeground;this._element.style.color=s||"",this._element.style.backgroundColor=r||"",n.supportShortLabel&&(this._labelShortElement=document.createElement("div"),this._labelShortElement.classList.add("monaco-button-label-short"),this._element.appendChild(this._labelShortElement),this._labelElement=document.createElement("div"),this._labelElement.classList.add("monaco-button-label"),this._element.appendChild(this._labelElement),this._element.classList.add("monaco-text-button-with-short-label")),e.appendChild(this._element),this._register(or.addTarget(this._element)),[ht.CLICK,lr.Tap].forEach(o=>{this._register(Be(this._element,o,a=>{if(!this.enabled){Nn.stop(a);return}this._onDidClick.fire(a)}))}),this._register(Be(this._element,ht.KEY_DOWN,o=>{const a=new yr(o);let l=!1;this.enabled&&(a.equals(3)||a.equals(10))?(this._onDidClick.fire(o),l=!0):a.equals(9)&&(this._element.blur(),l=!0),l&&Nn.stop(a,!0)})),this._register(Be(this._element,ht.MOUSE_OVER,o=>{this._element.classList.contains("disabled")||this.updateBackground(!0)})),this._register(Be(this._element,ht.MOUSE_OUT,o=>{this.updateBackground(!1)})),this.focusTracker=this._register(Gm(this._element)),this._register(this.focusTracker.onDidFocus(()=>{this.enabled&&this.updateBackground(!0)})),this._register(this.focusTracker.onDidBlur(()=>{this.enabled&&this.updateBackground(!1)}))}dispose(){super.dispose(),this._element.remove()}getContentElements(e){const n=[];for(let r of Uy(e))if(typeof r=="string"){if(r=r.trim(),r==="")continue;const s=document.createElement("span");s.textContent=r,n.push(s)}else n.push(r);return n}updateBackground(e){let n;this.options.secondary?n=e?this.options.buttonSecondaryHoverBackground:this.options.buttonSecondaryBackground:n=e?this.options.buttonHoverBackground:this.options.buttonBackground,n&&(this._element.style.backgroundColor=n)}get element(){return this._element}set label(e){var n;if(this._label===e||Hy(this._label)&&Hy(e)&&Uvt(this._label,e))return;this._element.classList.add("monaco-text-button");const r=this.options.supportShortLabel?this._labelElement:this._element;if(Hy(e)){const s=H$(e,{inline:!0});s.dispose();const o=(n=s.element.querySelector("p"))===null||n===void 0?void 0:n.innerHTML;if(o){const a=pEe(o,{ADD_TAGS:["b","i","u","code","span"],ALLOWED_ATTR:["class"],RETURN_TRUSTED_TYPE:!0});r.innerHTML=a}else ca(r)}else this.options.supportIcons?ca(r,...this.getContentElements(e)):r.textContent=e;typeof this.options.title=="string"?this._element.title=this.options.title:this.options.title&&(this._element.title=obt(e)),this._label=e}get label(){return this._label}set enabled(e){e?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}}class Hee{constructor(e,n,r){this.options=n,this.styles=r,this.count=0,this.element=He(e,tt(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}setCount(e){this.count=e,this.render()}setTitleFormat(e){this.titleFormat=e,this.render()}render(){var e,n;this.element.textContent=ox(this.countFormat,this.count),this.element.title=ox(this.titleFormat,this.count),this.element.style.backgroundColor=(e=this.styles.badgeBackground)!==null&&e!==void 0?e:"",this.element.style.color=(n=this.styles.badgeForeground)!==null&&n!==void 0?n:"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}const c_e="done",u_e="active",nK="infinite",iK="infinite-long-running",d_e="discrete";class tz extends Le{constructor(e,n){super(),this.workedVal=0,this.showDelayedScheduler=this._register(new Ji(()=>Jc(this.element),0)),this.longRunningScheduler=this._register(new Ji(()=>this.infiniteLongRunning(),tz.LONG_RUNNING_INFINITE_THRESHOLD)),this.create(e,n)}create(e,n){this.element=document.createElement("div"),this.element.classList.add("monaco-progress-container"),this.element.setAttribute("role","progressbar"),this.element.setAttribute("aria-valuemin","0"),e.appendChild(this.element),this.bit=document.createElement("div"),this.bit.classList.add("progress-bit"),this.bit.style.backgroundColor=(n==null?void 0:n.progressBarBackground)||"#0E70C0",this.element.appendChild(this.bit)}off(){this.bit.style.width="inherit",this.bit.style.opacity="1",this.element.classList.remove(u_e,nK,iK,d_e),this.workedVal=0,this.totalWork=void 0,this.longRunningScheduler.cancel()}stop(){return this.doDone(!1)}doDone(e){return this.element.classList.add(c_e),this.element.classList.contains(nK)?(this.bit.style.opacity="0",e?setTimeout(()=>this.off(),200):this.off()):(this.bit.style.width="inherit",e?setTimeout(()=>this.off(),200):this.off()),this}infinite(){return this.bit.style.width="2%",this.bit.style.opacity="1",this.element.classList.remove(d_e,c_e,iK),this.element.classList.add(u_e,nK),this.longRunningScheduler.schedule(),this}infiniteLongRunning(){this.element.classList.add(iK)}getContainer(){return this.element}}tz.LONG_RUNNING_INFINITE_THRESHOLD=1e4;const L1t=tt;class D1t extends Le{constructor(e,n,r){super(),this.parent=e,this.onKeyDown=o=>Be(this.findInput.inputBox.inputElement,ht.KEY_DOWN,a=>{o(new yr(a))}),this.onMouseDown=o=>Be(this.findInput.inputBox.inputElement,ht.MOUSE_DOWN,a=>{o(new rh(a))}),this.onDidChange=o=>this.findInput.onDidChange(o),this.container=He(this.parent,L1t(".quick-input-box")),this.findInput=this._register(new pRe(this.container,void 0,{label:"",inputBoxStyles:n,toggleStyles:r}));const s=this.findInput.inputBox.inputElement;s.role="combobox",s.ariaHasPopup="menu",s.ariaAutoComplete="list",s.ariaExpanded="true"}get value(){return this.findInput.getValue()}set value(e){this.findInput.setValue(e)}select(e=null){this.findInput.inputBox.select(e)}isSelectionAtEnd(){return this.findInput.inputBox.isSelectionAtEnd()}get placeholder(){return this.findInput.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(e){this.findInput.inputBox.setPlaceHolder(e)}get password(){return this.findInput.inputBox.inputElement.type==="password"}set password(e){this.findInput.inputBox.inputElement.type=e?"password":"text"}set enabled(e){this.findInput.inputBox.inputElement.toggleAttribute("readonly",!e)}set toggles(e){this.findInput.setAdditionalToggles(e)}setAttribute(e,n){this.findInput.inputBox.inputElement.setAttribute(e,n)}showDecoration(e){e===vs.Ignore?this.findInput.clearMessage():this.findInput.showMessage({type:e===vs.Info?1:e===vs.Warning?2:3,content:""})}stylesForType(e){return this.findInput.inputBox.stylesForType(e===vs.Info?1:e===vs.Warning?2:3)}setFocus(){this.findInput.focus()}layout(){this.findInput.inputBox.layout()}}class Ky{constructor(e,n){var r;this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.supportIcons=(r=n==null?void 0:n.supportIcons)!==null&&r!==void 0?r:!1,this.domNode=He(e,tt("span.monaco-highlighted-label"))}get element(){return this.domNode}set(e,n=[],r="",s){e||(e=""),s&&(e=Ky.escapeNewLines(e,n)),!(this.didEverRender&&this.text===e&&this.title===r&&od(this.highlights,n))&&(this.text=e,this.title=r,this.highlights=n,this.render())}render(){const e=[];let n=0;for(const r of this.highlights){if(r.end===r.start)continue;if(n{s=o===`\r `?-1:0,a+=r;for(const l of n)l.end<=a||(l.start>=a&&(l.start+=s),l.end>=a&&(l.end+=s));return r+=s,"⏎"})}}class rK{constructor(e){this._element=e}get element(){return this._element}set textContent(e){this.disposed||e===this._textContent||(this._textContent=e,this._element.textContent=e)}set className(e){this.disposed||e===this._className||(this._className=e,this._element.className=e)}set empty(e){this.disposed||e===this._empty||(this._empty=e,this._element.style.marginLeft=e?"0":"")}dispose(){this.disposed=!0}}class z7 extends Le{constructor(e,n){super(),this.customHovers=new Map,this.creationOptions=n,this.domNode=this._register(new rK(He(e,tt(".monaco-icon-label")))),this.labelContainer=He(this.domNode.element,tt(".monaco-icon-label-container"));const r=He(this.labelContainer,tt("span.monaco-icon-name-container"));n!=null&&n.supportHighlights||n!=null&&n.supportIcons?this.nameNode=new T1t(r,!!n.supportIcons):this.nameNode=new E1t(r),this.hoverDelegate=n==null?void 0:n.hoverDelegate}get element(){return this.domNode.element}setLabel(e,n,r){const s=["monaco-icon-label"],o=["monaco-icon-label-container"];let a="";if(r&&(r.extraClasses&&s.push(...r.extraClasses),r.italic&&s.push("italic"),r.strikethrough&&s.push("strikethrough"),r.disabledCommand&&o.push("disabled"),r.title&&(a+=r.title)),this.domNode.className=s.join(" "),this.domNode.element.setAttribute("aria-label",a),this.labelContainer.className=o.join(" "),this.setupHover(r!=null&&r.descriptionTitle?this.labelContainer:this.element,r==null?void 0:r.title),this.nameNode.setLabel(e,r),n||this.descriptionNode){const l=this.getOrCreateDescriptionNode();l instanceof Ky?(l.set(n||"",r?r.descriptionMatches:void 0,void 0,r==null?void 0:r.labelEscapeNewLines),this.setupHover(l.element,r==null?void 0:r.descriptionTitle)):(l.textContent=n&&(r!=null&&r.labelEscapeNewLines)?Ky.escapeNewLines(n,[]):n||"",this.setupHover(l.element,(r==null?void 0:r.descriptionTitle)||""),l.empty=!n)}}setupHover(e,n){const r=this.customHovers.get(e);if(r&&(r.dispose(),this.customHovers.delete(e)),!n){e.removeAttribute("title");return}if(!this.hoverDelegate)Gvt(e,n);else{const s=GTe(this.hoverDelegate,e,n);s&&this.customHovers.set(e,s)}}dispose(){super.dispose();for(const e of this.customHovers.values())e.dispose();this.customHovers.clear()}getOrCreateDescriptionNode(){var e;if(!this.descriptionNode){const n=this._register(new rK(He(this.labelContainer,tt("span.monaco-icon-description-container"))));!((e=this.creationOptions)===null||e===void 0)&&e.supportDescriptionHighlights?this.descriptionNode=new Ky(He(n.element,tt("span.label-description")),{supportIcons:!!this.creationOptions.supportIcons}):this.descriptionNode=this._register(new rK(He(n.element,tt("span.label-description"))))}return this.descriptionNode}}class E1t{constructor(e){this.container=e,this.label=void 0,this.singleLabel=void 0}setLabel(e,n){if(!(this.label===e&&od(this.options,n)))if(this.label=e,this.options=n,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=He(this.container,tt("a.label-name",{id:n==null?void 0:n.domId}))),this.singleLabel.textContent=e;else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let r=0;r{const o={start:r,end:r+s.length},a=n.map(l=>Ba.intersect(o,l)).filter(l=>!Ba.isEmpty(l)).map(({start:l,end:c})=>({start:l-r,end:c-r}));return r=o.end+e.length,a})}class T1t{constructor(e,n){this.container=e,this.supportIcons=n,this.label=void 0,this.singleLabel=void 0}setLabel(e,n){if(!(this.label===e&&od(this.options,n)))if(this.label=e,this.options=n,typeof e=="string")this.singleLabel||(this.container.innerText="",this.container.classList.remove("multiple"),this.singleLabel=new Ky(He(this.container,tt("a.label-name",{id:n==null?void 0:n.domId})),{supportIcons:this.supportIcons})),this.singleLabel.set(e,n==null?void 0:n.matches,void 0,n==null?void 0:n.labelEscapeNewLines);else{this.container.innerText="",this.container.classList.add("multiple"),this.singleLabel=void 0;const r=(n==null?void 0:n.separator)||"/",s=I1t(e,r,n==null?void 0:n.matches);for(let o=0;o{const i=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});return{collator:i,collatorIsNumeric:i.resolvedOptions().numeric}});function A1t(i,e,n=!1){const r=i||"",s=e||"",o=h_e.value.collator.compare(r,s);return h_e.value.collatorIsNumeric&&o===0&&r!==s?rs.length)return 1}return 0}var P1t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o};class TRe{constructor(e){this.nodes=e}toString(){return this.nodes.map(e=>typeof e=="string"?e:e.label).join("")}}P1t([Ms],TRe.prototype,"toString",null);const O1t=/\[([^\]]+)\]\(((?:https?:\/\/|command:|file:)[^\)\s]+)(?: (["'])(.+?)(\3))?\)/gi;function F1t(i){const e=[];let n=0,r;for(;r=O1t.exec(i);){r.index-n>0&&e.push(i.substring(n,r.index));const[,s,o,,a]=r;a?e.push({label:s,href:o,title:a}):e.push({label:s,href:o}),n=r.index+r[0].length}return n{Jat(p)&&Nn.stop(p,!0),n.callback(o.href)},u=n.disposables.add(new Xn(l,ht.CLICK)).event,d=n.disposables.add(new Xn(l,ht.KEY_DOWN)).event,h=_t.chain(d,p=>p.filter(g=>{const m=new yr(g);return m.equals(10)||m.equals(3)}));n.disposables.add(or.addTarget(l));const f=n.disposables.add(new Xn(l,lr.Tap)).event;_t.any(u,f,h)(c,null,n.disposables),e.appendChild(l)}}var RRe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},f_e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const up=tt;class W1t{constructor(e,n,r,s,o,a,l){var c,u,d;this._checked=!1,this._hidden=!1,this.hasCheckbox=s,this.index=r,this.fireButtonTriggered=o,this.fireSeparatorButtonTriggered=a,this._onChecked=l,this.onChecked=s?_t.map(_t.filter(this._onChecked.event,h=>h.listElement===this),h=>h.checked):_t.None,e.type==="separator"?this._separator=e:(this.item=e,n&&n.type==="separator"&&!n.buttons&&(this._separator=n),this.saneDescription=this.item.description,this.saneDetail=this.item.detail,this._labelHighlights=(c=this.item.highlights)===null||c===void 0?void 0:c.label,this._descriptionHighlights=(u=this.item.highlights)===null||u===void 0?void 0:u.description,this._detailHighlights=(d=this.item.highlights)===null||d===void 0?void 0:d.detail,this.saneTooltip=this.item.tooltip),this._init=new K1(()=>{var h;const f=(h=e.label)!==null&&h!==void 0?h:"",p=bN(f).text.trim(),g=e.ariaLabel||[f,this.saneDescription,this.saneDetail].map(m=>Hvt(m)).filter(m=>!!m).join(", ");return{saneLabel:f,saneSortLabel:p,saneAriaLabel:g}})}get saneLabel(){return this._init.value.saneLabel}get saneSortLabel(){return this._init.value.saneSortLabel}get saneAriaLabel(){return this._init.value.saneAriaLabel}get element(){return this._element}set element(e){this._element=e}get hidden(){return this._hidden}set hidden(e){this._hidden=e}get checked(){return this._checked}set checked(e){e!==this._checked&&(this._checked=e,this._onChecked.fire({listElement:this,checked:e}))}get separator(){return this._separator}set separator(e){this._separator=e}get labelHighlights(){return this._labelHighlights}set labelHighlights(e){this._labelHighlights=e}get descriptionHighlights(){return this._descriptionHighlights}set descriptionHighlights(e){this._descriptionHighlights=e}get detailHighlights(){return this._detailHighlights}set detailHighlights(e){this._detailHighlights=e}}class K5{constructor(e){this.themeService=e}get templateId(){return K5.ID}renderTemplate(e){const n=Object.create(null);n.toDisposeElement=[],n.toDisposeTemplate=[],n.entry=He(e,up(".quick-input-list-entry"));const r=He(n.entry,up("label.quick-input-list-label"));n.toDisposeTemplate.push(As(r,ht.CLICK,u=>{n.checkbox.offsetParent||u.preventDefault()})),n.checkbox=He(r,up("input.quick-input-list-checkbox")),n.checkbox.type="checkbox",n.toDisposeTemplate.push(As(n.checkbox,ht.CHANGE,u=>{n.element.checked=n.checkbox.checked}));const s=He(r,up(".quick-input-list-rows")),o=He(s,up(".quick-input-list-row")),a=He(s,up(".quick-input-list-row"));n.label=new z7(o,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0}),n.toDisposeTemplate.push(n.label),n.icon=SEe(n.label.element,up(".quick-input-list-icon"));const l=He(o,up(".quick-input-list-entry-keybinding"));n.keybinding=new q5(l,Zu);const c=He(a,up(".quick-input-list-label-meta"));return n.detail=new z7(c,{supportHighlights:!0,supportIcons:!0}),n.toDisposeTemplate.push(n.detail),n.separator=He(n.entry,up(".quick-input-list-separator")),n.actionBar=new wh(n.entry),n.actionBar.domNode.classList.add("quick-input-list-entry-action-bar"),n.toDisposeTemplate.push(n.actionBar),n}renderElement(e,n,r){var s,o,a,l;r.element=e,e.element=(s=r.entry)!==null&&s!==void 0?s:void 0;const c=e.item?e.item:e.separator;r.checkbox.checked=e.checked,r.toDisposeElement.push(e.onChecked(g=>r.checkbox.checked=g));const{labelHighlights:u,descriptionHighlights:d,detailHighlights:h}=e;if(!((o=e.item)===null||o===void 0)&&o.iconPath){const g=$E(this.themeService.getColorTheme().type)?e.item.iconPath.dark:(a=e.item.iconPath.light)!==null&&a!==void 0?a:e.item.iconPath.dark,m=Jt.revive(g);r.icon.className="quick-input-list-icon",r.icon.style.backgroundImage=f1(m)}else r.icon.style.backgroundImage="",r.icon.className=!((l=e.item)===null||l===void 0)&&l.iconClass?`quick-input-list-icon ${e.item.iconClass}`:"";const f={matches:u||[],descriptionTitle:e.saneDescription,descriptionMatches:d||[],labelEscapeNewLines:!0};c.type!=="separator"?(f.extraClasses=c.iconClasses,f.italic=c.italic,f.strikethrough=c.strikethrough,r.entry.classList.remove("quick-input-list-separator-as-item")):r.entry.classList.add("quick-input-list-separator-as-item"),r.label.setLabel(e.saneLabel,e.saneDescription,f),r.keybinding.set(c.type==="separator"?void 0:c.keybinding),e.saneDetail?(r.detail.element.style.display="",r.detail.setLabel(e.saneDetail,void 0,{matches:h,title:e.saneDetail,labelEscapeNewLines:!0})):r.detail.element.style.display="none",e.item&&e.separator&&e.separator.label?(r.separator.textContent=e.separator.label,r.separator.style.display=""):r.separator.style.display="none",r.entry.classList.toggle("quick-input-list-separator-border",!!e.separator);const p=c.buttons;p&&p.length?(r.actionBar.push(p.map((g,m)=>{let _=g.iconClass||(g.iconPath?Uee(g.iconPath):void 0);return g.alwaysVisible&&(_=_?`${_} always-visible`:"always-visible"),{id:`id-${m}`,class:_,enabled:!0,label:"",tooltip:g.tooltip||"",run:()=>{c.type!=="separator"?e.fireButtonTriggered({button:g,item:c}):e.fireSeparatorButtonTriggered({button:g,separator:c})}}}),{icon:!0,label:!1}),r.entry.classList.add("has-actions")):r.entry.classList.remove("has-actions")}disposeElement(e,n,r){r.toDisposeElement=Mi(r.toDisposeElement),r.actionBar.clear()}disposeTemplate(e){e.toDisposeElement=Mi(e.toDisposeElement),e.toDisposeTemplate=Mi(e.toDisposeTemplate)}}K5.ID="listelement";class $1t{getHeight(e){return e.item?e.saneDetail?44:22:24}getTemplateId(e){return K5.ID}}var jo;(function(i){i[i.First=1]="First",i[i.Second=2]="Second",i[i.Last=3]="Last",i[i.Next=4]="Next",i[i.Previous=5]="Previous",i[i.NextPage=6]="NextPage",i[i.PreviousPage=7]="PreviousPage"})(jo||(jo={}));class Tae{constructor(e,n,r,s){this.parent=e,this.options=r,this.inputElements=[],this.elements=[],this.elementsToIndexes=new Map,this.matchOnDescription=!1,this.matchOnDetail=!1,this.matchOnLabel=!0,this.matchOnLabelMode="fuzzy",this.sortByLabel=!0,this._onChangedAllVisibleChecked=new _e,this.onChangedAllVisibleChecked=this._onChangedAllVisibleChecked.event,this._onChangedCheckedCount=new _e,this.onChangedCheckedCount=this._onChangedCheckedCount.event,this._onChangedVisibleCount=new _e,this.onChangedVisibleCount=this._onChangedVisibleCount.event,this._onChangedCheckedElements=new _e,this.onChangedCheckedElements=this._onChangedCheckedElements.event,this._onButtonTriggered=new _e,this.onButtonTriggered=this._onButtonTriggered.event,this._onSeparatorButtonTriggered=new _e,this.onSeparatorButtonTriggered=this._onSeparatorButtonTriggered.event,this._onKeyDown=new _e,this.onKeyDown=this._onKeyDown.event,this._onLeave=new _e,this.onLeave=this._onLeave.event,this._listElementChecked=new _e,this._fireCheckedEvents=!0,this.elementDisposables=[],this.disposables=[],this.id=n,this.container=He(this.parent,up(".quick-input-list"));const o=new $1t,a=new H1t;if(this.list=r.createList("QuickInput",this.container,o,[new K5(s)],{identityProvider:{getId:l=>{var c,u,d,h,f,p,g,m;return(m=(p=(h=(u=(c=l.item)===null||c===void 0?void 0:c.id)!==null&&u!==void 0?u:(d=l.item)===null||d===void 0?void 0:d.label)!==null&&h!==void 0?h:(f=l.separator)===null||f===void 0?void 0:f.id)!==null&&p!==void 0?p:(g=l.separator)===null||g===void 0?void 0:g.label)!==null&&m!==void 0?m:""}},setRowLineHeight:!1,multipleSelectionSupport:!1,horizontalScrolling:!1,accessibilityProvider:a}),this.list.getHTMLElement().id=n,this.disposables.push(this.list),this.disposables.push(this.list.onKeyDown(l=>{const c=new yr(l);switch(c.keyCode){case 10:this.toggleCheckbox();break;case 31:(ri?l.metaKey:l.ctrlKey)&&this.list.setFocus(Tl(this.list.length));break;case 16:{const u=this.list.getFocus();u.length===1&&u[0]===0&&this._onLeave.fire();break}case 18:{const u=this.list.getFocus();u.length===1&&u[0]===this.list.length-1&&this._onLeave.fire();break}}this._onKeyDown.fire(c)})),this.disposables.push(this.list.onMouseDown(l=>{l.browserEvent.button!==2&&l.browserEvent.preventDefault()})),this.disposables.push(Be(this.container,ht.CLICK,l=>{(l.x||l.y)&&this._onLeave.fire()})),this.disposables.push(this.list.onMouseMiddleClick(l=>{this._onLeave.fire()})),this.disposables.push(this.list.onContextMenu(l=>{typeof l.index=="number"&&(l.browserEvent.preventDefault(),this.list.setSelection([l.index]))})),r.hoverDelegate){const l=new AEe(r.hoverDelegate.delay);this.disposables.push(this.list.onMouseOver(c=>f_e(this,void 0,void 0,function*(){var u;if(c.browserEvent.target instanceof HTMLAnchorElement){l.cancel();return}if(!(!(c.browserEvent.relatedTarget instanceof HTMLAnchorElement)&&Ia(c.browserEvent.relatedTarget,(u=c.element)===null||u===void 0?void 0:u.element)))try{yield l.trigger(()=>f_e(this,void 0,void 0,function*(){c.element&&this.showHover(c.element)}))}catch(d){if(!sg(d))throw d}}))),this.disposables.push(this.list.onMouseOut(c=>{var u;Ia(c.browserEvent.relatedTarget,(u=c.element)===null||u===void 0?void 0:u.element)||l.cancel()})),this.disposables.push(l)}this.disposables.push(this._listElementChecked.event(l=>this.fireCheckedEvents())),this.disposables.push(this._onChangedAllVisibleChecked,this._onChangedCheckedCount,this._onChangedVisibleCount,this._onChangedCheckedElements,this._onButtonTriggered,this._onSeparatorButtonTriggered,this._onLeave,this._onKeyDown)}get onDidChangeFocus(){return _t.map(this.list.onDidChangeFocus,e=>e.elements.map(n=>n.item))}get onDidChangeSelection(){return _t.map(this.list.onDidChangeSelection,e=>({items:e.elements.map(n=>n.item),event:e.browserEvent}))}get scrollTop(){return this.list.scrollTop}set scrollTop(e){this.list.scrollTop=e}get ariaLabel(){return this.list.getHTMLElement().ariaLabel}set ariaLabel(e){this.list.getHTMLElement().ariaLabel=e}getAllVisibleChecked(){return this.allVisibleChecked(this.elements,!1)}allVisibleChecked(e,n=!0){for(let r=0,s=e.length;r{n.hidden||(n.checked=e)})}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}setElements(e){this.elementDisposables=Mi(this.elementDisposables);const n=a=>this.fireButtonTriggered(a),r=a=>this.fireSeparatorButtonTriggered(a);this.inputElements=e;const s=new Map,o=this.parent.classList.contains("show-checkboxes");this.elements=e.reduce((a,l,c)=>{var u;const d=c>0?e[c-1]:void 0;if(l.type==="separator"&&!l.buttons)return a;const h=new W1t(l,d,c,o,n,r,this._listElementChecked),f=a.length;return a.push(h),s.set((u=h.item)!==null&&u!==void 0?u:h.separator,f),a},[]),this.elementsToIndexes=s,this.list.splice(0,this.list.length),this.list.splice(0,this.list.length,this.elements),this._onChangedVisibleCount.fire(this.elements.length)}getFocusedElements(){return this.list.getFocusedElements().map(e=>e.item)}setFocusedElements(e){if(this.list.setFocus(e.filter(n=>this.elementsToIndexes.has(n)).map(n=>this.elementsToIndexes.get(n))),e.length>0){const n=this.list.getFocus()[0];typeof n=="number"&&this.list.reveal(n)}}getActiveDescendant(){return this.list.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(e){this.list.setSelection(e.filter(n=>this.elementsToIndexes.has(n)).map(n=>this.elementsToIndexes.get(n)))}getCheckedElements(){return this.elements.filter(e=>e.checked).map(e=>e.item).filter(e=>!!e)}setCheckedElements(e){try{this._fireCheckedEvents=!1;const n=new Set;for(const r of e)n.add(r);for(const r of this.elements)r.checked=n.has(r.item)}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}set enabled(e){this.list.getHTMLElement().style.pointerEvents=e?"":"none"}focus(e){if(!this.list.length)return;switch(e===jo.Second&&this.list.length<2&&(e=jo.First),e){case jo.First:this.list.scrollTop=0,this.list.focusFirst(void 0,r=>!!r.item);break;case jo.Second:this.list.scrollTop=0,this.list.focusNth(1,void 0,r=>!!r.item);break;case jo.Last:this.list.scrollTop=this.list.scrollHeight,this.list.focusLast(void 0,r=>!!r.item);break;case jo.Next:{this.list.focusNext(void 0,!0,void 0,s=>!!s.item);const r=this.list.getFocus()[0];r!==0&&!this.elements[r-1].item&&this.list.firstVisibleIndex>r-1&&this.list.reveal(r-1);break}case jo.Previous:{this.list.focusPrevious(void 0,!0,void 0,s=>!!s.item);const r=this.list.getFocus()[0];r!==0&&!this.elements[r-1].item&&this.list.firstVisibleIndex>r-1&&this.list.reveal(r-1);break}case jo.NextPage:this.list.focusNextPage(void 0,r=>!!r.item);break;case jo.PreviousPage:this.list.focusPreviousPage(void 0,r=>!!r.item);break}const n=this.list.getFocus()[0];typeof n=="number"&&this.list.reveal(n)}clearFocus(){this.list.setFocus([])}domFocus(){this.list.domFocus()}showHover(e){var n,r,s;this.options.hoverDelegate!==void 0&&(this._lastHover&&!this._lastHover.isDisposed&&((r=(n=this.options.hoverDelegate).onDidHideHover)===null||r===void 0||r.call(n),(s=this._lastHover)===null||s===void 0||s.dispose()),!(!e.element||!e.saneTooltip)&&(this._lastHover=this.options.hoverDelegate.showHover({content:e.saneTooltip,target:e.element,linkHandler:o=>{this.options.linkOpenerDelegate(o)},showPointer:!0,container:this.container,hoverPosition:1},!1)))}layout(e){this.list.getHTMLElement().style.maxHeight=e?`${Math.floor(e/44)*44+6}px`:"",this.list.layout()}filter(e){if(!(this.sortByLabel||this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))return this.list.layout(),!1;const n=e;if(e=e.trim(),!e||!(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))this.elements.forEach(s=>{s.labelHighlights=void 0,s.descriptionHighlights=void 0,s.detailHighlights=void 0,s.hidden=!1;const o=s.index&&this.inputElements[s.index-1];s.item&&(s.separator=o&&o.type==="separator"&&!o.buttons?o:void 0)});else{let s;this.elements.forEach(o=>{var a,l,c,u;let d;this.matchOnLabelMode==="fuzzy"?d=this.matchOnLabel&&(a=Hq(e,bN(o.saneLabel)))!==null&&a!==void 0?a:void 0:d=this.matchOnLabel&&(l=z1t(n,bN(o.saneLabel)))!==null&&l!==void 0?l:void 0;const h=this.matchOnDescription&&(c=Hq(e,bN(o.saneDescription||"")))!==null&&c!==void 0?c:void 0,f=this.matchOnDetail&&(u=Hq(e,bN(o.saneDetail||"")))!==null&&u!==void 0?u:void 0;if(d||h||f?(o.labelHighlights=d,o.descriptionHighlights=h,o.detailHighlights=f,o.hidden=!1):(o.labelHighlights=void 0,o.descriptionHighlights=void 0,o.detailHighlights=void 0,o.hidden=o.item?!o.item.alwaysShow:!0),o.item?o.separator=void 0:o.separator&&(o.hidden=!0),!this.sortByLabel){const p=o.index&&this.inputElements[o.index-1];s=p&&p.type==="separator"?p:s,s&&!o.hidden&&(o.separator=s,s=void 0)}})}const r=this.elements.filter(s=>!s.hidden);if(this.sortByLabel&&e){const s=e.toLowerCase();r.sort((o,a)=>V1t(o,a,s))}return this.elementsToIndexes=r.reduce((s,o,a)=>{var l;return s.set((l=o.item)!==null&&l!==void 0?l:o.separator,a),s},new Map),this.list.splice(0,this.list.length,r),this.list.setFocus([]),this.list.layout(),this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked()),this._onChangedVisibleCount.fire(r.length),!0}toggleCheckbox(){try{this._fireCheckedEvents=!1;const e=this.list.getFocusedElements(),n=this.allVisibleChecked(e);for(const r of e)r.checked=!n}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}display(e){this.container.style.display=e?"":"none"}isDisplayed(){return this.container.style.display!=="none"}dispose(){this.elementDisposables=Mi(this.elementDisposables),this.disposables=Mi(this.disposables)}fireCheckedEvents(){this._fireCheckedEvents&&(this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked()),this._onChangedCheckedCount.fire(this.getCheckedCount()),this._onChangedCheckedElements.fire(this.getCheckedElements()))}fireButtonTriggered(e){this._onButtonTriggered.fire(e)}fireSeparatorButtonTriggered(e){this._onSeparatorButtonTriggered.fire(e)}style(e){this.list.style(e)}toggleHover(){const e=this.list.getFocusedElements()[0];if(!(e!=null&&e.saneTooltip))return;if(this._lastHover&&!this._lastHover.isDisposed){this._lastHover.dispose();return}const n=this.list.getFocusedElements()[0];if(!n)return;this.showHover(n);const r=new Xe;r.add(this.list.onDidChangeFocus(s=>{s.indexes.length&&this.showHover(s.elements[0])})),this._lastHover&&r.add(this._lastHover),this._toggleHover=r,this.elementDisposables.push(this._toggleHover)}}RRe([Ms],Tae.prototype,"onDidChangeFocus",null);RRe([Ms],Tae.prototype,"onDidChangeSelection",null);function z1t(i,e){const{text:n,iconOffsets:r}=e;if(!r||r.length===0)return p_e(i,n);const s=S5(n," "),o=n.length-s.length,a=p_e(i,s);if(a)for(const l of a){const c=r[l.start+o]+o;l.start+=c,l.end+=c}return a}function p_e(i,e){const n=e.toLowerCase().indexOf(i.toLowerCase());return n!==-1?[{start:n,end:n+i.length}]:null}function V1t(i,e,n){const r=i.labelHighlights||[],s=e.labelHighlights||[];return r.length&&!s.length?-1:!r.length&&s.length?1:r.length===0&&s.length===0?0:N1t(i.saneSortLabel,e.saneSortLabel,n)}class H1t{getWidgetAriaLabel(){return L("quickInput","Quick Input")}getAriaLabel(e){var n;return!((n=e.separator)===null||n===void 0)&&n.label?`${e.saneAriaLabel}, ${e.separator.label}`:e.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(e){return e.hasCheckbox?"checkbox":"option"}isChecked(e){if(e.hasCheckbox)return{value:e.checked,onDidChange:e.onChecked}}}var g_e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const qee={iconClass:en.asClassName(lt.quickInputBack),tooltip:L("quickInput.back","Back")};class G5 extends Le{constructor(e){super(),this.ui=e,this._widgetUpdated=!1,this.visible=!1,this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._buttons=[],this.buttonsUpdated=!1,this._toggles=[],this.togglesUpdated=!1,this.noValidationMessage=G5.noPromptMessage,this._severity=vs.Ignore,this.onDidTriggerButtonEmitter=this._register(new _e),this.onDidHideEmitter=this._register(new _e),this.onDisposeEmitter=this._register(new _e),this.visibleDisposables=this._register(new Xe),this.onDidHide=this.onDidHideEmitter.event}get title(){return this._title}set title(e){this._title=e,this.update()}get description(){return this._description}set description(e){this._description=e,this.update()}get step(){return this._steps}set step(e){this._steps=e,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(e){this._totalSteps=e,this.update()}get enabled(){return this._enabled}set enabled(e){this._enabled=e,this.update()}get contextKey(){return this._contextKey}set contextKey(e){this._contextKey=e,this.update()}get busy(){return this._busy}set busy(e){this._busy=e,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(e){const n=this._ignoreFocusOut!==e&&!Kp;this._ignoreFocusOut=e&&!Kp,n&&this.update()}get buttons(){return this._buttons}set buttons(e){this._buttons=e,this.buttonsUpdated=!0,this.update()}get toggles(){return this._toggles}set toggles(e){this._toggles=e??[],this.togglesUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(e){this._validationMessage=e,this.update()}get severity(){return this._severity}set severity(e){this._severity=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.onDidTriggerButton(e=>{this.buttons.indexOf(e)!==-1&&this.onDidTriggerButtonEmitter.fire(e)})),this.ui.show(this),this.visible=!0,this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.toggles.length&&(this.togglesUpdated=!0),this.update())}hide(){this.visible&&this.ui.hide()}didHide(e=YP.Other){this.visible=!1,this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:e})}update(){var e,n;if(!this.visible)return;const r=this.getTitle();r&&this.ui.title.textContent!==r?this.ui.title.textContent=r:!r&&this.ui.title.innerHTML!==" "&&(this.ui.title.innerText=" ");const s=this.getDescription();if(this.ui.description1.textContent!==s&&(this.ui.description1.textContent=s),this.ui.description2.textContent!==s&&(this.ui.description2.textContent=s),this._widgetUpdated&&(this._widgetUpdated=!1,this._widget?ca(this.ui.widget,this._widget):ca(this.ui.widget)),this.busy&&!this.busyDelay&&(this.busyDelay=new Mf,this.busyDelay.setIfNotSet(()=>{this.visible&&this.ui.progressBar.infinite()},800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1,this.ui.leftActionBar.clear();const a=this.buttons.filter(c=>c===qee);this.ui.leftActionBar.push(a.map((c,u)=>{const d=new Vl(`id-${u}`,"",c.iconClass||Uee(c.iconPath),!0,()=>g_e(this,void 0,void 0,function*(){this.onDidTriggerButtonEmitter.fire(c)}));return d.tooltip=c.tooltip||"",d}),{icon:!0,label:!1}),this.ui.rightActionBar.clear();const l=this.buttons.filter(c=>c!==qee);this.ui.rightActionBar.push(l.map((c,u)=>{const d=new Vl(`id-${u}`,"",c.iconClass||Uee(c.iconPath),!0,()=>g_e(this,void 0,void 0,function*(){this.onDidTriggerButtonEmitter.fire(c)}));return d.tooltip=c.tooltip||"",d}),{icon:!0,label:!1})}if(this.togglesUpdated){this.togglesUpdated=!1;const a=(n=(e=this.toggles)===null||e===void 0?void 0:e.filter(l=>l instanceof qI))!==null&&n!==void 0?n:[];this.ui.inputBox.toggles=a}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);const o=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==o&&(this._lastValidationMessage=o,ca(this.ui.message),j1t(o,this.ui.message,{callback:a=>{this.ui.linkOpenerDelegate(a)},disposables:this.visibleDisposables})),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?L("quickInput.steps","{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(e){if(this.ui.inputBox.showDecoration(e),e!==vs.Ignore){const n=this.ui.inputBox.stylesForType(e);this.ui.message.style.color=n.foreground?`${n.foreground}`:"",this.ui.message.style.backgroundColor=n.background?`${n.background}`:"",this.ui.message.style.border=n.border?`1px solid ${n.border}`:"",this.ui.message.style.marginBottom="-2px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.marginBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}}G5.noPromptMessage=L("inputModeEntry","Press 'Enter' to confirm your input or 'Escape' to cancel");class ZP extends G5{constructor(){super(...arguments),this._value="",this.onDidChangeValueEmitter=this._register(new _e),this.onWillAcceptEmitter=this._register(new _e),this.onDidAcceptEmitter=this._register(new _e),this.onDidCustomEmitter=this._register(new _e),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._autoFocusOnList=!0,this._keepScrollPosition=!1,this._itemActivation=_p.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new _e),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new _e),this.onDidTriggerItemButtonEmitter=this._register(new _e),this.onDidTriggerSeparatorButtonEmitter=this._register(new _e),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this.filterValue=e=>e,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event,this.onDidTriggerSeparatorButton=this.onDidTriggerSeparatorButtonEmitter.event}get quickNavigate(){return this._quickNavigate}set quickNavigate(e){this._quickNavigate=e,this.update()}get value(){return this._value}set value(e){this.doSetValue(e)}doSetValue(e,n){this._value!==e&&(this._value=e,n||this.update(),this.visible&&this.ui.list.filter(this.filterValue(this._value))&&this.trySelectFirst(),this.onDidChangeValueEmitter.fire(this._value))}set ariaLabel(e){this._ariaLabel=e,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(e){this.ui.list.scrollTop=e}set items(e){this._items=e,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(e){this._canSelectMany=e,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(e){this._canAcceptInBackground=e}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(e){this._matchOnDescription=e,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(e){this._matchOnDetail=e,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(e){this._matchOnLabel=e,this.update()}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(e){this._matchOnLabelMode=e,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(e){this._sortByLabel=e,this.update()}get autoFocusOnList(){return this._autoFocusOnList}set autoFocusOnList(e){this._autoFocusOnList=e,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(e){this._keepScrollPosition=e}get itemActivation(){return this._itemActivation}set itemActivation(e){this._itemActivation=e}get activeItems(){return this._activeItems}set activeItems(e){this._activeItems=e,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(e){this._selectedItems=e,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?x1t:this.ui.keyMods}set valueSelection(e){this._valueSelection=e,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(e){this._customButton=e,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(e){this._customButtonLabel=e,this.update()}get customHover(){return this._customButtonHover}set customHover(e){this._customButtonHover=e,this.update()}get ok(){return this._ok}set ok(e){this._ok=e,this.update()}get hideInput(){return!!this._hideInput}set hideInput(e){this._hideInput=e,this.update()}trySelectFirst(){this.autoFocusOnList&&(this.canSelectMany||this.ui.list.focus(jo.First))}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{this.doSetValue(e,!0)})),this.visibleDisposables.add(this.ui.inputBox.onMouseDown(e=>{this.autoFocusOnList||this.ui.list.clearFocus()})),this.visibleDisposables.add((this._hideInput?this.ui.list:this.ui.inputBox).onKeyDown(e=>{switch(e.keyCode){case 18:this.ui.list.focus(jo.Next),this.canSelectMany&&this.ui.list.domFocus(),Nn.stop(e,!0);break;case 16:this.ui.list.getFocusedElements().length?this.ui.list.focus(jo.Previous):this.ui.list.focus(jo.Last),this.canSelectMany&&this.ui.list.domFocus(),Nn.stop(e,!0);break;case 12:this.ui.list.focus(jo.NextPage),this.canSelectMany&&this.ui.list.domFocus(),Nn.stop(e,!0);break;case 11:this.ui.list.focus(jo.PreviousPage),this.canSelectMany&&this.ui.list.domFocus(),Nn.stop(e,!0);break;case 17:if(!this._canAcceptInBackground||!this.ui.inputBox.isSelectionAtEnd())return;this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!0));break;case 14:(e.ctrlKey||e.metaKey)&&!e.shiftKey&&!e.altKey&&(this.ui.list.focus(jo.First),Nn.stop(e,!0));break;case 13:(e.ctrlKey||e.metaKey)&&!e.shiftKey&&!e.altKey&&(this.ui.list.focus(jo.Last),Nn.stop(e,!0));break}})),this.visibleDisposables.add(this.ui.onDidAccept(()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)})),this.visibleDisposables.add(this.ui.onDidCustom(()=>{this.onDidCustomEmitter.fire()})),this.visibleDisposables.add(this.ui.list.onDidChangeFocus(e=>{this.activeItemsUpdated||this.activeItemsToConfirm!==this._activeItems&&ys(e,this._activeItems,(n,r)=>n===r)||(this._activeItems=e,this.onDidChangeActiveEmitter.fire(e))})),this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({items:e,event:n})=>{if(this.canSelectMany){e.length&&this.ui.list.setSelectedElements([]);return}this.selectedItemsToConfirm!==this._selectedItems&&ys(e,this._selectedItems,(r,s)=>r===s)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e),e.length&&this.handleAccept(n instanceof MouseEvent&&n.button===1))})),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(e=>{this.canSelectMany&&(this.selectedItemsToConfirm!==this._selectedItems&&ys(e,this._selectedItems,(n,r)=>n===r)||(this._selectedItems=e,this.onDidChangeSelectionEmitter.fire(e)))})),this.visibleDisposables.add(this.ui.list.onButtonTriggered(e=>this.onDidTriggerItemButtonEmitter.fire(e))),this.visibleDisposables.add(this.ui.list.onSeparatorButtonTriggered(e=>this.onDidTriggerSeparatorButtonEmitter.fire(e))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(e){let n=!1;this.onWillAcceptEmitter.fire({veto:()=>n=!0}),n||this.onDidAcceptEmitter.fire({inBackground:e})}registerQuickNavigation(){return Be(this.ui.container,ht.KEY_UP,e=>{if(this.canSelectMany||!this._quickNavigate)return;const n=new yr(e),r=n.keyCode;this._quickNavigate.keybindings.some(a=>{const l=a.getChords();return l.length>1?!1:l[0].shiftKey&&r===4?!(n.ctrlKey||n.altKey||n.metaKey):!!(l[0].altKey&&r===6||l[0].ctrlKey&&r===5||l[0].metaKey&&r===57)})&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)})}update(){if(!this.visible)return;const e=this.keepScrollPosition?this.scrollTop:0,n=!!this.description,r={title:!!this.title||!!this.step||!!this.buttons.length,description:n,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!this._hideInput,progressBar:!this._hideInput||n,visibleCount:!0,count:this.canSelectMany&&!this._hideCountBadge,ok:this.ok==="default"?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage,customButton:this.customButton};this.ui.setVisibilities(r),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");let s=this.ariaLabel;if(!s&&r.inputBox&&(s=this.placeholder||ZP.DEFAULT_ARIA_LABEL,this.title&&(s+=` - ${this.title}`)),this.ui.list.ariaLabel!==s&&(this.ui.list.ariaLabel=s??null),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.matchOnLabelMode=this.matchOnLabelMode,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated)switch(this.itemsUpdated=!1,this.ui.list.setElements(this.items),this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this.ui.checkAll.checked=this.ui.list.getAllVisibleChecked(),this.ui.visibleCount.setCount(this.ui.list.getVisibleCount()),this.ui.count.setCount(this.ui.list.getCheckedCount()),this._itemActivation){case _p.NONE:this._itemActivation=_p.FIRST;break;case _p.SECOND:this.ui.list.focus(jo.Second),this._itemActivation=_p.FIRST;break;case _p.LAST:this.ui.list.focus(jo.Last),this._itemActivation=_p.FIRST;break;default:this.trySelectFirst();break}this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",r.inputBox||(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(jo.First)),this.keepScrollPosition&&(this.scrollTop=e)}}ZP.DEFAULT_ARIA_LABEL=L("quickInputBox.ariaLabel","Type to narrow down results.");class U1t extends G5{constructor(){super(...arguments),this._value="",this.valueSelectionUpdated=!0,this._password=!1,this.onDidValueChangeEmitter=this._register(new _e),this.onDidAcceptEmitter=this._register(new _e),this.onDidChangeValue=this.onDidValueChangeEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event}get value(){return this._value}set value(e){this._value=e||"",this.update()}get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.update()}get password(){return this._password}set password(e){this._password=e,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(e=>{e!==this.value&&(this._value=e,this.onDidValueChangeEmitter.fire(e))})),this.visibleDisposables.add(this.ui.onDidAccept(()=>this.onDidAcceptEmitter.fire())),this.valueSelectionUpdated=!0),super.show()}update(){if(!this.visible)return;this.ui.container.classList.remove("hidden-input");const e={title:!!this.title||!!this.step||!!this.buttons.length,description:!!this.description||!!this.step,inputBox:!0,message:!0,progressBar:!0};this.ui.setVisibilities(e),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||""),this.ui.inputBox.password!==this.password&&(this.ui.inputBox.password=this.password)}}const jc=tt;class nz extends Le{constructor(e,n){super(),this.options=e,this.themeService=n,this.enabled=!0,this.onDidAcceptEmitter=this._register(new _e),this.onDidCustomEmitter=this._register(new _e),this.onDidTriggerButtonEmitter=this._register(new _e),this.keyMods={ctrlCmd:!1,alt:!1},this.controller=null,this.onShowEmitter=this._register(new _e),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new _e),this.onHide=this.onHideEmitter.event,this.idPrefix=e.idPrefix,this.parentElement=e.container,this.styles=e.styles,this.registerKeyModsListeners()}registerKeyModsListeners(){const e=n=>{this.keyMods.ctrlCmd=n.ctrlKey||n.metaKey,this.keyMods.alt=n.altKey};this._register(Be(window,ht.KEY_DOWN,e,!0)),this._register(Be(window,ht.KEY_UP,e,!0)),this._register(Be(window,ht.MOUSE_DOWN,e,!0))}getUI(){if(this.ui)return this.ui;const e=He(this.parentElement,jc(".quick-input-widget.show-file-icons"));e.tabIndex=-1,e.style.display="none";const n=_h(e),r=He(e,jc(".quick-input-titlebar")),s=this.options.hoverDelegate?{hoverDelegate:this.options.hoverDelegate}:void 0,o=this._register(new wh(r,s));o.domNode.classList.add("quick-input-left-action-bar");const a=He(r,jc(".quick-input-title")),l=this._register(new wh(r,s));l.domNode.classList.add("quick-input-right-action-bar");const c=He(e,jc(".quick-input-header")),u=He(c,jc("input.quick-input-check-all"));u.type="checkbox",u.setAttribute("aria-label",L("quickInput.checkAll","Toggle all checkboxes")),this._register(As(u,ht.CHANGE,B=>{const j=u.checked;P.setAllVisibleChecked(j)})),this._register(Be(u,ht.CLICK,B=>{(B.x||B.y)&&p.setFocus()}));const d=He(c,jc(".quick-input-description")),h=He(c,jc(".quick-input-and-message")),f=He(h,jc(".quick-input-filter")),p=this._register(new D1t(f,this.styles.inputBox,this.styles.toggle));p.setAttribute("aria-describedby",`${this.idPrefix}message`);const g=He(f,jc(".quick-input-visible-count"));g.setAttribute("aria-live","polite"),g.setAttribute("aria-atomic","true");const m=new Hee(g,{countFormat:L({},"{0} Results")},this.styles.countBadge),_=He(f,jc(".quick-input-count"));_.setAttribute("aria-live","polite");const b=new Hee(_,{countFormat:L({},"{0} Selected")},this.styles.countBadge),y=He(c,jc(".quick-input-action")),x=this._register(new Vee(y,this.styles.button));x.label=L("ok","OK"),this._register(x.onDidClick(B=>{this.onDidAcceptEmitter.fire()}));const k=He(c,jc(".quick-input-action")),D=this._register(new Vee(k,this.styles.button));D.label=L("custom","Custom"),this._register(D.onDidClick(B=>{this.onDidCustomEmitter.fire()}));const R=He(h,jc(`#${this.idPrefix}message.quick-input-message`)),E=this._register(new tz(e,this.styles.progressBar));E.getContainer().classList.add("quick-input-progress");const A=He(e,jc(".quick-input-html-widget"));A.tabIndex=-1;const M=He(e,jc(".quick-input-description")),N=this.idPrefix+"list",P=this._register(new Tae(e,N,this.options,this.themeService));p.setAttribute("aria-controls",N),this._register(P.onDidChangeFocus(()=>{var B;p.setAttribute("aria-activedescendant",(B=P.getActiveDescendant())!==null&&B!==void 0?B:"")})),this._register(P.onChangedAllVisibleChecked(B=>{u.checked=B})),this._register(P.onChangedVisibleCount(B=>{m.setCount(B)})),this._register(P.onChangedCheckedCount(B=>{b.setCount(B)})),this._register(P.onLeave(()=>{setTimeout(()=>{p.setFocus(),this.controller instanceof ZP&&this.controller.canSelectMany&&P.clearFocus()},0)}));const O=Gm(e);return this._register(O),this._register(Be(e,ht.FOCUS,B=>{Ia(B.relatedTarget,e)||(this.previousFocusElement=B.relatedTarget instanceof HTMLElement?B.relatedTarget:void 0)},!0)),this._register(O.onDidBlur(()=>{!this.getUI().ignoreFocusOut&&!this.options.ignoreFocusOut()&&this.hide(YP.Blur),this.previousFocusElement=void 0})),this._register(Be(e,ht.FOCUS,B=>{p.setFocus()})),this._register(As(e,ht.KEY_DOWN,B=>{if(!Ia(B.target,A))switch(B.keyCode){case 3:Nn.stop(B,!0),this.enabled&&this.onDidAcceptEmitter.fire();break;case 9:Nn.stop(B,!0),this.hide(YP.Gesture);break;case 2:if(!B.altKey&&!B.ctrlKey&&!B.metaKey){const j=[".quick-input-list .monaco-action-bar .always-visible",".quick-input-list-entry:hover .monaco-action-bar",".monaco-list-row.focused .monaco-action-bar"];if(e.classList.contains("show-checkboxes")?j.push("input"):j.push("input[type=text]"),this.getUI().list.isDisplayed()&&j.push(".monaco-list"),this.getUI().message&&j.push(".quick-input-message a"),this.getUI().widget){if(Ia(B.target,this.getUI().widget))break;j.push(".quick-input-html-widget")}const z=e.querySelectorAll(j.join(", "));B.shiftKey&&B.target===z[0]?(Nn.stop(B,!0),P.clearFocus()):!B.shiftKey&&Ia(B.target,z[z.length-1])&&(Nn.stop(B,!0),z[0].focus())}break;case 10:B.ctrlKey&&(Nn.stop(B,!0),this.getUI().list.toggleHover());break}})),this.ui={container:e,styleSheet:n,leftActionBar:o,titleBar:r,title:a,description1:M,description2:d,widget:A,rightActionBar:l,checkAll:u,inputContainer:h,filterContainer:f,inputBox:p,visibleCountContainer:g,visibleCount:m,countContainer:_,count:b,okContainer:y,ok:x,message:R,customButtonContainer:k,customButton:D,list:P,progressBar:E,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,show:B=>this.show(B),hide:()=>this.hide(),setVisibilities:B=>this.setVisibilities(B),setEnabled:B=>this.setEnabled(B),setContextKey:B=>this.options.setContextKey(B),linkOpenerDelegate:B=>this.options.linkOpenerDelegate(B)},this.updateStyles(),this.ui}pick(e,n={},r=Hn.None){return new Promise((s,o)=>{let a=d=>{var h;a=s,(h=n.onKeyMods)===null||h===void 0||h.call(n,l.keyMods),s(d)};if(r.isCancellationRequested){a(void 0);return}const l=this.createQuickPick();let c;const u=[l,l.onDidAccept(()=>{if(l.canSelectMany)a(l.selectedItems.slice()),l.hide();else{const d=l.activeItems[0];d&&(a(d),l.hide())}}),l.onDidChangeActive(d=>{const h=d[0];h&&n.onDidFocus&&n.onDidFocus(h)}),l.onDidChangeSelection(d=>{if(!l.canSelectMany){const h=d[0];h&&(a(h),l.hide())}}),l.onDidTriggerItemButton(d=>n.onDidTriggerItemButton&&n.onDidTriggerItemButton(Object.assign(Object.assign({},d),{removeItem:()=>{const h=l.items.indexOf(d.item);if(h!==-1){const f=l.items.slice(),p=f.splice(h,1),g=l.activeItems.filter(_=>_!==p[0]),m=l.keepScrollPosition;l.keepScrollPosition=!0,l.items=f,g&&(l.activeItems=g),l.keepScrollPosition=m}}}))),l.onDidTriggerSeparatorButton(d=>{var h;return(h=n.onDidTriggerSeparatorButton)===null||h===void 0?void 0:h.call(n,d)}),l.onDidChangeValue(d=>{c&&!d&&(l.activeItems.length!==1||l.activeItems[0]!==c)&&(l.activeItems=[c])}),r.onCancellationRequested(()=>{l.hide()}),l.onDidHide(()=>{Mi(u),a(void 0)})];l.title=n.title,l.canSelectMany=!!n.canPickMany,l.placeholder=n.placeHolder,l.ignoreFocusOut=!!n.ignoreFocusLost,l.matchOnDescription=!!n.matchOnDescription,l.matchOnDetail=!!n.matchOnDetail,l.matchOnLabel=n.matchOnLabel===void 0||n.matchOnLabel,l.autoFocusOnList=n.autoFocusOnList===void 0||n.autoFocusOnList,l.quickNavigate=n.quickNavigate,l.hideInput=!!n.hideInput,l.contextKey=n.contextKey,l.busy=!0,Promise.all([e,n.activeItem]).then(([d,h])=>{c=h,l.busy=!1,l.items=d,l.canSelectMany&&(l.selectedItems=d.filter(f=>f.type!=="separator"&&f.picked)),c&&(l.activeItems=[c])}),l.show(),Promise.resolve(e).then(void 0,d=>{o(d),l.hide()})})}createQuickPick(){const e=this.getUI();return new ZP(e)}createInputBox(){const e=this.getUI();return new U1t(e)}show(e){const n=this.getUI();this.onShowEmitter.fire();const r=this.controller;this.controller=e,r==null||r.didHide(),this.setEnabled(!0),n.leftActionBar.clear(),n.title.textContent="",n.description1.textContent="",n.description2.textContent="",ca(n.widget),n.rightActionBar.clear(),n.checkAll.checked=!1,n.inputBox.placeholder="",n.inputBox.password=!1,n.inputBox.showDecoration(vs.Ignore),n.visibleCount.setCount(0),n.count.setCount(0),ca(n.message),n.progressBar.stop(),n.list.setElements([]),n.list.matchOnDescription=!1,n.list.matchOnDetail=!1,n.list.matchOnLabel=!0,n.list.sortByLabel=!0,n.ignoreFocusOut=!1,n.inputBox.toggles=void 0;const s=this.options.backKeybindingLabel();qee.tooltip=s?L("quickInput.backWithKeybinding","Back ({0})",s):L("quickInput.back","Back"),n.container.style.display="",this.updateLayout(),n.inputBox.setFocus()}setVisibilities(e){const n=this.getUI();n.title.style.display=e.title?"":"none",n.description1.style.display=e.description&&(e.inputBox||e.checkAll)?"":"none",n.description2.style.display=e.description&&!(e.inputBox||e.checkAll)?"":"none",n.checkAll.style.display=e.checkAll?"":"none",n.inputContainer.style.display=e.inputBox?"":"none",n.filterContainer.style.display=e.inputBox?"":"none",n.visibleCountContainer.style.display=e.visibleCount?"":"none",n.countContainer.style.display=e.count?"":"none",n.okContainer.style.display=e.ok?"":"none",n.customButtonContainer.style.display=e.customButton?"":"none",n.message.style.display=e.message?"":"none",n.progressBar.getContainer().style.display=e.progressBar?"":"none",n.list.display(!!e.list),n.container.classList.toggle("show-checkboxes",!!e.checkBox),n.container.classList.toggle("hidden-input",!e.inputBox&&!e.description),this.updateLayout()}setEnabled(e){if(e!==this.enabled){this.enabled=e;for(const n of this.getUI().leftActionBar.viewItems)n.action.enabled=e;for(const n of this.getUI().rightActionBar.viewItems)n.action.enabled=e;this.getUI().checkAll.disabled=!e,this.getUI().inputBox.enabled=e,this.getUI().ok.enabled=e,this.getUI().list.enabled=e}}hide(e){var n,r,s;const o=this.controller;if(!o)return;const a=!Ia(document.activeElement,(r=(n=this.ui)===null||n===void 0?void 0:n.container)!==null&&r!==void 0?r:null);if(this.controller=null,this.onHideEmitter.fire(),this.getUI().container.style.display="none",!a){let l=this.previousFocusElement;for(;l&&!l.offsetParent;)l=(s=l.parentElement)!==null&&s!==void 0?s:void 0;l!=null&&l.offsetParent?(l.focus(),this.previousFocusElement=void 0):this.options.returnFocus()}o.didHide(e)}layout(e,n){this.dimension=e,this.titleBarOffset=n,this.updateLayout()}updateLayout(){if(this.ui&&this.isDisplayed()){this.ui.container.style.top=`${this.titleBarOffset}px`;const e=this.ui.container.style,n=Math.min(this.dimension.width*.62,nz.MAX_WIDTH);e.width=n+"px",e.marginLeft="-"+n/2+"px",this.ui.inputBox.layout(),this.ui.list.layout(this.dimension&&this.dimension.height*.4)}}applyStyles(e){this.styles=e,this.updateStyles()}updateStyles(){if(this.ui){const{quickInputTitleBackground:e,quickInputBackground:n,quickInputForeground:r,widgetBorder:s,widgetShadow:o}=this.styles.widget;this.ui.titleBar.style.backgroundColor=e??"",this.ui.container.style.backgroundColor=n??"",this.ui.container.style.color=r??"",this.ui.container.style.border=s?`1px solid ${s}`:"",this.ui.container.style.boxShadow=o?`0 0 8px 2px ${o}`:"",this.ui.list.style(this.styles.list);const a=[];this.styles.pickerGroup.pickerGroupBorder&&a.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.pickerGroup.pickerGroupBorder}; }`),this.styles.pickerGroup.pickerGroupForeground&&a.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.pickerGroup.pickerGroupForeground}; }`),this.styles.pickerGroup.pickerGroupForeground&&a.push(".quick-input-list .quick-input-list-separator-as-item { color: var(--vscode-descriptionForeground); }"),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(a.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&a.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&a.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&a.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&a.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&a.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),a.push("}"));const l=a.join(` `);l!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=l)}}isDisplayed(){return this.ui&&this.ui.container.style.display!=="none"}}nz.MAX_WIDTH=600;var q1t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},y6=function(i,e){return function(n,r){e(n,r,i)}};let Kee=class extends Lft{get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get hasController(){return!!this._controller}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(zee))),this._quickAccess}constructor(e,n,r,s){super(r),this.instantiationService=e,this.contextKeyService=n,this.layoutService=s,this._onShow=this._register(new _e),this._onHide=this._register(new _e),this.contexts=new Map}createController(e=this.layoutService,n){const r={idPrefix:"quickInput_",container:e.container,ignoreFocusOut:()=>!1,backKeybindingLabel:()=>{},setContextKey:o=>this.setContextKey(o),linkOpenerDelegate:o=>{this.instantiationService.invokeFunction(a=>{a.get(fu).open(o,{allowCommands:!0,fromUserGesture:!0})})},returnFocus:()=>e.focus(),createList:(o,a,l,c,u)=>this.instantiationService.createInstance(jee,o,a,l,c,u),styles:this.computeStyles()},s=this._register(new nz(Object.assign(Object.assign({},r),n),this.themeService));return s.layout(e.dimension,e.offset.quickPickTop),this._register(e.onDidLayout(o=>s.layout(o,e.offset.quickPickTop))),this._register(s.onShow(()=>{this.resetContextKeys(),this._onShow.fire()})),this._register(s.onHide(()=>{this.resetContextKeys(),this._onHide.fire()})),s}setContextKey(e){let n;e&&(n=this.contexts.get(e),n||(n=new yt(e,!1).bindTo(this.contextKeyService),this.contexts.set(e,n))),!(n&&n.get())&&(this.resetContextKeys(),n==null||n.set(!0))}resetContextKeys(){this.contexts.forEach(e=>{e.get()&&e.reset()})}pick(e,n={},r=Hn.None){return this.controller.pick(e,n,r)}createQuickPick(){return this.controller.createQuickPick()}createInputBox(){return this.controller.createInputBox()}updateStyles(){this.hasController&&this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:{quickInputBackground:wt(sge),quickInputForeground:wt(Adt),quickInputTitleBackground:wt(Ndt),widgetBorder:wt(poe),widgetShadow:wt(bm)},inputBox:T7,toggle:I7,countBadge:iRe,button:eyt,progressBar:tyt,keybindingLabel:Jbt,list:HI({listBackground:sge,listFocusBackground:vS,listFocusForeground:_S,listInactiveFocusForeground:_S,listInactiveSelectionIconForeground:l2,listInactiveFocusBackground:vS,listFocusOutline:Dr,listInactiveFocusOutline:Dr}),pickerGroup:{pickerGroupBorder:wt(Mdt),pickerGroupForeground:wt(fIe)}}}};Kee=q1t([y6(0,hn),y6(1,mn),y6(2,Do),y6(3,VI)],Kee);var ARe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},w2=function(i,e){return function(n,r){e(n,r,i)}};let Gee=class extends Kee{constructor(e,n,r,s,o){super(n,r,s,new eee(e.getContainerDomNode(),o)),this.host=void 0;const a=QE.get(e);if(a){const l=a.widget;this.host={_serviceBrand:void 0,get hasContainer(){return!0},get container(){return l.getDomNode()},get dimension(){return e.getLayoutInfo()},get onDidLayout(){return e.onDidLayoutChange},focus:()=>e.focus(),offset:{top:0,quickPickTop:0}}}else this.host=void 0}createController(){return super.createController(this.host)}};Gee=ARe([w2(1,hn),w2(2,mn),w2(3,Do),w2(4,Si)],Gee);let Xee=class{get activeService(){const e=this.codeEditorService.getFocusedCodeEditor();if(!e)throw new Error("Quick input service needs a focused editor to work.");let n=this.mapEditorToService.get(e);if(!n){const r=n=this.instantiationService.createInstance(Gee,e);this.mapEditorToService.set(e,n),u1(e.onDidDispose)(()=>{r.dispose(),this.mapEditorToService.delete(e)})}return n}get quickAccess(){return this.activeService.quickAccess}constructor(e,n){this.instantiationService=e,this.codeEditorService=n,this.mapEditorToService=new Map}pick(e,n={},r=Hn.None){return this.activeService.pick(e,n,r)}createQuickPick(){return this.activeService.createQuickPick()}createInputBox(){return this.activeService.createInputBox()}};Xee=ARe([w2(0,hn),w2(1,Si)],Xee);class QE{static get(e){return e.getContribution(QE.ID)}constructor(e){this.editor=e,this.widget=new iz(this.editor)}dispose(){this.widget.dispose()}}QE.ID="editor.controller.quickInput";class iz{constructor(e){this.codeEditor=e,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return iz.ID}getDomNode(){return this.domNode}getPosition(){return{preference:2}}dispose(){this.codeEditor.removeOverlayWidget(this)}}iz.ID="editor.contrib.quickInputWidget";_i(QE.ID,QE,4);class K1t{constructor(e,n,r,s,o){this._parsedThemeRuleBrand=void 0,this.token=e,this.index=n,this.fontStyle=r,this.foreground=s,this.background=o}}function G1t(i){if(!i||!Array.isArray(i))return[];const e=[];let n=0;for(let r=0,s=i.length;r{const f=ewt(d.token,h.token);return f!==0?f:d.index-h.index});let n=0,r="000000",s="ffffff";for(;i.length>=1&&i[0].token==="";){const d=i.shift();d.fontStyle!==-1&&(n=d.fontStyle),d.foreground!==null&&(r=d.foreground),d.background!==null&&(s=d.background)}const o=new Z1t;for(const d of e)o.getId(d);const a=o.getId(r),l=o.getId(s),c=new Rae(n,a,l),u=new Aae(c);for(let d=0,h=i.length;d"u"){const s=this._match(n),o=J1t(n);r=(s.metadata|o<<8)>>>0,this._cache.set(n,r)}return(r|e<<0)>>>0}}const Q1t=/\b(comment|string|regex|regexp)\b/;function J1t(i){const e=i.match(Q1t);if(!e)return 0;switch(e[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"regexp":return 3}throw new Error("Unexpected match for standard token type!")}function ewt(i,e){return ie?1:0}class Rae{constructor(e,n,r){this._themeTrieElementRuleBrand=void 0,this._fontStyle=e,this._foreground=n,this._background=r,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new Rae(this._fontStyle,this._foreground,this._background)}acceptOverwrite(e,n,r){e!==-1&&(this._fontStyle=e),n!==0&&(this._foreground=n),r!==0&&(this._background=r),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class Aae{constructor(e){this._themeTrieElementBrand=void 0,this._mainRule=e,this._children=new Map}match(e){if(e==="")return this._mainRule;const n=e.indexOf(".");let r,s;n===-1?(r=e,s=""):(r=e.substring(0,n),s=e.substring(n+1));const o=this._children.get(r);return typeof o<"u"?o.match(s):this._mainRule}insert(e,n,r,s){if(e===""){this._mainRule.acceptOverwrite(n,r,s);return}const o=e.indexOf(".");let a,l;o===-1?(a=e,l=""):(a=e.substring(0,o),l=e.substring(o+1));let c=this._children.get(a);typeof c>"u"&&(c=new Aae(this._mainRule.clone()),this._children.set(a,c)),c.insert(l,n,r,s)}}function twt(i){const e=[];for(let n=1,r=i.length;n({format:s.format,location:s.location.toString()}))}}i.toJSONObject=e;function n(r){const s=o=>zl(o)?o:void 0;if(r&&Array.isArray(r.src)&&r.src.every(o=>zl(o.format)&&zl(o.location)))return{weight:s(r.weight),style:s(r.style),src:r.src.map(o=>({format:o.format,location:Jt.parse(o.location)}))}}i.fromJSONObject=n})(__e||(__e={}));class awt{constructor(){this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this.iconSchema={definitions:{icons:{type:"object",properties:{fontId:{type:"string",description:L("iconDefinition.fontId","The id of the font to use. If not set, the font that is defined first is used.")},fontCharacter:{type:"string",description:L("iconDefinition.fontCharacter","The font character associated with the icon definition.")}},additionalProperties:!1,defaultSnippets:[{body:{fontCharacter:"\\\\e030"}}]}},type:"object",properties:{}},this.iconReferenceSchema={type:"string",pattern:`^${en.iconNameExpression}$`,enum:[],enumDescriptions:[]},this.iconsById={},this.iconFontsById={}}registerIcon(e,n,r,s){const o=this.iconsById[e];if(o){if(r&&!o.description){o.description=r,this.iconSchema.properties[e].markdownDescription=`${r} $(${e})`;const c=this.iconReferenceSchema.enum.indexOf(e);c!==-1&&(this.iconReferenceSchema.enumDescriptions[c]=r),this._onDidChange.fire()}return o}const a={id:e,description:r,defaults:n,deprecationMessage:s};this.iconsById[e]=a;const l={$ref:"#/definitions/icons"};return s&&(l.deprecationMessage=s),r&&(l.markdownDescription=`${r}: $(${e})`),this.iconSchema.properties[e]=l,this.iconReferenceSchema.enum.push(e),this.iconReferenceSchema.enumDescriptions.push(r||""),this._onDidChange.fire(),{id:e}}getIcons(){return Object.keys(this.iconsById).map(e=>this.iconsById[e])}getIcon(e){return this.iconsById[e]}getIconSchema(){return this.iconSchema}toString(){const e=(o,a)=>o.id.localeCompare(a.id),n=o=>{for(;en.isThemeIcon(o.defaults);)o=this.iconsById[o.defaults.id];return`codicon codicon-${o?o.id:""}`},r=[];r.push("| preview | identifier | default codicon ID | description"),r.push("| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |");const s=Object.keys(this.iconsById).map(o=>this.iconsById[o]);for(const o of s.filter(a=>!!a.description).sort(e))r.push(`||${o.id}|${en.isThemeIcon(o.defaults)?o.defaults.id:o.id}|${o.description||""}|`);r.push("| preview | identifier "),r.push("| ----------- | --------------------------------- |");for(const o of s.filter(a=>!en.isThemeIcon(a.defaults)).sort(e))r.push(`||${o.id}|`);return r.join(` `)}}const rk=new awt;Kr.add(owt.IconContribution,rk);function ws(i,e,n,r){return rk.registerIcon(i,e,n,r)}function MRe(){return rk}function lwt(){const i=H2e();for(const e in i){const n="\\"+i[e].toString(16);rk.registerIcon(e,{fontCharacter:n})}}lwt();const PRe="vscode://schemas/icons",ORe=Kr.as(b$.JSONContribution);ORe.registerSchema(PRe,rk.getIconSchema());const v_e=new Ji(()=>ORe.notifySchemaChanged(PRe),200);rk.onDidChange(()=>{v_e.isScheduled()||v_e.schedule()});const FRe=ws("widget-close",lt.close,L("widgetClose","Icon for the close action in widgets."));ws("goto-previous-location",lt.arrowUp,L("previousChangeIcon","Icon for goto previous editor location."));ws("goto-next-location",lt.arrowDown,L("nextChangeIcon","Icon for goto next editor location."));en.modify(lt.sync,"spin");en.modify(lt.loading,"spin");function cwt(i){const e=new Xe,n=e.add(new _e),r=MRe();return e.add(r.onDidChange(()=>n.fire())),i&&e.add(i.onDidProductIconThemeChange(()=>n.fire())),{dispose:()=>e.dispose(),onDidChange:n.event,getCSS(){const s=i?i.getProductIconTheme():new BRe,o={},a=c=>{const u=s.getIcon(c);if(!u)return;const d=u.font;return d?(o[d.id]=d.definition,`.codicon-${c.id}:before { content: '${u.fontCharacter}'; font-family: ${dpe(d.id)}; }`):`.codicon-${c.id}:before { content: '${u.fontCharacter}'; }`},l=[];for(const c of r.getIcons()){const u=a(c);u&&l.push(u)}for(const c in o){const u=o[c],d=u.weight?`font-weight: ${u.weight};`:"",h=u.style?`font-style: ${u.style};`:"",f=u.src.map(p=>`${f1(p.location)} format('${p.format}')`).join(", ");l.push(`@font-face { src: ${f}; font-family: ${dpe(c)};${d}${h} font-display: block; }`)}return l.join(` `)}}}class BRe{getIcon(e){const n=MRe();let r=e.defaults;for(;en.isThemeIcon(r);){const s=n.getIcon(r.id);if(!s)return;r=s.defaults}return r}}const U0="vs",rE="vs-dark",jS="hc-black",WS="hc-light",jRe=Kr.as(cIe.ColorContribution),uwt=Kr.as(LIe.ThemingContribution);class WRe{constructor(e,n){this.semanticHighlighting=!1,this.themeData=n;const r=n.base;e.length>0?(D8(e)?this.id=e:this.id=r+" "+e,this.themeName=e):(this.id=r,this.themeName=r),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){const e=new Map;for(const n in this.themeData.colors)e.set(n,Te.fromHex(this.themeData.colors[n]));if(this.themeData.inherit){const n=Yee(this.themeData.base);for(const r in n.colors)e.has(r)||e.set(r,Te.fromHex(n.colors[r]))}this.colors=e}return this.colors}getColor(e,n){const r=this.getColors().get(e);if(r)return r;if(n!==!1)return this.getDefault(e)}getDefault(e){let n=this.defaultColors[e];return n||(n=jRe.resolveDefaultColor(e,this),this.defaultColors[e]=n,n)}defines(e){return this.getColors().has(e)}get type(){switch(this.base){case U0:return sh.LIGHT;case jS:return sh.HIGH_CONTRAST_DARK;case WS:return sh.HIGH_CONTRAST_LIGHT;default:return sh.DARK}}get tokenTheme(){if(!this._tokenTheme){let e=[],n=[];if(this.themeData.inherit){const o=Yee(this.themeData.base);e=o.rules,o.encodedTokensColors&&(n=o.encodedTokensColors)}const r=this.themeData.colors["editor.foreground"],s=this.themeData.colors["editor.background"];if(r||s){const o={token:""};r&&(o.foreground=r),s&&(o.background=s),e.push(o)}e=e.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(n=this.themeData.encodedTokensColors),this._tokenTheme=NRe.createFromRawTokenTheme(e,n)}return this._tokenTheme}getTokenStyleMetadata(e,n,r){const o=this.tokenTheme._match([e].concat(n).join(".")).metadata,a=Da.getForeground(o),l=Da.getFontStyle(o);return{foreground:a,italic:!!(l&1),bold:!!(l&2),underline:!!(l&4),strikethrough:!!(l&8)}}}function D8(i){return i===U0||i===rE||i===jS||i===WS}function Yee(i){switch(i){case U0:return nwt;case rE:return iwt;case jS:return rwt;case WS:return swt}}function w6(i){const e=Yee(i);return new WRe(i,e)}class dwt extends Le{constructor(){super(),this._onColorThemeChange=this._register(new _e),this.onDidColorThemeChange=this._onColorThemeChange.event,this._onProductIconThemeChange=this._register(new _e),this.onDidProductIconThemeChange=this._onProductIconThemeChange.event,this._environment=Object.create(null),this._builtInProductIconTheme=new BRe,this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set(U0,w6(U0)),this._knownThemes.set(rE,w6(rE)),this._knownThemes.set(jS,w6(jS)),this._knownThemes.set(WS,w6(WS));const e=this._register(cwt(this));this._codiconCSS=e.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS} ${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme(U0),this._onOSSchemeChanged(),this._register(e.onDidChange(()=>{this._codiconCSS=e.getCSS(),this._updateCSS()})),tEe("(forced-colors: active)",()=>{this._onOSSchemeChanged()})}registerEditorContainer(e){return $9(e)?this._registerShadowDomContainer(e):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=_h(void 0,e=>{e.className="monaco-colors",e.textContent=this._allCSS}),this._styleElements.push(this._globalStyleElement)),Le.None}_registerShadowDomContainer(e){const n=_h(e,r=>{r.className="monaco-colors",r.textContent=this._allCSS});return this._styleElements.push(n),{dispose:()=>{for(let r=0;r{r.base===e&&r.notifyBaseUpdated()}),this._theme.themeName===e&&this.setTheme(e)}getColorTheme(){return this._theme}setColorMapOverride(e){this._colorMapOverride=e,this._updateThemeOrColorMap()}setTheme(e){let n;this._knownThemes.has(e)?n=this._knownThemes.get(e):n=this._knownThemes.get(U0),this._updateActualTheme(n)}_updateActualTheme(e){!e||this._theme===e||(this._theme=e,this._updateThemeOrColorMap())}_onOSSchemeChanged(){if(this._autoDetectHighContrast){const e=window.matchMedia("(forced-colors: active)").matches;if(e!==Vp(this._theme.type)){let n;$E(this._theme.type)?n=e?jS:rE:n=e?WS:U0,this._updateActualTheme(this._knownThemes.get(n))}}}setAutoDetectHighContrast(e){this._autoDetectHighContrast=e,this._onOSSchemeChanged()}_updateThemeOrColorMap(){const e=[],n={},r={addRule:a=>{n[a]||(e.push(a),n[a]=!0)}};uwt.getThemingParticipants().forEach(a=>a(this._theme,r,this._environment));const s=[];for(const a of jRe.getColors()){const l=this._theme.getColor(a.id,!0);l&&s.push(`${foe(a.id)}: ${l.toString()};`)}r.addRule(`.monaco-editor, .monaco-diff-editor { ${s.join(` `)} }`);const o=this._colorMapOverride||this._theme.tokenTheme.getColorMap();r.addRule(twt(o)),this._themeCSS=e.join(` `),this._updateCSS(),Zr.setColorMap(o),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS} ${this._themeCSS}`,this._styleElements.forEach(e=>e.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}const bd=qn("themeService");var hwt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},oK=function(i,e){return function(n,r){e(n,r,i)}};let Zee=class extends Le{constructor(e,n,r){super(),this._contextKeyService=e,this._layoutService=n,this._configurationService=r,this._accessibilitySupport=0,this._onDidChangeScreenReaderOptimized=new _e,this._onDidChangeReducedMotion=new _e,this._accessibilityModeEnabledContext=R5.bindTo(this._contextKeyService);const s=()=>this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());this._register(this._configurationService.onDidChangeConfiguration(a=>{a.affectsConfiguration("editor.accessibilitySupport")&&(s(),this._onDidChangeScreenReaderOptimized.fire()),a.affectsConfiguration("workbench.reduceMotion")&&(this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this._onDidChangeReducedMotion.fire())})),s(),this._register(this.onDidChangeScreenReaderOptimized(()=>s()));const o=window.matchMedia("(prefers-reduced-motion: reduce)");this._systemMotionReduced=o.matches,this._configMotionReduced=this._configurationService.getValue("workbench.reduceMotion"),this.initReducedMotionListeners(o)}initReducedMotionListeners(e){if(!this._layoutService.hasContainer)return;this._register(Be(e,"change",()=>{this._systemMotionReduced=e.matches,this._configMotionReduced==="auto"&&this._onDidChangeReducedMotion.fire()}));const n=()=>{const r=this.isMotionReduced();this._layoutService.container.classList.toggle("reduce-motion",r),this._layoutService.container.classList.toggle("enable-motion",!r)};n(),this._register(this.onDidChangeReducedMotion(()=>n()))}get onDidChangeScreenReaderOptimized(){return this._onDidChangeScreenReaderOptimized.event}isScreenReaderOptimized(){const e=this._configurationService.getValue("editor.accessibilitySupport");return e==="on"||e==="auto"&&this._accessibilitySupport===2}get onDidChangeReducedMotion(){return this._onDidChangeReducedMotion.event}isMotionReduced(){const e=this._configMotionReduced;return e==="on"||e==="auto"&&this._systemMotionReduced}getAccessibilitySupport(){return this._accessibilitySupport}};Zee=hwt([oK(0,mn),oK(1,VI),oK(2,ei)],Zee);var rz=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},bx=function(i,e){return function(n,r){e(n,r,i)}},zD,Qb;let Qee=class{constructor(e,n){this._commandService=e,this._hiddenStates=new V7(n)}createMenu(e,n,r){return new ete(e,this._hiddenStates,Object.assign({emitEventsForSubmenuChanges:!1,eventDebounceDelay:50},r),this._commandService,n)}resetHiddenStates(e){this._hiddenStates.reset(e)}};Qee=rz([bx(0,us),bx(1,jf)],Qee);let V7=zD=class{constructor(e){this._storageService=e,this._disposables=new Xe,this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{const n=e.get(zD._key,0,"{}");this._data=JSON.parse(n)}catch{this._data=Object.create(null)}this._disposables.add(e.onDidChangeValue(0,zD._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{const n=e.get(zD._key,0,"{}");this._data=JSON.parse(n)}catch(n){console.log("FAILED to read storage after UPDATE",n)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(e,n){var r;return(r=this._hiddenByDefaultCache.get(`${e.id}/${n}`))!==null&&r!==void 0?r:!1}setDefaultState(e,n,r){this._hiddenByDefaultCache.set(`${e.id}/${n}`,r)}isHidden(e,n){var r,s;const o=this._isHiddenByDefault(e,n),a=(s=(r=this._data[e.id])===null||r===void 0?void 0:r.includes(n))!==null&&s!==void 0?s:!1;return o?!a:a}updateHidden(e,n,r){this._isHiddenByDefault(e,n)&&(r=!r);const o=this._data[e.id];if(r)o?o.indexOf(n)<0&&o.push(n):this._data[e.id]=[n];else if(o){const a=o.indexOf(n);a>=0&&yrt(o,a),o.length===0&&delete this._data[e.id]}this._persist()}reset(e){if(e===void 0)this._data=Object.create(null),this._persist();else{for(const{id:n}of e)this._data[n]&&delete this._data[n];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;const e=JSON.stringify(this._data);this._storageService.store(zD._key,e,0,0)}finally{this._ignoreChangeEvent=!1}}};V7._key="menu.hiddenCommands";V7=zD=rz([bx(0,jf)],V7);let Jee=Qb=class{constructor(e,n,r,s,o){this._id=e,this._hiddenStates=n,this._collectContextKeysForSubmenus=r,this._commandService=s,this._contextKeyService=o,this._menuGroups=[],this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){this._menuGroups.length=0,this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear();const e=sa.getMenuItems(this._id);let n;e.sort(Qb._compareMenuItems);for(const r of e){const s=r.group||"";(!n||n[0]!==s)&&(n=[s,[]],this._menuGroups.push(n)),n[1].push(r),this._collectContextKeys(r)}}_collectContextKeys(e){if(Qb._fillInKbExprKeys(e.when,this._structureContextKeys),i2(e)){if(e.command.precondition&&Qb._fillInKbExprKeys(e.command.precondition,this._preconditionContextKeys),e.command.toggled){const n=e.command.toggled.condition||e.command.toggled;Qb._fillInKbExprKeys(n,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&sa.getMenuItems(e.submenu).forEach(this._collectContextKeys,this)}createActionGroups(e){const n=[];for(const r of this._menuGroups){const[s,o]=r,a=[];for(const l of o)if(this._contextKeyService.contextMatchesRules(l.when)){const c=i2(l);c&&this._hiddenStates.setDefaultState(this._id,l.command.id,!!l.isHiddenByDefault);const u=fwt(this._id,c?l.command:l,this._hiddenStates);if(c)a.push(new If(l.command,l.alt,e,u,this._contextKeyService,this._commandService));else{const d=new Qb(l.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._contextKeyService).createActionGroups(e),h=Vo.join(...d.map(f=>f[1]));h.length>0&&a.push(new dP(l,u,h))}}a.length>0&&n.push([s,a])}return n}static _fillInKbExprKeys(e,n){if(e)for(const r of e.keys())n.add(r)}static _compareMenuItems(e,n){const r=e.group,s=n.group;if(r!==s){if(r){if(!s)return-1}else return 1;if(r==="navigation")return-1;if(s==="navigation")return 1;const l=r.localeCompare(s);if(l!==0)return l}const o=e.order||0,a=n.order||0;return oa?1:Qb._compareTitles(i2(e)?e.command.title:e.title,i2(n)?n.command.title:n.title)}static _compareTitles(e,n){const r=typeof e=="string"?e:e.original,s=typeof n=="string"?n:n.original;return r.localeCompare(s)}};Jee=Qb=rz([bx(3,us),bx(4,mn)],Jee);let ete=class{constructor(e,n,r,s,o){this._disposables=new Xe,this._menuInfo=new Jee(e,n,r.emitEventsForSubmenuChanges,s,o);const a=new Ji(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},r.eventDebounceDelay);this._disposables.add(a),this._disposables.add(sa.onDidChangeMenu(d=>{d.has(e)&&a.schedule()}));const l=this._disposables.add(new Xe),c=d=>{let h=!1,f=!1,p=!1;for(const g of d)if(h=h||g.isStructuralChange,f=f||g.isEnablementChange,p=p||g.isToggleChange,h&&f&&p)break;return{menu:this,isStructuralChange:h,isEnablementChange:f,isToggleChange:p}},u=()=>{l.add(o.onDidChangeContext(d=>{const h=d.affectsSome(this._menuInfo.structureContextKeys),f=d.affectsSome(this._menuInfo.preconditionContextKeys),p=d.affectsSome(this._menuInfo.toggledContextKeys);(h||f||p)&&this._onDidChange.fire({menu:this,isStructuralChange:h,isEnablementChange:f,isToggleChange:p})})),l.add(n.onDidChange(d=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new N2e({onWillAddFirstListener:u,onDidRemoveLastListener:l.clear.bind(l),delay:r.eventDebounceDelay,merge:c}),this.onDidChange=this._onDidChange.event}getActions(e){return this._menuInfo.createActionGroups(e)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};ete=rz([bx(3,us),bx(4,mn)],ete);function fwt(i,e,n){const r=uat(e)?e.submenu.id:e.id,s=typeof e.title=="string"?e.title:e.title.value,o=B2({id:`hide/${i.id}/${r}`,label:L("hide.label","Hide '{0}'",s),run(){n.updateHidden(i,r,!0)}}),a=B2({id:`toggle/${i.id}/${r}`,label:s,get checked(){return!n.isHidden(i,r)},run(){n.updateHidden(i,r,!!this.checked)}});return{hide:o,toggle:a,get isHidden(){return!a.checked}}}var pwt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},b_e=function(i,e){return function(n,r){e(n,r,i)}},sC=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let tte=class extends Le{constructor(e,n){super(),this.layoutService=e,this.logService=n,this.mapTextToType=new Map,this.findText="",this.resources=[],(h1||nEe)&&this.installWebKitWriteTextWorkaround()}installWebKitWriteTextWorkaround(){const e=()=>{const n=new f$;this.webKitPendingClipboardWritePromise&&!this.webKitPendingClipboardWritePromise.isSettled&&this.webKitPendingClipboardWritePromise.cancel(),this.webKitPendingClipboardWritePromise=n,navigator.clipboard.write([new ClipboardItem({"text/plain":n.p})]).catch(r=>sC(this,void 0,void 0,function*(){(!(r instanceof Error)||r.name!=="NotAllowedError"||!n.isRejected)&&this.logService.error(r)}))};this.layoutService.hasContainer&&(this._register(Be(this.layoutService.container,"click",e)),this._register(Be(this.layoutService.container,"keydown",e)))}writeText(e,n){return sC(this,void 0,void 0,function*(){if(n){this.mapTextToType.set(n,e);return}if(this.webKitPendingClipboardWritePromise)return this.webKitPendingClipboardWritePromise.complete(e);try{return yield navigator.clipboard.writeText(e)}catch(o){console.error(o)}const r=document.activeElement,s=document.body.appendChild(tt("textarea",{"aria-hidden":!0}));s.style.height="1px",s.style.width="1px",s.style.position="absolute",s.value=e,s.focus(),s.select(),document.execCommand("copy"),r instanceof HTMLElement&&r.focus(),document.body.removeChild(s)})}readText(e){return sC(this,void 0,void 0,function*(){if(e)return this.mapTextToType.get(e)||"";try{return yield navigator.clipboard.readText()}catch(n){return console.error(n),""}})}readFindText(){return sC(this,void 0,void 0,function*(){return this.findText})}writeFindText(e){return sC(this,void 0,void 0,function*(){this.findText=e})}writeResources(e){return sC(this,void 0,void 0,function*(){this.resources=e})}readResources(){return sC(this,void 0,void 0,function*(){return this.resources})}};tte=pwt([b_e(0,VI),b_e(1,vd)],tte);const qv=qn("clipboardService");var gwt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},mwt=function(i,e){return function(n,r){e(n,r,i)}};const vM="data-keybinding-context";let Nae=class{constructor(e,n){this._id=e,this._parent=n,this._value=Object.create(null),this._value._contextId=e}get value(){return Object.assign({},this._value)}setValue(e,n){return this._value[e]!==n?(this._value[e]=n,!0):!1}removeValue(e){return e in this._value?(delete this._value[e],!0):!1}getValue(e){const n=this._value[e];return typeof n>"u"&&this._parent?this._parent.getValue(e):n}};class JE extends Nae{constructor(){super(-1,null)}setValue(e,n){return!1}removeValue(e){return!1}getValue(e){}}JE.INSTANCE=new JE;class QP extends Nae{constructor(e,n,r){super(e,null),this._configurationService=n,this._values=eE.forConfigKeys(),this._listener=this._configurationService.onDidChangeConfiguration(s=>{if(s.source===7){const o=Array.from(this._values,([a])=>a);this._values.clear(),r.fire(new w_e(o))}else{const o=[];for(const a of s.affectedKeys){const l=`config.${a}`,c=this._values.findSuperstr(l);c!==void 0&&(o.push(...Vn.map(c,([u])=>u)),this._values.deleteSuperstr(l)),this._values.has(l)&&(o.push(l),this._values.delete(l))}r.fire(new w_e(o))}})}dispose(){this._listener.dispose()}getValue(e){if(e.indexOf(QP._keyPrefix)!==0)return super.getValue(e);if(this._values.has(e))return this._values.get(e);const n=e.substr(QP._keyPrefix.length),r=this._configurationService.getValue(n);let s;switch(typeof r){case"number":case"boolean":case"string":s=r;break;default:Array.isArray(r)?s=JSON.stringify(r):s=r}return this._values.set(e,s),s}setValue(e,n){return super.setValue(e,n)}removeValue(e){return super.removeValue(e)}}QP._keyPrefix="config.";class _wt{constructor(e,n,r){this._service=e,this._key=n,this._defaultValue=r,this.reset()}set(e){this._service.setContext(this._key,e)}reset(){typeof this._defaultValue>"u"?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)}get(){return this._service.getContextKeyValue(this._key)}}class y_e{constructor(e){this.key=e}affectsSome(e){return e.has(this.key)}allKeysContainedIn(e){return this.affectsSome(e)}}class w_e{constructor(e){this.keys=e}affectsSome(e){for(const n of this.keys)if(e.has(n))return!0;return!1}allKeysContainedIn(e){return this.keys.every(n=>e.has(n))}}class vwt{constructor(e){this.events=e}affectsSome(e){for(const n of this.events)if(n.affectsSome(e))return!0;return!1}allKeysContainedIn(e){return this.events.every(n=>n.allKeysContainedIn(e))}}function bwt(i,e){return i.allKeysContainedIn(new Set(Object.keys(e)))}class $Re extends Le{constructor(e){super(),this._onDidChangeContext=this._register(new sx({merge:n=>new vwt(n)})),this.onDidChangeContext=this._onDidChangeContext.event,this._isDisposed=!1,this._myContextId=e}createKey(e,n){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new _wt(this,e,n)}bufferChangeEvents(e){this._onDidChangeContext.pause();try{e()}finally{this._onDidChangeContext.resume()}}createScoped(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new ywt(this,e)}contextMatchesRules(e){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");const n=this.getContextValuesContainer(this._myContextId);return e?e.evaluate(n):!0}getContextKeyValue(e){if(!this._isDisposed)return this.getContextValuesContainer(this._myContextId).getValue(e)}setContext(e,n){if(this._isDisposed)return;const r=this.getContextValuesContainer(this._myContextId);r&&r.setValue(e,n)&&this._onDidChangeContext.fire(new y_e(e))}removeContext(e){this._isDisposed||this.getContextValuesContainer(this._myContextId).removeValue(e)&&this._onDidChangeContext.fire(new y_e(e))}getContext(e){return this._isDisposed?JE.INSTANCE:this.getContextValuesContainer(wwt(e))}dispose(){super.dispose(),this._isDisposed=!0}}let nte=class extends $Re{constructor(e){super(0),this._contexts=new Map,this._lastContextId=0;const n=this._register(new QP(this._myContextId,e,this._onDidChangeContext));this._contexts.set(this._myContextId,n)}getContextValuesContainer(e){return this._isDisposed?JE.INSTANCE:this._contexts.get(e)||JE.INSTANCE}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ContextKeyService has been disposed");const n=++this._lastContextId;return this._contexts.set(n,new Nae(n,this.getContextValuesContainer(e))),n}disposeContext(e){this._isDisposed||this._contexts.delete(e)}};nte=gwt([mwt(0,ei)],nte);class ywt extends $Re{constructor(e,n){if(super(e.createChildContext()),this._parentChangeListener=this._register(new ha),this._parent=e,this._updateParentChangeListener(),this._domNode=n,this._domNode.hasAttribute(vM)){let r="";this._domNode.classList&&(r=Array.from(this._domNode.classList.values()).join(", ")),console.error(`Element already has context attribute${r?": "+r:""}`)}this._domNode.setAttribute(vM,String(this._myContextId))}_updateParentChangeListener(){this._parentChangeListener.value=this._parent.onDidChangeContext(e=>{const r=this._parent.getContextValuesContainer(this._myContextId).value;bwt(e,r)||this._onDidChangeContext.fire(e)})}dispose(){this._isDisposed||(this._parent.disposeContext(this._myContextId),this._domNode.removeAttribute(vM),super.dispose())}getContextValuesContainer(e){return this._isDisposed?JE.INSTANCE:this._parent.getContextValuesContainer(e)}createChildContext(e=this._myContextId){if(this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(e)}disposeContext(e){this._isDisposed||this._parent.disposeContext(e)}}function wwt(i){for(;i;){if(i.hasAttribute(vM)){const e=i.getAttribute(vM);return e?parseInt(e,10):NaN}i=i.parentElement}return 0}function Cwt(i,e,n){i.get(mn).createKey(String(e),Swt(n))}function Swt(i){return y2e(i,e=>{if(typeof e=="object"&&e.$mid===1)return Jt.revive(e).toString();if(e instanceof Jt)return e.toString()})}si.registerCommand("_setContext",Cwt);si.registerCommand({id:"getContextKeyInfo",handler(){return[...yt.all()].sort((i,e)=>i.key.localeCompare(e.key))},description:{description:L("getContextKeyInfo","A command that returns information about context keys"),args:[]}});si.registerCommand("_generateContextKeyInfo",function(){const i=[],e=new Set;for(const n of yt.all())e.has(n.key)||(e.add(n.key),i.push(n));i.sort((n,r)=>n.key.localeCompare(r.key)),console.log(JSON.stringify(i,void 0,2))});let xwt=class{constructor(e,n){this.key=e,this.data=n,this.incoming=new Map,this.outgoing=new Map}},C_e=class{constructor(e){this._hashFn=e,this._nodes=new Map}roots(){const e=[];for(const n of this._nodes.values())n.outgoing.size===0&&e.push(n);return e}insertEdge(e,n){const r=this.lookupOrInsertNode(e),s=this.lookupOrInsertNode(n);r.outgoing.set(s.key,s),s.incoming.set(r.key,r)}removeNode(e){const n=this._hashFn(e);this._nodes.delete(n);for(const r of this._nodes.values())r.outgoing.delete(n),r.incoming.delete(n)}lookupOrInsertNode(e){const n=this._hashFn(e);let r=this._nodes.get(n);return r||(r=new xwt(n,e),this._nodes.set(n,r)),r}isEmpty(){return this._nodes.size===0}toString(){const e=[];for(const[n,r]of this._nodes)e.push(`${n} (-> incoming)[${[...r.incoming.keys()].join(", ")}] (outgoing ->)[${[...r.outgoing.keys()].join(",")}] `);return e.join(` `)}findCycleSlow(){for(const[e,n]of this._nodes){const r=new Set([e]),s=this._findCycle(n,r);if(s)return s}}_findCycle(e,n){for(const[r,s]of e.outgoing){if(n.has(r))return[...n,r].join(" -> ");n.add(r);const o=this._findCycle(s,n);if(o)return o;n.delete(r)}}};const kwt=!1;class S_e extends Error{constructor(e){var n;super("cyclic dependency between services"),this.message=(n=e.findCycleSlow())!==null&&n!==void 0?n:`UNABLE to detect cycle, dumping graph: ${e.toString()}`}}class H7{constructor(e=new O$,n=!1,r,s=kwt){var o;this._services=e,this._strict=n,this._parent=r,this._enableTracing=s,this._activeInstantiations=new Set,this._services.set(hn,this),this._globalGraph=s?(o=r==null?void 0:r._globalGraph)!==null&&o!==void 0?o:new C_e(a=>a):void 0}createChild(e){return new H7(e,this._strict,this,this._enableTracing)}invokeFunction(e,...n){const r=hc.traceInvocation(this._enableTracing,e);let s=!1;try{return e({get:a=>{if(s)throw Rse("service accessor is only valid during the invocation of its target method");const l=this._getOrCreateServiceInstance(a,r);if(!l)throw new Error(`[invokeFunction] unknown service '${a}'`);return l}},...n)}finally{s=!0,r.stop()}}createInstance(e,...n){let r,s;return e instanceof im?(r=hc.traceCreation(this._enableTracing,e.ctor),s=this._createInstance(e.ctor,e.staticArguments.concat(n),r)):(r=hc.traceCreation(this._enableTracing,e),s=this._createInstance(e,n,r)),r.stop(),s}_createInstance(e,n=[],r){const s=Np.getServiceDependencies(e).sort((l,c)=>l.index-c.index),o=[];for(const l of s){const c=this._getOrCreateServiceInstance(l.id,r);c||this._throwIfStrict(`[createInstance] ${e.name} depends on UNKNOWN service ${l.id}.`,!1),o.push(c)}const a=s.length>0?s[0].index:n.length;if(n.length!==a){console.trace(`[createInstance] First service dependency of ${e.name} at position ${a+1} conflicts with ${n.length} static arguments`);const l=a-n.length;l>0?n=n.concat(new Array(l)):n=n.slice(0,a)}return Reflect.construct(e,n.concat(o))}_setServiceInstance(e,n){if(this._services.get(e)instanceof im)this._services.set(e,n);else if(this._parent)this._parent._setServiceInstance(e,n);else throw new Error("illegalState - setting UNKNOWN service instance")}_getServiceInstanceOrDescriptor(e){const n=this._services.get(e);return!n&&this._parent?this._parent._getServiceInstanceOrDescriptor(e):n}_getOrCreateServiceInstance(e,n){this._globalGraph&&this._globalGraphImplicitDependency&&this._globalGraph.insertEdge(this._globalGraphImplicitDependency,String(e));const r=this._getServiceInstanceOrDescriptor(e);return r instanceof im?this._safeCreateAndCacheServiceInstance(e,r,n.branch(e,!0)):(n.branch(e,!1),r)}_safeCreateAndCacheServiceInstance(e,n,r){if(this._activeInstantiations.has(e))throw new Error(`illegal state - RECURSIVELY instantiating service '${e}'`);this._activeInstantiations.add(e);try{return this._createAndCacheServiceInstance(e,n,r)}finally{this._activeInstantiations.delete(e)}}_createAndCacheServiceInstance(e,n,r){var s;const o=new C_e(c=>c.id.toString());let a=0;const l=[{id:e,desc:n,_trace:r}];for(;l.length;){const c=l.pop();if(o.lookupOrInsertNode(c),a++>1e3)throw new S_e(o);for(const u of Np.getServiceDependencies(c.desc.ctor)){const d=this._getServiceInstanceOrDescriptor(u.id);if(d||this._throwIfStrict(`[createInstance] ${e} depends on ${u.id} which is NOT registered.`,!0),(s=this._globalGraph)===null||s===void 0||s.insertEdge(String(c.id),String(u.id)),d instanceof im){const h={id:u.id,desc:d,_trace:c._trace.branch(u.id,!0)};o.insertEdge(c,h),l.push(h)}}}for(;;){const c=o.roots();if(c.length===0){if(!o.isEmpty())throw new S_e(o);break}for(const{data:u}of c){if(this._getServiceInstanceOrDescriptor(u.id)instanceof im){const h=this._createServiceInstanceWithOwner(u.id,u.desc.ctor,u.desc.staticArguments,u.desc.supportsDelayedInstantiation,u._trace);this._setServiceInstance(u.id,h)}o.removeNode(u)}}return this._getServiceInstanceOrDescriptor(e)}_createServiceInstanceWithOwner(e,n,r=[],s,o){if(this._services.get(e)instanceof im)return this._createServiceInstance(e,n,r,s,o);if(this._parent)return this._parent._createServiceInstanceWithOwner(e,n,r,s,o);throw new Error(`illegalState - creating UNKNOWN service instance ${n.name}`)}_createServiceInstance(e,n,r=[],s,o){if(s){const a=new H7(void 0,this._strict,this,this._enableTracing);a._globalGraphImplicitDependency=String(e);const l=new Map,c=new a8(()=>{const u=a._createInstance(n,r,o);for(const[d,h]of l){const f=u[d];if(typeof f=="function")for(const p of h)f.apply(u,p)}return l.clear(),u});return new Proxy(Object.create(null),{get(u,d){if(!c.isInitialized&&typeof d=="string"&&(d.startsWith("onDid")||d.startsWith("onWill"))){let p=l.get(d);return p||(p=new jl,l.set(d,p)),(m,_,b)=>{const y=p.push([m,_,b]);return gn(y)}}if(d in u)return u[d];const h=c.value;let f=h[d];return typeof f!="function"||(f=f.bind(h),u[d]=f),f},set(u,d,h){return c.value[d]=h,!0},getPrototypeOf(u){return n.prototype}})}else return this._createInstance(n,r,o)}_throwIfStrict(e,n){if(n&&console.warn(e),this._strict)throw new Error(e)}}class hc{static traceInvocation(e,n){return e?new hc(2,n.name||new Error().stack.split(` `).slice(3,4).join(` `)):hc._None}static traceCreation(e,n){return e?new hc(1,n.name):hc._None}constructor(e,n){this.type=e,this.name=n,this._start=Date.now(),this._dep=[]}branch(e,n){const r=new hc(3,e.toString());return this._dep.push([e,n,r]),r}stop(){const e=Date.now()-this._start;hc._totals+=e;let n=!1;function r(o,a){const l=[],c=new Array(o+1).join(" ");for(const[u,d,h]of a._dep)if(d&&h){n=!0,l.push(`${c}CREATES -> ${u}`);const f=r(o+1,h);f&&l.push(f)}else l.push(`${c}uses -> ${u}`);return l.join(` `)}const s=[`${this.type===1?"CREATE":"CALL"} ${this.name}`,`${r(1,this)}`,`DONE, took ${e.toFixed(2)}ms (grand total ${hc._totals.toFixed(2)}ms)`];(e>2||n)&&hc.all.add(s.join(` `))}}hc.all=new Set;hc._None=new class extends hc{constructor(){super(0,null)}stop(){}branch(){return this}};hc._totals=0;const Lwt=new Set([Pn.inMemory,Pn.vscodeSourceControl,Pn.walkThrough,Pn.walkThroughSnippet]);class Dwt{constructor(){this._byResource=new Va,this._byOwner=new Map}set(e,n,r){let s=this._byResource.get(e);s||(s=new Map,this._byResource.set(e,s)),s.set(n,r);let o=this._byOwner.get(n);o||(o=new Va,this._byOwner.set(n,o)),o.set(e,r)}get(e,n){const r=this._byResource.get(e);return r==null?void 0:r.get(n)}delete(e,n){let r=!1,s=!1;const o=this._byResource.get(e);o&&(r=o.delete(n));const a=this._byOwner.get(n);if(a&&(s=a.delete(e)),r!==s)throw new Error("illegal state");return r&&s}values(e){var n,r,s,o;return typeof e=="string"?(r=(n=this._byOwner.get(e))===null||n===void 0?void 0:n.values())!==null&&r!==void 0?r:Vn.empty():Jt.isUri(e)?(o=(s=this._byResource.get(e))===null||s===void 0?void 0:s.values())!==null&&o!==void 0?o:Vn.empty():Vn.map(Vn.concat(...this._byOwner.values()),a=>a[1])}}class Ewt{constructor(e){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new Va,this._service=e,this._subscription=e.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(e){for(const n of e){const r=this._data.get(n);r&&this._substract(r);const s=this._resourceStats(n);this._add(s),this._data.set(n,s)}}_resourceStats(e){const n={errors:0,warnings:0,infos:0,unknowns:0};if(Lwt.has(e.scheme))return n;for(const{severity:r}of this._service.read({resource:e}))r===es.Error?n.errors+=1:r===es.Warning?n.warnings+=1:r===es.Info?n.infos+=1:n.unknowns+=1;return n}_substract(e){this.errors-=e.errors,this.warnings-=e.warnings,this.infos-=e.infos,this.unknowns-=e.unknowns}_add(e){this.errors+=e.errors,this.warnings+=e.warnings,this.infos+=e.infos,this.unknowns+=e.unknowns}}class ty{constructor(){this._onMarkerChanged=new N2e({delay:0,merge:ty._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new Dwt,this._stats=new Ewt(this)}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(e,n){for(const r of n||[])this.changeOne(e,r,[])}changeOne(e,n,r){if(p2e(r))this._data.delete(n,e)&&this._onMarkerChanged.fire([n]);else{const s=[];for(const o of r){const a=ty._toMarker(e,n,o);a&&s.push(a)}this._data.set(n,e,s),this._onMarkerChanged.fire([n])}}static _toMarker(e,n,r){let{code:s,severity:o,message:a,source:l,startLineNumber:c,startColumn:u,endLineNumber:d,endColumn:h,relatedInformation:f,tags:p}=r;if(a)return c=c>0?c:1,u=u>0?u:1,d=d>=c?d:c,h=h>0?h:u,{resource:n,owner:e,code:s,severity:o,message:a,source:l,startLineNumber:c,startColumn:u,endLineNumber:d,endColumn:h,relatedInformation:f,tags:p}}changeAll(e,n){const r=[],s=this._data.values(e);if(s)for(const o of s){const a=Vn.first(o);a&&(r.push(a.resource),this._data.delete(a.resource,e))}if(Ka(n)){const o=new Va;for(const{resource:a,marker:l}of n){const c=ty._toMarker(e,a,l);if(!c)continue;const u=o.get(a);u?u.push(c):(o.set(a,[c]),r.push(a))}for(const[a,l]of o)this._data.set(a,e,l)}r.length>0&&this._onMarkerChanged.fire(r)}read(e=Object.create(null)){let{owner:n,resource:r,severities:s,take:o}=e;if((!o||o<0)&&(o=-1),n&&r){const a=this._data.get(r,n);if(a){const l=[];for(const c of a)if(ty._accept(c,s)){const u=l.push(c);if(o>0&&u===o)break}return l}else return[]}else if(!n&&!r){const a=[];for(const l of this._data.values())for(const c of l)if(ty._accept(c,s)){const u=a.push(c);if(o>0&&u===o)return a}return a}else{const a=this._data.values(r??n),l=[];for(const c of a)for(const u of c)if(ty._accept(u,s)){const d=l.push(u);if(o>0&&d===o)return l}return l}}static _accept(e,n){return n===void 0||(n&e.severity)===e.severity}static _merge(e){const n=new Va;for(const r of e)for(const s of r)n.set(s,!0);return Array.from(n.keys())}}class Iwt extends Le{constructor(){super(...arguments),this._configurationModel=new Wa}get configurationModel(){return this._configurationModel}reload(){return this.resetConfigurationModel(),this.configurationModel}getConfigurationDefaultOverrides(){return{}}resetConfigurationModel(){this._configurationModel=new Wa;const e=Kr.as(ag.Configuration).getConfigurationProperties();this.updateConfigurationModel(Object.keys(e),e)}updateConfigurationModel(e,n){const r=this.getConfigurationDefaultOverrides();for(const s of e){const o=r[s],a=n[s];o!==void 0?this._configurationModel.addValue(s,o):a?this._configurationModel.addValue(s,a.default):this._configurationModel.removeValue(s)}}}const X5=qn("audioCue");class On{static register(e){return new On(e.fileName)}constructor(e){this.fileName=e}}On.error=On.register({fileName:"error.mp3"});On.warning=On.register({fileName:"warning.mp3"});On.foldedArea=On.register({fileName:"foldedAreas.mp3"});On.break=On.register({fileName:"break.mp3"});On.quickFixes=On.register({fileName:"quickFixes.mp3"});On.taskCompleted=On.register({fileName:"taskCompleted.mp3"});On.taskFailed=On.register({fileName:"taskFailed.mp3"});On.terminalBell=On.register({fileName:"terminalBell.mp3"});On.diffLineInserted=On.register({fileName:"diffLineInserted.mp3"});On.diffLineDeleted=On.register({fileName:"diffLineDeleted.mp3"});On.diffLineModified=On.register({fileName:"diffLineModified.mp3"});On.chatRequestSent=On.register({fileName:"chatRequestSent.mp3"});On.chatResponsePending=On.register({fileName:"chatResponsePending.mp3"});On.chatResponseReceived1=On.register({fileName:"chatResponseReceived1.mp3"});On.chatResponseReceived2=On.register({fileName:"chatResponseReceived2.mp3"});On.chatResponseReceived3=On.register({fileName:"chatResponseReceived3.mp3"});On.chatResponseReceived4=On.register({fileName:"chatResponseReceived4.mp3"});class Twt{constructor(e){this.randomOneOf=e}}class fi{static register(e){const n=new Twt("randomOneOf"in e.sound?e.sound.randomOneOf:[e.sound]),r=new fi(n,e.name,e.settingsKey);return fi._audioCues.add(r),r}constructor(e,n,r){this.sound=e,this.name=n,this.settingsKey=r}}fi._audioCues=new Set;fi.error=fi.register({name:L("audioCues.lineHasError.name","Error on Line"),sound:On.error,settingsKey:"audioCues.lineHasError"});fi.warning=fi.register({name:L("audioCues.lineHasWarning.name","Warning on Line"),sound:On.warning,settingsKey:"audioCues.lineHasWarning"});fi.foldedArea=fi.register({name:L("audioCues.lineHasFoldedArea.name","Folded Area on Line"),sound:On.foldedArea,settingsKey:"audioCues.lineHasFoldedArea"});fi.break=fi.register({name:L("audioCues.lineHasBreakpoint.name","Breakpoint on Line"),sound:On.break,settingsKey:"audioCues.lineHasBreakpoint"});fi.inlineSuggestion=fi.register({name:L("audioCues.lineHasInlineSuggestion.name","Inline Suggestion on Line"),sound:On.quickFixes,settingsKey:"audioCues.lineHasInlineSuggestion"});fi.terminalQuickFix=fi.register({name:L("audioCues.terminalQuickFix.name","Terminal Quick Fix"),sound:On.quickFixes,settingsKey:"audioCues.terminalQuickFix"});fi.onDebugBreak=fi.register({name:L("audioCues.onDebugBreak.name","Debugger Stopped on Breakpoint"),sound:On.break,settingsKey:"audioCues.onDebugBreak"});fi.noInlayHints=fi.register({name:L("audioCues.noInlayHints","No Inlay Hints on Line"),sound:On.error,settingsKey:"audioCues.noInlayHints"});fi.taskCompleted=fi.register({name:L("audioCues.taskCompleted","Task Completed"),sound:On.taskCompleted,settingsKey:"audioCues.taskCompleted"});fi.taskFailed=fi.register({name:L("audioCues.taskFailed","Task Failed"),sound:On.taskFailed,settingsKey:"audioCues.taskFailed"});fi.terminalCommandFailed=fi.register({name:L("audioCues.terminalCommandFailed","Terminal Command Failed"),sound:On.error,settingsKey:"audioCues.terminalCommandFailed"});fi.terminalBell=fi.register({name:L("audioCues.terminalBell","Terminal Bell"),sound:On.terminalBell,settingsKey:"audioCues.terminalBell"});fi.notebookCellCompleted=fi.register({name:L("audioCues.notebookCellCompleted","Notebook Cell Completed"),sound:On.taskCompleted,settingsKey:"audioCues.notebookCellCompleted"});fi.notebookCellFailed=fi.register({name:L("audioCues.notebookCellFailed","Notebook Cell Failed"),sound:On.taskFailed,settingsKey:"audioCues.notebookCellFailed"});fi.diffLineInserted=fi.register({name:L("audioCues.diffLineInserted","Diff Line Inserted"),sound:On.diffLineInserted,settingsKey:"audioCues.diffLineInserted"});fi.diffLineDeleted=fi.register({name:L("audioCues.diffLineDeleted","Diff Line Deleted"),sound:On.diffLineDeleted,settingsKey:"audioCues.diffLineDeleted"});fi.diffLineModified=fi.register({name:L("audioCues.diffLineModified","Diff Line Modified"),sound:On.diffLineModified,settingsKey:"audioCues.diffLineModified"});fi.chatRequestSent=fi.register({name:L("audioCues.chatRequestSent","Chat Request Sent"),sound:On.chatRequestSent,settingsKey:"audioCues.chatRequestSent"});fi.chatResponseReceived=fi.register({name:L("audioCues.chatResponseReceived","Chat Response Received"),settingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[On.chatResponseReceived1,On.chatResponseReceived2,On.chatResponseReceived3,On.chatResponseReceived4]}});fi.chatResponsePending=fi.register({name:L("audioCues.chatResponsePending","Chat Response Pending"),sound:On.chatResponsePending,settingsKey:"audioCues.chatResponsePending"});class Rwt extends Le{constructor(e,n=[]){super(),this.logger=new hat([e,...n]),this._register(e.onDidChangeLogLevel(r=>this.setLevel(r)))}get onDidChangeLogLevel(){return this.logger.onDidChangeLogLevel}setLevel(e){this.logger.setLevel(e)}getLevel(){return this.logger.getLevel()}trace(e,...n){this.logger.trace(e,...n)}debug(e,...n){this.logger.debug(e,...n)}info(e,...n){this.logger.info(e,...n)}warn(e,...n){this.logger.warn(e,...n)}error(e,...n){this.logger.error(e,...n)}}const zRe=[];function sz(i){zRe.push(i)}function Awt(){return zRe.slice(0)}var Q1=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},ia=function(i,e){return function(n,r){e(n,r,i)}},sE=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class Nwt{constructor(e){this.disposed=!1,this.model=e,this._onWillDispose=new _e}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}let ite=class{constructor(e){this.modelService=e}createModelReference(e){const n=this.modelService.getModel(e);return n?Promise.resolve(new Bst(new Nwt(n))):Promise.reject(new Error("Model not found"))}};ite=Q1([ia(0,Fr)],ite);class oz{show(){return oz.NULL_PROGRESS_RUNNER}showWhile(e,n){return sE(this,void 0,void 0,function*(){yield e})}}oz.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}};class Mwt{withProgress(e,n,r){return n({report:()=>{}})}}class Pwt{constructor(){this.isExtensionDevelopment=!1,this.isBuilt=!1}}class Owt{confirm(e){return sE(this,void 0,void 0,function*(){return{confirmed:this.doConfirm(e.message,e.detail),checkboxChecked:!1}})}doConfirm(e,n){let r=e;return n&&(r=r+` `+n),window.confirm(r)}prompt(e){var n,r;return sE(this,void 0,void 0,function*(){let s;if(this.doConfirm(e.message,e.detail)){const a=[...(n=e.buttons)!==null&&n!==void 0?n:[]];e.cancelButton&&typeof e.cancelButton!="string"&&typeof e.cancelButton!="boolean"&&a.push(e.cancelButton),s=yield(r=a[0])===null||r===void 0?void 0:r.run({checkboxChecked:!1})}return{result:s}})}error(e,n){return sE(this,void 0,void 0,function*(){yield this.prompt({type:vs.Error,message:e,detail:n})})}}class JP{info(e){return this.notify({severity:vs.Info,message:e})}warn(e){return this.notify({severity:vs.Warning,message:e})}error(e){return this.notify({severity:vs.Error,message:e})}notify(e){switch(e.severity){case vs.Error:console.error(e.message);break;case vs.Warning:console.warn(e.message);break;default:console.log(e.message);break}return JP.NO_OP}prompt(e,n,r,s){return JP.NO_OP}status(e,n){return Le.None}}JP.NO_OP=new $_t;let rte=class{constructor(e){this._onWillExecuteCommand=new _e,this._onDidExecuteCommand=new _e,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=e}executeCommand(e,...n){const r=si.getCommand(e);if(!r)return Promise.reject(new Error(`command '${e}' not found`));try{this._onWillExecuteCommand.fire({commandId:e,args:n});const s=this._instantiationService.invokeFunction.apply(this._instantiationService,[r.handler,...n]);return this._onDidExecuteCommand.fire({commandId:e,args:n}),Promise.resolve(s)}catch(s){return Promise.reject(s)}}};rte=Q1([ia(0,hn)],rte);let eI=class extends X0t{constructor(e,n,r,s,o,a){super(e,n,r,s,o),this._cachedResolver=null,this._dynamicKeybindings=[],this._domNodeListeners=[];const l=p=>{const g=new Xe;g.add(Be(p,ht.KEY_DOWN,m=>{const _=new yr(m);this._dispatch(_,_.target)&&(_.preventDefault(),_.stopPropagation())})),g.add(Be(p,ht.KEY_UP,m=>{const _=new yr(m);this._singleModifierDispatch(_,_.target)&&_.preventDefault()})),this._domNodeListeners.push(new Fwt(p,g))},c=p=>{for(let g=0;g{p.getOption(61)||l(p.getContainerDomNode())},d=p=>{p.getOption(61)||c(p.getContainerDomNode())};this._register(a.onCodeEditorAdd(u)),this._register(a.onCodeEditorRemove(d)),a.listCodeEditors().forEach(u);const h=p=>{l(p.getContainerDomNode())},f=p=>{c(p.getContainerDomNode())};this._register(a.onDiffEditorAdd(h)),this._register(a.onDiffEditorRemove(f)),a.listDiffEditors().forEach(h)}addDynamicKeybinding(e,n,r,s){return Sf(si.registerCommand(e,r),this.addDynamicKeybindings([{keybinding:n,command:e,when:s}]))}addDynamicKeybindings(e){const n=e.map(r=>{var s;return{keybinding:oJ(r.keybinding,Zu),command:(s=r.command)!==null&&s!==void 0?s:null,commandArgs:r.commandArgs,when:r.when,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}});return this._dynamicKeybindings=this._dynamicKeybindings.concat(n),this.updateResolver(),gn(()=>{for(let r=0;rthis._log(r))}return this._cachedResolver}_documentHasFocus(){return document.hasFocus()}_toNormalizedKeybindingItems(e,n){const r=[];let s=0;for(const o of e){const a=o.when||void 0,l=o.keybinding;if(!l)r[s++]=new Mme(void 0,o.command,o.commandArgs,a,n,null,!1);else{const c=jP.resolveKeybinding(l,Zu);for(const u of c)r[s++]=new Mme(u,o.command,o.commandArgs,a,n,null,!1)}}return r}resolveKeyboardEvent(e){const n=new Iv(e.ctrlKey,e.shiftKey,e.altKey,e.metaKey,e.keyCode);return new jP([n],Zu)}};eI=Q1([ia(0,mn),ia(1,us),ia(2,_d),ia(3,Ps),ia(4,vd),ia(5,Si)],eI);class Fwt extends Le{constructor(e,n){super(),this.domNode=e,this._register(n)}}function x_e(i){return i&&typeof i=="object"&&(!i.overrideIdentifier||typeof i.overrideIdentifier=="string")&&(!i.resource||i.resource instanceof Jt)}class VRe{constructor(){this._onDidChangeConfiguration=new _e,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event;const e=new Iwt;this._configuration=new W$(e.reload(),new Wa,new Wa,new Wa),e.dispose()}getValue(e,n){const r=typeof e=="string"?e:void 0,s=x_e(e)?e:x_e(n)?n:{};return this._configuration.getValue(r,s,void 0)}updateValues(e){const n={data:this._configuration.toData()},r=[];for(const s of e){const[o,a]=s;this.getValue(o)!==a&&(this._configuration.updateValue(o,a),r.push(o))}if(r.length>0){const s=new U0t({keys:r,overrides:[]},n,this._configuration);s.source=8,s.sourceConfig=null,this._onDidChangeConfiguration.fire(s)}return Promise.resolve()}updateValue(e,n,r,s){return this.updateValues([[e,n]])}inspect(e,n={}){return this._configuration.inspect(e,n,void 0)}}let ste=class{constructor(e,n,r){this.configurationService=e,this.modelService=n,this.languageService=r,this._onDidChangeConfiguration=new _e,this.configurationService.onDidChangeConfiguration(s=>{this._onDidChangeConfiguration.fire({affectedKeys:s.affectedKeys,affectsConfiguration:(o,a)=>s.affectsConfiguration(a)})})}getValue(e,n,r){const s=ve.isIPosition(n)?n:null,o=s?typeof r=="string"?r:void 0:typeof n=="string"?n:void 0,a=e?this.getLanguage(e,s):void 0;return typeof o>"u"?this.configurationService.getValue({resource:e,overrideIdentifier:a}):this.configurationService.getValue(o,{resource:e,overrideIdentifier:a})}getLanguage(e,n){const r=this.modelService.getModel(e);return r?n?r.getLanguageIdAtPosition(n.lineNumber,n.column):r.getLanguageId():this.languageService.guessLanguageIdByFilepathOrFirstLine(e)}};ste=Q1([ia(0,ei),ia(1,Fr),ia(2,Ar)],ste);let ote=class{constructor(e){this.configurationService=e}getEOL(e,n){const r=this.configurationService.getValue("files.eol",{overrideIdentifier:n,resource:e});return r&&typeof r=="string"&&r!=="auto"?r:_l||ri?` `:`\r `}};ote=Q1([ia(0,ei)],ote);class Bwt{publicLog2(){}}class eO{constructor(){const e=Jt.from({scheme:eO.SCHEME,authority:"model",path:"/"});this.workspace={id:MTe,folders:[new cvt({uri:e,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(e){return e&&e.scheme===eO.SCHEME?this.workspace.folders[0]:null}}eO.SCHEME="inmemory";function U7(i,e,n){if(!e||!(i instanceof VRe))return;const r=[];Object.keys(e).forEach(s=>{W0t(s)&&r.push([`editor.${s}`,e[s]]),n&&$0t(s)&&r.push([`diffEditor.${s}`,e[s]])}),r.length>0&&i.updateValues(r)}let ate=class{constructor(e){this._modelService=e}hasPreviewHandler(){return!1}apply(e,n){return sE(this,void 0,void 0,function*(){const r=Array.isArray(e)?e:Zoe.convert(e),s=new Map;for(const l of r){if(!(l instanceof mv))throw new Error("bad edit - only text edits are supported");const c=this._modelService.getModel(l.resource);if(!c)throw new Error("bad edit - model not found");if(typeof l.versionId=="number"&&c.getVersionId()!==l.versionId)throw new Error("bad state - model changed in the meantime");let u=s.get(c);u||(u=[],s.set(c,u)),u.push(Vr.replaceMove(J.lift(l.textEdit.range),l.textEdit.text))}let o=0,a=0;for(const[l,c]of s)l.pushStackElement(),l.pushEditOperations([],c,()=>[]),l.pushStackElement(),a+=1,o+=c.length;return{ariaSummary:ox(dee.bulkEditServiceSummary,o,a),isApplied:o>0}})}};ate=Q1([ia(0,Fr)],ate);class jwt{getUriLabel(e,n){return e.scheme==="file"?e.fsPath:e.path}getUriBasenameLabel(e){return yh(e)}}let lte=class extends hee{constructor(e,n){super(e),this._codeEditorService=n}showContextView(e,n,r){if(!n){const s=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();s&&(n=s.getContainerDomNode())}return super.showContextView(e,n,r)}};lte=Q1([ia(0,VI),ia(1,Si)],lte);class Wwt{constructor(){this._neverEmitter=new _e,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class $wt extends zP{constructor(){super()}}class zwt extends Rwt{constructor(){super(new dat)}}let cte=class extends Tee{constructor(e,n,r,s,o,a){super(e,n,r,s,o,a),this.configure({blockMouse:!1})}};cte=Q1([ia(0,_d),ia(1,Ps),ia(2,Vv),ia(3,sr),ia(4,c_),ia(5,mn)],cte);class Vwt{playAudioCue(e,n){return sE(this,void 0,void 0,function*(){})}}oi(ei,VRe,0);oi(ooe,ste,0);oi(tIe,ote,0);oi(px,eO,0);oi(KE,jwt,0);oi(_d,Bwt,0);oi(W5,Owt,0);oi(Goe,Pwt,0);oi(Ps,JP,0);oi(h_,ty,0);oi(Ar,$wt,0);oi(bd,dwt,0);oi(vd,zwt,0);oi(Fr,P7,0);oi(hoe,Pee,0);oi(mn,nte,0);oi(NTe,Mwt,0);oi(Z1,oz,0);oi(jf,Zbt,0);oi(Wf,wJ,0);oi($5,ate,0);oi(PTe,Wwt,0);oi(Ec,ite,0);oi(zv,Zee,0);oi(Lh,f1t,0);oi(us,rte,0);oi(sr,eI,0);oi(lg,Xee,0);oi(Vv,lte,0);oi(fu,Mee,0);oi(qv,tte,0);oi(Ff,cte,0);oi(c_,Qee,0);oi(X5,Vwt,0);var un;(function(i){const e=new O$;for(const[c,u]of ype())e.set(c,u);const n=new H7(e,!0);e.set(hn,n);function r(c){s||a({});const u=e.get(c);if(!u)throw new Error("Missing service "+c);return u instanceof im?n.invokeFunction(d=>d.get(c)):u}i.get=r;let s=!1;const o=new _e;function a(c){if(s)return n;s=!0;for(const[d,h]of ype())e.get(d)||e.set(d,h);for(const d in c)if(c.hasOwnProperty(d)){const h=qn(d);e.get(h)instanceof im&&e.set(h,c[d])}const u=Awt();for(const d of u)try{n.createInstance(d)}catch(h){Ln(h)}return o.fire(),n}i.initialize=a;function l(c){if(s)return c();const u=new Xe,d=u.add(o.event(()=>{d.dispose(),u.add(c())}));return u}i.withServices=l})(un||(un={}));let Hwt;function vv(){return Hwt}let HRe;function Uwt(i){HRe=i}class URe{get TChange(){return null}reportChanges(){this.get()}read(e){return e?e.readObservable(this):this.get()}map(e,n){const r=n===void 0?void 0:e,s=n===void 0?e:n;return HRe({owner:r,debugName:()=>{const o=sk(s);if(o!==void 0)return o;const l=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(s.toString());if(l)return`${this.debugName}.${l[2]}`;if(!r)return`${this.debugName} (mapped)`}},o=>s(this.read(o),o))}}class Y5 extends URe{constructor(){super(...arguments),this.observers=new Set}addObserver(e){const n=this.observers.size;this.observers.add(e),n===0&&this.onFirstObserverAdded()}removeObserver(e){this.observers.delete(e)&&this.observers.size===0&&this.onLastObserverRemoved()}onFirstObserverAdded(){}onLastObserverRemoved(){}}function Pr(i,e){const n=new qRe(i,e);try{i(n)}finally{n.finish()}}function ute(i,e,n){i?e(i):Pr(e,n)}class qRe{constructor(e,n){var r;this._fn=e,this._getDebugName=n,this.updatingObservers=[],(r=vv())===null||r===void 0||r.handleBeginTransaction(this)}getDebugName(){return this._getDebugName?this._getDebugName():sk(this._fn)}updateObserver(e,n){this.updatingObservers.push({observer:e,observable:n}),e.beginUpdate(n)}finish(){var e;const n=this.updatingObservers;this.updatingObservers=null;for(const{observer:r,observable:s}of n)r.endUpdate(s);(e=vv())===null||e===void 0||e.handleEndTransaction()}}function Mae(i,e,n,r){let s;if(i!==void 0)if(typeof i=="function"){if(s=i(),s!==void 0)return s}else return i;if(e!==void 0&&(s=sk(e),s!==void 0))return s;if(n!==void 0){for(const o in n)if(n[o]===r)return o}}function sk(i){const e=i.toString(),r=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e),s=r?r[1]:void 0;return s==null?void 0:s.trim()}function vr(i,e){return typeof i=="string"?new dte(void 0,i,e):new dte(i,void 0,e)}class dte extends Y5{get debugName(){var e;return(e=Mae(this._debugName,void 0,this._owner,this))!==null&&e!==void 0?e:"ObservableValue"}constructor(e,n,r){super(),this._owner=e,this._debugName=n,this._value=r}get(){return this._value}set(e,n,r){var s;if(this._value===e)return;let o;n||(n=o=new qRe(()=>{},()=>`Setting ${this.debugName}`));try{const a=this._value;this._setValue(e),(s=vv())===null||s===void 0||s.handleObservableChanged(this,{oldValue:a,newValue:e,change:r,didChange:!0,hadValue:!0});for(const l of this.observers)n.updateObserver(l,this),l.handleChange(this,r)}finally{o&&o.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function q7(i,e){return typeof i=="string"?new k_e(void 0,i,e):new k_e(i,void 0,e)}class k_e extends dte{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){var e;(e=this._value)===null||e===void 0||e.dispose()}}const tO=(i,e)=>i===e;function ni(i,e){return e!==void 0?new iO(i,void 0,e,void 0,void 0,void 0,tO):new iO(void 0,void 0,i,void 0,void 0,void 0,tO)}function L_e(i,e){var n;return new iO(i.owner,i.debugName,e,void 0,void 0,void 0,(n=i.equalityComparer)!==null&&n!==void 0?n:tO)}function qwt(i,e){var n;return new iO(i.owner,i.debugName,e,i.createEmptyChangeSummary,i.handleChange,void 0,(n=i.equalityComparer)!==null&&n!==void 0?n:tO)}function nO(i,e){let n,r;e===void 0?(n=i,r=void 0):(r=i,n=e);const s=new Xe;return new iO(r,()=>{var o;return(o=sk(n))!==null&&o!==void 0?o:"(anonymous)"},o=>(s.clear(),n(o,s)),void 0,void 0,()=>s.dispose(),tO)}Uwt(ni);class iO extends Y5{get debugName(){var e;return(e=Mae(this._debugName,this._computeFn,this._owner,this))!==null&&e!==void 0?e:"(anonymous)"}constructor(e,n,r,s,o,a=void 0,l){var c,u;super(),this._owner=e,this._debugName=n,this._computeFn=r,this.createChangeSummary=s,this._handleChange=o,this._handleLastObserverRemoved=a,this._equalityComparator=l,this.state=0,this.value=void 0,this.updateCount=0,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=void 0,this.changeSummary=(c=this.createChangeSummary)===null||c===void 0?void 0:c.call(this),(u=vv())===null||u===void 0||u.handleDerivedCreated(this)}onLastObserverRemoved(){var e;this.state=0,this.value=void 0;for(const n of this.dependencies)n.removeObserver(this);this.dependencies.clear(),(e=this._handleLastObserverRemoved)===null||e===void 0||e.call(this)}get(){var e;if(this.observers.size===0){const n=this._computeFn(this,(e=this.createChangeSummary)===null||e===void 0?void 0:e.call(this));return this.onLastObserverRemoved(),n}else{do{if(this.state===1){for(const n of this.dependencies)if(n.reportChanges(),this.state===2)break}this.state===1&&(this.state=3),this._recomputeIfNeeded()}while(this.state!==3);return this.value}}_recomputeIfNeeded(){var e,n;if(this.state===3)return;const r=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=r;const s=this.state!==0,o=this.value;this.state=3;const a=this.changeSummary;this.changeSummary=(e=this.createChangeSummary)===null||e===void 0?void 0:e.call(this);try{this.value=this._computeFn(this,a)}finally{for(const c of this.dependenciesToBeRemoved)c.removeObserver(this);this.dependenciesToBeRemoved.clear()}const l=s&&!this._equalityComparator(o,this.value);if((n=vv())===null||n===void 0||n.handleDerivedRecomputed(this,{oldValue:o,newValue:this.value,change:void 0,didChange:l,hadValue:s}),l)for(const c of this.observers)c.handleChange(this,void 0)}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){this.updateCount++;const n=this.updateCount===1;if(this.state===3&&(this.state=1,!n))for(const r of this.observers)r.handlePossibleChange(this);if(n)for(const r of this.observers)r.beginUpdate(this)}endUpdate(e){if(this.updateCount--,this.updateCount===0){const n=[...this.observers];for(const r of n)r.endUpdate(this)}if(this.updateCount<0)throw new Vs}handlePossibleChange(e){if(this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){this.state=1;for(const n of this.observers)n.handlePossibleChange(this)}}handleChange(e,n){if(this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){const r=this._handleChange?this._handleChange({changedObservable:e,change:n,didChange:o=>o===e},this.changeSummary):!0,s=this.state===3;if(r&&(this.state===1||s)&&(this.state=2,s))for(const o of this.observers)o.handlePossibleChange(this)}}readObservable(e){e.addObserver(this);const n=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),n}addObserver(e){const n=!this.observers.has(e)&&this.updateCount>0;super.addObserver(e),n&&e.beginUpdate(this)}removeObserver(e){const n=this.observers.has(e)&&this.updateCount>0;super.removeObserver(e),n&&e.endUpdate(this)}}function Pae(i,e){return new lz(i.debugName,e,void 0,void 0)}function ur(i){return new lz(void 0,i,void 0,void 0)}function az(i,e){return new lz(i.debugName,e,i.createEmptyChangeSummary,i.handleChange)}function Xc(i){const e=new Xe,n=Pae({debugName:()=>sk(i)||"(anonymous)"},r=>{e.clear(),i(r,e)});return gn(()=>{n.dispose(),e.dispose()})}class lz{get debugName(){if(typeof this._debugName=="string")return this._debugName;if(typeof this._debugName=="function"){const n=this._debugName();if(n!==void 0)return n}const e=sk(this._runFn);return e!==void 0?e:"(anonymous)"}constructor(e,n,r,s){var o,a;this._debugName=e,this._runFn=n,this.createChangeSummary=r,this._handleChange=s,this.state=2,this.updateCount=0,this.disposed=!1,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=(o=this.createChangeSummary)===null||o===void 0?void 0:o.call(this),(a=vv())===null||a===void 0||a.handleAutorunCreated(this),this._runIfNeeded()}dispose(){this.disposed=!0;for(const e of this.dependencies)e.removeObserver(this);this.dependencies.clear()}_runIfNeeded(){var e,n,r;if(this.state===3)return;const s=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=s,this.state=3;try{if(!this.disposed){(e=vv())===null||e===void 0||e.handleAutorunTriggered(this);const o=this.changeSummary;this.changeSummary=(n=this.createChangeSummary)===null||n===void 0?void 0:n.call(this),this._runFn(this,o)}}finally{(r=vv())===null||r===void 0||r.handleAutorunFinished(this);for(const o of this.dependenciesToBeRemoved)o.removeObserver(this);this.dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(){this.state===3&&(this.state=1),this.updateCount++}endUpdate(){if(this.updateCount===1)do{if(this.state===1){this.state=3;for(const e of this.dependencies)if(e.reportChanges(),this.state===2)break}this._runIfNeeded()}while(this.state!==3);this.updateCount--,uP(()=>this.updateCount>=0)}handlePossibleChange(e){this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(this.state=1)}handleChange(e,n){this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(!this._handleChange||this._handleChange({changedObservable:e,change:n,didChange:s=>s===e},this.changeSummary))&&(this.state=2)}readObservable(e){if(this.disposed)return e.get();e.addObserver(this);const n=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),n}}(function(i){i.Observer=lz})(ur||(ur={}));function K7(i){return new Kwt(i)}class Kwt extends URe{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}}function Gwt(i,e){return new Promise(n=>{let r=!1,s=!1;const o=ur(a=>{const l=i.read(a);e(l)&&(r?o.dispose():s=!0,n(l))});r=!0,s&&o.dispose()})}function oa(i,e){return new KRe(i,e)}class KRe extends Y5{constructor(e,n){super(),this.event=e,this._getValue=n,this.hasValue=!1,this.handleEvent=r=>{var s;const o=this._getValue(r),a=!this.hasValue||this.value!==o;(s=vv())===null||s===void 0||s.handleFromEventObservableTriggered(this,{oldValue:this.value,newValue:o,change:void 0,didChange:a,hadValue:this.hasValue}),a&&(this.value=o,this.hasValue&&Pr(l=>{for(const c of this.observers)l.updateObserver(c,this),c.handleChange(this,void 0)},()=>{const l=this.getDebugName();return"Event fired"+(l?`: ${l}`:"")}),this.hasValue=!0)}}getDebugName(){return sk(this._getValue)}get debugName(){const e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0,this.hasValue=!1,this.value=void 0}get(){return this.subscription?(this.hasValue||this.handleEvent(void 0),this.value):this._getValue(void 0)}}(function(i){i.Observer=KRe})(oa||(oa={}));function Ku(i,e){return new Xwt(i,e)}class Xwt extends Y5{constructor(e,n){super(),this.debugName=e,this.event=n,this.handleEvent=()=>{Pr(r=>{for(const s of this.observers)r.updateObserver(s,this),s.handleChange(this,void 0)},()=>this.debugName)}}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}}function GRe(i){return typeof i=="string"?new D_e(i):new D_e(void 0,i)}class D_e extends Y5{get debugName(){var e;return(e=Mae(this._debugName,void 0,this._owner,this))!==null&&e!==void 0?e:"Observable Signal"}constructor(e,n){super(),this._debugName=e,this._owner=n}trigger(e,n){if(!e){Pr(r=>{this.trigger(r,n)},()=>`Trigger signal ${this.debugName}`);return}for(const r of this.observers)e.updateObserver(r,this),r.handleChange(this,n)}get(){}}function rO(i){const e=new Ywt(!0);return i.addObserver(e),i.reportChanges(),gn(()=>{i.removeObserver(e)})}class Ywt{constructor(e){this.forceRecompute=e,this.counter=0}beginUpdate(e){this.counter++}endUpdate(e){this.counter--,this.counter===0&&this.forceRecompute&&e.reportChanges()}handlePossibleChange(e){}handleChange(e,n){}}function XRe(){return!!O2e.VSCODE_DEV}function Zwt(i){if(XRe()){const e=Qwt();return e.add(i),{dispose(){e.delete(i)}}}else return{dispose(){}}}function Qwt(){C6||(C6=new Set);const i=globalThis;return i.$hotReload_applyNewExports||(i.$hotReload_applyNewExports=e=>{for(const n of C6){const r=n(e);if(r)return r}}),C6}let C6;function Jwt(i,e,n,r){if(i.length===0)return e;if(e.length===0)return i;const s=[];let o=0,a=0;for(;od?(s.push(c),a++):(s.push(r(l,c)),o++,a++)}for(;o`Apply decorations from ${e.debugName}`},s=>{const o=e.read(s);r.set(o)})),n.add({dispose:()=>{r.clear()}}),n}function S6(i,e){return i.appendChild(e),gn(()=>{i.removeChild(e)})}class eCt extends Le{get width(){return this._width}get height(){return this._height}constructor(e,n){super(),this.elementSizeObserver=this._register(new lIe(e,n)),this._width=vr(this,this.elementSizeObserver.getWidth()),this._height=vr(this,this.elementSizeObserver.getHeight()),this._register(this.elementSizeObserver.onDidChange(r=>Pr(s=>{this._width.set(this.elementSizeObserver.getWidth(),s),this._height.set(this.elementSizeObserver.getHeight(),s)})))}observe(e){this.elementSizeObserver.observe(e)}setAutomaticLayout(e){e?this.elementSizeObserver.startObserving():this.elementSizeObserver.stopObserving()}}function E_e(i,e){let n=i.get(),r=n,s=n;const o=vr("animatedValue",n);let a=-1;const l=300;let c;e.add(az({createEmptyChangeSummary:()=>({animate:!1}),handleChange:(d,h)=>(d.didChange(i)&&(h.animate=h.animate||d.change),!0)},(d,h)=>{c!==void 0&&(cancelAnimationFrame(c),c=void 0),r=s,n=i.read(d),a=Date.now()-(h.animate?0:l),u()}));function u(){const d=Date.now()-a;s=Math.floor(tCt(d,r,n-r,l)),d{this._actualTop.set(r,void 0)},this.onComputedHeight=r=>{this._actualHeight.set(r,void 0)}}}class cz{constructor(e,n){this._editor=e,this._domElement=n,this._overlayWidgetId=`managedOverlayWidget-${cz._counter++}`,this._overlayWidget={getId:()=>this._overlayWidgetId,getDomNode:()=>this._domElement,getPosition:()=>null},this._editor.addOverlayWidget(this._overlayWidget)}dispose(){this._editor.removeOverlayWidget(this._overlayWidget)}}cz._counter=0;function Gy(i,e){return ur(n=>{for(let[r,s]of Object.entries(e))s&&typeof s=="object"&&"read"in s&&(s=s.read(n)),typeof s=="number"&&(s=`${s}px`),r=r.replace(/[A-Z]/g,o=>"-"+o.toLowerCase()),i.style[r]=s})}function ny(i,e){return nCt([i],e),i}function nCt(i,e){XRe()&&Ku("reload",r=>Zwt(s=>{if([...Object.values(s)].some(o=>i.includes(o)))return o=>(r(void 0),!0)})).read(e)}function Y7(i,e,n){const r=new Xe,s=[];return r.add(ur(o=>{const a=e.read(o),l=new Map,c=new Map;n&&n(!0),i.changeViewZones(u=>{for(const d of s)u.removeZone(d);s.length=0;for(const d of a){const h=u.addZone(d);s.push(h),l.set(d,h)}}),n&&n(!1),r.add(az({createEmptyChangeSummary(){return[]},handleChange(u,d){const h=c.get(u.changedObservable);return h!==void 0&&d.push(h),!0}},(u,d)=>{for(const h of a)h.onChange&&(c.set(h.onChange,l.get(h)),h.onChange.read(u));n&&n(!0),i.changeViewZones(h=>{for(const f of d)h.layoutZone(f)}),n&&n(!1)}))})),r.add({dispose(){n&&n(!0),i.changeViewZones(o=>{for(const a of s)o.removeZone(a)}),n&&n(!1)}}),r}class iCt extends Ns{dispose(){super.dispose(!0)}}var Oae=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Fae=function(i,e){return function(n,r){e(n,r,i)}},rCt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const sCt=ws("diff-review-insert",lt.add,L("accessibleDiffViewerInsertIcon","Icon for 'Insert' in accessible diff viewer.")),oCt=ws("diff-review-remove",lt.remove,L("accessibleDiffViewerRemoveIcon","Icon for 'Remove' in accessible diff viewer.")),aCt=ws("diff-review-close",lt.close,L("accessibleDiffViewerCloseIcon","Icon for 'Close' in accessible diff viewer."));let xy=class extends Le{constructor(e,n,r,s,o,a,l,c,u){super(),this._parentNode=e,this._visible=n,this._setVisible=r,this._canClose=s,this._width=o,this._height=a,this._diffs=l,this._editors=c,this._instantiationService=u,this.model=nO(this,(d,h)=>{const f=this._visible.read(d);if(this._parentNode.style.visibility=f?"visible":"hidden",!f)return null;const p=h.add(this._instantiationService.createInstance(hte,this._diffs,this._editors,this._setVisible,this._canClose)),g=h.add(this._instantiationService.createInstance(fte,this._parentNode,p,this._width,this._height,this._editors));return{model:p,view:g}}),this._register(rO(this.model))}next(){Pr(e=>{const n=this._visible.get();this._setVisible(!0,e),n&&this.model.get().model.nextGroup(e)})}prev(){Pr(e=>{this._setVisible(!0,e),this.model.get().model.previousGroup(e)})}close(){Pr(e=>{this._setVisible(!1,e)})}};xy._ttPolicy=$v("diffReview",{createHTML:i=>i});xy=Oae([Fae(8,hn)],xy);let hte=class extends Le{constructor(e,n,r,s,o){super(),this._diffs=e,this._editors=n,this._setVisible=r,this.canClose=s,this._audioCueService=o,this._groups=vr(this,[]),this._currentGroupIdx=vr(this,0),this._currentElementIdx=vr(this,0),this.groups=this._groups,this.currentGroup=this._currentGroupIdx.map((a,l)=>this._groups.read(l)[a]),this.currentGroupIndex=this._currentGroupIdx,this.currentElement=this._currentElementIdx.map((a,l)=>{var c;return(c=this.currentGroup.read(l))===null||c===void 0?void 0:c.lines[a]}),this._register(ur(a=>{const l=this._diffs.read(a);if(!l){this._groups.set([],void 0);return}const c=lCt(l,this._editors.original.getModel().getLineCount(),this._editors.modified.getModel().getLineCount());Pr(u=>{const d=this._editors.modified.getPosition();if(d){const h=c.findIndex(f=>(d==null?void 0:d.lineNumber){const l=this.currentElement.read(a);(l==null?void 0:l.type)===Ol.Deleted?this._audioCueService.playAudioCue(fi.diffLineDeleted,{source:"accessibleDiffViewer.currentElementChanged"}):(l==null?void 0:l.type)===Ol.Added&&this._audioCueService.playAudioCue(fi.diffLineInserted,{source:"accessibleDiffViewer.currentElementChanged"})})),this._register(ur(a=>{var l;const c=this.currentElement.read(a);if(c&&c.type!==Ol.Header){const u=(l=c.modifiedLineNumber)!==null&&l!==void 0?l:c.diff.modified.startLineNumber;this._editors.modified.setSelection(J.fromPositions(new ve(u,1)))}}))}_goToGroupDelta(e,n){const r=this.groups.get();!r||r.length<=1||ute(n,s=>{this._currentGroupIdx.set(Un.ofLength(r.length).clipCyclic(this._currentGroupIdx.get()+e),s),this._currentElementIdx.set(0,s)})}nextGroup(e){this._goToGroupDelta(1,e)}previousGroup(e){this._goToGroupDelta(-1,e)}_goToLineDelta(e){const n=this.currentGroup.get();!n||n.lines.length<=1||Pr(r=>{this._currentElementIdx.set(Un.ofLength(n.lines.length).clip(this._currentElementIdx.get()+e),r)})}goToNextLine(){this._goToLineDelta(1)}goToPreviousLine(){this._goToLineDelta(-1)}goToLine(e){const n=this.currentGroup.get();if(!n)return;const r=n.lines.indexOf(e);r!==-1&&Pr(s=>{this._currentElementIdx.set(r,s)})}revealCurrentElementInEditor(){this._setVisible(!1,void 0);const e=this.currentElement.get();e&&(e.type===Ol.Deleted?(this._editors.original.setSelection(J.fromPositions(new ve(e.originalLineNumber,1))),this._editors.original.revealLine(e.originalLineNumber),this._editors.original.focus()):(e.type!==Ol.Header&&(this._editors.modified.setSelection(J.fromPositions(new ve(e.modifiedLineNumber,1))),this._editors.modified.revealLine(e.modifiedLineNumber)),this._editors.modified.focus()))}close(){this._setVisible(!1,void 0),this._editors.modified.focus()}};hte=Oae([Fae(4,X5)],hte);const eA=3;function lCt(i,e,n){const r=[];for(const s of h2e(i,(o,a)=>a.modified.startLineNumber-o.modified.endLineNumberExclusive<2*eA)){const o=[];o.push(new uCt);const a=new Qn(Math.max(1,s[0].original.startLineNumber-eA),Math.min(s[s.length-1].original.endLineNumberExclusive+eA,e+1)),l=new Qn(Math.max(1,s[0].modified.startLineNumber-eA),Math.min(s[s.length-1].modified.endLineNumberExclusive+eA,n+1));f2e(s,(d,h)=>{const f=new Qn(d?d.original.endLineNumberExclusive:a.startLineNumber,h?h.original.startLineNumber:a.endLineNumberExclusive),p=new Qn(d?d.modified.endLineNumberExclusive:l.startLineNumber,h?h.modified.startLineNumber:l.endLineNumberExclusive);f.forEach(g=>{o.push(new fCt(g,p.startLineNumber+(g-f.startLineNumber)))}),h&&(h.original.forEach(g=>{o.push(new dCt(h,g))}),h.modified.forEach(g=>{o.push(new hCt(h,g))}))});const c=s[0].modified.join(s[s.length-1].modified),u=s[0].original.join(s[s.length-1].original);r.push(new cCt(new Xm(c,u),o))}return r}var Ol;(function(i){i[i.Header=0]="Header",i[i.Unchanged=1]="Unchanged",i[i.Deleted=2]="Deleted",i[i.Added=3]="Added"})(Ol||(Ol={}));class cCt{constructor(e,n){this.range=e,this.lines=n}}class uCt{constructor(){this.type=Ol.Header}}class dCt{constructor(e,n){this.diff=e,this.originalLineNumber=n,this.type=Ol.Deleted,this.modifiedLineNumber=void 0}}class hCt{constructor(e,n){this.diff=e,this.modifiedLineNumber=n,this.type=Ol.Added,this.originalLineNumber=void 0}}class fCt{constructor(e,n){this.originalLineNumber=e,this.modifiedLineNumber=n,this.type=Ol.Unchanged}}let fte=class extends Le{constructor(e,n,r,s,o,a){super(),this._element=e,this._model=n,this._width=r,this._height=s,this._editors=o,this._languageService=a,this.domNode=this._element,this.domNode.className="diff-review monaco-editor-background";const l=document.createElement("div");l.className="diff-review-actions",this._actionBar=this._register(new wh(l)),this._register(ur(c=>{this._actionBar.clear(),this._model.canClose.read(c)&&this._actionBar.push(new Vl("diffreview.close",L("label.close","Close"),"close-diff-review "+en.asClassName(aCt),!0,()=>rCt(this,void 0,void 0,function*(){return n.close()})),{label:!1,icon:!0})})),this._content=document.createElement("div"),this._content.className="diff-review-content",this._content.setAttribute("role","code"),this._scrollbar=this._register(new P5(this._content,{})),ca(this.domNode,this._scrollbar.getDomNode(),l),this._register(gn(()=>{ca(this.domNode)})),this._register(Gy(this.domNode,{width:this._width,height:this._height})),this._register(Gy(this._content,{width:this._width,height:this._height})),this._register(Xc((c,u)=>{this._model.currentGroup.read(c),this._render(u)})),this._register(As(this.domNode,"keydown",c=>{(c.equals(18)||c.equals(2066)||c.equals(530))&&(c.preventDefault(),this._model.goToNextLine()),(c.equals(16)||c.equals(2064)||c.equals(528))&&(c.preventDefault(),this._model.goToPreviousLine()),(c.equals(9)||c.equals(2057)||c.equals(521)||c.equals(1033))&&(c.preventDefault(),this._model.close()),(c.equals(10)||c.equals(3))&&(c.preventDefault(),this._model.revealCurrentElementInEditor())}))}_render(e){const n=this._editors.original.getOptions(),r=this._editors.modified.getOptions(),s=document.createElement("div");s.className="diff-review-table",s.setAttribute("role","list"),s.setAttribute("aria-label",L("ariaLabel","Accessible Diff Viewer. Use arrow up and down to navigate.")),Ta(s,r.get(50)),ca(this._content,s);const o=this._editors.original.getModel(),a=this._editors.modified.getModel();if(!o||!a)return;const l=o.getOptions(),c=a.getOptions(),u=r.get(66),d=this._model.currentGroup.get();for(const h of(d==null?void 0:d.lines)||[]){if(!d)break;let f;if(h.type===Ol.Header){const g=document.createElement("div");g.className="diff-review-row",g.setAttribute("role","listitem");const m=d.range,_=this._model.currentGroupIndex.get(),b=this._model.groups.get().length,y=R=>R===0?L("no_lines_changed","no lines changed"):R===1?L("one_line_changed","1 line changed"):L("more_lines_changed","{0} lines changed",R),x=y(m.original.length),k=y(m.modified.length);g.setAttribute("aria-label",L({},"Difference {0} of {1}: original line {2}, {3}, modified line {4}, {5}",_+1,b,m.original.startLineNumber,x,m.modified.startLineNumber,k));const D=document.createElement("div");D.className="diff-review-cell diff-review-summary",D.appendChild(document.createTextNode(`${_+1}/${b}: @@ -${m.original.startLineNumber},${m.original.length} +${m.modified.startLineNumber},${m.modified.length} @@`)),g.appendChild(D),f=g}else f=this._createRow(h,u,this._width.get(),n,o,l,r,a,c);s.appendChild(f);const p=ni(g=>this._model.currentElement.read(g)===h);e.add(ur(g=>{const m=p.read(g);f.tabIndex=m?0:-1,m&&f.focus()})),e.add(Be(f,"focus",()=>{this._model.goToLine(h)}))}this._scrollbar.scanDomNode()}_createRow(e,n,r,s,o,a,l,c,u){const d=s.get(143),h=d.glyphMarginWidth+d.lineNumbersWidth,f=l.get(143),p=10+f.glyphMarginWidth+f.lineNumbersWidth;let g="diff-review-row",m="";const _="diff-review-spacer";let b=null;switch(e.type){case Ol.Added:g="diff-review-row line-insert",m=" char-insert",b=sCt;break;case Ol.Deleted:g="diff-review-row line-delete",m=" char-delete",b=oCt;break}const y=document.createElement("div");y.style.minWidth=r+"px",y.className=g,y.setAttribute("role","listitem"),y.ariaLevel="";const x=document.createElement("div");x.className="diff-review-cell",x.style.height=`${n}px`,y.appendChild(x);const k=document.createElement("span");k.style.width=h+"px",k.style.minWidth=h+"px",k.className="diff-review-line-number"+m,e.originalLineNumber!==void 0?k.appendChild(document.createTextNode(String(e.originalLineNumber))):k.innerText=" ",x.appendChild(k);const D=document.createElement("span");D.style.width=p+"px",D.style.minWidth=p+"px",D.style.paddingRight="10px",D.className="diff-review-line-number"+m,e.modifiedLineNumber!==void 0?D.appendChild(document.createTextNode(String(e.modifiedLineNumber))):D.innerText=" ",x.appendChild(D);const R=document.createElement("span");if(R.className=_,b){const M=document.createElement("span");M.className=en.asClassName(b),M.innerText="  ",R.appendChild(M)}else R.innerText="  ";x.appendChild(R);let E;if(e.modifiedLineNumber!==void 0){let M=this._getLineHtml(c,l,u.tabSize,e.modifiedLineNumber,this._languageService.languageIdCodec);xy._ttPolicy&&(M=xy._ttPolicy.createHTML(M)),x.insertAdjacentHTML("beforeend",M),E=c.getLineContent(e.modifiedLineNumber)}else{let M=this._getLineHtml(o,s,a.tabSize,e.originalLineNumber,this._languageService.languageIdCodec);xy._ttPolicy&&(M=xy._ttPolicy.createHTML(M)),x.insertAdjacentHTML("beforeend",M),E=o.getLineContent(e.originalLineNumber)}E.length===0&&(E=L("blankLine","blank"));let A="";switch(e.type){case Ol.Unchanged:e.originalLineNumber===e.modifiedLineNumber?A=L({},"{0} unchanged line {1}",E,e.originalLineNumber):A=L("equalLine","{0} original line {1} modified line {2}",E,e.originalLineNumber,e.modifiedLineNumber);break;case Ol.Added:A=L("insertLine","+ {0} modified line {1}",E,e.modifiedLineNumber);break;case Ol.Deleted:A=L("deleteLine","- {0} original line {1}",E,e.originalLineNumber);break}return y.setAttribute("aria-label",A),y}_getLineHtml(e,n,r,s,o){const a=e.getLineContent(s),l=n.get(50),c=ko.createEmpty(a,o),u=fd.isBasicASCII(a,e.mightContainNonBasicASCII()),d=fd.containsRTL(a,u,e.mightContainRTL());return S$(new X1(l.isMonospace&&!n.get(33),l.canUseHalfwidthRightwardsArrow,a,!1,u,d,0,c,[],r,0,l.spaceWidth,l.middotWidth,l.wsmiddotWidth,n.get(116),n.get(98),n.get(93),n.get(51)!==Uu.OFF,null)).html}};fte=Oae([Fae(5,Ar)],fte);const pCt=ws("diff-insert",lt.add,L("diffInsertIcon","Line decoration for inserts in the diff editor.")),ZRe=ws("diff-remove",lt.remove,L("diffRemoveIcon","Line decoration for removals in the diff editor.")),I_e=kn.register({className:"line-insert",description:"line-insert",isWholeLine:!0,linesDecorationsClassName:"insert-sign "+en.asClassName(pCt),marginClassName:"gutter-insert"}),T_e=kn.register({className:"line-delete",description:"line-delete",isWholeLine:!0,linesDecorationsClassName:"delete-sign "+en.asClassName(ZRe),marginClassName:"gutter-delete"}),R_e=kn.register({className:"line-insert",description:"line-insert",isWholeLine:!0,marginClassName:"gutter-insert"}),A_e=kn.register({className:"line-delete",description:"line-delete",isWholeLine:!0,marginClassName:"gutter-delete"}),N_e=kn.register({className:"char-insert",description:"char-insert",shouldFillLineOnLineBreak:!0}),gCt=kn.register({className:"char-insert",description:"char-insert",isWholeLine:!0}),mCt=kn.register({className:"char-insert diff-range-empty",description:"char-insert diff-range-empty"}),pte=kn.register({className:"char-delete",description:"char-delete",shouldFillLineOnLineBreak:!0}),_Ct=kn.register({className:"char-delete",description:"char-delete",isWholeLine:!0}),vCt=kn.register({className:"char-delete diff-range-empty",description:"char-delete diff-range-empty"}),bCt=kn.register({description:"diff-editor-arrow-revert-change",glyphMarginHoverMessage:new Ea(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(L("revertChangeHoverMessage","Click to revert change")),glyphMarginClassName:"arrow-revert-change "+en.asClassName(lt.arrowRight),zIndex:10001});class Xy extends Le{constructor(e,n,r,s,o){super(),this._rootElement=e,this._diffModel=n,this._originalEditorLayoutInfo=r,this._modifiedEditorLayoutInfo=s,this._editors=o,this._originalScrollTop=oa(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=oa(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._viewZonesChanged=Ku("onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this.width=vr(this,0),this._modifiedViewZonesChangedSignal=Ku("modified.onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this._originalViewZonesChangedSignal=Ku("original.onDidChangeViewZones",this._editors.original.onDidChangeViewZones),this._state=nO((f,p)=>{var g;this._element.replaceChildren();const m=this._diffModel.read(f),_=(g=m==null?void 0:m.diff.read(f))===null||g===void 0?void 0:g.movedTexts;if(!_||_.length===0){this.width.set(0,void 0);return}this._viewZonesChanged.read(f);const b=this._originalEditorLayoutInfo.read(f),y=this._modifiedEditorLayoutInfo.read(f);if(!b||!y){this.width.set(0,void 0);return}this._modifiedViewZonesChangedSignal.read(f),this._originalViewZonesChangedSignal.read(f);const x=_.map(N=>{function P(ie,K){const ee=K.getTopForLineNumber(ie.startLineNumber,!0),le=K.getTopForLineNumber(ie.endLineNumberExclusive,!0);return(ee+le)/2}const O=P(N.lineRangeMapping.original,this._editors.original),B=this._originalScrollTop.read(f),j=P(N.lineRangeMapping.modified,this._editors.modified),z=this._modifiedScrollTop.read(f),H=O-B,Y=j-z,X=Math.min(O,j),Q=Math.max(O,j);return{range:new Un(X,Q),from:H,to:Y,fromWithoutScroll:O,toWithoutScroll:j,move:N}});x.sort(xrt(ch(N=>N.fromWithoutScroll>N.toWithoutScroll,krt),ch(N=>N.fromWithoutScroll>N.toWithoutScroll?N.fromWithoutScroll:-N.toWithoutScroll,fv)));const k=Bae.compute(x.map(N=>N.range)),D=10,R=b.verticalScrollbarWidth,E=(k.getTrackCount()-1)*10+D*2,A=R+E+(y.contentLeft-Xy.movedCodeBlockPadding);let M=0;for(const N of x){const P=k.getTrack(M),O=R+D+P*10,B=15,j=15,z=A,H=y.glyphMarginWidth+y.lineNumbersWidth,Y=18,X=document.createElementNS("http://www.w3.org/2000/svg","rect");X.classList.add("arrow-rectangle"),X.setAttribute("x",`${z-H}`),X.setAttribute("y",`${N.to-Y/2}`),X.setAttribute("width",`${H}`),X.setAttribute("height",`${Y}`),this._element.appendChild(X);const Q=document.createElementNS("http://www.w3.org/2000/svg","g"),ie=document.createElementNS("http://www.w3.org/2000/svg","path");ie.setAttribute("d",`M 0 ${N.from} L ${O} ${N.from} L ${O} ${N.to} L ${z-j} ${N.to}`),ie.setAttribute("fill","none"),Q.appendChild(ie);const K=document.createElementNS("http://www.w3.org/2000/svg","polygon");K.classList.add("arrow"),p.add(ur(ee=>{ie.classList.toggle("currentMove",N.move===m.activeMovedText.read(ee)),K.classList.toggle("currentMove",N.move===m.activeMovedText.read(ee))})),K.setAttribute("points",`${z-j},${N.to-B/2} ${z},${N.to} ${z-j},${N.to+B/2}`),Q.appendChild(K),this._element.appendChild(Q),M++}this.width.set(E,void 0)}),this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("class","moved-blocks-lines"),this._rootElement.appendChild(this._element),this._register(gn(()=>this._element.remove())),this._register(ur(f=>{const p=this._originalEditorLayoutInfo.read(f),g=this._modifiedEditorLayoutInfo.read(f);!p||!g||(this._element.style.left=`${p.width-p.verticalScrollbarWidth}px`,this._element.style.height=`${p.height}px`,this._element.style.width=`${p.verticalScrollbarWidth+p.contentLeft-Xy.movedCodeBlockPadding+this.width.read(f)}px`)})),this._register(rO(this._state));const a=ni(f=>{const p=this._diffModel.read(f),g=p==null?void 0:p.diff.read(f);return g?g.movedTexts.map(m=>({move:m,original:new X7(K7(m.lineRangeMapping.original.startLineNumber-1),18),modified:new X7(K7(m.lineRangeMapping.modified.startLineNumber-1),18)})):[]});this._register(Y7(this._editors.original,a.map(f=>f.map(p=>p.original)))),this._register(Y7(this._editors.modified,a.map(f=>f.map(p=>p.modified)))),this._register(Xc((f,p)=>{const g=a.read(f);for(const m of g)p.add(new M_e(this._editors.original,m.original,m.move,"original",this._diffModel.get())),p.add(new M_e(this._editors.modified,m.modified,m.move,"modified",this._diffModel.get()))}));const l=oa(this._editors.original.onDidChangeCursorPosition,()=>this._editors.original.getPosition()),c=oa(this._editors.modified.onDidChangeCursorPosition,()=>this._editors.modified.getPosition()),u=Ku("original.onDidFocusEditorWidget",f=>this._editors.original.onDidFocusEditorWidget(()=>setTimeout(()=>f(void 0),0))),d=Ku("modified.onDidFocusEditorWidget",f=>this._editors.modified.onDidFocusEditorWidget(()=>setTimeout(()=>f(void 0),0)));let h="modified";this._register(az({createEmptyChangeSummary:()=>{},handleChange:(f,p)=>(f.didChange(u)&&(h="original"),f.didChange(d)&&(h="modified"),!0)},f=>{u.read(f),d.read(f);const p=this._diffModel.read(f);if(!p)return;const g=p.diff.read(f);let m;if(g&&h==="original"){const _=l.read(f);_&&(m=g.movedTexts.find(b=>b.lineRangeMapping.original.contains(_.lineNumber)))}if(g&&h==="modified"){const _=c.read(f);_&&(m=g.movedTexts.find(b=>b.lineRangeMapping.modified.contains(_.lineNumber)))}m!==p.movedTextToCompare.get()&&p.movedTextToCompare.set(void 0,void 0),p.setActiveMovedText(m)}))}}Xy.movedCodeBlockPadding=4;class Bae{static compute(e){const n=[],r=[];for(const s of e){let o=n.findIndex(a=>!a.intersectsStrict(s));o===-1&&(n.length>=6?o=Bct(n,ch(l=>l.intersectWithRangeLength(s),fv)):(o=n.length,n.push(new ioe))),n[o].addRange(s),r.push(o)}return new Bae(n.length,r)}constructor(e,n){this._trackCount=e,this.trackPerLineIdx=n}getTrack(e){return this.trackPerLineIdx[e]}getTrackCount(){return this._trackCount}}class M_e extends YRe{constructor(e,n,r,s,o){const a=Jo("div.diff-hidden-lines-widget");super(e,n,a.root),this._editor=e,this._move=r,this._kind=s,this._diffModel=o,this._nodes=Jo("div.diff-moved-code-block",{style:{marginRight:"4px"}},[Jo("div.text-content@textContent"),Jo("div.action-bar@actionBar")]),a.root.appendChild(this._nodes.root);const l=oa(this._editor.onDidLayoutChange,()=>this._editor.getLayoutInfo());this._register(Gy(this._nodes.root,{paddingRight:l.map(f=>f.verticalScrollbarWidth)}));let c;r.changes.length>0?c=this._kind==="original"?L("codeMovedToWithChanges","Code moved with changes to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):L("codeMovedFromWithChanges","Code moved with changes from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1):c=this._kind==="original"?L("codeMovedTo","Code moved to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):L("codeMovedFrom","Code moved from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1);const u=this._register(new wh(this._nodes.actionBar,{highlightToggledItems:!0})),d=new Vl("",c,"",!1);u.push(d,{icon:!1,label:!0});const h=new Vl("","Compare",en.asClassName(lt.compareChanges),!0,()=>{this._editor.focus(),this._diffModel.movedTextToCompare.set(this._diffModel.movedTextToCompare.get()===r?void 0:this._move,void 0)});this._register(ur(f=>{const p=this._diffModel.movedTextToCompare.read(f)===r;h.checked=p})),u.push(h,{icon:!1,label:!0})}}class yCt extends Le{constructor(e,n,r){super(),this._editors=e,this._diffModel=n,this._options=r,this._decorations=ni(this,s=>{var o;const a=(o=this._diffModel.read(s))===null||o===void 0?void 0:o.diff.read(s);if(!a)return null;const l=this._diffModel.read(s).movedTextToCompare.read(s),c=this._options.renderIndicators.read(s),u=this._options.showEmptyDecorations.read(s),d=[],h=[];if(!l)for(const p of a.mappings){if(p.lineRangeMapping.original.isEmpty||d.push({range:p.lineRangeMapping.original.toInclusiveRange(),options:c?T_e:A_e}),p.lineRangeMapping.modified.isEmpty||h.push({range:p.lineRangeMapping.modified.toInclusiveRange(),options:c?I_e:R_e}),p.lineRangeMapping.modified.isEmpty||p.lineRangeMapping.original.isEmpty)p.lineRangeMapping.original.isEmpty||d.push({range:p.lineRangeMapping.original.toInclusiveRange(),options:_Ct}),p.lineRangeMapping.modified.isEmpty||h.push({range:p.lineRangeMapping.modified.toInclusiveRange(),options:gCt});else for(const g of p.lineRangeMapping.innerChanges||[])p.lineRangeMapping.original.contains(g.originalRange.startLineNumber)&&d.push({range:g.originalRange,options:g.originalRange.isEmpty()&&u?vCt:pte}),p.lineRangeMapping.modified.contains(g.modifiedRange.startLineNumber)&&h.push({range:g.modifiedRange,options:g.modifiedRange.isEmpty()&&u?mCt:N_e});!p.lineRangeMapping.modified.isEmpty&&this._options.shouldRenderRevertArrows.read(s)&&!l&&h.push({range:J.fromPositions(new ve(p.lineRangeMapping.modified.startLineNumber,1)),options:bCt})}if(l)for(const p of l.changes){const g=p.original.toInclusiveRange();g&&d.push({range:g,options:c?T_e:A_e});const m=p.modified.toInclusiveRange();m&&h.push({range:m,options:c?I_e:R_e});for(const _ of p.innerChanges||[])d.push({range:_.originalRange,options:pte}),h.push({range:_.modifiedRange,options:N_e})}const f=this._diffModel.read(s).activeMovedText.read(s);for(const p of a.movedTexts)d.push({range:p.lineRangeMapping.original.toInclusiveRange(),options:{description:"moved",blockClassName:"movedOriginal"+(p===f?" currentMove":""),blockPadding:[Xy.movedCodeBlockPadding,0,Xy.movedCodeBlockPadding,Xy.movedCodeBlockPadding]}}),h.push({range:p.lineRangeMapping.modified.toInclusiveRange(),options:{description:"moved",blockClassName:"movedModified"+(p===f?" currentMove":""),blockPadding:[4,0,4,4]}});return{originalDecorations:d,modifiedDecorations:h}}),this._register(G7(this._editors.original,this._decorations.map(s=>(s==null?void 0:s.originalDecorations)||[]))),this._register(G7(this._editors.modified,this._decorations.map(s=>(s==null?void 0:s.modifiedDecorations)||[])))}}class wCt extends Le{constructor(e,n,r){super(),this._options=e,this._domNode=n,this._dimensions=r,this._sashRatio=vr(this,void 0),this.sashLeft=ni(this,s=>{var o;const a=(o=this._sashRatio.read(s))!==null&&o!==void 0?o:this._options.splitViewDefaultRatio.read(s);return this._computeSashLeft(a,s)}),this._sash=this._register(new ja(this._domNode,{getVerticalSashTop:s=>0,getVerticalSashLeft:s=>this.sashLeft.get(),getVerticalSashHeight:s=>this._dimensions.height.get()},{orientation:0})),this._startSashPosition=void 0,this._register(this._sash.onDidStart(()=>{this._startSashPosition=this.sashLeft.get()})),this._register(this._sash.onDidChange(s=>{const o=this._dimensions.width.get(),a=this._computeSashLeft((this._startSashPosition+(s.currentX-s.startX))/o,void 0);this._sashRatio.set(a/o,void 0)})),this._register(this._sash.onDidEnd(()=>this._sash.layout())),this._register(this._sash.onDidReset(()=>this._sashRatio.set(void 0,void 0))),this._register(ur(s=>{const o=this._options.enableSplitViewResizing.read(s);this._sash.state=o?3:0,this.sashLeft.read(s),this._dimensions.height.read(s),this._sash.layout()}))}setBoundarySashes(e){this._sash.orthogonalEndSash=e.bottom}_computeSashLeft(e,n){const r=this._dimensions.width.read(n),s=Math.floor(this._options.splitViewDefaultRatio.read(n)*r),o=this._options.enableSplitViewResizing.read(n)?Math.floor(e*r):s,a=100;return r<=a*2?s:or-a?r-a:o}}let C2=class{remove(){var e;(e=this.parent)===null||e===void 0||e.children.delete(this.id)}static findId(e,n){let r;typeof e=="string"?r=`${n.id}/${e}`:(r=`${n.id}/${e.name}`,n.children.get(r)!==void 0&&(r=`${n.id}/${e.name}_${e.range.startLineNumber}_${e.range.startColumn}`));let s=r;for(let o=0;n.children.get(s)!==void 0;o++)s=`${r}_${o}`;return s}static empty(e){return e.children.size===0}},P_e=class extends C2{constructor(e,n,r){super(),this.id=e,this.parent=n,this.symbol=r,this.children=new Map}},CCt=class extends C2{constructor(e,n,r,s){super(),this.id=e,this.parent=n,this.label=r,this.order=s,this.children=new Map}},SCt=class FC extends C2{static create(e,n,r){const s=new Ns(r),o=new FC(n.uri),a=e.ordered(n),l=a.map((u,d)=>{var h;const f=C2.findId(`provider_${d}`,o),p=new CCt(f,o,(h=u.displayName)!==null&&h!==void 0?h:"Unknown Outline Provider",d);return Promise.resolve(u.provideDocumentSymbols(n,s.token)).then(g=>{for(const m of g||[])FC._makeOutlineElement(m,p);return p},g=>(Us(g),p)).then(g=>{C2.empty(g)?g.remove():o._groups.set(f,g)})}),c=e.onDidChange(()=>{const u=e.ordered(n);ys(u,a)||s.cancel()});return Promise.all(l).then(()=>s.token.isCancellationRequested&&!r.isCancellationRequested?FC.create(e,n,r):o._compact()).finally(()=>{s.dispose(),c.dispose()})}static _makeOutlineElement(e,n){const r=C2.findId(e,n),s=new P_e(r,n,e);if(e.children)for(const o of e.children)FC._makeOutlineElement(o,s);n.children.set(s.id,s)}constructor(e){super(),this.uri=e,this.id="root",this.parent=void 0,this._groups=new Map,this.children=new Map,this.id="root",this.parent=void 0}_compact(){let e=0;for(const[n,r]of this._groups)r.children.size===0?this._groups.delete(n):e+=1;if(e!==1)this.children=this._groups;else{const n=Vn.first(this._groups.values());for(const[,r]of n.children)r.parent=this,this.children.set(r.id,r)}return this}getTopLevelSymbols(){const e=[];for(const n of this.children.values())n instanceof P_e?e.push(n.symbol):e.push(...Vn.map(n.children.values(),r=>r.symbol));return e.sort((n,r)=>J.compareRangesUsingStarts(n.range,r.range))}asListOfDocumentSymbols(){const e=this.getTopLevelSymbols(),n=[];return FC._flattenDocumentSymbols(n,e,""),n.sort((r,s)=>ve.compare(J.getStartPosition(r.range),J.getStartPosition(s.range))||ve.compare(J.getEndPosition(s.range),J.getEndPosition(r.range)))}static _flattenDocumentSymbols(e,n,r){for(const s of n)e.push({kind:s.kind,tags:s.tags,name:s.name,detail:s.detail,containerName:s.containerName||r,range:s.range,selectionRange:s.selectionRange,children:void 0}),s.children&&FC._flattenDocumentSymbols(e,s.children,s.name)}};var QRe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},JRe=function(i,e){return function(n,r){e(n,r,i)}},xCt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let gte=class extends Le{get isUpdatingViewZones(){return this._isUpdatingViewZones}constructor(e,n,r,s){super(),this._editors=e,this._diffModel=n,this._options=r,this._languageFeaturesService=s,this._isUpdatingViewZones=!1,this._modifiedOutlineSource=nO(this,(u,d)=>{const h=this._editors.modifiedModel.read(u);if(h)return d.add(new mte(this._languageFeaturesService,h))}),this._register(this._editors.original.onDidChangeCursorPosition(u=>{if(u.reason===3){const d=this._diffModel.get();Pr(h=>{for(const f of this._editors.original.getSelections()||[])d==null||d.ensureOriginalLineIsVisible(f.getStartPosition().lineNumber,h),d==null||d.ensureOriginalLineIsVisible(f.getEndPosition().lineNumber,h)})}})),this._register(this._editors.modified.onDidChangeCursorPosition(u=>{if(u.reason===3){const d=this._diffModel.get();Pr(h=>{for(const f of this._editors.modified.getSelections()||[])d==null||d.ensureModifiedLineIsVisible(f.getStartPosition().lineNumber,h),d==null||d.ensureModifiedLineIsVisible(f.getEndPosition().lineNumber,h)})}}));const o=this._diffModel.map((u,d)=>{var h,f;return((h=u==null?void 0:u.diff.read(d))===null||h===void 0?void 0:h.mappings.length)===0?[]:(f=u==null?void 0:u.unchangedRegions.read(d))!==null&&f!==void 0?f:[]}),a=nO(this,(u,d)=>{const h=this._modifiedOutlineSource.read(u);if(!h)return{origViewZones:[],modViewZones:[]};const f=[],p=[],g=this._options.renderSideBySide.read(u),m=o.read(u);for(const _ of m)if(!_.shouldHideControls(u)){{const b=ni(x=>_.getHiddenOriginalRange(x).startLineNumber-1),y=new X7(b,24);f.push(y),d.add(new O_e(this._editors.original,y,_,_.originalUnchangedRange,!g,h,x=>this._diffModel.get().ensureModifiedLineIsVisible(x,void 0),this._options))}{const b=ni(x=>_.getHiddenModifiedRange(x).startLineNumber-1),y=new X7(b,24);p.push(y),d.add(new O_e(this._editors.modified,y,_,_.modifiedUnchangedRange,!1,h,x=>this._diffModel.get().ensureModifiedLineIsVisible(x,void 0),this._options))}}return{origViewZones:f,modViewZones:p}}),l={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},c={description:"Fold Unchanged",glyphMarginHoverMessage:new Ea(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(L("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+en.asClassName(lt.fold),zIndex:10001};this._register(G7(this._editors.original,ni(u=>{const d=o.read(u),h=d.map(f=>({range:f.originalUnchangedRange.toInclusiveRange(),options:l}));for(const f of d)f.shouldHideControls(u)&&h.push({range:J.fromPositions(new ve(f.originalLineNumber,1)),options:c});return h}))),this._register(G7(this._editors.modified,ni(u=>{const d=o.read(u),h=d.map(f=>({range:f.modifiedUnchangedRange.toInclusiveRange(),options:l}));for(const f of d)f.shouldHideControls(u)&&h.push({range:Qn.ofLength(f.modifiedLineNumber,1).toInclusiveRange(),options:c});return h}))),this._register(Y7(this._editors.original,a.map(u=>u.origViewZones),u=>this._isUpdatingViewZones=u)),this._register(Y7(this._editors.modified,a.map(u=>u.modViewZones),u=>this._isUpdatingViewZones=u)),this._register(ur(u=>{const d=o.read(u);this._editors.original.setHiddenAreas(d.map(h=>h.getHiddenOriginalRange(u).toInclusiveRange()).filter(tP)),this._editors.modified.setHiddenAreas(d.map(h=>h.getHiddenModifiedRange(u).toInclusiveRange()).filter(tP))})),this._register(this._editors.modified.onMouseUp(u=>{var d;if(!u.event.rightButton&&u.target.position&&(!((d=u.target.element)===null||d===void 0)&&d.className.includes("fold-unchanged"))){const h=u.target.position.lineNumber,f=this._diffModel.get();if(!f)return;const p=f.unchangedRegions.get().find(g=>g.modifiedUnchangedRange.includes(h));if(!p)return;p.collapseAll(void 0),u.event.stopPropagation(),u.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(u=>{var d;if(!u.event.rightButton&&u.target.position&&(!((d=u.target.element)===null||d===void 0)&&d.className.includes("fold-unchanged"))){const h=u.target.position.lineNumber,f=this._diffModel.get();if(!f)return;const p=f.unchangedRegions.get().find(g=>g.originalUnchangedRange.includes(h));if(!p)return;p.collapseAll(void 0),u.event.stopPropagation(),u.event.preventDefault()}}))}};gte=QRe([JRe(3,Et)],gte);let mte=class extends Le{constructor(e,n){super(),this._languageFeaturesService=e,this._textModel=n,this._currentModel=vr(this,void 0);const r=Ku("documentSymbolProvider.onDidChange",this._languageFeaturesService.documentSymbolProvider.onDidChange),s=Ku("_textModel.onDidChangeContent",_t.debounce(o=>this._textModel.onDidChangeContent(o),()=>{},100));this._register(Xc((o,a)=>xCt(this,void 0,void 0,function*(){r.read(o),s.read(o);const l=a.add(new iCt),c=yield SCt.create(this._languageFeaturesService.documentSymbolProvider,this._textModel,l.token);a.isDisposed||this._currentModel.set(c,void 0)})))}getBreadcrumbItems(e,n){const r=this._currentModel.read(n);if(!r)return[];const s=r.asListOfDocumentSymbols().filter(o=>e.contains(o.range.startLineNumber)&&!e.contains(o.range.endLineNumber));return s.sort(_2e(ch(o=>o.range.endLineNumber-o.range.startLineNumber,fv))),s.map(o=>({name:o.name,kind:o.kind,startLineNumber:o.range.startLineNumber}))}};mte=QRe([JRe(0,Et)],mte);class O_e extends YRe{constructor(e,n,r,s,o,a,l,c){const u=Jo("div.diff-hidden-lines-widget");super(e,n,u.root),this._editor=e,this._unchangedRegion=r,this._unchangedRegionRange=s,this.hide=o,this._modifiedOutlineSource=a,this._revealModifiedHiddenLine=l,this._options=c,this._nodes=Jo("div.diff-hidden-lines",[Jo("div.top@top",{title:L("diff.hiddenLines.top","Click or drag to show more above")}),Jo("div.center@content",{style:{display:"flex"}},[Jo("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[tt("a",{title:L("showAll","Show all"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Uy("$(unfold)"))]),Jo("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),Jo("div.bottom@bottom",{title:L("diff.bottom","Click or drag to show more below"),role:"button"})]),u.root.appendChild(this._nodes.root);const d=oa(this._editor.onDidLayoutChange,()=>this._editor.getLayoutInfo());this.hide?ca(this._nodes.first):this._register(Gy(this._nodes.first,{width:d.map(f=>f.contentLeft)}));const h=this._editor;this._register(Be(this._nodes.top,"mousedown",f=>{if(f.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),f.preventDefault();const p=f.clientY;let g=!1;const m=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set(!0,void 0);const _=Be(window,"mousemove",y=>{const k=y.clientY-p;g=g||Math.abs(k)>2;const D=Math.round(k/h.getOption(66)),R=Math.max(0,Math.min(m+D,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(R,void 0)}),b=Be(window,"mouseup",y=>{g||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(!1,void 0),_.dispose(),b.dispose()})})),this._register(Be(this._nodes.bottom,"mousedown",f=>{if(f.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),f.preventDefault();const p=f.clientY;let g=!1;const m=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set(!0,void 0);const _=Be(window,"mousemove",y=>{const k=y.clientY-p;g=g||Math.abs(k)>2;const D=Math.round(k/h.getOption(66)),R=Math.max(0,Math.min(m-D,this._unchangedRegion.getMaxVisibleLineCountBottom())),E=h.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(R,void 0);const A=h.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);h.setScrollTop(h.getScrollTop()+(A-E))}),b=Be(window,"mouseup",y=>{if(this._unchangedRegion.isDragged.set(!1,void 0),!g){const x=h.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);const k=h.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);h.setScrollTop(h.getScrollTop()+(k-x))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),_.dispose(),b.dispose()})})),this._register(ur(f=>{const p=[];if(!this.hide){const g=r.getHiddenModifiedRange(f).length,m=L("hiddenLines","{0} hidden lines",g),_=tt("span",{title:L("diff.hiddenLines.expandAll","Double click to unfold")},m);_.addEventListener("dblclick",x=>{x.button===0&&(x.preventDefault(),this._unchangedRegion.showAll(void 0))}),p.push(_);const b=this._unchangedRegion.getHiddenModifiedRange(f),y=this._modifiedOutlineSource.getBreadcrumbItems(b,f);if(y.length>0){p.push(tt("span",void 0,"  |  "));for(let x=0;x{this._revealModifiedHiddenLine(k.startLineNumber)}}}}ca(this._nodes.others,...p)}))}}class Qp{static capture(e){if(e.getScrollTop()===0||e.hasPendingScrollAnimation())return new Qp(e.getScrollTop(),e.getContentHeight(),null,0,null);let n=null,r=0;const s=e.getVisibleRanges();if(s.length>0){n=s[0].getStartPosition();const o=e.getTopForPosition(n.lineNumber,n.column);r=e.getScrollTop()-o}return new Qp(e.getScrollTop(),e.getContentHeight(),n,r,e.getPosition())}constructor(e,n,r,s,o){this._initialScrollTop=e,this._initialContentHeight=n,this._visiblePosition=r,this._visiblePositionScrollDelta=s,this._cursorPosition=o}restore(e){if(!(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())&&this._visiblePosition){const n=e.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);e.setScrollTop(n+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(e){if(this._initialContentHeight===e.getContentHeight()&&this._initialScrollTop===e.getScrollTop())return;const n=e.getPosition();if(!this._cursorPosition||!n)return;const r=e.getTopForLineNumber(n.lineNumber)-e.getTopForLineNumber(this._cursorPosition.lineNumber);e.setScrollTop(e.getScrollTop()+r)}}var kCt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},F_e=function(i,e){return function(n,r){e(n,r,i)}},LCt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},BC;let Z7=BC=class{constructor(e,n,r){this.editorWorkerService=n,this.telemetryService=r,this.onDidChangeEventEmitter=new _e,this.onDidChange=this.onDidChangeEventEmitter.event,this.diffAlgorithm="advanced",this.diffAlgorithmOnDidChangeSubscription=void 0,this.setOptions(e)}dispose(){var e;(e=this.diffAlgorithmOnDidChangeSubscription)===null||e===void 0||e.dispose()}computeDiff(e,n,r,s){var o,a;return LCt(this,void 0,void 0,function*(){if(typeof this.diffAlgorithm!="string")return this.diffAlgorithm.computeDiff(e,n,r,s);if(e.getLineCount()===1&&e.getLineMaxColumn(1)===1)return n.getLineCount()===1&&n.getLineMaxColumn(1)===1?{changes:[],identical:!0,quitEarly:!1,moves:[]}:{changes:[new bh(new Qn(1,2),new Qn(1,n.getLineCount()+1),[new _1(e.getFullModelRange(),n.getFullModelRange())])],identical:!1,quitEarly:!1,moves:[]};const l=JSON.stringify([e.uri.toString(),n.uri.toString()]),c=JSON.stringify([e.id,n.id,e.getAlternativeVersionId(),n.getAlternativeVersionId(),JSON.stringify(r)]),u=BC.diffCache.get(l);if(u&&u.context===c)return u.result;const d=Xa.create(),h=yield this.editorWorkerService.computeDiff(e.uri,n.uri,r,this.diffAlgorithm),f=d.elapsed();if(this.telemetryService.publicLog2("diffEditor.computeDiff",{timeMs:f,timedOut:(o=h==null?void 0:h.quitEarly)!==null&&o!==void 0?o:!0,detectedMoves:r.computeMoves?(a=h==null?void 0:h.moves.length)!==null&&a!==void 0?a:0:-1}),s.isCancellationRequested)return{changes:[],identical:!1,quitEarly:!0,moves:[]};if(!h)throw new Error("no diff result available");return BC.diffCache.size>10&&BC.diffCache.delete(BC.diffCache.keys().next().value),BC.diffCache.set(l,{result:h,context:c}),h})}setOptions(e){var n;let r=!1;e.diffAlgorithm&&this.diffAlgorithm!==e.diffAlgorithm&&((n=this.diffAlgorithmOnDidChangeSubscription)===null||n===void 0||n.dispose(),this.diffAlgorithmOnDidChangeSubscription=void 0,this.diffAlgorithm=e.diffAlgorithm,typeof e.diffAlgorithm!="string"&&(this.diffAlgorithmOnDidChangeSubscription=e.diffAlgorithm.onDidChange(()=>this.onDidChangeEventEmitter.fire())),r=!0),r&&this.onDidChangeEventEmitter.fire()}};Z7.diffCache=new Map;Z7=BC=kCt([F_e(1,Wf),F_e(2,_d)],Z7);var DCt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},ECt=function(i,e){return function(n,r){e(n,r,i)}};const eAe=qn("diffProviderFactoryService");let _te=class{constructor(e){this.instantiationService=e}createDiffProvider(e,n){return this.instantiationService.createInstance(Z7,n)}};_te=DCt([ECt(0,hn)],_te);oi(eAe,_te,1);var ICt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},TCt=function(i,e){return function(n,r){e(n,r,i)}},B_e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let vte=class extends Le{setActiveMovedText(e){this._activeMovedText.set(e,void 0)}constructor(e,n,r,s){super(),this.model=e,this._options=n,this._editor=r,this._diffProviderFactoryService=s,this._isDiffUpToDate=vr(this,!1),this.isDiffUpToDate=this._isDiffUpToDate,this._diff=vr(this,void 0),this.diff=this._diff,this._unchangedRegions=vr(this,{regions:[],originalDecorationIds:[],modifiedDecorationIds:[]}),this.unchangedRegions=ni(this,c=>this._options.hideUnchangedRegions.read(c)?this._unchangedRegions.read(c).regions:(Pr(u=>{for(const d of this._unchangedRegions.get().regions)d.collapseAll(u)}),[])),this.movedTextToCompare=vr(this,void 0),this._activeMovedText=vr(this,void 0),this._hoveredMovedText=vr(this,void 0),this.activeMovedText=ni(this,c=>{var u,d;return(d=(u=this.movedTextToCompare.read(c))!==null&&u!==void 0?u:this._hoveredMovedText.read(c))!==null&&d!==void 0?d:this._activeMovedText.read(c)}),this._cancellationTokenSource=new Ns,this._diffProvider=ni(this,c=>{const u=this._diffProviderFactoryService.createDiffProvider(this._editor,{diffAlgorithm:this._options.diffAlgorithm.read(c)}),d=Ku("onDidChange",u.onDidChange);return{diffProvider:u,onChangeSignal:d}}),this._register(gn(()=>this._cancellationTokenSource.cancel()));const o=GRe("contentChangedSignal"),a=this._register(new Ji(()=>o.trigger(void 0),200)),l=(c,u,d)=>{const h=Q7.fromDiffs(c.changes,e.original.getLineCount(),e.modified.getLineCount(),this._options.hideUnchangedRegionsMinimumLineCount.read(d),this._options.hideUnchangedRegionsContextLineCount.read(d)),f=this._unchangedRegions.get(),p=f.originalDecorationIds.map(b=>e.original.getDecorationRange(b)).filter(b=>!!b).map(b=>Qn.fromRange(b)),g=f.modifiedDecorationIds.map(b=>e.modified.getDecorationRange(b)).filter(b=>!!b).map(b=>Qn.fromRange(b)),m=e.original.deltaDecorations(f.originalDecorationIds,h.map(b=>({range:b.originalUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}}))),_=e.modified.deltaDecorations(f.modifiedDecorationIds,h.map(b=>({range:b.modifiedUnchangedRange.toInclusiveRange(),options:{description:"unchanged"}})));for(const b of h)for(let y=0;y{if(this._diff.get()){const d=rv.fromModelContentChanges(c.changes);this._lastDiff,e.original,e.modified}a.schedule()})),this._register(e.original.onDidChangeContent(c=>{if(this._diff.get()){const d=rv.fromModelContentChanges(c.changes);this._lastDiff,e.original,e.modified}a.schedule()})),this._register(Xc((c,u)=>B_e(this,void 0,void 0,function*(){var d,h;this._options.hideUnchangedRegionsMinimumLineCount.read(c),this._options.hideUnchangedRegionsContextLineCount.read(c),a.cancel(),o.read(c);const f=this._diffProvider.read(c);f.onChangeSignal.read(c),ny(JEe,c),ny(yJ,c),this._isDiffUpToDate.set(!1,void 0);let p=[];u.add(e.original.onDidChangeContent(_=>{const b=rv.fromModelContentChanges(_.changes);p=u7(p,b)}));let g=[];u.add(e.modified.onDidChangeContent(_=>{const b=rv.fromModelContentChanges(_.changes);g=u7(g,b)}));let m=yield f.diffProvider.computeDiff(e.original,e.modified,{ignoreTrimWhitespace:this._options.ignoreTrimWhitespace.read(c),maxComputationTimeMs:this._options.maxComputationTimeMs.read(c),computeMoves:this._options.showMoves.read(c)},this._cancellationTokenSource.token);this._cancellationTokenSource.token.isCancellationRequested||(m=RCt(m,e.original,e.modified),m=(d=(e.original,e.modified,void 0))!==null&&d!==void 0?d:m,m=(h=(e.original,e.modified,void 0))!==null&&h!==void 0?h:m,Pr(_=>{l(m,_),this._lastDiff=m;const b=jae.fromDiffResult(m);this._diff.set(b,_),this._isDiffUpToDate.set(!0,_);const y=this.movedTextToCompare.get();this.movedTextToCompare.set(y?this._lastDiff.moves.find(x=>x.lineRangeMapping.modified.intersect(y.lineRangeMapping.modified)):void 0,_)}))})))}ensureModifiedLineIsVisible(e,n){var r;if(((r=this.diff.get())===null||r===void 0?void 0:r.mappings.length)===0)return;const s=this._unchangedRegions.get().regions;for(const o of s)if(o.getHiddenModifiedRange(void 0).contains(e)){o.showModifiedLine(e,n);return}}ensureOriginalLineIsVisible(e,n){var r;if(((r=this.diff.get())===null||r===void 0?void 0:r.mappings.length)===0)return;const s=this._unchangedRegions.get().regions;for(const o of s)if(o.getHiddenOriginalRange(void 0).contains(e)){o.showOriginalLine(e,n);return}}waitForDiff(){return B_e(this,void 0,void 0,function*(){yield Gwt(this.isDiffUpToDate,e=>e)})}serializeState(){return{collapsedRegions:this._unchangedRegions.get().regions.map(n=>({range:n.getHiddenModifiedRange(void 0).serialize()}))}}restoreSerializedState(e){const n=e.collapsedRegions.map(s=>Qn.deserialize(s.range)),r=this._unchangedRegions.get();Pr(s=>{for(const o of r.regions)for(const a of n)if(o.modifiedUnchangedRange.intersect(a)){o.setHiddenModifiedRange(a,s);break}})}};vte=ICt([TCt(3,eAe)],vte);function RCt(i,e,n){return{changes:i.changes.map(r=>new bh(r.original,r.modified,r.innerChanges?r.innerChanges.map(s=>ACt(s,e,n)):void 0)),moves:i.moves,identical:i.identical,quitEarly:i.quitEarly}}function ACt(i,e,n){let r=i.originalRange,s=i.modifiedRange;return(r.endColumn!==1||s.endColumn!==1)&&r.endColumn===e.getLineMaxColumn(r.endLineNumber)&&s.endColumn===n.getLineMaxColumn(s.endLineNumber)&&r.endLineNumbernew tAe(n)),e.moves||[],e.identical,e.quitEarly)}constructor(e,n,r,s){this.mappings=e,this.movedTexts=n,this.identical=r,this.quitEarly=s}}class tAe{constructor(e){this.lineRangeMapping=e}}class Q7{static fromDiffs(e,n,r,s,o){const a=bh.inverse(e,n,r),l=[];for(const c of a){let u=c.original.startLineNumber,d=c.modified.startLineNumber,h=c.original.length;const f=u===1&&d===1,p=u+h===n+1&&d+h===r+1;(f||p)&&h>=o+s?(f&&!p&&(h-=o),p&&!f&&(u+=o,d+=o,h-=o),l.push(new Q7(u,d,h,0,0))):h>=o*2+s&&(u+=o,d+=o,h-=o*2,l.push(new Q7(u,d,h,0,0)))}return l}get originalUnchangedRange(){return Qn.ofLength(this.originalLineNumber,this.lineCount)}get modifiedUnchangedRange(){return Qn.ofLength(this.modifiedLineNumber,this.lineCount)}constructor(e,n,r,s,o){this.originalLineNumber=e,this.modifiedLineNumber=n,this.lineCount=r,this._visibleLineCountTop=vr(this,0),this.visibleLineCountTop=this._visibleLineCountTop,this._visibleLineCountBottom=vr(this,0),this.visibleLineCountBottom=this._visibleLineCountBottom,this._shouldHideControls=ni(this,a=>this.visibleLineCountTop.read(a)+this.visibleLineCountBottom.read(a)===this.lineCount&&!this.isDragged.read(a)),this.isDragged=vr(this,!1),this._visibleLineCountTop.set(s,void 0),this._visibleLineCountBottom.set(o,void 0)}shouldHideControls(e){return this._shouldHideControls.read(e)}getHiddenOriginalRange(e){return Qn.ofLength(this.originalLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}getHiddenModifiedRange(e){return Qn.ofLength(this.modifiedLineNumber+this._visibleLineCountTop.read(e),this.lineCount-this._visibleLineCountTop.read(e)-this._visibleLineCountBottom.read(e))}setHiddenModifiedRange(e,n){const r=e.startLineNumber-this.modifiedLineNumber,s=this.modifiedLineNumber+this.lineCount-e.endLineNumberExclusive;this.setState(r,s,n)}getMaxVisibleLineCountTop(){return this.lineCount-this._visibleLineCountBottom.get()}getMaxVisibleLineCountBottom(){return this.lineCount-this._visibleLineCountTop.get()}showMoreAbove(e=10,n){const r=this.getMaxVisibleLineCountTop();this._visibleLineCountTop.set(Math.min(this._visibleLineCountTop.get()+e,r),n)}showMoreBelow(e=10,n){const r=this.lineCount-this._visibleLineCountTop.get();this._visibleLineCountBottom.set(Math.min(this._visibleLineCountBottom.get()+e,r),n)}showAll(e){this._visibleLineCountBottom.set(this.lineCount-this._visibleLineCountTop.get(),e)}showModifiedLine(e,n){const r=e+1-(this.modifiedLineNumber+this._visibleLineCountTop.get()),s=this.modifiedLineNumber-this._visibleLineCountBottom.get()+this.lineCount-e;r{var _;this._contextMenuService.showContextMenu({domForShadowRoot:f&&(_=r.getDomNode())!==null&&_!==void 0?_:void 0,getAnchor:()=>({x:g,y:m}),getActions:()=>{const b=[],y=s.modified.isEmpty;return b.push(new Vl("diff.clipboard.copyDeletedContent",y?s.original.length>1?L("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):L("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"):s.original.length>1?L("diff.clipboard.copyChangedLinesContent.label","Copy changed lines"):L("diff.clipboard.copyChangedLinesContent.single.label","Copy changed line"),void 0,!0,()=>aK(this,void 0,void 0,function*(){const k=this._originalTextModel.getValueInRange(s.original.toExclusiveRange());yield this._clipboardService.writeText(k)}))),s.original.length>1&&b.push(new Vl("diff.clipboard.copyDeletedLineContent",y?L("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",s.original.startLineNumber+h):L("diff.clipboard.copyChangedLineContent.label","Copy changed line ({0})",s.original.startLineNumber+h),void 0,!0,()=>aK(this,void 0,void 0,function*(){let k=this._originalTextModel.getLineContent(s.original.startLineNumber+h);k===""&&(k=this._originalTextModel.getEndOfLineSequence()===0?` `:`\r `),yield this._clipboardService.writeText(k)}))),r.getOption(90)||b.push(new Vl("diff.inline.revertChange",L("diff.inline.revertChange.label","Revert this change"),void 0,!0,()=>aK(this,void 0,void 0,function*(){this._editor.revert(this._diff)}))),b},autoSelectFirstItem:!0})};this._register(As(this._diffActions,"mousedown",g=>{const{top:m,height:_}=no(this._diffActions),b=Math.floor(d/3);g.preventDefault(),p(g.posx,m+_+b)})),this._register(r.onMouseMove(g=>{(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()?(h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),this.visibility=!0):this.visibility=!1})),this._register(r.onMouseDown(g=>{g.event.rightButton&&(g.target.type===8||g.target.type===5)&&g.target.detail.viewZoneId===this._getViewZoneId()&&(g.event.preventDefault(),h=this._updateLightBulbPosition(this._marginDomNode,g.event.browserEvent.y,d),p(g.event.posx,g.event.posy+d))}))}_updateLightBulbPosition(e,n,r){const{top:s}=no(e),o=n-s,a=Math.floor(o/r),l=a*r;if(this._diffActions.style.top=`${l}px`,this._viewLineCounts){let c=0;for(let u=0;ui});function MCt(i,e,n,r){Ta(r,e.fontInfo);const s=n.length>0,o=new jI(1e4);let a=0,l=0;const c=[];for(let f=0;f');const c=e.getLineContent(),u=fd.isBasicASCII(c,s),d=fd.containsRTL(c,u,o),h=T5(new X1(a.fontInfo.isMonospace&&!a.disableMonospaceOptimizations,a.fontInfo.canUseHalfwidthRightwardsArrow,c,!1,u,d,0,e,n,a.tabSize,0,a.fontInfo.spaceWidth,a.fontInfo.middotWidth,a.fontInfo.wsmiddotWidth,a.stopRenderingLineAfter,a.renderWhitespace,a.renderControlCharacters,a.fontLigatures!==Uu.OFF,null),l);return l.appendString(""),h.characterMapping.getHorizontalOffset(h.characterMapping.length)}var OCt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},$_e=function(i,e){return function(n,r){e(n,r,i)}};let bte=class extends Le{constructor(e,n,r,s,o,a,l){super(),this._editors=e,this._diffModel=n,this._options=r,this._diffEditorWidget=s,this._canIgnoreViewZoneUpdateEvent=o,this._clipboardService=a,this._contextMenuService=l,this._originalTopPadding=vr(this,0),this._originalScrollOffset=vr(this,0),this._originalScrollOffsetAnimated=E_e(this._originalScrollOffset,this._store),this._modifiedTopPadding=vr(this,0),this._modifiedScrollOffset=vr(this,0),this._modifiedScrollOffsetAnimated=E_e(this._modifiedScrollOffset,this._store);let c=!1;const u=vr("state",0),d=this._register(new Ji(()=>{u.set(u.get()+1,void 0)},0));this._register(this._editors.original.onDidChangeViewZones(k=>{!c&&!this._canIgnoreViewZoneUpdateEvent()&&d.schedule()})),this._register(this._editors.modified.onDidChangeViewZones(k=>{!c&&!this._canIgnoreViewZoneUpdateEvent()&&d.schedule()})),this._register(this._editors.original.onDidChangeConfiguration(k=>{(k.hasChanged(144)||k.hasChanged(66))&&d.schedule()})),this._register(this._editors.modified.onDidChangeConfiguration(k=>{(k.hasChanged(144)||k.hasChanged(66))&&d.schedule()}));const h=this._diffModel.map(k=>k?oa(k.model.original.onDidChangeTokens,()=>k.model.original.tokenization.backgroundTokenizationState===2):void 0).map((k,D)=>k==null?void 0:k.read(D)),f=new Set,p=new Set,g=ni(k=>{const D=this._diffModel.read(k),R=D==null?void 0:D.diff.read(k);if(!D||!R)return null;u.read(k);const A=this._options.renderSideBySide.read(k);return z_e(this._editors.original,this._editors.modified,R.mappings,f,p,A)}),m=ni(k=>{var D;const R=(D=this._diffModel.read(k))===null||D===void 0?void 0:D.movedTextToCompare.read(k);if(!R)return null;u.read(k);const E=R.changes.map(A=>new tAe(A));return z_e(this._editors.original,this._editors.modified,E,f,p,!0)});function _(){const k=document.createElement("div");return k.className="diagonal-fill",k}const b=this._register(new Xe),y=ni(k=>{var D,R,E,A,M,N,P,O;b.clear();const B=g.read(k)||[],j=[],z=[],H=this._modifiedTopPadding.read(k);H>0&&z.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:H,showInHiddenAreas:!0,suppressMouseDown:!0});const Y=this._originalTopPadding.read(k);Y>0&&j.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:Y,showInHiddenAreas:!0,suppressMouseDown:!0});const X=this._options.renderSideBySide.read(k),Q=X||(D=this._editors.modified._getViewModel())===null||D===void 0?void 0:D.createLineBreaksComputer();if(Q){for(const Ee of B)if(Ee.diff)for(let je=Ee.originalRange.startLineNumber;jethis._editors.original.getModel().tokenization.getLineTokens(Rt)),Ee.originalRange.mapToLineArray(Rt=>ie[K++]),ke,xe),We=[];for(const Rt of Ee.diff.innerChanges||[])We.push(new tM(Rt.originalRange.delta(-(Ee.diff.original.startLineNumber-1)),pte.className,0));const ut=MCt(Ze,me,We,qe),st=document.createElement("div");if(st.className="inline-deleted-margin-view-zone",Ta(st,me.fontInfo),this._options.renderIndicators.read(k))for(let Rt=0;RtfS(mt),st,this._editors.modified,Ee.diff,this._diffEditorWidget,ut.viewLineCounts,this._editors.original.getModel(),this._contextMenuService,this._clipboardService));for(let Rt=0;Rt1&&j.push({afterLineNumber:Ee.originalRange.startLineNumber+Rt,domNode:_(),heightInPx:(Vt-1)*ee,showInHiddenAreas:!0,suppressMouseDown:!0})}z.push({afterLineNumber:Ee.modifiedRange.startLineNumber-1,domNode:qe,heightInPx:ut.heightInLines*ee,minWidthInPx:ut.minWidthInPx,marginDomNode:st,setZoneId(Rt){mt=Rt},showInHiddenAreas:!0,suppressMouseDown:!0})}const je=document.createElement("div");je.className="gutter-delete",j.push({afterLineNumber:Ee.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:Ee.modifiedHeightInPx,marginDomNode:je,showInHiddenAreas:!0,suppressMouseDown:!0})}else{const je=Ee.modifiedHeightInPx-Ee.originalHeightInPx;if(je>0){if(le!=null&&le.lineRangeMapping.original.delta(-1).deltaLength(2).contains(Ee.originalRange.endLineNumberExclusive-1))continue;j.push({afterLineNumber:Ee.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:je,showInHiddenAreas:!0,suppressMouseDown:!0})}else{let qe=function(){const We=document.createElement("div");return We.className="arrow-revert-change "+en.asClassName(lt.arrowRight),tt("div",{},We)};if(le!=null&&le.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(Ee.modifiedRange.endLineNumberExclusive-1))continue;let Ze;Ee.diff&&Ee.diff.modified.isEmpty&&this._options.shouldRenderRevertArrows.read(k)&&(Ze=qe()),z.push({afterLineNumber:Ee.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-je,marginDomNode:Ze,showInHiddenAreas:!0,suppressMouseDown:!0})}}for(const Ee of(O=m.read(k))!==null&&O!==void 0?O:[]){if(!(le!=null&&le.lineRangeMapping.original.intersect(Ee.originalRange))||!(le!=null&&le.lineRangeMapping.modified.intersect(Ee.modifiedRange)))continue;const je=Ee.modifiedHeightInPx-Ee.originalHeightInPx;je>0?j.push({afterLineNumber:Ee.originalRange.endLineNumberExclusive-1,domNode:_(),heightInPx:je,showInHiddenAreas:!0,suppressMouseDown:!0}):z.push({afterLineNumber:Ee.modifiedRange.endLineNumberExclusive-1,domNode:_(),heightInPx:-je,showInHiddenAreas:!0,suppressMouseDown:!0})}return{orig:j,mod:z}});this._register(Xc(k=>{const D=Qp.capture(this._editors.modified),R=y.read(k);c=!0,this._editors.original.changeViewZones(E=>{for(const A of f)E.removeZone(A);f.clear();for(const A of R.orig){const M=E.addZone(A);A.setZoneId&&A.setZoneId(M),f.add(M)}}),this._editors.modified.changeViewZones(E=>{for(const A of p)E.removeZone(A);p.clear();for(const A of R.mod){const M=E.addZone(A);A.setZoneId&&A.setZoneId(M),p.add(M)}}),c=!1,D.restore(this._editors.modified)})),this._register(gn(()=>{this._editors.original.changeViewZones(k=>{for(const D of f)k.removeZone(D);f.clear()}),this._editors.modified.changeViewZones(k=>{for(const D of p)k.removeZone(D);p.clear()})}));let x=!1;this._register(this._editors.original.onDidScrollChange(k=>{k.scrollLeftChanged&&!x&&(x=!0,this._editors.modified.setScrollLeft(k.scrollLeft),x=!1)})),this._register(this._editors.modified.onDidScrollChange(k=>{k.scrollLeftChanged&&!x&&(x=!0,this._editors.original.setScrollLeft(k.scrollLeft),x=!1)})),this._originalScrollTop=oa(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=oa(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._register(ur(k=>{const D=this._originalScrollTop.read(k)-(this._originalScrollOffsetAnimated.get()-this._modifiedScrollOffsetAnimated.read(k))-(this._originalTopPadding.get()-this._modifiedTopPadding.read(k));D!==this._editors.modified.getScrollTop()&&this._editors.modified.setScrollTop(D,1)})),this._register(ur(k=>{const D=this._modifiedScrollTop.read(k)-(this._modifiedScrollOffsetAnimated.get()-this._originalScrollOffsetAnimated.read(k))-(this._modifiedTopPadding.get()-this._originalTopPadding.read(k));D!==this._editors.original.getScrollTop()&&this._editors.original.setScrollTop(D,1)})),this._register(ur(k=>{var D;const R=(D=this._diffModel.read(k))===null||D===void 0?void 0:D.movedTextToCompare.read(k);let E=0;if(R){const A=this._editors.original.getTopForLineNumber(R.lineRangeMapping.original.startLineNumber,!0)-this._originalTopPadding.get();E=this._editors.modified.getTopForLineNumber(R.lineRangeMapping.modified.startLineNumber,!0)-this._modifiedTopPadding.get()-A}E>0?(this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(E,void 0)):E<0?(this._modifiedTopPadding.set(-E,void 0),this._originalTopPadding.set(0,void 0)):setTimeout(()=>{this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(0,void 0)},400),this._editors.modified.hasTextFocus()?this._originalScrollOffset.set(this._modifiedScrollOffset.get()-E,void 0,!0):this._modifiedScrollOffset.set(this._originalScrollOffset.get()+E,void 0,!0)}))}};bte=OCt([$_e(5,qv),$_e(6,Ff)],bte);function z_e(i,e,n,r,s,o){const a=new Ev(V_e(i,r)),l=new Ev(V_e(e,s)),c=i.getOption(66),u=e.getOption(66),d=[];let h=0,f=0;function p(g,m){for(;;){let _=a.peek(),b=l.peek();if(_&&_.lineNumber>=g&&(_=void 0),b&&b.lineNumber>=m&&(b=void 0),!_&&!b)break;const y=_?_.lineNumber-h:Number.MAX_VALUE,x=b?b.lineNumber-f:Number.MAX_VALUE;yx?(l.dequeue(),_={lineNumber:b.lineNumber-f+h,heightInPx:0}):(a.dequeue(),l.dequeue()),d.push({originalRange:Qn.ofLength(_.lineNumber,1),modifiedRange:Qn.ofLength(b.lineNumber,1),originalHeightInPx:c+_.heightInPx,modifiedHeightInPx:u+b.heightInPx,diff:void 0})}}for(const g of n){let x=function(k,D){var R,E,A,M;if(kj.lineNumberj+z.heightInPx,0))!==null&&E!==void 0?E:0,B=(M=(A=l.takeWhile(j=>j.lineNumberj+z.heightInPx,0))!==null&&M!==void 0?M:0;d.push({originalRange:N,modifiedRange:P,originalHeightInPx:N.length*c+O,modifiedHeightInPx:P.length*u+B,diff:g.lineRangeMapping}),y=k,b=D};const m=g.lineRangeMapping;p(m.original.startLineNumber,m.modified.startLineNumber);let _=!0,b=m.modified.startLineNumber,y=m.original.startLineNumber;if(o)for(const k of m.innerChanges||[])k.originalRange.startColumn>1&&k.modifiedRange.startColumn>1&&x(k.originalRange.startLineNumber,k.modifiedRange.startLineNumber),k.originalRange.endColumn1&&r.push({lineNumber:c,heightInPx:a*(u-1)})}for(const c of i.getWhitespaces()){if(e.has(c.id))continue;const u=c.afterLineNumber===0?0:o.convertViewPositionToModelPosition(new ve(c.afterLineNumber,1)).lineNumber;n.push({lineNumber:u,heightInPx:c.height})}return Jwt(n,r,c=>c.lineNumber,(c,u)=>({lineNumber:c.lineNumber,heightInPx:c.heightInPx+u.heightInPx}))}var FCt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},BCt=function(i,e){return function(n,r){e(n,r,i)}},fp;let bv=fp=class extends Le{constructor(e,n,r,s,o,a,l,c){super(),this._editors=e,this._rootElement=n,this._diffModel=r,this._rootWidth=s,this._rootHeight=o,this._modifiedEditorLayoutInfo=a,this._options=l,this._themeService=c;const u=oa(this._themeService.onDidColorThemeChange,()=>this._themeService.getColorTheme()),d=ni(p=>{const g=u.read(p),m=g.getColor(Qdt)||(g.getColor(Ydt)||EJ).transparent(2),_=g.getColor(Jdt)||(g.getColor(Zdt)||IJ).transparent(2);return{insertColor:m,removeColor:_}}),h=oa(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),f=oa(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollHeight());this._register(Xc((p,g)=>{if(!this._options.renderOverviewRuler.read(p))return;const m=Di(document.createElement("div"));m.setClassName("diffViewport"),m.setPosition("absolute");const _=Jo("div.diffOverview",{style:{position:"absolute",top:"0px",width:fp.ENTIRE_DIFF_OVERVIEW_WIDTH+"px"}}).root;g.add(S6(_,m.domNode)),g.add(As(_,ht.POINTER_DOWN,b=>{this._editors.modified.delegateVerticalScrollbarPointerDown(b)})),g.add(Be(_,ht.MOUSE_WHEEL,b=>{this._editors.modified.delegateScrollFromMouseWheelEvent(b)},{passive:!1})),g.add(S6(this._rootElement,_)),g.add(Xc((b,y)=>{const x=this._diffModel.read(b),k=this._editors.original.createOverviewRuler("original diffOverviewRuler");k&&(y.add(k),y.add(S6(_,k.getDomNode())));const D=this._editors.modified.createOverviewRuler("modified diffOverviewRuler");if(D&&(y.add(D),y.add(S6(_,D.getDomNode()))),!k||!D)return;const R=Ku("viewZoneChanged",this._editors.original.onDidChangeViewZones),E=Ku("viewZoneChanged",this._editors.modified.onDidChangeViewZones),A=Ku("hiddenRangesChanged",this._editors.original.onDidChangeHiddenAreas),M=Ku("hiddenRangesChanged",this._editors.modified.onDidChangeHiddenAreas);y.add(ur(N=>{var P;R.read(N),E.read(N),A.read(N),M.read(N);const O=d.read(N),B=(P=x==null?void 0:x.diff.read(N))===null||P===void 0?void 0:P.mappings;function j(Y,X,Q){const ie=Q._getViewModel();return ie?Y.filter(K=>K.length>0).map(K=>{const ee=ie.coordinatesConverter.convertModelPositionToViewPosition(new ve(K.startLineNumber,1)),le=ie.coordinatesConverter.convertModelPositionToViewPosition(new ve(K.endLineNumberExclusive,1)),ke=le.lineNumber-ee.lineNumber;return new KIe(ee.lineNumber,le.lineNumber,ke,X.toString())}):[]}const z=j((B||[]).map(Y=>Y.lineRangeMapping.original),O.removeColor,this._editors.original),H=j((B||[]).map(Y=>Y.lineRangeMapping.modified),O.insertColor,this._editors.modified);k==null||k.setZones(z),D==null||D.setZones(H)})),y.add(ur(N=>{const P=this._rootHeight.read(N),O=this._rootWidth.read(N),B=this._modifiedEditorLayoutInfo.read(N);if(B){const j=fp.ENTIRE_DIFF_OVERVIEW_WIDTH-2*fp.ONE_OVERVIEW_WIDTH;k.setLayout({top:0,height:P,right:j+fp.ONE_OVERVIEW_WIDTH,width:fp.ONE_OVERVIEW_WIDTH}),D.setLayout({top:0,height:P,right:0,width:fp.ONE_OVERVIEW_WIDTH});const z=h.read(N),H=f.read(N),Y=this._editors.modified.getOption(102),X=new HE(Y.verticalHasArrows?Y.arrowSize:0,Y.verticalScrollbarSize,0,B.height,H,z);m.setTop(X.getSliderPosition()),m.setHeight(X.getSliderSize())}else m.setTop(0),m.setHeight(0);_.style.height=P+"px",_.style.left=O-fp.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",m.setWidth(fp.ENTIRE_DIFF_OVERVIEW_WIDTH)}))}))}))}};bv.ONE_OVERVIEW_WIDTH=15;bv.ENTIRE_DIFF_OVERVIEW_WIDTH=fp.ONE_OVERVIEW_WIDTH*2;bv=fp=FCt([BCt(7,Do)],bv);ce("diffEditor.move.border",{dark:"#8b8b8b9c",light:"#8b8b8b9c",hcDark:"#8b8b8b9c",hcLight:"#8b8b8b9c"},L("diffEditor.move.border","The border color for text that got moved in the diff editor."));ce("diffEditor.moveActive.border",{dark:"#FFA500",light:"#FFA500",hcDark:"#FFA500",hcLight:"#FFA500"},L("diffEditor.moveActive.border","The active border color for text that got moved in the diff editor."));class uz extends Le{constructor(){super(...arguments),this._id=++uz.idCounter,this._onDidDispose=this._register(new _e),this.onDidDispose=this._onDidDispose.event}getId(){return this.getEditorType()+":v2:"+this._id}getVisibleColumnFromPosition(e){return this._targetEditor.getVisibleColumnFromPosition(e)}getPosition(){return this._targetEditor.getPosition()}setPosition(e,n="api"){this._targetEditor.setPosition(e,n)}revealLine(e,n=0){this._targetEditor.revealLine(e,n)}revealLineInCenter(e,n=0){this._targetEditor.revealLineInCenter(e,n)}revealLineInCenterIfOutsideViewport(e,n=0){this._targetEditor.revealLineInCenterIfOutsideViewport(e,n)}revealLineNearTop(e,n=0){this._targetEditor.revealLineNearTop(e,n)}revealPosition(e,n=0){this._targetEditor.revealPosition(e,n)}revealPositionInCenter(e,n=0){this._targetEditor.revealPositionInCenter(e,n)}revealPositionInCenterIfOutsideViewport(e,n=0){this._targetEditor.revealPositionInCenterIfOutsideViewport(e,n)}revealPositionNearTop(e,n=0){this._targetEditor.revealPositionNearTop(e,n)}getSelection(){return this._targetEditor.getSelection()}getSelections(){return this._targetEditor.getSelections()}setSelection(e,n="api"){this._targetEditor.setSelection(e,n)}setSelections(e,n="api"){this._targetEditor.setSelections(e,n)}revealLines(e,n,r=0){this._targetEditor.revealLines(e,n,r)}revealLinesInCenter(e,n,r=0){this._targetEditor.revealLinesInCenter(e,n,r)}revealLinesInCenterIfOutsideViewport(e,n,r=0){this._targetEditor.revealLinesInCenterIfOutsideViewport(e,n,r)}revealLinesNearTop(e,n,r=0){this._targetEditor.revealLinesNearTop(e,n,r)}revealRange(e,n=0,r=!1,s=!0){this._targetEditor.revealRange(e,n,r,s)}revealRangeInCenter(e,n=0){this._targetEditor.revealRangeInCenter(e,n)}revealRangeInCenterIfOutsideViewport(e,n=0){this._targetEditor.revealRangeInCenterIfOutsideViewport(e,n)}revealRangeNearTop(e,n=0){this._targetEditor.revealRangeNearTop(e,n)}revealRangeNearTopIfOutsideViewport(e,n=0){this._targetEditor.revealRangeNearTopIfOutsideViewport(e,n)}revealRangeAtTop(e,n=0){this._targetEditor.revealRangeAtTop(e,n)}getSupportedActions(){return this._targetEditor.getSupportedActions()}focus(){this._targetEditor.focus()}trigger(e,n,r){this._targetEditor.trigger(e,n,r)}createDecorationsCollection(e){return this._targetEditor.createDecorationsCollection(e)}changeDecorations(e){return this._targetEditor.changeDecorations(e)}}uz.idCounter=0;var jCt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},H_e=function(i,e){return function(n,r){e(n,r,i)}};let yte=class extends Le{constructor(e,n,r,s,o,a,l){super(),this.originalEditorElement=e,this.modifiedEditorElement=n,this._options=r,this._createInnerEditor=o,this._instantiationService=a,this._keybindingService=l,this._onDidContentSizeChange=this._register(new _e),this.original=this._register(this._createLeftHandSideEditor(r.editorOptions.get(),s.originalEditor||{})),this.modified=this._register(this._createRightHandSideEditor(r.editorOptions.get(),s.modifiedEditor||{})),this.modifiedModel=oa(this.modified.onDidChangeModel,()=>this.modified.getModel()),this._register(az({createEmptyChangeSummary:()=>({}),handleChange:(c,u)=>(c.didChange(r.editorOptions)&&Object.assign(u,c.change.changedOptions),!0)},(c,u)=>{r.editorOptions.read(c),this._options.renderSideBySide.read(c),this.modified.updateOptions(this._adjustOptionsForRightHandSide(c,u)),this.original.updateOptions(this._adjustOptionsForLeftHandSide(c,u))}))}_createLeftHandSideEditor(e,n){const r=this._adjustOptionsForLeftHandSide(void 0,e),s=this._constructInnerEditor(this._instantiationService,this.originalEditorElement,r,n);return s.setContextValue("isInDiffLeftEditor",!0),s}_createRightHandSideEditor(e,n){const r=this._adjustOptionsForRightHandSide(void 0,e),s=this._constructInnerEditor(this._instantiationService,this.modifiedEditorElement,r,n);return s.setContextValue("isInDiffRightEditor",!0),s}_constructInnerEditor(e,n,r,s){const o=this._createInnerEditor(e,n,r,s);return this._register(o.onDidContentSizeChange(a=>{const l=this.original.getContentWidth()+this.modified.getContentWidth()+bv.ENTIRE_DIFF_OVERVIEW_WIDTH,c=Math.max(this.modified.getContentHeight(),this.original.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:c,contentWidth:l,contentHeightChanged:a.contentHeightChanged,contentWidthChanged:a.contentWidthChanged})})),o}_adjustOptionsForLeftHandSide(e,n){const r=this._adjustOptionsForSubEditor(n);return this._options.renderSideBySide.get()?(r.unicodeHighlight=this._options.editorOptions.get().unicodeHighlight||{},r.wordWrapOverride1=this._options.diffWordWrap.get()):(r.wordWrapOverride1="off",r.wordWrapOverride2="off",r.stickyScroll={enabled:!1},r.unicodeHighlight={nonBasicASCII:!1,ambiguousCharacters:!1,invisibleCharacters:!1}),n.originalAriaLabel&&(r.ariaLabel=n.originalAriaLabel),r.ariaLabel=this._updateAriaLabel(r.ariaLabel),r.readOnly=!this._options.originalEditable.get(),r.dropIntoEditor={enabled:!r.readOnly},r.extraEditorClassName="original-in-monaco-diff-editor",r}_adjustOptionsForRightHandSide(e,n){const r=this._adjustOptionsForSubEditor(n);return n.modifiedAriaLabel&&(r.ariaLabel=n.modifiedAriaLabel),r.ariaLabel=this._updateAriaLabel(r.ariaLabel),r.wordWrapOverride1=this._options.diffWordWrap.get(),r.revealHorizontalRightPadding=rg.revealHorizontalRightPadding.defaultValue+bv.ENTIRE_DIFF_OVERVIEW_WIDTH,r.scrollbar.verticalHasArrows=!1,r.extraEditorClassName="modified-in-monaco-diff-editor",r}_adjustOptionsForSubEditor(e){const n=Object.assign(Object.assign({},e),{dimension:{height:0,width:0}});return n.inDiffEditor=!0,n.automaticLayout=!1,n.scrollbar=Object.assign({},n.scrollbar||{}),n.scrollbar.vertical="visible",n.folding=!1,n.codeLens=this._options.diffCodeLens.get(),n.fixedOverflowWidgets=!0,n.minimap=Object.assign({},n.minimap||{}),n.minimap.enabled=!1,this._options.hideUnchangedRegions.get()?n.stickyScroll={enabled:!1}:n.stickyScroll=this._options.editorOptions.get().stickyScroll,n}_updateAriaLabel(e){var n;e||(e="");const r=L("diff-aria-navigation-tip"," use {0} to open the accessibility help.",(n=this._keybindingService.lookupKeybinding("editor.action.accessibilityHelp"))===null||n===void 0?void 0:n.getAriaLabel());return this._options.accessibilityVerbose.get()?e+r:e?e.replaceAll(r,""):""}};yte=jCt([H_e(5,hn),H_e(6,sr)],yte);class WCt{get editorOptions(){return this._options}constructor(e,n){this.diffEditorWidth=n,this.couldShowInlineViewBecauseOfSize=ni(this,s=>this._options.read(s).renderSideBySide&&this.diffEditorWidth.read(s)<=this._options.read(s).renderSideBySideInlineBreakpoint),this.renderOverviewRuler=ni(this,s=>this._options.read(s).renderOverviewRuler),this.renderSideBySide=ni(this,s=>this._options.read(s).renderSideBySide&&!(this._options.read(s).useInlineViewWhenSpaceIsLimited&&this.couldShowInlineViewBecauseOfSize.read(s))),this.readOnly=ni(this,s=>this._options.read(s).readOnly),this.shouldRenderRevertArrows=ni(this,s=>!(!this._options.read(s).renderMarginRevertIcon||!this.renderSideBySide.read(s)||this.readOnly.read(s))),this.renderIndicators=ni(this,s=>this._options.read(s).renderIndicators),this.enableSplitViewResizing=ni(this,s=>this._options.read(s).enableSplitViewResizing),this.splitViewDefaultRatio=ni(this,s=>this._options.read(s).splitViewDefaultRatio),this.ignoreTrimWhitespace=ni(this,s=>this._options.read(s).ignoreTrimWhitespace),this.maxComputationTimeMs=ni(this,s=>this._options.read(s).maxComputationTime),this.showMoves=ni(this,s=>this._options.read(s).experimental.showMoves&&this.renderSideBySide.read(s)),this.isInEmbeddedEditor=ni(this,s=>this._options.read(s).isInEmbeddedEditor),this.diffWordWrap=ni(this,s=>this._options.read(s).diffWordWrap),this.originalEditable=ni(this,s=>this._options.read(s).originalEditable),this.diffCodeLens=ni(this,s=>this._options.read(s).diffCodeLens),this.accessibilityVerbose=ni(this,s=>this._options.read(s).accessibilityVerbose),this.diffAlgorithm=ni(this,s=>this._options.read(s).diffAlgorithm),this.showEmptyDecorations=ni(this,s=>this._options.read(s).experimental.showEmptyDecorations),this.onlyShowAccessibleDiffViewer=ni(this,s=>this._options.read(s).onlyShowAccessibleDiffViewer),this.hideUnchangedRegions=ni(this,s=>this._options.read(s).hideUnchangedRegions.enabled),this.hideUnchangedRegionsRevealLineCount=ni(this,s=>this._options.read(s).hideUnchangedRegions.revealLineCount),this.hideUnchangedRegionsContextLineCount=ni(this,s=>this._options.read(s).hideUnchangedRegions.contextLineCount),this.hideUnchangedRegionsMinimumLineCount=ni(this,s=>this._options.read(s).hideUnchangedRegions.minimumLineCount);const r=Object.assign(Object.assign({},e),U_e(e,ll));this._options=vr(this,r)}updateOptions(e){const n=U_e(e,this._options.get()),r=Object.assign(Object.assign(Object.assign({},this._options.get()),e),n);this._options.set(r,void 0,{changedOptions:e})}}function U_e(i,e){var n,r,s,o,a,l,c,u;return{enableSplitViewResizing:Ut(i.enableSplitViewResizing,e.enableSplitViewResizing),splitViewDefaultRatio:qrt(i.splitViewDefaultRatio,.5,.1,.9),renderSideBySide:Ut(i.renderSideBySide,e.renderSideBySide),renderMarginRevertIcon:Ut(i.renderMarginRevertIcon,e.renderMarginRevertIcon),maxComputationTime:AC(i.maxComputationTime,e.maxComputationTime,0,1073741824),maxFileSize:AC(i.maxFileSize,e.maxFileSize,0,1073741824),ignoreTrimWhitespace:Ut(i.ignoreTrimWhitespace,e.ignoreTrimWhitespace),renderIndicators:Ut(i.renderIndicators,e.renderIndicators),originalEditable:Ut(i.originalEditable,e.originalEditable),diffCodeLens:Ut(i.diffCodeLens,e.diffCodeLens),renderOverviewRuler:Ut(i.renderOverviewRuler,e.renderOverviewRuler),diffWordWrap:Rs(i.diffWordWrap,e.diffWordWrap,["off","on","inherit"]),diffAlgorithm:Rs(i.diffAlgorithm,e.diffAlgorithm,["legacy","advanced"],{smart:"legacy",experimental:"advanced"}),accessibilityVerbose:Ut(i.accessibilityVerbose,e.accessibilityVerbose),experimental:{showMoves:Ut((n=i.experimental)===null||n===void 0?void 0:n.showMoves,e.experimental.showMoves),showEmptyDecorations:Ut((r=i.experimental)===null||r===void 0?void 0:r.showEmptyDecorations,e.experimental.showEmptyDecorations)},hideUnchangedRegions:{enabled:Ut((o=(s=i.hideUnchangedRegions)===null||s===void 0?void 0:s.enabled)!==null&&o!==void 0?o:(a=i.experimental)===null||a===void 0?void 0:a.collapseUnchangedRegions,e.hideUnchangedRegions.enabled),contextLineCount:AC((l=i.hideUnchangedRegions)===null||l===void 0?void 0:l.contextLineCount,e.hideUnchangedRegions.contextLineCount,0,1073741824),minimumLineCount:AC((c=i.hideUnchangedRegions)===null||c===void 0?void 0:c.minimumLineCount,e.hideUnchangedRegions.minimumLineCount,0,1073741824),revealLineCount:AC((u=i.hideUnchangedRegions)===null||u===void 0?void 0:u.revealLineCount,e.hideUnchangedRegions.revealLineCount,0,1073741824)},isInEmbeddedEditor:Ut(i.isInEmbeddedEditor,e.isInEmbeddedEditor),onlyShowAccessibleDiffViewer:Ut(i.onlyShowAccessibleDiffViewer,e.onlyShowAccessibleDiffViewer),renderSideBySideInlineBreakpoint:AC(i.renderSideBySideInlineBreakpoint,e.renderSideBySideInlineBreakpoint,0,1073741824),useInlineViewWhenSpaceIsLimited:Ut(i.useInlineViewWhenSpaceIsLimited,e.useInlineViewWhenSpaceIsLimited)}}var $Ct=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},tA=function(i,e){return function(n,r){e(n,r,i)}};let yx=class extends uz{constructor(e,n,r,s,o,a,l,c){var u;super(),this._domElement=e,this._parentContextKeyService=s,this._parentInstantiationService=o,this._audioCueService=l,this._editorProgressService=c,this.elements=Jo("div.monaco-diff-editor.side-by-side",{style:{position:"relative",height:"100%"}},[Jo("div.noModificationsOverlay@overlay",{style:{position:"absolute",height:"100%",visibility:"hidden"}},[tt("span",{},"No Changes")]),Jo("div.editor.original@original",{style:{position:"absolute",height:"100%"}}),Jo("div.editor.modified@modified",{style:{position:"absolute",height:"100%"}}),Jo("div.accessibleDiffViewer@accessibleDiffViewer",{style:{position:"absolute",height:"100%"}})]),this._diffModel=this._register(q7("diffModel",void 0)),this.onDidChangeModel=_t.fromObservableLight(this._diffModel),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._domElement)),this._instantiationService=this._parentInstantiationService.createChild(new O$([mn,this._contextKeyService])),this._boundarySashes=vr(this,void 0),this._accessibleDiffViewerShouldBeVisible=vr(this,!1),this._accessibleDiffViewerVisible=ni(this,m=>this._options.onlyShowAccessibleDiffViewer.read(m)?!0:this._accessibleDiffViewerShouldBeVisible.read(m)),this.movedBlocksLinesPart=vr(this,void 0),this._layoutInfo=ni(this,m=>{var _,b,y;const x=this._rootSizeObserver.width.read(m),k=this._rootSizeObserver.height.read(m),D=(_=this._sash.read(m))===null||_===void 0?void 0:_.sashLeft.read(m),R=D??Math.max(5,this._editors.original.getLayoutInfo().decorationsLeft),E=x-R-(this._options.renderOverviewRuler.read(m)?bv.ENTIRE_DIFF_OVERVIEW_WIDTH:0),A=(y=(b=this.movedBlocksLinesPart.read(m))===null||b===void 0?void 0:b.width.read(m))!==null&&y!==void 0?y:0,M=R-A;return this.elements.original.style.width=M+"px",this.elements.original.style.left="0px",this.elements.modified.style.width=E+"px",this.elements.modified.style.left=R+"px",this._editors.original.layout({width:M,height:k}),this._editors.modified.layout({width:E,height:k}),{modifiedEditor:this._editors.modified.getLayoutInfo(),originalEditor:this._editors.original.getLayoutInfo()}}),this._diffValue=this._diffModel.map((m,_)=>m==null?void 0:m.diff.read(_)),this.onDidUpdateDiff=_t.fromObservableLight(this._diffValue),a.willCreateDiffEditor(),this._contextKeyService.createKey("isInDiffEditor",!0),this._domElement.appendChild(this.elements.root),this._register(gn(()=>this._domElement.removeChild(this.elements.root))),this._rootSizeObserver=this._register(new eCt(this.elements.root,n.dimension)),this._rootSizeObserver.setAutomaticLayout((u=n.automaticLayout)!==null&&u!==void 0?u:!1),this._options=new WCt(n,this._rootSizeObserver.width),this._contextKeyService.createKey(oe.isEmbeddedDiffEditor.key,!1);const d=oe.isEmbeddedDiffEditor.bindTo(this._contextKeyService);this._register(ur(m=>{d.set(this._options.isInEmbeddedEditor.read(m))}));const h=oe.comparingMovedCode.bindTo(this._contextKeyService);this._register(ur(m=>{var _;h.set(!!(!((_=this._diffModel.read(m))===null||_===void 0)&&_.movedTextToCompare.read(m)))}));const f=oe.diffEditorRenderSideBySideInlineBreakpointReached.bindTo(this._contextKeyService);this._register(ur(m=>{f.set(this._options.couldShowInlineViewBecauseOfSize.read(m))})),this._editors=this._register(this._instantiationService.createInstance(yte,this.elements.original,this.elements.modified,this._options,r,(m,_,b,y)=>this._createInnerEditor(m,_,b,y))),this._sash=nO(this,(m,_)=>{const b=this._options.renderSideBySide.read(m);if(this.elements.root.classList.toggle("side-by-side",b),!b)return;const y=_.add(new wCt(this._options,this.elements.root,{height:this._rootSizeObserver.height,width:this._rootSizeObserver.width.map((x,k)=>x-(this._options.renderOverviewRuler.read(k)?bv.ENTIRE_DIFF_OVERVIEW_WIDTH:0))}));return _.add(ur(x=>{const k=this._boundarySashes.read(x);k&&y.setBoundarySashes(k)})),y}),this._register(rO(this._sash)),this._register(Xc((m,_)=>{this.unchangedRangesFeature=_.add(this._instantiationService.createInstance(ny(gte,m),this._editors,this._diffModel,this._options))})),this._register(Xc((m,_)=>{_.add(new(ny(yCt,m))(this._editors,this._diffModel,this._options))})),this._register(Xc((m,_)=>{_.add(this._instantiationService.createInstance(ny(bte,m),this._editors,this._diffModel,this._options,this,()=>this.unchangedRangesFeature.isUpdatingViewZones))})),this._register(Xc((m,_)=>{_.add(this._instantiationService.createInstance(ny(bv,m),this._editors,this.elements.root,this._diffModel,this._rootSizeObserver.width,this._rootSizeObserver.height,this._layoutInfo.map(b=>b.modifiedEditor),this._options))})),this._register(Xc((m,_)=>{this._accessibleDiffViewer=_.add(this._register(this._instantiationService.createInstance(ny(xy,m),this.elements.accessibleDiffViewer,this._accessibleDiffViewerVisible,(b,y)=>this._accessibleDiffViewerShouldBeVisible.set(b,y),this._options.onlyShowAccessibleDiffViewer.map(b=>!b),this._rootSizeObserver.width,this._rootSizeObserver.height,this._diffModel.map((b,y)=>{var x;return(x=b==null?void 0:b.diff.read(y))===null||x===void 0?void 0:x.mappings.map(k=>k.lineRangeMapping)}),this._editors)))}));const p=this._accessibleDiffViewerVisible.map(m=>m?"hidden":"visible");this._register(Gy(this.elements.modified,{visibility:p})),this._register(Gy(this.elements.original,{visibility:p})),this._createDiffEditorContributions(),a.addDiffEditor(this),this._register(rO(this._layoutInfo)),this._register(Xc((m,_)=>{this.movedBlocksLinesPart.set(_.add(new(ny(Xy,m))(this.elements.root,this._diffModel,this._layoutInfo.map(b=>b.originalEditor),this._layoutInfo.map(b=>b.modifiedEditor),this._editors)),void 0)})),this._register(Gy(this.elements.overlay,{width:this._layoutInfo.map((m,_)=>m.originalEditor.width+(this._options.renderSideBySide.read(_)?0:m.modifiedEditor.width)),visibility:ni(m=>{var _,b;return this._options.hideUnchangedRegions.read(m)&&((b=(_=this._diffModel.read(m))===null||_===void 0?void 0:_.diff.read(m))===null||b===void 0?void 0:b.mappings.length)===0?"visible":"hidden"})})),this._register(this._editors.modified.onMouseDown(m=>{var _,b;if(!m.event.rightButton&&m.target.position&&(!((_=m.target.element)===null||_===void 0)&&_.className.includes("arrow-revert-change"))){const y=m.target.position.lineNumber,x=m.target,k=this._diffModel.get();if(!k)return;const D=(b=k.diff.get())===null||b===void 0?void 0:b.mappings;if(!D)return;const R=D.find(E=>(x==null?void 0:x.detail.afterLineNumber)===E.lineRangeMapping.modified.startLineNumber-1||E.lineRangeMapping.modified.startLineNumber===y);if(!R)return;this.revert(R.lineRangeMapping),m.event.stopPropagation()}})),this._register(_t.runAndSubscribe(this._editors.modified.onDidChangeCursorPosition,m=>{var _,b;if((m==null?void 0:m.reason)===3){const y=(b=(_=this._diffModel.get())===null||_===void 0?void 0:_.diff.get())===null||b===void 0?void 0:b.mappings.find(x=>x.lineRangeMapping.modified.contains(m.position.lineNumber));y!=null&&y.lineRangeMapping.modified.isEmpty?this._audioCueService.playAudioCue(fi.diffLineDeleted,{source:"diffEditor.cursorPositionChanged"}):y!=null&&y.lineRangeMapping.original.isEmpty?this._audioCueService.playAudioCue(fi.diffLineInserted,{source:"diffEditor.cursorPositionChanged"}):y&&this._audioCueService.playAudioCue(fi.diffLineModified,{source:"diffEditor.cursorPositionChanged"})}}));const g=this._diffModel.map((m,_)=>m==null?void 0:m.isDiffUpToDate.read(_));this._register(Xc((m,_)=>{if(g.read(m)===!1){const b=this._editorProgressService.show(!0,1e3);_.add(gn(()=>b.done()))}}))}_createInnerEditor(e,n,r,s){return e.createInstance(qE,n,r,s)}_createDiffEditorContributions(){const e=j2.getDiffEditorContributions();for(const n of e)try{this._register(this._instantiationService.createInstance(n.ctor,this))}catch(r){Ln(r)}}get _targetEditor(){return this._editors.modified}getEditorType(){return I5.IDiffEditor}layout(e){this._rootSizeObserver.observe(e)}hasTextFocus(){return this._editors.original.hasTextFocus()||this._editors.modified.hasTextFocus()}saveViewState(){var e;const n=this._editors.original.saveViewState(),r=this._editors.modified.saveViewState();return{original:n,modified:r,modelState:(e=this._diffModel.get())===null||e===void 0?void 0:e.serializeState()}}restoreViewState(e){var n;if(e&&e.original&&e.modified){const r=e;this._editors.original.restoreViewState(r.original),this._editors.modified.restoreViewState(r.modified),r.modelState&&((n=this._diffModel.get())===null||n===void 0||n.restoreSerializedState(r.modelState))}}createViewModel(e){return this._instantiationService.createInstance(vte,e,this._options,this)}getModel(){var e,n;return(n=(e=this._diffModel.get())===null||e===void 0?void 0:e.model)!==null&&n!==void 0?n:null}setModel(e){!e&&this._diffModel.get()&&this._accessibleDiffViewer.close();const n=e?"model"in e?e:this.createViewModel(e):void 0;this._editors.original.setModel(n?n.model.original:null),this._editors.modified.setModel(n?n.model.modified:null),Pr(r=>{this._diffModel.set(n,r)})}updateOptions(e){this._options.updateOptions(e)}getContainerDomNode(){return this._domElement}getOriginalEditor(){return this._editors.original}getModifiedEditor(){return this._editors.modified}getLineChanges(){var e;const n=(e=this._diffModel.get())===null||e===void 0?void 0:e.diff.get();return n?HCt(n):null}revert(e){var n;const r=(n=this._diffModel.get())===null||n===void 0?void 0:n.model;if(!r)return;const s=e.innerChanges?e.innerChanges.map(o=>({range:o.modifiedRange,text:r.original.getValueInRange(o.originalRange)})):[{range:e.modified.toExclusiveRange(),text:r.original.getValueInRange(e.original.toExclusiveRange())}];this._editors.modified.executeEdits("diffEditor",s)}accessibleDiffViewerNext(){this._accessibleDiffViewer.next()}accessibleDiffViewerPrev(){this._accessibleDiffViewer.prev()}mapToOtherSide(){var e,n;const r=this._editors.modified.hasWidgetFocus(),s=r?this._editors.modified:this._editors.original,o=r?this._editors.original:this._editors.modified;let a;const l=s.getSelection();if(l){const c=(n=(e=this._diffModel.get())===null||e===void 0?void 0:e.diff.get())===null||n===void 0?void 0:n.mappings.map(u=>r?u.lineRangeMapping.flip():u.lineRangeMapping);if(c){const u=q_e(l.getStartPosition(),c),d=q_e(l.getEndPosition(),c);a=J.plusRange(u,d)}}return{destination:o,destinationSelection:a}}switchSide(){const{destination:e,destinationSelection:n}=this.mapToOtherSide();e.focus(),n&&e.setSelection(n)}exitCompareMove(){const e=this._diffModel.get();e&&e.movedTextToCompare.set(void 0,void 0)}collapseAllUnchangedRegions(){var e;const n=(e=this._diffModel.get())===null||e===void 0?void 0:e.unchangedRegions.get();n&&Pr(r=>{for(const s of n)s.collapseAll(r)})}showAllUnchangedRegions(){var e;const n=(e=this._diffModel.get())===null||e===void 0?void 0:e.unchangedRegions.get();n&&Pr(r=>{for(const s of n)s.showAll(r)})}};yx=$Ct([tA(3,mn),tA(4,hn),tA(5,Si),tA(6,X5),tA(7,Z1)],yx);function q_e(i,e){const n=G9(e,s=>s.original.startLineNumber<=i.lineNumber);if(!n)return J.fromPositions(i);if(n.original.endLineNumberExclusive<=i.lineNumber){const s=i.lineNumber-n.original.endLineNumberExclusive+n.modified.endLineNumberExclusive;return J.fromPositions(new ve(s,i.column))}if(!n.innerChanges)return J.fromPositions(new ve(n.modified.startLineNumber,1));const r=G9(n.innerChanges,s=>s.originalRange.getStartPosition().isBeforeOrEqual(i));if(!r){const s=i.lineNumber-n.original.startLineNumber+n.modified.startLineNumber;return J.fromPositions(new ve(s,i.column))}if(r.originalRange.containsPosition(i))return r.modifiedRange;{const s=zCt(r.originalRange.getEndPosition(),i);return J.fromPositions(VCt(r.modifiedRange.getEndPosition(),s))}}function zCt(i,e){return i.lineNumber===e.lineNumber?new NP(0,e.column-i.column):new NP(e.lineNumber-i.lineNumber,e.column-1)}function VCt(i,e){return e.lineCount===0?new ve(i.lineNumber,i.column+e.columnCount):new ve(i.lineNumber+e.lineCount,e.columnCount+1)}function HCt(i){return i.mappings.map(e=>{const n=e.lineRangeMapping;let r,s,o,a,l=n.innerChanges;return n.original.isEmpty?(r=n.original.startLineNumber-1,s=0,l=void 0):(r=n.original.startLineNumber,s=n.original.endLineNumberExclusive-1),n.modified.isEmpty?(o=n.modified.startLineNumber-1,a=0,l=void 0):(o=n.modified.startLineNumber,a=n.modified.endLineNumberExclusive-1),{originalStartLineNumber:r,originalEndLineNumber:s,modifiedStartLineNumber:o,modifiedEndLineNumber:a,charChanges:l==null?void 0:l.map(c=>({originalStartLineNumber:c.originalRange.startLineNumber,originalStartColumn:c.originalRange.startColumn,originalEndLineNumber:c.originalRange.endLineNumber,originalEndColumn:c.originalRange.endColumn,modifiedStartLineNumber:c.modifiedRange.startLineNumber,modifiedStartColumn:c.modifiedRange.startColumn,modifiedEndLineNumber:c.modifiedRange.endLineNumber,modifiedEndColumn:c.modifiedRange.endColumn}))}})}var $ae=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Rr=function(i,e){return function(n,r){e(n,r,i)}};let UCt=0,K_e=!1;function qCt(i){if(!i){if(K_e)return;K_e=!0}Gut(i||document.body)}let J7=class extends qE{constructor(e,n,r,s,o,a,l,c,u,d,h,f){const p=Object.assign({},n);p.ariaLabel=p.ariaLabel||x7.editorViewAccessibleLabel,p.ariaLabel=p.ariaLabel+";"+x7.accessibilityHelpMessage,super(e,p,{},r,s,o,a,c,u,d,h,f),l instanceof eI?this._standaloneKeybindingService=l:this._standaloneKeybindingService=null,qCt(p.ariaContainerElement)}addCommand(e,n,r){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;const s="DYNAMIC_"+ ++UCt,o=ze.deserialize(r);return this._standaloneKeybindingService.addDynamicKeybinding(s,e,n,o),s}createContextKey(e,n){return this._contextKeyService.createKey(e,n)}addAction(e){if(typeof e.id!="string"||typeof e.label!="string"||typeof e.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),Le.None;const n=e.id,r=e.label,s=ze.and(ze.equals("editorId",this.getId()),ze.deserialize(e.precondition)),o=e.keybindings,a=ze.and(s,ze.deserialize(e.keybindingContext)),l=e.contextMenuGroupId||null,c=e.contextMenuOrder||0,u=(p,...g)=>Promise.resolve(e.run(this,...g)),d=new Xe,h=this.getId()+":"+n;if(d.add(si.registerCommand(h,u)),l){const p={command:{id:h,title:r},when:s,group:l,order:c};d.add(sa.appendMenuItem(se.EditorContext,p))}if(Array.isArray(o))for(const p of o)d.add(this._standaloneKeybindingService.addDynamicKeybinding(h,p,u,a));const f=new GIe(h,r,r,s,(...p)=>Promise.resolve(e.run(this,...p)),this._contextKeyService);return this._actions.set(n,f),d.add(gn(()=>{this._actions.delete(n)})),d}_triggerCommand(e,n){if(this._codeEditorService instanceof m7)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(e,n)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(e,n)}};J7=$ae([Rr(2,hn),Rr(3,Si),Rr(4,us),Rr(5,mn),Rr(6,sr),Rr(7,Do),Rr(8,Ps),Rr(9,zv),Rr(10,dr),Rr(11,Et)],J7);let wte=class extends J7{constructor(e,n,r,s,o,a,l,c,u,d,h,f,p,g,m){const _=Object.assign({},n);U7(d,_,!1);const b=c.registerEditorContainer(e);typeof _.theme=="string"&&c.setTheme(_.theme),typeof _.autoDetectHighContrast<"u"&&c.setAutoDetectHighContrast(!!_.autoDetectHighContrast);const y=_.model;delete _.model,super(e,_,r,s,o,a,l,c,u,h,g,m),this._configurationService=d,this._standaloneThemeService=c,this._register(b);let x;if(typeof y>"u"){const k=p.getLanguageIdByMimeType(_.language)||_.language||ad;x=nAe(f,p,_.value||"",k,void 0),this._ownsModel=!0}else x=y,this._ownsModel=!1;if(this._attachModel(x),x){const k={oldModelUrl:null,newModelUrl:x.uri};this._onDidChangeModel.fire(k)}}dispose(){super.dispose()}updateOptions(e){U7(this._configurationService,e,!1),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_postDetachModelCleanup(e){super._postDetachModelCleanup(e),e&&this._ownsModel&&(e.dispose(),this._ownsModel=!1)}};wte=$ae([Rr(2,hn),Rr(3,Si),Rr(4,us),Rr(5,mn),Rr(6,sr),Rr(7,bd),Rr(8,Ps),Rr(9,ei),Rr(10,zv),Rr(11,Fr),Rr(12,Ar),Rr(13,dr),Rr(14,Et)],wte);let Cte=class extends yx{constructor(e,n,r,s,o,a,l,c,u,d,h,f){const p=Object.assign({},n);U7(c,p,!0);const g=a.registerEditorContainer(e);typeof p.theme=="string"&&a.setTheme(p.theme),typeof p.autoDetectHighContrast<"u"&&a.setAutoDetectHighContrast(!!p.autoDetectHighContrast),super(e,p,{},s,r,o,f,d),this._configurationService=c,this._standaloneThemeService=a,this._register(g)}dispose(){super.dispose()}updateOptions(e){U7(this._configurationService,e,!0),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_createInnerEditor(e,n,r){return e.createInstance(J7,n,r)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(e,n,r){return this.getModifiedEditor().addCommand(e,n,r)}createContextKey(e,n){return this.getModifiedEditor().createContextKey(e,n)}addAction(e){return this.getModifiedEditor().addAction(e)}};Cte=$ae([Rr(2,hn),Rr(3,mn),Rr(4,Si),Rr(5,bd),Rr(6,Ps),Rr(7,ei),Rr(8,Ff),Rr(9,Z1),Rr(10,qv),Rr(11,X5)],Cte);function nAe(i,e,n,r,s){if(n=n||"",!r){const o=n.indexOf(` `);let a=n;return o!==-1&&(a=n.substring(0,o)),G_e(i,n,e.createByFilepathOrFirstLine(s||null,a),s)}return G_e(i,n,e.createById(r),s)}function G_e(i,e,n,r){return i.createModel(e,n,r)}var iAe=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function KCt(i,e,n){return un.initialize(n||{}).createInstance(wte,i,e)}function GCt(i){return un.get(Si).onCodeEditorAdd(n=>{i(n)})}function XCt(i){return un.get(Si).onDiffEditorAdd(n=>{i(n)})}function YCt(){return un.get(Si).listCodeEditors()}function ZCt(){return un.get(Si).listDiffEditors()}function QCt(i,e,n){return un.initialize(n||{}).createInstance(Cte,i,e)}function JCt(i){if(typeof i.id!="string"||typeof i.run!="function")throw new Error("Invalid command descriptor, `id` and `run` are required properties!");return si.registerCommand(i.id,i.run)}function eSt(i){if(typeof i.id!="string"||typeof i.label!="string"||typeof i.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");const e=ze.deserialize(i.precondition),n=(s,...o)=>Ho.runEditorCommand(s,o,e,(a,l,c)=>Promise.resolve(i.run(l,...c))),r=new Xe;if(r.add(si.registerCommand(i.id,n)),i.contextMenuGroupId){const s={command:{id:i.id,title:i.label},when:e,group:i.contextMenuGroupId,order:i.contextMenuOrder||0};r.add(sa.appendMenuItem(se.EditorContext,s))}if(Array.isArray(i.keybindings)){const s=un.get(sr);if(!(s instanceof eI))console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService");else{const o=ze.and(e,ze.deserialize(i.keybindingContext));r.add(s.addDynamicKeybindings(i.keybindings.map(a=>({keybinding:a,command:i.id,when:o}))))}}return r}function tSt(i){return rAe([i])}function rAe(i){const e=un.get(sr);return e instanceof eI?e.addDynamicKeybindings(i.map(n=>({keybinding:n.keybinding,command:n.command,commandArgs:n.commandArgs,when:ze.deserialize(n.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),Le.None)}function nSt(i,e,n){const r=un.get(Ar),s=r.getLanguageIdByMimeType(e)||e;return nAe(un.get(Fr),r,i,s,n)}function iSt(i,e){const n=un.get(Ar),r=n.getLanguageIdByMimeType(e)||e||ad;i.setLanguage(n.createById(r))}function rSt(i,e,n){i&&un.get(h_).changeOne(e,i.uri,n)}function sSt(i){un.get(h_).changeAll(i,[])}function oSt(i){return un.get(h_).read(i)}function aSt(i){return un.get(h_).onMarkerChanged(i)}function lSt(i){return un.get(Fr).getModel(i)}function cSt(){return un.get(Fr).getModels()}function uSt(i){return un.get(Fr).onModelAdded(i)}function dSt(i){return un.get(Fr).onModelRemoved(i)}function hSt(i){return un.get(Fr).onModelLanguageChanged(n=>{i({model:n.model,oldLanguage:n.oldLanguageId})})}function fSt(i){return wut(un.get(Fr),un.get(dr),i)}function pSt(i,e){const n=un.get(Ar),r=un.get(bd);return doe.colorizeElement(r,n,i,e).then(()=>{r.registerEditorContainer(i)})}function gSt(i,e,n){const r=un.get(Ar);return un.get(bd).registerEditorContainer(document.body),doe.colorize(r,i,e,n)}function mSt(i,e,n=4){return un.get(bd).registerEditorContainer(document.body),doe.colorizeModelLine(i,e,n)}function _St(i){const e=Zr.get(i);return e||{getInitialState:()=>FE,tokenize:(n,r,s)=>loe(i,s)}}function vSt(i,e){Zr.getOrCreate(e);const n=_St(e),r=Km(i),s=[];let o=n.getInitialState();for(let a=0,l=r.length;aiAe(this,void 0,void 0,function*(){var o;if(!r)return null;const a=(o=n.options)===null||o===void 0?void 0:o.selection;let l;return a&&typeof a.endLineNumber=="number"&&typeof a.endColumn=="number"?l=a:a&&(l={lineNumber:a.startLineNumber,column:a.startColumn}),(yield i.openCodeEditor(r,n.resource,l))?r:null}))}function kSt(){return{create:KCt,getEditors:YCt,getDiffEditors:ZCt,onDidCreateEditor:GCt,onDidCreateDiffEditor:XCt,createDiffEditor:QCt,addCommand:JCt,addEditorAction:eSt,addKeybindingRule:tSt,addKeybindingRules:rAe,createModel:nSt,setModelLanguage:iSt,setModelMarkers:rSt,getModelMarkers:oSt,removeAllMarkers:sSt,onDidChangeMarkers:aSt,getModels:cSt,getModel:lSt,onDidCreateModel:uSt,onWillDisposeModel:dSt,onDidChangeModelLanguage:hSt,createWebWorker:fSt,colorizeElement:pSt,colorize:gSt,colorizeModelLine:mSt,tokenize:vSt,defineTheme:bSt,setTheme:ySt,remeasureFonts:wSt,registerCommand:CSt,registerLinkOpener:SSt,registerEditorOpener:xSt,AccessibilitySupport:pQ,ContentWidgetPositionPreference:yQ,CursorChangeReason:wQ,DefaultEndOfLine:CQ,EditorAutoIndentStrategy:xQ,EditorOption:kQ,EndOfLinePreference:LQ,EndOfLineSequence:DQ,MinimapPosition:OQ,MouseTargetType:FQ,OverlayWidgetPositionPreference:BQ,OverviewRulerLane:jQ,GlyphMarginLane:EQ,RenderLineNumbersType:$Q,RenderMinimap:zQ,ScrollbarVisibility:HQ,ScrollType:VQ,TextEditorCursorBlinkingStyle:XQ,TextEditorCursorStyle:YQ,TrackedRangeStickiness:ZQ,WrappingIndent:QQ,InjectedTextCursorStops:TQ,PositionAffinity:WQ,ConfigurationChangedEvent:I2e,BareFontInfo:NS,FontInfo:tJ,TextModelResolvedOptions:c8,FindMatch:pP,ApplyUpdateResult:QN,EditorZoom:eh,EditorType:I5,EditorOptions:rg}}function LSt(i,e){if(!e||!Array.isArray(e))return!1;for(const n of e)if(!i(n))return!1;return!0}function x6(i,e){return typeof i=="boolean"?i:e}function X_e(i,e){return typeof i=="string"?i:e}function DSt(i){const e={};for(const n of i)e[n]=!0;return e}function Y_e(i,e=!1){e&&(i=i.map(function(r){return r.toLowerCase()}));const n=DSt(i);return e?function(r){return n[r.toLowerCase()]!==void 0&&n.hasOwnProperty(r.toLowerCase())}:function(r){return n[r]!==void 0&&n.hasOwnProperty(r)}}function Ste(i,e){e=e.replace(/@@/g,"");let n=0,r;do r=!1,e=e.replace(/@(\w+)/g,function(o,a){r=!0;let l="";if(typeof i[a]=="string")l=i[a];else if(i[a]&&i[a]instanceof RegExp)l=i[a].source;else throw i[a]===void 0?Lr(i,"language definition does not contain attribute '"+a+"', used at: "+e):Lr(i,"attribute reference '"+a+"' must be a string, used at: "+e);return WD(l)?"":"(?:"+l+")"}),n++;while(r&&n<5);e=e.replace(/\x01/g,"@");const s=(i.ignoreCase?"i":"")+(i.unicode?"u":"");return new RegExp(e,s)}function ESt(i,e,n,r){if(r<0)return i;if(r=100){r=r-100;const s=n.split(".");if(s.unshift(n),r=0&&(r.tokenSubst=!0),typeof n.bracket=="string")if(n.bracket==="@open")r.bracket=1;else if(n.bracket==="@close")r.bracket=-1;else throw Lr(i,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+e);if(n.next){if(typeof n.next!="string")throw Lr(i,"the next state must be a string value in rule: "+e);{let s=n.next;if(!/^(@pop|@push|@popall)$/.test(s)&&(s[0]==="@"&&(s=s.substr(1)),s.indexOf("$")<0&&!Wut(i,oy(i,s,"",[],""))))throw Lr(i,"the next state '"+n.next+"' is not defined in rule: "+e);r.next=s}}return typeof n.goBack=="number"&&(r.goBack=n.goBack),typeof n.switchTo=="string"&&(r.switchTo=n.switchTo),typeof n.log=="string"&&(r.log=n.log),typeof n.nextEmbedded=="string"&&(r.nextEmbedded=n.nextEmbedded,i.usesEmbedded=!0),r}}else if(Array.isArray(n)){const r=[];for(let s=0,o=n.length;s0&&r[0]==="^",this.name=this.name+": "+r,this.regex=Ste(e,"^(?:"+(this.matchOnlyAtLineStart?r.substr(1):r)+")")}setAction(e,n){this.action=xte(e,this.name,n)}}function sAe(i,e){if(!e||typeof e!="object")throw new Error("Monarch: expecting a language definition object");const n={};n.languageId=i,n.includeLF=x6(e.includeLF,!1),n.noThrow=!1,n.maxStack=100,n.start=typeof e.start=="string"?e.start:null,n.ignoreCase=x6(e.ignoreCase,!1),n.unicode=x6(e.unicode,!1),n.tokenPostfix=X_e(e.tokenPostfix,"."+n.languageId),n.defaultToken=X_e(e.defaultToken,"source"),n.usesEmbedded=!1;const r=e;r.languageId=i,r.includeLF=n.includeLF,r.ignoreCase=n.ignoreCase,r.unicode=n.unicode,r.noThrow=n.noThrow,r.usesEmbedded=n.usesEmbedded,r.stateNames=e.tokenizer,r.defaultToken=n.defaultToken;function s(a,l,c){for(const u of c){let d=u.include;if(d){if(typeof d!="string")throw Lr(n,"an 'include' attribute must be a string at: "+a);if(d[0]==="@"&&(d=d.substr(1)),!e.tokenizer[d])throw Lr(n,"include target '"+d+"' is not defined at: "+a);s(a+"."+d,l,e.tokenizer[d])}else{const h=new TSt(a);if(Array.isArray(u)&&u.length>=1&&u.length<=3)if(h.setRegex(r,u[0]),u.length>=3)if(typeof u[1]=="string")h.setAction(r,{token:u[1],next:u[2]});else if(typeof u[1]=="object"){const f=u[1];f.next=u[2],h.setAction(r,f)}else throw Lr(n,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+a);else h.setAction(r,u[1]);else{if(!u.regex)throw Lr(n,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+a);u.name&&typeof u.name=="string"&&(h.name=u.name),u.matchOnlyAtStart&&(h.matchOnlyAtLineStart=x6(u.matchOnlyAtLineStart,!1)),h.setRegex(r,u.regex),h.setAction(r,u.action)}l.push(h)}}}if(!e.tokenizer||typeof e.tokenizer!="object")throw Lr(n,"a language definition must define the 'tokenizer' attribute as an object");n.tokenizer=[];for(const a in e.tokenizer)if(e.tokenizer.hasOwnProperty(a)){n.start||(n.start=a);const l=e.tokenizer[a];n.tokenizer[a]=new Array,s("tokenizer."+a,n.tokenizer[a],l)}if(n.usesEmbedded=r.usesEmbedded,e.brackets){if(!Array.isArray(e.brackets))throw Lr(n,"the 'brackets' attribute must be defined as an array")}else e.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];const o=[];for(const a of e.brackets){let l=a;if(l&&Array.isArray(l)&&l.length===3&&(l={token:l[2],open:l[0],close:l[1]}),l.open===l.close)throw Lr(n,"open and close brackets in a 'brackets' attribute must be different: "+l.open+` hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof l.open=="string"&&typeof l.token=="string"&&typeof l.close=="string")o.push({token:l.token+n.tokenPostfix,open:zy(n,l.open),close:zy(n,l.close)});else throw Lr(n,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return n.brackets=o,n.noThrow=!0,n}var RSt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function ASt(i){PE.registerLanguage(i)}function NSt(){let i=[];return i=i.concat(PE.getLanguages()),i}function MSt(i){return un.get(Ar).languageIdCodec.encodeLanguageId(i)}function PSt(i,e){return un.withServices(()=>{const r=un.get(Ar).onDidRequestRichLanguageFeatures(s=>{s===i&&(r.dispose(),e())});return r})}function OSt(i,e){return un.withServices(()=>{const r=un.get(Ar).onDidRequestBasicLanguageFeatures(s=>{s===i&&(r.dispose(),e())});return r})}function FSt(i,e){if(!un.get(Ar).isRegisteredLanguageId(i))throw new Error(`Cannot set configuration for unknown language ${i}`);return un.get(dr).register(i,e,100)}class BSt{constructor(e,n){this._languageId=e,this._actual=n}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,n,r){if(typeof this._actual.tokenize=="function")return sO.adaptTokenize(this._languageId,this._actual,e,r);throw new Error("Not supported!")}tokenizeEncoded(e,n,r){const s=this._actual.tokenizeEncoded(e,r);return new ZW(s.tokens,s.endState)}}class sO{constructor(e,n,r,s){this._languageId=e,this._actual=n,this._languageService=r,this._standaloneThemeService=s}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,n){const r=[];let s=0;for(let o=0,a=e.length;o0&&o[a-1]===f)continue;let p=h.startIndex;u===0?p=0:pRSt(this,void 0,void 0,function*(){const r=yield Promise.resolve(e.create());return r?jSt(r)?aAe(i,r):new wP(un.get(Ar),un.get(bd),i,sAe(i,r),un.get(ei)):null}));return Zr.registerFactory(i,n)}function zSt(i,e){if(!un.get(Ar).isRegisteredLanguageId(i))throw new Error(`Cannot set tokens provider for unknown language ${i}`);return oAe(e)?zae(i,{create:()=>e}):Zr.register(i,aAe(i,e))}function VSt(i,e){const n=r=>new wP(un.get(Ar),un.get(bd),i,sAe(i,r),un.get(ei));return oAe(e)?zae(i,{create:()=>e}):Zr.register(i,n(e))}function HSt(i,e){return un.get(Et).referenceProvider.register(i,e)}function USt(i,e){return un.get(Et).renameProvider.register(i,e)}function qSt(i,e){return un.get(Et).signatureHelpProvider.register(i,e)}function KSt(i,e){return un.get(Et).hoverProvider.register(i,{provideHover:(r,s,o)=>{const a=r.getWordAtPosition(s);return Promise.resolve(e.provideHover(r,s,o)).then(l=>{if(l)return!l.range&&a&&(l.range=new J(s.lineNumber,a.startColumn,s.lineNumber,a.endColumn)),l.range||(l.range=new J(s.lineNumber,s.column,s.lineNumber,s.column)),l})}})}function GSt(i,e){return un.get(Et).documentSymbolProvider.register(i,e)}function XSt(i,e){return un.get(Et).documentHighlightProvider.register(i,e)}function YSt(i,e){return un.get(Et).linkedEditingRangeProvider.register(i,e)}function ZSt(i,e){return un.get(Et).definitionProvider.register(i,e)}function QSt(i,e){return un.get(Et).implementationProvider.register(i,e)}function JSt(i,e){return un.get(Et).typeDefinitionProvider.register(i,e)}function ext(i,e){return un.get(Et).codeLensProvider.register(i,e)}function txt(i,e,n){return un.get(Et).codeActionProvider.register(i,{providedCodeActionKinds:n==null?void 0:n.providedCodeActionKinds,documentation:n==null?void 0:n.documentation,provideCodeActions:(s,o,a,l)=>{const u=un.get(h_).read({resource:s.uri}).filter(d=>J.areIntersectingOrTouching(d,o));return e.provideCodeActions(s,o,{markers:u,only:a.only,trigger:a.trigger},l)},resolveCodeAction:e.resolveCodeAction})}function nxt(i,e){return un.get(Et).documentFormattingEditProvider.register(i,e)}function ixt(i,e){return un.get(Et).documentRangeFormattingEditProvider.register(i,e)}function rxt(i,e){return un.get(Et).onTypeFormattingEditProvider.register(i,e)}function sxt(i,e){return un.get(Et).linkProvider.register(i,e)}function oxt(i,e){return un.get(Et).completionProvider.register(i,e)}function axt(i,e){return un.get(Et).colorProvider.register(i,e)}function lxt(i,e){return un.get(Et).foldingRangeProvider.register(i,e)}function cxt(i,e){return un.get(Et).declarationProvider.register(i,e)}function uxt(i,e){return un.get(Et).selectionRangeProvider.register(i,e)}function dxt(i,e){return un.get(Et).documentSemanticTokensProvider.register(i,e)}function hxt(i,e){return un.get(Et).documentRangeSemanticTokensProvider.register(i,e)}function fxt(i,e){return un.get(Et).inlineCompletionsProvider.register(i,e)}function pxt(i,e){return un.get(Et).inlayHintsProvider.register(i,e)}function gxt(){return{register:ASt,getLanguages:NSt,onLanguage:PSt,onLanguageEncountered:OSt,getEncodedLanguageId:MSt,setLanguageConfiguration:FSt,setColorMap:$St,registerTokensProviderFactory:zae,setTokensProvider:zSt,setMonarchTokensProvider:VSt,registerReferenceProvider:HSt,registerRenameProvider:USt,registerCompletionItemProvider:oxt,registerSignatureHelpProvider:qSt,registerHoverProvider:KSt,registerDocumentSymbolProvider:GSt,registerDocumentHighlightProvider:XSt,registerLinkedEditingRangeProvider:YSt,registerDefinitionProvider:ZSt,registerImplementationProvider:QSt,registerTypeDefinitionProvider:JSt,registerCodeLensProvider:ext,registerCodeActionProvider:txt,registerDocumentFormattingEditProvider:nxt,registerDocumentRangeFormattingEditProvider:ixt,registerOnTypeFormattingEditProvider:rxt,registerLinkProvider:sxt,registerColorProvider:axt,registerFoldingRangeProvider:lxt,registerDeclarationProvider:cxt,registerSelectionRangeProvider:uxt,registerDocumentSemanticTokensProvider:dxt,registerDocumentRangeSemanticTokensProvider:hxt,registerInlineCompletionsProvider:fxt,registerInlayHintsProvider:pxt,DocumentHighlightKind:SQ,CompletionItemKind:_Q,CompletionItemTag:vQ,CompletionItemInsertTextRule:mQ,SymbolKind:KQ,SymbolTag:GQ,IndentAction:IQ,CompletionTriggerKind:bQ,SignatureHelpTriggerKind:qQ,InlayHintKind:RQ,InlineCompletionTriggerKind:AQ,CodeActionTriggerType:gQ,FoldingRangeKind:Wl,SelectedSuggestionInfo:U2e}}const Vae=qn("IEditorCancelService"),lAe=new yt("cancellableOperation",!1,L("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));oi(Vae,class{constructor(){this._tokens=new WeakMap}add(i,e){let n=this._tokens.get(i);n||(n=i.invokeWithinContext(s=>{const o=lAe.bindTo(s.get(mn)),a=new jl;return{key:o,tokens:a}}),this._tokens.set(i,n));let r;return n.key.set(!0),r=n.tokens.push(e),()=>{r&&(r(),n.key.set(!n.tokens.isEmpty()),r=void 0)}}cancel(i){const e=this._tokens.get(i);if(!e)return;const n=e.tokens.pop();n&&(n.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);class mxt extends Ns{constructor(e,n){super(n),this.editor=e,this._unregister=e.invokeWithinContext(r=>r.get(Vae).add(e,this))}dispose(){this._unregister(),super.dispose()}}ct(new class extends Ho{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:lAe})}runEditorCommand(i,e){i.get(Vae).cancel(e)}});let cAe=class kte{constructor(e,n){if(this.flags=n,(this.flags&1)!==0){const r=e.getModel();this.modelVersionId=r?ox("{0}#{1}",r.uri.toString(),r.getVersionId()):null}else this.modelVersionId=null;(this.flags&4)!==0?this.position=e.getPosition():this.position=null,(this.flags&2)!==0?this.selection=e.getSelection():this.selection=null,(this.flags&8)!==0?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof kte))return!1;const n=e;return!(this.modelVersionId!==n.modelVersionId||this.scrollLeft!==n.scrollLeft||this.scrollTop!==n.scrollTop||!this.position&&n.position||this.position&&!n.position||this.position&&n.position&&!this.position.equals(n.position)||!this.selection&&n.selection||this.selection&&!n.selection||this.selection&&n.selection&&!this.selection.equalsRange(n.selection))}validate(e){return this._equals(new kte(e,this.flags))}};class x1 extends mxt{constructor(e,n,r,s){super(e,s),this._listener=new Xe,n&4&&this._listener.add(e.onDidChangeCursorPosition(o=>{(!r||!J.containsPosition(r,o.position))&&this.cancel()})),n&2&&this._listener.add(e.onDidChangeCursorSelection(o=>{(!r||!J.containsRange(r,o.selection))&&this.cancel()})),n&8&&this._listener.add(e.onDidScrollChange(o=>this.cancel())),n&1&&(this._listener.add(e.onDidChangeModel(o=>this.cancel())),this._listener.add(e.onDidChangeModelContent(o=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class Hae extends Ns{constructor(e,n){super(n),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}function n_(i){return i&&typeof i.getEditorType=="function"?i.getEditorType()===I5.ICodeEditor:!1}function uAe(i){return i&&typeof i.getEditorType=="function"?i.getEditorType()===I5.IDiffEditor:!1}function _xt(i){return!!i&&typeof i=="object"&&typeof i.onDidChangeActiveEditor=="function"}function dAe(i){return n_(i)?i:uAe(i)?i.getModifiedEditor():_xt(i)&&n_(i.activeCodeEditor)?i.activeCodeEditor:null}class tI{static _handleEolEdits(e,n){let r;const s=[];for(const o of n)typeof o.eol=="number"&&(r=o.eol),o.range&&typeof o.text=="string"&&s.push(o);return typeof r=="number"&&e.hasModel()&&e.getModel().pushEOL(r),s}static _isFullModelReplaceEdit(e,n){if(!e.hasModel())return!1;const r=e.getModel(),s=r.validateRange(n.range);return r.getFullModelRange().equalsRange(s)}static execute(e,n,r){r&&e.pushUndoStop();const s=Qp.capture(e),o=tI._handleEolEdits(e,n);o.length===1&&tI._isFullModelReplaceEdit(e,o[0])?e.executeEdits("formatEditsCommand",o.map(a=>Vr.replace(J.lift(a.range),a.text))):e.executeEdits("formatEditsCommand",o.map(a=>Vr.replaceMove(J.lift(a.range),a.text))),r&&e.pushUndoStop(),s.restoreRelativeVerticalPositionOfCursor(e)}}class Z_e{constructor(e){this.value=e,this._lower=e.toLowerCase()}static toKey(e){return typeof e=="string"?e.toLowerCase():e._lower}}class vxt{constructor(e){if(this._set=new Set,e)for(const n of e)this.add(n)}add(e){this._set.add(Z_e.toKey(e))}has(e){return this._set.has(Z_e.toKey(e))}}var Jp=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function Uae(i){if(i=i.filter(s=>s.range),!i.length)return;let{range:e}=i[0];for(let s=1;s0&&J.areIntersectingOrTouching(h[f-1],b)?h[f-1]=J.fromPositions(h[f-1].getStartPosition(),b.getEndPosition()):f=h.push(b);const p=b=>Jp(this,void 0,void 0,function*(){var y,x;c.trace("[format][provideDocumentRangeFormattingEdits] (request)",(y=e.extensionId)===null||y===void 0?void 0:y.value,b);const k=(yield e.provideDocumentRangeFormattingEdits(u,b,u.getFormattingOptions(),d.token))||[];return c.trace("[format][provideDocumentRangeFormattingEdits] (response)",(x=e.extensionId)===null||x===void 0?void 0:x.value,k),k}),g=(b,y)=>{if(!b.length||!y.length)return!1;const x=b.reduce((k,D)=>J.plusRange(k,D.range),b[0].range);if(!y.some(k=>J.intersectRanges(x,k.range)))return!1;for(const k of b)for(const D of y)if(J.intersectRanges(k.range,D.range))return!0;return!1},m=[],_=[];try{if(typeof e.provideDocumentRangesFormattingEdits=="function"){c.trace("[format][provideDocumentRangeFormattingEdits] (request)",(o=e.extensionId)===null||o===void 0?void 0:o.value,h);const b=(yield e.provideDocumentRangesFormattingEdits(u,h,u.getFormattingOptions(),d.token))||[];c.trace("[format][provideDocumentRangeFormattingEdits] (response)",(a=e.extensionId)===null||a===void 0?void 0:a.value,b),_.push(b)}else{for(const b of h){if(d.token.isCancellationRequested)return!0;_.push(yield p(b))}for(let b=0;b({text:x.text,range:J.lift(x.range),forceMoveMarkers:!0})),x=>{for(const{range:k}of x)if(J.areIntersectingOrTouching(k,y))return[new Ft(k.startLineNumber,k.startColumn,k.endLineNumber,k.endColumn)];return null})}return!0})}function yxt(i,e,n,r,s){return Jp(this,void 0,void 0,function*(){const o=i.get(hn),a=i.get(Et),l=n_(e)?e.getModel():e,c=hAe(a.documentFormattingEditProvider,a.documentRangeFormattingEditProvider,l),u=yield wx.select(c,l,n);u&&(r.report(u),yield o.invokeFunction(wxt,u,e,n,s))})}function wxt(i,e,n,r,s){return Jp(this,void 0,void 0,function*(){const o=i.get(Wf);let a,l;n_(n)?(a=n.getModel(),l=new x1(n,5,void 0,s)):(a=n,l=new Hae(n,s));let c;try{const u=yield e.provideDocumentFormattingEdits(a,a.getFormattingOptions(),l.token);if(c=yield o.computeMoreMinimalEdits(a.uri,u),l.token.isCancellationRequested)return!0}finally{l.dispose()}if(!c||c.length===0)return!1;if(n_(n))tI.execute(n,c,r!==2),r!==2&&(Uae(c),n.revealPositionInCenterIfOutsideViewport(n.getPosition(),1));else{const[{range:u}]=c,d=new Ft(u.startLineNumber,u.startColumn,u.endLineNumber,u.endColumn);a.pushEditOperations([d],c.map(h=>({text:h.text,range:J.lift(h.range),forceMoveMarkers:!0})),h=>{for(const{range:f}of h)if(J.areIntersectingOrTouching(f,d))return[new Ft(f.startLineNumber,f.startColumn,f.endLineNumber,f.endColumn)];return null})}return!0})}function Cxt(i,e,n,r,s,o){return Jp(this,void 0,void 0,function*(){const a=e.documentRangeFormattingEditProvider.ordered(n);for(const l of a){const c=yield Promise.resolve(l.provideDocumentRangeFormattingEdits(n,r,s,o)).catch(Us);if(Ka(c))return yield i.computeMoreMinimalEdits(n.uri,c)}})}function Sxt(i,e,n,r,s){return Jp(this,void 0,void 0,function*(){const o=hAe(e.documentFormattingEditProvider,e.documentRangeFormattingEditProvider,n);for(const a of o){const l=yield Promise.resolve(a.provideDocumentFormattingEdits(n,r,s)).catch(Us);if(Ka(l))return yield i.computeMoreMinimalEdits(n.uri,l)}})}function pAe(i,e,n,r,s,o,a){const l=e.onTypeFormattingEditProvider.ordered(n);return l.length===0||l[0].autoFormatTriggerCharacters.indexOf(s)<0?Promise.resolve(void 0):Promise.resolve(l[0].provideOnTypeFormattingEdits(n,r,s,o,a)).catch(Us).then(c=>i.computeMoreMinimalEdits(n.uri,c))}si.registerCommand("_executeFormatRangeProvider",function(i,...e){return Jp(this,void 0,void 0,function*(){const[n,r,s]=e;Ui(Jt.isUri(n)),Ui(J.isIRange(r));const o=i.get(Ec),a=i.get(Wf),l=i.get(Et),c=yield o.createModelReference(n);try{return Cxt(a,l,c.object.textEditorModel,J.lift(r),s,Hn.None)}finally{c.dispose()}})});si.registerCommand("_executeFormatDocumentProvider",function(i,...e){return Jp(this,void 0,void 0,function*(){const[n,r]=e;Ui(Jt.isUri(n));const s=i.get(Ec),o=i.get(Wf),a=i.get(Et),l=yield s.createModelReference(n);try{return Sxt(o,a,l.object.textEditorModel,r,Hn.None)}finally{l.dispose()}})});si.registerCommand("_executeFormatOnTypeProvider",function(i,...e){return Jp(this,void 0,void 0,function*(){const[n,r,s,o]=e;Ui(Jt.isUri(n)),Ui(ve.isIPosition(r)),Ui(typeof s=="string");const a=i.get(Ec),l=i.get(Wf),c=i.get(Et),u=yield a.createModelReference(n);try{return pAe(l,c,u.object.textEditorModel,ve.lift(r),s,o,Hn.None)}finally{u.dispose()}})});rg.wrappingIndent.defaultValue=0;rg.glyphMargin.defaultValue=!1;rg.autoIndent.defaultValue=3;rg.overviewRulerLanes.defaultValue=2;wx.setFormatterSelector((i,e,n)=>Promise.resolve(i[0]));const Gl=q2e();Gl.editor=kSt();Gl.languages=gxt();const gAe=Gl.CancellationTokenSource,mAe=Gl.Emitter,_Ae=Gl.KeyCode,vAe=Gl.KeyMod,bAe=Gl.Position,yAe=Gl.Range,wAe=Gl.Selection,CAe=Gl.SelectionDirection,SAe=Gl.MarkerSeverity,xAe=Gl.MarkerTag,kAe=Gl.Uri,LAe=Gl.Token,DAe=Gl.editor,EAe=Gl.languages,lK=globalThis.MonacoEnvironment;(lK!=null&&lK.globalAPI||typeof define=="function"&&define.amd)&&(globalThis.monaco=Gl);typeof globalThis.require<"u"&&typeof globalThis.require.config=="function"&&globalThis.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});const Z5=Object.freeze(Object.defineProperty({__proto__:null,CancellationTokenSource:gAe,Emitter:mAe,KeyCode:_Ae,KeyMod:vAe,MarkerSeverity:SAe,MarkerTag:xAe,Position:bAe,Range:yAe,Selection:wAe,SelectionDirection:CAe,Token:LAe,Uri:kAe,editor:DAe,languages:EAe},Symbol.toStringTag,{value:"Module"})),xxt="modulepreload",kxt=function(i){return"/dashboard/"+i},Q_e={},zt=function(e,n,r){let s=Promise.resolve();if(n&&n.length>0){let a=function(u){return Promise.all(u.map(d=>Promise.resolve(d).then(h=>({status:"fulfilled",value:h}),h=>({status:"rejected",reason:h}))))};document.getElementsByTagName("link");const l=document.querySelector("meta[property=csp-nonce]"),c=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));s=a(n.map(u=>{if(u=kxt(u),u in Q_e)return;Q_e[u]=!0;const d=u.endsWith(".css"),h=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${u}"]${h}`))return;const f=document.createElement("link");if(f.rel=d?"stylesheet":xxt,d||(f.as="script"),f.crossOrigin="",f.href=u,c&&f.setAttribute("nonce",c),document.head.appendChild(f),d)return new Promise((p,g)=>{f.addEventListener("load",p),f.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${u}`)))})}))}function o(a){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=a,window.dispatchEvent(l),!l.defaultPrevented)throw a}return s.then(a=>{for(const l of a||[])l.status==="rejected"&&o(l.reason);return e().catch(o)})};/*!----------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.44.0(3e047efd345ff102c8c61b5398fb30845aaac166) * Released under the MIT license * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt *-----------------------------------------------------------------------------*/var Lxt=Object.defineProperty,Dxt=Object.getOwnPropertyDescriptor,Ext=Object.getOwnPropertyNames,Ixt=Object.prototype.hasOwnProperty,Txt=(i,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Ext(e))!Ixt.call(i,s)&&s!==n&&Lxt(i,s,{get:()=>e[s],enumerable:!(r=Dxt(e,s))||r.enumerable});return i},Rxt=(i,e,n)=>(Txt(i,e,"default"),n),wN={};Rxt(wN,Z5);var IAe={},cK={},TAe=class{constructor(i){xt(this,"_languageId");xt(this,"_loadingTriggered");xt(this,"_lazyLoadPromise");xt(this,"_lazyLoadPromiseResolve");xt(this,"_lazyLoadPromiseReject");this._languageId=i,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((e,n)=>{this._lazyLoadPromiseResolve=e,this._lazyLoadPromiseReject=n})}static getOrCreate(i){return cK[i]||(cK[i]=new TAe(i)),cK[i]}load(){return this._loadingTriggered||(this._loadingTriggered=!0,IAe[this._languageId].loader().then(i=>this._lazyLoadPromiseResolve(i),i=>this._lazyLoadPromiseReject(i))),this._lazyLoadPromise}};function Gt(i){const e=i.id;IAe[e]=i,wN.languages.register(i);const n=TAe.getOrCreate(e);wN.languages.registerTokensProviderFactory(e,{create:async()=>(await n.load()).language}),wN.languages.onLanguageEncountered(e,async()=>{const r=await n.load();wN.languages.setLanguageConfiguration(e,r.conf)})}Gt({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:()=>zt(()=>import("./abap-Bs-KDgo-.js"),[])});Gt({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:()=>zt(()=>import("./apex-BB8ijgrA.js"),[])});Gt({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:()=>zt(()=>import("./azcli-CM0y7Ame.js"),[])});Gt({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:()=>zt(()=>import("./bat-Bfxf8Mzl.js"),[])});Gt({id:"bicep",extensions:[".bicep"],aliases:["Bicep"],loader:()=>zt(()=>import("./bicep-DJPqIr_M.js"),[])});Gt({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:()=>zt(()=>import("./cameligo-PnszTm2c.js"),[])});Gt({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:()=>zt(()=>import("./clojure-B3cFVYI-.js"),[])});Gt({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>zt(()=>import("./coffee-D8tSzcLH.js"),[])});Gt({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:()=>zt(()=>import("./cpp-CP-cATHl.js"),[])});Gt({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:()=>zt(()=>import("./cpp-CP-cATHl.js"),[])});Gt({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:()=>zt(()=>import("./csharp-Dfj4WFqy.js"),[])});Gt({id:"csp",extensions:[],aliases:["CSP","csp"],loader:()=>zt(()=>import("./csp-D9HxVpWn.js"),[])});Gt({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:()=>zt(()=>import("./css-CkCHETKw.js"),[])});Gt({id:"cypher",extensions:[".cypher",".cyp"],aliases:["Cypher","OpenCypher"],loader:()=>zt(()=>import("./cypher-B50w5pq9.js"),[])});Gt({id:"dart",extensions:[".dart"],aliases:["Dart","dart"],mimetypes:["text/x-dart-source","text/x-dart"],loader:()=>zt(()=>import("./dart-DvROnYA_.js"),[])});Gt({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:()=>zt(()=>import("./dockerfile-C4f37Dvd.js"),[])});Gt({id:"ecl",extensions:[".ecl"],aliases:["ECL","Ecl","ecl"],loader:()=>zt(()=>import("./ecl-DW46Dzft.js"),[])});Gt({id:"elixir",extensions:[".ex",".exs"],aliases:["Elixir","elixir","ex"],loader:()=>zt(()=>import("./elixir-BIa5JtGe.js"),[])});Gt({id:"flow9",extensions:[".flow"],aliases:["Flow9","Flow","flow9","flow"],loader:()=>zt(()=>import("./flow9-ByI4Scwv.js"),[])});Gt({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>zt(()=>import("./fsharp-Cgf6u04w.js"),[])});Gt({id:"freemarker2",extensions:[".ftl",".ftlh",".ftlx"],aliases:["FreeMarker2","Apache FreeMarker2"],loader:()=>zt(()=>import("./freemarker2-BmkYHwKA.js"),[]).then(i=>i.TagAutoInterpolationDollar)});Gt({id:"freemarker2.tag-angle.interpolation-dollar",aliases:["FreeMarker2 (Angle/Dollar)","Apache FreeMarker2 (Angle/Dollar)"],loader:()=>zt(()=>import("./freemarker2-BmkYHwKA.js"),[]).then(i=>i.TagAngleInterpolationDollar)});Gt({id:"freemarker2.tag-bracket.interpolation-dollar",aliases:["FreeMarker2 (Bracket/Dollar)","Apache FreeMarker2 (Bracket/Dollar)"],loader:()=>zt(()=>import("./freemarker2-BmkYHwKA.js"),[]).then(i=>i.TagBracketInterpolationDollar)});Gt({id:"freemarker2.tag-angle.interpolation-bracket",aliases:["FreeMarker2 (Angle/Bracket)","Apache FreeMarker2 (Angle/Bracket)"],loader:()=>zt(()=>import("./freemarker2-BmkYHwKA.js"),[]).then(i=>i.TagAngleInterpolationBracket)});Gt({id:"freemarker2.tag-bracket.interpolation-bracket",aliases:["FreeMarker2 (Bracket/Bracket)","Apache FreeMarker2 (Bracket/Bracket)"],loader:()=>zt(()=>import("./freemarker2-BmkYHwKA.js"),[]).then(i=>i.TagBracketInterpolationBracket)});Gt({id:"freemarker2.tag-auto.interpolation-dollar",aliases:["FreeMarker2 (Auto/Dollar)","Apache FreeMarker2 (Auto/Dollar)"],loader:()=>zt(()=>import("./freemarker2-BmkYHwKA.js"),[]).then(i=>i.TagAutoInterpolationDollar)});Gt({id:"freemarker2.tag-auto.interpolation-bracket",aliases:["FreeMarker2 (Auto/Bracket)","Apache FreeMarker2 (Auto/Bracket)"],loader:()=>zt(()=>import("./freemarker2-BmkYHwKA.js"),[]).then(i=>i.TagAutoInterpolationBracket)});Gt({id:"go",extensions:[".go"],aliases:["Go"],loader:()=>zt(()=>import("./go-CJfxPkej.js"),[])});Gt({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:()=>zt(()=>import("./graphql-CGlhcY2-.js"),[])});Gt({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars","hbs"],mimetypes:["text/x-handlebars-template"],loader:()=>zt(()=>import("./handlebars-ClKa4v-T.js"),[])});Gt({id:"hcl",extensions:[".tf",".tfvars",".hcl"],aliases:["Terraform","tf","HCL","hcl"],loader:()=>zt(()=>import("./hcl-CTI7WNlW.js"),[])});Gt({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:()=>zt(()=>import("./html-BH1s8kBD.js"),[])});Gt({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:()=>zt(()=>import("./ini-qJXHXiTY.js"),[])});Gt({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:()=>zt(()=>import("./java-Dnrl9822.js"),[])});Gt({id:"javascript",extensions:[".js",".es6",".jsx",".mjs",".cjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:()=>zt(()=>import("./javascript-C7a4RI8G.js"),__vite__mapDeps([0,1]))});Gt({id:"julia",extensions:[".jl"],aliases:["julia","Julia"],loader:()=>zt(()=>import("./julia-pqMLycLG.js"),[])});Gt({id:"kotlin",extensions:[".kt",".kts"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:()=>zt(()=>import("./kotlin-DLX697jv.js"),[])});Gt({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:()=>zt(()=>import("./less-2ExdFhZM.js"),[])});Gt({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>zt(()=>import("./lexon-ABKfEwhw.js"),[])});Gt({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:()=>zt(()=>import("./lua-CI0blgFs.js"),[])});Gt({id:"liquid",extensions:[".liquid",".html.liquid"],aliases:["Liquid","liquid"],mimetypes:["application/liquid"],loader:()=>zt(()=>import("./liquid-CaPMVtxC.js"),[])});Gt({id:"m3",extensions:[".m3",".i3",".mg",".ig"],aliases:["Modula-3","Modula3","modula3","m3"],loader:()=>zt(()=>import("./m3-yVPEHiu4.js"),[])});Gt({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:()=>zt(()=>import("./markdown-CjOKAnMy.js"),[])});Gt({id:"mdx",extensions:[".mdx"],aliases:["MDX","mdx"],loader:()=>zt(()=>import("./mdx-gYledG3t.js"),[])});Gt({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:()=>zt(()=>import("./mips-B7KWClFm.js"),[])});Gt({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:()=>zt(()=>import("./msdax-N_40gjXO.js"),[])});Gt({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:()=>zt(()=>import("./mysql-CzgTwwi2.js"),[])});Gt({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:()=>zt(()=>import("./objective-c-CwAIQX-6.js"),[])});Gt({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>zt(()=>import("./pascal-3SrKWnFX.js"),[])});Gt({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:()=>zt(()=>import("./pascaligo-Cv9Y0fbC.js"),[])});Gt({id:"perl",extensions:[".pl",".pm"],aliases:["Perl","pl"],loader:()=>zt(()=>import("./perl-DHxnJL0_.js"),[])});Gt({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:()=>zt(()=>import("./pgsql-DGJFw0qd.js"),[])});Gt({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:()=>zt(()=>import("./php-BA3Rqjpx.js"),[])});Gt({id:"pla",extensions:[".pla"],loader:()=>zt(()=>import("./pla-DKf5_u7N.js"),[])});Gt({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:()=>zt(()=>import("./postiats-Bup1kUyj.js"),[])});Gt({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:()=>zt(()=>import("./powerquery-BfbPeLER.js"),[])});Gt({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:()=>zt(()=>import("./powershell-DAsS7BG8.js"),[])});Gt({id:"proto",extensions:[".proto"],aliases:["protobuf","Protocol Buffers"],loader:()=>zt(()=>import("./protobuf-Dzs34GPr.js"),[])});Gt({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:()=>zt(()=>import("./pug-CVuUMJ1K.js"),[])});Gt({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:()=>zt(()=>import("./python-Ddgi4jcf.js"),[])});Gt({id:"qsharp",extensions:[".qs"],aliases:["Q#","qsharp"],loader:()=>zt(()=>import("./qsharp-BgY1GbL_.js"),[])});Gt({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:()=>zt(()=>import("./r-C2Iz-cGs.js"),[])});Gt({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:()=>zt(()=>import("./razor-DDCHVRqO.js"),[])});Gt({id:"redis",extensions:[".redis"],aliases:["redis"],loader:()=>zt(()=>import("./redis-F7UxdB6U.js"),[])});Gt({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:()=>zt(()=>import("./redshift-CDF44XVS.js"),[])});Gt({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:()=>zt(()=>import("./restructuredtext-C_dzeD_4.js"),[])});Gt({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:()=>zt(()=>import("./ruby-BdxlVRg3.js"),[])});Gt({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:()=>zt(()=>import("./rust-gU8692nP.js"),[])});Gt({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:()=>zt(()=>import("./sb-CsAkPjmq.js"),[])});Gt({id:"scala",extensions:[".scala",".sc",".sbt"],aliases:["Scala","scala","SBT","Sbt","sbt","Dotty","dotty"],mimetypes:["text/x-scala-source","text/x-scala","text/x-sbt","text/x-dotty"],loader:()=>zt(()=>import("./scala-D_TH4Qyk.js"),[])});Gt({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:()=>zt(()=>import("./scheme-CTXRt_ZJ.js"),[])});Gt({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>zt(()=>import("./scss-Rf_ppwBg.js"),[])});Gt({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:()=>zt(()=>import("./shell-osqRiq1b.js"),[])});Gt({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:()=>zt(()=>import("./solidity-BTHmi1CB.js"),[])});Gt({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:()=>zt(()=>import("./sophia-BRe4RArb.js"),[])});Gt({id:"sparql",extensions:[".rq"],aliases:["sparql","SPARQL"],loader:()=>zt(()=>import("./sparql-CaSv-uNl.js"),[])});Gt({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:()=>zt(()=>import("./sql-CHiRcria.js"),[])});Gt({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib",".TcPOU",".TcDUT",".TcGVL",".TcIO"],aliases:["StructuredText","scl","stl"],loader:()=>zt(()=>import("./st-CCGZ7KTi.js"),[])});Gt({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:()=>zt(()=>import("./swift-DeyDsJzf.js"),[])});Gt({id:"systemverilog",extensions:[".sv",".svh"],aliases:["SV","sv","SystemVerilog","systemverilog"],loader:()=>zt(()=>import("./systemverilog-RSGMMa-l.js"),[])});Gt({id:"verilog",extensions:[".v",".vh"],aliases:["V","v","Verilog","verilog"],loader:()=>zt(()=>import("./systemverilog-RSGMMa-l.js"),[])});Gt({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:()=>zt(()=>import("./tcl-B28K5YOH.js"),[])});Gt({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:()=>zt(()=>import("./twig-ChoE7Tfw.js"),[])});Gt({id:"typescript",extensions:[".ts",".tsx",".cts",".mts"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:()=>zt(()=>import("./typescript-Jd3ZmU9m.js"),[])});Gt({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:()=>zt(()=>import("./vb-BCnlgLOU.js"),[])});Gt({id:"wgsl",extensions:[".wgsl"],aliases:["WebGPU Shading Language","WGSL","wgsl"],loader:()=>zt(()=>import("./wgsl-DlxrJ_uh.js"),[])});Gt({id:"xml",extensions:[".xml",".xsd",".dtd",".ascx",".csproj",".config",".props",".targets",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xslt",".xsl"],firstLine:"(\\<\\?xml.*)|(\\zt(()=>import("./xml-DRiRd1Ut.js"),[])});Gt({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:()=>zt(()=>import("./yaml-CBhHykcq.js"),[])});/*!----------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.44.0(3e047efd345ff102c8c61b5398fb30845aaac166) * Released under the MIT license * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt *-----------------------------------------------------------------------------*/var Axt=Object.defineProperty,Nxt=Object.getOwnPropertyDescriptor,Mxt=Object.getOwnPropertyNames,Pxt=Object.prototype.hasOwnProperty,Oxt=(i,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Mxt(e))!Pxt.call(i,s)&&s!==n&&Axt(i,s,{get:()=>e[s],enumerable:!(r=Nxt(e,s))||r.enumerable});return i},Fxt=(i,e,n)=>(Oxt(i,e,"default"),n),KI={};Fxt(KI,Z5);var qae=class{constructor(e,n,r){xt(this,"_onDidChange",new KI.Emitter);xt(this,"_options");xt(this,"_modeConfiguration");xt(this,"_languageId");this._languageId=e,this.setOptions(n),this.setModeConfiguration(r)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this.options}get options(){return this._options}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setDiagnosticsOptions(e){this.setOptions(e)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}},Kae={validate:!0,lint:{compatibleVendorPrefixes:"ignore",vendorPrefix:"warning",duplicateProperties:"warning",emptyRules:"warning",importStatement:"ignore",boxModel:"ignore",universalSelector:"ignore",zeroUnits:"ignore",fontFaceProperties:"warning",hexColorLength:"error",argumentsInColorFunction:"error",unknownProperties:"warning",ieHack:"ignore",unknownVendorSpecificProperties:"ignore",propertyIgnoredDueToDisplay:"warning",important:"ignore",float:"ignore",idSelector:"ignore"},data:{useDefaultDataProvider:!0},format:{newlineBetweenSelectors:!0,newlineBetweenRules:!0,spaceAroundSelectorSeparator:!1,braceStyle:"collapse",maxPreserveNewLines:void 0,preserveNewLines:!0}},Gae={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0,documentFormattingEdits:!0,documentRangeFormattingEdits:!0},RAe=new qae("css",Kae,Gae),AAe=new qae("scss",Kae,Gae),NAe=new qae("less",Kae,Gae);KI.languages.css={cssDefaults:RAe,lessDefaults:NAe,scssDefaults:AAe};function Xae(){return zt(()=>import("./cssMode-Ca5s3ClJ.js"),[])}KI.languages.onLanguage("less",()=>{Xae().then(i=>i.setupMode(NAe))});KI.languages.onLanguage("scss",()=>{Xae().then(i=>i.setupMode(AAe))});KI.languages.onLanguage("css",()=>{Xae().then(i=>i.setupMode(RAe))});/*!----------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.44.0(3e047efd345ff102c8c61b5398fb30845aaac166) * Released under the MIT license * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt *-----------------------------------------------------------------------------*/var Bxt=Object.defineProperty,jxt=Object.getOwnPropertyDescriptor,Wxt=Object.getOwnPropertyNames,$xt=Object.prototype.hasOwnProperty,zxt=(i,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Wxt(e))!$xt.call(i,s)&&s!==n&&Bxt(i,s,{get:()=>e[s],enumerable:!(r=jxt(e,s))||r.enumerable});return i},Vxt=(i,e,n)=>(zxt(i,e,"default"),n),dz={};Vxt(dz,Z5);var Hxt=class{constructor(e,n,r){xt(this,"_onDidChange",new dz.Emitter);xt(this,"_options");xt(this,"_modeConfiguration");xt(this,"_languageId");this._languageId=e,this.setOptions(n),this.setModeConfiguration(r)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get options(){return this._options}get modeConfiguration(){return this._modeConfiguration}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}},Uxt={tabSize:4,insertSpaces:!1,wrapLineLength:120,unformatted:'default": "a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var',contentUnformatted:"pre",indentInnerHtml:!1,preserveNewLines:!0,maxPreserveNewLines:void 0,indentHandlebars:!1,endWithNewline:!1,extraLiners:"head, body, /html",wrapAttributes:"auto"},hz={format:Uxt,suggest:{},data:{useDefaultDataProvider:!0}};function fz(i){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:i===bM,documentFormattingEdits:i===bM,documentRangeFormattingEdits:i===bM}}var bM="html",J_e="handlebars",e0e="razor",MAe=pz(bM,hz,fz(bM)),qxt=MAe.defaults,PAe=pz(J_e,hz,fz(J_e)),Kxt=PAe.defaults,OAe=pz(e0e,hz,fz(e0e)),Gxt=OAe.defaults;dz.languages.html={htmlDefaults:qxt,razorDefaults:Gxt,handlebarDefaults:Kxt,htmlLanguageService:MAe,handlebarLanguageService:PAe,razorLanguageService:OAe,registerHTMLLanguageService:pz};function Xxt(){return zt(()=>import("./htmlMode-CmKaoTJQ.js"),[])}function pz(i,e=hz,n=fz(i)){const r=new Hxt(i,e,n);let s;const o=dz.languages.onLanguage(i,async()=>{s=(await Xxt()).setupMode(r)});return{defaults:r,dispose(){o.dispose(),s==null||s.dispose(),s=void 0}}}/*!----------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.44.0(3e047efd345ff102c8c61b5398fb30845aaac166) * Released under the MIT license * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt *-----------------------------------------------------------------------------*/var Yxt=Object.defineProperty,Zxt=Object.getOwnPropertyDescriptor,Qxt=Object.getOwnPropertyNames,Jxt=Object.prototype.hasOwnProperty,ekt=(i,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Qxt(e))!Jxt.call(i,s)&&s!==n&&Yxt(i,s,{get:()=>e[s],enumerable:!(r=Zxt(e,s))||r.enumerable});return i},tkt=(i,e,n)=>(ekt(i,e,"default"),n),Q5={};tkt(Q5,Z5);var nkt=class{constructor(e,n,r){xt(this,"_onDidChange",new Q5.Emitter);xt(this,"_diagnosticsOptions");xt(this,"_modeConfiguration");xt(this,"_languageId");this._languageId=e,this.setDiagnosticsOptions(n),this.setModeConfiguration(r)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}},ikt={validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1,schemaRequest:"warning",schemaValidation:"warning",comments:"error",trailingCommas:"error"},rkt={documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},FAe=new nkt("json",ikt,rkt);Q5.languages.json={jsonDefaults:FAe};function skt(){return zt(()=>import("./jsonMode-LvqRkjE1.js"),[])}Q5.languages.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]});Q5.languages.onLanguage("json",()=>{skt().then(i=>i.setupMode(FAe))});/*!----------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.44.0(3e047efd345ff102c8c61b5398fb30845aaac166) * Released under the MIT license * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt *-----------------------------------------------------------------------------*/var okt=Object.defineProperty,akt=Object.getOwnPropertyDescriptor,lkt=Object.getOwnPropertyNames,ckt=Object.prototype.hasOwnProperty,ukt=(i,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of lkt(e))!ckt.call(i,s)&&s!==n&&okt(i,s,{get:()=>e[s],enumerable:!(r=akt(e,s))||r.enumerable});return i},dkt=(i,e,n)=>(ukt(i,e,"default"),n),hkt="5.0.2",nI={};dkt(nI,Z5);var BAe=(i=>(i[i.None=0]="None",i[i.CommonJS=1]="CommonJS",i[i.AMD=2]="AMD",i[i.UMD=3]="UMD",i[i.System=4]="System",i[i.ES2015=5]="ES2015",i[i.ESNext=99]="ESNext",i))(BAe||{}),jAe=(i=>(i[i.None=0]="None",i[i.Preserve=1]="Preserve",i[i.React=2]="React",i[i.ReactNative=3]="ReactNative",i[i.ReactJSX=4]="ReactJSX",i[i.ReactJSXDev=5]="ReactJSXDev",i))(jAe||{}),WAe=(i=>(i[i.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",i[i.LineFeed=1]="LineFeed",i))(WAe||{}),$Ae=(i=>(i[i.ES3=0]="ES3",i[i.ES5=1]="ES5",i[i.ES2015=2]="ES2015",i[i.ES2016=3]="ES2016",i[i.ES2017=4]="ES2017",i[i.ES2018=5]="ES2018",i[i.ES2019=6]="ES2019",i[i.ES2020=7]="ES2020",i[i.ESNext=99]="ESNext",i[i.JSON=100]="JSON",i[i.Latest=99]="Latest",i))($Ae||{}),zAe=(i=>(i[i.Classic=1]="Classic",i[i.NodeJs=2]="NodeJs",i))(zAe||{}),VAe=class{constructor(i,e,n,r,s){xt(this,"_onDidChange",new nI.Emitter);xt(this,"_onDidExtraLibsChange",new nI.Emitter);xt(this,"_extraLibs");xt(this,"_removedExtraLibs");xt(this,"_eagerModelSync");xt(this,"_compilerOptions");xt(this,"_diagnosticsOptions");xt(this,"_workerOptions");xt(this,"_onDidExtraLibsChangeTimeout");xt(this,"_inlayHintsOptions");xt(this,"_modeConfiguration");this._extraLibs=Object.create(null),this._removedExtraLibs=Object.create(null),this._eagerModelSync=!1,this.setCompilerOptions(i),this.setDiagnosticsOptions(e),this.setWorkerOptions(n),this.setInlayHintsOptions(r),this.setModeConfiguration(s),this._onDidExtraLibsChangeTimeout=-1}get onDidChange(){return this._onDidChange.event}get onDidExtraLibsChange(){return this._onDidExtraLibsChange.event}get modeConfiguration(){return this._modeConfiguration}get workerOptions(){return this._workerOptions}get inlayHintsOptions(){return this._inlayHintsOptions}getExtraLibs(){return this._extraLibs}addExtraLib(i,e){let n;if(typeof e>"u"?n=`ts:extralib-${Math.random().toString(36).substring(2,15)}`:n=e,this._extraLibs[n]&&this._extraLibs[n].content===i)return{dispose:()=>{}};let r=1;return this._removedExtraLibs[n]&&(r=this._removedExtraLibs[n]+1),this._extraLibs[n]&&(r=this._extraLibs[n].version+1),this._extraLibs[n]={content:i,version:r},this._fireOnDidExtraLibsChangeSoon(),{dispose:()=>{let s=this._extraLibs[n];s&&s.version===r&&(delete this._extraLibs[n],this._removedExtraLibs[n]=r,this._fireOnDidExtraLibsChangeSoon())}}}setExtraLibs(i){for(const e in this._extraLibs)this._removedExtraLibs[e]=this._extraLibs[e].version;if(this._extraLibs=Object.create(null),i&&i.length>0)for(const e of i){const n=e.filePath||`ts:extralib-${Math.random().toString(36).substring(2,15)}`,r=e.content;let s=1;this._removedExtraLibs[n]&&(s=this._removedExtraLibs[n]+1),this._extraLibs[n]={content:r,version:s}}this._fireOnDidExtraLibsChangeSoon()}_fireOnDidExtraLibsChangeSoon(){this._onDidExtraLibsChangeTimeout===-1&&(this._onDidExtraLibsChangeTimeout=window.setTimeout(()=>{this._onDidExtraLibsChangeTimeout=-1,this._onDidExtraLibsChange.fire(void 0)},0))}getCompilerOptions(){return this._compilerOptions}setCompilerOptions(i){this._compilerOptions=i||Object.create(null),this._onDidChange.fire(void 0)}getDiagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(i){this._diagnosticsOptions=i||Object.create(null),this._onDidChange.fire(void 0)}setWorkerOptions(i){this._workerOptions=i||Object.create(null),this._onDidChange.fire(void 0)}setInlayHintsOptions(i){this._inlayHintsOptions=i||Object.create(null),this._onDidChange.fire(void 0)}setMaximumWorkerIdleTime(i){}setEagerModelSync(i){this._eagerModelSync=i}getEagerModelSync(){return this._eagerModelSync}setModeConfiguration(i){this._modeConfiguration=i||Object.create(null),this._onDidChange.fire(void 0)}},fkt=hkt,HAe={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,diagnostics:!0,documentRangeFormattingEdits:!0,signatureHelp:!0,onTypeFormattingEdits:!0,codeActions:!0,inlayHints:!0},UAe=new VAe({allowNonTsExtensions:!0,target:99},{noSemanticValidation:!1,noSyntaxValidation:!1,onlyVisible:!1},{},{},HAe),qAe=new VAe({allowNonTsExtensions:!0,allowJs:!0,target:99},{noSemanticValidation:!0,noSyntaxValidation:!1,onlyVisible:!1},{},{},HAe),pkt=()=>gz().then(i=>i.getTypeScriptWorker()),gkt=()=>gz().then(i=>i.getJavaScriptWorker());nI.languages.typescript={ModuleKind:BAe,JsxEmit:jAe,NewLineKind:WAe,ScriptTarget:$Ae,ModuleResolutionKind:zAe,typescriptVersion:fkt,typescriptDefaults:UAe,javascriptDefaults:qAe,getTypeScriptWorker:pkt,getJavaScriptWorker:gkt};function gz(){return zt(()=>import("./tsMode-DYDGR6Xc.js"),[])}nI.languages.onLanguage("typescript",()=>gz().then(i=>i.setupTypeScript(UAe)));nI.languages.onLanguage("javascript",()=>gz().then(i=>i.setupJavaScript(qAe)));class mkt extends md{constructor(){super({id:"diffEditor.toggleCollapseUnchangedRegions",title:{value:L("toggleCollapseUnchangedRegions","Toggle Collapse Unchanged Regions"),original:"Toggle Collapse Unchanged Regions"},icon:lt.map,toggled:ze.has("config.diffEditor.hideUnchangedRegions.enabled"),precondition:ze.has("isInDiffEditor"),menu:{when:ze.has("isInDiffEditor"),id:se.EditorTitle,order:22,group:"navigation"}})}run(e,...n){const r=e.get(ei),s=!r.getValue("diffEditor.hideUnchangedRegions.enabled");r.updateValue("diffEditor.hideUnchangedRegions.enabled",s)}}Ir(mkt);class KAe extends md{constructor(){super({id:"diffEditor.toggleShowMovedCodeBlocks",title:{value:L("toggleShowMovedCodeBlocks","Toggle Show Moved Code Blocks"),original:"Toggle Show Moved Code Blocks"},precondition:ze.has("isInDiffEditor")})}run(e,...n){const r=e.get(ei),s=!r.getValue("diffEditor.experimental.showMoves");r.updateValue("diffEditor.experimental.showMoves",s)}}Ir(KAe);class GAe extends md{constructor(){super({id:"diffEditor.toggleUseInlineViewWhenSpaceIsLimited",title:{value:L("toggleUseInlineViewWhenSpaceIsLimited","Toggle Use Inline View When Space Is Limited"),original:"Toggle Use Inline View When Space Is Limited"},precondition:ze.has("isInDiffEditor")})}run(e,...n){const r=e.get(ei),s=!r.getValue("diffEditor.useInlineViewWhenSpaceIsLimited");r.updateValue("diffEditor.useInlineViewWhenSpaceIsLimited",s)}}Ir(GAe);sa.appendMenuItem(se.EditorTitle,{command:{id:new GAe().desc.id,title:L("useInlineViewWhenSpaceIsLimited","Use Inline View When Space Is Limited"),toggled:ze.has("config.diffEditor.useInlineViewWhenSpaceIsLimited"),precondition:ze.has("isInDiffEditor")},order:11,group:"1_diff",when:ze.and(oe.diffEditorRenderSideBySideInlineBreakpointReached,ze.has("isInDiffEditor"))});sa.appendMenuItem(se.EditorTitle,{command:{id:new KAe().desc.id,title:L("showMoves","Show Moved Code Blocks"),icon:lt.move,toggled:OI.create("config.diffEditor.experimental.showMoves",!0),precondition:ze.has("isInDiffEditor")},order:10,group:"1_diff",when:ze.has("isInDiffEditor")});const mz={value:L("diffEditor","Diff Editor"),original:"Diff Editor"};class _kt extends og{constructor(){super({id:"diffEditor.switchSide",title:{value:L("switchSide","Switch Side"),original:"Switch Side"},icon:lt.arrowSwap,precondition:ze.has("isInDiffEditor"),f1:!0,category:mz})}runEditorCommand(e,n,r){const s=XI(e);if(s instanceof yx){if(r&&r.dryRun)return{destinationSelection:s.mapToOtherSide().destinationSelection};s.switchSide()}}}Ir(_kt);class vkt extends og{constructor(){super({id:"diffEditor.exitCompareMove",title:{value:L("exitCompareMove","Exit Compare Move"),original:"Exit Compare Move"},icon:lt.close,precondition:oe.comparingMovedCode,f1:!1,category:mz,keybinding:{weight:1e4,primary:9}})}runEditorCommand(e,n,...r){const s=XI(e);s instanceof yx&&s.exitCompareMove()}}Ir(vkt);class bkt extends og{constructor(){super({id:"diffEditor.collapseAllUnchangedRegions",title:{value:L("collapseAllUnchangedRegions","Collapse All Unchanged Regions"),original:"Collapse All Unchanged Regions"},icon:lt.fold,precondition:ze.has("isInDiffEditor"),f1:!0,category:mz})}runEditorCommand(e,n,...r){const s=XI(e);s instanceof yx&&s.collapseAllUnchangedRegions()}}Ir(bkt);class ykt extends og{constructor(){super({id:"diffEditor.showAllUnchangedRegions",title:{value:L("showAllUnchangedRegions","Show All Unchanged Regions"),original:"Show All Unchanged Regions"},icon:lt.unfold,precondition:ze.has("isInDiffEditor"),f1:!0,category:mz})}runEditorCommand(e,n,...r){const s=XI(e);s instanceof yx&&s.showAllUnchangedRegions()}}Ir(ykt);const XAe={value:L("accessibleDiffViewer","Accessible Diff Viewer"),original:"Accessible Diff Viewer"};class GI extends md{constructor(){super({id:GI.id,title:{value:L("editor.action.accessibleDiffViewer.next","Go to Next Difference"),original:"Go to Next Difference"},category:XAe,precondition:ze.has("isInDiffEditor"),keybinding:{primary:65,weight:100},f1:!0})}run(e){const n=XI(e);n==null||n.accessibleDiffViewerNext()}}GI.id="editor.action.accessibleDiffViewer.next";sa.appendMenuItem(se.EditorTitle,{command:{id:GI.id,title:L("Open Accessible Diff Viewer","Open Accessible Diff Viewer"),precondition:ze.has("isInDiffEditor")},order:10,group:"2_diff",when:ze.and(oe.accessibleDiffViewerVisible.negate(),ze.has("isInDiffEditor"))});class J5 extends md{constructor(){super({id:J5.id,title:{value:L("editor.action.accessibleDiffViewer.prev","Go to Previous Difference"),original:"Go to Previous Difference"},category:XAe,precondition:ze.has("isInDiffEditor"),keybinding:{primary:1089,weight:100},f1:!0})}run(e){const n=XI(e);n==null||n.accessibleDiffViewerPrev()}}J5.id="editor.action.accessibleDiffViewer.prev";function XI(i){var e;const n=i.get(Si),r=n.listDiffEditors(),s=(e=n.getFocusedCodeEditor())!==null&&e!==void 0?e:n.getActiveCodeEditor();if(!s)return null;for(let a=0,l=r.length;a=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Skt=function(i,e){return function(n,r){e(n,r,i)}},_z=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Lte;const vz=new yt("selectionAnchorSet",!1);let Tv=Lte=class{static get(e){return e.getContribution(Lte.ID)}constructor(e,n){this.editor=e,this.selectionAnchorSetContextKey=vz.bindTo(n),this.modelChangeListener=e.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}setSelectionAnchor(){if(this.editor.hasModel()){const e=this.editor.getPosition();this.editor.changeDecorations(n=>{this.decorationId&&n.removeDecoration(this.decorationId),this.decorationId=n.addDecoration(Ft.fromPositions(e,e),{description:"selection-anchor",stickiness:1,hoverMessage:new Ea().appendText(L("selectionAnchor","Selection Anchor")),className:"selection-anchor"})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),Ua(L("anchorSet","Anchor set at {0}:{1}",e.lineNumber,e.column))}}goToSelectionAnchor(){if(this.editor.hasModel()&&this.decorationId){const e=this.editor.getModel().getDecorationRange(this.decorationId);e&&this.editor.setPosition(e.getStartPosition())}}selectFromAnchorToCursor(){if(this.editor.hasModel()&&this.decorationId){const e=this.editor.getModel().getDecorationRange(this.decorationId);if(e){const n=this.editor.getPosition();this.editor.setSelection(Ft.fromPositions(e.getStartPosition(),n)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){const e=this.decorationId;this.editor.changeDecorations(n=>{n.removeDecoration(e),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}};Tv.ID="editor.contrib.selectionAnchorController";Tv=Lte=Ckt([Skt(1,mn)],Tv);class xkt extends kt{constructor(){super({id:"editor.action.setSelectionAnchor",label:L("setSelectionAnchor","Set Selection Anchor"),alias:"Set Selection Anchor",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2080),weight:100}})}run(e,n){var r;return _z(this,void 0,void 0,function*(){(r=Tv.get(n))===null||r===void 0||r.setSelectionAnchor()})}}class kkt extends kt{constructor(){super({id:"editor.action.goToSelectionAnchor",label:L("goToSelectionAnchor","Go to Selection Anchor"),alias:"Go to Selection Anchor",precondition:vz})}run(e,n){var r;return _z(this,void 0,void 0,function*(){(r=Tv.get(n))===null||r===void 0||r.goToSelectionAnchor()})}}class Lkt extends kt{constructor(){super({id:"editor.action.selectFromAnchorToCursor",label:L("selectFromAnchorToCursor","Select from Anchor to Cursor"),alias:"Select from Anchor to Cursor",precondition:vz,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2089),weight:100}})}run(e,n){var r;return _z(this,void 0,void 0,function*(){(r=Tv.get(n))===null||r===void 0||r.selectFromAnchorToCursor()})}}class Dkt extends kt{constructor(){super({id:"editor.action.cancelSelectionAnchor",label:L("cancelSelectionAnchor","Cancel Selection Anchor"),alias:"Cancel Selection Anchor",precondition:vz,kbOpts:{kbExpr:oe.editorTextFocus,primary:9,weight:100}})}run(e,n){var r;return _z(this,void 0,void 0,function*(){(r=Tv.get(n))===null||r===void 0||r.cancelSelectionAnchor()})}}_i(Tv.ID,Tv,4);rt(xkt);rt(kkt);rt(Lkt);rt(Dkt);const Ekt=ce("editorOverviewRuler.bracketMatchForeground",{dark:"#A0A0A0",light:"#A0A0A0",hcDark:"#A0A0A0",hcLight:"#A0A0A0"},L("overviewRulerBracketMatchForeground","Overview ruler marker color for matching brackets."));class Ikt extends kt{constructor(){super({id:"editor.action.jumpToBracket",label:L("smartSelect.jumpBracket","Go to Bracket"),alias:"Go to Bracket",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:3165,weight:100}})}run(e,n){var r;(r=kf.get(n))===null||r===void 0||r.jumpToBracket()}}class Tkt extends kt{constructor(){super({id:"editor.action.selectToBracket",label:L("smartSelect.selectToBracket","Select to Bracket"),alias:"Select to Bracket",precondition:void 0,description:{description:"Select to Bracket",args:[{name:"args",schema:{type:"object",properties:{selectBrackets:{type:"boolean",default:!0}}}}]}})}run(e,n,r){var s;let o=!0;r&&r.selectBrackets===!1&&(o=!1),(s=kf.get(n))===null||s===void 0||s.selectToBracket(o)}}class Rkt extends kt{constructor(){super({id:"editor.action.removeBrackets",label:L("smartSelect.removeBrackets","Remove Brackets"),alias:"Remove Brackets",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:2561,weight:100}})}run(e,n){var r;(r=kf.get(n))===null||r===void 0||r.removeBrackets(this.id)}}class Akt{constructor(e,n,r){this.position=e,this.brackets=n,this.options=r}}class kf extends Le{static get(e){return e.getContribution(kf.ID)}constructor(e){super(),this._editor=e,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=this._editor.createDecorationsCollection(),this._updateBracketsSoon=this._register(new Ji(()=>this._updateBrackets(),50)),this._matchBrackets=this._editor.getOption(71),this._updateBracketsSoon.schedule(),this._register(e.onDidChangeCursorPosition(n=>{this._matchBrackets!=="never"&&this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelContent(n=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModel(n=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelLanguageConfiguration(n=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeConfiguration(n=>{n.hasChanged(71)&&(this._matchBrackets=this._editor.getOption(71),this._decorations.clear(),this._lastBracketsData=[],this._lastVersionId=0,this._updateBracketsSoon.schedule())})),this._register(e.onDidBlurEditorWidget(()=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidFocusEditorWidget(()=>{this._updateBracketsSoon.schedule()}))}jumpToBracket(){if(!this._editor.hasModel())return;const e=this._editor.getModel(),n=this._editor.getSelections().map(r=>{const s=r.getStartPosition(),o=e.bracketPairs.matchBracket(s);let a=null;if(o)o[0].containsPosition(s)&&!o[1].containsPosition(s)?a=o[1].getStartPosition():o[1].containsPosition(s)&&(a=o[0].getStartPosition());else{const l=e.bracketPairs.findEnclosingBrackets(s);if(l)a=l[1].getStartPosition();else{const c=e.bracketPairs.findNextBracket(s);c&&c.range&&(a=c.range.getStartPosition())}}return a?new Ft(a.lineNumber,a.column,a.lineNumber,a.column):new Ft(s.lineNumber,s.column,s.lineNumber,s.column)});this._editor.setSelections(n),this._editor.revealRange(n[0])}selectToBracket(e){if(!this._editor.hasModel())return;const n=this._editor.getModel(),r=[];this._editor.getSelections().forEach(s=>{const o=s.getStartPosition();let a=n.bracketPairs.matchBracket(o);if(!a&&(a=n.bracketPairs.findEnclosingBrackets(o),!a)){const u=n.bracketPairs.findNextBracket(o);u&&u.range&&(a=n.bracketPairs.matchBracket(u.range.getStartPosition()))}let l=null,c=null;if(a){a.sort(J.compareRangesUsingStarts);const[u,d]=a;if(l=e?u.getStartPosition():u.getEndPosition(),c=e?d.getEndPosition():d.getStartPosition(),d.containsPosition(o)){const h=l;l=c,c=h}}l&&c&&r.push(new Ft(l.lineNumber,l.column,c.lineNumber,c.column))}),r.length>0&&(this._editor.setSelections(r),this._editor.revealRange(r[0]))}removeBrackets(e){if(!this._editor.hasModel())return;const n=this._editor.getModel();this._editor.getSelections().forEach(r=>{const s=r.getPosition();let o=n.bracketPairs.matchBracket(s);o||(o=n.bracketPairs.findEnclosingBrackets(s)),o&&(this._editor.pushUndoStop(),this._editor.executeEdits(e,[{range:o[0],text:""},{range:o[1],text:""}]),this._editor.pushUndoStop())})}_updateBrackets(){if(this._matchBrackets==="never")return;this._recomputeBrackets();const e=[];let n=0;for(const r of this._lastBracketsData){const s=r.brackets;s&&(e[n++]={range:s[0],options:r.options},e[n++]={range:s[1],options:r.options})}this._decorations.set(e)}_recomputeBrackets(){if(!this._editor.hasModel()||!this._editor.hasWidgetFocus()){this._lastBracketsData=[],this._lastVersionId=0;return}const e=this._editor.getSelections();if(e.length>100){this._lastBracketsData=[],this._lastVersionId=0;return}const n=this._editor.getModel(),r=n.getVersionId();let s=[];this._lastVersionId===r&&(s=this._lastBracketsData);const o=[];let a=0;for(let h=0,f=e.length;h1&&o.sort(ve.compare);const l=[];let c=0,u=0;const d=s.length;for(let h=0,f=o.length;h0&&(n.pushUndoStop(),n.executeCommands(this.id,s),n.pushUndoStop())}}rt(Okt);var Fkt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const Cx="9_cutcopypaste",Bkt=Um||document.queryCommandSupported("cut"),ZAe=Um||document.queryCommandSupported("copy"),jkt=typeof navigator.clipboard>"u"||gh?document.queryCommandSupported("paste"):!0;function Yae(i){return i.register(),i}const Wkt=Bkt?Yae(new BI({id:"editor.action.clipboardCutAction",precondition:void 0,kbOpts:Um?{primary:2102,win:{primary:2102,secondary:[1044]},weight:100}:void 0,menuOpts:[{menuId:se.MenubarEditMenu,group:"2_ccp",title:L({},"Cu&&t"),order:1},{menuId:se.EditorContext,group:Cx,title:L("actions.clipboard.cutLabel","Cut"),when:oe.writable,order:1},{menuId:se.CommandPalette,group:"",title:L("actions.clipboard.cutLabel","Cut"),order:1},{menuId:se.SimpleEditorContext,group:Cx,title:L("actions.clipboard.cutLabel","Cut"),when:oe.writable,order:1}]})):void 0,$kt=ZAe?Yae(new BI({id:"editor.action.clipboardCopyAction",precondition:void 0,kbOpts:Um?{primary:2081,win:{primary:2081,secondary:[2067]},weight:100}:void 0,menuOpts:[{menuId:se.MenubarEditMenu,group:"2_ccp",title:L({},"&&Copy"),order:2},{menuId:se.EditorContext,group:Cx,title:L("actions.clipboard.copyLabel","Copy"),order:2},{menuId:se.CommandPalette,group:"",title:L("actions.clipboard.copyLabel","Copy"),order:1},{menuId:se.SimpleEditorContext,group:Cx,title:L("actions.clipboard.copyLabel","Copy"),order:2}]})):void 0;sa.appendMenuItem(se.MenubarEditMenu,{submenu:se.MenubarCopy,title:{value:L("copy as","Copy As"),original:"Copy As"},group:"2_ccp",order:3});sa.appendMenuItem(se.EditorContext,{submenu:se.EditorContextCopy,title:{value:L("copy as","Copy As"),original:"Copy As"},group:Cx,order:3});sa.appendMenuItem(se.EditorContext,{submenu:se.EditorContextShare,title:{value:L("share","Share"),original:"Share"},group:"11_share",order:-1,when:ze.and(ze.notEquals("resourceScheme","output"),oe.editorTextFocus)});sa.appendMenuItem(se.EditorTitleContext,{submenu:se.EditorTitleContextShare,title:{value:L("share","Share"),original:"Share"},group:"11_share",order:-1});sa.appendMenuItem(se.ExplorerContext,{submenu:se.ExplorerContextShare,title:{value:L("share","Share"),original:"Share"},group:"11_share",order:-1});const uK=jkt?Yae(new BI({id:"editor.action.clipboardPasteAction",precondition:void 0,kbOpts:Um?{primary:2100,win:{primary:2100,secondary:[1043]},linux:{primary:2100,secondary:[1043]},weight:100}:void 0,menuOpts:[{menuId:se.MenubarEditMenu,group:"2_ccp",title:L({},"&&Paste"),order:4},{menuId:se.EditorContext,group:Cx,title:L("actions.clipboard.pasteLabel","Paste"),when:oe.writable,order:4},{menuId:se.CommandPalette,group:"",title:L("actions.clipboard.pasteLabel","Paste"),order:1},{menuId:se.SimpleEditorContext,group:Cx,title:L("actions.clipboard.pasteLabel","Paste"),when:oe.writable,order:4}]})):void 0;class zkt extends kt{constructor(){super({id:"editor.action.clipboardCopyWithSyntaxHighlightingAction",label:L("actions.clipboard.copyWithSyntaxHighlightingLabel","Copy With Syntax Highlighting"),alias:"Copy With Syntax Highlighting",precondition:void 0,kbOpts:{kbExpr:oe.textInputFocus,primary:0,weight:100}})}run(e,n){!n.hasModel()||!n.getOption(37)&&n.getSelection().isEmpty()||(RJ.forceCopyWithSyntaxHighlighting=!0,n.focus(),n.getContainerDomNode().ownerDocument.execCommand("copy"),RJ.forceCopyWithSyntaxHighlighting=!1)}}function QAe(i,e){i&&(i.addImplementation(1e4,"code-editor",(n,r)=>{const s=n.get(Si).getFocusedCodeEditor();if(s&&s.hasTextFocus()){const o=s.getOption(37),a=s.getSelection();return a&&a.isEmpty()&&!o||s.getContainerDomNode().ownerDocument.execCommand(e),!0}return!1}),i.addImplementation(0,"generic-dom",(n,r)=>(u$().execCommand(e),!0)))}QAe(Wkt,"cut");QAe($kt,"copy");uK&&(uK.addImplementation(1e4,"code-editor",(i,e)=>{const n=i.get(Si),r=i.get(qv),s=n.getFocusedCodeEditor();return s&&s.hasTextFocus()?!s.getContainerDomNode().ownerDocument.execCommand("paste")&&H1?Fkt(void 0,void 0,void 0,function*(){const a=yield r.readText();if(a!==""){const l=EP.INSTANCE.get(a);let c=!1,u=null,d=null;l&&(c=s.getOption(37)&&!!l.isFromEmptySelection,u=typeof l.multicursorText<"u"?l.multicursorText:null,d=l.mode),s.trigger("keyboard","paste",{text:a,pasteOnNewLine:c,multicursorText:u,mode:d})}}):!0:!1}),uK.addImplementation(0,"generic-dom",(i,e)=>(u$().execCommand("paste"),!0)));ZAe&&rt(zkt);var Vkt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class cn{constructor(e){this.value=e}equals(e){return this.value===e.value}contains(e){return this.equals(e)||this.value===""||e.value.startsWith(this.value+cn.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(e){return new cn(this.value+cn.sep+e)}}cn.sep=".";cn.None=new cn("@@none@@");cn.Empty=new cn("");cn.QuickFix=new cn("quickfix");cn.Refactor=new cn("refactor");cn.RefactorExtract=cn.Refactor.append("extract");cn.RefactorInline=cn.Refactor.append("inline");cn.RefactorMove=cn.Refactor.append("move");cn.RefactorRewrite=cn.Refactor.append("rewrite");cn.Notebook=new cn("notebook");cn.Source=new cn("source");cn.SourceOrganizeImports=cn.Source.append("organizeImports");cn.SourceFixAll=cn.Source.append("fixAll");cn.SurroundWith=cn.Refactor.append("surround");var uu;(function(i){i.Refactor="refactor",i.RefactorPreview="refactor preview",i.Lightbulb="lightbulb",i.Default="other (default)",i.SourceAction="source action",i.QuickFix="quick fix action",i.FixAll="fix all",i.OrganizeImports="organize imports",i.AutoFix="auto fix",i.QuickFixHover="quick fix hover window",i.OnSave="save participants",i.ProblemsView="problems view"})(uu||(uu={}));function Hkt(i,e){return!(i.include&&!i.include.intersects(e)||i.excludes&&i.excludes.some(n=>JAe(e,n,i.include))||!i.includeSourceActions&&cn.Source.contains(e))}function Ukt(i,e){const n=e.kind?new cn(e.kind):void 0;return!(i.include&&(!n||!i.include.contains(n))||i.excludes&&n&&i.excludes.some(r=>JAe(n,r,i.include))||!i.includeSourceActions&&n&&cn.Source.contains(n)||i.onlyIncludePreferredActions&&!e.isPreferred)}function JAe(i,e,n){return!(!e.contains(i)||n&&e.contains(n))}class mm{static fromUser(e,n){return!e||typeof e!="object"?new mm(n.kind,n.apply,!1):new mm(mm.getKindFromUser(e,n.kind),mm.getApplyFromUser(e,n.apply),mm.getPreferredUser(e))}static getApplyFromUser(e,n){switch(typeof e.apply=="string"?e.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return n}}static getKindFromUser(e,n){return typeof e.kind=="string"?new cn(e.kind):n}static getPreferredUser(e){return typeof e.preferred=="boolean"?e.preferred:!1}constructor(e,n,r){this.kind=e,this.apply=n,this.preferred=r}}class qkt{constructor(e,n,r){this.action=e,this.provider=n,this.highlightRange=r}resolve(e){var n;return Vkt(this,void 0,void 0,function*(){if(!((n=this.provider)===null||n===void 0)&&n.resolveCodeAction&&!this.action.edit){let r;try{r=yield this.provider.resolveCodeAction(this.action,e)}catch(s){Us(s)}r&&(this.action.edit=r.edit)}return this})}}var ej=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const eNe="editor.action.codeAction",Zae="editor.action.quickFix",tNe="editor.action.autoFix",nNe="editor.action.refactor",iNe="editor.action.sourceAction",Qae="editor.action.organizeImports",Jae="editor.action.fixAll";class yM extends Le{static codeActionsPreferredComparator(e,n){return e.isPreferred&&!n.isPreferred?-1:!e.isPreferred&&n.isPreferred?1:0}static codeActionsComparator({action:e},{action:n}){return Ka(e.diagnostics)?Ka(n.diagnostics)?yM.codeActionsPreferredComparator(e,n):-1:Ka(n.diagnostics)?1:yM.codeActionsPreferredComparator(e,n)}constructor(e,n,r){super(),this.documentation=n,this._register(r),this.allActions=[...e].sort(yM.codeActionsComparator),this.validActions=this.allActions.filter(({action:s})=>!s.disabled)}get hasAutoFix(){return this.validActions.some(({action:e})=>!!e.kind&&cn.QuickFix.contains(new cn(e.kind))&&!!e.isPreferred)}}const t0e={actions:[],documentation:void 0};function wM(i,e,n,r,s,o){var a;return ej(this,void 0,void 0,function*(){const l=r.filter||{},c=Object.assign(Object.assign({},l),{excludes:[...l.excludes||[],cn.Notebook]}),u={only:(a=l.include)===null||a===void 0?void 0:a.value,trigger:r.type},d=new Hae(e,o),h=r.type===2,f=Kkt(i,e,h?c:l),p=new Xe,g=f.map(_=>ej(this,void 0,void 0,function*(){try{s.report(_);const b=yield _.provideCodeActions(e,n,u,d.token);if(b&&p.add(b),d.token.isCancellationRequested)return t0e;const y=((b==null?void 0:b.actions)||[]).filter(k=>k&&Ukt(l,k)),x=Xkt(_,y,l.include);return{actions:y.map(k=>new qkt(k,_)),documentation:x}}catch(b){if(sg(b))throw b;return Us(b),t0e}})),m=i.onDidChange(()=>{const _=i.all(e);ys(_,f)||d.cancel()});try{const _=yield Promise.all(g),b=_.map(x=>x.actions).flat(),y=[...Hm(_.map(x=>x.documentation)),...Gkt(i,e,r,b)];return new yM(b,y,p)}finally{m.dispose(),d.dispose()}})}function Kkt(i,e,n){return i.all(e).filter(r=>r.providedCodeActionKinds?r.providedCodeActionKinds.some(s=>Hkt(n,new cn(s))):!0)}function*Gkt(i,e,n,r){var s,o,a;if(e&&r.length)for(const l of i.all(e))l._getAdditionalMenuItems&&(yield*(s=l._getAdditionalMenuItems)===null||s===void 0?void 0:s.call(l,{trigger:n.type,only:(a=(o=n.filter)===null||o===void 0?void 0:o.include)===null||a===void 0?void 0:a.value},r.map(c=>c.action)))}function Xkt(i,e,n){if(!i.documentation)return;const r=i.documentation.map(s=>({kind:new cn(s.kind),command:s.command}));if(n){let s;for(const o of r)o.kind.contains(n)&&(s?s.kind.contains(o.kind)&&(s=o):s=o);if(s)return s==null?void 0:s.command}for(const s of e)if(s.kind){for(const o of r)if(o.kind.contains(new cn(s.kind)))return o.command}}var tj;(function(i){i.OnSave="onSave",i.FromProblemsView="fromProblemsView",i.FromCodeActions="fromCodeActions"})(tj||(tj={}));function Ykt(i,e,n,r,s=Hn.None){var o;return ej(this,void 0,void 0,function*(){const a=i.get($5),l=i.get(us),c=i.get(_d),u=i.get(Ps);if(c.publicLog2("codeAction.applyCodeAction",{codeActionTitle:e.action.title,codeActionKind:e.action.kind,codeActionIsPreferred:!!e.action.isPreferred,reason:n}),yield e.resolve(s),!s.isCancellationRequested&&!(!((o=e.action.edit)===null||o===void 0)&&o.edits.length&&!(yield a.apply(e.action.edit,{editor:r==null?void 0:r.editor,label:e.action.title,quotableLabel:e.action.title,code:"undoredo.codeAction",respectAutoSaveConfig:n!==tj.OnSave,showPreview:r==null?void 0:r.preview})).isApplied)&&e.action.command)try{yield l.executeCommand(e.action.command.id,...e.action.command.arguments||[])}catch(d){const h=Zkt(d);u.error(typeof h=="string"?h:L("applyCodeActionFailed","An unknown error occurred while applying the code action"))}})}function Zkt(i){return typeof i=="string"?i:i instanceof Error&&typeof i.message=="string"?i.message:void 0}si.registerCommand("_executeCodeActionProvider",function(i,e,n,r,s){return ej(this,void 0,void 0,function*(){if(!(e instanceof Jt))throw uh();const{codeActionProvider:o}=i.get(Et),a=i.get(Fr).getModel(e);if(!a)throw uh();const l=Ft.isISelection(n)?Ft.liftSelection(n):J.isIRange(n)?a.validateRange(n):void 0;if(!l)throw uh();const c=typeof r=="string"?new cn(r):void 0,u=yield wM(o,a,l,{type:1,triggerAction:uu.Default,filter:{includeSourceActions:!0,include:c}},_v.None,Hn.None),d=[],h=Math.min(u.validActions.length,typeof s=="number"?s:0);for(let f=0;ff.action)}finally{setTimeout(()=>u.dispose(),100)}})});var Qkt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Jkt=function(i,e){return function(n,r){e(n,r,i)}},Dte;let nj=Dte=class{constructor(e){this.keybindingService=e}getResolver(){const e=new K1(()=>this.keybindingService.getKeybindings().filter(n=>Dte.codeActionCommands.indexOf(n.command)>=0).filter(n=>n.resolvedKeybinding).map(n=>{let r=n.commandArgs;return n.command===Qae?r={kind:cn.SourceOrganizeImports.value}:n.command===Jae&&(r={kind:cn.SourceFixAll.value}),Object.assign({resolvedKeybinding:n.resolvedKeybinding},mm.fromUser(r,{kind:cn.None,apply:"never"}))}));return n=>{if(n.kind){const r=this.bestKeybindingForCodeAction(n,e.value);return r==null?void 0:r.resolvedKeybinding}}}bestKeybindingForCodeAction(e,n){if(!e.kind)return;const r=new cn(e.kind);return n.filter(s=>s.kind.contains(r)).filter(s=>s.preferred?e.isPreferred:!0).reduceRight((s,o)=>s?s.kind.contains(o.kind)?o:s:o,void 0)}};nj.codeActionCommands=[nNe,eNe,iNe,Qae,Jae];nj=Dte=Qkt([Jkt(0,sr)],nj);ce("symbolIcon.arrayForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.booleanForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},L("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.colorForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.constantForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},L("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},L("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},L("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hcDark:"#EE9D28",hcLight:"#D67E00"},L("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},L("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.fileForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.folderForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},L("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},L("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.keyForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.keywordForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hcDark:"#B180D7",hcLight:"#652D90"},L("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.moduleForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.namespaceForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.nullForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.numberForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.objectForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.operatorForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.packageForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.propertyForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.referenceForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.snippetForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.stringForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.structForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.textForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.typeParameterForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.unitForeground",{dark:ot,light:ot,hcDark:ot,hcLight:ot},L("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));ce("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},L("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));const rNe=Object.freeze({kind:cn.Empty,title:L("codeAction.widget.id.more","More Actions...")}),eLt=Object.freeze([{kind:cn.QuickFix,title:L("codeAction.widget.id.quickfix","Quick Fix")},{kind:cn.RefactorExtract,title:L("codeAction.widget.id.extract","Extract"),icon:lt.wrench},{kind:cn.RefactorInline,title:L("codeAction.widget.id.inline","Inline"),icon:lt.wrench},{kind:cn.RefactorRewrite,title:L("codeAction.widget.id.convert","Rewrite"),icon:lt.wrench},{kind:cn.RefactorMove,title:L("codeAction.widget.id.move","Move"),icon:lt.wrench},{kind:cn.SurroundWith,title:L("codeAction.widget.id.surround","Surround With"),icon:lt.symbolSnippet},{kind:cn.Source,title:L("codeAction.widget.id.source","Source Action"),icon:lt.symbolFile},rNe]);function tLt(i,e,n){if(!e)return i.map(o=>{var a;return{kind:"action",item:o,group:rNe,disabled:!!o.action.disabled,label:o.action.disabled||o.action.title,canPreview:!!(!((a=o.action.edit)===null||a===void 0)&&a.edits.length)}});const r=eLt.map(o=>({group:o,actions:[]}));for(const o of i){const a=o.action.kind?new cn(o.action.kind):cn.None;for(const l of r)if(l.group.kind.contains(a)){l.actions.push(o);break}}const s=[];for(const o of r)if(o.actions.length){s.push({kind:"header",group:o.group});for(const a of o.actions)s.push({kind:"action",item:a,group:o.group,label:a.action.title,disabled:!!a.action.disabled,keybinding:n(a.action)})}return s}var nLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},iLt=function(i,e){return function(n,r){e(n,r,i)}},Ete,S2;(function(i){i.Hidden={type:0};class e{constructor(r,s,o,a){this.actions=r,this.trigger=s,this.editorPosition=o,this.widgetPosition=a,this.type=1}}i.Showing=e})(S2||(S2={}));let Sx=Ete=class extends Le{constructor(e,n){super(),this._editor=e,this._onClick=this._register(new _e),this.onClick=this._onClick.event,this._state=S2.Hidden,this._domNode=tt("div.lightBulbWidget"),this._register(or.ignoreTarget(this._domNode)),this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(r=>{const s=this._editor.getModel();(this.state.type!==1||!s||this.state.editorPosition.lineNumber>=s.getLineCount())&&this.hide()})),this._register(qat(this._domNode,r=>{if(this.state.type!==1)return;this._editor.focus(),r.preventDefault();const{top:s,height:o}=no(this._domNode),a=this._editor.getOption(66);let l=Math.floor(a/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber{(r.buttons&1)===1&&this.hide()})),this._register(this._editor.onDidChangeConfiguration(r=>{r.hasChanged(64)&&!this._editor.getOption(64).enabled&&this.hide()})),this._register(_t.runAndSubscribe(n.onDidUpdateKeybindings,()=>{var r,s,o,a;this._preferredKbLabel=(s=(r=n.lookupKeybinding(tNe))===null||r===void 0?void 0:r.getLabel())!==null&&s!==void 0?s:void 0,this._quickFixKbLabel=(a=(o=n.lookupKeybinding(Zae))===null||o===void 0?void 0:o.getLabel())!==null&&a!==void 0?a:void 0,this._updateLightBulbTitleAndIcon()}))}dispose(){super.dispose(),this._editor.removeContentWidget(this)}getId(){return"LightBulbWidget"}getDomNode(){return this._domNode}getPosition(){return this._state.type===1?this._state.widgetPosition:null}update(e,n,r){if(e.validActions.length<=0)return this.hide();const s=this._editor.getOptions();if(!s.get(64).enabled)return this.hide();const o=this._editor.getModel();if(!o)return this.hide();const{lineNumber:a,column:l}=o.validatePosition(r),c=o.getOptions().tabSize,u=s.get(50),d=o.getLineContent(a),h=A$(d,c),f=u.spaceWidth*h>22,p=m=>m>2&&this._editor.getTopForLineNumber(m)===this._editor.getTopForLineNumber(m-1);let g=a;if(!f){if(a>1&&!p(a-1))g-=1;else if(!p(a+1))g+=1;else if(l*u.spaceWidth<22)return this.hide()}this.state=new S2.Showing(e,n,r,{position:{lineNumber:g,column:1},preference:Ete._posPref}),this._editor.layoutContentWidget(this)}hide(){this.state!==S2.Hidden&&(this.state=S2.Hidden,this._editor.layoutContentWidget(this))}get state(){return this._state}set state(e){this._state=e,this._updateLightBulbTitleAndIcon()}_updateLightBulbTitleAndIcon(){if(this.state.type===1&&this.state.actions.hasAutoFix&&(this._domNode.classList.remove(...en.asClassNameArray(lt.lightBulb)),this._domNode.classList.add(...en.asClassNameArray(lt.lightbulbAutofix)),this._preferredKbLabel)){this.title=L("preferredcodeActionWithKb","Show Code Actions. Preferred Quick Fix Available ({0})",this._preferredKbLabel);return}this._domNode.classList.remove(...en.asClassNameArray(lt.lightbulbAutofix)),this._domNode.classList.add(...en.asClassNameArray(lt.lightBulb)),this._quickFixKbLabel?this.title=L("codeActionWithKb","Show Code Actions ({0})",this._quickFixKbLabel):this.title=L("codeAction","Show Code Actions")}set title(e){this._domNode.title=e}};Sx.ID="editor.contrib.lightbulbWidget";Sx._posPref=[0];Sx=Ete=nLt([iLt(1,sr)],Sx);var rLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},n0e=function(i,e){return function(n,r){e(n,r,i)}},sNe=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Ite;let Rv=Ite=class{constructor(e,n,r){this._options=e,this._languageService=n,this._openerService=r,this._onDidRenderAsync=new _e,this.onDidRenderAsync=this._onDidRenderAsync.event}dispose(){this._onDidRenderAsync.dispose()}render(e,n,r){if(!e)return{element:document.createElement("span"),dispose:()=>{}};const s=new Xe,o=s.add(H$(e,Object.assign(Object.assign({},this._getRenderOptions(e,s)),n),r));return o.element.classList.add("rendered-markdown"),{element:o.element,dispose:()=>s.dispose()}}_getRenderOptions(e,n){return{codeBlockRenderer:(r,s)=>sNe(this,void 0,void 0,function*(){var o,a,l;let c;r?c=this._languageService.getLanguageIdByLanguageName(r):this._options.editor&&(c=(o=this._options.editor.getModel())===null||o===void 0?void 0:o.getLanguageId()),c||(c=ad);const u=yield C_t(this._languageService,s,c),d=document.createElement("span");if(d.innerHTML=(l=(a=Ite._ttpTokenizer)===null||a===void 0?void 0:a.createHTML(u))!==null&&l!==void 0?l:u,this._options.editor){const h=this._options.editor.getOption(50);Ta(d,h)}else this._options.codeBlockFontFamily&&(d.style.fontFamily=this._options.codeBlockFontFamily);return this._options.codeBlockFontSize!==void 0&&(d.style.fontSize=this._options.codeBlockFontSize),d}),asyncRenderCallback:()=>this._onDidRenderAsync.fire(),actionHandler:{callback:r=>oNe(this._openerService,r,e.isTrusted),disposables:n}}}};Rv._ttpTokenizer=$v("tokenizeToString",{createHTML(i){return i}});Rv=Ite=rLt([n0e(1,Ar),n0e(2,fu)],Rv);function oNe(i,e,n){return sNe(this,void 0,void 0,function*(){try{return yield i.open(e,{fromUserGesture:!0,allowContributedOpeners:!0,allowCommands:sLt(n)})}catch(r){return Ln(r),!1}})}function sLt(i){return i===!0?!0:i&&Array.isArray(i.enabledCommands)?i.enabledCommands:!1}var oLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},i0e=function(i,e){return function(n,r){e(n,r,i)}},E8;let au=E8=class{static get(e){return e.getContribution(E8.ID)}constructor(e,n,r){this._openerService=r,this._messageWidget=new ha,this._messageListeners=new Xe,this._mouseOverMessage=!1,this._editor=e,this._visible=E8.MESSAGE_VISIBLE.bindTo(n)}dispose(){var e;(e=this._message)===null||e===void 0||e.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,n){Ua(Hy(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._message=Hy(e)?H$(e,{actionHandler:{callback:s=>oNe(this._openerService,s,Hy(e)?e.isTrusted:void 0),disposables:this._messageListeners}}):void 0,this._messageWidget.value=new r0e(this._editor,n,typeof e=="string"?e:this._message.element),this._messageListeners.add(_t.debounce(this._editor.onDidBlurEditorText,(s,o)=>o,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&Ia(xf(),this._messageWidget.value.getDomNode())||this.closeMessage()})),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(Be(this._messageWidget.value.getDomNode(),ht.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(Be(this._messageWidget.value.getDomNode(),ht.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let r;this._messageListeners.add(this._editor.onMouseMove(s=>{s.target.position&&(r?r.containsPosition(s.target.position)||this.closeMessage():r=new J(n.lineNumber-3,1,s.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(r0e.fadeOut(this._messageWidget.value))}};au.ID="editor.contrib.messageController";au.MESSAGE_VISIBLE=new yt("messageVisible",!1,L("messageVisible","Whether the editor is currently showing an inline message"));au=E8=oLt([i0e(1,mn),i0e(2,fu)],au);const aLt=Ho.bindToContribution(au.get);ct(new aLt({id:"leaveEditorMessage",precondition:au.MESSAGE_VISIBLE,handler:i=>i.closeMessage(),kbOpts:{weight:130,primary:9}}));let r0e=class{static fadeOut(e){const n=()=>{e.dispose(),clearTimeout(r),e.getDomNode().removeEventListener("animationend",n)},r=setTimeout(n,110);return e.getDomNode().addEventListener("animationend",n),e.getDomNode().classList.add("fadeOut"),{dispose:n}}constructor(e,{lineNumber:n,column:r},s){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(n,n,0),this._position={lineNumber:n,column:r},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage"),this._domNode.style.marginLeft="-6px";const o=document.createElement("div");o.classList.add("anchor","top"),this._domNode.appendChild(o);const a=document.createElement("div");typeof s=="string"?(a.classList.add("message"),a.textContent=s):(s.classList.add("message"),a.appendChild(s)),this._domNode.appendChild(a);const l=document.createElement("div");l.classList.add("anchor","below"),this._domNode.appendChild(l),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}dispose(){this._editor.removeContentWidget(this)}getId(){return"messageoverlay"}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2],positionAffinity:1}}afterRender(e){this._domNode.classList.toggle("below",e===2)}};_i(au.ID,au,4);var aNe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Tte=function(i,e){return function(n,r){e(n,r,i)}},lLt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const lNe="acceptSelectedCodeAction",cNe="previewSelectedCodeAction";class cLt{get templateId(){return"header"}renderTemplate(e){e.classList.add("group-header");const n=document.createElement("span");return e.append(n),{container:e,text:n}}renderElement(e,n,r){var s,o;r.text.textContent=(o=(s=e.group)===null||s===void 0?void 0:s.title)!==null&&o!==void 0?o:""}disposeTemplate(e){}}let Rte=class{get templateId(){return"action"}constructor(e,n){this._supportsPreview=e,this._keybindingService=n}renderTemplate(e){e.classList.add(this.templateId);const n=document.createElement("div");n.className="icon",e.append(n);const r=document.createElement("span");r.className="title",e.append(r);const s=new q5(e,Zu);return{container:e,icon:n,text:r,keybinding:s}}renderElement(e,n,r){var s,o,a;if(!((s=e.group)===null||s===void 0)&&s.icon?(r.icon.className=en.asClassName(e.group.icon),e.group.icon.color&&(r.icon.style.color=wt(e.group.icon.color.id))):(r.icon.className=en.asClassName(lt.lightBulb),r.icon.style.color="var(--vscode-editorLightBulb-foreground)"),!e.item||!e.label)return;r.text.textContent=uNe(e.label),r.keybinding.set(e.keybinding),ilt(!!e.keybinding,r.keybinding.element);const l=(o=this._keybindingService.lookupKeybinding(lNe))===null||o===void 0?void 0:o.getLabel(),c=(a=this._keybindingService.lookupKeybinding(cNe))===null||a===void 0?void 0:a.getLabel();r.container.classList.toggle("option-disabled",e.disabled),e.disabled?r.container.title=e.label:l&&c?this._supportsPreview&&e.canPreview?r.container.title=L({},"{0} to apply, {1} to preview",l,c):r.container.title=L({},"{0} to apply",l):r.container.title=""}disposeTemplate(e){}};Rte=aNe([Tte(1,sr)],Rte);class uLt extends UIEvent{constructor(){super("acceptSelectedAction")}}class s0e extends UIEvent{constructor(){super("previewSelectedAction")}}function dLt(i){if(i.kind==="action")return i.label}let Ate=class extends Le{constructor(e,n,r,s,o,a){super(),this._delegate=s,this._contextViewService=o,this._keybindingService=a,this._actionLineHeight=24,this._headerLineHeight=26,this.cts=this._register(new Ns),this.domNode=document.createElement("div"),this.domNode.classList.add("actionList");const l={getHeight:c=>c.kind==="header"?this._headerLineHeight:this._actionLineHeight,getTemplateId:c=>c.kind};this._list=this._register(new Bf(e,this.domNode,l,[new Rte(n,this._keybindingService),new cLt],{keyboardSupport:!1,typeNavigationEnabled:!0,keyboardNavigationLabelProvider:{getKeyboardNavigationLabel:dLt},accessibilityProvider:{getAriaLabel:c=>{if(c.kind==="action"){let u=c.label?uNe(c==null?void 0:c.label):"";return c.disabled&&(u=L({},"{0}, Disabled Reason: {1}",u,c.disabled)),u}return null},getWidgetAriaLabel:()=>L({},"Action Widget"),getRole:c=>c.kind==="action"?"option":"separator",getWidgetRole:()=>"listbox"}})),this._list.style(tk),this._register(this._list.onMouseClick(c=>this.onListClick(c))),this._register(this._list.onMouseOver(c=>this.onListHover(c))),this._register(this._list.onDidChangeFocus(()=>this.onFocus())),this._register(this._list.onDidChangeSelection(c=>this.onListSelection(c))),this._allMenuItems=r,this._list.splice(0,this._list.length,this._allMenuItems),this._list.length&&this.focusNext()}focusCondition(e){return!e.disabled&&e.kind==="action"}hide(e){this._delegate.onHide(e),this.cts.cancel(),this._contextViewService.hideContextView()}layout(e){const n=this._allMenuItems.filter(u=>u.kind==="header").length,s=this._allMenuItems.length*this._actionLineHeight+n*this._headerLineHeight-n*this._actionLineHeight;this._list.layout(s);const o=this._allMenuItems.map((u,d)=>{const h=document.getElementById(this._list.getElementID(d));if(h){h.style.width="auto";const f=h.getBoundingClientRect().width;return h.style.width="",f}return 0}),a=Math.max(...o,e),c=Math.min(s,document.body.clientHeight*.7);return this._list.layout(c,a),this.domNode.style.height=`${c}px`,this._list.domFocus(),a}focusPrevious(){this._list.focusPrevious(1,!0,void 0,this.focusCondition)}focusNext(){this._list.focusNext(1,!0,void 0,this.focusCondition)}acceptSelected(e){const n=this._list.getFocus();if(n.length===0)return;const r=n[0],s=this._list.element(r);if(!this.focusCondition(s))return;const o=e?new s0e:new uLt;this._list.setSelection([r],o)}onListSelection(e){if(!e.elements.length)return;const n=e.elements[0];n.item&&this.focusCondition(n)?this._delegate.onSelect(n.item,e.browserEvent instanceof s0e):this._list.setSelection([])}onFocus(){var e,n;this._list.domFocus();const r=this._list.getFocus();if(r.length===0)return;const s=r[0],o=this._list.element(s);(n=(e=this._delegate).onFocus)===null||n===void 0||n.call(e,o.item)}onListHover(e){return lLt(this,void 0,void 0,function*(){const n=e.element;if(n&&n.item&&this.focusCondition(n)){if(this._delegate.onHover&&!n.disabled&&n.kind==="action"){const r=yield this._delegate.onHover(n.item,this.cts.token);n.canPreview=r?r.canPreview:void 0}e.index&&this._list.splice(e.index,1,[n])}this._list.setFocus(typeof e.index=="number"?[e.index]:[])})}onListClick(e){e.element&&this.focusCondition(e.element)&&this._list.setFocus([])}};Ate=aNe([Tte(4,Vv),Tte(5,sr)],Ate);function uNe(i){return i.replace(/\r\n|\r|\n/g," ")}var hLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},dK=function(i,e){return function(n,r){e(n,r,i)}};ce("actionBar.toggledBackground",{dark:mS,light:mS,hcDark:mS,hcLight:mS},L("actionBar.toggledBackground","Background color for toggled action items in action bar."));const xx={Visible:new yt("codeActionMenuVisible",!1,L("codeActionMenuVisible","Whether the action widget list is visible"))},ok=qn("actionWidgetService");let kx=class extends Le{get isVisible(){return xx.Visible.getValue(this._contextKeyService)||!1}constructor(e,n,r){super(),this._contextViewService=e,this._contextKeyService=n,this._instantiationService=r,this._list=this._register(new ha)}show(e,n,r,s,o,a,l){const c=xx.Visible.bindTo(this._contextKeyService),u=this._instantiationService.createInstance(Ate,e,n,r,s);this._contextViewService.showContextView({getAnchor:()=>o,render:d=>(c.set(!0),this._renderWidget(d,u,l??[])),onHide:d=>{c.reset(),this._onWidgetClosed(d)}},a,!1)}acceptSelected(e){var n;(n=this._list.value)===null||n===void 0||n.acceptSelected(e)}focusPrevious(){var e,n;(n=(e=this._list)===null||e===void 0?void 0:e.value)===null||n===void 0||n.focusPrevious()}focusNext(){var e,n;(n=(e=this._list)===null||e===void 0?void 0:e.value)===null||n===void 0||n.focusNext()}hide(){var e;(e=this._list.value)===null||e===void 0||e.hide(),this._list.clear()}_renderWidget(e,n,r){var s;const o=document.createElement("div");if(o.classList.add("action-widget"),e.appendChild(o),this._list.value=n,this._list.value)o.appendChild(this._list.value.domNode);else throw new Error("List has no value");const a=new Xe,l=document.createElement("div"),c=e.appendChild(l);c.classList.add("context-view-block"),a.add(Be(c,ht.MOUSE_DOWN,g=>g.stopPropagation()));const u=document.createElement("div"),d=e.appendChild(u);d.classList.add("context-view-pointerBlock"),a.add(Be(d,ht.POINTER_MOVE,()=>d.remove())),a.add(Be(d,ht.MOUSE_DOWN,()=>d.remove()));let h=0;if(r.length){const g=this._createActionBar(".action-widget-action-bar",r);g&&(o.appendChild(g.getContainer().parentElement),a.add(g),h=g.getContainer().offsetWidth)}const f=(s=this._list.value)===null||s===void 0?void 0:s.layout(h);o.style.width=`${f}px`;const p=a.add(Gm(e));return a.add(p.onDidBlur(()=>this.hide())),a}_createActionBar(e,n){if(!n.length)return;const r=tt(e),s=new wh(r);return s.push(n,{icon:!1,label:!0}),s}_onWidgetClosed(e){var n;(n=this._list.value)===null||n===void 0||n.hide(e)}};kx=hLt([dK(0,Vv),dK(1,mn),dK(2,hn)],kx);oi(ok,kx,1);const e4=1100;Ir(class extends md{constructor(){super({id:"hideCodeActionWidget",title:{value:L("hideCodeActionWidget.title","Hide action widget"),original:"Hide action widget"},precondition:xx.Visible,keybinding:{weight:e4,primary:9,secondary:[1033]}})}run(i){i.get(ok).hide()}});Ir(class extends md{constructor(){super({id:"selectPrevCodeAction",title:{value:L("selectPrevCodeAction.title","Select previous action"),original:"Select previous action"},precondition:xx.Visible,keybinding:{weight:e4,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}})}run(i){const e=i.get(ok);e instanceof kx&&e.focusPrevious()}});Ir(class extends md{constructor(){super({id:"selectNextCodeAction",title:{value:L("selectNextCodeAction.title","Select next action"),original:"Select next action"},precondition:xx.Visible,keybinding:{weight:e4,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}})}run(i){const e=i.get(ok);e instanceof kx&&e.focusNext()}});Ir(class extends md{constructor(){super({id:lNe,title:{value:L("acceptSelected.title","Accept selected action"),original:"Accept selected action"},precondition:xx.Visible,keybinding:{weight:e4,primary:3,secondary:[2137]}})}run(i){const e=i.get(ok);e instanceof kx&&e.acceptSelected()}});Ir(class extends md{constructor(){super({id:cNe,title:{value:L("previewSelected.title","Preview selected action"),original:"Preview selected action"},precondition:xx.Visible,keybinding:{weight:e4,primary:2051}})}run(i){const e=i.get(ok);e instanceof kx&&e.acceptSelected(!0)}});var fLt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const dNe=new yt("supportedCodeAction","");class pLt extends Le{constructor(e,n,r,s=250){super(),this._editor=e,this._markerService=n,this._signalChange=r,this._delay=s,this._autoTriggerTimer=this._register(new Mf),this._register(this._markerService.onMarkerChanged(o=>this._onMarkerChanges(o))),this._register(this._editor.onDidChangeCursorPosition(()=>this._tryAutoTrigger()))}trigger(e){const n=this._getRangeOfSelectionUnlessWhitespaceEnclosed(e);this._signalChange(n?{trigger:e,selection:n}:void 0)}_onMarkerChanges(e){const n=this._editor.getModel();n&&e.some(r=>Noe(r,n.uri))&&this._tryAutoTrigger()}_tryAutoTrigger(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2,triggerAction:uu.Default})},this._delay)}_getRangeOfSelectionUnlessWhitespaceEnclosed(e){if(!this._editor.hasModel())return;const n=this._editor.getModel(),r=this._editor.getSelection();if(r.isEmpty()&&e.type===2){const{lineNumber:s,column:o}=r.getPosition(),a=n.getLineContent(s);if(a.length===0)return;if(o===1){if(/\s/.test(a[0]))return}else if(o===n.getLineMaxColumn(s)){if(/\s/.test(a[a.length-1]))return}else if(/\s/.test(a[o-2])&&/\s/.test(a[o-1]))return}return r}}var JC;(function(i){i.Empty={type:0};class e{constructor(r,s,o){this.trigger=r,this.position=s,this._cancellablePromise=o,this.type=1,this.actions=o.catch(a=>{if(sg(a))return hNe;throw a})}cancel(){this._cancellablePromise.cancel()}}i.Triggered=e})(JC||(JC={}));const hNe=Object.freeze({allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1});class gLt extends Le{constructor(e,n,r,s,o,a){super(),this._editor=e,this._registry=n,this._markerService=r,this._progressService=o,this._configurationService=a,this._codeActionOracle=this._register(new ha),this._state=JC.Empty,this._onDidChangeState=this._register(new _e),this.onDidChangeState=this._onDidChangeState.event,this._disposed=!1,this._supportedCodeActions=dNe.bindTo(s),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(this._registry.onDidChange(()=>this._update())),this._update()}dispose(){this._disposed||(this._disposed=!0,super.dispose(),this.setState(JC.Empty,!0))}_settingEnabledNearbyQuickfixes(){var e;const n=(e=this._editor)===null||e===void 0?void 0:e.getModel();return this._configurationService?this._configurationService.getValue("editor.codeActionWidget.includeNearbyQuickfixes",{resource:n==null?void 0:n.uri}):!1}_update(){if(this._disposed)return;this._codeActionOracle.value=void 0,this.setState(JC.Empty);const e=this._editor.getModel();if(e&&this._registry.has(e)&&!this._editor.getOption(90)){const n=this._registry.all(e).flatMap(r=>{var s;return(s=r.providedCodeActionKinds)!==null&&s!==void 0?s:[]});this._supportedCodeActions.set(n.join(" ")),this._codeActionOracle.value=new pLt(this._editor,this._markerService,r=>{var s;if(!r){this.setState(JC.Empty);return}const o=r.selection.getStartPosition(),a=go(l=>fLt(this,void 0,void 0,function*(){var c,u,d,h,f,p;if(this._settingEnabledNearbyQuickfixes()&&r.trigger.type===1&&(r.trigger.triggerAction===uu.QuickFix||!((u=(c=r.trigger.filter)===null||c===void 0?void 0:c.include)===null||u===void 0)&&u.contains(cn.QuickFix))){const g=yield wM(this._registry,e,r.selection,r.trigger,_v.None,l);if(l.isCancellationRequested)return hNe;if(!((d=g.validActions)===null||d===void 0?void 0:d.some(_=>_.action.kind?cn.QuickFix.contains(new cn(_.action.kind)):!1))){const _=this._markerService.read({resource:e.uri});if(_.length>0){const b=r.selection.getPosition();let y=b,x=Number.MAX_VALUE,k=!1;for(const D of _){const R=D.endColumn,E=D.endLineNumber,A=D.startLineNumber;(E===b.lineNumber||A===b.lineNumber)&&Math.abs(b.column-R){M.highlightRange=M.action.isPreferred}),A.push(...E.validActions)),{validActions:A,allActions:g.allActions,documentation:g.documentation,hasAutoFix:g.hasAutoFix,dispose:()=>{g.dispose()}}}}}}return wM(this._registry,e,r.selection,r.trigger,_v.None,l)}));r.trigger.type===1&&((s=this._progressService)===null||s===void 0||s.showWhile(a,250)),this.setState(new JC.Triggered(r.trigger,o,a))},void 0),this._codeActionOracle.value.trigger({type:2,triggerAction:uu.Default})}else this._supportedCodeActions.reset()}trigger(e){var n;(n=this._codeActionOracle.value)===null||n===void 0||n.trigger(e)}setState(e,n){e!==this._state&&(this._state.type===1&&this._state.cancel(),this._state=e,!n&&!this._disposed&&this._onDidChangeState.fire(e))}}var mLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},e0=function(i,e){return function(n,r){e(n,r,i)}},nA=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},I8;const _Lt="quickfix-edit-highlight";let k1=I8=class extends Le{static get(e){return e.getContribution(I8.ID)}constructor(e,n,r,s,o,a,l,c,u,d){super(),this._commandService=l,this._configurationService=c,this._actionWidgetService=u,this._instantiationService=d,this._activeCodeActions=this._register(new ha),this._showDisabled=!1,this._disposed=!1,this._editor=e,this._model=this._register(new gLt(this._editor,o.codeActionProvider,n,r,a,c)),this._register(this._model.onDidChangeState(h=>this.update(h))),this._lightBulbWidget=new K1(()=>{const h=this._editor.getContribution(Sx.ID);return h&&this._register(h.onClick(f=>this.showCodeActionList(f.actions,f,{includeDisabledActions:!1,fromLightbulb:!0}))),h}),this._resolver=s.createInstance(nj),this._register(this._editor.onDidLayoutChange(()=>this._actionWidgetService.hide()))}dispose(){this._disposed=!0,super.dispose()}showCodeActions(e,n,r){return this.showCodeActionList(n,r,{includeDisabledActions:!1,fromLightbulb:!1})}manualTriggerAtCurrentPosition(e,n,r,s){var o;if(!this._editor.hasModel())return;(o=au.get(this._editor))===null||o===void 0||o.closeMessage();const a=this._editor.getPosition();this._trigger({type:1,triggerAction:n,filter:r,autoApply:s,context:{notAvailableMessage:e,position:a}})}_trigger(e){return this._model.trigger(e)}_applyCodeAction(e,n,r){return nA(this,void 0,void 0,function*(){try{yield this._instantiationService.invokeFunction(Ykt,e,tj.FromCodeActions,{preview:r,editor:this._editor})}finally{n&&this._trigger({type:2,triggerAction:uu.QuickFix,filter:{}})}})}update(e){var n,r,s,o,a,l,c;return nA(this,void 0,void 0,function*(){if(e.type!==1){(n=this._lightBulbWidget.rawValue)===null||n===void 0||n.hide();return}let u;try{u=yield e.actions}catch(d){Ln(d);return}if(!this._disposed)if((r=this._lightBulbWidget.value)===null||r===void 0||r.update(u,e.trigger,e.position),e.trigger.type===1){if(!((s=e.trigger.filter)===null||s===void 0)&&s.include){const h=this.tryGetValidActionToApply(e.trigger,u);if(h){try{(o=this._lightBulbWidget.value)===null||o===void 0||o.hide(),yield this._applyCodeAction(h,!1,!1)}finally{u.dispose()}return}if(e.trigger.context){const f=this.getInvalidActionThatWouldHaveBeenApplied(e.trigger,u);if(f&&f.action.disabled){(a=au.get(this._editor))===null||a===void 0||a.showMessage(f.action.disabled,e.trigger.context.position),u.dispose();return}}}const d=!!(!((l=e.trigger.filter)===null||l===void 0)&&l.include);if(e.trigger.context&&(!u.allActions.length||!d&&!u.validActions.length)){(c=au.get(this._editor))===null||c===void 0||c.showMessage(e.trigger.context.notAvailableMessage,e.trigger.context.position),this._activeCodeActions.value=u,u.dispose();return}this._activeCodeActions.value=u,this.showCodeActionList(u,this.toCoords(e.position),{includeDisabledActions:d,fromLightbulb:!1})}else this._actionWidgetService.isVisible?u.dispose():this._activeCodeActions.value=u})}getInvalidActionThatWouldHaveBeenApplied(e,n){if(n.allActions.length&&(e.autoApply==="first"&&n.validActions.length===0||e.autoApply==="ifSingle"&&n.allActions.length===1))return n.allActions.find(({action:r})=>r.disabled)}tryGetValidActionToApply(e,n){if(n.validActions.length&&(e.autoApply==="first"&&n.validActions.length>0||e.autoApply==="ifSingle"&&n.validActions.length===1))return n.validActions[0]}showCodeActionList(e,n,r){return nA(this,void 0,void 0,function*(){const s=this._editor.createDecorationsCollection(),o=this._editor.getDomNode();if(!o)return;const a=r.includeDisabledActions&&(this._showDisabled||e.validActions.length===0)?e.allActions:e.validActions;if(!a.length)return;const l=ve.isIPosition(n)?this.toCoords(n):n,c={onSelect:(u,d)=>nA(this,void 0,void 0,function*(){this._applyCodeAction(u,!0,!!d),this._actionWidgetService.hide(),s.clear()}),onHide:()=>{var u;(u=this._editor)===null||u===void 0||u.focus(),s.clear()},onHover:(u,d)=>nA(this,void 0,void 0,function*(){var h;if(yield u.resolve(d),!d.isCancellationRequested)return{canPreview:!!(!((h=u.action.edit)===null||h===void 0)&&h.edits.length)}}),onFocus:u=>{var d,h;if(u&&u.highlightRange&&u.action.diagnostics){const f=[{range:u.action.diagnostics[0],options:I8.DECORATION}];s.set(f);const p=u.action.diagnostics[0],g=(h=(d=this._editor.getModel())===null||d===void 0?void 0:d.getWordAtPosition({lineNumber:p.startLineNumber,column:p.startColumn}))===null||h===void 0?void 0:h.word;v1(L("editingNewSelection","Context: {0} at line {1} and column {2}.",g,p.startLineNumber,p.startColumn))}else s.clear()}};this._actionWidgetService.show("codeActionWidget",!0,tLt(a,this._shouldShowHeaders(),this._resolver.getResolver()),c,l,o,this._getActionBarActions(e,n,r))})}toCoords(e){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(e,1),this._editor.render();const n=this._editor.getScrolledVisiblePosition(e),r=no(this._editor.getDomNode()),s=r.left+n.left,o=r.top+n.top+n.height;return{x:s,y:o}}_shouldShowHeaders(){var e;const n=(e=this._editor)===null||e===void 0?void 0:e.getModel();return this._configurationService.getValue("editor.codeActionWidget.showHeaders",{resource:n==null?void 0:n.uri})}_getActionBarActions(e,n,r){if(r.fromLightbulb)return[];const s=e.documentation.map(o=>{var a;return{id:o.id,label:o.title,tooltip:(a=o.tooltip)!==null&&a!==void 0?a:"",class:void 0,enabled:!0,run:()=>{var l;return this._commandService.executeCommand(o.id,...(l=o.arguments)!==null&&l!==void 0?l:[])}}});return r.includeDisabledActions&&e.validActions.length>0&&e.allActions.length!==e.validActions.length&&s.push(this._showDisabled?{id:"hideMoreActions",label:L("hideMoreActions","Hide Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!1,this.showCodeActionList(e,n,r))}:{id:"showMoreActions",label:L("showMoreActions","Show Disabled"),enabled:!0,tooltip:"",class:void 0,run:()=>(this._showDisabled=!0,this.showCodeActionList(e,n,r))}),s}};k1.ID="editor.contrib.codeActionController";k1.DECORATION=kn.register({description:"quickfix-highlight",className:_Lt});k1=I8=mLt([e0(1,h_),e0(2,mn),e0(3,hn),e0(4,Et),e0(5,Z1),e0(6,us),e0(7,ei),e0(8,ok),e0(9,hn)],k1);Of((i,e)=>{((s,o)=>{o&&e.addRule(`.monaco-editor ${s} { background-color: ${o}; }`)})(".quickfix-edit-highlight",i.getColor(xm));const r=i.getColor(by);r&&e.addRule(`.monaco-editor .quickfix-edit-highlight { border: 1px ${Vp(i.type)?"dotted":"solid"} ${r}; box-sizing: border-box; }`)});function t4(i){return ze.regex(dNe.keys()[0],new RegExp("(\\s|^)"+dd(i.value)+"\\b"))}const ele={type:"object",defaultSnippets:[{body:{kind:""}}],properties:{kind:{type:"string",description:L("args.schema.kind","Kind of the code action to run.")},apply:{type:"string",description:L("args.schema.apply","Controls when the returned actions are applied."),default:"ifSingle",enum:["first","ifSingle","never"],enumDescriptions:[L("args.schema.apply.first","Always apply the first returned code action."),L("args.schema.apply.ifSingle","Apply the first returned code action if it is the only one."),L("args.schema.apply.never","Do not apply the returned code actions.")]},preferred:{type:"boolean",default:!1,description:L("args.schema.preferred","Controls if only preferred code actions should be returned.")}}};function ak(i,e,n,r,s=uu.Default){if(i.hasModel()){const o=k1.get(i);o==null||o.manualTriggerAtCurrentPosition(e,s,n,r)}}class vLt extends kt{constructor(){super({id:Zae,label:L("quickfix.trigger.label","Quick Fix..."),alias:"Quick Fix...",precondition:ze.and(oe.writable,oe.hasCodeActionsProvider),kbOpts:{kbExpr:oe.textInputFocus,primary:2137,weight:100}})}run(e,n){return ak(n,L("editor.action.quickFix.noneMessage","No code actions available"),void 0,void 0,uu.QuickFix)}}class bLt extends Ho{constructor(){super({id:eNe,precondition:ze.and(oe.writable,oe.hasCodeActionsProvider),description:{description:"Trigger a code action",args:[{name:"args",schema:ele}]}})}runEditorCommand(e,n,r){const s=mm.fromUser(r,{kind:cn.Empty,apply:"ifSingle"});return ak(n,typeof(r==null?void 0:r.kind)=="string"?s.preferred?L("editor.action.codeAction.noneMessage.preferred.kind","No preferred code actions for '{0}' available",r.kind):L("editor.action.codeAction.noneMessage.kind","No code actions for '{0}' available",r.kind):s.preferred?L("editor.action.codeAction.noneMessage.preferred","No preferred code actions available"):L("editor.action.codeAction.noneMessage","No code actions available"),{include:s.kind,includeSourceActions:!0,onlyIncludePreferredActions:s.preferred},s.apply)}}class yLt extends kt{constructor(){super({id:nNe,label:L("refactor.label","Refactor..."),alias:"Refactor...",precondition:ze.and(oe.writable,oe.hasCodeActionsProvider),kbOpts:{kbExpr:oe.textInputFocus,primary:3120,mac:{primary:1328},weight:100},contextMenuOpts:{group:"1_modification",order:2,when:ze.and(oe.writable,t4(cn.Refactor))},description:{description:"Refactor...",args:[{name:"args",schema:ele}]}})}run(e,n,r){const s=mm.fromUser(r,{kind:cn.Refactor,apply:"never"});return ak(n,typeof(r==null?void 0:r.kind)=="string"?s.preferred?L("editor.action.refactor.noneMessage.preferred.kind","No preferred refactorings for '{0}' available",r.kind):L("editor.action.refactor.noneMessage.kind","No refactorings for '{0}' available",r.kind):s.preferred?L("editor.action.refactor.noneMessage.preferred","No preferred refactorings available"):L("editor.action.refactor.noneMessage","No refactorings available"),{include:cn.Refactor.contains(s.kind)?s.kind:cn.None,onlyIncludePreferredActions:s.preferred},s.apply,uu.Refactor)}}class wLt extends kt{constructor(){super({id:iNe,label:L("source.label","Source Action..."),alias:"Source Action...",precondition:ze.and(oe.writable,oe.hasCodeActionsProvider),contextMenuOpts:{group:"1_modification",order:2.1,when:ze.and(oe.writable,t4(cn.Source))},description:{description:"Source Action...",args:[{name:"args",schema:ele}]}})}run(e,n,r){const s=mm.fromUser(r,{kind:cn.Source,apply:"never"});return ak(n,typeof(r==null?void 0:r.kind)=="string"?s.preferred?L("editor.action.source.noneMessage.preferred.kind","No preferred source actions for '{0}' available",r.kind):L("editor.action.source.noneMessage.kind","No source actions for '{0}' available",r.kind):s.preferred?L("editor.action.source.noneMessage.preferred","No preferred source actions available"):L("editor.action.source.noneMessage","No source actions available"),{include:cn.Source.contains(s.kind)?s.kind:cn.None,includeSourceActions:!0,onlyIncludePreferredActions:s.preferred},s.apply,uu.SourceAction)}}class CLt extends kt{constructor(){super({id:Qae,label:L("organizeImports.label","Organize Imports"),alias:"Organize Imports",precondition:ze.and(oe.writable,t4(cn.SourceOrganizeImports)),kbOpts:{kbExpr:oe.textInputFocus,primary:1581,weight:100}})}run(e,n){return ak(n,L("editor.action.organize.noneMessage","No organize imports action available"),{include:cn.SourceOrganizeImports,includeSourceActions:!0},"ifSingle",uu.OrganizeImports)}}class SLt extends kt{constructor(){super({id:Jae,label:L("fixAll.label","Fix All"),alias:"Fix All",precondition:ze.and(oe.writable,t4(cn.SourceFixAll))})}run(e,n){return ak(n,L("fixAll.noneMessage","No fix all action available"),{include:cn.SourceFixAll,includeSourceActions:!0},"ifSingle",uu.FixAll)}}class xLt extends kt{constructor(){super({id:tNe,label:L("autoFix.label","Auto Fix..."),alias:"Auto Fix...",precondition:ze.and(oe.writable,t4(cn.QuickFix)),kbOpts:{kbExpr:oe.textInputFocus,primary:1625,mac:{primary:2649},weight:100}})}run(e,n){return ak(n,L("editor.action.autoFix.noneMessage","No auto fixes available"),{include:cn.QuickFix,onlyIncludePreferredActions:!0},"ifSingle",uu.AutoFix)}}_i(k1.ID,k1,3);_i(Sx.ID,Sx,4);rt(vLt);rt(yLt);rt(wLt);rt(CLt);rt(xLt);rt(SLt);ct(new bLt);Kr.as(ag.Configuration).registerConfiguration(Object.assign(Object.assign({},j$),{properties:{"editor.codeActionWidget.showHeaders":{type:"boolean",scope:5,description:L("showCodeActionHeaders","Enable/disable showing group headers in the Code Action menu."),default:!0}}}));Kr.as(ag.Configuration).registerConfiguration(Object.assign(Object.assign({},j$),{properties:{"editor.codeActionWidget.includeNearbyQuickfixes":{type:"boolean",scope:5,description:L("includeNearbyQuickfixes","Enable/disable showing nearest quickfix within a line when not currently on a diagnostic."),default:!1}}}));var o0e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class Nte{constructor(){this.lenses=[],this._disposables=new Xe}dispose(){this._disposables.dispose()}get isDisposed(){return this._disposables.isDisposed}add(e,n){this._disposables.add(e);for(const r of e.lenses)this.lenses.push({symbol:r,provider:n})}}function fNe(i,e,n){return o0e(this,void 0,void 0,function*(){const r=i.ordered(e),s=new Map,o=new Nte,a=r.map((l,c)=>o0e(this,void 0,void 0,function*(){s.set(l,c);try{const u=yield Promise.resolve(l.provideCodeLenses(e,n));u&&o.add(u,l)}catch(u){Us(u)}}));return yield Promise.all(a),o.lenses=o.lenses.sort((l,c)=>l.symbol.range.startLineNumberc.symbol.range.startLineNumber?1:s.get(l.provider)s.get(c.provider)?1:l.symbol.range.startColumnc.symbol.range.startColumn?1:0),o})}si.registerCommand("_executeCodeLensProvider",function(i,...e){let[n,r]=e;Ui(Jt.isUri(n)),Ui(typeof r=="number"||!r);const{codeLensProvider:s}=i.get(Et),o=i.get(Fr).getModel(n);if(!o)throw uh();const a=[],l=new Xe;return fNe(s,o,Hn.None).then(c=>{l.add(c);const u=[];for(const d of c.lenses)r==null||d.symbol.command?a.push(d.symbol):r-- >0&&d.provider.resolveCodeLens&&u.push(Promise.resolve(d.provider.resolveCodeLens(o,d.symbol,Hn.None)).then(h=>a.push(h||d.symbol)));return Promise.all(u)}).then(()=>a).finally(()=>{setTimeout(()=>l.dispose(),100)})});var kLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},LLt=function(i,e){return function(n,r){e(n,r,i)}};const pNe=qn("ICodeLensCache");class a0e{constructor(e,n){this.lineCount=e,this.data=n}}let Mte=class{constructor(e){this._fakeProvider=new class{provideCodeLenses(){throw new Error("not supported")}},this._cache=new G1(20,.75);const n="codelens/cache";Z0(()=>e.remove(n,1));const r="codelens/cache2",s=e.get(r,1,"{}");this._deserialize(s),_t.once(e.onWillSaveState)(o=>{o.reason===E7.SHUTDOWN&&e.store(r,this._serialize(),1,1)})}put(e,n){const r=n.lenses.map(a=>{var l;return{range:a.symbol.range,command:a.symbol.command&&{id:"",title:(l=a.symbol.command)===null||l===void 0?void 0:l.title}}}),s=new Nte;s.add({lenses:r,dispose:()=>{}},this._fakeProvider);const o=new a0e(e.getLineCount(),s);this._cache.set(e.uri.toString(),o)}get(e){const n=this._cache.get(e.uri.toString());return n&&n.lineCount===e.getLineCount()?n.data:void 0}delete(e){this._cache.delete(e.uri.toString())}_serialize(){const e=Object.create(null);for(const[n,r]of this._cache){const s=new Set;for(const o of r.data.lenses)s.add(o.symbol.range.startLineNumber);e[n]={lineCount:r.lineCount,lines:[...s.values()]}}return JSON.stringify(e)}_deserialize(e){try{const n=JSON.parse(e);for(const r in n){const s=n[r],o=[];for(const l of s.lines)o.push({range:new J(l,1,l,11)});const a=new Nte;a.add({lenses:o,dispose(){}},this._fakeProvider),this._cache.set(r,new a0e(s.lineCount,a))}}catch{}}};Mte=kLt([LLt(0,jf)],Mte);oi(pNe,Mte,1);class DLt{constructor(e,n,r){this.afterColumn=1073741824,this.afterLineNumber=e,this.heightInPx=n,this._onHeight=r,this.suppressMouseDown=!0,this.domNode=document.createElement("div")}onComputedHeight(e){this._lastHeight===void 0?this._lastHeight=e:this._lastHeight!==e&&(this._lastHeight=e,this._onHeight())}isVisible(){return this._lastHeight!==0&&this.domNode.hasAttribute("monaco-visible-view-zone")}}class bz{constructor(e,n){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=e,this._id=`codelens.widget-${bz._idPool++}`,this.updatePosition(n),this._domNode=document.createElement("span"),this._domNode.className="codelens-decoration"}withCommands(e,n){this._commands.clear();const r=[];let s=!1;for(let o=0;o{u.symbol.command&&c.push(u.symbol),r.addDecoration({range:u.symbol.range,options:l0e},h=>this._decorationIds[d]=h),l?l=J.plusRange(l,u.symbol.range):l=J.lift(u.symbol.range)}),this._viewZone=new DLt(l.startLineNumber-1,o,a),this._viewZoneId=s.addZone(this._viewZone),c.length>0&&(this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(c,!1))}_createContentWidgetIfNecessary(){this._contentWidget?this._editor.layoutContentWidget(this._contentWidget):(this._contentWidget=new bz(this._editor,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget))}dispose(e,n){this._decorationIds.forEach(e.removeDecoration,e),this._decorationIds=[],n==null||n.removeZone(this._viewZoneId),this._contentWidget&&(this._editor.removeContentWidget(this._contentWidget),this._contentWidget=void 0),this._isDisposed=!0}isDisposed(){return this._isDisposed}isValid(){return this._decorationIds.some((e,n)=>{const r=this._editor.getModel().getDecorationRange(e),s=this._data[n].symbol;return!!(r&&J.isEmpty(s.range)===r.isEmpty())})}updateCodeLensSymbols(e,n){this._decorationIds.forEach(n.removeDecoration,n),this._decorationIds=[],this._data=e,this._data.forEach((r,s)=>{n.addDecoration({range:r.symbol.range,options:l0e},o=>this._decorationIds[s]=o)})}updateHeight(e,n){this._viewZone.heightInPx=e,n.layoutZone(this._viewZoneId),this._contentWidget&&this._editor.layoutContentWidget(this._contentWidget)}computeIfNecessary(e){if(!this._viewZone.isVisible())return null;for(let n=0;n=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},iA=function(i,e){return function(n,r){e(n,r,i)}},gNe=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let iI=class{constructor(e,n,r,s,o,a){this._editor=e,this._languageFeaturesService=n,this._commandService=s,this._notificationService=o,this._codeLensCache=a,this._disposables=new Xe,this._localToDispose=new Xe,this._lenses=[],this._oldCodeLensModels=new Xe,this._provideCodeLensDebounce=r.for(n.codeLensProvider,"CodeLensProvide",{min:250}),this._resolveCodeLensesDebounce=r.for(n.codeLensProvider,"CodeLensResolve",{min:250,salt:"resolve"}),this._resolveCodeLensesScheduler=new Ji(()=>this._resolveCodeLensesInViewport(),this._resolveCodeLensesDebounce.default()),this._disposables.add(this._editor.onDidChangeModel(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeConfiguration(l=>{(l.hasChanged(50)||l.hasChanged(19)||l.hasChanged(18))&&this._updateLensStyle(),l.hasChanged(17)&&this._onModelChange()})),this._disposables.add(n.codeLensProvider.onDidChange(this._onModelChange,this)),this._onModelChange(),this._updateLensStyle()}dispose(){var e;this._localDispose(),this._disposables.dispose(),this._oldCodeLensModels.dispose(),(e=this._currentCodeLensModel)===null||e===void 0||e.dispose()}_getLayoutInfo(){const e=Math.max(1.3,this._editor.getOption(66)/this._editor.getOption(52));let n=this._editor.getOption(19);return(!n||n<5)&&(n=this._editor.getOption(52)*.9|0),{fontSize:n,codeLensHeight:n*e|0}}_updateLensStyle(){const{codeLensHeight:e,fontSize:n}=this._getLayoutInfo(),r=this._editor.getOption(18),s=this._editor.getOption(50),{style:o}=this._editor.getContainerDomNode();o.setProperty("--vscode-editorCodeLens-lineHeight",`${e}px`),o.setProperty("--vscode-editorCodeLens-fontSize",`${n}px`),o.setProperty("--vscode-editorCodeLens-fontFeatureSettings",s.fontFeatureSettings),r&&(o.setProperty("--vscode-editorCodeLens-fontFamily",r),o.setProperty("--vscode-editorCodeLens-fontFamilyDefault",su.fontFamily)),this._editor.changeViewZones(a=>{for(const l of this._lenses)l.updateHeight(e,a)})}_localDispose(){var e,n,r;(e=this._getCodeLensModelPromise)===null||e===void 0||e.cancel(),this._getCodeLensModelPromise=void 0,(n=this._resolveCodeLensesPromise)===null||n===void 0||n.cancel(),this._resolveCodeLensesPromise=void 0,this._localToDispose.clear(),this._oldCodeLensModels.clear(),(r=this._currentCodeLensModel)===null||r===void 0||r.dispose()}_onModelChange(){this._localDispose();const e=this._editor.getModel();if(!e||!this._editor.getOption(17)||e.isTooLargeForTokenization())return;const n=this._codeLensCache.get(e);if(n&&this._renderCodeLensSymbols(n),!this._languageFeaturesService.codeLensProvider.has(e)){n&&this._localToDispose.add(g1(()=>{const s=this._codeLensCache.get(e);n===s&&(this._codeLensCache.delete(e),this._onModelChange())},30*1e3));return}for(const s of this._languageFeaturesService.codeLensProvider.all(e))if(typeof s.onDidChange=="function"){const o=s.onDidChange(()=>r.schedule());this._localToDispose.add(o)}const r=new Ji(()=>{var s;const o=Date.now();(s=this._getCodeLensModelPromise)===null||s===void 0||s.cancel(),this._getCodeLensModelPromise=go(a=>fNe(this._languageFeaturesService.codeLensProvider,e,a)),this._getCodeLensModelPromise.then(a=>{this._currentCodeLensModel&&this._oldCodeLensModels.add(this._currentCodeLensModel),this._currentCodeLensModel=a,this._codeLensCache.put(e,a);const l=this._provideCodeLensDebounce.update(e,Date.now()-o);r.delay=l,this._renderCodeLensSymbols(a),this._resolveCodeLensesInViewportSoon()},Ln)},this._provideCodeLensDebounce.get(e));this._localToDispose.add(r),this._localToDispose.add(gn(()=>this._resolveCodeLensesScheduler.cancel())),this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{var s;this._editor.changeDecorations(o=>{this._editor.changeViewZones(a=>{const l=[];let c=-1;this._lenses.forEach(d=>{!d.isValid()||c===d.getLineNumber()?l.push(d):(d.update(a),c=d.getLineNumber())});const u=new hK;l.forEach(d=>{d.dispose(u,a),this._lenses.splice(this._lenses.indexOf(d),1)}),u.commit(o)})}),r.schedule(),this._resolveCodeLensesScheduler.cancel(),(s=this._resolveCodeLensesPromise)===null||s===void 0||s.cancel(),this._resolveCodeLensesPromise=void 0})),this._localToDispose.add(this._editor.onDidFocusEditorWidget(()=>{r.schedule()})),this._localToDispose.add(this._editor.onDidBlurEditorText(()=>{r.cancel()})),this._localToDispose.add(this._editor.onDidScrollChange(s=>{s.scrollTopChanged&&this._lenses.length>0&&this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(this._editor.onDidLayoutChange(()=>{this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(gn(()=>{if(this._editor.getModel()){const s=Qp.capture(this._editor);this._editor.changeDecorations(o=>{this._editor.changeViewZones(a=>{this._disposeAllLenses(o,a)})}),s.restore(this._editor)}else this._disposeAllLenses(void 0,void 0)})),this._localToDispose.add(this._editor.onMouseDown(s=>{if(s.target.type!==9)return;let o=s.target.element;if((o==null?void 0:o.tagName)==="SPAN"&&(o=o.parentElement),(o==null?void 0:o.tagName)==="A")for(const a of this._lenses){const l=a.getCommand(o);if(l){this._commandService.executeCommand(l.id,...l.arguments||[]).catch(c=>this._notificationService.error(c));break}}})),r.schedule()}_disposeAllLenses(e,n){const r=new hK;for(const s of this._lenses)s.dispose(r,n);e&&r.commit(e),this._lenses.length=0}_renderCodeLensSymbols(e){if(!this._editor.hasModel())return;const n=this._editor.getModel().getLineCount(),r=[];let s;for(const l of e.lenses){const c=l.symbol.range.startLineNumber;c<1||c>n||(s&&s[s.length-1].symbol.range.startLineNumber===c?s.push(l):(s=[l],r.push(s)))}if(!r.length&&!this._lenses.length)return;const o=Qp.capture(this._editor),a=this._getLayoutInfo();this._editor.changeDecorations(l=>{this._editor.changeViewZones(c=>{const u=new hK;let d=0,h=0;for(;hthis._resolveCodeLensesInViewportSoon())),d++,h++)}for(;dthis._resolveCodeLensesInViewportSoon())),h++;u.commit(l)})}),o.restore(this._editor)}_resolveCodeLensesInViewportSoon(){this._editor.getModel()&&this._resolveCodeLensesScheduler.schedule()}_resolveCodeLensesInViewport(){var e;(e=this._resolveCodeLensesPromise)===null||e===void 0||e.cancel(),this._resolveCodeLensesPromise=void 0;const n=this._editor.getModel();if(!n)return;const r=[],s=[];if(this._lenses.forEach(l=>{const c=l.computeIfNecessary(n);c&&(r.push(c),s.push(l))}),r.length===0)return;const o=Date.now(),a=go(l=>{const c=r.map((u,d)=>{const h=new Array(u.length),f=u.map((p,g)=>!p.symbol.command&&typeof p.provider.resolveCodeLens=="function"?Promise.resolve(p.provider.resolveCodeLens(n,p.symbol,l)).then(m=>{h[g]=m},Us):(h[g]=p.symbol,Promise.resolve(void 0)));return Promise.all(f).then(()=>{!l.isCancellationRequested&&!s[d].isDisposed()&&s[d].updateCommands(h)})});return Promise.all(c)});this._resolveCodeLensesPromise=a,this._resolveCodeLensesPromise.then(()=>{const l=this._resolveCodeLensesDebounce.update(n,Date.now()-o);this._resolveCodeLensesScheduler.delay=l,this._currentCodeLensModel&&this._codeLensCache.put(n,this._currentCodeLensModel),this._oldCodeLensModels.clear(),a===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)},l=>{Ln(l),a===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)})}getModel(){var e;return gNe(this,void 0,void 0,function*(){return yield this._getCodeLensModelPromise,yield this._resolveCodeLensesPromise,!((e=this._currentCodeLensModel)===null||e===void 0)&&e.isDisposed?void 0:this._currentCodeLensModel})}};iI.ID="css.editor.codeLens";iI=ELt([iA(1,Et),iA(2,xh),iA(3,us),iA(4,Ps),iA(5,pNe)],iI);_i(iI.ID,iI,1);rt(class extends kt{constructor(){super({id:"codelens.showLensesInCurrentLine",precondition:oe.hasCodeLensProvider,label:L("showLensOnLine","Show CodeLens Commands For Current Line"),alias:"Show CodeLens Commands For Current Line"})}run(e,n){return gNe(this,void 0,void 0,function*(){if(!n.hasModel())return;const r=e.get(lg),s=e.get(us),o=e.get(Ps),a=n.getSelection().positionLineNumber,l=n.getContribution(iI.ID);if(!l)return;const c=yield l.getModel();if(!c)return;const u=[];for(const f of c.lenses)f.symbol.command&&f.symbol.range.startLineNumber===a&&u.push({label:f.symbol.command.title,command:f.symbol.command});if(u.length===0)return;const d=yield r.pick(u,{canPickMany:!1,placeHolder:L("placeHolder","Select a command")});if(!d)return;let h=d.command;if(c.isDisposed){const f=yield l.getModel(),p=f==null?void 0:f.lenses.find(g=>{var m;return g.symbol.range.startLineNumber===a&&((m=g.symbol.command)===null||m===void 0?void 0:m.title)===h.title});if(!p||!p.symbol.command)return;h=p.symbol.command}try{yield s.executeCommand(h.id,...h.arguments||[])}catch(f){o.error(f)}})}});var ILt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},fK=function(i,e){return function(n,r){e(n,r,i)}},TLt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class tle{constructor(e,n){this._editorWorkerClient=new aoe(e,!1,"editorWorkerService",n)}provideDocumentColors(e,n){return TLt(this,void 0,void 0,function*(){return this._editorWorkerClient.computeDefaultDocumentColors(e.uri)})}provideColorPresentations(e,n,r){const s=n.range,o=n.color,a=o.alpha,l=new Te(new ii(Math.round(255*o.red),Math.round(255*o.green),Math.round(255*o.blue),a)),c=a?Te.Format.CSS.formatRGB(l):Te.Format.CSS.formatRGBA(l),u=a?Te.Format.CSS.formatHSL(l):Te.Format.CSS.formatHSLA(l),d=a?Te.Format.CSS.formatHex(l):Te.Format.CSS.formatHexA(l),h=[];return h.push({label:c,textEdit:{range:s,text:c}}),h.push({label:u,textEdit:{range:s,text:u}}),h.push({label:d,textEdit:{range:s,text:d}}),h}}let Pte=class extends Le{constructor(e,n,r){super(),this._register(r.colorProvider.register("*",new tle(e,n)))}};Pte=ILt([fK(0,Fr),fK(1,dr),fK(2,Et)],Pte);sz(Pte);var n4=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function mNe(i,e,n,r=!0){return n4(this,void 0,void 0,function*(){return nle(new RLt,i,e,n,r)})}function _Ne(i,e,n,r){return Promise.resolve(n.provideColorPresentations(i,e,r))}class RLt{constructor(){}compute(e,n,r,s){return n4(this,void 0,void 0,function*(){const o=yield e.provideDocumentColors(n,r);if(Array.isArray(o))for(const a of o)s.push({colorInfo:a,provider:e});return Array.isArray(o)})}}class ALt{constructor(){}compute(e,n,r,s){return n4(this,void 0,void 0,function*(){const o=yield e.provideDocumentColors(n,r);if(Array.isArray(o))for(const a of o)s.push({range:a.range,color:[a.color.red,a.color.green,a.color.blue,a.color.alpha]});return Array.isArray(o)})}}class NLt{constructor(e){this.colorInfo=e}compute(e,n,r,s){return n4(this,void 0,void 0,function*(){const o=yield e.provideColorPresentations(n,this.colorInfo,Hn.None);return Array.isArray(o)&&s.push(...o),Array.isArray(o)})}}function nle(i,e,n,r,s){return n4(this,void 0,void 0,function*(){let o=!1,a;const l=[],c=e.ordered(n);for(let u=c.length-1;u>=0;u--){const d=c[u];if(d instanceof tle)a=d;else try{(yield i.compute(d,n,r,l))&&(o=!0)}catch(h){Us(h)}}return o?l:a&&s?(yield i.compute(a,n,r,l),l):[]})}function vNe(i,e){const{colorProvider:n}=i.get(Et),r=i.get(Fr).getModel(e);if(!r)throw uh();const s=i.get(ei).getValue("editor.defaultColorDecorators",{resource:e});return{model:r,colorProviderRegistry:n,isDefaultColorDecoratorsEnabled:s}}si.registerCommand("_executeDocumentColorProvider",function(i,...e){const[n]=e;if(!(n instanceof Jt))throw uh();const{model:r,colorProviderRegistry:s,isDefaultColorDecoratorsEnabled:o}=vNe(i,n);return nle(new ALt,s,r,Hn.None,o)});si.registerCommand("_executeColorPresentationProvider",function(i,...e){const[n,r]=e,{uri:s,range:o}=r;if(!(s instanceof Jt)||!Array.isArray(n)||n.length!==4||!J.isIRange(o))throw uh();const{model:a,colorProviderRegistry:l,isDefaultColorDecoratorsEnabled:c}=vNe(i,s),[u,d,h,f]=n;return nle(new NLt({range:o,color:{red:u,green:d,blue:h,alpha:f}}),l,a,Hn.None,c)});var MLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},pK=function(i,e){return function(n,r){e(n,r,i)}},u0e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Ote;const bNe=Object.create({});let L1=Ote=class extends Le{constructor(e,n,r,s){super(),this._editor=e,this._configurationService=n,this._languageFeaturesService=r,this._localToDispose=this._register(new Xe),this._decorationsIds=[],this._colorDatas=new Map,this._colorDecoratorIds=this._editor.createDecorationsCollection(),this._ruleFactory=new A5(this._editor),this._decoratorLimitReporter=new PLt,this._colorDecorationClassRefs=this._register(new Xe),this._debounceInformation=s.for(r.colorProvider,"Document Colors",{min:Ote.RECOMPUTE_TIME}),this._register(e.onDidChangeModel(()=>{this._isColorDecoratorsEnabled=this.isEnabled(),this.updateColors()})),this._register(e.onDidChangeModelLanguage(()=>this.updateColors())),this._register(r.colorProvider.onDidChange(()=>this.updateColors())),this._register(e.onDidChangeConfiguration(o=>{const a=this._isColorDecoratorsEnabled;this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(145);const l=a!==this._isColorDecoratorsEnabled||o.hasChanged(21),c=o.hasChanged(145);(l||c)&&(this._isColorDecoratorsEnabled?this.updateColors():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isColorDecoratorsEnabled=this.isEnabled(),this._isDefaultColorDecoratorsEnabled=this._editor.getOption(145),this.updateColors()}isEnabled(){const e=this._editor.getModel();if(!e)return!1;const n=e.getLanguageId(),r=this._configurationService.getValue(n);if(r&&typeof r=="object"){const s=r.colorDecorators;if(s&&s.enable!==void 0&&!s.enable)return s.enable}return this._editor.getOption(20)}static get(e){return e.getContribution(this.ID)}dispose(){this.stop(),this.removeAllDecorations(),super.dispose()}updateColors(){if(this.stop(),!this._isColorDecoratorsEnabled)return;const e=this._editor.getModel();!e||!this._languageFeaturesService.colorProvider.has(e)||(this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new Mf,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},this._debounceInformation.get(e)))})),this.beginCompute())}beginCompute(){return u0e(this,void 0,void 0,function*(){this._computePromise=go(e=>u0e(this,void 0,void 0,function*(){const n=this._editor.getModel();if(!n)return[];const r=new Xa(!1),s=yield mNe(this._languageFeaturesService.colorProvider,n,e,this._isDefaultColorDecoratorsEnabled);return this._debounceInformation.update(n,r.elapsed()),s}));try{const e=yield this._computePromise;this.updateDecorations(e),this.updateColorDecorators(e),this._computePromise=null}catch(e){Ln(e)}})}stop(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()}updateDecorations(e){const n=e.map(r=>({range:{startLineNumber:r.colorInfo.range.startLineNumber,startColumn:r.colorInfo.range.startColumn,endLineNumber:r.colorInfo.range.endLineNumber,endColumn:r.colorInfo.range.endColumn},options:kn.EMPTY}));this._editor.changeDecorations(r=>{this._decorationsIds=r.deltaDecorations(this._decorationsIds,n),this._colorDatas=new Map,this._decorationsIds.forEach((s,o)=>this._colorDatas.set(s,e[o]))})}updateColorDecorators(e){this._colorDecorationClassRefs.clear();const n=[],r=this._editor.getOption(21);for(let o=0;othis._colorDatas.has(s.id));return r.length===0?null:this._colorDatas.get(r[0].id)}isColorDecoration(e){return this._colorDecoratorIds.has(e)}};L1.ID="editor.contrib.colorDetector";L1.RECOMPUTE_TIME=1e3;L1=Ote=MLt([pK(1,ei),pK(2,Et),pK(3,xh)],L1);class PLt{constructor(){this._onDidChange=new _e,this._computed=0,this._limited=!1}update(e,n){(e!==this._computed||n!==this._limited)&&(this._computed=e,this._limited=n,this._onDidChange.fire())}}_i(L1.ID,L1,1);class OLt{get color(){return this._color}set color(e){this._color.equals(e)||(this._color=e,this._onDidChangeColor.fire(e))}get presentation(){return this.colorPresentations[this.presentationIndex]}get colorPresentations(){return this._colorPresentations}set colorPresentations(e){this._colorPresentations=e,this.presentationIndex>e.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)}constructor(e,n,r){this.presentationIndex=r,this._onColorFlushed=new _e,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new _e,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new _e,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=e,this._color=e,this._colorPresentations=n}selectNextColorPresentation(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)}guessColorPresentation(e,n){let r=-1;for(let s=0;s{this.backgroundColor=a.getColor(e7)||Te.white})),this._register(Be(this._pickedColorNode,ht.CLICK,()=>this.model.selectNextColorPresentation())),this._register(Be(this._originalColorNode,ht.CLICK,()=>{this.model.color=this.model.originalColor,this.model.flushColor()})),this._register(n.onDidChangeColor(this.onDidChangeColor,this)),this._register(n.onDidChangePresentation(this.onDidChangePresentation,this)),this._pickedColorNode.style.backgroundColor=Te.Format.CSS.format(n.color)||"",this._pickedColorNode.classList.toggle("light",n.color.rgba.a<.5?this.backgroundColor.isLighter():n.color.isLighter()),this.onDidChangeColor(this.model.color),this.showingStandaloneColorPicker&&(this._domNode.classList.add("standalone-colorpicker"),this._closeButton=this._register(new BLt(this._domNode)))}get closeButton(){return this._closeButton}get pickedColorNode(){return this._pickedColorNode}get originalColorNode(){return this._originalColorNode}onDidChangeColor(e){this._pickedColorNode.style.backgroundColor=Te.Format.CSS.format(e)||"",this._pickedColorNode.classList.toggle("light",e.rgba.a<.5?this.backgroundColor.isLighter():e.isLighter()),this.onDidChangePresentation()}onDidChangePresentation(){this._pickedColorPresentation.textContent=this.model.presentation?this.model.presentation.label:""}}let BLt=class extends Le{constructor(e){super(),this._onClicked=this._register(new _e),this.onClicked=this._onClicked.event,this._button=document.createElement("div"),this._button.classList.add("close-button"),He(e,this._button);const n=document.createElement("div");n.classList.add("close-button-inner-div"),He(this._button,n),He(n,Gu(".button"+en.asCSSSelector(ws("color-picker-close",lt.close,L("closeIcon","Icon to close the color picker"))))).classList.add("close-icon"),this._button.onclick=()=>{this._onClicked.fire()}}};class jLt extends Le{constructor(e,n,r,s=!1){super(),this.model=n,this.pixelRatio=r,this._insertButton=null,this._domNode=Gu(".colorpicker-body"),He(e,this._domNode),this._saturationBox=new WLt(this._domNode,this.model,this.pixelRatio),this._register(this._saturationBox),this._register(this._saturationBox.onDidChange(this.onDidSaturationValueChange,this)),this._register(this._saturationBox.onColorFlushed(this.flushColor,this)),this._opacityStrip=new $Lt(this._domNode,this.model,s),this._register(this._opacityStrip),this._register(this._opacityStrip.onDidChange(this.onDidOpacityChange,this)),this._register(this._opacityStrip.onColorFlushed(this.flushColor,this)),this._hueStrip=new zLt(this._domNode,this.model,s),this._register(this._hueStrip),this._register(this._hueStrip.onDidChange(this.onDidHueChange,this)),this._register(this._hueStrip.onColorFlushed(this.flushColor,this)),s&&(this._insertButton=this._register(new VLt(this._domNode)),this._domNode.classList.add("standalone-colorpicker"))}flushColor(){this.model.flushColor()}onDidSaturationValueChange({s:e,v:n}){const r=this.model.color.hsva;this.model.color=new Te(new vm(r.h,e,n,r.a))}onDidOpacityChange(e){const n=this.model.color.hsva;this.model.color=new Te(new vm(n.h,n.s,n.v,e))}onDidHueChange(e){const n=this.model.color.hsva,r=(1-e)*360;this.model.color=new Te(new vm(r===360?0:r,n.s,n.v,n.a))}get domNode(){return this._domNode}get saturationBox(){return this._saturationBox}get enterButton(){return this._insertButton}layout(){this._saturationBox.layout(),this._opacityStrip.layout(),this._hueStrip.layout()}}class WLt extends Le{constructor(e,n,r){super(),this.model=n,this.pixelRatio=r,this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new _e,this.onColorFlushed=this._onColorFlushed.event,this._domNode=Gu(".saturation-wrap"),He(e,this._domNode),this._canvas=document.createElement("canvas"),this._canvas.className="saturation-box",He(this._domNode,this._canvas),this.selection=Gu(".saturation-selection"),He(this._domNode,this.selection),this.layout(),this._register(Be(this._domNode,ht.POINTER_DOWN,s=>this.onPointerDown(s))),this._register(this.model.onDidChangeColor(this.onDidChangeColor,this)),this.monitor=null}get domNode(){return this._domNode}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;this.monitor=this._register(new $I);const n=no(this._domNode);e.target!==this.selection&&this.onDidChangePosition(e.offsetX,e.offsetY),this.monitor.startMonitoring(e.target,e.pointerId,e.buttons,s=>this.onDidChangePosition(s.pageX-n.left,s.pageY-n.top),()=>null);const r=Be(e.target.ownerDocument,ht.POINTER_UP,()=>{this._onColorFlushed.fire(),r.dispose(),this.monitor&&(this.monitor.stopMonitoring(!0),this.monitor=null)},!0)}onDidChangePosition(e,n){const r=Math.max(0,Math.min(1,e/this.width)),s=Math.max(0,Math.min(1,1-n/this.height));this.paintSelection(r,s),this._onDidChange.fire({s:r,v:s})}layout(){this.width=this._domNode.offsetWidth,this.height=this._domNode.offsetHeight,this._canvas.width=this.width*this.pixelRatio,this._canvas.height=this.height*this.pixelRatio,this.paint();const e=this.model.color.hsva;this.paintSelection(e.s,e.v)}paint(){const e=this.model.color.hsva,n=new Te(new vm(e.h,1,1,1)),r=this._canvas.getContext("2d"),s=r.createLinearGradient(0,0,this._canvas.width,0);s.addColorStop(0,"rgba(255, 255, 255, 1)"),s.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),s.addColorStop(1,"rgba(255, 255, 255, 0)");const o=r.createLinearGradient(0,0,0,this._canvas.height);o.addColorStop(0,"rgba(0, 0, 0, 0)"),o.addColorStop(1,"rgba(0, 0, 0, 1)"),r.rect(0,0,this._canvas.width,this._canvas.height),r.fillStyle=Te.Format.CSS.format(n),r.fill(),r.fillStyle=s,r.fill(),r.fillStyle=o,r.fill()}paintSelection(e,n){this.selection.style.left=`${e*this.width}px`,this.selection.style.top=`${this.height-n*this.height}px`}onDidChangeColor(e){if(this.monitor&&this.monitor.isMonitoring())return;this.paint();const n=e.hsva;this.paintSelection(n.s,n.v)}}class yNe extends Le{constructor(e,n,r=!1){super(),this.model=n,this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new _e,this.onColorFlushed=this._onColorFlushed.event,r?(this.domNode=He(e,Gu(".standalone-strip")),this.overlay=He(this.domNode,Gu(".standalone-overlay"))):(this.domNode=He(e,Gu(".strip")),this.overlay=He(this.domNode,Gu(".overlay"))),this.slider=He(this.domNode,Gu(".slider")),this.slider.style.top="0px",this._register(Be(this.domNode,ht.POINTER_DOWN,s=>this.onPointerDown(s))),this._register(n.onDidChangeColor(this.onDidChangeColor,this)),this.layout()}layout(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;const e=this.getValue(this.model.color);this.updateSliderPosition(e)}onDidChangeColor(e){const n=this.getValue(e);this.updateSliderPosition(n)}onPointerDown(e){if(!e.target||!(e.target instanceof Element))return;const n=this._register(new $I),r=no(this.domNode);this.domNode.classList.add("grabbing"),e.target!==this.slider&&this.onDidChangeTop(e.offsetY),n.startMonitoring(e.target,e.pointerId,e.buttons,o=>this.onDidChangeTop(o.pageY-r.top),()=>null);const s=Be(e.target.ownerDocument,ht.POINTER_UP,()=>{this._onColorFlushed.fire(),s.dispose(),n.stopMonitoring(!0),this.domNode.classList.remove("grabbing")},!0)}onDidChangeTop(e){const n=Math.max(0,Math.min(1,1-e/this.height));this.updateSliderPosition(n),this._onDidChange.fire(n)}updateSliderPosition(e){this.slider.style.top=`${(1-e)*this.height}px`}}class $Lt extends yNe{constructor(e,n,r=!1){super(e,n,r),this.domNode.classList.add("opacity-strip"),this.onDidChangeColor(this.model.color)}onDidChangeColor(e){super.onDidChangeColor(e);const{r:n,g:r,b:s}=e.rgba,o=new Te(new ii(n,r,s,1)),a=new Te(new ii(n,r,s,0));this.overlay.style.background=`linear-gradient(to bottom, ${o} 0%, ${a} 100%)`}getValue(e){return e.hsva.a}}class zLt extends yNe{constructor(e,n,r=!1){super(e,n,r),this.domNode.classList.add("hue-strip")}getValue(e){return 1-e.hsva.h/360}}class VLt extends Le{constructor(e){super(),this._onClicked=this._register(new _e),this.onClicked=this._onClicked.event,this._button=He(e,document.createElement("button")),this._button.classList.add("insert-button"),this._button.textContent="Insert",this._button.onclick=n=>{this._onClicked.fire()}}get button(){return this._button}}class HLt extends Pf{constructor(e,n,r,s,o=!1){super(),this.model=n,this.pixelRatio=r,this._register(lP.onDidChange(()=>this.layout()));const a=Gu(".colorpicker-widget");e.appendChild(a),this.header=this._register(new FLt(a,this.model,s,o)),this.body=this._register(new jLt(a,this.model,this.pixelRatio,o))}layout(){this.body.layout()}}var wNe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},CNe=function(i,e){return function(n,r){e(n,r,i)}},rI=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class ULt{constructor(e,n,r,s){this.owner=e,this.range=n,this.model=r,this.provider=s,this.forceShowAtRange=!0}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let ij=class{constructor(e,n){this._editor=e,this._themeService=n,this.hoverOrdinal=2}computeSync(e,n){return[]}computeAsync(e,n,r){return zs.fromPromise(this._computeAsync(e,n,r))}_computeAsync(e,n,r){return rI(this,void 0,void 0,function*(){if(!this._editor.hasModel())return[];const s=L1.get(this._editor);if(!s)return[];for(const o of n){if(!s.isColorDecoration(o))continue;const a=s.getColorData(o.range.getStartPosition());if(a)return[yield SNe(this,this._editor.getModel(),a.colorInfo,a.provider)]}return[]})}renderHoverParts(e,n){return xNe(this,this._editor,this._themeService,n,e)}};ij=wNe([CNe(1,Do)],ij);class qLt{constructor(e,n,r,s){this.owner=e,this.range=n,this.model=r,this.provider=s}}let oO=class{constructor(e,n){this._editor=e,this._themeService=n,this._color=null}createColorHover(e,n,r){return rI(this,void 0,void 0,function*(){if(!this._editor.hasModel()||!L1.get(this._editor))return null;const o=yield mNe(r,this._editor.getModel(),Hn.None);let a=null,l=null;for(const h of o){const f=h.colorInfo;J.containsRange(f.range,e.range)&&(a=f,l=h.provider)}const c=a??e,u=l??n,d=!!a;return{colorHover:yield SNe(this,this._editor.getModel(),c,u),foundInEditor:d}})}updateEditorModel(e){return rI(this,void 0,void 0,function*(){if(!this._editor.hasModel())return;const n=e.model;let r=new J(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn);this._color&&(yield T8(this._editor.getModel(),n,this._color,r,e),r=kNe(this._editor,r,n))})}renderHoverParts(e,n){return xNe(this,this._editor,this._themeService,n,e)}set color(e){this._color=e}get color(){return this._color}};oO=wNe([CNe(1,Do)],oO);function SNe(i,e,n,r){return rI(this,void 0,void 0,function*(){const s=e.getValueInRange(n.range),{red:o,green:a,blue:l,alpha:c}=n.color,u=new ii(Math.round(o*255),Math.round(a*255),Math.round(l*255),c),d=new Te(u),h=yield _Ne(e,n,r,Hn.None),f=new OLt(d,[],0);return f.colorPresentations=h||[],f.guessColorPresentation(d,s),i instanceof ij?new ULt(i,J.lift(n.range),f,r):new qLt(i,J.lift(n.range),f,r)})}function xNe(i,e,n,r,s){if(r.length===0||!e.hasModel())return Le.None;if(s.setMinimumDimensions){const f=e.getOption(66)+8;s.setMinimumDimensions(new bi(302,f))}const o=new Xe,a=r[0],l=e.getModel(),c=a.model,u=o.add(new HLt(s.fragment,c,e.getOption(141),n,i instanceof oO));s.setColorPicker(u);let d=!1,h=new J(a.range.startLineNumber,a.range.startColumn,a.range.endLineNumber,a.range.endColumn);if(i instanceof oO){const f=r[0].model.color;i.color=f,T8(l,c,f,h,a),o.add(c.onColorFlushed(p=>{i.color=p}))}else o.add(c.onColorFlushed(f=>rI(this,void 0,void 0,function*(){yield T8(l,c,f,h,a),d=!0,h=kNe(e,h,c,s)})));return o.add(c.onDidChangeColor(f=>{T8(l,c,f,h,a)})),o.add(e.onDidChangeModelContent(f=>{d?d=!1:(s.hide(),e.focus())})),o}function kNe(i,e,n,r){let s,o;if(n.presentation.textEdit){s=[n.presentation.textEdit],o=new J(n.presentation.textEdit.range.startLineNumber,n.presentation.textEdit.range.startColumn,n.presentation.textEdit.range.endLineNumber,n.presentation.textEdit.range.endColumn);const a=i.getModel()._setTrackedRange(null,o,3);i.pushUndoStop(),i.executeEdits("colorpicker",s),o=i.getModel()._getTrackedRange(a)||o}else s=[{range:e,text:n.presentation.label,forceMoveMarkers:!1}],o=e.setEndPosition(e.endLineNumber,e.startColumn+n.presentation.label.length),i.pushUndoStop(),i.executeEdits("colorpicker",s);return n.presentation.additionalTextEdits&&(s=[...n.presentation.additionalTextEdits],i.executeEdits("colorpicker",s),r&&r.hide()),i.pushUndoStop(),o}function T8(i,e,n,r,s){return rI(this,void 0,void 0,function*(){const o=yield _Ne(i,{range:r,color:{red:n.rgba.r/255,green:n.rgba.g/255,blue:n.rgba.b/255,alpha:n.rgba.a}},s.provider,Hn.None);e.colorPresentations=o||[]})}function Fte(i,e){return!!i[e]}class gK{constructor(e,n){this.target=e.target,this.isLeftClick=e.event.leftButton,this.isMiddleClick=e.event.middleButton,this.isRightClick=e.event.rightButton,this.hasTriggerModifier=Fte(e.event,n.triggerModifier),this.hasSideBySideModifier=Fte(e.event,n.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=e.event.detail<=1}}class d0e{constructor(e,n){this.keyCodeIsTriggerKey=e.keyCode===n.triggerKey,this.keyCodeIsSideBySideKey=e.keyCode===n.triggerSideBySideKey,this.hasTriggerModifier=Fte(e,n.triggerModifier)}}class k6{constructor(e,n,r,s){this.triggerKey=e,this.triggerModifier=n,this.triggerSideBySideKey=r,this.triggerSideBySideModifier=s}equals(e){return this.triggerKey===e.triggerKey&&this.triggerModifier===e.triggerModifier&&this.triggerSideBySideKey===e.triggerSideBySideKey&&this.triggerSideBySideModifier===e.triggerSideBySideModifier}}function h0e(i){return i==="altKey"?ri?new k6(57,"metaKey",6,"altKey"):new k6(5,"ctrlKey",6,"altKey"):ri?new k6(6,"altKey",57,"metaKey"):new k6(6,"altKey",5,"ctrlKey")}class yz extends Le{constructor(e,n){var r;super(),this._onMouseMoveOrRelevantKeyDown=this._register(new _e),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new _e),this.onExecute=this._onExecute.event,this._onCancel=this._register(new _e),this.onCancel=this._onCancel.event,this._editor=e,this._extractLineNumberFromMouseEvent=(r=n==null?void 0:n.extractLineNumberFromMouseEvent)!==null&&r!==void 0?r:s=>s.target.position?s.target.position.lineNumber:0,this._opts=h0e(this._editor.getOption(77)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(s=>{if(s.hasChanged(77)){const o=h0e(this._editor.getOption(77));if(this._opts.equals(o))return;this._opts=o,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(s=>this._onEditorMouseMove(new gK(s,this._opts)))),this._register(this._editor.onMouseDown(s=>this._onEditorMouseDown(new gK(s,this._opts)))),this._register(this._editor.onMouseUp(s=>this._onEditorMouseUp(new gK(s,this._opts)))),this._register(this._editor.onKeyDown(s=>this._onEditorKeyDown(new d0e(s,this._opts)))),this._register(this._editor.onKeyUp(s=>this._onEditorKeyUp(new d0e(s,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(s=>this._onDidChangeCursorSelection(s))),this._register(this._editor.onDidChangeModel(s=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(s=>{(s.scrollTopChanged||s.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(e){e.selection&&e.selection.startColumn!==e.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(e){this._lastMouseMoveEvent=e,this._onMouseMoveOrRelevantKeyDown.fire([e,null])}_onEditorMouseDown(e){this._hasTriggerKeyOnMouseDown=e.hasTriggerModifier,this._lineNumberOnMouseDown=this._extractLineNumberFromMouseEvent(e)}_onEditorMouseUp(e){const n=this._extractLineNumberFromMouseEvent(e);this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===n&&this._onExecute.fire(e)}_onEditorKeyDown(e){this._lastMouseMoveEvent&&(e.keyCodeIsTriggerKey||e.keyCodeIsSideBySideKey&&e.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,e]):e.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(e){e.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}}var KLt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},t0=function(i,e){return function(n,r){e(n,r,i)}};let D1=class extends qE{constructor(e,n,r,s,o,a,l,c,u,d,h,f,p){super(e,Object.assign(Object.assign({},s.getRawOptions()),{overflowWidgetsDomNode:s.getOverflowWidgetsDomNode()}),r,o,a,l,c,u,d,h,f,p),this._parentEditor=s,this._overwriteOptions=n,super.updateOptions(this._overwriteOptions),this._register(s.onDidChangeConfiguration(g=>this._onParentConfigurationChanged(g)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(e){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(e){XW(this._overwriteOptions,e,!0),super.updateOptions(this._overwriteOptions)}};D1=KLt([t0(4,hn),t0(5,Si),t0(6,us),t0(7,mn),t0(8,Do),t0(9,Ps),t0(10,zv),t0(11,dr),t0(12,Et)],D1);const f0e=new Te(new ii(0,122,204)),GLt={showArrow:!0,showFrame:!0,className:"",frameColor:f0e,arrowColor:f0e,keepEditorSelection:!1},XLt="vs.editor.contrib.zoneWidget";class YLt{constructor(e,n,r,s,o,a,l,c){this.id="",this.domNode=e,this.afterLineNumber=n,this.afterColumn=r,this.heightInLines=s,this.showInHiddenAreas=l,this.ordinal=c,this._onDomNodeTop=o,this._onComputedHeight=a}onDomNodeTop(e){this._onDomNodeTop(e)}onComputedHeight(e){this._onComputedHeight(e)}}class ZLt{constructor(e,n){this._id=e,this._domNode=n}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}}class wz{constructor(e){this._editor=e,this._ruleName=wz._IdGenerator.nextId(),this._decorations=this._editor.createDecorationsCollection(),this._color=null,this._height=-1}dispose(){this.hide(),cpe(this._ruleName)}set color(e){this._color!==e&&(this._color=e,this._updateStyle())}set height(e){this._height!==e&&(this._height=e,this._updateStyle())}_updateStyle(){cpe(this._ruleName),cJ(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px; margin-left: -${this._height}px; `)}show(e){e.column===1&&(e={lineNumber:e.lineNumber,column:2}),this._decorations.set([{range:J.fromPositions(e),options:{description:"zone-widget-arrow",className:this._ruleName,stickiness:1}}])}hide(){this._decorations.clear()}}wz._IdGenerator=new lae(".arrow-decoration-");class QLt{constructor(e,n={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._viewZone=null,this._disposables=new Xe,this.container=null,this._isShowing=!1,this.editor=e,this._positionMarkerId=this.editor.createDecorationsCollection(),this.options=T0(n),XW(this.options,GLt,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange(r=>{const s=this._getWidth(r);this.domNode.style.width=s+"px",this.domNode.style.left=this._getLeft(r)+"px",this._onWidth(s)}))}dispose(){this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones(e=>{this._viewZone&&e.removeZone(this._viewZone.id),this._viewZone=null}),this._positionMarkerId.clear(),this._disposables.dispose()}create(){this.domNode.classList.add("zone-widget"),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement("div"),this.container.classList.add("zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new wz(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(e){e.frameColor&&(this.options.frameColor=e.frameColor),e.arrowColor&&(this.options.arrowColor=e.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){const e=this.options.frameColor.toString();this.container.style.borderTopColor=e,this.container.style.borderBottomColor=e}if(this._arrow&&this.options.arrowColor){const e=this.options.arrowColor.toString();this._arrow.color=e}}_getWidth(e){return e.width-e.minimap.minimapWidth-e.verticalScrollbarWidth}_getLeft(e){return e.minimap.minimapWidth>0&&e.minimap.minimapLeft===0?e.minimap.minimapWidth:0}_onViewZoneTop(e){this.domNode.style.top=e+"px"}_onViewZoneHeight(e){var n;if(this.domNode.style.height=`${e}px`,this.container){const r=e-this._decoratingElementsHeight();this.container.style.height=`${r}px`;const s=this.editor.getLayoutInfo();this._doLayout(r,this._getWidth(s))}(n=this._resizeSash)===null||n===void 0||n.layout()}get position(){const e=this._positionMarkerId.getRange(0);if(e)return e.getStartPosition()}show(e,n){const r=J.isIRange(e)?J.lift(e):J.fromPositions(e);this._isShowing=!0,this._showImpl(r,n),this._isShowing=!1,this._positionMarkerId.set([{range:r,options:kn.EMPTY}])}hide(){var e;this._viewZone&&(this.editor.changeViewZones(n=>{this._viewZone&&n.removeZone(this._viewZone.id)}),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),(e=this._arrow)===null||e===void 0||e.hide(),this._positionMarkerId.clear()}_decoratingElementsHeight(){const e=this.editor.getOption(66);let n=0;if(this.options.showArrow){const r=Math.round(e/3);n+=2*r}if(this.options.showFrame){const r=Math.round(e/9);n+=2*r}return n}_showImpl(e,n){const r=e.getStartPosition(),s=this.editor.getLayoutInfo(),o=this._getWidth(s);this.domNode.style.width=`${o}px`,this.domNode.style.left=this._getLeft(s)+"px";const a=document.createElement("div");a.style.overflow="hidden";const l=this.editor.getOption(66);if(!this.options.allowUnlimitedHeight){const f=Math.max(12,this.editor.getLayoutInfo().height/l*.8);n=Math.min(n,f)}let c=0,u=0;if(this._arrow&&this.options.showArrow&&(c=Math.round(l/3),this._arrow.height=c,this._arrow.show(r)),this.options.showFrame&&(u=Math.round(l/9)),this.editor.changeViewZones(f=>{this._viewZone&&f.removeZone(this._viewZone.id),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this.domNode.style.top="-1000px",this._viewZone=new YLt(a,r.lineNumber,r.column,n,p=>this._onViewZoneTop(p),p=>this._onViewZoneHeight(p),this.options.showInHiddenAreas,this.options.ordinal),this._viewZone.id=f.addZone(this._viewZone),this._overlayWidget=new ZLt(XLt+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){const f=this.options.frameWidth?this.options.frameWidth:u;this.container.style.borderTopWidth=f+"px",this.container.style.borderBottomWidth=f+"px"}const d=n*l-this._decoratingElementsHeight();this.container&&(this.container.style.top=c+"px",this.container.style.height=d+"px",this.container.style.overflow="hidden"),this._doLayout(d,o),this.options.keepEditorSelection||this.editor.setSelection(e);const h=this.editor.getModel();if(h){const f=h.validateRange(new J(e.startLineNumber,1,e.endLineNumber+1,1));this.revealRange(f,f.startLineNumber===h.getLineCount())}}revealRange(e,n){n?this.editor.revealLineNearTop(e.endLineNumber,0):this.editor.revealRange(e,0)}setCssClass(e,n){this.container&&(n&&this.container.classList.remove(n),this.container.classList.add(e))}_onWidth(e){}_doLayout(e,n){}_relayout(e){this._viewZone&&this._viewZone.heightInLines!==e&&this.editor.changeViewZones(n=>{this._viewZone&&(this._viewZone.heightInLines=e,n.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new ja(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.state=0);let e;this._disposables.add(this._resizeSash.onDidStart(n=>{this._viewZone&&(e={startY:n.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{e=void 0})),this._disposables.add(this._resizeSash.onDidChange(n=>{if(e){const r=(n.currentY-e.startY)/this.editor.getOption(66),s=r<0?Math.ceil(r):Math.floor(r),o=e.heightInLines+s;o>5&&o<35&&this._relayout(o)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){const e=this.editor.getLayoutInfo();return e.width-e.minimap.minimapWidth}}var LNe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},DNe=function(i,e){return function(n,r){e(n,r,i)}};const ENe=qn("IPeekViewService");oi(ENe,class{constructor(){this._widgets=new Map}addExclusiveWidget(i,e){const n=this._widgets.get(i);n&&(n.listener.dispose(),n.widget.dispose());const r=()=>{const s=this._widgets.get(i);s&&s.widget===e&&(s.listener.dispose(),this._widgets.delete(i))};this._widgets.set(i,{widget:e,listener:e.onDidClose(r)})}},1);var xc;(function(i){i.inPeekEditor=new yt("inReferenceSearchEditor",!0,L("inReferenceSearchEditor","Whether the current code editor is embedded inside peek")),i.notInPeekEditor=i.inPeekEditor.toNegated()})(xc||(xc={}));let aO=class{constructor(e,n){e instanceof D1&&xc.inPeekEditor.bindTo(n)}dispose(){}};aO.ID="editor.contrib.referenceController";aO=LNe([DNe(1,mn)],aO);_i(aO.ID,aO,0);function JLt(i){const e=i.get(Si).getFocusedCodeEditor();return e instanceof D1?e.getParentEditor():e}const eDt={headerBackgroundColor:Te.white,primaryHeadingColor:Te.fromHex("#333333"),secondaryHeadingColor:Te.fromHex("#6c6c6cb3")};let rj=class extends QLt{constructor(e,n,r){super(e,n),this.instantiationService=r,this._onDidClose=new _e,this.onDidClose=this._onDidClose.event,XW(this.options,eDt,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(e){const n=this.options;e.headerBackgroundColor&&(n.headerBackgroundColor=e.headerBackgroundColor),e.primaryHeadingColor&&(n.primaryHeadingColor=e.primaryHeadingColor),e.secondaryHeadingColor&&(n.secondaryHeadingColor=e.secondaryHeadingColor),super.style(e)}_applyStyles(){super._applyStyles();const e=this.options;this._headElement&&e.headerBackgroundColor&&(this._headElement.style.backgroundColor=e.headerBackgroundColor.toString()),this._primaryHeading&&e.primaryHeadingColor&&(this._primaryHeading.style.color=e.primaryHeadingColor.toString()),this._secondaryHeading&&e.secondaryHeadingColor&&(this._secondaryHeading.style.color=e.secondaryHeadingColor.toString()),this._bodyElement&&e.frameColor&&(this._bodyElement.style.borderColor=e.frameColor.toString())}_fillContainer(e){this.setCssClass("peekview-widget"),this._headElement=tt(".head"),this._bodyElement=tt(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),e.appendChild(this._headElement),e.appendChild(this._bodyElement)}_fillHead(e,n){this._titleElement=tt(".peekview-title"),this.options.supportOnTitleClick&&(this._titleElement.classList.add("clickable"),As(this._titleElement,"click",o=>this._onTitleClick(o))),He(this._headElement,this._titleElement),this._fillTitleIcon(this._titleElement),this._primaryHeading=tt("span.filename"),this._secondaryHeading=tt("span.dirname"),this._metaHeading=tt("span.meta"),He(this._titleElement,this._primaryHeading,this._secondaryHeading,this._metaHeading);const r=tt(".peekview-actions");He(this._headElement,r);const s=this._getActionBarOptions();this._actionbarWidget=new wh(r,s),this._disposables.add(this._actionbarWidget),n||this._actionbarWidget.push(new Vl("peekview.close",L("label.close","Close"),en.asClassName(lt.close),!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(e){}_getActionBarOptions(){return{actionViewItemProvider:oyt.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(e){}setTitle(e,n){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=e,this._primaryHeading.setAttribute("title",e),n?this._secondaryHeading.innerText=n:la(this._secondaryHeading))}setMetaTitle(e){this._metaHeading&&(e?(this._metaHeading.innerText=e,Jc(this._metaHeading)):Pl(this._metaHeading))}_doLayout(e,n){if(!this._isShowing&&e<0){this.dispose();return}const r=Math.ceil(this.editor.getOption(66)*1.2),s=Math.round(e-(r+2));this._doLayoutHead(r,n),this._doLayoutBody(s,n)}_doLayoutHead(e,n){this._headElement&&(this._headElement.style.height=`${e}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(e,n){this._bodyElement&&(this._bodyElement.style.height=`${e}px`)}};rj=LNe([DNe(2,hn)],rj);const tDt=ce("peekViewTitle.background",{dark:"#252526",light:"#F3F3F3",hcDark:Te.black,hcLight:Te.white},L("peekViewTitleBackground","Background color of the peek view title area.")),INe=ce("peekViewTitleLabel.foreground",{dark:Te.white,light:Te.black,hcDark:Te.white,hcLight:_f},L("peekViewTitleForeground","Color of the peek view title.")),TNe=ce("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161",hcDark:"#FFFFFF99",hcLight:"#292929"},L("peekViewTitleInfoForeground","Color of the peek view title info.")),nDt=ce("peekView.border",{dark:_c,light:_c,hcDark:Jn,hcLight:Jn},L("peekViewBorder","Color of the peek view borders and arrow.")),iDt=ce("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hcDark:Te.black,hcLight:Te.white},L("peekViewResultsBackground","Background color of the peek view result list."));ce("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hcDark:Te.white,hcLight:_f},L("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list."));ce("peekViewResult.fileForeground",{dark:Te.white,light:"#1E1E1E",hcDark:Te.white,hcLight:_f},L("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list."));ce("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hcDark:null,hcLight:null},L("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list."));ce("peekViewResult.selectionForeground",{dark:Te.white,light:"#6C6C6C",hcDark:Te.white,hcLight:_f},L("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list."));const ky=ce("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hcDark:Te.black,hcLight:Te.white},L("peekViewEditorBackground","Background color of the peek view editor."));ce("peekViewEditorGutter.background",{dark:ky,light:ky,hcDark:ky,hcLight:ky},L("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor."));ce("peekViewEditorStickyScroll.background",{dark:ky,light:ky,hcDark:ky,hcLight:ky},L("peekViewEditorStickScrollBackground","Background color of sticky scroll in the peek view editor."));ce("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hcDark:null,hcLight:null},L("peekViewResultsMatchHighlight","Match highlight color in the peek view result list."));ce("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hcDark:null,hcLight:null},L("peekViewEditorMatchHighlight","Match highlight color in the peek view editor."));ce("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hcDark:Dr,hcLight:Dr},L("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor."));var rDt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class E1{constructor(e,n,r,s){this.isProviderFirst=e,this.parent=n,this.link=r,this._rangeCallback=s,this.id=yee.nextId()}get uri(){return this.link.uri}get range(){var e,n;return(n=(e=this._range)!==null&&e!==void 0?e:this.link.targetSelectionRange)!==null&&n!==void 0?n:this.link.range}set range(e){this._range=e,this._rangeCallback(this)}get ariaMessage(){var e;const n=(e=this.parent.getPreview(this))===null||e===void 0?void 0:e.preview(this.range);return n?L({},"{0} in {1} on line {2} at column {3}",n.value,yh(this.uri),this.range.startLineNumber,this.range.startColumn):L("aria.oneReference","in {0} on line {1} at column {2}",yh(this.uri),this.range.startLineNumber,this.range.startColumn)}}class sDt{constructor(e){this._modelReference=e}dispose(){this._modelReference.dispose()}preview(e,n=8){const r=this._modelReference.object.textEditorModel;if(!r)return;const{startLineNumber:s,startColumn:o,endLineNumber:a,endColumn:l}=e,c=r.getWordUntilPosition({lineNumber:s,column:o-n}),u=new J(s,c.startColumn,s,o),d=new J(a,l,a,1073741824),h=r.getValueInRange(u).replace(/^\s+/,""),f=r.getValueInRange(e),p=r.getValueInRange(d).replace(/\s+$/,"");return{value:h+f+p,highlight:{start:h.length,end:h.length+f.length}}}}class lO{constructor(e,n){this.parent=e,this.uri=n,this.children=[],this._previews=new Va}dispose(){Mi(this._previews.values()),this._previews.clear()}getPreview(e){return this._previews.get(e.uri)}get ariaMessage(){const e=this.children.length;return e===1?L("aria.fileReferences.1","1 symbol in {0}, full path {1}",yh(this.uri),this.uri.fsPath):L("aria.fileReferences.N","{0} symbols in {1}, full path {2}",e,yh(this.uri),this.uri.fsPath)}resolve(e){return rDt(this,void 0,void 0,function*(){if(this._previews.size!==0)return this;for(const n of this.children)if(!this._previews.has(n.uri))try{const r=yield e.createModelReference(n.uri);this._previews.set(n.uri,new sDt(r))}catch(r){Ln(r)}return this})}}class lu{constructor(e,n){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new _e,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=e,this._title=n;const[r]=e;e.sort(lu._compareReferences);let s;for(const o of e)if((!s||!Er.isEqual(s.uri,o.uri,!0))&&(s=new lO(this,o.uri),this.groups.push(s)),s.children.length===0||lu._compareReferences(o,s.children[s.children.length-1])!==0){const a=new E1(r===o,s,o,l=>this._onDidChangeReferenceRange.fire(l));this.references.push(a),s.children.push(a)}}dispose(){Mi(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new lu(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?L("aria.result.0","No results found"):this.references.length===1?L("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):this.groups.length===1?L("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):L("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)}nextOrPreviousReference(e,n){const{parent:r}=e;let s=r.children.indexOf(e);const o=r.children.length,a=r.parent.groups.length;return a===1||n&&s+10?(n?s=(s+1)%o:s=(s+o-1)%o,r.children[s]):(s=r.parent.groups.indexOf(r),n?(s=(s+1)%a,r.parent.groups[s].children[0]):(s=(s+a-1)%a,r.parent.groups[s].children[r.parent.groups[s].children.length-1]))}nearestReference(e,n){const r=this.references.map((s,o)=>({idx:o,prefixLen:ax(s.uri.toString(),e.toString()),offsetDist:Math.abs(s.range.startLineNumber-n.lineNumber)*100+Math.abs(s.range.startColumn-n.column)})).sort((s,o)=>s.prefixLen>o.prefixLen?-1:s.prefixLeno.offsetDist?1:0)[0];if(r)return this.references[r.idx]}referenceAt(e,n){for(const r of this.references)if(r.uri.toString()===e.toString()&&J.containsPosition(r.range,n))return r}firstReference(){for(const e of this.references)if(e.isProviderFirst)return e;return this.references[0]}static _compareReferences(e,n){return Er.compare(e.uri,n.uri)||J.compareRangesUsingStarts(e.range,n.range)}}var Cz=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Sz=function(i,e){return function(n,r){e(n,r,i)}},Bte;let jte=class{constructor(e){this._resolverService=e}hasChildren(e){return e instanceof lu||e instanceof lO}getChildren(e){if(e instanceof lu)return e.groups;if(e instanceof lO)return e.resolve(this._resolverService).then(n=>n.children);throw new Error("bad tree")}};jte=Cz([Sz(0,Ec)],jte);class oDt{getHeight(){return 23}getTemplateId(e){return e instanceof lO?cO.id:i4.id}}let Wte=class{constructor(e){this._keybindingService=e}getKeyboardNavigationLabel(e){var n;if(e instanceof E1){const r=(n=e.parent.getPreview(e))===null||n===void 0?void 0:n.preview(e.range);if(r)return r.value}return yh(e.uri)}};Wte=Cz([Sz(0,sr)],Wte);class aDt{getId(e){return e instanceof E1?e.id:e.uri}}let $te=class extends Le{constructor(e,n){super(),this._labelService=n;const r=document.createElement("div");r.classList.add("reference-file"),this.file=this._register(new z7(r,{supportHighlights:!0})),this.badge=new Hee(He(r,tt(".count")),{},iRe),e.appendChild(r)}set(e,n){const r=M$(e.uri);this.file.setLabel(this._labelService.getUriBasenameLabel(e.uri),this._labelService.getUriLabel(r,{relative:!0}),{title:this._labelService.getUriLabel(e.uri),matches:n});const s=e.children.length;this.badge.setCount(s),s>1?this.badge.setTitleFormat(L("referencesCount","{0} references",s)):this.badge.setTitleFormat(L("referenceCount","{0} reference",s))}};$te=Cz([Sz(1,KE)],$te);let cO=Bte=class{constructor(e){this._instantiationService=e,this.templateId=Bte.id}renderTemplate(e){return this._instantiationService.createInstance($te,e)}renderElement(e,n,r){r.set(e.element,z5(e.filterData))}disposeTemplate(e){e.dispose()}};cO.id="FileReferencesRenderer";cO=Bte=Cz([Sz(0,hn)],cO);class lDt{constructor(e){this.label=new Ky(e)}set(e,n){var r;const s=(r=e.parent.getPreview(e))===null||r===void 0?void 0:r.preview(e.range);if(!s||!s.value)this.label.set(`${yh(e.uri)}:${e.range.startLineNumber+1}:${e.range.startColumn+1}`);else{const{value:o,highlight:a}=s;n&&!Hp.isDefault(n)?(this.label.element.classList.toggle("referenceMatch",!1),this.label.set(o,z5(n))):(this.label.element.classList.toggle("referenceMatch",!0),this.label.set(o,[a]))}}}class i4{constructor(){this.templateId=i4.id}renderTemplate(e){return new lDt(e)}renderElement(e,n,r){r.set(e.element,e.filterData)}disposeTemplate(){}}i4.id="OneReferenceRenderer";class cDt{getWidgetAriaLabel(){return L("treeAriaLabel","References")}getAriaLabel(e){return e.ariaMessage}}var uDt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},n0=function(i,e){return function(n,r){e(n,r,i)}},p0e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class xz{constructor(e,n){this._editor=e,this._model=n,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new Xe,this._callOnModelChange=new Xe,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();const e=this._editor.getModel();if(e){for(const n of this._model.references)if(n.uri.toString()===e.uri.toString()){this._addDecorations(n.parent);return}}}_addDecorations(e){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));const n=[],r=[];for(let s=0,o=e.children.length;s{const o=s.deltaDecorations([],n);for(let a=0;a{o.equals(9)&&(this._keybindingService.dispatchEvent(o,o.target),o.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(hDt,"ReferencesWidget",this._treeContainer,new oDt,[this._instantiationService.createInstance(cO),this._instantiationService.createInstance(i4)],this._instantiationService.createInstance(jte),r),this._splitView.addView({onDidChange:_t.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:o=>{this._preview.layout({height:this._dim.height,width:o})}},B7.Distribute),this._splitView.addView({onDidChange:_t.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:o=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${o}px`,this._tree.layout(this._dim.height,o)}},B7.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));const s=(o,a)=>{o instanceof E1&&(a==="show"&&this._revealReference(o,!1),this._onDidSelectReference.fire({element:o,kind:a,source:"tree"}))};this._tree.onDidOpen(o=>{o.sideBySide?s(o.element,"side"):o.editorOptions.pinned?s(o.element,"goto"):s(o.element,"show")}),Pl(this._treeContainer)}_onWidth(e){this._dim&&this._doLayoutBody(this._dim.height,e)}_doLayoutBody(e,n){super._doLayoutBody(e,n),this._dim=new bi(n,e),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(n),this._splitView.resizeView(0,n*this.layoutData.ratio)}setSelection(e){return this._revealReference(e,!0).then(()=>{this._model&&(this._tree.setSelection([e]),this._tree.setFocus([e]))})}setModel(e){return this._disposeOnNewModel.clear(),this._model=e,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerText=L("noResults","No results"),Jc(this._messageContainer),Promise.resolve(void 0)):(Pl(this._messageContainer),this._decorationsManager=new xz(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(e=>this._tree.rerender(e))),this._disposeOnNewModel.add(this._preview.onMouseDown(e=>{const{event:n,target:r}=e;if(n.detail!==2)return;const s=this._getFocusedReference();s&&this._onDidSelectReference.fire({element:{uri:s.uri,range:r.range},kind:n.ctrlKey||n.metaKey||n.altKey?"side":"open",source:"editor"})})),this.container.classList.add("results-loaded"),Jc(this._treeContainer),Jc(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){const[e]=this._tree.getFocus();if(e instanceof E1)return e;if(e instanceof lO&&e.children.length>0)return e.children[0]}revealReference(e){return p0e(this,void 0,void 0,function*(){yield this._revealReference(e,!1),this._onDidSelectReference.fire({element:e,kind:"goto",source:"tree"})})}_revealReference(e,n){return p0e(this,void 0,void 0,function*(){if(this._revealedReference===e)return;this._revealedReference=e,e.uri.scheme!==Pn.inMemory?this.setTitle(Xgt(e.uri),this._uriLabel.getUriLabel(M$(e.uri))):this.setTitle(L("peekView.alternateTitle","References"));const r=this._textModelResolverService.createModelReference(e.uri);this._tree.getInput()===e.parent?this._tree.reveal(e):(n&&this._tree.reveal(e.parent),yield this._tree.expand(e.parent),this._tree.reveal(e));const s=yield r;if(!this._model){s.dispose();return}Mi(this._previewModelReference);const o=s.object;if(o){const a=this._preview.getModel()===o.textEditorModel?0:1,l=J.lift(e.range).collapseToStart();this._previewModelReference=s,this._preview.setModel(o.textEditorModel),this._preview.setSelection(l),this._preview.revealRangeInCenter(l,a)}else this._preview.setModel(this._previewNotAvailableMessage),s.dispose()})}};zte=uDt([n0(3,Do),n0(4,Ec),n0(5,hn),n0(6,ENe),n0(7,KE),n0(8,P$),n0(9,sr),n0(10,Ar),n0(11,dr)],zte);var fDt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},oD=function(i,e){return function(n,r){e(n,r,i)}},g0e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},R8;const lk=new yt("referenceSearchVisible",!1,L("referenceSearchVisible","Whether reference peek is visible, like 'Peek References' or 'Peek Definition'"));let I1=R8=class{static get(e){return e.getContribution(R8.ID)}constructor(e,n,r,s,o,a,l,c){this._defaultTreeKeyboardSupport=e,this._editor=n,this._editorService=s,this._notificationService=o,this._instantiationService=a,this._storageService=l,this._configurationService=c,this._disposables=new Xe,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=lk.bindTo(r)}dispose(){var e,n;this._referenceSearchVisible.reset(),this._disposables.dispose(),(e=this._widget)===null||e===void 0||e.dispose(),(n=this._model)===null||n===void 0||n.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(e,n,r){let s;if(this._widget&&(s=this._widget.position),this.closeWidget(),s&&e.containsPosition(s))return;this._peekMode=r,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));const o="peekViewLayout",a=dDt.fromJSON(this._storageService.get(o,0,"{}"));this._widget=this._instantiationService.createInstance(zte,this._editor,this._defaultTreeKeyboardSupport,a),this._widget.setTitle(L("labelLoading","Loading...")),this._widget.show(e),this._disposables.add(this._widget.onDidClose(()=>{n.cancel(),this._widget&&(this._storageService.store(o,JSON.stringify(this._widget.layoutData),0,1),this._widget=void 0),this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(c=>{const{element:u,kind:d}=c;if(u)switch(d){case"open":(c.source!=="editor"||!this._configurationService.getValue("editor.stablePeek"))&&this.openReference(u,!1,!1);break;case"side":this.openReference(u,!0,!1);break;case"goto":r?this._gotoReference(u,!0):this.openReference(u,!1,!0);break}}));const l=++this._requestIdPool;n.then(c=>{var u;if(l!==this._requestIdPool||!this._widget){c.dispose();return}return(u=this._model)===null||u===void 0||u.dispose(),this._model=c,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(""):this._widget.setMetaTitle(L("metaTitle.N","{0} ({1})",this._model.title,this._model.references.length));const d=this._editor.getModel().uri,h=new ve(e.startLineNumber,e.startColumn),f=this._model.nearestReference(d,h);if(f)return this._widget.setSelection(f).then(()=>{this._widget&&this._editor.getOption(86)==="editor"&&this._widget.focusOnPreviewEditor()})}})},c=>{this._notificationService.error(c)})}changeFocusBetweenPreviewAndReferences(){this._widget&&(this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor())}goToNextOrPreviousReference(e){return g0e(this,void 0,void 0,function*(){if(!this._editor.hasModel()||!this._model||!this._widget)return;const n=this._widget.position;if(!n)return;const r=this._model.nearestReference(this._editor.getModel().uri,n);if(!r)return;const s=this._model.nextOrPreviousReference(r,e),o=this._editor.hasTextFocus(),a=this._widget.isPreviewEditorFocused();yield this._widget.setSelection(s),yield this._gotoReference(s,!1),o?this._editor.focus():this._widget&&a&&this._widget.focusOnPreviewEditor()})}revealReference(e){return g0e(this,void 0,void 0,function*(){!this._editor.hasModel()||!this._model||!this._widget||(yield this._widget.revealReference(e))})}closeWidget(e=!0){var n,r;(n=this._widget)===null||n===void 0||n.dispose(),(r=this._model)===null||r===void 0||r.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,e&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(e,n){var r;(r=this._widget)===null||r===void 0||r.hide(),this._ignoreModelChangeEvent=!0;const s=J.lift(e.range).collapseToStart();return this._editorService.openCodeEditor({resource:e.uri,options:{selection:s,selectionSource:"code.jump",pinned:n}},this._editor).then(o=>{var a;if(this._ignoreModelChangeEvent=!1,!o||!this._widget){this.closeWidget();return}if(this._editor===o)this._widget.show(s),this._widget.focusOnReferenceTree();else{const l=R8.get(o),c=this._model.clone();this.closeWidget(),o.focus(),l==null||l.toggleWidget(s,go(u=>Promise.resolve(c)),(a=this._peekMode)!==null&&a!==void 0?a:!1)}},o=>{this._ignoreModelChangeEvent=!1,Ln(o)})}openReference(e,n,r){n||this.closeWidget();const{uri:s,range:o}=e;this._editorService.openCodeEditor({resource:s,options:{selection:o,selectionSource:"code.jump",pinned:r}},this._editor,n)}};I1.ID="editor.contrib.referencesController";I1=R8=fDt([oD(2,mn),oD(3,Si),oD(4,Ps),oD(5,hn),oD(6,jf),oD(7,ei)],I1);function ck(i,e){const n=JLt(i);if(!n)return;const r=I1.get(n);r&&e(r)}Sc.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:ro(2089,60),when:ze.or(lk,xc.inPeekEditor),handler(i){ck(i,e=>{e.changeFocusBetweenPreviewAndReferences()})}});Sc.registerCommandAndKeybindingRule({id:"goToNextReference",weight:90,primary:62,secondary:[70],when:ze.or(lk,xc.inPeekEditor),handler(i){ck(i,e=>{e.goToNextOrPreviousReference(!0)})}});Sc.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:90,primary:1086,secondary:[1094],when:ze.or(lk,xc.inPeekEditor),handler(i){ck(i,e=>{e.goToNextOrPreviousReference(!1)})}});si.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference");si.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference");si.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch");si.registerCommand("closeReferenceSearch",i=>ck(i,e=>e.closeWidget()));Sc.registerKeybindingRule({id:"closeReferenceSearch",weight:-1,primary:9,secondary:[1033],when:ze.and(xc.inPeekEditor,ze.not("config.editor.stablePeek"))});Sc.registerKeybindingRule({id:"closeReferenceSearch",weight:250,primary:9,secondary:[1033],when:ze.and(lk,ze.not("config.editor.stablePeek"))});Sc.registerCommandAndKeybindingRule({id:"revealReference",weight:200,primary:3,mac:{primary:3,secondary:[2066]},when:ze.and(lk,xRe,xae.negate(),kae.negate()),handler(i){var e;const r=(e=i.get(Lh).lastFocusedList)===null||e===void 0?void 0:e.getFocus();Array.isArray(r)&&r[0]instanceof E1&&ck(i,s=>s.revealReference(r[0]))}});Sc.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2051,mac:{primary:259},when:ze.and(lk,xRe,xae.negate(),kae.negate()),handler(i){var e;const r=(e=i.get(Lh).lastFocusedList)===null||e===void 0?void 0:e.getFocus();Array.isArray(r)&&r[0]instanceof E1&&ck(i,s=>s.openReference(r[0],!0,!0))}});si.registerCommand("openReference",i=>{var e;const r=(e=i.get(Lh).lastFocusedList)===null||e===void 0?void 0:e.getFocus();Array.isArray(r)&&r[0]instanceof E1&&ck(i,s=>s.openReference(r[0],!1,!0))});var RNe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},CN=function(i,e){return function(n,r){e(n,r,i)}};const ile=new yt("hasSymbols",!1,L("hasSymbols","Whether there are symbol locations that can be navigated via keyboard-only.")),kz=qn("ISymbolNavigationService");let Vte=class{constructor(e,n,r,s){this._editorService=n,this._notificationService=r,this._keybindingService=s,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=ile.bindTo(e)}reset(){var e,n;this._ctxHasSymbols.reset(),(e=this._currentState)===null||e===void 0||e.dispose(),(n=this._currentMessage)===null||n===void 0||n.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(e){const n=e.parent.parent;if(n.references.length<=1){this.reset();return}this._currentModel=n,this._currentIdx=n.references.indexOf(e),this._ctxHasSymbols.set(!0),this._showMessage();const r=new Hte(this._editorService),s=r.onDidChange(o=>{if(this._ignoreEditorChange)return;const a=this._editorService.getActiveCodeEditor();if(!a)return;const l=a.getModel(),c=a.getPosition();if(!l||!c)return;let u=!1,d=!1;for(const h of n.references)if(Noe(h.uri,l.uri))u=!0,d=d||J.containsPosition(h.range,c);else if(u)break;(!u||!d)&&this.reset()});this._currentState=Sf(r,s)}revealNext(e){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;const n=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:n.uri,options:{selection:J.collapseToStart(n.range),selectionRevealType:3}},e).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){var e;(e=this._currentMessage)===null||e===void 0||e.dispose();const n=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),r=n?L("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,n.getLabel()):L("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(r)}};Vte=RNe([CN(0,mn),CN(1,Si),CN(2,Ps),CN(3,sr)],Vte);oi(kz,Vte,1);ct(new class extends Ho{constructor(){super({id:"editor.gotoNextSymbolFromResult",precondition:ile,kbOpts:{weight:100,primary:70}})}runEditorCommand(i,e){return i.get(kz).revealNext(e)}});Sc.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:ile,primary:9,handler(i){i.get(kz).reset()}});let Hte=class{constructor(e){this._listener=new Map,this._disposables=new Xe,this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this._disposables.add(e.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(e.onCodeEditorAdd(this._onDidAddEditor,this)),e.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),Mi(this._listener.values())}_onDidAddEditor(e){this._listener.set(e,Sf(e.onDidChangeCursorPosition(n=>this._onDidChange.fire({editor:e})),e.onDidChangeModelContent(n=>this._onDidChange.fire({editor:e}))))}_onDidRemoveEditor(e){var n;(n=this._listener.get(e))===null||n===void 0||n.dispose(),this._listener.delete(e)}};Hte=RNe([CN(0,Si)],Hte);var rle=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function r4(i,e,n,r){return rle(this,void 0,void 0,function*(){const o=n.ordered(i).map(l=>Promise.resolve(r(l,i,e)).then(void 0,c=>{Us(c)})),a=yield Promise.all(o);return Hm(a.flat())})}function Lz(i,e,n,r){return r4(e,n,i,(s,o,a)=>s.provideDefinition(o,a,r))}function ANe(i,e,n,r){return r4(e,n,i,(s,o,a)=>s.provideDeclaration(o,a,r))}function NNe(i,e,n,r){return r4(e,n,i,(s,o,a)=>s.provideImplementation(o,a,r))}function MNe(i,e,n,r){return r4(e,n,i,(s,o,a)=>s.provideTypeDefinition(o,a,r))}function Dz(i,e,n,r,s){return r4(e,n,i,(o,a,l)=>rle(this,void 0,void 0,function*(){const c=yield o.provideReferences(a,l,{includeDeclaration:!0},s);if(!r||!c||c.length!==2)return c;const u=yield o.provideReferences(a,l,{includeDeclaration:!1},s);return u&&u.length===1?u:c}))}function s4(i){return rle(this,void 0,void 0,function*(){const e=yield i(),n=new lu(e,""),r=n.references.map(s=>s.link);return n.dispose(),r})}d_("_executeDefinitionProvider",(i,e,n)=>{const r=i.get(Et),s=Lz(r.definitionProvider,e,n,Hn.None);return s4(()=>s)});d_("_executeTypeDefinitionProvider",(i,e,n)=>{const r=i.get(Et),s=MNe(r.typeDefinitionProvider,e,n,Hn.None);return s4(()=>s)});d_("_executeDeclarationProvider",(i,e,n)=>{const r=i.get(Et),s=ANe(r.declarationProvider,e,n,Hn.None);return s4(()=>s)});d_("_executeReferenceProvider",(i,e,n)=>{const r=i.get(Et),s=Dz(r.referenceProvider,e,n,!1,Hn.None);return s4(()=>s)});d_("_executeImplementationProvider",(i,e,n)=>{const r=i.get(Et),s=NNe(r.implementationProvider,e,n,Hn.None);return s4(()=>s)});var Lf=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},rA,sA,oA,L6,D6,E6,I6,T6;sa.appendMenuItem(se.EditorContext,{submenu:se.EditorContextPeek,title:L("peek.submenu","Peek"),group:"navigation",order:100});class sI{static is(e){return!e||typeof e!="object"?!1:!!(e instanceof sI||ve.isIPosition(e.position)&&e.model)}constructor(e,n){this.model=e,this.position=n}}class hl extends og{static all(){return hl._allSymbolNavigationCommands.values()}static _patchConfig(e){const n=Object.assign(Object.assign({},e),{f1:!0});if(n.menu)for(const r of Vn.wrap(n.menu))(r.id===se.EditorContext||r.id===se.EditorContextPeek)&&(r.when=ze.and(e.precondition,r.when));return n}constructor(e,n){super(hl._patchConfig(n)),this.configuration=e,hl._allSymbolNavigationCommands.set(n.id,this)}runEditorCommand(e,n,r,s){if(!n.hasModel())return Promise.resolve(void 0);const o=e.get(Ps),a=e.get(Si),l=e.get(Z1),c=e.get(kz),u=e.get(Et),d=e.get(hn),h=n.getModel(),f=n.getPosition(),p=sI.is(r)?r:new sI(h,f),g=new x1(n,5),m=h$(this._getLocationModel(u,p.model,p.position,g.token),g.token).then(_=>Lf(this,void 0,void 0,function*(){var b;if(!_||g.token.isCancellationRequested)return;Ua(_.ariaMessage);let y;if(_.referenceAt(h.uri,f)){const k=this._getAlternativeCommand(n);!hl._activeAlternativeCommands.has(k)&&hl._allSymbolNavigationCommands.has(k)&&(y=hl._allSymbolNavigationCommands.get(k))}const x=_.references.length;if(x===0){if(!this.configuration.muteMessage){const k=h.getWordAtPosition(f);(b=au.get(n))===null||b===void 0||b.showMessage(this._getNoResultFoundMessage(k),f)}}else if(x===1&&y)hl._activeAlternativeCommands.add(this.desc.id),d.invokeFunction(k=>y.runEditorCommand(k,n,r,s).finally(()=>{hl._activeAlternativeCommands.delete(this.desc.id)}));else return this._onResult(a,c,n,_,s)}),_=>{o.error(_)}).finally(()=>{g.dispose()});return l.showWhile(m,250),m}_onResult(e,n,r,s,o){return Lf(this,void 0,void 0,function*(){const a=this._getGoToPreference(r);if(!(r instanceof D1)&&(this.configuration.openInPeek||a==="peek"&&s.references.length>1))this._openInPeek(r,s,o);else{const l=s.firstReference(),c=s.references.length>1&&a==="gotoAndPeek",u=yield this._openReference(r,e,l,this.configuration.openToSide,!c);c&&u?this._openInPeek(u,s,o):s.dispose(),a==="goto"&&n.put(l)}})}_openReference(e,n,r,s,o){return Lf(this,void 0,void 0,function*(){let a;if(got(r)&&(a=r.targetSelectionRange),a||(a=r.range),!a)return;const l=yield n.openCodeEditor({resource:r.uri,options:{selection:J.collapseToStart(a),selectionRevealType:3,selectionSource:"code.jump"}},e,s);if(l){if(o){const c=l.getModel(),u=l.createDecorationsCollection([{range:a,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]);setTimeout(()=>{l.getModel()===c&&u.clear()},350)}return l}})}_openInPeek(e,n,r){const s=I1.get(e);s&&e.hasModel()?s.toggleWidget(r??e.getSelection(),go(o=>Promise.resolve(n)),this.configuration.openInPeek):n.dispose()}}hl._allSymbolNavigationCommands=new Map;hl._activeAlternativeCommands=new Set;class o4 extends hl{_getLocationModel(e,n,r,s){return Lf(this,void 0,void 0,function*(){return new lu(yield Lz(e.definitionProvider,n,r,s),L("def.title","Definitions"))})}_getNoResultFoundMessage(e){return e&&e.word?L("noResultWord","No definition found for '{0}'",e.word):L("generic.noResults","No definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleDefinitions}}Ir((rA=class extends o4{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:rA.id,title:{value:L("actions.goToDecl.label","Go to Definition"),original:"Go to Definition",mnemonicTitle:L({},"Go to &&Definition")},precondition:ze.and(oe.hasDefinitionProvider,oe.isInWalkThroughSnippet.toNegated()),keybinding:[{when:oe.editorTextFocus,primary:70,weight:100},{when:ze.and(oe.editorTextFocus,wRe),primary:2118,weight:100}],menu:[{id:se.EditorContext,group:"navigation",order:1.1},{id:se.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:2}]}),si.registerCommandAlias("editor.action.goToDeclaration",rA.id)}},rA.id="editor.action.revealDefinition",rA));Ir((sA=class extends o4{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:sA.id,title:{value:L("actions.goToDeclToSide.label","Open Definition to the Side"),original:"Open Definition to the Side"},precondition:ze.and(oe.hasDefinitionProvider,oe.isInWalkThroughSnippet.toNegated()),keybinding:[{when:oe.editorTextFocus,primary:ro(2089,70),weight:100},{when:ze.and(oe.editorTextFocus,wRe),primary:ro(2089,2118),weight:100}]}),si.registerCommandAlias("editor.action.openDeclarationToTheSide",sA.id)}},sA.id="editor.action.revealDefinitionAside",sA));Ir((oA=class extends o4{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:oA.id,title:{value:L("actions.previewDecl.label","Peek Definition"),original:"Peek Definition"},precondition:ze.and(oe.hasDefinitionProvider,xc.notInPeekEditor,oe.isInWalkThroughSnippet.toNegated()),keybinding:{when:oe.editorTextFocus,primary:582,linux:{primary:3140},weight:100},menu:{id:se.EditorContextPeek,group:"peek",order:2}}),si.registerCommandAlias("editor.action.previewDeclaration",oA.id)}},oA.id="editor.action.peekDefinition",oA));class PNe extends hl{_getLocationModel(e,n,r,s){return Lf(this,void 0,void 0,function*(){return new lu(yield ANe(e.declarationProvider,n,r,s),L("decl.title","Declarations"))})}_getNoResultFoundMessage(e){return e&&e.word?L("decl.noResultWord","No declaration found for '{0}'",e.word):L("decl.generic.noResults","No declaration found")}_getAlternativeCommand(e){return e.getOption(58).alternativeDeclarationCommand}_getGoToPreference(e){return e.getOption(58).multipleDeclarations}}Ir((L6=class extends PNe{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:L6.id,title:{value:L("actions.goToDeclaration.label","Go to Declaration"),original:"Go to Declaration",mnemonicTitle:L({},"Go to &&Declaration")},precondition:ze.and(oe.hasDeclarationProvider,oe.isInWalkThroughSnippet.toNegated()),menu:[{id:se.EditorContext,group:"navigation",order:1.3},{id:se.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}_getNoResultFoundMessage(e){return e&&e.word?L("decl.noResultWord","No declaration found for '{0}'",e.word):L("decl.generic.noResults","No declaration found")}},L6.id="editor.action.revealDeclaration",L6));Ir(class extends PNe{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",title:{value:L("actions.peekDecl.label","Peek Declaration"),original:"Peek Declaration"},precondition:ze.and(oe.hasDeclarationProvider,xc.notInPeekEditor,oe.isInWalkThroughSnippet.toNegated()),menu:{id:se.EditorContextPeek,group:"peek",order:3}})}});class ONe extends hl{_getLocationModel(e,n,r,s){return Lf(this,void 0,void 0,function*(){return new lu(yield MNe(e.typeDefinitionProvider,n,r,s),L("typedef.title","Type Definitions"))})}_getNoResultFoundMessage(e){return e&&e.word?L("goToTypeDefinition.noResultWord","No type definition found for '{0}'",e.word):L("goToTypeDefinition.generic.noResults","No type definition found")}_getAlternativeCommand(e){return e.getOption(58).alternativeTypeDefinitionCommand}_getGoToPreference(e){return e.getOption(58).multipleTypeDefinitions}}Ir((D6=class extends ONe{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:D6.ID,title:{value:L("actions.goToTypeDefinition.label","Go to Type Definition"),original:"Go to Type Definition",mnemonicTitle:L({},"Go to &&Type Definition")},precondition:ze.and(oe.hasTypeDefinitionProvider,oe.isInWalkThroughSnippet.toNegated()),keybinding:{when:oe.editorTextFocus,primary:0,weight:100},menu:[{id:se.EditorContext,group:"navigation",order:1.4},{id:se.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:3}]})}},D6.ID="editor.action.goToTypeDefinition",D6));Ir((E6=class extends ONe{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:E6.ID,title:{value:L("actions.peekTypeDefinition.label","Peek Type Definition"),original:"Peek Type Definition"},precondition:ze.and(oe.hasTypeDefinitionProvider,xc.notInPeekEditor,oe.isInWalkThroughSnippet.toNegated()),menu:{id:se.EditorContextPeek,group:"peek",order:4}})}},E6.ID="editor.action.peekTypeDefinition",E6));class FNe extends hl{_getLocationModel(e,n,r,s){return Lf(this,void 0,void 0,function*(){return new lu(yield NNe(e.implementationProvider,n,r,s),L("impl.title","Implementations"))})}_getNoResultFoundMessage(e){return e&&e.word?L("goToImplementation.noResultWord","No implementation found for '{0}'",e.word):L("goToImplementation.generic.noResults","No implementation found")}_getAlternativeCommand(e){return e.getOption(58).alternativeImplementationCommand}_getGoToPreference(e){return e.getOption(58).multipleImplementations}}Ir((I6=class extends FNe{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:I6.ID,title:{value:L("actions.goToImplementation.label","Go to Implementations"),original:"Go to Implementations",mnemonicTitle:L({},"Go to &&Implementations")},precondition:ze.and(oe.hasImplementationProvider,oe.isInWalkThroughSnippet.toNegated()),keybinding:{when:oe.editorTextFocus,primary:2118,weight:100},menu:[{id:se.EditorContext,group:"navigation",order:1.45},{id:se.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:4}]})}},I6.ID="editor.action.goToImplementation",I6));Ir((T6=class extends FNe{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:T6.ID,title:{value:L("actions.peekImplementation.label","Peek Implementations"),original:"Peek Implementations"},precondition:ze.and(oe.hasImplementationProvider,xc.notInPeekEditor,oe.isInWalkThroughSnippet.toNegated()),keybinding:{when:oe.editorTextFocus,primary:3142,weight:100},menu:{id:se.EditorContextPeek,group:"peek",order:5}})}},T6.ID="editor.action.peekImplementation",T6));class BNe extends hl{_getNoResultFoundMessage(e){return e?L("references.no","No references found for '{0}'",e.word):L("references.noGeneric","No references found")}_getAlternativeCommand(e){return e.getOption(58).alternativeReferenceCommand}_getGoToPreference(e){return e.getOption(58).multipleReferences}}Ir(class extends BNe{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",title:{value:L("goToReferences.label","Go to References"),original:"Go to References",mnemonicTitle:L({},"Go to &&References")},precondition:ze.and(oe.hasReferenceProvider,xc.notInPeekEditor,oe.isInWalkThroughSnippet.toNegated()),keybinding:{when:oe.editorTextFocus,primary:1094,weight:100},menu:[{id:se.EditorContext,group:"navigation",order:1.45},{id:se.MenubarGoMenu,precondition:null,group:"4_symbol_nav",order:5}]})}_getLocationModel(e,n,r,s){return Lf(this,void 0,void 0,function*(){return new lu(yield Dz(e.referenceProvider,n,r,!0,s),L("ref.title","References"))})}});Ir(class extends BNe{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",title:{value:L("references.action.label","Peek References"),original:"Peek References"},precondition:ze.and(oe.hasReferenceProvider,xc.notInPeekEditor,oe.isInWalkThroughSnippet.toNegated()),menu:{id:se.EditorContextPeek,group:"peek",order:6}})}_getLocationModel(e,n,r,s){return Lf(this,void 0,void 0,function*(){return new lu(yield Dz(e.referenceProvider,n,r,!1,s),L("ref.title","References"))})}});class pDt extends hl{constructor(e,n,r){super(e,{id:"editor.action.goToLocation",title:{value:L("label.generic","Go to Any Symbol"),original:"Go to Any Symbol"},precondition:ze.and(xc.notInPeekEditor,oe.isInWalkThroughSnippet.toNegated())}),this._references=n,this._gotoMultipleBehaviour=r}_getLocationModel(e,n,r,s){return Lf(this,void 0,void 0,function*(){return new lu(this._references,L("generic.title","Locations"))})}_getNoResultFoundMessage(e){return e&&L("generic.noResult","No results for '{0}'",e.word)||""}_getGoToPreference(e){var n;return(n=this._gotoMultipleBehaviour)!==null&&n!==void 0?n:e.getOption(58).multipleReferences}_getAlternativeCommand(){return""}}si.registerCommand({id:"editor.action.goToLocations",description:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:Jt},{name:"position",description:"The position at which to start",constraint:ve.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"},{name:"noResultsMessage",description:"Human readable message that shows when locations is empty."}]},handler:(i,e,n,r,s,o,a)=>Lf(void 0,void 0,void 0,function*(){Ui(Jt.isUri(e)),Ui(ve.isIPosition(n)),Ui(Array.isArray(r)),Ui(typeof s>"u"||typeof s=="string"),Ui(typeof a>"u"||typeof a=="boolean");const l=i.get(Si),c=yield l.openCodeEditor({resource:e},l.getFocusedCodeEditor());if(n_(c))return c.setPosition(n),c.revealPositionInCenterIfOutsideViewport(n,0),c.invokeWithinContext(u=>{const d=new class extends pDt{_getNoResultFoundMessage(h){return o||super._getNoResultFoundMessage(h)}}({muteMessage:!o,openInPeek:!!a,openToSide:!1},r,s);u.get(hn).invokeFunction(d.run.bind(d),c)})})});si.registerCommand({id:"editor.action.peekLocations",description:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:Jt},{name:"position",description:"The position at which to start",constraint:ve.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"}]},handler:(i,e,n,r,s)=>Lf(void 0,void 0,void 0,function*(){i.get(us).executeCommand("editor.action.goToLocations",e,n,r,s,void 0,!0)})});si.registerCommand({id:"editor.action.findReferences",handler:(i,e,n)=>{Ui(Jt.isUri(e)),Ui(ve.isIPosition(n));const r=i.get(Et),s=i.get(Si);return s.openCodeEditor({resource:e},s.getFocusedCodeEditor()).then(o=>{if(!n_(o)||!o.hasModel())return;const a=I1.get(o);if(!a)return;const l=go(u=>Dz(r.referenceProvider,o.getModel(),ve.lift(n),!1,u).then(d=>new lu(d,L("ref.title","References")))),c=new J(n.lineNumber,n.column,n.lineNumber,n.column);return Promise.resolve(a.toggleWidget(c,l,!1))})}});si.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations");var gDt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},mK=function(i,e){return function(n,r){e(n,r,i)}},m0e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},SN;let Lx=SN=class{constructor(e,n,r,s){this.textModelResolverService=n,this.languageService=r,this.languageFeaturesService=s,this.toUnhook=new Xe,this.toUnhookForKeyboard=new Xe,this.currentWordAtPosition=null,this.previousPromise=null,this.editor=e,this.linkDecorations=this.editor.createDecorationsCollection();const o=new yz(e);this.toUnhook.add(o),this.toUnhook.add(o.onMouseMoveOrRelevantKeyDown(([a,l])=>{this.startFindDefinitionFromMouse(a,l??void 0)})),this.toUnhook.add(o.onExecute(a=>{this.isEnabled(a)&&this.gotoDefinition(a.target.position,a.hasSideBySideModifier).catch(l=>{Ln(l)}).finally(()=>{this.removeLinkDecorations()})})),this.toUnhook.add(o.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(e){return e.getContribution(SN.ID)}startFindDefinitionFromCursor(e){return m0e(this,void 0,void 0,function*(){yield this.startFindDefinition(e),this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(n=>{n&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))})}startFindDefinitionFromMouse(e,n){if(e.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(e,n)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}const r=e.target.position;this.startFindDefinition(r)}startFindDefinition(e){var n;return m0e(this,void 0,void 0,function*(){this.toUnhookForKeyboard.clear();const r=e?(n=this.editor.getModel())===null||n===void 0?void 0:n.getWordAtPosition(e):null;if(!r){this.currentWordAtPosition=null,this.removeLinkDecorations();return}if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===r.startColumn&&this.currentWordAtPosition.endColumn===r.endColumn&&this.currentWordAtPosition.word===r.word)return;this.currentWordAtPosition=r;const s=new cAe(this.editor,15);this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=go(l=>this.findDefinition(e,l));let o;try{o=yield this.previousPromise}catch(l){Ln(l);return}if(!o||!o.length||!s.validate(this.editor)){this.removeLinkDecorations();return}const a=o[0].originSelectionRange?J.lift(o[0].originSelectionRange):new J(e.lineNumber,r.startColumn,e.lineNumber,r.endColumn);if(o.length>1){let l=a;for(const{originSelectionRange:c}of o)c&&(l=J.plusRange(l,c));this.addDecoration(l,new Ea().appendText(L("multipleResults","Click to show {0} definitions.",o.length)))}else{const l=o[0];if(!l.uri)return;this.textModelResolverService.createModelReference(l.uri).then(c=>{if(!c.object||!c.object.textEditorModel){c.dispose();return}const{object:{textEditorModel:u}}=c,{startLineNumber:d}=l.range;if(d<1||d>u.getLineCount()){c.dispose();return}const h=this.getPreviewValue(u,d,l),f=this.languageService.guessLanguageIdByFilepathOrFirstLine(u.uri);this.addDecoration(a,h?new Ea().appendCodeblock(f||"",h):void 0),c.dispose()})}})}getPreviewValue(e,n,r){let s=r.range;return s.endLineNumber-s.startLineNumber>=SN.MAX_SOURCE_PREVIEW_LINES&&(s=this.getPreviewRangeBasedOnIndentation(e,n)),this.stripIndentationFromPreviewRange(e,n,s)}stripIndentationFromPreviewRange(e,n,r){let o=e.getLineFirstNonWhitespaceColumn(n);for(let l=n+1;l{const s=!n&&this.editor.getOption(87)&&!this.isInPeekEditor(r);return new o4({openToSide:n,openInPeek:s,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(r)})}isInPeekEditor(e){const n=e.get(mn);return xc.inPeekEditor.getValue(n)}dispose(){this.toUnhook.dispose(),this.toUnhookForKeyboard.dispose()}};Lx.ID="editor.contrib.gotodefinitionatposition";Lx.MAX_SOURCE_PREVIEW_LINES=8;Lx=SN=gDt([mK(1,Ec),mK(2,Ar),mK(3,Et)],Lx);_i(Lx.ID,Lx,2);const R6=tt;class jNe extends Le{constructor(){super(),this.containerDomNode=document.createElement("div"),this.containerDomNode.className="monaco-hover",this.containerDomNode.tabIndex=0,this.containerDomNode.setAttribute("role","tooltip"),this.contentsDomNode=document.createElement("div"),this.contentsDomNode.className="monaco-hover-content",this.scrollbar=this._register(new P5(this.contentsDomNode,{consumeMouseWheelIfScrollbarIsNeeded:!0})),this.containerDomNode.appendChild(this.scrollbar.getDomNode())}onContentsChanged(){this.scrollbar.scanDomNode()}}class sle extends Le{static render(e,n,r){return new sle(e,n,r)}constructor(e,n,r){super(),this.actionContainer=He(e,R6("div.action-container")),this.actionContainer.setAttribute("tabindex","0"),this.action=He(this.actionContainer,R6("a.action")),this.action.setAttribute("role","button"),n.iconClass&&He(this.action,R6(`span.icon.${n.iconClass}`));const s=He(this.action,R6("span"));s.textContent=r?`${n.label} (${r})`:n.label,this._register(Be(this.actionContainer,ht.CLICK,o=>{o.stopPropagation(),o.preventDefault(),n.run(this.actionContainer)})),this._register(Be(this.actionContainer,ht.KEY_DOWN,o=>{const a=new yr(o);(a.equals(3)||a.equals(10))&&(o.stopPropagation(),o.preventDefault(),n.run(this.actionContainer))})),this.setEnabled(!0)}setEnabled(e){e?(this.actionContainer.classList.remove("disabled"),this.actionContainer.removeAttribute("aria-disabled")):(this.actionContainer.classList.add("disabled"),this.actionContainer.setAttribute("aria-disabled","true"))}}function mDt(i,e){return i&&e?L("acessibleViewHint","Inspect this in the accessible view with {0}.",e):i?L("acessibleViewHintNoKbOpen","Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding."):""}var _Dt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},vDt=function(i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=i[Symbol.asyncIterator],n;return e?e.call(i):(i=typeof __values=="function"?__values(i):i[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=i[o]&&function(a){return new Promise(function(l,c){a=i[o](a),s(l,c,a.done,a.value)})}}function s(o,a,l,c){Promise.resolve(c).then(function(u){o({value:u,done:l})},a)}};let bDt=class{constructor(e,n,r){this.value=e,this.isComplete=n,this.hasLoadingMessage=r}};class WNe extends Le{constructor(e,n){super(),this._editor=e,this._computer=n,this._onResult=this._register(new _e),this.onResult=this._onResult.event,this._firstWaitScheduler=this._register(new Ji(()=>this._triggerAsyncComputation(),0)),this._secondWaitScheduler=this._register(new Ji(()=>this._triggerSyncComputation(),0)),this._loadingMessageScheduler=this._register(new Ji(()=>this._triggerLoadingMessage(),0)),this._state=0,this._asyncIterable=null,this._asyncIterableDone=!1,this._result=[]}dispose(){this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),super.dispose()}get _hoverTime(){return this._editor.getOption(60).delay}get _firstWaitTime(){return this._hoverTime/2}get _secondWaitTime(){return this._hoverTime-this._firstWaitTime}get _loadingMessageTime(){return 3*this._hoverTime}_setState(e,n=!0){this._state=e,n&&this._fireResult()}_triggerAsyncComputation(){this._setState(2),this._secondWaitScheduler.schedule(this._secondWaitTime),this._computer.computeAsync?(this._asyncIterableDone=!1,this._asyncIterable=mlt(e=>this._computer.computeAsync(e)),_Dt(this,void 0,void 0,function*(){var e,n,r,s;try{try{for(var o=!0,a=vDt(this._asyncIterable),l;l=yield a.next(),e=l.done,!e;o=!0){s=l.value,o=!1;const c=s;c&&(this._result.push(c),this._fireResult())}}catch(c){n={error:c}}finally{try{!o&&!e&&(r=a.return)&&(yield r.call(a))}finally{if(n)throw n.error}}this._asyncIterableDone=!0,(this._state===3||this._state===4)&&this._setState(0)}catch(c){Ln(c)}})):this._asyncIterableDone=!0}_triggerSyncComputation(){this._computer.computeSync&&(this._result=this._result.concat(this._computer.computeSync())),this._setState(this._asyncIterableDone?0:3)}_triggerLoadingMessage(){this._state===3&&this._setState(4)}_fireResult(){if(this._state===1||this._state===2)return;const e=this._state===0,n=this._state===4;this._onResult.fire(new bDt(this._result.slice(0),e,n))}start(e){if(e===0)this._state===0&&(this._setState(1),this._firstWaitScheduler.schedule(this._firstWaitTime),this._loadingMessageScheduler.schedule(this._loadingMessageTime));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._firstWaitScheduler.cancel(),this._secondWaitScheduler.cancel(),this._loadingMessageScheduler.cancel(),this._asyncIterable&&(this._asyncIterable.cancel(),this._asyncIterable=null),this._result=[],this._setState(0,!1)}}class _K{constructor(e,n,r,s){this.priority=e,this.range=n,this.initialMousePosX=r,this.initialMousePosY=s,this.type=1}equals(e){return e.type===1&&this.range.equalsRange(e.range)}canAdoptVisibleHover(e,n){return e.type===1&&n.lineNumber===this.range.startLineNumber}}class A8{constructor(e,n,r,s,o,a){this.priority=e,this.owner=n,this.range=r,this.initialMousePosX=s,this.initialMousePosY=o,this.supportsMarkerHover=a,this.type=2}equals(e){return e.type===2&&this.owner===e.owner}canAdoptVisibleHover(e,n){return e.type===2&&this.owner===e.owner}}const uk=new class{constructor(){this._participants=[]}register(e){this._participants.push(e)}getAll(){return this._participants}};class ole{constructor(){this._onDidWillResize=new _e,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new _e,this.onDidResize=this._onDidResize.event,this._sashListener=new Xe,this._size=new bi(0,0),this._minSize=new bi(0,0),this._maxSize=new bi(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),this.domNode=document.createElement("div"),this._eastSash=new ja(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new ja(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new ja(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:O7.North}),this._southSash=new ja(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:O7.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let e,n=0,r=0;this._sashListener.add(_t.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{e===void 0&&(this._onDidWillResize.fire(),e=this._size,n=0,r=0)})),this._sashListener.add(_t.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{e!==void 0&&(e=void 0,n=0,r=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(s=>{e&&(r=s.currentX-s.startX,this.layout(e.height+n,e.width+r),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(s=>{e&&(r=-(s.currentX-s.startX),this.layout(e.height+n,e.width+r),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(s=>{e&&(n=-(s.currentY-s.startY),this.layout(e.height+n,e.width+r),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(s=>{e&&(n=s.currentY-s.startY,this.layout(e.height+n,e.width+r),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(_t.any(this._eastSash.onDidReset,this._westSash.onDidReset)(s=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(_t.any(this._northSash.onDidReset,this._southSash.onDidReset)(s=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(e,n,r,s){this._northSash.state=e?3:0,this._eastSash.state=n?3:0,this._southSash.state=r?3:0,this._westSash.state=s?3:0}layout(e=this.size.height,n=this.size.width){const{height:r,width:s}=this._minSize,{height:o,width:a}=this._maxSize;e=Math.max(r,Math.min(o,e)),n=Math.max(s,Math.min(a,n));const l=new bi(n,e);bi.equals(l,this._size)||(this.domNode.style.height=e+"px",this.domNode.style.width=n+"px",this._size=l,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(e){this._maxSize=e}get maxSize(){return this._maxSize}set minSize(e){this._minSize=e}get minSize(){return this._minSize}set preferredSize(e){this._preferredSize=e}get preferredSize(){return this._preferredSize}}const yDt=30,wDt=24;class CDt extends Le{constructor(e,n=new bi(10,10)){super(),this._editor=e,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._resizableNode=this._register(new ole),this._contentPosition=null,this._isResizing=!1,this._resizableNode.domNode.style.position="absolute",this._resizableNode.minSize=bi.lift(n),this._resizableNode.layout(n.height,n.width),this._resizableNode.enableSashes(!0,!0,!0,!0),this._register(this._resizableNode.onDidResize(r=>{this._resize(new bi(r.dimension.width,r.dimension.height)),r.done&&(this._isResizing=!1)})),this._register(this._resizableNode.onDidWillResize(()=>{this._isResizing=!0}))}get isResizing(){return this._isResizing}getDomNode(){return this._resizableNode.domNode}getPosition(){return this._contentPosition}get position(){var e;return!((e=this._contentPosition)===null||e===void 0)&&e.position?ve.lift(this._contentPosition.position):void 0}_availableVerticalSpaceAbove(e){const n=this._editor.getDomNode(),r=this._editor.getScrolledVisiblePosition(e);return!n||!r?void 0:no(n).top+r.top-yDt}_availableVerticalSpaceBelow(e){const n=this._editor.getDomNode(),r=this._editor.getScrolledVisiblePosition(e);if(!n||!r)return;const s=no(n),o=FI(n.ownerDocument.body),a=s.top+r.top+r.height;return o.height-a-wDt}_findPositionPreference(e,n){var r,s;const o=Math.min((r=this._availableVerticalSpaceBelow(n))!==null&&r!==void 0?r:1/0,e),a=Math.min((s=this._availableVerticalSpaceAbove(n))!==null&&s!==void 0?s:1/0,e),l=Math.min(Math.max(a,o),e),c=Math.min(e,l);let u;return this._editor.getOption(60).above?u=c<=a?1:2:u=c<=o?2:1,u===1?this._resizableNode.enableSashes(!0,!0,!1,!1):this._resizableNode.enableSashes(!1,!0,!0,!1),u}_resize(e){this._resizableNode.layout(e.height,e.width)}}var ale=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},SS=function(i,e){return function(n,r){e(n,r,i)}},N8,Ug;const _0e=tt;let sj=N8=class extends Le{constructor(e,n,r){super(),this._editor=e,this._instantiationService=n,this._keybindingService=r,this._currentResult=null,this._widget=this._register(this._instantiationService.createInstance(Yy,this._editor)),this._participants=[];for(const s of uk.getAll())this._participants.push(this._instantiationService.createInstance(s,this._editor));this._participants.sort((s,o)=>s.hoverOrdinal-o.hoverOrdinal),this._computer=new aj(this._editor,this._participants),this._hoverOperation=this._register(new WNe(this._editor,this._computer)),this._register(this._hoverOperation.onResult(s=>{if(!this._computer.anchor)return;const o=s.hasLoadingMessage?this._addLoadingMessage(s.value):s.value;this._withResult(new $Ne(this._computer.anchor,o,s.isComplete))})),this._register(As(this._widget.getDomNode(),"keydown",s=>{s.equals(9)&&this.hide()})),this._register(Zr.onDidChange(()=>{this._widget.position&&this._currentResult&&this._setCurrentResult(this._currentResult)}))}get widget(){return this._widget}maybeShowAt(e){if(this._widget.isResizing)return!0;const n=[];for(const s of this._participants)if(s.suggestHoverAnchor){const o=s.suggestHoverAnchor(e);o&&n.push(o)}const r=e.target;if(r.type===6&&n.push(new _K(0,r.range,e.event.posx,e.event.posy)),r.type===7){const s=this._editor.getOption(50).typicalHalfwidthCharacterWidth/2;!r.detail.isAfterLines&&typeof r.detail.horizontalDistanceToText=="number"&&r.detail.horizontalDistanceToTexto.priority-s.priority),this._startShowingOrUpdateHover(n[0],0,0,!1,e))}startShowingAtRange(e,n,r,s){this._startShowingOrUpdateHover(new _K(0,e,void 0,void 0),n,r,s,null)}_startShowingOrUpdateHover(e,n,r,s,o){return!this._widget.position||!this._currentResult?e?(this._startHoverOperationIfNecessary(e,n,r,s,!1),!0):!1:this._editor.getOption(60).sticky&&o&&this._widget.isMouseGettingCloser(o.event.posx,o.event.posy)?(e&&this._startHoverOperationIfNecessary(e,n,r,s,!0),!0):e?e&&this._currentResult.anchor.equals(e)?!0:e.canAdoptVisibleHover(this._currentResult.anchor,this._widget.position)?(this._setCurrentResult(this._currentResult.filter(e)),this._startHoverOperationIfNecessary(e,n,r,s,!1),!0):(this._setCurrentResult(null),this._startHoverOperationIfNecessary(e,n,r,s,!1),!0):(this._setCurrentResult(null),!1)}_startHoverOperationIfNecessary(e,n,r,s,o){this._computer.anchor&&this._computer.anchor.equals(e)||(this._hoverOperation.cancel(),this._computer.anchor=e,this._computer.shouldFocus=s,this._computer.source=r,this._computer.insistOnKeepingHoverVisible=o,this._hoverOperation.start(n))}_setCurrentResult(e){this._currentResult!==e&&(e&&e.messages.length===0&&(e=null),this._currentResult=e,this._currentResult?this._renderMessages(this._currentResult.anchor,this._currentResult.messages):this._widget.hide())}hide(){this._computer.anchor=null,this._hoverOperation.cancel(),this._setCurrentResult(null)}get isColorPickerVisible(){return this._widget.isColorPickerVisible}get isVisibleFromKeyboard(){return this._widget.isVisibleFromKeyboard}get isVisible(){return this._widget.isVisible}get isFocused(){return this._widget.isFocused}get isResizing(){return this._widget.isResizing}containsNode(e){return e?this._widget.getDomNode().contains(e):!1}_addLoadingMessage(e){if(this._computer.anchor){for(const n of this._participants)if(n.createLoadingMessage){const r=n.createLoadingMessage(this._computer.anchor);if(r)return e.slice(0).concat([r])}}return e}_withResult(e){this._widget.position&&this._currentResult&&this._currentResult.isComplete&&(!e.isComplete||this._computer.insistOnKeepingHoverVisible&&e.messages.length===0)||this._setCurrentResult(e)}_renderMessages(e,n){const{showAtPosition:r,showAtSecondaryPosition:s,highlightRange:o}=N8.computeHoverRanges(this._editor,e.range,n),a=new Xe,l=a.add(new oj(this._keybindingService)),c=document.createDocumentFragment();let u=null;const d={fragment:c,statusBar:l,setColorPicker:f=>u=f,onContentsChanged:()=>this._widget.onContentsChanged(),setMinimumDimensions:f=>this._widget.setMinimumDimensions(f),hide:()=>this.hide()};for(const f of this._participants){const p=n.filter(g=>g.owner===f);p.length>0&&a.add(f.renderHoverParts(d,p))}const h=n.some(f=>f.isBeforeContent);if(l.hasContent&&c.appendChild(l.hoverElement),c.hasChildNodes()){if(o){const f=this._editor.createDecorationsCollection();f.set([{range:o,options:N8._DECORATION_OPTIONS}]),a.add(gn(()=>{f.clear()}))}this._widget.showAt(c,new xDt(u,r,s,this._editor.getOption(60).above,this._computer.shouldFocus,this._computer.source,h,e.initialMousePosX,e.initialMousePosY,a))}else a.dispose()}static computeHoverRanges(e,n,r){let s=1;if(e.hasModel()){const u=e._getViewModel(),d=u.coordinatesConverter,h=d.convertModelRangeToViewRange(n),f=new ve(h.startLineNumber,u.getLineMinColumn(h.startLineNumber));s=d.convertViewPositionToModelPosition(f).column}const o=n.startLineNumber;let a=n.startColumn,l=r[0].range,c=null;for(const u of r)l=J.plusRange(l,u.range),u.range.startLineNumber===o&&u.range.endLineNumber===o&&(a=Math.max(Math.min(a,u.range.startColumn),s)),u.forceShowAtRange&&(c=u.range);return{showAtPosition:c?c.getStartPosition():new ve(o,n.startColumn),showAtSecondaryPosition:c?c.getStartPosition():new ve(o,a),highlightRange:l}}focus(){this._widget.focus()}scrollUp(){this._widget.scrollUp()}scrollDown(){this._widget.scrollDown()}scrollLeft(){this._widget.scrollLeft()}scrollRight(){this._widget.scrollRight()}pageUp(){this._widget.pageUp()}pageDown(){this._widget.pageDown()}goToTop(){this._widget.goToTop()}goToBottom(){this._widget.goToBottom()}};sj._DECORATION_OPTIONS=kn.register({description:"content-hover-highlight",className:"hoverHighlight"});sj=N8=ale([SS(1,hn),SS(2,sr)],sj);class $Ne{constructor(e,n,r){this.anchor=e,this.messages=n,this.isComplete=r}filter(e){const n=this.messages.filter(r=>r.isValidForHoverAnchor(e));return n.length===this.messages.length?this:new SDt(this,this.anchor,n,this.isComplete)}}class SDt extends $Ne{constructor(e,n,r,s){super(n,r,s),this.original=e}filter(e){return this.original.filter(e)}}class xDt{constructor(e,n,r,s,o,a,l,c,u,d){this.colorPicker=e,this.showAtPosition=n,this.showAtSecondaryPosition=r,this.preferAbove=s,this.stoleFocus=o,this.source=a,this.isBeforeContent=l,this.initialMousePosX=c,this.initialMousePosY=u,this.disposables=d,this.closestMouseDistance=void 0}}const v0e=30,vK=10,kDt=6;let Yy=Ug=class extends CDt{get isColorPickerVisible(){var e;return!!(!((e=this._visibleData)===null||e===void 0)&&e.colorPicker)}get isVisibleFromKeyboard(){var e;return((e=this._visibleData)===null||e===void 0?void 0:e.source)===1}get isVisible(){var e;return(e=this._hoverVisibleKey.get())!==null&&e!==void 0?e:!1}get isFocused(){var e;return(e=this._hoverFocusedKey.get())!==null&&e!==void 0?e:!1}constructor(e,n,r,s,o){const a=e.getOption(66)+8,l=150,c=new bi(l,a);super(e,c),this._configurationService=r,this._accessibilityService=s,this._keybindingService=o,this._hover=this._register(new jNe),this._minimumSize=c,this._hoverVisibleKey=oe.hoverVisible.bindTo(n),this._hoverFocusedKey=oe.hoverFocused.bindTo(n),He(this._resizableNode.domNode,this._hover.containerDomNode),this._resizableNode.domNode.style.zIndex="50",this._register(this._editor.onDidLayoutChange(()=>this._layout())),this._register(this._editor.onDidChangeConfiguration(d=>{d.hasChanged(50)&&this._updateFont()}));const u=this._register(Gm(this._resizableNode.domNode));this._register(u.onDidFocus(()=>{this._hoverFocusedKey.set(!0)})),this._register(u.onDidBlur(()=>{this._hoverFocusedKey.set(!1)})),this._setHoverData(void 0),this._layout(),this._editor.addContentWidget(this)}dispose(){var e;super.dispose(),(e=this._visibleData)===null||e===void 0||e.disposables.dispose(),this._editor.removeContentWidget(this)}getId(){return Ug.ID}static _applyDimensions(e,n,r){const s=typeof n=="number"?`${n}px`:n,o=typeof r=="number"?`${r}px`:r;e.style.width=s,e.style.height=o}_setContentsDomNodeDimensions(e,n){const r=this._hover.contentsDomNode;return Ug._applyDimensions(r,e,n)}_setContainerDomNodeDimensions(e,n){const r=this._hover.containerDomNode;return Ug._applyDimensions(r,e,n)}_setHoverWidgetDimensions(e,n){this._setContentsDomNodeDimensions(e,n),this._setContainerDomNodeDimensions(e,n),this._layoutContentWidget()}static _applyMaxDimensions(e,n,r){const s=typeof n=="number"?`${n}px`:n,o=typeof r=="number"?`${r}px`:r;e.style.maxWidth=s,e.style.maxHeight=o}_setHoverWidgetMaxDimensions(e,n){Ug._applyMaxDimensions(this._hover.contentsDomNode,e,n),Ug._applyMaxDimensions(this._hover.containerDomNode,e,n),this._hover.containerDomNode.style.setProperty("--vscode-hover-maxWidth",typeof e=="number"?`${e}px`:e),this._layoutContentWidget()}_hasHorizontalScrollbar(){const e=this._hover.scrollbar.getScrollDimensions();return e.scrollWidth>e.width}_adjustContentsBottomPadding(){const e=this._hover.contentsDomNode,n=`${this._hover.scrollbar.options.horizontalScrollbarSize}px`;e.style.paddingBottom!==n&&(e.style.paddingBottom=n)}_setAdjustedHoverWidgetDimensions(e){this._setHoverWidgetMaxDimensions("none","none");const n=e.width,r=e.height;this._setHoverWidgetDimensions(n,r),this._hasHorizontalScrollbar()&&(this._adjustContentsBottomPadding(),this._setContentsDomNodeDimensions(n,r-vK))}_updateResizableNodeMaxDimensions(){var e,n;const r=(e=this._findMaximumRenderingWidth())!==null&&e!==void 0?e:1/0,s=(n=this._findMaximumRenderingHeight())!==null&&n!==void 0?n:1/0;this._resizableNode.maxSize=new bi(r,s),this._setHoverWidgetMaxDimensions(r,s)}_resize(e){var n,r;Ug._lastDimensions=new bi(e.width,e.height),this._setAdjustedHoverWidgetDimensions(e),this._resizableNode.layout(e.height,e.width),this._updateResizableNodeMaxDimensions(),this._hover.scrollbar.scanDomNode(),this._editor.layoutContentWidget(this),(r=(n=this._visibleData)===null||n===void 0?void 0:n.colorPicker)===null||r===void 0||r.layout()}_findAvailableSpaceVertically(){var e;const n=(e=this._visibleData)===null||e===void 0?void 0:e.showAtPosition;if(n)return this._positionPreference===1?this._availableVerticalSpaceAbove(n):this._availableVerticalSpaceBelow(n)}_findMaximumRenderingHeight(){const e=this._findAvailableSpaceVertically();if(!e)return;let n=kDt;return Array.from(this._hover.contentsDomNode.children).forEach(r=>{n+=r.clientHeight}),this._hasHorizontalScrollbar()&&(n+=vK),Math.min(e,n)}_isHoverTextOverflowing(){this._hover.containerDomNode.style.setProperty("--vscode-hover-whiteSpace","nowrap"),this._hover.containerDomNode.style.setProperty("--vscode-hover-sourceWhiteSpace","nowrap");const e=Array.from(this._hover.contentsDomNode.children).some(n=>n.scrollWidth>n.clientWidth);return this._hover.containerDomNode.style.removeProperty("--vscode-hover-whiteSpace"),this._hover.containerDomNode.style.removeProperty("--vscode-hover-sourceWhiteSpace"),e}_findMaximumRenderingWidth(){if(!this._editor||!this._editor.hasModel())return;const e=this._isHoverTextOverflowing(),n=typeof this._contentWidth>"u"?0:this._contentWidth-2;return e||this._hover.containerDomNode.clientWidth"u"||typeof this._visibleData.initialMousePosY>"u")return this._visibleData.initialMousePosX=e,this._visibleData.initialMousePosY=n,!1;const r=no(this.getDomNode());typeof this._visibleData.closestMouseDistance>"u"&&(this._visibleData.closestMouseDistance=b0e(this._visibleData.initialMousePosX,this._visibleData.initialMousePosY,r.left,r.top,r.width,r.height));const s=b0e(e,n,r.left,r.top,r.width,r.height);return s>this._visibleData.closestMouseDistance+4?!1:(this._visibleData.closestMouseDistance=Math.min(this._visibleData.closestMouseDistance,s),!0)}_setHoverData(e){var n;(n=this._visibleData)===null||n===void 0||n.disposables.dispose(),this._visibleData=e,this._hoverVisibleKey.set(!!e),this._hover.containerDomNode.classList.toggle("hidden",!e)}_layout(){const{fontSize:e,lineHeight:n}=this._editor.getOption(50),r=this._hover.contentsDomNode;r.style.fontSize=`${e}px`,r.style.lineHeight=`${n/e}`,this._updateMaxDimensions()}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(n=>this._editor.applyFontInfo(n))}_updateContent(e){const n=this._hover.contentsDomNode;n.style.paddingBottom="",n.textContent="",n.appendChild(e)}_layoutContentWidget(){this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}_updateMaxDimensions(){const e=Math.max(this._editor.getLayoutInfo().height/4,250,Ug._lastDimensions.height),n=Math.max(this._editor.getLayoutInfo().width*.66,500,Ug._lastDimensions.width);this._setHoverWidgetMaxDimensions(n,e)}_render(e,n){this._setHoverData(n),this._updateFont(),this._updateContent(e),this._updateMaxDimensions(),this.onContentsChanged(),this._editor.render()}getPosition(){var e;return this._visibleData?{position:this._visibleData.showAtPosition,secondaryPosition:this._visibleData.showAtSecondaryPosition,positionAffinity:this._visibleData.isBeforeContent?3:void 0,preference:[(e=this._positionPreference)!==null&&e!==void 0?e:1]}:null}showAt(e,n){var r,s,o,a;if(!this._editor||!this._editor.hasModel())return;this._render(e,n);const l=gS(this._hover.containerDomNode),c=n.showAtPosition;this._positionPreference=(r=this._findPositionPreference(l,c))!==null&&r!==void 0?r:1,this.onContentsChanged(),n.stoleFocus&&this._hover.containerDomNode.focus(),(s=n.colorPicker)===null||s===void 0||s.layout();const u=mDt(this._configurationService.getValue("accessibility.verbosity.hover")===!0&&this._accessibilityService.isScreenReaderOptimized(),(a=(o=this._keybindingService.lookupKeybinding("editor.action.accessibleView"))===null||o===void 0?void 0:o.getAriaLabel())!==null&&a!==void 0?a:"");u&&(this._hover.contentsDomNode.ariaLabel=this._hover.contentsDomNode.textContent+", "+u)}hide(){if(!this._visibleData)return;const e=this._visibleData.stoleFocus||this._hoverFocusedKey.get();this._setHoverData(void 0),this._resizableNode.maxSize=new bi(1/0,1/0),this._resizableNode.clearSashHoverState(),this._hoverFocusedKey.set(!1),this._editor.layoutContentWidget(this),e&&this._editor.focus()}_removeConstraintsRenderNormally(){const e=this._editor.getLayoutInfo();this._resizableNode.layout(e.height,e.width),this._setHoverWidgetDimensions("auto","auto")}_adjustHoverHeightForScrollbar(e){var n;const r=this._hover.containerDomNode,s=this._hover.contentsDomNode,o=(n=this._findMaximumRenderingHeight())!==null&&n!==void 0?n:1/0;this._setContainerDomNodeDimensions(dc(r),Math.min(o,e)),this._setContentsDomNodeDimensions(dc(s),Math.min(o,e-vK))}setMinimumDimensions(e){this._minimumSize=new bi(Math.max(this._minimumSize.width,e.width),Math.max(this._minimumSize.height,e.height)),this._updateMinimumWidth()}_updateMinimumWidth(){const e=typeof this._contentWidth>"u"?this._minimumSize.width:Math.min(this._contentWidth,this._minimumSize.width);this._resizableNode.minSize=new bi(e,this._minimumSize.height)}onContentsChanged(){var e;this._removeConstraintsRenderNormally();const n=this._hover.containerDomNode;let r=gS(n),s=dc(n);if(this._resizableNode.layout(r,s),this._setHoverWidgetDimensions(s,r),r=gS(n),s=dc(n),this._contentWidth=s,this._updateMinimumWidth(),this._resizableNode.layout(r,s),this._hasHorizontalScrollbar()&&(this._adjustContentsBottomPadding(),this._adjustHoverHeightForScrollbar(r)),!((e=this._visibleData)===null||e===void 0)&&e.showAtPosition){const o=gS(this._hover.containerDomNode);this._positionPreference=this._findPositionPreference(o,this._visibleData.showAtPosition)}this._layoutContentWidget()}focus(){this._hover.containerDomNode.focus()}scrollUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,n=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e-n.lineHeight})}scrollDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,n=this._editor.getOption(50);this._hover.scrollbar.setScrollPosition({scrollTop:e+n.lineHeight})}scrollLeft(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e-v0e})}scrollRight(){const e=this._hover.scrollbar.getScrollPosition().scrollLeft;this._hover.scrollbar.setScrollPosition({scrollLeft:e+v0e})}pageUp(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,n=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e-n})}pageDown(){const e=this._hover.scrollbar.getScrollPosition().scrollTop,n=this._hover.scrollbar.getScrollDimensions().height;this._hover.scrollbar.setScrollPosition({scrollTop:e+n})}goToTop(){this._hover.scrollbar.setScrollPosition({scrollTop:0})}goToBottom(){this._hover.scrollbar.setScrollPosition({scrollTop:this._hover.scrollbar.getScrollDimensions().scrollHeight})}};Yy.ID="editor.contrib.resizableContentHoverWidget";Yy._lastDimensions=new bi(0,0);Yy=Ug=ale([SS(1,mn),SS(2,ei),SS(3,zv),SS(4,sr)],Yy);let oj=class extends Le{get hasContent(){return this._hasContent}constructor(e){super(),this._keybindingService=e,this._hasContent=!1,this.hoverElement=_0e("div.hover-row.status-bar"),this.actionsElement=He(this.hoverElement,_0e("div.actions"))}addAction(e){const n=this._keybindingService.lookupKeybinding(e.commandId),r=n?n.getLabel():null;return this._hasContent=!0,this._register(sle.render(this.actionsElement,e,r))}append(e){const n=He(this.actionsElement,e);return this._hasContent=!0,n}};oj=ale([SS(0,sr)],oj);class aj{get anchor(){return this._anchor}set anchor(e){this._anchor=e}get shouldFocus(){return this._shouldFocus}set shouldFocus(e){this._shouldFocus=e}get source(){return this._source}set source(e){this._source=e}get insistOnKeepingHoverVisible(){return this._insistOnKeepingHoverVisible}set insistOnKeepingHoverVisible(e){this._insistOnKeepingHoverVisible=e}constructor(e,n){this._editor=e,this._participants=n,this._anchor=null,this._shouldFocus=!1,this._source=0,this._insistOnKeepingHoverVisible=!1}static _getLineDecorations(e,n){if(n.type!==1&&!n.supportsMarkerHover)return[];const r=e.getModel(),s=n.range.startLineNumber;if(s>r.getLineCount())return[];const o=r.getLineMaxColumn(s);return e.getLineDecorations(s).filter(a=>{if(a.options.isWholeLine)return!0;const l=a.range.startLineNumber===s?a.range.startColumn:1,c=a.range.endLineNumber===s?a.range.endColumn:o;if(a.options.showIfCollapsed){if(l>n.range.startColumn+1||n.range.endColumn-1>c)return!1}else if(l>n.range.startColumn||n.range.endColumn>c)return!1;return!0})}computeAsync(e){const n=this._anchor;if(!this._editor.hasModel()||!n)return zs.EMPTY;const r=aj._getLineDecorations(this._editor,n);return zs.merge(this._participants.map(s=>s.computeAsync?s.computeAsync(n,r,e):zs.EMPTY))}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];const e=aj._getLineDecorations(this._editor,this._anchor);let n=[];for(const r of this._participants)n=n.concat(r.computeSync(this._anchor,e));return Hm(n)}}function b0e(i,e,n,r,s,o){const a=n+s/2,l=r+o/2,c=Math.max(Math.abs(i-a)-s/2,0),u=Math.max(Math.abs(e-l)-o/2,0);return Math.sqrt(c*c+u*u)}const y0e=tt;class oE extends Le{constructor(e,n,r){super(),this._renderDisposeables=this._register(new Xe),this._editor=e,this._isVisible=!1,this._messages=[],this._hover=this._register(new jNe),this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._markdownRenderer=this._register(new Rv({editor:this._editor},n,r)),this._computer=new LDt(this._editor),this._hoverOperation=this._register(new WNe(this._editor,this._computer)),this._register(this._hoverOperation.onResult(s=>{this._withResult(s.value)})),this._register(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged())),this._register(this._editor.onDidChangeConfiguration(s=>{s.hasChanged(50)&&this._updateFont()})),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return oE.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_updateFont(){Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code")).forEach(n=>this._editor.applyFontInfo(n))}_onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._hoverOperation.start(0))}startShowingAt(e){this._computer.lineNumber!==e&&(this._hoverOperation.cancel(),this.hide(),this._computer.lineNumber=e,this._hoverOperation.start(0))}hide(){this._computer.lineNumber=-1,this._hoverOperation.cancel(),this._isVisible&&(this._isVisible=!1,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible))}_withResult(e){this._messages=e,this._messages.length>0?this._renderMessages(this._computer.lineNumber,this._messages):this.hide()}_renderMessages(e,n){this._renderDisposeables.clear();const r=document.createDocumentFragment();for(const s of n){const o=y0e("div.hover-row.markdown-hover"),a=He(o,y0e("div.hover-contents")),l=this._renderDisposeables.add(this._markdownRenderer.render(s.value));a.appendChild(l.element),r.appendChild(o)}this._updateContents(r),this._showAt(e)}_updateContents(e){this._hover.contentsDomNode.textContent="",this._hover.contentsDomNode.appendChild(e),this._updateFont()}_showAt(e){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible));const n=this._editor.getLayoutInfo(),r=this._editor.getTopForLineNumber(e),s=this._editor.getScrollTop(),o=this._editor.getOption(66),a=this._hover.containerDomNode.clientHeight,l=r-s-(a-o)/2;this._hover.containerDomNode.style.left=`${n.glyphMarginLeft+n.glyphMarginWidth}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(l),0)}px`}}oE.ID="editor.contrib.modesGlyphHoverWidget";class LDt{get lineNumber(){return this._lineNumber}set lineNumber(e){this._lineNumber=e}constructor(e){this._editor=e,this._lineNumber=-1}computeSync(){const e=s=>({value:s}),n=this._editor.getLineDecorations(this._lineNumber),r=[];if(!n)return r;for(const s of n){if(!s.options.glyphMarginClassName)continue;const o=s.options.glyphMarginHoverMessage;!o||YE(o)||r.push(...Lse(o).map(e))}return r}}var DDt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class EDt{constructor(e,n,r){this.provider=e,this.hover=n,this.ordinal=r}}function IDt(i,e,n,r,s){return DDt(this,void 0,void 0,function*(){try{const o=yield Promise.resolve(i.provideHover(n,r,s));if(o&&RDt(o))return new EDt(i,o,e)}catch(o){Us(o)}})}function lle(i,e,n,r){const o=i.ordered(e).map((a,l)=>IDt(a,l,e,n,r));return zs.fromPromises(o).coalesce()}function TDt(i,e,n,r){return lle(i,e,n,r).map(s=>s.hover).toPromise()}d_("_executeHoverProvider",(i,e,n)=>{const r=i.get(Et);return TDt(r.hoverProvider,e,n,Hn.None)});function RDt(i){const e=typeof i.range<"u",n=typeof i.contents<"u"&&i.contents&&i.contents.length>0;return e&&n}var ADt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},A6=function(i,e){return function(n,r){e(n,r,i)}};const w0e=tt;class Tp{constructor(e,n,r,s,o){this.owner=e,this.range=n,this.contents=r,this.isBeforeContent=s,this.ordinal=o}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let lj=class{constructor(e,n,r,s,o){this._editor=e,this._languageService=n,this._openerService=r,this._configurationService=s,this._languageFeaturesService=o,this.hoverOrdinal=3}createLoadingMessage(e){return new Tp(this,e.range,[new Ea().appendText(L("modesContentHover.loading","Loading..."))],!1,2e3)}computeSync(e,n){if(!this._editor.hasModel()||e.type!==1)return[];const r=this._editor.getModel(),s=e.range.startLineNumber,o=r.getLineMaxColumn(s),a=[];let l=1e3;const c=r.getLineLength(s),u=r.getLanguageIdAtPosition(e.range.startLineNumber,e.range.startColumn),d=this._editor.getOption(116),h=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:u});let f=!1;d>=0&&c>d&&e.range.startColumn>=d&&(f=!0,a.push(new Tp(this,e.range,[{value:L("stopped rendering","Rendering paused for long line for performance reasons. This can be configured via `editor.stopRenderingLineAfter`.")}],!1,l++))),!f&&typeof h=="number"&&c>=h&&a.push(new Tp(this,e.range,[{value:L("too many characters","Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}],!1,l++));let p=!1;for(const g of n){const m=g.range.startLineNumber===s?g.range.startColumn:1,_=g.range.endLineNumber===s?g.range.endColumn:o,b=g.options.hoverMessage;if(!b||YE(b))continue;g.options.beforeContentClassName&&(p=!0);const y=new J(e.range.startLineNumber,m,e.range.startLineNumber,_);a.push(new Tp(this,y,Lse(b),p,l++))}return a}computeAsync(e,n,r){if(!this._editor.hasModel()||e.type!==1)return zs.EMPTY;const s=this._editor.getModel();if(!this._languageFeaturesService.hoverProvider.has(s))return zs.EMPTY;const o=new ve(e.range.startLineNumber,e.range.startColumn);return lle(this._languageFeaturesService.hoverProvider,s,o,r).filter(a=>!YE(a.hover.contents)).map(a=>{const l=a.hover.range?J.lift(a.hover.range):e.range;return new Tp(this,l,a.hover.contents,!1,a.ordinal)})}renderHoverParts(e,n){return zNe(e,n,this._editor,this._languageService,this._openerService)}};lj=ADt([A6(1,Ar),A6(2,fu),A6(3,ei),A6(4,Et)],lj);function zNe(i,e,n,r,s){e.sort((a,l)=>a.ordinal-l.ordinal);const o=new Xe;for(const a of e)for(const l of a.contents){if(YE(l))continue;const c=w0e("div.hover-row.markdown-hover"),u=He(c,w0e("div.hover-contents")),d=o.add(new Rv({editor:n},r,s));o.add(d.onDidRenderAsync(()=>{u.className="hover-contents code-hover-contents",i.onContentsChanged()}));const h=o.add(d.render(l));u.appendChild(h.element),i.fragment.appendChild(c)}return o}var VNe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},cj=function(i,e){return function(n,r){e(n,r,i)}};class C0e{constructor(e,n,r){this.marker=e,this.index=n,this.total=r}}let Ute=class{constructor(e,n,r){this._markerService=n,this._configService=r,this._onDidChange=new _e,this.onDidChange=this._onDidChange.event,this._dispoables=new Xe,this._markers=[],this._nextIdx=-1,Jt.isUri(e)?this._resourceFilter=l=>l.toString()===e.toString():e&&(this._resourceFilter=e);const s=this._configService.getValue("problems.sortOrder"),o=(l,c)=>{let u=aP(l.resource.toString(),c.resource.toString());return u===0&&(s==="position"?u=J.compareRangesUsingStarts(l,c)||es.compare(l.severity,c.severity):u=es.compare(l.severity,c.severity)||J.compareRangesUsingStarts(l,c)),u},a=()=>{this._markers=this._markerService.read({resource:Jt.isUri(e)?e:void 0,severities:es.Error|es.Warning|es.Info}),typeof e=="function"&&(this._markers=this._markers.filter(l=>this._resourceFilter(l.resource))),this._markers.sort(o)};a(),this._dispoables.add(n.onMarkerChanged(l=>{(!this._resourceFilter||l.some(c=>this._resourceFilter(c)))&&(a(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(e){return!this._resourceFilter&&!e?!0:!this._resourceFilter||!e?!1:this._resourceFilter(e)}get selected(){const e=this._markers[this._nextIdx];return e&&new C0e(e,this._nextIdx+1,this._markers.length)}_initIdx(e,n,r){let s=!1,o=this._markers.findIndex(a=>a.resource.toString()===e.uri.toString());o<0&&(o=JM(this._markers,{resource:e.uri},(a,l)=>aP(a.resource.toString(),l.resource.toString())),o<0&&(o=~o));for(let a=o;as.resource.toString()===e.toString());if(!(r<0)){for(;r=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},aD=function(i,e){return function(n,r){e(n,r,i)}},Gte;class MDt{constructor(e,n,r,s,o){this._openerService=s,this._labelService=o,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new Xe,this._editor=n;const a=document.createElement("div");a.className="descriptioncontainer",this._messageBlock=document.createElement("div"),this._messageBlock.classList.add("message"),this._messageBlock.setAttribute("aria-live","assertive"),this._messageBlock.setAttribute("role","alert"),a.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),a.appendChild(this._relatedBlock),this._disposables.add(As(this._relatedBlock,"click",l=>{l.preventDefault();const c=this._relatedDiagnostics.get(l.target);c&&r(c)})),this._scrollable=new kIe(a,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:6,verticalScrollbarSize:6}),e.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(l=>{a.style.left=`-${l.scrollLeft}px`,a.style.top=`-${l.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){Mi(this._disposables)}update(e){const{source:n,message:r,relatedInformation:s,code:o}=e;let a=((n==null?void 0:n.length)||0)+2;o&&(typeof o=="string"?a+=o.length:a+=o.value.length);const l=Km(r);this._lines=l.length,this._longestLineLength=0;for(const f of l)this._longestLineLength=Math.max(f.length+a,this._longestLineLength);la(this._messageBlock),this._messageBlock.setAttribute("aria-label",this.getAriaLabel(e)),this._editor.applyFontInfo(this._messageBlock);let c=this._messageBlock;for(const f of l)c=document.createElement("div"),c.innerText=f,f===""&&(c.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(c);if(n||o){const f=document.createElement("span");if(f.classList.add("details"),c.appendChild(f),n){const p=document.createElement("span");p.innerText=n,p.classList.add("source"),f.appendChild(p)}if(o)if(typeof o=="string"){const p=document.createElement("span");p.innerText=`(${o})`,p.classList.add("code"),f.appendChild(p)}else{this._codeLink=tt("a.code-link"),this._codeLink.setAttribute("href",`${o.target.toString()}`),this._codeLink.onclick=g=>{this._openerService.open(o.target,{allowCommands:!0}),g.preventDefault(),g.stopPropagation()};const p=He(this._codeLink,tt("span"));p.innerText=o.value,f.appendChild(this._codeLink)}}if(la(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Ka(s)){const f=this._relatedBlock.appendChild(document.createElement("div"));f.style.paddingTop=`${Math.floor(this._editor.getOption(66)*.66)}px`,this._lines+=1;for(const p of s){const g=document.createElement("div"),m=document.createElement("a");m.classList.add("filename"),m.innerText=`${this._labelService.getUriBasenameLabel(p.resource)}(${p.startLineNumber}, ${p.startColumn}): `,m.title=this._labelService.getUriLabel(p.resource),this._relatedDiagnostics.set(m,p);const _=document.createElement("span");_.innerText=p.message,g.appendChild(m),g.appendChild(_),this._lines+=1,f.appendChild(g)}}const u=this._editor.getOption(50),d=Math.ceil(u.typicalFullwidthCharacterWidth*this._longestLineLength*.75),h=u.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:d,scrollHeight:h})}layout(e,n){this._scrollable.getDomNode().style.height=`${e}px`,this._scrollable.getDomNode().style.width=`${n}px`,this._scrollable.setScrollDimensions({width:n,height:e})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(e){let n="";switch(e.severity){case es.Error:n=L("Error","Error");break;case es.Warning:n=L("Warning","Warning");break;case es.Info:n=L("Info","Info");break;case es.Hint:n=L("Hint","Hint");break}let r=L("marker aria","{0} at {1}. ",n,e.startLineNumber+":"+e.startColumn);const s=this._editor.getModel();return s&&e.startLineNumber<=s.getLineCount()&&e.startLineNumber>=1&&(r=`${s.getLineContent(e.startLineNumber)}, ${r}`),r}}let oI=Gte=class extends rj{constructor(e,n,r,s,o,a,l){super(e,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},o),this._themeService=n,this._openerService=r,this._menuService=s,this._contextKeyService=a,this._labelService=l,this._callOnDispose=new Xe,this._onDidSelectRelatedInformation=new _e,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=es.Warning,this._backgroundColor=Te.white,this._applyTheme(n.getColorTheme()),this._callOnDispose.add(n.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(e){this._backgroundColor=e.getColor(BDt);let n=Xte,r=PDt;this._severity===es.Warning?(n=M8,r=ODt):this._severity===es.Info&&(n=Yte,r=FDt);const s=e.getColor(n),o=e.getColor(r);this.style({arrowColor:s,frameColor:s,headerBackgroundColor:o,primaryHeadingColor:e.getColor(INe),secondaryHeadingColor:e.getColor(TNe)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(e){super._fillHead(e),this._disposables.add(this._actionbarWidget.actionRunner.onWillRun(s=>this.editor.focus()));const n=[],r=this._menuService.createMenu(Gte.TitleMenu,this._contextKeyService);sRe(r,void 0,n),this._actionbarWidget.push(n,{label:!1,icon:!0,index:0}),r.dispose()}_fillTitleIcon(e){this._icon=He(e,tt(""))}_fillBody(e){this._parentContainer=e,e.classList.add("marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),e.appendChild(this._container),this._message=new MDt(this._container,this.editor,n=>this._onDidSelectRelatedInformation.fire(n),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw new Error("call showAtMarker")}showAtMarker(e,n,r){this._container.classList.remove("stale"),this._message.update(e),this._severity=e.severity,this._applyTheme(this._themeService.getColorTheme());const s=J.lift(e),o=this.editor.getPosition(),a=o&&s.containsPosition(o)?o:s.getStartPosition();super.show(a,this.computeRequiredHeight());const l=this.editor.getModel();if(l){const c=r>1?L("problems","{0} of {1} problems",n,r):L("change","{0} of {1} problem",n,r);this.setTitle(yh(l.uri),c)}this._icon.className=`codicon ${Kte.className(es.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(a,0),this.editor.focus()}updateMarker(e){this._container.classList.remove("stale"),this._message.update(e)}showStale(){this._container.classList.add("stale"),this._relayout()}_doLayoutBody(e,n){super._doLayoutBody(e,n),this._heightInPixel=e,this._message.layout(e,n),this._container.style.height=`${e}px`}_onWidth(e){this._message.layout(this._heightInPixel,e)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}};oI.TitleMenu=new se("gotoErrorTitleMenu");oI=Gte=NDt([aD(1,Do),aD(2,fu),aD(3,c_),aD(4,hn),aD(5,mn),aD(6,KE)],oI);const S0e=kP(wm,Idt),x0e=kP(Ju,SP),k0e=kP(_c,xP),Xte=ce("editorMarkerNavigationError.background",{dark:S0e,light:S0e,hcDark:Jn,hcLight:Jn},L("editorMarkerNavigationError","Editor marker navigation widget error color.")),PDt=ce("editorMarkerNavigationError.headerBackground",{dark:Ht(Xte,.1),light:Ht(Xte,.1),hcDark:null,hcLight:null},L("editorMarkerNavigationErrorHeaderBackground","Editor marker navigation widget error heading background.")),M8=ce("editorMarkerNavigationWarning.background",{dark:x0e,light:x0e,hcDark:Jn,hcLight:Jn},L("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),ODt=ce("editorMarkerNavigationWarning.headerBackground",{dark:Ht(M8,.1),light:Ht(M8,.1),hcDark:"#0C141F",hcLight:Ht(M8,.2)},L("editorMarkerNavigationWarningBackground","Editor marker navigation widget warning heading background.")),Yte=ce("editorMarkerNavigationInfo.background",{dark:k0e,light:k0e,hcDark:Jn,hcLight:Jn},L("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),FDt=ce("editorMarkerNavigationInfo.headerBackground",{dark:Ht(Yte,.1),light:Ht(Yte,.1),hcDark:null,hcLight:null},L("editorMarkerNavigationInfoHeaderBackground","Editor marker navigation widget info heading background.")),BDt=ce("editorMarkerNavigation.background",{dark:Lo,light:Lo,hcDark:Lo,hcLight:Lo},L("editorMarkerNavigationBackground","Editor marker navigation widget background."));var jDt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},N6=function(i,e){return function(n,r){e(n,r,i)}},UNe=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},xN;let T1=xN=class{static get(e){return e.getContribution(xN.ID)}constructor(e,n,r,s,o){this._markerNavigationService=n,this._contextKeyService=r,this._editorService=s,this._instantiationService=o,this._sessionDispoables=new Xe,this._editor=e,this._widgetVisible=qNe.bindTo(this._contextKeyService)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(e){if(this._model&&this._model.matches(e))return this._model;let n=!1;return this._model&&(n=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(e),n&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(oI,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(r=>{var s,o,a;(!(!((s=this._model)===null||s===void 0)&&s.selected)||!J.containsPosition((o=this._model)===null||o===void 0?void 0:o.selected.marker,r.position))&&((a=this._model)===null||a===void 0||a.resetIndex())})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;const r=this._model.find(this._editor.getModel().uri,this._widget.position);r?this._widget.updateMarker(r.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(r=>{this._editorService.openCodeEditor({resource:r.resource,options:{pinned:!0,revealIfOpened:!0,selection:J.lift(r).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(e=!0){this._cleanUp(),e&&this._editor.focus()}showAtMarker(e){if(this._editor.hasModel()){const n=this._getOrCreateModel(this._editor.getModel().uri);n.resetIndex(),n.move(!0,this._editor.getModel(),new ve(e.startLineNumber,e.startColumn)),n.selected&&this._widget.showAtMarker(n.selected.marker,n.selected.index,n.selected.total)}}nagivate(e,n){var r,s;return UNe(this,void 0,void 0,function*(){if(this._editor.hasModel()){const o=this._getOrCreateModel(n?void 0:this._editor.getModel().uri);if(o.move(e,this._editor.getModel(),this._editor.getPosition()),!o.selected)return;if(o.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();const a=yield this._editorService.openCodeEditor({resource:o.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:o.selected.marker}},this._editor);a&&((r=xN.get(a))===null||r===void 0||r.close(),(s=xN.get(a))===null||s===void 0||s.nagivate(e,n))}else this._widget.showAtMarker(o.selected.marker,o.selected.index,o.selected.total)}})}};T1.ID="editor.contrib.markerController";T1=xN=jDt([N6(1,HNe),N6(2,mn),N6(3,Si),N6(4,hn)],T1);class Ez extends kt{constructor(e,n,r){super(r),this._next=e,this._multiFile=n}run(e,n){var r;return UNe(this,void 0,void 0,function*(){n.hasModel()&&((r=T1.get(n))===null||r===void 0||r.nagivate(this._next,this._multiFile))})}}class Zy extends Ez{constructor(){super(!0,!1,{id:Zy.ID,label:Zy.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:578,weight:100},menuOpts:{menuId:oI.TitleMenu,title:Zy.LABEL,icon:ws("marker-navigation-next",lt.arrowDown,L("nextMarkerIcon","Icon for goto next marker.")),group:"navigation",order:1}})}}Zy.ID="editor.action.marker.next";Zy.LABEL=L("markerAction.next.label","Go to Next Problem (Error, Warning, Info)");class $S extends Ez{constructor(){super(!1,!1,{id:$S.ID,label:$S.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:1602,weight:100},menuOpts:{menuId:oI.TitleMenu,title:$S.LABEL,icon:ws("marker-navigation-previous",lt.arrowUp,L("previousMarkerIcon","Icon for goto previous marker.")),group:"navigation",order:2}})}}$S.ID="editor.action.marker.prev";$S.LABEL=L("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)");class WDt extends Ez{constructor(){super(!0,!0,{id:"editor.action.marker.nextInFiles",label:L("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:66,weight:100},menuOpts:{menuId:se.MenubarGoMenu,title:L({},"Next &&Problem"),group:"6_problem_nav",order:1}})}}class $Dt extends Ez{constructor(){super(!1,!0,{id:"editor.action.marker.prevInFiles",label:L("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:1090,weight:100},menuOpts:{menuId:se.MenubarGoMenu,title:L({},"Previous &&Problem"),group:"6_problem_nav",order:2}})}}_i(T1.ID,T1,4);rt(Zy);rt($S);rt(WDt);rt($Dt);const qNe=new yt("markersNavigationVisible",!1),zDt=Ho.bindToContribution(T1.get);ct(new zDt({id:"closeMarkersNavigation",precondition:qNe,handler:i=>i.close(),kbOpts:{weight:150,kbExpr:oe.focus,primary:9,secondary:[1033]}}));var VDt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},bK=function(i,e){return function(n,r){e(n,r,i)}};const Uh=tt;class HDt{constructor(e,n,r){this.owner=e,this.range=n,this.marker=r}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}const L0e={type:1,filter:{include:cn.QuickFix},triggerAction:uu.QuickFixHover};let Zte=class{constructor(e,n,r,s){this._editor=e,this._markerDecorationsService=n,this._openerService=r,this._languageFeaturesService=s,this.hoverOrdinal=1,this.recentMarkerCodeActionsInfo=void 0}computeSync(e,n){if(!this._editor.hasModel()||e.type!==1&&!e.supportsMarkerHover)return[];const r=this._editor.getModel(),s=e.range.startLineNumber,o=r.getLineMaxColumn(s),a=[];for(const l of n){const c=l.range.startLineNumber===s?l.range.startColumn:1,u=l.range.endLineNumber===s?l.range.endColumn:o,d=this._markerDecorationsService.getMarker(r.uri,l);if(!d)continue;const h=new J(e.range.startLineNumber,c,e.range.startLineNumber,u);a.push(new HDt(this,h,d))}return a}renderHoverParts(e,n){if(!n.length)return Le.None;const r=new Xe;n.forEach(o=>e.fragment.appendChild(this.renderMarkerHover(o,r)));const s=n.length===1?n[0]:n.sort((o,a)=>es.compare(o.marker.severity,a.marker.severity))[0];return this.renderMarkerStatusbar(e,s,r),r}renderMarkerHover(e,n){const r=Uh("div.hover-row"),s=He(r,Uh("div.marker.hover-contents")),{source:o,message:a,code:l,relatedInformation:c}=e.marker;this._editor.applyFontInfo(s);const u=He(s,Uh("span"));if(u.style.whiteSpace="pre-wrap",u.innerText=a,o||l)if(l&&typeof l!="string"){const d=Uh("span");if(o){const g=He(d,Uh("span"));g.innerText=o}const h=He(d,Uh("a.code-link"));h.setAttribute("href",l.target.toString()),n.add(Be(h,"click",g=>{this._openerService.open(l.target,{allowCommands:!0}),g.preventDefault(),g.stopPropagation()}));const f=He(h,Uh("span"));f.innerText=l.value;const p=He(s,d);p.style.opacity="0.6",p.style.paddingLeft="6px"}else{const d=He(s,Uh("span"));d.style.opacity="0.6",d.style.paddingLeft="6px",d.innerText=o&&l?`${o}(${l})`:o||`(${l})`}if(Ka(c))for(const{message:d,resource:h,startLineNumber:f,startColumn:p}of c){const g=He(s,Uh("div"));g.style.marginTop="8px";const m=He(g,Uh("a"));m.innerText=`${yh(h)}(${f}, ${p}): `,m.style.cursor="pointer",n.add(Be(m,"click",b=>{b.stopPropagation(),b.preventDefault(),this._openerService&&this._openerService.open(h,{fromUserGesture:!0,editorOptions:{selection:{startLineNumber:f,startColumn:p}}}).catch(Ln)}));const _=He(g,Uh("span"));_.innerText=d,this._editor.applyFontInfo(_)}return r}renderMarkerStatusbar(e,n,r){if((n.marker.severity===es.Error||n.marker.severity===es.Warning||n.marker.severity===es.Info)&&e.statusBar.addAction({label:L("view problem","View Problem"),commandId:Zy.ID,run:()=>{var s;e.hide(),(s=T1.get(this._editor))===null||s===void 0||s.showAtMarker(n.marker),this._editor.focus()}}),!this._editor.getOption(90)){const s=e.statusBar.append(Uh("div"));this.recentMarkerCodeActionsInfo&&(M7.makeKey(this.recentMarkerCodeActionsInfo.marker)===M7.makeKey(n.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(s.textContent=L("noQuickFixes","No quick fixes available")):this.recentMarkerCodeActionsInfo=void 0);const o=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?Le.None:r.add(g1(()=>s.textContent=L("checkingForQuickFixes","Checking for quick fixes..."),200));s.textContent||(s.textContent=" ");const a=this.getCodeActions(n.marker);r.add(gn(()=>a.cancel())),a.then(l=>{if(o.dispose(),this.recentMarkerCodeActionsInfo={marker:n.marker,hasCodeActions:l.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){l.dispose(),s.textContent=L("noQuickFixes","No quick fixes available");return}s.style.display="none";let c=!1;r.add(gn(()=>{c||l.dispose()})),e.statusBar.addAction({label:L("quick fixes","Quick Fix..."),commandId:Zae,run:u=>{c=!0;const d=k1.get(this._editor),h=no(u);e.hide(),d==null||d.showCodeActions(L0e,l,{x:h.left,y:h.top,width:h.width,height:h.height})}})},Ln)}}getCodeActions(e){return go(n=>wM(this._languageFeaturesService.codeActionProvider,this._editor.getModel(),new J(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),L0e,_v.None,n))}};Zte=VDt([bK(1,hoe),bK(2,fu),bK(3,Et)],Zte);const KNe="editor.action.inlineSuggest.commit",GNe="editor.action.inlineSuggest.showPrevious",XNe="editor.action.inlineSuggest.showNext";var UDt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class qDt extends Le{constructor(e,n,r={orientation:0}){super(),this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new Ust),this.onDidChangeDropdownVisibility=this._onDidChangeDropdownVisibility.event,this.disposables=this._register(new Xe),this.options=r,this.lookupKeybindings=typeof this.options.getKeyBinding=="function",this.toggleMenuAction=this._register(new uO(()=>{var s;return(s=this.toggleMenuActionViewItem)===null||s===void 0?void 0:s.show()},r.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",e.appendChild(this.element),this.actionBar=this._register(new wh(this.element,{orientation:r.orientation,ariaLabel:r.ariaLabel,actionRunner:r.actionRunner,allowContextMenu:r.allowContextMenu,highlightToggledItems:r.highlightToggledItems,actionViewItemProvider:(s,o)=>{var a;if(s.id===uO.ID)return this.toggleMenuActionViewItem=new D7(s,s.menuActions,n,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:en.asClassNameArray((a=r.moreIcon)!==null&&a!==void 0?a:lt.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(r.actionViewItemProvider){const l=r.actionViewItemProvider(s,o);if(l)return l}if(s instanceof NE){const l=new D7(s,s.actions,n,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:s.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry});return l.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(l),this.disposables.add(this._onDidChangeDropdownVisibility.add(l.onDidChangeVisibility)),l}}}))}set actionRunner(e){this.actionBar.actionRunner=e}get actionRunner(){return this.actionBar.actionRunner}getElement(){return this.element}getItemAction(e){return this.actionBar.getAction(e)}setActions(e,n){this.clear();const r=e?e.slice(0):[];this.hasSecondaryActions=!!(n&&n.length>0),this.hasSecondaryActions&&n&&(this.toggleMenuAction.menuActions=n.slice(0),r.push(this.toggleMenuAction)),r.forEach(s=>{this.actionBar.push(s,{icon:!0,label:!1,keybinding:this.getKeybindingLabel(s)})})}getKeybindingLabel(e){var n,r,s;const o=this.lookupKeybindings?(r=(n=this.options).getKeyBinding)===null||r===void 0?void 0:r.call(n,e):void 0;return(s=o==null?void 0:o.getLabel())!==null&&s!==void 0?s:void 0}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),super.dispose()}}class uO extends Vl{constructor(e,n){n=n||L("moreActions","More Actions..."),super(uO.ID,n,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=e}run(){return UDt(this,void 0,void 0,function*(){this.toggleDropdownMenu()})}get menuActions(){return this._menuActions}set menuActions(e){this._menuActions=e}}uO.ID="toolbar.toggle.more";var KDt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},aA=function(i,e){return function(n,r){e(n,r,i)}};let Qte=class extends qDt{constructor(e,n,r,s,o,a,l){super(e,o,Object.assign(Object.assign({getKeyBinding:u=>{var d;return(d=a.lookupKeybinding(u.id))!==null&&d!==void 0?d:void 0}},n),{allowContextMenu:!0,skipTelemetry:typeof(n==null?void 0:n.telemetrySource)=="string"})),this._options=n,this._menuService=r,this._contextKeyService=s,this._contextMenuService=o,this._sessionDisposables=this._store.add(new Xe);const c=n==null?void 0:n.telemetrySource;c&&this._store.add(this.actionBar.onDidRun(u=>l.publicLog2("workbenchActionExecuted",{id:u.action.id,from:c})))}setActions(e,n=[],r){var s,o,a;this._sessionDisposables.clear();const l=e.slice(),c=n.slice(),u=[];let d=0;const h=[];let f=!1;if(((s=this._options)===null||s===void 0?void 0:s.hiddenItemStrategy)!==-1)for(let p=0;p_==null?void 0:_.id)),g=this._options.overflowBehavior.maxItems-p.size;let m=0;for(let _=0;_=g&&(l[_]=void 0,h[_]=b))}}Mfe(l),Mfe(h),super.setActions(l,Vo.join(h,c)),u.length>0&&this._sessionDisposables.add(Be(this.getElement(),"contextmenu",p=>{var g,m,_,b,y;const x=new rh(p),k=this.getItemAction(x.target);if(!k)return;x.preventDefault(),x.stopPropagation();let D=!1;if(d===1&&((g=this._options)===null||g===void 0?void 0:g.hiddenItemStrategy)===0){D=!0;for(let A=0;Athis._menuService.resetHiddenStates(r)}))),this._contextMenuService.showContextMenu({getAnchor:()=>x,getActions:()=>E,menuId:(_=this._options)===null||_===void 0?void 0:_.contextMenu,menuActionOptions:Object.assign({renderShortTitle:!0},(b=this._options)===null||b===void 0?void 0:b.menuOptions),skipTelemetry:typeof((y=this._options)===null||y===void 0?void 0:y.telemetrySource)=="string",contextKeyService:this._contextKeyService})}))}};Qte=KDt([aA(2,c_),aA(3,mn),aA(4,Ff),aA(5,sr),aA(6,_d)],Qte);var cle=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Rp=function(i,e){return function(n,r){e(n,r,i)}},P8;let Jte=class extends Le{constructor(e,n,r){super(),this.editor=e,this.model=n,this.instantiationService=r,this.alwaysShowToolbar=oa(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).showToolbar==="always"),this.sessionPosition=void 0,this.position=ni(this,s=>{var o,a,l;const c=(o=this.model.read(s))===null||o===void 0?void 0:o.ghostText.read(s);if(!this.alwaysShowToolbar.read(s)||!c||c.parts.length===0)return this.sessionPosition=void 0,null;const u=c.parts[0].column;this.sessionPosition&&this.sessionPosition.lineNumber!==c.lineNumber&&(this.sessionPosition=void 0);const d=new ve(c.lineNumber,Math.min(u,(l=(a=this.sessionPosition)===null||a===void 0?void 0:a.column)!==null&&l!==void 0?l:Number.MAX_SAFE_INTEGER));return this.sessionPosition=d,d}),this._register(Xc((s,o)=>{const a=this.model.read(s);if(!a||!this.alwaysShowToolbar.read(s))return;const l=o.add(this.instantiationService.createInstance(R1,this.editor,!0,this.position,a.selectedInlineCompletionIndex,a.inlineCompletionsCount,a.selectedInlineCompletion.map(c=>{var u;return(u=c==null?void 0:c.inlineCompletion.source.inlineCompletions.commands)!==null&&u!==void 0?u:[]})));e.addContentWidget(l),o.add(gn(()=>e.removeContentWidget(l))),o.add(ur(c=>{this.position.read(c)&&a.lastTriggerKind.read(c)!==pv.Explicit&&a.triggerExplicitly()}))}))}};Jte=cle([Rp(2,hn)],Jte);const GDt=ws("inline-suggestion-hints-next",lt.chevronRight,L("parameterHintsNextIcon","Icon for show next parameter hint.")),XDt=ws("inline-suggestion-hints-previous",lt.chevronLeft,L("parameterHintsPreviousIcon","Icon for show previous parameter hint."));let R1=P8=class extends Le{static get dropDownVisible(){return this._dropDownVisible}createCommandAction(e,n,r){const s=new Vl(e,n,r,!0,()=>this._commandService.executeCommand(e)),o=this.keybindingService.lookupKeybinding(e,this._contextKeyService);let a=n;return o&&(a=L({},"{0} ({1})",n,o.getLabel())),s.tooltip=a,s}constructor(e,n,r,s,o,a,l,c,u,d,h){super(),this.editor=e,this.withBorder=n,this._position=r,this._currentSuggestionIdx=s,this._suggestionCount=o,this._extraCommands=a,this._commandService=l,this.keybindingService=u,this._contextKeyService=d,this._menuService=h,this.id=`InlineSuggestionHintsContentWidget${P8.id++}`,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this.nodes=Jo("div.inlineSuggestionsHints",{className:this.withBorder?".withBorder":""},[Jo("div@toolBar")]),this.previousAction=this.createCommandAction(GNe,L("previous","Previous"),en.asClassName(XDt)),this.availableSuggestionCountAction=new Vl("inlineSuggestionHints.availableSuggestionCount","",void 0,!1),this.nextAction=this.createCommandAction(XNe,L("next","Next"),en.asClassName(GDt)),this.inlineCompletionsActionsMenus=this._register(this._menuService.createMenu(se.InlineCompletionsActions,this._contextKeyService)),this.clearAvailableSuggestionCountLabelDebounced=this._register(new Ji(()=>{this.availableSuggestionCountAction.label=""},100)),this.disableButtonsDebounced=this._register(new Ji(()=>{this.previousAction.enabled=this.nextAction.enabled=!1},100)),this.lastCommands=[],this.toolBar=this._register(c.createInstance(ene,this.nodes.toolBar,se.InlineSuggestionToolbar,{menuOptions:{renderShortTitle:!0},toolbarOptions:{primaryGroup:f=>f.startsWith("primary")},actionViewItemProvider:(f,p)=>{if(f instanceof If)return c.createInstance(ZDt,f,void 0);if(f===this.availableSuggestionCountAction){const g=new YDt(void 0,f,{label:!0,icon:!1});return g.setClass("availableSuggestionCount"),g}},telemetrySource:"InlineSuggestionToolbar"})),this.toolBar.setPrependedPrimaryActions([this.previousAction,this.availableSuggestionCountAction,this.nextAction]),this._register(this.toolBar.onDidChangeDropdownVisibility(f=>{P8._dropDownVisible=f})),this._register(ur(f=>{this._position.read(f),this.editor.layoutContentWidget(this)})),this._register(ur(f=>{const p=this._suggestionCount.read(f),g=this._currentSuggestionIdx.read(f);p!==void 0?(this.clearAvailableSuggestionCountLabelDebounced.cancel(),this.availableSuggestionCountAction.label=`${g+1}/${p}`):this.clearAvailableSuggestionCountLabelDebounced.schedule(),p!==void 0&&p>1?(this.disableButtonsDebounced.cancel(),this.previousAction.enabled=this.nextAction.enabled=!0):this.disableButtonsDebounced.schedule()})),this._register(ur(f=>{const p=this._extraCommands.read(f);if(ys(this.lastCommands,p))return;this.lastCommands=p;const g=p.map(m=>({class:void 0,id:m.id,enabled:!0,tooltip:m.tooltip||"",label:m.title,run:_=>this._commandService.executeCommand(m.id)}));for(const[m,_]of this.inlineCompletionsActionsMenus.getActions())for(const b of _)b instanceof If&&g.push(b);g.length>0&&g.unshift(new Vo),this.toolBar.setAdditionalSecondaryActions(g)}))}getId(){return this.id}getDomNode(){return this.nodes.root}getPosition(){return{position:this._position.get(),preference:[1,2],positionAffinity:3}}};R1._dropDownVisible=!1;R1.id=0;R1=P8=cle([Rp(6,us),Rp(7,hn),Rp(8,sr),Rp(9,mn),Rp(10,c_)],R1);class YDt extends ZE{constructor(){super(...arguments),this._className=void 0}setClass(e){this._className=e}render(e){super.render(e),this._className&&e.classList.add(this._className)}}let ZDt=class extends mx{updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();if(this.label){const n=Jo("div.keybinding").root;new q5(n,Zu,Object.assign({disableTitle:!0},R1t)).set(e),this.label.textContent=this._action.label,this.label.appendChild(n),this.label.classList.add("inlineSuggestionStatusBarItemLabel")}}},ene=class extends Qte{constructor(e,n,r,s,o,a,l,c){super(e,Object.assign({resetMenu:n},r),s,o,a,l,c),this.menuId=n,this.options2=r,this.menuService=s,this.contextKeyService=o,this.menu=this._store.add(this.menuService.createMenu(this.menuId,this.contextKeyService,{emitEventsForSubmenuChanges:!0})),this.additionalActions=[],this.prependedPrimaryActions=[],this._store.add(this.menu.onDidChange(()=>this.updateToolbar())),this.updateToolbar()}updateToolbar(){var e,n,r,s,o,a,l;const c=[],u=[];sRe(this.menu,(e=this.options2)===null||e===void 0?void 0:e.menuOptions,{primary:c,secondary:u},(r=(n=this.options2)===null||n===void 0?void 0:n.toolbarOptions)===null||r===void 0?void 0:r.primaryGroup,(o=(s=this.options2)===null||s===void 0?void 0:s.toolbarOptions)===null||o===void 0?void 0:o.shouldInlineSubmenu,(l=(a=this.options2)===null||a===void 0?void 0:a.toolbarOptions)===null||l===void 0?void 0:l.useSeparatorsInPrimaryActions),u.push(...this.additionalActions),c.unshift(...this.prependedPrimaryActions),this.setActions(c,u)}setPrependedPrimaryActions(e){ys(this.prependedPrimaryActions,e,(n,r)=>n===r)||(this.prependedPrimaryActions=e,this.updateToolbar())}setAdditionalSecondaryActions(e){ys(this.additionalActions,e,(n,r)=>n===r)||(this.additionalActions=e,this.updateToolbar())}};ene=cle([Rp(3,c_),Rp(4,mn),Rp(5,Ff),Rp(6,sr),Rp(7,_d)],ene);var QDt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},M6=function(i,e){return function(n,r){e(n,r,i)}},tne;let kc=tne=class extends Le{static get(e){return e.getContribution(tne.ID)}constructor(e,n,r,s,o){super(),this._editor=e,this._instantiationService=n,this._openerService=r,this._languageService=s,this._keybindingService=o,this._toUnhook=new Xe,this._hoverActivatedByColorDecoratorClick=!1,this._isMouseDown=!1,this._hoverClicked=!1,this._contentWidget=null,this._glyphWidget=null,this._reactToEditorMouseMoveRunner=this._register(new Ji(()=>this._reactToEditorMouseMove(this._mouseMoveEvent),0)),this._hookEvents(),this._register(this._editor.onDidChangeConfiguration(a=>{a.hasChanged(60)&&(this._unhookEvents(),this._hookEvents())})),this._register(this._editor.onMouseLeave(()=>{this._mouseMoveEvent=void 0,this._reactToEditorMouseMoveRunner.cancel()}))}_hookEvents(){const e=()=>this._hideWidgets(),n=this._editor.getOption(60);this._isHoverEnabled=n.enabled,this._isHoverSticky=n.sticky,this._hidingDelay=n.hidingDelay,this._isHoverEnabled?(this._toUnhook.add(this._editor.onMouseDown(r=>this._onEditorMouseDown(r))),this._toUnhook.add(this._editor.onMouseUp(r=>this._onEditorMouseUp(r))),this._toUnhook.add(this._editor.onMouseMove(r=>this._onEditorMouseMove(r))),this._toUnhook.add(this._editor.onKeyDown(r=>this._onKeyDown(r)))):(this._toUnhook.add(this._editor.onMouseMove(r=>this._onEditorMouseMove(r))),this._toUnhook.add(this._editor.onKeyDown(r=>this._onKeyDown(r)))),this._toUnhook.add(this._editor.onMouseLeave(r=>this._onEditorMouseLeave(r))),this._toUnhook.add(this._editor.onDidChangeModel(e)),this._toUnhook.add(this._editor.onDidScrollChange(r=>this._onEditorScrollChanged(r)))}_unhookEvents(){this._toUnhook.clear()}_onEditorScrollChanged(e){(e.scrollTopChanged||e.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(e){var n;this._isMouseDown=!0;const r=e.target;if(r.type===9&&r.detail===Yy.ID){this._hoverClicked=!0;return}r.type===12&&r.detail===oE.ID||(r.type!==12&&(this._hoverClicked=!1),!((n=this._contentWidget)===null||n===void 0)&&n.widget.isResizing||this._hideWidgets())}_onEditorMouseUp(e){this._isMouseDown=!1}_onEditorMouseLeave(e){var n,r;const s=e.event.browserEvent.relatedTarget;!((n=this._contentWidget)===null||n===void 0)&&n.widget.isResizing||!((r=this._contentWidget)===null||r===void 0)&&r.containsNode(s)||this._hideWidgets()}_isMouseOverWidget(e){var n,r,s,o,a;const l=e.target;return!!(this._isHoverSticky&&l.type===9&&l.detail===Yy.ID||this._isHoverSticky&&(!((n=this._contentWidget)===null||n===void 0)&&n.containsNode((r=e.event.browserEvent.view)===null||r===void 0?void 0:r.document.activeElement))&&!(!((o=(s=e.event.browserEvent.view)===null||s===void 0?void 0:s.getSelection())===null||o===void 0)&&o.isCollapsed)||!this._isHoverSticky&&l.type===9&&l.detail===Yy.ID&&(!((a=this._contentWidget)===null||a===void 0)&&a.isColorPickerVisible)||this._isHoverSticky&&l.type===12&&l.detail===oE.ID)}_onEditorMouseMove(e){var n,r,s,o;if(this._mouseMoveEvent=e,!((n=this._contentWidget)===null||n===void 0)&&n.isFocused||!((r=this._contentWidget)===null||r===void 0)&&r.isResizing||this._isMouseDown&&this._hoverClicked||this._isHoverSticky&&(!((s=this._contentWidget)===null||s===void 0)&&s.isVisibleFromKeyboard))return;if(this._isMouseOverWidget(e)){this._reactToEditorMouseMoveRunner.cancel();return}if(!((o=this._contentWidget)===null||o===void 0)&&o.isVisible&&this._isHoverSticky&&this._hidingDelay>0){this._reactToEditorMouseMoveRunner.isScheduled()||this._reactToEditorMouseMoveRunner.schedule(this._hidingDelay);return}this._reactToEditorMouseMove(e)}_reactToEditorMouseMove(e){var n,r,s;if(!e)return;const o=e.target,a=(n=o.element)===null||n===void 0?void 0:n.classList.contains("colorpicker-color-decoration"),l=this._editor.getOption(146);if(a&&(l==="click"&&!this._hoverActivatedByColorDecoratorClick||l==="hover"&&!this._isHoverEnabled||l==="clickAndHover"&&!this._isHoverEnabled&&!this._hoverActivatedByColorDecoratorClick)||!a&&!this._isHoverEnabled&&!this._hoverActivatedByColorDecoratorClick){this._hideWidgets();return}if(this._getOrCreateContentWidget().maybeShowAt(e)){(r=this._glyphWidget)===null||r===void 0||r.hide();return}if(o.type===2&&o.position){(s=this._contentWidget)===null||s===void 0||s.hide(),this._glyphWidget||(this._glyphWidget=new oE(this._editor,this._languageService,this._openerService)),this._glyphWidget.startShowingAt(o.position.lineNumber);return}this._hideWidgets()}_onKeyDown(e){var n;if(!this._editor.hasModel())return;const r=this._keybindingService.softDispatch(e,this._editor.getDomNode()),s=r.kind===1||r.kind===2&&r.commandId==="editor.action.showHover"&&((n=this._contentWidget)===null||n===void 0?void 0:n.isVisible);e.keyCode!==5&&e.keyCode!==6&&e.keyCode!==57&&e.keyCode!==4&&!s&&this._hideWidgets()}_hideWidgets(){var e,n,r;this._isMouseDown&&this._hoverClicked&&(!((e=this._contentWidget)===null||e===void 0)&&e.isColorPickerVisible)||R1.dropDownVisible||(this._hoverActivatedByColorDecoratorClick=!1,this._hoverClicked=!1,(n=this._glyphWidget)===null||n===void 0||n.hide(),(r=this._contentWidget)===null||r===void 0||r.hide())}_getOrCreateContentWidget(){return this._contentWidget||(this._contentWidget=this._instantiationService.createInstance(sj,this._editor)),this._contentWidget}showContentHover(e,n,r,s,o=!1){this._hoverActivatedByColorDecoratorClick=o,this._getOrCreateContentWidget().startShowingAtRange(e,n,r,s)}focus(){var e;(e=this._contentWidget)===null||e===void 0||e.focus()}scrollUp(){var e;(e=this._contentWidget)===null||e===void 0||e.scrollUp()}scrollDown(){var e;(e=this._contentWidget)===null||e===void 0||e.scrollDown()}scrollLeft(){var e;(e=this._contentWidget)===null||e===void 0||e.scrollLeft()}scrollRight(){var e;(e=this._contentWidget)===null||e===void 0||e.scrollRight()}pageUp(){var e;(e=this._contentWidget)===null||e===void 0||e.pageUp()}pageDown(){var e;(e=this._contentWidget)===null||e===void 0||e.pageDown()}goToTop(){var e;(e=this._contentWidget)===null||e===void 0||e.goToTop()}goToBottom(){var e;(e=this._contentWidget)===null||e===void 0||e.goToBottom()}get isColorPickerVisible(){var e;return(e=this._contentWidget)===null||e===void 0?void 0:e.isColorPickerVisible}get isHoverVisible(){var e;return(e=this._contentWidget)===null||e===void 0?void 0:e.isVisible}dispose(){var e,n;super.dispose(),this._unhookEvents(),this._toUnhook.dispose(),(e=this._glyphWidget)===null||e===void 0||e.dispose(),(n=this._contentWidget)===null||n===void 0||n.dispose()}};kc.ID="editor.contrib.hover";kc=tne=QDt([M6(1,hn),M6(2,fu),M6(3,Ar),M6(4,sr)],kc);class JDt extends kt{constructor(){super({id:"editor.action.showHover",label:L({},"Show or Focus Hover"),description:{description:"Show or Focus Hover",args:[{name:"args",schema:{type:"object",properties:{focus:{description:"Controls if when triggered with the keyboard, the hover should take focus immediately.",type:"boolean",default:!1}}}}]},alias:"Show or Focus Hover",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2087),weight:100}})}run(e,n,r){if(!n.hasModel())return;const s=kc.get(n);if(!s)return;const o=n.getPosition(),a=new J(o.lineNumber,o.column,o.lineNumber,o.column),l=n.getOption(2)===2||!!(r!=null&&r.focus);s.isHoverVisible?s.focus():s.showContentHover(a,1,1,l)}}class e2t extends kt{constructor(){super({id:"editor.action.showDefinitionPreviewHover",label:L({},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0})}run(e,n){const r=kc.get(n);if(!r)return;const s=n.getPosition();if(!s)return;const o=new J(s.lineNumber,s.column,s.lineNumber,s.column),a=Lx.get(n);if(!a)return;a.startFindDefinitionFromCursor(s).then(()=>{r.showContentHover(o,1,1,!0)})}}class t2t extends kt{constructor(){super({id:"editor.action.scrollUpHover",label:L({},"Scroll Up Hover"),alias:"Scroll Up Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:16,weight:100}})}run(e,n){const r=kc.get(n);r&&r.scrollUp()}}class n2t extends kt{constructor(){super({id:"editor.action.scrollDownHover",label:L({},"Scroll Down Hover"),alias:"Scroll Down Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:18,weight:100}})}run(e,n){const r=kc.get(n);r&&r.scrollDown()}}class i2t extends kt{constructor(){super({id:"editor.action.scrollLeftHover",label:L({},"Scroll Left Hover"),alias:"Scroll Left Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:15,weight:100}})}run(e,n){const r=kc.get(n);r&&r.scrollLeft()}}class r2t extends kt{constructor(){super({id:"editor.action.scrollRightHover",label:L({},"Scroll Right Hover"),alias:"Scroll Right Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:17,weight:100}})}run(e,n){const r=kc.get(n);r&&r.scrollRight()}}class s2t extends kt{constructor(){super({id:"editor.action.pageUpHover",label:L({},"Page Up Hover"),alias:"Page Up Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:11,secondary:[528],weight:100}})}run(e,n){const r=kc.get(n);r&&r.pageUp()}}class o2t extends kt{constructor(){super({id:"editor.action.pageDownHover",label:L({},"Page Down Hover"),alias:"Page Down Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:12,secondary:[530],weight:100}})}run(e,n){const r=kc.get(n);r&&r.pageDown()}}class a2t extends kt{constructor(){super({id:"editor.action.goToTopHover",label:L({},"Go To Top Hover"),alias:"Go To Bottom Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:14,secondary:[2064],weight:100}})}run(e,n){const r=kc.get(n);r&&r.goToTop()}}class l2t extends kt{constructor(){super({id:"editor.action.goToBottomHover",label:L({},"Go To Bottom Hover"),alias:"Go To Bottom Hover",precondition:oe.hoverFocused,kbOpts:{kbExpr:oe.hoverFocused,primary:13,secondary:[2066],weight:100}})}run(e,n){const r=kc.get(n);r&&r.goToBottom()}}_i(kc.ID,kc,2);rt(JDt);rt(e2t);rt(t2t);rt(n2t);rt(i2t);rt(r2t);rt(s2t);rt(o2t);rt(a2t);rt(l2t);uk.register(lj);uk.register(Zte);Of((i,e)=>{const n=i.getColor(Hdt);n&&(e.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${n.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${n.transparent(.5)}; }`),e.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${n.transparent(.5)}; }`))});class nne extends Le{constructor(e){super(),this._editor=e,this._register(e.onMouseDown(n=>this.onMouseDown(n)))}dispose(){super.dispose()}onMouseDown(e){const n=this._editor.getOption(146);if(n!=="click"&&n!=="clickAndHover")return;const r=e.target;if(r.type!==6||!r.detail.injectedText||r.detail.injectedText.options.attachedData!==bNe||!r.range)return;const s=this._editor.getContribution(kc.ID);if(s&&!s.isColorPickerVisible){const o=new J(r.range.startLineNumber,r.range.startColumn+1,r.range.endLineNumber,r.range.endColumn+1);s.showContentHover(o,1,0,!1,!0)}}}nne.ID="editor.contrib.colorContribution";_i(nne.ID,nne,2);uk.register(ij);var YNe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},kp=function(i,e){return function(n,r){e(n,r,i)}},D0e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},ine,rne;let A1=ine=class extends Le{constructor(e,n,r,s,o,a,l){super(),this._editor=e,this._modelService=r,this._keybindingService=s,this._instantiationService=o,this._languageFeatureService=a,this._languageConfigurationService=l,this._standaloneColorPickerWidget=null,this._standaloneColorPickerVisible=oe.standaloneColorPickerVisible.bindTo(n),this._standaloneColorPickerFocused=oe.standaloneColorPickerFocused.bindTo(n)}showOrFocus(){var e;this._editor.hasModel()&&(this._standaloneColorPickerVisible.get()?this._standaloneColorPickerFocused.get()||(e=this._standaloneColorPickerWidget)===null||e===void 0||e.focus():this._standaloneColorPickerWidget=new uj(this._editor,this._standaloneColorPickerVisible,this._standaloneColorPickerFocused,this._instantiationService,this._modelService,this._keybindingService,this._languageFeatureService,this._languageConfigurationService))}hide(){var e;this._standaloneColorPickerFocused.set(!1),this._standaloneColorPickerVisible.set(!1),(e=this._standaloneColorPickerWidget)===null||e===void 0||e.hide(),this._editor.focus()}insertColor(){var e;(e=this._standaloneColorPickerWidget)===null||e===void 0||e.updateEditor(),this.hide()}static get(e){return e.getContribution(ine.ID)}};A1.ID="editor.contrib.standaloneColorPickerController";A1=ine=YNe([kp(1,mn),kp(2,Fr),kp(3,sr),kp(4,hn),kp(5,Et),kp(6,dr)],A1);_i(A1.ID,A1,1);const E0e=8,c2t=22;let uj=rne=class extends Le{constructor(e,n,r,s,o,a,l,c){var u;super(),this._editor=e,this._standaloneColorPickerVisible=n,this._standaloneColorPickerFocused=r,this._modelService=o,this._keybindingService=a,this._languageFeaturesService=l,this._languageConfigurationService=c,this.allowEditorOverflow=!0,this._position=void 0,this._body=document.createElement("div"),this._colorHover=null,this._selectionSetInEditor=!1,this._onResult=this._register(new _e),this.onResult=this._onResult.event,this._standaloneColorPickerVisible.set(!0),this._standaloneColorPickerParticipant=s.createInstance(oO,this._editor),this._position=(u=this._editor._getViewModel())===null||u===void 0?void 0:u.getPrimaryCursorState().modelState.position;const d=this._editor.getSelection(),h=d?{startLineNumber:d.startLineNumber,startColumn:d.startColumn,endLineNumber:d.endLineNumber,endColumn:d.endColumn}:{startLineNumber:0,endLineNumber:0,endColumn:0,startColumn:0},f=this._register(Gm(this._body));this._register(f.onDidBlur(p=>{this.hide()})),this._register(f.onDidFocus(p=>{this.focus()})),this._register(this._editor.onDidChangeCursorPosition(()=>{this._selectionSetInEditor?this._selectionSetInEditor=!1:this.hide()})),this._register(this._editor.onMouseMove(p=>{var g;const m=(g=p.target.element)===null||g===void 0?void 0:g.classList;m&&m.contains("colorpicker-color-decoration")&&this.hide()})),this._register(this.onResult(p=>{this._render(p.value,p.foundInEditor)})),this._start(h),this._body.style.zIndex="50",this._editor.addContentWidget(this)}updateEditor(){this._colorHover&&this._standaloneColorPickerParticipant.updateEditorModel(this._colorHover)}getId(){return rne.ID}getDomNode(){return this._body}getPosition(){if(!this._position)return null;const e=this._editor.getOption(60).above;return{position:this._position,secondaryPosition:this._position,preference:e?[1,2]:[2,1],positionAffinity:2}}hide(){this.dispose(),this._standaloneColorPickerVisible.set(!1),this._standaloneColorPickerFocused.set(!1),this._editor.removeContentWidget(this),this._editor.focus()}focus(){this._standaloneColorPickerFocused.set(!0),this._body.focus()}_start(e){return D0e(this,void 0,void 0,function*(){const n=yield this._computeAsync(e);n&&this._onResult.fire(new u2t(n.result,n.foundInEditor))})}_computeAsync(e){return D0e(this,void 0,void 0,function*(){if(!this._editor.hasModel())return null;const n={range:e,color:{red:0,green:0,blue:0,alpha:1}},r=yield this._standaloneColorPickerParticipant.createColorHover(n,new tle(this._modelService,this._languageConfigurationService),this._languageFeaturesService.colorProvider);return r?{result:r.colorHover,foundInEditor:r.foundInEditor}:null})}_render(e,n){const r=document.createDocumentFragment(),s=this._register(new oj(this._keybindingService));let o;const a={fragment:r,statusBar:s,setColorPicker:m=>o=m,onContentsChanged:()=>{},hide:()=>this.hide()};if(this._colorHover=e,this._register(this._standaloneColorPickerParticipant.renderHoverParts(a,[e])),o===void 0)return;this._body.classList.add("standalone-colorpicker-body"),this._body.style.maxHeight=Math.max(this._editor.getLayoutInfo().height/4,250)+"px",this._body.style.maxWidth=Math.max(this._editor.getLayoutInfo().width*.66,500)+"px",this._body.tabIndex=0,this._body.appendChild(r),o.layout();const l=o.body,c=l.saturationBox.domNode.clientWidth,u=l.domNode.clientWidth-c-c2t-E0e,d=o.body.enterButton;d==null||d.onClicked(()=>{this.updateEditor(),this.hide()});const h=o.header,f=h.pickedColorNode;f.style.width=c+E0e+"px";const p=h.originalColorNode;p.style.width=u+"px";const g=o.header.closeButton;g==null||g.onClicked(()=>{this.hide()}),n&&(d&&(d.button.textContent="Replace"),this._selectionSetInEditor=!0,this._editor.setSelection(e.range)),this._editor.layoutContentWidget(this)}};uj.ID="editor.contrib.standaloneColorPickerWidget";uj=rne=YNe([kp(3,hn),kp(4,Fr),kp(5,sr),kp(6,Et),kp(7,dr)],uj);class u2t{constructor(e,n){this.value=e,this.foundInEditor=n}}class d2t extends og{constructor(){super({id:"editor.action.showOrFocusStandaloneColorPicker",title:{value:L("showOrFocusStandaloneColorPicker","Show or Focus Standalone Color Picker"),mnemonicTitle:L({},"&&Show or Focus Standalone Color Picker"),original:"Show or Focus Standalone Color Picker"},precondition:void 0,menu:[{id:se.CommandPalette}]})}runEditorCommand(e,n){var r;(r=A1.get(n))===null||r===void 0||r.showOrFocus()}}class h2t extends kt{constructor(){super({id:"editor.action.hideColorPicker",label:L({},"Hide the Color Picker"),alias:"Hide the Color Picker",precondition:oe.standaloneColorPickerVisible.isEqualTo(!0),kbOpts:{primary:9,weight:100}})}run(e,n){var r;(r=A1.get(n))===null||r===void 0||r.hide()}}class f2t extends kt{constructor(){super({id:"editor.action.insertColorWithStandaloneColorPicker",label:L({},"Insert Color with Standalone Color Picker"),alias:"Insert Color with Standalone Color Picker",precondition:oe.standaloneColorPickerFocused.isEqualTo(!0),kbOpts:{primary:3,weight:100}})}run(e,n){var r;(r=A1.get(n))===null||r===void 0||r.insertColor()}}rt(h2t);rt(f2t);Ir(d2t);class Ly{constructor(e,n,r){this.languageConfigurationService=r,this._selection=e,this._insertSpace=n,this._usedEndToken=null}static _haystackHasNeedleAtOffset(e,n,r){if(r<0)return!1;const s=n.length,o=e.length;if(r+s>o)return!1;for(let a=0;a=65&&l<=90&&l+32===c)&&!(c>=65&&c<=90&&c+32===l))return!1}return!0}_createOperationsForBlockComment(e,n,r,s,o,a){const l=e.startLineNumber,c=e.startColumn,u=e.endLineNumber,d=e.endColumn,h=o.getLineContent(l),f=o.getLineContent(u);let p=h.lastIndexOf(n,c-1+n.length),g=f.indexOf(r,d-1-r.length);if(p!==-1&&g!==-1)if(l===u)h.substring(p+n.length,g).indexOf(r)>=0&&(p=-1,g=-1);else{const _=h.substring(p+n.length),b=f.substring(0,g);(_.indexOf(r)>=0||b.indexOf(r)>=0)&&(p=-1,g=-1)}let m;p!==-1&&g!==-1?(s&&p+n.length0&&f.charCodeAt(g-1)===32&&(r=" "+r,g-=1),m=Ly._createRemoveBlockCommentOperations(new J(l,p+n.length+1,u,g+1),n,r)):(m=Ly._createAddBlockCommentOperations(e,n,r,this._insertSpace),this._usedEndToken=m.length===1?r:null);for(const _ of m)a.addTrackedEditOperation(_.range,_.text)}static _createRemoveBlockCommentOperations(e,n,r){const s=[];return J.isEmpty(e)?s.push(Vr.delete(new J(e.startLineNumber,e.startColumn-n.length,e.endLineNumber,e.endColumn+r.length))):(s.push(Vr.delete(new J(e.startLineNumber,e.startColumn-n.length,e.startLineNumber,e.startColumn))),s.push(Vr.delete(new J(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn+r.length)))),s}static _createAddBlockCommentOperations(e,n,r,s){const o=[];return J.isEmpty(e)?o.push(Vr.replace(new J(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),n+" "+r)):(o.push(Vr.insert(new ve(e.startLineNumber,e.startColumn),n+(s?" ":""))),o.push(Vr.insert(new ve(e.endLineNumber,e.endColumn),(s?" ":"")+r))),o}getEditOperations(e,n){const r=this._selection.startLineNumber,s=this._selection.startColumn;e.tokenization.tokenizeIfCheap(r);const o=e.getLanguageIdAtPosition(r,s),a=this.languageConfigurationService.getLanguageConfiguration(o).comments;!a||!a.blockCommentStartToken||!a.blockCommentEndToken||this._createOperationsForBlockComment(this._selection,a.blockCommentStartToken,a.blockCommentEndToken,this._insertSpace,e,n)}computeCursorState(e,n){const r=n.getInverseEditOperations();if(r.length===2){const s=r[0],o=r[1];return new Ft(s.range.endLineNumber,s.range.endColumn,o.range.startLineNumber,o.range.startColumn)}else{const s=r[0].range,o=this._usedEndToken?-this._usedEndToken.length-1:0;return new Ft(s.endLineNumber,s.endColumn+o,s.endLineNumber,s.endColumn+o)}}}class D0{constructor(e,n,r,s,o,a,l){this.languageConfigurationService=e,this._selection=n,this._tabSize=r,this._type=s,this._insertSpace=o,this._selectionId=null,this._deltaColumn=0,this._moveEndPositionDown=!1,this._ignoreEmptyLines=a,this._ignoreFirstLine=l||!1}static _gatherPreflightCommentStrings(e,n,r,s){e.tokenization.tokenizeIfCheap(n);const o=e.getLanguageIdAtPosition(n,1),a=s.getLanguageConfiguration(o).comments,l=a?a.lineCommentToken:null;if(!l)return null;const c=[];for(let u=0,d=r-n+1;uo?n[c].commentStrOffset=a-1:n[c].commentStrOffset=a}}}class ule extends kt{constructor(e,n){super(n),this._type=e}run(e,n){const r=e.get(dr);if(!n.hasModel())return;const s=n.getModel(),o=[],a=s.getOptions(),l=n.getOption(23),c=n.getSelections().map((d,h)=>({selection:d,index:h,ignoreFirstLine:!1}));c.sort((d,h)=>J.compareRangesUsingStarts(d.selection,h.selection));let u=c[0];for(let d=1;d=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},oC=function(i,e){return function(n,r){e(n,r,i)}},sne;let aI=sne=class{static get(e){return e.getContribution(sne.ID)}constructor(e,n,r,s,o,a,l,c){this._contextMenuService=n,this._contextViewService=r,this._contextKeyService=s,this._keybindingService=o,this._menuService=a,this._configurationService=l,this._workspaceContextService=c,this._toDispose=new Xe,this._contextMenuIsBeingShownCount=0,this._editor=e,this._toDispose.add(this._editor.onContextMenu(u=>this._onContextMenu(u))),this._toDispose.add(this._editor.onMouseWheel(u=>{if(this._contextMenuIsBeingShownCount>0){const d=this._contextViewService.getContextViewElement(),h=u.srcElement;h.shadowRoot&&dx(d)===h.shadowRoot||this._contextViewService.hideContextView()}})),this._toDispose.add(this._editor.onKeyDown(u=>{this._editor.getOption(24)&&u.keyCode===58&&(u.preventDefault(),u.stopPropagation(),this.showContextMenu())}))}_onContextMenu(e){if(!this._editor.hasModel())return;if(!this._editor.getOption(24)){this._editor.focus(),e.target.position&&!this._editor.getSelection().containsPosition(e.target.position)&&this._editor.setPosition(e.target.position);return}if(e.target.type===12||e.target.type===6&&e.target.detail.injectedText)return;if(e.event.preventDefault(),e.event.stopPropagation(),e.target.type===11)return this._showScrollbarContextMenu(e.event);if(e.target.type!==6&&e.target.type!==7&&e.target.type!==1)return;if(this._editor.focus(),e.target.position){let r=!1;for(const s of this._editor.getSelections())if(s.containsPosition(e.target.position)){r=!0;break}r||this._editor.setPosition(e.target.position)}let n=null;e.target.type!==1&&(n=e.event),this.showContextMenu(n)}showContextMenu(e){if(!this._editor.getOption(24)||!this._editor.hasModel())return;const n=this._getMenuActions(this._editor.getModel(),this._editor.isSimpleWidget?se.SimpleEditorContext:se.EditorContext);n.length>0&&this._doShowContextMenu(n,e)}_getMenuActions(e,n){const r=[],s=this._menuService.createMenu(n,this._contextKeyService),o=s.getActions({arg:e.uri});s.dispose();for(const a of o){const[,l]=a;let c=0;for(const u of l)if(u instanceof dP){const d=this._getMenuActions(e,u.item.submenu);d.length>0&&(r.push(new NE(u.id,u.label,d)),c++)}else r.push(u),c++;c&&r.push(new Vo)}return r.length&&r.pop(),r}_doShowContextMenu(e,n=null){if(!this._editor.hasModel())return;const r=this._editor.getOption(60);this._editor.updateOptions({hover:{enabled:!1}});let s=n;if(!s){this._editor.revealPosition(this._editor.getPosition(),1),this._editor.render();const a=this._editor.getScrolledVisiblePosition(this._editor.getPosition()),l=no(this._editor.getDomNode()),c=l.left+a.left,u=l.top+a.top+a.height;s={x:c,y:u}}const o=this._editor.getOption(126)&&!Kp;this._contextMenuIsBeingShownCount++,this._contextMenuService.showContextMenu({domForShadowRoot:o?this._editor.getDomNode():void 0,getAnchor:()=>s,getActions:()=>e,getActionViewItem:a=>{const l=this._keybindingFor(a);if(l)return new ZE(a,a,{label:!0,keybinding:l.getLabel(),isMenu:!0});const c=a;return typeof c.getActionViewItem=="function"?c.getActionViewItem():new ZE(a,a,{icon:!0,label:!0,isMenu:!0})},getKeyBinding:a=>this._keybindingFor(a),onHide:a=>{this._contextMenuIsBeingShownCount--,this._editor.updateOptions({hover:r})}})}_showScrollbarContextMenu(e){if(!this._editor.hasModel()||uvt(this._workspaceContextService.getWorkspace()))return;const n=this._editor.getOption(72);let r=0;const s=u=>({id:`menu-action-${++r}`,label:u.label,tooltip:"",class:void 0,enabled:typeof u.enabled>"u"?!0:u.enabled,checked:u.checked,run:u.run}),o=(u,d)=>new NE(`menu-action-${++r}`,u,d,void 0),a=(u,d,h,f,p)=>{if(!d)return s({label:u,enabled:d,run:()=>{}});const g=_=>()=>{this._configurationService.updateValue(h,_)},m=[];for(const _ of p)m.push(s({label:_.label,checked:f===_.value,run:g(_.value)}));return o(u,m)},l=[];l.push(s({label:L("context.minimap.minimap","Minimap"),checked:n.enabled,run:()=>{this._configurationService.updateValue("editor.minimap.enabled",!n.enabled)}})),l.push(new Vo),l.push(s({label:L("context.minimap.renderCharacters","Render Characters"),enabled:n.enabled,checked:n.renderCharacters,run:()=>{this._configurationService.updateValue("editor.minimap.renderCharacters",!n.renderCharacters)}})),l.push(a(L("context.minimap.size","Vertical size"),n.enabled,"editor.minimap.size",n.size,[{label:L("context.minimap.size.proportional","Proportional"),value:"proportional"},{label:L("context.minimap.size.fill","Fill"),value:"fill"},{label:L("context.minimap.size.fit","Fit"),value:"fit"}])),l.push(a(L("context.minimap.slider","Slider"),n.enabled,"editor.minimap.showSlider",n.showSlider,[{label:L("context.minimap.slider.mouseover","Mouse Over"),value:"mouseover"},{label:L("context.minimap.slider.always","Always"),value:"always"}]));const c=this._editor.getOption(126)&&!Kp;this._contextMenuIsBeingShownCount++,this._contextMenuService.showContextMenu({domForShadowRoot:c?this._editor.getDomNode():void 0,getAnchor:()=>e,getActions:()=>l,onHide:u=>{this._contextMenuIsBeingShownCount--,this._editor.focus()}})}_keybindingFor(e){return this._keybindingService.lookupKeybinding(e.id)}dispose(){this._contextMenuIsBeingShownCount>0&&this._contextViewService.hideContextView(),this._toDispose.dispose()}};aI.ID="editor.contrib.contextmenu";aI=sne=v2t([oC(1,Ff),oC(2,Vv),oC(3,mn),oC(4,sr),oC(5,c_),oC(6,ei),oC(7,px)],aI);class b2t extends kt{constructor(){super({id:"editor.action.showContextMenu",label:L("action.showContextMenu.label","Show Editor Context Menu"),alias:"Show Editor Context Menu",precondition:void 0,kbOpts:{kbExpr:oe.textInputFocus,primary:1092,weight:100}})}run(e,n){var r;(r=aI.get(n))===null||r===void 0||r.showContextMenu()}}_i(aI.ID,aI,2);rt(b2t);class yK{constructor(e){this.selections=e}equals(e){const n=this.selections.length,r=e.selections.length;if(n!==r)return!1;for(let s=0;s{this._undoStack=[],this._redoStack=[]})),this._register(e.onDidChangeModelContent(n=>{this._undoStack=[],this._redoStack=[]})),this._register(e.onDidChangeCursorSelection(n=>{if(this._isCursorUndoRedo||!n.oldSelections||n.oldModelVersionId!==n.modelVersionId)return;const r=new yK(n.oldSelections);this._undoStack.length>0&&this._undoStack[this._undoStack.length-1].cursorState.equals(r)||(this._undoStack.push(new wK(r,e.getScrollTop(),e.getScrollLeft())),this._redoStack=[],this._undoStack.length>50&&this._undoStack.shift())}))}cursorUndo(){!this._editor.hasModel()||this._undoStack.length===0||(this._redoStack.push(new wK(new yK(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._undoStack.pop()))}cursorRedo(){!this._editor.hasModel()||this._redoStack.length===0||(this._undoStack.push(new wK(new yK(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._redoStack.pop()))}_applyState(e){this._isCursorUndoRedo=!0,this._editor.setSelections(e.cursorState.selections),this._editor.setScrollPosition({scrollTop:e.scrollTop,scrollLeft:e.scrollLeft}),this._isCursorUndoRedo=!1}}Dx.ID="editor.contrib.cursorUndoRedoController";class y2t extends kt{constructor(){super({id:"cursorUndo",label:L("cursor.undo","Cursor Undo"),alias:"Cursor Undo",precondition:void 0,kbOpts:{kbExpr:oe.textInputFocus,primary:2099,weight:100}})}run(e,n,r){var s;(s=Dx.get(n))===null||s===void 0||s.cursorUndo()}}class w2t extends kt{constructor(){super({id:"cursorRedo",label:L("cursor.redo","Cursor Redo"),alias:"Cursor Redo",precondition:void 0})}run(e,n,r){var s;(s=Dx.get(n))===null||s===void 0||s.cursorRedo()}}_i(Dx.ID,Dx,0);rt(y2t);rt(w2t);class C2t{constructor(e,n,r){this.selection=e,this.targetPosition=n,this.copy=r,this.targetSelection=null}getEditOperations(e,n){const r=e.getValueInRange(this.selection);if(this.copy||n.addEditOperation(this.selection,null),n.addEditOperation(new J(this.targetPosition.lineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.targetPosition.column),r),this.selection.containsPosition(this.targetPosition)&&!(this.copy&&(this.selection.getEndPosition().equals(this.targetPosition)||this.selection.getStartPosition().equals(this.targetPosition)))){this.targetSelection=this.selection;return}if(this.copy){this.targetSelection=new Ft(this.targetPosition.lineNumber,this.targetPosition.column,this.selection.endLineNumber-this.selection.startLineNumber+this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn);return}if(this.targetPosition.lineNumber>this.selection.endLineNumber){this.targetSelection=new Ft(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn);return}if(this.targetPosition.lineNumberthis._onEditorMouseDown(n))),this._register(this._editor.onMouseUp(n=>this._onEditorMouseUp(n))),this._register(this._editor.onMouseDrag(n=>this._onEditorMouseDrag(n))),this._register(this._editor.onMouseDrop(n=>this._onEditorMouseDrop(n))),this._register(this._editor.onMouseDropCanceled(()=>this._onEditorMouseDropCanceled())),this._register(this._editor.onKeyDown(n=>this.onEditorKeyDown(n))),this._register(this._editor.onKeyUp(n=>this.onEditorKeyUp(n))),this._register(this._editor.onDidBlurEditorWidget(()=>this.onEditorBlur())),this._register(this._editor.onDidBlurEditorText(()=>this.onEditorBlur())),this._mouseDown=!1,this._modifierPressed=!1,this._dragSelection=null}onEditorBlur(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1}onEditorKeyDown(e){!this._editor.getOption(35)||this._editor.getOption(22)||(lD(e)&&(this._modifierPressed=!0),this._mouseDown&&lD(e)&&this._editor.updateOptions({mouseStyle:"copy"}))}onEditorKeyUp(e){!this._editor.getOption(35)||this._editor.getOption(22)||(lD(e)&&(this._modifierPressed=!1),this._mouseDown&&e.keyCode===yv.TRIGGER_KEY_VALUE&&this._editor.updateOptions({mouseStyle:"default"}))}_onEditorMouseDown(e){this._mouseDown=!0}_onEditorMouseUp(e){this._mouseDown=!1,this._editor.updateOptions({mouseStyle:"text"})}_onEditorMouseDrag(e){const n=e.target;if(this._dragSelection===null){const s=(this._editor.getSelections()||[]).filter(o=>n.position&&o.containsPosition(n.position));if(s.length===1)this._dragSelection=s[0];else return}lD(e.event)?this._editor.updateOptions({mouseStyle:"copy"}):this._editor.updateOptions({mouseStyle:"default"}),n.position&&(this._dragSelection.containsPosition(n.position)?this._removeDecoration():this.showAt(n.position))}_onEditorMouseDropCanceled(){this._editor.updateOptions({mouseStyle:"text"}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1}_onEditorMouseDrop(e){if(e.target&&(this._hitContent(e.target)||this._hitMargin(e.target))&&e.target.position){const n=new ve(e.target.position.lineNumber,e.target.position.column);if(this._dragSelection===null){let r=null;if(e.event.shiftKey){const s=this._editor.getSelection();if(s){const{selectionStartLineNumber:o,selectionStartColumn:a}=s;r=[new Ft(o,a,n.lineNumber,n.column)]}}else r=(this._editor.getSelections()||[]).map(s=>s.containsPosition(n)?new Ft(n.lineNumber,n.column,n.lineNumber,n.column):s);this._editor.setSelections(r||[],"mouse",3)}else(!this._dragSelection.containsPosition(n)||(lD(e.event)||this._modifierPressed)&&(this._dragSelection.getEndPosition().equals(n)||this._dragSelection.getStartPosition().equals(n)))&&(this._editor.pushUndoStop(),this._editor.executeCommand(yv.ID,new C2t(this._dragSelection,n,lD(e.event)||this._modifierPressed)),this._editor.pushUndoStop())}this._editor.updateOptions({mouseStyle:"text"}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1}showAt(e){this._dndDecorationIds.set([{range:new J(e.lineNumber,e.column,e.lineNumber,e.column),options:yv._DECORATION_OPTIONS}]),this._editor.revealPosition(e,1)}_removeDecoration(){this._dndDecorationIds.clear()}_hitContent(e){return e.type===6||e.type===7}_hitMargin(e){return e.type===2||e.type===3||e.type===4}dispose(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1,super.dispose()}}yv.ID="editor.contrib.dragAndDrop";yv.TRIGGER_KEY_VALUE=ri?6:5;yv._DECORATION_OPTIONS=kn.register({description:"dnd-target",className:"dnd-target"});_i(yv.ID,yv,2);const Iz=function(){if(typeof crypto=="object"&&typeof crypto.randomUUID=="function")return crypto.randomUUID.bind(crypto);let i;typeof crypto=="object"&&typeof crypto.getRandomValues=="function"?i=crypto.getRandomValues.bind(crypto):i=function(r){for(let s=0;sZNe(this,void 0,void 0,function*(){return i}),asFile:()=>{},value:typeof i=="string"?i:void 0}}function S2t(i,e,n){const r={id:Iz(),name:i,uri:e,data:n};return{asString:()=>ZNe(this,void 0,void 0,function*(){return""}),asFile:()=>r,value:void 0}}class QNe{constructor(){this._entries=new Map}get size(){let e=0;for(const n of this._entries)e++;return e}has(e){return this._entries.has(this.toKey(e))}matches(e){const n=[...this._entries.keys()];return Vn.some(this,([r,s])=>s.asFile())&&n.push("files"),eMe(dj(e),n)}get(e){var n;return(n=this._entries.get(this.toKey(e)))===null||n===void 0?void 0:n[0]}append(e,n){const r=this._entries.get(e);r?r.push(n):this._entries.set(this.toKey(e),[n])}replace(e,n){this._entries.set(this.toKey(e),[n])}delete(e){this._entries.delete(this.toKey(e))}*[Symbol.iterator](){for(const[e,n]of this._entries)for(const r of n)yield[e,r]}toKey(e){return dj(e)}}function dj(i){return i.toLowerCase()}function JNe(i,e){return eMe(dj(i),e.map(dj))}function eMe(i,e){if(i==="*/*")return e.length>0;if(e.includes(i))return!0;const n=i.match(/^([a-z]+)\/([a-z]+|\*)$/i);if(!n)return!1;const[r,s,o]=n;return o==="*"?e.some(a=>a.startsWith(s+"/")):!1}const Tz=Object.freeze({create:i=>l1(i.map(e=>e.toString())).join(`\r `),split:i=>i.split(`\r `),parse:i=>Tz.split(i).filter(e=>!e.startsWith("#"))}),I0e={EDITORS:"CodeEditors",FILES:"CodeFiles"};class x2t{}const k2t={DragAndDropContribution:"workbench.contributions.dragAndDrop"};Kr.add(k2t.DragAndDropContribution,new x2t);class dO{constructor(){}static getInstance(){return dO.INSTANCE}hasData(e){return e&&e===this.proto}getData(e){if(this.hasData(e))return this.data}}dO.INSTANCE=new dO;var L2t=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function tMe(i){const e=new QNe;for(const n of i.items){const r=n.type;if(n.kind==="string"){const s=new Promise(o=>n.getAsString(o));e.append(r,dle(s))}else if(n.kind==="file"){const s=n.getAsFile();s&&e.append(r,D2t(s))}}return e}function D2t(i){const e=i.path?Jt.parse(i.path):void 0;return S2t(i.name,e,()=>L2t(this,void 0,void 0,function*(){return new Uint8Array(yield i.arrayBuffer())}))}const E2t=Object.freeze([I0e.EDITORS,I0e.FILES,VP.RESOURCES,VP.INTERNAL_URI_LIST]);function nMe(i,e=!1){const n=tMe(i),r=n.get(VP.INTERNAL_URI_LIST);if(r)n.replace(bs.uriList,r);else if(e||!n.has(bs.uriList)){const s=[];for(const o of i.items){const a=o.getAsFile();if(a){const l=a.path;try{l?s.push(Jt.file(l).toString()):s.push(Jt.parse(a.name,!0).toString())}catch{}}}s.length&&n.replace(bs.uriList,dle(Tz.create(s)))}for(const s of E2t)n.delete(s);return n}function I2t(i,e,n){var r,s;return{edits:[...e.map(o=>new mv(i,typeof n.insertText=="string"?{range:o,text:n.insertText,insertAsSnippet:!1}:{range:o,text:n.insertText.snippet,insertAsSnippet:!0})),...(s=(r=n.additionalEdit)===null||r===void 0?void 0:r.edits)!==null&&s!==void 0?s:[]]}}function iMe(i){var e;function n(l,c){return"providerId"in l&&l.providerId===c.providerId||"mimeType"in l&&l.mimeType===c.handledMimeType}const r=new Map;for(const l of i)for(const c of(e=l.yieldTo)!==null&&e!==void 0?e:[])for(const u of i)if(u!==l&&n(c,u)){let d=r.get(l);d||(d=[],r.set(l,d)),d.push(u)}if(!r.size)return Array.from(i);const s=new Set,o=[];function a(l){if(!l.length)return[];const c=l[0];if(o.includes(c))return console.warn(`Yield to cycle detected for ${c.providerId}`),l;if(s.has(c))return a(l.slice(1));let u=[];const d=r.get(c);return d&&(o.push(c),u=a(d),o.pop()),s.add(c),[...u,c,...a(l.slice(1))]}return a(Array.from(i))}var T2t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},R2t=function(i,e){return function(n,r){e(n,r,i)}},A2t=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const N2t=kn.register({description:"inline-progress-widget",stickiness:1,showIfCollapsed:!0,after:{content:eEe,inlineClassName:"inline-editor-progress-decoration",inlineClassNameAffectsLetterSpacing:!0}});class Rz extends Le{constructor(e,n,r,s,o){super(),this.typeId=e,this.editor=n,this.range=r,this.delegate=o,this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this.create(s),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this)}create(e){this.domNode=tt(".inline-progress-widget"),this.domNode.role="button",this.domNode.title=e;const n=tt("span.icon");this.domNode.append(n),n.classList.add(...en.asClassNameArray(lt.loading),"codicon-modifier-spin");const r=()=>{const s=this.editor.getOption(66);this.domNode.style.height=`${s}px`,this.domNode.style.width=`${Math.ceil(.8*s)}px`};r(),this._register(this.editor.onDidChangeConfiguration(s=>{(s.hasChanged(52)||s.hasChanged(66))&&r()})),this._register(Be(this.domNode,ht.CLICK,s=>{this.delegate.cancel()}))}getId(){return Rz.baseId+"."+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:{lineNumber:this.range.startLineNumber,column:this.range.startColumn},preference:[0]}}dispose(){super.dispose(),this.editor.removeContentWidget(this)}}Rz.baseId="editor.widget.inlineProgressWidget";let hj=class extends Le{constructor(e,n,r){super(),this.id=e,this._editor=n,this._instantiationService=r,this._showDelay=500,this._showPromise=this._register(new ha),this._currentWidget=new ha,this._operationIdPool=0,this._currentDecorations=n.createDecorationsCollection()}showWhile(e,n,r){return A2t(this,void 0,void 0,function*(){const s=this._operationIdPool++;this._currentOperation=s,this.clear(),this._showPromise.value=g1(()=>{const o=J.fromPositions(e);this._currentDecorations.set([{range:o,options:N2t}]).length>0&&(this._currentWidget.value=this._instantiationService.createInstance(Rz,this.id,this._editor,o,n,r))},this._showDelay);try{return yield r}finally{this._currentOperation===s&&(this.clear(),this._currentOperation=void 0)}})}clear(){this._showPromise.clear(),this._currentDecorations.clear(),this._currentWidget.clear()}};hj=T2t([R2t(2,hn)],hj);var rMe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},CM=function(i,e){return function(n,r){e(n,r,i)}},T0e=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},one;let fj=one=class extends Le{constructor(e,n,r,s,o,a,l,c,u,d){super(),this.typeId=e,this.editor=n,this.showCommand=s,this.range=o,this.edits=a,this.onSelectNewEdit=l,this._contextMenuService=c,this._keybindingService=d,this.allowEditorOverflow=!0,this.suppressMouseDown=!0,this.create(),this.visibleContext=r.bindTo(u),this.visibleContext.set(!0),this._register(gn(()=>this.visibleContext.reset())),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this),this._register(gn(()=>this.editor.removeContentWidget(this))),this._register(this.editor.onDidChangeCursorPosition(h=>{o.containsPosition(h.position)||this.dispose()})),this._register(_t.runAndSubscribe(d.onDidUpdateKeybindings,()=>{this._updateButtonTitle()}))}_updateButtonTitle(){var e;const n=(e=this._keybindingService.lookupKeybinding(this.showCommand.id))===null||e===void 0?void 0:e.getLabel();this.button.element.title=this.showCommand.label+(n?` (${n})`:"")}create(){this.domNode=tt(".post-edit-widget"),this.button=this._register(new Vee(this.domNode,{supportIcons:!0})),this.button.label="$(insert)",this._register(Be(this.domNode,ht.CLICK,()=>this.showSelector()))}getId(){return one.baseId+"."+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:this.range.getEndPosition(),preference:[2]}}showSelector(){this._contextMenuService.showContextMenu({getAnchor:()=>{const e=no(this.button.element);return{x:e.left+e.width,y:e.top+e.height}},getActions:()=>this.edits.allEdits.map((e,n)=>B2({id:"",label:e.label,checked:n===this.edits.activeEditIndex,run:()=>{if(n!==this.edits.activeEditIndex)return this.onSelectNewEdit(n)}}))})}};fj.baseId="editor.widget.postEditWidget";fj=one=rMe([CM(7,Ff),CM(8,mn),CM(9,sr)],fj);let pj=class extends Le{constructor(e,n,r,s,o,a){super(),this._id=e,this._editor=n,this._visibleContext=r,this._showCommand=s,this._instantiationService=o,this._bulkEditService=a,this._currentWidget=this._register(new ha),this._register(_t.any(n.onDidChangeModel,n.onDidChangeModelContent)(()=>this.clear()))}applyEditAndShowIfNeeded(e,n,r,s){var o,a;return T0e(this,void 0,void 0,function*(){const l=this._editor.getModel();if(!l||!e.length)return;const c=n.allEdits[n.activeEditIndex];if(!c)return;let u=[];(typeof c.insertText=="string"?c.insertText==="":c.insertText.snippet==="")?u=[]:u=e.map(_=>new mv(l.uri,typeof c.insertText=="string"?{range:_,text:c.insertText,insertAsSnippet:!1}:{range:_,text:c.insertText.snippet,insertAsSnippet:!0}));const h={edits:[...u,...(a=(o=c.additionalEdit)===null||o===void 0?void 0:o.edits)!==null&&a!==void 0?a:[]]},f=e[0],p=l.deltaDecorations([],[{range:f,options:{description:"paste-line-suffix",stickiness:0}}]);let g,m;try{g=yield this._bulkEditService.apply(h,{editor:this._editor,token:s}),m=l.getDecorationRange(p[0])}finally{l.deltaDecorations(p,[])}r&&g.isApplied&&n.allEdits.length>1&&this.show(m??f,n,_=>T0e(this,void 0,void 0,function*(){const b=this._editor.getModel();b&&(yield b.undo(),this.applyEditAndShowIfNeeded(e,{activeEditIndex:_,allEdits:n.allEdits},r,s))}))})}show(e,n,r){this.clear(),this._editor.hasModel()&&(this._currentWidget.value=this._instantiationService.createInstance(fj,this._id,this._editor,this._visibleContext,this._showCommand,e,n,r))}clear(){this._currentWidget.clear()}tryShowSelector(){var e;(e=this._currentWidget.value)===null||e===void 0||e.showSelector()}};pj=rMe([CM(4,hn),CM(5,$5)],pj);var M2t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},cD=function(i,e){return function(n,r){e(n,r,i)}},i0=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},ane;const sMe="editor.changePasteType",oMe=new yt("pasteWidgetVisible",!1,L("pasteWidgetVisible","Whether the paste widget is showing")),CK="application/vnd.code.copyMetadata";let Ex=ane=class extends Le{static get(e){return e.getContribution(ane.ID)}constructor(e,n,r,s,o,a,l){super(),this._bulkEditService=r,this._clipboardService=s,this._languageFeaturesService=o,this._quickInputService=a,this._progressService=l,this._editor=e;const c=e.getContainerDomNode();this._register(Be(c,"copy",u=>this.handleCopy(u))),this._register(Be(c,"cut",u=>this.handleCopy(u))),this._register(Be(c,"paste",u=>this.handlePaste(u),!0)),this._pasteProgressManager=this._register(new hj("pasteIntoEditor",e,n)),this._postPasteWidgetManager=this._register(n.createInstance(pj,"pasteIntoEditor",e,oMe,{id:sMe,label:L("postPasteWidgetTitle","Show paste options...")}))}changePasteType(){this._postPasteWidgetManager.tryShowSelector()}pasteAs(e){this._editor.focus();try{this._pasteAsActionContext={preferredId:e},u$().execCommand("paste")}finally{this._pasteAsActionContext=void 0}}isPasteAsEnabled(){return this._editor.getOption(84).enabled&&!this._editor.getOption(90)}handleCopy(e){var n,r;if(!this._editor.hasTextFocus()||(H1&&this._clipboardService.writeResources([]),!e.clipboardData||!this.isPasteAsEnabled()))return;const s=this._editor.getModel(),o=this._editor.getSelections();if(!s||!(o!=null&&o.length))return;const a=this._editor.getOption(37);let l=o;const c=o.length===1&&o[0].isEmpty();if(c){if(!a)return;l=[new J(l[0].startLineNumber,1,l[0].startLineNumber,1+s.getLineLength(l[0].startLineNumber))]}const u=(n=this._editor._getViewModel())===null||n===void 0?void 0:n.getPlainTextToCopy(o,a,Aa),h={multicursorText:Array.isArray(u)?u:null,pasteOnNewLine:c,mode:null},f=this._languageFeaturesService.documentPasteEditProvider.ordered(s).filter(b=>!!b.prepareDocumentPaste);if(!f.length){this.setCopyMetadata(e.clipboardData,{defaultPastePayload:h});return}const p=tMe(e.clipboardData),g=f.flatMap(b=>{var y;return(y=b.copyMimeTypes)!==null&&y!==void 0?y:[]}),m=Iz();this.setCopyMetadata(e.clipboardData,{id:m,providerCopyMimeTypes:g,defaultPastePayload:h});const _=go(b=>i0(this,void 0,void 0,function*(){const y=Hm(yield Promise.all(f.map(x=>i0(this,void 0,void 0,function*(){try{return yield x.prepareDocumentPaste(s,l,p,b)}catch(k){console.error(k);return}}))));y.reverse();for(const x of y)for(const[k,D]of x)p.replace(k,D);return p}));(r=this._currentCopyOperation)===null||r===void 0||r.dataTransferPromise.cancel(),this._currentCopyOperation={handle:m,dataTransferPromise:_}}handlePaste(e){var n,r;return i0(this,void 0,void 0,function*(){if(!e.clipboardData||!this._editor.hasTextFocus())return;(n=this._currentPasteOperation)===null||n===void 0||n.cancel(),this._currentPasteOperation=void 0;const s=this._editor.getModel(),o=this._editor.getSelections();if(!(o!=null&&o.length)||!s||!this.isPasteAsEnabled())return;const a=this.fetchCopyMetadata(e),l=nMe(e.clipboardData);l.delete(CK);const c=[...e.clipboardData.types,...(r=a==null?void 0:a.providerCopyMimeTypes)!==null&&r!==void 0?r:[],bs.uriList],u=this._languageFeaturesService.documentPasteEditProvider.ordered(s).filter(d=>{var h;return(h=d.pasteMimeTypes)===null||h===void 0?void 0:h.some(f=>JNe(f,c))});u.length&&(e.preventDefault(),e.stopImmediatePropagation(),this._pasteAsActionContext?this.showPasteAsPick(this._pasteAsActionContext.preferredId,u,o,l,a):this.doPasteInline(u,o,l,a))})}doPasteInline(e,n,r,s){const o=go(a=>i0(this,void 0,void 0,function*(){const l=this._editor;if(!l.hasModel())return;const c=l.getModel(),u=new x1(l,3,void 0,a);try{if(yield this.mergeInDataFromCopy(r,s,u.token),u.token.isCancellationRequested)return;const d=e.filter(f=>R0e(f,r));if(!d.length||d.length===1&&d[0].id==="text"){yield this.applyDefaultPasteHandler(r,s,u.token);return}const h=yield this.getPasteEdits(d,r,c,n,u.token);if(u.token.isCancellationRequested)return;if(h.length===1&&h[0].providerId==="text"){yield this.applyDefaultPasteHandler(r,s,u.token);return}if(h.length){const f=l.getOption(84).showPasteSelector==="afterPaste";return this._postPasteWidgetManager.applyEditAndShowIfNeeded(n,{activeEditIndex:0,allEdits:h},f,u.token)}yield this.applyDefaultPasteHandler(r,s,u.token)}finally{u.dispose(),this._currentPasteOperation===o&&(this._currentPasteOperation=void 0)}}));this._pasteProgressManager.showWhile(n[0].getEndPosition(),L("pasteIntoEditorProgress","Running paste handlers. Click to cancel"),o),this._currentPasteOperation=o}showPasteAsPick(e,n,r,s,o){const a=go(l=>i0(this,void 0,void 0,function*(){const c=this._editor;if(!c.hasModel())return;const u=c.getModel(),d=new x1(c,3,void 0,l);try{if(yield this.mergeInDataFromCopy(s,o,d.token),d.token.isCancellationRequested)return;let h=n.filter(m=>R0e(m,s));e&&(h=h.filter(m=>m.id===e));const f=yield this.getPasteEdits(h,s,u,r,d.token);if(d.token.isCancellationRequested||!f.length)return;let p;if(e)p=f.at(0);else{const m=yield this._quickInputService.pick(f.map(_=>({label:_.label,description:_.providerId,detail:_.detail,edit:_})),{placeHolder:L("pasteAsPickerPlaceholder","Select Paste Action")});p=m==null?void 0:m.edit}if(!p)return;const g=I2t(u.uri,r,p);yield this._bulkEditService.apply(g,{editor:this._editor})}finally{d.dispose(),this._currentPasteOperation===a&&(this._currentPasteOperation=void 0)}}));this._progressService.withProgress({location:10,title:L("pasteAsProgress","Running paste handlers")},()=>a)}setCopyMetadata(e,n){e.setData(CK,JSON.stringify(n))}fetchCopyMetadata(e){var n;if(!e.clipboardData)return;const r=e.clipboardData.getData(CK);if(r)try{return JSON.parse(r)}catch{return}const[s,o]=AJ.getTextData(e.clipboardData);if(o)return{defaultPastePayload:{mode:o.mode,multicursorText:(n=o.multicursorText)!==null&&n!==void 0?n:null,pasteOnNewLine:!!o.isFromEmptySelection}}}mergeInDataFromCopy(e,n,r){var s;return i0(this,void 0,void 0,function*(){if(n!=null&&n.id&&((s=this._currentCopyOperation)===null||s===void 0?void 0:s.handle)===n.id){const o=yield this._currentCopyOperation.dataTransferPromise;if(r.isCancellationRequested)return;for(const[a,l]of o)e.replace(a,l)}if(!e.has(bs.uriList)){const o=yield this._clipboardService.readResources();if(r.isCancellationRequested)return;o.length&&e.append(bs.uriList,dle(Tz.create(o)))}})}getPasteEdits(e,n,r,s,o){return i0(this,void 0,void 0,function*(){const a=yield h$(Promise.all(e.map(c=>i0(this,void 0,void 0,function*(){var u;try{const d=yield(u=c.provideDocumentPasteEdits)===null||u===void 0?void 0:u.call(c,r,s,n,o);if(d)return Object.assign(Object.assign({},d),{providerId:c.id})}catch(d){console.error(d)}}))),o),l=Hm(a??[]);return iMe(l)})}applyDefaultPasteHandler(e,n,r){var s,o,a;return i0(this,void 0,void 0,function*(){const l=(s=e.get(bs.text))!==null&&s!==void 0?s:e.get("text");if(!l)return;const c=yield l.asString();if(r.isCancellationRequested)return;const u={text:c,pasteOnNewLine:(o=n==null?void 0:n.defaultPastePayload.pasteOnNewLine)!==null&&o!==void 0?o:!1,multicursorText:(a=n==null?void 0:n.defaultPastePayload.multicursorText)!==null&&a!==void 0?a:null,mode:null};this._editor.trigger("keyboard","paste",u)})}};Ex.ID="editor.contrib.copyPasteActionController";Ex=ane=M2t([cD(1,hn),cD(2,$5),cD(3,qv),cD(4,Et),cD(5,lg),cD(6,NTe)],Ex);function R0e(i,e){var n;return!!(!((n=i.pasteMimeTypes)===null||n===void 0)&&n.some(r=>e.matches(r)))}var hle=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},hO=function(i,e){return function(n,r){e(n,r,i)}},lI=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const fle=L("builtIn","Built-in");class ple{provideDocumentPasteEdits(e,n,r,s){return lI(this,void 0,void 0,function*(){const o=yield this.getEdit(r,s);return o?{insertText:o.insertText,label:o.label,detail:o.detail,handledMimeType:o.handledMimeType,yieldTo:o.yieldTo}:void 0})}provideDocumentOnDropEdits(e,n,r,s){return lI(this,void 0,void 0,function*(){const o=yield this.getEdit(r,s);return o?{insertText:o.insertText,label:o.label,handledMimeType:o.handledMimeType,yieldTo:o.yieldTo}:void 0})}}class aMe extends ple{constructor(){super(...arguments),this.id="text",this.dropMimeTypes=[bs.text],this.pasteMimeTypes=[bs.text]}getEdit(e,n){return lI(this,void 0,void 0,function*(){const r=e.get(bs.text);if(!r||e.has(bs.uriList))return;const s=yield r.asString();return{handledMimeType:bs.text,label:L("text.label","Insert Plain Text"),detail:fle,insertText:s}})}}class lMe extends ple{constructor(){super(...arguments),this.id="uri",this.dropMimeTypes=[bs.uriList],this.pasteMimeTypes=[bs.uriList]}getEdit(e,n){return lI(this,void 0,void 0,function*(){const r=yield cMe(e);if(!r.length||n.isCancellationRequested)return;let s=0;const o=r.map(({uri:l,originalText:c})=>l.scheme===Pn.file?l.fsPath:(s++,c)).join(" ");let a;return s>0?a=r.length>1?L("defaultDropProvider.uriList.uris","Insert Uris"):L("defaultDropProvider.uriList.uri","Insert Uri"):a=r.length>1?L("defaultDropProvider.uriList.paths","Insert Paths"):L("defaultDropProvider.uriList.path","Insert Path"),{handledMimeType:bs.uriList,insertText:o,label:a,detail:fle}})}}let gj=class extends ple{constructor(e){super(),this._workspaceContextService=e,this.id="relativePath",this.dropMimeTypes=[bs.uriList],this.pasteMimeTypes=[bs.uriList]}getEdit(e,n){return lI(this,void 0,void 0,function*(){const r=yield cMe(e);if(!r.length||n.isCancellationRequested)return;const s=Hm(r.map(({uri:o})=>{const a=this._workspaceContextService.getWorkspaceFolder(o);return a?Jgt(a.uri,o):void 0}));if(s.length)return{handledMimeType:bs.uriList,insertText:s.join(" "),label:r.length>1?L("defaultDropProvider.uriList.relativePaths","Insert Relative Paths"):L("defaultDropProvider.uriList.relativePath","Insert Relative Path"),detail:fle}})}};gj=hle([hO(0,px)],gj);function cMe(i){return lI(this,void 0,void 0,function*(){const e=i.get(bs.uriList);if(!e)return[];const n=yield e.asString(),r=[];for(const s of Tz.parse(n))try{r.push({uri:Jt.parse(s),originalText:s})}catch{}return r})}let lne=class extends Le{constructor(e,n){super(),this._register(e.documentOnDropEditProvider.register("*",new aMe)),this._register(e.documentOnDropEditProvider.register("*",new lMe)),this._register(e.documentOnDropEditProvider.register("*",new gj(n)))}};lne=hle([hO(0,Et),hO(1,px)],lne);let cne=class extends Le{constructor(e,n){super(),this._register(e.documentPasteEditProvider.register("*",new aMe)),this._register(e.documentPasteEditProvider.register("*",new lMe)),this._register(e.documentPasteEditProvider.register("*",new gj(n)))}};cne=hle([hO(0,Et),hO(1,px)],cne);_i(Ex.ID,Ex,0);sz(cne);ct(new class extends Ho{constructor(){super({id:sMe,precondition:oMe,kbOpts:{weight:100,primary:2137}})}runEditorCommand(i,e,n){var r;return(r=Ex.get(e))===null||r===void 0?void 0:r.changePasteType()}});rt(class extends kt{constructor(){super({id:"editor.action.pasteAs",label:L("pasteAs","Paste As..."),alias:"Paste As...",precondition:void 0,description:{description:"Paste as",args:[{name:"args",schema:{type:"object",properties:{id:{type:"string",description:L("pasteAs.id","The id of the paste edit to try applying. If not provided, the editor will show a picker.")}}}}]}})}run(i,e,n){var r;const s=typeof(n==null?void 0:n.id)=="string"?n.id:void 0;return(r=Ex.get(e))===null||r===void 0?void 0:r.pasteAs(s)}});class P2t{constructor(){this._dragOperations=new Map}removeDragOperationTransfer(e){if(e&&this._dragOperations.has(e)){const n=this._dragOperations.get(e);return this._dragOperations.delete(e),n}}}class A0e{constructor(e){this.identifier=e}}const uMe=qn("treeViewsDndService");oi(uMe,P2t,1);var O2t=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},P6=function(i,e){return function(n,r){e(n,r,i)}},lA=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},une;const dMe="editor.experimental.dropIntoEditor.defaultProvider",hMe="editor.changeDropType",fMe=new yt("dropWidgetVisible",!1,L("dropWidgetVisible","Whether the drop widget is showing"));let cI=une=class extends Le{static get(e){return e.getContribution(une.ID)}constructor(e,n,r,s,o){super(),this._configService=r,this._languageFeaturesService=s,this._treeViewsDragAndDropService=o,this.treeItemsTransfer=dO.getInstance(),this._dropProgressManager=this._register(n.createInstance(hj,"dropIntoEditor",e)),this._postDropWidgetManager=this._register(n.createInstance(pj,"dropIntoEditor",e,fMe,{id:hMe,label:L("postDropWidgetTitle","Show drop options...")})),this._register(e.onDropIntoEditor(a=>this.onDropIntoEditor(e,a.position,a.event)))}changeDropType(){this._postDropWidgetManager.tryShowSelector()}onDropIntoEditor(e,n,r){var s;return lA(this,void 0,void 0,function*(){if(!r.dataTransfer||!e.hasModel())return;(s=this._currentOperation)===null||s===void 0||s.cancel(),e.focus(),e.setPosition(n);const o=go(a=>lA(this,void 0,void 0,function*(){const l=new x1(e,1,void 0,a);try{const c=yield this.extractDataTransferData(r);if(c.size===0||l.token.isCancellationRequested)return;const u=e.getModel();if(!u)return;const d=this._languageFeaturesService.documentOnDropEditProvider.ordered(u).filter(f=>f.dropMimeTypes?f.dropMimeTypes.some(p=>c.matches(p)):!0),h=yield this.getDropEdits(d,u,n,c,l);if(l.token.isCancellationRequested)return;if(h.length){const f=this.getInitialActiveEditIndex(u,h),p=e.getOption(36).showDropSelector==="afterDrop";yield this._postDropWidgetManager.applyEditAndShowIfNeeded([J.fromPositions(n)],{activeEditIndex:f,allEdits:h},p,a)}}finally{l.dispose(),this._currentOperation===o&&(this._currentOperation=void 0)}}));this._dropProgressManager.showWhile(n,L("dropIntoEditorProgress","Running drop handlers. Click to cancel"),o),this._currentOperation=o})}getDropEdits(e,n,r,s,o){return lA(this,void 0,void 0,function*(){const a=yield h$(Promise.all(e.map(c=>lA(this,void 0,void 0,function*(){try{const u=yield c.provideDocumentOnDropEdits(n,r,s,o.token);if(u)return Object.assign(Object.assign({},u),{providerId:c.id})}catch(u){console.error(u)}}))),o.token),l=Hm(a??[]);return iMe(l)})}getInitialActiveEditIndex(e,n){const r=this._configService.getValue(dMe,{resource:e.uri});for(const[s,o]of Object.entries(r)){const a=n.findIndex(l=>o===l.providerId&&l.handledMimeType&&JNe(s,[l.handledMimeType]));if(a>=0)return a}return 0}extractDataTransferData(e){return lA(this,void 0,void 0,function*(){if(!e.dataTransfer)return new QNe;const n=nMe(e.dataTransfer);if(this.treeItemsTransfer.hasData(A0e.prototype)){const r=this.treeItemsTransfer.getData(A0e.prototype);if(Array.isArray(r))for(const s of r){const o=yield this._treeViewsDragAndDropService.removeDragOperationTransfer(s.identifier);if(o)for(const[a,l]of o)n.replace(a,l)}}return n})}};cI.ID="editor.contrib.dropIntoEditorController";cI=une=O2t([P6(1,hn),P6(2,ei),P6(3,Et),P6(4,uMe)],cI);_i(cI.ID,cI,2);ct(new class extends Ho{constructor(){super({id:hMe,precondition:fMe,kbOpts:{weight:100,primary:2137}})}runEditorCommand(i,e,n){var r;(r=cI.get(e))===null||r===void 0||r.changeDropType()}});sz(lne);Kr.as(ag.Configuration).registerConfiguration(Object.assign(Object.assign({},j$),{properties:{[dMe]:{type:"object",scope:5,description:L("defaultProviderDescription","Configures the default drop provider to use for content of a given mime type."),default:{},additionalProperties:{type:"string"}}}}));class ul{constructor(e){this._editor=e,this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null,this._startPosition=this._editor.getPosition()}dispose(){this._editor.removeDecorations(this._allDecorations()),this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}reset(){this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}getCount(){return this._decorations.length}getFindScope(){return this._findScopeDecorationIds[0]?this._editor.getModel().getDecorationRange(this._findScopeDecorationIds[0]):null}getFindScopes(){if(this._findScopeDecorationIds.length){const e=this._findScopeDecorationIds.map(n=>this._editor.getModel().getDecorationRange(n)).filter(n=>!!n);if(e.length)return e}return null}getStartPosition(){return this._startPosition}setStartPosition(e){this._startPosition=e,this.setCurrentFindMatch(null)}_getDecorationIndex(e){const n=this._decorations.indexOf(e);return n>=0?n+1:1}getDecorationRangeAt(e){const n=e{if(this._highlightedDecorationId!==null&&(s.changeDecorationOptions(this._highlightedDecorationId,ul._FIND_MATCH_DECORATION),this._highlightedDecorationId=null),n!==null&&(this._highlightedDecorationId=n,s.changeDecorationOptions(this._highlightedDecorationId,ul._CURRENT_FIND_MATCH_DECORATION)),this._rangeHighlightDecorationId!==null&&(s.removeDecoration(this._rangeHighlightDecorationId),this._rangeHighlightDecorationId=null),n!==null){let o=this._editor.getModel().getDecorationRange(n);if(o.startLineNumber!==o.endLineNumber&&o.endColumn===1){const a=o.endLineNumber-1,l=this._editor.getModel().getLineMaxColumn(a);o=new J(o.startLineNumber,o.startColumn,a,l)}this._rangeHighlightDecorationId=s.addDecoration(o,ul._RANGE_HIGHLIGHT_DECORATION)}}),r}set(e,n){this._editor.changeDecorations(r=>{let s=ul._FIND_MATCH_DECORATION;const o=[];if(e.length>1e3){s=ul._FIND_MATCH_NO_OVERVIEW_DECORATION;const l=this._editor.getModel().getLineCount(),u=this._editor.getLayoutInfo().height/l,d=Math.max(2,Math.ceil(3/u));let h=e[0].range.startLineNumber,f=e[0].range.endLineNumber;for(let p=1,g=e.length;p=m.startLineNumber?m.endLineNumber>f&&(f=m.endLineNumber):(o.push({range:new J(h,1,f,1),options:ul._FIND_MATCH_ONLY_OVERVIEW_DECORATION}),h=m.startLineNumber,f=m.endLineNumber)}o.push({range:new J(h,1,f,1),options:ul._FIND_MATCH_ONLY_OVERVIEW_DECORATION})}const a=new Array(e.length);for(let l=0,c=e.length;lr.removeDecoration(l)),this._findScopeDecorationIds=[]),n!=null&&n.length&&(this._findScopeDecorationIds=n.map(l=>r.addDecoration(l,ul._FIND_SCOPE_DECORATION)))})}matchBeforePosition(e){if(this._decorations.length===0)return null;for(let n=this._decorations.length-1;n>=0;n--){const r=this._decorations[n],s=this._editor.getModel().getDecorationRange(r);if(!(!s||s.endLineNumber>e.lineNumber)){if(s.endLineNumbere.column))return s}}return this._editor.getModel().getDecorationRange(this._decorations[this._decorations.length-1])}matchAfterPosition(e){if(this._decorations.length===0)return null;for(let n=0,r=this._decorations.length;ne.lineNumber)return o;if(!(o.startColumn0){const r=[];for(let a=0;aJ.compareRangesUsingStarts(a.range,l.range));const s=[];let o=r[0];for(let a=1;a0?e[0].toUpperCase()+e.substr(1):i[0][0].toUpperCase()!==i[0][0]&&e.length>0?e[0].toLowerCase()+e.substr(1):e}else return e}function N0e(i,e,n){return i[0].indexOf(n)!==-1&&e.indexOf(n)!==-1&&i[0].split(n).length===e.split(n).length}function M0e(i,e,n){const r=e.split(n),s=i[0].split(n);let o="";return r.forEach((a,l)=>{o+=pMe([s[l]],a)+n}),o.slice(0,-1)}class P0e{constructor(e){this.staticValue=e,this.kind=0}}class B2t{constructor(e){this.pieces=e,this.kind=1}}class uI{static fromStaticValue(e){return new uI([zS.staticValue(e)])}get hasReplacementPatterns(){return this._state.kind===1}constructor(e){!e||e.length===0?this._state=new P0e(""):e.length===1&&e[0].staticValue!==null?this._state=new P0e(e[0].staticValue):this._state=new B2t(e)}buildReplaceString(e,n){if(this._state.kind===0)return n?pMe(e,this._state.staticValue):this._state.staticValue;let r="";for(let s=0,o=this._state.pieces.length;s0){const c=[],u=a.caseOps.length;let d=0;for(let h=0,f=l.length;h=u){c.push(l.slice(h));break}switch(a.caseOps[d]){case"U":c.push(l[h].toUpperCase());break;case"u":c.push(l[h].toUpperCase()),d++;break;case"L":c.push(l[h].toLowerCase());break;case"l":c.push(l[h].toLowerCase()),d++;break;default:c.push(l[h])}}l=c.join("")}r+=l}return r}static _substitute(e,n){if(n===null)return"";if(e===0)return n[0];let r="";for(;e>0;){if(e=s)break;const a=i.charCodeAt(r);switch(a){case 92:n.emitUnchanged(r-1),n.emitStatic("\\",r+1);break;case 110:n.emitUnchanged(r-1),n.emitStatic(` `,r+1);break;case 116:n.emitUnchanged(r-1),n.emitStatic(" ",r+1);break;case 117:case 85:case 108:case 76:n.emitUnchanged(r-1),n.emitStatic("",r+1),e.push(String.fromCharCode(a));break}continue}if(o===36){if(r++,r>=s)break;const a=i.charCodeAt(r);if(a===36){n.emitUnchanged(r-1),n.emitStatic("$",r+1);continue}if(a===48||a===38){n.emitUnchanged(r-1),n.emitMatchIndex(0,r+1,e),e.length=0;continue}if(49<=a&&a<=57){let l=a-48;if(r+1this.research(!1),100),this._toDispose.add(this._updateDecorationsScheduler),this._toDispose.add(this._editor.onDidChangeCursorPosition(r=>{(r.reason===3||r.reason===5||r.reason===6)&&this._decorations.setStartPosition(this._editor.getPosition())})),this._ignoreModelContentChanged=!1,this._toDispose.add(this._editor.onDidChangeModelContent(r=>{this._ignoreModelContentChanged||(r.isFlush&&this._decorations.reset(),this._decorations.setStartPosition(this._editor.getPosition()),this._updateDecorationsScheduler.schedule())})),this._toDispose.add(this._state.onFindReplaceStateChange(r=>this._onStateChanged(r))),this.research(!1,this._state.searchScope)}dispose(){this._isDisposed=!0,Mi(this._startSearchingTimer),this._toDispose.dispose()}_onStateChanged(e){this._isDisposed||this._editor.hasModel()&&(e.searchString||e.isReplaceRevealed||e.isRegex||e.wholeWord||e.matchCase||e.searchScope)&&(this._editor.getModel().isTooLargeForSyncing()?(this._startSearchingTimer.cancel(),this._startSearchingTimer.setIfNotSet(()=>{e.searchScope?this.research(e.moveCursor,this._state.searchScope):this.research(e.moveCursor)},$2t)):e.searchScope?this.research(e.moveCursor,this._state.searchScope):this.research(e.moveCursor))}static _getSearchRange(e,n){return n||e.getFullModelRange()}research(e,n){let r=null;typeof n<"u"?n!==null&&(Array.isArray(n)?r=n:r=[n]):r=this._decorations.getFindScopes(),r!==null&&(r=r.map(l=>{if(l.startLineNumber!==l.endLineNumber){let c=l.endLineNumber;return l.endColumn===1&&(c=c-1),new J(l.startLineNumber,1,c,this._editor.getModel().getLineMaxColumn(c))}return l}));const s=this._findMatches(r,!1,Dy);this._decorations.set(s,r);const o=this._editor.getSelection();let a=this._decorations.getCurrentMatchesPosition(o);if(a===0&&s.length>0){const l=_P(s.map(c=>c.range),c=>J.compareRangesUsingStarts(c,o)>=0);a=l>0?l-1+1:a}this._state.changeMatchInfo(a,this._decorations.getCount(),void 0),e&&this._editor.getOption(41).cursorMoveOnType&&this._moveToNextMatch(this._decorations.getStartPosition())}_hasMatches(){return this._state.matchesCount>0}_cannotFind(){if(!this._hasMatches()){const e=this._decorations.getFindScope();return e&&this._editor.revealRangeInCenterIfOutsideViewport(e,0),!0}return!1}_setCurrentFindMatch(e){const n=this._decorations.setCurrentFindMatch(e);this._state.changeMatchInfo(n,this._decorations.getCount(),e),this._editor.setSelection(e),this._editor.revealRangeInCenterIfOutsideViewport(e,0)}_prevSearchPosition(e){const n=this._state.isRegex&&(this._state.searchString.indexOf("^")>=0||this._state.searchString.indexOf("$")>=0);let{lineNumber:r,column:s}=e;const o=this._editor.getModel();return n||s===1?(r===1?r=o.getLineCount():r--,s=o.getLineMaxColumn(r)):s--,new ve(r,s)}_moveToPrevMatch(e,n=!1){if(!this._state.canNavigateBack()){const d=this._decorations.matchAfterPosition(e);d&&this._setCurrentFindMatch(d);return}if(this._decorations.getCount()=0||this._state.searchString.indexOf("$")>=0);let{lineNumber:r,column:s}=e;const o=this._editor.getModel();return n||s===o.getLineMaxColumn(r)?(r===o.getLineCount()?r=1:r++,s=1):s++,new ve(r,s)}_moveToNextMatch(e){if(!this._state.canNavigateForward()){const r=this._decorations.matchBeforePosition(e);r&&this._setCurrentFindMatch(r);return}if(this._decorations.getCount()SM._getSearchRange(this._editor.getModel(),o));return this._editor.getModel().findMatches(this._state.searchString,s,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(129):null,n,r)}replaceAll(){if(!this._hasMatches())return;const e=this._decorations.getFindScopes();e===null&&this._state.matchesCount>=Dy?this._largeReplaceAll():this._regularReplaceAll(e),this.research(!1)}_largeReplaceAll(){const n=new MC(this._state.searchString,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(129):null).parseSearchRequest();if(!n)return;let r=n.regex;if(!r.multiline){let h="mu";r.ignoreCase&&(h+="i"),r.global&&(h+="g"),r=new RegExp(r.source,h)}const s=this._editor.getModel(),o=s.getValue(1),a=s.getFullModelRange(),l=this._getReplacePattern();let c;const u=this._state.preserveCase;l.hasReplacementPatterns||u?c=o.replace(r,function(){return l.buildReplaceString(arguments,u)}):c=o.replace(r,l.buildReplaceString(null,u));const d=new Doe(a,c,this._editor.getSelection());this._executeEditorCommand("replaceAll",d)}_regularReplaceAll(e){const n=this._getReplacePattern(),r=this._findMatches(e,n.hasReplacementPatterns||this._state.preserveCase,1073741824),s=[];for(let a=0,l=r.length;aa.range),s);this._executeEditorCommand("replaceAll",o)}selectAllMatches(){if(!this._hasMatches())return;const e=this._decorations.getFindScopes();let r=this._findMatches(e,!1,1073741824).map(o=>new Ft(o.range.startLineNumber,o.range.startColumn,o.range.endLineNumber,o.range.endColumn));const s=this._editor.getSelection();for(let o=0,a=r.length;othis._hide(),2e3)),this._isVisible=!1,this._editor=e,this._state=n,this._keybindingService=r,this._domNode=document.createElement("div"),this._domNode.className="findOptionsWidget",this._domNode.style.display="none",this._domNode.style.top="10px",this._domNode.style.zIndex="12",this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true");const s={inputActiveOptionBorder:wt(goe),inputActiveOptionForeground:wt(moe),inputActiveOptionBackground:wt(mS)};this.caseSensitive=this._register(new uRe(Object.assign({appendTitle:this._keybindingLabelFor(mr.ToggleCaseSensitiveCommand),isChecked:this._state.matchCase},s))),this._domNode.appendChild(this.caseSensitive.domNode),this._register(this.caseSensitive.onChange(()=>{this._state.change({matchCase:this.caseSensitive.checked},!1)})),this.wholeWords=this._register(new dRe(Object.assign({appendTitle:this._keybindingLabelFor(mr.ToggleWholeWordCommand),isChecked:this._state.wholeWord},s))),this._domNode.appendChild(this.wholeWords.domNode),this._register(this.wholeWords.onChange(()=>{this._state.change({wholeWord:this.wholeWords.checked},!1)})),this.regex=this._register(new hRe(Object.assign({appendTitle:this._keybindingLabelFor(mr.ToggleRegexCommand),isChecked:this._state.isRegex},s))),this._domNode.appendChild(this.regex.domNode),this._register(this.regex.onChange(()=>{this._state.change({isRegex:this.regex.checked},!1)})),this._editor.addOverlayWidget(this),this._register(this._state.onFindReplaceStateChange(o=>{let a=!1;o.isRegex&&(this.regex.checked=this._state.isRegex,a=!0),o.wholeWord&&(this.wholeWords.checked=this._state.wholeWord,a=!0),o.matchCase&&(this.caseSensitive.checked=this._state.matchCase,a=!0),!this._state.isRevealed&&a&&this._revealTemporarily()})),this._register(Be(this._domNode,ht.MOUSE_LEAVE,o=>this._onMouseLeave())),this._register(Be(this._domNode,"mouseover",o=>this._onMouseOver()))}_keybindingLabelFor(e){const n=this._keybindingService.lookupKeybinding(e);return n?` (${n.getLabel()})`:""}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return Nz.ID}getDomNode(){return this._domNode}getPosition(){return{preference:0}}highlightFindOptions(){this._revealTemporarily()}_revealTemporarily(){this._show(),this._hideSoon.schedule()}_onMouseLeave(){this._hideSoon.schedule()}_onMouseOver(){this._hideSoon.cancel()}_show(){this._isVisible||(this._isVisible=!0,this._domNode.style.display="block")}_hide(){this._isVisible&&(this._isVisible=!1,this._domNode.style.display="none")}}Nz.ID="editor.contrib.findOptionsWidget";function $6(i,e){return i===1?!0:i===2?!1:e}class z2t extends Le{get searchString(){return this._searchString}get replaceString(){return this._replaceString}get isRevealed(){return this._isRevealed}get isReplaceRevealed(){return this._isReplaceRevealed}get isRegex(){return $6(this._isRegexOverride,this._isRegex)}get wholeWord(){return $6(this._wholeWordOverride,this._wholeWord)}get matchCase(){return $6(this._matchCaseOverride,this._matchCase)}get preserveCase(){return $6(this._preserveCaseOverride,this._preserveCase)}get actualIsRegex(){return this._isRegex}get actualWholeWord(){return this._wholeWord}get actualMatchCase(){return this._matchCase}get actualPreserveCase(){return this._preserveCase}get searchScope(){return this._searchScope}get matchesPosition(){return this._matchesPosition}get matchesCount(){return this._matchesCount}get currentMatch(){return this._currentMatch}constructor(){super(),this._onFindReplaceStateChange=this._register(new _e),this.onFindReplaceStateChange=this._onFindReplaceStateChange.event,this._searchString="",this._replaceString="",this._isRevealed=!1,this._isReplaceRevealed=!1,this._isRegex=!1,this._isRegexOverride=0,this._wholeWord=!1,this._wholeWordOverride=0,this._matchCase=!1,this._matchCaseOverride=0,this._preserveCase=!1,this._preserveCaseOverride=0,this._searchScope=null,this._matchesPosition=0,this._matchesCount=0,this._currentMatch=null,this._loop=!0,this._isSearching=!1,this._filters=null}changeMatchInfo(e,n,r){const s={moveCursor:!1,updateHistory:!1,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1,loop:!1,isSearching:!1,filters:!1};let o=!1;n===0&&(e=0),e>n&&(e=n),this._matchesPosition!==e&&(this._matchesPosition=e,s.matchesPosition=!0,o=!0),this._matchesCount!==n&&(this._matchesCount=n,s.matchesCount=!0,o=!0),typeof r<"u"&&(J.equalsRange(this._currentMatch,r)||(this._currentMatch=r,s.currentMatch=!0,o=!0)),o&&this._onFindReplaceStateChange.fire(s)}change(e,n,r=!0){var s;const o={moveCursor:n,updateHistory:r,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1,loop:!1,isSearching:!1,filters:!1};let a=!1;const l=this.isRegex,c=this.wholeWord,u=this.matchCase,d=this.preserveCase;typeof e.searchString<"u"&&this._searchString!==e.searchString&&(this._searchString=e.searchString,o.searchString=!0,a=!0),typeof e.replaceString<"u"&&this._replaceString!==e.replaceString&&(this._replaceString=e.replaceString,o.replaceString=!0,a=!0),typeof e.isRevealed<"u"&&this._isRevealed!==e.isRevealed&&(this._isRevealed=e.isRevealed,o.isRevealed=!0,a=!0),typeof e.isReplaceRevealed<"u"&&this._isReplaceRevealed!==e.isReplaceRevealed&&(this._isReplaceRevealed=e.isReplaceRevealed,o.isReplaceRevealed=!0,a=!0),typeof e.isRegex<"u"&&(this._isRegex=e.isRegex),typeof e.wholeWord<"u"&&(this._wholeWord=e.wholeWord),typeof e.matchCase<"u"&&(this._matchCase=e.matchCase),typeof e.preserveCase<"u"&&(this._preserveCase=e.preserveCase),typeof e.searchScope<"u"&&(!((s=e.searchScope)===null||s===void 0)&&s.every(h=>{var f;return(f=this._searchScope)===null||f===void 0?void 0:f.some(p=>!J.equalsRange(p,h))})||(this._searchScope=e.searchScope,o.searchScope=!0,a=!0)),typeof e.loop<"u"&&this._loop!==e.loop&&(this._loop=e.loop,o.loop=!0,a=!0),typeof e.isSearching<"u"&&this._isSearching!==e.isSearching&&(this._isSearching=e.isSearching,o.isSearching=!0,a=!0),typeof e.filters<"u"&&(this._filters?this._filters.update(e.filters):this._filters=e.filters,o.filters=!0,a=!0),this._isRegexOverride=typeof e.isRegexOverride<"u"?e.isRegexOverride:0,this._wholeWordOverride=typeof e.wholeWordOverride<"u"?e.wholeWordOverride:0,this._matchCaseOverride=typeof e.matchCaseOverride<"u"?e.matchCaseOverride:0,this._preserveCaseOverride=typeof e.preserveCaseOverride<"u"?e.preserveCaseOverride:0,l!==this.isRegex&&(a=!0,o.isRegex=!0),c!==this.wholeWord&&(a=!0,o.wholeWord=!0),u!==this.matchCase&&(a=!0,o.matchCase=!0),d!==this.preserveCase&&(a=!0,o.preserveCase=!0),a&&this._onFindReplaceStateChange.fire(o)}canNavigateBack(){return this.canNavigateInLoop()||this.matchesPosition!==1}canNavigateForward(){return this.canNavigateInLoop()||this.matchesPosition=Dy}}const V2t=L("defaultLabel","input"),H2t=L("label.preserveCaseToggle","Preserve Case");class U2t extends qI{constructor(e){super({icon:lt.preserveCase,title:H2t+e.appendTitle,isChecked:e.isChecked,inputActiveOptionBorder:e.inputActiveOptionBorder,inputActiveOptionForeground:e.inputActiveOptionForeground,inputActiveOptionBackground:e.inputActiveOptionBackground})}}class q2t extends Pf{constructor(e,n,r,s){super(),this._showOptionButtons=r,this.fixFocusOnOptionClickEnabled=!0,this.cachedOptionsWidth=0,this._onDidOptionChange=this._register(new _e),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new _e),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new _e),this._onInput=this._register(new _e),this._onKeyUp=this._register(new _e),this._onPreserveCaseKeyDown=this._register(new _e),this.onPreserveCaseKeyDown=this._onPreserveCaseKeyDown.event,this.contextViewProvider=n,this.placeholder=s.placeholder||"",this.validation=s.validation,this.label=s.label||V2t;const o=s.appendPreserveCaseLabel||"",a=s.history||[],l=!!s.flexibleHeight,c=!!s.flexibleWidth,u=s.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new fRe(this.domNode,this.contextViewProvider,{ariaLabel:this.label||"",placeholder:this.placeholder||"",validationOptions:{validation:this.validation},history:a,showHistoryHint:s.showHistoryHint,flexibleHeight:l,flexibleWidth:c,flexibleMaxHeight:u,inputBoxStyles:s.inputBoxStyles})),this.preserveCase=this._register(new U2t(Object.assign({appendTitle:o,isChecked:!1},s.toggleStyles))),this._register(this.preserveCase.onChange(f=>{this._onDidOptionChange.fire(f),!f&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.preserveCase.onKeyDown(f=>{this._onPreserveCaseKeyDown.fire(f)})),this._showOptionButtons?this.cachedOptionsWidth=this.preserveCase.width():this.cachedOptionsWidth=0;const d=[this.preserveCase.domNode];this.onkeydown(this.domNode,f=>{if(f.equals(15)||f.equals(17)||f.equals(9)){const p=d.indexOf(document.activeElement);if(p>=0){let g=-1;f.equals(17)?g=(p+1)%d.length:f.equals(15)&&(p===0?g=d.length-1:g=p-1),f.equals(9)?(d[p].blur(),this.inputBox.focus()):g>=0&&d[g].focus(),Nn.stop(f,!0)}}});const h=document.createElement("div");h.className="controls",h.style.display=this._showOptionButtons?"block":"none",h.appendChild(this.preserveCase.domNode),this.domNode.appendChild(h),e==null||e.appendChild(this.domNode),this.onkeydown(this.inputBox.inputElement,f=>this._onKeyDown.fire(f)),this.onkeyup(this.inputBox.inputElement,f=>this._onKeyUp.fire(f)),this.oninput(this.inputBox.inputElement,f=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,f=>this._onMouseDown.fire(f))}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.preserveCase.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.preserveCase.disable()}setEnabled(e){e?this.enable():this.disable()}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getPreserveCase(){return this.preserveCase.checked}setPreserveCase(e){this.preserveCase.checked=e}focusOnPreserve(){this.preserveCase.focus()}validate(){var e;(e=this.inputBox)===null||e===void 0||e.validate()}set width(e){this.inputBox.paddingRight=this.cachedOptionsWidth,this.domNode.style.width=e+"px"}dispose(){super.dispose()}}var gMe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},mMe=function(i,e){return function(n,r){e(n,r,i)}};const mle=new yt("suggestWidgetVisible",!1,L("suggestWidgetVisible","Whether suggestion are visible")),_le="historyNavigationWidgetFocus",_Me="historyNavigationForwardsEnabled",vMe="historyNavigationBackwardsEnabled";let wv;const z6=[];function bMe(i,e){if(z6.includes(e))throw new Error("Cannot register the same widget multiple times");z6.push(e);const n=new Xe,r=new yt(_le,!1).bindTo(i),s=new yt(_Me,!0).bindTo(i),o=new yt(vMe,!0).bindTo(i),a=()=>{r.set(!0),wv=e},l=()=>{r.set(!1),wv===e&&(wv=void 0)};return e.element===document.activeElement&&a(),n.add(e.onDidFocus(()=>a())),n.add(e.onDidBlur(()=>l())),n.add(gn(()=>{z6.splice(z6.indexOf(e),1),l()})),{historyNavigationForwardsEnablement:s,historyNavigationBackwardsEnablement:o,dispose(){n.dispose()}}}let dne=class extends pRe{constructor(e,n,r,s){super(e,n,r);const o=this._register(s.createScoped(this.inputBox.element));this._register(bMe(o,this.inputBox))}};dne=gMe([mMe(3,mn)],dne);let hne=class extends q2t{constructor(e,n,r,s,o=!1){super(e,n,o,r);const a=this._register(s.createScoped(this.inputBox.element));this._register(bMe(a,this.inputBox))}};hne=gMe([mMe(3,mn)],hne);Sc.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:ze.and(ze.has(_le),ze.equals(vMe,!0),ze.not("isComposing"),mle.isEqualTo(!1)),primary:16,secondary:[528],handler:i=>{wv==null||wv.showPreviousValue()}});Sc.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:ze.and(ze.has(_le),ze.equals(_Me,!0),ze.not("isComposing"),mle.isEqualTo(!1)),primary:18,secondary:[530],handler:i=>{wv==null||wv.showNextValue()}});function O0e(i){var e,n;return((e=i.lookupKeybinding("history.showPrevious"))===null||e===void 0?void 0:e.getElectronAccelerator())==="Up"&&((n=i.lookupKeybinding("history.showNext"))===null||n===void 0?void 0:n.getElectronAccelerator())==="Down"}var K2t=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const G2t=ws("find-selection",lt.selection,L("findSelectionIcon","Icon for 'Find in Selection' in the editor find widget.")),F0e=ws("find-collapsed",lt.chevronRight,L("findCollapsedIcon","Icon to indicate that the editor find widget is collapsed.")),B0e=ws("find-expanded",lt.chevronDown,L("findExpandedIcon","Icon to indicate that the editor find widget is expanded.")),X2t=ws("find-replace",lt.replace,L("findReplaceIcon","Icon for 'Replace' in the editor find widget.")),Y2t=ws("find-replace-all",lt.replaceAll,L("findReplaceAllIcon","Icon for 'Replace All' in the editor find widget.")),Z2t=ws("find-previous-match",lt.arrowUp,L("findPreviousMatchIcon","Icon for 'Find Previous' in the editor find widget.")),Q2t=ws("find-next-match",lt.arrowDown,L("findNextMatchIcon","Icon for 'Find Next' in the editor find widget.")),J2t=L("label.findDialog","Find / Replace"),eEt=L("label.find","Find"),tEt=L("placeholder.find","Find"),nEt=L("label.previousMatchButton","Previous Match"),iEt=L("label.nextMatchButton","Next Match"),rEt=L("label.toggleSelectionFind","Find in Selection"),sEt=L("label.closeButton","Close"),oEt=L("label.replace","Replace"),aEt=L("placeholder.replace","Replace"),lEt=L("label.replaceButton","Replace"),cEt=L("label.replaceAllButton","Replace All"),uEt=L("label.toggleReplaceButton","Toggle Replace"),dEt=L("title.matchesCountLimit","Only the first {0} results are highlighted, but all find operations work on the entire text.",Dy),hEt=L("label.matchesLocation","{0} of {1}"),j0e=L("label.noResults","No results"),Wg=419,fEt=275,pEt=fEt-54;let cA=69;const gEt=33,W0e="ctrlEnterReplaceAll.windows.donotask",$0e=ri?256:2048;class SK{constructor(e){this.afterLineNumber=e,this.heightInPx=gEt,this.suppressMouseDown=!1,this.domNode=document.createElement("div"),this.domNode.className="dock-find-viewzone"}}function z0e(i,e,n){const r=!!e.match(/\n/);if(n&&r&&n.selectionStart>0){i.stopPropagation();return}}function V0e(i,e,n){const r=!!e.match(/\n/);if(n&&r&&n.selectionEndthis._updateHistoryDelayer.cancel())),this._register(this._state.onFindReplaceStateChange(d=>this._onStateChanged(d))),this._buildDomNode(),this._updateButtons(),this._tryUpdateWidgetWidth(),this._findInput.inputBox.layout(),this._register(this._codeEditor.onDidChangeConfiguration(d=>{if(d.hasChanged(90)&&(this._codeEditor.getOption(90)&&this._state.change({isReplaceRevealed:!1},!1),this._updateButtons()),d.hasChanged(143)&&this._tryUpdateWidgetWidth(),d.hasChanged(2)&&this.updateAccessibilitySupport(),d.hasChanged(41)){const h=this._codeEditor.getOption(41).loop;this._state.change({loop:h},!1);const f=this._codeEditor.getOption(41).addExtraSpaceOnTop;f&&!this._viewZone&&(this._viewZone=new SK(0),this._showViewZone()),!f&&this._viewZone&&this._removeViewZone()}})),this.updateAccessibilitySupport(),this._register(this._codeEditor.onDidChangeCursorSelection(()=>{this._isVisible&&this._updateToggleSelectionFindButton()})),this._register(this._codeEditor.onDidFocusEditorWidget(()=>K2t(this,void 0,void 0,function*(){if(this._isVisible){const d=yield this._controller.getGlobalBufferTerm();d&&d!==this._state.searchString&&(this._state.change({searchString:d},!1),this._findInput.select())}}))),this._findInputFocused=Az.bindTo(a),this._findFocusTracker=this._register(Gm(this._findInput.inputBox.inputElement)),this._register(this._findFocusTracker.onDidFocus(()=>{this._findInputFocused.set(!0),this._updateSearchScope()})),this._register(this._findFocusTracker.onDidBlur(()=>{this._findInputFocused.set(!1)})),this._replaceInputFocused=gle.bindTo(a),this._replaceFocusTracker=this._register(Gm(this._replaceInput.inputBox.inputElement)),this._register(this._replaceFocusTracker.onDidFocus(()=>{this._replaceInputFocused.set(!0),this._updateSearchScope()})),this._register(this._replaceFocusTracker.onDidBlur(()=>{this._replaceInputFocused.set(!1)})),this._codeEditor.addOverlayWidget(this),this._codeEditor.getOption(41).addExtraSpaceOnTop&&(this._viewZone=new SK(0)),this._register(this._codeEditor.onDidChangeModel(()=>{this._isVisible&&(this._viewZoneId=void 0)})),this._register(this._codeEditor.onDidScrollChange(d=>{if(d.scrollTopChanged){this._layoutViewZone();return}setTimeout(()=>{this._layoutViewZone()},0)}))}getId(){return Mz.ID}getDomNode(){return this._domNode}getPosition(){return this._isVisible?{preference:0}:null}_onStateChanged(e){if(e.searchString){try{this._ignoreChangeEvent=!0,this._findInput.setValue(this._state.searchString)}finally{this._ignoreChangeEvent=!1}this._updateButtons()}if(e.replaceString&&(this._replaceInput.inputBox.value=this._state.replaceString),e.isRevealed&&(this._state.isRevealed?this._reveal():this._hide(!0)),e.isReplaceRevealed&&(this._state.isReplaceRevealed?!this._codeEditor.getOption(90)&&!this._isReplaceVisible&&(this._isReplaceVisible=!0,this._replaceInput.width=dc(this._findInput.domNode),this._updateButtons(),this._replaceInput.inputBox.layout()):this._isReplaceVisible&&(this._isReplaceVisible=!1,this._updateButtons())),(e.isRevealed||e.isReplaceRevealed)&&(this._state.isRevealed||this._state.isReplaceRevealed)&&this._tryUpdateHeight()&&this._showViewZone(),e.isRegex&&this._findInput.setRegex(this._state.isRegex),e.wholeWord&&this._findInput.setWholeWords(this._state.wholeWord),e.matchCase&&this._findInput.setCaseSensitive(this._state.matchCase),e.preserveCase&&this._replaceInput.setPreserveCase(this._state.preserveCase),e.searchScope&&(this._state.searchScope?this._toggleSelectionFind.checked=!0:this._toggleSelectionFind.checked=!1,this._updateToggleSelectionFindButton()),e.searchString||e.matchesCount||e.matchesPosition){const n=this._state.searchString.length>0&&this._state.matchesCount===0;this._domNode.classList.toggle("no-results",n),this._updateMatchesCount(),this._updateButtons()}(e.searchString||e.currentMatch)&&this._layoutViewZone(),e.updateHistory&&this._delayedUpdateHistory(),e.loop&&this._updateButtons()}_delayedUpdateHistory(){this._updateHistoryDelayer.trigger(this._updateHistory.bind(this)).then(void 0,Ln)}_updateHistory(){this._state.searchString&&this._findInput.inputBox.addToHistory(),this._state.replaceString&&this._replaceInput.inputBox.addToHistory()}_updateMatchesCount(){this._matchesCount.style.minWidth=cA+"px",this._state.matchesCount>=Dy?this._matchesCount.title=dEt:this._matchesCount.title="",this._matchesCount.firstChild&&this._matchesCount.removeChild(this._matchesCount.firstChild);let e;if(this._state.matchesCount>0){let n=String(this._state.matchesCount);this._state.matchesCount>=Dy&&(n+="+");let r=String(this._state.matchesPosition);r==="0"&&(r="?"),e=ox(hEt,r,n)}else e=j0e;this._matchesCount.appendChild(document.createTextNode(e)),Ua(this._getAriaLabel(e,this._state.currentMatch,this._state.searchString)),cA=Math.max(cA,this._matchesCount.clientWidth)}_getAriaLabel(e,n,r){if(e===j0e)return r===""?L("ariaSearchNoResultEmpty","{0} found",e):L("ariaSearchNoResult","{0} found for '{1}'",e,r);if(n){const s=L("ariaSearchNoResultWithLineNum","{0} found for '{1}', at {2}",e,r,n.startLineNumber+":"+n.startColumn),o=this._codeEditor.getModel();return o&&n.startLineNumber<=o.getLineCount()&&n.startLineNumber>=1?`${o.getLineContent(n.startLineNumber)}, ${s}`:s}return L("ariaSearchNoResultWithLineNumNoCurrentMatch","{0} found for '{1}'",e,r)}_updateToggleSelectionFindButton(){const e=this._codeEditor.getSelection(),n=e?e.startLineNumber!==e.endLineNumber||e.startColumn!==e.endColumn:!1,r=this._toggleSelectionFind.checked;this._isVisible&&(r||n)?this._toggleSelectionFind.enable():this._toggleSelectionFind.disable()}_updateButtons(){this._findInput.setEnabled(this._isVisible),this._replaceInput.setEnabled(this._isVisible&&this._isReplaceVisible),this._updateToggleSelectionFindButton(),this._closeBtn.setEnabled(this._isVisible);const e=this._state.searchString.length>0,n=!!this._state.matchesCount;this._prevBtn.setEnabled(this._isVisible&&e&&n&&this._state.canNavigateBack()),this._nextBtn.setEnabled(this._isVisible&&e&&n&&this._state.canNavigateForward()),this._replaceBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),this._replaceAllBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&e),this._domNode.classList.toggle("replaceToggled",this._isReplaceVisible),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible);const r=!this._codeEditor.getOption(90);this._toggleReplaceBtn.setEnabled(this._isVisible&&r)}_reveal(){if(this._revealTimeouts.forEach(e=>{clearTimeout(e)}),this._revealTimeouts=[],!this._isVisible){this._isVisible=!0;const e=this._codeEditor.getSelection();switch(this._codeEditor.getOption(41).autoFindInSelection){case"always":this._toggleSelectionFind.checked=!0;break;case"never":this._toggleSelectionFind.checked=!1;break;case"multiline":{const r=!!e&&e.startLineNumber!==e.endLineNumber;this._toggleSelectionFind.checked=r;break}}this._tryUpdateWidgetWidth(),this._updateButtons(),this._revealTimeouts.push(setTimeout(()=>{this._domNode.classList.add("visible"),this._domNode.setAttribute("aria-hidden","false")},0)),this._revealTimeouts.push(setTimeout(()=>{this._findInput.validate()},200)),this._codeEditor.layoutOverlayWidget(this);let n=!0;if(this._codeEditor.getOption(41).seedSearchStringFromSelection&&e){const r=this._codeEditor.getDomNode();if(r){const s=no(r),o=this._codeEditor.getScrolledVisiblePosition(e.getStartPosition()),a=s.left+(o?o.left:0),l=o?o.top:0;if(this._viewZone&&le.startLineNumber&&(n=!1);const c=yEe(this._domNode).left;a>c&&(n=!1);const u=this._codeEditor.getScrolledVisiblePosition(e.getEndPosition());s.left+(u?u.left:0)>c&&(n=!1)}}}this._showViewZone(n)}}_hide(e){this._revealTimeouts.forEach(n=>{clearTimeout(n)}),this._revealTimeouts=[],this._isVisible&&(this._isVisible=!1,this._updateButtons(),this._domNode.classList.remove("visible"),this._domNode.setAttribute("aria-hidden","true"),this._findInput.clearMessage(),e&&this._codeEditor.focus(),this._codeEditor.layoutOverlayWidget(this),this._removeViewZone())}_layoutViewZone(e){if(!this._codeEditor.getOption(41).addExtraSpaceOnTop){this._removeViewZone();return}if(!this._isVisible)return;const r=this._viewZone;this._viewZoneId!==void 0||!r||this._codeEditor.changeViewZones(s=>{r.heightInPx=this._getHeight(),this._viewZoneId=s.addZone(r),this._codeEditor.setScrollTop(e||this._codeEditor.getScrollTop()+r.heightInPx)})}_showViewZone(e=!0){if(!this._isVisible||!this._codeEditor.getOption(41).addExtraSpaceOnTop)return;this._viewZone===void 0&&(this._viewZone=new SK(0));const r=this._viewZone;this._codeEditor.changeViewZones(s=>{if(this._viewZoneId!==void 0){const o=this._getHeight();if(o===r.heightInPx)return;const a=o-r.heightInPx;r.heightInPx=o,s.layoutZone(this._viewZoneId),e&&this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()+a);return}else{let o=this._getHeight();if(o-=this._codeEditor.getOption(83).top,o<=0)return;r.heightInPx=o,this._viewZoneId=s.addZone(r),e&&this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()+o)}})}_removeViewZone(){this._codeEditor.changeViewZones(e=>{this._viewZoneId!==void 0&&(e.removeZone(this._viewZoneId),this._viewZoneId=void 0,this._viewZone&&(this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()-this._viewZone.heightInPx),this._viewZone=void 0))})}_tryUpdateWidgetWidth(){if(!this._isVisible||!Zse(this._domNode))return;const e=this._codeEditor.getLayoutInfo();if(e.contentWidth<=0){this._domNode.classList.add("hiddenEditor");return}else this._domNode.classList.contains("hiddenEditor")&&this._domNode.classList.remove("hiddenEditor");const r=e.width,s=e.minimap.minimapWidth;let o=!1,a=!1,l=!1;if(this._resized&&dc(this._domNode)>Wg){this._domNode.style.maxWidth=`${r-28-s-15}px`,this._replaceInput.width=dc(this._findInput.domNode);return}if(Wg+28+s>=r&&(a=!0),Wg+28+s-cA>=r&&(l=!0),Wg+28+s-cA>=r+50&&(o=!0),this._domNode.classList.toggle("collapsed-find-widget",o),this._domNode.classList.toggle("narrow-find-widget",l),this._domNode.classList.toggle("reduced-find-widget",a),!l&&!o&&(this._domNode.style.maxWidth=`${r-28-s-15}px`),this._findInput.layout({collapsedFindWidget:o,narrowFindWidget:l,reducedFindWidget:a}),this._resized){const c=this._findInput.inputBox.element.clientWidth;c>0&&(this._replaceInput.width=c)}else this._isReplaceVisible&&(this._replaceInput.width=dc(this._findInput.domNode))}_getHeight(){let e=0;return e+=4,e+=this._findInput.inputBox.height+2,this._isReplaceVisible&&(e+=4,e+=this._replaceInput.inputBox.height+2),e+=4,e}_tryUpdateHeight(){const e=this._getHeight();return this._cachedHeight!==null&&this._cachedHeight===e?!1:(this._cachedHeight=e,this._domNode.style.height=`${e}px`,!0)}focusFindInput(){this._findInput.select(),this._findInput.focus()}focusReplaceInput(){this._replaceInput.select(),this._replaceInput.focus()}highlightFindOptions(){this._findInput.highlightFindOptions()}_updateSearchScope(){if(this._codeEditor.hasModel()&&this._toggleSelectionFind.checked){const e=this._codeEditor.getSelections();e.map(n=>{n.endColumn===1&&n.endLineNumber>n.startLineNumber&&(n=n.setEndPosition(n.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(n.endLineNumber-1)));const r=this._state.currentMatch;return n.startLineNumber!==n.endLineNumber&&!J.equalsRange(n,r)?n:null}).filter(n=>!!n),e.length&&this._state.change({searchScope:e},!0)}}_onFindInputMouseDown(e){e.middleButton&&e.stopPropagation()}_onFindInputKeyDown(e){if(e.equals($0e|3))if(this._keybindingService.dispatchEvent(e,e.target)){e.preventDefault();return}else{this._findInput.inputBox.insertAtCursor(` `),e.preventDefault();return}if(e.equals(2)){this._isReplaceVisible?this._replaceInput.focus():this._findInput.focusOnCaseSensitive(),e.preventDefault();return}if(e.equals(2066)){this._codeEditor.focus(),e.preventDefault();return}if(e.equals(16))return z0e(e,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea"));if(e.equals(18))return V0e(e,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea"))}_onReplaceInputKeyDown(e){if(e.equals($0e|3))if(this._keybindingService.dispatchEvent(e,e.target)){e.preventDefault();return}else{Aa&&Um&&!this._ctrlEnterReplaceAllWarningPrompted&&(this._notificationService.info(L("ctrlEnter.keybindingChanged","Ctrl+Enter now inserts line break instead of replacing all. You can modify the keybinding for editor.action.replaceAll to override this behavior.")),this._ctrlEnterReplaceAllWarningPrompted=!0,this._storageService.store(W0e,!0,0,0)),this._replaceInput.inputBox.insertAtCursor(` `),e.preventDefault();return}if(e.equals(2)){this._findInput.focusOnCaseSensitive(),e.preventDefault();return}if(e.equals(1026)){this._findInput.focus(),e.preventDefault();return}if(e.equals(2066)){this._codeEditor.focus(),e.preventDefault();return}if(e.equals(16))return z0e(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea"));if(e.equals(18))return V0e(e,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea"))}getVerticalSashLeft(e){return 0}_keybindingLabelFor(e){const n=this._keybindingService.lookupKeybinding(e);return n?` (${n.getLabel()})`:""}_buildDomNode(){this._findInput=this._register(new dne(null,this._contextViewProvider,{width:pEt,label:eEt,placeholder:tEt,appendCaseSensitiveLabel:this._keybindingLabelFor(mr.ToggleCaseSensitiveCommand),appendWholeWordsLabel:this._keybindingLabelFor(mr.ToggleWholeWordCommand),appendRegexLabel:this._keybindingLabelFor(mr.ToggleRegexCommand),validation:c=>{if(c.length===0||!this._findInput.getRegex())return null;try{return new RegExp(c,"gu"),null}catch(u){return{content:u.message}}},flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118,showCommonFindToggles:!0,showHistoryHint:()=>O0e(this._keybindingService),inputBoxStyles:T7,toggleStyles:I7},this._contextKeyService)),this._findInput.setRegex(!!this._state.isRegex),this._findInput.setCaseSensitive(!!this._state.matchCase),this._findInput.setWholeWords(!!this._state.wholeWord),this._register(this._findInput.onKeyDown(c=>this._onFindInputKeyDown(c))),this._register(this._findInput.inputBox.onDidChange(()=>{this._ignoreChangeEvent||this._state.change({searchString:this._findInput.getValue()},!0)})),this._register(this._findInput.onDidOptionChange(()=>{this._state.change({isRegex:this._findInput.getRegex(),wholeWord:this._findInput.getWholeWords(),matchCase:this._findInput.getCaseSensitive()},!0)})),this._register(this._findInput.onCaseSensitiveKeyDown(c=>{c.equals(1026)&&this._isReplaceVisible&&(this._replaceInput.focus(),c.preventDefault())})),this._register(this._findInput.onRegexKeyDown(c=>{c.equals(2)&&this._isReplaceVisible&&(this._replaceInput.focusOnPreserve(),c.preventDefault())})),this._register(this._findInput.inputBox.onDidHeightChange(c=>{this._tryUpdateHeight()&&this._showViewZone()})),_l&&this._register(this._findInput.onMouseDown(c=>this._onFindInputMouseDown(c))),this._matchesCount=document.createElement("div"),this._matchesCount.className="matchesCount",this._updateMatchesCount(),this._prevBtn=this._register(new uD({label:nEt+this._keybindingLabelFor(mr.PreviousMatchFindAction),icon:Z2t,onTrigger:()=>{fS(this._codeEditor.getAction(mr.PreviousMatchFindAction)).run().then(void 0,Ln)}})),this._nextBtn=this._register(new uD({label:iEt+this._keybindingLabelFor(mr.NextMatchFindAction),icon:Q2t,onTrigger:()=>{fS(this._codeEditor.getAction(mr.NextMatchFindAction)).run().then(void 0,Ln)}}));const r=document.createElement("div");r.className="find-part",r.appendChild(this._findInput.domNode);const s=document.createElement("div");s.className="find-actions",r.appendChild(s),s.appendChild(this._matchesCount),s.appendChild(this._prevBtn.domNode),s.appendChild(this._nextBtn.domNode),this._toggleSelectionFind=this._register(new qI({icon:G2t,title:rEt+this._keybindingLabelFor(mr.ToggleSearchScopeCommand),isChecked:!1,inputActiveOptionBackground:wt(mS),inputActiveOptionBorder:wt(goe),inputActiveOptionForeground:wt(moe)})),this._register(this._toggleSelectionFind.onChange(()=>{if(this._toggleSelectionFind.checked){if(this._codeEditor.hasModel()){const c=this._codeEditor.getSelections();c.map(u=>(u.endColumn===1&&u.endLineNumber>u.startLineNumber&&(u=u.setEndPosition(u.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(u.endLineNumber-1))),u.isEmpty()?null:u)).filter(u=>!!u),c.length&&this._state.change({searchScope:c},!0)}}else this._state.change({searchScope:null},!0)})),s.appendChild(this._toggleSelectionFind.domNode),this._closeBtn=this._register(new uD({label:sEt+this._keybindingLabelFor(mr.CloseFindWidgetCommand),icon:FRe,onTrigger:()=>{this._state.change({isRevealed:!1,searchScope:null},!1)},onKeyDown:c=>{c.equals(2)&&this._isReplaceVisible&&(this._replaceBtn.isEnabled()?this._replaceBtn.focus():this._codeEditor.focus(),c.preventDefault())}})),this._replaceInput=this._register(new hne(null,void 0,{label:oEt,placeholder:aEt,appendPreserveCaseLabel:this._keybindingLabelFor(mr.TogglePreserveCaseCommand),history:[],flexibleHeight:!0,flexibleWidth:!0,flexibleMaxHeight:118,showHistoryHint:()=>O0e(this._keybindingService),inputBoxStyles:T7,toggleStyles:I7},this._contextKeyService,!0)),this._replaceInput.setPreserveCase(!!this._state.preserveCase),this._register(this._replaceInput.onKeyDown(c=>this._onReplaceInputKeyDown(c))),this._register(this._replaceInput.inputBox.onDidChange(()=>{this._state.change({replaceString:this._replaceInput.inputBox.value},!1)})),this._register(this._replaceInput.inputBox.onDidHeightChange(c=>{this._isReplaceVisible&&this._tryUpdateHeight()&&this._showViewZone()})),this._register(this._replaceInput.onDidOptionChange(()=>{this._state.change({preserveCase:this._replaceInput.getPreserveCase()},!0)})),this._register(this._replaceInput.onPreserveCaseKeyDown(c=>{c.equals(2)&&(this._prevBtn.isEnabled()?this._prevBtn.focus():this._nextBtn.isEnabled()?this._nextBtn.focus():this._toggleSelectionFind.enabled?this._toggleSelectionFind.focus():this._closeBtn.isEnabled()&&this._closeBtn.focus(),c.preventDefault())})),this._replaceBtn=this._register(new uD({label:lEt+this._keybindingLabelFor(mr.ReplaceOneAction),icon:X2t,onTrigger:()=>{this._controller.replace()},onKeyDown:c=>{c.equals(1026)&&(this._closeBtn.focus(),c.preventDefault())}})),this._replaceAllBtn=this._register(new uD({label:cEt+this._keybindingLabelFor(mr.ReplaceAllAction),icon:Y2t,onTrigger:()=>{this._controller.replaceAll()}}));const o=document.createElement("div");o.className="replace-part",o.appendChild(this._replaceInput.domNode);const a=document.createElement("div");a.className="replace-actions",o.appendChild(a),a.appendChild(this._replaceBtn.domNode),a.appendChild(this._replaceAllBtn.domNode),this._toggleReplaceBtn=this._register(new uD({label:uEt,className:"codicon toggle left",onTrigger:()=>{this._state.change({isReplaceRevealed:!this._isReplaceVisible},!1),this._isReplaceVisible&&(this._replaceInput.width=dc(this._findInput.domNode),this._replaceInput.inputBox.layout()),this._showViewZone()}})),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible),this._domNode=document.createElement("div"),this._domNode.className="editor-widget find-widget",this._domNode.setAttribute("aria-hidden","true"),this._domNode.ariaLabel=J2t,this._domNode.role="dialog",this._domNode.style.width=`${Wg}px`,this._domNode.appendChild(this._toggleReplaceBtn.domNode),this._domNode.appendChild(r),this._domNode.appendChild(this._closeBtn.domNode),this._domNode.appendChild(o),this._resizeSash=new ja(this._domNode,this,{orientation:0,size:2}),this._resized=!1;let l=Wg;this._register(this._resizeSash.onDidStart(()=>{l=dc(this._domNode)})),this._register(this._resizeSash.onDidChange(c=>{this._resized=!0;const u=l+c.startX-c.currentX;if(ud||(this._domNode.style.width=`${u}px`,this._isReplaceVisible&&(this._replaceInput.width=dc(this._findInput.domNode)),this._findInput.inputBox.layout(),this._tryUpdateHeight())})),this._register(this._resizeSash.onDidReset(()=>{const c=dc(this._domNode);if(c{this._opts.onTrigger(),r.preventDefault()}),this.onkeydown(this._domNode,r=>{var s,o;if(r.equals(10)||r.equals(3)){this._opts.onTrigger(),r.preventDefault();return}(o=(s=this._opts).onKeyDown)===null||o===void 0||o.call(s,r)})}get domNode(){return this._domNode}isEnabled(){return this._domNode.tabIndex>=0}focus(){this._domNode.focus()}setEnabled(e){this._domNode.classList.toggle("disabled",!e),this._domNode.setAttribute("aria-disabled",String(!e)),this._domNode.tabIndex=e?0:-1}setExpanded(e){this._domNode.setAttribute("aria-expanded",String(!!e)),e?(this._domNode.classList.remove(...en.asClassNameArray(F0e)),this._domNode.classList.add(...en.asClassNameArray(B0e))):(this._domNode.classList.remove(...en.asClassNameArray(B0e)),this._domNode.classList.add(...en.asClassNameArray(F0e)))}}Of((i,e)=>{const n=(m,_)=>{_&&e.addRule(`.monaco-editor ${m} { background-color: ${_}; }`)};n(".findMatch",i.getColor(xm)),n(".currentFindMatch",i.getColor(Wdt)),n(".findScope",i.getColor($dt));const r=i.getColor(cs);n(".find-widget",r);const s=i.getColor(bm);s&&e.addRule(`.monaco-editor .find-widget { box-shadow: 0 0 8px 2px ${s}; }`);const o=i.getColor(poe);o&&e.addRule(`.monaco-editor .find-widget { border-left: 1px solid ${o}; border-right: 1px solid ${o}; border-bottom: 1px solid ${o}; }`);const a=i.getColor(by);a&&e.addRule(`.monaco-editor .findMatch { border: 1px ${Vp(i.type)?"dotted":"solid"} ${a}; box-sizing: border-box; }`);const l=i.getColor(zdt);l&&e.addRule(`.monaco-editor .currentFindMatch { border: 2px solid ${l}; padding: 1px; box-sizing: border-box; }`);const c=i.getColor(Vdt);c&&e.addRule(`.monaco-editor .findScope { border: 1px ${Vp(i.type)?"dashed":"solid"} ${c}; }`);const u=i.getColor(Jn);u&&e.addRule(`.monaco-editor .find-widget { border: 1px solid ${u}; }`);const d=i.getColor(Cm);d&&e.addRule(`.monaco-editor .find-widget { color: ${d}; }`);const h=i.getColor(cdt);h&&e.addRule(`.monaco-editor .find-widget.no-results .matchesCount { color: ${h}; }`);const f=i.getColor(Rdt);if(f)e.addRule(`.monaco-editor .find-widget .monaco-sash { background-color: ${f}; }`);else{const m=i.getColor(Sm);m&&e.addRule(`.monaco-editor .find-widget .monaco-sash { background-color: ${m}; }`)}const p=i.getColor(TJ);p&&e.addRule(` .monaco-editor .find-widget .button:not(.disabled):hover, .monaco-editor .find-widget .codicon-find-selection:hover { background-color: ${p} !important; } `);const g=i.getColor(Qu);g&&e.addRule(`.monaco-editor .find-widget .monaco-inputbox.synthetic-focus { outline-color: ${g}; }`)});var yMe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},vp=function(i,e){return function(n,r){e(n,r,i)}},Ix=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},fne;const mEt=524288;function pne(i,e="single",n=!1){if(!i.hasModel())return null;const r=i.getSelection();if(e==="single"&&r.startLineNumber===r.endLineNumber||e==="multiple"){if(r.isEmpty()){const s=i.getConfiguredWordAtPosition(r.getStartPosition());if(s&&n===!1)return s.word}else if(i.getModel().getValueLengthInRange(r)this._onStateChanged(a))),this._model=null,this._register(this._editor.onDidChangeModel(()=>{const a=this._editor.getModel()&&this._state.isRevealed;this.disposeModel(),this._state.change({searchScope:null,matchCase:this._storageService.getBoolean("editor.matchCase",1,!1),wholeWord:this._storageService.getBoolean("editor.wholeWord",1,!1),isRegex:this._storageService.getBoolean("editor.isRegex",1,!1),preserveCase:this._storageService.getBoolean("editor.preserveCase",1,!1)},!1),a&&this._start({forceRevealReplace:!1,seedSearchStringFromSelection:"none",seedSearchStringFromNonEmptySelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!1,updateSearchScope:!1,loop:this._editor.getOption(41).loop})}))}dispose(){this.disposeModel(),super.dispose()}disposeModel(){this._model&&(this._model.dispose(),this._model=null)}_onStateChanged(e){this.saveQueryState(e),e.isRevealed&&(this._state.isRevealed?this._findWidgetVisible.set(!0):(this._findWidgetVisible.reset(),this.disposeModel())),e.searchString&&this.setGlobalBufferTerm(this._state.searchString)}saveQueryState(e){e.isRegex&&this._storageService.store("editor.isRegex",this._state.actualIsRegex,1,1),e.wholeWord&&this._storageService.store("editor.wholeWord",this._state.actualWholeWord,1,1),e.matchCase&&this._storageService.store("editor.matchCase",this._state.actualMatchCase,1,1),e.preserveCase&&this._storageService.store("editor.preserveCase",this._state.actualPreserveCase,1,1)}loadQueryState(){this._state.change({matchCase:this._storageService.getBoolean("editor.matchCase",1,this._state.matchCase),wholeWord:this._storageService.getBoolean("editor.wholeWord",1,this._state.wholeWord),isRegex:this._storageService.getBoolean("editor.isRegex",1,this._state.isRegex),preserveCase:this._storageService.getBoolean("editor.preserveCase",1,this._state.preserveCase)},!1)}isFindInputFocused(){return!!Az.getValue(this._contextKeyService)}getState(){return this._state}closeFindWidget(){this._state.change({isRevealed:!1,searchScope:null},!1),this._editor.focus()}toggleCaseSensitive(){this._state.change({matchCase:!this._state.matchCase},!1),this._state.isRevealed||this.highlightFindOptions()}toggleWholeWords(){this._state.change({wholeWord:!this._state.wholeWord},!1),this._state.isRevealed||this.highlightFindOptions()}toggleRegex(){this._state.change({isRegex:!this._state.isRegex},!1),this._state.isRevealed||this.highlightFindOptions()}togglePreserveCase(){this._state.change({preserveCase:!this._state.preserveCase},!1),this._state.isRevealed||this.highlightFindOptions()}toggleSearchScope(){if(this._state.searchScope)this._state.change({searchScope:null},!0);else if(this._editor.hasModel()){const e=this._editor.getSelections();e.map(n=>(n.endColumn===1&&n.endLineNumber>n.startLineNumber&&(n=n.setEndPosition(n.endLineNumber-1,this._editor.getModel().getLineMaxColumn(n.endLineNumber-1))),n.isEmpty()?null:n)).filter(n=>!!n),e.length&&this._state.change({searchScope:e},!0)}}setSearchString(e){this._state.isRegex&&(e=dd(e)),this._state.change({searchString:e},!1)}highlightFindOptions(e=!1){}_start(e,n){return Ix(this,void 0,void 0,function*(){if(this.disposeModel(),!this._editor.hasModel())return;const r=Object.assign(Object.assign({},n),{isRevealed:!0});if(e.seedSearchStringFromSelection==="single"){const s=pne(this._editor,e.seedSearchStringFromSelection,e.seedSearchStringFromNonEmptySelection);s&&(this._state.isRegex?r.searchString=dd(s):r.searchString=s)}else if(e.seedSearchStringFromSelection==="multiple"&&!e.updateSearchScope){const s=pne(this._editor,e.seedSearchStringFromSelection);s&&(r.searchString=s)}if(!r.searchString&&e.seedSearchStringFromGlobalClipboard){const s=yield this.getGlobalBufferTerm();if(!this._editor.hasModel())return;s&&(r.searchString=s)}if(e.forceRevealReplace||r.isReplaceRevealed?r.isReplaceRevealed=!0:this._findWidgetVisible.get()||(r.isReplaceRevealed=!1),e.updateSearchScope){const s=this._editor.getSelections();s.some(o=>!o.isEmpty())&&(r.searchScope=s)}r.loop=e.loop,this._state.change(r,!1),this._model||(this._model=new SM(this._editor,this._state))})}start(e,n){return this._start(e,n)}moveToNextMatch(){return this._model?(this._model.moveToNextMatch(),!0):!1}moveToPrevMatch(){return this._model?(this._model.moveToPrevMatch(),!0):!1}goToMatch(e){return this._model?(this._model.moveToMatch(e),!0):!1}replace(){return this._model?(this._model.replace(),!0):!1}replaceAll(){var e;return this._model?!((e=this._editor.getModel())===null||e===void 0)&&e.isTooLargeForHeapOperation()?(this._notificationService.warn(L("too.large.for.replaceall","The file is too large to perform a replace all operation.")),!1):(this._model.replaceAll(),!0):!1}selectAllMatches(){return this._model?(this._model.selectAllMatches(),this._editor.focus(),!0):!1}getGlobalBufferTerm(){return Ix(this,void 0,void 0,function*(){return this._editor.getOption(41).globalFindClipboard&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()?this._clipboardService.readFindText():""})}setGlobalBufferTerm(e){this._editor.getOption(41).globalFindClipboard&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()&&this._clipboardService.writeFindText(e)}};Ul.ID="editor.contrib.findController";Ul=fne=yMe([vp(1,mn),vp(2,jf),vp(3,qv),vp(4,Ps)],Ul);let gne=class extends Ul{constructor(e,n,r,s,o,a,l,c){super(e,r,l,c,a),this._contextViewService=n,this._keybindingService=s,this._themeService=o,this._widget=null,this._findOptionsWidget=null}_start(e,n){const r=Object.create(null,{_start:{get:()=>super._start}});return Ix(this,void 0,void 0,function*(){this._widget||this._createFindWidget();const s=this._editor.getSelection();let o=!1;switch(this._editor.getOption(41).autoFindInSelection){case"always":o=!0;break;case"never":o=!1;break;case"multiline":{o=!!s&&s.startLineNumber!==s.endLineNumber;break}}e.updateSearchScope=e.updateSearchScope||o,yield r._start.call(this,e,n),this._widget&&(e.shouldFocus===2?this._widget.focusReplaceInput():e.shouldFocus===1&&this._widget.focusFindInput())})}highlightFindOptions(e=!1){this._widget||this._createFindWidget(),this._state.isRevealed&&!e?this._widget.highlightFindOptions():this._findOptionsWidget.highlightFindOptions()}_createFindWidget(){this._widget=this._register(new Mz(this._editor,this,this._state,this._contextViewService,this._keybindingService,this._contextKeyService,this._themeService,this._storageService,this._notificationService)),this._findOptionsWidget=this._register(new Nz(this._editor,this._state,this._keybindingService))}};gne=yMe([vp(1,Vv),vp(2,mn),vp(3,sr),vp(4,Do),vp(5,Ps),vp(6,jf),vp(7,qv)],gne);const _Et=EEe(new DEe({id:mr.StartFindAction,label:L("startFindAction","Find"),alias:"Find",precondition:ze.or(oe.focus,ze.has("editorIsOpen")),kbOpts:{kbExpr:null,primary:2084,weight:100},menuOpts:{menuId:se.MenubarEditMenu,group:"3_find",title:L({},"&&Find"),order:1}}));_Et.addImplementation(0,(i,e,n)=>{const r=Ul.get(e);return r?r.start({forceRevealReplace:!1,seedSearchStringFromSelection:e.getOption(41).seedSearchStringFromSelection!=="never"?"single":"none",seedSearchStringFromNonEmptySelection:e.getOption(41).seedSearchStringFromSelection==="selection",seedSearchStringFromGlobalClipboard:e.getOption(41).globalFindClipboard,shouldFocus:1,shouldAnimate:!0,updateSearchScope:!1,loop:e.getOption(41).loop}):!1});const vEt={description:"Open a new In-Editor Find Widget.",args:[{name:"Open a new In-Editor Find Widget args",schema:{properties:{searchString:{type:"string"},replaceString:{type:"string"},regex:{type:"boolean"},regexOverride:{type:"number",description:L("actions.find.isRegexOverride",`Overrides "Use Regular Expression" flag. The flag will not be saved for the future. 0: Do Nothing 1: True 2: False`)},wholeWord:{type:"boolean"},wholeWordOverride:{type:"number",description:L("actions.find.wholeWordOverride",`Overrides "Match Whole Word" flag. The flag will not be saved for the future. 0: Do Nothing 1: True 2: False`)},matchCase:{type:"boolean"},matchCaseOverride:{type:"number",description:L("actions.find.matchCaseOverride",`Overrides "Math Case" flag. The flag will not be saved for the future. 0: Do Nothing 1: True 2: False`)},preserveCase:{type:"boolean"},preserveCaseOverride:{type:"number",description:L("actions.find.preserveCaseOverride",`Overrides "Preserve Case" flag. The flag will not be saved for the future. 0: Do Nothing 1: True 2: False`)},findInSelection:{type:"boolean"}}}}]};class bEt extends kt{constructor(){super({id:mr.StartFindWithArgs,label:L("startFindWithArgsAction","Find With Arguments"),alias:"Find With Arguments",precondition:void 0,kbOpts:{kbExpr:null,primary:0,weight:100},description:vEt})}run(e,n,r){return Ix(this,void 0,void 0,function*(){const s=Ul.get(n);if(s){const o=r?{searchString:r.searchString,replaceString:r.replaceString,isReplaceRevealed:r.replaceString!==void 0,isRegex:r.isRegex,wholeWord:r.matchWholeWord,matchCase:r.isCaseSensitive,preserveCase:r.preserveCase}:{};yield s.start({forceRevealReplace:!1,seedSearchStringFromSelection:s.getState().searchString.length===0&&n.getOption(41).seedSearchStringFromSelection!=="never"?"single":"none",seedSearchStringFromNonEmptySelection:n.getOption(41).seedSearchStringFromSelection==="selection",seedSearchStringFromGlobalClipboard:!0,shouldFocus:1,shouldAnimate:!0,updateSearchScope:(r==null?void 0:r.findInSelection)||!1,loop:n.getOption(41).loop},o),s.setGlobalBufferTerm(s.getState().searchString)}})}}class yEt extends kt{constructor(){super({id:mr.StartFindWithSelection,label:L("startFindWithSelectionAction","Find With Selection"),alias:"Find With Selection",precondition:void 0,kbOpts:{kbExpr:null,primary:0,mac:{primary:2083},weight:100}})}run(e,n){return Ix(this,void 0,void 0,function*(){const r=Ul.get(n);r&&(yield r.start({forceRevealReplace:!1,seedSearchStringFromSelection:"multiple",seedSearchStringFromNonEmptySelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:n.getOption(41).loop}),r.setGlobalBufferTerm(r.getState().searchString))})}}class wMe extends kt{run(e,n){return Ix(this,void 0,void 0,function*(){const r=Ul.get(n);r&&!this._run(r)&&(yield r.start({forceRevealReplace:!1,seedSearchStringFromSelection:r.getState().searchString.length===0&&n.getOption(41).seedSearchStringFromSelection!=="never"?"single":"none",seedSearchStringFromNonEmptySelection:n.getOption(41).seedSearchStringFromSelection==="selection",seedSearchStringFromGlobalClipboard:!0,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:n.getOption(41).loop}),this._run(r))})}}class wEt extends wMe{constructor(){super({id:mr.NextMatchFindAction,label:L("findNextMatchAction","Find Next"),alias:"Find Next",precondition:void 0,kbOpts:[{kbExpr:oe.focus,primary:61,mac:{primary:2085,secondary:[61]},weight:100},{kbExpr:ze.and(oe.focus,Az),primary:3,weight:100}]})}_run(e){return e.moveToNextMatch()?(e.editor.pushUndoStop(),!0):!1}}class CEt extends wMe{constructor(){super({id:mr.PreviousMatchFindAction,label:L("findPreviousMatchAction","Find Previous"),alias:"Find Previous",precondition:void 0,kbOpts:[{kbExpr:oe.focus,primary:1085,mac:{primary:3109,secondary:[1085]},weight:100},{kbExpr:ze.and(oe.focus,Az),primary:1027,weight:100}]})}_run(e){return e.moveToPrevMatch()}}class SEt extends kt{constructor(){super({id:mr.GoToMatchFindAction,label:L("findMatchAction.goToMatch","Go to Match..."),alias:"Go to Match...",precondition:Kv}),this._highlightDecorations=[]}run(e,n,r){const s=Ul.get(n);if(!s)return;const o=s.getState().matchesCount;if(o<1){e.get(Ps).notify({severity:F$.Warning,message:L("findMatchAction.noResults","No matches. Try searching for something else.")});return}const l=e.get(lg).createInputBox();l.placeholder=L("findMatchAction.inputPlaceHolder","Type a number to go to a specific match (between 1 and {0})",o);const c=d=>{const h=parseInt(d);if(isNaN(h))return;const f=s.getState().matchesCount;if(h>0&&h<=f)return h-1;if(h<0&&h>=-f)return f+h},u=d=>{const h=c(d);if(typeof h=="number"){l.validationMessage=void 0,s.goToMatch(h);const f=s.getState().currentMatch;f&&this.addDecorations(n,f)}else l.validationMessage=L("findMatchAction.inputValidationMessage","Please type a number between 1 and {0}",s.getState().matchesCount),this.clearDecorations(n)};l.onDidChangeValue(d=>{u(d)}),l.onDidAccept(()=>{const d=c(l.value);typeof d=="number"?(s.goToMatch(d),l.hide()):l.validationMessage=L("findMatchAction.inputValidationMessage","Please type a number between 1 and {0}",s.getState().matchesCount)}),l.onDidHide(()=>{this.clearDecorations(n),l.dispose()}),l.show()}clearDecorations(e){e.changeDecorations(n=>{this._highlightDecorations=n.deltaDecorations(this._highlightDecorations,[])})}addDecorations(e,n){e.changeDecorations(r=>{this._highlightDecorations=r.deltaDecorations(this._highlightDecorations,[{range:n,options:{description:"find-match-quick-access-range-highlight",className:"rangeHighlight",isWholeLine:!0}},{range:n,options:{description:"find-match-quick-access-range-highlight-overview",overviewRuler:{color:Qr(TIe),position:hd.Full}}}])})}}class CMe extends kt{run(e,n){return Ix(this,void 0,void 0,function*(){const r=Ul.get(n);if(!r)return;const s=pne(n,"single",!1);s&&r.setSearchString(s),this._run(r)||(yield r.start({forceRevealReplace:!1,seedSearchStringFromSelection:"none",seedSearchStringFromNonEmptySelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:n.getOption(41).loop}),this._run(r))})}}class xEt extends CMe{constructor(){super({id:mr.NextSelectionMatchFindAction,label:L("nextSelectionMatchFindAction","Find Next Selection"),alias:"Find Next Selection",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:2109,weight:100}})}_run(e){return e.moveToNextMatch()}}class kEt extends CMe{constructor(){super({id:mr.PreviousSelectionMatchFindAction,label:L("previousSelectionMatchFindAction","Find Previous Selection"),alias:"Find Previous Selection",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:3133,weight:100}})}_run(e){return e.moveToPrevMatch()}}const LEt=EEe(new DEe({id:mr.StartFindReplaceAction,label:L("startReplace","Replace"),alias:"Replace",precondition:ze.or(oe.focus,ze.has("editorIsOpen")),kbOpts:{kbExpr:null,primary:2086,mac:{primary:2596},weight:100},menuOpts:{menuId:se.MenubarEditMenu,group:"3_find",title:L({},"&&Replace"),order:2}}));LEt.addImplementation(0,(i,e,n)=>{if(!e.hasModel()||e.getOption(90))return!1;const r=Ul.get(e);if(!r)return!1;const s=e.getSelection(),o=r.isFindInputFocused(),a=!s.isEmpty()&&s.startLineNumber===s.endLineNumber&&e.getOption(41).seedSearchStringFromSelection!=="never"&&!o,l=o||a?2:1;return r.start({forceRevealReplace:!0,seedSearchStringFromSelection:a?"single":"none",seedSearchStringFromNonEmptySelection:e.getOption(41).seedSearchStringFromSelection==="selection",seedSearchStringFromGlobalClipboard:e.getOption(41).seedSearchStringFromSelection!=="never",shouldFocus:l,shouldAnimate:!0,updateSearchScope:!1,loop:e.getOption(41).loop})});_i(Ul.ID,gne,0);rt(bEt);rt(yEt);rt(wEt);rt(CEt);rt(SEt);rt(xEt);rt(kEt);const cg=Ho.bindToContribution(Ul.get);ct(new cg({id:mr.CloseFindWidgetCommand,precondition:Kv,handler:i=>i.closeFindWidget(),kbOpts:{weight:105,kbExpr:ze.and(oe.focus,ze.not("isComposing")),primary:9,secondary:[1033]}}));ct(new cg({id:mr.ToggleCaseSensitiveCommand,precondition:void 0,handler:i=>i.toggleCaseSensitive(),kbOpts:{weight:105,kbExpr:oe.focus,primary:O6.primary,mac:O6.mac,win:O6.win,linux:O6.linux}}));ct(new cg({id:mr.ToggleWholeWordCommand,precondition:void 0,handler:i=>i.toggleWholeWords(),kbOpts:{weight:105,kbExpr:oe.focus,primary:F6.primary,mac:F6.mac,win:F6.win,linux:F6.linux}}));ct(new cg({id:mr.ToggleRegexCommand,precondition:void 0,handler:i=>i.toggleRegex(),kbOpts:{weight:105,kbExpr:oe.focus,primary:B6.primary,mac:B6.mac,win:B6.win,linux:B6.linux}}));ct(new cg({id:mr.ToggleSearchScopeCommand,precondition:void 0,handler:i=>i.toggleSearchScope(),kbOpts:{weight:105,kbExpr:oe.focus,primary:j6.primary,mac:j6.mac,win:j6.win,linux:j6.linux}}));ct(new cg({id:mr.TogglePreserveCaseCommand,precondition:void 0,handler:i=>i.togglePreserveCase(),kbOpts:{weight:105,kbExpr:oe.focus,primary:W6.primary,mac:W6.mac,win:W6.win,linux:W6.linux}}));ct(new cg({id:mr.ReplaceOneAction,precondition:Kv,handler:i=>i.replace(),kbOpts:{weight:105,kbExpr:oe.focus,primary:3094}}));ct(new cg({id:mr.ReplaceOneAction,precondition:Kv,handler:i=>i.replace(),kbOpts:{weight:105,kbExpr:ze.and(oe.focus,gle),primary:3}}));ct(new cg({id:mr.ReplaceAllAction,precondition:Kv,handler:i=>i.replaceAll(),kbOpts:{weight:105,kbExpr:oe.focus,primary:2563}}));ct(new cg({id:mr.ReplaceAllAction,precondition:Kv,handler:i=>i.replaceAll(),kbOpts:{weight:105,kbExpr:ze.and(oe.focus,gle),primary:void 0,mac:{primary:2051}}}));ct(new cg({id:mr.SelectAllMatchesAction,precondition:Kv,handler:i=>i.selectAllMatches(),kbOpts:{weight:105,kbExpr:oe.focus,primary:515}}));const DEt={0:" ",1:"u",2:"r"},H0e=65535,bp=16777215,U0e=4278190080;class xK{constructor(e){const n=Math.ceil(e/32);this._states=new Uint32Array(n)}get(e){const n=e/32|0,r=e%32;return(this._states[n]&1<H0e)throw new Error("invalid startIndexes or endIndexes size");this._startIndexes=e,this._endIndexes=n,this._collapseStates=new xK(e.length),this._userDefinedStates=new xK(e.length),this._recoveredStates=new xK(e.length),this._types=r,this._parentsComputed=!1}ensureParentIndices(){if(!this._parentsComputed){this._parentsComputed=!0;const e=[],n=(r,s)=>{const o=e[e.length-1];return this.getStartLineNumber(o)<=r&&this.getEndLineNumber(o)>=s};for(let r=0,s=this._startIndexes.length;rbp||a>bp)throw new Error("startLineNumber or endLineNumber must not exceed "+bp);for(;e.length>0&&!n(o,a);)e.pop();const l=e.length>0?e[e.length-1]:-1;e.push(r),this._startIndexes[r]=o+((l&255)<<24),this._endIndexes[r]=a+((l&65280)<<16)}}}get length(){return this._startIndexes.length}getStartLineNumber(e){return this._startIndexes[e]&bp}getEndLineNumber(e){return this._endIndexes[e]&bp}getType(e){return this._types?this._types[e]:void 0}hasTypes(){return!!this._types}isCollapsed(e){return this._collapseStates.get(e)}setCollapsed(e,n){this._collapseStates.set(e,n)}isUserDefined(e){return this._userDefinedStates.get(e)}setUserDefined(e,n){return this._userDefinedStates.set(e,n)}isRecovered(e){return this._recoveredStates.get(e)}setRecovered(e,n){return this._recoveredStates.set(e,n)}getSource(e){return this.isUserDefined(e)?1:this.isRecovered(e)?2:0}setSource(e,n){n===1?(this.setUserDefined(e,!0),this.setRecovered(e,!1)):n===2?(this.setUserDefined(e,!1),this.setRecovered(e,!0)):(this.setUserDefined(e,!1),this.setRecovered(e,!1))}setCollapsedAllOfType(e,n){let r=!1;if(this._types)for(let s=0;s>>24)+((this._endIndexes[e]&U0e)>>>16);return n===H0e?-1:n}contains(e,n){return this.getStartLineNumber(e)<=n&&this.getEndLineNumber(e)>=n}findIndex(e){let n=0,r=this._startIndexes.length;if(r===0)return-1;for(;n=0){if(this.getEndLineNumber(n)>=e)return n;for(n=this.getParentIndex(n);n!==-1;){if(this.contains(n,e))return n;n=this.getParentIndex(n)}}return-1}toString(){const e=[];for(let n=0;nArray.isArray(m)?b=>b<_?m[b]:void 0:b=>b<_?m.toFoldRange(b):void 0,o=s(e,e.length),a=s(n,n.length);let l=0,c=0,u=o(0),d=a(0);const h=[];let f,p=0;const g=[];for(;u||d;){let m;if(d&&(!u||u.startLineNumber>=d.startLineNumber))u&&u.startLineNumber===d.startLineNumber?(d.source===1?m=d:(m=u,m.isCollapsed=d.isCollapsed&&u.endLineNumber===d.endLineNumber,m.source=0),u=o(++l)):(m=d,d.isCollapsed&&d.source===0&&(m.source=2)),d=a(++c);else{let _=c,b=d;for(;;){if(!b||b.startLineNumber>u.endLineNumber){m=u;break}if(b.source===1&&b.endLineNumber>u.endLineNumber)break;b=a(++_)}u=o(++l)}if(m){for(;f&&f.endLineNumberm.startLineNumber&&m.startLineNumber>p&&m.endLineNumber<=r&&(!f||f.endLineNumber>=m.endLineNumber)&&(g.push(m),p=m.startLineNumber,f&&h.push(f),f=m)}}return g}}class EEt{constructor(e,n){this.ranges=e,this.index=n}get startLineNumber(){return this.ranges.getStartLineNumber(this.index)}get endLineNumber(){return this.ranges.getEndLineNumber(this.index)}get regionIndex(){return this.index}get parentIndex(){return this.ranges.getParentIndex(this.index)}get isCollapsed(){return this.ranges.isCollapsed(this.index)}containedBy(e){return e.startLineNumber<=this.startLineNumber&&e.endLineNumber>=this.endLineNumber}containsLine(e){return this.startLineNumber<=e&&e<=this.endLineNumber}}class IEt{get regions(){return this._regions}get textModel(){return this._textModel}constructor(e,n){this._updateEventEmitter=new _e,this.onDidChange=this._updateEventEmitter.event,this._textModel=e,this._decorationProvider=n,this._regions=new zu(new Uint32Array(0),new Uint32Array(0)),this._editorDecorationIds=[]}toggleCollapseState(e){if(!e.length)return;e=e.sort((r,s)=>r.regionIndex-s.regionIndex);const n={};this._decorationProvider.changeDecorations(r=>{let s=0,o=-1,a=-1;const l=c=>{for(;sa&&(a=u),s++}};for(const c of e){const u=c.regionIndex,d=this._editorDecorationIds[u];if(d&&!n[d]){n[d]=!0,l(u);const h=!this._regions.isCollapsed(u);this._regions.setCollapsed(u,h),o=Math.max(o,this._regions.getEndLineNumber(u))}}l(this._regions.length)}),this._updateEventEmitter.fire({model:this,collapseStateChanged:e})}removeManualRanges(e){const n=new Array,r=s=>{for(const o of e)if(!(o.startLineNumber>s.endLineNumber||s.startLineNumber>o.endLineNumber))return!0;return!1};for(let s=0;sr&&(r=l)}this._decorationProvider.changeDecorations(s=>this._editorDecorationIds=s.deltaDecorations(this._editorDecorationIds,n)),this._regions=e,this._updateEventEmitter.fire({model:this})}_currentFoldedOrManualRanges(e=[]){const n=(s,o)=>{for(const a of e)if(s=a.endLineNumber||a.startLineNumber<1||a.endLineNumber>r)continue;const l=this._getLinesChecksum(a.startLineNumber+1,a.endLineNumber);n.push({startLineNumber:a.startLineNumber,endLineNumber:a.endLineNumber,isCollapsed:a.isCollapsed,source:a.source,checksum:l})}return n.length>0?n:void 0}applyMemento(e){var n,r;if(!Array.isArray(e))return;const s=[],o=this._textModel.getLineCount();for(const l of e){if(l.startLineNumber>=l.endLineNumber||l.startLineNumber<1||l.endLineNumber>o)continue;const c=this._getLinesChecksum(l.startLineNumber+1,l.endLineNumber);(!l.checksum||c===l.checksum)&&s.push({startLineNumber:l.startLineNumber,endLineNumber:l.endLineNumber,type:void 0,isCollapsed:(n=l.isCollapsed)!==null&&n!==void 0?n:!0,source:(r=l.source)!==null&&r!==void 0?r:0})}const a=zu.sanitizeAndMerge(this._regions,s,o);this.updatePost(zu.fromFoldRanges(a))}_getLinesChecksum(e,n){return KEe(this._textModel.getLineContent(e)+this._textModel.getLineContent(n))%1e6}dispose(){this._decorationProvider.removeDecorations(this._editorDecorationIds)}getAllRegionsAtLine(e,n){const r=[];if(this._regions){let s=this._regions.findRange(e),o=1;for(;s>=0;){const a=this._regions.toRegion(s);(!n||n(a,o))&&r.push(a),o++,s=a.parentIndex}}return r}getRegionAtLine(e){if(this._regions){const n=this._regions.findRange(e);if(n>=0)return this._regions.toRegion(n)}return null}getRegionsInside(e,n){const r=[],s=e?e.regionIndex+1:0,o=e?e.endLineNumber:Number.MAX_VALUE;if(n&&n.length===2){const a=[];for(let l=s,c=this._regions.length;l0&&!u.containedBy(a[a.length-1]);)a.pop();a.push(u),n(u,a.length)&&r.push(u)}else break}}else for(let a=s,l=this._regions.length;a1){const l=i.getRegionsInside(o,(c,u)=>c.isCollapsed!==a&&u0)for(const o of r){const a=i.getRegionAtLine(o);if(a&&(a.isCollapsed!==e&&s.push(a),n>1)){const l=i.getRegionsInside(a,(c,u)=>c.isCollapsed!==e&&ua.isCollapsed!==e&&ll.isCollapsed!==e&&c<=n);s.push(...a)}i.toggleCollapseState(s)}function TEt(i,e,n){const r=[];for(const s of n){const o=i.getAllRegionsAtLine(s,a=>a.isCollapsed!==e);o.length>0&&r.push(o[0])}i.toggleCollapseState(r)}function REt(i,e,n,r){const s=(a,l)=>l===e&&a.isCollapsed!==n&&!r.some(c=>a.containsLine(c)),o=i.getRegionsInside(null,s);i.toggleCollapseState(o)}function kMe(i,e,n){const r=[];for(const a of n){const l=i.getAllRegionsAtLine(a,void 0);l.length>0&&r.push(l[0])}const s=a=>r.every(l=>!l.containedBy(a)&&!a.containedBy(l))&&a.isCollapsed!==e,o=i.getRegionsInside(null,s);i.toggleCollapseState(o)}function vle(i,e,n){const r=i.textModel,s=i.regions,o=[];for(let a=s.length-1;a>=0;a--)if(n!==s.isCollapsed(a)){const l=s.getStartLineNumber(a);e.test(r.getLineContent(l))&&o.push(s.toRegion(a))}i.toggleCollapseState(o)}function ble(i,e,n){const r=i.regions,s=[];for(let o=r.length-1;o>=0;o--)n!==r.isCollapsed(o)&&e===r.getType(o)&&s.push(r.toRegion(o));i.toggleCollapseState(s)}function AEt(i,e){let n=null;const r=e.getRegionAtLine(i);if(r!==null&&(n=r.startLineNumber,i===n)){const s=r.parentIndex;s!==-1?n=e.regions.getStartLineNumber(s):n=null}return n}function NEt(i,e){let n=e.getRegionAtLine(i);if(n!==null&&n.startLineNumber===i){if(i!==n.startLineNumber)return n.startLineNumber;{const r=n.parentIndex;let s=0;for(r!==-1&&(s=e.regions.getStartLineNumber(n.parentIndex));n!==null;)if(n.regionIndex>0){if(n=e.regions.toRegion(n.regionIndex-1),n.startLineNumber<=s)return null;if(n.parentIndex===r)return n.startLineNumber}else return null}}else if(e.regions.length>0)for(n=e.regions.toRegion(e.regions.length-1);n!==null;){if(n.startLineNumber0?n=e.regions.toRegion(n.regionIndex-1):n=null}return null}function MEt(i,e){let n=e.getRegionAtLine(i);if(n!==null&&n.startLineNumber===i){const r=n.parentIndex;let s=0;if(r!==-1)s=e.regions.getEndLineNumber(n.parentIndex);else{if(e.regions.length===0)return null;s=e.regions.getEndLineNumber(e.regions.length-1)}for(;n!==null;)if(n.regionIndex=s)return null;if(n.parentIndex===r)return n.startLineNumber}else return null}else if(e.regions.length>0)for(n=e.regions.toRegion(0);n!==null;){if(n.startLineNumber>i)return n.startLineNumber;n.regionIndexthis.updateHiddenRanges()),this._hiddenRanges=[],e.regions.length&&this.updateHiddenRanges()}notifyChangeModelContent(e){this._hiddenRanges.length&&!this._hasLineChanges&&(this._hasLineChanges=e.changes.some(n=>n.range.endLineNumber!==n.range.startLineNumber||y1(n.text)[0]!==0))}updateHiddenRanges(){let e=!1;const n=[];let r=0,s=0,o=Number.MAX_VALUE,a=-1;const l=this._foldingModel.regions;for(;r0}isHidden(e){return q0e(this._hiddenRanges,e)!==null}adjustSelections(e){let n=!1;const r=this._foldingModel.textModel;let s=null;const o=a=>((!s||!OEt(a,s))&&(s=q0e(this._hiddenRanges,a)),s?s.startLineNumber-1:null);for(let a=0,l=e.length;a0&&(this._hiddenRanges=[],this._updateEventEmitter.fire(this._hiddenRanges)),this._foldingModelListener&&(this._foldingModelListener.dispose(),this._foldingModelListener=null)}}function OEt(i,e){return i>=e.startLineNumber&&i<=e.endLineNumber}function q0e(i,e){const n=_P(i,r=>e=0&&i[n].endLineNumber>=e?i[n]:null}const FEt=5e3,BEt="indent";class yle{constructor(e,n,r){this.editorModel=e,this.languageConfigurationService=n,this.foldingRangesLimit=r,this.id=BEt}dispose(){}compute(e){const n=this.languageConfigurationService.getLanguageConfiguration(this.editorModel.getLanguageId()).foldingRules,r=n&&!!n.offSide,s=n&&n.markers;return Promise.resolve($Et(this.editorModel,r,s,this.foldingRangesLimit))}}let jEt=class{constructor(e){this._startIndexes=[],this._endIndexes=[],this._indentOccurrences=[],this._length=0,this._foldingRangesLimit=e}insertFirst(e,n,r){if(e>bp||n>bp)return;const s=this._length;this._startIndexes[s]=e,this._endIndexes[s]=n,this._length++,r<1e3&&(this._indentOccurrences[r]=(this._indentOccurrences[r]||0)+1)}toIndentRanges(e){const n=this._foldingRangesLimit.limit;if(this._length<=n){this._foldingRangesLimit.update(this._length,!1);const r=new Uint32Array(this._length),s=new Uint32Array(this._length);for(let o=this._length-1,a=0;o>=0;o--,a++)r[a]=this._startIndexes[o],s[a]=this._endIndexes[o];return new zu(r,s)}else{this._foldingRangesLimit.update(this._length,n);let r=0,s=this._indentOccurrences.length;for(let c=0;cn){s=c;break}r+=u}}const o=e.getOptions().tabSize,a=new Uint32Array(n),l=new Uint32Array(n);for(let c=this._length-1,u=0;c>=0;c--){const d=this._startIndexes[c],h=e.getLineContent(d),f=A$(h,o);(f{}};function $Et(i,e,n,r=WEt){const s=i.getOptions().tabSize,o=new jEt(r);let a;n&&(a=new RegExp(`(${n.start.source})|(?:${n.end.source})`));const l=[],c=i.getLineCount()+1;l.push({indent:-1,endAbove:c,line:c});for(let u=i.getLineCount();u>0;u--){const d=i.getLineContent(u),h=A$(d,s);let f=l[l.length-1];if(h===-1){e&&(f.endAbove=u);continue}let p;if(a&&(p=d.match(a)))if(p[1]){let g=l.length-1;for(;g>0&&l[g].indent!==-2;)g--;if(g>0){l.length=g+1,f=l[g],o.insertFirst(u,f.line,h),f.line=u,f.indent=h,f.endAbove=u;continue}}else{l.push({indent:-2,endAbove:u,line:u});continue}if(f.indent>h){do l.pop(),f=l[l.length-1];while(f.indent>h);const g=f.endAbove-1;g-u>=1&&o.insertFirst(u,g,h)}f.indent===h?f.endAbove=u:l.push({indent:h,endAbove:u,line:u})}return o.toIndentRanges(i)}const zEt=ce("editor.foldBackground",{light:Ht(vy,.3),dark:Ht(vy,.3),hcDark:null,hcLight:null},L("foldBackgroundBackground","Background color behind folded ranges. The color must not be opaque so as not to hide underlying decorations."),!0);ce("editorGutter.foldingControlForeground",{dark:_y,light:_y,hcDark:_y,hcLight:_y},L("editorGutter.foldingControlForeground","Color of the folding control in the editor gutter."));const Pz=ws("folding-expanded",lt.chevronDown,L("foldingExpandedIcon","Icon for expanded ranges in the editor glyph margin.")),Oz=ws("folding-collapsed",lt.chevronRight,L("foldingCollapsedIcon","Icon for collapsed ranges in the editor glyph margin.")),LMe=ws("folding-manual-collapsed",Oz,L("foldingManualCollapedIcon","Icon for manually collapsed ranges in the editor glyph margin.")),DMe=ws("folding-manual-expanded",Pz,L("foldingManualExpandedIcon","Icon for manually expanded ranges in the editor glyph margin.")),wle={color:Qr(zEt),position:ou.Inline};class Ws{constructor(e){this.editor=e,this.showFoldingControls="mouseover",this.showFoldingHighlights=!0}getDecorationOption(e,n,r){return n?Ws.HIDDEN_RANGE_DECORATION:this.showFoldingControls==="never"?e?this.showFoldingHighlights?Ws.NO_CONTROLS_COLLAPSED_HIGHLIGHTED_RANGE_DECORATION:Ws.NO_CONTROLS_COLLAPSED_RANGE_DECORATION:Ws.NO_CONTROLS_EXPANDED_RANGE_DECORATION:e?r?this.showFoldingHighlights?Ws.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION:Ws.MANUALLY_COLLAPSED_VISUAL_DECORATION:this.showFoldingHighlights?Ws.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION:Ws.COLLAPSED_VISUAL_DECORATION:this.showFoldingControls==="mouseover"?r?Ws.MANUALLY_EXPANDED_AUTO_HIDE_VISUAL_DECORATION:Ws.EXPANDED_AUTO_HIDE_VISUAL_DECORATION:r?Ws.MANUALLY_EXPANDED_VISUAL_DECORATION:Ws.EXPANDED_VISUAL_DECORATION}changeDecorations(e){return this.editor.changeDecorations(e)}removeDecorations(e){this.editor.removeDecorations(e)}}Ws.COLLAPSED_VISUAL_DECORATION=kn.register({description:"folding-collapsed-visual-decoration",stickiness:0,afterContentClassName:"inline-folded",isWholeLine:!0,firstLineDecorationClassName:en.asClassName(Oz)});Ws.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION=kn.register({description:"folding-collapsed-highlighted-visual-decoration",stickiness:0,afterContentClassName:"inline-folded",className:"folded-background",minimap:wle,isWholeLine:!0,firstLineDecorationClassName:en.asClassName(Oz)});Ws.MANUALLY_COLLAPSED_VISUAL_DECORATION=kn.register({description:"folding-manually-collapsed-visual-decoration",stickiness:0,afterContentClassName:"inline-folded",isWholeLine:!0,firstLineDecorationClassName:en.asClassName(LMe)});Ws.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION=kn.register({description:"folding-manually-collapsed-highlighted-visual-decoration",stickiness:0,afterContentClassName:"inline-folded",className:"folded-background",minimap:wle,isWholeLine:!0,firstLineDecorationClassName:en.asClassName(LMe)});Ws.NO_CONTROLS_COLLAPSED_RANGE_DECORATION=kn.register({description:"folding-no-controls-range-decoration",stickiness:0,afterContentClassName:"inline-folded",isWholeLine:!0});Ws.NO_CONTROLS_COLLAPSED_HIGHLIGHTED_RANGE_DECORATION=kn.register({description:"folding-no-controls-range-decoration",stickiness:0,afterContentClassName:"inline-folded",className:"folded-background",minimap:wle,isWholeLine:!0});Ws.EXPANDED_VISUAL_DECORATION=kn.register({description:"folding-expanded-visual-decoration",stickiness:1,isWholeLine:!0,firstLineDecorationClassName:"alwaysShowFoldIcons "+en.asClassName(Pz)});Ws.EXPANDED_AUTO_HIDE_VISUAL_DECORATION=kn.register({description:"folding-expanded-auto-hide-visual-decoration",stickiness:1,isWholeLine:!0,firstLineDecorationClassName:en.asClassName(Pz)});Ws.MANUALLY_EXPANDED_VISUAL_DECORATION=kn.register({description:"folding-manually-expanded-visual-decoration",stickiness:0,isWholeLine:!0,firstLineDecorationClassName:"alwaysShowFoldIcons "+en.asClassName(DMe)});Ws.MANUALLY_EXPANDED_AUTO_HIDE_VISUAL_DECORATION=kn.register({description:"folding-manually-expanded-auto-hide-visual-decoration",stickiness:0,isWholeLine:!0,firstLineDecorationClassName:en.asClassName(DMe)});Ws.NO_CONTROLS_EXPANDED_RANGE_DECORATION=kn.register({description:"folding-no-controls-range-decoration",stickiness:0,isWholeLine:!0});Ws.HIDDEN_RANGE_DECORATION=kn.register({description:"folding-hidden-range-decoration",stickiness:1});const VEt={},HEt="syntax";class Cle{constructor(e,n,r,s,o){this.editorModel=e,this.providers=n,this.handleFoldingRangesChange=r,this.foldingRangesLimit=s,this.fallbackRangeProvider=o,this.id=HEt,this.disposables=new Xe,o&&this.disposables.add(o);for(const a of n)typeof a.onDidChange=="function"&&this.disposables.add(a.onDidChange(r))}compute(e){return UEt(this.providers,this.editorModel,e).then(n=>{var r,s;return n?KEt(n,this.foldingRangesLimit):(s=(r=this.fallbackRangeProvider)===null||r===void 0?void 0:r.compute(e))!==null&&s!==void 0?s:null})}dispose(){this.disposables.dispose()}}function UEt(i,e,n){let r=null;const s=i.map((o,a)=>Promise.resolve(o.provideFoldingRanges(e,VEt,n)).then(l=>{if(!n.isCancellationRequested&&Array.isArray(l)){Array.isArray(r)||(r=[]);const c=e.getLineCount();for(const u of l)u.start>0&&u.end>u.start&&u.end<=c&&r.push({start:u.start,end:u.end,rank:a,kind:u.kind})}},Us));return Promise.all(s).then(o=>r)}class qEt{constructor(e){this._startIndexes=[],this._endIndexes=[],this._nestingLevels=[],this._nestingLevelCounts=[],this._types=[],this._length=0,this._foldingRangesLimit=e}add(e,n,r,s){if(e>bp||n>bp)return;const o=this._length;this._startIndexes[o]=e,this._endIndexes[o]=n,this._nestingLevels[o]=s,this._types[o]=r,this._length++,s<30&&(this._nestingLevelCounts[s]=(this._nestingLevelCounts[s]||0)+1)}toIndentRanges(){const e=this._foldingRangesLimit.limit;if(this._length<=e){this._foldingRangesLimit.update(this._length,!1);const n=new Uint32Array(this._length),r=new Uint32Array(this._length);for(let s=0;se){r=l;break}n+=c}}const s=new Uint32Array(e),o=new Uint32Array(e),a=[];for(let l=0,c=0;l{let c=a.start-l.start;return c===0&&(c=a.rank-l.rank),c}),r=new qEt(e);let s;const o=[];for(const a of n)if(!s)s=a,r.add(a.start,a.end,a.kind&&a.kind.value,o.length);else if(a.start>s.start)if(a.end<=s.end)o.push(s),s=a,r.add(a.start,a.end,a.kind&&a.kind.value,o.length);else{if(a.start>s.end){do s=o.pop();while(s&&a.start>s.end);s&&o.push(s),s=a}r.add(a.start,a.end,a.kind&&a.kind.value,o.length)}return r.toIndentRanges()}var GEt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},uA=function(i,e){return function(n,r){e(n,r,i)}},XEt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},VD;const Za=new yt("foldingEnabled",!1);let i_=VD=class extends Le{static get(e){return e.getContribution(VD.ID)}static getFoldingRangeProviders(e,n){var r,s;const o=e.foldingRangeProvider.ordered(n);return(s=(r=VD._foldingRangeSelector)===null||r===void 0?void 0:r.call(VD,o,n))!==null&&s!==void 0?s:o}constructor(e,n,r,s,o,a){super(),this.contextKeyService=n,this.languageConfigurationService=r,this.languageFeaturesService=a,this.localToDispose=this._register(new Xe),this.editor=e,this._foldingLimitReporter=new EMe(e);const l=this.editor.getOptions();this._isEnabled=l.get(43),this._useFoldingProviders=l.get(44)!=="indentation",this._unfoldOnClickAfterEndOfLine=l.get(48),this._restoringViewState=!1,this._currentModelHasFoldedImports=!1,this._foldingImportsByDefault=l.get(46),this.updateDebounceInfo=o.for(a.foldingRangeProvider,"Folding",{min:200}),this.foldingModel=null,this.hiddenRangeModel=null,this.rangeProvider=null,this.foldingRegionPromise=null,this.foldingModelPromise=null,this.updateScheduler=null,this.cursorChangedScheduler=null,this.mouseDownInfo=null,this.foldingDecorationProvider=new Ws(e),this.foldingDecorationProvider.showFoldingControls=l.get(109),this.foldingDecorationProvider.showFoldingHighlights=l.get(45),this.foldingEnabled=Za.bindTo(this.contextKeyService),this.foldingEnabled.set(this._isEnabled),this._register(this.editor.onDidChangeModel(()=>this.onModelChanged())),this._register(this.editor.onDidChangeConfiguration(c=>{if(c.hasChanged(43)&&(this._isEnabled=this.editor.getOptions().get(43),this.foldingEnabled.set(this._isEnabled),this.onModelChanged()),c.hasChanged(47)&&this.onModelChanged(),c.hasChanged(109)||c.hasChanged(45)){const u=this.editor.getOptions();this.foldingDecorationProvider.showFoldingControls=u.get(109),this.foldingDecorationProvider.showFoldingHighlights=u.get(45),this.triggerFoldingModelChanged()}c.hasChanged(44)&&(this._useFoldingProviders=this.editor.getOptions().get(44)!=="indentation",this.onFoldingStrategyChanged()),c.hasChanged(48)&&(this._unfoldOnClickAfterEndOfLine=this.editor.getOptions().get(48)),c.hasChanged(46)&&(this._foldingImportsByDefault=this.editor.getOptions().get(46))})),this.onModelChanged()}saveViewState(){const e=this.editor.getModel();if(!e||!this._isEnabled||e.isTooLargeForTokenization())return{};if(this.foldingModel){const n=this.foldingModel.getMemento(),r=this.rangeProvider?this.rangeProvider.id:void 0;return{collapsedRegions:n,lineCount:e.getLineCount(),provider:r,foldedImports:this._currentModelHasFoldedImports}}}restoreViewState(e){const n=this.editor.getModel();if(!(!n||!this._isEnabled||n.isTooLargeForTokenization()||!this.hiddenRangeModel)&&e&&(this._currentModelHasFoldedImports=!!e.foldedImports,e.collapsedRegions&&e.collapsedRegions.length>0&&this.foldingModel)){this._restoringViewState=!0;try{this.foldingModel.applyMemento(e.collapsedRegions)}finally{this._restoringViewState=!1}}}onModelChanged(){this.localToDispose.clear();const e=this.editor.getModel();!this._isEnabled||!e||e.isTooLargeForTokenization()||(this._currentModelHasFoldedImports=!1,this.foldingModel=new IEt(e,this.foldingDecorationProvider),this.localToDispose.add(this.foldingModel),this.hiddenRangeModel=new PEt(this.foldingModel),this.localToDispose.add(this.hiddenRangeModel),this.localToDispose.add(this.hiddenRangeModel.onDidChange(n=>this.onHiddenRangesChanges(n))),this.updateScheduler=new Rf(this.updateDebounceInfo.get(e)),this.cursorChangedScheduler=new Ji(()=>this.revealCursor(),200),this.localToDispose.add(this.cursorChangedScheduler),this.localToDispose.add(this.languageFeaturesService.foldingRangeProvider.onDidChange(()=>this.onFoldingStrategyChanged())),this.localToDispose.add(this.editor.onDidChangeModelLanguageConfiguration(()=>this.onFoldingStrategyChanged())),this.localToDispose.add(this.editor.onDidChangeModelContent(n=>this.onDidChangeModelContent(n))),this.localToDispose.add(this.editor.onDidChangeCursorPosition(()=>this.onCursorPositionChanged())),this.localToDispose.add(this.editor.onMouseDown(n=>this.onEditorMouseDown(n))),this.localToDispose.add(this.editor.onMouseUp(n=>this.onEditorMouseUp(n))),this.localToDispose.add({dispose:()=>{var n,r;this.foldingRegionPromise&&(this.foldingRegionPromise.cancel(),this.foldingRegionPromise=null),(n=this.updateScheduler)===null||n===void 0||n.cancel(),this.updateScheduler=null,this.foldingModel=null,this.foldingModelPromise=null,this.hiddenRangeModel=null,this.cursorChangedScheduler=null,(r=this.rangeProvider)===null||r===void 0||r.dispose(),this.rangeProvider=null}}),this.triggerFoldingModelChanged())}onFoldingStrategyChanged(){var e;(e=this.rangeProvider)===null||e===void 0||e.dispose(),this.rangeProvider=null,this.triggerFoldingModelChanged()}getRangeProvider(e){if(this.rangeProvider)return this.rangeProvider;const n=new yle(e,this.languageConfigurationService,this._foldingLimitReporter);if(this.rangeProvider=n,this._useFoldingProviders&&this.foldingModel){const r=VD.getFoldingRangeProviders(this.languageFeaturesService,e);r.length>0&&(this.rangeProvider=new Cle(e,r,()=>this.triggerFoldingModelChanged(),this._foldingLimitReporter,n))}return this.rangeProvider}getFoldingModel(){return this.foldingModelPromise}onDidChangeModelContent(e){var n;(n=this.hiddenRangeModel)===null||n===void 0||n.notifyChangeModelContent(e),this.triggerFoldingModelChanged()}triggerFoldingModelChanged(){this.updateScheduler&&(this.foldingRegionPromise&&(this.foldingRegionPromise.cancel(),this.foldingRegionPromise=null),this.foldingModelPromise=this.updateScheduler.trigger(()=>{const e=this.foldingModel;if(!e)return null;const n=new Xa,r=this.getRangeProvider(e.textModel),s=this.foldingRegionPromise=go(o=>r.compute(o));return s.then(o=>{if(o&&s===this.foldingRegionPromise){let a;if(this._foldingImportsByDefault&&!this._currentModelHasFoldedImports){const d=o.setCollapsedAllOfType(Wl.Imports.value,!0);d&&(a=Qp.capture(this.editor),this._currentModelHasFoldedImports=d)}const l=this.editor.getSelections(),c=l?l.map(d=>d.startLineNumber):[];e.update(o,c),a==null||a.restore(this.editor);const u=this.updateDebounceInfo.update(e.textModel,n.elapsed());this.updateScheduler&&(this.updateScheduler.defaultDelay=u)}return e})}).then(void 0,e=>(Ln(e),null)))}onHiddenRangesChanges(e){if(this.hiddenRangeModel&&e.length&&!this._restoringViewState){const n=this.editor.getSelections();n&&this.hiddenRangeModel.adjustSelections(n)&&this.editor.setSelections(n)}this.editor.setHiddenAreas(e,this)}onCursorPositionChanged(){this.hiddenRangeModel&&this.hiddenRangeModel.hasRanges()&&this.cursorChangedScheduler.schedule()}revealCursor(){const e=this.getFoldingModel();e&&e.then(n=>{if(n){const r=this.editor.getSelections();if(r&&r.length>0){const s=[];for(const o of r){const a=o.selectionStartLineNumber;this.hiddenRangeModel&&this.hiddenRangeModel.isHidden(a)&&s.push(...n.getAllRegionsAtLine(a,l=>l.isCollapsed&&a>l.startLineNumber))}s.length&&(n.toggleCollapseState(s),this.reveal(r[0].getPosition()))}}}).then(void 0,Ln)}onEditorMouseDown(e){if(this.mouseDownInfo=null,!this.hiddenRangeModel||!e.target||!e.target.range||!e.event.leftButton&&!e.event.middleButton)return;const n=e.target.range;let r=!1;switch(e.target.type){case 4:{const s=e.target.detail,o=e.target.element.offsetLeft;if(s.offsetX-o<4)return;r=!0;break}case 7:{if(this._unfoldOnClickAfterEndOfLine&&this.hiddenRangeModel.hasRanges()&&!e.target.detail.isAfterLines)break;return}case 6:{if(this.hiddenRangeModel.hasRanges()){const s=this.editor.getModel();if(s&&n.startColumn===s.getLineMaxColumn(n.startLineNumber))break}return}default:return}this.mouseDownInfo={lineNumber:n.startLineNumber,iconClicked:r}}onEditorMouseUp(e){const n=this.foldingModel;if(!n||!this.mouseDownInfo||!e.target)return;const r=this.mouseDownInfo.lineNumber,s=this.mouseDownInfo.iconClicked,o=e.target.range;if(!o||o.startLineNumber!==r)return;if(s){if(e.target.type!==4)return}else{const l=this.editor.getModel();if(!l||o.startColumn!==l.getLineMaxColumn(r))return}const a=n.getRegionAtLine(r);if(a&&a.startLineNumber===r){const l=a.isCollapsed;if(s||l){const c=e.event.altKey;let u=[];if(c){const d=f=>!f.containedBy(a)&&!a.containedBy(f),h=n.getRegionsInside(null,d);for(const f of h)f.isCollapsed&&u.push(f);u.length===0&&(u=h)}else{const d=e.event.middleButton||e.event.shiftKey;if(d)for(const h of n.getRegionsInside(a))h.isCollapsed===l&&u.push(h);(l||!d||u.length===0)&&u.push(a)}n.toggleCollapseState(u),this.reveal({lineNumber:r,column:1})}}}reveal(e){this.editor.revealPositionInCenterIfOutsideViewport(e,0)}};i_.ID="editor.contrib.folding";i_=VD=GEt([uA(1,mn),uA(2,dr),uA(3,Ps),uA(4,xh),uA(5,Et)],i_);class EMe{constructor(e){this.editor=e,this._onDidChange=new _e,this._computed=0,this._limited=!1}get limit(){return this.editor.getOptions().get(47)}update(e,n){(e!==this._computed||n!==this._limited)&&(this._computed=e,this._limited=n,this._onDidChange.fire())}}class bl extends kt{runEditorCommand(e,n,r){const s=e.get(dr),o=i_.get(n);if(!o)return;const a=o.getFoldingModel();if(a)return this.reportTelemetry(e,n),a.then(l=>{if(l){this.invoke(o,l,n,r,s);const c=n.getSelection();c&&o.reveal(c.getStartPosition())}})}getSelectedLines(e){const n=e.getSelections();return n?n.map(r=>r.startLineNumber):[]}getLineNumbers(e,n){return e&&e.selectionLines?e.selectionLines.map(r=>r+1):this.getSelectedLines(n)}run(e,n){}}function IMe(i){if(!nu(i)){if(!Bl(i))return!1;const e=i;if(!nu(e.levels)&&!c1(e.levels)||!nu(e.direction)&&!zl(e.direction)||!nu(e.selectionLines)&&(!Array.isArray(e.selectionLines)||!e.selectionLines.every(c1)))return!1}return!0}class YEt extends bl{constructor(){super({id:"editor.unfold",label:L("unfoldAction.label","Unfold"),alias:"Unfold",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:3166,mac:{primary:2654},weight:100},description:{description:"Unfold the content in the editor",args:[{name:"Unfold editor argument",description:`Property-value pairs that can be passed through this argument: * 'levels': Number of levels to unfold. If not set, defaults to 1. * 'direction': If 'up', unfold given number of levels up otherwise unfolds down. * 'selectionLines': Array of the start lines (0-based) of the editor selections to apply the unfold action to. If not set, the active selection(s) will be used. `,constraint:IMe,schema:{type:"object",properties:{levels:{type:"number",default:1},direction:{type:"string",enum:["up","down"],default:"down"},selectionLines:{type:"array",items:{type:"number"}}}}}]}})}invoke(e,n,r,s){const o=s&&s.levels||1,a=this.getLineNumbers(s,r);s&&s.direction==="up"?xMe(n,!1,o,a):YI(n,!1,o,a)}}class ZEt extends bl{constructor(){super({id:"editor.unfoldRecursively",label:L("unFoldRecursivelyAction.label","Unfold Recursively"),alias:"Unfold Recursively",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2142),weight:100}})}invoke(e,n,r,s){YI(n,!1,Number.MAX_VALUE,this.getSelectedLines(r))}}class QEt extends bl{constructor(){super({id:"editor.fold",label:L("foldAction.label","Fold"),alias:"Fold",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:3164,mac:{primary:2652},weight:100},description:{description:"Fold the content in the editor",args:[{name:"Fold editor argument",description:`Property-value pairs that can be passed through this argument: * 'levels': Number of levels to fold. * 'direction': If 'up', folds given number of levels up otherwise folds down. * 'selectionLines': Array of the start lines (0-based) of the editor selections to apply the fold action to. If not set, the active selection(s) will be used. If no levels or direction is set, folds the region at the locations or if already collapsed, the first uncollapsed parent instead. `,constraint:IMe,schema:{type:"object",properties:{levels:{type:"number"},direction:{type:"string",enum:["up","down"]},selectionLines:{type:"array",items:{type:"number"}}}}}]}})}invoke(e,n,r,s){const o=this.getLineNumbers(s,r),a=s&&s.levels,l=s&&s.direction;typeof a!="number"&&typeof l!="string"?TEt(n,!0,o):l==="up"?xMe(n,!0,a||1,o):YI(n,!0,a||1,o)}}class JEt extends bl{constructor(){super({id:"editor.toggleFold",label:L("toggleFoldAction.label","Toggle Fold"),alias:"Toggle Fold",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2090),weight:100}})}invoke(e,n,r){const s=this.getSelectedLines(r);SMe(n,1,s)}}class eIt extends bl{constructor(){super({id:"editor.foldRecursively",label:L("foldRecursivelyAction.label","Fold Recursively"),alias:"Fold Recursively",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2140),weight:100}})}invoke(e,n,r){const s=this.getSelectedLines(r);YI(n,!0,Number.MAX_VALUE,s)}}class tIt extends bl{constructor(){super({id:"editor.foldAllBlockComments",label:L("foldAllBlockComments.label","Fold All Block Comments"),alias:"Fold All Block Comments",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2138),weight:100}})}invoke(e,n,r,s,o){if(n.regions.hasTypes())ble(n,Wl.Comment.value,!0);else{const a=r.getModel();if(!a)return;const l=o.getLanguageConfiguration(a.getLanguageId()).comments;if(l&&l.blockCommentStartToken){const c=new RegExp("^\\s*"+dd(l.blockCommentStartToken));vle(n,c,!0)}}}}class nIt extends bl{constructor(){super({id:"editor.foldAllMarkerRegions",label:L("foldAllMarkerRegions.label","Fold All Regions"),alias:"Fold All Regions",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2077),weight:100}})}invoke(e,n,r,s,o){if(n.regions.hasTypes())ble(n,Wl.Region.value,!0);else{const a=r.getModel();if(!a)return;const l=o.getLanguageConfiguration(a.getLanguageId()).foldingRules;if(l&&l.markers&&l.markers.start){const c=new RegExp(l.markers.start);vle(n,c,!0)}}}}class iIt extends bl{constructor(){super({id:"editor.unfoldAllMarkerRegions",label:L("unfoldAllMarkerRegions.label","Unfold All Regions"),alias:"Unfold All Regions",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2078),weight:100}})}invoke(e,n,r,s,o){if(n.regions.hasTypes())ble(n,Wl.Region.value,!1);else{const a=r.getModel();if(!a)return;const l=o.getLanguageConfiguration(a.getLanguageId()).foldingRules;if(l&&l.markers&&l.markers.start){const c=new RegExp(l.markers.start);vle(n,c,!1)}}}}class rIt extends bl{constructor(){super({id:"editor.foldAllExcept",label:L("foldAllExcept.label","Fold All Except Selected"),alias:"Fold All Except Selected",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2136),weight:100}})}invoke(e,n,r){const s=this.getSelectedLines(r);kMe(n,!0,s)}}class sIt extends bl{constructor(){super({id:"editor.unfoldAllExcept",label:L("unfoldAllExcept.label","Unfold All Except Selected"),alias:"Unfold All Except Selected",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2134),weight:100}})}invoke(e,n,r){const s=this.getSelectedLines(r);kMe(n,!1,s)}}class oIt extends bl{constructor(){super({id:"editor.foldAll",label:L("foldAllAction.label","Fold All"),alias:"Fold All",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2069),weight:100}})}invoke(e,n,r){YI(n,!0)}}class aIt extends bl{constructor(){super({id:"editor.unfoldAll",label:L("unfoldAllAction.label","Unfold All"),alias:"Unfold All",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2088),weight:100}})}invoke(e,n,r){YI(n,!1)}}class Tx extends bl{getFoldingLevel(){return parseInt(this.id.substr(Tx.ID_PREFIX.length))}invoke(e,n,r){REt(n,this.getFoldingLevel(),!0,this.getSelectedLines(r))}}Tx.ID_PREFIX="editor.foldLevel";Tx.ID=i=>Tx.ID_PREFIX+i;class lIt extends bl{constructor(){super({id:"editor.gotoParentFold",label:L("gotoParentFold.label","Go to Parent Fold"),alias:"Go to Parent Fold",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,weight:100}})}invoke(e,n,r){const s=this.getSelectedLines(r);if(s.length>0){const o=AEt(s[0],n);o!==null&&r.setSelection({startLineNumber:o,startColumn:1,endLineNumber:o,endColumn:1})}}}class cIt extends bl{constructor(){super({id:"editor.gotoPreviousFold",label:L("gotoPreviousFold.label","Go to Previous Folding Range"),alias:"Go to Previous Folding Range",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,weight:100}})}invoke(e,n,r){const s=this.getSelectedLines(r);if(s.length>0){const o=NEt(s[0],n);o!==null&&r.setSelection({startLineNumber:o,startColumn:1,endLineNumber:o,endColumn:1})}}}class uIt extends bl{constructor(){super({id:"editor.gotoNextFold",label:L("gotoNextFold.label","Go to Next Folding Range"),alias:"Go to Next Folding Range",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,weight:100}})}invoke(e,n,r){const s=this.getSelectedLines(r);if(s.length>0){const o=MEt(s[0],n);o!==null&&r.setSelection({startLineNumber:o,startColumn:1,endLineNumber:o,endColumn:1})}}}class dIt extends bl{constructor(){super({id:"editor.createFoldingRangeFromSelection",label:L("createManualFoldRange.label","Create Folding Range from Selection"),alias:"Create Folding Range from Selection",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2135),weight:100}})}invoke(e,n,r){var s;const o=[],a=r.getSelections();if(a){for(const l of a){let c=l.endLineNumber;l.endColumn===1&&--c,c>l.startLineNumber&&(o.push({startLineNumber:l.startLineNumber,endLineNumber:c,type:void 0,isCollapsed:!0,source:1}),r.setSelection({startLineNumber:l.startLineNumber,startColumn:1,endLineNumber:l.startLineNumber,endColumn:1}))}if(o.length>0){o.sort((c,u)=>c.startLineNumber-u.startLineNumber);const l=zu.sanitizeAndMerge(n.regions,o,(s=r.getModel())===null||s===void 0?void 0:s.getLineCount());n.updatePost(zu.fromFoldRanges(l))}}}}class hIt extends bl{constructor(){super({id:"editor.removeManualFoldingRanges",label:L("removeManualFoldingRanges.label","Remove Manual Folding Ranges"),alias:"Remove Manual Folding Ranges",precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2137),weight:100}})}invoke(e,n,r){const s=r.getSelections();if(s){const o=[];for(const a of s){const{startLineNumber:l,endLineNumber:c}=a;o.push(c>=l?{startLineNumber:l,endLineNumber:c}:{endLineNumber:c,startLineNumber:l})}n.removeManualRanges(o),e.triggerFoldingModelChanged()}}}_i(i_.ID,i_,0);rt(YEt);rt(ZEt);rt(QEt);rt(eIt);rt(oIt);rt(aIt);rt(tIt);rt(nIt);rt(iIt);rt(rIt);rt(sIt);rt(JEt);rt(lIt);rt(cIt);rt(uIt);rt(dIt);rt(hIt);for(let i=1;i<=7;i++)clt(new Tx({id:Tx.ID(i),label:L("foldLevelAction.label","Fold Level {0}",i),alias:`Fold Level ${i}`,precondition:Za,kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2048|21+i),weight:100}}));si.registerCommand("_executeFoldingRangeProvider",function(i,...e){return XEt(this,void 0,void 0,function*(){const[n]=e;if(!(n instanceof Jt))throw uh();const r=i.get(Et),s=i.get(Fr).getModel(n);if(!s)throw uh();const o=i.get(ei);if(!o.getValue("editor.folding",{resource:n}))return[];const a=i.get(dr),l=o.getValue("editor.foldingStrategy",{resource:n}),c={get limit(){return o.getValue("editor.foldingMaximumRegions",{resource:n})},update:(p,g)=>{}},u=new yle(s,a,c);let d=u;if(l!=="indentation"){const p=i_.getFoldingRangeProviders(r,s);p.length&&(d=new Cle(s,p,()=>{},c,u))}const h=yield d.compute(Hn.None),f=[];try{if(h)for(let p=0;p=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},mj=function(i,e){return function(n,r){e(n,r,i)}},Sle=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let fO=class{constructor(e,n,r){this._editor=e,this._languageFeaturesService=n,this._workerService=r,this._disposables=new Xe,this._sessionDisposables=new Xe,this._disposables.add(n.onTypeFormattingEditProvider.onDidChange(this._update,this)),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(s=>{s.hasChanged(56)&&this._update()})),this._update()}dispose(){this._disposables.dispose(),this._sessionDisposables.dispose()}_update(){if(this._sessionDisposables.clear(),!this._editor.getOption(56)||!this._editor.hasModel())return;const e=this._editor.getModel(),[n]=this._languageFeaturesService.onTypeFormattingEditProvider.ordered(e);if(!n||!n.autoFormatTriggerCharacters)return;const r=new q9;for(const s of n.autoFormatTriggerCharacters)r.add(s.charCodeAt(0));this._sessionDisposables.add(this._editor.onDidType(s=>{const o=s.charCodeAt(s.length-1);r.has(o)&&this._trigger(String.fromCharCode(o))}))}_trigger(e){if(!this._editor.hasModel()||this._editor.getSelections().length>1||!this._editor.getSelection().isEmpty())return;const n=this._editor.getModel(),r=this._editor.getPosition(),s=new Ns,o=this._editor.onDidChangeModelContent(a=>{if(a.isFlush){s.cancel(),o.dispose();return}for(let l=0,c=a.changes.length;l{s.token.isCancellationRequested||Ka(a)&&(tI.execute(this._editor,a,!0),Uae(a))}).finally(()=>{o.dispose()})}};fO.ID="editor.contrib.autoFormat";fO=TMe([mj(1,Et),mj(2,Wf)],fO);let pO=class{constructor(e,n,r){this.editor=e,this._languageFeaturesService=n,this._instantiationService=r,this._callOnDispose=new Xe,this._callOnModel=new Xe,this._callOnDispose.add(e.onDidChangeConfiguration(()=>this._update())),this._callOnDispose.add(e.onDidChangeModel(()=>this._update())),this._callOnDispose.add(e.onDidChangeModelLanguage(()=>this._update())),this._callOnDispose.add(n.documentRangeFormattingEditProvider.onDidChange(this._update,this))}dispose(){this._callOnDispose.dispose(),this._callOnModel.dispose()}_update(){this._callOnModel.clear(),this.editor.getOption(55)&&this.editor.hasModel()&&this._languageFeaturesService.documentRangeFormattingEditProvider.has(this.editor.getModel())&&this._callOnModel.add(this.editor.onDidPaste(({range:e})=>this._trigger(e)))}_trigger(e){this.editor.hasModel()&&(this.editor.getSelections().length>1||this._instantiationService.invokeFunction(fAe,this.editor,e,2,_v.None,Hn.None).catch(Ln))}};pO.ID="editor.contrib.formatOnPaste";pO=TMe([mj(1,Et),mj(2,hn)],pO);class mIt extends kt{constructor(){super({id:"editor.action.formatDocument",label:L("formatDocument.label","Format Document"),alias:"Format Document",precondition:ze.and(oe.notInCompositeEditor,oe.writable,oe.hasDocumentFormattingProvider),kbOpts:{kbExpr:oe.editorTextFocus,primary:1572,linux:{primary:3111},weight:100},contextMenuOpts:{group:"1_modification",order:1.3}})}run(e,n){return Sle(this,void 0,void 0,function*(){if(n.hasModel()){const r=e.get(hn);yield e.get(Z1).showWhile(r.invokeFunction(yxt,n,1,_v.None,Hn.None),250)}})}}class _It extends kt{constructor(){super({id:"editor.action.formatSelection",label:L("formatSelection.label","Format Selection"),alias:"Format Selection",precondition:ze.and(oe.writable,oe.hasDocumentSelectionFormattingProvider),kbOpts:{kbExpr:oe.editorTextFocus,primary:ro(2089,2084),weight:100},contextMenuOpts:{when:oe.hasNonEmptySelection,group:"1_modification",order:1.31}})}run(e,n){return Sle(this,void 0,void 0,function*(){if(!n.hasModel())return;const r=e.get(hn),s=n.getModel(),o=n.getSelections().map(l=>l.isEmpty()?new J(l.startLineNumber,1,l.startLineNumber,s.getLineMaxColumn(l.startLineNumber)):l);yield e.get(Z1).showWhile(r.invokeFunction(fAe,n,o,1,_v.None,Hn.None),250)})}}_i(fO.ID,fO,2);_i(pO.ID,pO,2);rt(mIt);rt(_It);si.registerCommand("editor.action.format",i=>Sle(void 0,void 0,void 0,function*(){const e=i.get(Si).getFocusedCodeEditor();if(!e||!e.hasModel())return;const n=i.get(us);e.getSelection().isEmpty()?yield n.executeCommand("editor.action.formatDocument"):yield n.executeCommand("editor.action.formatSelection")}));var vIt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},kK=function(i,e){return function(n,r){e(n,r,i)}},bIt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class x2{remove(){var e;(e=this.parent)===null||e===void 0||e.children.delete(this.id)}static findId(e,n){let r;typeof e=="string"?r=`${n.id}/${e}`:(r=`${n.id}/${e.name}`,n.children.get(r)!==void 0&&(r=`${n.id}/${e.name}_${e.range.startLineNumber}_${e.range.startColumn}`));let s=r;for(let o=0;n.children.get(s)!==void 0;o++)s=`${r}_${o}`;return s}static empty(e){return e.children.size===0}}class mne extends x2{constructor(e,n,r){super(),this.id=e,this.parent=n,this.symbol=r,this.children=new Map}}class RMe extends x2{constructor(e,n,r,s){super(),this.id=e,this.parent=n,this.label=r,this.order=s,this.children=new Map}}class M0 extends x2{static create(e,n,r){const s=new Ns(r),o=new M0(n.uri),a=e.ordered(n),l=a.map((u,d)=>{var h;const f=x2.findId(`provider_${d}`,o),p=new RMe(f,o,(h=u.displayName)!==null&&h!==void 0?h:"Unknown Outline Provider",d);return Promise.resolve(u.provideDocumentSymbols(n,s.token)).then(g=>{for(const m of g||[])M0._makeOutlineElement(m,p);return p},g=>(Us(g),p)).then(g=>{x2.empty(g)?g.remove():o._groups.set(f,g)})}),c=e.onDidChange(()=>{const u=e.ordered(n);ys(u,a)||s.cancel()});return Promise.all(l).then(()=>s.token.isCancellationRequested&&!r.isCancellationRequested?M0.create(e,n,r):o._compact()).finally(()=>{s.dispose(),c.dispose(),s.dispose()})}static _makeOutlineElement(e,n){const r=x2.findId(e,n),s=new mne(r,n,e);if(e.children)for(const o of e.children)M0._makeOutlineElement(o,s);n.children.set(s.id,s)}constructor(e){super(),this.uri=e,this.id="root",this.parent=void 0,this._groups=new Map,this.children=new Map,this.id="root",this.parent=void 0}_compact(){let e=0;for(const[n,r]of this._groups)r.children.size===0?this._groups.delete(n):e+=1;if(e!==1)this.children=this._groups;else{const n=Vn.first(this._groups.values());for(const[,r]of n.children)r.parent=this,this.children.set(r.id,r)}return this}getTopLevelSymbols(){const e=[];for(const n of this.children.values())n instanceof mne?e.push(n.symbol):e.push(...Vn.map(n.children.values(),r=>r.symbol));return e.sort((n,r)=>J.compareRangesUsingStarts(n.range,r.range))}asListOfDocumentSymbols(){const e=this.getTopLevelSymbols(),n=[];return M0._flattenDocumentSymbols(n,e,""),n.sort((r,s)=>ve.compare(J.getStartPosition(r.range),J.getStartPosition(s.range))||ve.compare(J.getEndPosition(s.range),J.getEndPosition(r.range)))}static _flattenDocumentSymbols(e,n,r){for(const s of n)e.push({kind:s.kind,tags:s.tags,name:s.name,detail:s.detail,containerName:s.containerName||r,range:s.range,selectionRange:s.selectionRange,children:void 0}),s.children&&M0._flattenDocumentSymbols(e,s.children,s.name)}}const Fz=qn("IOutlineModelService");let _ne=class{constructor(e,n,r){this._languageFeaturesService=e,this._disposables=new Xe,this._cache=new G1(10,.7),this._debounceInformation=n.for(e.documentSymbolProvider,"DocumentSymbols",{min:350}),this._disposables.add(r.onModelRemoved(s=>{this._cache.delete(s.id)}))}dispose(){this._disposables.dispose()}getOrCreate(e,n){return bIt(this,void 0,void 0,function*(){const r=this._languageFeaturesService.documentSymbolProvider,s=r.ordered(e);let o=this._cache.get(e.id);if(!o||o.versionId!==e.getVersionId()||!ys(o.provider,s)){const l=new Ns;o={versionId:e.getVersionId(),provider:s,promiseCnt:0,source:l,promise:M0.create(r,e,l.token),model:void 0},this._cache.set(e.id,o);const c=Date.now();o.promise.then(u=>{o.model=u,this._debounceInformation.update(e,Date.now()-c)}).catch(u=>{this._cache.delete(e.id)})}if(o.model)return o.model;o.promiseCnt+=1;const a=n.onCancellationRequested(()=>{--o.promiseCnt===0&&(o.source.cancel(),this._cache.delete(e.id))});try{return yield o.promise}finally{a.dispose()}})}};_ne=vIt([kK(0,Et),kK(1,xh),kK(2,Fr)],_ne);oi(Fz,_ne,1);var yIt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};si.registerCommand("_executeDocumentSymbolProvider",function(i,...e){return yIt(this,void 0,void 0,function*(){const[n]=e;Ui(Jt.isUri(n));const r=i.get(Fz),o=yield i.get(Ec).createModelReference(n);try{return(yield r.getOrCreate(o.object.textEditorModel,Hn.None)).getTopLevelSymbols()}finally{o.dispose()}})});class $o extends Le{constructor(e,n){super(),this.contextKeyService=e,this.model=n,this.inlineCompletionVisible=$o.inlineSuggestionVisible.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentation=$o.inlineSuggestionHasIndentation.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentationLessThanTabSize=$o.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService),this.suppressSuggestions=$o.suppressSuggestions.bindTo(this.contextKeyService),this._register(ur(r=>{const s=this.model.read(r),o=s==null?void 0:s.state.read(r),a=!!(o!=null&&o.inlineCompletion)&&(o==null?void 0:o.ghostText)!==void 0&&!(o!=null&&o.ghostText.isEmpty());this.inlineCompletionVisible.set(a),o!=null&&o.ghostText&&(o!=null&&o.inlineCompletion)&&this.suppressSuggestions.set(o.inlineCompletion.inlineCompletion.source.inlineCompletions.suppressSuggestions)})),this._register(ur(r=>{const s=this.model.read(r);let o=!1,a=!0;const l=s==null?void 0:s.ghostText.read(r);if(s!=null&&s.selectedSuggestItem&&l&&l.parts.length>0){const{column:c,lines:u}=l.parts[0],d=u[0],h=s.textModel.getLineIndentColumn(l.lineNumber);if(c<=h){let p=ml(d);p===-1&&(p=d.length-1),o=p>0;const g=s.textModel.getOptions().tabSize;a=ho.visibleColumnFromColumn(d,p+1,g){const o=J.lift(s.range);return{startOffset:n.getOffset(o.getStartPosition()),endOffset:n.getOffset(o.getEndPosition()),text:s.text}});r.sort((s,o)=>o.startOffset-s.startOffset);for(const s of r)i=i.substring(0,s.startOffset)+s.text+i.substring(s.endOffset);return i}class CIt{constructor(e){this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let n=0;nn)throw new Vs(`startColumn ${e} cannot be after endColumnExclusive ${n}`)}toRange(e){return new J(e,this.startColumn,e,this.endColumnExclusive)}equals(e){return this.startColumn===e.startColumn&&this.endColumnExclusive===e.endColumnExclusive}}function LIt(i,e){const n=new Xe,r=i.createDecorationsCollection();return n.add(Pae({debugName:()=>`Apply decorations from ${e.debugName}`},s=>{const o=e.read(s);r.set(o)})),n.add({dispose:()=>{r.clear()}}),n}function vne(i,e){return new ve(i.lineNumber+e.lineNumber-1,e.lineNumber===1?i.column+e.column-1:e.column)}function bne(i){let e=1,n=1;for(const r of i)r===` `?(e++,n=1):n++;return new ve(e,n)}class _j{constructor(e,n){this.lineNumber=e,this.parts=n}equals(e){return this.lineNumber===e.lineNumber&&this.parts.length===e.parts.length&&this.parts.every((n,r)=>n.equals(e.parts[r]))}renderForScreenReader(e){if(this.parts.length===0)return"";const n=this.parts[this.parts.length-1],r=e.substr(0,n.column-1);return wIt(r,this.parts.map(o=>({range:{startLineNumber:1,endLineNumber:1,startColumn:o.column,endColumn:o.column},text:o.lines.join(` `)}))).substring(this.parts[0].column-1)}isEmpty(){return this.parts.every(e=>e.lines.length===0)}get lineCount(){return 1+this.parts.reduce((e,n)=>e+n.lines.length-1,0)}}class yne{constructor(e,n,r){this.column=e,this.lines=n,this.preview=r}equals(e){return this.column===e.column&&this.lines.length===e.lines.length&&this.lines.every((n,r)=>n===e.lines[r])}}class wne{constructor(e,n,r,s=0){this.lineNumber=e,this.columnRange=n,this.newLines=r,this.additionalReservedLineCount=s,this.parts=[new yne(this.columnRange.endColumnExclusive,this.newLines,!1)]}renderForScreenReader(e){return this.newLines.join(` `)}get lineCount(){return this.newLines.length}isEmpty(){return this.parts.every(e=>e.lines.length===0)}equals(e){return this.lineNumber===e.lineNumber&&this.columnRange.equals(e.columnRange)&&this.newLines.length===e.newLines.length&&this.newLines.every((n,r)=>n===e.newLines[r])&&this.additionalReservedLineCount===e.additionalReservedLineCount}}function K0e(i,e){return i===e?!0:!i||!e?!1:i instanceof _j&&e instanceof _j||i instanceof wne&&e instanceof wne?i.equals(e):!1}var DIt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},EIt=function(i,e){return function(n,r){e(n,r,i)}};const G0e="ghost-text";let Cne=class extends Le{constructor(e,n,r){super(),this.editor=e,this.model=n,this.languageService=r,this.isDisposed=vr(this,!1),this.currentTextModel=oa(this.editor.onDidChangeModel,()=>this.editor.getModel()),this.uiState=ni(this,s=>{if(this.isDisposed.read(s))return;const o=this.currentTextModel.read(s);if(o!==this.model.targetTextModel.read(s))return;const a=this.model.ghostText.read(s);if(!a)return;const l=a instanceof wne?a.columnRange:void 0,c=[],u=[];function d(m,_){if(u.length>0){const b=u[u.length-1];_&&b.decorations.push(new ru(b.content.length+1,b.content.length+1+m[0].length,_,0)),b.content+=m[0],m=m.slice(1)}for(const b of m)u.push({content:b,decorations:_?[new ru(1,b.length+1,_,0)]:[]})}const h=o.getLineContent(a.lineNumber);let f,p=0;for(const m of a.parts){let _=m.lines;f===void 0?(c.push({column:m.column,text:_[0],preview:m.preview}),_=_.slice(1)):d([h.substring(p,m.column-1)],void 0),_.length>0&&(d(_,G0e),f===void 0&&m.column<=h.length&&(f=m.column)),p=m.column-1}f!==void 0&&d([h.substring(p)],void 0);const g=f!==void 0?new kIt(f,h.length+1):void 0;return{replacedRange:l,inlineTexts:c,additionalLines:u,hiddenRange:g,lineNumber:a.lineNumber,additionalReservedLineCount:this.model.minReservedLineCount.read(s),targetTextModel:o}}),this.decorations=ni(this,s=>{const o=this.uiState.read(s);if(!o)return[];const a=[];o.replacedRange&&a.push({range:o.replacedRange.toRange(o.lineNumber),options:{inlineClassName:"inline-completion-text-to-replace",description:"GhostTextReplacement"}}),o.hiddenRange&&a.push({range:o.hiddenRange.toRange(o.lineNumber),options:{inlineClassName:"ghost-text-hidden",description:"ghost-text-hidden"}});for(const l of o.inlineTexts)a.push({range:J.fromPositions(new ve(o.lineNumber,l.column)),options:{description:G0e,after:{content:l.text,inlineClassName:l.preview?"ghost-text-decoration-preview":"ghost-text-decoration",cursorStops:Mp.Left},showIfCollapsed:!0}});return a}),this.additionalLinesWidget=this._register(new IIt(this.editor,this.languageService.languageIdCodec,ni(s=>{const o=this.uiState.read(s);return o?{lineNumber:o.lineNumber,additionalLines:o.additionalLines,minReservedLineCount:o.additionalReservedLineCount,targetTextModel:o.targetTextModel}:void 0}))),this._register(gn(()=>{this.isDisposed.set(!0,void 0)})),this._register(LIt(this.editor,this.decorations))}ownsViewZone(e){return this.additionalLinesWidget.viewZoneId===e}};Cne=DIt([EIt(2,Ar)],Cne);class IIt extends Le{get viewZoneId(){return this._viewZoneId}constructor(e,n,r){super(),this.editor=e,this.languageIdCodec=n,this.lines=r,this._viewZoneId=void 0,this.editorOptionsChanged=Ku("editorOptionChanged",_t.filter(this.editor.onDidChangeConfiguration,s=>s.hasChanged(33)||s.hasChanged(116)||s.hasChanged(98)||s.hasChanged(93)||s.hasChanged(51)||s.hasChanged(50)||s.hasChanged(66))),this._register(ur(s=>{const o=this.lines.read(s);this.editorOptionsChanged.read(s),o?this.updateLines(o.lineNumber,o.additionalLines,o.minReservedLineCount):this.clear()}))}dispose(){super.dispose(),this.clear()}clear(){this.editor.changeViewZones(e=>{this._viewZoneId&&(e.removeZone(this._viewZoneId),this._viewZoneId=void 0)})}updateLines(e,n,r){const s=this.editor.getModel();if(!s)return;const{tabSize:o}=s.getOptions();this.editor.changeViewZones(a=>{this._viewZoneId&&(a.removeZone(this._viewZoneId),this._viewZoneId=void 0);const l=Math.max(n.length,r);if(l>0){const c=document.createElement("div");TIt(c,o,n,this.editor.getOptions(),this.languageIdCodec),this._viewZoneId=a.addZone({afterLineNumber:e,heightInLines:l,domNode:c,afterColumnAffinity:1})}})}}function TIt(i,e,n,r,s){const o=r.get(33),a=r.get(116),l="none",c=r.get(93),u=r.get(51),d=r.get(50),h=r.get(66),f=new jI(1e4);f.appendString('
    ');for(let m=0,_=n.length;m<_;m++){const b=n[m],y=b.content;f.appendString('
    ');const x=k5(y),k=TE(y),D=ko.createEmpty(y,s);T5(new X1(d.isMonospace&&!o,d.canUseHalfwidthRightwardsArrow,y,!1,x,k,0,D,b.decorations,e,0,d.spaceWidth,d.middotWidth,d.wsmiddotWidth,a,l,c,u!==Uu.OFF,null),f),f.appendString("
    ")}f.appendString("
    "),Ta(i,d);const p=f.build(),g=X0e?X0e.createHTML(p):p;i.innerHTML=g}const X0e=$v("editorGhostText",{createHTML:i=>i});function RIt(i,e){const n=new YIe,r=new QIe(n,u=>e.getLanguageConfiguration(u)),s=new ZIe(new AIt([i]),r),o=BJ(s,[],void 0,!0);let a="";const l=i.getLineContent();function c(u,d){if(u.kind===2)if(c(u.openingBracket,d),d=Jr(d,u.openingBracket.length),u.child&&(c(u.child,d),d=Jr(d,u.child.length)),u.closingBracket)c(u.closingBracket,d),d=Jr(d,u.closingBracket.length);else{const f=r.getSingleLanguageBracketTokens(u.openingBracket.languageId).findClosingTokenText(u.openingBracket.bracketIds);a+=f}else if(u.kind!==3){if(u.kind===0||u.kind===1)a+=l.substring(d,Jr(d,u.length));else if(u.kind===4)for(const h of u.children)c(h,d),d=Jr(d,h.length)}}return c(o,$l),a}class AIt{constructor(e){this.lines=e,this.tokenization={getLineTokens:n=>this.lines[n-1]}}getLineCount(){return this.lines.length}getLineLength(e){return this.lines[e-1].getLineContent().length}}class tf{constructor(){this.value="",this.pos=0}static isDigitCharacter(e){return e>=48&&e<=57}static isVariableCharacter(e){return e===95||e>=97&&e<=122||e>=65&&e<=90}text(e){this.value=e,this.pos=0}tokenText(e){return this.value.substr(e.pos,e.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};const e=this.pos;let n=0,r=this.value.charCodeAt(e),s;if(s=tf._table[r],typeof s=="number")return this.pos+=1,{type:s,pos:e,len:1};if(tf.isDigitCharacter(r)){s=8;do n+=1,r=this.value.charCodeAt(e+n);while(tf.isDigitCharacter(r));return this.pos+=n,{type:s,pos:e,len:n}}if(tf.isVariableCharacter(r)){s=9;do r=this.value.charCodeAt(e+ ++n);while(tf.isVariableCharacter(r)||tf.isDigitCharacter(r));return this.pos+=n,{type:s,pos:e,len:n}}s=10;do n+=1,r=this.value.charCodeAt(e+n);while(!isNaN(r)&&typeof tf._table[r]>"u"&&!tf.isDigitCharacter(r)&&!tf.isVariableCharacter(r));return this.pos+=n,{type:s,pos:e,len:n}}}tf._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};class ZI{constructor(){this._children=[]}appendChild(e){return e instanceof Fl&&this._children[this._children.length-1]instanceof Fl?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,n){const{parent:r}=e,s=r.children.indexOf(e),o=r.children.slice(0);o.splice(s,1,...n),r._children=o,function a(l,c){for(const u of l)u.parent=c,a(u.children,u)}(n,r)}get children(){return this._children}get rightMostDescendant(){return this._children.length>0?this._children[this._children.length-1].rightMostDescendant:this}get snippet(){let e=this;for(;;){if(!e)return;if(e instanceof a4)return e;e=e.parent}}toString(){return this.children.reduce((e,n)=>e+n.toString(),"")}len(){return 0}}class Fl extends ZI{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new Fl(this.value)}}class AMe extends ZI{}class Qd extends AMe{static compareByIndex(e,n){return e.index===n.index?0:e.isFinalTabstop?1:n.isFinalTabstop||e.indexn.index?1:0}constructor(e){super(),this.index=e}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof QI?this._children[0]:void 0}clone(){const e=new Qd(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(n=>n.clone()),e}}class QI extends ZI{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof Fl&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){const e=new QI;return this.options.forEach(e.appendChild,e),e}}let NIt=class NMe extends ZI{constructor(){super(...arguments),this.regexp=new RegExp("")}resolve(e){const n=this;let r=!1,s=e.replace(this.regexp,function(){return r=!0,n._replace(Array.prototype.slice.call(arguments,0,-2))});return!r&&this._children.some(o=>o instanceof yp&&!!o.elseValue)&&(s=this._replace([])),s}_replace(e){let n="";for(const r of this._children)if(r instanceof yp){let s=e[r.index]||"";s=r.resolve(s),n+=s}else n+=r.toString();return n}toString(){return""}clone(){const e=new NMe;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map(n=>n.clone()),e}};class yp extends ZI{constructor(e,n,r,s){super(),this.index=e,this.shorthandName=n,this.ifValue=r,this.elseValue=s}resolve(e){return this.shorthandName==="upcase"?e?e.toLocaleUpperCase():"":this.shorthandName==="downcase"?e?e.toLocaleLowerCase():"":this.shorthandName==="capitalize"?e?e[0].toLocaleUpperCase()+e.substr(1):"":this.shorthandName==="pascalcase"?e?this._toPascalCase(e):"":this.shorthandName==="camelcase"?e?this._toCamelCase(e):"":e&&typeof this.ifValue=="string"?this.ifValue:!e&&typeof this.elseValue=="string"?this.elseValue:e||""}_toPascalCase(e){const n=e.match(/[a-z0-9]+/gi);return n?n.map(r=>r.charAt(0).toUpperCase()+r.substr(1)).join(""):e}_toCamelCase(e){const n=e.match(/[a-z0-9]+/gi);return n?n.map((r,s)=>s===0?r.charAt(0).toLowerCase()+r.substr(1):r.charAt(0).toUpperCase()+r.substr(1)).join(""):e}clone(){return new yp(this.index,this.shorthandName,this.ifValue,this.elseValue)}}class gO extends AMe{constructor(e){super(),this.name=e}resolve(e){let n=e.resolve(this);return this.transform&&(n=this.transform.resolve(n||"")),n!==void 0?(this._children=[new Fl(n)],!0):!1}clone(){const e=new gO(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(n=>n.clone()),e}}function Y0e(i,e){const n=[...i];for(;n.length>0;){const r=n.shift();if(!e(r))break;n.unshift(...r.children)}}class a4 extends ZI{get placeholderInfo(){if(!this._placeholders){const e=[];let n;this.walk(function(r){return r instanceof Qd&&(e.push(r),n=!n||n.indexs===e?(r=!0,!1):(n+=s.len(),!0)),r?n:-1}fullLen(e){let n=0;return Y0e([e],r=>(n+=r.len(),!0)),n}enclosingPlaceholders(e){const n=[];let{parent:r}=e;for(;r;)r instanceof Qd&&n.push(r),r=r.parent;return n}resolveVariables(e){return this.walk(n=>(n instanceof gO&&n.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,n){return this._placeholders=void 0,super.replace(e,n)}clone(){const e=new a4;return this._children=this.children.map(n=>n.clone()),e}walk(e){Y0e(this.children,e)}}class dI{constructor(){this._scanner=new tf,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,n,r){const s=new a4;return this.parseFragment(e,s),this.ensureFinalTabstop(s,r??!1,n??!1),s}parseFragment(e,n){const r=n.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(n););const s=new Map,o=[];n.walk(c=>(c instanceof Qd&&(c.isFinalTabstop?s.set(0,void 0):!s.has(c.index)&&c.children.length>0?s.set(c.index,c.children):o.push(c)),!0));const a=(c,u)=>{const d=s.get(c.index);if(!d)return;const h=new Qd(c.index);h.transform=c.transform;for(const f of d){const p=f.clone();h.appendChild(p),p instanceof Qd&&s.has(p.index)&&!u.has(p.index)&&(u.add(p.index),a(p,u),u.delete(p.index))}n.replace(c,[h])},l=new Set;for(const c of o)a(c,l);return n.children.slice(r)}ensureFinalTabstop(e,n,r){(n||r&&e.placeholders.length>0)&&(e.placeholders.find(o=>o.index===0)||e.appendChild(new Qd(0)))}_accept(e,n){if(e===void 0||this._token.type===e){const r=n?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),r}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){const n=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){const s=this._scanner.next();if(s.type!==0&&s.type!==4&&s.type!==5)return!1}this._token=this._scanner.next()}const r=this._scanner.value.substring(n.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),r}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let n;return(n=this._accept(5,!0))?(n=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||n,e.appendChild(new Fl(n)),!0):!1}_parseTabstopOrVariableName(e){let n;const r=this._token;return this._accept(0)&&(n=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(n)?new Qd(Number(n)):new gO(n)),!0):this._backTo(r)}_parseComplexPlaceholder(e){let n;const r=this._token;if(!(this._accept(0)&&this._accept(3)&&(n=this._accept(8,!0))))return this._backTo(r);const o=new Qd(Number(n));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(o),!0;if(!this._parse(o))return e.appendChild(new Fl("${"+n+":")),o.children.forEach(e.appendChild,e),!0}else if(o.index>0&&this._accept(7)){const a=new QI;for(;;){if(this._parseChoiceElement(a)){if(this._accept(2))continue;if(this._accept(7)&&(o.appendChild(a),this._accept(4)))return e.appendChild(o),!0}return this._backTo(r),!1}}else return this._accept(6)?this._parseTransform(o)?(e.appendChild(o),!0):(this._backTo(r),!1):this._accept(4)?(e.appendChild(o),!0):this._backTo(r)}_parseChoiceElement(e){const n=this._token,r=[];for(;!(this._token.type===2||this._token.type===7);){let s;if((s=this._accept(5,!0))?s=this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||s:s=this._accept(void 0,!0),!s)return this._backTo(n),!1;r.push(s)}return r.length===0?(this._backTo(n),!1):(e.appendChild(new Fl(r.join(""))),!0)}_parseComplexVariable(e){let n;const r=this._token;if(!(this._accept(0)&&this._accept(3)&&(n=this._accept(9,!0))))return this._backTo(r);const o=new gO(n);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(o),!0;if(!this._parse(o))return e.appendChild(new Fl("${"+n+":")),o.children.forEach(e.appendChild,e),!0}else return this._accept(6)?this._parseTransform(o)?(e.appendChild(o),!0):(this._backTo(r),!1):this._accept(4)?(e.appendChild(o),!0):this._backTo(r)}_parseTransform(e){const n=new NIt;let r="",s="";for(;!this._accept(6);){let o;if(o=this._accept(5,!0)){o=this._accept(6,!0)||o,r+=o;continue}if(this._token.type!==14){r+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let o;if(o=this._accept(5,!0)){o=this._accept(5,!0)||this._accept(6,!0)||o,n.appendChild(new Fl(o));continue}if(!(this._parseFormatString(n)||this._parseAnything(n)))return!1}for(;!this._accept(4);){if(this._token.type!==14){s+=this._accept(void 0,!0);continue}return!1}try{n.regexp=new RegExp(r,s)}catch{return!1}return e.transform=n,!0}_parseFormatString(e){const n=this._token;if(!this._accept(0))return!1;let r=!1;this._accept(3)&&(r=!0);const s=this._accept(8,!0);if(s)if(r){if(this._accept(4))return e.appendChild(new yp(Number(s))),!0;if(!this._accept(1))return this._backTo(n),!1}else return e.appendChild(new yp(Number(s))),!0;else return this._backTo(n),!1;if(this._accept(6)){const o=this._accept(9,!0);return!o||!this._accept(4)?(this._backTo(n),!1):(e.appendChild(new yp(Number(s),o)),!0)}else if(this._accept(11)){const o=this._until(4);if(o)return e.appendChild(new yp(Number(s),void 0,o,void 0)),!0}else if(this._accept(12)){const o=this._until(4);if(o)return e.appendChild(new yp(Number(s),void 0,void 0,o)),!0}else if(this._accept(13)){const o=this._until(1);if(o){const a=this._until(4);if(a)return e.appendChild(new yp(Number(s),void 0,o,a)),!0}}else{const o=this._until(4);if(o)return e.appendChild(new yp(Number(s),void 0,void 0,o)),!0}return this._backTo(n),!1}_parseAnything(e){return this._token.type!==14?(e.appendChild(new Fl(this._scanner.tokenText(this._token))),this._accept(void 0),!0):!1}}var LK=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};function MIt(i,e,n,r,s=Hn.None,o){return LK(this,void 0,void 0,function*(){const a=FIt(e,n),l=i.all(n),c=new roe;for(const b of l)b.groupId&&c.add(b.groupId,b);function u(b){if(!b.yieldsToGroupIds)return[];const y=[];for(const x of b.yieldsToGroupIds||[]){const k=c.get(x);for(const D of k)y.push(D)}return y}const d=new Map,h=new Set;function f(b,y){if(y=[...y,b],h.has(b))return y;h.add(b);try{const x=u(b);for(const k of x){const D=f(k,y);if(D)return D}}finally{h.delete(b)}}function p(b){const y=d.get(b);if(y)return y;const x=f(b,[]);x&&Us(new Error(`Inline completions: cyclic yield-to dependency detected. Path: ${x.map(D=>D.toString?D.toString():""+D).join(" -> ")}`));const k=new f$;return d.set(b,k.p),LK(this,void 0,void 0,function*(){if(!x){const D=u(b);for(const R of D){const E=yield p(R);if(E&&E.items.length>0)return}}try{return yield b.provideInlineCompletions(n,e,r,s)}catch(D){Us(D);return}}).then(D=>k.complete(D),D=>k.error(D)),k.p}const g=yield Promise.all(l.map(b=>LK(this,void 0,void 0,function*(){return{provider:b,completions:yield p(b)}}))),m=new Map,_=[];for(const b of g){const y=b.completions;if(!y)continue;const x=new OIt(y,b.provider);_.push(x);for(const k of y.items){const D=vj.from(k,x,a,n,o);m.set(D.hash(),D)}}return new PIt(Array.from(m.values()),new Set(m.keys()),_)})}class PIt{constructor(e,n,r){this.completions=e,this.hashs=n,this.providerResults=r}has(e){return this.hashs.has(e.hash())}dispose(){for(const e of this.providerResults)e.removeRef()}}class OIt{constructor(e,n){this.inlineCompletions=e,this.provider=n,this.refCount=1}addRef(){this.refCount++}removeRef(){this.refCount--,this.refCount===0&&this.provider.freeInlineCompletions(this.inlineCompletions)}}class vj{static from(e,n,r,s,o){let a,l,c=e.range?J.lift(e.range):r;if(typeof e.insertText=="string"){if(a=e.insertText,o&&e.completeBracketPairs){a=Z0e(a,c.getStartPosition(),s,o);const u=a.length-e.insertText.length;u!==0&&(c=new J(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn+u))}l=void 0}else if("snippet"in e.insertText){const u=e.insertText.snippet.length;if(o&&e.completeBracketPairs){e.insertText.snippet=Z0e(e.insertText.snippet,c.getStartPosition(),s,o);const h=e.insertText.snippet.length-u;h!==0&&(c=new J(c.startLineNumber,c.startColumn,c.endLineNumber,c.endColumn+h))}const d=new dI().parse(e.insertText.snippet);d.children.length===1&&d.children[0]instanceof Fl?(a=d.children[0].value,l=void 0):(a=d.toString(),l={snippet:e.insertText.snippet,range:c})}else l$(e.insertText);return new vj(a,e.command,c,a,l,e.additionalTextEdits||xIt(),e,n)}constructor(e,n,r,s,o,a,l,c){this.filterText=e,this.command=n,this.range=r,this.insertText=s,this.snippetInfo=o,this.additionalTextEdits=a,this.sourceInlineCompletion=l,this.source=c,e=e.replace(/\r\n|\r/g,` `),s=e.replace(/\r\n|\r/g,` `)}withRange(e){return new vj(this.filterText,this.command,e,this.insertText,this.snippetInfo,this.additionalTextEdits,this.sourceInlineCompletion,this.source)}hash(){return JSON.stringify({insertText:this.insertText,range:this.range.toString()})}}function FIt(i,e){const n=e.getWordAtPosition(i),r=e.getLineMaxColumn(i.lineNumber);return n?new J(i.lineNumber,n.startColumn,i.lineNumber,r):J.fromPositions(i,i.with(void 0,r))}function Z0e(i,e,n,r){const o=n.getLineContent(e.lineNumber).substring(0,e.column-1)+i,a=n.tokenization.tokenizeLineWithEdit(e,o.length-(e.column-1),i),l=a==null?void 0:a.sliceAndInflate(e.column-1,o.length,0);return l?RIt(l,r):i}class hI{constructor(e,n){this.range=e,this.text=n}removeCommonPrefix(e,n){const r=n?this.range.intersectRanges(n):this.range;if(!r)return this;const s=e.getValueInRange(r,1),o=ax(s,this.text),a=vne(this.range.getStartPosition(),bne(s.substring(0,o))),l=this.text.substring(o),c=J.fromPositions(a,this.range.getEndPosition());return new hI(c,l)}augments(e){return this.text.startsWith(e.text)&&BIt(this.range,e.range)}computeGhostText(e,n,r,s=0){let o=this.removeCommonPrefix(e);if(o.range.endLineNumber!==o.range.startLineNumber)return;const a=e.getLineContent(o.range.startLineNumber),l=ar(a).length;if(o.range.startColumn-1<=l){const g=ar(o.text).length,m=a.substring(o.range.startColumn-1,l),[_,b]=[o.range.getStartPosition(),o.range.getEndPosition()],y=_.column+m.length<=b.column?_.delta(0,m.length):b,x=J.fromPositions(y,b),k=o.text.startsWith(m)?o.text.substring(m.length):o.text.substring(g);o=new hI(x,k)}const u=e.getValueInRange(o.range),d=jIt(u,o.text);if(!d)return;const h=o.range.startLineNumber,f=new Array;if(n==="prefix"){const g=d.filter(m=>m.originalLength===0);if(g.length>1||g.length===1&&g[0].originalStart!==u.length)return}const p=o.text.length-s;for(const g of d){const m=o.range.startColumn+g.originalStart+g.originalLength;if(n==="subwordSmart"&&r&&r.lineNumber===o.range.startLineNumber&&m0)return;if(g.modifiedLength===0)continue;const _=g.modifiedStart+g.modifiedLength,b=Math.max(g.modifiedStart,Math.min(_,p)),y=o.text.substring(g.modifiedStart,b),x=o.text.substring(b,Math.max(g.modifiedStart,_));if(y.length>0){const k=Km(y);f.push(new yne(m,k,!1))}if(x.length>0){const k=Km(x);f.push(new yne(m,k,!0))}}return new _j(h,f)}}function BIt(i,e){return e.getStartPosition().equals(i.getStartPosition())&&e.getEndPosition().isBeforeOrEqual(i.getEndPosition())}let $g;function jIt(i,e){if(($g==null?void 0:$g.originalValue)===i&&($g==null?void 0:$g.newValue)===e)return $g==null?void 0:$g.changes;{let n=J0e(i,e,!0);if(n){const r=Q0e(n);if(r>0){const s=J0e(i,e,!1);s&&Q0e(s)5e3||e.length>5e3)return;function r(u){let d=0;for(let h=0,f=u.length;hd&&(d=p)}return d}const s=Math.max(r(i),r(e));function o(u){if(u<0)throw new Error("unexpected");return s+u+1}function a(u){let d=0,h=0;const f=new Int32Array(u.length);for(let p=0,g=u.length;pl},{getElements:()=>c}).ComputeDiff(!1).changes}var WIt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},eve=function(i,e){return function(n,r){e(n,r,i)}},$It=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let Sne=class extends Le{constructor(e,n,r,s,o){super(),this.textModel=e,this.versionId=n,this._debounceValue=r,this.languageFeaturesService=s,this.languageConfigurationService=o,this._updateOperation=this._register(new ha),this.inlineCompletions=q7("inlineCompletions",void 0),this.suggestWidgetInlineCompletions=q7("suggestWidgetInlineCompletions",void 0),this._register(this.textModel.onDidChangeContent(()=>{this._updateOperation.clear()}))}fetch(e,n,r){var s,o;const a=new VIt(e,n,this.textModel.getVersionId()),l=n.selectedSuggestionInfo?this.suggestWidgetInlineCompletions:this.inlineCompletions;if(!((s=this._updateOperation.value)===null||s===void 0)&&s.request.satisfies(a))return this._updateOperation.value.promise;if(!((o=l.get())===null||o===void 0)&&o.request.satisfies(a))return Promise.resolve(!0);const c=!!this._updateOperation.value;this._updateOperation.clear();const u=new Ns,d=$It(this,void 0,void 0,function*(){if((c||n.triggerKind===pv.Automatic)&&(yield zIt(this._debounceValue.get(this.textModel))),u.token.isCancellationRequested||this.textModel.getVersionId()!==a.versionId)return!1;const p=new Date,g=yield MIt(this.languageFeaturesService.inlineCompletionsProvider,e,this.textModel,n,u.token,this.languageConfigurationService);if(u.token.isCancellationRequested||this.textModel.getVersionId()!==a.versionId)return!1;const m=new Date;this._debounceValue.update(this.textModel,m.getTime()-p.getTime());const _=new qIt(g,a,this.textModel,this.versionId);if(r){const b=r.toInlineCompletion(void 0);r.canBeReused(this.textModel,e)&&!g.has(b)&&_.prepend(r.inlineCompletion,b.range,!0)}return this._updateOperation.clear(),Pr(b=>{l.set(_,b)}),!0}),h=new UIt(a,u,d);return this._updateOperation.value=h,d}clear(e){this._updateOperation.clear(),this.inlineCompletions.set(void 0,e),this.suggestWidgetInlineCompletions.set(void 0,e)}clearSuggestWidgetInlineCompletions(e){var n;!((n=this._updateOperation.value)===null||n===void 0)&&n.request.context.selectedSuggestionInfo&&this._updateOperation.clear(),this.suggestWidgetInlineCompletions.set(void 0,e)}cancelUpdate(){this._updateOperation.clear()}};Sne=WIt([eve(3,Et),eve(4,dr)],Sne);function zIt(i,e){return new Promise(n=>{setTimeout(()=>{n()},i)})}class VIt{constructor(e,n,r){this.position=e,this.context=n,this.versionId=r}satisfies(e){return this.position.equals(e.position)&&HIt(this.context.selectedSuggestionInfo,e.context.selectedSuggestionInfo,(n,r)=>n.equals(r))&&(e.context.triggerKind===pv.Automatic||this.context.triggerKind===pv.Explicit)&&this.versionId===e.versionId}}function HIt(i,e,n){return!i||!e?i===e:n(i,e)}class UIt{constructor(e,n,r){this.request=e,this.cancellationTokenSource=n,this.promise=r}dispose(){this.cancellationTokenSource.cancel()}}class qIt{get inlineCompletions(){return this._inlineCompletions}constructor(e,n,r,s){this.inlineCompletionProviderResult=e,this.request=n,this.textModel=r,this.versionId=s,this._refCount=1,this._prependedInlineCompletionItems=[],this._rangeVersionIdValue=0,this._rangeVersionId=ni(this,a=>{this.versionId.read(a);let l=!1;for(const c of this._inlineCompletions)l=l||c._updateRange(this.textModel);return l&&this._rangeVersionIdValue++,this._rangeVersionIdValue});const o=r.deltaDecorations([],e.completions.map(a=>({range:a.range,options:{description:"inline-completion-tracking-range"}})));this._inlineCompletions=e.completions.map((a,l)=>new tve(a,o[l],this._rangeVersionId))}clone(){return this._refCount++,this}dispose(){if(this._refCount--,this._refCount===0){setTimeout(()=>{this.textModel.isDisposed()||this.textModel.deltaDecorations(this._inlineCompletions.map(e=>e.decorationId),[])},0),this.inlineCompletionProviderResult.dispose();for(const e of this._prependedInlineCompletionItems)e.source.removeRef()}}prepend(e,n,r){r&&e.source.addRef();const s=this.textModel.deltaDecorations([],[{range:n,options:{description:"inline-completion-tracking-range"}}])[0];this._inlineCompletions.unshift(new tve(e,s,this._rangeVersionId,n)),this._prependedInlineCompletionItems.push(e)}}class tve{get forwardStable(){var e;return(e=this.inlineCompletion.source.inlineCompletions.enableForwardStability)!==null&&e!==void 0?e:!1}constructor(e,n,r,s){this.inlineCompletion=e,this.decorationId=n,this.rangeVersion=r,this.semanticId=JSON.stringify([this.inlineCompletion.filterText,this.inlineCompletion.insertText,this.inlineCompletion.range.getStartPosition().toString()]),this._isValid=!0,this._updatedRange=s??e.range}toInlineCompletion(e){return this.inlineCompletion.withRange(this._getUpdatedRange(e))}toSingleTextEdit(e){return new hI(this._getUpdatedRange(e),this.inlineCompletion.insertText)}isVisible(e,n,r){const s=this._toFilterTextReplacement(r).removeCommonPrefix(e);if(!this._isValid||!this.inlineCompletion.range.getStartPosition().equals(this._getUpdatedRange(r).getStartPosition())||n.lineNumber!==s.range.startLineNumber)return!1;const o=e.getValueInRange(s.range,1).toLowerCase(),a=s.text.toLowerCase(),l=Math.max(0,n.column-s.range.startColumn);let c=a.substring(0,l),u=a.substring(l),d=o.substring(0,l),h=o.substring(l);const f=e.getLineIndentColumn(s.range.startLineNumber);return s.range.startColumn<=f&&(d=d.trimStart(),d.length===0&&(h=h.trimStart()),c=c.trimStart(),c.length===0&&(u=u.trimStart())),c.startsWith(d)&&!!jTe(h,u)}canBeReused(e,n){return this._isValid&&this._getUpdatedRange(void 0).containsPosition(n)&&this.isVisible(e,n,void 0)&&!this._isSmallerThanOriginal(void 0)}_toFilterTextReplacement(e){return new hI(this._getUpdatedRange(e),this.inlineCompletion.filterText)}_isSmallerThanOriginal(e){return nve(this._getUpdatedRange(e)).isBefore(nve(this.inlineCompletion.range))}_getUpdatedRange(e){return this.rangeVersion.read(e),this._updatedRange}_updateRange(e){const n=e.getDecorationRange(this.decorationId);return n?this._updatedRange.equalsRange(n)?!1:(this._updatedRange=n,!0):(this._isValid=!1,!0)}}function nve(i){return i.startLineNumber===i.endLineNumber?new ve(1,1+i.endColumn-i.startColumn):new ve(1+i.endLineNumber-i.startLineNumber,i.endColumn)}var xM=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const Tn={Visible:mle,HasFocusedSuggestion:new yt("suggestWidgetHasFocusedSuggestion",!1,L("suggestWidgetHasSelection","Whether any suggestion is focused")),DetailsVisible:new yt("suggestWidgetDetailsVisible",!1,L("suggestWidgetDetailsVisible","Whether suggestion details are visible")),MultipleSuggestions:new yt("suggestWidgetMultipleSuggestions",!1,L("suggestWidgetMultipleSuggestions","Whether there are multiple suggestions to pick from")),MakesTextEdit:new yt("suggestionMakesTextEdit",!0,L("suggestionMakesTextEdit","Whether inserting the current suggestion yields in a change or has everything already been typed")),AcceptSuggestionsOnEnter:new yt("acceptSuggestionOnEnter",!0,L("acceptSuggestionOnEnter","Whether suggestions are inserted when pressing Enter")),HasInsertAndReplaceRange:new yt("suggestionHasInsertAndReplaceRange",!1,L("suggestionHasInsertAndReplaceRange","Whether the current suggestion has insert and replace behaviour")),InsertMode:new yt("suggestionInsertMode",void 0,{type:"string",description:L("suggestionInsertMode","Whether the default behaviour is to insert or replace")}),CanResolve:new yt("suggestionCanResolve",!1,L("suggestionCanResolve","Whether the current suggestion supports to resolve further details"))},Qy=new se("suggestWidgetStatusBar");class KIt{constructor(e,n,r,s){var o;this.position=e,this.completion=n,this.container=r,this.provider=s,this.isInvalid=!1,this.score=Hp.Default,this.distance=0,this.textLabel=typeof n.label=="string"?n.label:(o=n.label)===null||o===void 0?void 0:o.label,this.labelLow=this.textLabel.toLowerCase(),this.isInvalid=!this.textLabel,this.sortTextLow=n.sortText&&n.sortText.toLowerCase(),this.filterTextLow=n.filterText&&n.filterText.toLowerCase(),this.extensionId=n.extensionId,J.isIRange(n.range)?(this.editStart=new ve(n.range.startLineNumber,n.range.startColumn),this.editInsertEnd=new ve(n.range.endLineNumber,n.range.endColumn),this.editReplaceEnd=new ve(n.range.endLineNumber,n.range.endColumn),this.isInvalid=this.isInvalid||J.spansMultipleLines(n.range)||n.range.startLineNumber!==e.lineNumber):(this.editStart=new ve(n.range.insert.startLineNumber,n.range.insert.startColumn),this.editInsertEnd=new ve(n.range.insert.endLineNumber,n.range.insert.endColumn),this.editReplaceEnd=new ve(n.range.replace.endLineNumber,n.range.replace.endColumn),this.isInvalid=this.isInvalid||J.spansMultipleLines(n.range.insert)||J.spansMultipleLines(n.range.replace)||n.range.insert.startLineNumber!==e.lineNumber||n.range.replace.startLineNumber!==e.lineNumber||n.range.insert.startColumn!==n.range.replace.startColumn),typeof s.resolveCompletionItem!="function"&&(this._resolveCache=Promise.resolve(),this._resolveDuration=0)}get isResolved(){return this._resolveDuration!==void 0}get resolveDuration(){return this._resolveDuration!==void 0?this._resolveDuration:-1}resolve(e){return xM(this,void 0,void 0,function*(){if(!this._resolveCache){const n=e.onCancellationRequested(()=>{this._resolveCache=void 0,this._resolveDuration=void 0}),r=new Xa(!0);this._resolveCache=Promise.resolve(this.provider.resolveCompletionItem(this.completion,e)).then(s=>{Object.assign(this.completion,s),this._resolveDuration=r.elapsed()},s=>{sg(s)&&(this._resolveCache=void 0,this._resolveDuration=void 0)}).finally(()=>{n.dispose()})}return this._resolveCache})}}class mO{constructor(e=2,n=new Set,r=new Set,s=new Map,o=!0){this.snippetSortOrder=e,this.kindFilter=n,this.providerFilter=r,this.providerItemsToReuse=s,this.showDeprecated=o}}mO.default=new mO;let GIt;function XIt(){return GIt}class YIt{constructor(e,n,r,s){this.items=e,this.needsClipboard=n,this.durations=r,this.disposable=s}}function xle(i,e,n,r=mO.default,s={triggerKind:0},o=Hn.None){return xM(this,void 0,void 0,function*(){const a=new Xa;n=n.clone();const l=e.getWordAtPosition(n),c=l?new J(n.lineNumber,l.startColumn,n.lineNumber,l.endColumn):J.fromPositions(n),u={replace:c,insert:c.setEndPosition(n.lineNumber,n.column)},d=[],h=new Xe,f=[];let p=!1;const g=(_,b,y)=>{var x,k,D;let R=!1;if(!b)return R;for(const E of b.suggestions)if(!r.kindFilter.has(E.kind)){if(!r.showDeprecated&&(!((x=E==null?void 0:E.tags)===null||x===void 0)&&x.includes(1)))continue;E.range||(E.range=u),E.sortText||(E.sortText=typeof E.label=="string"?E.label:E.label.label),!p&&E.insertTextRules&&E.insertTextRules&4&&(p=dI.guessNeedsClipboard(E.insertText)),d.push(new KIt(n,E,b,_)),R=!0}return Ase(b)&&h.add(b),f.push({providerName:(k=_._debugDisplayName)!==null&&k!==void 0?k:"unknown_provider",elapsedProvider:(D=b.duration)!==null&&D!==void 0?D:-1,elapsedOverall:y.elapsed()}),R},m=xM(this,void 0,void 0,function*(){});for(const _ of i.orderedGroups(e)){let b=!1;if(yield Promise.all(_.map(y=>xM(this,void 0,void 0,function*(){if(r.providerItemsToReuse.has(y)){const x=r.providerItemsToReuse.get(y);x.forEach(k=>d.push(k)),b=b||x.length>0;return}if(!(r.providerFilter.size>0&&!r.providerFilter.has(y)))try{const x=new Xa,k=yield y.provideCompletionItems(e,n,s,o);b=g(y,k,x)||b}catch(x){Us(x)}}))),b||o.isCancellationRequested)break}return yield m,o.isCancellationRequested?(h.dispose(),Promise.reject(new U1)):new YIt(d.sort(JIt(r.snippetSortOrder)),p,{entries:f,elapsed:a.elapsed()},h)})}function kle(i,e){if(i.sortTextLow&&e.sortTextLow){if(i.sortTextLowe.sortTextLow)return 1}return i.textLabele.textLabel?1:i.completion.kind-e.completion.kind}function ZIt(i,e){if(i.completion.kind!==e.completion.kind){if(i.completion.kind===27)return-1;if(e.completion.kind===27)return 1}return kle(i,e)}function QIt(i,e){if(i.completion.kind!==e.completion.kind){if(i.completion.kind===27)return 1;if(e.completion.kind===27)return-1}return kle(i,e)}const Bz=new Map;Bz.set(0,ZIt);Bz.set(2,QIt);Bz.set(1,kle);function JIt(i){return Bz.get(i)}si.registerCommand("_executeCompletionItemProvider",(i,...e)=>xM(void 0,void 0,void 0,function*(){const[n,r,s,o]=e;Ui(Jt.isUri(n)),Ui(ve.isIPosition(r)),Ui(typeof s=="string"||!s),Ui(typeof o=="number"||!o);const{completionProvider:a}=i.get(Et),l=yield i.get(Ec).createModelReference(n);try{const c={incomplete:!1,suggestions:[]},u=[],d=l.object.textEditorModel.validatePosition(r),h=yield xle(a,l.object.textEditorModel,d,void 0,{triggerCharacter:s??void 0,triggerKind:s?1:0});for(const f of h.items)u.length<(o??0)&&u.push(f.resolve(Hn.None)),c.incomplete=c.incomplete||f.container.incomplete,c.suggestions.push(f.completion);try{return yield Promise.all(u),c}finally{setTimeout(()=>h.disposable.dispose(),100)}}finally{l.dispose()}}));function eTt(i,e){var n;(n=i.getContribution("editor.contrib.suggestController"))===null||n===void 0||n.triggerSuggest(new Set().add(e),void 0,!0)}class k2{static isAllOff(e){return e.other==="off"&&e.comments==="off"&&e.strings==="off"}static isAllOn(e){return e.other==="on"&&e.comments==="on"&&e.strings==="on"}static valueFor(e,n){switch(n){case 1:return e.comments;case 2:return e.strings;default:return e.other}}}function ive(i,e=Aa){return Kgt(i,e)?i.charAt(0).toUpperCase()+i.slice(1):i}var tTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},nTt=function(i,e){return function(n,r){e(n,r,i)}};class rve{constructor(e){this._delegates=e}resolve(e){for(const n of this._delegates){const r=n.resolve(e);if(r!==void 0)return r}}}class sve{constructor(e,n,r,s){this._model=e,this._selection=n,this._selectionIdx=r,this._overtypingCapturer=s}resolve(e){const{name:n}=e;if(n==="SELECTION"||n==="TM_SELECTED_TEXT"){let r=this._model.getValueInRange(this._selection)||void 0,s=this._selection.startLineNumber!==this._selection.endLineNumber;if(!r&&this._overtypingCapturer){const o=this._overtypingCapturer.getLastOvertypedInfo(this._selectionIdx);o&&(r=o.value,s=o.multiline)}if(r&&s&&e.snippet){const o=this._model.getLineContent(this._selection.startLineNumber),a=ar(o,0,this._selection.startColumn-1);let l=a;e.snippet.walk(u=>u===e?!1:(u instanceof Fl&&(l=ar(Km(u.value).pop())),!0));const c=ax(l,a);r=r.replace(/(\r\n|\r|\n)(.*)/g,(u,d,h)=>`${d}${l.substr(c)}${h}`)}return r}else{if(n==="TM_CURRENT_LINE")return this._model.getLineContent(this._selection.positionLineNumber);if(n==="TM_CURRENT_WORD"){const r=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return r&&r.word||void 0}else{if(n==="TM_LINE_INDEX")return String(this._selection.positionLineNumber-1);if(n==="TM_LINE_NUMBER")return String(this._selection.positionLineNumber);if(n==="CURSOR_INDEX")return String(this._selectionIdx);if(n==="CURSOR_NUMBER")return String(this._selectionIdx+1)}}}}class ove{constructor(e,n){this._labelService=e,this._model=n}resolve(e){const{name:n}=e;if(n==="TM_FILENAME")return jy(this._model.uri.fsPath);if(n==="TM_FILENAME_BASE"){const r=jy(this._model.uri.fsPath),s=r.lastIndexOf(".");return s<=0?r:r.slice(0,s)}else{if(n==="TM_DIRECTORY")return W2e(this._model.uri.fsPath)==="."?"":this._labelService.getUriLabel(M$(this._model.uri));if(n==="TM_FILEPATH")return this._labelService.getUriLabel(this._model.uri);if(n==="RELATIVE_FILEPATH")return this._labelService.getUriLabel(this._model.uri,{relative:!0,noPrefix:!0})}}}class ave{constructor(e,n,r,s){this._readClipboardText=e,this._selectionIdx=n,this._selectionCount=r,this._spread=s}resolve(e){if(e.name!=="CLIPBOARD")return;const n=this._readClipboardText();if(n){if(this._spread){const r=n.split(/\r\n|\n|\r/).filter(s=>!K2e(s));if(r.length===this._selectionCount)return r[this._selectionIdx]}return n}}}let bj=class{constructor(e,n,r){this._model=e,this._selection=n,this._languageConfigurationService=r}resolve(e){const{name:n}=e,r=this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber,this._selection.selectionStartColumn),s=this._languageConfigurationService.getLanguageConfiguration(r).comments;if(s){if(n==="LINE_COMMENT")return s.lineCommentToken||void 0;if(n==="BLOCK_COMMENT_START")return s.blockCommentStartToken||void 0;if(n==="BLOCK_COMMENT_END")return s.blockCommentEndToken||void 0}}};bj=tTt([nTt(2,dr)],bj);class Pp{constructor(){this._date=new Date}resolve(e){const{name:n}=e;if(n==="CURRENT_YEAR")return String(this._date.getFullYear());if(n==="CURRENT_YEAR_SHORT")return String(this._date.getFullYear()).slice(-2);if(n==="CURRENT_MONTH")return String(this._date.getMonth().valueOf()+1).padStart(2,"0");if(n==="CURRENT_DATE")return String(this._date.getDate().valueOf()).padStart(2,"0");if(n==="CURRENT_HOUR")return String(this._date.getHours().valueOf()).padStart(2,"0");if(n==="CURRENT_MINUTE")return String(this._date.getMinutes().valueOf()).padStart(2,"0");if(n==="CURRENT_SECOND")return String(this._date.getSeconds().valueOf()).padStart(2,"0");if(n==="CURRENT_DAY_NAME")return Pp.dayNames[this._date.getDay()];if(n==="CURRENT_DAY_NAME_SHORT")return Pp.dayNamesShort[this._date.getDay()];if(n==="CURRENT_MONTH_NAME")return Pp.monthNames[this._date.getMonth()];if(n==="CURRENT_MONTH_NAME_SHORT")return Pp.monthNamesShort[this._date.getMonth()];if(n==="CURRENT_SECONDS_UNIX")return String(Math.floor(this._date.getTime()/1e3));if(n==="CURRENT_TIMEZONE_OFFSET"){const r=this._date.getTimezoneOffset(),s=r>0?"-":"+",o=Math.trunc(Math.abs(r/60)),a=o<10?"0"+o:o,l=Math.abs(r)-o*60,c=l<10?"0"+l:l;return s+a+":"+c}}}Pp.dayNames=[L("Sunday","Sunday"),L("Monday","Monday"),L("Tuesday","Tuesday"),L("Wednesday","Wednesday"),L("Thursday","Thursday"),L("Friday","Friday"),L("Saturday","Saturday")];Pp.dayNamesShort=[L("SundayShort","Sun"),L("MondayShort","Mon"),L("TuesdayShort","Tue"),L("WednesdayShort","Wed"),L("ThursdayShort","Thu"),L("FridayShort","Fri"),L("SaturdayShort","Sat")];Pp.monthNames=[L("January","January"),L("February","February"),L("March","March"),L("April","April"),L("May","May"),L("June","June"),L("July","July"),L("August","August"),L("September","September"),L("October","October"),L("November","November"),L("December","December")];Pp.monthNamesShort=[L("JanuaryShort","Jan"),L("FebruaryShort","Feb"),L("MarchShort","Mar"),L("AprilShort","Apr"),L("MayShort","May"),L("JuneShort","Jun"),L("JulyShort","Jul"),L("AugustShort","Aug"),L("SeptemberShort","Sep"),L("OctoberShort","Oct"),L("NovemberShort","Nov"),L("DecemberShort","Dec")];class lve{constructor(e){this._workspaceService=e}resolve(e){if(!this._workspaceService)return;const n=avt(this._workspaceService.getWorkspace());if(!svt(n)){if(e.name==="WORKSPACE_NAME")return this._resolveWorkspaceName(n);if(e.name==="WORKSPACE_FOLDER")return this._resoveWorkspacePath(n)}}_resolveWorkspaceName(e){if(oee(e))return jy(e.uri.path);let n=jy(e.configPath.path);return n.endsWith(aee)&&(n=n.substr(0,n.length-aee.length-1)),n}_resoveWorkspacePath(e){if(oee(e))return ive(e.uri.fsPath);const n=jy(e.configPath.path);let r=e.configPath.fsPath;return r.endsWith(n)&&(r=r.substr(0,r.length-n.length-1)),r?ive(r):"/"}}class cve{resolve(e){const{name:n}=e;if(n==="RANDOM")return Math.random().toString().slice(-6);if(n==="RANDOM_HEX")return Math.random().toString(16).slice(-6);if(n==="UUID")return Iz()}}var iTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},rTt=function(i,e){return function(n,r){e(n,r,i)}},dp;class Hd{constructor(e,n,r){this._editor=e,this._snippet=n,this._snippetLineLeadingWhitespace=r,this._offset=-1,this._nestingLevel=1,this._placeholderGroups=Nfe(n.placeholders,Qd.compareByIndex),this._placeholderGroupsIdx=-1}initialize(e){this._offset=e.newPosition}dispose(){this._placeholderDecorations&&this._editor.removeDecorations([...this._placeholderDecorations.values()]),this._placeholderGroups.length=0}_initDecorations(){if(this._offset===-1)throw new Error("Snippet not initialized!");if(this._placeholderDecorations)return;this._placeholderDecorations=new Map;const e=this._editor.getModel();this._editor.changeDecorations(n=>{for(const r of this._snippet.placeholders){const s=this._snippet.offset(r),o=this._snippet.fullLen(r),a=J.fromPositions(e.getPositionAt(this._offset+s),e.getPositionAt(this._offset+s+o)),l=r.isFinalTabstop?Hd._decor.inactiveFinal:Hd._decor.inactive,c=n.addDecoration(a,l);this._placeholderDecorations.set(r,c)}})}move(e){if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){const s=[];for(const o of this._placeholderGroups[this._placeholderGroupsIdx])if(o.transform){const a=this._placeholderDecorations.get(o),l=this._editor.getModel().getDecorationRange(a),c=this._editor.getModel().getValueInRange(l),u=o.transform.resolve(c).split(/\r\n|\r|\n/);for(let d=1;d0&&this._editor.executeEdits("snippet.placeholderTransform",s)}let n=!1;e===!0&&this._placeholderGroupsIdx0&&(this._placeholderGroupsIdx-=1,n=!0);const r=this._editor.getModel().changeDecorations(s=>{const o=new Set,a=[];for(const l of this._placeholderGroups[this._placeholderGroupsIdx]){const c=this._placeholderDecorations.get(l),u=this._editor.getModel().getDecorationRange(c);a.push(new Ft(u.startLineNumber,u.startColumn,u.endLineNumber,u.endColumn)),n=n&&this._hasPlaceholderBeenCollapsed(l),s.changeDecorationOptions(c,l.isFinalTabstop?Hd._decor.activeFinal:Hd._decor.active),o.add(l);for(const d of this._snippet.enclosingPlaceholders(l)){const h=this._placeholderDecorations.get(d);s.changeDecorationOptions(h,d.isFinalTabstop?Hd._decor.activeFinal:Hd._decor.active),o.add(d)}}for(const[l,c]of this._placeholderDecorations)o.has(l)||s.changeDecorationOptions(c,l.isFinalTabstop?Hd._decor.inactiveFinal:Hd._decor.inactive);return a});return n?this.move(e):r??[]}_hasPlaceholderBeenCollapsed(e){let n=e;for(;n;){if(n instanceof Qd){const r=this._placeholderDecorations.get(n);if(this._editor.getModel().getDecorationRange(r).isEmpty()&&n.toString().length>0)return!0}n=n.parent}return!1}get isAtFirstPlaceholder(){return this._placeholderGroupsIdx<=0||this._placeholderGroups.length===0}get isAtLastPlaceholder(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1}get hasPlaceholder(){return this._snippet.placeholders.length>0}get isTrivialSnippet(){if(this._snippet.placeholders.length===0)return!0;if(this._snippet.placeholders.length===1){const[e]=this._snippet.placeholders;if(e.isFinalTabstop&&this._snippet.rightMostDescendant===e)return!0}return!1}computePossibleSelections(){const e=new Map;for(const n of this._placeholderGroups){let r;for(const s of n){if(s.isFinalTabstop)break;r||(r=[],e.set(s.index,r));const o=this._placeholderDecorations.get(s),a=this._editor.getModel().getDecorationRange(o);if(!a){e.delete(s.index);break}r.push(a)}}return e}get activeChoice(){if(!this._placeholderDecorations)return;const e=this._placeholderGroups[this._placeholderGroupsIdx][0];if(!(e!=null&&e.choice))return;const n=this._placeholderDecorations.get(e);if(!n)return;const r=this._editor.getModel().getDecorationRange(n);if(r)return{range:r,choice:e.choice}}get hasChoice(){let e=!1;return this._snippet.walk(n=>(e=n instanceof QI,!e)),e}merge(e){const n=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations(r=>{for(const s of this._placeholderGroups[this._placeholderGroupsIdx]){const o=e.shift();console.assert(o._offset!==-1),console.assert(!o._placeholderDecorations);const a=o._snippet.placeholderInfo.last.index;for(const c of o._snippet.placeholderInfo.all)c.isFinalTabstop?c.index=s.index+(a+1)/this._nestingLevel:c.index=s.index+c.index/this._nestingLevel;this._snippet.replace(s,o._snippet.children);const l=this._placeholderDecorations.get(s);r.removeDecoration(l),this._placeholderDecorations.delete(s);for(const c of o._snippet.placeholders){const u=o._snippet.offset(c),d=o._snippet.fullLen(c),h=J.fromPositions(n.getPositionAt(o._offset+u),n.getPositionAt(o._offset+u+d)),f=r.addDecoration(h,Hd._decor.inactive);this._placeholderDecorations.set(c,f)}}this._placeholderGroups=Nfe(this._snippet.placeholders,Qd.compareByIndex)})}}Hd._decor={active:kn.register({description:"snippet-placeholder-1",stickiness:0,className:"snippet-placeholder"}),inactive:kn.register({description:"snippet-placeholder-2",stickiness:1,className:"snippet-placeholder"}),activeFinal:kn.register({description:"snippet-placeholder-3",stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:kn.register({description:"snippet-placeholder-4",stickiness:1,className:"finish-snippet-placeholder"})};const uve={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};let yj=dp=class{static adjustWhitespace(e,n,r,s,o){const a=e.getLineContent(n.lineNumber),l=ar(a,0,n.column-1);let c;return s.walk(u=>{if(!(u instanceof Fl)||u.parent instanceof QI||o&&!o.has(u))return!0;const d=u.value.split(/\r\n|\r|\n/);if(r){const f=s.offset(u);if(f===0)d[0]=e.normalizeIndentation(d[0]);else{c=c??s.toString();const p=c.charCodeAt(f-1);(p===10||p===13)&&(d[0]=e.normalizeIndentation(l+d[0]))}for(let p=1;pk.get(px)),g=e.invokeWithinContext(k=>new ove(k.get(KE),f)),m=()=>l,_=f.getValueInRange(dp.adjustSelection(f,e.getSelection(),r,0)),b=f.getValueInRange(dp.adjustSelection(f,e.getSelection(),0,s)),y=f.getLineFirstNonWhitespaceColumn(e.getSelection().positionLineNumber),x=e.getSelections().map((k,D)=>({selection:k,idx:D})).sort((k,D)=>J.compareRangesUsingStarts(k.selection,D.selection));for(const{selection:k,idx:D}of x){let R=dp.adjustSelection(f,k,r,0),E=dp.adjustSelection(f,k,0,s);_!==f.getValueInRange(R)&&(R=k),b!==f.getValueInRange(E)&&(E=k);const A=k.setStartPosition(R.startLineNumber,R.startColumn).setEndPosition(E.endLineNumber,E.endColumn),M=new dI().parse(n,!0,o),N=A.getStartPosition(),P=dp.adjustWhitespace(f,N,a||D>0&&y!==f.getLineFirstNonWhitespaceColumn(k.positionLineNumber),M);M.resolveVariables(new rve([g,new ave(m,D,x.length,e.getOption(78)==="spread"),new sve(f,k,D,c),new bj(f,k,u),new Pp,new lve(p),new cve])),d[D]=Vr.replace(A,M.toString()),d[D].identifier={major:D,minor:0},d[D]._isTracked=!0,h[D]=new Hd(e,M,P)}return{edits:d,snippets:h}}static createEditsAndSnippetsFromEdits(e,n,r,s,o,a,l){if(!e.hasModel()||n.length===0)return{edits:[],snippets:[]};const c=[],u=e.getModel(),d=new dI,h=new a4,f=new rve([e.invokeWithinContext(g=>new ove(g.get(KE),u)),new ave(()=>o,0,e.getSelections().length,e.getOption(78)==="spread"),new sve(u,e.getSelection(),0,a),new bj(u,e.getSelection(),l),new Pp,new lve(e.invokeWithinContext(g=>g.get(px))),new cve]);n=n.sort((g,m)=>J.compareRangesUsingStarts(g.range,m.range));let p=0;for(let g=0;g0){const D=n[g-1].range,R=J.fromPositions(D.getEndPosition(),m.getStartPosition()),E=new Fl(u.getValueInRange(R));h.appendChild(E),p+=E.value.length}const b=d.parseFragment(_,h);dp.adjustWhitespace(u,m.getStartPosition(),!0,h,new Set(b)),h.resolveVariables(f);const y=h.toString(),x=y.slice(p);p=y.length;const k=Vr.replace(m,x);k.identifier={major:g,minor:0},k._isTracked=!0,c.push(k)}return d.ensureFinalTabstop(h,r,!0),{edits:c,snippets:[new Hd(e,h,"")]}}constructor(e,n,r=uve,s){this._editor=e,this._template=n,this._options=r,this._languageConfigurationService=s,this._templateMerges=[],this._snippets=[]}dispose(){Mi(this._snippets)}_logInfo(){return`template="${this._template}", merged_templates="${this._templateMerges.join(" -> ")}"`}insert(){if(!this._editor.hasModel())return;const{edits:e,snippets:n}=typeof this._template=="string"?dp.createEditsAndSnippetsFromSelections(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService):dp.createEditsAndSnippetsFromEdits(this._editor,this._template,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer,this._languageConfigurationService);this._snippets=n,this._editor.executeEdits("snippet",e,r=>{const s=r.filter(o=>!!o.identifier);for(let o=0;oFt.fromPositions(o.range.getEndPosition()))}),this._editor.revealRange(this._editor.getSelections()[0])}merge(e,n=uve){if(!this._editor.hasModel())return;this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,e]);const{edits:r,snippets:s}=dp.createEditsAndSnippetsFromSelections(this._editor,e,n.overwriteBefore,n.overwriteAfter,!0,n.adjustWhitespace,n.clipboardText,n.overtypingCapturer,this._languageConfigurationService);this._editor.executeEdits("snippet",r,o=>{const a=o.filter(c=>!!c.identifier);for(let c=0;cFt.fromPositions(c.range.getEndPosition()))})}next(){const e=this._move(!0);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}prev(){const e=this._move(!1);this._editor.setSelections(e),this._editor.revealPositionInCenterIfOutsideViewport(e[0].getPosition())}_move(e){const n=[];for(const r of this._snippets){const s=r.move(e);n.push(...s)}return n}get isAtFirstPlaceholder(){return this._snippets[0].isAtFirstPlaceholder}get isAtLastPlaceholder(){return this._snippets[0].isAtLastPlaceholder}get hasPlaceholder(){return this._snippets[0].hasPlaceholder}get hasChoice(){return this._snippets[0].hasChoice}get activeChoice(){return this._snippets[0].activeChoice}isSelectionWithinPlaceholders(){if(!this.hasPlaceholder)return!1;const e=this._editor.getSelections();if(e.length{o.push(...s.get(a))})}e.sort(J.compareRangesUsingStarts);for(const[r,s]of n){if(s.length!==e.length){n.delete(r);continue}s.sort(J.compareRangesUsingStarts);for(let o=0;o0}};yj=dp=iTt([rTt(3,dr)],yj);var sTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},V6=function(i,e){return function(n,r){e(n,r,i)}},HD;const dve={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};let fa=HD=class{static get(e){return e.getContribution(HD.ID)}constructor(e,n,r,s,o){this._editor=e,this._logService=n,this._languageFeaturesService=r,this._languageConfigurationService=o,this._snippetListener=new Xe,this._modelVersionId=-1,this._inSnippet=HD.InSnippetMode.bindTo(s),this._hasNextTabstop=HD.HasNextTabstop.bindTo(s),this._hasPrevTabstop=HD.HasPrevTabstop.bindTo(s)}dispose(){var e;this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),(e=this._session)===null||e===void 0||e.dispose(),this._snippetListener.dispose()}insert(e,n){try{this._doInsert(e,typeof n>"u"?dve:Object.assign(Object.assign({},dve),n))}catch(r){this.cancel(),this._logService.error(r),this._logService.error("snippet_error"),this._logService.error("insert_template=",e),this._logService.error("existing_template=",this._session?this._session._logInfo():"")}}_doInsert(e,n){var r;if(this._editor.hasModel()){if(this._snippetListener.clear(),n.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session&&typeof e!="string"&&this.cancel(),this._session?(Ui(typeof e=="string"),this._session.merge(e,n)):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new yj(this._editor,e,n,this._languageConfigurationService),this._session.insert()),n.undoStopAfter&&this._editor.getModel().pushStackElement(),!((r=this._session)===null||r===void 0)&&r.hasChoice){const s={_debugDisplayName:"snippetChoiceCompletions",provideCompletionItems:(d,h)=>{if(!this._session||d!==this._editor.getModel()||!ve.equals(this._editor.getPosition(),h))return;const{activeChoice:f}=this._session;if(!f||f.choice.options.length===0)return;const p=d.getValueInRange(f.range),g=!!f.choice.options.find(_=>_.value===p),m=[];for(let _=0;_{a==null||a.dispose(),l=!1},u=()=>{l||(a=this._languageFeaturesService.completionProvider.register({language:o.getLanguageId(),pattern:o.uri.fsPath,scheme:o.uri.scheme,exclusive:!0},s),this._snippetListener.add(a),l=!0)};this._choiceCompletions={provider:s,enable:u,disable:c}}this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent(s=>s.isFlush&&this.cancel())),this._snippetListener.add(this._editor.onDidChangeModel(()=>this.cancel())),this._snippetListener.add(this._editor.onDidChangeCursorSelection(()=>this._updateState()))}}_updateState(){if(!(!this._session||!this._editor.hasModel())){if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this._editor.getModel().pushStackElement(),this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}}_handleChoice(){var e;if(!this._session||!this._editor.hasModel()){this._currentChoice=void 0;return}const{activeChoice:n}=this._session;if(!n||!this._choiceCompletions){(e=this._choiceCompletions)===null||e===void 0||e.disable(),this._currentChoice=void 0;return}this._currentChoice!==n.choice&&(this._currentChoice=n.choice,this._choiceCompletions.enable(),queueMicrotask(()=>{eTt(this._editor,this._choiceCompletions.provider)}))}finish(){for(;this._inSnippet.get();)this.next()}cancel(e=!1){var n;this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),this._currentChoice=void 0,(n=this._session)===null||n===void 0||n.dispose(),this._session=void 0,this._modelVersionId=-1,e&&this._editor.setSelections([this._editor.getSelection()])}prev(){var e;(e=this._session)===null||e===void 0||e.prev(),this._updateState()}next(){var e;(e=this._session)===null||e===void 0||e.next(),this._updateState()}isInSnippet(){return!!this._inSnippet.get()}};fa.ID="snippetController2";fa.InSnippetMode=new yt("inSnippetMode",!1,L("inSnippetMode","Whether the editor in current in snippet mode"));fa.HasNextTabstop=new yt("hasNextTabstop",!1,L("hasNextTabstop","Whether there is a next tab stop when in snippet mode"));fa.HasPrevTabstop=new yt("hasPrevTabstop",!1,L("hasPrevTabstop","Whether there is a previous tab stop when in snippet mode"));fa=HD=sTt([V6(1,vd),V6(2,Et),V6(3,mn),V6(4,dr)],fa);_i(fa.ID,fa,4);const jz=Ho.bindToContribution(fa.get);ct(new jz({id:"jumpToNextSnippetPlaceholder",precondition:ze.and(fa.InSnippetMode,fa.HasNextTabstop),handler:i=>i.next(),kbOpts:{weight:130,kbExpr:oe.editorTextFocus,primary:2}}));ct(new jz({id:"jumpToPrevSnippetPlaceholder",precondition:ze.and(fa.InSnippetMode,fa.HasPrevTabstop),handler:i=>i.prev(),kbOpts:{weight:130,kbExpr:oe.editorTextFocus,primary:1026}}));ct(new jz({id:"leaveSnippet",precondition:fa.InSnippetMode,handler:i=>i.cancel(!0),kbOpts:{weight:130,kbExpr:oe.editorTextFocus,primary:9,secondary:[1033]}}));ct(new jz({id:"acceptSnippet",precondition:fa.InSnippetMode,handler:i=>i.finish()}));var oTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},DK=function(i,e){return function(n,r){e(n,r,i)}},r0=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},ju;(function(i){i[i.Undo=0]="Undo",i[i.Redo=1]="Redo",i[i.AcceptWord=2]="AcceptWord",i[i.Other=3]="Other"})(ju||(ju={}));let xne=class extends Le{get isAcceptingPartially(){return this._isAcceptingPartially}constructor(e,n,r,s,o,a,l,c,u,d,h,f){super(),this.textModel=e,this.selectedSuggestItem=n,this.cursorPosition=r,this.textModelVersionId=s,this._debounceValue=o,this._suggestPreviewEnabled=a,this._suggestPreviewMode=l,this._inlineSuggestMode=c,this._enabled=u,this._instantiationService=d,this._commandService=h,this._languageConfigurationService=f,this._source=this._register(this._instantiationService.createInstance(Sne,this.textModel,this.textModelVersionId,this._debounceValue)),this._isActive=vr(this,!1),this._forceUpdate=GRe("forceUpdate"),this._selectedInlineCompletionId=vr(this,void 0),this._isAcceptingPartially=!1,this._preserveCurrentCompletionReasons=new Set([ju.Redo,ju.Undo,ju.AcceptWord]),this._fetchInlineCompletions=qwt({owner:this,createEmptyChangeSummary:()=>({preserveCurrentCompletion:!1,inlineCompletionTriggerKind:pv.Automatic}),handleChange:(g,m)=>(g.didChange(this.textModelVersionId)&&this._preserveCurrentCompletionReasons.has(g.change)?m.preserveCurrentCompletion=!0:g.didChange(this._forceUpdate)&&(m.inlineCompletionTriggerKind=g.change),!0)},(g,m)=>{if(this._forceUpdate.read(g),!(this._enabled.read(g)&&this.selectedSuggestItem.read(g)||this._isActive.read(g))){this._source.cancelUpdate();return}this.textModelVersionId.read(g);const b=this.selectedInlineCompletion.get(),y=m.preserveCurrentCompletion||b!=null&&b.forwardStable?b:void 0,x=this._source.suggestWidgetInlineCompletions.get(),k=this.selectedSuggestItem.read(g);if(x&&!k){const E=this._source.inlineCompletions.get();Pr(A=>{E&&x.request.versionId>E.request.versionId&&this._source.inlineCompletions.set(x.clone(),A),this._source.clearSuggestWidgetInlineCompletions(A)})}const D=this.cursorPosition.read(g),R={triggerKind:m.inlineCompletionTriggerKind,selectedSuggestionInfo:k==null?void 0:k.toSelectedSuggestionInfo()};return this._source.fetch(D,R,y)}),this._filteredInlineCompletionItems=ni(this,g=>{const m=this._source.inlineCompletions.read(g);if(!m)return[];const _=this.cursorPosition.read(g);return m.inlineCompletions.filter(y=>y.isVisible(this.textModel,_,g))}),this.selectedInlineCompletionIndex=ni(this,g=>{const m=this._selectedInlineCompletionId.read(g),_=this._filteredInlineCompletionItems.read(g),b=this._selectedInlineCompletionId===void 0?-1:_.findIndex(y=>y.semanticId===m);return b===-1?(this._selectedInlineCompletionId.set(void 0,void 0),0):b}),this.selectedInlineCompletion=ni(this,g=>{const m=this._filteredInlineCompletionItems.read(g),_=this.selectedInlineCompletionIndex.read(g);return m[_]}),this.lastTriggerKind=this._source.inlineCompletions.map(g=>g==null?void 0:g.request.context.triggerKind),this.inlineCompletionsCount=ni(this,g=>{if(this.lastTriggerKind.read(g)===pv.Explicit)return this._filteredInlineCompletionItems.read(g).length}),this.state=L_e({owner:this,equalityComparer:(g,m)=>!g||!m?g===m:K0e(g.ghostText,m.ghostText)&&g.inlineCompletion===m.inlineCompletion&&g.suggestItem===m.suggestItem},g=>{var m;const _=this.textModel,b=this.selectedSuggestItem.read(g);if(b){const y=b.toSingleTextEdit().removeCommonPrefix(_),x=this._computeAugmentedCompletion(y,g);if(!this._suggestPreviewEnabled.read(g)&&!x)return;const D=(m=x==null?void 0:x.edit)!==null&&m!==void 0?m:y,R=x?x.edit.text.length-y.text.length:0,E=this._suggestPreviewMode.read(g),A=this.cursorPosition.read(g),M=D.computeGhostText(_,E,A,R);return{ghostText:M??new _j(D.range.endLineNumber,[]),inlineCompletion:x==null?void 0:x.completion,suggestItem:b}}else{if(!this._isActive.read(g))return;const y=this.selectedInlineCompletion.read(g);if(!y)return;const x=y.toSingleTextEdit(g),k=this._inlineSuggestMode.read(g),D=this.cursorPosition.read(g),R=x.computeGhostText(_,k,D);return R?{ghostText:R,inlineCompletion:y,suggestItem:void 0}:void 0}}),this.ghostText=L_e({owner:this,equalityComparer:K0e},g=>{const m=this.state.read(g);if(m)return m.ghostText}),this._register(rO(this._fetchInlineCompletions));let p;this._register(ur(g=>{var m,_;const b=this.state.read(g),y=b==null?void 0:b.inlineCompletion;if((y==null?void 0:y.semanticId)!==(p==null?void 0:p.semanticId)&&(p=y,y)){const x=y.inlineCompletion,k=x.source;(_=(m=k.provider).handleItemDidShow)===null||_===void 0||_.call(m,k.inlineCompletions,x.sourceInlineCompletion,x.insertText)}}))}trigger(e){return r0(this,void 0,void 0,function*(){this._isActive.set(!0,e),yield this._fetchInlineCompletions.get()})}triggerExplicitly(e){return r0(this,void 0,void 0,function*(){ute(e,n=>{this._isActive.set(!0,n),this._forceUpdate.trigger(n,pv.Explicit)}),yield this._fetchInlineCompletions.get()})}stop(e){ute(e,n=>{this._isActive.set(!1,n),this._source.clear(n)})}_computeAugmentedCompletion(e,n){const r=this.textModel,s=this._source.suggestWidgetInlineCompletions.read(n),o=s?s.inlineCompletions:[this.selectedInlineCompletion.read(n)].filter(tP);return jct(o,l=>{let c=l.toSingleTextEdit(n);return c=c.removeCommonPrefix(r,J.fromPositions(c.range.getStartPosition(),e.range.getEndPosition())),c.augments(e)?{edit:c,completion:l}:void 0})}_deltaSelectedInlineCompletionIndex(e){return r0(this,void 0,void 0,function*(){yield this.triggerExplicitly();const n=this._filteredInlineCompletionItems.get()||[];if(n.length>0){const r=(this.selectedInlineCompletionIndex.get()+e+n.length)%n.length;this._selectedInlineCompletionId.set(n[r].semanticId,void 0)}else this._selectedInlineCompletionId.set(void 0,void 0)})}next(){return r0(this,void 0,void 0,function*(){yield this._deltaSelectedInlineCompletionIndex(1)})}previous(){return r0(this,void 0,void 0,function*(){yield this._deltaSelectedInlineCompletionIndex(-1)})}accept(e){var n;return r0(this,void 0,void 0,function*(){if(e.getModel()!==this.textModel)throw new Vs;const r=this.state.get();if(!r||r.ghostText.isEmpty()||!r.inlineCompletion)return;const s=r.inlineCompletion.toInlineCompletion(void 0);e.pushUndoStop(),s.snippetInfo?(e.executeEdits("inlineSuggestion.accept",[Vr.replaceMove(s.range,""),...s.additionalTextEdits]),e.setPosition(s.snippetInfo.range.getStartPosition()),(n=fa.get(e))===null||n===void 0||n.insert(s.snippetInfo.snippet,{undoStopBefore:!1})):e.executeEdits("inlineSuggestion.accept",[Vr.replaceMove(s.range,s.insertText),...s.additionalTextEdits]),s.command&&s.source.addRef(),Pr(o=>{this._source.clear(o),this._isActive.set(!1,o)}),s.command&&(yield this._commandService.executeCommand(s.command.id,...s.command.arguments||[]).then(void 0,Us),s.source.removeRef())})}acceptNextWord(e){return r0(this,void 0,void 0,function*(){yield this._acceptNext(e,(n,r)=>{const s=this.textModel.getLanguageIdAtPosition(n.lineNumber,n.column),o=this._languageConfigurationService.getLanguageConfiguration(s),a=new RegExp(o.wordDefinition.source,o.wordDefinition.flags.replace("g","")),l=r.match(a);let c=0;l&&l.index!==void 0?l.index===0?c=l[0].length:c=l.index:c=r.length;const d=/\s+/g.exec(r);return d&&d.index!==void 0&&d.index+d[0].length{const s=r.match(/\n/);return s&&s.index!==void 0?s.index+1:r.length})})}_acceptNext(e,n){return r0(this,void 0,void 0,function*(){if(e.getModel()!==this.textModel)throw new Vs;const r=this.state.get();if(!r||r.ghostText.isEmpty()||!r.inlineCompletion)return;const s=r.ghostText,o=r.inlineCompletion.toInlineCompletion(void 0);if(o.snippetInfo||o.filterText!==o.insertText){yield this.accept(e);return}const a=s.parts[0],l=new ve(s.lineNumber,a.column),c=a.lines.join(` `),u=n(l,c);if(u===c.length&&s.parts.length===1){this.accept(e);return}const d=c.substring(0,u);this._isAcceptingPartially=!0;try{e.pushUndoStop(),e.executeEdits("inlineSuggestion.accept",[Vr.replace(J.fromPositions(l),d)]);const h=bne(d);e.setPosition(vne(l,h))}finally{this._isAcceptingPartially=!1}if(o.source.provider.handlePartialAccept){const h=J.fromPositions(o.range.getStartPosition(),vne(l,bne(d))),f=e.getModel().getValueInRange(h,1);o.source.provider.handlePartialAccept(o.source.inlineCompletions,o.sourceInlineCompletion,f.length)}})}handleSuggestAccepted(e){var n,r;const s=e.toSingleTextEdit().removeCommonPrefix(this.textModel),o=this._computeAugmentedCompletion(s,void 0);if(!o)return;const a=o.completion.inlineCompletion;(r=(n=a.source.provider).handlePartialAccept)===null||r===void 0||r.call(n,a.source.inlineCompletions,a.sourceInlineCompletion,s.text.length)}};xne=oTt([DK(9,hn),DK(10,us),DK(11,dr)],xne);var aTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},hve=function(i,e){return function(n,r){e(n,r,i)}},kN;class Lle{constructor(e){this.name=e}select(e,n,r){if(r.length===0)return 0;const s=r[0].score[0];for(let o=0;oc&&h.type===r[u].completion.kind&&h.insertText===r[u].completion.insertText&&(c=h.touch,l=u),r[u].completion.preselect&&a===-1)return a=u}return l!==-1?l:a!==-1?a:0}toJSON(){return this._cache.toJSON()}fromJSON(e){this._cache.clear();const n=0;for(const[r,s]of e)s.touch=n,s.type=typeof s.type=="number"?s.type:sP.fromString(s.type),this._cache.set(r,s);this._seq=this._cache.size}}class cTt extends Lle{constructor(){super("recentlyUsedByPrefix"),this._trie=eE.forStrings(),this._seq=0}memorize(e,n,r){const{word:s}=e.getWordUntilPosition(n),o=`${e.getLanguageId()}/${s}`;this._trie.set(o,{type:r.completion.kind,insertText:r.completion.insertText,touch:this._seq++})}select(e,n,r){const{word:s}=e.getWordUntilPosition(n);if(!s)return super.select(e,n,r);const o=`${e.getLanguageId()}/${s}`;let a=this._trie.get(o);if(a||(a=this._trie.findSubstr(o)),a)for(let l=0;le.push([r,n])),e.sort((n,r)=>-(n[1].touch-r[1].touch)).forEach((n,r)=>n[1].touch=r),e.slice(0,200)}fromJSON(e){if(this._trie.clear(),e.length>0){this._seq=e[0][1].touch+1;for(const[n,r]of e)r.type=typeof r.type=="number"?r.type:sP.fromString(r.type),this._trie.set(n,r)}}}let _O=kN=class{constructor(e,n){this._storageService=e,this._configService=n,this._disposables=new Xe,this._persistSoon=new Ji(()=>this._saveState(),500),this._disposables.add(e.onWillSaveState(r=>{r.reason===E7.SHUTDOWN&&this._saveState()}))}dispose(){this._disposables.dispose(),this._persistSoon.dispose()}memorize(e,n,r){this._withStrategy(e,n).memorize(e,n,r),this._persistSoon.schedule()}select(e,n,r){return this._withStrategy(e,n).select(e,n,r)}_withStrategy(e,n){var r;const s=this._configService.getValue("editor.suggestSelection",{overrideIdentifier:e.getLanguageIdAtPosition(n.lineNumber,n.column),resource:e.uri});if(((r=this._strategy)===null||r===void 0?void 0:r.name)!==s){this._saveState();const o=kN._strategyCtors.get(s)||MMe;this._strategy=new o;try{const l=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,c=this._storageService.get(`${kN._storagePrefix}/${s}`,l);c&&this._strategy.fromJSON(JSON.parse(c))}catch{}}return this._strategy}_saveState(){if(this._strategy){const n=this._configService.getValue("editor.suggest.shareSuggestSelections")?0:1,r=JSON.stringify(this._strategy);this._storageService.store(`${kN._storagePrefix}/${this._strategy.name}`,r,n,1)}}};_O._strategyCtors=new Map([["recentlyUsedByPrefix",cTt],["recentlyUsed",lTt],["first",MMe]]);_O._storagePrefix="suggest/memories";_O=kN=aTt([hve(0,jf),hve(1,ei)],_O);const Wz=qn("ISuggestMemories");oi(Wz,_O,1);var uTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},dTt=function(i,e){return function(n,r){e(n,r,i)}},kne;let vO=kne=class{constructor(e,n){this._editor=e,this._enabled=!1,this._ckAtEnd=kne.AtEnd.bindTo(n),this._configListener=this._editor.onDidChangeConfiguration(r=>r.hasChanged(122)&&this._update()),this._update()}dispose(){var e;this._configListener.dispose(),(e=this._selectionListener)===null||e===void 0||e.dispose(),this._ckAtEnd.reset()}_update(){const e=this._editor.getOption(122)==="on";if(this._enabled!==e)if(this._enabled=e,this._enabled){const n=()=>{if(!this._editor.hasModel()){this._ckAtEnd.set(!1);return}const r=this._editor.getModel(),s=this._editor.getSelection(),o=r.getWordAtPosition(s.getStartPosition());if(!o){this._ckAtEnd.set(!1);return}this._ckAtEnd.set(o.endColumn===s.getStartPosition().column)};this._selectionListener=this._editor.onDidChangeCursorSelection(n),n()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)}};vO.AtEnd=new yt("atEndOfWord",!1);vO=kne=uTt([dTt(1,mn)],vO);var hTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},fTt=function(i,e){return function(n,r){e(n,r,i)}},LN;let Rx=LN=class{constructor(e,n){this._editor=e,this._index=0,this._ckOtherSuggestions=LN.OtherSuggestions.bindTo(n)}dispose(){this.reset()}reset(){var e;this._ckOtherSuggestions.reset(),(e=this._listener)===null||e===void 0||e.dispose(),this._model=void 0,this._acceptNext=void 0,this._ignore=!1}set({model:e,index:n},r){if(e.items.length===0){this.reset();return}if(LN._moveIndex(!0,e,n)===n){this.reset();return}this._acceptNext=r,this._model=e,this._index=n,this._listener=this._editor.onDidChangeCursorPosition(()=>{this._ignore||this.reset()}),this._ckOtherSuggestions.set(!0)}static _moveIndex(e,n,r){let s=r;for(let o=n.items.length;o>0&&(s=(s+n.items.length+(e?1:-1))%n.items.length,!(s===r||!n.items[s].completion.additionalTextEdits));o--);return s}next(){this._move(!0)}prev(){this._move(!1)}_move(e){if(this._model)try{this._ignore=!0,this._index=LN._moveIndex(e,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}}};Rx.OtherSuggestions=new yt("hasOtherSuggestions",!1);Rx=LN=hTt([fTt(1,mn)],Rx);class pTt{constructor(e,n,r,s){this._disposables=new Xe,this._disposables.add(r.onDidSuggest(o=>{o.completionModel.items.length===0&&this.reset()})),this._disposables.add(r.onDidCancel(o=>{this.reset()})),this._disposables.add(n.onDidShow(()=>this._onItem(n.getFocusedItem()))),this._disposables.add(n.onDidFocus(this._onItem,this)),this._disposables.add(n.onDidHide(this.reset,this)),this._disposables.add(e.onWillType(o=>{if(this._active&&!n.isFrozen()&&r.state!==0){const a=o.charCodeAt(o.length-1);this._active.acceptCharacters.has(a)&&e.getOption(0)&&s(this._active.item)}}))}_onItem(e){if(!e||!Ka(e.item.completion.commitCharacters)){this.reset();return}if(this._active&&this._active.item.item===e.item)return;const n=new q9;for(const r of e.item.completion.commitCharacters)r.length>0&&n.add(r.charCodeAt(0));this._active={acceptCharacters:n,item:e}}reset(){this._active=void 0}dispose(){this._disposables.dispose()}}var gTt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class Wu{provideSelectionRanges(e,n){return gTt(this,void 0,void 0,function*(){const r=[];for(const s of n){const o=[];r.push(o);const a=new Map;yield new Promise(l=>Wu._bracketsRightYield(l,0,e,s,a)),yield new Promise(l=>Wu._bracketsLeftYield(l,0,e,s,a,o))}return r})}static _bracketsRightYield(e,n,r,s,o){const a=new Map,l=Date.now();for(;;){if(n>=Wu._maxRounds){e();break}if(!s){e();break}const c=r.bracketPairs.findNextBracket(s);if(!c){e();break}if(Date.now()-l>Wu._maxDuration){setTimeout(()=>Wu._bracketsRightYield(e,n+1,r,s,o));break}if(c.bracketInfo.isOpeningBracket){const d=c.bracketInfo.bracketText,h=a.has(d)?a.get(d):0;a.set(d,h+1)}else{const d=c.bracketInfo.getOpeningBrackets()[0].bracketText;let h=a.has(d)?a.get(d):0;if(h-=1,a.set(d,Math.max(0,h)),h<0){let f=o.get(d);f||(f=new jl,o.set(d,f)),f.push(c.range)}}s=c.range.getEndPosition()}}static _bracketsLeftYield(e,n,r,s,o,a){const l=new Map,c=Date.now();for(;;){if(n>=Wu._maxRounds&&o.size===0){e();break}if(!s){e();break}const u=r.bracketPairs.findPrevBracket(s);if(!u){e();break}if(Date.now()-c>Wu._maxDuration){setTimeout(()=>Wu._bracketsLeftYield(e,n+1,r,s,o,a));break}if(u.bracketInfo.isOpeningBracket){const h=u.bracketInfo.bracketText;let f=l.has(h)?l.get(h):0;if(f-=1,l.set(h,Math.max(0,f)),f<0){const p=o.get(h);if(p){const g=p.shift();p.size===0&&o.delete(h);const m=J.fromPositions(u.range.getEndPosition(),g.getStartPosition()),_=J.fromPositions(u.range.getStartPosition(),g.getEndPosition());a.push({range:m}),a.push({range:_}),Wu._addBracketLeading(r,_,a)}}}else{const h=u.bracketInfo.getOpeningBrackets()[0].bracketText,f=l.has(h)?l.get(h):0;l.set(h,f+1)}s=u.range.getStartPosition()}}static _addBracketLeading(e,n,r){if(n.startLineNumber===n.endLineNumber)return;const s=n.startLineNumber,o=e.getLineFirstNonWhitespaceColumn(s);o!==0&&o!==n.startColumn&&(r.push({range:J.fromPositions(new ve(s,o),n.getEndPosition())}),r.push({range:J.fromPositions(new ve(s,1),n.getEndPosition())}));const a=s-1;if(a>0){const l=e.getLineFirstNonWhitespaceColumn(a);l===n.startColumn&&l!==e.getLineLastNonWhitespaceColumn(a)&&(r.push({range:J.fromPositions(new ve(a,l),n.getEndPosition())}),r.push({range:J.fromPositions(new ve(a,1),n.getEndPosition())}))}}}Wu._maxDuration=30;Wu._maxRounds=2;var mTt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class Lp{static create(e,n){return mTt(this,void 0,void 0,function*(){if(!n.getOption(117).localityBonus||!n.hasModel())return Lp.None;const r=n.getModel(),s=n.getPosition();if(!e.canComputeWordRanges(r.uri))return Lp.None;const[o]=yield new Wu().provideSelectionRanges(r,[s]);if(o.length===0)return Lp.None;const a=yield e.computeWordRanges(r.uri,o[0].range);if(!a)return Lp.None;const l=r.getWordUntilPosition(s);return delete a[l.word],new class extends Lp{distance(c,u){if(!s.equals(n.getPosition()))return 0;if(u.kind===17)return 2<<20;const d=typeof u.label=="string"?u.label:u.label.label,h=a[d];if(p2e(h))return 2<<20;const f=JM(h,J.fromPositions(c),J.compareRangesUsingStarts),p=f>=0?h[f]:h[Math.max(0,~f-1)];let g=o.length;for(const m of o){if(!J.containsRange(m.range,p))break;g-=1}return g}}})}}Lp.None=new class extends Lp{distance(){return 0}};let fve=class{constructor(e,n){this.leadingLineContent=e,this.characterCountDelta=n}};class uy{constructor(e,n,r,s,o,a,l=V$.default,c=void 0){this.clipboardText=c,this._snippetCompareFn=uy._compareCompletionItems,this._items=e,this._column=n,this._wordDistance=s,this._options=o,this._refilterKind=1,this._lineContext=r,this._fuzzyScoreOptions=l,a==="top"?this._snippetCompareFn=uy._compareCompletionItemsSnippetsUp:a==="bottom"&&(this._snippetCompareFn=uy._compareCompletionItemsSnippetsDown)}get lineContext(){return this._lineContext}set lineContext(e){(this._lineContext.leadingLineContent!==e.leadingLineContent||this._lineContext.characterCountDelta!==e.characterCountDelta)&&(this._refilterKind=this._lineContext.characterCountDelta0&&r[0].container.incomplete&&e.add(n);return e}get stats(){return this._ensureCachedState(),this._stats}_ensureCachedState(){this._refilterKind!==0&&this._createCachedState()}_createCachedState(){this._itemsByProvider=new Map;const e=[],{leadingLineContent:n,characterCountDelta:r}=this._lineContext;let s="",o="";const a=this._refilterKind===1?this._items:this._filteredItems,l=[],c=!this._options.filterGraceful||a.length>2e3?gx:Pvt;for(let u=0;u=p)d.score=Hp.Default;else if(typeof d.completion.filterText=="string"){const m=c(s,o,g,d.completion.filterText,d.filterTextLow,0,this._fuzzyScoreOptions);if(!m)continue;JQ(d.completion.filterText,d.textLabel)===0?d.score=m:(d.score=Rvt(s,o,g,d.textLabel,d.labelLow,0),d.score[0]=m[0])}else{const m=c(s,o,g,d.textLabel,d.labelLow,0,this._fuzzyScoreOptions);if(!m)continue;d.score=m}}d.idx=u,d.distance=this._wordDistance.distance(d.position,d.completion),l.push(d),e.push(d.textLabel.length)}this._filteredItems=l.sort(this._snippetCompareFn),this._refilterKind=0,this._stats={pLabelLen:e.length?iQ(e.length-.85,e,(u,d)=>u-d):0}}static _compareCompletionItems(e,n){return e.score[0]>n.score[0]?-1:e.score[0]n.distance?1:e.idxn.idx?1:0}static _compareCompletionItemsSnippetsDown(e,n){if(e.completion.kind!==n.completion.kind){if(e.completion.kind===27)return 1;if(n.completion.kind===27)return-1}return uy._compareCompletionItems(e,n)}static _compareCompletionItemsSnippetsUp(e,n){if(e.completion.kind!==n.completion.kind){if(e.completion.kind===27)return-1;if(n.completion.kind===27)return 1}return uy._compareCompletionItems(e,n)}}var _Tt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},jb=function(i,e){return function(n,r){e(n,r,i)}},vTt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Lne;class aC{static shouldAutoTrigger(e){if(!e.hasModel())return!1;const n=e.getModel(),r=e.getPosition();n.tokenization.tokenizeIfCheap(r.lineNumber);const s=n.getWordAtPosition(r);return!(!s||s.endColumn!==r.column&&s.startColumn+1!==r.column||!isNaN(Number(s.word)))}constructor(e,n,r){this.leadingLineContent=e.getLineContent(n.lineNumber).substr(0,n.column-1),this.leadingWord=e.getWordUntilPosition(n),this.lineNumber=n.lineNumber,this.column=n.column,this.triggerOptions=r}}function bTt(i,e,n){if(!e.getContextKeyValue($o.inlineSuggestionVisible.key))return!0;const r=e.getContextKeyValue($o.suppressSuggestions.key);return r!==void 0?!r:!i.getOption(62).suppressSuggestions}function yTt(i,e,n){if(!e.getContextKeyValue("inlineSuggestionVisible"))return!0;const r=e.getContextKeyValue($o.suppressSuggestions.key);return r!==void 0?!r:!i.getOption(62).suppressSuggestions}let Dne=Lne=class{constructor(e,n,r,s,o,a,l,c,u){this._editor=e,this._editorWorkerService=n,this._clipboardService=r,this._telemetryService=s,this._logService=o,this._contextKeyService=a,this._configurationService=l,this._languageFeaturesService=c,this._envService=u,this._toDispose=new Xe,this._triggerCharacterListener=new Xe,this._triggerQuickSuggest=new Mf,this._triggerState=void 0,this._completionDisposables=new Xe,this._onDidCancel=new _e,this._onDidTrigger=new _e,this._onDidSuggest=new _e,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._telemetryGate=0,this._currentSelection=this._editor.getSelection()||new Ft(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeModelLanguage(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeConfiguration(()=>{this._updateTriggerCharacters()})),this._toDispose.add(this._languageFeaturesService.completionProvider.onDidChange(()=>{this._updateTriggerCharacters(),this._updateActiveSuggestSession()}));let d=!1;this._toDispose.add(this._editor.onDidCompositionStart(()=>{d=!0})),this._toDispose.add(this._editor.onDidCompositionEnd(()=>{d=!1,this._onCompositionEnd()})),this._toDispose.add(this._editor.onDidChangeCursorSelection(h=>{d||this._onCursorChange(h)})),this._toDispose.add(this._editor.onDidChangeModelContent(()=>{!d&&this._triggerState!==void 0&&this._refilterCompletionItems()})),this._updateTriggerCharacters()}dispose(){Mi(this._triggerCharacterListener),Mi([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()}_updateTriggerCharacters(){if(this._triggerCharacterListener.clear(),this._editor.getOption(90)||!this._editor.hasModel()||!this._editor.getOption(120))return;const e=new Map;for(const r of this._languageFeaturesService.completionProvider.all(this._editor.getModel()))for(const s of r.triggerCharacters||[]){let o=e.get(s);o||(o=new Set,o.add(XIt()),e.set(s,o)),o.add(r)}const n=r=>{var s;if(!yTt(this._editor,this._contextKeyService,this._configurationService)||aC.shouldAutoTrigger(this._editor))return;if(!r){const l=this._editor.getPosition();r=this._editor.getModel().getLineContent(l.lineNumber).substr(0,l.column-1)}let o="";lx(r.charCodeAt(r.length-1))?xo(r.charCodeAt(r.length-2))&&(o=r.substr(r.length-2)):o=r.charAt(r.length-1);const a=e.get(o);if(a){const l=new Map;if(this._completionModel)for(const[c,u]of this._completionModel.getItemsByProvider())a.has(c)||l.set(c,u);this.trigger({auto:!0,triggerKind:1,triggerCharacter:o,retrigger:!!this._completionModel,clipboardText:(s=this._completionModel)===null||s===void 0?void 0:s.clipboardText,completionOptions:{providerFilter:a,providerItemsToReuse:l}})}};this._triggerCharacterListener.add(this._editor.onDidType(n)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(()=>n()))}get state(){return this._triggerState?this._triggerState.auto?2:1:0}cancel(e=!1){var n;this._triggerState!==void 0&&(this._triggerQuickSuggest.cancel(),(n=this._requestToken)===null||n===void 0||n.cancel(),this._requestToken=void 0,this._triggerState=void 0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:e}))}clear(){this._completionDisposables.clear()}_updateActiveSuggestSession(){this._triggerState!==void 0&&(!this._editor.hasModel()||!this._languageFeaturesService.completionProvider.has(this._editor.getModel())?this.cancel():this.trigger({auto:this._triggerState.auto,retrigger:!0}))}_onCursorChange(e){if(!this._editor.hasModel())return;const n=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!e.selection.isEmpty()||e.reason!==0&&e.reason!==3||e.source!=="keyboard"&&e.source!=="deleteLeft"){this.cancel();return}this._triggerState===void 0&&e.reason===0?(n.containsRange(this._currentSelection)||n.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))&&this._doTriggerQuickSuggest():this._triggerState!==void 0&&e.reason===3&&this._refilterCompletionItems()}_onCompositionEnd(){this._triggerState===void 0?this._doTriggerQuickSuggest():this._refilterCompletionItems()}_doTriggerQuickSuggest(){var e;k2.isAllOff(this._editor.getOption(88))||this._editor.getOption(117).snippetsPreventQuickSuggestions&&(!((e=fa.get(this._editor))===null||e===void 0)&&e.isInSnippet())||(this.cancel(),this._triggerQuickSuggest.cancelAndSet(()=>{if(this._triggerState!==void 0||!aC.shouldAutoTrigger(this._editor)||!this._editor.hasModel()||!this._editor.hasWidgetFocus())return;const n=this._editor.getModel(),r=this._editor.getPosition(),s=this._editor.getOption(88);if(!k2.isAllOff(s)){if(!k2.isAllOn(s)){n.tokenization.tokenizeIfCheap(r.lineNumber);const o=n.tokenization.getLineTokens(r.lineNumber),a=o.getStandardTokenType(o.findTokenIndexAtOffset(Math.max(r.column-1-1,0)));if(k2.valueFor(s,a)!=="on")return}bTt(this._editor,this._contextKeyService,this._configurationService)&&this._languageFeaturesService.completionProvider.has(n)&&this.trigger({auto:!0})}},this._editor.getOption(89)))}_refilterCompletionItems(){Ui(this._editor.hasModel()),Ui(this._triggerState!==void 0);const e=this._editor.getModel(),n=this._editor.getPosition(),r=new aC(e,n,Object.assign(Object.assign({},this._triggerState),{refilter:!0}));this._onNewContext(r)}trigger(e){var n,r,s,o,a,l;if(!this._editor.hasModel())return;const c=this._editor.getModel(),u=new aC(c,this._editor.getPosition(),e);this.cancel(e.retrigger),this._triggerState=e,this._onDidTrigger.fire({auto:e.auto,shy:(n=e.shy)!==null&&n!==void 0?n:!1,position:this._editor.getPosition()}),this._context=u;let d={triggerKind:(r=e.triggerKind)!==null&&r!==void 0?r:0};e.triggerCharacter&&(d={triggerKind:1,triggerCharacter:e.triggerCharacter}),this._requestToken=new Ns;const h=this._editor.getOption(111);let f=1;switch(h){case"top":f=0;break;case"bottom":f=2;break}const{itemKind:p,showDeprecated:g}=Lne._createSuggestFilter(this._editor),m=new mO(f,(o=(s=e.completionOptions)===null||s===void 0?void 0:s.kindFilter)!==null&&o!==void 0?o:p,(a=e.completionOptions)===null||a===void 0?void 0:a.providerFilter,(l=e.completionOptions)===null||l===void 0?void 0:l.providerItemsToReuse,g),_=Lp.create(this._editorWorkerService,this._editor),b=xle(this._languageFeaturesService.completionProvider,c,this._editor.getPosition(),m,d,this._requestToken.token);Promise.all([b,_]).then(([y,x])=>vTt(this,void 0,void 0,function*(){var k;if((k=this._requestToken)===null||k===void 0||k.dispose(),!this._editor.hasModel())return;let D=e==null?void 0:e.clipboardText;if(!D&&y.needsClipboard&&(D=yield this._clipboardService.readText()),this._triggerState===void 0)return;const R=this._editor.getModel(),E=new aC(R,this._editor.getPosition(),e),A=Object.assign(Object.assign({},V$.default),{firstMatchCanBeWeak:!this._editor.getOption(117).matchOnWordStartOnly});if(this._completionModel=new uy(y.items,this._context.column,{leadingLineContent:E.leadingLineContent,characterCountDelta:E.column-this._context.column},x,this._editor.getOption(117),this._editor.getOption(111),A,D),this._completionDisposables.add(y.disposable),this._onNewContext(E),this._reportDurationsTelemetry(y.durations),!this._envService.isBuilt||this._envService.isExtensionDevelopment)for(const M of y.items)M.isInvalid&&this._logService.warn(`[suggest] did IGNORE invalid completion item from ${M.provider._debugDisplayName}`,M.completion)})).catch(Ln)}_reportDurationsTelemetry(e){this._telemetryGate++%230===0&&setTimeout(()=>{this._telemetryService.publicLog2("suggest.durations.json",{data:JSON.stringify(e)}),this._logService.debug("suggest.durations.json",e)})}static _createSuggestFilter(e){const n=new Set;e.getOption(111)==="none"&&n.add(27);const s=e.getOption(117);return s.showMethods||n.add(0),s.showFunctions||n.add(1),s.showConstructors||n.add(2),s.showFields||n.add(3),s.showVariables||n.add(4),s.showClasses||n.add(5),s.showStructs||n.add(6),s.showInterfaces||n.add(7),s.showModules||n.add(8),s.showProperties||n.add(9),s.showEvents||n.add(10),s.showOperators||n.add(11),s.showUnits||n.add(12),s.showValues||n.add(13),s.showConstants||n.add(14),s.showEnums||n.add(15),s.showEnumMembers||n.add(16),s.showKeywords||n.add(17),s.showWords||n.add(18),s.showColors||n.add(19),s.showFiles||n.add(20),s.showReferences||n.add(21),s.showColors||n.add(22),s.showFolders||n.add(23),s.showTypeParameters||n.add(24),s.showSnippets||n.add(27),s.showUsers||n.add(25),s.showIssues||n.add(26),{itemKind:n,showDeprecated:s.showDeprecated}}_onNewContext(e){if(this._context){if(e.lineNumber!==this._context.lineNumber){this.cancel();return}if(ar(e.leadingLineContent)!==ar(this._context.leadingLineContent)){this.cancel();return}if(e.columnthis._context.leadingWord.startColumn){if(aC.shouldAutoTrigger(this._editor)&&this._context){const r=this._completionModel.getItemsByProvider();this.trigger({auto:this._context.triggerOptions.auto,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerItemsToReuse:r}})}return}if(e.column>this._context.column&&this._completionModel.getIncompleteProvider().size>0&&e.leadingWord.word.length!==0){const n=new Map,r=new Set;for(const[s,o]of this._completionModel.getItemsByProvider())o.length>0&&o[0].container.incomplete?r.add(s):n.set(s,o);this.trigger({auto:this._context.triggerOptions.auto,triggerKind:2,retrigger:!0,clipboardText:this._completionModel.clipboardText,completionOptions:{providerFilter:r,providerItemsToReuse:n}})}else{const n=this._completionModel.lineContext;let r=!1;if(this._completionModel.lineContext={leadingLineContent:e.leadingLineContent,characterCountDelta:e.column-this._context.column},this._completionModel.items.length===0){const s=aC.shouldAutoTrigger(this._editor);if(!this._context){this.cancel();return}if(s&&this._context.leadingWord.endColumn0,r&&e.leadingWord.word.length===0){this.cancel();return}}this._onDidSuggest.fire({completionModel:this._completionModel,triggerOptions:e.triggerOptions,isFrozen:r})}}}}};Dne=Lne=_Tt([jb(1,Wf),jb(2,qv),jb(3,_d),jb(4,vd),jb(5,mn),jb(6,ei),jb(7,Et),jb(8,Goe)],Dne);class $z{constructor(e,n){this._disposables=new Xe,this._lastOvertyped=[],this._locked=!1,this._disposables.add(e.onWillType(()=>{if(this._locked||!e.hasModel())return;const r=e.getSelections(),s=r.length;let o=!1;for(let l=0;l$z._maxSelectionLength)return;this._lastOvertyped[l]={value:a.getValueInRange(c),multiline:c.startLineNumber!==c.endLineNumber}}})),this._disposables.add(n.onDidTrigger(r=>{this._locked=!0})),this._disposables.add(n.onDidCancel(r=>{this._locked=!1}))}getLastOvertypedInfo(e){if(e>=0&&e=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},EK=function(i,e){return function(n,r){e(n,r,i)}};class Dle extends mx{updateLabel(){const e=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!e)return super.updateLabel();this.label&&(this.label.textContent=L({},"{0} ({1})",this._action.label,Dle.symbolPrintEnter(e)))}static symbolPrintEnter(e){var n;return(n=e.getLabel())===null||n===void 0?void 0:n.replace(/\benter\b/gi,"⏎")}}let Ene=class{constructor(e,n,r,s,o){this._menuId=n,this._menuService=s,this._contextKeyService=o,this._menuDisposables=new Xe,this.element=He(e,tt(".suggest-status-bar"));const a=l=>l instanceof If?r.createInstance(Dle,l,void 0):void 0;this._leftActions=new wh(this.element,{actionViewItemProvider:a}),this._rightActions=new wh(this.element,{actionViewItemProvider:a}),this._leftActions.domNode.classList.add("left"),this._rightActions.domNode.classList.add("right")}dispose(){this._menuDisposables.dispose(),this._leftActions.dispose(),this._rightActions.dispose(),this.element.remove()}show(){const e=this._menuService.createMenu(this._menuId,this._contextKeyService),n=()=>{const r=[],s=[];for(const[o,a]of e.getActions())o==="left"?r.push(...a):s.push(...a);this._leftActions.clear(),this._leftActions.push(r),this._rightActions.clear(),this._rightActions.push(s)};this._menuDisposables.add(e.onDidChange(()=>n())),this._menuDisposables.add(e)}hide(){this._menuDisposables.clear()}};Ene=wTt([EK(2,hn),EK(3,c_),EK(4,mn)],Ene);var CTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},STt=function(i,e){return function(n,r){e(n,r,i)}};function Ele(i){return!!i&&!!(i.completion.documentation||i.completion.detail&&i.completion.detail!==i.completion.label)}let Ine=class{constructor(e,n){this._editor=e,this._onDidClose=new _e,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new _e,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new Xe,this._renderDisposeable=new Xe,this._borderWidth=1,this._size=new bi(330,0),this.domNode=tt(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=n.createInstance(Rv,{editor:e}),this._body=tt(".body"),this._scrollbar=new P5(this._body,{alwaysConsumeMouseWheel:!0}),He(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=He(this._body,tt(".header")),this._close=He(this._header,tt("span"+en.asCSSSelector(lt.close))),this._close.title=L("details.close","Close"),this._type=He(this._header,tt("p.type")),this._docs=He(this._body,tt("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(r=>{r.hasChanged(50)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){const e=this._editor.getOptions(),n=e.get(50),r=n.getMassagedFontFamily(),s=e.get(118)||n.fontSize,o=e.get(119)||n.lineHeight,a=n.fontWeight,l=`${s}px`,c=`${o}px`;this.domNode.style.fontSize=l,this.domNode.style.lineHeight=`${o/s}`,this.domNode.style.fontWeight=a,this.domNode.style.fontFeatureSettings=n.fontFeatureSettings,this._type.style.fontFamily=r,this._close.style.height=c,this._close.style.width=c}getLayoutInfo(){const e=this._editor.getOption(119)||this._editor.getOption(50).lineHeight,n=this._borderWidth,r=n*2;return{lineHeight:e,borderWidth:n,borderHeight:r,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=L("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,this.getLayoutInfo().lineHeight*2),this._onDidChangeContents.fire(this)}renderItem(e,n){var r,s;this._renderDisposeable.clear();let{detail:o,documentation:a}=e.completion;if(n){let l="";l+=`score: ${e.score[0]} `,l+=`prefix: ${(r=e.word)!==null&&r!==void 0?r:"(no prefix)"} `,l+=`word: ${e.completion.filterText?e.completion.filterText+" (filterText)":e.textLabel} `,l+=`distance: ${e.distance} (localityBonus-setting) `,l+=`index: ${e.idx}, based on ${e.completion.sortText&&`sortText: "${e.completion.sortText}"`||"label"} `,l+=`commit_chars: ${(s=e.completion.commitCharacters)===null||s===void 0?void 0:s.join("")} `,a=new Ea().appendCodeblock("empty",l),o=`Provider: ${e.provider._debugDisplayName}`}if(!n&&!Ele(e)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),o){const l=o.length>1e5?`${o.substr(0,1e5)}…`:o;this._type.textContent=l,this._type.title=l,Jc(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(l))}else la(this._type),this._type.title="",Pl(this._type),this.domNode.classList.add("no-type");if(la(this._docs),typeof a=="string")this._docs.classList.remove("markdown-docs"),this._docs.textContent=a;else if(a){this._docs.classList.add("markdown-docs"),la(this._docs);const l=this._markdownRenderer.render(a);this._docs.appendChild(l.element),this._renderDisposeable.add(l),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=l=>{l.preventDefault(),l.stopPropagation()},this._close.onclick=l=>{l.preventDefault(),l.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get size(){return this._size}layout(e,n){const r=new bi(e,n);bi.equals(r,this._size)||(this._size=r,Gat(this.domNode,e,n)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};Ine=CTt([STt(1,hn)],Ine);class xTt{constructor(e,n){this.widget=e,this._editor=n,this._disposables=new Xe,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new ole,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let r,s,o=0,a=0;this._disposables.add(this._resizable.onDidWillResize(()=>{r=this._topLeft,s=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(l=>{if(r&&s){this.widget.layout(l.dimension.width,l.dimension.height);let c=!1;l.west&&(a=s.width-l.dimension.width,c=!0),l.north&&(o=s.height-l.dimension.height,c=!0),c&&this._applyTopLeft({top:r.top+o,left:r.left+a})}l.done&&(r=void 0,s=void 0,o=0,a=0,this._userSize=l.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{var l;this._anchorBox&&this._placeAtAnchor(this._anchorBox,(l=this._userSize)!==null&&l!==void 0?l:this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return null}show(){this._added||(this._editor.addOverlayWidget(this),this.getDomNode().style.position="fixed",this._added=!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,n){var r;const s=e.getBoundingClientRect();this._anchorBox=s,this._preferAlignAtTop=n,this._placeAtAnchor(this._anchorBox,(r=this._userSize)!==null&&r!==void 0?r:this.widget.size,n)}_placeAtAnchor(e,n,r){var s;const o=FI(this.getDomNode().ownerDocument.body),a=this.widget.getLayoutInfo(),l=new bi(220,2*a.lineHeight),c=e.top,u=function(){const x=o.width-(e.left+e.width+a.borderWidth+a.horizontalPadding),k=-a.borderWidth+e.left+e.width,D=new bi(x,o.height-e.top-a.borderHeight-a.verticalPadding),R=D.with(void 0,e.top+e.height-a.borderHeight-a.verticalPadding);return{top:c,left:k,fit:x-n.width,maxSizeTop:D,maxSizeBottom:R,minSize:l.with(Math.min(x,l.width))}}(),d=function(){const x=e.left-a.borderWidth-a.horizontalPadding,k=Math.max(a.horizontalPadding,e.left-n.width-a.borderWidth),D=new bi(x,o.height-e.top-a.borderHeight-a.verticalPadding),R=D.with(void 0,e.top+e.height-a.borderHeight-a.verticalPadding);return{top:c,left:k,fit:x-n.width,maxSizeTop:D,maxSizeBottom:R,minSize:l.with(Math.min(x,l.width))}}(),h=function(){const x=e.left,k=-a.borderWidth+e.top+e.height,D=new bi(e.width-a.borderHeight,o.height-e.top-e.height-a.verticalPadding);return{top:k,left:x,fit:D.height-n.height,maxSizeBottom:D,maxSizeTop:D,minSize:l.with(D.width)}}(),f=[u,d,h],p=(s=f.find(x=>x.fit>=0))!==null&&s!==void 0?s:f.sort((x,k)=>k.fit-x.fit)[0],g=e.top+e.height-a.borderHeight;let m,_=n.height;const b=Math.max(p.maxSizeTop.height,p.maxSizeBottom.height);_>b&&(_=b);let y;r?_<=p.maxSizeTop.height?(m=!0,y=p.maxSizeTop):(m=!1,y=p.maxSizeBottom):_<=p.maxSizeBottom.height?(m=!1,y=p.maxSizeBottom):(m=!0,y=p.maxSizeTop),this._applyTopLeft({left:p.left,top:m?p.top:g-_}),this.getDomNode().style.position="fixed",this._resizable.enableSashes(!m,p===u,m,p!==u),this._resizable.minSize=p.minSize,this._resizable.maxSize=y,this._resizable.layout(_,Math.min(y.width,n.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this.getDomNode().style.left=`${this._topLeft.left}px`,this.getDomNode().style.top=`${this._topLeft.top}px`}}var sv;(function(i){i[i.FILE=0]="FILE",i[i.FOLDER=1]="FOLDER",i[i.ROOT_FOLDER=2]="ROOT_FOLDER"})(sv||(sv={}));const kTt=/(?:\/|^)(?:([^\/]+)\/)?([^\/]+)$/;function H6(i,e,n,r){const s=r===sv.ROOT_FOLDER?["rootfolder-icon"]:r===sv.FOLDER?["folder-icon"]:["file-icon"];if(n){let o;if(n.scheme===Pn.data)o=w1.parseMetaData(n).get(w1.META_DATA_LABEL);else{const a=n.path.match(kTt);a?(o=U6(a[2].toLowerCase()),a[1]&&s.push(`${U6(a[1].toLowerCase())}-name-dir-icon`)):o=U6(n.authority.toLowerCase())}if(r===sv.FOLDER)s.push(`${o}-name-folder-icon`);else{if(o){if(s.push(`${o}-name-file-icon`),s.push("name-file-icon"),o.length<=255){const l=o.split(".");for(let c=1;c=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},IK=function(i,e){return function(n,r){e(n,r,i)}},Wb;function PMe(i){return`suggest-aria-id:${i}`}const ETt=ws("suggest-more-info",lt.chevronRight,L("suggestMoreInfoIcon","Icon for more information in the suggest widget.")),ITt=new(Wb=class{extract(e,n){if(e.textLabel.match(Wb._regexStrict))return n[0]=e.textLabel,!0;if(e.completion.detail&&e.completion.detail.match(Wb._regexStrict))return n[0]=e.completion.detail,!0;if(typeof e.completion.documentation=="string"){const r=Wb._regexRelaxed.exec(e.completion.documentation);if(r&&(r.index===0||r.index+r[0].length===e.completion.documentation.length))return n[0]=r[0],!0}return!1}},Wb._regexRelaxed=/(#([\da-fA-F]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))/,Wb._regexStrict=new RegExp(`^${Wb._regexRelaxed.source}$`,"i"),Wb);let Tne=class{constructor(e,n,r,s){this._editor=e,this._modelService=n,this._languageService=r,this._themeService=s,this._onDidToggleDetails=new _e,this.onDidToggleDetails=this._onDidToggleDetails.event,this.templateId="suggestion"}dispose(){this._onDidToggleDetails.dispose()}renderTemplate(e){const n=new Xe,r=e;r.classList.add("show-file-icons");const s=He(e,tt(".icon")),o=He(s,tt("span.colorspan")),a=He(e,tt(".contents")),l=He(a,tt(".main")),c=He(l,tt(".icon-label.codicon")),u=He(l,tt("span.left")),d=He(l,tt("span.right")),h=new z7(u,{supportHighlights:!0,supportIcons:!0});n.add(h);const f=He(u,tt("span.signature-label")),p=He(u,tt("span.qualifier-label")),g=He(d,tt("span.details-label")),m=He(d,tt("span.readMore"+en.asCSSSelector(ETt)));m.title=L("readMore","Read More");const _=()=>{const b=this._editor.getOptions(),y=b.get(50),x=y.getMassagedFontFamily(),k=y.fontFeatureSettings,D=b.get(118)||y.fontSize,R=b.get(119)||y.lineHeight,E=y.fontWeight,A=y.letterSpacing,M=`${D}px`,N=`${R}px`,P=`${A}px`;r.style.fontSize=M,r.style.fontWeight=E,r.style.letterSpacing=P,l.style.fontFamily=x,l.style.fontFeatureSettings=k,l.style.lineHeight=N,s.style.height=N,s.style.width=N,m.style.height=N,m.style.width=N};return _(),n.add(this._editor.onDidChangeConfiguration(b=>{(b.hasChanged(50)||b.hasChanged(118)||b.hasChanged(119))&&_()})),{root:r,left:u,right:d,icon:s,colorspan:o,iconLabel:h,iconContainer:c,parametersLabel:f,qualifierLabel:p,detailsLabel:g,readMore:m,disposables:n}}renderElement(e,n,r){const{completion:s}=e;r.root.id=PMe(n),r.colorspan.style.backgroundColor="";const o={labelEscapeNewLines:!0,matches:z5(e.score)},a=[];if(s.kind===19&&ITt.extract(e,a))r.icon.className="icon customcolor",r.iconContainer.className="icon hide",r.colorspan.style.backgroundColor=a[0];else if(s.kind===20&&this._themeService.getFileIconTheme().hasFileIcons){r.icon.className="icon hide",r.iconContainer.className="icon hide";const l=H6(this._modelService,this._languageService,Jt.from({scheme:"fake",path:e.textLabel}),sv.FILE),c=H6(this._modelService,this._languageService,Jt.from({scheme:"fake",path:s.detail}),sv.FILE);o.extraClasses=l.length>c.length?l:c}else s.kind===23&&this._themeService.getFileIconTheme().hasFolderIcons?(r.icon.className="icon hide",r.iconContainer.className="icon hide",o.extraClasses=[H6(this._modelService,this._languageService,Jt.from({scheme:"fake",path:e.textLabel}),sv.FOLDER),H6(this._modelService,this._languageService,Jt.from({scheme:"fake",path:s.detail}),sv.FOLDER)].flat()):(r.icon.className="icon hide",r.iconContainer.className="",r.iconContainer.classList.add("suggest-icon",...en.asClassNameArray(sP.toIcon(s.kind))));s.tags&&s.tags.indexOf(1)>=0&&(o.extraClasses=(o.extraClasses||[]).concat(["deprecated"]),o.matches=[]),r.iconLabel.setLabel(e.textLabel,void 0,o),typeof s.label=="string"?(r.parametersLabel.textContent="",r.detailsLabel.textContent=TK(s.detail||""),r.root.classList.add("string-label")):(r.parametersLabel.textContent=TK(s.label.detail||""),r.detailsLabel.textContent=TK(s.label.description||""),r.root.classList.remove("string-label")),this._editor.getOption(117).showInlineDetails?Jc(r.detailsLabel):Pl(r.detailsLabel),Ele(e)?(r.right.classList.add("can-expand-details"),Jc(r.readMore),r.readMore.onmousedown=l=>{l.stopPropagation(),l.preventDefault()},r.readMore.onclick=l=>{l.stopPropagation(),l.preventDefault(),this._onDidToggleDetails.fire()}):(r.right.classList.remove("can-expand-details"),Pl(r.readMore),r.readMore.onmousedown=null,r.readMore.onclick=null)}disposeTemplate(e){e.disposables.dispose()}};Tne=DTt([IK(1,Fr),IK(2,Ar),IK(3,Do)],Tne);function TK(i){return i.replace(/\r\n|\r|\n/g,"")}var TTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},q6=function(i,e){return function(n,r){e(n,r,i)}},RTt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},UD;ce("editorSuggestWidget.background",{dark:cs,light:cs,hcDark:cs,hcLight:cs},L("editorSuggestWidgetBackground","Background color of the suggest widget."));ce("editorSuggestWidget.border",{dark:Sm,light:Sm,hcDark:Sm,hcLight:Sm},L("editorSuggestWidgetBorder","Border color of the suggest widget."));const K6=ce("editorSuggestWidget.foreground",{dark:_f,light:_f,hcDark:_f,hcLight:_f},L("editorSuggestWidgetForeground","Foreground color of the suggest widget."));ce("editorSuggestWidget.selectedForeground",{dark:_S,light:_S,hcDark:_S,hcLight:_S},L("editorSuggestWidgetSelectedForeground","Foreground color of the selected entry in the suggest widget."));ce("editorSuggestWidget.selectedIconForeground",{dark:l2,light:l2,hcDark:l2,hcLight:l2},L("editorSuggestWidgetSelectedIconForeground","Icon foreground color of the selected entry in the suggest widget."));const ATt=ce("editorSuggestWidget.selectedBackground",{dark:vS,light:vS,hcDark:vS,hcLight:vS},L("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget."));ce("editorSuggestWidget.highlightForeground",{dark:vf,light:vf,hcDark:vf,hcLight:vf},L("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget."));ce("editorSuggestWidget.focusHighlightForeground",{dark:H3,light:H3,hcDark:H3,hcLight:H3},L("editorSuggestWidgetFocusHighlightForeground","Color of the match highlights in the suggest widget when an item is focused."));ce("editorSuggestWidgetStatus.foreground",{dark:Ht(K6,.5),light:Ht(K6,.5),hcDark:Ht(K6,.5),hcLight:Ht(K6,.5)},L("editorSuggestWidgetStatusForeground","Foreground color of the suggest widget status."));class NTt{constructor(e,n){this._service=e,this._key=`suggestWidget.size/${n.getEditorType()}/${n instanceof D1}`}restore(){var e;const n=(e=this._service.get(this._key,0))!==null&&e!==void 0?e:"";try{const r=JSON.parse(n);if(bi.is(r))return bi.lift(r)}catch{}}store(e){this._service.store(this._key,JSON.stringify(e),0,1)}reset(){this._service.remove(this._key,0)}}let bO=UD=class{constructor(e,n,r,s,o){this.editor=e,this._storageService=n,this._state=0,this._isAuto=!1,this._pendingLayout=new ha,this._pendingShowDetails=new ha,this._ignoreFocusEvents=!1,this._forceRenderingAbove=!1,this._explainMode=!1,this._showTimeout=new Mf,this._disposables=new Xe,this._onDidSelect=new sx,this._onDidFocus=new sx,this._onDidHide=new _e,this._onDidShow=new _e,this.onDidSelect=this._onDidSelect.event,this.onDidFocus=this._onDidFocus.event,this.onDidHide=this._onDidHide.event,this.onDidShow=this._onDidShow.event,this._onDetailsKeydown=new _e,this.onDetailsKeyDown=this._onDetailsKeydown.event,this.element=new ole,this.element.domNode.classList.add("editor-widget","suggest-widget"),this._contentWidget=new MTt(this,e),this._persistedSize=new NTt(n,e);class a{constructor(p,g,m=!1,_=!1){this.persistedSize=p,this.currentSize=g,this.persistHeight=m,this.persistWidth=_}}let l;this._disposables.add(this.element.onDidWillResize(()=>{this._contentWidget.lockPreference(),l=new a(this._persistedSize.restore(),this.element.size)})),this._disposables.add(this.element.onDidResize(f=>{var p,g,m,_;if(this._resize(f.dimension.width,f.dimension.height),l&&(l.persistHeight=l.persistHeight||!!f.north||!!f.south,l.persistWidth=l.persistWidth||!!f.east||!!f.west),!!f.done){if(l){const{itemHeight:b,defaultSize:y}=this.getLayoutInfo(),x=Math.round(b/2);let{width:k,height:D}=this.element.size;(!l.persistHeight||Math.abs(l.currentSize.height-D)<=x)&&(D=(g=(p=l.persistedSize)===null||p===void 0?void 0:p.height)!==null&&g!==void 0?g:y.height),(!l.persistWidth||Math.abs(l.currentSize.width-k)<=x)&&(k=(_=(m=l.persistedSize)===null||m===void 0?void 0:m.width)!==null&&_!==void 0?_:y.width),this._persistedSize.store(new bi(k,D))}this._contentWidget.unlockPreference(),l=void 0}})),this._messageElement=He(this.element.domNode,tt(".message")),this._listElement=He(this.element.domNode,tt(".tree"));const c=this._disposables.add(o.createInstance(Ine,this.editor));c.onDidClose(this.toggleDetails,this,this._disposables),this._details=new xTt(c,this.editor);const u=()=>this.element.domNode.classList.toggle("no-icons",!this.editor.getOption(117).showIcons);u();const d=o.createInstance(Tne,this.editor);this._disposables.add(d),this._disposables.add(d.onDidToggleDetails(()=>this.toggleDetails())),this._list=new Bf("SuggestWidget",this._listElement,{getHeight:f=>this.getLayoutInfo().itemHeight,getTemplateId:f=>"suggestion"},[d],{alwaysConsumeMouseWheel:!0,useShadows:!1,mouseSupport:!1,multipleSelectionSupport:!1,accessibilityProvider:{getRole:()=>"option",getWidgetAriaLabel:()=>L("suggest","Suggest"),getWidgetRole:()=>"listbox",getAriaLabel:f=>{let p=f.textLabel;if(typeof f.completion.label!="string"){const{detail:b,description:y}=f.completion.label;b&&y?p=L("label.full","{0} {1}, {2}",p,b,y):b?p=L("label.detail","{0} {1}",p,b):y&&(p=L("label.desc","{0}, {1}",p,y))}if(!f.isResolved||!this._isDetailsVisible())return p;const{documentation:g,detail:m}=f.completion,_=ox("{0}{1}",m||"",g?typeof g=="string"?g:g.value:"");return L("ariaCurrenttSuggestionReadDetails","{0}, docs: {1}",p,_)}}}),this._list.style(HI({listInactiveFocusBackground:ATt,listInactiveFocusOutline:Dr})),this._status=o.createInstance(Ene,this.element.domNode,Qy);const h=()=>this.element.domNode.classList.toggle("with-status-bar",this.editor.getOption(117).showStatusBar);h(),this._disposables.add(s.onDidColorThemeChange(f=>this._onThemeChange(f))),this._onThemeChange(s.getColorTheme()),this._disposables.add(this._list.onMouseDown(f=>this._onListMouseDownOrTap(f))),this._disposables.add(this._list.onTap(f=>this._onListMouseDownOrTap(f))),this._disposables.add(this._list.onDidChangeSelection(f=>this._onListSelection(f))),this._disposables.add(this._list.onDidChangeFocus(f=>this._onListFocus(f))),this._disposables.add(this.editor.onDidChangeCursorSelection(()=>this._onCursorSelectionChanged())),this._disposables.add(this.editor.onDidChangeConfiguration(f=>{f.hasChanged(117)&&(h(),u())})),this._ctxSuggestWidgetVisible=Tn.Visible.bindTo(r),this._ctxSuggestWidgetDetailsVisible=Tn.DetailsVisible.bindTo(r),this._ctxSuggestWidgetMultipleSuggestions=Tn.MultipleSuggestions.bindTo(r),this._ctxSuggestWidgetHasFocusedSuggestion=Tn.HasFocusedSuggestion.bindTo(r),this._disposables.add(As(this._details.widget.domNode,"keydown",f=>{this._onDetailsKeydown.fire(f)})),this._disposables.add(this.editor.onMouseDown(f=>this._onEditorMouseDown(f)))}dispose(){var e;this._details.widget.dispose(),this._details.dispose(),this._list.dispose(),this._status.dispose(),this._disposables.dispose(),(e=this._loadingTimeout)===null||e===void 0||e.dispose(),this._pendingLayout.dispose(),this._pendingShowDetails.dispose(),this._showTimeout.dispose(),this._contentWidget.dispose(),this.element.dispose()}_onEditorMouseDown(e){this._details.widget.domNode.contains(e.target.element)?this._details.widget.domNode.focus():this.element.domNode.contains(e.target.element)&&this.editor.focus()}_onCursorSelectionChanged(){this._state!==0&&this._contentWidget.layout()}_onListMouseDownOrTap(e){typeof e.element>"u"||typeof e.index>"u"||(e.browserEvent.preventDefault(),e.browserEvent.stopPropagation(),this._select(e.element,e.index))}_onListSelection(e){e.elements.length&&this._select(e.elements[0],e.indexes[0])}_select(e,n){const r=this._completionModel;r&&(this._onDidSelect.fire({item:e,index:n,model:r}),this.editor.focus())}_onThemeChange(e){this._details.widget.borderWidth=Vp(e.type)?2:1}_onListFocus(e){var n;if(this._ignoreFocusEvents)return;if(!e.elements.length){this._currentSuggestionDetails&&(this._currentSuggestionDetails.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=void 0),this.editor.setAriaOptions({activeDescendant:void 0}),this._ctxSuggestWidgetHasFocusedSuggestion.set(!1);return}if(!this._completionModel)return;this._ctxSuggestWidgetHasFocusedSuggestion.set(!0);const r=e.elements[0],s=e.indexes[0];r!==this._focusedItem&&((n=this._currentSuggestionDetails)===null||n===void 0||n.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=r,this._list.reveal(s),this._currentSuggestionDetails=go(o=>RTt(this,void 0,void 0,function*(){const a=g1(()=>{this._isDetailsVisible()&&this.showDetails(!0)},250),l=o.onCancellationRequested(()=>a.dispose());try{return yield r.resolve(o)}finally{a.dispose(),l.dispose()}})),this._currentSuggestionDetails.then(()=>{s>=this._list.length||r!==this._list.element(s)||(this._ignoreFocusEvents=!0,this._list.splice(s,1,[r]),this._list.setFocus([s]),this._ignoreFocusEvents=!1,this._isDetailsVisible()?this.showDetails(!1):this.element.domNode.classList.remove("docs-side"),this.editor.setAriaOptions({activeDescendant:PMe(s)}))}).catch(Ln)),this._onDidFocus.fire({item:r,index:s,model:this._completionModel})}_setState(e){if(this._state!==e)switch(this._state=e,this.element.domNode.classList.toggle("frozen",e===4),this.element.domNode.classList.remove("message"),e){case 0:Pl(this._messageElement,this._listElement,this._status.element),this._details.hide(!0),this._status.hide(),this._contentWidget.hide(),this._ctxSuggestWidgetVisible.reset(),this._ctxSuggestWidgetMultipleSuggestions.reset(),this._ctxSuggestWidgetHasFocusedSuggestion.reset(),this._showTimeout.cancel(),this.element.domNode.classList.remove("visible"),this._list.splice(0,this._list.length),this._focusedItem=void 0,this._cappedHeight=void 0,this._explainMode=!1;break;case 1:this.element.domNode.classList.add("message"),this._messageElement.textContent=UD.LOADING_MESSAGE,Pl(this._listElement,this._status.element),Jc(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,v1(UD.LOADING_MESSAGE);break;case 2:this.element.domNode.classList.add("message"),this._messageElement.textContent=UD.NO_SUGGESTIONS_MESSAGE,Pl(this._listElement,this._status.element),Jc(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0,v1(UD.NO_SUGGESTIONS_MESSAGE);break;case 3:Pl(this._messageElement),Jc(this._listElement,this._status.element),this._show();break;case 4:Pl(this._messageElement),Jc(this._listElement,this._status.element),this._show();break;case 5:Pl(this._messageElement),Jc(this._listElement,this._status.element),this._details.show(),this._show();break}}_show(){this._status.show(),this._contentWidget.show(),this._layout(this._persistedSize.restore()),this._ctxSuggestWidgetVisible.set(!0),this._showTimeout.cancelAndSet(()=>{this.element.domNode.classList.add("visible"),this._onDidShow.fire(this)},100)}showTriggered(e,n){this._state===0&&(this._contentWidget.setPosition(this.editor.getPosition()),this._isAuto=!!e,this._isAuto||(this._loadingTimeout=g1(()=>this._setState(1),n)))}showSuggestions(e,n,r,s,o){var a,l;if(this._contentWidget.setPosition(this.editor.getPosition()),(a=this._loadingTimeout)===null||a===void 0||a.dispose(),(l=this._currentSuggestionDetails)===null||l===void 0||l.cancel(),this._currentSuggestionDetails=void 0,this._completionModel!==e&&(this._completionModel=e),r&&this._state!==2&&this._state!==0){this._setState(4);return}const c=this._completionModel.items.length,u=c===0;if(this._ctxSuggestWidgetMultipleSuggestions.set(c>1),u){this._setState(s?0:2),this._completionModel=void 0;return}this._focusedItem=void 0,this._onDidFocus.pause(),this._onDidSelect.pause();try{this._list.splice(0,this._list.length,this._completionModel.items),this._setState(r?4:3),this._list.reveal(n,0),this._list.setFocus(o?[]:[n])}finally{this._onDidFocus.resume(),this._onDidSelect.resume()}this._pendingLayout.value=W9(()=>{this._pendingLayout.clear(),this._layout(this.element.size),this._details.widget.domNode.classList.remove("focused")})}focusSelected(){this._list.length>0&&this._list.setFocus([0])}selectNextPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageDown(),!0;case 1:return!this._isAuto;default:return this._list.focusNextPage(),!0}}selectNext(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusNext(1,!0),!0}}selectLast(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollBottom(),!0;case 1:return!this._isAuto;default:return this._list.focusLast(),!0}}selectPreviousPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageUp(),!0;case 1:return!this._isAuto;default:return this._list.focusPreviousPage(),!0}}selectPrevious(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusPrevious(1,!0),!1}}selectFirst(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollTop(),!0;case 1:return!this._isAuto;default:return this._list.focusFirst(),!0}}getFocusedItem(){if(this._state!==0&&this._state!==2&&this._state!==1&&this._completionModel&&this._list.getFocus().length>0)return{item:this._list.getFocusedElements()[0],index:this._list.getFocus()[0],model:this._completionModel}}toggleDetailsFocus(){this._state===5?(this._setState(3),this._details.widget.domNode.classList.remove("focused")):this._state===3&&this._isDetailsVisible()&&(this._setState(5),this._details.widget.domNode.classList.add("focused"))}toggleDetails(){this._isDetailsVisible()?(this._pendingShowDetails.clear(),this._ctxSuggestWidgetDetailsVisible.set(!1),this._setDetailsVisible(!1),this._details.hide(),this.element.domNode.classList.remove("shows-details")):(Ele(this._list.getFocusedElements()[0])||this._explainMode)&&(this._state===3||this._state===5||this._state===4)&&(this._ctxSuggestWidgetDetailsVisible.set(!0),this._setDetailsVisible(!0),this.showDetails(!1))}showDetails(e){this._pendingShowDetails.value=W9(()=>{this._pendingShowDetails.clear(),this._details.show(),e?this._details.widget.renderLoading():this._details.widget.renderItem(this._list.getFocusedElements()[0],this._explainMode),this._positionDetails(),this.editor.focus(),this.element.domNode.classList.add("shows-details")})}toggleExplainMode(){this._list.getFocusedElements()[0]&&(this._explainMode=!this._explainMode,this._isDetailsVisible()?this.showDetails(!1):this.toggleDetails())}resetPersistedSize(){this._persistedSize.reset()}hideWidget(){var e;this._pendingLayout.clear(),this._pendingShowDetails.clear(),(e=this._loadingTimeout)===null||e===void 0||e.dispose(),this._setState(0),this._onDidHide.fire(this),this.element.clearSashHoverState();const n=this._persistedSize.restore(),r=Math.ceil(this.getLayoutInfo().itemHeight*4.3);n&&n.heightu&&(c=u);const d=this._completionModel?this._completionModel.stats.pLabelLen*a.typicalHalfwidthCharacterWidth:c,h=a.statusBarHeight+this._list.contentHeight+a.borderHeight,f=a.itemHeight+a.statusBarHeight,p=no(this.editor.getDomNode()),g=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),m=p.top+g.top+g.height,_=Math.min(o.height-m-a.verticalPadding,h),b=p.top+g.top-a.verticalPadding,y=Math.min(b,h);let x=Math.min(Math.max(y,_)+a.borderHeight,h);l===((n=this._cappedHeight)===null||n===void 0?void 0:n.capped)&&(l=this._cappedHeight.wanted),lx&&(l=x),l>_||this._forceRenderingAbove&&b>150?(this._contentWidget.setPreference(1),this.element.enableSashes(!0,!0,!1,!1),x=y):(this._contentWidget.setPreference(2),this.element.enableSashes(!1,!0,!0,!1),x=_),this.element.preferredSize=new bi(d,a.defaultSize.height),this.element.maxSize=new bi(u,x),this.element.minSize=new bi(220,f),this._cappedHeight=l===h?{wanted:(s=(r=this._cappedHeight)===null||r===void 0?void 0:r.wanted)!==null&&s!==void 0?s:e.height,capped:l}:void 0}this._resize(c,l)}_resize(e,n){const{width:r,height:s}=this.element.maxSize;e=Math.min(r,e),n=Math.min(s,n);const{statusBarHeight:o}=this.getLayoutInfo();this._list.layout(n-o,e),this._listElement.style.height=`${n-o}px`,this.element.layout(n,e),this._contentWidget.layout(),this._positionDetails()}_positionDetails(){var e;this._isDetailsVisible()&&this._details.placeAtAnchor(this.element.domNode,((e=this._contentWidget.getPosition())===null||e===void 0?void 0:e.preference[0])===2)}getLayoutInfo(){const e=this.editor.getOption(50),n=Kc(this.editor.getOption(119)||e.lineHeight,8,1e3),r=!this.editor.getOption(117).showStatusBar||this._state===2||this._state===1?0:n,s=this._details.widget.borderWidth,o=2*s;return{itemHeight:n,statusBarHeight:r,borderWidth:s,borderHeight:o,typicalHalfwidthCharacterWidth:e.typicalHalfwidthCharacterWidth,verticalPadding:22,horizontalPadding:14,defaultSize:new bi(430,r+12*n+o)}}_isDetailsVisible(){return this._storageService.getBoolean("expandSuggestionDocs",0,!1)}_setDetailsVisible(e){this._storageService.store("expandSuggestionDocs",e,0,0)}forceRenderingAbove(){this._forceRenderingAbove||(this._forceRenderingAbove=!0,this._layout(this._persistedSize.restore()))}stopForceRenderingAbove(){this._forceRenderingAbove=!1}};bO.LOADING_MESSAGE=L("suggestWidget.loading","Loading...");bO.NO_SUGGESTIONS_MESSAGE=L("suggestWidget.noSuggestions","No suggestions.");bO=UD=TTt([q6(1,jf),q6(2,mn),q6(3,Do),q6(4,hn)],bO);class MTt{constructor(e,n){this._widget=e,this._editor=n,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._preferenceLocked=!1,this._added=!1,this._hidden=!1}dispose(){this._added&&(this._added=!1,this._editor.removeContentWidget(this))}getId(){return"editor.widget.suggestWidget"}getDomNode(){return this._widget.element.domNode}show(){this._hidden=!1,this._added||(this._added=!0,this._editor.addContentWidget(this))}hide(){this._hidden||(this._hidden=!0,this.layout())}layout(){this._editor.layoutContentWidget(this)}getPosition(){return this._hidden||!this._position||!this._preference?null:{position:this._position,preference:[this._preference]}}beforeRender(){const{height:e,width:n}=this._widget.element.size,{borderWidth:r,horizontalPadding:s}=this._widget.getLayoutInfo();return new bi(n+2*r+s,e+2*r)}afterRender(e){this._widget._afterRender(e)}setPreference(e){this._preferenceLocked||(this._preference=e)}lockPreference(){this._preferenceLocked=!0}unlockPreference(){this._preferenceLocked=!1}setPosition(e){this._position=e}}var PTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},dD=function(i,e){return function(n,r){e(n,r,i)}},Rne;class OTt{constructor(e,n){if(this._model=e,this._position=n,e.getLineMaxColumn(n.lineNumber)!==n.column){const s=e.getOffsetAt(n),o=e.getPositionAt(s+1);this._marker=e.deltaDecorations([],[{range:J.fromPositions(n,o),options:{description:"suggest-line-suffix",stickiness:1}}])}}dispose(){this._marker&&!this._model.isDisposed()&&this._model.deltaDecorations(this._marker,[])}delta(e){if(this._model.isDisposed()||this._position.lineNumber!==e.lineNumber)return 0;if(this._marker){const n=this._model.getDecorationRange(this._marker[0]);return this._model.getOffsetAt(n.getStartPosition())-this._model.getOffsetAt(e)}else return this._model.getLineMaxColumn(e.lineNumber)-e.column}}let yf=Rne=class{static get(e){return e.getContribution(Rne.ID)}constructor(e,n,r,s,o,a,l){this._memoryService=n,this._commandService=r,this._contextKeyService=s,this._instantiationService=o,this._logService=a,this._telemetryService=l,this._lineSuffix=new ha,this._toDispose=new Xe,this._selectors=new FTt(h=>h.priority),this._onWillInsertSuggestItem=new _e,this.onWillInsertSuggestItem=this._onWillInsertSuggestItem.event,this.editor=e,this.model=o.createInstance(Dne,this.editor),this._selectors.register({priority:0,select:(h,f,p)=>this._memoryService.select(h,f,p)});const c=Tn.InsertMode.bindTo(s);c.set(e.getOption(117).insertMode),this._toDispose.add(this.model.onDidTrigger(()=>c.set(e.getOption(117).insertMode))),this.widget=this._toDispose.add(new a8(()=>{const h=this._instantiationService.createInstance(bO,this.editor);this._toDispose.add(h),this._toDispose.add(h.onDidSelect(_=>this._insertSuggestion(_,0),this));const f=new pTt(this.editor,h,this.model,_=>this._insertSuggestion(_,2));this._toDispose.add(f);const p=Tn.MakesTextEdit.bindTo(this._contextKeyService),g=Tn.HasInsertAndReplaceRange.bindTo(this._contextKeyService),m=Tn.CanResolve.bindTo(this._contextKeyService);return this._toDispose.add(gn(()=>{p.reset(),g.reset(),m.reset()})),this._toDispose.add(h.onDidFocus(({item:_})=>{const b=this.editor.getPosition(),y=_.editStart.column,x=b.column;let k=!0;this.editor.getOption(1)==="smart"&&this.model.state===2&&!_.completion.additionalTextEdits&&!(_.completion.insertTextRules&4)&&x-y===_.completion.insertText.length&&(k=this.editor.getModel().getValueInRange({startLineNumber:b.lineNumber,startColumn:y,endLineNumber:b.lineNumber,endColumn:x})!==_.completion.insertText),p.set(k),g.set(!ve.equals(_.editInsertEnd,_.editReplaceEnd)),m.set(!!_.provider.resolveCompletionItem||!!_.completion.documentation||_.completion.detail!==_.completion.label)})),this._toDispose.add(h.onDetailsKeyDown(_=>{if(_.toKeyCodeChord().equals(new Iv(!0,!1,!1,!1,33))||ri&&_.toKeyCodeChord().equals(new Iv(!1,!1,!1,!0,33))){_.stopPropagation();return}_.toKeyCodeChord().isModifierKey()||this.editor.focus()})),h})),this._overtypingCapturer=this._toDispose.add(new a8(()=>this._toDispose.add(new $z(this.editor,this.model)))),this._alternatives=this._toDispose.add(new a8(()=>this._toDispose.add(new Rx(this.editor,this._contextKeyService)))),this._toDispose.add(o.createInstance(vO,e)),this._toDispose.add(this.model.onDidTrigger(h=>{this.widget.value.showTriggered(h.auto,h.shy?250:50),this._lineSuffix.value=new OTt(this.editor.getModel(),h.position)})),this._toDispose.add(this.model.onDidSuggest(h=>{if(h.triggerOptions.shy)return;let f=-1;for(const g of this._selectors.itemsOrderedByPriorityDesc)if(f=g.select(this.editor.getModel(),this.editor.getPosition(),h.completionModel.items),f!==-1)break;f===-1&&(f=0);let p=!1;if(h.triggerOptions.auto){const g=this.editor.getOption(117);g.selectionMode==="never"||g.selectionMode==="always"?p=g.selectionMode==="never":g.selectionMode==="whenTriggerCharacter"?p=h.triggerOptions.triggerKind!==1:g.selectionMode==="whenQuickSuggestion"&&(p=h.triggerOptions.triggerKind===1&&!h.triggerOptions.refilter)}this.widget.value.showSuggestions(h.completionModel,f,h.isFrozen,h.triggerOptions.auto,p)})),this._toDispose.add(this.model.onDidCancel(h=>{h.retrigger||this.widget.value.hideWidget()})),this._toDispose.add(this.editor.onDidBlurEditorWidget(()=>{this.model.cancel(),this.model.clear()}));const u=Tn.AcceptSuggestionsOnEnter.bindTo(s),d=()=>{const h=this.editor.getOption(1);u.set(h==="on"||h==="smart")};this._toDispose.add(this.editor.onDidChangeConfiguration(()=>d())),d()}dispose(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose(),this._onWillInsertSuggestItem.dispose()}_insertSuggestion(e,n){if(!e||!e.item){this._alternatives.value.reset(),this.model.cancel(),this.model.clear();return}if(!this.editor.hasModel())return;const r=fa.get(this.editor);if(!r)return;this._onWillInsertSuggestItem.fire({item:e.item});const s=this.editor.getModel(),o=s.getAlternativeVersionId(),{item:a}=e,l=[],c=new Ns;n&1||this.editor.pushUndoStop();const u=this.getOverwriteInfo(a,!!(n&8));this._memoryService.memorize(s,this.editor.getPosition(),a);const d=a.isResolved;let h=-1,f=-1;if(Array.isArray(a.completion.additionalTextEdits)){this.model.cancel();const g=Qp.capture(this.editor);this.editor.executeEdits("suggestController.additionalTextEdits.sync",a.completion.additionalTextEdits.map(m=>Vr.replaceMove(J.lift(m.range),m.text))),g.restoreRelativeVerticalPositionOfCursor(this.editor)}else if(!d){const g=new Xa;let m;const _=s.onDidChangeContent(k=>{if(k.isFlush){c.cancel(),_.dispose();return}for(const D of k.changes){const R=J.getEndPosition(D.range);(!m||ve.isBefore(R,m))&&(m=R)}}),b=n;n|=2;let y=!1;const x=this.editor.onWillType(()=>{x.dispose(),y=!0,b&2||this.editor.pushUndoStop()});l.push(a.resolve(c.token).then(()=>{if(!a.completion.additionalTextEdits||c.token.isCancellationRequested)return;if(m&&a.completion.additionalTextEdits.some(D=>ve.isBefore(m,J.getStartPosition(D.range))))return!1;y&&this.editor.pushUndoStop();const k=Qp.capture(this.editor);return this.editor.executeEdits("suggestController.additionalTextEdits.async",a.completion.additionalTextEdits.map(D=>Vr.replaceMove(J.lift(D.range),D.text))),k.restoreRelativeVerticalPositionOfCursor(this.editor),(y||!(b&2))&&this.editor.pushUndoStop(),!0}).then(k=>{this._logService.trace("[suggest] async resolving of edits DONE (ms, applied?)",g.elapsed(),k),f=k===!0?1:k===!1?0:-2}).finally(()=>{_.dispose(),x.dispose()}))}let{insertText:p}=a.completion;if(a.completion.insertTextRules&4||(p=dI.escape(p)),this.model.cancel(),r.insert(p,{overwriteBefore:u.overwriteBefore,overwriteAfter:u.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(a.completion.insertTextRules&1),clipboardText:e.model.clipboardText,overtypingCapturer:this._overtypingCapturer.value}),n&2||this.editor.pushUndoStop(),a.completion.command)if(a.completion.command.id===l4.id)this.model.trigger({auto:!0,retrigger:!0});else{const g=new Xa;l.push(this._commandService.executeCommand(a.completion.command.id,...a.completion.command.arguments?[...a.completion.command.arguments]:[]).catch(m=>{a.completion.extensionId?Us(m):Ln(m)}).finally(()=>{h=g.elapsed()}))}n&4&&this._alternatives.value.set(e,g=>{for(c.cancel();s.canUndo();){o!==s.getAlternativeVersionId()&&s.undo(),this._insertSuggestion(g,3|(n&8?8:0));break}}),this._alertCompletionItem(a),Promise.all(l).finally(()=>{this._reportSuggestionAcceptedTelemetry(a,s,d,h,f),this.model.clear(),c.dispose()})}_reportSuggestionAcceptedTelemetry(e,n,r,s,o){var a,l,c;Math.floor(Math.random()*100)!==0&&this._telemetryService.publicLog2("suggest.acceptedSuggestion",{extensionId:(l=(a=e.extensionId)===null||a===void 0?void 0:a.value)!==null&&l!==void 0?l:"unknown",providerId:(c=e.provider._debugDisplayName)!==null&&c!==void 0?c:"unknown",kind:e.completion.kind,basenameHash:KEe(yh(n.uri)).toString(16),languageId:n.getLanguageId(),fileExtension:Ygt(n.uri),resolveInfo:e.provider.resolveCompletionItem?r?1:0:-1,resolveDuration:e.resolveDuration,commandDuration:s,additionalEditsAsync:o})}getOverwriteInfo(e,n){Ui(this.editor.hasModel());let r=this.editor.getOption(117).insertMode==="replace";n&&(r=!r);const s=e.position.column-e.editStart.column,o=(r?e.editReplaceEnd.column:e.editInsertEnd.column)-e.position.column,a=this.editor.getPosition().column-e.position.column,l=this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0;return{overwriteBefore:s+a,overwriteAfter:o+l}}_alertCompletionItem(e){if(Ka(e.completion.additionalTextEdits)){const n=L("aria.alert.snippet","Accepting '{0}' made {1} additional edits",e.textLabel,e.completion.additionalTextEdits.length);Ua(n)}}triggerSuggest(e,n,r){this.editor.hasModel()&&(this.model.trigger({auto:n??!1,completionOptions:{providerFilter:e,kindFilter:r?new Set:void 0}}),this.editor.revealPosition(this.editor.getPosition(),0),this.editor.focus())}triggerSuggestAndAcceptBest(e){if(!this.editor.hasModel())return;const n=this.editor.getPosition(),r=()=>{n.equals(this.editor.getPosition())&&this._commandService.executeCommand(e.fallback)},s=o=>{if(o.completion.insertTextRules&4||o.completion.additionalTextEdits)return!0;const a=this.editor.getPosition(),l=o.editStart.column,c=a.column;return c-l!==o.completion.insertText.length?!0:this.editor.getModel().getValueInRange({startLineNumber:a.lineNumber,startColumn:l,endLineNumber:a.lineNumber,endColumn:c})!==o.completion.insertText};_t.once(this.model.onDidTrigger)(o=>{const a=[];_t.any(this.model.onDidTrigger,this.model.onDidCancel)(()=>{Mi(a),r()},void 0,a),this.model.onDidSuggest(({completionModel:l})=>{if(Mi(a),l.items.length===0){r();return}const c=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),l.items),u=l.items[c];if(!s(u)){r();return}this.editor.pushUndoStop(),this._insertSuggestion({index:c,item:u,model:l},7)},void 0,a)}),this.model.trigger({auto:!1,shy:!0}),this.editor.revealPosition(n,0),this.editor.focus()}acceptSelectedSuggestion(e,n){const r=this.widget.value.getFocusedItem();let s=0;e&&(s|=4),n&&(s|=8),this._insertSuggestion(r,s)}acceptNextSuggestion(){this._alternatives.value.next()}acceptPrevSuggestion(){this._alternatives.value.prev()}cancelSuggestWidget(){this.model.cancel(),this.model.clear(),this.widget.value.hideWidget()}focusSuggestion(){this.widget.value.focusSelected()}selectNextSuggestion(){this.widget.value.selectNext()}selectNextPageSuggestion(){this.widget.value.selectNextPage()}selectLastSuggestion(){this.widget.value.selectLast()}selectPrevSuggestion(){this.widget.value.selectPrevious()}selectPrevPageSuggestion(){this.widget.value.selectPreviousPage()}selectFirstSuggestion(){this.widget.value.selectFirst()}toggleSuggestionDetails(){this.widget.value.toggleDetails()}toggleExplainMode(){this.widget.value.toggleExplainMode()}toggleSuggestionFocus(){this.widget.value.toggleDetailsFocus()}resetWidgetSize(){this.widget.value.resetPersistedSize()}forceRenderingAbove(){this.widget.value.forceRenderingAbove()}stopForceRenderingAbove(){this.widget.isInitialized&&this.widget.value.stopForceRenderingAbove()}registerSelector(e){return this._selectors.register(e)}};yf.ID="editor.contrib.suggestController";yf=Rne=PTt([dD(1,Wz),dD(2,us),dD(3,mn),dD(4,hn),dD(5,vd),dD(6,_d)],yf);class FTt{constructor(e){this.prioritySelector=e,this._items=new Array}register(e){if(this._items.indexOf(e)!==-1)throw new Error("Value is already registered");return this._items.push(e),this._items.sort((n,r)=>this.prioritySelector(r)-this.prioritySelector(n)),{dispose:()=>{const n=this._items.indexOf(e);n>=0&&this._items.splice(n,1)}}}get itemsOrderedByPriorityDesc(){return this._items}}class l4 extends kt{constructor(){super({id:l4.id,label:L("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:ze.and(oe.writable,oe.hasCompletionItemProvider,Tn.Visible.toNegated()),kbOpts:{kbExpr:oe.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[521,2087]},weight:100}})}run(e,n,r){const s=yf.get(n);if(!s)return;let o;r&&typeof r=="object"&&r.auto===!0&&(o=!0),s.triggerSuggest(void 0,o,void 0)}}l4.id="editor.action.triggerSuggest";_i(yf.ID,yf,2);rt(l4);const pd=190,Xl=Ho.bindToContribution(yf.get);ct(new Xl({id:"acceptSelectedSuggestion",precondition:ze.and(Tn.Visible,Tn.HasFocusedSuggestion),handler(i){i.acceptSelectedSuggestion(!0,!1)},kbOpts:[{primary:2,kbExpr:ze.and(Tn.Visible,oe.textInputFocus),weight:pd},{primary:3,kbExpr:ze.and(Tn.Visible,oe.textInputFocus,Tn.AcceptSuggestionsOnEnter,Tn.MakesTextEdit),weight:pd}],menuOpts:[{menuId:Qy,title:L("accept.insert","Insert"),group:"left",order:1,when:Tn.HasInsertAndReplaceRange.toNegated()},{menuId:Qy,title:L("accept.insert","Insert"),group:"left",order:1,when:ze.and(Tn.HasInsertAndReplaceRange,Tn.InsertMode.isEqualTo("insert"))},{menuId:Qy,title:L("accept.replace","Replace"),group:"left",order:1,when:ze.and(Tn.HasInsertAndReplaceRange,Tn.InsertMode.isEqualTo("replace"))}]}));ct(new Xl({id:"acceptAlternativeSelectedSuggestion",precondition:ze.and(Tn.Visible,oe.textInputFocus,Tn.HasFocusedSuggestion),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:1027,secondary:[1026]},handler(i){i.acceptSelectedSuggestion(!1,!0)},menuOpts:[{menuId:Qy,group:"left",order:2,when:ze.and(Tn.HasInsertAndReplaceRange,Tn.InsertMode.isEqualTo("insert")),title:L("accept.replace","Replace")},{menuId:Qy,group:"left",order:2,when:ze.and(Tn.HasInsertAndReplaceRange,Tn.InsertMode.isEqualTo("replace")),title:L("accept.insert","Insert")}]}));si.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion");ct(new Xl({id:"hideSuggestWidget",precondition:Tn.Visible,handler:i=>i.cancelSuggestWidget(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:9,secondary:[1033]}}));ct(new Xl({id:"selectNextSuggestion",precondition:ze.and(Tn.Visible,ze.or(Tn.MultipleSuggestions,Tn.HasFocusedSuggestion.negate())),handler:i=>i.selectNextSuggestion(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:18,secondary:[2066],mac:{primary:18,secondary:[2066,300]}}}));ct(new Xl({id:"selectNextPageSuggestion",precondition:ze.and(Tn.Visible,ze.or(Tn.MultipleSuggestions,Tn.HasFocusedSuggestion.negate())),handler:i=>i.selectNextPageSuggestion(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:12,secondary:[2060]}}));ct(new Xl({id:"selectLastSuggestion",precondition:ze.and(Tn.Visible,ze.or(Tn.MultipleSuggestions,Tn.HasFocusedSuggestion.negate())),handler:i=>i.selectLastSuggestion()}));ct(new Xl({id:"selectPrevSuggestion",precondition:ze.and(Tn.Visible,ze.or(Tn.MultipleSuggestions,Tn.HasFocusedSuggestion.negate())),handler:i=>i.selectPrevSuggestion(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:16,secondary:[2064],mac:{primary:16,secondary:[2064,302]}}}));ct(new Xl({id:"selectPrevPageSuggestion",precondition:ze.and(Tn.Visible,ze.or(Tn.MultipleSuggestions,Tn.HasFocusedSuggestion.negate())),handler:i=>i.selectPrevPageSuggestion(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:11,secondary:[2059]}}));ct(new Xl({id:"selectFirstSuggestion",precondition:ze.and(Tn.Visible,ze.or(Tn.MultipleSuggestions,Tn.HasFocusedSuggestion.negate())),handler:i=>i.selectFirstSuggestion()}));ct(new Xl({id:"focusSuggestion",precondition:ze.and(Tn.Visible,Tn.HasFocusedSuggestion.negate()),handler:i=>i.focusSuggestion(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}}}));ct(new Xl({id:"focusAndAcceptSuggestion",precondition:ze.and(Tn.Visible,Tn.HasFocusedSuggestion.negate()),handler:i=>{i.focusSuggestion(),i.acceptSelectedSuggestion(!0,!1)}}));ct(new Xl({id:"toggleSuggestionDetails",precondition:ze.and(Tn.Visible,Tn.HasFocusedSuggestion),handler:i=>i.toggleSuggestionDetails(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:2058,secondary:[2087],mac:{primary:266,secondary:[2087]}},menuOpts:[{menuId:Qy,group:"right",order:1,when:ze.and(Tn.DetailsVisible,Tn.CanResolve),title:L("detail.more","show less")},{menuId:Qy,group:"right",order:1,when:ze.and(Tn.DetailsVisible.toNegated(),Tn.CanResolve),title:L("detail.less","show more")}]}));ct(new Xl({id:"toggleExplainMode",precondition:Tn.Visible,handler:i=>i.toggleExplainMode(),kbOpts:{weight:100,primary:2138}}));ct(new Xl({id:"toggleSuggestionFocus",precondition:Tn.Visible,handler:i=>i.toggleSuggestionFocus(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:2570,mac:{primary:778}}}));ct(new Xl({id:"insertBestCompletion",precondition:ze.and(oe.textInputFocus,ze.equals("config.editor.tabCompletion","on"),vO.AtEnd,Tn.Visible.toNegated(),Rx.OtherSuggestions.toNegated(),fa.InSnippetMode.toNegated()),handler:(i,e)=>{i.triggerSuggestAndAcceptBest(Bl(e)?Object.assign({fallback:"tab"},e):{fallback:"tab"})},kbOpts:{weight:pd,primary:2}}));ct(new Xl({id:"insertNextSuggestion",precondition:ze.and(oe.textInputFocus,ze.equals("config.editor.tabCompletion","on"),Rx.OtherSuggestions,Tn.Visible.toNegated(),fa.InSnippetMode.toNegated()),handler:i=>i.acceptNextSuggestion(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:2}}));ct(new Xl({id:"insertPrevSuggestion",precondition:ze.and(oe.textInputFocus,ze.equals("config.editor.tabCompletion","on"),Rx.OtherSuggestions,Tn.Visible.toNegated(),fa.InSnippetMode.toNegated()),handler:i=>i.acceptPrevSuggestion(),kbOpts:{weight:pd,kbExpr:oe.textInputFocus,primary:1026}}));rt(class extends kt{constructor(){super({id:"editor.action.resetSuggestSize",label:L("suggest.reset.label","Reset Suggest Widget Size"),alias:"Reset Suggest Widget Size",precondition:void 0})}run(i,e){var n;(n=yf.get(e))===null||n===void 0||n.resetWidgetSize()}});class BTt extends Le{get selectedItem(){return this._selectedItem}constructor(e,n,r,s){super(),this.editor=e,this.suggestControllerPreselector=n,this.checkModelVersion=r,this.onWillAccept=s,this.isSuggestWidgetVisible=!1,this.isShiftKeyPressed=!1,this._isActive=!1,this._currentSuggestItemInfo=void 0,this._selectedItem=vr(this,void 0),this._register(e.onKeyDown(a=>{a.shiftKey&&!this.isShiftKeyPressed&&(this.isShiftKeyPressed=!0,this.update(this._isActive))})),this._register(e.onKeyUp(a=>{a.shiftKey&&this.isShiftKeyPressed&&(this.isShiftKeyPressed=!1,this.update(this._isActive))}));const o=yf.get(this.editor);if(o){this._register(o.registerSelector({priority:100,select:(c,u,d)=>{var h;Pr(b=>this.checkModelVersion(b));const f=this.editor.getModel();if(!f)return-1;const p=(h=this.suggestControllerPreselector())===null||h===void 0?void 0:h.removeCommonPrefix(f);if(!p)return-1;const g=ve.lift(u),m=d.map((b,y)=>{const k=kM.fromSuggestion(o,f,g,b,this.isShiftKeyPressed).toSingleTextEdit().removeCommonPrefix(f),D=p.augments(k);return{index:y,valid:D,prefixLength:k.text.length,suggestItem:b}}).filter(b=>b&&b.valid&&b.prefixLength>0),_=YEe(m,ch(b=>b.prefixLength,fv));return _?_.index:-1}}));let a=!1;const l=()=>{a||(a=!0,this._register(o.widget.value.onDidShow(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})),this._register(o.widget.value.onDidHide(()=>{this.isSuggestWidgetVisible=!1,this.update(!1)})),this._register(o.widget.value.onDidFocus(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})))};this._register(_t.once(o.model.onDidTrigger)(c=>{l()})),this._register(o.onWillInsertSuggestItem(c=>{const u=this.editor.getPosition(),d=this.editor.getModel();if(!u||!d)return;const h=kM.fromSuggestion(o,d,u,c.item,this.isShiftKeyPressed);this.onWillAccept(h)}))}this.update(this._isActive)}update(e){const n=this.getSuggestItemInfo();(this._isActive!==e||!jTt(this._currentSuggestItemInfo,n))&&(this._isActive=e,this._currentSuggestItemInfo=n,Pr(r=>{this.checkModelVersion(r),this._selectedItem.set(this._isActive?this._currentSuggestItemInfo:void 0,r)}))}getSuggestItemInfo(){const e=yf.get(this.editor);if(!e||!this.isSuggestWidgetVisible)return;const n=e.widget.value.getFocusedItem(),r=this.editor.getPosition(),s=this.editor.getModel();if(!(!n||!r||!s))return kM.fromSuggestion(e,s,r,n.item,this.isShiftKeyPressed)}stopForceRenderingAbove(){const e=yf.get(this.editor);e==null||e.stopForceRenderingAbove()}forceRenderingAbove(){const e=yf.get(this.editor);e==null||e.forceRenderingAbove()}}class kM{static fromSuggestion(e,n,r,s,o){let{insertText:a}=s.completion,l=!1;if(s.completion.insertTextRules&4){const u=new dI().parse(a);u.children.length<100&&yj.adjustWhitespace(n,r,!0,u),a=u.toString(),l=!0}const c=e.getOverwriteInfo(s,o);return new kM(J.fromPositions(r.delta(0,-c.overwriteBefore),r.delta(0,Math.max(c.overwriteAfter,0))),a,s.completion.kind,l)}constructor(e,n,r,s){this.range=e,this.insertText=n,this.completionItemKind=r,this.isSnippetText=s}equals(e){return this.range.equalsRange(e.range)&&this.insertText===e.insertText&&this.completionItemKind===e.completionItemKind&&this.isSnippetText===e.isSnippetText}toSelectedSuggestionInfo(){return new U2e(this.range,this.insertText,this.completionItemKind,this.isSnippetText)}toSingleTextEdit(){return new hI(this.range,this.insertText)}}function jTt(i,e){return i===e?!0:!i||!e?!1:i.equals(e)}var WTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},$b=function(i,e){return function(n,r){e(n,r,i)}},Ane;let gd=Ane=class extends Le{static get(e){return e.getContribution(Ane.ID)}constructor(e,n,r,s,o,a,l,c,u){super(),this.editor=e,this.instantiationService=n,this.contextKeyService=r,this.configurationService=s,this.commandService=o,this.debounceService=a,this.languageFeaturesService=l,this.audioCueService=c,this._keybindingService=u,this.model=q7("inlineCompletionModel",void 0),this.textModelVersionId=vr(this,-1),this.cursorPosition=vr(this,new ve(1,1)),this.suggestWidgetAdaptor=this._register(new BTt(this.editor,()=>{var f,p;return(p=(f=this.model.get())===null||f===void 0?void 0:f.selectedInlineCompletion.get())===null||p===void 0?void 0:p.toSingleTextEdit(void 0)},f=>this.updateObservables(f,ju.Other),f=>{Pr(p=>{var g;this.updateObservables(p,ju.Other),(g=this.model.get())===null||g===void 0||g.handleSuggestAccepted(f)})})),this._enabled=oa(this.editor.onDidChangeConfiguration,()=>this.editor.getOption(62).enabled),this.ghostTextWidget=this._register(this.instantiationService.createInstance(Cne,this.editor,{ghostText:this.model.map((f,p)=>f==null?void 0:f.ghostText.read(p)),minReservedLineCount:K7(0),targetTextModel:this.model.map(f=>f==null?void 0:f.textModel)})),this._debounceValue=this.debounceService.for(this.languageFeaturesService.inlineCompletionsProvider,"InlineCompletionsDebounce",{min:50,max:50}),this._register(new $o(this.contextKeyService,this.model)),this._register(_t.runAndSubscribe(e.onDidChangeModel,()=>Pr(f=>{this.model.set(void 0,f),this.updateObservables(f,ju.Other);const p=e.getModel();if(p){const g=n.createInstance(xne,p,this.suggestWidgetAdaptor.selectedItem,this.cursorPosition,this.textModelVersionId,this._debounceValue,oa(e.onDidChangeConfiguration,()=>e.getOption(117).preview),oa(e.onDidChangeConfiguration,()=>e.getOption(117).previewMode),oa(e.onDidChangeConfiguration,()=>e.getOption(62).mode),this._enabled);this.model.set(g,f)}})));const d=f=>{var p;return f.isUndoing?ju.Undo:f.isRedoing?ju.Redo:!((p=this.model.get())===null||p===void 0)&&p.isAcceptingPartially?ju.AcceptWord:ju.Other};this._register(e.onDidChangeModelContent(f=>Pr(p=>this.updateObservables(p,d(f))))),this._register(e.onDidChangeCursorPosition(f=>Pr(p=>{var g;this.updateObservables(p,ju.Other),(f.reason===3||f.source==="api")&&((g=this.model.get())===null||g===void 0||g.stop(p))}))),this._register(e.onDidType(()=>Pr(f=>{var p;this.updateObservables(f,ju.Other),this._enabled.get()&&((p=this.model.get())===null||p===void 0||p.trigger(f))}))),this._register(this.commandService.onDidExecuteCommand(f=>{new Set([G2.Tab.id,G2.DeleteLeft.id,G2.DeleteRight.id,KNe,"acceptSelectedSuggestion"]).has(f.commandId)&&e.hasTextFocus()&&this._enabled.get()&&Pr(g=>{var m;(m=this.model.get())===null||m===void 0||m.trigger(g)})})),this._register(this.editor.onDidBlurEditorWidget(()=>{this.contextKeyService.getContextKeyValue("accessibleViewIsShown")||this.configurationService.getValue("editor.inlineSuggest.keepOnBlur")||e.getOption(62).keepOnBlur||R1.dropDownVisible||Pr(f=>{var p;(p=this.model.get())===null||p===void 0||p.stop(f)})})),this._register(ur(f=>{var p;const g=(p=this.model.read(f))===null||p===void 0?void 0:p.state.read(f);g!=null&&g.suggestItem?g.ghostText.lineCount>=2&&this.suggestWidgetAdaptor.forceRenderingAbove():this.suggestWidgetAdaptor.stopForceRenderingAbove()})),this._register(gn(()=>{this.suggestWidgetAdaptor.stopForceRenderingAbove()}));let h;this._register(ur(f=>{const p=this.model.read(f),g=p==null?void 0:p.state.read(f);if(!p||!g||!g.inlineCompletion){h=void 0;return}if(g.inlineCompletion.semanticId!==h){h=g.inlineCompletion.semanticId;const m=p.textModel.getLineContent(g.ghostText.lineNumber);this.audioCueService.playAudioCue(fi.inlineSuggestion).then(()=>{this.editor.getOption(8)&&this.provideScreenReaderUpdate(g.ghostText.renderForScreenReader(m))})}})),this._register(new Jte(this.editor,this.model,this.instantiationService)),this._register(this.configurationService.onDidChangeConfiguration(f=>{f.affectsConfiguration("accessibility.verbosity.inlineCompletions")&&this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this.configurationService.getValue("accessibility.verbosity.inlineCompletions")})})),this.editor.updateOptions({inlineCompletionsAccessibilityVerbose:this.configurationService.getValue("accessibility.verbosity.inlineCompletions")})}provideScreenReaderUpdate(e){const n=this.contextKeyService.getContextKeyValue("accessibleViewIsShown"),r=this._keybindingService.lookupKeybinding("editor.action.accessibleView");let s;!n&&r&&this.editor.getOption(147)&&(s=L("showAccessibleViewHint","Inspect this in the accessible view ({0})",r.getAriaLabel())),Ua(s?e+", "+s:e)}updateObservables(e,n){var r,s;const o=this.editor.getModel();this.textModelVersionId.set((r=o==null?void 0:o.getVersionId())!==null&&r!==void 0?r:-1,e,n),this.cursorPosition.set((s=this.editor.getPosition())!==null&&s!==void 0?s:new ve(1,1),e)}shouldShowHoverAt(e){var n;const r=(n=this.model.get())===null||n===void 0?void 0:n.ghostText.get();return r?r.parts.some(s=>e.containsPosition(new ve(r.lineNumber,s.column))):!1}shouldShowHoverAtViewZone(e){return this.ghostTextWidget.ownsViewZone(e)}};gd.ID="editor.contrib.inlineCompletionsController";gd=Ane=WTt([$b(1,hn),$b(2,mn),$b(3,ei),$b(4,us),$b(5,xh),$b(6,Et),$b(7,X5),$b(8,sr)],gd);var J1=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class zz extends kt{constructor(){super({id:zz.ID,label:L("action.inlineSuggest.showNext","Show Next Inline Suggestion"),alias:"Show Next Inline Suggestion",precondition:ze.and(oe.writable,$o.inlineSuggestionVisible),kbOpts:{weight:100,primary:606}})}run(e,n){var r;return J1(this,void 0,void 0,function*(){const s=gd.get(n);(r=s==null?void 0:s.model.get())===null||r===void 0||r.next()})}}zz.ID=XNe;class Vz extends kt{constructor(){super({id:Vz.ID,label:L("action.inlineSuggest.showPrevious","Show Previous Inline Suggestion"),alias:"Show Previous Inline Suggestion",precondition:ze.and(oe.writable,$o.inlineSuggestionVisible),kbOpts:{weight:100,primary:604}})}run(e,n){var r;return J1(this,void 0,void 0,function*(){const s=gd.get(n);(r=s==null?void 0:s.model.get())===null||r===void 0||r.previous()})}}Vz.ID=GNe;class $Tt extends kt{constructor(){super({id:"editor.action.inlineSuggest.trigger",label:L("action.inlineSuggest.trigger","Trigger Inline Suggestion"),alias:"Trigger Inline Suggestion",precondition:oe.writable})}run(e,n){var r;return J1(this,void 0,void 0,function*(){const s=gd.get(n);(r=s==null?void 0:s.model.get())===null||r===void 0||r.triggerExplicitly()})}}class zTt extends kt{constructor(){super({id:"editor.action.inlineSuggest.acceptNextWord",label:L("action.inlineSuggest.acceptNextWord","Accept Next Word Of Inline Suggestion"),alias:"Accept Next Word Of Inline Suggestion",precondition:ze.and(oe.writable,$o.inlineSuggestionVisible),kbOpts:{weight:101,primary:2065,kbExpr:ze.and(oe.writable,$o.inlineSuggestionVisible)},menuOpts:[{menuId:se.InlineSuggestionToolbar,title:L("acceptWord","Accept Word"),group:"primary",order:2}]})}run(e,n){var r;return J1(this,void 0,void 0,function*(){const s=gd.get(n);yield(r=s==null?void 0:s.model.get())===null||r===void 0?void 0:r.acceptNextWord(s.editor)})}}class VTt extends kt{constructor(){super({id:"editor.action.inlineSuggest.acceptNextLine",label:L("action.inlineSuggest.acceptNextLine","Accept Next Line Of Inline Suggestion"),alias:"Accept Next Line Of Inline Suggestion",precondition:ze.and(oe.writable,$o.inlineSuggestionVisible),kbOpts:{weight:101},menuOpts:[{menuId:se.InlineSuggestionToolbar,title:L("acceptLine","Accept Line"),group:"secondary",order:2}]})}run(e,n){var r;return J1(this,void 0,void 0,function*(){const s=gd.get(n);yield(r=s==null?void 0:s.model.get())===null||r===void 0?void 0:r.acceptNextLine(s.editor)})}}class HTt extends kt{constructor(){super({id:KNe,label:L("action.inlineSuggest.accept","Accept Inline Suggestion"),alias:"Accept Inline Suggestion",precondition:$o.inlineSuggestionVisible,menuOpts:[{menuId:se.InlineSuggestionToolbar,title:L("accept","Accept"),group:"primary",order:1}],kbOpts:{primary:2,weight:200,kbExpr:ze.and($o.inlineSuggestionVisible,oe.tabMovesFocus.toNegated(),$o.inlineSuggestionHasIndentationLessThanTabSize,Tn.Visible.toNegated(),oe.hoverFocused.toNegated())}})}run(e,n){var r;return J1(this,void 0,void 0,function*(){const s=gd.get(n);s&&((r=s.model.get())===null||r===void 0||r.accept(s.editor),s.editor.focus())})}}class Hz extends kt{constructor(){super({id:Hz.ID,label:L("action.inlineSuggest.hide","Hide Inline Suggestion"),alias:"Hide Inline Suggestion",precondition:$o.inlineSuggestionVisible,kbOpts:{weight:100,primary:9}})}run(e,n){return J1(this,void 0,void 0,function*(){const r=gd.get(n);Pr(s=>{var o;(o=r==null?void 0:r.model.get())===null||o===void 0||o.stop(s)})})}}Hz.ID="editor.action.inlineSuggest.hide";class Uz extends md{constructor(){super({id:Uz.ID,title:L("action.inlineSuggest.alwaysShowToolbar","Always Show Toolbar"),f1:!1,precondition:void 0,menu:[{id:se.InlineSuggestionToolbar,group:"secondary",order:10}],toggled:ze.equals("config.editor.inlineSuggest.showToolbar","always")})}run(e,n){return J1(this,void 0,void 0,function*(){const r=e.get(ei),o=r.getValue("editor.inlineSuggest.showToolbar")==="always"?"onHover":"always";r.updateValue("editor.inlineSuggest.showToolbar",o)})}}Uz.ID="editor.action.inlineSuggest.toggleAlwaysShowToolbar";var UTt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},dA=function(i,e){return function(n,r){e(n,r,i)}};class qTt{constructor(e,n,r){this.owner=e,this.range=n,this.controller=r}isValidForHoverAnchor(e){return e.type===1&&this.range.startColumn<=e.range.startColumn&&this.range.endColumn>=e.range.endColumn}}let Nne=class{constructor(e,n,r,s,o,a){this._editor=e,this._languageService=n,this._openerService=r,this.accessibilityService=s,this._instantiationService=o,this._telemetryService=a,this.hoverOrdinal=4}suggestHoverAnchor(e){const n=gd.get(this._editor);if(!n)return null;const r=e.target;if(r.type===8){const s=r.detail;if(n.shouldShowHoverAtViewZone(s.viewZoneId))return new A8(1e3,this,J.fromPositions(this._editor.getModel().validatePosition(s.positionBefore||s.position)),e.event.posx,e.event.posy,!1)}return r.type===7&&n.shouldShowHoverAt(r.range)?new A8(1e3,this,r.range,e.event.posx,e.event.posy,!1):r.type===6&&r.detail.mightBeForeignElement&&n.shouldShowHoverAt(r.range)?new A8(1e3,this,r.range,e.event.posx,e.event.posy,!1):null}computeSync(e,n){if(this._editor.getOption(62).showToolbar==="always")return[];const r=gd.get(this._editor);return r&&r.shouldShowHoverAt(e.range)?[new qTt(this,e.range,r)]:[]}renderHoverParts(e,n){const r=new Xe,s=n[0];this._telemetryService.publicLog2("inlineCompletionHover.shown"),this.accessibilityService.isScreenReaderOptimized()&&!this._editor.getOption(8)&&this.renderScreenReaderText(e,s,r);const o=s.controller.model.get(),a=this._instantiationService.createInstance(R1,this._editor,!1,K7(null),o.selectedInlineCompletionIndex,o.inlineCompletionsCount,o.selectedInlineCompletion.map(l=>{var c;return(c=l==null?void 0:l.inlineCompletion.source.inlineCompletions.commands)!==null&&c!==void 0?c:[]}));return e.fragment.appendChild(a.getDomNode()),o.triggerExplicitly(),r.add(a),r}renderScreenReaderText(e,n,r){const s=tt,o=s("div.hover-row.markdown-hover"),a=He(o,s("div.hover-contents",{"aria-live":"assertive"})),l=r.add(new Rv({editor:this._editor},this._languageService,this._openerService)),c=u=>{r.add(l.onDidRenderAsync(()=>{a.className="hover-contents code-hover-contents",e.onContentsChanged()}));const d=L("inlineSuggestionFollows","Suggestion:"),h=r.add(l.render(new Ea().appendText(d).appendCodeblock("text",u)));a.replaceChildren(h.element)};r.add(ur(u=>{var d;const h=(d=n.controller.model.read(u))===null||d===void 0?void 0:d.ghostText.read(u);if(h){const f=this._editor.getModel().getLineContent(h.lineNumber);c(h.renderForScreenReader(f))}else ca(a)})),e.fragment.appendChild(o)}};Nne=UTt([dA(1,Ar),dA(2,fu),dA(3,zv),dA(4,hn),dA(5,_d)],Nne);_i(gd.ID,gd,3);rt($Tt);rt(zz);rt(Vz);rt(zTt);rt(VTt);rt(HTt);rt(Hz);Ir(Uz);uk.register(Nne);function Uc(i,e){let n=0;for(let r=0;r=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},GTt=function(i,e){return function(n,r){e(n,r,i)}};function OMe(i,e,n,r,s){if(i.getLineCount()===1&&i.getLineMaxColumn(1)===1)return[];const o=e.getLanguageConfiguration(i.getLanguageId()).indentationRules;if(!o)return[];for(r=Math.min(r,i.getLineCount());n<=r&&o.unIndentedLinePattern;){const _=i.getLineContent(n);if(!o.unIndentedLinePattern.test(_))break;n++}if(n>r-1)return[];const{tabSize:a,indentSize:l,insertSpaces:c}=i.getOptions(),u=(_,b)=>(b=b||1,nh.shiftIndent(_,_.length+b,a,l,c)),d=(_,b)=>(b=b||1,nh.unshiftIndent(_,_.length+b,a,l,c)),h=[];let f;const p=i.getLineContent(n);let g=p;f=ar(p);let m=f;o.increaseIndentPattern&&o.increaseIndentPattern.test(g)?(m=u(m),f=u(f)):o.indentNextLinePattern&&o.indentNextLinePattern.test(g)&&(m=u(m)),n++;for(let _=n;_<=r;_++){const b=i.getLineContent(_),y=ar(b),x=m+b.substring(y.length);o.decreaseIndentPattern&&o.decreaseIndentPattern.test(x)&&(m=d(m),f=d(f)),y!==m&&h.push(Vr.replaceMove(new Ft(_,1,_,y.length+1),Loe(m,l,c))),!(o.unIndentedLinePattern&&o.unIndentedLinePattern.test(b))&&(o.increaseIndentPattern&&o.increaseIndentPattern.test(x)?(f=u(f),m=f):o.indentNextLinePattern&&o.indentNextLinePattern.test(x)?m=u(m):m=f)}return h}class qz extends kt{constructor(){super({id:qz.ID,label:L("indentationToSpaces","Convert Indentation to Spaces"),alias:"Convert Indentation to Spaces",precondition:oe.writable})}run(e,n){const r=n.getModel();if(!r)return;const s=r.getOptions(),o=n.getSelection();if(!o)return;const a=new QTt(o,s.tabSize);n.pushUndoStop(),n.executeCommands(this.id,[a]),n.pushUndoStop(),r.updateOptions({insertSpaces:!0})}}qz.ID="editor.action.indentationToSpaces";class Kz extends kt{constructor(){super({id:Kz.ID,label:L("indentationToTabs","Convert Indentation to Tabs"),alias:"Convert Indentation to Tabs",precondition:oe.writable})}run(e,n){const r=n.getModel();if(!r)return;const s=r.getOptions(),o=n.getSelection();if(!o)return;const a=new JTt(o,s.tabSize);n.pushUndoStop(),n.executeCommands(this.id,[a]),n.pushUndoStop(),r.updateOptions({insertSpaces:!1})}}Kz.ID="editor.action.indentationToTabs";class Ile extends kt{constructor(e,n,r){super(r),this.insertSpaces=e,this.displaySizeOnly=n}run(e,n){const r=e.get(lg),s=e.get(Fr),o=n.getModel();if(!o)return;const a=s.getCreationOptions(o.getLanguageId(),o.uri,o.isForSimpleWidget),l=o.getOptions(),c=[1,2,3,4,5,6,7,8].map(d=>({id:d.toString(),label:d.toString(),description:d===a.tabSize&&d===l.tabSize?L("configuredTabSize","Configured Tab Size"):d===a.tabSize?L("defaultTabSize","Default Tab Size"):d===l.tabSize?L("currentTabSize","Current Tab Size"):void 0})),u=Math.min(o.getOptions().tabSize-1,7);setTimeout(()=>{r.pick(c,{placeHolder:L({},"Select Tab Size for Current File"),activeItem:c[u]}).then(d=>{if(d&&o&&!o.isDisposed()){const h=parseInt(d.label,10);this.displaySizeOnly?o.updateOptions({tabSize:h}):o.updateOptions({tabSize:h,indentSize:h,insertSpaces:this.insertSpaces})}})},50)}}class Gz extends Ile{constructor(){super(!1,!1,{id:Gz.ID,label:L("indentUsingTabs","Indent Using Tabs"),alias:"Indent Using Tabs",precondition:void 0})}}Gz.ID="editor.action.indentUsingTabs";class Xz extends Ile{constructor(){super(!0,!1,{id:Xz.ID,label:L("indentUsingSpaces","Indent Using Spaces"),alias:"Indent Using Spaces",precondition:void 0})}}Xz.ID="editor.action.indentUsingSpaces";class Yz extends Ile{constructor(){super(!0,!0,{id:Yz.ID,label:L("changeTabDisplaySize","Change Tab Display Size"),alias:"Change Tab Display Size",precondition:void 0})}}Yz.ID="editor.action.changeTabDisplaySize";class Zz extends kt{constructor(){super({id:Zz.ID,label:L("detectIndentation","Detect Indentation from Content"),alias:"Detect Indentation from Content",precondition:void 0})}run(e,n){const r=e.get(Fr),s=n.getModel();if(!s)return;const o=r.getCreationOptions(s.getLanguageId(),s.uri,s.isForSimpleWidget);s.detectIndentation(o.insertSpaces,o.tabSize)}}Zz.ID="editor.action.detectIndentation";class XTt extends kt{constructor(){super({id:"editor.action.reindentlines",label:L("editor.reindentlines","Reindent Lines"),alias:"Reindent Lines",precondition:oe.writable})}run(e,n){const r=e.get(dr),s=n.getModel();if(!s)return;const o=OMe(s,r,1,s.getLineCount());o.length>0&&(n.pushUndoStop(),n.executeEdits(this.id,o),n.pushUndoStop())}}class YTt extends kt{constructor(){super({id:"editor.action.reindentselectedlines",label:L("editor.reindentselectedlines","Reindent Selected Lines"),alias:"Reindent Selected Lines",precondition:oe.writable})}run(e,n){const r=e.get(dr),s=n.getModel();if(!s)return;const o=n.getSelections();if(o===null)return;const a=[];for(const l of o){let c=l.startLineNumber,u=l.endLineNumber;if(c!==u&&l.endColumn===1&&u--,c===1){if(c===u)continue}else c--;const d=OMe(s,r,c,u);a.push(...d)}a.length>0&&(n.pushUndoStop(),n.executeEdits(this.id,a),n.pushUndoStop())}}class ZTt{constructor(e,n){this._initialSelection=n,this._edits=[],this._selectionId=null;for(const r of e)r.range&&typeof r.text=="string"&&this._edits.push(r)}getEditOperations(e,n){for(const s of this._edits)n.addEditOperation(J.lift(s.range),s.text);let r=!1;Array.isArray(this._edits)&&this._edits.length===1&&this._initialSelection.isEmpty()&&(this._edits[0].range.startColumn===this._initialSelection.endColumn&&this._edits[0].range.startLineNumber===this._initialSelection.endLineNumber?(r=!0,this._selectionId=n.trackSelection(this._initialSelection,!0)):this._edits[0].range.endColumn===this._initialSelection.startColumn&&this._edits[0].range.endLineNumber===this._initialSelection.startLineNumber&&(r=!0,this._selectionId=n.trackSelection(this._initialSelection,!1))),r||(this._selectionId=n.trackSelection(this._initialSelection))}computeCursorState(e,n){return n.getTrackedSelection(this._selectionId)}}let yO=class{constructor(e,n){this.editor=e,this._languageConfigurationService=n,this.callOnDispose=new Xe,this.callOnModel=new Xe,this.callOnDispose.add(e.onDidChangeConfiguration(()=>this.update())),this.callOnDispose.add(e.onDidChangeModel(()=>this.update())),this.callOnDispose.add(e.onDidChangeModelLanguage(()=>this.update()))}update(){this.callOnModel.clear(),!(this.editor.getOption(12)<4||this.editor.getOption(55))&&this.editor.hasModel()&&this.callOnModel.add(this.editor.onDidPaste(({range:e})=>{this.trigger(e)}))}trigger(e){const n=this.editor.getSelections();if(n===null||n.length>1)return;const r=this.editor.getModel();if(!r||!r.tokenization.isCheapToTokenize(e.getStartPosition().lineNumber))return;const s=this.editor.getOption(12),{tabSize:o,indentSize:a,insertSpaces:l}=r.getOptions(),c=[],u={shiftIndent:p=>nh.shiftIndent(p,p.length+1,o,a,l),unshiftIndent:p=>nh.unshiftIndent(p,p.length+1,o,a,l)};let d=e.startLineNumber;for(;d<=e.endLineNumber;){if(this.shouldIgnoreLine(r,d)){d++;continue}break}if(d>e.endLineNumber)return;let h=r.getLineContent(d);if(!/\S/.test(h.substring(0,e.startColumn-1))){const p=rM(s,r,r.getLanguageId(),d,u,this._languageConfigurationService);if(p!==null){const g=ar(h),m=Uc(p,o),_=Uc(g,o);if(m!==_){const b=LM(m,o,l);c.push({range:new J(d,1,d,g.length+1),text:b}),h=b+h.substr(g.length)}else{const b=BIe(r,d,this._languageConfigurationService);if(b===0||b===8)return}}}const f=d;for(;dr.tokenization.getLineTokens(m),getLanguageId:()=>r.getLanguageId(),getLanguageIdAtPosition:(m,_)=>r.getLanguageIdAtPosition(m,_)},getLineContent:m=>m===f?h:r.getLineContent(m)},r.getLanguageId(),d+1,u,this._languageConfigurationService);if(g!==null){const m=Uc(g,o),_=Uc(ar(r.getLineContent(d+1)),o);if(m!==_){const b=m-_;for(let y=d+1;y<=e.endLineNumber;y++){const x=r.getLineContent(y),k=ar(x),R=Uc(k,o)+b,E=LM(R,o,l);E!==k&&c.push({range:new J(y,1,y,k.length+1),text:E})}}}}if(c.length>0){this.editor.pushUndoStop();const p=new ZTt(c,this.editor.getSelection());this.editor.executeCommand("autoIndentOnPaste",p),this.editor.pushUndoStop()}}shouldIgnoreLine(e,n){e.tokenization.forceTokenization(n);const r=e.getLineFirstNonWhitespaceColumn(n);if(r===0)return!0;const s=e.tokenization.getLineTokens(n);if(s.getCount()>0){const o=s.findTokenIndexAtOffset(r);if(o>=0&&s.getStandardTokenType(o)===1)return!0}return!1}dispose(){this.callOnDispose.dispose(),this.callOnModel.dispose()}};yO.ID="editor.contrib.autoIndentOnPaste";yO=KTt([GTt(1,dr)],yO);function FMe(i,e,n,r){if(i.getLineCount()===1&&i.getLineMaxColumn(1)===1)return;let s="";for(let a=0;athis._currentResolve=void 0)),yield this._currentResolve}})}_doResolve(e){var n,r;return wj(this,void 0,void 0,function*(){try{const s=yield Promise.resolve(this.provider.resolveInlayHint(this.hint,e));this.hint.tooltip=(n=s==null?void 0:s.tooltip)!==null&&n!==void 0?n:this.hint.tooltip,this.hint.label=(r=s==null?void 0:s.label)!==null&&r!==void 0?r:this.hint.label,this._isResolved=!0}catch(s){Us(s),this._isResolved=!1}})}}class wO{static create(e,n,r,s){return wj(this,void 0,void 0,function*(){const o=[],a=e.ordered(n).reverse().map(l=>r.map(c=>wj(this,void 0,void 0,function*(){try{const u=yield l.provideInlayHints(n,c,s);u!=null&&u.hints.length&&o.push([u,l])}catch(u){Us(u)}})));if(yield Promise.all(a.flat()),s.isCancellationRequested||n.isDisposed())throw new U1;return new wO(r,o,n)})}constructor(e,n,r){this._disposables=new Xe,this.ranges=e,this.provider=new Set;const s=[];for(const[o,a]of n){this._disposables.add(o),this.provider.add(a);for(const l of o.hints){const c=r.validatePosition(l.position);let u="before";const d=wO._getRangeAtPosition(r,c);let h;d.getStartPosition().isBefore(c)?(h=J.fromPositions(d.getStartPosition(),c),u="after"):(h=J.fromPositions(c,d.getEndPosition()),u="before"),s.push(new Tle(l,new BMe(h,u),a))}}this.items=s.sort((o,a)=>ve.compare(o.hint.position,a.hint.position))}dispose(){this._disposables.dispose()}static _getRangeAtPosition(e,n){const r=n.lineNumber,s=e.getWordAtPosition(n);if(s)return new J(r,s.startColumn,r,s.endColumn);e.tokenization.tokenizeIfCheap(r);const o=e.tokenization.getLineTokens(r),a=n.column-1,l=o.findTokenIndexAtOffset(a);let c=o.getStartOffset(l),u=o.getEndOffset(l);return u-c===1&&(c===a&&l>1?(c=o.getStartOffset(l-1),u=o.getEndOffset(l-1)):u===a&&li2(g)?g.command.id:Iz()));for(const g of hl.all())f.has(g.desc.id)&&h.push(new Vl(g.desc.id,If.label(g.desc,{renderShortTitle:!0}),void 0,!0,()=>DM(this,void 0,void 0,function*(){const m=yield o.createModelReference(d.uri);try{const _=new sI(m.object.textEditorModel,J.getStartPosition(d.range)),b=r.item.anchor.range;yield c.invokeFunction(g.runEditorCommand.bind(g),e,_,b)}finally{m.dispose()}})));if(r.part.command){const{command:g}=r.part;h.push(new Vo),h.push(new Vl(g.id,g.title,void 0,!0,()=>DM(this,void 0,void 0,function*(){var m;try{yield l.executeCommand(g.id,...(m=g.arguments)!==null&&m!==void 0?m:[])}catch(_){u.notify({severity:F$.Error,source:r.item.provider.displayName,message:_})}})))}const p=e.getOption(126);a.showContextMenu({domForShadowRoot:p&&(s=e.getDomNode())!==null&&s!==void 0?s:void 0,getAnchor:()=>{const g=no(n);return{x:g.left,y:g.top+g.height+8}},getActions:()=>h,onHide:()=>{e.focus()},autoSelectFirstItem:!0})})}function jMe(i,e,n,r){return DM(this,void 0,void 0,function*(){const o=yield i.get(Ec).createModelReference(r.uri);yield n.invokeWithinContext(a=>DM(this,void 0,void 0,function*(){const l=e.hasSideBySideModifier,c=a.get(mn),u=xc.inPeekEditor.getValue(c),d=!l&&n.getOption(87)&&!u;return new o4({openToSide:l,openInPeek:d,muteMessage:!0},{title:{value:"",original:""},id:"",precondition:void 0}).run(a,new sI(o.object.textEditorModel,J.getStartPosition(r.range)),J.lift(r.range))})),o.dispose()})}var nRt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},hD=function(i,e){return function(n,r){e(n,r,i)}},qD=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},O8;class Cj{constructor(){this._entries=new G1(50)}get(e){const n=Cj._key(e);return this._entries.get(n)}set(e,n){const r=Cj._key(e);this._entries.set(r,n)}static _key(e){return`${e.uri.toString()}/${e.getVersionId()}`}}const WMe=qn("IInlayHintsCache");oi(WMe,Cj,1);class Mne{constructor(e,n){this.item=e,this.index=n}get part(){const e=this.item.hint.label;return typeof e=="string"?{label:e}:e[this.index]}}class iRt{constructor(e,n){this.part=e,this.hasTriggerModifier=n}}let Ax=O8=class{static get(e){var n;return(n=e.getContribution(O8.ID))!==null&&n!==void 0?n:void 0}constructor(e,n,r,s,o,a,l){this._editor=e,this._languageFeaturesService=n,this._inlayHintsCache=s,this._commandService=o,this._notificationService=a,this._instaService=l,this._disposables=new Xe,this._sessionDisposables=new Xe,this._decorationsMetadata=new Map,this._ruleFactory=new A5(this._editor),this._activeRenderMode=0,this._debounceInfo=r.for(n.inlayHintsProvider,"InlayHint",{min:25}),this._disposables.add(n.inlayHintsProvider.onDidChange(()=>this._update())),this._disposables.add(e.onDidChangeModel(()=>this._update())),this._disposables.add(e.onDidChangeModelLanguage(()=>this._update())),this._disposables.add(e.onDidChangeConfiguration(c=>{c.hasChanged(139)&&this._update()})),this._update()}dispose(){this._sessionDisposables.dispose(),this._removeAllDecorations(),this._disposables.dispose()}_update(){this._sessionDisposables.clear(),this._removeAllDecorations();const e=this._editor.getOption(139);if(e.enabled==="off")return;const n=this._editor.getModel();if(!n||!this._languageFeaturesService.inlayHintsProvider.has(n))return;const r=this._inlayHintsCache.get(n);r&&this._updateHintsDecorators([n.getFullModelRange()],r),this._sessionDisposables.add(gn(()=>{n.isDisposed()||this._cacheHintsForFastRestore(n)}));let s;const o=new Set,a=new Ji(()=>qD(this,void 0,void 0,function*(){const l=Date.now();s==null||s.dispose(!0),s=new Ns;const c=n.onWillDispose(()=>s==null?void 0:s.cancel());try{const u=s.token,d=yield wO.create(this._languageFeaturesService.inlayHintsProvider,n,this._getHintsRanges(),u);if(a.delay=this._debounceInfo.update(n,Date.now()-l),u.isCancellationRequested){d.dispose();return}for(const h of d.provider)typeof h.onDidChangeInlayHints=="function"&&!o.has(h)&&(o.add(h),this._sessionDisposables.add(h.onDidChangeInlayHints(()=>{a.isScheduled()||a.schedule()})));this._sessionDisposables.add(d),this._updateHintsDecorators(d.ranges,d.items),this._cacheHintsForFastRestore(n)}catch(u){Ln(u)}finally{s.dispose(),c.dispose()}}),this._debounceInfo.get(n));if(this._sessionDisposables.add(a),this._sessionDisposables.add(gn(()=>s==null?void 0:s.dispose(!0))),a.schedule(0),this._sessionDisposables.add(this._editor.onDidScrollChange(l=>{(l.scrollTopChanged||!a.isScheduled())&&a.schedule()})),this._sessionDisposables.add(this._editor.onDidChangeModelContent(l=>{const c=Math.max(a.delay,1250);a.schedule(c)})),e.enabled==="on")this._activeRenderMode=0;else{let l,c;e.enabled==="onUnlessPressed"?(l=0,c=1):(l=1,c=0),this._activeRenderMode=l,this._sessionDisposables.add(Y0.getInstance().event(u=>{if(!this._editor.hasModel())return;const d=u.altKey&&u.ctrlKey&&!(u.shiftKey||u.metaKey)?c:l;if(d!==this._activeRenderMode){this._activeRenderMode=d;const h=this._editor.getModel(),f=this._copyInlayHintsWithCurrentAnchor(h);this._updateHintsDecorators([h.getFullModelRange()],f),a.schedule(0)}}))}this._sessionDisposables.add(this._installDblClickGesture(()=>a.schedule(0))),this._sessionDisposables.add(this._installLinkGesture()),this._sessionDisposables.add(this._installContextMenu())}_installLinkGesture(){const e=new Xe,n=e.add(new yz(this._editor)),r=new Xe;return e.add(r),e.add(n.onMouseMoveOrRelevantKeyDown(s=>{const[o]=s,a=this._getInlayHintLabelPart(o),l=this._editor.getModel();if(!a||!l){r.clear();return}const c=new Ns;r.add(gn(()=>c.dispose(!0))),a.item.resolve(c.token),this._activeInlayHintPart=a.part.command||a.part.location?new iRt(a,o.hasTriggerModifier):void 0;const u=l.validatePosition(a.item.hint.position).lineNumber,d=new J(u,1,u,l.getLineMaxColumn(u)),h=this._getInlineHintsForRange(d);this._updateHintsDecorators([d],h),r.add(gn(()=>{this._activeInlayHintPart=void 0,this._updateHintsDecorators([d],h)}))})),e.add(n.onCancel(()=>r.clear())),e.add(n.onExecute(s=>qD(this,void 0,void 0,function*(){const o=this._getInlayHintLabelPart(s);if(o){const a=o.part;a.location?this._instaService.invokeFunction(jMe,s,this._editor,a.location):fQ.is(a.command)&&(yield this._invokeCommand(a.command,o.item))}}))),e}_getInlineHintsForRange(e){const n=new Set;for(const r of this._decorationsMetadata.values())e.containsRange(r.item.anchor.range)&&n.add(r.item);return Array.from(n)}_installDblClickGesture(e){return this._editor.onMouseUp(n=>qD(this,void 0,void 0,function*(){if(n.event.detail!==2)return;const r=this._getInlayHintLabelPart(n);if(r&&(n.event.preventDefault(),yield r.item.resolve(Hn.None),Ka(r.item.hint.textEdits))){const s=r.item.hint.textEdits.map(o=>Vr.replace(J.lift(o.range),o.text));this._editor.executeEdits("inlayHint.default",s),e()}}))}_installContextMenu(){return this._editor.onContextMenu(e=>qD(this,void 0,void 0,function*(){if(!(e.event.target instanceof HTMLElement))return;const n=this._getInlayHintLabelPart(e);n&&(yield this._instaService.invokeFunction(tRt,this._editor,e.event.target,n))}))}_getInlayHintLabelPart(e){var n;if(e.target.type!==6)return;const r=(n=e.target.detail.injectedText)===null||n===void 0?void 0:n.options;if(r instanceof S1&&(r==null?void 0:r.attachedData)instanceof Mne)return r.attachedData}_invokeCommand(e,n){var r;return qD(this,void 0,void 0,function*(){try{yield this._commandService.executeCommand(e.id,...(r=e.arguments)!==null&&r!==void 0?r:[])}catch(s){this._notificationService.notify({severity:F$.Error,source:n.provider.displayName,message:s})}})}_cacheHintsForFastRestore(e){const n=this._copyInlayHintsWithCurrentAnchor(e);this._inlayHintsCache.set(e,n)}_copyInlayHintsWithCurrentAnchor(e){const n=new Map;for(const[r,s]of this._decorationsMetadata){if(n.has(s.item))continue;const o=e.getDecorationRange(r);if(o){const a=new BMe(o,s.item.anchor.direction),l=s.item.with({anchor:a});n.set(s.item,l)}}return Array.from(n.values())}_getHintsRanges(){const n=this._editor.getModel(),r=this._editor.getVisibleRangesPlusViewportAboveBelow(),s=[];for(const o of r.sort(J.compareRangesUsingStarts)){const a=n.validateRange(new J(o.startLineNumber-30,o.startColumn,o.endLineNumber+30,o.endColumn));s.length===0||!J.areIntersectingOrTouching(s[s.length-1],a)?s.push(a):s[s.length-1]=J.plusRange(s[s.length-1],a)}return s}_updateHintsDecorators(e,n){var r,s;const o=[],a=(m,_,b,y,x)=>{const k={content:b,inlineClassNameAffectsLetterSpacing:!0,inlineClassName:_.className,cursorStops:y,attachedData:x};o.push({item:m,classNameRef:_,decoration:{range:m.anchor.range,options:{description:"InlayHint",showIfCollapsed:m.anchor.range.isEmpty(),collapseOnReplaceEdit:!m.anchor.range.isEmpty(),stickiness:0,[m.anchor.direction]:this._activeRenderMode===0?k:void 0}}})},l=(m,_)=>{const b=this._ruleFactory.createClassNameRef({width:`${c/3|0}px`,display:"inline-block"});a(m,b," ",_?Mp.Right:Mp.None)},{fontSize:c,fontFamily:u,padding:d,isUniform:h}=this._getLayoutInfo(),f="--code-editorInlayHintsFontFamily";this._editor.getContainerDomNode().style.setProperty(f,u);for(const m of n){m.hint.paddingLeft&&l(m,!1);const _=typeof m.hint.label=="string"?[{label:m.hint.label}]:m.hint.label;for(let b=0;b<_.length;b++){const y=_[b],x=b===0,k=b===_.length-1,D={fontSize:`${c}px`,fontFamily:`var(${f}), ${su.fontFamily}`,verticalAlign:h?"baseline":"middle",unicodeBidi:"isolate"};Ka(m.hint.textEdits)&&(D.cursor="default"),this._fillInColors(D,m.hint),(y.command||y.location)&&((r=this._activeInlayHintPart)===null||r===void 0?void 0:r.part.item)===m&&this._activeInlayHintPart.part.index===b&&(D.textDecoration="underline",this._activeInlayHintPart.hasTriggerModifier&&(D.color=Qr(Udt),D.cursor="pointer")),d&&(x&&k?(D.padding=`1px ${Math.max(1,c/4)|0}px`,D.borderRadius=`${c/4|0}px`):x?(D.padding=`1px 0 1px ${Math.max(1,c/4)|0}px`,D.borderRadius=`${c/4|0}px 0 0 ${c/4|0}px`):k?(D.padding=`1px ${Math.max(1,c/4)|0}px 1px 0`,D.borderRadius=`0 ${c/4|0}px ${c/4|0}px 0`):D.padding="1px 0 1px 0"),a(m,this._ruleFactory.createClassNameRef(D),rRt(y.label),k&&!m.hint.paddingRight?Mp.Right:Mp.None,new Mne(m,b))}if(m.hint.paddingRight&&l(m,!0),o.length>O8._MAX_DECORATORS)break}const p=[];for(const m of e)for(const{id:_}of(s=this._editor.getDecorationsInRange(m))!==null&&s!==void 0?s:[]){const b=this._decorationsMetadata.get(_);b&&(p.push(_),b.classNameRef.dispose(),this._decorationsMetadata.delete(_))}const g=Qp.capture(this._editor);this._editor.changeDecorations(m=>{const _=m.deltaDecorations(p,o.map(b=>b.decoration));for(let b=0;b<_.length;b++){const y=o[b];this._decorationsMetadata.set(_[b],y)}}),g.restore(this._editor)}_fillInColors(e,n){n.kind===P9.Parameter?(e.backgroundColor=Qr(Xdt),e.color=Qr(Gdt)):n.kind===P9.Type?(e.backgroundColor=Qr(Kdt),e.color=Qr(qdt)):(e.backgroundColor=Qr(tv),e.color=Qr(ev))}_getLayoutInfo(){const e=this._editor.getOption(139),n=e.padding,r=this._editor.getOption(52),s=this._editor.getOption(49);let o=e.fontSize;(!o||o<5||o>r)&&(o=r);const a=e.fontFamily||s;return{fontSize:o,fontFamily:a,padding:n,isUniform:!n&&a===s&&o===r}}_removeAllDecorations(){this._editor.removeDecorations(Array.from(this._decorationsMetadata.keys()));for(const e of this._decorationsMetadata.values())e.classNameRef.dispose();this._decorationsMetadata.clear()}};Ax.ID="editor.contrib.InlayHints";Ax._MAX_DECORATORS=1500;Ax=O8=nRt([hD(1,Et),hD(2,xh),hD(3,WMe),hD(4,us),hD(5,Ps),hD(6,hn)],Ax);function rRt(i){return i.replace(/[ \t]/g," ")}si.registerCommand("_executeInlayHintProvider",(i,...e)=>qD(void 0,void 0,void 0,function*(){const[n,r]=e;Ui(Jt.isUri(n)),Ui(J.isIRange(r));const{inlayHintsProvider:s}=i.get(Et),o=yield i.get(Ec).createModelReference(n);try{const a=yield wO.create(s,o.object.textEditorModel,[J.lift(r)],Hn.None),l=a.items.map(c=>c.hint);return setTimeout(()=>a.dispose(),0),l}finally{o.dispose()}}));var sRt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},hA=function(i,e){return function(n,r){e(n,r,i)}},pve=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},oRt=function(i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=i[Symbol.asyncIterator],n;return e?e.call(i):(i=typeof __values=="function"?__values(i):i[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=i[o]&&function(a){return new Promise(function(l,c){a=i[o](a),s(l,c,a.done,a.value)})}}function s(o,a,l,c){Promise.resolve(c).then(function(u){o({value:u,done:l})},a)}};class gve extends A8{constructor(e,n,r,s){super(10,n,e.item.anchor.range,r,s,!0),this.part=e}}let Pne=class extends lj{constructor(e,n,r,s,o,a){super(e,n,r,s,a),this._resolverService=o,this.hoverOrdinal=6}suggestHoverAnchor(e){var n;if(!Ax.get(this._editor)||e.target.type!==6)return null;const s=(n=e.target.detail.injectedText)===null||n===void 0?void 0:n.options;return s instanceof S1&&s.attachedData instanceof Mne?new gve(s.attachedData,this,e.event.posx,e.event.posy):null}computeSync(){return[]}computeAsync(e,n,r){return e instanceof gve?new zs(s=>pve(this,void 0,void 0,function*(){var o,a,l,c;const{part:u}=e;if(yield u.item.resolve(r),r.isCancellationRequested)return;let d;typeof u.item.hint.tooltip=="string"?d=new Ea().appendText(u.item.hint.tooltip):u.item.hint.tooltip&&(d=u.item.hint.tooltip),d&&s.emitOne(new Tp(this,e.range,[d],!1,0)),Ka(u.item.hint.textEdits)&&s.emitOne(new Tp(this,e.range,[new Ea().appendText(L("hint.dbl","Double-click to insert"))],!1,10001));let h;if(typeof u.part.tooltip=="string"?h=new Ea().appendText(u.part.tooltip):u.part.tooltip&&(h=u.part.tooltip),h&&s.emitOne(new Tp(this,e.range,[h],!1,1)),u.part.location||u.part.command){let _;const y=this._editor.getOption(77)==="altKey"?ri?L("links.navigate.kb.meta.mac","cmd + click"):L("links.navigate.kb.meta","ctrl + click"):ri?L("links.navigate.kb.alt.mac","option + click"):L("links.navigate.kb.alt","alt + click");u.part.location&&u.part.command?_=new Ea().appendText(L("hint.defAndCommand","Go to Definition ({0}), right click for more",y)):u.part.location?_=new Ea().appendText(L("hint.def","Go to Definition ({0})",y)):u.part.command&&(_=new Ea(`[${L("hint.cmd","Execute Command")}](${eRt(u.part.command)} "${u.part.command.title}") (${y})`,{isTrusted:!0})),_&&s.emitOne(new Tp(this,e.range,[_],!1,1e4))}const f=yield this._resolveInlayHintLabelPartHover(u,r);try{for(var p=!0,g=oRt(f),m;m=yield g.next(),o=m.done,!o;p=!0){c=m.value,p=!1;const _=c;s.emitOne(_)}}catch(_){a={error:_}}finally{try{!p&&!o&&(l=g.return)&&(yield l.call(g))}finally{if(a)throw a.error}}})):zs.EMPTY}_resolveInlayHintLabelPartHover(e,n){return pve(this,void 0,void 0,function*(){if(!e.part.location)return zs.EMPTY;const{uri:r,range:s}=e.part.location,o=yield this._resolverService.createModelReference(r);try{const a=o.object.textEditorModel;return this._languageFeaturesService.hoverProvider.has(a)?lle(this._languageFeaturesService.hoverProvider,a,new ve(s.startLineNumber,s.startColumn),n).filter(l=>!YE(l.hover.contents)).map(l=>new Tp(this,e.item.anchor.range,l.hover.contents,!1,2+l.ordinal)):zs.EMPTY}finally{o.dispose()}})}};Pne=sRt([hA(1,Ar),hA(2,fu),hA(3,ei),hA(4,Ec),hA(5,Et)],Pne);_i(Ax.ID,Ax,1);uk.register(Pne);class aRt{constructor(e,n,r){this._editRange=e,this._originalSelection=n,this._text=r}getEditOperations(e,n){n.addTrackedEditOperation(this._editRange,this._text)}computeCursorState(e,n){const s=n.getInverseEditOperations()[0].range;return this._originalSelection.isEmpty()?new Ft(s.endLineNumber,Math.min(this._originalSelection.positionColumn,s.endColumn),s.endLineNumber,Math.min(this._originalSelection.positionColumn,s.endColumn)):new Ft(s.endLineNumber,s.endColumn-this._text.length,s.endLineNumber,s.endColumn)}}var lRt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},cRt=function(i,e){return function(n,r){e(n,r,i)}},F8;let N1=F8=class{static get(e){return e.getContribution(F8.ID)}constructor(e,n){this.editor=e,this.editorWorkerService=n,this.decorations=this.editor.createDecorationsCollection()}dispose(){}run(e,n){var r;(r=this.currentRequest)===null||r===void 0||r.cancel();const s=this.editor.getSelection(),o=this.editor.getModel();if(!o||!s)return;let a=s;if(a.startLineNumber!==a.endLineNumber)return;const l=new cAe(this.editor,5),c=o.uri;return this.editorWorkerService.canNavigateValueSet(c)?(this.currentRequest=go(u=>this.editorWorkerService.navigateValueSet(c,a,n)),this.currentRequest.then(u=>{var d;if(!u||!u.range||!u.value||!l.validate(this.editor))return;const h=J.lift(u.range);let f=u.range;const p=u.value.length-(a.endColumn-a.startColumn);f={startLineNumber:f.startLineNumber,startColumn:f.startColumn,endLineNumber:f.endLineNumber,endColumn:f.startColumn+u.value.length},p>1&&(a=new Ft(a.startLineNumber,a.startColumn,a.endLineNumber,a.endColumn+p-1));const g=new aRt(h,a,u.value);this.editor.pushUndoStop(),this.editor.executeCommand(e,g),this.editor.pushUndoStop(),this.decorations.set([{range:f,options:F8.DECORATION}]),(d=this.decorationRemover)===null||d===void 0||d.cancel(),this.decorationRemover=p1(350),this.decorationRemover.then(()=>this.decorations.clear()).catch(Ln)}).catch(Ln)):Promise.resolve(void 0)}};N1.ID="editor.contrib.inPlaceReplaceController";N1.DECORATION=kn.register({description:"in-place-replace",className:"valueSetReplacement"});N1=F8=lRt([cRt(1,Wf)],N1);class uRt extends kt{constructor(){super({id:"editor.action.inPlaceReplace.up",label:L("InPlaceReplaceAction.previous.label","Replace with Previous Value"),alias:"Replace with Previous Value",precondition:oe.writable,kbOpts:{kbExpr:oe.editorTextFocus,primary:3159,weight:100}})}run(e,n){const r=N1.get(n);return r?r.run(this.id,!1):Promise.resolve(void 0)}}class dRt extends kt{constructor(){super({id:"editor.action.inPlaceReplace.down",label:L("InPlaceReplaceAction.next.label","Replace with Next Value"),alias:"Replace with Next Value",precondition:oe.writable,kbOpts:{kbExpr:oe.editorTextFocus,primary:3161,weight:100}})}run(e,n){const r=N1.get(n);return r?r.run(this.id,!0):Promise.resolve(void 0)}}_i(N1.ID,N1,4);rt(uRt);rt(dRt);class hRt extends kt{constructor(){super({id:"expandLineSelection",label:L("expandLineSelection","Expand Line Selection"),alias:"Expand Line Selection",precondition:void 0,kbOpts:{weight:0,kbExpr:oe.textInputFocus,primary:2090}})}run(e,n,r){if(r=r||{},!n.hasModel())return;const s=n._getViewModel();s.model.pushStackElement(),s.setCursorStates(r.source,3,Zo.expandLineSelection(s,s.getCursorStates())),s.revealPrimaryCursor(r.source,!0)}}rt(hRt);class fRt{constructor(e,n){this._selection=e,this._cursors=n,this._selectionId=null}getEditOperations(e,n){const r=pRt(e,this._cursors);for(let s=0,o=r.length;sa.lineNumber===l.lineNumber?a.column-l.column:a.lineNumber-l.lineNumber);for(let a=e.length-2;a>=0;a--)e[a].lineNumber===e[a+1].lineNumber&&e.splice(a,1);const n=[];let r=0,s=0;const o=e.length;for(let a=1,l=i.getLineCount();a<=l;a++){const c=i.getLineContent(a),u=c.length+1;let d=0;if(s=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},mRt=function(i,e){return function(n,r){e(n,r,i)}};let One=class{constructor(e,n,r,s){this._languageConfigurationService=s,this._selection=e,this._isMovingDown=n,this._autoIndent=r,this._selectionId=null,this._moveEndLineSelectionShrink=!1}getEditOperations(e,n){const r=e.getLineCount();if(this._isMovingDown&&this._selection.endLineNumber===r){this._selectionId=n.trackSelection(this._selection);return}if(!this._isMovingDown&&this._selection.startLineNumber===1){this._selectionId=n.trackSelection(this._selection);return}this._moveEndPositionDown=!1;let s=this._selection;s.startLineNumbere.tokenization.getLineTokens(d),getLanguageId:()=>e.getLanguageId(),getLanguageIdAtPosition:(d,h)=>e.getLanguageIdAtPosition(d,h)},getLineContent:null};if(s.startLineNumber===s.endLineNumber&&e.getLineMaxColumn(s.startLineNumber)===1){const d=s.startLineNumber,h=this._isMovingDown?d+1:d-1;e.getLineMaxColumn(h)===1?n.addEditOperation(new J(1,1,1,1),null):(n.addEditOperation(new J(d,1,d,1),e.getLineContent(h)),n.addEditOperation(new J(h,1,h,e.getLineMaxColumn(h)),null)),s=new Ft(h,1,h,1)}else{let d,h;if(this._isMovingDown){d=s.endLineNumber+1,h=e.getLineContent(d),n.addEditOperation(new J(d-1,e.getLineMaxColumn(d-1),d,e.getLineMaxColumn(d)),null);let f=h;if(this.shouldAutoIndent(e,s)){const p=this.matchEnterRule(e,c,o,d,s.startLineNumber-1);if(p!==null){const m=ar(e.getLineContent(d)),_=p+Uc(m,o);f=LM(_,o,l)+this.trimStart(h)}else{u.getLineContent=_=>_===s.startLineNumber?e.getLineContent(d):e.getLineContent(_);const m=rM(this._autoIndent,u,e.getLanguageIdAtPosition(d,1),s.startLineNumber,c,this._languageConfigurationService);if(m!==null){const _=ar(e.getLineContent(d)),b=Uc(m,o),y=Uc(_,o);b!==y&&(f=LM(b,o,l)+this.trimStart(h))}}n.addEditOperation(new J(s.startLineNumber,1,s.startLineNumber,1),f+` `);const g=this.matchEnterRuleMovingDown(e,c,o,s.startLineNumber,d,f);if(g!==null)g!==0&&this.getIndentEditsOfMovingBlock(e,n,s,o,l,g);else{u.getLineContent=_=>_===s.startLineNumber?f:_>=s.startLineNumber+1&&_<=s.endLineNumber+1?e.getLineContent(_-1):e.getLineContent(_);const m=rM(this._autoIndent,u,e.getLanguageIdAtPosition(d,1),s.startLineNumber+1,c,this._languageConfigurationService);if(m!==null){const _=ar(e.getLineContent(s.startLineNumber)),b=Uc(m,o),y=Uc(_,o);if(b!==y){const x=b-y;this.getIndentEditsOfMovingBlock(e,n,s,o,l,x)}}}}else n.addEditOperation(new J(s.startLineNumber,1,s.startLineNumber,1),f+` `)}else if(d=s.startLineNumber-1,h=e.getLineContent(d),n.addEditOperation(new J(d,1,d+1,1),null),n.addEditOperation(new J(s.endLineNumber,e.getLineMaxColumn(s.endLineNumber),s.endLineNumber,e.getLineMaxColumn(s.endLineNumber)),` `+h),this.shouldAutoIndent(e,s)){u.getLineContent=p=>p===d?e.getLineContent(s.startLineNumber):e.getLineContent(p);const f=this.matchEnterRule(e,c,o,s.startLineNumber,s.startLineNumber-2);if(f!==null)f!==0&&this.getIndentEditsOfMovingBlock(e,n,s,o,l,f);else{const p=rM(this._autoIndent,u,e.getLanguageIdAtPosition(s.startLineNumber,1),d,c,this._languageConfigurationService);if(p!==null){const g=ar(e.getLineContent(s.startLineNumber)),m=Uc(p,o),_=Uc(g,o);if(m!==_){const b=m-_;this.getIndentEditsOfMovingBlock(e,n,s,o,l,b)}}}}}this._selectionId=n.trackSelection(s)}buildIndentConverter(e,n,r){return{shiftIndent:s=>nh.shiftIndent(s,s.length+1,e,n,r),unshiftIndent:s=>nh.unshiftIndent(s,s.length+1,e,n,r)}}parseEnterResult(e,n,r,s,o){if(o){let a=o.indentation;o.indentAction===Hs.None||o.indentAction===Hs.Indent?a=o.indentation+o.appendText:o.indentAction===Hs.IndentOutdent?a=o.indentation:o.indentAction===Hs.Outdent&&(a=n.unshiftIndent(o.indentation)+o.appendText);const l=e.getLineContent(s);if(this.trimStart(l).indexOf(this.trimStart(a))>=0){const c=ar(e.getLineContent(s));let u=ar(a);const d=BIe(e,s,this._languageConfigurationService);d!==null&&d&2&&(u=n.unshiftIndent(u));const h=Uc(u,r),f=Uc(c,r);return h-f}}return null}matchEnterRuleMovingDown(e,n,r,s,o,a){if($p(a)>=0){const l=e.getLineMaxColumn(o),c=K2(this._autoIndent,e,new J(o,l,o,l),this._languageConfigurationService);return this.parseEnterResult(e,n,r,s,c)}else{let l=s-1;for(;l>=1;){const d=e.getLineContent(l);if($p(d)>=0)break;l--}if(l<1||s>e.getLineCount())return null;const c=e.getLineMaxColumn(l),u=K2(this._autoIndent,e,new J(l,c,l,c),this._languageConfigurationService);return this.parseEnterResult(e,n,r,s,u)}}matchEnterRule(e,n,r,s,o,a){let l=o;for(;l>=1;){let d;if(l===o&&a!==void 0?d=a:d=e.getLineContent(l),$p(d)>=0)break;l--}if(l<1||s>e.getLineCount())return null;const c=e.getLineMaxColumn(l),u=K2(this._autoIndent,e,new J(l,c,l,c),this._languageConfigurationService);return this.parseEnterResult(e,n,r,s,u)}trimStart(e){return e.replace(/^\s+/,"")}shouldAutoIndent(e,n){if(this._autoIndent<4||!e.tokenization.isCheapToTokenize(n.startLineNumber))return!1;const r=e.getLanguageIdAtPosition(n.startLineNumber,1),s=e.getLanguageIdAtPosition(n.endLineNumber,1);return!(r!==s||this._languageConfigurationService.getLanguageConfiguration(r).indentRulesSupport===null)}getIndentEditsOfMovingBlock(e,n,r,s,o,a){for(let l=r.startLineNumber;l<=r.endLineNumber;l++){const c=e.getLineContent(l),u=ar(c),h=Uc(u,s)+a,f=LM(h,s,o);f!==u&&(n.addEditOperation(new J(l,1,l,u.length+1),f),l===r.endLineNumber&&r.endColumn<=u.length+1&&f===""&&(this._moveEndLineSelectionShrink=!0))}}computeCursorState(e,n){let r=n.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(r=r.setEndPosition(r.endLineNumber+1,1)),this._moveEndLineSelectionShrink&&r.startLineNumber=s)return null;const o=[];for(let l=r;l<=s;l++)o.push(i.getLineContent(l));let a=o.slice(0);return a.sort(Jy.getCollator().compare),n===!0&&(a=a.reverse()),{startLineNumber:r,endLineNumber:s,before:o,after:a}}function _Rt(i,e,n){const r=zMe(i,e,n);return r?Vr.replace(new J(r.startLineNumber,1,r.endLineNumber,i.getLineMaxColumn(r.endLineNumber)),r.after.join(` `)):null}class VMe extends kt{constructor(e,n){super(n),this.down=e}run(e,n){if(!n.hasModel())return;const r=n.getSelections().map((a,l)=>({selection:a,index:l,ignore:!1}));r.sort((a,l)=>J.compareRangesUsingStarts(a.selection,l.selection));let s=r[0];for(let a=1;anew ve(l.positionLineNumber,l.positionColumn)));const o=n.getSelection();if(o===null)return;const a=new fRt(o,s);n.pushUndoStop(),n.executeCommands(this.id,[a]),n.pushUndoStop()}}Qz.ID="editor.action.trimTrailingWhitespace";class LRt extends kt{constructor(){super({id:"editor.action.deleteLines",label:L("lines.delete","Delete Line"),alias:"Delete Line",precondition:oe.writable,kbOpts:{kbExpr:oe.textInputFocus,primary:3113,weight:100}})}run(e,n){if(!n.hasModel())return;const r=this._getLinesToRemove(n),s=n.getModel();if(s.getLineCount()===1&&s.getLineMaxColumn(1)===1)return;let o=0;const a=[],l=[];for(let c=0,u=r.length;c1&&(h-=1,p=s.getLineMaxColumn(h)),a.push(Vr.replace(new Ft(h,p,f,g),"")),l.push(new Ft(h-o,d.positionColumn,h-o,d.positionColumn)),o+=d.endLineNumber-d.startLineNumber+1}n.pushUndoStop(),n.executeEdits(this.id,a,l),n.pushUndoStop()}_getLinesToRemove(e){const n=e.getSelections().map(o=>{let a=o.endLineNumber;return o.startLineNumbero.startLineNumber===a.startLineNumber?o.endLineNumber-a.endLineNumber:o.startLineNumber-a.startLineNumber);const r=[];let s=n[0];for(let o=1;o=n[o].startLineNumber?s.endLineNumber=n[o].endLineNumber:(r.push(s),s=n[o]);return r.push(s),r}}class DRt extends kt{constructor(){super({id:"editor.action.indentLines",label:L("lines.indent","Indent Line"),alias:"Indent Line",precondition:oe.writable,kbOpts:{kbExpr:oe.editorTextFocus,primary:2142,weight:100}})}run(e,n){const r=n._getViewModel();r&&(n.pushUndoStop(),n.executeCommands(this.id,zr.indent(r.cursorConfig,n.getModel(),n.getSelections())),n.pushUndoStop())}}class ERt extends kt{constructor(){super({id:"editor.action.outdentLines",label:L("lines.outdent","Outdent Line"),alias:"Outdent Line",precondition:oe.writable,kbOpts:{kbExpr:oe.editorTextFocus,primary:2140,weight:100}})}run(e,n){G2.Outdent.runEditorCommand(e,n,null)}}class IRt extends kt{constructor(){super({id:"editor.action.insertLineBefore",label:L("lines.insertBefore","Insert Line Above"),alias:"Insert Line Above",precondition:oe.writable,kbOpts:{kbExpr:oe.editorTextFocus,primary:3075,weight:100}})}run(e,n){const r=n._getViewModel();r&&(n.pushUndoStop(),n.executeCommands(this.id,zr.lineInsertBefore(r.cursorConfig,n.getModel(),n.getSelections())))}}class TRt extends kt{constructor(){super({id:"editor.action.insertLineAfter",label:L("lines.insertAfter","Insert Line Below"),alias:"Insert Line Below",precondition:oe.writable,kbOpts:{kbExpr:oe.editorTextFocus,primary:2051,weight:100}})}run(e,n){const r=n._getViewModel();r&&(n.pushUndoStop(),n.executeCommands(this.id,zr.lineInsertAfter(r.cursorConfig,n.getModel(),n.getSelections())))}}class qMe extends kt{run(e,n){if(!n.hasModel())return;const r=n.getSelection(),s=this._getRangesToDelete(n),o=[];for(let c=0,u=s.length-1;cVr.replace(c,""));n.pushUndoStop(),n.executeEdits(this.id,l,a),n.pushUndoStop()}}class RRt extends qMe{constructor(){super({id:"deleteAllLeft",label:L("lines.deleteAllLeft","Delete All Left"),alias:"Delete All Left",precondition:oe.writable,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:2049},weight:100}})}_getEndCursorState(e,n){let r=null;const s=[];let o=0;return n.forEach(a=>{let l;if(a.endColumn===1&&o>0){const c=a.startLineNumber-o;l=new Ft(c,a.startColumn,c,a.startColumn)}else l=new Ft(a.startLineNumber,a.startColumn,a.startLineNumber,a.startColumn);o+=a.endLineNumber-a.startLineNumber,a.intersectRanges(e)?r=l:s.push(l)}),r&&s.unshift(r),s}_getRangesToDelete(e){const n=e.getSelections();if(n===null)return[];let r=n;const s=e.getModel();return s===null?[]:(r.sort(J.compareRangesUsingStarts),r=r.map(o=>{if(o.isEmpty())if(o.startColumn===1){const a=Math.max(1,o.startLineNumber-1),l=o.startLineNumber===1?1:s.getLineLength(a)+1;return new J(a,l,o.startLineNumber,1)}else return new J(o.startLineNumber,1,o.startLineNumber,o.startColumn);else return new J(o.startLineNumber,1,o.endLineNumber,o.endColumn)}),r)}}class ARt extends qMe{constructor(){super({id:"deleteAllRight",label:L("lines.deleteAllRight","Delete All Right"),alias:"Delete All Right",precondition:oe.writable,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:297,secondary:[2068]},weight:100}})}_getEndCursorState(e,n){let r=null;const s=[];for(let o=0,a=n.length,l=0;o{if(o.isEmpty()){const a=n.getLineMaxColumn(o.startLineNumber);return o.startColumn===a?new J(o.startLineNumber,o.startColumn,o.startLineNumber+1,1):new J(o.startLineNumber,o.startColumn,o.startLineNumber,a)}return o});return s.sort(J.compareRangesUsingStarts),s}}class NRt extends kt{constructor(){super({id:"editor.action.joinLines",label:L("lines.joinLines","Join Lines"),alias:"Join Lines",precondition:oe.writable,kbOpts:{kbExpr:oe.editorTextFocus,primary:0,mac:{primary:296},weight:100}})}run(e,n){const r=n.getSelections();if(r===null)return;let s=n.getSelection();if(s===null)return;r.sort(J.compareRangesUsingStarts);const o=[],a=r.reduce((f,p)=>f.isEmpty()?f.endLineNumber===p.startLineNumber?(s.equalsSelection(f)&&(s=p),p):p.startLineNumber>f.endLineNumber+1?(o.push(f),p):new Ft(f.startLineNumber,f.startColumn,p.endLineNumber,p.endColumn):p.startLineNumber>f.endLineNumber?(o.push(f),p):new Ft(f.startLineNumber,f.startColumn,p.endLineNumber,p.endColumn));o.push(a);const l=n.getModel();if(l===null)return;const c=[],u=[];let d=s,h=0;for(let f=0,p=o.length;f=1){let N=!0;D===""&&(N=!1),N&&(D.charAt(D.length-1)===" "||D.charAt(D.length-1)===" ")&&(N=!1,D=D.replace(/[\s\uFEFF\xA0]+$/g," "));const P=A.substr(M-1);D+=(N?" ":"")+P,N?b=P.length+1:b=P.length}else b=0}const R=new J(m,_,y,x);if(!R.isEmpty()){let E;g.isEmpty()?(c.push(Vr.replace(R,D)),E=new Ft(R.startLineNumber-h,D.length-b+1,m-h,D.length-b+1)):g.startLineNumber===g.endLineNumber?(c.push(Vr.replace(R,D)),E=new Ft(g.startLineNumber-h,g.startColumn,g.endLineNumber-h,g.endColumn)):(c.push(Vr.replace(R,D)),E=new Ft(g.startLineNumber-h,g.startColumn,g.startLineNumber-h,D.length-k)),J.intersectRanges(R,s)!==null?d=E:u.push(E)}h+=R.endLineNumber-R.startLineNumber}u.unshift(d),n.pushUndoStop(),n.executeEdits(this.id,c,u),n.pushUndoStop()}}class MRt extends kt{constructor(){super({id:"editor.action.transpose",label:L("editor.transpose","Transpose Characters around the Cursor"),alias:"Transpose Characters around the Cursor",precondition:oe.writable})}run(e,n){const r=n.getSelections();if(r===null)return;const s=n.getModel();if(s===null)return;const o=[];for(let a=0,l=r.length;a=d){if(u.lineNumber===s.getLineCount())continue;const h=new J(u.lineNumber,Math.max(1,u.column-1),u.lineNumber+1,1),f=s.getValueInRange(h).split("").reverse().join("");o.push(new Sa(new Ft(u.lineNumber,Math.max(1,u.column-1),u.lineNumber+1,1),f))}else{const h=new J(u.lineNumber,Math.max(1,u.column-1),u.lineNumber,u.column+1),f=s.getValueInRange(h).split("").reverse().join("");o.push(new Doe(h,f,new Ft(u.lineNumber,u.column+1,u.lineNumber,u.column+1)))}}n.pushUndoStop(),n.executeCommands(this.id,o),n.pushUndoStop()}}class JI extends kt{run(e,n){const r=n.getSelections();if(r===null)return;const s=n.getModel();if(s===null)return;const o=n.getOption(129),a=[];for(const l of r)if(l.isEmpty()){const c=l.getStartPosition(),u=n.getConfiguredWordAtPosition(c);if(!u)continue;const d=new J(c.lineNumber,u.startColumn,c.lineNumber,u.endColumn),h=s.getValueInRange(d);a.push(Vr.replace(d,this._modifyText(h,o)))}else{const c=s.getValueInRange(l);a.push(Vr.replace(l,this._modifyText(c,o)))}n.pushUndoStop(),n.executeEdits(this.id,a),n.pushUndoStop()}}class PRt extends JI{constructor(){super({id:"editor.action.transformToUppercase",label:L("editor.transformToUppercase","Transform to Uppercase"),alias:"Transform to Uppercase",precondition:oe.writable})}_modifyText(e,n){return e.toLocaleUpperCase()}}class ORt extends JI{constructor(){super({id:"editor.action.transformToLowercase",label:L("editor.transformToLowercase","Transform to Lowercase"),alias:"Transform to Lowercase",precondition:oe.writable})}_modifyText(e,n){return e.toLocaleLowerCase()}}class dk{constructor(e,n){this._pattern=e,this._flags=n,this._actual=null,this._evaluated=!1}get(){if(!this._evaluated){this._evaluated=!0;try{this._actual=new RegExp(this._pattern,this._flags)}catch{}}return this._actual}isSupported(){return this.get()!==null}}class CO extends JI{constructor(){super({id:"editor.action.transformToTitlecase",label:L("editor.transformToTitlecase","Transform to Title Case"),alias:"Transform to Title Case",precondition:oe.writable})}_modifyText(e,n){const r=CO.titleBoundary.get();return r?e.toLocaleLowerCase().replace(r,s=>s.toLocaleUpperCase()):e}}CO.titleBoundary=new dk("(^|[^\\p{L}\\p{N}']|((^|\\P{L})'))\\p{L}","gmu");class e1 extends JI{constructor(){super({id:"editor.action.transformToSnakecase",label:L("editor.transformToSnakecase","Transform to Snake Case"),alias:"Transform to Snake Case",precondition:oe.writable})}_modifyText(e,n){const r=e1.caseBoundary.get(),s=e1.singleLetters.get();return!r||!s?e:e.replace(r,"$1_$2").replace(s,"$1_$2$3").toLocaleLowerCase()}}e1.caseBoundary=new dk("(\\p{Ll})(\\p{Lu})","gmu");e1.singleLetters=new dk("(\\p{Lu}|\\p{N})(\\p{Lu})(\\p{Ll})","gmu");class SO extends JI{constructor(){super({id:"editor.action.transformToCamelcase",label:L("editor.transformToCamelcase","Transform to Camel Case"),alias:"Transform to Camel Case",precondition:oe.writable})}_modifyText(e,n){const r=SO.wordBoundary.get();if(!r)return e;const s=e.split(r);return s.shift()+s.map(a=>a.substring(0,1).toLocaleUpperCase()+a.substring(1)).join("")}}SO.wordBoundary=new dk("[_\\s-]","gm");class Cv extends JI{static isSupported(){return[this.caseBoundary,this.singleLetters,this.underscoreBoundary].every(n=>n.isSupported())}constructor(){super({id:"editor.action.transformToKebabcase",label:L("editor.transformToKebabcase","Transform to Kebab Case"),alias:"Transform to Kebab Case",precondition:oe.writable})}_modifyText(e,n){const r=Cv.caseBoundary.get(),s=Cv.singleLetters.get(),o=Cv.underscoreBoundary.get();return!r||!s||!o?e:e.replace(o,"$1-$3").replace(r,"$1-$2").replace(s,"$1-$2").toLocaleLowerCase()}}Cv.caseBoundary=new dk("(\\p{Ll})(\\p{Lu})","gmu");Cv.singleLetters=new dk("(\\p{Lu}|\\p{N})(\\p{Lu}\\p{Ll})","gmu");Cv.underscoreBoundary=new dk("(\\S)(_)(\\S)","gm");rt(vRt);rt(bRt);rt(yRt);rt(wRt);rt(CRt);rt(SRt);rt(xRt);rt(kRt);rt(Qz);rt(LRt);rt(DRt);rt(ERt);rt(IRt);rt(TRt);rt(RRt);rt(ARt);rt(NRt);rt(MRt);rt(PRt);rt(ORt);e1.caseBoundary.isSupported()&&e1.singleLetters.isSupported()&&rt(e1);SO.wordBoundary.isSupported()&&rt(SO);CO.titleBoundary.isSupported()&&rt(CO);Cv.isSupported()&&rt(Cv);var FRt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},G6=function(i,e){return function(n,r){e(n,r,i)}},Fne=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},B8;const KMe=new yt("LinkedEditingInputVisible",!1),BRt="linked-editing-decoration";let M1=B8=class extends Le{static get(e){return e.getContribution(B8.ID)}constructor(e,n,r,s,o){super(),this.languageConfigurationService=s,this._syncRangesToken=0,this._localToDispose=this._register(new Xe),this._editor=e,this._providers=r.linkedEditingRangeProvider,this._enabled=!1,this._visibleContextKey=KMe.bindTo(n),this._debounceInformation=o.for(this._providers,"Linked Editing",{max:200}),this._currentDecorations=this._editor.createDecorationsCollection(),this._languageWordPattern=null,this._currentWordPattern=null,this._ignoreChangeEvent=!1,this._localToDispose=this._register(new Xe),this._rangeUpdateTriggerPromise=null,this._rangeSyncTriggerPromise=null,this._currentRequest=null,this._currentRequestPosition=null,this._currentRequestModelVersion=null,this._register(this._editor.onDidChangeModel(()=>this.reinitialize(!0))),this._register(this._editor.onDidChangeConfiguration(a=>{(a.hasChanged(69)||a.hasChanged(92))&&this.reinitialize(!1)})),this._register(this._providers.onDidChange(()=>this.reinitialize(!1))),this._register(this._editor.onDidChangeModelLanguage(()=>this.reinitialize(!0))),this.reinitialize(!0)}reinitialize(e){const n=this._editor.getModel(),r=n!==null&&(this._editor.getOption(69)||this._editor.getOption(92))&&this._providers.has(n);if(r===this._enabled&&!e||(this._enabled=r,this.clearRanges(),this._localToDispose.clear(),!r||n===null))return;this._localToDispose.add(_t.runAndSubscribe(n.onDidChangeLanguageConfiguration,()=>{this._languageWordPattern=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition()}));const s=new Rf(this._debounceInformation.get(n)),o=()=>{var c;this._rangeUpdateTriggerPromise=s.trigger(()=>this.updateRanges(),(c=this._debounceDuration)!==null&&c!==void 0?c:this._debounceInformation.get(n))},a=new Rf(0),l=c=>{this._rangeSyncTriggerPromise=a.trigger(()=>this._syncRanges(c))};this._localToDispose.add(this._editor.onDidChangeCursorPosition(()=>{o()})),this._localToDispose.add(this._editor.onDidChangeModelContent(c=>{if(!this._ignoreChangeEvent&&this._currentDecorations.length>0){const u=this._currentDecorations.getRange(0);if(u&&c.changes.every(d=>u.intersectRanges(d.range))){l(this._syncRangesToken);return}}o()})),this._localToDispose.add({dispose:()=>{s.dispose(),a.dispose()}}),this.updateRanges()}_syncRanges(e){if(!this._editor.hasModel()||e!==this._syncRangesToken||this._currentDecorations.length===0)return;const n=this._editor.getModel(),r=this._currentDecorations.getRange(0);if(!r||r.startLineNumber!==r.endLineNumber)return this.clearRanges();const s=n.getValueInRange(r);if(this._currentWordPattern){const a=s.match(this._currentWordPattern);if((a?a[0].length:0)!==s.length)return this.clearRanges()}const o=[];for(let a=1,l=this._currentDecorations.length;a1){this.clearRanges();return}const r=this._editor.getModel(),s=r.getVersionId();if(this._currentRequestPosition&&this._currentRequestModelVersion===s){if(n.equals(this._currentRequestPosition))return;if(this._currentDecorations.length>0){const a=this._currentDecorations.getRange(0);if(a&&a.containsPosition(n))return}}this.clearRanges(),this._currentRequestPosition=n,this._currentRequestModelVersion=s;const o=go(a=>Fne(this,void 0,void 0,function*(){try{const l=new Xa(!1),c=yield GMe(this._providers,r,n,a);if(this._debounceInformation.update(r,l.elapsed()),o!==this._currentRequest||(this._currentRequest=null,s!==r.getVersionId()))return;let u=[];c!=null&&c.ranges&&(u=c.ranges),this._currentWordPattern=(c==null?void 0:c.wordPattern)||this._languageWordPattern;let d=!1;for(let f=0,p=u.length;f({range:f,options:B8.DECORATION}));this._visibleContextKey.set(!0),this._currentDecorations.set(h),this._syncRangesToken++}catch(l){sg(l)||Ln(l),(this._currentRequest===o||!this._currentRequest)&&this.clearRanges()}}));return this._currentRequest=o,o})}};M1.ID="editor.contrib.linkedEditing";M1.DECORATION=kn.register({description:"linked-editing",stickiness:0,className:BRt});M1=B8=FRt([G6(1,mn),G6(2,Et),G6(3,dr),G6(4,xh)],M1);class jRt extends kt{constructor(){super({id:"editor.action.linkedEditing",label:L("linkedEditing.label","Start Linked Editing"),alias:"Start Linked Editing",precondition:ze.and(oe.writable,oe.hasRenameProvider),kbOpts:{kbExpr:oe.editorTextFocus,primary:3132,weight:100}})}runCommand(e,n){const r=e.get(Si),[s,o]=Array.isArray(n)&&n||[void 0,void 0];return Jt.isUri(s)&&ve.isIPosition(o)?r.openCodeEditor({resource:s},r.getActiveCodeEditor()).then(a=>{a&&(a.setPosition(o),a.invokeWithinContext(l=>(this.reportTelemetry(l,a),this.run(l,a))))},Ln):super.runCommand(e,n)}run(e,n){const r=M1.get(n);return r?Promise.resolve(r.updateRanges(!0)):Promise.resolve()}}const WRt=Ho.bindToContribution(M1.get);ct(new WRt({id:"cancelLinkedEditingInput",precondition:KMe,handler:i=>i.clearRanges(),kbOpts:{kbExpr:oe.editorTextFocus,weight:199,primary:9,secondary:[1033]}}));function GMe(i,e,n,r){const s=i.ordered(e);return NEe(s.map(o=>()=>Fne(this,void 0,void 0,function*(){try{return yield o.provideLinkedEditingRanges(e,n,r)}catch(a){Us(a);return}})),o=>!!o&&Ka(o==null?void 0:o.ranges))}ce("editor.linkedEditingBackground",{dark:Te.fromHex("#f00").transparent(.3),light:Te.fromHex("#f00").transparent(.3),hcDark:Te.fromHex("#f00").transparent(.3),hcLight:Te.white},L("editorLinkedEditingBackground","Background color when the editor auto renames on type."));d_("_executeLinkedEditingProvider",(i,e,n)=>{const{linkedEditingRangeProvider:r}=i.get(Et);return GMe(r,e,n,Hn.None)});_i(M1.ID,M1,1);rt(jRt);var XMe=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let $Rt=class{constructor(e,n){this._link=e,this._provider=n}toJSON(){return{range:this.range,url:this.url,tooltip:this.tooltip}}get range(){return this._link.range}get url(){return this._link.url}get tooltip(){return this._link.tooltip}resolve(e){return XMe(this,void 0,void 0,function*(){return this._link.url?this._link.url:typeof this._provider.resolveLink=="function"?Promise.resolve(this._provider.resolveLink(this._link,e)).then(n=>(this._link=n||this._link,this._link.url?this.resolve(e):Promise.reject(new Error("missing")))):Promise.reject(new Error("missing"))})}};class Sj{constructor(e){this._disposables=new Xe;let n=[];for(const[r,s]of e){const o=r.links.map(a=>new $Rt(a,s));n=Sj._union(n,o),Ase(r)&&this._disposables.add(r)}this.links=n}dispose(){this._disposables.dispose(),this.links.length=0}static _union(e,n){const r=[];let s,o,a,l;for(s=0,a=0,o=e.length,l=n.length;sPromise.resolve(o.provideLinks(e,n)).then(l=>{l&&(r[a]=[l,o])},Us));return Promise.all(s).then(()=>{const o=new Sj(Hm(r));return n.isCancellationRequested?(o.dispose(),new Sj([])):o})}si.registerCommand("_executeLinkProvider",(i,...e)=>XMe(void 0,void 0,void 0,function*(){let[n,r]=e;Ui(n instanceof Jt),typeof r!="number"&&(r=0);const{linkProvider:s}=i.get(Et),o=i.get(Fr).getModel(n);if(!o)return[];const a=yield YMe(s,o,Hn.None);if(!a)return[];for(let c=0;c=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},X6=function(i,e){return function(n,r){e(n,r,i)}},VRt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Bne;let fI=Bne=class extends Le{static get(e){return e.getContribution(Bne.ID)}constructor(e,n,r,s,o){super(),this.editor=e,this.openerService=n,this.notificationService=r,this.languageFeaturesService=s,this.providers=this.languageFeaturesService.linkProvider,this.debounceInformation=o.for(this.providers,"Links",{min:1e3,max:4e3}),this.computeLinks=this._register(new Ji(()=>this.computeLinksNow(),1e3)),this.computePromise=null,this.activeLinksList=null,this.currentOccurrences={},this.activeLinkDecorationId=null;const a=this._register(new yz(e));this._register(a.onMouseMoveOrRelevantKeyDown(([l,c])=>{this._onEditorMouseMove(l,c)})),this._register(a.onExecute(l=>{this.onEditorMouseUp(l)})),this._register(a.onCancel(l=>{this.cleanUpActiveLinkDecoration()})),this._register(e.onDidChangeConfiguration(l=>{l.hasChanged(70)&&(this.updateDecorations([]),this.stop(),this.computeLinks.schedule(0))})),this._register(e.onDidChangeModelContent(l=>{this.editor.hasModel()&&this.computeLinks.schedule(this.debounceInformation.get(this.editor.getModel()))})),this._register(e.onDidChangeModel(l=>{this.currentOccurrences={},this.activeLinkDecorationId=null,this.stop(),this.computeLinks.schedule(0)})),this._register(e.onDidChangeModelLanguage(l=>{this.stop(),this.computeLinks.schedule(0)})),this._register(this.providers.onDidChange(l=>{this.stop(),this.computeLinks.schedule(0)})),this.computeLinks.schedule(0)}computeLinksNow(){return VRt(this,void 0,void 0,function*(){if(!this.editor.hasModel()||!this.editor.getOption(70))return;const e=this.editor.getModel();if(!e.isTooLargeForSyncing()&&this.providers.has(e)){this.activeLinksList&&(this.activeLinksList.dispose(),this.activeLinksList=null),this.computePromise=go(n=>YMe(this.providers,e,n));try{const n=new Xa(!1);if(this.activeLinksList=yield this.computePromise,this.debounceInformation.update(e,n.elapsed()),e.isDisposed())return;this.updateDecorations(this.activeLinksList.links)}catch(n){Ln(n)}finally{this.computePromise=null}}})}updateDecorations(e){const n=this.editor.getOption(77)==="altKey",r=[],s=Object.keys(this.currentOccurrences);for(const a of s){const l=this.currentOccurrences[a];r.push(l.decorationId)}const o=[];if(e)for(const a of e)o.push(aE.decoration(a,n));this.editor.changeDecorations(a=>{const l=a.deltaDecorations(r,o);this.currentOccurrences={},this.activeLinkDecorationId=null;for(let c=0,u=l.length;c{s.activate(o,r),this.activeLinkDecorationId=s.decorationId})}else this.cleanUpActiveLinkDecoration()}cleanUpActiveLinkDecoration(){const e=this.editor.getOption(77)==="altKey";if(this.activeLinkDecorationId){const n=this.currentOccurrences[this.activeLinkDecorationId];n&&this.editor.changeDecorations(r=>{n.deactivate(r,e)}),this.activeLinkDecorationId=null}}onEditorMouseUp(e){if(!this.isEnabled(e))return;const n=this.getLinkOccurrence(e.target.position);n&&this.openLinkOccurrence(n,e.hasSideBySideModifier,!0)}openLinkOccurrence(e,n,r=!1){if(!this.openerService)return;const{link:s}=e;s.resolve(Hn.None).then(o=>{if(typeof o=="string"&&this.editor.hasModel()){const a=this.editor.getModel().uri;if(a.scheme===Pn.file&&o.startsWith(`${Pn.file}:`)){const l=Jt.parse(o);if(l.scheme===Pn.file){const c=Hg(l);let u=null;c.startsWith("/./")?u=`.${c.substr(1)}`:c.startsWith("//./")&&(u=`.${c.substr(2)}`),u&&(o=Zgt(a,u))}}}return this.openerService.open(o,{openToSide:n,fromUserGesture:r,allowContributedOpeners:!0,allowCommands:!0,fromWorkspace:!0})},o=>{const a=o instanceof Error?o.message:o;a==="invalid"?this.notificationService.warn(L("invalid.url","Failed to open this link because it is not well-formed: {0}",s.url.toString())):a==="missing"?this.notificationService.warn(L("missing.url","Failed to open this link because its target is missing.")):Ln(o)})}getLinkOccurrence(e){if(!this.editor.hasModel()||!e)return null;const n=this.editor.getModel().getDecorationsInRange({startLineNumber:e.lineNumber,startColumn:e.column,endLineNumber:e.lineNumber,endColumn:e.column},0,!0);for(const r of n){const s=this.currentOccurrences[r.id];if(s)return s}return null}isEnabled(e,n){return!!(e.target.type===6&&(e.hasTriggerModifier||n&&n.keyCodeIsTriggerKey))}stop(){var e;this.computeLinks.cancel(),this.activeLinksList&&((e=this.activeLinksList)===null||e===void 0||e.dispose(),this.activeLinksList=null),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)}dispose(){super.dispose(),this.stop()}};fI.ID="editor.linkDetector";fI=Bne=zRt([X6(1,fu),X6(2,Ps),X6(3,Et),X6(4,xh)],fI);const mve={general:kn.register({description:"detected-link",stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link"}),active:kn.register({description:"detected-link-active",stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link-active"})};class aE{static decoration(e,n){return{range:e.range,options:aE._getOptions(e,n,!1)}}static _getOptions(e,n,r){const s=Object.assign({},r?mve.active:mve.general);return s.hoverMessage=HRt(e,n),s}constructor(e,n){this.link=e,this.decorationId=n}activate(e,n){e.changeDecorationOptions(this.decorationId,aE._getOptions(this.link,n,!0))}deactivate(e,n){e.changeDecorationOptions(this.decorationId,aE._getOptions(this.link,n,!1))}}function HRt(i,e){const n=i.url&&/^command:/i.test(i.url.toString()),r=i.tooltip?i.tooltip:n?L("links.navigate.executeCmd","Execute command"):L("links.navigate.follow","Follow link"),s=e?ri?L("links.navigate.kb.meta.mac","cmd + click"):L("links.navigate.kb.meta","ctrl + click"):ri?L("links.navigate.kb.alt.mac","option + click"):L("links.navigate.kb.alt","alt + click");if(i.url){let o="";if(/^command:/i.test(i.url.toString())){const l=i.url.toString().match(/^command:([^?#]+)/);if(l){const c=l[1];o=L("tooltip.explanation","Execute command {0}",c)}}return new Ea("",!0).appendLink(i.url.toString(!0).replace(/ /g,"%20"),r,o).appendMarkdown(` (${s})`)}else return new Ea().appendText(`${r} (${s})`)}class URt extends kt{constructor(){super({id:"editor.action.openLink",label:L("label","Open Link"),alias:"Open Link",precondition:void 0})}run(e,n){const r=fI.get(n);if(!r||!n.hasModel())return;const s=n.getSelections();for(const o of s){const a=r.getLinkOccurrence(o.getEndPosition());a&&r.openLinkOccurrence(a,!1)}}}_i(fI.ID,fI,1);rt(URt);class jne extends Le{constructor(e){super(),this._editor=e,this._register(this._editor.onMouseDown(n=>{const r=this._editor.getOption(116);r>=0&&n.target.type===6&&n.target.position.column>=r&&this._editor.updateOptions({stopRenderingLineAfter:-1})}))}}jne.ID="editor.contrib.longLinesHelper";_i(jne.ID,jne,2);const Y6=ce("editor.wordHighlightBackground",{dark:"#575757B8",light:"#57575740",hcDark:null,hcLight:null},L("wordHighlight","Background color of a symbol during read-access, like reading a variable. The color must not be opaque so as not to hide underlying decorations."),!0);ce("editor.wordHighlightStrongBackground",{dark:"#004972B8",light:"#0e639c40",hcDark:null,hcLight:null},L("wordHighlightStrong","Background color of a symbol during write-access, like writing to a variable. The color must not be opaque so as not to hide underlying decorations."),!0);ce("editor.wordHighlightTextBackground",{light:Y6,dark:Y6,hcDark:Y6,hcLight:Y6},L("wordHighlightText","Background color of a textual occurrence for a symbol. The color must not be opaque so as not to hide underlying decorations."),!0);const Z6=ce("editor.wordHighlightBorder",{light:null,dark:null,hcDark:Dr,hcLight:Dr},L("wordHighlightBorder","Border color of a symbol during read-access, like reading a variable."));ce("editor.wordHighlightStrongBorder",{light:null,dark:null,hcDark:Dr,hcLight:Dr},L("wordHighlightStrongBorder","Border color of a symbol during write-access, like writing to a variable."));ce("editor.wordHighlightTextBorder",{light:Z6,dark:Z6,hcDark:Z6,hcLight:Z6},L("wordHighlightTextBorder","Border color of a textual occurrence for a symbol."));const qRt=ce("editorOverviewRuler.wordHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hcDark:"#A0A0A0CC",hcLight:"#A0A0A0CC"},L("overviewRulerWordHighlightForeground","Overview ruler marker color for symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),KRt=ce("editorOverviewRuler.wordHighlightStrongForeground",{dark:"#C0A0C0CC",light:"#C0A0C0CC",hcDark:"#C0A0C0CC",hcLight:"#C0A0C0CC"},L("overviewRulerWordHighlightStrongForeground","Overview ruler marker color for write-access symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),GRt=ce("editorOverviewRuler.wordHighlightTextForeground",{dark:pN,light:pN,hcDark:pN,hcLight:pN},L("overviewRulerWordHighlightTextForeground","Overview ruler marker color of a textual occurrence for a symbol. The color must not be opaque so as not to hide underlying decorations."),!0),XRt=kn.register({description:"word-highlight-strong",stickiness:1,className:"wordHighlightStrong",overviewRuler:{color:Qr(KRt),position:hd.Center},minimap:{color:Qr(k$),position:ou.Inline}}),YRt=kn.register({description:"word-highlight-text",stickiness:1,className:"wordHighlightText",overviewRuler:{color:Qr(GRt),position:hd.Center},minimap:{color:Qr(k$),position:ou.Inline}}),ZRt=kn.register({description:"selection-highlight-overview",stickiness:1,className:"selectionHighlight",overviewRuler:{color:Qr(pN),position:hd.Center},minimap:{color:Qr(k$),position:ou.Inline}}),QRt=kn.register({description:"selection-highlight",stickiness:1,className:"selectionHighlight"}),JRt=kn.register({description:"word-highlight",stickiness:1,className:"wordHighlight",overviewRuler:{color:Qr(qRt),position:hd.Center},minimap:{color:Qr(k$),position:ou.Inline}});function eAt(i){return i===oP.Write?XRt:i===oP.Text?YRt:JRt}function tAt(i){return i?QRt:ZRt}Of((i,e)=>{const n=i.getColor(_oe);n&&e.addRule(`.monaco-editor .selectionHighlight { background-color: ${n.transparent(.5)}; }`)});var nAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},iAt=function(i,e){return function(n,r){e(n,r,i)}},Wne;function ew(i,e){const n=e.filter(r=>!i.find(s=>s.equals(r)));if(n.length>=1){const r=n.map(o=>`line ${o.viewState.position.lineNumber} column ${o.viewState.position.column}`).join(", "),s=n.length===1?L("cursorAdded","Cursor added: {0}",r):L("cursorsAdded","Cursors added: {0}",r);v1(s)}}class rAt extends kt{constructor(){super({id:"editor.action.insertCursorAbove",label:L("mutlicursor.insertAbove","Add Cursor Above"),alias:"Add Cursor Above",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:2576,linux:{primary:1552,secondary:[3088]},weight:100},menuOpts:{menuId:se.MenubarSelectionMenu,group:"3_multi",title:L({},"&&Add Cursor Above"),order:2}})}run(e,n,r){if(!n.hasModel())return;let s=!0;r&&r.logicalLine===!1&&(s=!1);const o=n._getViewModel();if(o.cursorConfig.readOnly)return;o.model.pushStackElement();const a=o.getCursorStates();o.setCursorStates(r.source,3,Zo.addCursorUp(o,a,s)),o.revealTopMostCursor(r.source),ew(a,o.getCursorStates())}}class sAt extends kt{constructor(){super({id:"editor.action.insertCursorBelow",label:L("mutlicursor.insertBelow","Add Cursor Below"),alias:"Add Cursor Below",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:2578,linux:{primary:1554,secondary:[3090]},weight:100},menuOpts:{menuId:se.MenubarSelectionMenu,group:"3_multi",title:L({},"A&&dd Cursor Below"),order:3}})}run(e,n,r){if(!n.hasModel())return;let s=!0;r&&r.logicalLine===!1&&(s=!1);const o=n._getViewModel();if(o.cursorConfig.readOnly)return;o.model.pushStackElement();const a=o.getCursorStates();o.setCursorStates(r.source,3,Zo.addCursorDown(o,a,s)),o.revealBottomMostCursor(r.source),ew(a,o.getCursorStates())}}class oAt extends kt{constructor(){super({id:"editor.action.insertCursorAtEndOfEachLineSelected",label:L("mutlicursor.insertAtEndOfEachLineSelected","Add Cursors to Line Ends"),alias:"Add Cursors to Line Ends",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:1575,weight:100},menuOpts:{menuId:se.MenubarSelectionMenu,group:"3_multi",title:L({},"Add C&&ursors to Line Ends"),order:4}})}getCursorsForSelection(e,n,r){if(!e.isEmpty()){for(let s=e.startLineNumber;s1&&r.push(new Ft(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn))}}run(e,n){if(!n.hasModel())return;const r=n.getModel(),s=n.getSelections(),o=n._getViewModel(),a=o.getCursorStates(),l=[];s.forEach(c=>this.getCursorsForSelection(c,r,l)),l.length>0&&n.setSelections(l),ew(a,o.getCursorStates())}}class aAt extends kt{constructor(){super({id:"editor.action.addCursorsToBottom",label:L("mutlicursor.addCursorsToBottom","Add Cursors To Bottom"),alias:"Add Cursors To Bottom",precondition:void 0})}run(e,n){if(!n.hasModel())return;const r=n.getSelections(),s=n.getModel().getLineCount(),o=[];for(let c=r[0].startLineNumber;c<=s;c++)o.push(new Ft(c,r[0].startColumn,c,r[0].endColumn));const a=n._getViewModel(),l=a.getCursorStates();o.length>0&&n.setSelections(o),ew(l,a.getCursorStates())}}class lAt extends kt{constructor(){super({id:"editor.action.addCursorsToTop",label:L("mutlicursor.addCursorsToTop","Add Cursors To Top"),alias:"Add Cursors To Top",precondition:void 0})}run(e,n){if(!n.hasModel())return;const r=n.getSelections(),s=[];for(let l=r[0].startLineNumber;l>=1;l--)s.push(new Ft(l,r[0].startColumn,l,r[0].endColumn));const o=n._getViewModel(),a=o.getCursorStates();s.length>0&&n.setSelections(s),ew(a,o.getCursorStates())}}class Q6{constructor(e,n,r){this.selections=e,this.revealRange=n,this.revealScrollType=r}}class xO{static create(e,n){if(!e.hasModel())return null;const r=n.getState();if(!e.hasTextFocus()&&r.isRevealed&&r.searchString.length>0)return new xO(e,n,!1,r.searchString,r.wholeWord,r.matchCase,null);let s=!1,o,a;const l=e.getSelections();l.length===1&&l[0].isEmpty()?(s=!0,o=!0,a=!0):(o=r.wholeWord,a=r.matchCase);const c=e.getSelection();let u,d=null;if(c.isEmpty()){const h=e.getConfiguredWordAtPosition(c.getStartPosition());if(!h)return null;u=h.word,d=new Ft(c.startLineNumber,h.startColumn,c.startLineNumber,h.endColumn)}else u=e.getModel().getValueInRange(c).replace(/\r\n/g,` `);return new xO(e,n,s,u,o,a,d)}constructor(e,n,r,s,o,a,l){this._editor=e,this.findController=n,this.isDisconnectedFromFindController=r,this.searchText=s,this.wholeWord=o,this.matchCase=a,this.currentMatch=l}addSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;const e=this._getNextMatch();if(!e)return null;const n=this._editor.getSelections();return new Q6(n.concat(e),e,0)}moveSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;const e=this._getNextMatch();if(!e)return null;const n=this._editor.getSelections();return new Q6(n.slice(0,n.length-1).concat(e),e,0)}_getNextMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){const s=this.currentMatch;return this.currentMatch=null,s}this.findController.highlightFindOptions();const e=this._editor.getSelections(),n=e[e.length-1],r=this._editor.getModel().findNextMatch(this.searchText,n.getEndPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(129):null,!1);return r?new Ft(r.range.startLineNumber,r.range.startColumn,r.range.endLineNumber,r.range.endColumn):null}addSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;const e=this._getPreviousMatch();if(!e)return null;const n=this._editor.getSelections();return new Q6(n.concat(e),e,0)}moveSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;const e=this._getPreviousMatch();if(!e)return null;const n=this._editor.getSelections();return new Q6(n.slice(0,n.length-1).concat(e),e,0)}_getPreviousMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){const s=this.currentMatch;return this.currentMatch=null,s}this.findController.highlightFindOptions();const e=this._editor.getSelections(),n=e[e.length-1],r=this._editor.getModel().findPreviousMatch(this.searchText,n.getStartPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(129):null,!1);return r?new Ft(r.range.startLineNumber,r.range.startColumn,r.range.endLineNumber,r.range.endColumn):null}selectAll(e){if(!this._editor.hasModel())return[];this.findController.highlightFindOptions();const n=this._editor.getModel();return e?n.findMatches(this.searchText,e,!1,this.matchCase,this.wholeWord?this._editor.getOption(129):null,!1,1073741824):n.findMatches(this.searchText,!0,!1,this.matchCase,this.wholeWord?this._editor.getOption(129):null,!1,1073741824)}}class Nx extends Le{static get(e){return e.getContribution(Nx.ID)}constructor(e){super(),this._sessionDispose=this._register(new Xe),this._editor=e,this._ignoreSelectionChange=!1,this._session=null}dispose(){this._endSession(),super.dispose()}_beginSessionIfNeeded(e){if(!this._session){const n=xO.create(this._editor,e);if(!n)return;this._session=n;const r={searchString:this._session.searchText};this._session.isDisconnectedFromFindController&&(r.wholeWordOverride=1,r.matchCaseOverride=1,r.isRegexOverride=2),e.getState().change(r,!1),this._sessionDispose.add(this._editor.onDidChangeCursorSelection(s=>{this._ignoreSelectionChange||this._endSession()})),this._sessionDispose.add(this._editor.onDidBlurEditorText(()=>{this._endSession()})),this._sessionDispose.add(e.getState().onFindReplaceStateChange(s=>{(s.matchCase||s.wholeWord)&&this._endSession()}))}}_endSession(){if(this._sessionDispose.clear(),this._session&&this._session.isDisconnectedFromFindController){const e={wholeWordOverride:0,matchCaseOverride:0,isRegexOverride:0};this._session.findController.getState().change(e,!1)}this._session=null}_setSelections(e){this._ignoreSelectionChange=!0,this._editor.setSelections(e),this._ignoreSelectionChange=!1}_expandEmptyToWord(e,n){if(!n.isEmpty())return n;const r=this._editor.getConfiguredWordAtPosition(n.getStartPosition());return r?new Ft(n.startLineNumber,r.startColumn,n.startLineNumber,r.endColumn):n}_applySessionResult(e){e&&(this._setSelections(e.selections),e.revealRange&&this._editor.revealRangeInCenterIfOutsideViewport(e.revealRange,e.revealScrollType))}getSession(e){return this._session}addSelectionToNextFindMatch(e){if(this._editor.hasModel()){if(!this._session){const n=this._editor.getSelections();if(n.length>1){const s=e.getState().matchCase;if(!ZMe(this._editor.getModel(),n,s)){const a=this._editor.getModel(),l=[];for(let c=0,u=n.length;c0&&r.isRegex){const s=this._editor.getModel();r.searchScope?n=s.findMatches(r.searchString,r.searchScope,r.isRegex,r.matchCase,r.wholeWord?this._editor.getOption(129):null,!1,1073741824):n=s.findMatches(r.searchString,!0,r.isRegex,r.matchCase,r.wholeWord?this._editor.getOption(129):null,!1,1073741824)}else{if(this._beginSessionIfNeeded(e),!this._session)return;n=this._session.selectAll(r.searchScope)}if(n.length>0){const s=this._editor.getSelection();for(let o=0,a=n.length;onew Ft(o.range.startLineNumber,o.range.startColumn,o.range.endLineNumber,o.range.endColumn)))}}}Nx.ID="editor.contrib.multiCursorController";class eT extends kt{run(e,n){const r=Nx.get(n);if(!r)return;const s=n._getViewModel();if(s){const o=s.getCursorStates(),a=Ul.get(n);if(a)this._run(r,a);else{const l=e.get(hn).createInstance(Ul,n);this._run(r,l),l.dispose()}ew(o,s.getCursorStates())}}}class cAt extends eT{constructor(){super({id:"editor.action.addSelectionToNextFindMatch",label:L("addSelectionToNextFindMatch","Add Selection To Next Find Match"),alias:"Add Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:2082,weight:100},menuOpts:{menuId:se.MenubarSelectionMenu,group:"3_multi",title:L({},"Add &&Next Occurrence"),order:5}})}_run(e,n){e.addSelectionToNextFindMatch(n)}}class uAt extends eT{constructor(){super({id:"editor.action.addSelectionToPreviousFindMatch",label:L("addSelectionToPreviousFindMatch","Add Selection To Previous Find Match"),alias:"Add Selection To Previous Find Match",precondition:void 0,menuOpts:{menuId:se.MenubarSelectionMenu,group:"3_multi",title:L({},"Add P&&revious Occurrence"),order:6}})}_run(e,n){e.addSelectionToPreviousFindMatch(n)}}class dAt extends eT{constructor(){super({id:"editor.action.moveSelectionToNextFindMatch",label:L("moveSelectionToNextFindMatch","Move Last Selection To Next Find Match"),alias:"Move Last Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:ro(2089,2082),weight:100}})}_run(e,n){e.moveSelectionToNextFindMatch(n)}}class hAt extends eT{constructor(){super({id:"editor.action.moveSelectionToPreviousFindMatch",label:L("moveSelectionToPreviousFindMatch","Move Last Selection To Previous Find Match"),alias:"Move Last Selection To Previous Find Match",precondition:void 0})}_run(e,n){e.moveSelectionToPreviousFindMatch(n)}}class fAt extends eT{constructor(){super({id:"editor.action.selectHighlights",label:L("selectAllOccurrencesOfFindMatch","Select All Occurrences of Find Match"),alias:"Select All Occurrences of Find Match",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:3114,weight:100},menuOpts:{menuId:se.MenubarSelectionMenu,group:"3_multi",title:L({},"Select All &&Occurrences"),order:7}})}_run(e,n){e.selectAll(n)}}class pAt extends eT{constructor(){super({id:"editor.action.changeAll",label:L("changeAll.label","Change All Occurrences"),alias:"Change All Occurrences",precondition:ze.and(oe.writable,oe.editorTextFocus),kbOpts:{kbExpr:oe.editorTextFocus,primary:2108,weight:100},contextMenuOpts:{group:"1_modification",order:1.2}})}_run(e,n){e.selectAll(n)}}class gAt{constructor(e,n,r,s,o){this._model=e,this._searchText=n,this._matchCase=r,this._wordSeparators=s,this._modelVersionId=this._model.getVersionId(),this._cachedFindMatches=null,o&&this._model===o._model&&this._searchText===o._searchText&&this._matchCase===o._matchCase&&this._wordSeparators===o._wordSeparators&&this._modelVersionId===o._modelVersionId&&(this._cachedFindMatches=o._cachedFindMatches)}findMatches(){return this._cachedFindMatches===null&&(this._cachedFindMatches=this._model.findMatches(this._searchText,!0,!1,this._matchCase,this._wordSeparators,!1).map(e=>e.range),this._cachedFindMatches.sort(J.compareRangesUsingStarts)),this._cachedFindMatches}}let kO=Wne=class extends Le{constructor(e,n){super(),this._languageFeaturesService=n,this.editor=e,this._isEnabled=e.getOption(107),this._decorations=e.createDecorationsCollection(),this.updateSoon=this._register(new Ji(()=>this._update(),300)),this.state=null,this._register(e.onDidChangeConfiguration(s=>{this._isEnabled=e.getOption(107)})),this._register(e.onDidChangeCursorSelection(s=>{this._isEnabled&&(s.selection.isEmpty()?s.reason===3?(this.state&&this._setState(null),this.updateSoon.schedule()):this._setState(null):this._update())})),this._register(e.onDidChangeModel(s=>{this._setState(null)})),this._register(e.onDidChangeModelContent(s=>{this._isEnabled&&this.updateSoon.schedule()}));const r=Ul.get(e);r&&this._register(r.getState().onFindReplaceStateChange(s=>{this._update()})),this.updateSoon.schedule()}_update(){this._setState(Wne._createState(this.state,this._isEnabled,this.editor))}static _createState(e,n,r){if(!n||!r.hasModel())return null;const s=r.getSelection();if(s.startLineNumber!==s.endLineNumber)return null;const o=Nx.get(r);if(!o)return null;const a=Ul.get(r);if(!a)return null;let l=o.getSession(a);if(!l){const d=r.getSelections();if(d.length>1){const f=a.getState().matchCase;if(!ZMe(r.getModel(),d,f))return null}l=xO.create(r,a)}if(!l||l.currentMatch||/^[ \t]+$/.test(l.searchText)||l.searchText.length>200)return null;const c=a.getState(),u=c.matchCase;if(c.isRevealed){let d=c.searchString;u||(d=d.toLowerCase());let h=l.searchText;if(u||(h=h.toLowerCase()),d===h&&l.matchCase===c.matchCase&&l.wholeWord===c.wholeWord&&!c.isRegex)return null}return new gAt(r.getModel(),l.searchText,l.matchCase,l.wholeWord?r.getOption(129):null,e)}_setState(e){if(this.state=e,!this.state){this._decorations.clear();return}if(!this.editor.hasModel())return;const n=this.editor.getModel();if(n.isTooLargeForTokenization())return;const r=this.state.findMatches(),s=this.editor.getSelections();s.sort(J.compareRangesUsingStarts);const o=[];for(let c=0,u=0,d=r.length,h=s.length;c=h)o.push(f),c++;else{const p=J.compareRangesUsingStarts(f,s[u]);p<0?((s[u].isEmpty()||!J.areIntersecting(f,s[u]))&&o.push(f),c++):(p>0||c++,u++)}}const a=this._languageFeaturesService.documentHighlightProvider.has(n)&&this.editor.getOption(80),l=o.map(c=>({range:c,options:tAt(a)}));this._decorations.set(l)}dispose(){this._setState(null),super.dispose()}};kO.ID="editor.contrib.selectionHighlighter";kO=Wne=nAt([iAt(1,Et)],kO);function ZMe(i,e,n){const r=_ve(i,e[0],!n);for(let s=1,o=e.length;sQMe(void 0,void 0,void 0,function*(){const[n,r,s]=e;Ui(Jt.isUri(n)),Ui(ve.isIPosition(r)),Ui(typeof s=="string"||!s);const o=i.get(Et),a=yield i.get(Ec).createModelReference(n);try{const l=yield JMe(o.signatureHelpProvider,a.object.textEditorModel,ve.lift(r),{triggerKind:Am.Invoke,isRetrigger:!1,triggerCharacter:s},Hn.None);return l?(setTimeout(()=>l.dispose(),0),l.value):void 0}finally{a.dispose()}}));var vAt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},iy;(function(i){i.Default={type:0};class e{constructor(s,o){this.request=s,this.previouslyActiveHints=o,this.type=2}}i.Pending=e;class n{constructor(s){this.hints=s,this.type=1}}i.Active=n})(iy||(iy={}));class Jz extends Le{constructor(e,n,r=Jz.DEFAULT_DELAY){super(),this._onChangedHints=this._register(new _e),this.onChangedHints=this._onChangedHints.event,this.triggerOnType=!1,this._state=iy.Default,this._pendingTriggers=[],this._lastSignatureHelpResult=this._register(new ha),this.triggerChars=new q9,this.retriggerChars=new q9,this.triggerId=0,this.editor=e,this.providers=n,this.throttledDelayer=new Rf(r),this._register(this.editor.onDidBlurEditorWidget(()=>this.cancel())),this._register(this.editor.onDidChangeConfiguration(()=>this.onEditorConfigurationChange())),this._register(this.editor.onDidChangeModel(s=>this.onModelChanged())),this._register(this.editor.onDidChangeModelLanguage(s=>this.onModelChanged())),this._register(this.editor.onDidChangeCursorSelection(s=>this.onCursorChange(s))),this._register(this.editor.onDidChangeModelContent(s=>this.onModelContentChange())),this._register(this.providers.onDidChange(this.onModelChanged,this)),this._register(this.editor.onDidType(s=>this.onDidType(s))),this.onEditorConfigurationChange(),this.onModelChanged()}get state(){return this._state}set state(e){this._state.type===2&&this._state.request.cancel(),this._state=e}cancel(e=!1){this.state=iy.Default,this.throttledDelayer.cancel(),e||this._onChangedHints.fire(void 0)}trigger(e,n){const r=this.editor.getModel();if(!r||!this.providers.has(r))return;const s=++this.triggerId;this._pendingTriggers.push(e),this.throttledDelayer.trigger(()=>this.doTrigger(s),n).catch(Ln)}next(){if(this.state.type!==1)return;const e=this.state.hints.signatures.length,n=this.state.hints.activeSignature,r=n%e===e-1,s=this.editor.getOption(85).cycle;if((e<2||r)&&!s){this.cancel();return}this.updateActiveSignature(r&&s?0:n+1)}previous(){if(this.state.type!==1)return;const e=this.state.hints.signatures.length,n=this.state.hints.activeSignature,r=n===0,s=this.editor.getOption(85).cycle;if((e<2||r)&&!s){this.cancel();return}this.updateActiveSignature(r&&s?e-1:n-1)}updateActiveSignature(e){this.state.type===1&&(this.state=new iy.Active(Object.assign(Object.assign({},this.state.hints),{activeSignature:e})),this._onChangedHints.fire(this.state.hints))}doTrigger(e){return vAt(this,void 0,void 0,function*(){const n=this.state.type===1||this.state.type===2,r=this.getLastActiveHints();if(this.cancel(!0),this._pendingTriggers.length===0)return!1;const s=this._pendingTriggers.reduce(bAt);this._pendingTriggers=[];const o={triggerKind:s.triggerKind,triggerCharacter:s.triggerCharacter,isRetrigger:n,activeSignatureHelp:r};if(!this.editor.hasModel())return!1;const a=this.editor.getModel(),l=this.editor.getPosition();this.state=new iy.Pending(go(c=>JMe(this.providers,a,l,o,c)),r);try{const c=yield this.state.request;return e!==this.triggerId?(c==null||c.dispose(),!1):!c||!c.value.signatures||c.value.signatures.length===0?(c==null||c.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),!1):(this.state=new iy.Active(c.value),this._lastSignatureHelpResult.value=c,this._onChangedHints.fire(this.state.hints),!0)}catch(c){return e===this.triggerId&&(this.state=iy.Default),Ln(c),!1}})}getLastActiveHints(){switch(this.state.type){case 1:return this.state.hints;case 2:return this.state.previouslyActiveHints;default:return}}get isTriggered(){return this.state.type===1||this.state.type===2||this.throttledDelayer.isTriggered()}onModelChanged(){this.cancel(),this.triggerChars.clear(),this.retriggerChars.clear();const e=this.editor.getModel();if(e)for(const n of this.providers.ordered(e)){for(const r of n.signatureHelpTriggerCharacters||[])if(r.length){const s=r.charCodeAt(0);this.triggerChars.add(s),this.retriggerChars.add(s)}for(const r of n.signatureHelpRetriggerCharacters||[])r.length&&this.retriggerChars.add(r.charCodeAt(0))}}onDidType(e){if(!this.triggerOnType)return;const n=e.length-1,r=e.charCodeAt(n);(this.triggerChars.has(r)||this.isTriggered&&this.retriggerChars.has(r))&&this.trigger({triggerKind:Am.TriggerCharacter,triggerCharacter:e.charAt(n)})}onCursorChange(e){e.source==="mouse"?this.cancel():this.isTriggered&&this.trigger({triggerKind:Am.ContentChange})}onModelContentChange(){this.isTriggered&&this.trigger({triggerKind:Am.ContentChange})}onEditorConfigurationChange(){this.triggerOnType=this.editor.getOption(85).enabled,this.triggerOnType||this.cancel()}dispose(){this.cancel(!0),super.dispose()}}Jz.DEFAULT_DELAY=120;function bAt(i,e){switch(e.triggerKind){case Am.Invoke:return e;case Am.ContentChange:return i;case Am.TriggerCharacter:default:return e}}var yAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},RK=function(i,e){return function(n,r){e(n,r,i)}},$ne;const Pu=tt,wAt=ws("parameter-hints-next",lt.chevronDown,L("parameterHintsNextIcon","Icon for show next parameter hint.")),CAt=ws("parameter-hints-previous",lt.chevronUp,L("parameterHintsPreviousIcon","Icon for show previous parameter hint."));let xj=$ne=class extends Le{constructor(e,n,r,s,o){super(),this.editor=e,this.model=n,this.renderDisposeables=this._register(new Xe),this.visible=!1,this.announcedLabel=null,this.allowEditorOverflow=!0,this.markdownRenderer=this._register(new Rv({editor:e},o,s)),this.keyVisible=Mx.Visible.bindTo(r),this.keyMultipleSignatures=Mx.MultipleSignatures.bindTo(r)}createParameterHintDOMNodes(){const e=Pu(".editor-widget.parameter-hints-widget"),n=He(e,Pu(".phwrapper"));n.tabIndex=-1;const r=He(n,Pu(".controls")),s=He(r,Pu(".button"+en.asCSSSelector(CAt))),o=He(r,Pu(".overloads")),a=He(r,Pu(".button"+en.asCSSSelector(wAt)));this._register(Be(s,"click",f=>{Nn.stop(f),this.previous()})),this._register(Be(a,"click",f=>{Nn.stop(f),this.next()}));const l=Pu(".body"),c=new P5(l,{alwaysConsumeMouseWheel:!0});this._register(c),n.appendChild(c.getDomNode());const u=He(l,Pu(".signature")),d=He(l,Pu(".docs"));e.style.userSelect="text",this.domNodes={element:e,signature:u,overloads:o,docs:d,scrollbar:c},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection(f=>{this.visible&&this.editor.layoutContentWidget(this)}));const h=()=>{if(!this.domNodes)return;const f=this.editor.getOption(50);this.domNodes.element.style.fontSize=`${f.fontSize}px`,this.domNodes.element.style.lineHeight=`${f.lineHeight/f.fontSize}`};h(),this._register(_t.chain(this.editor.onDidChangeConfiguration.bind(this.editor),f=>f.filter(p=>p.hasChanged(50)))(h)),this._register(this.editor.onDidLayoutChange(f=>this.updateMaxHeight())),this.updateMaxHeight()}show(){this.visible||(this.domNodes||this.createParameterHintDOMNodes(),this.keyVisible.set(!0),this.visible=!0,setTimeout(()=>{var e;(e=this.domNodes)===null||e===void 0||e.element.classList.add("visible")},100),this.editor.layoutContentWidget(this))}hide(){var e;this.renderDisposeables.clear(),this.visible&&(this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,(e=this.domNodes)===null||e===void 0||e.element.classList.remove("visible"),this.editor.layoutContentWidget(this))}getPosition(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null}render(e){var n;if(this.renderDisposeables.clear(),!this.domNodes)return;const r=e.signatures.length>1;this.domNodes.element.classList.toggle("multiple",r),this.keyMultipleSignatures.set(r),this.domNodes.signature.innerText="",this.domNodes.docs.innerText="";const s=e.signatures[e.activeSignature];if(!s)return;const o=He(this.domNodes.signature,Pu(".code")),a=this.editor.getOption(50);o.style.fontSize=`${a.fontSize}px`,o.style.fontFamily=a.fontFamily;const l=s.parameters.length>0,c=(n=s.activeParameter)!==null&&n!==void 0?n:e.activeParameter;if(l)this.renderParameters(o,s,c);else{const h=He(o,Pu("span"));h.textContent=s.label}const u=s.parameters[c];if(u!=null&&u.documentation){const h=Pu("span.documentation");if(typeof u.documentation=="string")h.textContent=u.documentation;else{const f=this.renderMarkdownDocs(u.documentation);h.appendChild(f.element)}He(this.domNodes.docs,Pu("p",{},h))}if(s.documentation!==void 0)if(typeof s.documentation=="string")He(this.domNodes.docs,Pu("p",{},s.documentation));else{const h=this.renderMarkdownDocs(s.documentation);He(this.domNodes.docs,h.element)}const d=this.hasDocs(s,u);if(this.domNodes.signature.classList.toggle("has-docs",d),this.domNodes.docs.classList.toggle("empty",!d),this.domNodes.overloads.textContent=String(e.activeSignature+1).padStart(e.signatures.length.toString().length,"0")+"/"+e.signatures.length,u){let h="";const f=s.parameters[c];Array.isArray(f.label)?h=s.label.substring(f.label[0],f.label[1]):h=f.label,f.documentation&&(h+=typeof f.documentation=="string"?`, ${f.documentation}`:`, ${f.documentation.value}`),s.documentation&&(h+=typeof s.documentation=="string"?`, ${s.documentation}`:`, ${s.documentation.value}`),this.announcedLabel!==h&&(Ua(L("hint","{0}, hint",h)),this.announcedLabel=h)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}renderMarkdownDocs(e){const n=this.renderDisposeables.add(this.markdownRenderer.render(e,{asyncRenderCallback:()=>{var r;(r=this.domNodes)===null||r===void 0||r.scrollbar.scanDomNode()}}));return n.element.classList.add("markdown-docs"),n}hasDocs(e,n){return!!(n&&typeof n.documentation=="string"&&fS(n.documentation).length>0||n&&typeof n.documentation=="object"&&fS(n.documentation).value.length>0||e.documentation&&typeof e.documentation=="string"&&fS(e.documentation).length>0||e.documentation&&typeof e.documentation=="object"&&fS(e.documentation.value).length>0)}renderParameters(e,n,r){const[s,o]=this.getParameterLabelOffsets(n,r),a=document.createElement("span");a.textContent=n.label.substring(0,s);const l=document.createElement("span");l.textContent=n.label.substring(s,o),l.className="parameter active";const c=document.createElement("span");c.textContent=n.label.substring(o),He(e,a,l,c)}getParameterLabelOffsets(e,n){const r=e.parameters[n];if(r){if(Array.isArray(r.label))return r.label;if(r.label.length){const s=new RegExp(`(\\W|^)${dd(r.label)}(?=\\W|$)`,"g");s.test(e.label);const o=s.lastIndex-r.label.length;return o>=0?[o,s.lastIndex]:[0,0]}else return[0,0]}else return[0,0]}next(){this.editor.focus(),this.model.next()}previous(){this.editor.focus(),this.model.previous()}getDomNode(){return this.domNodes||this.createParameterHintDOMNodes(),this.domNodes.element}getId(){return $ne.ID}updateMaxHeight(){if(!this.domNodes)return;const n=`${Math.max(this.editor.getLayoutInfo().height/4,250)}px`;this.domNodes.element.style.maxHeight=n;const r=this.domNodes.element.getElementsByClassName("phwrapper");r.length&&(r[0].style.maxHeight=n)}};xj.ID="editor.widget.parameterHintsWidget";xj=$ne=yAt([RK(2,mn),RK(3,fu),RK(4,Ar)],xj);ce("editorHoverWidget.highlightForeground",{dark:vf,light:vf,hcDark:vf,hcLight:vf},L("editorHoverWidgetHighlightForeground","Foreground color of the active item in the parameter hint."));var SAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},vve=function(i,e){return function(n,r){e(n,r,i)}},zne;let Px=zne=class extends Le{static get(e){return e.getContribution(zne.ID)}constructor(e,n,r){super(),this.editor=e,this.model=this._register(new Jz(e,r.signatureHelpProvider)),this._register(this.model.onChangedHints(s=>{var o;s?(this.widget.value.show(),this.widget.value.render(s)):(o=this.widget.rawValue)===null||o===void 0||o.hide()})),this.widget=new K1(()=>this._register(n.createInstance(xj,this.editor,this.model)))}cancel(){this.model.cancel()}previous(){var e;(e=this.widget.rawValue)===null||e===void 0||e.previous()}next(){var e;(e=this.widget.rawValue)===null||e===void 0||e.next()}trigger(e){this.model.trigger(e,0)}};Px.ID="editor.controller.parameterHints";Px=zne=SAt([vve(1,hn),vve(2,Et)],Px);class xAt extends kt{constructor(){super({id:"editor.action.triggerParameterHints",label:L("parameterHints.trigger.label","Trigger Parameter Hints"),alias:"Trigger Parameter Hints",precondition:oe.hasSignatureHelpProvider,kbOpts:{kbExpr:oe.editorTextFocus,primary:3082,weight:100}})}run(e,n){const r=Px.get(n);r==null||r.trigger({triggerKind:Am.Invoke})}}_i(Px.ID,Px,2);rt(xAt);const Rle=175,Ale=Ho.bindToContribution(Px.get);ct(new Ale({id:"closeParameterHints",precondition:Mx.Visible,handler:i=>i.cancel(),kbOpts:{weight:Rle,kbExpr:oe.focus,primary:9,secondary:[1033]}}));ct(new Ale({id:"showPrevParameterHint",precondition:ze.and(Mx.Visible,Mx.MultipleSignatures),handler:i=>i.previous(),kbOpts:{weight:Rle,kbExpr:oe.focus,primary:16,secondary:[528],mac:{primary:16,secondary:[528,302]}}}));ct(new Ale({id:"showNextParameterHint",precondition:ze.and(Mx.Visible,Mx.MultipleSignatures),handler:i=>i.next(),kbOpts:{weight:Rle,kbExpr:oe.focus,primary:18,secondary:[530],mac:{primary:18,secondary:[530,300]}}}));var kAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},AK=function(i,e){return function(n,r){e(n,r,i)}};const eV=new yt("renameInputVisible",!1,L("renameInputVisible","Whether the rename input widget is visible"));let Vne=class{constructor(e,n,r,s,o){this._editor=e,this._acceptKeybindings=n,this._themeService=r,this._keybindingService=s,this._disposables=new Xe,this.allowEditorOverflow=!0,this._visibleContextKey=eV.bindTo(o),this._editor.addContentWidget(this),this._disposables.add(this._editor.onDidChangeConfiguration(a=>{a.hasChanged(50)&&this._updateFont()})),this._disposables.add(r.onDidColorThemeChange(this._updateStyles,this))}dispose(){this._disposables.dispose(),this._editor.removeContentWidget(this)}getId(){return"__renameInputWidget"}getDomNode(){return this._domNode||(this._domNode=document.createElement("div"),this._domNode.className="monaco-editor rename-box",this._input=document.createElement("input"),this._input.className="rename-input",this._input.type="text",this._input.setAttribute("aria-label",L("renameAriaLabel","Rename input. Type new name and press Enter to commit.")),this._domNode.appendChild(this._input),this._label=document.createElement("div"),this._label.className="rename-label",this._domNode.appendChild(this._label),this._updateFont(),this._updateStyles(this._themeService.getColorTheme())),this._domNode}_updateStyles(e){var n,r,s,o;if(!this._input||!this._domNode)return;const a=e.getColor(bm),l=e.getColor(poe);this._domNode.style.backgroundColor=String((n=e.getColor(cs))!==null&&n!==void 0?n:""),this._domNode.style.boxShadow=a?` 0 0 8px 2px ${a}`:"",this._domNode.style.border=l?`1px solid ${l}`:"",this._domNode.style.color=String((r=e.getColor(dIe))!==null&&r!==void 0?r:""),this._input.style.backgroundColor=String((s=e.getColor(uIe))!==null&&s!==void 0?s:"");const c=e.getColor(hIe);this._input.style.borderWidth=c?"1px":"0px",this._input.style.borderStyle=c?"solid":"none",this._input.style.borderColor=(o=c==null?void 0:c.toString())!==null&&o!==void 0?o:"none"}_updateFont(){if(!this._input||!this._label)return;const e=this._editor.getOption(50);this._input.style.fontFamily=e.fontFamily,this._input.style.fontWeight=e.fontWeight,this._input.style.fontSize=`${e.fontSize}px`,this._label.style.fontSize=`${e.fontSize*.8}px`}getPosition(){return this._visible?{position:this._position,preference:[2,1]}:null}beforeRender(){var e,n;const[r,s]=this._acceptKeybindings;return this._label.innerText=L({},"{0} to Rename, {1} to Preview",(e=this._keybindingService.lookupKeybinding(r))===null||e===void 0?void 0:e.getLabel(),(n=this._keybindingService.lookupKeybinding(s))===null||n===void 0?void 0:n.getLabel()),null}afterRender(e){e||this.cancelInput(!0)}acceptInput(e){var n;(n=this._currentAcceptInput)===null||n===void 0||n.call(this,e)}cancelInput(e){var n;(n=this._currentCancelInput)===null||n===void 0||n.call(this,e)}getInput(e,n,r,s,o,a){this._domNode.classList.toggle("preview",o),this._position=new ve(e.startLineNumber,e.startColumn),this._input.value=n,this._input.setAttribute("selectionStart",r.toString()),this._input.setAttribute("selectionEnd",s.toString()),this._input.size=Math.max((e.endColumn-e.startColumn)*1.1,20);const l=new Xe;return new Promise(c=>{this._currentCancelInput=u=>(this._currentAcceptInput=void 0,this._currentCancelInput=void 0,c(u),!0),this._currentAcceptInput=u=>{if(this._input.value.trim().length===0||this._input.value===n){this.cancelInput(!0);return}this._currentAcceptInput=void 0,this._currentCancelInput=void 0,c({newName:this._input.value,wantsPreview:o&&u})},l.add(a.onCancellationRequested(()=>this.cancelInput(!0))),l.add(this._editor.onDidBlurEditorWidget(()=>{var u;return this.cancelInput(!(!((u=this._domNode)===null||u===void 0)&&u.ownerDocument.hasFocus()))})),this._show()}).finally(()=>{l.dispose(),this._hide()})}_show(){this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber,0),this._visible=!0,this._visibleContextKey.set(!0),this._editor.layoutContentWidget(this),setTimeout(()=>{this._input.focus(),this._input.setSelectionRange(parseInt(this._input.getAttribute("selectionStart")),parseInt(this._input.getAttribute("selectionEnd")))},100)}_hide(){this._visible=!1,this._visibleContextKey.reset(),this._editor.layoutContentWidget(this)}};Vne=kAt([AK(2,Do),AK(3,sr),AK(4,mn)],Vne);var LAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},lC=function(i,e){return function(n,r){e(n,r,i)}},VS=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Hne;class Nle{constructor(e,n,r){this.model=e,this.position=n,this._providerRenameIdx=0,this._providers=r.ordered(e)}hasProvider(){return this._providers.length>0}resolveRenameLocation(e){return VS(this,void 0,void 0,function*(){const n=[];for(this._providerRenameIdx=0;this._providerRenameIdx0?n.join(` `):void 0}:{range:J.fromPositions(this.position),text:"",rejectReason:n.length>0?n.join(` `):void 0}})}provideRenameEdits(e,n){return VS(this,void 0,void 0,function*(){return this._provideRenameEdits(e,this._providerRenameIdx,[],n)})}_provideRenameEdits(e,n,r,s){return VS(this,void 0,void 0,function*(){const o=this._providers[n];if(!o)return{edits:[],rejectReason:r.join(` `)};const a=yield o.provideRenameEdits(this.model,this.position,e,s);if(a){if(a.rejectReason)return this._provideRenameEdits(e,n+1,r.concat(a.rejectReason),s)}else return this._provideRenameEdits(e,n+1,r.concat(L("no result","No result.")),s);return a})}}function DAt(i,e,n,r){return VS(this,void 0,void 0,function*(){const s=new Nle(e,n,i),o=yield s.resolveRenameLocation(Hn.None);return o!=null&&o.rejectReason?{edits:[],rejectReason:o.rejectReason}:s.provideRenameEdits(r,Hn.None)})}let Ox=Hne=class{static get(e){return e.getContribution(Hne.ID)}constructor(e,n,r,s,o,a,l,c){this.editor=e,this._instaService=n,this._notificationService=r,this._bulkEditService=s,this._progressService=o,this._logService=a,this._configService=l,this._languageFeaturesService=c,this._disposableStore=new Xe,this._cts=new Ns,this._renameInputField=this._disposableStore.add(this._instaService.createInstance(Vne,this.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))}dispose(){this._disposableStore.dispose(),this._cts.dispose(!0)}run(){var e,n;return VS(this,void 0,void 0,function*(){if(this._cts.dispose(!0),this._cts=new Ns,!this.editor.hasModel())return;const r=this.editor.getPosition(),s=new Nle(this.editor.getModel(),r,this._languageFeaturesService.renameProvider);if(!s.hasProvider())return;const o=new x1(this.editor,5,void 0,this._cts.token);let a;try{const g=s.resolveRenameLocation(o.token);this._progressService.showWhile(g,250),a=yield g}catch(g){(e=au.get(this.editor))===null||e===void 0||e.showMessage(g||L("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),r);return}finally{o.dispose()}if(!a)return;if(a.rejectReason){(n=au.get(this.editor))===null||n===void 0||n.showMessage(a.rejectReason,r);return}if(o.token.isCancellationRequested)return;const l=new x1(this.editor,5,a.range,this._cts.token),c=this.editor.getSelection();let u=0,d=a.text.length;!J.isEmpty(c)&&!J.spansMultipleLines(c)&&J.containsRange(a.range,c)&&(u=Math.max(0,c.startColumn-a.range.startColumn),d=Math.min(a.range.endColumn,c.endColumn)-a.range.startColumn);const h=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),f=yield this._renameInputField.getInput(a.range,a.text,u,d,h,l.token);if(typeof f=="boolean"){f&&this.editor.focus(),l.dispose();return}this.editor.focus();const p=h$(s.provideRenameEdits(f.newName,l.token),l.token).then(g=>VS(this,void 0,void 0,function*(){if(!(!g||!this.editor.hasModel())){if(g.rejectReason){this._notificationService.info(g.rejectReason);return}this.editor.setSelection(J.fromPositions(this.editor.getSelection().getPosition())),this._bulkEditService.apply(g,{editor:this.editor,showPreview:f.wantsPreview,label:L("label","Renaming '{0}' to '{1}'",a==null?void 0:a.text,f.newName),code:"undoredo.rename",quotableLabel:L("quotableLabel","Renaming {0} to {1}",a==null?void 0:a.text,f.newName),respectAutoSaveConfig:!0}).then(m=>{m.ariaSummary&&Ua(L("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",a.text,f.newName,m.ariaSummary))}).catch(m=>{this._notificationService.error(L("rename.failedApply","Rename failed to apply edits")),this._logService.error(m)})}}),g=>{this._notificationService.error(L("rename.failed","Rename failed to compute edits")),this._logService.error(g)}).finally(()=>{l.dispose()});return this._progressService.showWhile(p,250),p})}acceptRenameInput(e){this._renameInputField.acceptInput(e)}cancelRenameInput(){this._renameInputField.cancelInput(!0)}};Ox.ID="editor.contrib.renameController";Ox=Hne=LAt([lC(1,hn),lC(2,Ps),lC(3,$5),lC(4,Z1),lC(5,vd),lC(6,ooe),lC(7,Et)],Ox);class EAt extends kt{constructor(){super({id:"editor.action.rename",label:L("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:ze.and(oe.writable,oe.hasRenameProvider),kbOpts:{kbExpr:oe.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})}runCommand(e,n){const r=e.get(Si),[s,o]=Array.isArray(n)&&n||[void 0,void 0];return Jt.isUri(s)&&ve.isIPosition(o)?r.openCodeEditor({resource:s},r.getActiveCodeEditor()).then(a=>{a&&(a.setPosition(o),a.invokeWithinContext(l=>(this.reportTelemetry(l,a),this.run(l,a))))},Ln):super.runCommand(e,n)}run(e,n){const r=Ox.get(n);return r?r.run():Promise.resolve()}}_i(Ox.ID,Ox,4);rt(EAt);const Mle=Ho.bindToContribution(Ox.get);ct(new Mle({id:"acceptRenameInput",precondition:eV,handler:i=>i.acceptRenameInput(!1),kbOpts:{weight:199,kbExpr:ze.and(oe.focus,ze.not("isComposing")),primary:3}}));ct(new Mle({id:"acceptRenameInputWithPreview",precondition:ze.and(eV,ze.has("config.editor.rename.enablePreview")),handler:i=>i.acceptRenameInput(!0),kbOpts:{weight:199,kbExpr:ze.and(oe.focus,ze.not("isComposing")),primary:1027}}));ct(new Mle({id:"cancelRenameInput",precondition:eV,handler:i=>i.cancelRenameInput(),kbOpts:{weight:199,kbExpr:oe.focus,primary:9,secondary:[1033]}}));d_("_executeDocumentRenameProvider",function(i,e,n,...r){const[s]=r;Ui(typeof s=="string");const{renameProvider:o}=i.get(Et);return DAt(o,e,n,s)});d_("_executePrepareRename",function(i,e,n){return VS(this,void 0,void 0,function*(){const{renameProvider:r}=i.get(Et),o=yield new Nle(e,n,r).resolveRenameLocation(Hn.None);if(o!=null&&o.rejectReason)throw new Error(o.rejectReason);return o})});Kr.as(ag.Configuration).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:L("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}});function IAt(i){for(let e=0,n=i.length;e0?n[0]:[]}function iPe(i,e,n,r,s){return P1(this,void 0,void 0,function*(){const o=NAt(i,e),a=yield Promise.all(o.map(l=>P1(this,void 0,void 0,function*(){let c,u=null;try{c=yield l.provideDocumentSemanticTokens(e,l===n?r:null,s)}catch(d){u=d,c=null}return(!c||!tV(c)&&!tPe(c))&&(c=null),new AAt(l,c,u)})));for(const l of a){if(l.error)throw l.error;if(l.tokens)return l}return a.length>0?a[0]:null})}function MAt(i,e){const n=i.orderedGroups(e);return n.length>0?n[0]:null}class PAt{constructor(e,n){this.provider=e,this.tokens=n}}function OAt(i,e){return i.has(e)}function rPe(i,e){const n=i.orderedGroups(e);return n.length>0?n[0]:[]}function Ple(i,e,n,r){return P1(this,void 0,void 0,function*(){const s=rPe(i,e),o=yield Promise.all(s.map(a=>P1(this,void 0,void 0,function*(){let l;try{l=yield a.provideDocumentRangeSemanticTokens(e,n,r)}catch(c){Us(c),l=null}return(!l||!tV(l))&&(l=null),new PAt(a,l)})));for(const a of o)if(a.tokens)return a;return o.length>0?o[0]:null})}si.registerCommand("_provideDocumentSemanticTokensLegend",(i,...e)=>P1(void 0,void 0,void 0,function*(){const[n]=e;Ui(n instanceof Jt);const r=i.get(Fr).getModel(n);if(!r)return;const{documentSemanticTokensProvider:s}=i.get(Et),o=MAt(s,r);return o?o[0].getLegend():i.get(us).executeCommand("_provideDocumentRangeSemanticTokensLegend",n)}));si.registerCommand("_provideDocumentSemanticTokens",(i,...e)=>P1(void 0,void 0,void 0,function*(){const[n]=e;Ui(n instanceof Jt);const r=i.get(Fr).getModel(n);if(!r)return;const{documentSemanticTokensProvider:s}=i.get(Et);if(!nPe(s,r))return i.get(us).executeCommand("_provideDocumentRangeSemanticTokens",n,r.getFullModelRange());const o=yield iPe(s,r,null,null,Hn.None);if(!o)return;const{provider:a,tokens:l}=o;if(!l||!tV(l))return;const c=ePe({id:0,type:"full",data:l.data});return l.resultId&&a.releaseDocumentSemanticTokens(l.resultId),c}));si.registerCommand("_provideDocumentRangeSemanticTokensLegend",(i,...e)=>P1(void 0,void 0,void 0,function*(){const[n,r]=e;Ui(n instanceof Jt);const s=i.get(Fr).getModel(n);if(!s)return;const{documentRangeSemanticTokensProvider:o}=i.get(Et),a=rPe(o,s);if(a.length===0)return;if(a.length===1)return a[0].getLegend();if(!r||!J.isIRange(r))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),a[0].getLegend();const l=yield Ple(o,s,J.lift(r),Hn.None);if(l)return l.provider.getLegend()}));si.registerCommand("_provideDocumentRangeSemanticTokens",(i,...e)=>P1(void 0,void 0,void 0,function*(){const[n,r]=e;Ui(n instanceof Jt),Ui(J.isIRange(r));const s=i.get(Fr).getModel(n);if(!s)return;const{documentRangeSemanticTokensProvider:o}=i.get(Et),a=yield Ple(o,s,J.lift(r),Hn.None);if(!(!a||!a.tokens))return ePe({id:0,type:"full",data:a.tokens.data})}));const Ole="editor.semanticHighlighting";function Une(i,e,n){var r;const s=(r=n.getValue(Ole,{overrideIdentifier:i.getLanguageId(),resource:i.uri}))===null||r===void 0?void 0:r.enabled;return typeof s=="boolean"?s:e.getColorTheme().semanticHighlighting}var sPe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},sm=function(i,e){return function(n,r){e(n,r,i)}},Jb;let qne=class extends Le{constructor(e,n,r,s,o,a){super(),this._watchers=Object.create(null);const l=d=>{this._watchers[d.uri.toString()]=new LO(d,e,r,o,a)},c=(d,h)=>{h.dispose(),delete this._watchers[d.uri.toString()]},u=()=>{for(const d of n.getModels()){const h=this._watchers[d.uri.toString()];Une(d,r,s)?h||l(d):h&&c(d,h)}};this._register(n.onModelAdded(d=>{Une(d,r,s)&&l(d)})),this._register(n.onModelRemoved(d=>{const h=this._watchers[d.uri.toString()];h&&c(d,h)})),this._register(s.onDidChangeConfiguration(d=>{d.affectsConfiguration(Ole)&&u()})),this._register(r.onDidColorThemeChange(u))}dispose(){for(const e of Object.values(this._watchers))e.dispose();super.dispose()}};qne=sPe([sm(0,B$),sm(1,Fr),sm(2,Do),sm(3,ei),sm(4,xh),sm(5,Et)],qne);let LO=Jb=class extends Le{constructor(e,n,r,s,o){super(),this._semanticTokensStylingService=n,this._isDisposed=!1,this._model=e,this._provider=o.documentSemanticTokensProvider,this._debounceInformation=s.for(this._provider,"DocumentSemanticTokens",{min:Jb.REQUEST_MIN_DELAY,max:Jb.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new Ji(()=>this._fetchDocumentSemanticTokensNow(),Jb.REQUEST_MIN_DELAY)),this._currentDocumentResponse=null,this._currentDocumentRequestCancellationTokenSource=null,this._documentProvidersChangeListeners=[],this._providersChangedDuringRequest=!1,this._register(this._model.onDidChangeContent(()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(this._model.onDidChangeAttached(()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(this._model.onDidChangeLanguage(()=>{this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(0)}));const a=()=>{Mi(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[];for(const l of this._provider.all(e))typeof l.onDidChange=="function"&&this._documentProvidersChangeListeners.push(l.onDidChange(()=>{if(this._currentDocumentRequestCancellationTokenSource){this._providersChangedDuringRequest=!0;return}this._fetchDocumentSemanticTokens.schedule(0)}))};a(),this._register(this._provider.onDidChange(()=>{a(),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(r.onDidColorThemeChange(l=>{this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._fetchDocumentSemanticTokens.schedule(0)}dispose(){this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),Mi(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[],this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!nPe(this._provider,this._model)){this._currentDocumentResponse&&this._model.tokenization.setSemanticTokens(null,!1);return}if(!this._model.isAttachedToEditor())return;const e=new Ns,n=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,r=this._currentDocumentResponse&&this._currentDocumentResponse.resultId||null,s=iPe(this._provider,this._model,n,r,e.token);this._currentDocumentRequestCancellationTokenSource=e,this._providersChangedDuringRequest=!1;const o=[],a=this._model.onDidChangeContent(c=>{o.push(c)}),l=new Xa(!1);s.then(c=>{if(this._debounceInformation.update(this._model,l.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,a.dispose(),!c)this._setDocumentSemanticTokens(null,null,null,o);else{const{provider:u,tokens:d}=c,h=this._semanticTokensStylingService.getStyling(u);this._setDocumentSemanticTokens(u,d||null,h,o)}},c=>{c&&(sg(c)||typeof c.message=="string"&&c.message.indexOf("busy")!==-1)||Ln(c),this._currentDocumentRequestCancellationTokenSource=null,a.dispose(),(o.length>0||this._providersChangedDuringRequest)&&(this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model)))})}static _copy(e,n,r,s,o){o=Math.min(o,r.length-s,e.length-n);for(let a=0;a{(s.length>0||this._providersChangedDuringRequest)&&!this._fetchDocumentSemanticTokens.isScheduled()&&this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))};if(this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._isDisposed){e&&n&&e.releaseDocumentSemanticTokens(n.resultId);return}if(!e||!r){this._model.tokenization.setSemanticTokens(null,!1);return}if(!n){this._model.tokenization.setSemanticTokens(null,!0),a();return}if(tPe(n)){if(!o){this._model.tokenization.setSemanticTokens(null,!0);return}if(n.edits.length===0)n={resultId:n.resultId,data:o.data};else{let l=0;for(const f of n.edits)l+=(f.data?f.data.length:0)-f.deleteCount;const c=o.data,u=new Uint32Array(c.length+l);let d=c.length,h=u.length;for(let f=n.edits.length-1;f>=0;f--){const p=n.edits[f];if(p.start>c.length){r.warnInvalidEditStart(o.resultId,n.resultId,f,p.start,c.length),this._model.tokenization.setSemanticTokens(null,!0);return}const g=d-(p.start+p.deleteCount);g>0&&(Jb._copy(c,d-g,u,h-g,g),h-=g),p.data&&(Jb._copy(p.data,0,u,h-p.data.length,p.data.length),h-=p.data.length),d=p.start}d>0&&Jb._copy(c,0,u,0,d),n={resultId:n.resultId,data:u}}}if(tV(n)){this._currentDocumentResponse=new FAt(e,n.resultId,n.data);const l=LTe(n,r,this._model.getLanguageId());if(s.length>0)for(const c of s)for(const u of l)for(const d of c.changes)u.applyEdit(d.range,d.text);this._model.tokenization.setSemanticTokens(l,!0)}else this._model.tokenization.setSemanticTokens(null,!0);a()}};LO.REQUEST_MIN_DELAY=300;LO.REQUEST_MAX_DELAY=2e3;LO=Jb=sPe([sm(1,B$),sm(2,Do),sm(3,xh),sm(4,Et)],LO);class FAt{constructor(e,n,r){this.provider=e,this.resultId=n,this.data=r}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}sz(qne);var BAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},fA=function(i,e){return function(n,r){e(n,r,i)}};let DO=class extends Le{constructor(e,n,r,s,o,a){super(),this._semanticTokensStylingService=n,this._themeService=r,this._configurationService=s,this._editor=e,this._provider=a.documentRangeSemanticTokensProvider,this._debounceInformation=o.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new Ji(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];const l=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{l()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),l()})),this._register(this._editor.onDidChangeModelContent(c=>{this._cancelAll(),l()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),l()})),this._register(this._configurationService.onDidChangeConfiguration(c=>{c.affectsConfiguration(Ole)&&(this._cancelAll(),l())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),l()})),l()}_cancelAll(){for(const e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let n=0,r=this._outstandingRequests.length;nthis._requestRange(e,r)))}_requestRange(e,n){const r=e.getVersionId(),s=go(a=>Promise.resolve(Ple(this._provider,e,n,a))),o=new Xa(!1);return s.then(a=>{if(this._debounceInformation.update(e,o.elapsed()),!a||!a.tokens||e.isDisposed()||e.getVersionId()!==r)return;const{provider:l,tokens:c}=a,u=this._semanticTokensStylingService.getStyling(l);e.tokenization.setPartialSemanticTokens(n,LTe(c,u,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(s),()=>this._removeOutstandingRequest(s)),s}};DO.ID="editor.contrib.viewportSemanticTokens";DO=BAt([fA(1,B$),fA(2,Do),fA(3,ei),fA(4,xh),fA(5,Et)],DO);_i(DO.ID,DO,1);class jAt{constructor(e=!0){this.selectSubwords=e}provideSelectionRanges(e,n){const r=[];for(const s of n){const o=[];r.push(o),this.selectSubwords&&this._addInWordRanges(o,e,s),this._addWordRanges(o,e,s),this._addWhitespaceLine(o,e,s),o.push({range:e.getFullModelRange()})}return r}_addInWordRanges(e,n,r){const s=n.getWordAtPosition(r);if(!s)return;const{word:o,startColumn:a}=s,l=r.column-a;let c=l,u=l,d=0;for(;c>=0;c--){const h=o.charCodeAt(c);if(c!==l&&(h===95||h===45))break;if(gy(h)&&nm(d))break;d=h}for(c+=1;u0&&n.getLineFirstNonWhitespaceColumn(r.lineNumber)===0&&n.getLineLastNonWhitespaceColumn(r.lineNumber)===0&&e.push({range:new J(r.lineNumber,1,r.lineNumber,n.getLineMaxColumn(r.lineNumber))})}}var WAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},$At=function(i,e){return function(n,r){e(n,r,i)}},nV=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Kne;class Fle{constructor(e,n){this.index=e,this.ranges=n}mov(e){const n=this.index+(e?1:-1);if(n<0||n>=this.ranges.length)return this;const r=new Fle(n,this.ranges);return r.ranges[n].equalsRange(this.ranges[this.index])?r.mov(e):r}}let pI=Kne=class{static get(e){return e.getContribution(Kne.ID)}constructor(e,n){this._editor=e,this._languageFeaturesService=n,this._ignoreSelection=!1}dispose(){var e;(e=this._selectionListener)===null||e===void 0||e.dispose()}run(e){return nV(this,void 0,void 0,function*(){if(!this._editor.hasModel())return;const n=this._editor.getSelections(),r=this._editor.getModel();if(this._state||(yield aPe(this._languageFeaturesService.selectionRangeProvider,r,n.map(o=>o.getPosition()),this._editor.getOption(112),Hn.None).then(o=>{var a;if(!(!Ka(o)||o.length!==n.length)&&!(!this._editor.hasModel()||!ys(this._editor.getSelections(),n,(l,c)=>l.equalsSelection(c)))){for(let l=0;lc.containsPosition(n[l].getStartPosition())&&c.containsPosition(n[l].getEndPosition())),o[l].unshift(n[l]);this._state=o.map(l=>new Fle(0,l)),(a=this._selectionListener)===null||a===void 0||a.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{var l;this._ignoreSelection||((l=this._selectionListener)===null||l===void 0||l.dispose(),this._state=void 0)})}})),!this._state)return;this._state=this._state.map(o=>o.mov(e));const s=this._state.map(o=>Ft.fromPositions(o.ranges[o.index].getStartPosition(),o.ranges[o.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(s)}finally{this._ignoreSelection=!1}})}};pI.ID="editor.contrib.smartSelectController";pI=Kne=WAt([$At(1,Et)],pI);class oPe extends kt{constructor(e,n){super(n),this._forward=e}run(e,n){return nV(this,void 0,void 0,function*(){const r=pI.get(n);r&&(yield r.run(this._forward))})}}class zAt extends oPe{constructor(){super(!0,{id:"editor.action.smartSelect.expand",label:L("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:se.MenubarSelectionMenu,group:"1_basic",title:L({},"&&Expand Selection"),order:2}})}}si.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");class VAt extends oPe{constructor(){super(!1,{id:"editor.action.smartSelect.shrink",label:L("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:oe.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:se.MenubarSelectionMenu,group:"1_basic",title:L({},"&&Shrink Selection"),order:3}})}}_i(pI.ID,pI,4);rt(zAt);rt(VAt);function aPe(i,e,n,r,s){return nV(this,void 0,void 0,function*(){const o=i.all(e).concat(new jAt(r.selectSubwords));o.length===1&&o.unshift(new Wu);const a=[],l=[];for(const c of o)a.push(Promise.resolve(c.provideSelectionRanges(e,n,s)).then(u=>{if(Ka(u)&&u.length===n.length)for(let d=0;d{if(c.length===0)return[];c.sort((f,p)=>ve.isBefore(f.getStartPosition(),p.getStartPosition())?1:ve.isBefore(p.getStartPosition(),f.getStartPosition())||ve.isBefore(f.getEndPosition(),p.getEndPosition())?-1:ve.isBefore(p.getEndPosition(),f.getEndPosition())?1:0);const u=[];let d;for(const f of c)(!d||J.containsRange(f,d)&&!J.equalsRange(f,d))&&(u.push(f),d=f);if(!r.selectLeadingAndTrailingWhitespace)return u;const h=[u[0]];for(let f=1;fi}),NK="data-sticky-line-index",wve="data-sticky-is-line",qAt="data-sticky-is-line-number",Cve="data-sticky-is-folding-icon";class KAt extends Le{constructor(e){super(),this._editor=e,this._foldingIconStore=new Xe,this._rootDomNode=document.createElement("div"),this._lineNumbersDomNode=document.createElement("div"),this._linesDomNodeScrollable=document.createElement("div"),this._linesDomNode=document.createElement("div"),this._lineHeight=this._editor.getOption(66),this._stickyLines=[],this._lineNumbers=[],this._lastLineRelativePosition=0,this._minContentWidthInPx=0,this._isOnGlyphMargin=!1,this._lineNumbersDomNode.className="sticky-widget-line-numbers",this._lineNumbersDomNode.setAttribute("role","none"),this._linesDomNode.className="sticky-widget-lines",this._linesDomNode.setAttribute("role","list"),this._linesDomNodeScrollable.className="sticky-widget-lines-scrollable",this._linesDomNodeScrollable.appendChild(this._linesDomNode),this._rootDomNode.className="sticky-widget",this._rootDomNode.classList.toggle("peek",e instanceof D1),this._rootDomNode.appendChild(this._lineNumbersDomNode),this._rootDomNode.appendChild(this._linesDomNodeScrollable);const n=()=>{this._linesDomNode.style.left=this._editor.getOption(114).scrollWithEditor?`-${this._editor.getScrollLeft()}px`:"0px"};this._register(this._editor.onDidChangeConfiguration(r=>{r.hasChanged(114)&&n(),r.hasChanged(66)&&(this._lineHeight=this._editor.getOption(66))})),this._register(this._editor.onDidScrollChange(r=>{r.scrollLeftChanged&&n(),r.scrollWidthChanged&&this._updateWidgetWidth()})),this._register(this._editor.onDidChangeModel(()=>{n(),this._updateWidgetWidth()})),this._register(this._foldingIconStore),n(),this._register(this._editor.onDidLayoutChange(r=>{this._updateWidgetWidth()})),this._updateWidgetWidth()}get lineNumbers(){return this._lineNumbers}get lineNumberCount(){return this._lineNumbers.length}getStickyLineForLine(e){return this._stickyLines.find(n=>n.lineNumber===e)}getCurrentLines(){return this._lineNumbers}setState(e,n,r=1/0){if((!this._previousState&&!e||this._previousState&&this._previousState.equals(e))&&r===1/0)return;this._previousState=e;const s=this._stickyLines;if(this._clearStickyWidget(),!e||!this._editor._getViewModel())return;if(e.startLineNumbers.length*this._lineHeight+e.lastLineRelativePosition>0){this._lastLineRelativePosition=e.lastLineRelativePosition;const a=[...e.startLineNumbers];e.showEndForLine!==null&&(a[e.showEndForLine]=e.endLineNumbers[e.showEndForLine]),this._lineNumbers=a}else this._lastLineRelativePosition=0,this._lineNumbers=[];this._renderRootNode(s,n,r)}_updateWidgetWidth(){const e=this._editor.getLayoutInfo(),n=e.contentLeft;this._lineNumbersDomNode.style.width=`${n}px`,this._linesDomNodeScrollable.style.setProperty("--vscode-editorStickyScroll-scrollableWidth",`${this._editor.getScrollWidth()-e.verticalScrollbarWidth}px`),this._rootDomNode.style.width=`${e.width-e.verticalScrollbarWidth}px`}_clearStickyWidget(){this._stickyLines=[],this._foldingIconStore.clear(),la(this._lineNumbersDomNode),la(this._linesDomNode),this._rootDomNode.style.display="none"}_useFoldingOpacityTransition(e){this._lineNumbersDomNode.style.setProperty("--vscode-editorStickyScroll-foldingOpacityTransition",`opacity ${e?.5:0}s`)}_setFoldingIconsVisibility(e){for(const n of this._stickyLines){const r=n.foldingIcon;r&&r.setVisible(e?!0:r.isCollapsed)}}_renderRootNode(e,n,r=1/0){return UAt(this,void 0,void 0,function*(){const s=this._editor.getLayoutInfo();for(const[a,l]of this._lineNumbers.entries()){const c=e[a],u=l>=r||(c==null?void 0:c.lineNumber)!==l?this._renderChildNode(a,l,n,s):this._updateTopAndZIndexOfStickyLine(c);u&&(this._linesDomNode.appendChild(u.lineDomNode),this._lineNumbersDomNode.appendChild(u.lineNumberDomNode),this._stickyLines.push(u))}n&&(this._setFoldingHoverListeners(),this._useFoldingOpacityTransition(!this._isOnGlyphMargin));const o=this._lineNumbers.length*this._lineHeight+this._lastLineRelativePosition;if(o===0){this._clearStickyWidget();return}this._rootDomNode.style.display="block",this._lineNumbersDomNode.style.height=`${o}px`,this._linesDomNodeScrollable.style.height=`${o}px`,this._rootDomNode.style.height=`${o}px`,this._rootDomNode.style.marginLeft="0px",this._updateMinContentWidth(),this._editor.layoutOverlayWidget(this)})}_setFoldingHoverListeners(){this._editor.getOption(109)==="mouseover"&&(this._foldingIconStore.add(Be(this._lineNumbersDomNode,ht.MOUSE_ENTER,n=>{this._isOnGlyphMargin=!0,this._setFoldingIconsVisibility(!0)})),this._foldingIconStore.add(Be(this._lineNumbersDomNode,ht.MOUSE_LEAVE,()=>{this._isOnGlyphMargin=!1,this._useFoldingOpacityTransition(!0),this._setFoldingIconsVisibility(!1)})))}_renderChildNode(e,n,r,s){const o=this._editor._getViewModel();if(!o)return;const a=o.coordinatesConverter.convertModelPositionToViewPosition(new ve(n,1)).lineNumber,l=o.getViewLineRenderingData(a),c=this._editor.getOption(67);let u;try{u=ru.filter(l.inlineDecorations,a,l.minColumn,l.maxColumn)}catch{u=[]}const d=new X1(!0,!0,l.content,l.continuesWithWrappedLine,l.isBasicASCII,l.containsRTL,0,l.tokens,u,l.tabSize,l.startVisibleColumn,1,1,1,500,"none",!0,!0,null),h=new jI(2e3),f=T5(d,h);let p;yve?p=yve.createHTML(h.build()):p=h.build();const g=document.createElement("span");g.setAttribute(NK,String(e)),g.setAttribute(wve,""),g.setAttribute("role","listitem"),g.tabIndex=0,g.className="sticky-line-content",g.classList.add(`stickyLine${n}`),g.style.lineHeight=`${this._lineHeight}px`,g.innerHTML=p;const m=document.createElement("span");m.setAttribute(NK,String(e)),m.setAttribute(qAt,""),m.className="sticky-line-number",m.style.lineHeight=`${this._lineHeight}px`;const _=s.contentLeft;m.style.width=`${_}px`;const b=document.createElement("span");c.renderType===1||c.renderType===3&&n%10===0?b.innerText=n.toString():c.renderType===2&&(b.innerText=Math.abs(n-this._editor.getPosition().lineNumber).toString()),b.className="sticky-line-number-inner",b.style.lineHeight=`${this._lineHeight}px`,b.style.width=`${s.lineNumbersWidth}px`,b.style.paddingLeft=`${s.lineNumbersLeft}px`,m.appendChild(b);const y=this._renderFoldingIconForLine(r,n);y&&m.appendChild(y.domNode),this._editor.applyFontInfo(g),this._editor.applyFontInfo(b),m.style.lineHeight=`${this._lineHeight}px`,g.style.lineHeight=`${this._lineHeight}px`,m.style.height=`${this._lineHeight}px`,g.style.height=`${this._lineHeight}px`;const x=new GAt(e,n,g,m,y,f.characterMapping);return this._updateTopAndZIndexOfStickyLine(x)}_updateTopAndZIndexOfStickyLine(e){var n;const r=e.index,s=e.lineDomNode,o=e.lineNumberDomNode,a=r===this._lineNumbers.length-1,l="0",c="1";s.style.zIndex=a?l:c,o.style.zIndex=a?l:c;const u=`${r*this._lineHeight+this._lastLineRelativePosition+(!((n=e.foldingIcon)===null||n===void 0)&&n.isCollapsed?1:0)}px`,d=`${r*this._lineHeight}px`;return s.style.top=a?u:d,o.style.top=a?u:d,e}_renderFoldingIconForLine(e,n){const r=this._editor.getOption(109);if(!e||r==="never")return;const s=e.regions,o=s.findRange(n),a=s.getStartLineNumber(o);if(!(n===a))return;const c=s.isCollapsed(o),u=new XAt(c,a,s.getEndLineNumber(o),this._lineHeight);return u.setVisible(this._isOnGlyphMargin?!0:c||r==="always"),u.domNode.setAttribute(Cve,""),u}_updateMinContentWidth(){this._minContentWidthInPx=0;for(const e of this._stickyLines)e.lineDomNode.scrollWidth>this._minContentWidthInPx&&(this._minContentWidthInPx=e.lineDomNode.scrollWidth);this._minContentWidthInPx+=this._editor.getLayoutInfo().verticalScrollbarWidth}getId(){return"editor.contrib.stickyScrollWidget"}getDomNode(){return this._rootDomNode}getPosition(){return{preference:null}}getMinContentWidthInPx(){return this._minContentWidthInPx}focusLineWithIndex(e){0<=e&&e0)return null;const n=this._getRenderedStickyLineFromChildDomNode(e);if(!n)return null;const r=woe(n.characterMapping,e,0);return new ve(n.lineNumber,r)}getLineNumberFromChildDomNode(e){var n,r;return(r=(n=this._getRenderedStickyLineFromChildDomNode(e))===null||n===void 0?void 0:n.lineNumber)!==null&&r!==void 0?r:null}_getRenderedStickyLineFromChildDomNode(e){const n=this.getLineIndexFromChildDomNode(e);return n===null||n<0||n>=this._stickyLines.length?null:this._stickyLines[n]}getLineIndexFromChildDomNode(e){const n=this._getAttributeValue(e,NK);return n?parseInt(n,10):null}isInStickyLine(e){return this._getAttributeValue(e,wve)!==void 0}isInFoldingIconDomNode(e){return this._getAttributeValue(e,Cve)!==void 0}_getAttributeValue(e,n){for(;e&&e!==this._rootDomNode;){const r=e.getAttribute(n);if(r!==null)return r;e=e.parentElement}}}class GAt{constructor(e,n,r,s,o,a){this.index=e,this.lineNumber=n,this.lineDomNode=r,this.lineNumberDomNode=s,this.foldingIcon=o,this.characterMapping=a}}class XAt{constructor(e,n,r,s){this.isCollapsed=e,this.foldingStartLine=n,this.foldingEndLine=r,this.dimension=s,this.domNode=document.createElement("div"),this.domNode.style.width=`${s}px`,this.domNode.style.height=`${s}px`,this.domNode.className=en.asClassName(e?Oz:Pz)}setVisible(e){this.domNode.style.cursor=e?"pointer":"default",this.domNode.style.opacity=e?"1":"0"}}class EM{constructor(e,n){this.startLineNumber=e,this.endLineNumber=n}}class kj{constructor(e,n,r){this.range=e,this.children=n,this.parent=r}}class lPe{constructor(e,n,r,s){this.uri=e,this.version=n,this.element=r,this.outlineProviderId=s}}var iV=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},EO=function(i,e){return function(n,r){e(n,r,i)}},Sve=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},IM;(function(i){i.OUTLINE_MODEL="outlineModel",i.FOLDING_PROVIDER_MODEL="foldingProviderModel",i.INDENTATION_MODEL="indentationModel"})(IM||(IM={}));var Ey;(function(i){i[i.VALID=0]="VALID",i[i.INVALID=1]="INVALID",i[i.CANCELED=2]="CANCELED"})(Ey||(Ey={}));let Gne=class extends Le{constructor(e,n,r,s){super(),this._editor=e,this._languageConfigurationService=n,this._languageFeaturesService=r,this._modelProviders=[],this._modelPromise=null,this._updateScheduler=this._register(new Rf(300)),this._updateOperation=this._register(new Xe);const o=new Xne(r),a=new Zne(this._editor,r),l=new Yne(this._editor,n);switch(s){case IM.OUTLINE_MODEL:this._modelProviders.push(o),this._modelProviders.push(a),this._modelProviders.push(l);break;case IM.FOLDING_PROVIDER_MODEL:this._modelProviders.push(a),this._modelProviders.push(l);break;case IM.INDENTATION_MODEL:this._modelProviders.push(l);break}}_cancelModelPromise(){this._modelPromise&&(this._modelPromise.cancel(),this._modelPromise=null)}update(e,n,r){return Sve(this,void 0,void 0,function*(){return this._updateOperation.clear(),this._updateOperation.add({dispose:()=>{this._cancelModelPromise(),this._updateScheduler.cancel()}}),this._cancelModelPromise(),yield this._updateScheduler.trigger(()=>Sve(this,void 0,void 0,function*(){for(const s of this._modelProviders){const{statusPromise:o,modelPromise:a}=s.computeStickyModel(e,n,r);this._modelPromise=a;const l=yield o;if(this._modelPromise!==a)return null;switch(l){case Ey.CANCELED:return this._updateOperation.clear(),null;case Ey.VALID:return s.stickyModel}}return null})).catch(s=>(Ln(s),null))})}};Gne=iV([EO(1,dr),EO(2,Et)],Gne);class cPe{constructor(){this._stickyModel=null}get stickyModel(){return this._stickyModel}_invalid(){return this._stickyModel=null,Ey.INVALID}computeStickyModel(e,n,r){if(r.isCancellationRequested||!this.isProviderValid(e))return{statusPromise:this._invalid(),modelPromise:null};const s=go(o=>this.createModelFromProvider(e,n,o));return{statusPromise:s.then(o=>this.isModelValid(o)?r.isCancellationRequested?Ey.CANCELED:(this._stickyModel=this.createStickyModel(e,n,r,o),Ey.VALID):this._invalid()).then(void 0,o=>(Ln(o),Ey.CANCELED)),modelPromise:s}}isModelValid(e){return!0}isProviderValid(e){return!0}}let Xne=class extends cPe{constructor(e){super(),this._languageFeaturesService=e}createModelFromProvider(e,n,r){return M0.create(this._languageFeaturesService.documentSymbolProvider,e,r)}createStickyModel(e,n,r,s){var o;const{stickyOutlineElement:a,providerID:l}=this._stickyModelFromOutlineModel(s,(o=this._stickyModel)===null||o===void 0?void 0:o.outlineProviderId);return new lPe(e.uri,n,a,l)}isModelValid(e){return e&&e.children.size>0}_stickyModelFromOutlineModel(e,n){let r;if(Vn.first(e.children.values())instanceof RMe){const l=Vn.find(e.children.values(),c=>c.id===n);if(l)r=l.children;else{let c="",u=-1,d;for(const[h,f]of e.children.entries()){const p=this._findSumOfRangesOfGroup(f);p>u&&(d=f,u=p,c=f.id)}n=c,r=d.children}}else r=e.children;const s=[],o=Array.from(r.values()).sort((l,c)=>{const u=new EM(l.symbol.range.startLineNumber,l.symbol.range.endLineNumber),d=new EM(c.symbol.range.startLineNumber,c.symbol.range.endLineNumber);return this._comparator(u,d)});for(const l of o)s.push(this._stickyModelFromOutlineElement(l,l.symbol.selectionRange.startLineNumber));return{stickyOutlineElement:new kj(void 0,s,void 0),providerID:n}}_stickyModelFromOutlineElement(e,n){const r=[];for(const o of e.children.values())if(o.symbol.selectionRange.startLineNumber!==o.symbol.range.endLineNumber)if(o.symbol.selectionRange.startLineNumber!==n)r.push(this._stickyModelFromOutlineElement(o,o.symbol.selectionRange.startLineNumber));else for(const a of o.children.values())r.push(this._stickyModelFromOutlineElement(a,o.symbol.selectionRange.startLineNumber));r.sort((o,a)=>this._comparator(o.range,a.range));const s=new EM(e.symbol.selectionRange.startLineNumber,e.symbol.range.endLineNumber);return new kj(s,r,void 0)}_comparator(e,n){return e.startLineNumber!==n.startLineNumber?e.startLineNumber-n.startLineNumber:n.endLineNumber-e.endLineNumber}_findSumOfRangesOfGroup(e){let n=0;for(const r of e.children.values())n+=this._findSumOfRangesOfGroup(r);return e instanceof mne?n+e.symbol.range.endLineNumber-e.symbol.selectionRange.startLineNumber:n}};Xne=iV([EO(0,Et)],Xne);class uPe extends cPe{constructor(e){super(),this._foldingLimitReporter=new EMe(e)}createStickyModel(e,n,r,s){const o=this._fromFoldingRegions(s);return new lPe(e.uri,n,o,void 0)}isModelValid(e){return e!==null}_fromFoldingRegions(e){const n=e.length,r=[],s=new kj(void 0,[],void 0);for(let o=0;o0}createModelFromProvider(e,n,r){const s=i_.getFoldingRangeProviders(this._languageFeaturesService,e);return new Cle(e,s,()=>this.createModelFromProvider(e,n,r),this._foldingLimitReporter,void 0).compute(r)}};Zne=iV([EO(1,Et)],Zne);var YAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},xve=function(i,e){return function(n,r){e(n,r,i)}},kve=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class ZAt{constructor(e,n,r){this.startLineNumber=e,this.endLineNumber=n,this.nestingDepth=r}}let Qne=class extends Le{constructor(e,n,r){super(),this._languageFeaturesService=n,this._languageConfigurationService=r,this._onDidChangeStickyScroll=this._register(new _e),this.onDidChangeStickyScroll=this._onDidChangeStickyScroll.event,this._options=null,this._model=null,this._cts=null,this._stickyModelProvider=null,this._editor=e,this._sessionStore=this._register(new Xe),this._updateSoon=this._register(new Ji(()=>this.update(),50)),this._register(this._editor.onDidChangeConfiguration(s=>{s.hasChanged(114)&&this.readConfiguration()})),this.readConfiguration()}readConfiguration(){this._stickyModelProvider=null,this._sessionStore.clear(),this._options=this._editor.getOption(114),this._options.enabled&&(this._stickyModelProvider=this._sessionStore.add(new Gne(this._editor,this._languageConfigurationService,this._languageFeaturesService,this._options.defaultModel)),this._sessionStore.add(this._editor.onDidChangeModel(()=>{this._model=null,this._onDidChangeStickyScroll.fire(),this.update()})),this._sessionStore.add(this._editor.onDidChangeHiddenAreas(()=>this.update())),this._sessionStore.add(this._editor.onDidChangeModelContent(()=>this._updateSoon.schedule())),this._sessionStore.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>this.update())),this.update())}getVersionId(){var e;return(e=this._model)===null||e===void 0?void 0:e.version}update(){var e;return kve(this,void 0,void 0,function*(){(e=this._cts)===null||e===void 0||e.dispose(!0),this._cts=new Ns,yield this.updateStickyModel(this._cts.token),this._onDidChangeStickyScroll.fire()})}updateStickyModel(e){return kve(this,void 0,void 0,function*(){if(!this._editor.hasModel()||!this._stickyModelProvider||this._editor.getModel().isTooLargeForTokenization()){this._model=null;return}const n=this._editor.getModel(),r=n.getVersionId(),s=yield this._stickyModelProvider.update(n,r,e);e.isCancellationRequested||(this._model=s)})}updateIndex(e){return e===-1?e=0:e<0&&(e=-e-2),e}getCandidateStickyLinesIntersectingFromStickyModel(e,n,r,s,o){if(n.children.length===0)return;let a=o;const l=[];for(let d=0;dd-h)),u=this.updateIndex(JM(l,e.startLineNumber+s,(d,h)=>d-h));for(let d=c;d<=u;d++){const h=n.children[d];if(!h)return;if(h.range){const f=h.range.startLineNumber,p=h.range.endLineNumber;e.startLineNumber<=p+1&&f-1<=e.endLineNumber&&f!==a&&(a=f,r.push(new ZAt(f,p-1,s+1)),this.getCandidateStickyLinesIntersectingFromStickyModel(e,h,r,s+1,f))}else this.getCandidateStickyLinesIntersectingFromStickyModel(e,h,r,s,o)}}getCandidateStickyLinesIntersecting(e){var n,r;if(!(!((n=this._model)===null||n===void 0)&&n.element))return[];let s=[];this.getCandidateStickyLinesIntersectingFromStickyModel(e,this._model.element,s,0,-1);const o=(r=this._editor._getViewModel())===null||r===void 0?void 0:r.getHiddenAreas();if(o)for(const a of o)s=s.filter(l=>!(l.startLineNumber>=a.startLineNumber&&l.endLineNumber<=a.endLineNumber+1));return s}};Qne=YAt([xve(1,Et),xve(2,dr)],Qne);var QAt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},fD=function(i,e){return function(n,r){e(n,r,i)}},MK=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},Jne;let r_=Jne=class extends Le{constructor(e,n,r,s,o,a,l){super(),this._editor=e,this._contextMenuService=n,this._languageFeaturesService=r,this._instaService=s,this._contextKeyService=l,this._sessionStore=new Xe,this._foldingModel=null,this._maxStickyLines=Number.MAX_SAFE_INTEGER,this._candidateDefinitionsLength=-1,this._focusedStickyElementIndex=-1,this._enabled=!1,this._focused=!1,this._positionRevealed=!1,this._onMouseDown=!1,this._endLineNumbers=[],this._showEndForLine=null,this._stickyScrollWidget=new KAt(this._editor),this._stickyLineCandidateProvider=new Qne(this._editor,r,o),this._register(this._stickyScrollWidget),this._register(this._stickyLineCandidateProvider),this._widgetState=new bve([],[],0),this._readConfiguration();const c=this._stickyScrollWidget.getDomNode();this._register(this._editor.onDidChangeConfiguration(d=>{(d.hasChanged(114)||d.hasChanged(72)||d.hasChanged(66)||d.hasChanged(109))&&this._readConfiguration()})),this._register(Be(c,ht.CONTEXT_MENU,d=>MK(this,void 0,void 0,function*(){this._onContextMenu(d)}))),this._stickyScrollFocusedContextKey=oe.stickyScrollFocused.bindTo(this._contextKeyService),this._stickyScrollVisibleContextKey=oe.stickyScrollVisible.bindTo(this._contextKeyService);const u=this._register(Gm(c));this._register(u.onDidBlur(d=>{this._positionRevealed===!1&&c.clientHeight===0?(this._focusedStickyElementIndex=-1,this.focus()):this._disposeFocusStickyScrollStore()})),this._register(u.onDidFocus(d=>{this.focus()})),this._registerMouseListeners(),this._register(Be(c,ht.MOUSE_DOWN,d=>{this._onMouseDown=!0}))}static get(e){return e.getContribution(Jne.ID)}_disposeFocusStickyScrollStore(){var e;this._stickyScrollFocusedContextKey.set(!1),(e=this._focusDisposableStore)===null||e===void 0||e.dispose(),this._focused=!1,this._positionRevealed=!1,this._onMouseDown=!1}focus(){if(this._onMouseDown){this._onMouseDown=!1,this._editor.focus();return}this._stickyScrollFocusedContextKey.get()!==!0&&(this._focused=!0,this._focusDisposableStore=new Xe,this._stickyScrollFocusedContextKey.set(!0),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumbers.length-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}focusNext(){this._focusedStickyElementIndex0&&this._focusNav(!1)}selectEditor(){this._editor.focus()}_focusNav(e){this._focusedStickyElementIndex=e?this._focusedStickyElementIndex+1:this._focusedStickyElementIndex-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex)}goToFocused(){const e=this._stickyScrollWidget.lineNumbers;this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:e[this._focusedStickyElementIndex],column:1})}_revealPosition(e){this._reveaInEditor(e,()=>this._editor.revealPosition(e))}_revealLineInCenterIfOutsideViewport(e){this._reveaInEditor(e,()=>this._editor.revealLineInCenterIfOutsideViewport(e.lineNumber,0))}_reveaInEditor(e,n){this._focused&&this._disposeFocusStickyScrollStore(),this._positionRevealed=!0,n(),this._editor.setSelection(J.fromPositions(e)),this._editor.focus()}_registerMouseListeners(){const e=this._register(new Xe),n=this._register(new yz(this._editor,{extractLineNumberFromMouseEvent:o=>{const a=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);return a?a.lineNumber:0}})),r=o=>{if(!this._editor.hasModel()||o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return null;const a=o.target.element;if(!a||a.innerText!==a.innerHTML)return null;const l=this._stickyScrollWidget.getEditorPositionFromNode(a);return l?{range:new J(l.lineNumber,l.column,l.lineNumber,l.column+a.innerText.length),textElement:a}:null},s=this._stickyScrollWidget.getDomNode();this._register(As(s,ht.CLICK,o=>{if(o.ctrlKey||o.altKey||o.metaKey||!o.leftButton)return;if(o.shiftKey){const u=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(u===null)return;const d=new ve(this._endLineNumbers[u],1);this._revealLineInCenterIfOutsideViewport(d);return}if(this._stickyScrollWidget.isInFoldingIconDomNode(o.target)){const u=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);this._toggleFoldingRegionForLine(u);return}if(!this._stickyScrollWidget.isInStickyLine(o.target))return;let c=this._stickyScrollWidget.getEditorPositionFromNode(o.target);if(!c){const u=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);if(u===null)return;c=new ve(u,1)}this._revealPosition(c)})),this._register(As(s,ht.MOUSE_MOVE,o=>{if(o.shiftKey){const a=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(a===null||this._showEndForLine!==null&&this._showEndForLine===a)return;this._showEndForLine=a,this._renderStickyScroll();return}this._showEndForLine!==null&&(this._showEndForLine=null,this._renderStickyScroll())})),this._register(Be(s,ht.MOUSE_LEAVE,o=>{this._showEndForLine!==null&&(this._showEndForLine=null,this._renderStickyScroll())})),this._register(n.onMouseMoveOrRelevantKeyDown(([o,a])=>{const l=r(o);if(!l||!o.hasTriggerModifier||!this._editor.hasModel()){e.clear();return}const{range:c,textElement:u}=l;if(!c.equalsRange(this._stickyRangeProjectedOnEditor))this._stickyRangeProjectedOnEditor=c,e.clear();else if(u.style.textDecoration==="underline")return;const d=new Ns;e.add(gn(()=>d.dispose(!0)));let h;Lz(this._languageFeaturesService.definitionProvider,this._editor.getModel(),new ve(c.startLineNumber,c.startColumn+1),d.token).then(f=>{if(!d.token.isCancellationRequested)if(f.length!==0){this._candidateDefinitionsLength=f.length;const p=u;h!==p?(e.clear(),h=p,h.style.textDecoration="underline",e.add(gn(()=>{h.style.textDecoration="none"}))):h||(h=p,h.style.textDecoration="underline",e.add(gn(()=>{h.style.textDecoration="none"})))}else e.clear()})})),this._register(n.onCancel(()=>{e.clear()})),this._register(n.onExecute(o=>MK(this,void 0,void 0,function*(){if(o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return;const a=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);a&&(this._candidateDefinitionsLength>1&&(this._focused&&this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:a.lineNumber,column:1})),this._instaService.invokeFunction(jMe,o,this._editor,{uri:this._editor.getModel().uri,range:this._stickyRangeProjectedOnEditor}))})))}_onContextMenu(e){const n=new rh(e);this._contextMenuService.showContextMenu({menuId:se.StickyScrollContext,getAnchor:()=>n})}_toggleFoldingRegionForLine(e){if(!this._foldingModel||e===null)return;const n=this._stickyScrollWidget.getStickyLineForLine(e),r=n==null?void 0:n.foldingIcon;if(!r)return;SMe(this._foldingModel,Number.MAX_VALUE,[e]),r.isCollapsed=!r.isCollapsed;const s=(r.isCollapsed?this._editor.getTopForLineNumber(r.foldingEndLine):this._editor.getTopForLineNumber(r.foldingStartLine))-this._editor.getOption(66)*n.index+1;this._editor.setScrollTop(s),this._renderStickyScroll(e)}_readConfiguration(){const e=this._editor.getOption(114);if(e.enabled===!1){this._editor.removeOverlayWidget(this._stickyScrollWidget),this._sessionStore.clear(),this._enabled=!1;return}else e.enabled&&!this._enabled&&(this._editor.addOverlayWidget(this._stickyScrollWidget),this._sessionStore.add(this._editor.onDidScrollChange(r=>{r.scrollTopChanged&&(this._showEndForLine=null,this._renderStickyScroll())})),this._sessionStore.add(this._editor.onDidLayoutChange(()=>this._onDidResize())),this._sessionStore.add(this._editor.onDidChangeModelTokens(r=>this._onTokensChange(r))),this._sessionStore.add(this._stickyLineCandidateProvider.onDidChangeStickyScroll(()=>{this._showEndForLine=null,this._renderStickyScroll()})),this._enabled=!0);this._editor.getOption(67).renderType===2&&this._sessionStore.add(this._editor.onDidChangeCursorPosition(()=>{this._showEndForLine=null,this._renderStickyScroll()}))}_needsUpdate(e){const n=this._stickyScrollWidget.getCurrentLines();for(const r of n)for(const s of e.ranges)if(r>=s.fromLineNumber&&r<=s.toLineNumber)return!0;return!1}_onTokensChange(e){this._needsUpdate(e)&&this._renderStickyScroll(-1)}_onDidResize(){const n=this._editor.getLayoutInfo().height/this._editor.getOption(66);this._maxStickyLines=Math.round(n*.25)}_renderStickyScroll(e=1/0){var n,r;return MK(this,void 0,void 0,function*(){const s=this._editor.getModel();if(!s||s.isTooLargeForTokenization()){this._foldingModel=null,this._stickyScrollWidget.setState(void 0,null,e);return}const o=this._stickyLineCandidateProvider.getVersionId();if(o===void 0||o===s.getVersionId())if(this._foldingModel=(r=yield(n=i_.get(this._editor))===null||n===void 0?void 0:n.getFoldingModel())!==null&&r!==void 0?r:null,this._widgetState=this.findScrollWidgetState(),this._stickyScrollVisibleContextKey.set(this._widgetState.startLineNumbers.length!==0),!this._focused)this._stickyScrollWidget.setState(this._widgetState,this._foldingModel,e);else if(this._focusedStickyElementIndex===-1)this._stickyScrollWidget.setState(this._widgetState,this._foldingModel,e),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1,this._focusedStickyElementIndex!==-1&&this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);else{const a=this._stickyScrollWidget.lineNumbers[this._focusedStickyElementIndex];this._stickyScrollWidget.setState(this._widgetState,this._foldingModel,e),this._stickyScrollWidget.lineNumberCount===0?this._focusedStickyElementIndex=-1:(this._stickyScrollWidget.lineNumbers.includes(a)||(this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1),this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}})}findScrollWidgetState(){const e=this._editor.getOption(66),n=Math.min(this._maxStickyLines,this._editor.getOption(114).maxLineCount),r=this._editor.getScrollTop();let s=0;const o=[],a=[],l=this._editor.getVisibleRanges();if(l.length!==0){const c=new EM(l[0].startLineNumber,l[l.length-1].endLineNumber),u=this._stickyLineCandidateProvider.getCandidateStickyLinesIntersecting(c);for(const d of u){const h=d.startLineNumber,f=d.endLineNumber,p=d.nestingDepth;if(f-h>0){const g=(p-1)*e,m=p*e,_=this._editor.getBottomForLineNumber(h)-r,b=this._editor.getTopForLineNumber(f)-r,y=this._editor.getBottomForLineNumber(f)-r;if(g>b&&g<=y){o.push(h),a.push(f+1),s=y-m;break}else m>_&&m<=y&&(o.push(h),a.push(f+1));if(o.length===n)break}}}return this._endLineNumbers=a,new bve(o,a,s,this._showEndForLine)}dispose(){super.dispose(),this._sessionStore.dispose()}};r_.ID="store.contrib.stickyScrollController";r_=Jne=QAt([fD(1,Ff),fD(2,Et),fD(3,hn),fD(4,dr),fD(5,xh),fD(6,mn)],r_);var JAt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};class eNt extends md{constructor(){super({id:"editor.action.toggleStickyScroll",title:{value:L("toggleStickyScroll","Toggle Sticky Scroll"),mnemonicTitle:L({},"&&Toggle Sticky Scroll"),original:"Toggle Sticky Scroll"},category:HAt.View,toggled:{condition:ze.equals("config.editor.stickyScroll.enabled",!0),title:L("stickyScroll","Sticky Scroll"),mnemonicTitle:L({},"&&Sticky Scroll")},menu:[{id:se.CommandPalette},{id:se.MenubarAppearanceMenu,group:"4_editor",order:3},{id:se.StickyScrollContext}]})}run(e){return JAt(this,void 0,void 0,function*(){const n=e.get(ei),r=!n.getValue("editor.stickyScroll.enabled");return n.updateValue("editor.stickyScroll.enabled",r)})}}const rV=100;class tNt extends og{constructor(){super({id:"editor.action.focusStickyScroll",title:{value:L("focusStickyScroll","Focus Sticky Scroll"),mnemonicTitle:L({},"&&Focus Sticky Scroll"),original:"Focus Sticky Scroll"},precondition:ze.and(ze.has("config.editor.stickyScroll.enabled"),oe.stickyScrollVisible),menu:[{id:se.CommandPalette}]})}runEditorCommand(e,n){var r;(r=r_.get(n))===null||r===void 0||r.focus()}}class nNt extends og{constructor(){super({id:"editor.action.selectNextStickyScrollLine",title:{value:L("selectNextStickyScrollLine.title","Select next sticky scroll line"),original:"Select next sticky scroll line"},precondition:oe.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:rV,primary:18}})}runEditorCommand(e,n){var r;(r=r_.get(n))===null||r===void 0||r.focusNext()}}class iNt extends og{constructor(){super({id:"editor.action.selectPreviousStickyScrollLine",title:{value:L("selectPreviousStickyScrollLine.title","Select previous sticky scroll line"),original:"Select previous sticky scroll line"},precondition:oe.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:rV,primary:16}})}runEditorCommand(e,n){var r;(r=r_.get(n))===null||r===void 0||r.focusPrevious()}}class rNt extends og{constructor(){super({id:"editor.action.goToFocusedStickyScrollLine",title:{value:L("goToFocusedStickyScrollLine.title","Go to focused sticky scroll line"),original:"Go to focused sticky scroll line"},precondition:oe.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:rV,primary:3}})}runEditorCommand(e,n){var r;(r=r_.get(n))===null||r===void 0||r.goToFocused()}}class sNt extends og{constructor(){super({id:"editor.action.selectEditor",title:{value:L("selectEditor.title","Select Editor"),original:"Select Editor"},precondition:oe.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:rV,primary:9}})}runEditorCommand(e,n){var r;(r=r_.get(n))===null||r===void 0||r.selectEditor()}}_i(r_.ID,r_,1);Ir(eNt);Ir(tNt);Ir(iNt);Ir(nNt);Ir(rNt);Ir(sNt);var Ble=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},HS=function(i,e){return function(n,r){e(n,r,i)}},oNt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},jC;class aNt{constructor(e,n,r,s,o,a){this.range=e,this.insertText=n,this.filterText=r,this.additionalTextEdits=s,this.command=o,this.completion=a}}let eie=class extends Fst{constructor(e,n,r,s,o,a){super(o.disposable),this.model=e,this.line=n,this.word=r,this.completionModel=s,this._suggestMemoryService=a}canBeReused(e,n,r){return this.model===e&&this.line===n&&this.word.word.length>0&&this.word.startColumn===r.startColumn&&this.word.endColumn=0&&c.resolve(Hn.None)}return n}};eie=Ble([HS(5,Wz)],eie);let tie=class{constructor(e,n,r,s){this._getEditorOption=e,this._languageFeatureService=n,this._clipboardService=r,this._suggestMemoryService=s}provideInlineCompletions(e,n,r,s){var o;return oNt(this,void 0,void 0,function*(){if(r.selectedSuggestionInfo)return;const a=this._getEditorOption(88,e);if(k2.isAllOff(a))return;e.tokenization.tokenizeIfCheap(n.lineNumber);const l=e.tokenization.getLineTokens(n.lineNumber),c=l.getStandardTokenType(l.findTokenIndexAtOffset(Math.max(n.column-1-1,0)));if(k2.valueFor(a,c)!=="inline")return;let u=e.getWordAtPosition(n),d;if(u!=null&&u.word||(d=this._getTriggerCharacterInfo(e,n)),!(u!=null&&u.word)&&!d||(u||(u=e.getWordUntilPosition(n)),u.endColumn!==n.column))return;let h;const f=e.getValueInRange(new J(n.lineNumber,1,n.lineNumber,n.column));if(!d&&(!((o=this._lastResult)===null||o===void 0)&&o.canBeReused(e,n.lineNumber,u))){const p=new fve(f,n.column-this._lastResult.word.endColumn);this._lastResult.completionModel.lineContext=p,this._lastResult.acquire(),h=this._lastResult}else{const p=yield xle(this._languageFeatureService.completionProvider,e,n,new mO(void 0,void 0,d==null?void 0:d.providers),d&&{triggerKind:1,triggerCharacter:d.ch},s);let g;p.needsClipboard&&(g=yield this._clipboardService.readText());const m=new uy(p.items,n.column,new fve(f,0),Lp.None,this._getEditorOption(117,e),this._getEditorOption(111,e),{boostFullMatch:!1,firstMatchCanBeWeak:!1},g);h=new eie(e,n.lineNumber,u,m,p,this._suggestMemoryService)}return this._lastResult=h,h})}handleItemDidShow(e,n){n.completion.resolve(Hn.None)}freeInlineCompletions(e){e.release()}_getTriggerCharacterInfo(e,n){var r;const s=e.getValueInRange(J.fromPositions({lineNumber:n.lineNumber,column:n.column-1},n)),o=new Set;for(const a of this._languageFeatureService.completionProvider.all(e))!((r=a.triggerCharacters)===null||r===void 0)&&r.includes(s)&&o.add(a);if(o.size!==0)return{providers:o,ch:s}}};tie=Ble([HS(1,Et),HS(2,qv),HS(3,Wz)],tie);let Lj=jC=class{constructor(e,n,r,s){if(++jC._counter===1){const o=s.createInstance(tie,(a,l)=>{var c;return((c=r.listCodeEditors().find(d=>d.getModel()===l))!==null&&c!==void 0?c:e).getOption(a)});jC._disposable=n.inlineCompletionsProvider.register("*",o)}}dispose(){var e;--jC._counter===0&&((e=jC._disposable)===null||e===void 0||e.dispose(),jC._disposable=void 0)}};Lj._counter=0;Lj=jC=Ble([HS(1,Et),HS(2,Si),HS(3,hn)],Lj);_i("suggest.inlineCompletionsProvider",Lj,0);class lNt extends kt{constructor(){super({id:"editor.action.forceRetokenize",label:L("forceRetokenize","Developer: Force Retokenize"),alias:"Developer: Force Retokenize",precondition:void 0})}run(e,n){if(!n.hasModel())return;const r=n.getModel();r.tokenization.resetTokenization();const s=new Xa;r.tokenization.forceTokenization(r.getLineCount()),s.stop(),console.log(`tokenization took ${s.elapsed()}`)}}rt(lNt);class sV extends md{constructor(){super({id:sV.ID,title:{value:L({},"Toggle Tab Key Moves Focus"),original:"Toggle Tab Key Moves Focus"},precondition:void 0,keybinding:{primary:2091,mac:{primary:1323},weight:100},f1:!0})}run(){const n=!BE.getTabFocusMode();BE.setTabFocusMode(n),Ua(n?L("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element"):L("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))}}sV.ID="editor.action.toggleTabFocusMode";Ir(sV);var cNt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},uNt=function(i,e){return function(n,r){e(n,r,i)}};let nie=class extends Le{get enabled(){return this._enabled}set enabled(e){e?(this.el.setAttribute("aria-disabled","false"),this.el.tabIndex=0,this.el.style.pointerEvents="auto",this.el.style.opacity="1",this.el.style.cursor="pointer",this._enabled=!1):(this.el.setAttribute("aria-disabled","true"),this.el.tabIndex=-1,this.el.style.pointerEvents="none",this.el.style.opacity="0.4",this.el.style.cursor="default",this._enabled=!0),this._enabled=e}constructor(e,n,r={},s){var o;super(),this._link=n,this._enabled=!0,this.el=He(e,tt("a.monaco-link",{tabIndex:(o=n.tabIndex)!==null&&o!==void 0?o:0,href:n.href,title:n.title},n.label)),this.el.setAttribute("role","button");const a=this._register(new Xn(this.el,"click")),l=this._register(new Xn(this.el,"keypress")),c=_t.chain(l.event,h=>h.map(f=>new yr(f)).filter(f=>f.keyCode===3)),u=this._register(new Xn(this.el,lr.Tap)).event;this._register(or.addTarget(this.el));const d=_t.any(a.event,c,u);this._register(d(h=>{this.enabled&&(Nn.stop(h,!0),r!=null&&r.opener?r.opener(this._link.href):s.open(this._link.href,{allowCommands:!0}))})),this.enabled=!0}};nie=cNt([uNt(3,fu)],nie);var dPe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},hPe=function(i,e){return function(n,r){e(n,r,i)}};const dNt=26;let iie=class extends Le{constructor(e,n){super(),this._editor=e,this.instantiationService=n,this.banner=this._register(this.instantiationService.createInstance(rie))}hide(){this._editor.setBanner(null,0),this.banner.clear()}show(e){this.banner.show(Object.assign(Object.assign({},e),{onClose:()=>{var n;this.hide(),(n=e.onClose)===null||n===void 0||n.call(e)}})),this._editor.setBanner(this.banner.element,dNt)}};iie=dPe([hPe(1,hn)],iie);let rie=class extends Le{constructor(e){super(),this.instantiationService=e,this.markdownRenderer=this.instantiationService.createInstance(Rv,{}),this.element=tt("div.editor-banner"),this.element.tabIndex=0}getAriaLabel(e){if(e.ariaLabel)return e.ariaLabel;if(typeof e.message=="string")return e.message}getBannerMessage(e){if(typeof e=="string"){const n=tt("span");return n.innerText=e,n}return this.markdownRenderer.render(e).element}clear(){la(this.element)}show(e){la(this.element);const n=this.getAriaLabel(e);n&&this.element.setAttribute("aria-label",n);const r=He(this.element,tt("div.icon-container"));r.setAttribute("aria-hidden","true"),e.icon&&r.appendChild(tt(`div${en.asCSSSelector(e.icon)}`));const s=He(this.element,tt("div.message-container"));if(s.setAttribute("aria-hidden","true"),s.appendChild(this.getBannerMessage(e.message)),this.messageActionsContainer=He(this.element,tt("div.message-actions-container")),e.actions)for(const a of e.actions)this._register(this.instantiationService.createInstance(nie,this.messageActionsContainer,Object.assign(Object.assign({},a),{tabIndex:-1}),{}));const o=He(this.element,tt("div.action-container"));this.actionBar=this._register(new wh(o)),this.actionBar.push(this._register(new Vl("banner.close","Close Banner",en.asClassName(FRe),!0,()=>{typeof e.onClose=="function"&&e.onClose()})),{icon:!0,label:!1}),this.actionBar.setFocusable(!1)}};rie=dPe([hPe(0,hn)],rie);var jle=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},lE=function(i,e){return function(n,r){e(n,r,i)}},$a=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const hNt=ws("extensions-warning-message",lt.warning,L("warningIcon","Icon shown with a warning message in the extensions editor."));let gI=class extends Le{constructor(e,n,r,s){super(),this._editor=e,this._editorWorkerService=n,this._workspaceTrustService=r,this._highlighter=null,this._bannerClosed=!1,this._updateState=o=>{if(o&&o.hasMore){if(this._bannerClosed)return;const a=Math.max(o.ambiguousCharacterCount,o.nonBasicAsciiCharacterCount,o.invisibleCharacterCount);let l;if(o.nonBasicAsciiCharacterCount>=a)l={message:L("unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters","This document contains many non-basic ASCII unicode characters"),command:new nT};else if(o.ambiguousCharacterCount>=a)l={message:L("unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters","This document contains many ambiguous unicode characters"),command:new tw};else if(o.invisibleCharacterCount>=a)l={message:L("unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters","This document contains many invisible unicode characters"),command:new tT};else throw new Error("Unreachable");this._bannerController.show({id:"unicodeHighlightBanner",message:l.message,icon:hNt,actions:[{label:l.command.shortLabel,href:`command:${l.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(s.createInstance(iie,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(124),this._register(r.onDidChangeTrust(o=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(o=>{o.hasChanged(124)&&(this._options=e.getOption(124),this._updateHighlighter())})),this._updateHighlighter()}dispose(){this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),super.dispose()}_updateHighlighter(){if(this._updateState(null),this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),!this._editor.hasModel())return;const e=fNt(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(r=>r===!1))return;const n={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(r=>r.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(r=>r==="_os"?new Intl.NumberFormat().resolvedOptions().locale:r==="_vscode"?jrt:r)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new sie(this._editor,n,this._updateState,this._editorWorkerService):this._highlighter=new pNt(this._editor,n,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}};gI.ID="editor.contrib.unicodeHighlighter";gI=jle([lE(1,Wf),lE(2,PTe),lE(3,hn)],gI);function fNt(i,e){return{nonBasicASCII:e.nonBasicASCII===Bu?!i:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments===Bu?!i:e.includeComments,includeStrings:e.includeStrings===Bu?!i:e.includeStrings,allowedCharacters:e.allowedCharacters,allowedLocales:e.allowedLocales}}let sie=class extends Le{constructor(e,n,r,s){super(),this._editor=e,this._options=n,this._updateState=r,this._editorWorkerService=s,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ji(()=>this._update(),250)),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}const e=this._model.getVersionId();this._editorWorkerService.computedUnicodeHighlights(this._model.uri,this._options).then(n=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(n);const r=[];if(!n.hasMore)for(const s of n.ranges)r.push({range:s,options:Dj.instance.getDecorationFromOptions(this._options)});this._decorations.set(r)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;const n=this._editor.getModel();if(!zoe(n,e))return null;const r=n.getValueInRange(e.range);return{reason:fPe(r,this._options),inComment:Voe(n,e),inString:Hoe(n,e)}}};sie=jle([lE(3,Wf)],sie);class pNt extends Le{constructor(e,n,r){super(),this._editor=e,this._options=n,this._updateState=r,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ji(()=>this._update(),250)),this._register(this._editor.onDidLayoutChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidScrollChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeHiddenAreas(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}const e=this._editor.getVisibleRanges(),n=[],r={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(const s of e){const o=noe.computeUnicodeHighlights(this._model,this._options,s);for(const a of o.ranges)r.ranges.push(a);r.ambiguousCharacterCount+=r.ambiguousCharacterCount,r.invisibleCharacterCount+=r.invisibleCharacterCount,r.nonBasicAsciiCharacterCount+=r.nonBasicAsciiCharacterCount,r.hasMore=r.hasMore||o.hasMore}if(!r.hasMore)for(const s of r.ranges)n.push({range:s,options:Dj.instance.getDecorationFromOptions(this._options)});this._updateState(r),this._decorations.set(n)}getDecorationInfo(e){if(!this._decorations.has(e))return null;const n=this._editor.getModel(),r=n.getValueInRange(e.range);return zoe(n,e)?{reason:fPe(r,this._options),inComment:Voe(n,e),inString:Hoe(n,e)}:null}}let oie=class{constructor(e,n,r){this._editor=e,this._languageService=n,this._openerService=r,this.hoverOrdinal=5}computeSync(e,n){if(!this._editor.hasModel()||e.type!==1)return[];const r=this._editor.getModel(),s=this._editor.getContribution(gI.ID);if(!s)return[];const o=[],a=new Set;let l=300;for(const c of n){const u=s.getDecorationInfo(c);if(!u)continue;const h=r.getValueInRange(c.range).codePointAt(0),f=PK(h);let p;switch(u.reason.kind){case 0:{k5(u.reason.confusableWith)?p=L("unicodeHighlight.characterIsAmbiguousASCII","The character {0} could be confused with the ASCII character {1}, which is more common in source code.",f,PK(u.reason.confusableWith.codePointAt(0))):p=L("unicodeHighlight.characterIsAmbiguous","The character {0} could be confused with the character {1}, which is more common in source code.",f,PK(u.reason.confusableWith.codePointAt(0)));break}case 1:p=L("unicodeHighlight.characterIsInvisible","The character {0} is invisible.",f);break;case 2:p=L("unicodeHighlight.characterIsNonBasicAscii","The character {0} is not a basic ASCII character.",f);break}if(a.has(p))continue;a.add(p);const g={codePoint:h,reason:u.reason,inComment:u.inComment,inString:u.inString},m=L("unicodeHighlight.adjustSettings","Adjust settings"),_=`command:${c4.ID}?${encodeURIComponent(JSON.stringify(g))}`,b=new Ea("",!0).appendMarkdown(p).appendText(" ").appendLink(_,m);o.push(new Tp(this,c.range,[b],!1,l++))}return o}renderHoverParts(e,n){return zNe(e,n,this._editor,this._languageService,this._openerService)}};oie=jle([lE(1,Ar),lE(2,fu)],oie);function aie(i){return`U+${i.toString(16).padStart(4,"0")}`}function PK(i){let e=`\`${aie(i)}\``;return Nm.isInvisibleCharacter(i)||(e+=` "${`${gNt(i)}`}"`),e}function gNt(i){return i===96?"`` ` ``":"`"+String.fromCodePoint(i)+"`"}function fPe(i,e){return noe.computeUnicodeHighlightReason(i,e)}class Dj{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,n){const r=`${e}${n}`;let s=this.map.get(r);return s||(s=kn.createDynamic({description:"unicode-highlight",stickiness:1,className:"unicode-highlight",showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:n}),this.map.set(r,s)),s}}Dj.instance=new Dj;class mNt extends kt{constructor(){super({id:tw.ID,label:L("action.unicodeHighlight.disableHighlightingInComments","Disable highlighting of characters in comments"),alias:"Disable highlighting of characters in comments",precondition:void 0}),this.shortLabel=L("unicodeHighlight.disableHighlightingInComments.shortLabel","Disable Highlight In Comments")}run(e,n,r){return $a(this,void 0,void 0,function*(){const s=e==null?void 0:e.get(ei);s&&this.runAction(s)})}runAction(e){return $a(this,void 0,void 0,function*(){yield e.updateValue(fc.includeComments,!1,2)})}}class _Nt extends kt{constructor(){super({id:tw.ID,label:L("action.unicodeHighlight.disableHighlightingInStrings","Disable highlighting of characters in strings"),alias:"Disable highlighting of characters in strings",precondition:void 0}),this.shortLabel=L("unicodeHighlight.disableHighlightingInStrings.shortLabel","Disable Highlight In Strings")}run(e,n,r){return $a(this,void 0,void 0,function*(){const s=e==null?void 0:e.get(ei);s&&this.runAction(s)})}runAction(e){return $a(this,void 0,void 0,function*(){yield e.updateValue(fc.includeStrings,!1,2)})}}class tw extends kt{constructor(){super({id:tw.ID,label:L("action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters","Disable highlighting of ambiguous characters"),alias:"Disable highlighting of ambiguous characters",precondition:void 0}),this.shortLabel=L("unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel","Disable Ambiguous Highlight")}run(e,n,r){return $a(this,void 0,void 0,function*(){const s=e==null?void 0:e.get(ei);s&&this.runAction(s)})}runAction(e){return $a(this,void 0,void 0,function*(){yield e.updateValue(fc.ambiguousCharacters,!1,2)})}}tw.ID="editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters";class tT extends kt{constructor(){super({id:tT.ID,label:L("action.unicodeHighlight.disableHighlightingOfInvisibleCharacters","Disable highlighting of invisible characters"),alias:"Disable highlighting of invisible characters",precondition:void 0}),this.shortLabel=L("unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel","Disable Invisible Highlight")}run(e,n,r){return $a(this,void 0,void 0,function*(){const s=e==null?void 0:e.get(ei);s&&this.runAction(s)})}runAction(e){return $a(this,void 0,void 0,function*(){yield e.updateValue(fc.invisibleCharacters,!1,2)})}}tT.ID="editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters";class nT extends kt{constructor(){super({id:nT.ID,label:L("action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters","Disable highlighting of non basic ASCII characters"),alias:"Disable highlighting of non basic ASCII characters",precondition:void 0}),this.shortLabel=L("unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel","Disable Non ASCII Highlight")}run(e,n,r){return $a(this,void 0,void 0,function*(){const s=e==null?void 0:e.get(ei);s&&this.runAction(s)})}runAction(e){return $a(this,void 0,void 0,function*(){yield e.updateValue(fc.nonBasicASCII,!1,2)})}}nT.ID="editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters";class c4 extends kt{constructor(){super({id:c4.ID,label:L("action.unicodeHighlight.showExcludeOptions","Show Exclude Options"),alias:"Show Exclude Options",precondition:void 0})}run(e,n,r){return $a(this,void 0,void 0,function*(){const{codePoint:s,reason:o,inString:a,inComment:l}=r,c=String.fromCodePoint(s),u=e.get(lg),d=e.get(ei);function h(g){return Nm.isInvisibleCharacter(g)?L("unicodeHighlight.excludeInvisibleCharFromBeingHighlighted","Exclude {0} (invisible character) from being highlighted",aie(g)):L("unicodeHighlight.excludeCharFromBeingHighlighted","Exclude {0} from being highlighted",`${aie(g)} "${c}"`)}const f=[];if(o.kind===0)for(const g of o.notAmbiguousInLocales)f.push({label:L("unicodeHighlight.allowCommonCharactersInLanguage",'Allow unicode characters that are more common in the language "{0}".',g),run:()=>$a(this,void 0,void 0,function*(){bNt(d,[g])})});if(f.push({label:h(s),run:()=>vNt(d,[s])}),l){const g=new mNt;f.push({label:g.label,run:()=>$a(this,void 0,void 0,function*(){return g.runAction(d)})})}else if(a){const g=new _Nt;f.push({label:g.label,run:()=>$a(this,void 0,void 0,function*(){return g.runAction(d)})})}if(o.kind===0){const g=new tw;f.push({label:g.label,run:()=>$a(this,void 0,void 0,function*(){return g.runAction(d)})})}else if(o.kind===1){const g=new tT;f.push({label:g.label,run:()=>$a(this,void 0,void 0,function*(){return g.runAction(d)})})}else if(o.kind===2){const g=new nT;f.push({label:g.label,run:()=>$a(this,void 0,void 0,function*(){return g.runAction(d)})})}else yNt(o);const p=yield u.pick(f,{title:L("unicodeHighlight.configureUnicodeHighlightOptions","Configure Unicode Highlight Options")});p&&(yield p.run())})}}c4.ID="editor.action.unicodeHighlight.showExcludeOptions";function vNt(i,e){return $a(this,void 0,void 0,function*(){const n=i.getValue(fc.allowedCharacters);let r;typeof n=="object"&&n?r=n:r={};for(const s of e)r[String.fromCodePoint(s)]=!0;yield i.updateValue(fc.allowedCharacters,r,2)})}function bNt(i,e){var n;return $a(this,void 0,void 0,function*(){const r=(n=i.inspect(fc.allowedLocales).user)===null||n===void 0?void 0:n.value;let s;typeof r=="object"&&r?s=Object.assign({},r):s={};for(const o of e)s[o]=!0;yield i.updateValue(fc.allowedLocales,s,2)})}function yNt(i){throw new Error(`Unexpected value: ${i}`)}rt(tw);rt(tT);rt(nT);rt(c4);_i(gI.ID,gI,1);uk.register(oie);var wNt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Lve=function(i,e){return function(n,r){e(n,r,i)}},CNt=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};const pPe="ignoreUnusualLineTerminators";function SNt(i,e,n){i.setModelProperty(e.uri,pPe,n)}function xNt(i,e){return i.getModelProperty(e.uri,pPe)}let IO=class extends Le{constructor(e,n,r){super(),this._editor=e,this._dialogService=n,this._codeEditorService=r,this._isPresentingDialog=!1,this._config=this._editor.getOption(125),this._register(this._editor.onDidChangeConfiguration(s=>{s.hasChanged(125)&&(this._config=this._editor.getOption(125),this._checkForUnusualLineTerminators())})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent(s=>{s.isUndoing||this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}_checkForUnusualLineTerminators(){return CNt(this,void 0,void 0,function*(){if(this._config==="off"||!this._editor.hasModel())return;const e=this._editor.getModel();if(!e.mightContainUnusualLineTerminators()||xNt(this._codeEditorService,e)===!0||this._editor.getOption(90))return;if(this._config==="auto"){e.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let r;try{this._isPresentingDialog=!0,r=yield this._dialogService.confirm({title:L("unusualLineTerminators.title","Unusual Line Terminators"),message:L("unusualLineTerminators.message","Detected unusual line terminators"),detail:L("unusualLineTerminators.detail","The file '{0}' contains one or more unusual line terminator characters, like Line Separator (LS) or Paragraph Separator (PS).\n\nIt is recommended to remove them from the file. This can be configured via `editor.unusualLineTerminators`.",yh(e.uri)),primaryButton:L({key:"unusualLineTerminators.fix",comment:["&& denotes a mnemonic"]},"&&Remove Unusual Line Terminators"),cancelButton:L("unusualLineTerminators.ignore","Ignore")})}finally{this._isPresentingDialog=!1}if(!r.confirmed){SNt(this._codeEditorService,e,!0);return}e.removeUnusualLineTerminators(this._editor.getSelections())})}};IO.ID="editor.contrib.unusualLineTerminatorsDetector";IO=wNt([Lve(1,W5),Lve(2,Si)],IO);_i(IO.ID,IO,1);var kNt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Dve=function(i,e){return function(n,r){e(n,r,i)}},lie;const oV=new yt("hasWordHighlights",!1);function gPe(i,e,n,r){const s=i.ordered(e);return NEe(s.map(o=>()=>Promise.resolve(o.provideDocumentHighlights(e,n,r)).then(void 0,Us)),Ka)}class mPe{constructor(e,n,r){this._model=e,this._selection=n,this._wordSeparators=r,this._wordRange=this._getCurrentWordRange(e,n),this._result=null}get result(){return this._result||(this._result=go(e=>this._compute(this._model,this._selection,this._wordSeparators,e))),this._result}_getCurrentWordRange(e,n){const r=e.getWordAtPosition(n.getPosition());return r?new J(n.startLineNumber,r.startColumn,n.startLineNumber,r.endColumn):null}isValid(e,n,r){const s=n.startLineNumber,o=n.startColumn,a=n.endColumn,l=this._getCurrentWordRange(e,n);let c=!!(this._wordRange&&this._wordRange.equalsRange(l));for(let u=0,d=r.length;!c&&u=a&&(c=!0)}return c}cancel(){this.result.cancel()}}class LNt extends mPe{constructor(e,n,r,s){super(e,n,r),this._providers=s}_compute(e,n,r,s){return gPe(this._providers,e,n.getPosition(),s).then(o=>o||[])}}class DNt extends mPe{constructor(e,n,r){super(e,n,r),this._selectionIsEmpty=n.isEmpty()}_compute(e,n,r,s){return p1(250,s).then(()=>{if(!n.isEmpty())return[];const o=e.getWordAtPosition(n.getPosition());return!o||o.word.length>1e3?[]:e.findMatches(o.word,!0,!1,!0,r,!1).map(l=>({range:l.range,kind:oP.Text}))})}isValid(e,n,r){const s=n.isEmpty();return this._selectionIsEmpty!==s?!1:super.isValid(e,n,r)}}function ENt(i,e,n,r){return i.has(e)?new LNt(e,n,r,i):new DNt(e,n,r)}d_("_executeDocumentHighlights",(i,e,n)=>{const r=i.get(Et);return gPe(r.documentHighlightProvider,e,n,Hn.None)});class INt{constructor(e,n,r,s){this.toUnhook=new Xe,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=[],this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.editor=e,this.providers=n,this.linkedHighlighters=r,this._hasWordHighlights=oV.bindTo(s),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(80),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(o=>{this._ignorePositionChangeEvent||this.occurrencesHighlight&&this._onPositionChanged(o)})),this.toUnhook.add(e.onDidChangeModelContent(o=>{this._stopAll()})),this.toUnhook.add(e.onDidChangeConfiguration(o=>{const a=this.editor.getOption(80);this.occurrencesHighlight!==a&&(this.occurrencesHighlight=a,this._stopAll())})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1}hasDecorations(){return this.decorations.length>0}restore(){this.occurrencesHighlight&&this._run()}_getSortedHighlights(){return this.decorations.getRanges().sort(J.compareRangesUsingStarts)}moveNext(){const e=this._getSortedHighlights(),r=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))+1)%e.length,s=e[r];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(s.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(s);const o=this._getWord();if(o){const a=this.editor.getModel().getLineContent(s.startLineNumber);Ua(`${a}, ${r+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){const e=this._getSortedHighlights(),r=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,s=e[r];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(s.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(s);const o=this._getWord();if(o){const a=this.editor.getModel().getLineContent(s.startLineNumber);Ua(`${a}, ${r+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeDecorations(){this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1))}_stopAll(){this._removeDecorations(),this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1),this.workerRequest!==null&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||(this.workerRequestTokenId++,this.workerRequestCompleted=!0)}_onPositionChanged(e){if(!this.occurrencesHighlight){this._stopAll();return}if(e.reason!==3){this._stopAll();return}this._run()}_getWord(){const e=this.editor.getSelection(),n=e.startLineNumber,r=e.startColumn;return this.model.getWordAtPosition({lineNumber:n,column:r})}_run(){const e=this.editor.getSelection();if(e.startLineNumber!==e.endLineNumber){this._stopAll();return}const n=e.startColumn,r=e.endColumn,s=this._getWord();if(!s||s.startColumn>n||s.endColumn{a===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=l||[],this._beginRenderDecorations())},Ln)}}_beginRenderDecorations(){const e=new Date().getTime(),n=this.lastCursorPositionChangeTime+250;e>=n?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},n-e)}renderDecorations(){this.renderDecorationsTimer=-1;const e=[];for(const n of this.workerRequestValue)n.range&&e.push({range:n.range,options:eAt(n.kind)});this.decorations.set(e),this._hasWordHighlights.set(this.hasDecorations());for(const n of this.linkedHighlighters())(n==null?void 0:n.editor.getModel())===this.editor.getModel()&&(n._stopAll(),n.decorations.set(e),n._hasWordHighlights.set(n.hasDecorations()))}dispose(){this._stopAll(),this.toUnhook.dispose()}}let Fx=lie=class extends Le{static get(e){return e.getContribution(lie.ID)}constructor(e,n,r){super(),this.wordHighlighter=null,this.linkedContributions=new Set;const s=()=>{e.hasModel()&&!e.getModel().isTooLargeForTokenization()&&(this.wordHighlighter=new INt(e,r.documentHighlightProvider,()=>Vn.map(this.linkedContributions,o=>o.wordHighlighter),n))};this._register(e.onDidChangeModel(o=>{this.wordHighlighter&&(this.wordHighlighter.dispose(),this.wordHighlighter=null),s()})),s()}saveViewState(){return!!(this.wordHighlighter&&this.wordHighlighter.hasDecorations())}moveNext(){var e;(e=this.wordHighlighter)===null||e===void 0||e.moveNext()}moveBack(){var e;(e=this.wordHighlighter)===null||e===void 0||e.moveBack()}restoreViewState(e){this.wordHighlighter&&e&&this.wordHighlighter.restore()}dispose(){this.wordHighlighter&&(this.wordHighlighter.dispose(),this.wordHighlighter=null),super.dispose()}};Fx.ID="editor.contrib.wordHighlighter";Fx=lie=kNt([Dve(1,mn),Dve(2,Et)],Fx);class _Pe extends kt{constructor(e,n){super(n),this._isNext=e}run(e,n){const r=Fx.get(n);r&&(this._isNext?r.moveNext():r.moveBack())}}class TNt extends _Pe{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:L("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:oV,kbOpts:{kbExpr:oe.editorTextFocus,primary:65,weight:100}})}}class RNt extends _Pe{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:L("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:oV,kbOpts:{kbExpr:oe.editorTextFocus,primary:1089,weight:100}})}}class ANt extends kt{constructor(){super({id:"editor.action.wordHighlight.trigger",label:L("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:oV.toNegated(),kbOpts:{kbExpr:oe.editorTextFocus,primary:0,weight:100}})}run(e,n,r){const s=Fx.get(n);s&&s.restoreViewState(!0)}}_i(Fx.ID,Fx,0);rt(TNt);rt(RNt);rt(ANt);class aV extends Ho{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,n,r){if(!n.hasModel())return;const s=vh(n.getOption(129)),o=n.getModel(),l=n.getSelections().map(c=>{const u=new ve(c.positionLineNumber,c.positionColumn),d=this._move(s,o,u,this._wordNavigationType);return this._moveTo(c,d,this._inSelectionMode)});if(o.pushStackElement(),n._getViewModel().setCursorStates("moveWordCommand",3,l.map(c=>hi.fromModelSelection(c))),l.length===1){const c=new ve(l[0].positionLineNumber,l[0].positionColumn);n.revealPosition(c,0)}}_moveTo(e,n,r){return r?new Ft(e.selectionStartLineNumber,e.selectionStartColumn,n.lineNumber,n.column):new Ft(n.lineNumber,n.column,n.lineNumber,n.column)}}class nw extends aV{_move(e,n,r,s){return wi.moveWordLeft(e,n,r,s)}}class iw extends aV{_move(e,n,r,s){return wi.moveWordRight(e,n,r,s)}}class NNt extends nw{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0})}}class MNt extends nw{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})}}class PNt extends nw{constructor(){var e;super({inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0,kbOpts:{kbExpr:ze.and(oe.textInputFocus,(e=ze.and(R5,X$))===null||e===void 0?void 0:e.negate()),primary:2063,mac:{primary:527},weight:100}})}}class ONt extends nw{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0})}}class FNt extends nw{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})}}class BNt extends nw{constructor(){var e;super({inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0,kbOpts:{kbExpr:ze.and(oe.textInputFocus,(e=ze.and(R5,X$))===null||e===void 0?void 0:e.negate()),primary:3087,mac:{primary:1551},weight:100}})}}class jNt extends nw{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0})}_move(e,n,r,s){return super._move(vh(rg.wordSeparators.defaultValue),n,r,s)}}class WNt extends nw{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0})}_move(e,n,r,s){return super._move(vh(rg.wordSeparators.defaultValue),n,r,s)}}class $Nt extends iw{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})}}class zNt extends iw{constructor(){var e;super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:ze.and(oe.textInputFocus,(e=ze.and(R5,X$))===null||e===void 0?void 0:e.negate()),primary:2065,mac:{primary:529},weight:100}})}}class VNt extends iw{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})}}class HNt extends iw{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})}}class UNt extends iw{constructor(){var e;super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:ze.and(oe.textInputFocus,(e=ze.and(R5,X$))===null||e===void 0?void 0:e.negate()),primary:3089,mac:{primary:1553},weight:100}})}}class qNt extends iw{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})}}class KNt extends iw{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0})}_move(e,n,r,s){return super._move(vh(rg.wordSeparators.defaultValue),n,r,s)}}class GNt extends iw{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0})}_move(e,n,r,s){return super._move(vh(rg.wordSeparators.defaultValue),n,r,s)}}class lV extends Ho{constructor(e){super(e),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,n,r){const s=e.get(dr);if(!n.hasModel())return;const o=vh(n.getOption(129)),a=n.getModel(),l=n.getSelections(),c=n.getOption(6),u=n.getOption(11),d=s.getLanguageConfiguration(a.getLanguageId()).getAutoClosingPairs(),h=n._getViewModel(),f=l.map(p=>{const g=this._delete({wordSeparators:o,model:a,selection:p,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:n.getOption(9),autoClosingBrackets:c,autoClosingQuotes:u,autoClosingPairs:d,autoClosedCharacters:h.getCursorAutoClosedCharacters()},this._wordNavigationType);return new Sa(g,"")});n.pushUndoStop(),n.executeCommands(this.id,f),n.pushUndoStop()}}class Wle extends lV{_delete(e,n){const r=wi.deleteWordLeft(e,n);return r||new J(1,1,1,1)}}class $le extends lV{_delete(e,n){const r=wi.deleteWordRight(e,n);if(r)return r;const s=e.model.getLineCount(),o=e.model.getLineMaxColumn(s);return new J(s,o,s,o)}}class XNt extends Wle{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:oe.writable})}}class YNt extends Wle{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:oe.writable})}}class ZNt extends Wle{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:oe.writable,kbOpts:{kbExpr:oe.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}}class QNt extends $le{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:oe.writable})}}class JNt extends $le{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:oe.writable})}}class eMt extends $le{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:oe.writable,kbOpts:{kbExpr:oe.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}}class tMt extends kt{constructor(){super({id:"deleteInsideWord",precondition:oe.writable,label:L("deleteInsideWord","Delete Word"),alias:"Delete Word"})}run(e,n,r){if(!n.hasModel())return;const s=vh(n.getOption(129)),o=n.getModel(),l=n.getSelections().map(c=>{const u=wi.deleteInsideWord(s,o,c);return new Sa(u,"")});n.pushUndoStop(),n.executeCommands(this.id,l),n.pushUndoStop()}}ct(new NNt);ct(new MNt);ct(new PNt);ct(new ONt);ct(new FNt);ct(new BNt);ct(new $Nt);ct(new zNt);ct(new VNt);ct(new HNt);ct(new UNt);ct(new qNt);ct(new jNt);ct(new WNt);ct(new KNt);ct(new GNt);ct(new XNt);ct(new YNt);ct(new ZNt);ct(new QNt);ct(new JNt);ct(new eMt);rt(tMt);class nMt extends lV{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordPartLeft",precondition:oe.writable,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,n){const r=I$.deleteWordPartLeft(e);return r||new J(1,1,1,1)}}class iMt extends lV{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordPartRight",precondition:oe.writable,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,n){const r=I$.deleteWordPartRight(e);if(r)return r;const s=e.model.getLineCount(),o=e.model.getLineMaxColumn(s);return new J(s,o,s,o)}}class vPe extends aV{_move(e,n,r,s){return I$.moveWordPartLeft(e,n,r)}}class rMt extends vPe{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordPartLeft",precondition:void 0,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:783},weight:100}})}}si.registerCommandAlias("cursorWordPartStartLeft","cursorWordPartLeft");class sMt extends vPe{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordPartLeftSelect",precondition:void 0,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}}si.registerCommandAlias("cursorWordPartStartLeftSelect","cursorWordPartLeftSelect");class bPe extends aV{_move(e,n,r,s){return I$.moveWordPartRight(e,n,r)}}class oMt extends bPe{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordPartRight",precondition:void 0,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:785},weight:100}})}}class aMt extends bPe{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordPartRightSelect",precondition:void 0,kbOpts:{kbExpr:oe.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}}ct(new nMt);ct(new iMt);ct(new rMt);ct(new sMt);ct(new oMt);ct(new aMt);class cie extends Le{constructor(e){super(),this.editor=e,this._register(this.editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit()))}_onDidAttemptReadOnlyEdit(){const e=au.get(this.editor);if(e&&this.editor.hasModel()){let n=this.editor.getOptions().get(91);n||(this.editor.isSimpleWidget?n=new Ea(L("editor.simple.readonly","Cannot edit in read-only input")):n=new Ea(L("editor.readonly","Cannot edit in read-only editor"))),e.showMessage(n,this.editor.getPosition())}}}cie.ID="editor.contrib.readOnlyMessageController";_i(cie.ID,cie,2);class uie extends Le{constructor(e){super(),this.editor=e,this.widget=null,Kp&&(this._register(e.onDidChangeConfiguration(()=>this.update())),this.update())}update(){const e=!this.editor.getOption(90);!this.widget&&e?this.widget=new cV(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)}dispose(){super.dispose(),this.widget&&(this.widget.dispose(),this.widget=null)}}uie.ID="editor.contrib.iPadShowKeyboard";class cV extends Le{constructor(e){super(),this.editor=e,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(Be(this._domNode,"touchstart",n=>{this.editor.focus()})),this._register(Be(this._domNode,"focus",n=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return cV.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}}cV.ID="editor.contrib.ShowKeyboardWidget";_i(uie.ID,uie,3);var lMt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Eve=function(i,e){return function(n,r){e(n,r,i)}},die;let mI=die=class extends Le{static get(e){return e.getContribution(die.ID)}constructor(e,n,r){super(),this._editor=e,this._languageService=r,this._widget=null,this._register(this._editor.onDidChangeModel(s=>this.stop())),this._register(this._editor.onDidChangeModelLanguage(s=>this.stop())),this._register(Zr.onDidChange(s=>this.stop())),this._register(this._editor.onKeyUp(s=>s.keyCode===9&&this.stop()))}dispose(){this.stop(),super.dispose()}launch(){this._widget||this._editor.hasModel()&&(this._widget=new uV(this._editor,this._languageService))}stop(){this._widget&&(this._widget.dispose(),this._widget=null)}};mI.ID="editor.contrib.inspectTokens";mI=die=lMt([Eve(1,bd),Eve(2,Ar)],mI);class cMt extends kt{constructor(){super({id:"editor.action.inspectTokens",label:lee.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(e,n){const r=mI.get(n);r==null||r.launch()}}function uMt(i){let e="";for(let n=0,r=i.length;nFE,tokenize:(s,o,a)=>loe(e,a),tokenizeEncoded:(s,o,a)=>C$(r,a)}}class uV extends Le{constructor(e,n){super(),this.allowEditorOverflow=!0,this._editor=e,this._languageService=n,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=dMt(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition(r=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return uV._ID}_compute(e){const n=this._getTokensAtLine(e.lineNumber);let r=0;for(let c=n.tokens1.length-1;c>=0;c--){const u=n.tokens1[c];if(e.column-1>=u.offset){r=c;break}}let s=0;for(let c=n.tokens2.length>>>1;c>=0;c--)if(e.column-1>=n.tokens2[c<<1]){s=c;break}const o=this._model.getLineContent(e.lineNumber);let a="";if(r=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Ive=function(i,e){return function(n,r){e(n,r,i)}},DN;let Ej=DN=class{constructor(e,n){this.quickInputService=e,this.keybindingService=n,this.registry=Kr.as(ik.Quickaccess)}provide(e){const n=new Xe;return n.add(e.onDidAccept(()=>{const[r]=e.selectedItems;r&&this.quickInputService.quickAccess.show(r.prefix,{preserveValue:!0})})),n.add(e.onDidChangeValue(r=>{const s=this.registry.getQuickAccessProvider(r.substr(DN.PREFIX.length));s&&s.prefix&&s.prefix!==DN.PREFIX&&this.quickInputService.quickAccess.show(s.prefix,{preserveValue:!0})})),e.items=this.getQuickAccessProviders().filter(r=>r.prefix!==DN.PREFIX),n}getQuickAccessProviders(){return this.registry.getQuickAccessProviders().sort((n,r)=>n.prefix.localeCompare(r.prefix)).flatMap(n=>this.createPicks(n))}createPicks(e){return e.helpEntries.map(n=>{const r=n.prefix||e.prefix,s=r||"…";return{prefix:r,label:s,keybinding:n.commandId?this.keybindingService.lookupKeybinding(n.commandId):void 0,ariaLabel:L("helpPickAriaLabel","{0}, {1}",s,n.description),description:n.description}})}};Ej.PREFIX="?";Ej=DN=hMt([Ive(0,lg),Ive(1,sr)],Ej);Kr.as(ik.Quickaccess).registerQuickAccessProvider({ctor:Ej,prefix:"",helpEntries:[{description:cee.helpQuickAccessActionLabel}]});class yPe{constructor(e){this.options=e,this.rangeHighlightDecorationId=void 0}provide(e,n){var r;const s=new Xe;e.canAcceptInBackground=!!(!((r=this.options)===null||r===void 0)&&r.canAcceptInBackground),e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;const o=s.add(new ha);return o.value=this.doProvide(e,n),s.add(this.onDidActiveTextEditorControlChange(()=>{o.value=void 0,o.value=this.doProvide(e,n)})),s}doProvide(e,n){var r;const s=new Xe,o=this.activeTextEditorControl;if(o&&this.canProvideWithTextEditor(o)){const a={editor:o},l=dAe(o);if(l){let c=(r=o.saveViewState())!==null&&r!==void 0?r:void 0;s.add(l.onDidChangeCursorPosition(()=>{var u;c=(u=o.saveViewState())!==null&&u!==void 0?u:void 0})),a.restoreViewState=()=>{c&&o===this.activeTextEditorControl&&o.restoreViewState(c)},s.add(u1(n.onCancellationRequested)(()=>{var u;return(u=a.restoreViewState)===null||u===void 0?void 0:u.call(a)}))}s.add(gn(()=>this.clearDecorations(o))),s.add(this.provideWithTextEditor(a,e,n))}else s.add(this.provideWithoutTextEditor(e,n));return s}canProvideWithTextEditor(e){return!0}gotoLocation({editor:e},n){e.setSelection(n.range),e.revealRangeInCenter(n.range,0),n.preserveFocus||e.focus();const r=e.getModel();r&&"getLineContent"in r&&v1(`${r.getLineContent(n.range.startLineNumber)}`)}getModel(e){var n;return uAe(e)?(n=e.getModel())===null||n===void 0?void 0:n.modified:e.getModel()}addDecorations(e,n){e.changeDecorations(r=>{const s=[];this.rangeHighlightDecorationId&&(s.push(this.rangeHighlightDecorationId.overviewRulerDecorationId),s.push(this.rangeHighlightDecorationId.rangeHighlightId),this.rangeHighlightDecorationId=void 0);const o=[{range:n,options:{description:"quick-access-range-highlight",className:"rangeHighlight",isWholeLine:!0}},{range:n,options:{description:"quick-access-range-highlight-overview",overviewRuler:{color:Qr(TIe),position:hd.Full}}}],[a,l]=r.deltaDecorations(s,o);this.rangeHighlightDecorationId={rangeHighlightId:a,overviewRulerDecorationId:l}})}clearDecorations(e){const n=this.rangeHighlightDecorationId;n&&(e.changeDecorations(r=>{r.deltaDecorations([n.overviewRulerDecorationId,n.rangeHighlightId],[])}),this.rangeHighlightDecorationId=void 0)}}class dV extends yPe{constructor(){super({canAcceptInBackground:!0})}provideWithoutTextEditor(e){const n=L("cannotRunGotoLine","Open a text editor first to go to a line.");return e.items=[{label:n}],e.ariaLabel=n,Le.None}provideWithTextEditor(e,n,r){const s=e.editor,o=new Xe;o.add(n.onDidAccept(c=>{const[u]=n.selectedItems;if(u){if(!this.isValidLineNumber(s,u.lineNumber))return;this.gotoLocation(e,{range:this.toRange(u.lineNumber,u.column),keyMods:n.keyMods,preserveFocus:c.inBackground}),c.inBackground||n.hide()}}));const a=()=>{const c=this.parsePosition(s,n.value.trim().substr(dV.PREFIX.length)),u=this.getPickLabel(s,c.lineNumber,c.column);if(n.items=[{lineNumber:c.lineNumber,column:c.column,label:u}],n.ariaLabel=u,!this.isValidLineNumber(s,c.lineNumber)){this.clearDecorations(s);return}const d=this.toRange(c.lineNumber,c.column);s.revealRangeInCenter(d,0),this.addDecorations(s,d)};a(),o.add(n.onDidChangeValue(()=>a()));const l=dAe(s);return l&&l.getOptions().get(67).renderType===2&&(l.updateOptions({lineNumbers:"on"}),o.add(gn(()=>l.updateOptions({lineNumbers:"relative"})))),o}toRange(e=1,n=1){return{startLineNumber:e,startColumn:n,endLineNumber:e,endColumn:n}}parsePosition(e,n){const r=n.split(/,|:|#/).map(o=>parseInt(o,10)).filter(o=>!isNaN(o)),s=this.lineCount(e)+1;return{lineNumber:r[0]>0?r[0]:s+r[0],column:r[1]}}getPickLabel(e,n,r){if(this.isValidLineNumber(e,n))return this.isValidColumn(e,n,r)?L("gotoLineColumnLabel","Go to line {0} and character {1}.",n,r):L("gotoLineLabel","Go to line {0}.",n);const s=e.getPosition()||{lineNumber:1,column:1},o=this.lineCount(e);return o>1?L("gotoLineLabelEmptyWithLimit","Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.",s.lineNumber,s.column,o):L("gotoLineLabelEmpty","Current Line: {0}, Character: {1}. Type a line number to navigate to.",s.lineNumber,s.column)}isValidLineNumber(e,n){return!n||typeof n!="number"?!1:n>0&&n<=this.lineCount(e)}isValidColumn(e,n,r){if(!r||typeof r!="number")return!1;const s=this.getModel(e);if(!s)return!1;const o={lineNumber:n,column:r};return s.validatePosition(o).equals(o)}lineCount(e){var n,r;return(r=(n=this.getModel(e))===null||n===void 0?void 0:n.getLineCount())!==null&&r!==void 0?r:0}}dV.PREFIX=":";var fMt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},pMt=function(i,e){return function(n,r){e(n,r,i)}};let TO=class extends dV{constructor(e){super(),this.editorService=e,this.onDidActiveTextEditorControlChange=_t.None}get activeTextEditorControl(){var e;return(e=this.editorService.getFocusedCodeEditor())!==null&&e!==void 0?e:void 0}};TO=fMt([pMt(0,Si)],TO);let zle=class wPe extends kt{constructor(){super({id:wPe.ID,label:C7.gotoLineActionLabel,alias:"Go to Line/Column...",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:2085,mac:{primary:293},weight:100}})}run(e){e.get(lg).quickAccess.show(TO.PREFIX)}};zle.ID="editor.action.gotoLine";rt(zle);Kr.as(ik.Quickaccess).registerQuickAccessProvider({ctor:TO,prefix:TO.PREFIX,helpEntries:[{description:C7.gotoLineActionLabel,commandId:zle.ID}]});const CPe=[void 0,[]];function OK(i,e,n=0,r=0){const s=e;return s.values&&s.values.length>1?gMt(i,s.values,n,r):SPe(i,e,n,r)}function gMt(i,e,n,r){let s=0;const o=[];for(const a of e){const[l,c]=SPe(i,a,n,r);if(typeof l!="number")return CPe;s+=l,o.push(...c)}return[s,mMt(o)]}function SPe(i,e,n,r){const s=gx(e.original,e.originalLowercase,n,i,i.toLowerCase(),r,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return s?[s[0],z5(s)]:CPe}function mMt(i){const e=i.sort((s,o)=>s.start-o.start),n=[];let r;for(const s of e)!r||!_Mt(r,s)?(r=s,n.push(s)):(r.start=Math.min(r.start,s.start),r.end=Math.max(r.end,s.end));return n}function _Mt(i,e){return!(i.end=0,a=Tve(i);let l;const c=i.split(xPe);if(c.length>1)for(const u of c){const d=Tve(u),{pathNormalized:h,normalized:f,normalizedLowercase:p}=Rve(u);f&&(l||(l=[]),l.push({original:u,originalLowercase:u.toLowerCase(),pathNormalized:h,normalized:f,normalizedLowercase:p,expectContiguousMatch:d}))}return{original:i,originalLowercase:e,pathNormalized:n,normalized:r,normalizedLowercase:s,values:l,containsPathSeparator:o,expectContiguousMatch:a}}function Rve(i){let e;Aa?e=i.replace(/\//g,Wp):e=i.replace(/\\/g,Wp);const n=Sot(e).replace(/\s|"/g,"");return{pathNormalized:e,normalized:n,normalizedLowercase:n.toLowerCase()}}function Ave(i){return Array.isArray(i)?hie(i.map(e=>e.original).join(xPe)):hie(i.original)}var vMt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},Nve=function(i,e){return function(n,r){e(n,r,i)}},pA=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},cE;let Pm=cE=class extends yPe{constructor(e,n,r=Object.create(null)){super(r),this._languageFeaturesService=e,this._outlineModelService=n,this.options=r,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(e){return this.provideLabelPick(e,L("cannotRunGotoSymbolWithoutEditor","To go to a symbol, first open a text editor with symbol information.")),Le.None}provideWithTextEditor(e,n,r){const s=e.editor,o=this.getModel(s);return o?this._languageFeaturesService.documentSymbolProvider.has(o)?this.doProvideWithEditorSymbols(e,o,n,r):this.doProvideWithoutEditorSymbols(e,o,n,r):Le.None}doProvideWithoutEditorSymbols(e,n,r,s){const o=new Xe;return this.provideLabelPick(r,L("cannotRunGotoSymbolWithoutSymbolProvider","The active text editor does not provide symbol information.")),pA(this,void 0,void 0,function*(){!(yield this.waitForLanguageSymbolRegistry(n,o))||s.isCancellationRequested||o.add(this.doProvideWithEditorSymbols(e,n,r,s))}),o}provideLabelPick(e,n){e.items=[{label:n,index:0,kind:14}],e.ariaLabel=n}waitForLanguageSymbolRegistry(e,n){return pA(this,void 0,void 0,function*(){if(this._languageFeaturesService.documentSymbolProvider.has(e))return!0;const r=new f$,s=n.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{this._languageFeaturesService.documentSymbolProvider.has(e)&&(s.dispose(),r.complete(!0))}));return n.add(gn(()=>r.complete(!1))),r.p})}doProvideWithEditorSymbols(e,n,r,s){var o;const a=e.editor,l=new Xe;l.add(r.onDidAccept(h=>{const[f]=r.selectedItems;f&&f.range&&(this.gotoLocation(e,{range:f.range.selection,keyMods:r.keyMods,preserveFocus:h.inBackground}),h.inBackground||r.hide())})),l.add(r.onDidTriggerItemButton(({item:h})=>{h&&h.range&&(this.gotoLocation(e,{range:h.range.selection,keyMods:r.keyMods,forceSideBySide:!0}),r.hide())}));const c=this.getDocumentSymbols(n,s);let u;const d=h=>pA(this,void 0,void 0,function*(){u==null||u.dispose(!0),r.busy=!1,u=new Ns(s),r.busy=!0;try{const f=hie(r.value.substr(cE.PREFIX.length).trim()),p=yield this.doGetSymbolPicks(c,f,void 0,u.token);if(s.isCancellationRequested)return;if(p.length>0){if(r.items=p,h&&f.original.length===0){const g=G9(p,m=>!!(m.type!=="separator"&&m.range&&J.containsPosition(m.range.decoration,h)));g&&(r.activeItems=[g])}}else f.original.length>0?this.provideLabelPick(r,L("noMatchingSymbolResults","No matching editor symbols")):this.provideLabelPick(r,L("noSymbolResults","No editor symbols"))}finally{s.isCancellationRequested||(r.busy=!1)}});return l.add(r.onDidChangeValue(()=>d(void 0))),d((o=a.getSelection())===null||o===void 0?void 0:o.getPosition()),l.add(r.onDidChangeActive(()=>{const[h]=r.activeItems;h&&h.range&&(a.revealRangeInCenter(h.range.selection,0),this.addDecorations(a,h.range.decoration))})),l}doGetSymbolPicks(e,n,r,s){var o,a;return pA(this,void 0,void 0,function*(){const l=yield e;if(s.isCancellationRequested)return[];const c=n.original.indexOf(cE.SCOPE_PREFIX)===0,u=c?1:0;let d,h;n.values&&n.values.length>1?(d=Ave(n.values[0]),h=Ave(n.values.slice(1))):d=n;let f;const p=(a=(o=this.options)===null||o===void 0?void 0:o.openSideBySideDirection)===null||a===void 0?void 0:a.call(o);p&&(f=[{iconClass:p==="right"?en.asClassName(lt.splitHorizontal):en.asClassName(lt.splitVertical),tooltip:p==="right"?L("openToSide","Open to the Side"):L("openToBottom","Open to the Bottom")}]);const g=[];for(let b=0;bu){let O=!1;if(d!==n&&([E,A]=OK(k,Object.assign(Object.assign({},n),{values:void 0}),u,D),typeof E=="number"&&(O=!0)),typeof E!="number"&&([E,A]=OK(k,d,u,D),typeof E!="number"))continue;if(!O&&h){if(R&&h.original.length>0&&([M,N]=OK(R,h)),typeof M!="number")continue;typeof E=="number"&&(E+=M)}}const P=y.tags&&y.tags.indexOf(1)>=0;g.push({index:b,kind:y.kind,score:E,label:k,ariaLabel:_ot(y.name,y.kind),description:R,highlights:P?void 0:{label:A,description:N},range:{selection:J.collapseToStart(y.selectionRange),decoration:y.range},strikethrough:P,buttons:f})}const m=g.sort((b,y)=>c?this.compareByKindAndScore(b,y):this.compareByScore(b,y));let _=[];if(c){let k=function(){y&&typeof b=="number"&&x>0&&(y.label=ox(BK[b]||FK,x))},b,y,x=0;for(const D of m)b!==D.kind?(k(),b=D.kind,x=1,y={type:"separator"},_.push(y)):x++,_.push(D);k()}else m.length>0&&(_=[{label:L("symbols","symbols ({0})",g.length),type:"separator"},...m]);return _})}compareByScore(e,n){if(typeof e.score!="number"&&typeof n.score=="number")return 1;if(typeof e.score=="number"&&typeof n.score!="number")return-1;if(typeof e.score=="number"&&typeof n.score=="number"){if(e.score>n.score)return-1;if(e.scoren.index?1:0}compareByKindAndScore(e,n){const r=BK[e.kind]||FK,s=BK[n.kind]||FK,o=r.localeCompare(s);return o===0?this.compareByScore(e,n):o}getDocumentSymbols(e,n){return pA(this,void 0,void 0,function*(){const r=yield this._outlineModelService.getOrCreate(e,n);return n.isCancellationRequested?[]:r.asListOfDocumentSymbols()})}};Pm.PREFIX="@";Pm.SCOPE_PREFIX=":";Pm.PREFIX_BY_CATEGORY=`${cE.PREFIX}${cE.SCOPE_PREFIX}`;Pm=cE=vMt([Nve(0,Et),Nve(1,Fz)],Pm);const FK=L("property","properties ({0})"),BK={5:L("method","methods ({0})"),11:L("function","functions ({0})"),8:L("_constructor","constructors ({0})"),12:L("variable","variables ({0})"),4:L("class","classes ({0})"),22:L("struct","structs ({0})"),23:L("event","events ({0})"),24:L("operator","operators ({0})"),10:L("interface","interfaces ({0})"),2:L("namespace","namespaces ({0})"),3:L("package","packages ({0})"),25:L("typeParameter","type parameters ({0})"),1:L("modules","modules ({0})"),6:L("property","properties ({0})"),9:L("enum","enumerations ({0})"),21:L("enumMember","enumeration members ({0})"),14:L("string","strings ({0})"),0:L("file","files ({0})"),17:L("array","arrays ({0})"),15:L("number","numbers ({0})"),16:L("boolean","booleans ({0})"),18:L("object","objects ({0})"),19:L("key","keys ({0})"),7:L("field","fields ({0})"),13:L("constant","constants ({0})")};var bMt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},jK=function(i,e){return function(n,r){e(n,r,i)}};let fie=class extends Pm{constructor(e,n,r){super(n,r),this.editorService=e,this.onDidActiveTextEditorControlChange=_t.None}get activeTextEditorControl(){var e;return(e=this.editorService.getFocusedCodeEditor())!==null&&e!==void 0?e:void 0}};fie=bMt([jK(0,Si),jK(1,Et),jK(2,Fz)],fie);class u4 extends kt{constructor(){super({id:u4.ID,label:WP.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:oe.hasDocumentSymbolProvider,kbOpts:{kbExpr:oe.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(e){e.get(lg).quickAccess.show(Pm.PREFIX,{itemActivation:_p.NONE})}}u4.ID="editor.action.quickOutline";rt(u4);Kr.as(ik.Quickaccess).registerQuickAccessProvider({ctor:fie,prefix:Pm.PREFIX,helpEntries:[{description:WP.quickOutlineActionLabel,prefix:Pm.PREFIX,commandId:u4.ID},{description:WP.quickOutlineByCategoryActionLabel,prefix:Pm.PREFIX_BY_CATEGORY}]});function WK(i,e){return e&&(i.stack||i.stacktrace)?L("stackTrace.format","{0}: {1}",Pve(i),Mve(i.stack)||Mve(i.stacktrace)):Pve(i)}function Mve(i){return Array.isArray(i)?i.join(` `):i}function Pve(i){return i.code==="ERR_UNC_HOST_NOT_ALLOWED"?`${i.message}. Please update the 'security.allowedUNCHosts' setting if you want to allow this host.`:typeof i.code=="string"&&typeof i.errno=="number"&&typeof i.syscall=="string"?L("nodeExceptionMessage","A system error occurred ({0})",i.message):i.message||L("error.defaultMessage","An unknown error occurred. Please consult the log for more details.")}function kPe(i=null,e=!1){if(!i)return L("error.defaultMessage","An unknown error occurred. Please consult the log for more details.");if(Array.isArray(i)){const n=Hm(i),r=kPe(n[0],e);return n.length>1?L("error.moreErrors","{0} ({1} errors in total)",r,n.length):r}if(zl(i))return i;if(i.detail){const n=i.detail;if(n.error)return WK(n.error,e);if(n.exception)return WK(n.exception,e)}return i.stack?WK(i,e):i.message?i.message:L("error.defaultMessage","An unknown error occurred. Please consult the log for more details.")}function yMt(i){var e;const n=new Map;for(const r of i)n.set(r,((e=n.get(r))!==null&&e!==void 0?e:0)+1);return n}class TM{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(e,n){const r=this.computeEmbedding(e),s=new Map,o=[];for(const[a,l]of this.documents){if(n.isCancellationRequested)return[];for(const c of l.chunks){const u=this.computeSimilarityScore(c,r,s);u>0&&o.push({key:a,score:u})}}return o}static termFrequencies(e){return yMt(TM.splitTerms(e))}static*splitTerms(e){const n=r=>r.toLowerCase();for(const[r]of e.matchAll(new RegExp("\\b\\p{Letter}[\\p{Letter}\\d]{2,}\\b","gu"))){yield n(r);const s=r.split(new RegExp("(?<=[a-z])(?=[A-Z])","g"));if(s.length>1)for(const o of s)o.length>2&&new RegExp("\\p{Letter}{3,}","gu").test(o)&&(yield n(o))}}updateDocuments(e){var n;for(const{key:r}of e)this.deleteDocument(r);for(const r of e){const s=[];for(const o of r.textChunks){const a=TM.termFrequencies(o);for(const l of a.keys())this.chunkOccurrences.set(l,((n=this.chunkOccurrences.get(l))!==null&&n!==void 0?n:0)+1);s.push({text:o,tf:a})}this.chunkCount+=s.length,this.documents.set(r.key,{chunks:s})}return this}deleteDocument(e){const n=this.documents.get(e);if(n){this.documents.delete(e),this.chunkCount-=n.chunks.length;for(const r of n.chunks)for(const s of r.tf.keys()){const o=this.chunkOccurrences.get(s);if(typeof o=="number"){const a=o-1;a<=0?this.chunkOccurrences.delete(s):this.chunkOccurrences.set(s,a)}}}}computeSimilarityScore(e,n,r){let s=0;for(const[o,a]of Object.entries(n)){const l=e.tf.get(o);if(!l)continue;let c=r.get(o);typeof c!="number"&&(c=this.computeIdf(o),r.set(o,c));const u=l*c;s+=u*a}return s}computeEmbedding(e){const n=TM.termFrequencies(e);return this.computeTfidf(n)}computeIdf(e){var n;const r=(n=this.chunkOccurrences.get(e))!==null&&n!==void 0?n:0;return r>0?Math.log((this.chunkCount+1)/r):0}computeTfidf(e){const n=Object.create(null);for(const[r,s]of e){const o=this.computeIdf(r);o>0&&(n[r]=s*o)}return n}}function wMt(i){var e,n;const r=i.slice(0);r.sort((o,a)=>a.score-o.score);const s=(n=(e=r[0])===null||e===void 0?void 0:e.score)!==null&&n!==void 0?n:0;if(s>0)for(const o of r)o.score/=s;return r}var gA=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},L2;(function(i){i[i.NO_ACTION=0]="NO_ACTION",i[i.CLOSE_PICKER=1]="CLOSE_PICKER",i[i.REFRESH_PICKER=2]="REFRESH_PICKER",i[i.REMOVE_ITEM=3]="REMOVE_ITEM"})(L2||(L2={}));function $K(i){const e=i;return Array.isArray(e.items)}function Ove(i){const e=i;return!!e.picks&&e.additionalPicks instanceof Promise}class CMt extends Le{constructor(e,n){super(),this.prefix=e,this.options=n}provide(e,n,r){var s;const o=new Xe;e.canAcceptInBackground=!!(!((s=this.options)===null||s===void 0)&&s.canAcceptInBackground),e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;let a;const l=o.add(new ha),c=()=>gA(this,void 0,void 0,function*(){const u=l.value=new Xe;a==null||a.dispose(!0),e.busy=!1,a=new Ns(n);const d=a.token,h=e.value.substr(this.prefix.length).trim(),f=this._getPicks(h,u,d,r),p=(m,_)=>{var b;let y,x;if($K(m)?(y=m.items,x=m.active):y=m,y.length===0){if(_)return!1;(h.length>0||e.hideInput)&&(!((b=this.options)===null||b===void 0)&&b.noResultsPick)&&(nP(this.options.noResultsPick)?y=[this.options.noResultsPick(h)]:y=[this.options.noResultsPick])}return e.items=y,x&&(e.activeItems=[x]),!0},g=m=>gA(this,void 0,void 0,function*(){let _=!1,b=!1;yield Promise.all([gA(this,void 0,void 0,function*(){typeof m.mergeDelay=="number"&&(yield p1(m.mergeDelay),d.isCancellationRequested)||b||(_=p(m.picks,!0))}),gA(this,void 0,void 0,function*(){e.busy=!0;try{const y=yield m.additionalPicks;if(d.isCancellationRequested)return;let x,k;$K(m.picks)?(x=m.picks.items,k=m.picks.active):x=m.picks;let D,R;if($K(y)?(D=y.items,R=y.active):D=y,D.length>0||!_){let E;if(!k&&!R){const A=e.activeItems[0];A&&x.indexOf(A)!==-1&&(E=A)}p({items:[...x,...D],active:k||R||E})}}finally{d.isCancellationRequested||(e.busy=!1),b=!0}})])});if(f!==null)if(Ove(f))yield g(f);else if(!(f instanceof Promise))p(f);else{e.busy=!0;try{const m=yield f;if(d.isCancellationRequested)return;Ove(m)?yield g(m):p(m)}finally{d.isCancellationRequested||(e.busy=!1)}}});return o.add(e.onDidChangeValue(()=>c())),c(),o.add(e.onDidAccept(u=>{const[d]=e.selectedItems;typeof(d==null?void 0:d.accept)=="function"&&(u.inBackground||e.hide(),d.accept(e.keyMods,u))})),o.add(e.onDidTriggerItemButton(({button:u,item:d})=>gA(this,void 0,void 0,function*(){var h,f;if(typeof d.trigger=="function"){const p=(f=(h=d.buttons)===null||h===void 0?void 0:h.indexOf(u))!==null&&f!==void 0?f:-1;if(p>=0){const g=d.trigger(p,e.keyMods),m=typeof g=="number"?g:yield g;if(n.isCancellationRequested)return;switch(m){case L2.NO_ACTION:break;case L2.CLOSE_PICKER:e.hide();break;case L2.REFRESH_PICKER:c();break;case L2.REMOVE_ITEM:{const _=e.items.indexOf(d);if(_!==-1){const b=e.items.slice(),y=b.splice(_,1),x=e.activeItems.filter(D=>D!==y[0]),k=e.keepScrollPosition;e.keepScrollPosition=!0,e.items=b,x&&(e.activeItems=x),e.keepScrollPosition=k}break}}}}}))),o}}var LPe=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},eS=function(i,e){return function(n,r){e(n,r,i)}},zK=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})},WC,Co;let Bx=WC=class extends CMt{constructor(e,n,r,s,o,a){super(WC.PREFIX,e),this.instantiationService=n,this.keybindingService=r,this.commandService=s,this.telemetryService=o,this.dialogService=a,this.commandsHistory=this._register(this.instantiationService.createInstance(jx)),this.options=e}_getPicks(e,n,r,s){var o,a,l,c;return zK(this,void 0,void 0,function*(){const u=yield this.getCommandPicks(r);if(r.isCancellationRequested)return[];const d=u1(()=>{const b=new TM;b.updateDocuments(u.map(x=>({key:x.commandId,textChunks:[x.label+(x.commandAlias?` ${x.commandAlias}`:"")]})));const y=b.calculateScores(e,r);return wMt(y).filter(x=>x.score>WC.TFIDF_THRESHOLD).slice(0,WC.TFIDF_MAX_RESULTS)}),h=[];for(const b of u){const y=(o=WC.WORD_FILTER(e,b.label))!==null&&o!==void 0?o:void 0,x=b.commandAlias&&(a=WC.WORD_FILTER(e,b.commandAlias))!==null&&a!==void 0?a:void 0;if(y||x)b.highlights={label:y,detail:this.options.showAlias?x:void 0},h.push(b);else if(e===b.commandId)h.push(b);else if(e.length>=3){const k=d();if(r.isCancellationRequested)return[];const D=k.find(R=>R.key===b.commandId);D&&(b.tfIdfScore=D.score,h.push(b))}}const f=new Map;for(const b of h){const y=f.get(b.label);y?(b.description=b.commandId,y.description=y.commandId):f.set(b.label,b)}h.sort((b,y)=>{if(b.tfIdfScore&&y.tfIdfScore)return b.tfIdfScore===y.tfIdfScore?b.label.localeCompare(y.label):y.tfIdfScore-b.tfIdfScore;if(b.tfIdfScore)return 1;if(y.tfIdfScore)return-1;const x=this.commandsHistory.peek(b.commandId),k=this.commandsHistory.peek(y.commandId);if(x&&k)return x>k?-1:1;if(x)return-1;if(k)return 1;if(this.options.suggestedCommandIds){const D=this.options.suggestedCommandIds.has(b.commandId),R=this.options.suggestedCommandIds.has(y.commandId);if(D&&R)return 0;if(D)return-1;if(R)return 1}return b.label.localeCompare(y.label)});const p=[];let g=!1,m=!0,_=!!this.options.suggestedCommandIds;for(let b=0;bthis.toCommandPick(k,s));return m&&((b=x[0])===null||b===void 0?void 0:b.type)!=="separator"&&x.unshift({type:"separator",label:L("suggested","similar commands")}),x})}:p})}toCommandPick(e,n){if(e.type==="separator")return e;const r=this.keybindingService.lookupKeybinding(e.commandId),s=r?L("commandPickAriaLabelWithKeybinding","{0}, {1}",e.label,r.getAriaLabel()):e.label;return Object.assign(Object.assign({},e),{ariaLabel:s,detail:this.options.showAlias&&e.commandAlias!==e.label?e.commandAlias:void 0,keybinding:r,accept:()=>zK(this,void 0,void 0,function*(){var o,a;this.commandsHistory.push(e.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.commandId,from:(o=n==null?void 0:n.from)!==null&&o!==void 0?o:"quick open"});try{!((a=e.args)===null||a===void 0)&&a.length?yield this.commandService.executeCommand(e.commandId,...e.args):yield this.commandService.executeCommand(e.commandId)}catch(l){sg(l)||this.dialogService.error(L("canNotRun","Command '{0}' resulted in an error",e.label),kPe(l))}})})}};Bx.PREFIX=">";Bx.TFIDF_THRESHOLD=.5;Bx.TFIDF_MAX_RESULTS=5;Bx.WORD_FILTER=eae(HP,Dvt,BTe);Bx=WC=LPe([eS(1,hn),eS(2,sr),eS(3,us),eS(4,_d),eS(5,W5)],Bx);let jx=Co=class extends Le{constructor(e,n){super(),this.storageService=e,this.configurationService=n,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>this.updateConfiguration(e)))}updateConfiguration(e){e&&!e.affectsConfiguration("workbench.commandPalette.history")||(this.configuredCommandsHistoryLength=Co.getConfiguredCommandHistoryLength(this.configurationService),Co.cache&&Co.cache.limit!==this.configuredCommandsHistoryLength&&(Co.cache.limit=this.configuredCommandsHistoryLength,Co.saveState(this.storageService)))}load(){const e=this.storageService.get(Co.PREF_KEY_CACHE,0);let n;if(e)try{n=JSON.parse(e)}catch{}const r=Co.cache=new G1(this.configuredCommandsHistoryLength,1);if(n){let s;n.usesLRU?s=n.entries:s=n.entries.sort((o,a)=>o.value-a.value),s.forEach(o=>r.set(o.key,o.value))}Co.counter=this.storageService.getNumber(Co.PREF_KEY_COUNTER,0,Co.counter)}push(e){Co.cache&&(Co.cache.set(e,Co.counter++),Co.saveState(this.storageService))}peek(e){var n;return(n=Co.cache)===null||n===void 0?void 0:n.peek(e)}static saveState(e){if(!Co.cache)return;const n={usesLRU:!0,entries:[]};Co.cache.forEach((r,s)=>n.entries.push({key:s,value:r})),e.store(Co.PREF_KEY_CACHE,JSON.stringify(n),0,0),e.store(Co.PREF_KEY_COUNTER,Co.counter,0,0)}static getConfiguredCommandHistoryLength(e){var n,r;const o=(r=(n=e.getValue().workbench)===null||n===void 0?void 0:n.commandPalette)===null||r===void 0?void 0:r.history;return typeof o=="number"?o:Co.DEFAULT_COMMANDS_HISTORY_LENGTH}};jx.DEFAULT_COMMANDS_HISTORY_LENGTH=50;jx.PREF_KEY_CACHE="commandPalette.mru.cache";jx.PREF_KEY_COUNTER="commandPalette.mru.counter";jx.counter=1;jx=Co=LPe([eS(0,jf),eS(1,ei)],jx);class SMt extends Bx{constructor(e,n,r,s,o,a){super(e,n,r,s,o,a)}getCodeEditorCommandPicks(){const e=this.activeTextEditorControl;if(!e)return[];const n=[];for(const r of e.getSupportedActions())n.push({commandId:r.id,commandAlias:r.alias,label:oae(r.label)||r.id});return n}}var xMt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},pD=function(i,e){return function(n,r){e(n,r,i)}},Fve=function(i,e,n,r){function s(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function l(d){try{u(r.next(d))}catch(h){a(h)}}function c(d){try{u(r.throw(d))}catch(h){a(h)}}function u(d){d.done?o(d.value):s(d.value).then(l,c)}u((r=r.apply(i,e||[])).next())})};let RO=class extends SMt{get activeTextEditorControl(){var e;return(e=this.codeEditorService.getFocusedCodeEditor())!==null&&e!==void 0?e:void 0}constructor(e,n,r,s,o,a){super({showAlias:!1},e,r,s,o,a),this.codeEditorService=n}getCommandPicks(){return Fve(this,void 0,void 0,function*(){return this.getCodeEditorCommandPicks()})}hasAdditionalCommandPicks(){return!1}getAdditionalCommandPicks(){return Fve(this,void 0,void 0,function*(){return[]})}};RO=xMt([pD(0,hn),pD(1,Si),pD(2,sr),pD(3,us),pD(4,_d),pD(5,W5)],RO);class d4 extends kt{constructor(){super({id:d4.ID,label:S7.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:oe.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(e){e.get(lg).quickAccess.show(RO.PREFIX)}}d4.ID="editor.action.quickCommand";rt(d4);Kr.as(ik.Quickaccess).registerQuickAccessProvider({ctor:RO,prefix:RO.PREFIX,helpEntries:[{description:S7.quickCommandHelp,commandId:d4.ID}]});var kMt=function(i,e,n,r){var s=arguments.length,o=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(i,e,n,r);else for(var l=i.length-1;l>=0;l--)(a=i[l])&&(o=(s<3?a(o):s>3?a(e,n,o):a(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o},gD=function(i,e){return function(n,r){e(n,r,i)}};let pie=class extends I1{constructor(e,n,r,s,o,a,l){super(!0,e,n,r,s,o,a,l)}};pie=kMt([gD(1,mn),gD(2,Si),gD(3,Ps),gD(4,hn),gD(5,jf),gD(6,ei)],pie);_i(I1.ID,pie,4);class LMt extends kt{constructor(){super({id:"editor.action.toggleHighContrast",label:uee.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0}),this._originalThemeName=null}run(e,n){const r=e.get(bd),s=r.getColorTheme();Vp(s.type)?(r.setTheme(this._originalThemeName||($E(s.type)?rE:U0)),this._originalThemeName=null):(r.setTheme($E(s.type)?jS:WS),this._originalThemeName=s.themeName)}}rt(LMt);const DMt=Object.freeze(Object.defineProperty({__proto__:null,CancellationTokenSource:gAe,Emitter:mAe,KeyCode:_Ae,KeyMod:vAe,MarkerSeverity:SAe,MarkerTag:xAe,Position:bAe,Range:yAe,Selection:wAe,SelectionDirection:CAe,Token:LAe,Uri:kAe,editor:DAe,languages:EAe},Symbol.toStringTag,{value:"Module"}));function EMt(i){return new Worker("/dashboard/assets/editor.worker-CDU2Z2yo.js",{name:i==null?void 0:i.name})}function IMt(i){return new Worker("/dashboard/assets/json.worker-v3Gy2e2h.js",{name:i==null?void 0:i.name})}window.MonacoEnvironment={getWorker(i,e){return e==="json"?new IMt:new EMt}};xse.config({monaco:DMt});const h4=({beforeMount:i,customHeight:e,...n})=>{const r=$.useRef(null),s=$.useRef(null),o=$i(),{height:a}=kse(),[l,c]=$.useState(e||0);function u(d){r.current=d,d.languages.register({id:"custom-language"}),d.languages.setMonarchTokensProvider("custom-language",Gnt),d.editor.defineTheme("custom-language-theme",R3(o,"custom-language-theme")),d.editor.defineTheme("qdrant-theme",R3(o,"qdrant-theme")),d.languages.setLanguageConfiguration("custom-language",Xnt),typeof i=="function"&&i(d)}return $.useEffect(()=>{var d,h;(d=r.current)==null||d.editor.defineTheme("custom-language-theme",R3(o,"custom-language-theme")),(h=r.current)==null||h.editor.defineTheme("qdrant-theme",R3(o,"qdrant-theme"))},[o]),$.useEffect(()=>{var d;e||c(a-((d=s.current)==null?void 0:d.offsetTop))},[a,s]),C.jsx("div",{className:o.palette.mode,ref:s,children:C.jsx(d2e,{theme:n.theme??"custom-language-theme",height:l,beforeMount:u,...n})})};h4.propTypes={height:Z.string,beforeMount:Z.func,customHeight:Z.oneOfType([Z.number,Z.string]),...d2e.propTypes};const DPe=({onChange:i,code:e,onChangeResult:n,setRequestCount:r})=>{const s=$.useRef(null),o=$.useRef(null),a=$.useRef(null),l=$.useRef(null),{client:c}=Ur();let u=null,d=null,h=null;const f=m=>{var _,b;i("code",m),cit(m),(b=o.current)==null||b.editor.setModelMarkers((_=s.current)==null?void 0:_.getModel(),"owner",tQ)};$.useEffect(()=>()=>{var m,_;(m=a.current)==null||m.dispose(),(_=l.current)==null||_.dispose()},[]);function p(m,_){s.current=m;let b=[];u=m.addCommand(0,async(y,...x)=>{r(R=>R+1);const k=x[0],D=await nQ(k);n("code",ls.stringify(D)),r(R=>R-1)},""),d=m.addCommand(0,async(y,...x)=>{const k=x[0],D=i2e(k.blockText);if(D.reqBody&&Object.keys(D.reqBody).length>0){const R=ls.stringify(D.reqBody,null,2);m.executeEdits("beautify",[{forceMoveMarkers:!0,range:new _.Range(k.blockStartLine+1,0,k.blockEndLine,m.getModel().getLineMaxColumn(k.blockEndLine)),text:R}])}},""),h=m.addCommand(0,async(y,...x)=>{const k=x[0];window.open(k,"_blank")}),a.current=_.languages.registerCodeLensProvider("custom-language",Znt(u,d,h)),m.onDidChangeCursorPosition(()=>{const y=m.getValue(),x=Sse(y),k=Qnt(x,m.getPosition().lineNumber);if(_.editor.selectedCodeBlock=k,k){const D=k.blockStartLine,R=k.blockEndLine;b=m.deltaDecorations([b[0]],[{range:new _.Range(D,0,R,3),options:{className:"blockSelector",glyphMarginClassName:"blockSelectorStrip",isWholeLine:!0}}]),m.addCommand(_.KeyMod.CtrlCmd+_.KeyCode.Enter,async()=>{r(M=>M+1);const E=k.blockText,A=await nQ(E);n("code",ls.stringify(A)),r(M=>M-1)})}else b=m.deltaDecorations([b[0]],[]),m.addCommand(_.KeyMod.CtrlCmd+_.KeyCode.Enter,()=>{})})}function g(m){ait(m,c).then(_=>{l.current=m.languages.registerCompletionItemProvider("custom-language",_)})}return C.jsx(C.Fragment,{children:C.jsx(h4,{language:"custom-language",value:e,theme:"custom-language-theme",defaultValue:"//input",onChange:f,onMount:p,beforeMount:g,formatOnPaste:!0,autoIndent:!0,formatOnType:!0,options:Ynt})})};DPe.propTypes={onChange:Z.func.isRequired,onChangeResult:Z.func.isRequired,code:Z.string.isRequired,setRequestCount:Z.func.isRequired};const EPe=i=>$.useMemo(()=>({formattedCode:XJe(i,ls)}),[i]),IPe=({code:i})=>{const{formattedCode:r}=EPe(i);return C.jsx(h4,{language:"json",theme:"custom-language-theme",value:r,options:{scrollBeyondLastLine:!1,fontSize:14,wordWrap:"on",minimap:{enabled:!1},automaticLayout:!0,readOnly:!0,mouseWheelZoom:!0,folding:!1,lineHeight:21,padding:{top:16,bottom:16}}})};IPe.propTypes={code:Z.string.isRequired};const TPe=Hr(C.jsx("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"})),hV=Hr(C.jsx("path",{d:"M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20z"})),TMt=Hr(C.jsx("path",{d:"m12 4-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"})),RPe=Hr(C.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})),RMt=Hr(C.jsx("path",{d:"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6z"})),AMt=Hr(C.jsx("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"})),NMt=Hr(C.jsx("path",{d:"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2"})),MMt=Hr(C.jsx("path",{d:"M10 8.64 15.27 12 10 15.36zM8 5v14l11-7z"})),PMt=Hr(C.jsx("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"})),OMt=Hr(C.jsx("path",{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8zm4 18H6V4h7v5h5zM8 15.01l1.41 1.41L11 14.84V19h2v-4.16l1.59 1.59L16 15.01 12.01 11z"})),fV="16px",FMt=ye(Bv)` min-width: 650px; border-spacing: 0 ${fV}; border-collapse: separate; `;ye(Bv)` min-width: 350px; border-spacing: 0 ${fV}; border-collapse: separate; `;ye(OW)(({theme:i})=>` border-spacing: 0 ${fV}; border-collapse: separate; & th { background-color: ${Pt(i.palette.primary.main,.05)}; border-bottom: 0; &:first-of-type { border-top-left-radius: ${i.shape.borderRadius}px; border-bottom-left-radius: ${i.shape.borderRadius}px; } &:last-of-type { border-top-right-radius: ${i.shape.borderRadius}px; border-bottom-right-radius: ${i.shape.borderRadius}px; } } `);const BMt=ye(PW)(({theme:i})=>{const e=i.palette.mode==="dark"?0:i.palette.divider+" solid 1px";return` border-spacing: 0 ${fV}; border-collapse: separate; & tr { background-image: ${i.palette.mode==="dark"?"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))":"none"}; } & td { border-bottom: none; border-top: ${e}; border-bottom: ${e}; &:first-of-type { border-top-left-radius: ${i.shape.borderRadius}px; border-bottom-left-radius: ${i.shape.borderRadius}px; border-left: ${e}; } &:last-of-type { border-top-right-radius: ${i.shape.borderRadius}px; border-bottom-right-radius: ${i.shape.borderRadius}px; border-right: ${e}; } } `});ye(ki)` font-weight: bold; `;function APe(i){var e,n,r="";if(typeof i=="string"||typeof i=="number")r+=i;else if(typeof i=="object")if(Array.isArray(i))for(e=0;etypeof window=="object"?((i?i.querySelector("#_goober"):window._goober)||Object.assign((i||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:i||jMt,$Mt=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,zMt=/\/\*[^]*?\*\/| +/g,Bve=/\n+/g,tS=(i,e)=>{let n="",r="",s="";for(let o in i){let a=i[o];o[0]=="@"?o[1]=="i"?n=o+" "+a+";":r+=o[1]=="f"?tS(a,o):o+"{"+tS(a,o[1]=="k"?"":e)+"}":typeof a=="object"?r+=tS(a,e?e.replace(/([^,])+/g,l=>o.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g,c=>/&/.test(c)?c.replace(/&/g,l):l?l+" "+c:c)):o):a!=null&&(o=/^--/.test(o)?o:o.replace(/[A-Z]/g,"-$&").toLowerCase(),s+=tS.p?tS.p(o,a):o+":"+a+";")}return n+(e&&s?e+"{"+s+"}":s)+r},s0={},NPe=i=>{if(typeof i=="object"){let e="";for(let n in i)e+=n+NPe(i[n]);return e}return i},VMt=(i,e,n,r,s)=>{let o=NPe(i),a=s0[o]||(s0[o]=(c=>{let u=0,d=11;for(;u>>0;return"go"+d})(o));if(!s0[a]){let c=o!==i?i:(u=>{let d,h,f=[{}];for(;d=$Mt.exec(u.replace(zMt,""));)d[4]?f.shift():d[3]?(h=d[3].replace(Bve," ").trim(),f.unshift(f[0][h]=f[0][h]||{})):f[0][d[1]]=d[2].replace(Bve," ").trim();return f[0]})(i);s0[a]=tS(s?{["@keyframes "+a]:c}:c,n?"":"."+a)}let l=n&&s0.g?s0.g:null;return n&&(s0.g=s0[a]),((c,u,d,h)=>{h?u.data=u.data.replace(h,c):u.data.indexOf(c)===-1&&(u.data=d?c+u.data:u.data+c)})(s0[a],e,r,l),a},HMt=(i,e,n)=>i.reduce((r,s,o)=>{let a=e[o];if(a&&a.call){let l=a(n),c=l&&l.props&&l.props.className||/^go/.test(l)&&l;a=c?"."+c:l&&typeof l=="object"?l.props?"":tS(l,""):l===!1?"":l}return r+s+(a??"")},"");function Vle(i){let e=this||{},n=i.call?i(e.p):i;return VMt(n.unshift?n.raw?HMt(n,[].slice.call(arguments,1),e.p):n.reduce((r,s)=>Object.assign(r,s&&s.call?s(e.p):s),{}):n,WMt(e.target),e.g,e.o,e.k)}Vle.bind({g:1});Vle.bind({k:1});function UMt(i,e){for(var n=0;n=0)&&(n[s]=i[s]);return n}function jve(i){if(i===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return i}var Wve=function(){return""},OPe=nn.createContext({enqueueSnackbar:Wve,closeSnackbar:Wve}),$C={downXs:"@media (max-width:599.95px)",upSm:"@media (min-width:600px)"},$ve=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},Hle=function(e){return""+$ve(e.vertical)+$ve(e.horizontal)},J6=function(e){return!!e||e===0},eB="unmounted",mD="exited",_D="entering",mA="entered",zve="exiting",Ule=function(i){PPe(e,i);function e(r){var s;s=i.call(this,r)||this;var o=r.appear,a;return s.appearStatus=null,r.in?o?(a=mD,s.appearStatus=_D):a=mA:r.unmountOnExit||r.mountOnEnter?a=eB:a=mD,s.state={status:a},s.nextCallback=null,s}e.getDerivedStateFromProps=function(s,o){var a=s.in;return a&&o.status===eB?{status:mD}:null};var n=e.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(s){var o=null;if(s!==this.props){var a=this.state.status;this.props.in?a!==_D&&a!==mA&&(o=_D):(a===_D||a===mA)&&(o=zve)}this.updateStatus(!1,o)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var s=this.props.timeout,o=s,a=s;return s!=null&&typeof s!="number"&&typeof s!="string"&&(a=s.exit,o=s.enter),{exit:a,enter:o}},n.updateStatus=function(s,o){s===void 0&&(s=!1),o!==null?(this.cancelNextCallback(),o===_D?this.performEnter(s):this.performExit()):this.props.unmountOnExit&&this.state.status===mD&&this.setState({status:eB})},n.performEnter=function(s){var o=this,a=this.props.enter,l=s,c=this.getTimeouts();if(!s&&!a){this.safeSetState({status:mA},function(){o.props.onEntered&&o.props.onEntered(o.node,l)});return}this.props.onEnter&&this.props.onEnter(this.node,l),this.safeSetState({status:_D},function(){o.props.onEntering&&o.props.onEntering(o.node,l),o.onTransitionEnd(c.enter,function(){o.safeSetState({status:mA},function(){o.props.onEntered&&o.props.onEntered(o.node,l)})})})},n.performExit=function(){var s=this,o=this.props.exit,a=this.getTimeouts();if(!o){this.safeSetState({status:mD},function(){s.props.onExited&&s.props.onExited(s.node)});return}this.props.onExit&&this.props.onExit(this.node),this.safeSetState({status:zve},function(){s.props.onExiting&&s.props.onExiting(s.node),s.onTransitionEnd(a.exit,function(){s.safeSetState({status:mD},function(){s.props.onExited&&s.props.onExited(s.node)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&this.nextCallback.cancel&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(s,o){o=this.setNextCallback(o),this.setState(s,o)},n.setNextCallback=function(s){var o=this,a=!0;return this.nextCallback=function(){a&&(a=!1,o.nextCallback=null,s())},this.nextCallback.cancel=function(){a=!1},this.nextCallback},n.onTransitionEnd=function(s,o){this.setNextCallback(o);var a=s==null&&!this.props.addEndListener;if(!this.node||a){setTimeout(this.nextCallback,0);return}this.props.addEndListener&&this.props.addEndListener(this.node,this.nextCallback),s!=null&&setTimeout(this.nextCallback,s)},n.render=function(){var s=this.state.status;if(s===eB)return null;var o=this.props,a=o.children,l=f4(o,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return a(s,l)},MPe(e,[{key:"node",get:function(){var s,o=(s=this.props.nodeRef)===null||s===void 0?void 0:s.current;if(!o)throw new Error("notistack - Custom snackbar is not refForwarding");return o}}]),e}(nn.Component);function vD(){}Ule.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:vD,onEntering:vD,onEntered:vD,onExit:vD,onExiting:vD,onExited:vD};function Vve(i,e){typeof i=="function"?i(e):i&&(i.current=e)}function gie(i,e){return $.useMemo(function(){return i==null&&e==null?null:function(n){Vve(i,n),Vve(e,n)}},[i,e])}function Ij(i){var e=i.timeout,n=i.style,r=n===void 0?{}:n,s=i.mode;return{duration:typeof e=="object"?e[s]||0:e,easing:r.transitionTimingFunction,delay:r.transitionDelay}}var mie={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},FPe=function(e){e.scrollTop=e.scrollTop},Hve=function(e){return Math.round(e)+"ms"};function D2(i,e){i===void 0&&(i=["all"]);var n=e||{},r=n.duration,s=r===void 0?300:r,o=n.easing,a=o===void 0?mie.easeInOut:o,l=n.delay,c=l===void 0?0:l,u=Array.isArray(i)?i:[i];return u.map(function(d){var h=typeof s=="string"?s:Hve(s),f=typeof c=="string"?c:Hve(c);return d+" "+h+" "+a+" "+f}).join(",")}function qMt(i){return i&&i.ownerDocument||document}function BPe(i){var e=qMt(i);return e.defaultView||window}function KMt(i,e){e===void 0&&(e=166);var n;function r(){for(var s=this,o=arguments.length,a=new Array(o),l=0;l-1,x=_.snacks.findIndex(b)>-1;if(y||x)return _}return s.handleDisplaySnack(ms({},_,{queue:[].concat(_.queue,[m])}))}),p},s.handleDisplaySnack=function(o){var a=o.snacks;return a.length>=s.maxSnack?s.handleDismissOldest(o):s.processQueue(o)},s.processQueue=function(o){var a=o.queue,l=o.snacks;return a.length>0?ms({},o,{snacks:[].concat(l,[a[0]]),queue:a.slice(1,a.length)}):o},s.handleDismissOldest=function(o){if(o.snacks.some(function(d){return!d.open||d.requestClose}))return o;var a=!1,l=!1,c=o.snacks.reduce(function(d,h){return d+(h.open&&h.persist?1:0)},0);c===s.maxSnack&&(l=!0);var u=o.snacks.map(function(d){return!a&&(!d.persist||l)?(a=!0,d.entered?(d.onClose&&d.onClose(null,"maxsnack",d.id),s.props.onClose&&s.props.onClose(null,"maxsnack",d.id),ms({},d,{open:!1})):ms({},d,{requestClose:!0})):ms({},d)});return ms({},o,{snacks:u})},s.handleEnteredSnack=function(o,a,l){if(!J6(l))throw new Error("handleEnteredSnack Cannot be called with undefined key");s.setState(function(c){var u=c.snacks;return{snacks:u.map(function(d){return d.id===l?ms({},d,{entered:!0}):ms({},d)})}})},s.handleCloseSnack=function(o,a,l){s.props.onClose&&s.props.onClose(o,a,l);var c=l===void 0;s.setState(function(u){var d=u.snacks,h=u.queue;return{snacks:d.map(function(f){return!c&&f.id!==l?ms({},f):f.entered?ms({},f,{open:!1}):ms({},f,{requestClose:!0})}),queue:h.filter(function(f){return f.id!==l})}})},s.closeSnackbar=function(o){var a=s.state.snacks.find(function(l){return l.id===o});J6(o)&&a&&a.onClose&&a.onClose(null,"instructed",o),s.handleCloseSnack(null,"instructed",o)},s.handleExitedSnack=function(o,a){if(!J6(a))throw new Error("handleExitedSnack Cannot be called with undefined key");s.setState(function(l){var c=s.processQueue(ms({},l,{snacks:l.snacks.filter(function(u){return u.id!==a})}));return c.queue.length===0?c:s.handleDismissOldest(c)})},rf=s.enqueueSnackbar,Xd=s.closeSnackbar,s.state={snacks:[],queue:[],contextValue:{enqueueSnackbar:s.enqueueSnackbar.bind(jve(s)),closeSnackbar:s.closeSnackbar.bind(jve(s))}},s}var n=e.prototype;return n.render=function(){var s=this,o=this.state.contextValue,a=this.props,l=a.domRoot,c=a.children,u=a.dense,d=u===void 0?!1:u,h=a.Components,f=h===void 0?{}:h,p=a.classes,g=this.state.snacks.reduce(function(_,b){var y,x=Hle(b.anchorOrigin),k=_[x]||[];return ms({},_,(y={},y[x]=[].concat(k,[b]),y))},{}),m=Object.keys(g).map(function(_){var b=g[_],y=b[0];return nn.createElement(fPt,{key:_,dense:d,anchorOrigin:y.anchorOrigin,classes:p},b.map(function(x){return nn.createElement(dPt,{key:x.id,snack:x,classes:p,Component:f[x.variant],onClose:s.handleCloseSnack,onEnter:s.props.onEnter,onExit:s.props.onExit,onExited:RM([s.handleExitedSnack,s.props.onExited],x.id),onEntered:RM([s.handleEnteredSnack,s.props.onEntered],x.id)})}))});return nn.createElement(OPe.Provider,{value:o},c,l?Wre.createPortal(m,l):m)},MPe(e,[{key:"maxSnack",get:function(){return this.props.maxSnack||US.maxSnack}}]),e}($.Component),pu=function(){return $.useContext(OPe)};const as=(i,e,n=null)=>({variant:i,autoHideDuration:n,preventDuplicate:!0,action:r=>C.jsx(Ci,{variant:"outlined",color:"inherit",onClick:()=>{e(r)},children:"Dismiss"})});var EN={exports:{}};/** * @license * Lodash * Copyright OpenJS Foundation and other contributors * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors */var gPt=EN.exports,Zve;function mPt(){return Zve||(Zve=1,function(i,e){(function(){var n,r="4.17.21",s=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",l="Invalid `variable` option passed into `_.template`",c="__lodash_hash_undefined__",u=500,d="__lodash_placeholder__",h=1,f=2,p=4,g=1,m=2,_=1,b=2,y=4,x=8,k=16,D=32,R=64,E=128,A=256,M=512,N=30,P="...",O=800,B=16,j=1,z=2,H=3,Y=1/0,X=9007199254740991,Q=17976931348623157e292,ie=NaN,K=4294967295,ee=K-1,le=K>>>1,ke=[["ary",E],["bind",_],["bindKey",b],["curry",x],["curryRight",k],["flip",M],["partial",D],["partialRight",R],["rearg",A]],xe="[object Arguments]",me="[object Array]",Ee="[object AsyncFunction]",je="[object Boolean]",qe="[object Date]",Ze="[object DOMException]",We="[object Error]",ut="[object Function]",st="[object GeneratorFunction]",mt="[object Map]",Rt="[object Number]",Vt="[object Null]",Ot="[object Object]",vt="[object Promise]",wn="[object Proxy]",Ce="[object RegExp]",ge="[object Set]",pe="[object String]",ne="[object Symbol]",ae="[object Undefined]",ue="[object WeakMap]",de="[object WeakSet]",Se="[object ArrayBuffer]",Ie="[object DataView]",nt="[object Float32Array]",Oe="[object Float64Array]",Ve="[object Int8Array]",gt="[object Int16Array]",$t="[object Int32Array]",Mt="[object Uint8Array]",Bt="[object Uint8ClampedArray]",jn="[object Uint16Array]",Dt="[object Uint32Array]",Fn=/\b__p \+= '';/g,tn=/\b(__p \+=) '' \+/g,pi=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Pi=/&(?:amp|lt|gt|quot|#39);/g,ti=/[&<>"']/g,mi=RegExp(Pi.source),ds=RegExp(ti.source),Nr=/<%-([\s\S]+?)%>/g,Br=/<%([\s\S]+?)%>/g,Mn=/<%=([\s\S]+?)%>/g,hr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,rn=/^\w*$/,sn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Kn=/[\\^$.*+?()[\]{}|]/g,ai=RegExp(Kn.source),Ki=/^\s+/,so=/\s/,_o=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Cs=/\{\n\/\* \[wrapped with (.+)\] \*/,_u=/,? & /,yl=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,qs=/[()=,{}\[\]\/\s]/,Ks=/\\(\\)?/g,ma=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,yn=/\w*$/,Pe=/^[-+]0x[0-9a-f]+$/i,De=/^0b[01]+$/i,Ne=/^\[object .+?Constructor\]$/,At=/^0o[0-7]+$/i,En=/^(?:0|[1-9]\d*)$/,bn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Yn=/($^)/,fr=/['\n\r\u2028\u2029\\]/g,Ei="\\ud800-\\udfff",dg="\\u0300-\\u036f",Xv="\\ufe20-\\ufe2f",lw="\\u20d0-\\u20ff",Dh=dg+Xv+lw,m_="\\u2700-\\u27bf",Yi="a-z\\xdf-\\xf6\\xf8-\\xff",Ic="\\xac\\xb1\\xd7\\xf7",Uo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",__="\\u2000-\\u206f",Cd=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",$4="A-Z\\xc0-\\xd6\\xd8-\\xde",z4="\\ufe0e\\ufe0f",V4=Ic+Uo+__+Cd,Yv="['’]",_k="["+Ei+"]",Zv="["+V4+"]",v_="["+Dh+"]",H4="\\d+",ZV="["+m_+"]",vk="["+Yi+"]",uT="[^"+Ei+V4+H4+m_+Yi+$4+"]",cw="\\ud83c[\\udffb-\\udfff]",uw="(?:"+v_+"|"+cw+")",U4="[^"+Ei+"]",dw="(?:\\ud83c[\\udde6-\\uddff]){2}",Tr="[\\ud800-\\udbff][\\udc00-\\udfff]",b_="["+$4+"]",dT="\\u200d",bk="(?:"+vk+"|"+uT+")",q4="(?:"+b_+"|"+uT+")",hT="(?:"+Yv+"(?:d|ll|m|re|s|t|ve))?",fT="(?:"+Yv+"(?:D|LL|M|RE|S|T|VE))?",yk=uw+"?",hw="["+z4+"]?",hg="(?:"+dT+"(?:"+[U4,dw,Tr].join("|")+")"+hw+yk+")*",fg="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",pg="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Qv=hw+yk+hg,fw="(?:"+[ZV,dw,Tr].join("|")+")"+Qv,gg="(?:"+[U4+v_+"?",v_,dw,Tr,_k].join("|")+")",QV=RegExp(Yv,"g"),K4=RegExp(v_,"g"),y_=RegExp(cw+"(?="+cw+")|"+gg+Qv,"g"),JV=RegExp([b_+"?"+vk+"+"+hT+"(?="+[Zv,b_,"$"].join("|")+")",q4+"+"+fT+"(?="+[Zv,b_+bk,"$"].join("|")+")",b_+"?"+bk+"+"+hT,b_+"+"+fT,pg,fg,H4,fw].join("|"),"g"),G4=RegExp("["+dT+Ei+Dh+z4+"]"),wk=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,X4=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],eH=-1,jr={};jr[nt]=jr[Oe]=jr[Ve]=jr[gt]=jr[$t]=jr[Mt]=jr[Bt]=jr[jn]=jr[Dt]=!0,jr[xe]=jr[me]=jr[Se]=jr[je]=jr[Ie]=jr[qe]=jr[We]=jr[ut]=jr[mt]=jr[Rt]=jr[Ot]=jr[Ce]=jr[ge]=jr[pe]=jr[ue]=!1;var Mr={};Mr[xe]=Mr[me]=Mr[Se]=Mr[Ie]=Mr[je]=Mr[qe]=Mr[nt]=Mr[Oe]=Mr[Ve]=Mr[gt]=Mr[$t]=Mr[mt]=Mr[Rt]=Mr[Ot]=Mr[Ce]=Mr[ge]=Mr[pe]=Mr[ne]=Mr[Mt]=Mr[Bt]=Mr[jn]=Mr[Dt]=!0,Mr[We]=Mr[ut]=Mr[ue]=!1;var Jv={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Ck={"&":"&","<":"<",">":">",'"':""","'":"'"},tH={"&":"&","<":"<",">":">",""":'"',"'":"'"},nH={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},pT=parseFloat,Sk=parseInt,xk=typeof hy=="object"&&hy&&hy.Object===Object&&hy,Y4=typeof self=="object"&&self&&self.Object===Object&&self,Fs=xk||Y4||Function("return this")(),pw=e&&!e.nodeType&&e,Eh=pw&&!0&&i&&!i.nodeType&&i,gT=Eh&&Eh.exports===pw,eb=gT&&xk.process,wl=function(){try{var Fe=Eh&&Eh.require&&Eh.require("util").types;return Fe||eb&&eb.binding&&eb.binding("util")}catch{}}(),mT=wl&&wl.isArrayBuffer,Zl=wl&&wl.isDate,w_=wl&&wl.isMap,kk=wl&&wl.isRegExp,tb=wl&&wl.isSet,Z4=wl&&wl.isTypedArray;function Cl(Fe,ft,Qe){switch(Qe.length){case 0:return Fe.call(ft);case 1:return Fe.call(ft,Qe[0]);case 2:return Fe.call(ft,Qe[0],Qe[1]);case 3:return Fe.call(ft,Qe[0],Qe[1],Qe[2])}return Fe.apply(ft,Qe)}function _T(Fe,ft,Qe,fn){for(var vi=-1,Cr=Fe==null?0:Fe.length;++vi-1}function bT(Fe,ft,Qe){for(var fn=-1,vi=Fe==null?0:Fe.length;++fn-1;);return Qe}function LT(Fe,ft){for(var Qe=Fe.length;Qe--&&nb(ft,Fe[Qe],0)>-1;);return Qe}function sF(Fe,ft){for(var Qe=Fe.length,fn=0;Qe--;)Fe[Qe]===ft&&++fn;return fn}var oF=Ik(Jv),aF=Ik(Ck);function lF(Fe){return"\\"+nH[Fe]}function ib(Fe,ft){return Fe==null?n:Fe[ft]}function rb(Fe){return G4.test(Fe)}function lH(Fe){return wk.test(Fe)}function cH(Fe){for(var ft,Qe=[];!(ft=Fe.next()).done;)Qe.push(ft.value);return Qe}function Tk(Fe){var ft=-1,Qe=Array(Fe.size);return Fe.forEach(function(fn,vi){Qe[++ft]=[vi,fn]}),Qe}function DT(Fe,ft){return function(Qe){return Fe(ft(Qe))}}function vu(Fe,ft){for(var Qe=-1,fn=Fe.length,vi=0,Cr=[];++Qe-1}function bF(S,I){var W=this.__data__,q=il(W,S);return q<0?(++this.size,W.push([S,I])):W[q][1]=I,this}Sl.prototype.clear=gb,Sl.prototype.delete=ec,Sl.prototype.get=Hk,Sl.prototype.has=vF,Sl.prototype.set=bF;function yu(S){var I=-1,W=S==null?0:S.length;for(this.clear();++I=I?S:I)),S}function tc(S,I,W,q,te,fe){var we,Ae=I&h,$e=I&f,Ct=I&p;if(W&&(we=te?W(S,q,te,fe):W(S)),we!==n)return we;if(!yo(S))return S;var St=Ti(S);if(St){if(we=Vw(S),!Ae)return xl(S,we)}else{var Tt=Pa(S),dn=Tt==ut||Tt==st;if(Ab(S))return XT(S,Ae);if(Tt==Ot||Tt==xe||dn&&!te){if(we=$e||dn?{}:Oa(S),!Ae)return $e?_H(S,xd(we,S)):aL(S,ks(we,S))}else{if(!Mr[Tt])return te?S:{};we=vH(S,Tt,Ae)}}fe||(fe=new nl);var Rn=fe.get(S);if(Rn)return Rn;fe.set(S,we),mue(S)?S.forEach(function(di){we.add(tc(di,I,W,di,S,fe))}):pue(S)&&S.forEach(function(di,tr){we.set(tr,tc(di,I,W,tr,S,fe))});var ui=Ct?$e?Ww:jw:$e?Ru:ol,zi=St?n:ui(S);return Qa(zi||S,function(di,tr){zi&&(tr=di,di=S[tr]),I_(we,tr,tc(di,I,W,tr,S,fe))}),we}function SF(S){var I=ol(S);return function(W){return Dw(W,S,I)}}function Dw(S,I,W){var q=W.length;if(S==null)return!q;for(S=Gr(S);q--;){var te=W[q],fe=I[te],we=S[te];if(we===n&&!(te in S)||!fe(we))return!1}return!0}function PT(S,I,W){if(typeof S!="function")throw new bu(a);return Ib(function(){S.apply(n,W)},I)}function Ph(S,I,W,q){var te=-1,fe=Dk,we=!0,Ae=S.length,$e=[],Ct=I.length;if(!Ae)return $e;W&&(I=hs(I,Tc(W))),q?(fe=bT,we=!1):I.length>=s&&(fe=zf,we=!1,I=new L_(I));e:for(;++tete?0:te+W),q=q===n||q>te?te:Fi(q),q<0&&(q+=te),q=W>q?0:vue(q);W0&&W(Ae)?I>1?oo(Ae,I-1,W,q,te):_g(te,Ae):q||(te[te.length]=Ae)}return te}var Xk=cL(),Iw=cL(!0);function Mc(S,I){return S&&Xk(S,I,ol)}function kg(S,I){return S&&Iw(S,I,ol)}function _b(S,I){return mg(I,function(W){return V_(S[W])})}function Gf(S,I){I=jh(I,S);for(var W=0,q=I.length;S!=null&&WI}function Su(S,I){return S!=null&&Sr.call(S,I)}function R_(S,I){return S!=null&&I in Gr(S)}function FT(S,I,W){return S>=Ja(I,W)&&S=120&&St.length>=120)?new L_(we&&St):n}St=S[0];var Tt=-1,dn=Ae[0];e:for(;++Tt-1;)Ae!==S&&Fk.call(Ae,$e,1),Fk.call(S,$e,1);return S}function qo(S,I){for(var W=S?I.length:0,q=W-1;W--;){var te=I[W];if(W==q||te!==fe){var fe=te;js(te)?Fk.call(S,te,1):rL(S,te)}}return S}function yb(S,I){return S+bg(Cw()*(I-S+1))}function Nw(S,I,W,q){for(var te=-1,fe=Io(x_((I-S)/(W||1)),0),we=Qe(fe);fe--;)we[q?fe:++te]=S,S+=W;return we}function N_(S,I){var W="";if(!S||I<1||I>X)return W;do I%2&&(W+=S),I=bg(I/2),I&&(S+=S);while(I);return W}function Oi(S,I){return Pc(vL(S,I,Au),S+"")}function rl(S){return Nh(FL(S))}function VT(S,I){var W=FL(S);return bL(W,Kf(I,0,W.length))}function M_(S,I,W,q){if(!yo(S))return S;I=jh(I,S);for(var te=-1,fe=I.length,we=fe-1,Ae=S;Ae!=null&&++tete?0:te+I),W=W>te?te:W,W<0&&(W+=te),te=I>W?0:W-I>>>0,I>>>=0;for(var fe=Qe(te);++q>>1,we=S[fe];we!==null&&!Ad(we)&&(W?we<=I:we=s){var Ct=I?null:OF(S);if(Ct)return vg(Ct);we=!1,te=zf,$e=new L_}else $e=I?[]:Ae;e:for(;++q=q?S:sl(S,I,W)}var GT=gF||function(S){return Fs.clearTimeout(S)};function XT(S,I){if(I)return S.slice();var W=S.length,q=IT?IT(W):new S.constructor(W);return S.copy(q),q}function Ow(S){var I=new S.constructor(S.byteLength);return new yw(I).set(new yw(S)),I}function IF(S,I){var W=I?Ow(S.buffer):S.buffer;return new S.constructor(W,S.byteOffset,S.byteLength)}function TF(S){var I=new S.constructor(S.source,yn.exec(S));return I.lastIndex=S.lastIndex,I}function RF(S){return Ac?Gr(Ac.call(S)):{}}function AF(S,I){var W=I?Ow(S.buffer):S.buffer;return new S.constructor(W,S.byteOffset,S.length)}function YT(S,I){if(S!==I){var W=S!==n,q=S===null,te=S===S,fe=Ad(S),we=I!==n,Ae=I===null,$e=I===I,Ct=Ad(I);if(!Ae&&!Ct&&!fe&&S>I||fe&&we&&$e&&!Ae&&!Ct||q&&we&&$e||!W&&$e||!te)return 1;if(!q&&!fe&&!Ct&&S=Ae)return $e;var Ct=W[q];return $e*(Ct=="desc"?-1:1)}}return S.index-I.index}function NF(S,I,W,q){for(var te=-1,fe=S.length,we=W.length,Ae=-1,$e=I.length,Ct=Io(fe-we,0),St=Qe($e+Ct),Tt=!q;++Ae<$e;)St[Ae]=I[Ae];for(;++te1?W[te-1]:n,we=te>2?W[2]:n;for(fe=S.length>3&&typeof fe=="function"?(te--,fe):n,we&&Ll(W[0],W[1],we)&&(fe=te<3?n:fe,te=1),I=Gr(I);++q-1?te[fe?I[we]:we]:n}}function dL(S){return $h(function(I){var W=I.length,q=W,te=el.prototype.thru;for(S&&I.reverse();q--;){var fe=I[q];if(typeof fe!="function")throw new bu(a);if(te&&!we&&Db(fe)=="wrapper")var we=new el([],!0)}for(q=we?q:W;++q1&&gr.reverse(),St&&$eAe))return!1;var Ct=fe.get(S),St=fe.get(I);if(Ct&&St)return Ct==I&&St==S;var Tt=-1,dn=!0,Rn=W&m?new L_:n;for(fe.set(S,I),fe.set(I,S);++Tt1?"& ":"")+I[q],I=I.join(W>2?", ":" "),S.replace(_o,`{ /* [wrapped with `+I+`] */ `)}function mL(S){return Ti(S)||Jw(S)||!!(pF&&S&&S[pF])}function js(S,I){var W=typeof S;return I=I??X,!!I&&(W=="number"||W!="symbol"&&En.test(S))&&S>-1&&S%1==0&&S0){if(++I>=O)return arguments[0]}else I=0;return S.apply(n,arguments)}}function bL(S,I){var W=-1,q=S.length,te=q-1;for(I=I===n?q:I;++W1?S[I-1]:n;return W=typeof W=="function"?(S.pop(),W):n,Xs(S,W)});function EL(S){var I=he(S);return I.__chain__=!0,I}function IH(S,I){return I(S),S}function Rd(S,I){return I(S)}var IL=$h(function(S){var I=S.length,W=I?S[0]:0,q=this.__wrapped__,te=function(fe){return Gk(fe,S)};return I>1||this.__actions__.length||!(q instanceof Ii)||!js(W)?this.thru(te):(q=q.slice(W,+W+(I?1:0)),q.__actions__.push({func:Rd,args:[te],thisArg:n}),new el(q,this.__chain__).thru(function(fe){return I&&!fe.length&&fe.push(n),fe}))});function $_(){return EL(this)}function TL(){return new el(this.value(),this.__chain__)}function CR(){this.__values__===n&&(this.__values__=_ue(this.value()));var S=this.__index__>=this.__values__.length,I=S?n:this.__values__[this.__index__++];return{done:S,value:I}}function SR(){return this}function TH(S){for(var I,W=this;W instanceof Rh;){var q=UF(W);q.__index__=0,q.__values__=n,I?te.__wrapped__=q:I=q;var te=q;W=W.__wrapped__}return te.__wrapped__=S,I}function xR(){var S=this.__wrapped__;if(S instanceof Ii){var I=S;return this.__actions__.length&&(I=new Ii(this)),I=I.reverse(),I.__actions__.push({func:Rd,args:[kL],thisArg:n}),new el(I,this.__chain__)}return this.thru(kL)}function RH(){return Cb(this.__wrapped__,this.__actions__)}var e3=lL(function(S,I,W){Sr.call(S,W)?++S[W]:Mh(S,W,1)});function t3(S,I,W){var q=Ti(S)?vT:Ew;return W&&Ll(S,I,W)&&(I=n),q(S,Zn(I,3))}function RL(S,I){var W=Ti(S)?mg:OT;return W(S,Zn(I,3))}var AL=O_(Rg),n3=O_(Kw);function kR(S,I){return oo(z_(S,I),1)}function AH(S,I){return oo(z_(S,I),Y)}function i3(S,I,W){return W=W===n?1:Fi(W),oo(z_(S,I),W)}function NL(S,I){var W=Ti(S)?Qa:Oh;return W(S,Zn(I,3))}function Zw(S,I){var W=Ti(S)?Lk:xF;return W(S,Zn(I,3))}var LR=lL(function(S,I,W){Sr.call(S,W)?S[W].push(I):Mh(S,W,[I])});function ML(S,I,W,q){S=Tu(S)?S:FL(S),W=W&&!q?Fi(W):0;var te=S.length;return W<0&&(W=Io(te+W,0)),o3(S)?W<=te&&S.indexOf(I,W)>-1:!!te&&nb(S,I,W)>-1}var r3=Oi(function(S,I,W){var q=-1,te=typeof I=="function",fe=Tu(S)?Qe(S.length):[];return Oh(S,function(we){fe[++q]=te?Cl(I,we,W):xu(we,I,W)}),fe}),NH=lL(function(S,I,W){Mh(S,W,I)});function z_(S,I){var W=Ti(S)?hs:WT;return W(S,Zn(I,3))}function MH(S,I,W,q){return S==null?[]:(Ti(I)||(I=I==null?[]:[I]),W=q?n:W,Ti(W)||(W=W==null?[]:[W]),Aw(S,I,W))}var Qw=lL(function(S,I,W){S[W?0:1].push(I)},function(){return[[],[]]});function PH(S,I,W){var q=Ti(S)?yT:nF,te=arguments.length<3;return q(S,Zn(I,4),W,te,Oh)}function PL(S,I,W){var q=Ti(S)?iH:nF,te=arguments.length<3;return q(S,Zn(I,4),W,te,xF)}function v(S,I){var W=Ti(S)?mg:OT;return W(S,Wt(Zn(I,3)))}function w(S){var I=Ti(S)?Nh:rl;return I(S)}function T(S,I,W){(W?Ll(S,I,W):I===n)?I=1:I=Fi(I);var q=Ti(S)?E_:VT;return q(S,I)}function F(S){var I=Ti(S)?CF:Lu;return I(S)}function V(S){if(S==null)return 0;if(Tu(S))return o3(S)?C_(S):S.length;var I=Pa(S);return I==mt||I==ge?S.size:Zf(S).length}function U(S,I,W){var q=Ti(S)?wT:HT;return W&&Ll(S,I,W)&&(I=n),q(S,Zn(I,3))}var re=Oi(function(S,I){if(S==null)return[];var W=I.length;return W>1&&Ll(S,I[0],I[1])?I=[]:W>2&&Ll(I[0],I[1],I[2])&&(I=[I[0]]),Aw(S,oo(I,1),[])}),be=Ss||function(){return Fs.Date.now()};function Re(S,I){if(typeof I!="function")throw new bu(a);return S=Fi(S),function(){if(--S<1)return I.apply(this,arguments)}}function et(S,I,W){return I=W?n:I,I=S&&I==null?S.length:I,Wh(S,E,n,n,n,n,I)}function It(S,I){var W;if(typeof I!="function")throw new bu(a);return S=Fi(S),function(){return--S>0&&(W=I.apply(this,arguments)),S<=1&&(I=n),W}}var Nt=Oi(function(S,I,W){var q=_;if(W.length){var te=vu(W,ep(Nt));q|=D}return Wh(S,q,I,W,te)}),Lt=Oi(function(S,I,W){var q=_|b;if(W.length){var te=vu(W,ep(Lt));q|=D}return Wh(I,q,S,W,te)});function pn(S,I,W){I=W?n:I;var q=Wh(S,x,n,n,n,n,n,I);return q.placeholder=pn.placeholder,q}function Cn(S,I,W){I=W?n:I;var q=Wh(S,k,n,n,n,n,n,I);return q.placeholder=Cn.placeholder,q}function Dn(S,I,W){var q,te,fe,we,Ae,$e,Ct=0,St=!1,Tt=!1,dn=!0;if(typeof S!="function")throw new bu(a);I=Vh(I)||0,yo(W)&&(St=!!W.leading,Tt="maxWait"in W,fe=Tt?Io(Vh(W.maxWait)||0,I):fe,dn="trailing"in W?!!W.trailing:dn);function Rn(Xo){var rp=q,U_=te;return q=te=n,Ct=Xo,we=S.apply(U_,rp),we}function ui(Xo){return Ct=Xo,Ae=Ib(tr,I),St?Rn(Xo):we}function zi(Xo){var rp=Xo-$e,U_=Xo-Ct,Tue=I-rp;return Tt?Ja(Tue,fe-U_):Tue}function di(Xo){var rp=Xo-$e,U_=Xo-Ct;return $e===n||rp>=I||rp<0||Tt&&U_>=fe}function tr(){var Xo=be();if(di(Xo))return gr(Xo);Ae=Ib(tr,zi(Xo))}function gr(Xo){return Ae=n,dn&&q?Rn(Xo):(q=te=n,we)}function Nd(){Ae!==n&>(Ae),Ct=0,q=$e=te=Ae=n}function Fc(){return Ae===n?we:gr(be())}function Md(){var Xo=be(),rp=di(Xo);if(q=arguments,te=this,$e=Xo,rp){if(Ae===n)return ui($e);if(Tt)return GT(Ae),Ae=Ib(tr,I),Rn($e)}return Ae===n&&(Ae=Ib(tr,I)),we}return Md.cancel=Nd,Md.flush=Fc,Md}var bo=Oi(function(S,I){return PT(S,1,I)}),Ke=Oi(function(S,I,W){return PT(S,Vh(I)||0,W)});function Me(S){return Wh(S,M)}function Ge(S,I){if(typeof S!="function"||I!=null&&typeof I!="function")throw new bu(a);var W=function(){var q=arguments,te=I?I.apply(this,q):q[0],fe=W.cache;if(fe.has(te))return fe.get(te);var we=S.apply(this,q);return W.cache=fe.set(te,we)||fe,we};return W.cache=new(Ge.Cache||yu),W}Ge.Cache=yu;function Wt(S){if(typeof S!="function")throw new bu(a);return function(){var I=arguments;switch(I.length){case 0:return!S.call(this);case 1:return!S.call(this,I[0]);case 2:return!S.call(this,I[0],I[1]);case 3:return!S.call(this,I[0],I[1],I[2])}return!S.apply(this,I)}}function In(S){return It(2,S)}var Gn=EF(function(S,I){I=I.length==1&&Ti(I[0])?hs(I[0],Tc(Zn())):hs(oo(I,1),Tc(Zn()));var W=I.length;return Oi(function(q){for(var te=-1,fe=Ja(q.length,W);++te=I}),Jw=Qk(function(){return arguments}())?Qk:function(S){return Ro(S)&&Sr.call(S,"callee")&&!Ok.call(S,"callee")},Ti=Qe.isArray,W6e=mT?Tc(mT):LF;function Tu(S){return S!=null&&s3(S.length)&&!V_(S)}function Go(S){return Ro(S)&&Tu(S)}function $6e(S){return S===!0||S===!1||Ro(S)&&Na(S)==je}var Ab=RT||KH,z6e=Zl?Tc(Zl):Yf;function V6e(S){return Ro(S)&&S.nodeType===1&&!DR(S)}function H6e(S){if(S==null)return!0;if(Tu(S)&&(Ti(S)||typeof S=="string"||typeof S.splice=="function"||Ab(S)||OL(S)||Jw(S)))return!S.length;var I=Pa(S);if(I==mt||I==ge)return!S.size;if(tp(S))return!Zf(S).length;for(var W in S)if(Sr.call(S,W))return!1;return!0}function U6e(S,I){return ku(S,I)}function q6e(S,I,W){W=typeof W=="function"?W:n;var q=W?W(S,I):n;return q===n?ku(S,I,n,W):!!q}function FH(S){if(!Ro(S))return!1;var I=Na(S);return I==We||I==Ze||typeof S.message=="string"&&typeof S.name=="string"&&!DR(S)}function K6e(S){return typeof S=="number"&&lb(S)}function V_(S){if(!yo(S))return!1;var I=Na(S);return I==ut||I==st||I==Ee||I==wn}function fue(S){return typeof S=="number"&&S==Fi(S)}function s3(S){return typeof S=="number"&&S>-1&&S%1==0&&S<=X}function yo(S){var I=typeof S;return S!=null&&(I=="object"||I=="function")}function Ro(S){return S!=null&&typeof S=="object"}var pue=w_?Tc(w_):DF;function G6e(S,I){return S===I||vb(S,I,zw(I))}function X6e(S,I,W){return W=typeof W=="function"?W:n,vb(S,I,zw(I),W)}function Y6e(S){return gue(S)&&S!=+S}function Z6e(S){if(yH(S))throw new vi(o);return BT(S)}function Q6e(S){return S===null}function J6e(S){return S==null}function gue(S){return typeof S=="number"||Ro(S)&&Na(S)==Rt}function DR(S){if(!Ro(S)||Na(S)!=Ot)return!1;var I=Sd(S);if(I===null)return!0;var W=Sr.call(I,"constructor")&&I.constructor;return typeof W=="function"&&W instanceof W&&_w.call(W)==Mk}var BH=kk?Tc(kk):Tw;function eBe(S){return fue(S)&&S>=-X&&S<=X}var mue=tb?Tc(tb):Fh;function o3(S){return typeof S=="string"||!Ti(S)&&Ro(S)&&Na(S)==pe}function Ad(S){return typeof S=="symbol"||Ro(S)&&Na(S)==ne}var OL=Z4?Tc(Z4):Rw;function tBe(S){return S===n}function nBe(S){return Ro(S)&&Pa(S)==ue}function iBe(S){return Ro(S)&&Na(S)==de}var rBe=fL(Dg),sBe=fL(function(S,I){return S<=I});function _ue(S){if(!S)return[];if(Tu(S))return o3(S)?Rc(S):xl(S);if(Uf&&S[Uf])return cH(S[Uf]());var I=Pa(S),W=I==mt?Tk:I==ge?vg:FL;return W(S)}function H_(S){if(!S)return S===0?S:0;if(S=Vh(S),S===Y||S===-Y){var I=S<0?-1:1;return I*Q}return S===S?S:0}function Fi(S){var I=H_(S),W=I%1;return I===I?W?I-W:I:0}function vue(S){return S?Kf(Fi(S),0,K):0}function Vh(S){if(typeof S=="number")return S;if(Ad(S))return ie;if(yo(S)){var I=typeof S.valueOf=="function"?S.valueOf():S;S=yo(I)?I+"":I}if(typeof S!="string")return S===0?S:+S;S=iF(S);var W=De.test(S);return W||At.test(S)?Sk(S.slice(2),W?2:8):Pe.test(S)?ie:+S}function bue(S){return kd(S,Ru(S))}function oBe(S){return S?Kf(Fi(S),-X,X):S===0?S:0}function Xr(S){return S==null?"":nc(S)}var aBe=xb(function(S,I){if(tp(I)||Tu(I)){kd(I,ol(I),S);return}for(var W in I)Sr.call(I,W)&&I_(S,W,I[W])}),yue=xb(function(S,I){kd(I,Ru(I),S)}),a3=xb(function(S,I,W,q){kd(I,Ru(I),S,q)}),lBe=xb(function(S,I,W,q){kd(I,ol(I),S,q)}),cBe=$h(Gk);function uBe(S,I){var W=fb(S);return I==null?W:ks(W,I)}var dBe=Oi(function(S,I){S=Gr(S);var W=-1,q=I.length,te=q>2?I[2]:n;for(te&&Ll(I[0],I[1],te)&&(q=1);++W1),fe}),kd(S,Ww(S),W),q&&(W=tc(W,h|f|p,rR));for(var te=I.length;te--;)rL(W,I[te]);return W});function IBe(S,I){return Cue(S,Wt(Zn(I)))}var TBe=$h(function(S,I){return S==null?{}:zT(S,I)});function Cue(S,I){if(S==null)return{};var W=hs(Ww(S),function(q){return[q]});return I=Zn(I),Eg(S,W,function(q,te){return I(q,te[0])})}function RBe(S,I,W){I=jh(I,S);var q=-1,te=I.length;for(te||(te=1,S=n);++qI){var q=S;S=I,I=q}if(W||S%1||I%1){var te=Cw();return Ja(S+te*(I-S+pT("1e-"+((te+"").length-1))),I)}return yb(S,I)}var zBe=P_(function(S,I,W){return I=I.toLowerCase(),S+(W?kue(I):I)});function kue(S){return $H(Xr(S).toLowerCase())}function Lue(S){return S=Xr(S),S&&S.replace(bn,oF).replace(K4,"")}function VBe(S,I,W){S=Xr(S),I=nc(I);var q=S.length;W=W===n?q:Kf(Fi(W),0,q);var te=W;return W-=I.length,W>=0&&S.slice(W,te)==I}function HBe(S){return S=Xr(S),S&&ds.test(S)?S.replace(ti,aF):S}function UBe(S){return S=Xr(S),S&&ai.test(S)?S.replace(Kn,"\\$&"):S}var qBe=P_(function(S,I,W){return S+(W?"-":"")+I.toLowerCase()}),KBe=P_(function(S,I,W){return S+(W?" ":"")+I.toLowerCase()}),GBe=QT("toLowerCase");function XBe(S,I,W){S=Xr(S),I=Fi(I);var q=I?C_(S):0;if(!I||q>=I)return S;var te=(I-q)/2;return Bw(bg(te),W)+S+Bw(x_(te),W)}function YBe(S,I,W){S=Xr(S),I=Fi(I);var q=I?C_(S):0;return I&&q>>0,W?(S=Xr(S),S&&(typeof I=="string"||I!=null&&!BH(I))&&(I=nc(I),!I&&rb(S))?Jf(Rc(S),0,W):S.split(I,W)):[]}var i8e=P_(function(S,I,W){return S+(W?" ":"")+$H(I)});function r8e(S,I,W){return S=Xr(S),W=W==null?0:Kf(Fi(W),0,S.length),I=nc(I),S.slice(W,W+I.length)==I}function s8e(S,I,W){var q=he.templateSettings;W&&Ll(S,I,W)&&(I=n),S=Xr(S),I=a3({},I,q,nR);var te=a3({},I.imports,q.imports,nR),fe=ol(te),we=gw(te,fe),Ae,$e,Ct=0,St=I.interpolate||Yn,Tt="__p += '",dn=mw((I.escape||Yn).source+"|"+St.source+"|"+(St===Mn?ma:Yn).source+"|"+(I.evaluate||Yn).source+"|$","g"),Rn="//# sourceURL="+(Sr.call(I,"sourceURL")?(I.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++eH+"]")+` `;S.replace(dn,function(di,tr,gr,Nd,Fc,Md){return gr||(gr=Nd),Tt+=S.slice(Ct,Md).replace(fr,lF),tr&&(Ae=!0,Tt+=`' + __e(`+tr+`) + '`),Fc&&($e=!0,Tt+=`'; `+Fc+`; __p += '`),gr&&(Tt+=`' + ((__t = (`+gr+`)) == null ? '' : __t) + '`),Ct=Md+di.length,di}),Tt+=`'; `;var ui=Sr.call(I,"variable")&&I.variable;if(!ui)Tt=`with (obj) { `+Tt+` } `;else if(qs.test(ui))throw new vi(l);Tt=($e?Tt.replace(Fn,""):Tt).replace(tn,"$1").replace(pi,"$1;"),Tt="function("+(ui||"obj")+`) { `+(ui?"":`obj || (obj = {}); `)+"var __t, __p = ''"+(Ae?", __e = _.escape":"")+($e?`, __j = Array.prototype.join; function print() { __p += __j.call(arguments, '') } `:`; `)+Tt+`return __p }`;var zi=Eue(function(){return Cr(fe,Rn+"return "+Tt).apply(n,we)});if(zi.source=Tt,FH(zi))throw zi;return zi}function o8e(S){return Xr(S).toLowerCase()}function a8e(S){return Xr(S).toUpperCase()}function l8e(S,I,W){if(S=Xr(S),S&&(W||I===n))return iF(S);if(!S||!(I=nc(I)))return S;var q=Rc(S),te=Rc(I),fe=rF(q,te),we=LT(q,te)+1;return Jf(q,fe,we).join("")}function c8e(S,I,W){if(S=Xr(S),S&&(W||I===n))return S.slice(0,Ak(S)+1);if(!S||!(I=nc(I)))return S;var q=Rc(S),te=LT(q,Rc(I))+1;return Jf(q,0,te).join("")}function u8e(S,I,W){if(S=Xr(S),S&&(W||I===n))return S.replace(Ki,"");if(!S||!(I=nc(I)))return S;var q=Rc(S),te=rF(q,Rc(I));return Jf(q,te).join("")}function d8e(S,I){var W=N,q=P;if(yo(I)){var te="separator"in I?I.separator:te;W="length"in I?Fi(I.length):W,q="omission"in I?nc(I.omission):q}S=Xr(S);var fe=S.length;if(rb(S)){var we=Rc(S);fe=we.length}if(W>=fe)return S;var Ae=W-C_(q);if(Ae<1)return q;var $e=we?Jf(we,0,Ae).join(""):S.slice(0,Ae);if(te===n)return $e+q;if(we&&(Ae+=$e.length-Ae),BH(te)){if(S.slice(Ae).search(te)){var Ct,St=$e;for(te.global||(te=mw(te.source,Xr(yn.exec(te))+"g")),te.lastIndex=0;Ct=te.exec(St);)var Tt=Ct.index;$e=$e.slice(0,Tt===n?Ae:Tt)}}else if(S.indexOf(nc(te),Ae)!=Ae){var dn=$e.lastIndexOf(te);dn>-1&&($e=$e.slice(0,dn))}return $e+q}function h8e(S){return S=Xr(S),S&&mi.test(S)?S.replace(Pi,cF):S}var f8e=P_(function(S,I,W){return S+(W?" ":"")+I.toUpperCase()}),$H=QT("toUpperCase");function Due(S,I,W){return S=Xr(S),I=W?n:I,I===n?lH(S)?hH(S):sH(S):S.match(I)||[]}var Eue=Oi(function(S,I){try{return Cl(S,n,I)}catch(W){return FH(W)?W:new vi(W)}}),p8e=$h(function(S,I){return Qa(I,function(W){W=Id(W),Mh(S,W,Nt(S[W],S))}),S});function g8e(S){var I=S==null?0:S.length,W=Zn();return S=I?hs(S,function(q){if(typeof q[1]!="function")throw new bu(a);return[W(q[0]),q[1]]}):[],Oi(function(q){for(var te=-1;++teX)return[];var W=K,q=Ja(S,K);I=Zn(I),S-=K;for(var te=kT(q,I);++W0||I<0)?new Ii(W):(S<0?W=W.takeRight(-S):S&&(W=W.drop(S)),I!==n&&(I=Fi(I),W=I<0?W.dropRight(-I):W.take(I-S)),W)},Ii.prototype.takeRightWhile=function(S){return this.reverse().takeWhile(S).reverse()},Ii.prototype.toArray=function(){return this.take(K)},Mc(Ii.prototype,function(S,I){var W=/^(?:filter|find|map|reject)|While$/.test(I),q=/^(?:head|last)$/.test(I),te=he[q?"take"+(I=="last"?"Right":""):I],fe=q||/^find/.test(I);te&&(he.prototype[I]=function(){var we=this.__wrapped__,Ae=q?[1]:arguments,$e=we instanceof Ii,Ct=Ae[0],St=$e||Ti(we),Tt=function(tr){var gr=te.apply(he,_g([tr],Ae));return q&&dn?gr[0]:gr};St&&W&&typeof Ct=="function"&&Ct.length!=1&&($e=St=!1);var dn=this.__chain__,Rn=!!this.__actions__.length,ui=fe&&!dn,zi=$e&&!Rn;if(!fe&&St){we=zi?we:new Ii(this);var di=S.apply(we,Ae);return di.__actions__.push({func:Rd,args:[Tt],thisArg:n}),new el(di,dn)}return ui&&zi?S.apply(this,Ae):(di=this.thru(Tt),ui?q?di.value()[0]:di.value():di)})}),Qa(["pop","push","shift","sort","splice","unshift"],function(S){var I=Vf[S],W=/^(?:push|sort|unshift)$/.test(S)?"tap":"thru",q=/^(?:pop|shift)$/.test(S);he.prototype[S]=function(){var te=arguments;if(q&&!this.__chain__){var fe=this.value();return I.apply(Ti(fe)?fe:[],te)}return this[W](function(we){return I.apply(Ti(we)?we:[],te)})}}),Mc(Ii.prototype,function(S,I){var W=he[I];if(W){var q=W.name+"";Sr.call(db,q)||(db[q]=[]),db[q].push({name:I,func:W})}}),db[Lb(n,b).name]=[{name:"wrapper",func:n}],Ii.prototype.clone=Vk,Ii.prototype.reverse=NT,Ii.prototype.value=pb,he.prototype.at=IL,he.prototype.chain=$_,he.prototype.commit=TL,he.prototype.next=CR,he.prototype.plant=TH,he.prototype.reverse=xR,he.prototype.toJSON=he.prototype.valueOf=he.prototype.value=RH,he.prototype.first=he.prototype.head,Uf&&(he.prototype[Uf]=SR),he},sb=fH();Eh?((Eh.exports=sb)._=sb,pw._=sb):Fs._=sb}).call(gPt)}(EN,EN.exports)),EN.exports}var gV=mPt();const HPe=ql(gV),qle=$.forwardRef((i,e)=>{const{method:n,command:r,description:s,tags:o,onClick:a,tabIndex:l,isActive:c}=i,u=$i(),h=(m=>{switch(m){case"GET":return"success";case"POST":return"info";case"PUT":return"warning";case"PATCH":return"secondary";case"DELETE":return"error";default:return"default"}})(n),f=u.palette[h].main,p={background:Pt(u.palette[h].light,.05),borderColor:`${f} !important`},g=o.map(m=>C.jsxs(nn.Fragment,{children:[C.jsxs(Je,{component:"span",variant:"caption",color:h,sx:{display:"inline-block",color:f,border:`1px solid ${f}`,px:.5,borderRadius:"5px",ml:.5,my:.5},children:["#",m]}),C.jsx("br",{})]},m));return C.jsxs(ng,{sx:{boxShadow:c?`0 0 0 2px ${u.palette.primary.dark}`:"none",borderRadius:"5px"},ref:e,onClick:a,tabIndex:l,children:[C.jsx(ki,{sx:p,width:"50px",children:C.jsx(ua,{title:"Insert command into the console window",disableFocusListener:!0,children:C.jsx(Ga,{onClick:a,className:"insert-button",children:C.jsx(hV,{})})})}),C.jsx(ki,{sx:{...p,pl:0},children:C.jsxs(Ye,{sx:{display:"flex",alignItems:"center"},children:[C.jsx(JS,{color:h,label:n,size:"small"}),C.jsxs(Ye,{children:[C.jsx(Je,{component:"code",ml:2,children:r}),C.jsx("br",{}),C.jsx(Je,{variant:"caption",ml:2,color:u.palette.mode==="light"?u.palette.grey[700]:u.palette.grey[400],children:s})]})]})}),C.jsx(ki,{sx:p,align:"right",children:g})]})});qle.displayName="CommandsTableRow";qle.propTypes={method:Z.string.isRequired,command:Z.string.isRequired,description:Z.string.isRequired,tags:Z.arrayOf(Z.string.isRequired).isRequired,onClick:Z.func.isRequired,isActive:Z.bool.isRequired,tabIndex:Z.number.isRequired};const UPe=({commands:i,handleInsertCommand:e})=>{const[n,r]=nn.useState(null),s=$.useRef([]),{enqueueSnackbar:o,closeSnackbar:a}=pu(),l=as("success",a,1e3);$.useEffect(()=>{r(null),s.current=s.current.slice(0,i.length)},[i,i.length]);const c=f=>{const p=`${f.method} ${f.command.substring(1)}${f.hasRequestBody?` { ${f.requiredBodyParameters?f.requiredBodyParameters.map(g=>`"${g}": `).join(`, `):""} }`:""}`;e(p),o("Command inserted",l)},u=f=>{if(f.key==="ArrowDown"){if(n===null){r(0),s.current[0].focus();return}const p=(n+1)%i.length;r(p),s.current[p].focus()}else if(f.key==="ArrowUp"){if(n===null){r(i.length-1),s.current[i.length-1].focus();return}const p=(n-1+i.length)%i.length;r(p),s.current[p].focus()}else f.key==="Enter"&&n!==null&&c(i[n])},d=gV.debounce(u,30);$.useEffect(()=>(window.addEventListener("keydown",d),()=>{window.removeEventListener("keydown",d)}),[n]);const h=i.map((f,p)=>C.jsx(qle,{tabIndex:0,ref:g=>s.current[p]=g,method:f.method,command:f.command,description:f.description,tags:f.tags,isActive:n===p,onClick:g=>{(g.target.classList.contains("insert-button")||g.target.closest(".insert-button"))&&c(f)}},f.method+"_"+f.command));return C.jsx(FMt,{"data-testid":"commands-table",children:C.jsx(BMt,{children:h})})};UPe.propTypes={commands:Z.arrayOf(Z.shape({method:Z.string.isRequired,command:Z.string.isRequired,description:Z.string.isRequired,tags:Z.arrayOf(Z.string.isRequired).isRequired})).isRequired,handleInsertCommand:Z.func.isRequired};const qPe=({commands:i,setCommands:e})=>{const n=nn.useRef(null),r=s=>{const o=s.target.value;if(o==="")e(i);else{const a=o.split(" "),l=i.reduce((c,u)=>{const d=[u.method,u.command,u.description],h=a.reduce((f,p)=>{var _;const g=HPe.escapeRegExp(p),m=new RegExp(`\\b(${g})`,"gmi");return f+((_=d.join(" ").match(m))==null?void 0:_.length)},0);return h>0&&c.push({...u,matches:h}),c},[]).sort((c,u)=>u.matches-c.matches);e(l)}};return nn.useEffect(()=>{n.current.focus()},[]),C.jsx(Ep,{id:"command-search",label:"Search command",variant:"outlined",fullWidth:!0,placeholder:"GET collections",inputRef:n,InputProps:{startAdornment:C.jsx(TW,{position:"start",children:C.jsx(PMt,{})})},onChange:r})};qPe.propTypes={commands:Z.array.isRequired,setCommands:Z.func.isRequired};const _Pt=function(i,e){const n=Object.keys(e)[0];return"$ref"in e[n].schema?e[n].schema.$ref.slice(2).split("/").reduce((a,l)=>a[l],i).required:e[n].schema.required},KPe=({open:i,toggleDrawer:e,handleInsertCommand:n})=>{const[r,s]=$.useState([]),[o,a]=$.useState([]),l=FW("(max-width: 992px)"),{enqueueSnackbar:c,closeSnackbar:u}=pu(),d=as("error",u,6e3);return $.useEffect(()=>{fetch("/dashboard/./openapi.json").then(h=>h.json()).then(h=>{const f=Object.keys(h.paths).map(p=>Object.keys(h.paths[p]).map(g=>{const m=p.replace(/{/g,"<").replace(/}/g,">"),_=h.paths[p][g].summary,b=h.paths[p][g].tags,y=!!h.paths[p][g].requestBody;let x=null;return y&&(x=_Pt(h,h.paths[p][g].requestBody.content)),{method:g.toUpperCase(),command:m,description:_,hasRequestBody:y,tags:b,requiredBodyParameters:x}})).flat();s(f),a(f)}).catch(h=>{c("Error fetching commands",d),console.error(h)})},[]),C.jsx(pLe,{anchor:"right",open:i,onClose:e,sx:{"& .MuiDrawer-paper":{minWidth:l?"100vw":"680px",width:l?"100vw":"55vw",padding:"1rem"},"& .MuiBackdrop-root.MuiModal-backdrop":{opacity:"0 !important"}},children:C.jsxs("div",{children:[C.jsxs(Ye,{sx:{display:"flex",alignItems:"center",mb:2,mr:2},children:[C.jsx(Je,{variant:"h5",children:"Commands"}),C.jsx(Ye,{sx:{flexGrow:1}}),C.jsx(Ga,{onClick:e,children:C.jsx(RPe,{})})]}),C.jsx(Je,{variant:"body1",mb:4,children:"This is a list of commands that can be used in the editor."}),C.jsx(qPe,{commands:r,setCommands:a}),C.jsx(UPe,{commands:o,handleInsertCommand:n})]})})};KPe.propTypes={open:Z.bool.isRequired,toggleDrawer:Z.func.isRequired,handleInsertCommand:Z.func.isRequired};const vPt=`// List all collections GET collections // Get collection info GET collections/collection_name // List points in a collection, using filter POST collections/collection_name/points/scroll { "limit": 10, "filter": { "must": [ { "key": "city", "match": { "any": [ "San Francisco", "New York", "Berlin" ] } } ] } } `,bPt="{}";function yPt(){const i=$i(),[e,n]=$.useState(localStorage.getItem("qwuiConsoleCode")??vPt),[r,s]=$.useState(bPt),[o,a]=nn.useState(0),[l,c]=$.useState(!1),u=(h,f)=>{switch(h){case"code":{localStorage.setItem("qwuiConsoleCode",f),n(f);break}default:console.warn("case not handled!",h,f)}},d=(h,f)=>{switch(h){case"code":{s(f);break}default:console.warn("case not handled!",h,f)}};return C.jsx(C.Fragment,{children:C.jsx(Ye,{component:"main",children:C.jsxs(ln,{container:!0,children:[C.jsxs(ln,{size:12,children:[C.jsx(Ye,{sx:{width:"100%",height:"4px"},children:C.jsx(AW,{sx:o?{}:{display:"none"}})}),C.jsxs(UW,{direction:"horizontal",children:[C.jsx(ix,{children:C.jsx(DPe,{code:e,onChange:u,onChangeResult:d,setRequestCount:a})}),C.jsx(qW,{style:{width:"10px",background:Pt(i.palette.primary.main,.05)},children:C.jsx(Ye,{sx:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:"⋮"})}),C.jsx(ix,{children:C.jsx(IPe,{code:r})})]})]}),C.jsx(ua,{title:"Commands",placement:"left",arrow:!0,children:C.jsx(Mqe,{sx:{position:"absolute",bottom:"40px",right:"49px",boxShadow:3,backgroundColor:ey[500],"&:hover":{backgroundColor:ey[700]}},color:"info","aria-label":"add",onClick:()=>c(!0),children:C.jsx(RMt,{})})}),C.jsx(KPe,{open:l,toggleDrawer:()=>{c(!l)},handleInsertCommand:h=>{const f=`${h} ${e}`;u("code",f)}})]})})})}function GPe({value:i,setValue:e,actions:n}){const r=$i();return C.jsxs(Ye,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[C.jsx(TI,{fullWidth:!0,value:i,onChange:s=>e(s.target.value),placeholder:"Search Collection",startAdornment:C.jsx(TW,{position:"start",children:C.jsx(Ott,{size:20,color:r.palette.text.primary})}),sx:{borderRadius:"8px","& .MuiOutlinedInput-input":{padding:"0.5rem",fontSize:"1rem",fontWeight:400,height:"1.5rem",lineHeight:"1.5rem",color:r.palette.text.primary,"&::placeholder":{color:r.palette.text.disabled,opacity:1}},"& .MuiOutlinedInput-notchedOutline":{borderColor:Pt(r.palette.divider,.23)}}}),(n==null?void 0:n.length)&&n.map((s,o)=>C.jsx(nn.Fragment,{children:s},o))]})}GPe.propTypes={value:Z.string,setValue:Z.func,actions:Z.arrayOf(Z.element)};const g4=({message:i="Something went wrong",callback:e})=>{const{enqueueSnackbar:n,closeSnackbar:r}=pu(),s=as("error",r,6e3);return $.useEffect(()=>{n(i,s),typeof e=="function"&&e()},[n,s,i]),null};g4.propTypes={message:Z.string,callback:Z.func};const iT=({children:i,maxWidth:e="lg"})=>C.jsx(aLe,{maxWidth:e,component:"main",sx:{display:"flex",justifyContent:"center",p:5,margin:"auto"},children:i});iT.propTypes={children:Z.oneOfType([Z.arrayOf(Z.oneOfType([Z.node])),Z.node]),maxWidth:Z.string};function sB(i,e){if(!{}.hasOwnProperty.call(i,e))throw new TypeError("attempted to use private field on non-instance");return i}var wPt=0;function XPe(i){return"__private_"+wPt+++"_"+i}function CPt(i,e,n){const r=[];return i.forEach(s=>typeof s!="string"?r.push(s):e[Symbol.split](s).forEach((o,a,l)=>{o!==""&&r.push(o),a{throw new Error(`missing string: ${i}`)};var bA=XPe("onMissingKey"),yA=XPe("apply");class YPe{constructor(e,n){let{onMissingKey:r=SPt}=n===void 0?{}:n;Object.defineProperty(this,yA,{value:xPt}),Object.defineProperty(this,bA,{writable:!0,value:void 0}),this.locale={strings:{},pluralize(s){return s===1?0:1}},Array.isArray(e)?e.forEach(sB(this,yA)[yA],this):sB(this,yA)[yA](e),sB(this,bA)[bA]=r}translate(e,n){return this.translateArray(e,n).join("")}translateArray(e,n){let r=this.locale.strings[e];if(r==null&&(sB(this,bA)[bA](e),r=e),typeof r=="object"){if(n&&typeof n.smart_count<"u"){const o=this.locale.pluralize(n.smart_count);return Qve(r[o],n)}throw new Error("Attempted to use a string with plural forms, but no value was given for %{smart_count}")}if(typeof r!="string")throw new Error("string was not a string");return Qve(r,n)}}function xPt(i){if(!(i!=null&&i.strings))return;const e=this.locale;Object.assign(this.locale,{strings:{...e.strings,...i.strings},pluralize:i.pluralize||e.pluralize})}var XK,Jve;function kPt(){return Jve||(Jve=1,XK=function(){var e={},n=e._fns={};e.emit=function(a,l,c,u,d,h,f){var p=r(a);p.length&&s(a,p,[l,c,u,d,h,f])},e.on=function(a,l){n[a]||(n[a]=[]),n[a].push(l)},e.once=function(a,l){function c(){l.apply(this,arguments),e.off(a,c)}this.on(a,c)},e.off=function(a,l){var c=[];if(a&&l){var u=this._fns[a],d=0,h=u?u.length:0;for(d;d{let e="",n=i|0;for(;n--;)e+=EPt[Math.random()*64|0];return e};var YK,ebe;function m4(){if(ebe)return YK;ebe=1;function i(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}return YK=i,YK}var ZK,tbe;function ZPe(){if(tbe)return ZK;tbe=1;var i=typeof hy=="object"&&hy&&hy.Object===Object&&hy;return ZK=i,ZK}var QK,nbe;function f_(){if(nbe)return QK;nbe=1;var i=ZPe(),e=typeof self=="object"&&self&&self.Object===Object&&self,n=i||e||Function("return this")();return QK=n,QK}var JK,ibe;function TPt(){if(ibe)return JK;ibe=1;var i=f_(),e=function(){return i.Date.now()};return JK=e,JK}var eG,rbe;function RPt(){if(rbe)return eG;rbe=1;var i=/\s/;function e(n){for(var r=n.length;r--&&i.test(n.charAt(r)););return r}return eG=e,eG}var tG,sbe;function APt(){if(sbe)return tG;sbe=1;var i=RPt(),e=/^\s+/;function n(r){return r&&r.slice(0,i(r)+1).replace(e,"")}return tG=n,tG}var nG,obe;function mV(){if(obe)return nG;obe=1;var i=f_(),e=i.Symbol;return nG=e,nG}var iG,abe;function NPt(){if(abe)return iG;abe=1;var i=mV(),e=Object.prototype,n=e.hasOwnProperty,r=e.toString,s=i?i.toStringTag:void 0;function o(a){var l=n.call(a,s),c=a[s];try{a[s]=void 0;var u=!0}catch{}var d=r.call(a);return u&&(l?a[s]=c:delete a[s]),d}return iG=o,iG}var rG,lbe;function MPt(){if(lbe)return rG;lbe=1;var i=Object.prototype,e=i.toString;function n(r){return e.call(r)}return rG=n,rG}var sG,cbe;function _4(){if(cbe)return sG;cbe=1;var i=mV(),e=NPt(),n=MPt(),r="[object Null]",s="[object Undefined]",o=i?i.toStringTag:void 0;function a(l){return l==null?l===void 0?s:r:o&&o in Object(l)?e(l):n(l)}return sG=a,sG}var oG,ube;function v4(){if(ube)return oG;ube=1;function i(e){return e!=null&&typeof e=="object"}return oG=i,oG}var aG,dbe;function _V(){if(dbe)return aG;dbe=1;var i=_4(),e=v4(),n="[object Symbol]";function r(s){return typeof s=="symbol"||e(s)&&i(s)==n}return aG=r,aG}var lG,hbe;function PPt(){if(hbe)return lG;hbe=1;var i=APt(),e=m4(),n=_V(),r=NaN,s=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,a=/^0o[0-7]+$/i,l=parseInt;function c(u){if(typeof u=="number")return u;if(n(u))return r;if(e(u)){var d=typeof u.valueOf=="function"?u.valueOf():u;u=e(d)?d+"":d}if(typeof u!="string")return u===0?u:+u;u=i(u);var h=o.test(u);return h||a.test(u)?l(u.slice(2),h?2:8):s.test(u)?r:+u}return lG=c,lG}var cG,fbe;function OPt(){if(fbe)return cG;fbe=1;var i=m4(),e=TPt(),n=PPt(),r="Expected a function",s=Math.max,o=Math.min;function a(l,c,u){var d,h,f,p,g,m,_=0,b=!1,y=!1,x=!0;if(typeof l!="function")throw new TypeError(r);c=n(c)||0,i(u)&&(b=!!u.leading,y="maxWait"in u,f=y?s(n(u.maxWait)||0,c):f,x="trailing"in u?!!u.trailing:x);function k(B){var j=d,z=h;return d=h=void 0,_=B,p=l.apply(z,j),p}function D(B){return _=B,g=setTimeout(A,c),b?k(B):p}function R(B){var j=B-m,z=B-_,H=c-j;return y?o(H,f-z):H}function E(B){var j=B-m,z=B-_;return m===void 0||j>=c||j<0||y&&z>=f}function A(){var B=e();if(E(B))return M(B);g=setTimeout(A,R(B))}function M(B){return g=void 0,x&&d?k(B):(d=h=void 0,p)}function N(){g!==void 0&&clearTimeout(g),_=0,d=m=h=g=void 0}function P(){return g===void 0?p:M(e())}function O(){var B=e(),j=E(B);if(d=arguments,h=this,m=B,j){if(g===void 0)return D(m);if(y)return clearTimeout(g),g=setTimeout(A,c),k(m)}return g===void 0&&(g=setTimeout(A,c)),p}return O.cancel=N,O.flush=P,O}return cG=a,cG}var uG,pbe;function FPt(){if(pbe)return uG;pbe=1;var i=OPt(),e=m4(),n="Expected a function";function r(s,o,a){var l=!0,c=!0;if(typeof s!="function")throw new TypeError(n);return e(a)&&(l="leading"in a?!!a.leading:l,c="trailing"in a?!!a.trailing:c),i(s,o,{leading:l,maxWait:o,trailing:c})}return uG=r,uG}var BPt=FPt();const jPt=ql(BPt);function j8(i,e){if(!{}.hasOwnProperty.call(i,e))throw new TypeError("attempted to use private field on non-instance");return i}var WPt=0;function QPe(i){return"__private_"+WPt+++"_"+i}const $Pt={version:"4.2.0"};var nS=QPe("callbacks"),dG=QPe("publish");class JPe{constructor(){Object.defineProperty(this,dG,{value:zPt}),this.state={},Object.defineProperty(this,nS,{writable:!0,value:new Set})}getState(){return this.state}setState(e){const n={...this.state},r={...this.state,...e};this.state=r,j8(this,dG)[dG](n,r,e)}subscribe(e){return j8(this,nS)[nS].add(e),()=>{j8(this,nS)[nS].delete(e)}}}function zPt(){for(var i=arguments.length,e=new Array(i),n=0;n{r(...e)})}JPe.VERSION=$Pt.version;function eOe(i){const e=i.lastIndexOf(".");return e===-1||e===i.length-1?{name:i,extension:void 0}:{name:i.slice(0,e),extension:i.slice(e+1)}}const gbe={__proto__:null,md:"text/markdown",markdown:"text/markdown",mp4:"video/mp4",mp3:"audio/mp3",svg:"image/svg+xml",jpg:"image/jpeg",png:"image/png",webp:"image/webp",gif:"image/gif",heic:"image/heic",heif:"image/heif",yaml:"text/yaml",yml:"text/yaml",csv:"text/csv",tsv:"text/tab-separated-values",tab:"text/tab-separated-values",avi:"video/x-msvideo",mks:"video/x-matroska",mkv:"video/x-matroska",mov:"video/quicktime",dicom:"application/dicom",doc:"application/msword",msg:"application/vnd.ms-outlook",docm:"application/vnd.ms-word.document.macroenabled.12",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",dot:"application/msword",dotm:"application/vnd.ms-word.template.macroenabled.12",dotx:"application/vnd.openxmlformats-officedocument.wordprocessingml.template",xla:"application/vnd.ms-excel",xlam:"application/vnd.ms-excel.addin.macroenabled.12",xlc:"application/vnd.ms-excel",xlf:"application/x-xliff+xml",xlm:"application/vnd.ms-excel",xls:"application/vnd.ms-excel",xlsb:"application/vnd.ms-excel.sheet.binary.macroenabled.12",xlsm:"application/vnd.ms-excel.sheet.macroenabled.12",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",xlt:"application/vnd.ms-excel",xltm:"application/vnd.ms-excel.template.macroenabled.12",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template",xlw:"application/vnd.ms-excel",txt:"text/plain",text:"text/plain",conf:"text/plain",log:"text/plain",pdf:"application/pdf",zip:"application/zip","7z":"application/x-7z-compressed",rar:"application/x-rar-compressed",tar:"application/x-tar",gz:"application/gzip",dmg:"application/x-apple-diskimage"};function tOe(i){var e;if(i.type)return i.type;const n=i.name?(e=eOe(i.name).extension)==null?void 0:e.toLowerCase():null;return n&&n in gbe?gbe[n]:"application/octet-stream"}function VPt(i){return i.charCodeAt(0).toString(32)}function mbe(i){let e="";return i.replace(/[^A-Z0-9]/gi,n=>(e+=`-${VPt(n)}`,"/"))+e}function HPt(i,e){let n=e||"uppy";return typeof i.name=="string"&&(n+=`-${mbe(i.name.toLowerCase())}`),i.type!==void 0&&(n+=`-${i.type}`),i.meta&&typeof i.meta.relativePath=="string"&&(n+=`-${mbe(i.meta.relativePath.toLowerCase())}`),i.data.size!==void 0&&(n+=`-${i.data.size}`),i.data.lastModified!==void 0&&(n+=`-${i.data.lastModified}`),n}function UPt(i){return!i.isRemote||!i.remote?!1:new Set(["box","dropbox","drive","facebook","unsplash"]).has(i.remote.provider)}function qPt(i,e){if(UPt(i))return i.id;const n=tOe(i);return HPt({...i,type:n},e)}function KPt(i){if(i==null&&typeof navigator<"u"&&(i=navigator.userAgent),!i)return!0;const e=/Edge\/(\d+\.\d+)/.exec(i);if(!e)return!0;const r=e[1].split(".",2),s=parseInt(r[0],10),o=parseInt(r[1],10);return s<15||s===15&&o<15063||s>18||s===18&&o>=18218}function GPt(i,e){return e.name?e.name:i.split("/")[0]==="image"?`${i.split("/")[0]}.${i.split("/")[1]}`:"noname"}function hG(i){return i<10?`0${i}`:i.toString()}function W8(){const i=new Date,e=hG(i.getHours()),n=hG(i.getMinutes()),r=hG(i.getSeconds());return`${e}:${n}:${r}`}const XPt={debug:()=>{},warn:()=>{},error:function(){for(var i=arguments.length,e=new Array(i),n=0;n=10||a%1===0?Math.round(a):a.toFixed(1)} ${l}`}),fG}var QPt=ZPt();const E2=ql(QPt);var pG,vbe;function JPt(){if(vbe)return pG;vbe=1;function i(e,n){this.text=e=e||"",this.hasWild=~e.indexOf("*"),this.separator=n,this.parts=e.split(n)}return i.prototype.match=function(e){var n=!0,r=this.parts,s,o=r.length,a;if(typeof e=="string"||e instanceof String)if(!this.hasWild&&this.text!=e)n=!1;else{for(a=(e||"").split(this.separator),s=0;n&&s=2}return r?s(r.split(";")[0]):s},gG}var tOt=eOt();const nOt=ql(tOt),iOt={maxFileSize:null,minFileSize:null,maxTotalFileSize:null,maxNumberOfFiles:null,minNumberOfFiles:null,allowedFileTypes:null,requiredMetaFields:[]};class wp extends Error{constructor(e,n){var r;super(e),this.isRestriction=!0,this.isUserFacing=(r=n==null?void 0:n.isUserFacing)!=null?r:!0,n!=null&&n.file&&(this.file=n.file)}}class rOt{constructor(e,n){this.getI18n=n,this.getOpts=()=>{var r;const s=e();if(((r=s.restrictions)==null?void 0:r.allowedFileTypes)!=null&&!Array.isArray(s.restrictions.allowedFileTypes))throw new TypeError("`restrictions.allowedFileTypes` must be an array");return s}}validateAggregateRestrictions(e,n){const{maxTotalFileSize:r,maxNumberOfFiles:s}=this.getOpts().restrictions;if(s&&e.filter(a=>!a.isGhost).length+n.length>s)throw new wp(`${this.getI18n()("youCanOnlyUploadX",{smart_count:s})}`);if(r){const o=[...e,...n].reduce((a,l)=>{var c;return a+((c=l.size)!=null?c:0)},0);if(o>r)throw new wp(this.getI18n()("aggregateExceedsSize",{sizeAllowed:E2(r),size:E2(o)}))}}validateSingleFile(e){const{maxFileSize:n,minFileSize:r,allowedFileTypes:s}=this.getOpts().restrictions;if(s&&!s.some(l=>l.includes("/")?e.type?nOt(e.type.replace(/;.*?$/,""),l):!1:l[0]==="."&&e.extension?e.extension.toLowerCase()===l.slice(1).toLowerCase():!1)){const l=s.join(", ");throw new wp(this.getI18n()("youCanOnlyUploadFileTypes",{types:l}),{file:e})}if(n&&e.size!=null&&e.size>n){var o;throw new wp(this.getI18n()("exceedsSize",{size:E2(n),file:(o=e.name)!=null?o:this.getI18n()("unnamed")}),{file:e})}if(r&&e.size!=null&&e.size{this.validateSingleFile(r)}),this.validateAggregateRestrictions(e,n)}validateMinNumberOfFiles(e){const{minNumberOfFiles:n}=this.getOpts().restrictions;if(n&&Object.keys(e).length{const a=s?this.getFile(s.id):void 0;if(s==null||!a){this.log(`Not setting progress for a file that has been removed: ${s==null?void 0:s.id}`);return}if(a.progress.percentage===100){this.log(`Not setting progress for a file that has been already uploaded: ${s.id}`);return}const l={bytesTotal:o.bytesTotal,percentage:o.bytesTotal!=null&&Number.isFinite(o.bytesTotal)&&o.bytesTotal>0?Math.round(o.bytesUploaded/o.bytesTotal*100):void 0};a.progress.uploadStarted!=null?this.setFileState(s.id,{progress:{...a.progress,...l,bytesUploaded:o.bytesUploaded}}):this.setFileState(s.id,{progress:{...a.progress,...l}}),on(this,K0)[K0]()}}),Object.defineProperty(this,K0,{writable:!0,value:jPt(()=>on(this,LA)[LA](),500,{leading:!0,trailing:!0})}),Object.defineProperty(this,Dp,{writable:!0,value:this.updateOnlineStatus.bind(this)}),Object.defineProperty(this,DA,{writable:!0,value:new Map}),this.defaultLocale=sOt;const n={id:"uppy",autoProceed:!1,allowMultipleUploadBatches:!0,debug:!1,restrictions:iOt,meta:{},onBeforeFileAdded:(s,o)=>!Object.hasOwn(o,s.id),onBeforeUpload:s=>s,store:new JPe,logger:XPt,infoTimeout:5e3},r={...n,...e};this.opts={...r,restrictions:{...n.restrictions,...e&&e.restrictions}},e&&e.logger&&e.debug?this.log("You are using a custom `logger`, but also set `debug: true`, which uses built-in logger to output logs to console. Ignoring `debug: true` and using your custom `logger`.","warning"):e&&e.debug&&(this.opts.logger=YPt),this.log(`Using Core v${vV.VERSION}`),this.i18nInit(),this.store=this.opts.store,this.setState({...oB,plugins:{},files:{},currentUploads:{},capabilities:{uploadProgress:KPt(),individualCancellation:!0,resumableUploads:!1},meta:{...this.opts.meta},info:[]}),on(this,Rl)[Rl]=new rOt(()=>this.opts,()=>this.i18n),on(this,wA)[wA]=this.store.subscribe((s,o,a)=>{this.emit("state-update",s,o,a),this.updateAll(o)}),this.opts.debug&&typeof window<"u"&&(window[this.opts.id]=this),on(this,_G)[_G]()}emit(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;s{n.update(e)})}setState(e){this.store.setState(e)}getState(){return this.store.getState()}patchFilesState(e){const n=this.getState().files;this.setState({files:{...n,...Object.fromEntries(Object.entries(e).map(r=>{let[s,o]=r;return[s,{...n[s],...o}]}))}})}setFileState(e,n){if(!this.getState().files[e])throw new Error(`Can’t set state for ${e} (the file could have been removed)`);this.patchFilesState({[e]:n})}i18nInit(){const e=r=>this.log(`Missing i18n string: ${r}`,"error"),n=new YPe([this.defaultLocale,this.opts.locale],{onMissingKey:e});this.i18n=n.translate.bind(n),this.i18nArray=n.translateArray.bind(n),this.locale=n.locale}setOptions(e){this.opts={...this.opts,...e,restrictions:{...this.opts.restrictions,...e==null?void 0:e.restrictions}},e.meta&&this.setMeta(e.meta),this.i18nInit(),e.locale&&this.iteratePlugins(n=>{n.setOptions(e)}),this.setState(void 0)}resetProgress(){const e={percentage:0,bytesUploaded:!1,uploadComplete:!1,uploadStarted:null},n={...this.getState().files},r=Object.create(null);Object.keys(n).forEach(s=>{r[s]={...n[s],progress:{...n[s].progress,...e},tus:void 0,transloadit:void 0}}),this.setState({files:r,...oB})}clear(){const{capabilities:e,currentUploads:n}=this.getState();if(Object.keys(n).length>0&&!e.individualCancellation)throw new Error("The installed uploader plugin does not allow removing files during an upload.");this.setState({...oB,files:{}})}addPreProcessor(e){on(this,iS)[iS].add(e)}removePreProcessor(e){return on(this,iS)[iS].delete(e)}addPostProcessor(e){on(this,q0)[q0].add(e)}removePostProcessor(e){return on(this,q0)[q0].delete(e)}addUploader(e){on(this,rS)[rS].add(e)}removeUploader(e){return on(this,rS)[rS].delete(e)}setMeta(e){const n={...this.getState().meta,...e},r={...this.getState().files};Object.keys(r).forEach(s=>{r[s]={...r[s],meta:{...r[s].meta,...e}}}),this.log("Adding metadata:"),this.log(e),this.setState({meta:n,files:r})}setFileMeta(e,n){const r={...this.getState().files};if(!r[e]){this.log(`Was trying to set metadata for a file that has been removed: ${e}`);return}const s={...r[e].meta,...n};r[e]={...r[e],meta:s},this.setState({files:r})}getFile(e){return this.getState().files[e]}getFiles(){const{files:e}=this.getState();return Object.values(e)}getFilesByIds(e){return e.map(n=>this.getFile(n))}getObjectOfFilesPerState(){const{files:e,totalProgress:n,error:r}=this.getState(),s=Object.values(e),o=[],a=[],l=[],c=[],u=[],d=[],h=[],f=[],p=[];for(const g of s){const{progress:m}=g;!m.uploadComplete&&m.uploadStarted&&(o.push(g),g.isPaused||f.push(g)),m.uploadStarted||a.push(g),(m.uploadStarted||m.preprocess||m.postprocess)&&l.push(g),m.uploadStarted&&c.push(g),g.isPaused&&u.push(g),m.uploadComplete&&d.push(g),g.error&&h.push(g),(m.preprocess||m.postprocess)&&p.push(g)}return{newFiles:a,startedFiles:l,uploadStartedFiles:c,pausedFiles:u,completeFiles:d,erroredFiles:h,inProgressFiles:o,inProgressNotPausedFiles:f,processingFiles:p,isUploadStarted:c.length>0,isAllComplete:n===100&&d.length===s.length&&p.length===0,isAllErrored:!!r&&h.length===s.length,isAllPaused:o.length!==0&&u.length===o.length,isUploadInProgress:o.length>0,isSomeGhost:s.some(g=>g.isGhost)}}validateRestrictions(e,n){n===void 0&&(n=this.getFiles());try{on(this,Rl)[Rl].validate(n,[e])}catch(r){return r}return null}validateSingleFile(e){try{on(this,Rl)[Rl].validateSingleFile(e)}catch(n){return n.message}return null}validateAggregateRestrictions(e){const n=this.getFiles();try{on(this,Rl)[Rl].validateAggregateRestrictions(n,e)}catch(r){return r.message}return null}checkIfFileAlreadyExists(e){const{files:n}=this.getState();return!!(n[e]&&!n[e].isGhost)}addFile(e){on(this,CA)[CA](e);const{nextFilesState:n,validFilesToAdd:r,errors:s}=on(this,xA)[xA]([e]),o=s.filter(l=>l.isRestriction);if(on(this,Yd)[Yd](o),s.length>0)throw s[0];this.setState({files:n});const[a]=r;return this.emit("file-added",a),this.emit("files-added",r),this.log(`Added file: ${a.name}, ${a.id}, mime type: ${a.type}`),on(this,SA)[SA](),a.id}addFiles(e){on(this,CA)[CA]();const{nextFilesState:n,validFilesToAdd:r,errors:s}=on(this,xA)[xA](e),o=s.filter(l=>l.isRestriction);on(this,Yd)[Yd](o);const a=s.filter(l=>!l.isRestriction);if(a.length>0){let l=`Multiple errors occurred while adding files: `;if(a.forEach(c=>{l+=` * ${c.message}`}),this.info({message:this.i18n("addBulkFilesFailed",{smart_count:a.length}),details:l},"error",this.opts.infoTimeout),typeof AggregateError=="function")throw new AggregateError(a,l);{const c=new Error(l);throw c.errors=a,c}}this.setState({files:n}),r.forEach(l=>{this.emit("file-added",l)}),this.emit("files-added",r),r.length>5?this.log(`Added batch of ${r.length} files`):Object.values(r).forEach(l=>{this.log(`Added file: ${l.name} id: ${l.id} type: ${l.type}`)}),r.length>0&&on(this,SA)[SA]()}removeFiles(e){const{files:n,currentUploads:r}=this.getState(),s={...n},o={...r},a=Object.create(null);e.forEach(d=>{n[d]&&(a[d]=n[d],delete s[d])});function l(d){return a[d]===void 0}Object.keys(o).forEach(d=>{const h=r[d].fileIDs.filter(l);if(h.length===0){delete o[d];return}const{capabilities:f}=this.getState();if(h.length!==r[d].fileIDs.length&&!f.individualCancellation)throw new Error("The installed uploader plugin does not allow removing files during an upload.");o[d]={...r[d],fileIDs:h}});const c={currentUploads:o,files:s};Object.keys(s).length===0&&(c.allowNewUpload=!0,c.error=null,c.recoveredState=null),this.setState(c),on(this,K0)[K0]();const u=Object.keys(a);u.forEach(d=>{this.emit("file-removed",a[d])}),u.length>5?this.log(`Removed ${u.length} files`):this.log(`Removed files: ${u.join(", ")}`)}removeFile(e){this.removeFiles([e])}pauseResume(e){if(!this.getState().capabilities.resumableUploads||this.getFile(e).progress.uploadComplete)return;const n=this.getFile(e),s=!(n.isPaused||!1);return this.setFileState(e,{isPaused:s}),this.emit("upload-pause",n,s),s}pauseAll(){const e={...this.getState().files};Object.keys(e).filter(r=>!e[r].progress.uploadComplete&&e[r].progress.uploadStarted).forEach(r=>{const s={...e[r],isPaused:!0};e[r]=s}),this.setState({files:e}),this.emit("pause-all")}resumeAll(){const e={...this.getState().files};Object.keys(e).filter(r=>!e[r].progress.uploadComplete&&e[r].progress.uploadStarted).forEach(r=>{const s={...e[r],isPaused:!1,error:null};e[r]=s}),this.setState({files:e}),this.emit("resume-all")}async retryAll(){const e=await on(this,kA)[kA]();return this.emit("complete",e),e}cancelAll(){this.emit("cancel-all");const{files:e}=this.getState(),n=Object.keys(e);n.length&&this.removeFiles(n),this.setState(oB)}retryUpload(e){this.setFileState(e,{error:null,isPaused:!1}),this.emit("upload-retry",this.getFile(e));const n=on(this,E0)[E0]([e],{forceAllowNewUpload:!0});return on(this,I0)[I0](n)}logout(){this.iteratePlugins(e=>{var n;(n=e.provider)==null||n.logout==null||n.logout()})}[Symbol.for("uppy test: updateTotalProgress")](){return on(this,LA)[LA]()}updateOnlineStatus(){var e;((e=window.navigator.onLine)!=null?e:!0)?(this.emit("is-online"),this.wasOffline&&(this.emit("back-online"),this.info(this.i18n("connectedToInternet"),"success",3e3),this.wasOffline=!1)):(this.emit("is-offline"),this.info(this.i18n("noInternetConnection"),"error",0),this.wasOffline=!0)}getID(){return this.opts.id}use(e){if(typeof e!="function"){const c=`Expected a plugin class, but got ${e===null?"null":typeof e}. Please verify that the plugin was imported and spelled correctly.`;throw new TypeError(c)}for(var n=arguments.length,r=new Array(n>1?n-1:0),s=1;ss.id===e);if(r!=null)return r}}[Symbol.for("uppy test: getPlugins")](e){return on(this,Il)[Il][e]}iteratePlugins(e){Object.values(on(this,Il)[Il]).flat(1).forEach(e)}removePlugin(e){this.log(`Removing plugin ${e.id}`),this.emit("plugin-remove",e),e.uninstall&&e.uninstall();const n=on(this,Il)[Il][e.type],r=n.findIndex(a=>a.id===e.id);r!==-1&&n.splice(r,1);const o={plugins:{...this.getState().plugins,[e.id]:void 0}};this.setState(o)}destroy(){this.log(`Closing Uppy instance ${this.opts.id}: removing all files and uninstalling plugins`),this.cancelAll(),on(this,wA)[wA](),this.iteratePlugins(e=>{this.removePlugin(e)}),typeof window<"u"&&window.removeEventListener&&(window.removeEventListener("online",on(this,Dp)[Dp]),window.removeEventListener("offline",on(this,Dp)[Dp]))}hideInfo(){const{info:e}=this.getState();this.setState({info:e.slice(1)}),this.emit("info-hidden")}info(e,n,r){n===void 0&&(n="info"),r===void 0&&(r=3e3);const s=typeof e=="object";this.setState({info:[...this.getState().info,{type:n,message:s?e.message:e,details:s?e.details:null}]}),setTimeout(()=>this.hideInfo(),r),this.emit("info-visible")}log(e,n){const{logger:r}=this.opts;switch(n){case"error":r.error(e);break;case"warning":r.warn(e);break;default:r.debug(e);break}}registerRequestClient(e,n){on(this,DA)[DA].set(e,n)}getRequestClientForFile(e){if(!e.remote)throw new Error(`Tried to get RequestClient for a non-remote file ${e.id}`);const n=on(this,DA)[DA].get(e.remote.requestClientId);if(n==null)throw new Error(`requestClientId "${e.remote.requestClientId}" not registered for file "${e.id}"`);return n}restore(e){return this.log(`Core: attempting to restore upload "${e}"`),this.getState().currentUploads[e]?on(this,I0)[I0](e):(on(this,xS)[xS](e),Promise.reject(new Error("Nonexistent upload")))}[Symbol.for("uppy test: createUpload")](){return on(this,E0)[E0](...arguments)}addResultData(e,n){if(!on(this,vG)[vG](e)){this.log(`Not setting result for an upload that has been removed: ${e}`);return}const{currentUploads:r}=this.getState(),s={...r[e],result:{...r[e].result,...n}};this.setState({currentUploads:{...r,[e]:s}})}async upload(){var e;(e=on(this,Il)[Il].uploader)!=null&&e.length||this.log("No uploader type plugins are used","warning");let{files:n}=this.getState();if(on(this,AM)[AM]().length>0){const o=await on(this,kA)[kA]();if(!(this.getFiles().filter(l=>l.progress.uploadStarted==null).length>0))return this.emit("complete",o),o;({files:n}=this.getState())}const s=this.opts.onBeforeUpload(n);return s===!1?Promise.reject(new Error("Not starting the upload because onBeforeUpload returned false")):(s&&typeof s=="object"&&(n=s,this.setState({files:n})),Promise.resolve().then(()=>on(this,Rl)[Rl].validateMinNumberOfFiles(n)).catch(o=>{throw on(this,Yd)[Yd]([o]),o}).then(()=>{if(!on(this,mG)[mG](n))throw new wp(this.i18n("missingRequiredMetaField"))}).catch(o=>{throw o}).then(async()=>{const{currentUploads:o}=this.getState(),a=Object.values(o).flatMap(d=>d.fileIDs),l=[];Object.keys(n).forEach(d=>{const h=this.getFile(d);!h.progress.uploadStarted&&a.indexOf(d)===-1&&l.push(h.id)});const c=on(this,E0)[E0](l),u=await on(this,I0)[I0](c);return this.emit("complete",u),u}).catch(o=>{throw this.emit("error",o),this.log(o,"error"),o}))}}function lOt(i){for(const o of i)o.isRestriction?this.emit("restriction-failed",o.file,o):this.emit("error",o,o.file),this.log(o,"warning");const e=i.filter(o=>o.isUserFacing),n=4,r=e.slice(0,n),s=e.slice(n);r.forEach(o=>{let{message:a,details:l=""}=o;this.info({message:a,details:l},"error",this.opts.infoTimeout)}),s.length>0&&this.info({message:this.i18n("additionalRestrictionsFailed",{count:s.length})})}function cOt(i){const{missingFields:e,error:n}=on(this,Rl)[Rl].getMissingRequiredMetaFields(i);return e.length>0?(this.setFileState(i.id,{missingRequiredMetaFields:e}),this.log(n.message),this.emit("restriction-failed",i,n),!1):(e.length===0&&i.missingRequiredMetaFields&&this.setFileState(i.id,{missingRequiredMetaFields:[]}),!0)}function uOt(i){let e=!0;for(const n of Object.values(i))on(this,AO)[AO](n)||(e=!1);return e}function dOt(i){const{allowNewUpload:e}=this.getState();if(e===!1){const n=new wp(this.i18n("noMoreFilesAllowed"),{file:i});throw on(this,Yd)[Yd]([n]),n}}function hOt(i){const e=i instanceof File?{name:i.name,type:i.type,size:i.size,data:i}:i,n=tOe(e),r=GPt(n,e),s=eOe(r).extension,o=qPt(e,this.getID()),a=e.meta||{};a.name=r,a.type=n;const l=Number.isFinite(e.data.size)?e.data.size:null;return{source:e.source||"",id:o,name:r,extension:s||"",meta:{...this.getState().meta,...a},type:n,data:e.data,progress:{percentage:0,bytesUploaded:!1,bytesTotal:l,uploadComplete:!1,uploadStarted:null},size:l,isGhost:!1,isRemote:e.isRemote||!1,remote:e.remote,preview:e.preview}}function fOt(){this.opts.autoProceed&&!this.scheduledAutoProceed&&(this.scheduledAutoProceed=setTimeout(()=>{this.scheduledAutoProceed=null,this.upload().catch(i=>{i.isRestriction||this.log(i.stack||i.message||i)})},4))}function pOt(i){const{files:e}=this.getState(),n={...e},r=[],s=[];for(const l of i)try{var o;let c=on(this,_ie)[_ie](l);const u=(o=e[c.id])==null?void 0:o.isGhost;u&&(c={...e[c.id],isGhost:!1,data:l.data},this.log(`Replaced the blob in the restored ghost file: ${c.name}, ${c.id}`));const d=this.opts.onBeforeFileAdded(c,n);if(!d&&this.checkIfFileAlreadyExists(c.id)){var a;throw new wp(this.i18n("noDuplicates",{fileName:(a=c.name)!=null?a:this.i18n("unnamed")}),{file:l})}if(d===!1&&!u)throw new wp("Cannot add the file because onBeforeFileAdded returned false.",{isUserFacing:!1,file:l});typeof d=="object"&&d!==null&&(c=d),on(this,Rl)[Rl].validateSingleFile(c),n[c.id]=c,r.push(c)}catch(c){s.push(c)}try{on(this,Rl)[Rl].validateAggregateRestrictions(Object.values(e),r)}catch(l){return s.push(l),{nextFilesState:e,validFilesToAdd:[],errors:s}}return{nextFilesState:n,validFilesToAdd:r,errors:s}}function gOt(){const{files:i}=this.getState();return Object.keys(i).filter(e=>i[e].error)}async function mOt(){const i=on(this,AM)[AM](),e={...this.getState().files};if(i.forEach(r=>{e[r]={...e[r],isPaused:!1,error:null}}),this.setState({files:e,error:null}),this.emit("retry-all",this.getFilesByIds(i)),i.length===0)return{successful:[],failed:[]};const n=on(this,E0)[E0](i,{forceAllowNewUpload:!0});return on(this,I0)[I0](n)}function _Ot(){var i,e;const n=on(this,bie)[bie]();let r=null;n!=null&&(r=Math.round(n*100),r>100?r=100:r<0&&(r=0)),this.emit("progress",(i=r)!=null?i:0),this.setState({totalProgress:(e=r)!=null?e:0})}function vOt(){const e=this.getFiles().filter(l=>l.progress.uploadStarted||l.progress.preprocess||l.progress.postprocess);if(e.length===0)return 0;if(e.every(l=>l.progress.uploadComplete))return 1;const n=l=>l.progress.bytesTotal!=null&&l.progress.bytesTotal!==0,r=e.filter(n),s=e.filter(l=>!n(l));if(r.every(l=>l.progress.uploadComplete)&&s.length>0&&!s.every(l=>l.progress.uploadComplete))return null;const o=r.reduce((l,c)=>{var u;return l+((u=c.progress.bytesTotal)!=null?u:0)},0),a=r.reduce((l,c)=>l+(c.progress.bytesUploaded||0),0);return o===0?0:a/o}function bOt(){const i=(r,s,o)=>{let a=r.message||"Unknown error";r.details&&(a+=` ${r.details}`),this.setState({error:a}),s!=null&&s.id in this.getState().files&&this.setFileState(s.id,{error:a,response:o})};this.on("error",i),this.on("upload-error",(r,s,o)=>{if(i(s,r,o),typeof s=="object"&&s.message){var a;this.log(s.message,"error");const l=new Error(this.i18n("failedToUpload",{file:(a=r==null?void 0:r.name)!=null?a:""}));l.isUserFacing=!0,l.details=s.message,s.details&&(l.details+=` ${s.details}`),on(this,Yd)[Yd]([l])}else on(this,Yd)[Yd]([s])});let e=null;this.on("upload-stalled",(r,s)=>{const{message:o}=r,a=s.map(l=>l.meta.name).join(", ");e||(this.info({message:o,details:a},"warning",this.opts.infoTimeout),e=setTimeout(()=>{e=null},this.opts.infoTimeout)),this.log(`${o} ${a}`.trim(),"warning")}),this.on("upload",()=>{this.setState({error:null})});const n=r=>{const s=r.filter(a=>{const l=a!=null&&this.getFile(a.id);return l||this.log(`Not setting progress for a file that has been removed: ${a==null?void 0:a.id}`),l}),o=Object.fromEntries(s.map(a=>[a.id,{progress:{uploadStarted:Date.now(),uploadComplete:!1,bytesUploaded:0,bytesTotal:a.size}}]));this.patchFilesState(o)};this.on("upload-start",n),this.on("upload-progress",on(this,vie)[vie]),this.on("upload-success",(r,s)=>{if(r==null||!this.getFile(r.id)){this.log(`Not setting progress for a file that has been removed: ${r==null?void 0:r.id}`);return}const o=this.getFile(r.id).progress;this.setFileState(r.id,{progress:{...o,postprocess:on(this,q0)[q0].size>0?{mode:"indeterminate"}:void 0,uploadComplete:!0,percentage:100,bytesUploaded:o.bytesTotal},response:s,uploadURL:s.uploadURL,isPaused:!1}),r.size==null&&this.setFileState(r.id,{size:s.bytesUploaded||o.bytesTotal}),on(this,K0)[K0]()}),this.on("preprocess-progress",(r,s)=>{if(r==null||!this.getFile(r.id)){this.log(`Not setting progress for a file that has been removed: ${r==null?void 0:r.id}`);return}this.setFileState(r.id,{progress:{...this.getFile(r.id).progress,preprocess:s}})}),this.on("preprocess-complete",r=>{if(r==null||!this.getFile(r.id)){this.log(`Not setting progress for a file that has been removed: ${r==null?void 0:r.id}`);return}const s={...this.getState().files};s[r.id]={...s[r.id],progress:{...s[r.id].progress}},delete s[r.id].progress.preprocess,this.setState({files:s})}),this.on("postprocess-progress",(r,s)=>{if(r==null||!this.getFile(r.id)){this.log(`Not setting progress for a file that has been removed: ${r==null?void 0:r.id}`);return}this.setFileState(r.id,{progress:{...this.getState().files[r.id].progress,postprocess:s}})}),this.on("postprocess-complete",r=>{if(r==null||!this.getFile(r.id)){this.log(`Not setting progress for a file that has been removed: ${r==null?void 0:r.id}`);return}const s={...this.getState().files};s[r.id]={...s[r.id],progress:{...s[r.id].progress}},delete s[r.id].progress.postprocess,this.setState({files:s})}),this.on("restored",()=>{on(this,K0)[K0]()}),this.on("dashboard:file-edit-complete",r=>{r&&on(this,AO)[AO](r)}),typeof window<"u"&&window.addEventListener&&(window.addEventListener("online",on(this,Dp)[Dp]),window.addEventListener("offline",on(this,Dp)[Dp]),setTimeout(on(this,Dp)[Dp],3e3))}function yOt(i,e){e===void 0&&(e={});const{forceAllowNewUpload:n=!1}=e,{allowNewUpload:r,currentUploads:s}=this.getState();if(!r&&!n)throw new Error("Cannot create a new upload: already uploading.");const o=IPt();return this.emit("upload",o,this.getFilesByIds(i)),this.setState({allowNewUpload:this.opts.allowMultipleUploadBatches!==!1&&this.opts.allowMultipleUploads!==!1,currentUploads:{...s,[o]:{fileIDs:i,step:0,result:{}}}}),o}function wOt(i){const{currentUploads:e}=this.getState();return e[i]}function COt(i){const e={...this.getState().currentUploads};delete e[i],this.setState({currentUploads:e})}async function SOt(i){const e=()=>{const{currentUploads:o}=this.getState();return o[i]};let n=e();const r=[...on(this,iS)[iS],...on(this,rS)[rS],...on(this,q0)[q0]];try{for(let o=n.step||0;o{const u=this.getFile(c);u&&u.progress.postprocess&&this.emit("postprocess-complete",u)});const o=n.fileIDs.map(c=>this.getFile(c)),a=o.filter(c=>!c.error),l=o.filter(c=>c.error);this.addResultData(i,{successful:a,failed:l,uploadID:i}),n=e()}let s;return n&&(s=n.result,on(this,xS)[xS](i)),s==null&&(this.log(`Not setting result for an upload that has been removed: ${i}`),s={successful:[],failed:[],uploadID:i}),s}vV.VERSION=aOt.version;var b4,Xi,nOe,iOe,sS,ybe,rOe,sOe,oOe,Kle,yie,wie,NO={},aOe=[],xOt=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,y4=Array.isArray;function Dm(i,e){for(var n in e)i[n]=e[n];return i}function Gle(i){i&&i.parentNode&&i.parentNode.removeChild(i)}function Sn(i,e,n){var r,s,o,a={};for(o in e)o=="key"?r=e[o]:o=="ref"?s=e[o]:a[o]=e[o];if(arguments.length>2&&(a.children=arguments.length>3?b4.call(arguments,2):n),typeof i=="function"&&i.defaultProps!=null)for(o in i.defaultProps)a[o]===void 0&&(a[o]=i.defaultProps[o]);return NM(i,a,r,s,null)}function NM(i,e,n,r,s){var o={type:i,props:e,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:s??++nOe,__i:-1,__u:0};return s==null&&Xi.vnode!=null&&Xi.vnode(o),o}function vI(i){return i.children}function Sv(i,e){this.props=i,this.context=e}function bI(i,e){if(e==null)return i.__?bI(i.__,i.__i+1):null;for(var n;el&&sS.sort(sOe),i=sS.shift(),l=sS.length,i.__d&&(n=void 0,s=(r=(e=i).__v).__e,o=[],a=[],e.__P&&((n=Dm({},r)).__v=r.__v+1,Xi.vnode&&Xi.vnode(n),Xle(e.__P,n,r,e.__n,e.__P.namespaceURI,32&r.__u?[s]:null,o,s??bI(r),!!(32&r.__u),a),n.__v=r.__v,n.__.__k[n.__i]=n,dOe(o,n,a),n.__e!=s&&lOe(n)));Tj.__r=0}function cOe(i,e,n,r,s,o,a,l,c,u,d){var h,f,p,g,m,_,b=r&&r.__k||aOe,y=e.length;for(c=kOt(n,e,b,c,y),h=0;h0?NM(a.type,a.props,a.key,a.ref?a.ref:null,a.__v):a).__=i,a.__b=i.__b+1,l=null,(u=a.__i=LOt(a,n,c,h))!=-1&&(h--,(l=n[u])&&(l.__u|=2)),l==null||l.__v==null?(u==-1&&(s>d?f--:sc?f--:f++,a.__u|=4))):i.__k[o]=null;if(h)for(o=0;o(c!=null&&(2&c.__u)==0?1:0))for(s=n-1,o=n+1;s>=0||o=0){if((c=e[s])&&(2&c.__u)==0&&a==c.key&&l==c.type)return s;s--}if(o0?i:y4(i)?i.map(hOe):Dm({},i)}function DOt(i,e,n,r,s,o,a,l,c){var u,d,h,f,p,g,m,_=n.props,b=e.props,y=e.type;if(y=="svg"?s="http://www.w3.org/2000/svg":y=="math"?s="http://www.w3.org/1998/Math/MathML":s||(s="http://www.w3.org/1999/xhtml"),o!=null){for(u=0;u2&&(l.children=arguments.length>3?b4.call(arguments,2):n),NM(i.type,l,r||i.key,s||i.ref,null)}b4=aOe.slice,Xi={__e:function(i,e,n,r){for(var s,o,a;e=e.__;)if((s=e.__c)&&!s.__)try{if((o=s.constructor)&&o.getDerivedStateFromError!=null&&(s.setState(o.getDerivedStateFromError(i)),a=s.__d),s.componentDidCatch!=null&&(s.componentDidCatch(i,r||{}),a=s.__d),a)return s.__E=s}catch(l){i=l}throw i}},nOe=0,iOe=function(i){return i!=null&&i.constructor==null},Sv.prototype.setState=function(i,e){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=Dm({},this.state),typeof i=="function"&&(i=i(Dm({},n),this.props)),i&&Dm(n,i),i!=null&&this.__v&&(e&&this._sb.push(e),wbe(this))},Sv.prototype.forceUpdate=function(i){this.__v&&(this.__e=!0,i&&this.__h.push(i),wbe(this))},Sv.prototype.render=vI,sS=[],rOe=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,sOe=function(i,e){return i.__v.__b-e.__v.__b},Tj.__r=0,oOe=/(PointerCapture)$|Capture$/i,Kle=0,yie=Sbe(!1),wie=Sbe(!0);var om,bG,xbe,mOe=[],Al=Xi,kbe=Al.__b,Lbe=Al.__r,Dbe=Al.diffed,Ebe=Al.__c,Ibe=Al.unmount,Tbe=Al.__;function IOt(){for(var i;i=mOe.shift();)if(i.__P&&i.__H)try{i.__H.__h.forEach($8),i.__H.__h.forEach(Cie),i.__H.__h=[]}catch(e){i.__H.__h=[],Al.__e(e,i.__v)}}Al.__b=function(i){om=null,kbe&&kbe(i)},Al.__=function(i,e){i&&e.__k&&e.__k.__m&&(i.__m=e.__k.__m),Tbe&&Tbe(i,e)},Al.__r=function(i){Lbe&&Lbe(i);var e=(om=i.__c).__H;e&&(bG===om?(e.__h=[],om.__h=[],e.__.forEach(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(e.__h.forEach($8),e.__h.forEach(Cie),e.__h=[])),bG=om},Al.diffed=function(i){Dbe&&Dbe(i);var e=i.__c;e&&e.__H&&(e.__H.__h.length&&(mOe.push(e)!==1&&xbe===Al.requestAnimationFrame||((xbe=Al.requestAnimationFrame)||TOt)(IOt)),e.__H.__.forEach(function(n){n.u&&(n.__H=n.u),n.u=void 0})),bG=om=null},Al.__c=function(i,e){e.some(function(n){try{n.__h.forEach($8),n.__h=n.__h.filter(function(r){return!r.__||Cie(r)})}catch(r){e.some(function(s){s.__h&&(s.__h=[])}),e=[],Al.__e(r,n.__v)}}),Ebe&&Ebe(i,e)},Al.unmount=function(i){Ibe&&Ibe(i);var e,n=i.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{$8(r)}catch(s){e=s}}),n.__H=void 0,e&&Al.__e(e,n.__v))};var Rbe=typeof requestAnimationFrame=="function";function TOt(i){var e,n=function(){clearTimeout(r),Rbe&&cancelAnimationFrame(e),setTimeout(i)},r=setTimeout(n,35);Rbe&&(e=requestAnimationFrame(n))}function $8(i){var e=om,n=i.__c;typeof n=="function"&&(i.__c=void 0,n()),om=e}function Cie(i){var e=om;i.__c=i.__(),om=e}function ROt(i,e){for(var n in e)i[n]=e[n];return i}function Abe(i,e){for(var n in i)if(n!=="__source"&&!(n in e))return!0;for(var r in e)if(r!=="__source"&&i[r]!==e[r])return!0;return!1}function Nbe(i,e){this.props=i,this.context=e}(Nbe.prototype=new Sv).isPureReactComponent=!0,Nbe.prototype.shouldComponentUpdate=function(i,e){return Abe(this.props,i)||Abe(this.state,e)};var Mbe=Xi.__b;Xi.__b=function(i){i.type&&i.type.__f&&i.ref&&(i.props.ref=i.ref,i.ref=null),Mbe&&Mbe(i)};var AOt=Xi.__e;Xi.__e=function(i,e,n,r){if(i.then){for(var s,o=e;o=o.__;)if((s=o.__c)&&s.__c)return e.__e==null&&(e.__e=n.__e,e.__k=n.__k),s.__c(i,e)}AOt(i,e,n,r)};var Pbe=Xi.unmount;function _Oe(i,e,n){return i&&(i.__c&&i.__c.__H&&(i.__c.__H.__.forEach(function(r){typeof r.__c=="function"&&r.__c()}),i.__c.__H=null),(i=ROt({},i)).__c!=null&&(i.__c.__P===n&&(i.__c.__P=e),i.__c.__e=!0,i.__c=null),i.__k=i.__k&&i.__k.map(function(r){return _Oe(r,e,n)})),i}function vOe(i,e,n){return i&&n&&(i.__v=null,i.__k=i.__k&&i.__k.map(function(r){return vOe(r,e,n)}),i.__c&&i.__c.__P===e&&(i.__e&&n.appendChild(i.__e),i.__c.__e=!0,i.__c.__P=n)),i}function yG(){this.__u=0,this.o=null,this.__b=null}function bOe(i){var e=i.__.__c;return e&&e.__a&&e.__a(i)}function lB(){this.i=null,this.l=null}Xi.unmount=function(i){var e=i.__c;e&&e.__R&&e.__R(),e&&32&i.__u&&(i.type=null),Pbe&&Pbe(i)},(yG.prototype=new Sv).__c=function(i,e){var n=e.__c,r=this;r.o==null&&(r.o=[]),r.o.push(n);var s=bOe(r.__v),o=!1,a=function(){o||(o=!0,n.__R=null,s?s(l):l())};n.__R=a;var l=function(){if(!--r.__u){if(r.state.__a){var c=r.state.__a;r.__v.__k[0]=vOe(c,c.__c.__P,c.__c.__O)}var u;for(r.setState({__a:r.__b=null});u=r.o.pop();)u.forceUpdate()}};r.__u++||32&e.__u||r.setState({__a:r.__b=r.__v.__k[0]}),i.then(a,a)},yG.prototype.componentWillUnmount=function(){this.o=[]},yG.prototype.render=function(i,e){if(this.__b){if(this.__v.__k){var n=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=_Oe(this.__b,n,r.__O=r.__P)}this.__b=null}var s=e.__a&&Sn(vI,null,i.fallback);return s&&(s.__u&=-33),[Sn(vI,null,e.__a?null:i.children),s]};var Obe=function(i,e,n){if(++n[1]===n[0]&&i.l.delete(e),i.props.revealOrder&&(i.props.revealOrder[0]!=="t"||!i.l.size))for(n=i.i;n;){for(;n.length>3;)n.pop()();if(n[1](e=null,i(...n)))),e}}var EA=qOt("updateUI");class MO extends wOe{constructor(){super(...arguments),Object.defineProperty(this,EA,{writable:!0,value:void 0})}getTargetPlugin(e){let n;if(typeof(e==null?void 0:e.addTarget)=="function")n=e,n instanceof MO||console.warn(new Error("The provided plugin is not an instance of UIPlugin. This is an indication of a bug with the way Uppy is bundled.",{cause:{targetPlugin:n,UIPlugin:MO}}));else if(typeof e=="function"){const r=e;this.uppy.iteratePlugins(s=>{s instanceof r&&(n=s)})}return n}mount(e,n){const r=n.id,s=HOt(e);if(s){this.isTargetDOMEl=!0;const l=document.createElement("div");return l.classList.add("uppy-Root"),zbe(this,EA)[EA]=KOt(c=>{this.uppy.getPlugin(this.id)&&(Fbe(this.render(c,l),l),this.afterUpdate())}),this.uppy.log(`Installing ${r} to a DOM element '${e}'`),this.opts.replaceTargetContent&&(s.innerHTML=""),Fbe(this.render(this.uppy.getState(),l),l),this.el=l,s.appendChild(l),l.dir=this.opts.direction||yOe(l)||"ltr",this.onMount(),this.el}const o=this.getTargetPlugin(e);if(o)return this.uppy.log(`Installing ${r} to ${o.id}`),this.parent=o,this.el=o.addTarget(n),this.onMount(),this.el;this.uppy.log(`Not installing ${r}`);let a=`Invalid target option given to ${r}.`;throw typeof e=="function"?a+=" The given target is not a Plugin class. Please check that you're not specifying a React Component instead of a plugin. If you are using @uppy/* packages directly, make sure you have only 1 version of @uppy/core installed: run `npm ls @uppy/core` on the command line and verify that all the versions match and are deduped correctly.":a+="If you meant to target an HTML element, please make sure that the element exists. Check that the