teamcopilot 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/javascript-BwwBtsWD.js","assets/typescript-DafR78wI.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/javascript-BpsgEO5T.js","assets/typescript-BWSPzIAG.js"])))=>i.map(i=>d[i]);
2
2
  (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))i(n);new MutationObserver(n=>{for(const o of n)if(o.type==="childList")for(const r of o.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&i(r)}).observe(document,{childList:!0,subtree:!0});function t(n){const o={};return n.integrity&&(o.integrity=n.integrity),n.referrerPolicy&&(o.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?o.credentials="include":n.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function i(n){if(n.ep)return;n.ep=!0;const o=t(n);fetch(n.href,o)}})();function bz(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}var WF={exports:{}},f0={};var RZ;function R_e(){if(RZ)return f0;RZ=1;var s=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function t(i,n,o){var r=null;if(o!==void 0&&(r=""+o),n.key!==void 0&&(r=""+n.key),"key"in n){o={};for(var a in n)a!=="key"&&(o[a]=n[a])}else o=n;return n=o.ref,{$$typeof:s,type:i,key:r,ref:n!==void 0?n:null,props:o}}return f0.Fragment=e,f0.jsx=t,f0.jsxs=t,f0}var MZ;function M_e(){return MZ||(MZ=1,WF.exports=R_e()),WF.exports}var D=M_e(),HF={exports:{}},Si={};var AZ;function A_e(){if(AZ)return Si;AZ=1;var s=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),n=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),r=Symbol.for("react.context"),a=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),c=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),u=Symbol.for("react.activity"),f=Symbol.iterator;function p(Y){return Y===null||typeof Y!="object"?null:(Y=f&&Y[f]||Y["@@iterator"],typeof Y=="function"?Y:null)}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b=Object.assign,w={};function y(Y,me,j){this.props=Y,this.context=me,this.refs=w,this.updater=j||m}y.prototype.isReactComponent={},y.prototype.setState=function(Y,me){if(typeof Y!="object"&&typeof Y!="function"&&Y!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,Y,me,"setState")},y.prototype.forceUpdate=function(Y){this.updater.enqueueForceUpdate(this,Y,"forceUpdate")};function S(){}S.prototype=y.prototype;function x(Y,me,j){this.props=Y,this.context=me,this.refs=w,this.updater=j||m}var L=x.prototype=new S;L.constructor=x,b(L,y.prototype),L.isPureReactComponent=!0;var N=Array.isArray;function I(){}var T={H:null,A:null,T:null,S:null},A=Object.prototype.hasOwnProperty;function P(Y,me,j){var Te=j.ref;return{$$typeof:s,type:Y,key:me,ref:Te!==void 0?Te:null,props:j}}function F(Y,me){return P(Y.type,me,Y.props)}function H(Y){return typeof Y=="object"&&Y!==null&&Y.$$typeof===s}function z(Y){var me={"=":"=0",":":"=2"};return"$"+Y.replace(/[=:]/g,function(j){return me[j]})}var ne=/\/+/g;function G(Y,me){return typeof Y=="object"&&Y!==null&&Y.key!=null?z(""+Y.key):me.toString(36)}function ie(Y){switch(Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason;default:switch(typeof Y.status=="string"?Y.then(I,I):(Y.status="pending",Y.then(function(me){Y.status==="pending"&&(Y.status="fulfilled",Y.value=me)},function(me){Y.status==="pending"&&(Y.status="rejected",Y.reason=me)})),Y.status){case"fulfilled":return Y.value;case"rejected":throw Y.reason}}throw Y}function Z(Y,me,j,Te,Ue){var Xe=typeof Y;(Xe==="undefined"||Xe==="boolean")&&(Y=null);var ht=!1;if(Y===null)ht=!0;else switch(Xe){case"bigint":case"string":case"number":ht=!0;break;case"object":switch(Y.$$typeof){case s:case e:ht=!0;break;case d:return ht=Y._init,Z(ht(Y._payload),me,j,Te,Ue)}}if(ht)return Ue=Ue(Y),ht=Te===""?"."+G(Y,0):Te,N(Ue)?(j="",ht!=null&&(j=ht.replace(ne,"$&/")+"/"),Z(Ue,me,j,"",function(St){return St})):Ue!=null&&(H(Ue)&&(Ue=F(Ue,j+(Ue.key==null||Y&&Y.key===Ue.key?"":(""+Ue.key).replace(ne,"$&/")+"/")+ht)),me.push(Ue)),1;ht=0;var Lt=Te===""?".":Te+":";if(N(Y))for(var Pe=0;Pe<Y.length;Pe++)Te=Y[Pe],Xe=Lt+G(Te,Pe),ht+=Z(Te,me,j,Xe,Ue);else if(Pe=p(Y),typeof Pe=="function")for(Y=Pe.call(Y),Pe=0;!(Te=Y.next()).done;)Te=Te.value,Xe=Lt+G(Te,Pe++),ht+=Z(Te,me,j,Xe,Ue);else if(Xe==="object"){if(typeof Y.then=="function")return Z(ie(Y),me,j,Te,Ue);throw me=String(Y),Error("Objects are not valid as a React child (found: "+(me==="[object Object]"?"object with keys {"+Object.keys(Y).join(", ")+"}":me)+"). If you meant to render a collection of children, use an array instead.")}return ht}function Q(Y,me,j){if(Y==null)return Y;var Te=[],Ue=0;return Z(Y,Te,"","",function(Xe){return me.call(j,Xe,Ue++)}),Te}function oe(Y){if(Y._status===-1){var me=Y._result;me=me(),me.then(function(j){(Y._status===0||Y._status===-1)&&(Y._status=1,Y._result=j)},function(j){(Y._status===0||Y._status===-1)&&(Y._status=2,Y._result=j)}),Y._status===-1&&(Y._status=0,Y._result=me)}if(Y._status===1)return Y._result.default;throw Y._result}var ue=typeof reportError=="function"?reportError:function(Y){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var me=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof Y=="object"&&Y!==null&&typeof Y.message=="string"?String(Y.message):String(Y),error:Y});if(!window.dispatchEvent(me))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",Y);return}console.error(Y)},q={map:Q,forEach:function(Y,me,j){Q(Y,function(){me.apply(this,arguments)},j)},count:function(Y){var me=0;return Q(Y,function(){me++}),me},toArray:function(Y){return Q(Y,function(me){return me})||[]},only:function(Y){if(!H(Y))throw Error("React.Children.only expected to receive a single React element child.");return Y}};return Si.Activity=u,Si.Children=q,Si.Component=y,Si.Fragment=t,Si.Profiler=n,Si.PureComponent=x,Si.StrictMode=i,Si.Suspense=l,Si.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,Si.__COMPILER_RUNTIME={__proto__:null,c:function(Y){return T.H.useMemoCache(Y)}},Si.cache=function(Y){return function(){return Y.apply(null,arguments)}},Si.cacheSignal=function(){return null},Si.cloneElement=function(Y,me,j){if(Y==null)throw Error("The argument must be a React element, but you passed "+Y+".");var Te=b({},Y.props),Ue=Y.key;if(me!=null)for(Xe in me.key!==void 0&&(Ue=""+me.key),me)!A.call(me,Xe)||Xe==="key"||Xe==="__self"||Xe==="__source"||Xe==="ref"&&me.ref===void 0||(Te[Xe]=me[Xe]);var Xe=arguments.length-2;if(Xe===1)Te.children=j;else if(1<Xe){for(var ht=Array(Xe),Lt=0;Lt<Xe;Lt++)ht[Lt]=arguments[Lt+2];Te.children=ht}return P(Y.type,Ue,Te)},Si.createContext=function(Y){return Y={$$typeof:r,_currentValue:Y,_currentValue2:Y,_threadCount:0,Provider:null,Consumer:null},Y.Provider=Y,Y.Consumer={$$typeof:o,_context:Y},Y},Si.createElement=function(Y,me,j){var Te,Ue={},Xe=null;if(me!=null)for(Te in me.key!==void 0&&(Xe=""+me.key),me)A.call(me,Te)&&Te!=="key"&&Te!=="__self"&&Te!=="__source"&&(Ue[Te]=me[Te]);var ht=arguments.length-2;if(ht===1)Ue.children=j;else if(1<ht){for(var Lt=Array(ht),Pe=0;Pe<ht;Pe++)Lt[Pe]=arguments[Pe+2];Ue.children=Lt}if(Y&&Y.defaultProps)for(Te in ht=Y.defaultProps,ht)Ue[Te]===void 0&&(Ue[Te]=ht[Te]);return P(Y,Xe,Ue)},Si.createRef=function(){return{current:null}},Si.forwardRef=function(Y){return{$$typeof:a,render:Y}},Si.isValidElement=H,Si.lazy=function(Y){return{$$typeof:d,_payload:{_status:-1,_result:Y},_init:oe}},Si.memo=function(Y,me){return{$$typeof:c,type:Y,compare:me===void 0?null:me}},Si.startTransition=function(Y){var me=T.T,j={};T.T=j;try{var Te=Y(),Ue=T.S;Ue!==null&&Ue(j,Te),typeof Te=="object"&&Te!==null&&typeof Te.then=="function"&&Te.then(I,ue)}catch(Xe){ue(Xe)}finally{me!==null&&j.types!==null&&(me.types=j.types),T.T=me}},Si.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},Si.use=function(Y){return T.H.use(Y)},Si.useActionState=function(Y,me,j){return T.H.useActionState(Y,me,j)},Si.useCallback=function(Y,me){return T.H.useCallback(Y,me)},Si.useContext=function(Y){return T.H.useContext(Y)},Si.useDebugValue=function(){},Si.useDeferredValue=function(Y,me){return T.H.useDeferredValue(Y,me)},Si.useEffect=function(Y,me){return T.H.useEffect(Y,me)},Si.useEffectEvent=function(Y){return T.H.useEffectEvent(Y)},Si.useId=function(){return T.H.useId()},Si.useImperativeHandle=function(Y,me,j){return T.H.useImperativeHandle(Y,me,j)},Si.useInsertionEffect=function(Y,me){return T.H.useInsertionEffect(Y,me)},Si.useLayoutEffect=function(Y,me){return T.H.useLayoutEffect(Y,me)},Si.useMemo=function(Y,me){return T.H.useMemo(Y,me)},Si.useOptimistic=function(Y,me){return T.H.useOptimistic(Y,me)},Si.useReducer=function(Y,me,j){return T.H.useReducer(Y,me,j)},Si.useRef=function(Y){return T.H.useRef(Y)},Si.useState=function(Y){return T.H.useState(Y)},Si.useSyncExternalStore=function(Y,me,j){return T.H.useSyncExternalStore(Y,me,j)},Si.useTransition=function(){return T.H.useTransition()},Si.version="19.2.4",Si}var OZ;function vz(){return OZ||(OZ=1,HF.exports=A_e()),HF.exports}var B=vz();const ys=bz(B);var VF={exports:{}},g0={},zF={exports:{}},UF={};var PZ;function O_e(){return PZ||(PZ=1,(function(s){function e(Z,Q){var oe=Z.length;Z.push(Q);e:for(;0<oe;){var ue=oe-1>>>1,q=Z[ue];if(0<n(q,Q))Z[ue]=Q,Z[oe]=q,oe=ue;else break e}}function t(Z){return Z.length===0?null:Z[0]}function i(Z){if(Z.length===0)return null;var Q=Z[0],oe=Z.pop();if(oe!==Q){Z[0]=oe;e:for(var ue=0,q=Z.length,Y=q>>>1;ue<Y;){var me=2*(ue+1)-1,j=Z[me],Te=me+1,Ue=Z[Te];if(0>n(j,oe))Te<q&&0>n(Ue,j)?(Z[ue]=Ue,Z[Te]=oe,ue=Te):(Z[ue]=j,Z[me]=oe,ue=me);else if(Te<q&&0>n(Ue,oe))Z[ue]=Ue,Z[Te]=oe,ue=Te;else break e}}return Q}function n(Z,Q){var oe=Z.sortIndex-Q.sortIndex;return oe!==0?oe:Z.id-Q.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;s.unstable_now=function(){return o.now()}}else{var r=Date,a=r.now();s.unstable_now=function(){return r.now()-a}}var l=[],c=[],d=1,u=null,f=3,p=!1,m=!1,b=!1,w=!1,y=typeof setTimeout=="function"?setTimeout:null,S=typeof clearTimeout=="function"?clearTimeout:null,x=typeof setImmediate<"u"?setImmediate:null;function L(Z){for(var Q=t(c);Q!==null;){if(Q.callback===null)i(c);else if(Q.startTime<=Z)i(c),Q.sortIndex=Q.expirationTime,e(l,Q);else break;Q=t(c)}}function N(Z){if(b=!1,L(Z),!m)if(t(l)!==null)m=!0,I||(I=!0,z());else{var Q=t(c);Q!==null&&ie(N,Q.startTime-Z)}}var I=!1,T=-1,A=5,P=-1;function F(){return w?!0:!(s.unstable_now()-P<A)}function H(){if(w=!1,I){var Z=s.unstable_now();P=Z;var Q=!0;try{e:{m=!1,b&&(b=!1,S(T),T=-1),p=!0;var oe=f;try{t:{for(L(Z),u=t(l);u!==null&&!(u.expirationTime>Z&&F());){var ue=u.callback;if(typeof ue=="function"){u.callback=null,f=u.priorityLevel;var q=ue(u.expirationTime<=Z);if(Z=s.unstable_now(),typeof q=="function"){u.callback=q,L(Z),Q=!0;break t}u===t(l)&&i(l),L(Z)}else i(l);u=t(l)}if(u!==null)Q=!0;else{var Y=t(c);Y!==null&&ie(N,Y.startTime-Z),Q=!1}}break e}finally{u=null,f=oe,p=!1}Q=void 0}}finally{Q?z():I=!1}}}var z;if(typeof x=="function")z=function(){x(H)};else if(typeof MessageChannel<"u"){var ne=new MessageChannel,G=ne.port2;ne.port1.onmessage=H,z=function(){G.postMessage(null)}}else z=function(){y(H,0)};function ie(Z,Q){T=y(function(){Z(s.unstable_now())},Q)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(Z){Z.callback=null},s.unstable_forceFrameRate=function(Z){0>Z||125<Z?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):A=0<Z?Math.floor(1e3/Z):5},s.unstable_getCurrentPriorityLevel=function(){return f},s.unstable_next=function(Z){switch(f){case 1:case 2:case 3:var Q=3;break;default:Q=f}var oe=f;f=Q;try{return Z()}finally{f=oe}},s.unstable_requestPaint=function(){w=!0},s.unstable_runWithPriority=function(Z,Q){switch(Z){case 1:case 2:case 3:case 4:case 5:break;default:Z=3}var oe=f;f=Z;try{return Q()}finally{f=oe}},s.unstable_scheduleCallback=function(Z,Q,oe){var ue=s.unstable_now();switch(typeof oe=="object"&&oe!==null?(oe=oe.delay,oe=typeof oe=="number"&&0<oe?ue+oe:ue):oe=ue,Z){case 1:var q=-1;break;case 2:q=250;break;case 5:q=1073741823;break;case 4:q=1e4;break;default:q=5e3}return q=oe+q,Z={id:d++,callback:Q,priorityLevel:Z,startTime:oe,expirationTime:q,sortIndex:-1},oe>ue?(Z.sortIndex=oe,e(c,Z),t(l)===null&&Z===t(c)&&(b?(S(T),T=-1):b=!0,ie(N,oe-ue))):(Z.sortIndex=q,e(l,Z),m||p||(m=!0,I||(I=!0,z()))),Z},s.unstable_shouldYield=F,s.unstable_wrapCallback=function(Z){var Q=f;return function(){var oe=f;f=Q;try{return Z.apply(this,arguments)}finally{f=oe}}}})(UF)),UF}var FZ;function P_e(){return FZ||(FZ=1,zF.exports=O_e()),zF.exports}var jF={exports:{}},kr={};var BZ;function F_e(){if(BZ)return kr;BZ=1;var s=vz();function e(l){var c="https://react.dev/errors/"+l;if(1<arguments.length){c+="?args[]="+encodeURIComponent(arguments[1]);for(var d=2;d<arguments.length;d++)c+="&args[]="+encodeURIComponent(arguments[d])}return"Minified React error #"+l+"; visit "+c+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function t(){}var i={d:{f:t,r:function(){throw Error(e(522))},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},n=Symbol.for("react.portal");function o(l,c,d){var u=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:n,key:u==null?null:""+u,children:l,containerInfo:c,implementation:d}}var r=s.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function a(l,c){if(l==="font")return"";if(typeof c=="string")return c==="use-credentials"?c:""}return kr.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,kr.createPortal=function(l,c){var d=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!c||c.nodeType!==1&&c.nodeType!==9&&c.nodeType!==11)throw Error(e(299));return o(l,c,null,d)},kr.flushSync=function(l){var c=r.T,d=i.p;try{if(r.T=null,i.p=2,l)return l()}finally{r.T=c,i.p=d,i.d.f()}},kr.preconnect=function(l,c){typeof l=="string"&&(c?(c=c.crossOrigin,c=typeof c=="string"?c==="use-credentials"?c:"":void 0):c=null,i.d.C(l,c))},kr.prefetchDNS=function(l){typeof l=="string"&&i.d.D(l)},kr.preinit=function(l,c){if(typeof l=="string"&&c&&typeof c.as=="string"){var d=c.as,u=a(d,c.crossOrigin),f=typeof c.integrity=="string"?c.integrity:void 0,p=typeof c.fetchPriority=="string"?c.fetchPriority:void 0;d==="style"?i.d.S(l,typeof c.precedence=="string"?c.precedence:void 0,{crossOrigin:u,integrity:f,fetchPriority:p}):d==="script"&&i.d.X(l,{crossOrigin:u,integrity:f,fetchPriority:p,nonce:typeof c.nonce=="string"?c.nonce:void 0})}},kr.preinitModule=function(l,c){if(typeof l=="string")if(typeof c=="object"&&c!==null){if(c.as==null||c.as==="script"){var d=a(c.as,c.crossOrigin);i.d.M(l,{crossOrigin:d,integrity:typeof c.integrity=="string"?c.integrity:void 0,nonce:typeof c.nonce=="string"?c.nonce:void 0})}}else c==null&&i.d.M(l)},kr.preload=function(l,c){if(typeof l=="string"&&typeof c=="object"&&c!==null&&typeof c.as=="string"){var d=c.as,u=a(d,c.crossOrigin);i.d.L(l,d,{crossOrigin:u,integrity:typeof c.integrity=="string"?c.integrity:void 0,nonce:typeof c.nonce=="string"?c.nonce:void 0,type:typeof c.type=="string"?c.type:void 0,fetchPriority:typeof c.fetchPriority=="string"?c.fetchPriority:void 0,referrerPolicy:typeof c.referrerPolicy=="string"?c.referrerPolicy:void 0,imageSrcSet:typeof c.imageSrcSet=="string"?c.imageSrcSet:void 0,imageSizes:typeof c.imageSizes=="string"?c.imageSizes:void 0,media:typeof c.media=="string"?c.media:void 0})}},kr.preloadModule=function(l,c){if(typeof l=="string")if(c){var d=a(c.as,c.crossOrigin);i.d.m(l,{as:typeof c.as=="string"&&c.as!=="script"?c.as:void 0,crossOrigin:d,integrity:typeof c.integrity=="string"?c.integrity:void 0})}else i.d.m(l)},kr.requestFormReset=function(l){i.d.r(l)},kr.unstable_batchedUpdates=function(l,c){return l(c)},kr.useFormState=function(l,c,d){return r.H.useFormState(l,c,d)},kr.useFormStatus=function(){return r.H.useHostTransitionStatus()},kr.version="19.2.4",kr}var WZ;function B_e(){if(WZ)return jF.exports;WZ=1;function s(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(e){console.error(e)}}return s(),jF.exports=F_e(),jF.exports}var HZ;function W_e(){if(HZ)return g0;HZ=1;var s=P_e(),e=vz(),t=B_e();function i(h){var g="https://react.dev/errors/"+h;if(1<arguments.length){g+="?args[]="+encodeURIComponent(arguments[1]);for(var _=2;_<arguments.length;_++)g+="&args[]="+encodeURIComponent(arguments[_])}return"Minified React error #"+h+"; visit "+g+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function n(h){return!(!h||h.nodeType!==1&&h.nodeType!==9&&h.nodeType!==11)}function o(h){var g=h,_=h;if(h.alternate)for(;g.return;)g=g.return;else{h=g;do g=h,(g.flags&4098)!==0&&(_=g.return),h=g.return;while(h)}return g.tag===3?_:null}function r(h){if(h.tag===13){var g=h.memoizedState;if(g===null&&(h=h.alternate,h!==null&&(g=h.memoizedState)),g!==null)return g.dehydrated}return null}function a(h){if(h.tag===31){var g=h.memoizedState;if(g===null&&(h=h.alternate,h!==null&&(g=h.memoizedState)),g!==null)return g.dehydrated}return null}function l(h){if(o(h)!==h)throw Error(i(188))}function c(h){var g=h.alternate;if(!g){if(g=o(h),g===null)throw Error(i(188));return g!==h?null:h}for(var _=h,C=g;;){var k=_.return;if(k===null)break;var E=k.alternate;if(E===null){if(C=k.return,C!==null){_=C;continue}break}if(k.child===E.child){for(E=k.child;E;){if(E===_)return l(k),h;if(E===C)return l(k),g;E=E.sibling}throw Error(i(188))}if(_.return!==C.return)_=k,C=E;else{for(var O=!1,$=k.child;$;){if($===_){O=!0,_=k,C=E;break}if($===C){O=!0,C=k,_=E;break}$=$.sibling}if(!O){for($=E.child;$;){if($===_){O=!0,_=E,C=k;break}if($===C){O=!0,C=E,_=k;break}$=$.sibling}if(!O)throw Error(i(189))}}if(_.alternate!==C)throw Error(i(190))}if(_.tag!==3)throw Error(i(188));return _.stateNode.current===_?h:g}function d(h){var g=h.tag;if(g===5||g===26||g===27||g===6)return h;for(h=h.child;h!==null;){if(g=d(h),g!==null)return g;h=h.sibling}return null}var u=Object.assign,f=Symbol.for("react.element"),p=Symbol.for("react.transitional.element"),m=Symbol.for("react.portal"),b=Symbol.for("react.fragment"),w=Symbol.for("react.strict_mode"),y=Symbol.for("react.profiler"),S=Symbol.for("react.consumer"),x=Symbol.for("react.context"),L=Symbol.for("react.forward_ref"),N=Symbol.for("react.suspense"),I=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),A=Symbol.for("react.lazy"),P=Symbol.for("react.activity"),F=Symbol.for("react.memo_cache_sentinel"),H=Symbol.iterator;function z(h){return h===null||typeof h!="object"?null:(h=H&&h[H]||h["@@iterator"],typeof h=="function"?h:null)}var ne=Symbol.for("react.client.reference");function G(h){if(h==null)return null;if(typeof h=="function")return h.$$typeof===ne?null:h.displayName||h.name||null;if(typeof h=="string")return h;switch(h){case b:return"Fragment";case y:return"Profiler";case w:return"StrictMode";case N:return"Suspense";case I:return"SuspenseList";case P:return"Activity"}if(typeof h=="object")switch(h.$$typeof){case m:return"Portal";case x:return h.displayName||"Context";case S:return(h._context.displayName||"Context")+".Consumer";case L:var g=h.render;return h=h.displayName,h||(h=g.displayName||g.name||"",h=h!==""?"ForwardRef("+h+")":"ForwardRef"),h;case T:return g=h.displayName||null,g!==null?g:G(h.type)||"Memo";case A:g=h._payload,h=h._init;try{return G(h(g))}catch{}}return null}var ie=Array.isArray,Z=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Q=t.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,oe={pending:!1,data:null,method:null,action:null},ue=[],q=-1;function Y(h){return{current:h}}function me(h){0>q||(h.current=ue[q],ue[q]=null,q--)}function j(h,g){q++,ue[q]=h.current,h.current=g}var Te=Y(null),Ue=Y(null),Xe=Y(null),ht=Y(null);function Lt(h,g){switch(j(Xe,g),j(Ue,h),j(Te,null),g.nodeType){case 9:case 11:h=(h=g.documentElement)&&(h=h.namespaceURI)?tZ(h):0;break;default:if(h=g.tagName,g=g.namespaceURI)g=tZ(g),h=iZ(g,h);else switch(h){case"svg":h=1;break;case"math":h=2;break;default:h=0}}me(Te),j(Te,h)}function Pe(){me(Te),me(Ue),me(Xe)}function St(h){h.memoizedState!==null&&j(ht,h);var g=Te.current,_=iZ(g,h.type);g!==_&&(j(Ue,h),j(Te,_))}function Dt(h){Ue.current===h&&(me(Te),me(Ue)),ht.current===h&&(me(ht),c0._currentValue=oe)}var Ut,xi;function Oi(h){if(Ut===void 0)try{throw Error()}catch(_){var g=_.stack.trim().match(/\n( *(at )?)/);Ut=g&&g[1]||"",xi=-1<_.stack.indexOf(`
3
3
  at`)?" (<anonymous>)":-1<_.stack.indexOf("@")?"@unknown:0:0":""}return`
4
4
  `+Ut+h+xi}var Ni=!1;function Pn(h,g){if(!h||Ni)return"";Ni=!0;var _=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var C={DetermineComponentFrameRoot:function(){try{if(g){var $e=function(){throw Error()};if(Object.defineProperty($e.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct($e,[])}catch(Oe){var Ie=Oe}Reflect.construct(h,[],$e)}else{try{$e.call()}catch(Oe){Ie=Oe}h.call($e.prototype)}}else{try{throw Error()}catch(Oe){Ie=Oe}($e=h())&&typeof $e.catch=="function"&&$e.catch(function(){})}}catch(Oe){if(Oe&&Ie&&typeof Oe.stack=="string")return[Oe.stack,Ie.stack]}return[null,null]}};C.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var k=Object.getOwnPropertyDescriptor(C.DetermineComponentFrameRoot,"name");k&&k.configurable&&Object.defineProperty(C.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var E=C.DetermineComponentFrameRoot(),O=E[0],$=E[1];if(O&&$){var le=O.split(`
@@ -714,7 +714,7 @@ ${e.toString()}`}}class CR{constructor(e=new my,t=!1,i,n=d7e){this._services=e,t
714
714
  `:`\r
715
715
  `),await this._clipboardService.writeText(x)})),i.getOption(92)||w.push(new ha("diff.inline.revertChange",v("diff.inline.revertChange.label","Revert this change"),void 0,!0,async()=>{this._editor.revert(this._diff)})),w},autoSelectFirstItem:!0})};this._register(On(this._diffActions,"mousedown",m=>{if(!m.leftButton)return;const{top:b,height:w}=Xn(this._diffActions),y=Math.floor(d/3);m.preventDefault(),p(m.posx,b+w+y)})),this._register(i.onMouseMove(m=>{(m.target.type===8||m.target.type===5)&&m.target.detail.viewZoneId===this._getViewZoneId()?(u=this._updateLightBulbPosition(this._marginDomNode,m.event.browserEvent.y,d),this.visibility=!0):this.visibility=!1})),this._register(i.onMouseDown(m=>{m.event.leftButton&&(m.target.type===8||m.target.type===5)&&m.target.detail.viewZoneId===this._getViewZoneId()&&(m.event.preventDefault(),u=this._updateLightBulbPosition(this._marginDomNode,m.event.browserEvent.y,d),p(m.event.posx,m.event.posy+d))}))}_updateLightBulbPosition(e,t,i){const{top:n}=Xn(e),o=t-n,r=Math.floor(o/i),a=r*i;if(this._diffActions.style.top=`${a}px`,this._viewLineCounts){let l=0;for(let c=0;c<this._viewLineCounts.length;c++)if(l+=this._viewLineCounts[c],r<l)return c}return r}}const xie=kf("diffEditorWidget",{createHTML:s=>s});function GHe(s,e,t,i){co(i,e.fontInfo);const n=t.length>0,o=new sy(1e4);let r=0,a=0;const l=[];for(let f=0;f<s.lineTokens.length;f++){const p=f+1,m=s.lineTokens[f],b=s.lineBreakData[f],w=ur.filter(t,p,1,Number.MAX_SAFE_INTEGER);if(b){let y=0;for(const S of b.breakOffsets){const x=m.sliceAndInflate(y,S,0);r=Math.max(r,Lie(a,x,ur.extractWrapped(w,y,S),n,s.mightContainNonBasicASCII,s.mightContainRTL,e,o)),a++,y=S}l.push(b.breakOffsets.length)}else l.push(1),r=Math.max(r,Lie(a,m,w,n,s.mightContainNonBasicASCII,s.mightContainRTL,e,o)),a++}r+=e.scrollBeyondLastColumn;const c=o.build(),d=xie?xie.createHTML(c):c;i.innerHTML=d;const u=r*e.typicalHalfwidthCharacterWidth;return{heightInLines:a,minWidthInPx:u,viewLineCounts:l}}class YHe{constructor(e,t,i,n){this.lineTokens=e,this.lineBreakData=t,this.mightContainNonBasicASCII=i,this.mightContainRTL=n}}class T${static fromEditor(e){const t=e.getOptions(),i=t.get(50),n=t.get(146);return new T$(e.getModel()?.getOptions().tabSize||0,i,t.get(33),i.typicalHalfwidthCharacterWidth,t.get(105),t.get(67),n.decorationsWidth,t.get(118),t.get(100),t.get(95),t.get(51))}constructor(e,t,i,n,o,r,a,l,c,d,u){this.tabSize=e,this.fontInfo=t,this.disableMonospaceOptimizations=i,this.typicalHalfwidthCharacterWidth=n,this.scrollBeyondLastColumn=o,this.lineHeight=r,this.lineDecorationsWidth=a,this.stopRenderingLineAfter=l,this.renderWhitespace=c,this.renderControlCharacters=d,this.fontLigatures=u}}function Lie(s,e,t,i,n,o,r,a){a.appendString('<div class="view-line'),i||a.appendString(" char-delete"),a.appendString('" style="top:'),a.appendString(String(s*r.lineHeight)),a.appendString('px;width:1000000px;">');const l=e.getLineContent(),c=ol.isBasicASCII(l,n),d=ol.containsRTL(l,c,o),u=Jk(new $p(r.fontInfo.isMonospace&&!r.disableMonospaceOptimizations,r.fontInfo.canUseHalfwidthRightwardsArrow,l,!1,c,d,0,e,t,r.tabSize,0,r.fontInfo.spaceWidth,r.fontInfo.middotWidth,r.fontInfo.wsmiddotWidth,r.stopRenderingLineAfter,r.renderWhitespace,r.renderControlCharacters,r.fontLigatures!==mp.OFF,null),a);return a.appendString("</div>"),u.characterMapping.getHorizontalOffset(u.characterMapping.length)}var ZHe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},kie=function(s,e){return function(t,i){e(t,i,s)}};let mW=class extends se{constructor(e,t,i,n,o,r,a,l,c,d){super(),this._targetWindow=e,this._editors=t,this._diffModel=i,this._options=n,this._diffEditorWidget=o,this._canIgnoreViewZoneUpdateEvent=r,this._origViewZonesToIgnore=a,this._modViewZonesToIgnore=l,this._clipboardService=c,this._contextMenuService=d,this._originalTopPadding=Bt(this,0),this._originalScrollOffset=Bt(this,0),this._originalScrollOffsetAnimated=vie(this._targetWindow,this._originalScrollOffset,this._store),this._modifiedTopPadding=Bt(this,0),this._modifiedScrollOffset=Bt(this,0),this._modifiedScrollOffsetAnimated=vie(this._targetWindow,this._modifiedScrollOffset,this._store);const u=Bt("invalidateAlignmentsState",0),f=this._register(new Ai(()=>{u.set(u.get()+1,void 0)},0));this._register(this._editors.original.onDidChangeViewZones(x=>{this._canIgnoreViewZoneUpdateEvent()||f.schedule()})),this._register(this._editors.modified.onDidChangeViewZones(x=>{this._canIgnoreViewZoneUpdateEvent()||f.schedule()})),this._register(this._editors.original.onDidChangeConfiguration(x=>{(x.hasChanged(147)||x.hasChanged(67))&&f.schedule()})),this._register(this._editors.modified.onDidChangeConfiguration(x=>{(x.hasChanged(147)||x.hasChanged(67))&&f.schedule()}));const p=this._diffModel.map(x=>x?ki(this,x.model.original.onDidChangeTokens,()=>x.model.original.tokenization.backgroundTokenizationState===2):void 0).map((x,L)=>x?.read(L)),m=Je(x=>{const L=this._diffModel.read(x),N=L?.diff.read(x);if(!L||!N)return null;u.read(x);const T=this._options.renderSideBySide.read(x);return Die(this._editors.original,this._editors.modified,N.mappings,this._origViewZonesToIgnore,this._modViewZonesToIgnore,T)}),b=Je(x=>{const L=this._diffModel.read(x)?.movedTextToCompare.read(x);if(!L)return null;u.read(x);const N=L.changes.map(I=>new hhe(I));return Die(this._editors.original,this._editors.modified,N,this._origViewZonesToIgnore,this._modViewZonesToIgnore,!0)});function w(){const x=document.createElement("div");return x.className="diagonal-fill",x}const y=this._register(new _e);this.viewZones=zp(this,(x,L)=>{y.clear();const N=m.read(x)||[],I=[],T=[],A=this._modifiedTopPadding.read(x);A>0&&T.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:A,showInHiddenAreas:!0,suppressMouseDown:!0});const P=this._originalTopPadding.read(x);P>0&&I.push({afterLineNumber:0,domNode:document.createElement("div"),heightInPx:P,showInHiddenAreas:!0,suppressMouseDown:!0});const F=this._options.renderSideBySide.read(x),H=F?void 0:this._editors.modified._getViewModel()?.createLineBreaksComputer();if(H){const ue=this._editors.original.getModel();for(const q of N)if(q.diff)for(let Y=q.originalRange.startLineNumber;Y<q.originalRange.endLineNumberExclusive;Y++){if(Y>ue.getLineCount())return{orig:I,mod:T};H?.addRequest(ue.getLineContent(Y),null,null)}}const z=H?.finalize()??[];let ne=0;const G=this._editors.modified.getOption(67),ie=this._diffModel.read(x)?.movedTextToCompare.read(x),Z=this._editors.original.getModel()?.mightContainNonBasicASCII()??!1,Q=this._editors.original.getModel()?.mightContainRTL()??!1,oe=T$.fromEditor(this._editors.modified);for(const ue of N)if(ue.diff&&!F&&(!this._options.useTrueInlineDiffRendering.read(x)||!R$(ue.diff))){if(!ue.originalRange.isEmpty){p.read(x);const Y=document.createElement("div");Y.classList.add("view-lines","line-delete","monaco-mouse-cursor-text");const me=this._editors.original.getModel();if(ue.originalRange.endLineNumberExclusive-1>me.getLineCount())return{orig:I,mod:T};const j=new YHe(ue.originalRange.mapToLineArray(Lt=>me.tokenization.getLineTokens(Lt)),ue.originalRange.mapToLineArray(Lt=>z[ne++]),Z,Q),Te=[];for(const Lt of ue.diff.innerChanges||[])Te.push(new US(Lt.originalRange.delta(-(ue.diff.original.startLineNumber-1)),N1.className,0));const Ue=GHe(j,oe,Te,Y),Xe=document.createElement("div");if(Xe.className="inline-deleted-margin-view-zone",co(Xe,oe.fontInfo),this._options.renderIndicators.read(x))for(let Lt=0;Lt<Ue.heightInLines;Lt++){const Pe=document.createElement("div");Pe.className=`delete-sign ${ft.asClassName(che)}`,Pe.setAttribute("style",`position:absolute;top:${Lt*G}px;width:${oe.lineDecorationsWidth}px;height:${G}px;right:0;`),Xe.appendChild(Pe)}let ht;y.add(new KHe(()=>Ig(ht),Xe,this._editors.modified,ue.diff,this._diffEditorWidget,Ue.viewLineCounts,this._editors.original.getModel(),this._contextMenuService,this._clipboardService));for(let Lt=0;Lt<Ue.viewLineCounts.length;Lt++){const Pe=Ue.viewLineCounts[Lt];Pe>1&&I.push({afterLineNumber:ue.originalRange.startLineNumber+Lt,domNode:w(),heightInPx:(Pe-1)*G,showInHiddenAreas:!0,suppressMouseDown:!0})}T.push({afterLineNumber:ue.modifiedRange.startLineNumber-1,domNode:Y,heightInPx:Ue.heightInLines*G,minWidthInPx:Ue.minWidthInPx,marginDomNode:Xe,setZoneId(Lt){ht=Lt},showInHiddenAreas:!0,suppressMouseDown:!0})}const q=document.createElement("div");q.className="gutter-delete",I.push({afterLineNumber:ue.originalRange.endLineNumberExclusive-1,domNode:w(),heightInPx:ue.modifiedHeightInPx,marginDomNode:q,showInHiddenAreas:!0,suppressMouseDown:!0})}else{const q=ue.modifiedHeightInPx-ue.originalHeightInPx;if(q>0){if(ie?.lineRangeMapping.original.delta(-1).deltaLength(2).contains(ue.originalRange.endLineNumberExclusive-1))continue;I.push({afterLineNumber:ue.originalRange.endLineNumberExclusive-1,domNode:w(),heightInPx:q,showInHiddenAreas:!0,suppressMouseDown:!0})}else{let Y=function(){const j=document.createElement("div");return j.className="arrow-revert-change "+ft.asClassName(De.arrowRight),L.add(de(j,"mousedown",Te=>Te.stopPropagation())),L.add(de(j,"click",Te=>{Te.stopPropagation(),o.revert(ue.diff)})),Ne("div",{},j)};if(ie?.lineRangeMapping.modified.delta(-1).deltaLength(2).contains(ue.modifiedRange.endLineNumberExclusive-1))continue;let me;ue.diff&&ue.diff.modified.isEmpty&&this._options.shouldRenderOldRevertArrows.read(x)&&(me=Y()),T.push({afterLineNumber:ue.modifiedRange.endLineNumberExclusive-1,domNode:w(),heightInPx:-q,marginDomNode:me,showInHiddenAreas:!0,suppressMouseDown:!0})}}for(const ue of b.read(x)??[]){if(!ie?.lineRangeMapping.original.intersect(ue.originalRange)||!ie?.lineRangeMapping.modified.intersect(ue.modifiedRange))continue;const q=ue.modifiedHeightInPx-ue.originalHeightInPx;q>0?I.push({afterLineNumber:ue.originalRange.endLineNumberExclusive-1,domNode:w(),heightInPx:q,showInHiddenAreas:!0,suppressMouseDown:!0}):T.push({afterLineNumber:ue.modifiedRange.endLineNumberExclusive-1,domNode:w(),heightInPx:-q,showInHiddenAreas:!0,suppressMouseDown:!0})}return{orig:I,mod:T}});let S=!1;this._register(this._editors.original.onDidScrollChange(x=>{x.scrollLeftChanged&&!S&&(S=!0,this._editors.modified.setScrollLeft(x.scrollLeft),S=!1)})),this._register(this._editors.modified.onDidScrollChange(x=>{x.scrollLeftChanged&&!S&&(S=!0,this._editors.original.setScrollLeft(x.scrollLeft),S=!1)})),this._originalScrollTop=ki(this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=ki(this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._register(yt(x=>{const L=this._originalScrollTop.read(x)-(this._originalScrollOffsetAnimated.get()-this._modifiedScrollOffsetAnimated.read(x))-(this._originalTopPadding.get()-this._modifiedTopPadding.read(x));L!==this._editors.modified.getScrollTop()&&this._editors.modified.setScrollTop(L,1)})),this._register(yt(x=>{const L=this._modifiedScrollTop.read(x)-(this._modifiedScrollOffsetAnimated.get()-this._originalScrollOffsetAnimated.read(x))-(this._modifiedTopPadding.get()-this._originalTopPadding.read(x));L!==this._editors.original.getScrollTop()&&this._editors.original.setScrollTop(L,1)})),this._register(yt(x=>{const L=this._diffModel.read(x)?.movedTextToCompare.read(x);let N=0;if(L){const I=this._editors.original.getTopForLineNumber(L.lineRangeMapping.original.startLineNumber,!0)-this._originalTopPadding.get();N=this._editors.modified.getTopForLineNumber(L.lineRangeMapping.modified.startLineNumber,!0)-this._modifiedTopPadding.get()-I}N>0?(this._modifiedTopPadding.set(0,void 0),this._originalTopPadding.set(N,void 0)):N<0?(this._modifiedTopPadding.set(-N,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()-N,void 0,!0):this._modifiedScrollOffset.set(this._originalScrollOffset.get()+N,void 0,!0)}))}};mW=ZHe([kie(8,If),kie(9,Ca)],mW);function Die(s,e,t,i,n,o){const r=new uf(Eie(s,i)),a=new uf(Eie(e,n)),l=s.getOption(67),c=e.getOption(67),d=[];let u=0,f=0;function p(m,b){for(;;){let w=r.peek(),y=a.peek();if(w&&w.lineNumber>=m&&(w=void 0),y&&y.lineNumber>=b&&(y=void 0),!w&&!y)break;const S=w?w.lineNumber-u:Number.MAX_VALUE,x=y?y.lineNumber-f:Number.MAX_VALUE;S<x?(r.dequeue(),y={lineNumber:w.lineNumber-u+f,heightInPx:0}):S>x?(a.dequeue(),w={lineNumber:y.lineNumber-f+u,heightInPx:0}):(r.dequeue(),a.dequeue()),d.push({originalRange:Nt.ofLength(w.lineNumber,1),modifiedRange:Nt.ofLength(y.lineNumber,1),originalHeightInPx:l+w.heightInPx,modifiedHeightInPx:c+y.heightInPx,diff:void 0})}}for(const m of t){let x=function(L,N,I=!1){if(L<S||N<y)return;if(w)w=!1;else if(!I&&(L===S||N===y))return;const T=new Nt(S,L),A=new Nt(y,N);if(T.isEmpty&&A.isEmpty)return;const P=r.takeWhile(H=>H.lineNumber<L)?.reduce((H,z)=>H+z.heightInPx,0)??0,F=a.takeWhile(H=>H.lineNumber<N)?.reduce((H,z)=>H+z.heightInPx,0)??0;d.push({originalRange:T,modifiedRange:A,originalHeightInPx:T.length*l+P,modifiedHeightInPx:A.length*c+F,diff:m.lineRangeMapping}),S=L,y=N};const b=m.lineRangeMapping;p(b.original.startLineNumber,b.modified.startLineNumber);let w=!0,y=b.modified.startLineNumber,S=b.original.startLineNumber;if(o)for(const L of b.innerChanges||[]){L.originalRange.startColumn>1&&L.modifiedRange.startColumn>1&&x(L.originalRange.startLineNumber,L.modifiedRange.startLineNumber);const N=s.getModel(),I=L.originalRange.endLineNumber<=N.getLineCount()?N.getLineMaxColumn(L.originalRange.endLineNumber):Number.MAX_SAFE_INTEGER;L.originalRange.endColumn<I&&x(L.originalRange.endLineNumber,L.modifiedRange.endLineNumber)}x(b.original.endLineNumberExclusive,b.modified.endLineNumberExclusive,!0),u=b.original.endLineNumberExclusive,f=b.modified.endLineNumberExclusive}return p(Number.MAX_VALUE,Number.MAX_VALUE),d}function Eie(s,e){const t=[],i=[],n=s.getOption(147).wrappingColumn!==-1,o=s._getViewModel().coordinatesConverter,r=s.getOption(67);if(n)for(let l=1;l<=s.getModel().getLineCount();l++){const c=o.getModelLineViewLineCount(l);c>1&&i.push({lineNumber:l,heightInPx:r*(c-1)})}for(const l of s.getWhitespaces()){if(e.has(l.id))continue;const c=l.afterLineNumber===0?0:o.convertViewPositionToModelPosition(new ee(l.afterLineNumber,1)).lineNumber;t.push({lineNumber:c,heightInPx:l.height})}return SHe(t,i,l=>l.lineNumber,(l,c)=>({lineNumber:l.lineNumber,heightInPx:l.heightInPx+c.heightInPx}))}function R$(s){return s.innerChanges?s.innerChanges.every(e=>Nie(e.modifiedRange)&&Nie(e.originalRange)||e.originalRange.equalsRange(new M(1,1,1,1))):!1}function Nie(s){return s.startLineNumber===s.endLineNumber}const Sx=class Sx extends se{constructor(e,t,i,n,o){super(),this._rootElement=e,this._diffModel=t,this._originalEditorLayoutInfo=i,this._modifiedEditorLayoutInfo=n,this._editors=o,this._originalScrollTop=ki(this,this._editors.original.onDidScrollChange,()=>this._editors.original.getScrollTop()),this._modifiedScrollTop=ki(this,this._editors.modified.onDidScrollChange,()=>this._editors.modified.getScrollTop()),this._viewZonesChanged=wo("onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this.width=Bt(this,0),this._modifiedViewZonesChangedSignal=wo("modified.onDidChangeViewZones",this._editors.modified.onDidChangeViewZones),this._originalViewZonesChangedSignal=wo("original.onDidChangeViewZones",this._editors.original.onDidChangeViewZones),this._state=zp(this,(d,u)=>{this._element.replaceChildren();const f=this._diffModel.read(d),p=f?.diff.read(d)?.movedTexts;if(!p||p.length===0){this.width.set(0,void 0);return}this._viewZonesChanged.read(d);const m=this._originalEditorLayoutInfo.read(d),b=this._modifiedEditorLayoutInfo.read(d);if(!m||!b){this.width.set(0,void 0);return}this._modifiedViewZonesChangedSignal.read(d),this._originalViewZonesChangedSignal.read(d);const w=p.map(T=>{function A(Q,oe){const ue=oe.getTopForLineNumber(Q.startLineNumber,!0),q=oe.getTopForLineNumber(Q.endLineNumberExclusive,!0);return(ue+q)/2}const P=A(T.lineRangeMapping.original,this._editors.original),F=this._originalScrollTop.read(d),H=A(T.lineRangeMapping.modified,this._editors.modified),z=this._modifiedScrollTop.read(d),ne=P-F,G=H-z,ie=Math.min(P,H),Z=Math.max(P,H);return{range:new Ht(ie,Z),from:ne,to:G,fromWithoutScroll:P,toWithoutScroll:H,move:T}});w.sort(Gke(fr(T=>T.fromWithoutScroll>T.toWithoutScroll,Yke),fr(T=>T.fromWithoutScroll>T.toWithoutScroll?T.fromWithoutScroll:-T.toWithoutScroll,xc)));const y=M$.compute(w.map(T=>T.range)),S=10,x=m.verticalScrollbarWidth,L=(y.getTrackCount()-1)*10+S*2,N=x+L+(b.contentLeft-Sx.movedCodeBlockPadding);let I=0;for(const T of w){const A=y.getTrack(I),P=x+S+A*10,F=15,H=15,z=N,ne=b.glyphMarginWidth+b.lineNumbersWidth,G=18,ie=document.createElementNS("http://www.w3.org/2000/svg","rect");ie.classList.add("arrow-rectangle"),ie.setAttribute("x",`${z-ne}`),ie.setAttribute("y",`${T.to-G/2}`),ie.setAttribute("width",`${ne}`),ie.setAttribute("height",`${G}`),this._element.appendChild(ie);const Z=document.createElementNS("http://www.w3.org/2000/svg","g"),Q=document.createElementNS("http://www.w3.org/2000/svg","path");Q.setAttribute("d",`M 0 ${T.from} L ${P} ${T.from} L ${P} ${T.to} L ${z-H} ${T.to}`),Q.setAttribute("fill","none"),Z.appendChild(Q);const oe=document.createElementNS("http://www.w3.org/2000/svg","polygon");oe.classList.add("arrow"),u.add(yt(ue=>{Q.classList.toggle("currentMove",T.move===f.activeMovedText.read(ue)),oe.classList.toggle("currentMove",T.move===f.activeMovedText.read(ue))})),oe.setAttribute("points",`${z-H},${T.to-F/2} ${z},${T.to} ${z-H},${T.to+F/2}`),Z.appendChild(oe),this._element.appendChild(Z),I++}this.width.set(L,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(tt(()=>this._element.remove())),this._register(yt(d=>{const u=this._originalEditorLayoutInfo.read(d),f=this._modifiedEditorLayoutInfo.read(d);!u||!f||(this._element.style.left=`${u.width-u.verticalScrollbarWidth}px`,this._element.style.height=`${u.height}px`,this._element.style.width=`${u.verticalScrollbarWidth+u.contentLeft-Sx.movedCodeBlockPadding+this.width.read(d)}px`)})),this._register(hy(this._state));const r=Je(d=>{const f=this._diffModel.read(d)?.diff.read(d);return f?f.movedTexts.map(p=>({move:p,original:new GC(Ml(p.lineRangeMapping.original.startLineNumber-1),18),modified:new GC(Ml(p.lineRangeMapping.modified.startLineNumber-1),18)})):[]});this._register(HR(this._editors.original,r.map(d=>d.map(u=>u.original)))),this._register(HR(this._editors.modified,r.map(d=>d.map(u=>u.modified)))),this._register(Fr((d,u)=>{const f=r.read(d);for(const p of f)u.add(new Iie(this._editors.original,p.original,p.move,"original",this._diffModel.get())),u.add(new Iie(this._editors.modified,p.modified,p.move,"modified",this._diffModel.get()))}));const a=wo("original.onDidFocusEditorWidget",d=>this._editors.original.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0))),l=wo("modified.onDidFocusEditorWidget",d=>this._editors.modified.onDidFocusEditorWidget(()=>setTimeout(()=>d(void 0),0)));let c="modified";this._register($k({createEmptyChangeSummary:()=>{},handleChange:(d,u)=>(d.didChange(a)&&(c="original"),d.didChange(l)&&(c="modified"),!0)},d=>{a.read(d),l.read(d);const u=this._diffModel.read(d);if(!u)return;const f=u.diff.read(d);let p;if(f&&c==="original"){const m=this._editors.originalCursor.read(d);m&&(p=f.movedTexts.find(b=>b.lineRangeMapping.original.contains(m.lineNumber)))}if(f&&c==="modified"){const m=this._editors.modifiedCursor.read(d);m&&(p=f.movedTexts.find(b=>b.lineRangeMapping.modified.contains(m.lineNumber)))}p!==u.movedTextToCompare.get()&&u.movedTextToCompare.set(void 0,void 0),u.setActiveMovedText(p)}))}};Sx.movedCodeBlockPadding=4;let Vw=Sx;class M${static compute(e){const t=[],i=[];for(const n of e){let o=t.findIndex(r=>!r.intersectsStrict(n));o===-1&&(t.length>=6?o=TRe(t,fr(a=>a.intersectWithRangeLength(n),xc)):(o=t.length,t.push(new MU))),t[o].addRange(n),i.push(o)}return new M$(t.length,i)}constructor(e,t){this._trackCount=e,this.trackPerLineIdx=t}getTrack(e){return this.trackPerLineIdx[e]}getTrackCount(){return this._trackCount}}class Iie extends S${constructor(e,t,i,n,o){const r=zt("div.diff-hidden-lines-widget");super(e,t,r.root),this._editor=e,this._move=i,this._kind=n,this._diffModel=o,this._nodes=zt("div.diff-moved-code-block",{style:{marginRight:"4px"}},[zt("div.text-content@textContent"),zt("div.action-bar@actionBar")]),r.root.appendChild(this._nodes.root);const a=ki(this._editor.onDidLayoutChange,()=>this._editor.getLayoutInfo());this._register(_f(this._nodes.root,{paddingRight:a.map(f=>f.verticalScrollbarWidth)}));let l;i.changes.length>0?l=this._kind==="original"?v("codeMovedToWithChanges","Code moved with changes to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):v("codeMovedFromWithChanges","Code moved with changes from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1):l=this._kind==="original"?v("codeMovedTo","Code moved to line {0}-{1}",this._move.lineRangeMapping.modified.startLineNumber,this._move.lineRangeMapping.modified.endLineNumberExclusive-1):v("codeMovedFrom","Code moved from line {0}-{1}",this._move.lineRangeMapping.original.startLineNumber,this._move.lineRangeMapping.original.endLineNumberExclusive-1);const c=this._register(new tl(this._nodes.actionBar,{highlightToggledItems:!0})),d=new ha("",l,"",!1);c.push(d,{icon:!1,label:!0});const u=new ha("","Compare",ft.asClassName(De.compareChanges),!0,()=>{this._editor.focus(),this._diffModel.movedTextToCompare.set(this._diffModel.movedTextToCompare.get()===i?void 0:this._move,void 0)});this._register(yt(f=>{const p=this._diffModel.movedTextToCompare.read(f)===i;u.checked=p})),c.push(u,{icon:!1,label:!0})}}class XHe extends se{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._decorations=Je(this,o=>{const r=this._diffModel.read(o),a=r?.diff.read(o);if(!a)return null;const l=this._diffModel.read(o).movedTextToCompare.read(o),c=this._options.renderIndicators.read(o),d=this._options.showEmptyDecorations.read(o),u=[],f=[];if(!l)for(const m of a.mappings)if(m.lineRangeMapping.original.isEmpty||u.push({range:m.lineRangeMapping.original.toInclusiveRange(),options:c?AL:Sie}),m.lineRangeMapping.modified.isEmpty||f.push({range:m.lineRangeMapping.modified.toInclusiveRange(),options:c?zR:yie}),m.lineRangeMapping.modified.isEmpty||m.lineRangeMapping.original.isEmpty)m.lineRangeMapping.original.isEmpty||u.push({range:m.lineRangeMapping.original.toInclusiveRange(),options:E$}),m.lineRangeMapping.modified.isEmpty||f.push({range:m.lineRangeMapping.modified.toInclusiveRange(),options:k$});else{const b=this._options.useTrueInlineDiffRendering.read(o)&&R$(m.lineRangeMapping);for(const w of m.lineRangeMapping.innerChanges||[])if(m.lineRangeMapping.original.contains(w.originalRange.startLineNumber)&&u.push({range:w.originalRange,options:w.originalRange.isEmpty()&&d?N$:N1}),m.lineRangeMapping.modified.contains(w.modifiedRange.startLineNumber)&&f.push({range:w.modifiedRange,options:w.modifiedRange.isEmpty()&&d&&!b?D$:UR}),b){const y=r.model.original.getValueInRange(w.originalRange);f.push({range:w.modifiedRange,options:{description:"deleted-text",before:{content:y,inlineClassName:"inline-deleted-text"},zIndex:1e5,showIfCollapsed:!0}})}}if(l)for(const m of l.changes){const b=m.original.toInclusiveRange();b&&u.push({range:b,options:c?AL:Sie});const w=m.modified.toInclusiveRange();w&&f.push({range:w,options:c?zR:yie});for(const y of m.innerChanges||[])u.push({range:y.originalRange,options:N1}),f.push({range:y.modifiedRange,options:UR})}const p=this._diffModel.read(o).activeMovedText.read(o);for(const m of a.movedTexts)u.push({range:m.lineRangeMapping.original.toInclusiveRange(),options:{description:"moved",blockClassName:"movedOriginal"+(m===p?" currentMove":""),blockPadding:[Vw.movedCodeBlockPadding,0,Vw.movedCodeBlockPadding,Vw.movedCodeBlockPadding]}}),f.push({range:m.lineRangeMapping.modified.toInclusiveRange(),options:{description:"moved",blockClassName:"movedModified"+(m===p?" currentMove":""),blockPadding:[4,0,4,4]}});return{originalDecorations:u,modifiedDecorations:f}}),this._register(WR(this._editors.original,this._decorations.map(o=>o?.originalDecorations||[]))),this._register(WR(this._editors.modified,this._decorations.map(o=>o?.modifiedDecorations||[])))}}class QHe{resetSash(){this._sashRatio.set(void 0,void 0)}constructor(e,t){this._options=e,this.dimensions=t,this.sashLeft=Uk(this,i=>{const n=this._sashRatio.read(i)??this._options.splitViewDefaultRatio.read(i);return this._computeSashLeft(n,i)},(i,n)=>{const o=this.dimensions.width.get();this._sashRatio.set(i/o,n)}),this._sashRatio=Bt(this,void 0)}_computeSashLeft(e,t){const i=this.dimensions.width.read(t),n=Math.floor(this._options.splitViewDefaultRatio.read(t)*i),o=this._options.enableSplitViewResizing.read(t)?Math.floor(e*i):n,r=100;return i<=r*2?n:o<r?r:o>i-r?i-r:o}}class fhe extends se{constructor(e,t,i,n,o,r){super(),this._domNode=e,this._dimensions=t,this._enabled=i,this._boundarySashes=n,this.sashLeft=o,this._resetSash=r,this._sash=this._register(new To(this._domNode,{getVerticalSashTop:a=>0,getVerticalSashLeft:a=>this.sashLeft.get(),getVerticalSashHeight:a=>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(a=>{this.sashLeft.set(this._startSashPosition+(a.currentX-a.startX),void 0)})),this._register(this._sash.onDidEnd(()=>this._sash.layout())),this._register(this._sash.onDidReset(()=>this._resetSash())),this._register(yt(a=>{const l=this._boundarySashes.read(a);l&&(this._sash.orthogonalEndSash=l.bottom)})),this._register(yt(a=>{const l=this._enabled.read(a);this._sash.state=l?3:0,this.sashLeft.read(a),this._dimensions.height.read(a),this._sash.layout()}))}}class JHe extends se{constructor(e,t,i){super(),this._editor=e,this._domNode=t,this.itemProvider=i,this.scrollTop=ki(this,this._editor.onDidScrollChange,r=>this._editor.getScrollTop()),this.isScrollTopZero=this.scrollTop.map(r=>r===0),this.modelAttached=ki(this,this._editor.onDidChangeModel,r=>this._editor.hasModel()),this.editorOnDidChangeViewZones=wo("onDidChangeViewZones",this._editor.onDidChangeViewZones),this.editorOnDidContentSizeChange=wo("onDidContentSizeChange",this._editor.onDidContentSizeChange),this.domNodeSizeChanged=uy("domNodeSizeChanged"),this.views=new Map,this._domNode.className="gutter monaco-editor";const n=this._domNode.appendChild(zt("div.scroll-decoration",{role:"presentation",ariaHidden:"true",style:{width:"100%"}}).root),o=new ResizeObserver(()=>{Nn(r=>{this.domNodeSizeChanged.trigger(r)})});o.observe(this._domNode),this._register(tt(()=>o.disconnect())),this._register(yt(r=>{n.className=this.isScrollTopZero.read(r)?"":"scroll-decoration"})),this._register(yt(r=>this.render(r)))}dispose(){super.dispose(),lo(this._domNode)}render(e){if(!this.modelAttached.read(e))return;this.domNodeSizeChanged.read(e),this.editorOnDidChangeViewZones.read(e),this.editorOnDidContentSizeChange.read(e);const t=this.scrollTop.read(e),i=this._editor.getVisibleRanges(),n=new Set(this.views.keys()),o=Ht.ofStartAndLength(0,this._domNode.clientHeight);if(!o.isEmpty)for(const r of i){const a=new Nt(r.startLineNumber,r.endLineNumber+1),l=this.itemProvider.getIntersectingGutterItems(a,e);Nn(c=>{for(const d of l){if(!d.range.intersect(a))continue;n.delete(d.id);let u=this.views.get(d.id);if(u)u.item.set(d,c);else{const b=document.createElement("div");this._domNode.appendChild(b);const w=Bt("item",d),y=this.itemProvider.createView(w,b);u=new eVe(w,y,b),this.views.set(d.id,u)}const f=d.range.startLineNumber<=this._editor.getModel().getLineCount()?this._editor.getTopForLineNumber(d.range.startLineNumber,!0)-t:this._editor.getBottomForLineNumber(d.range.startLineNumber-1,!1)-t,m=(d.range.endLineNumberExclusive===1?Math.max(f,this._editor.getTopForLineNumber(d.range.startLineNumber,!1)-t):Math.max(f,this._editor.getBottomForLineNumber(d.range.endLineNumberExclusive-1,!0)-t))-f;u.domNode.style.top=`${f}px`,u.domNode.style.height=`${m}px`,u.gutterItemView.layout(Ht.ofStartAndLength(f,m),o)}})}for(const r of n){const a=this.views.get(r);a.gutterItemView.dispose(),a.domNode.remove(),this.views.delete(r)}}}class eVe{constructor(e,t,i){this.item=e,this.gutterItemView=t,this.domNode=i}}class ghe extends Nb{constructor(e){super(),this._getContext=e}runAction(e,t){const i=this._getContext();return super.runAction(e,i)}}class Tie extends Rle{constructor(e){super(),this._textModel=e}getValueOfRange(e){return this._textModel.getValueInRange(e)}get length(){const e=this._textModel.getLineCount(),t=this._textModel.getLineLength(e);return new Tc(e-1,t)}}class tVe extends se{constructor(e,t,i={orientation:0}){super(),this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new vEe),this.onDidChangeDropdownVisibility=this._onDidChangeDropdownVisibility.event,this.disposables=this._register(new _e),i.hoverDelegate=i.hoverDelegate??this._register(w1()),this.options=i,this.toggleMenuAction=this._register(new OL(()=>this.toggleMenuActionViewItem?.show(),i.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",e.appendChild(this.element),this.actionBar=this._register(new tl(this.element,{orientation:i.orientation,ariaLabel:i.ariaLabel,actionRunner:i.actionRunner,allowContextMenu:i.allowContextMenu,highlightToggledItems:i.highlightToggledItems,hoverDelegate:i.hoverDelegate,actionViewItemProvider:(n,o)=>{if(n.id===OL.ID)return this.toggleMenuActionViewItem=new $T(n,n.menuActions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:ft.asClassNameArray(i.moreIcon??De.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,isMenu:!0,hoverDelegate:this.options.hoverDelegate}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(i.actionViewItemProvider){const r=i.actionViewItemProvider(n,o);if(r)return r}if(n instanceof l1){const r=new $T(n,n.actions,t,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:n.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,hoverDelegate:this.options.hoverDelegate});return r.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(r),this.disposables.add(this._onDidChangeDropdownVisibility.add(r.onDidChangeVisibility)),r}}}))}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,t){this.clear();const i=e?e.slice(0):[];this.hasSecondaryActions=!!(t&&t.length>0),this.hasSecondaryActions&&t&&(this.toggleMenuAction.menuActions=t.slice(0),i.push(this.toggleMenuAction)),i.forEach(n=>{this.actionBar.push(n,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(n)})})}getKeybindingLabel(e){return this.options.getKeyBinding?.(e)?.getLabel()??void 0}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),super.dispose()}}const W2=class W2 extends ha{constructor(e,t){t=t||v("moreActions","More Actions..."),super(W2.ID,t,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=e}async run(){this.toggleDropdownMenu()}get menuActions(){return this._menuActions}set menuActions(e){this._menuActions=e}};W2.ID="toolbar.toggle.more";let OL=W2;var phe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},bc=function(s,e){return function(t,i){e(t,i,s)}};let PL=class extends tVe{constructor(e,t,i,n,o,r,a,l){super(e,o,{getKeyBinding:d=>r.lookupKeybinding(d.id)??void 0,...t,allowContextMenu:!0,skipTelemetry:typeof t?.telemetrySource=="string"}),this._options=t,this._menuService=i,this._contextKeyService=n,this._contextMenuService=o,this._keybindingService=r,this._commandService=a,this._sessionDisposables=this._store.add(new _e);const c=t?.telemetrySource;c&&this._store.add(this.actionBar.onDidRun(d=>l.publicLog2("workbenchActionExecuted",{id:d.action.id,from:c})))}setActions(e,t=[],i){this._sessionDisposables.clear();const n=e.slice(),o=t.slice(),r=[];let a=0;const l=[];let c=!1;if(this._options?.hiddenItemStrategy!==-1)for(let d=0;d<n.length;d++){const u=n[d];!(u instanceof fa)&&!(u instanceof Sw)||u.hideActions&&(r.push(u.hideActions.toggle),u.hideActions.toggle.checked&&a++,u.hideActions.isHidden&&(c=!0,n[d]=void 0,this._options?.hiddenItemStrategy!==0&&(l[d]=u)))}if(this._options?.overflowBehavior!==void 0){const d=g5e(new Set(this._options.overflowBehavior.exempted),ii.map(n,p=>p?.id)),u=this._options.overflowBehavior.maxItems-d.size;let f=0;for(let p=0;p<n.length;p++){const m=n[p];m&&(f++,!d.has(m.id)&&f>=u&&(n[p]=void 0,l[p]=m))}}aQ(n),aQ(l),super.setActions(n,Ps.join(l,o)),(r.length>0||n.length>0)&&this._sessionDisposables.add(de(this.getElement(),"contextmenu",d=>{const u=new wc(ct(this.getElement()),d),f=this.getItemAction(u.target);if(!f)return;u.preventDefault(),u.stopPropagation();const p=[];if(f instanceof fa&&f.menuKeybinding)p.push(f.menuKeybinding);else if(!(f instanceof Sw||f instanceof OL)){const b=!!this._keybindingService.lookupKeybinding(f.id);p.push(Rue(this._commandService,this._keybindingService,f.id,void 0,b))}if(r.length>0){let b=!1;if(a===1&&this._options?.hiddenItemStrategy===0){b=!0;for(let w=0;w<r.length;w++)if(r[w].checked){r[w]=g_({id:f.id,label:f.label,checked:!0,enabled:!1,run(){}});break}}if(!b&&(f instanceof fa||f instanceof Sw)){if(!f.hideActions)return;p.push(f.hideActions.hide)}else p.push(g_({id:"label",label:v("hide","Hide"),enabled:!1,run(){}}))}const m=Ps.join(p,r);this._options?.resetMenu&&!i&&(i=[this._options.resetMenu]),c&&i&&(m.push(new Ps),m.push(g_({id:"resetThisMenu",label:v("resetThisMenu","Reset Menu"),run:()=>this._menuService.resetHiddenStates(i)}))),m.length!==0&&this._contextMenuService.showContextMenu({getAnchor:()=>u,getActions:()=>m,menuId:this._options?.contextMenu,menuActionOptions:{renderShortTitle:!0,...this._options?.menuOptions},skipTelemetry:typeof this._options?.telemetrySource=="string",contextKeyService:this._contextKeyService})}))}};PL=phe([bc(2,ll),bc(3,gt),bc(4,Ca),bc(5,yi),bc(6,en),bc(7,Fo)],PL);let jR=class extends PL{constructor(e,t,i,n,o,r,a,l,c){super(e,{resetMenu:t,...i},n,o,r,a,l,c),this._onDidChangeMenuItems=this._store.add(new te),this.onDidChangeMenuItems=this._onDidChangeMenuItems.event;const d=this._store.add(n.createMenu(t,o,{emitEventsForSubmenuChanges:!0})),u=()=>{const f=[],p=[];VO(d,i?.menuOptions,{primary:f,secondary:p},i?.toolbarOptions?.primaryGroup,i?.toolbarOptions?.shouldInlineSubmenu,i?.toolbarOptions?.useSeparatorsInPrimaryActions),e.classList.toggle("has-no-actions",f.length===0&&p.length===0),super.setActions(f,p)};this._store.add(d.onDidChange(()=>{u(),this._onDidChangeMenuItems.fire(this)})),u()}setActions(){throw new _i("This toolbar is populated from a menu.")}};jR=phe([bc(3,ll),bc(4,gt),bc(5,Ca),bc(6,yi),bc(7,en),bc(8,Fo)],jR);var mhe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},kI=function(s,e){return function(t,i){e(t,i,s)}};const H3=[],yN=35;let _W=class extends se{constructor(e,t,i,n,o,r,a,l,c){super(),this._diffModel=t,this._editors=i,this._options=n,this._sashLayout=o,this._boundarySashes=r,this._instantiationService=a,this._contextKeyService=l,this._menuService=c,this._menu=this._register(this._menuService.createMenu(Ge.DiffEditorHunkToolbar,this._contextKeyService)),this._actions=ki(this,this._menu.onDidChange,()=>this._menu.getActions()),this._hasActions=this._actions.map(d=>d.length>0),this._showSash=Je(this,d=>this._options.renderSideBySide.read(d)&&this._hasActions.read(d)),this.width=Je(this,d=>this._hasActions.read(d)?yN:0),this.elements=zt("div.gutter@gutter",{style:{position:"absolute",height:"100%",width:yN+"px"}},[]),this._currentDiff=Je(this,d=>{const u=this._diffModel.read(d);if(!u)return;const f=u.diff.read(d)?.mappings,p=this._editors.modifiedCursor.read(d);if(p)return f?.find(m=>m.lineRangeMapping.modified.contains(p.lineNumber))}),this._selectedDiffs=Je(this,d=>{const f=this._diffModel.read(d)?.diff.read(d);if(!f)return H3;const p=this._editors.modifiedSelections.read(d);if(p.every(y=>y.isEmpty()))return H3;const m=new Tl(p.map(y=>Nt.fromRangeInclusive(y))),w=f.mappings.filter(y=>y.lineRangeMapping.innerChanges&&m.intersects(y.lineRangeMapping.modified)).map(y=>({mapping:y,rangeMappings:y.lineRangeMapping.innerChanges.filter(S=>p.some(x=>M.areIntersecting(S.modifiedRange,x)))}));return w.length===0||w.every(y=>y.rangeMappings.length===0)?H3:w}),this._register(xHe(e,this.elements.root)),this._register(de(this.elements.root,"click",()=>{this._editors.modified.focus()})),this._register(_f(this.elements.root,{display:this._hasActions.map(d=>d?"block":"none")})),Ko(this,d=>this._showSash.read(d)?new fhe(e,this._sashLayout.dimensions,this._options.enableSplitViewResizing,this._boundarySashes,Uk(this,f=>this._sashLayout.sashLeft.read(f)-yN,(f,p)=>this._sashLayout.sashLeft.set(f+yN,p)),()=>this._sashLayout.resetSash()):void 0).recomputeInitiallyAndOnChange(this._store),this._register(new JHe(this._editors.modified,this.elements.root,{getIntersectingGutterItems:(d,u)=>{const f=this._diffModel.read(u);if(!f)return[];const p=f.diff.read(u);if(!p)return[];const m=this._selectedDiffs.read(u);if(m.length>0){const w=el.fromRangeMappings(m.flatMap(y=>y.rangeMappings));return[new Rie(w,!0,Ge.DiffEditorSelectionToolbar,void 0,f.model.original.uri,f.model.modified.uri)]}const b=this._currentDiff.read(u);return p.mappings.map(w=>new Rie(w.lineRangeMapping.withInnerChangesFromLineRanges(),w.lineRangeMapping===b?.lineRangeMapping,Ge.DiffEditorHunkToolbar,void 0,f.model.original.uri,f.model.modified.uri))},createView:(d,u)=>this._instantiationService.createInstance(bW,d,u,this)})),this._register(de(this.elements.gutter,Ee.MOUSE_WHEEL,d=>{this._editors.modified.getOption(104).handleMouseWheel&&this._editors.modified.delegateScrollFromMouseWheelEvent(d)},{passive:!1}))}computeStagedValue(e){const t=e.innerChanges??[],i=new Tie(this._editors.modifiedModel.get()),n=new Tie(this._editors.original.getModel());return new OU(t.map(a=>a.toTextEdit(i))).apply(n)}layout(e){this.elements.gutter.style.left=e+"px"}};_W=mhe([kI(6,it),kI(7,gt),kI(8,ll)],_W);class Rie{constructor(e,t,i,n,o,r){this.mapping=e,this.showAlways=t,this.menuId=i,this.rangeOverride=n,this.originalUri=o,this.modifiedUri=r}get id(){return this.mapping.modified.toString()}get range(){return this.rangeOverride??this.mapping.modified}}let bW=class extends se{constructor(e,t,i,n){super(),this._item=e,this._elements=zt("div.gutterItem",{style:{height:"20px",width:"34px"}},[zt("div.background@background",{},[]),zt("div.buttons@buttons",{},[])]),this._showAlways=this._item.map(this,r=>r.showAlways),this._menuId=this._item.map(this,r=>r.menuId),this._isSmall=Bt(this,!1),this._lastItemRange=void 0,this._lastViewRange=void 0;const o=this._register(n.createInstance(g1,"element",!0,{position:{hoverPosition:1}}));this._register(KC(t,this._elements.root)),this._register(yt(r=>{const a=this._showAlways.read(r);this._elements.root.classList.toggle("noTransition",!0),this._elements.root.classList.toggle("showAlways",a),setTimeout(()=>{this._elements.root.classList.toggle("noTransition",!1)},0)})),this._register(Fr((r,a)=>{this._elements.buttons.replaceChildren();const l=a.add(n.createInstance(jR,this._elements.buttons,this._menuId.read(r),{orientation:1,hoverDelegate:o,toolbarOptions:{primaryGroup:c=>c.startsWith("primary")},overflowBehavior:{maxItems:this._isSmall.read(r)?1:3},hiddenItemStrategy:0,actionRunner:new ghe(()=>{const c=this._item.get(),d=c.mapping;return{mapping:d,originalWithModifiedChanges:i.computeStagedValue(d),originalUri:c.originalUri,modifiedUri:c.modifiedUri}}),menuOptions:{shouldForwardArgs:!0}}));a.add(l.onDidChangeMenuItems(()=>{this._lastItemRange&&this.layout(this._lastItemRange,this._lastViewRange)}))}))}layout(e,t){this._lastItemRange=e,this._lastViewRange=t;let i=this._elements.buttons.clientHeight;this._isSmall.set(this._item.get().mapping.original.startLineNumber===1&&e.length<30,void 0),i=this._elements.buttons.clientHeight;const n=e.length/2-i/2,o=i;let r=e.start+n;const a=Ht.tryCreate(o,t.endExclusive-o-i),l=Ht.tryCreate(e.start+o,e.endExclusive-i-o);l&&a&&l.start<l.endExclusive&&(r=a.clip(r),r=l.clip(r)),this._elements.buttons.style.top=`${r-e.start}px`}};bW=mhe([kI(3,it)],bW);function la(s){return vW.get(s)}const bg=class bg extends se{static get(e){let t=bg._map.get(e);if(!t){t=new bg(e),bg._map.set(e,t);const i=e.onDidDispose(()=>{const n=bg._map.get(e);n&&(bg._map.delete(e),n.dispose(),i.dispose())})}return t}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&(this._currentTransaction=new dy(()=>{}))}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){const e=this._currentTransaction;this._currentTransaction=void 0,e.finish()}}constructor(e){super(),this.editor=e,this._updateCounter=0,this._currentTransaction=void 0,this._model=Bt(this,this.editor.getModel()),this.model=this._model,this.isReadonly=ki(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(92)),this._versionId=x8({owner:this,lazy:!0},this.editor.getModel()?.getVersionId()??null),this.versionId=this._versionId,this._selections=x8({owner:this,equalsFn:w8(zT(Ye.selectionsEqual)),lazy:!0},this.editor.getSelections()??null),this.selections=this._selections,this.isFocused=ki(this,t=>{const i=this.editor.onDidFocusEditorWidget(t),n=this.editor.onDidBlurEditorWidget(t);return{dispose(){i.dispose(),n.dispose()}}},()=>this.editor.hasWidgetFocus()),this.value=Uk(this,t=>(this.versionId.read(t),this.model.read(t)?.getValue()??""),(t,i)=>{const n=this.model.get();n!==null&&t!==n.getValue()&&n.setValue(t)}),this.valueIsEmpty=Je(this,t=>(this.versionId.read(t),this.editor.getModel()?.getValueLength()===0)),this.cursorSelection=ja({owner:this,equalsFn:w8(Ye.selectionsEqual)},t=>this.selections.read(t)?.[0]??null),this.onDidType=uy(this),this.scrollTop=ki(this.editor.onDidScrollChange,()=>this.editor.getScrollTop()),this.scrollLeft=ki(this.editor.onDidScrollChange,()=>this.editor.getScrollLeft()),this.layoutInfo=ki(this.editor.onDidLayoutChange,()=>this.editor.getLayoutInfo()),this.layoutInfoContentLeft=this.layoutInfo.map(t=>t.contentLeft),this.layoutInfoDecorationsLeft=this.layoutInfo.map(t=>t.decorationsLeft),this.contentWidth=ki(this.editor.onDidContentSizeChange,()=>this.editor.getContentWidth()),this._overlayWidgetCounter=0,this._register(this.editor.onBeginUpdate(()=>this._beginUpdate())),this._register(this.editor.onEndUpdate(()=>this._endUpdate())),this._register(this.editor.onDidChangeModel(()=>{this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidType(t=>{this._beginUpdate();try{this._forceUpdate(),this.onDidType.trigger(this._currentTransaction,t)}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeModelContent(t=>{this._beginUpdate();try{this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeCursorSelection(t=>{this._beginUpdate();try{this._selections.set(this.editor.getSelections(),this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}}))}forceUpdate(e){this._beginUpdate();try{return this._forceUpdate(),e?e(this._currentTransaction):void 0}finally{this._endUpdate()}}_forceUpdate(){this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,void 0),this._selections.set(this.editor.getSelections(),this._currentTransaction,void 0)}finally{this._endUpdate()}}getOption(e){return ki(this,t=>this.editor.onDidChangeConfiguration(i=>{i.hasChanged(e)&&t(void 0)}),()=>this.editor.getOption(e))}setDecorations(e){const t=new _e,i=this.editor.createDecorationsCollection();return t.add(jk({owner:this,debugName:()=>`Apply decorations from ${e.debugName}`},n=>{const o=e.read(n);i.set(o)})),t.add({dispose:()=>{i.clear()}}),t}createOverlayWidget(e){const t="observableOverlayWidget"+this._overlayWidgetCounter++,i={getDomNode:()=>e.domNode,getPosition:()=>e.position.get(),getId:()=>t,allowEditorOverflow:e.allowEditorOverflow,getMinContentWidthInPx:()=>e.minContentWidthInPx.get()};this.editor.addOverlayWidget(i);const n=yt(o=>{e.position.read(o),e.minContentWidthInPx.read(o),this.editor.layoutOverlayWidget(i)});return tt(()=>{n.dispose(),this.editor.removeOverlayWidget(i)})}};bg._map=new Map;let vW=bg;function CW(s,e){return x4e({createEmptyChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(s)){const n=t.change;n!==void 0&&i.deltas.push(n),i.didChange=!0}return!0}},(t,i)=>{const n=s.read(t);i.didChange&&e(n,i.deltas)})}function iVe(s,e){const t=new _e,i=CW(s,(n,o)=>{t.clear(),e(n,o,t)});return{dispose(){i.dispose(),t.dispose()}}}var nVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},sVe=function(s,e){return function(t,i){e(t,i,s)}},DI,M_;let $R=(M_=class extends se{static setBreadcrumbsSourceFactory(e){this._breadcrumbsSourceFactory.set(e,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._instantiationService=n,this._modifiedOutlineSource=Ko(this,l=>{const c=this._editors.modifiedModel.read(l),d=DI._breadcrumbsSourceFactory.read(l);return!c||!d?void 0:d(c,this._instantiationService)}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Nn(d=>{for(const u of this._editors.original.getSelections()||[])c?.ensureOriginalLineIsVisible(u.getStartPosition().lineNumber,0,d),c?.ensureOriginalLineIsVisible(u.getEndPosition().lineNumber,0,d)})})),this._register(this._editors.modified.onDidChangeCursorPosition(l=>{if(l.reason===1)return;const c=this._diffModel.get();Nn(d=>{for(const u of this._editors.modified.getSelections()||[])c?.ensureModifiedLineIsVisible(u.getStartPosition().lineNumber,0,d),c?.ensureModifiedLineIsVisible(u.getEndPosition().lineNumber,0,d)})}));const o=this._diffModel.map((l,c)=>{const d=l?.unchangedRegions.read(c)??[];return d.length===1&&d[0].modifiedLineNumber===1&&d[0].lineCount===this._editors.modifiedModel.read(c)?.getLineCount()?[]:d});this.viewZones=zp(this,(l,c)=>{const d=this._modifiedOutlineSource.read(l);if(!d)return{origViewZones:[],modViewZones:[]};const u=[],f=[],p=this._options.renderSideBySide.read(l),m=this._options.compactMode.read(l),b=o.read(l);for(let w=0;w<b.length;w++){const y=b[w];if(!y.shouldHideControls(l)&&!(m&&(w===0||w===b.length-1)))if(m){{const S=Je(this,L=>y.getHiddenOriginalRange(L).startLineNumber-1),x=new GC(S,12);u.push(x),c.add(new Mie(this._editors.original,x,y,!p))}{const S=Je(this,L=>y.getHiddenModifiedRange(L).startLineNumber-1),x=new GC(S,12);f.push(x),c.add(new Mie(this._editors.modified,x,y))}}else{{const S=Je(this,L=>y.getHiddenOriginalRange(L).startLineNumber-1),x=new GC(S,24);u.push(x),c.add(new Aie(this._editors.original,x,y,y.originalUnchangedRange,!p,d,L=>this._diffModel.get().ensureModifiedLineIsVisible(L,2,void 0),this._options))}{const S=Je(this,L=>y.getHiddenModifiedRange(L).startLineNumber-1),x=new GC(S,24);f.push(x),c.add(new Aie(this._editors.modified,x,y,y.modifiedUnchangedRange,!1,d,L=>this._diffModel.get().ensureModifiedLineIsVisible(L,2,void 0),this._options))}}}return{origViewZones:u,modViewZones:f}});const r={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},a={description:"Fold Unchanged",glyphMarginHoverMessage:new Mo(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(v("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+ft.asClassName(De.fold),zIndex:10001};this._register(WR(this._editors.original,Je(this,l=>{const c=o.read(l),d=c.map(u=>({range:u.originalUnchangedRange.toInclusiveRange(),options:r}));for(const u of c)u.shouldHideControls(l)&&d.push({range:M.fromPositions(new ee(u.originalLineNumber,1)),options:a});return d}))),this._register(WR(this._editors.modified,Je(this,l=>{const c=o.read(l),d=c.map(u=>({range:u.modifiedUnchangedRange.toInclusiveRange(),options:r}));for(const u of c)u.shouldHideControls(l)&&d.push({range:Nt.ofLength(u.modifiedLineNumber,1).toInclusiveRange(),options:a});return d}))),this._register(yt(l=>{const c=o.read(l);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(c.map(d=>d.getHiddenOriginalRange(l).toInclusiveRange()).filter(wu)),this._editors.modified.setHiddenAreas(c.map(d=>d.getHiddenModifiedRange(l).toInclusiveRange()).filter(wu))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const u=d.unchangedRegions.get().find(f=>f.modifiedUnchangedRange.includes(c));if(!u)return;u.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){const c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;const u=d.unchangedRegions.get().find(f=>f.originalUnchangedRange.includes(c));if(!u)return;u.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}}))}},DI=M_,M_._breadcrumbsSourceFactory=Bt(DI,()=>({dispose(){},getBreadcrumbItems(e,t){return[]}})),M_);$R=DI=nVe([sVe(3,it)],$R);class Mie extends S${constructor(e,t,i,n=!1){const o=zt("div.diff-hidden-lines-widget");super(e,t,o.root),this._unchangedRegion=i,this._hide=n,this._nodes=zt("div.diff-hidden-lines-compact",[zt("div.line-left",[]),zt("div.text@text",[]),zt("div.line-right",[])]),o.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register(yt(r=>{if(!this._hide){const a=this._unchangedRegion.getHiddenModifiedRange(r).length,l=v("hiddenLines","{0} hidden lines",a);this._nodes.text.innerText=l}}))}}class Aie extends S${constructor(e,t,i,n,o,r,a,l){const c=zt("div.diff-hidden-lines-widget");super(e,t,c.root),this._editor=e,this._unchangedRegion=i,this._unchangedRegionRange=n,this._hide=o,this._modifiedOutlineSource=r,this._revealModifiedHiddenLine=a,this._options=l,this._nodes=zt("div.diff-hidden-lines",[zt("div.top@top",{title:v("diff.hiddenLines.top","Click or drag to show more above")}),zt("div.center@content",{style:{display:"flex"}},[zt("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[Ne("a",{title:v("showUnchangedRegion","Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Kg("$(unfold)"))]),zt("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),zt("div.bottom@bottom",{title:v("diff.bottom","Click or drag to show more below"),role:"button"})]),c.root.appendChild(this._nodes.root),this._hide?lo(this._nodes.first):this._register(_f(this._nodes.first,{width:la(this._editor).layoutInfoContentLeft})),this._register(yt(u=>{const f=this._unchangedRegion.visibleLineCountTop.read(u)+this._unchangedRegion.visibleLineCountBottom.read(u)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!f),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(u)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(u)>0),this._nodes.top.classList.toggle("canMoveBottom",!f);const p=this._unchangedRegion.isDragged.read(u),m=this._editor.getDomNode();m&&(m.classList.toggle("draggingUnchangedRegion",!!p),p==="top"?(m.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(u)>0),m.classList.toggle("canMoveBottom",!f)):p==="bottom"?(m.classList.toggle("canMoveTop",!f),m.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(u)>0)):(m.classList.toggle("canMoveTop",!1),m.classList.toggle("canMoveBottom",!1)))}));const d=this._editor;this._register(de(this._nodes.top,"mousedown",u=>{if(u.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),u.preventDefault();const f=u.clientY;let p=!1;const m=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);const b=ct(this._nodes.top),w=de(b,"mousemove",S=>{const L=S.clientY-f;p=p||Math.abs(L)>2;const N=Math.round(L/d.getOption(67)),I=Math.max(0,Math.min(m+N,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(I,void 0)}),y=de(b,"mouseup",S=>{p||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(void 0,void 0),w.dispose(),y.dispose()})})),this._register(de(this._nodes.bottom,"mousedown",u=>{if(u.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),u.preventDefault();const f=u.clientY;let p=!1;const m=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);const b=ct(this._nodes.bottom),w=de(b,"mousemove",S=>{const L=S.clientY-f;p=p||Math.abs(L)>2;const N=Math.round(L/d.getOption(67)),I=Math.max(0,Math.min(m-N,this._unchangedRegion.getMaxVisibleLineCountBottom())),T=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(I,void 0);const A=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(A-T))}),y=de(b,"mouseup",S=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!p){const x=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);const L=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(L-x))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),w.dispose(),y.dispose()})})),this._register(yt(u=>{const f=[];if(!this._hide){const p=i.getHiddenModifiedRange(u).length,m=v("hiddenLines","{0} hidden lines",p),b=Ne("span",{title:v("diff.hiddenLines.expandAll","Double click to unfold")},m);b.addEventListener("dblclick",S=>{S.button===0&&(S.preventDefault(),this._unchangedRegion.showAll(void 0))}),f.push(b);const w=this._unchangedRegion.getHiddenModifiedRange(u),y=this._modifiedOutlineSource.getBreadcrumbItems(w,u);if(y.length>0){f.push(Ne("span",void 0,"  |  "));for(let S=0;S<y.length;S++){const x=y[S],L=sT.toIcon(x.kind),N=zt("div.breadcrumb-item",{style:{display:"flex",alignItems:"center"}},[Rb(L)," ",x.name,...S===y.length-1?[]:[Rb(De.chevronRight)]]).root;f.push(N),N.onclick=()=>{this._revealModifiedHiddenLine(x.startLineNumber)}}}}lo(this._nodes.others,...f)}))}}var oVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},rVe=function(s,e){return function(t,i){e(t,i,s)}},qc,Xh;let FL=(Xh=class extends se{constructor(e,t,i,n,o,r,a){super(),this._editors=e,this._rootElement=t,this._diffModel=i,this._rootWidth=n,this._rootHeight=o,this._modifiedEditorLayoutInfo=r,this._themeService=a,this.width=qc.ENTIRE_DIFF_OVERVIEW_WIDTH;const l=ki(this._themeService.onDidColorThemeChange,()=>this._themeService.getColorTheme()),c=Je(f=>{const p=l.read(f),m=p.getColor(x2e)||(p.getColor(y2e)||U7).transparent(2),b=p.getColor(L2e)||(p.getColor(S2e)||j7).transparent(2);return{insertColor:m,removeColor:b}}),d=wi(document.createElement("div"));d.setClassName("diffViewport"),d.setPosition("absolute");const u=zt("div.diffOverview",{style:{position:"absolute",top:"0px",width:qc.ENTIRE_DIFF_OVERVIEW_WIDTH+"px"}}).root;this._register(KC(u,d.domNode)),this._register(On(u,Ee.POINTER_DOWN,f=>{this._editors.modified.delegateVerticalScrollbarPointerDown(f)})),this._register(de(u,Ee.MOUSE_WHEEL,f=>{this._editors.modified.delegateScrollFromMouseWheelEvent(f)},{passive:!1})),this._register(KC(this._rootElement,u)),this._register(Fr((f,p)=>{const m=this._diffModel.read(f),b=this._editors.original.createOverviewRuler("original diffOverviewRuler");b&&(p.add(b),p.add(KC(u,b.getDomNode())));const w=this._editors.modified.createOverviewRuler("modified diffOverviewRuler");if(w&&(p.add(w),p.add(KC(u,w.getDomNode()))),!b||!w)return;const y=wo("viewZoneChanged",this._editors.original.onDidChangeViewZones),S=wo("viewZoneChanged",this._editors.modified.onDidChangeViewZones),x=wo("hiddenRangesChanged",this._editors.original.onDidChangeHiddenAreas),L=wo("hiddenRangesChanged",this._editors.modified.onDidChangeHiddenAreas);p.add(yt(N=>{y.read(N),S.read(N),x.read(N),L.read(N);const I=c.read(N),T=m?.diff.read(N)?.mappings;function A(H,z,ne){const G=ne._getViewModel();return G?H.filter(ie=>ie.length>0).map(ie=>{const Z=G.coordinatesConverter.convertModelPositionToViewPosition(new ee(ie.startLineNumber,1)),Q=G.coordinatesConverter.convertModelPositionToViewPosition(new ee(ie.endLineNumberExclusive,1)),oe=Q.lineNumber-Z.lineNumber;return new nhe(Z.lineNumber,Q.lineNumber,oe,z.toString())}):[]}const P=A((T||[]).map(H=>H.lineRangeMapping.original),I.removeColor,this._editors.original),F=A((T||[]).map(H=>H.lineRangeMapping.modified),I.insertColor,this._editors.modified);b?.setZones(P),w?.setZones(F)})),p.add(yt(N=>{const I=this._rootHeight.read(N),T=this._rootWidth.read(N),A=this._modifiedEditorLayoutInfo.read(N);if(A){const P=qc.ENTIRE_DIFF_OVERVIEW_WIDTH-2*qc.ONE_OVERVIEW_WIDTH;b.setLayout({top:0,height:I,right:P+qc.ONE_OVERVIEW_WIDTH,width:qc.ONE_OVERVIEW_WIDTH}),w.setLayout({top:0,height:I,right:0,width:qc.ONE_OVERVIEW_WIDTH});const F=this._editors.modifiedScrollTop.read(N),H=this._editors.modifiedScrollHeight.read(N),z=this._editors.modified.getOption(104),ne=new m1(z.verticalHasArrows?z.arrowSize:0,z.verticalScrollbarSize,0,A.height,H,F);d.setTop(ne.getSliderPosition()),d.setHeight(ne.getSliderSize())}else d.setTop(0),d.setHeight(0);u.style.height=I+"px",u.style.left=T-qc.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",d.setWidth(qc.ENTIRE_DIFF_OVERVIEW_WIDTH)}))}))}},qc=Xh,Xh.ONE_OVERVIEW_WIDTH=15,Xh.ENTIRE_DIFF_OVERVIEW_WIDTH=Xh.ONE_OVERVIEW_WIDTH*2,Xh);FL=qc=oVe([rVe(6,Es)],FL);const V3=[];class aVe extends se{constructor(e,t,i,n){super(),this._editors=e,this._diffModel=t,this._options=i,this._widget=n,this._selectedDiffs=Je(this,o=>{const a=this._diffModel.read(o)?.diff.read(o);if(!a)return V3;const l=this._editors.modifiedSelections.read(o);if(l.every(f=>f.isEmpty()))return V3;const c=new Tl(l.map(f=>Nt.fromRangeInclusive(f))),u=a.mappings.filter(f=>f.lineRangeMapping.innerChanges&&c.intersects(f.lineRangeMapping.modified)).map(f=>({mapping:f,rangeMappings:f.lineRangeMapping.innerChanges.filter(p=>l.some(m=>M.areIntersecting(p.modifiedRange,m)))}));return u.length===0||u.every(f=>f.rangeMappings.length===0)?V3:u}),this._register(Fr((o,r)=>{if(!this._options.shouldRenderOldRevertArrows.read(o))return;const a=this._diffModel.read(o),l=a?.diff.read(o);if(!a||!l||a.movedTextToCompare.read(o))return;const c=[],d=this._selectedDiffs.read(o),u=new Set(d.map(f=>f.mapping));if(d.length>0){const f=this._editors.modifiedSelections.read(o),p=r.add(new qR(f[f.length-1].positionLineNumber,this._widget,d.flatMap(m=>m.rangeMappings),!0));this._editors.modified.addGlyphMarginWidget(p),c.push(p)}for(const f of l.mappings)if(!u.has(f)&&!f.lineRangeMapping.modified.isEmpty&&f.lineRangeMapping.innerChanges){const p=r.add(new qR(f.lineRangeMapping.modified.startLineNumber,this._widget,f.lineRangeMapping,!1));this._editors.modified.addGlyphMarginWidget(p),c.push(p)}r.add(tt(()=>{for(const f of c)this._editors.modified.removeGlyphMarginWidget(f)}))}))}}const H2=class H2 extends se{getId(){return this._id}constructor(e,t,i,n){super(),this._lineNumber=e,this._widget=t,this._diffs=i,this._revertSelection=n,this._id=`revertButton${H2.counter++}`,this._domNode=zt("div.revertButton",{title:this._revertSelection?v("revertSelectedChanges","Revert Selected Changes"):v("revertChange","Revert Change")},[Rb(De.arrowRight)]).root,this._register(de(this._domNode,Ee.MOUSE_DOWN,o=>{o.button!==2&&(o.stopPropagation(),o.preventDefault())})),this._register(de(this._domNode,Ee.MOUSE_UP,o=>{o.stopPropagation(),o.preventDefault()})),this._register(de(this._domNode,Ee.CLICK,o=>{this._diffs instanceof Yo?this._widget.revert(this._diffs):this._widget.revertRangeMappings(this._diffs),o.stopPropagation(),o.preventDefault()}))}getDomNode(){return this._domNode}getPosition(){return{lane:Ic.Right,range:{startColumn:1,startLineNumber:this._lineNumber,endColumn:1,endLineNumber:this._lineNumber},zIndex:10001}}};H2.counter=0;let qR=H2;function lVe(s,e,t){return k4e({debugName:()=>`Configuration Key "${s}"`},i=>t.onDidChangeConfiguration(n=>{n.affectsConfiguration(s)&&i(n)}),()=>t.getValue(s)??e)}function Yc(s,e,t){const i=s.bindTo(e);return jk({debugName:()=>`Set Context Key "${s.key}"`},n=>{i.set(t(n))})}var cVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Oie=function(s,e){return function(t,i){e(t,i,s)}};let wW=class extends se{get onDidContentSizeChange(){return this._onDidContentSizeChange.event}constructor(e,t,i,n,o,r,a){super(),this.originalEditorElement=e,this.modifiedEditorElement=t,this._options=i,this._argCodeEditorWidgetOptions=n,this._createInnerEditor=o,this._instantiationService=r,this._keybindingService=a,this.original=this._register(this._createLeftHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.originalEditor||{})),this.modified=this._register(this._createRightHandSideEditor(this._options.editorOptions.get(),this._argCodeEditorWidgetOptions.modifiedEditor||{})),this._onDidContentSizeChange=this._register(new te),this.modifiedScrollTop=ki(this,this.modified.onDidScrollChange,()=>this.modified.getScrollTop()),this.modifiedScrollHeight=ki(this,this.modified.onDidScrollChange,()=>this.modified.getScrollHeight()),this.modifiedObs=la(this.modified),this.originalObs=la(this.original),this.modifiedModel=this.modifiedObs.model,this.modifiedSelections=ki(this,this.modified.onDidChangeCursorSelection,()=>this.modified.getSelections()??[]),this.modifiedCursor=ja({owner:this,equalsFn:ee.equals},l=>this.modifiedSelections.read(l)[0]?.getPosition()??new ee(1,1)),this.originalCursor=ki(this,this.original.onDidChangeCursorPosition,()=>this.original.getPosition()??new ee(1,1)),this._argCodeEditorWidgetOptions=null,this._register($k({createEmptyChangeSummary:()=>({}),handleChange:(l,c)=>(l.didChange(i.editorOptions)&&Object.assign(c,l.change.changedOptions),!0)},(l,c)=>{i.editorOptions.read(l),this._options.renderSideBySide.read(l),this.modified.updateOptions(this._adjustOptionsForRightHandSide(l,c)),this.original.updateOptions(this._adjustOptionsForLeftHandSide(l,c))}))}_createLeftHandSideEditor(e,t){const i=this._adjustOptionsForLeftHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.originalEditorElement,i,t);return n.setContextValue("isInDiffLeftEditor",!0),n}_createRightHandSideEditor(e,t){const i=this._adjustOptionsForRightHandSide(void 0,e),n=this._constructInnerEditor(this._instantiationService,this.modifiedEditorElement,i,t);return n.setContextValue("isInDiffRightEditor",!0),n}_constructInnerEditor(e,t,i,n){const o=this._createInnerEditor(e,t,i,n);return this._register(o.onDidContentSizeChange(r=>{const a=this.original.getContentWidth()+this.modified.getContentWidth()+FL.ENTIRE_DIFF_OVERVIEW_WIDTH,l=Math.max(this.modified.getContentHeight(),this.original.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:l,contentWidth:a,contentHeightChanged:r.contentHeightChanged,contentWidthChanged:r.contentWidthChanged})})),o}_adjustOptionsForLeftHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return this._options.renderSideBySide.get()?(i.unicodeHighlight=this._options.editorOptions.get().unicodeHighlight||{},i.wordWrapOverride1=this._options.diffWordWrap.get()):(i.wordWrapOverride1="off",i.wordWrapOverride2="off",i.stickyScroll={enabled:!1},i.unicodeHighlight={nonBasicASCII:!1,ambiguousCharacters:!1,invisibleCharacters:!1}),i.glyphMargin=this._options.renderSideBySide.get(),t.originalAriaLabel&&(i.ariaLabel=t.originalAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.readOnly=!this._options.originalEditable.get(),i.dropIntoEditor={enabled:!i.readOnly},i.extraEditorClassName="original-in-monaco-diff-editor",i}_adjustOptionsForRightHandSide(e,t){const i=this._adjustOptionsForSubEditor(t);return t.modifiedAriaLabel&&(i.ariaLabel=t.modifiedAriaLabel),i.ariaLabel=this._updateAriaLabel(i.ariaLabel),i.wordWrapOverride1=this._options.diffWordWrap.get(),i.revealHorizontalRightPadding=Id.revealHorizontalRightPadding.defaultValue+FL.ENTIRE_DIFF_OVERVIEW_WIDTH,i.scrollbar.verticalHasArrows=!1,i.extraEditorClassName="modified-in-monaco-diff-editor",i}_adjustOptionsForSubEditor(e){const t={...e,dimension:{height:0,width:0}};return t.inDiffEditor=!0,t.automaticLayout=!1,t.scrollbar={...t.scrollbar||{}},t.folding=!1,t.codeLens=this._options.diffCodeLens.get(),t.fixedOverflowWidgets=!0,t.minimap={...t.minimap||{}},t.minimap.enabled=!1,this._options.hideUnchangedRegions.get()?t.stickyScroll={enabled:!1}:t.stickyScroll=this._options.editorOptions.get().stickyScroll,t}_updateAriaLabel(e){e||(e="");const t=v("diff-aria-navigation-tip"," use {0} to open the accessibility help.",this._keybindingService.lookupKeybinding("editor.action.accessibilityHelp")?.getAriaLabel());return this._options.accessibilityVerbose.get()?e+t:e?e.replaceAll(t,""):""}};wW=cVe([Oie(5,it),Oie(6,yi)],wW);const V2=class V2 extends se{constructor(){super(...arguments),this._id=++V2.idCounter,this._onDidDispose=this._register(new te),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,t="api"){this._targetEditor.setPosition(e,t)}revealLine(e,t=0){this._targetEditor.revealLine(e,t)}revealLineInCenter(e,t=0){this._targetEditor.revealLineInCenter(e,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealLineInCenterIfOutsideViewport(e,t)}revealLineNearTop(e,t=0){this._targetEditor.revealLineNearTop(e,t)}revealPosition(e,t=0){this._targetEditor.revealPosition(e,t)}revealPositionInCenter(e,t=0){this._targetEditor.revealPositionInCenter(e,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealPositionInCenterIfOutsideViewport(e,t)}revealPositionNearTop(e,t=0){this._targetEditor.revealPositionNearTop(e,t)}getSelection(){return this._targetEditor.getSelection()}getSelections(){return this._targetEditor.getSelections()}setSelection(e,t="api"){this._targetEditor.setSelection(e,t)}setSelections(e,t="api"){this._targetEditor.setSelections(e,t)}revealLines(e,t,i=0){this._targetEditor.revealLines(e,t,i)}revealLinesInCenter(e,t,i=0){this._targetEditor.revealLinesInCenter(e,t,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._targetEditor.revealLinesInCenterIfOutsideViewport(e,t,i)}revealLinesNearTop(e,t,i=0){this._targetEditor.revealLinesNearTop(e,t,i)}revealRange(e,t=0,i=!1,n=!0){this._targetEditor.revealRange(e,t,i,n)}revealRangeInCenter(e,t=0){this._targetEditor.revealRangeInCenter(e,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._targetEditor.revealRangeInCenterIfOutsideViewport(e,t)}revealRangeNearTop(e,t=0){this._targetEditor.revealRangeNearTop(e,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._targetEditor.revealRangeNearTopIfOutsideViewport(e,t)}revealRangeAtTop(e,t=0){this._targetEditor.revealRangeAtTop(e,t)}getSupportedActions(){return this._targetEditor.getSupportedActions()}focus(){this._targetEditor.focus()}trigger(e,t,i){this._targetEditor.trigger(e,t,i)}createDecorationsCollection(e){return this._targetEditor.createDecorationsCollection(e)}changeDecorations(e){return this._targetEditor.changeDecorations(e)}};V2.idCounter=0;let yW=V2;var dVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},uVe=function(s,e){return function(t,i){e(t,i,s)}};let SW=class{get editorOptions(){return this._options}constructor(e,t){this._accessibilityService=t,this._diffEditorWidth=Bt(this,0),this._screenReaderMode=ki(this,this._accessibilityService.onDidChangeScreenReaderOptimized,()=>this._accessibilityService.isScreenReaderOptimized()),this.couldShowInlineViewBecauseOfSize=Je(this,n=>this._options.read(n).renderSideBySide&&this._diffEditorWidth.read(n)<=this._options.read(n).renderSideBySideInlineBreakpoint),this.renderOverviewRuler=Je(this,n=>this._options.read(n).renderOverviewRuler),this.renderSideBySide=Je(this,n=>this.compactMode.read(n)&&this.shouldRenderInlineViewInSmartMode.read(n)?!1:this._options.read(n).renderSideBySide&&!(this._options.read(n).useInlineViewWhenSpaceIsLimited&&this.couldShowInlineViewBecauseOfSize.read(n)&&!this._screenReaderMode.read(n))),this.readOnly=Je(this,n=>this._options.read(n).readOnly),this.shouldRenderOldRevertArrows=Je(this,n=>!(!this._options.read(n).renderMarginRevertIcon||!this.renderSideBySide.read(n)||this.readOnly.read(n)||this.shouldRenderGutterMenu.read(n))),this.shouldRenderGutterMenu=Je(this,n=>this._options.read(n).renderGutterMenu),this.renderIndicators=Je(this,n=>this._options.read(n).renderIndicators),this.enableSplitViewResizing=Je(this,n=>this._options.read(n).enableSplitViewResizing),this.splitViewDefaultRatio=Je(this,n=>this._options.read(n).splitViewDefaultRatio),this.ignoreTrimWhitespace=Je(this,n=>this._options.read(n).ignoreTrimWhitespace),this.maxComputationTimeMs=Je(this,n=>this._options.read(n).maxComputationTime),this.showMoves=Je(this,n=>this._options.read(n).experimental.showMoves&&this.renderSideBySide.read(n)),this.isInEmbeddedEditor=Je(this,n=>this._options.read(n).isInEmbeddedEditor),this.diffWordWrap=Je(this,n=>this._options.read(n).diffWordWrap),this.originalEditable=Je(this,n=>this._options.read(n).originalEditable),this.diffCodeLens=Je(this,n=>this._options.read(n).diffCodeLens),this.accessibilityVerbose=Je(this,n=>this._options.read(n).accessibilityVerbose),this.diffAlgorithm=Je(this,n=>this._options.read(n).diffAlgorithm),this.showEmptyDecorations=Je(this,n=>this._options.read(n).experimental.showEmptyDecorations),this.onlyShowAccessibleDiffViewer=Je(this,n=>this._options.read(n).onlyShowAccessibleDiffViewer),this.compactMode=Je(this,n=>this._options.read(n).compactMode),this.trueInlineDiffRenderingEnabled=Je(this,n=>this._options.read(n).experimental.useTrueInlineView),this.useTrueInlineDiffRendering=Je(this,n=>!this.renderSideBySide.read(n)&&this.trueInlineDiffRenderingEnabled.read(n)),this.hideUnchangedRegions=Je(this,n=>this._options.read(n).hideUnchangedRegions.enabled),this.hideUnchangedRegionsRevealLineCount=Je(this,n=>this._options.read(n).hideUnchangedRegions.revealLineCount),this.hideUnchangedRegionsContextLineCount=Je(this,n=>this._options.read(n).hideUnchangedRegions.contextLineCount),this.hideUnchangedRegionsMinimumLineCount=Je(this,n=>this._options.read(n).hideUnchangedRegions.minimumLineCount),this._model=Bt(this,void 0),this.shouldRenderInlineViewInSmartMode=this._model.map(this,n=>I4e(this,o=>{const r=n?.diff.read(o);return r?hVe(r,this.trueInlineDiffRenderingEnabled.read(o)):void 0})).flatten().map(this,n=>!!n),this.inlineViewHideOriginalLineNumbers=this.compactMode;const i={...e,...Pie(e,po)};this._options=Bt(this,i)}updateOptions(e){const t=Pie(e,this._options.get()),i={...this._options.get(),...e,...t};this._options.set(i,void 0,{changedOptions:e})}setWidth(e){this._diffEditorWidth.set(e,void 0)}setModel(e){this._model.set(e,void 0)}};SW=dVe([uVe(1,wa)],SW);function hVe(s,e){return s.mappings.every(t=>fVe(t.lineRangeMapping)||gVe(t.lineRangeMapping)||e&&R$(t.lineRangeMapping))}function fVe(s){return s.original.length===0}function gVe(s){return s.modified.length===0}function Pie(s,e){return{enableSplitViewResizing:et(s.enableSplitViewResizing,e.enableSplitViewResizing),splitViewDefaultRatio:mDe(s.splitViewDefaultRatio,.5,.1,.9),renderSideBySide:et(s.renderSideBySide,e.renderSideBySide),renderMarginRevertIcon:et(s.renderMarginRevertIcon,e.renderMarginRevertIcon),maxComputationTime:xm(s.maxComputationTime,e.maxComputationTime,0,1073741824),maxFileSize:xm(s.maxFileSize,e.maxFileSize,0,1073741824),ignoreTrimWhitespace:et(s.ignoreTrimWhitespace,e.ignoreTrimWhitespace),renderIndicators:et(s.renderIndicators,e.renderIndicators),originalEditable:et(s.originalEditable,e.originalEditable),diffCodeLens:et(s.diffCodeLens,e.diffCodeLens),renderOverviewRuler:et(s.renderOverviewRuler,e.renderOverviewRuler),diffWordWrap:Hn(s.diffWordWrap,e.diffWordWrap,["off","on","inherit"]),diffAlgorithm:Hn(s.diffAlgorithm,e.diffAlgorithm,["legacy","advanced"],{smart:"legacy",experimental:"advanced"}),accessibilityVerbose:et(s.accessibilityVerbose,e.accessibilityVerbose),experimental:{showMoves:et(s.experimental?.showMoves,e.experimental.showMoves),showEmptyDecorations:et(s.experimental?.showEmptyDecorations,e.experimental.showEmptyDecorations),useTrueInlineView:et(s.experimental?.useTrueInlineView,e.experimental.useTrueInlineView)},hideUnchangedRegions:{enabled:et(s.hideUnchangedRegions?.enabled??s.experimental?.collapseUnchangedRegions,e.hideUnchangedRegions.enabled),contextLineCount:xm(s.hideUnchangedRegions?.contextLineCount,e.hideUnchangedRegions.contextLineCount,0,1073741824),minimumLineCount:xm(s.hideUnchangedRegions?.minimumLineCount,e.hideUnchangedRegions.minimumLineCount,0,1073741824),revealLineCount:xm(s.hideUnchangedRegions?.revealLineCount,e.hideUnchangedRegions.revealLineCount,0,1073741824)},isInEmbeddedEditor:et(s.isInEmbeddedEditor,e.isInEmbeddedEditor),onlyShowAccessibleDiffViewer:et(s.onlyShowAccessibleDiffViewer,e.onlyShowAccessibleDiffViewer),renderSideBySideInlineBreakpoint:xm(s.renderSideBySideInlineBreakpoint,e.renderSideBySideInlineBreakpoint,0,1073741824),useInlineViewWhenSpaceIsLimited:et(s.useInlineViewWhenSpaceIsLimited,e.useInlineViewWhenSpaceIsLimited),renderGutterMenu:et(s.renderGutterMenu,e.renderGutterMenu),compactMode:et(s.compactMode,e.compactMode)}}var pVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},j0=function(s,e){return function(t,i){e(t,i,s)}};let bf=class extends yW{get onDidContentSizeChange(){return this._editors.onDidContentSizeChange}constructor(e,t,i,n,o,r,a,l){super(),this._domElement=e,this._parentContextKeyService=n,this._parentInstantiationService=o,this._accessibilitySignalService=a,this._editorProgressService=l,this.elements=zt("div.monaco-diff-editor.side-by-side",{style:{position:"relative",height:"100%"}},[zt("div.editor.original@original",{style:{position:"absolute",height:"100%"}}),zt("div.editor.modified@modified",{style:{position:"absolute",height:"100%"}}),zt("div.accessibleDiffViewer@accessibleDiffViewer",{style:{position:"absolute",height:"100%"}})]),this._diffModelSrc=this._register(uL(this,void 0)),this._diffModel=Je(this,L=>this._diffModelSrc.read(L)?.object),this.onDidChangeModel=Me.fromObservableLight(this._diffModel),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._domElement)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new my([gt,this._contextKeyService]))),this._boundarySashes=Bt(this,void 0),this._accessibleDiffViewerShouldBeVisible=Bt(this,!1),this._accessibleDiffViewerVisible=Je(this,L=>this._options.onlyShowAccessibleDiffViewer.read(L)?!0:this._accessibleDiffViewerShouldBeVisible.read(L)),this._movedBlocksLinesPart=Bt(this,void 0),this._layoutInfo=Je(this,L=>{const N=this._rootSizeObserver.width.read(L),I=this._rootSizeObserver.height.read(L);this._rootSizeObserver.automaticLayout?this.elements.root.style.height="100%":this.elements.root.style.height=I+"px";const T=this._sash.read(L),A=this._gutter.read(L),P=A?.width.read(L)??0,F=this._overviewRulerPart.read(L)?.width??0;let H,z,ne,G,ie;if(!!T){const Q=T.sashLeft.read(L),oe=this._movedBlocksLinesPart.read(L)?.width.read(L)??0;H=0,z=Q-P-oe,ie=Q-P,ne=Q,G=N-ne-F}else{ie=0;const Q=this._options.inlineViewHideOriginalLineNumbers.read(L);H=P,Q?z=0:z=Math.max(5,this._editors.originalObs.layoutInfoDecorationsLeft.read(L)),ne=P+z,G=N-ne-F}return this.elements.original.style.left=H+"px",this.elements.original.style.width=z+"px",this._editors.original.layout({width:z,height:I},!0),A?.layout(ie),this.elements.modified.style.left=ne+"px",this.elements.modified.style.width=G+"px",this._editors.modified.layout({width:G,height:I},!0),{modifiedEditor:this._editors.modified.getLayoutInfo(),originalEditor:this._editors.original.getLayoutInfo()}}),this._diffValue=this._diffModel.map((L,N)=>L?.diff.read(N)),this.onDidUpdateDiff=Me.fromObservableLight(this._diffValue),r.willCreateDiffEditor(),this._contextKeyService.createKey("isInDiffEditor",!0),this._domElement.appendChild(this.elements.root),this._register(tt(()=>this.elements.root.remove())),this._rootSizeObserver=this._register(new lhe(this.elements.root,t.dimension)),this._rootSizeObserver.setAutomaticLayout(t.automaticLayout??!1),this._options=this._instantiationService.createInstance(SW,t),this._register(yt(L=>{this._options.setWidth(this._rootSizeObserver.width.read(L))})),this._contextKeyService.createKey(W.isEmbeddedDiffEditor.key,!1),this._register(Yc(W.isEmbeddedDiffEditor,this._contextKeyService,L=>this._options.isInEmbeddedEditor.read(L))),this._register(Yc(W.comparingMovedCode,this._contextKeyService,L=>!!this._diffModel.read(L)?.movedTextToCompare.read(L))),this._register(Yc(W.diffEditorRenderSideBySideInlineBreakpointReached,this._contextKeyService,L=>this._options.couldShowInlineViewBecauseOfSize.read(L))),this._register(Yc(W.diffEditorInlineMode,this._contextKeyService,L=>!this._options.renderSideBySide.read(L))),this._register(Yc(W.hasChanges,this._contextKeyService,L=>(this._diffModel.read(L)?.diff.read(L)?.mappings.length??0)>0)),this._editors=this._register(this._instantiationService.createInstance(wW,this.elements.original,this.elements.modified,this._options,i,(L,N,I,T)=>this._createInnerEditor(L,N,I,T))),this._register(Yc(W.diffEditorOriginalWritable,this._contextKeyService,L=>this._options.originalEditable.read(L))),this._register(Yc(W.diffEditorModifiedWritable,this._contextKeyService,L=>!this._options.readOnly.read(L))),this._register(Yc(W.diffEditorOriginalUri,this._contextKeyService,L=>this._diffModel.read(L)?.model.original.uri.toString()??"")),this._register(Yc(W.diffEditorModifiedUri,this._contextKeyService,L=>this._diffModel.read(L)?.model.modified.uri.toString()??"")),this._overviewRulerPart=Ko(this,L=>this._options.renderOverviewRuler.read(L)?this._instantiationService.createInstance(na(FL,L),this._editors,this.elements.root,this._diffModel,this._rootSizeObserver.width,this._rootSizeObserver.height,this._layoutInfo.map(N=>N.modifiedEditor)):void 0).recomputeInitiallyAndOnChange(this._store);const c={height:this._rootSizeObserver.height,width:this._rootSizeObserver.width.map((L,N)=>L-(this._overviewRulerPart.read(N)?.width??0))};this._sashLayout=new QHe(this._options,c),this._sash=Ko(this,L=>{const N=this._options.renderSideBySide.read(L);return this.elements.root.classList.toggle("side-by-side",N),N?new fhe(this.elements.root,c,this._options.enableSplitViewResizing,this._boundarySashes,this._sashLayout.sashLeft,()=>this._sashLayout.resetSash()):void 0}).recomputeInitiallyAndOnChange(this._store);const d=Ko(this,L=>this._instantiationService.createInstance(na($R,L),this._editors,this._diffModel,this._options)).recomputeInitiallyAndOnChange(this._store);Ko(this,L=>this._instantiationService.createInstance(na(XHe,L),this._editors,this._diffModel,this._options,this)).recomputeInitiallyAndOnChange(this._store);const u=new Set,f=new Set;let p=!1;const m=Ko(this,L=>this._instantiationService.createInstance(na(mW,L),ct(this._domElement),this._editors,this._diffModel,this._options,this,()=>p||d.get().isUpdatingHiddenAreas,u,f)).recomputeInitiallyAndOnChange(this._store),b=Je(this,L=>{const N=m.read(L).viewZones.read(L).orig,I=d.read(L).viewZones.read(L).origViewZones;return N.concat(I)}),w=Je(this,L=>{const N=m.read(L).viewZones.read(L).mod,I=d.read(L).viewZones.read(L).modViewZones;return N.concat(I)});this._register(HR(this._editors.original,b,L=>{p=L},u));let y;this._register(HR(this._editors.modified,w,L=>{p=L,p?y=Dd.capture(this._editors.modified):(y?.restore(this._editors.modified),y=void 0)},f)),this._accessibleDiffViewer=Ko(this,L=>this._instantiationService.createInstance(na(a_,L),this.elements.accessibleDiffViewer,this._accessibleDiffViewerVisible,(N,I)=>this._accessibleDiffViewerShouldBeVisible.set(N,I),this._options.onlyShowAccessibleDiffViewer.map(N=>!N),this._rootSizeObserver.width,this._rootSizeObserver.height,this._diffModel.map((N,I)=>N?.diff.read(I)?.mappings.map(T=>T.lineRangeMapping)),new WHe(this._editors))).recomputeInitiallyAndOnChange(this._store);const S=this._accessibleDiffViewerVisible.map(L=>L?"hidden":"visible");this._register(_f(this.elements.modified,{visibility:S})),this._register(_f(this.elements.original,{visibility:S})),this._createDiffEditorContributions(),r.addDiffEditor(this),this._gutter=Ko(this,L=>this._options.shouldRenderGutterMenu.read(L)?this._instantiationService.createInstance(na(_W,L),this.elements.root,this._diffModel,this._editors,this._options,this._sashLayout,this._boundarySashes):void 0),this._register(hy(this._layoutInfo)),Ko(this,L=>new(na(Vw,L))(this.elements.root,this._diffModel,this._layoutInfo.map(N=>N.originalEditor),this._layoutInfo.map(N=>N.modifiedEditor),this._editors)).recomputeInitiallyAndOnChange(this._store,L=>{this._movedBlocksLinesPart.set(L,void 0)}),this._register(Me.runAndSubscribe(this._editors.modified.onDidChangeCursorPosition,L=>this._handleCursorPositionChange(L,!0))),this._register(Me.runAndSubscribe(this._editors.original.onDidChangeCursorPosition,L=>this._handleCursorPositionChange(L,!1)));const x=this._diffModel.map(this,(L,N)=>{if(L)return L.diff.read(N)===void 0&&!L.isDiffUpToDate.read(N)});this._register(Fr((L,N)=>{if(x.read(L)===!0){const I=this._editorProgressService.show(!0,1e3);N.add(tt(()=>I.done()))}})),this._register(Fr((L,N)=>{N.add(new(na(aVe,L))(this._editors,this._diffModel,this._options,this))})),this._register(Fr((L,N)=>{const I=this._diffModel.read(L);if(I)for(const T of[I.model.original,I.model.modified])N.add(T.onWillDispose(A=>{xt(new _i("TextModel got disposed before DiffEditorWidget model got reset")),this.setModel(null)}))})),this._register(yt(L=>{this._options.setModel(this._diffModel.read(L))}))}_createInnerEditor(e,t,i,n){return e.createInstance(ML,t,i,n)}_createDiffEditorContributions(){const e=p_.getDiffEditorContributions();for(const t of e)try{this._register(this._instantiationService.createInstance(t.ctor,this))}catch(i){xt(i)}}get _targetEditor(){return this._editors.modified}getEditorType(){return Qk.IDiffEditor}layout(e){this._rootSizeObserver.observe(e)}hasTextFocus(){return this._editors.original.hasTextFocus()||this._editors.modified.hasTextFocus()}saveViewState(){const e=this._editors.original.saveViewState(),t=this._editors.modified.saveViewState();return{original:e,modified:t,modelState:this._diffModel.get()?.serializeState()}}restoreViewState(e){if(e&&e.original&&e.modified){const t=e;this._editors.original.restoreViewState(t.original),this._editors.modified.restoreViewState(t.modified),t.modelState&&this._diffModel.get()?.restoreSerializedState(t.modelState)}}handleInitialized(){this._editors.original.handleInitialized(),this._editors.modified.handleInitialized()}createViewModel(e){return this._instantiationService.createInstance(pW,e,this._options)}getModel(){return this._diffModel.get()?.model??null}setModel(e){const t=e?"model"in e?VR.create(e).createNewRef(this):VR.create(this.createViewModel(e),this):null;this.setDiffModel(t)}setDiffModel(e,t){const i=this._diffModel.get();!e&&i&&this._accessibleDiffViewer.get().close(),this._diffModel.get()!==e?.object&&Ob(t,n=>{const o=e?.object;ki.batchEventsGlobally(n,()=>{this._editors.original.setModel(o?o.model.original:null),this._editors.modified.setModel(o?o.model.modified:null)});const r=this._diffModelSrc.get()?.createNewRef(this);this._diffModelSrc.set(e?.createNewRef(this),n),setTimeout(()=>{r?.dispose()},0)})}updateOptions(e){this._options.updateOptions(e)}getContainerDomNode(){return this._domElement}getOriginalEditor(){return this._editors.original}getModifiedEditor(){return this._editors.modified}getLineChanges(){const e=this._diffModel.get()?.diff.get();return e?mVe(e):null}revert(e){const t=this._diffModel.get();!t||!t.isDiffUpToDate.get()||this._editors.modified.executeEdits("diffEditor",[{range:e.modified.toExclusiveRange(),text:t.model.original.getValueInRange(e.original.toExclusiveRange())}])}revertRangeMappings(e){const t=this._diffModel.get();if(!t||!t.isDiffUpToDate.get())return;const i=e.map(n=>({range:n.modifiedRange,text:t.model.original.getValueInRange(n.originalRange)}));this._editors.modified.executeEdits("diffEditor",i)}_goTo(e){this._editors.modified.setPosition(new ee(e.lineRangeMapping.modified.startLineNumber,1)),this._editors.modified.revealRangeInCenter(e.lineRangeMapping.modified.toExclusiveRange())}goToDiff(e){const t=this._diffModel.get()?.diff.get()?.mappings;if(!t||t.length===0)return;const i=this._editors.modified.getPosition().lineNumber;let n;e==="next"?n=t.find(o=>o.lineRangeMapping.modified.startLineNumber>i)??t[0]:n=Gx(t,o=>o.lineRangeMapping.modified.startLineNumber<i)??t[t.length-1],this._goTo(n),n.lineRangeMapping.modified.isEmpty?this._accessibilitySignalService.playSignal(Va.diffLineDeleted,{source:"diffEditor.goToDiff"}):n.lineRangeMapping.original.isEmpty?this._accessibilitySignalService.playSignal(Va.diffLineInserted,{source:"diffEditor.goToDiff"}):n&&this._accessibilitySignalService.playSignal(Va.diffLineModified,{source:"diffEditor.goToDiff"})}revealFirstDiff(){const e=this._diffModel.get();e&&this.waitForDiff().then(()=>{const t=e.diff.get()?.mappings;!t||t.length===0||this._goTo(t[0])})}accessibleDiffViewerNext(){this._accessibleDiffViewer.get().next()}accessibleDiffViewerPrev(){this._accessibleDiffViewer.get().prev()}async waitForDiff(){const e=this._diffModel.get();e&&await e.waitForDiff()}mapToOtherSide(){const e=this._editors.modified.hasWidgetFocus(),t=e?this._editors.modified:this._editors.original,i=e?this._editors.original:this._editors.modified;let n;const o=t.getSelection();if(o){const r=this._diffModel.get()?.diff.get()?.mappings.map(a=>e?a.lineRangeMapping.flip():a.lineRangeMapping);if(r){const a=Cie(o.getStartPosition(),r),l=Cie(o.getEndPosition(),r);n=M.plusRange(a,l)}}return{destination:i,destinationSelection:n}}switchSide(){const{destination:e,destinationSelection:t}=this.mapToOtherSide();e.focus(),t&&e.setSelection(t)}exitCompareMove(){const e=this._diffModel.get();e&&e.movedTextToCompare.set(void 0,void 0)}collapseAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Nn(t=>{for(const i of e)i.collapseAll(t)})}showAllUnchangedRegions(){const e=this._diffModel.get()?.unchangedRegions.get();e&&Nn(t=>{for(const i of e)i.showAll(t)})}_handleCursorPositionChange(e,t){if(e?.reason===3){const i=this._diffModel.get()?.diff.get()?.mappings.find(n=>t?n.lineRangeMapping.modified.contains(e.position.lineNumber):n.lineRangeMapping.original.contains(e.position.lineNumber));i?.lineRangeMapping.modified.isEmpty?this._accessibilitySignalService.playSignal(Va.diffLineDeleted,{source:"diffEditor.cursorPositionChanged"}):i?.lineRangeMapping.original.isEmpty?this._accessibilitySignalService.playSignal(Va.diffLineInserted,{source:"diffEditor.cursorPositionChanged"}):i&&this._accessibilitySignalService.playSignal(Va.diffLineModified,{source:"diffEditor.cursorPositionChanged"})}}};bf=pVe([j0(3,gt),j0(4,it),j0(5,gi),j0(6,jp),j0(7,Vp)],bf);function mVe(s){return s.mappings.map(e=>{const t=e.lineRangeMapping;let i,n,o,r,a=t.innerChanges;return t.original.isEmpty?(i=t.original.startLineNumber-1,n=0,a=void 0):(i=t.original.startLineNumber,n=t.original.endLineNumberExclusive-1),t.modified.isEmpty?(o=t.modified.startLineNumber-1,r=0,a=void 0):(o=t.modified.startLineNumber,r=t.modified.endLineNumberExclusive-1),{originalStartLineNumber:i,originalEndLineNumber:n,modifiedStartLineNumber:o,modifiedEndLineNumber:r,charChanges:a?.map(l=>({originalStartLineNumber:l.originalRange.startLineNumber,originalStartColumn:l.originalRange.startColumn,originalEndLineNumber:l.originalRange.endLineNumber,originalEndColumn:l.originalRange.endColumn,modifiedStartLineNumber:l.modifiedRange.startLineNumber,modifiedStartColumn:l.modifiedRange.startColumn,modifiedEndLineNumber:l.modifiedRange.endLineNumber,modifiedEndColumn:l.modifiedRange.endColumn}))}})}var A$=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},nn=function(s,e){return function(t,i){e(t,i,s)}};let _Ve=0,Fie=!1;function bVe(s){if(!s){if(Fie)return;Fie=!0}wPe(s||Hi.document.body)}let KR=class extends ML{constructor(e,t,i,n,o,r,a,l,c,d,u,f,p){const m={...t};m.ariaLabel=m.ariaLabel||_8.editorViewAccessibleLabel,super(e,m,{},i,n,o,r,c,d,u,f,p),l instanceof k1?this._standaloneKeybindingService=l:this._standaloneKeybindingService=null,bVe(m.ariaContainerElement),O4e((b,w)=>i.createInstance(g1,b,w,{})),P4e(a)}addCommand(e,t,i){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;const n="DYNAMIC_"+ ++_Ve,o=be.deserialize(i);return this._standaloneKeybindingService.addDynamicKeybinding(n,e,t,o),n}createContextKey(e,t){return this._contextKeyService.createKey(e,t)}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"),se.None;const t=e.id,i=e.label,n=be.and(be.equals("editorId",this.getId()),be.deserialize(e.precondition)),o=e.keybindings,r=be.and(n,be.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,l=e.contextMenuOrder||0,c=(p,...m)=>Promise.resolve(e.run(this,...m)),d=new _e,u=this.getId()+":"+t;if(d.add(ni.registerCommand(u,c)),a){const p={command:{id:u,title:i},when:n,group:a,order:l};d.add(qs.appendMenuItem(Ge.EditorContext,p))}if(Array.isArray(o))for(const p of o)d.add(this._standaloneKeybindingService.addDynamicKeybinding(u,p,c,r));const f=new she(u,i,i,void 0,n,(...p)=>Promise.resolve(e.run(this,...p)),this._contextKeyService);return this._actions.set(t,f),d.add(tt(()=>{this._actions.delete(t)})),d}_triggerCommand(e,t){if(this._codeEditorService instanceof kT)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(e,t)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(e,t)}};KR=A$([nn(2,it),nn(3,gi),nn(4,en),nn(5,gt),nn(6,Vu),nn(7,yi),nn(8,Es),nn(9,rs),nn(10,wa),nn(11,Rn),nn(12,qe)],KR);let xW=class extends KR{constructor(e,t,i,n,o,r,a,l,c,d,u,f,p,m,b,w){const y={...t};yR(u,y,!1);const S=c.registerEditorContainer(e);typeof y.theme=="string"&&c.setTheme(y.theme),typeof y.autoDetectHighContrast<"u"&&c.setAutoDetectHighContrast(!!y.autoDetectHighContrast);const x=y.model;delete y.model,super(e,y,i,n,o,r,a,l,c,d,f,b,w),this._configurationService=u,this._standaloneThemeService=c,this._register(S);let L;if(typeof x>"u"){const N=m.getLanguageIdByMimeType(y.language)||y.language||pr;L=_he(p,m,y.value||"",N,void 0),this._ownsModel=!0}else L=x,this._ownsModel=!1;if(this._attachModel(L),L){const N={oldModelUrl:null,newModelUrl:L.uri};this._onDidChangeModel.fire(N)}}dispose(){super.dispose()}updateOptions(e){yR(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)}};xW=A$([nn(2,it),nn(3,gi),nn(4,en),nn(5,gt),nn(6,Vu),nn(7,yi),nn(8,hl),nn(9,rs),nn(10,Wt),nn(11,wa),nn(12,ln),nn(13,xn),nn(14,Rn),nn(15,qe)],xW);let LW=class extends bf{constructor(e,t,i,n,o,r,a,l,c,d,u,f){const p={...t};yR(l,p,!0);const m=r.registerEditorContainer(e);typeof p.theme=="string"&&r.setTheme(p.theme),typeof p.autoDetectHighContrast<"u"&&r.setAutoDetectHighContrast(!!p.autoDetectHighContrast),super(e,p,{},n,i,o,f,d),this._configurationService=l,this._standaloneThemeService=r,this._register(m)}dispose(){super.dispose()}updateOptions(e){yR(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,t,i){return e.createInstance(KR,t,i)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(e,t,i){return this.getModifiedEditor().addCommand(e,t,i)}createContextKey(e,t){return this.getModifiedEditor().createContextKey(e,t)}addAction(e){return this.getModifiedEditor().addAction(e)}};LW=A$([nn(2,it),nn(3,gt),nn(4,gi),nn(5,hl),nn(6,rs),nn(7,Wt),nn(8,Ca),nn(9,Vp),nn(10,If),nn(11,jp)],LW);function _he(s,e,t,i,n){if(t=t||"",!i){const o=t.indexOf(`
716
716
  `);let r=t;return o!==-1&&(r=t.substring(0,o)),Bie(s,t,e.createByFilepathOrFirstLine(n||null,r),n)}return Bie(s,t,e.createById(i),n)}function Bie(s,e,t,i){return s.createModel(e,t,i)}var vVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Wie=function(s,e){return function(t,i){e(t,i,s)}};class CVe{constructor(e,t){this.viewModel=e,this.deltaScrollVertical=t}getId(){return this.viewModel}}let GR=class extends se{constructor(e,t,i,n,o){super(),this._container=e,this._overflowWidgetsDomNode=t,this._workbenchUIElementFactory=i,this._instantiationService=n,this._viewModel=Bt(this,void 0),this._collapsed=Je(this,l=>this._viewModel.read(l)?.collapsed.read(l)),this._editorContentHeight=Bt(this,500),this.contentHeight=Je(this,l=>(this._collapsed.read(l)?0:this._editorContentHeight.read(l))+this._outerEditorHeight),this._modifiedContentWidth=Bt(this,0),this._modifiedWidth=Bt(this,0),this._originalContentWidth=Bt(this,0),this._originalWidth=Bt(this,0),this.maxScroll=Je(this,l=>{const c=this._modifiedContentWidth.read(l)-this._modifiedWidth.read(l),d=this._originalContentWidth.read(l)-this._originalWidth.read(l);return c>d?{maxScroll:c,width:this._modifiedWidth.read(l)}:{maxScroll:d,width:this._originalWidth.read(l)}}),this._elements=zt("div.multiDiffEntry",[zt("div.header@header",[zt("div.header-content",[zt("div.collapse-button@collapseButton"),zt("div.file-path",[zt("div.title.modified.show-file-icons@primaryPath",[]),zt("div.status.deleted@status",["R"]),zt("div.title.original.show-file-icons@secondaryPath",[])]),zt("div.actions@actions")])]),zt("div.editorParent",[zt("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(bf,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode},{})),this.isModifedFocused=la(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=la(this.editor.getOriginalEditor()).isFocused,this.isFocused=Je(this,l=>this.isModifedFocused.read(l)||this.isOriginalFocused.read(l)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new _e),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const r=new oR(this._elements.collapseButton,{});this._register(yt(l=>{r.element.className="",r.icon=this._collapsed.read(l)?De.chevronRight:De.chevronDown})),this._register(r.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register(yt(l=>{this._elements.editor.style.display=this._collapsed.read(l)?"none":"block"})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(l=>{const c=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(c,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(l=>{const c=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(c,void 0)})),this._register(this.editor.onDidContentSizeChange(l=>{nS(c=>{this._editorContentHeight.set(l.contentHeight,c),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),c),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),c)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(l=>{if(this._isSettingScrollTop||!l.scrollTopChanged||!this._data)return;const c=l.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(c)})),this._register(yt(l=>{const c=this._viewModel.read(l)?.isActive.read(l);this._elements.root.classList.toggle("active",c)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(o.createScoped(this._elements.actions));const a=this._register(this._instantiationService.createChild(new my([gt,this._contextKeyService])));this._register(a.createInstance(jR,this._elements.actions,Ge.MultiDiffEditorFileToolbar,{actionRunner:this._register(new ghe(()=>this._viewModel.get()?.modifiedUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:l=>l.startsWith("navigation")},actionViewItemProvider:(l,c)=>dde(a,l,c)}))}setScrollLeft(e){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(e):this.editor.getOriginalEditor().setScrollLeft(e)}setData(e){this._data=e;function t(n){return{...n,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(!e){nS(n=>{this._viewModel.set(void 0,n),this.editor.setDiffModel(null,n),this._dataStore.clear()});return}const i=e.viewModel.documentDiffItem;if(nS(n=>{this._resourceLabel?.setUri(e.viewModel.modifiedUri??e.viewModel.originalUri,{strikethrough:e.viewModel.modifiedUri===void 0});let o=!1,r=!1,a=!1,l="";e.viewModel.modifiedUri&&e.viewModel.originalUri&&e.viewModel.modifiedUri.path!==e.viewModel.originalUri.path?(l="R",o=!0):e.viewModel.modifiedUri?e.viewModel.originalUri||(l="A",a=!0):(l="D",r=!0),this._elements.status.classList.toggle("renamed",o),this._elements.status.classList.toggle("deleted",r),this._elements.status.classList.toggle("added",a),this._elements.status.innerText=l,this._resourceLabel2?.setUri(o?e.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(e.viewModel,n),this.editor.setDiffModel(e.viewModel.diffEditorViewModelRef,n),this.editor.updateOptions(t(i.options??{}))}),i.onOptionsDidChange&&this._dataStore.add(i.onOptionsDidChange(()=>{this.editor.updateOptions(t(i.options??{}))})),e.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,n=>{n||this.setData(void 0)}),e.viewModel.documentDiffItem.contextKeys)for(const[n,o]of Object.entries(e.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(n,o)}render(e,t,i,n){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${e.start}px`,this._elements.root.style.height=`${e.length}px`,this._elements.root.style.width=`${t}px`,this._elements.root.style.position="absolute";const o=e.length-this._headerHeight,r=Math.max(0,Math.min(n.start-e.start,o));this._elements.header.style.transform=`translateY(${r}px)`,nS(a=>{this.editor.layout({width:t-16-2,height:e.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=i,this.editor.getOriginalEditor().setScrollTop(i)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",r>0||i>0),this._elements.header.classList.toggle("collapsed",r===o)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};GR=vVe([Wie(3,it),Wie(4,gt)],GR);class wVe{constructor(e){this._create=e,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(e){let t;if(this._unused.size===0)t=this._create(e),this._itemData.set(t,e);else{const i=[...this._unused.values()];t=i.find(n=>this._itemData.get(n).getId()===e.getId())??i[0],this._unused.delete(t),this._itemData.set(t,e),t.setData(e)}return this._used.add(t),{object:t,dispose:()=>{this._used.delete(t),this._unused.size>5?t.dispose():this._unused.add(t)}}}dispose(){for(const e of this._used)e.dispose();for(const e of this._unused)e.dispose();this._used.clear(),this._unused.clear()}}var yVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Hie=function(s,e){return function(t,i){e(t,i,s)}};let kW=class extends se{constructor(e,t,i,n,o,r){super(),this._element=e,this._dimension=t,this._viewModel=i,this._workbenchUIElementFactory=n,this._parentContextKeyService=o,this._parentInstantiationService=r,this._scrollableElements=zt("div.scrollContent",[zt("div@content",{style:{overflow:"hidden"}}),zt("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new ly({forceIntegerValues:!1,scheduleAtNextAnimationFrame:l=>ba(ct(this._element),l),smoothScrollDuration:100})),this._scrollableElement=this._register(new EO(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=zt("div.monaco-component.multiDiffEditor",{},[zt("div",{},[this._scrollableElement.getDomNode()]),zt("div.placeholder@placeholder",{},[zt("div",[v("noChangedFiles","No Changed Files")])])]),this._sizeObserver=this._register(new lhe(this._element,void 0)),this._objectPool=this._register(new wVe(l=>{const c=this._instantiationService.createInstance(GR,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return c.setData(l),c})),this.scrollTop=ki(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=ki(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=zp(this,(l,c)=>{const d=this._viewModel.read(l);if(!d)return{items:[],getItem:m=>{throw new _i}};const u=d.items.read(l),f=new Map;return{items:u.map(m=>{const b=c.add(new SVe(m,this._objectPool,this.scrollLeft,y=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+y})})),w=this._lastDocStates?.[b.getKey()];return w&&Nn(y=>{b.setViewState(w,y)}),f.set(m,b),b}),getItem:m=>f.get(m)}}),this._viewItems=this._viewItemsInfo.map(this,l=>l.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(l,c)=>l.reduce((d,u)=>d+u.contentHeight.read(c)+this._spaceBetweenPx,0)),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new my([gt,this._contextKeyService]))),this._lastDocStates={},this._contextKeyService.createKey(W.inMultiDiffEditor.key,!0),this._register(Fr((l,c)=>{const d=this._viewModel.read(l);if(d&&d.contextKeys)for(const[u,f]of Object.entries(d.contextKeys)){const p=this._contextKeyService.createKey(u,void 0);p.set(f),c.add(tt(()=>p.reset()))}}));const a=this._parentContextKeyService.createKey(W.multiDiffEditorAllCollapsed.key,!1);this._register(yt(l=>{const c=this._viewModel.read(l);if(c){const d=c.items.read(l).every(u=>u.collapsed.read(l));a.set(d)}})),this._register(yt(l=>{const c=this._dimension.read(l);this._sizeObserver.observe(c)})),this._register(yt(l=>{const c=this._viewItems.read(l);this._elements.placeholder.classList.toggle("visible",c.length===0)})),this._scrollableElements.content.style.position="relative",this._register(yt(l=>{const c=this._sizeObserver.height.read(l);this._scrollableElements.root.style.height=`${c}px`;const d=this._totalHeight.read(l);this._scrollableElements.content.style.height=`${d}px`;const u=this._sizeObserver.width.read(l);let f=u;const p=this._viewItems.read(l),m=AU(p,fr(b=>b.maxScroll.read(l).maxScroll,xc));if(m){const b=m.maxScroll.read(l);f=u+b.maxScroll}this._scrollableElement.setScrollDimensions({width:u,height:c,scrollHeight:d,scrollWidth:f})})),e.replaceChildren(this._elements.root),this._register(tt(()=>{e.replaceChildren()})),this._register(this._register(yt(l=>{nS(c=>{this.render(l)})})))}render(e){const t=this.scrollTop.read(e);let i=0,n=0,o=0;const r=this._sizeObserver.height.read(e),a=Ht.ofStartAndLength(t,r),l=this._sizeObserver.width.read(e);for(const c of this._viewItems.read(e)){const d=c.contentHeight.read(e),u=Math.min(d,r),f=Ht.ofStartAndLength(n,u),p=Ht.ofStartAndLength(o,d);if(p.isBefore(a))i-=d-u,c.hide();else if(p.isAfter(a))c.hide();else{const m=Math.max(0,Math.min(a.start-p.start,d-u));i-=m;const b=Ht.ofStartAndLength(t+i,r);c.render(f,m,l,b)}n+=u+this._spaceBetweenPx,o+=d+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(t+i)}px)`}};kW=yVe([Hie(4,gt),Hie(5,it)],kW);class SVe extends se{constructor(e,t,i,n){super(),this.viewModel=e,this._objectPool=t,this._scrollLeft=i,this._deltaScrollVertical=n,this._templateRef=this._register(uL(this,void 0)),this.contentHeight=Je(this,o=>this._templateRef.read(o)?.object.contentHeight?.read(o)??this.viewModel.lastTemplateData.read(o).contentHeight),this.maxScroll=Je(this,o=>this._templateRef.read(o)?.object.maxScroll.read(o)??{maxScroll:0,scrollWidth:0}),this.template=Je(this,o=>this._templateRef.read(o)?.object),this._isHidden=Bt(this,!1),this._isFocused=Je(this,o=>this.template.read(o)?.isFocused.read(o)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register(yt(o=>{const r=this._scrollLeft.read(o);this._templateRef.read(o)?.object.setScrollLeft(r)})),this._register(yt(o=>{const r=this._templateRef.read(o);!r||!this._isHidden.read(o)||r.object.isFocused.read(o)||this._clear()}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(e,t){this.viewModel.collapsed.set(e.collapsed,t),this._updateTemplateData(t);const i=this.viewModel.lastTemplateData.get(),n=e.selections?.map(Ye.liftSelection);this.viewModel.lastTemplateData.set({...i,selections:n},t);const o=this._templateRef.get();o&&n&&o.object.editor.setSelections(n)}_updateTemplateData(e){const t=this._templateRef.get();t&&this.viewModel.lastTemplateData.set({contentHeight:t.object.contentHeight.get(),selections:t.object.editor.getSelections()??void 0},e)}_clear(){const e=this._templateRef.get();e&&Nn(t=>{this._updateTemplateData(t),e.object.hide(),this._templateRef.set(void 0,t)})}hide(){this._isHidden.set(!0,void 0)}render(e,t,i,n){this._isHidden.set(!1,void 0);let o=this._templateRef.get();if(!o){o=this._objectPool.getUnusedObj(new CVe(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(o,void 0);const r=this.viewModel.lastTemplateData.get().selections;r&&o.object.editor.setSelections(r)}o.object.render(e,i,t,n)}}V("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},v("multiDiffEditor.headerBackground","The background color of the diff editor's header"));V("multiDiffEditor.background",Rc,v("multiDiffEditor.background","The background color of the multi file diff editor"));V("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},v("multiDiffEditor.border","The border color of the multi file diff editor"));var xVe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},LVe=function(s,e){return function(t,i){e(t,i,s)}};let DW=class extends se{constructor(e,t,i){super(),this._element=e,this._workbenchUIElementFactory=t,this._instantiationService=i,this._dimension=Bt(this,void 0),this._viewModel=Bt(this,void 0),this._widgetImpl=zp(this,(n,o)=>(na(GR,n),o.add(this._instantiationService.createInstance(na(kW,n),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory)))),this._register(hy(this._widgetImpl))}};DW=xVe([LVe(2,it)],DW);function kVe(s,e,t){return bt.initialize(t||{}).createInstance(xW,s,e)}function DVe(s){return bt.get(gi).onCodeEditorAdd(t=>{s(t)})}function EVe(s){return bt.get(gi).onDiffEditorAdd(t=>{s(t)})}function NVe(){return bt.get(gi).listCodeEditors()}function IVe(){return bt.get(gi).listDiffEditors()}function TVe(s,e,t){return bt.initialize(t||{}).createInstance(LW,s,e)}function RVe(s,e){const t=bt.initialize(e||{});return new DW(s,{},t)}function MVe(s){if(typeof s.id!="string"||typeof s.run!="function")throw new Error("Invalid command descriptor, `id` and `run` are required properties!");return ni.registerCommand(s.id,s.run)}function AVe(s){if(typeof s.id!="string"||typeof s.label!="string"||typeof s.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");const e=be.deserialize(s.precondition),t=(n,...o)=>Ds.runEditorCommand(n,o,e,(r,a,l)=>Promise.resolve(s.run(a,...l))),i=new _e;if(i.add(ni.registerCommand(s.id,t)),s.contextMenuGroupId){const n={command:{id:s.id,title:s.label},when:e,group:s.contextMenuGroupId,order:s.contextMenuOrder||0};i.add(qs.appendMenuItem(Ge.EditorContext,n))}if(Array.isArray(s.keybindings)){const n=bt.get(yi);if(!(n instanceof k1))console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService");else{const o=be.and(e,be.deserialize(s.keybindingContext));i.add(n.addDynamicKeybindings(s.keybindings.map(r=>({keybinding:r,command:s.id,when:o}))))}}return i}function OVe(s){return bhe([s])}function bhe(s){const e=bt.get(yi);return e instanceof k1?e.addDynamicKeybindings(s.map(t=>({keybinding:t.keybinding,command:t.command,commandArgs:t.commandArgs,when:be.deserialize(t.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),se.None)}function PVe(s,e,t){const i=bt.get(xn),n=i.getLanguageIdByMimeType(e)||e;return _he(bt.get(ln),i,s,n,t)}function FVe(s,e){const t=bt.get(xn),i=t.getLanguageIdByMimeType(e)||e||pr;s.setLanguage(t.createById(i))}function BVe(s,e,t){s&&bt.get(zu).changeOne(e,s.uri,t)}function WVe(s){bt.get(zu).changeAll(s,[])}function HVe(s){return bt.get(zu).read(s)}function VVe(s){return bt.get(zu).onMarkerChanged(s)}function zVe(s){return bt.get(ln).getModel(s)}function UVe(){return bt.get(ln).getModels()}function jVe(s){return bt.get(ln).onModelAdded(s)}function $Ve(s){return bt.get(ln).onModelRemoved(s)}function qVe(s){return bt.get(ln).onModelLanguageChanged(t=>{s({model:t.model,oldLanguage:t.oldLanguageId})})}function KVe(s){return I7e(bt.get(ln),s)}function GVe(s,e){const t=bt.get(xn),i=bt.get(hl);return t$.colorizeElement(i,t,s,e).then(()=>{i.registerEditorContainer(s)})}function YVe(s,e,t){const i=bt.get(xn);return bt.get(hl).registerEditorContainer(Hi.document.body),t$.colorize(i,s,e,t)}function ZVe(s,e,t=4){return bt.get(hl).registerEditorContainer(Hi.document.body),t$.colorizeModelLine(s,e,t)}function XVe(s){const e=Vn.get(s);return e||{getInitialState:()=>b1,tokenize:(t,i,n)=>dj(s,n)}}function QVe(s,e){Vn.getOrCreate(e);const t=XVe(e),i=Fu(s),n=[];let o=t.getInitialState();for(let r=0,a=i.length;r<a;r++){const l=i[r],c=t.tokenize(l,!0,o);n[r]=c.tokens,o=c.endState}return n}function JVe(s,e){bt.get(hl).defineTheme(s,e)}function eze(s){bt.get(hl).setTheme(s)}function tze(){g7.clearAllFontInfos()}function ize(s,e){return ni.registerCommand({id:s,handler:e})}function nze(s){return bt.get(qr).registerOpener({async open(t){return typeof t=="string"&&(t=ot.parse(t)),s.open(t)}})}function sze(s){return bt.get(gi).registerCodeEditorOpenHandler(async(t,i,n)=>{if(!i)return null;const o=t.options?.selection;let r;return o&&typeof o.endLineNumber=="number"&&typeof o.endColumn=="number"?r=o:o&&(r={lineNumber:o.startLineNumber,column:o.startColumn}),await s.openCodeEditor(i,t.resource,r)?i:null})}function oze(){return{create:kVe,getEditors:NVe,getDiffEditors:IVe,onDidCreateEditor:DVe,onDidCreateDiffEditor:EVe,createDiffEditor:TVe,addCommand:MVe,addEditorAction:AVe,addKeybindingRule:OVe,addKeybindingRules:bhe,createModel:PVe,setModelLanguage:FVe,setModelMarkers:BVe,getModelMarkers:HVe,removeAllMarkers:WVe,onDidChangeMarkers:VVe,getModels:UVe,getModel:zVe,onDidCreateModel:jVe,onWillDisposeModel:$Ve,onDidChangeModelLanguage:qVe,createWebWorker:KVe,colorizeElement:GVe,colorize:YVe,colorizeModelLine:ZVe,tokenize:QVe,defineTheme:JVe,setTheme:eze,remeasureFonts:tze,registerCommand:ize,registerLinkOpener:nze,registerEditorOpener:sze,AccessibilitySupport:c9,ContentWidgetPositionPreference:p9,CursorChangeReason:m9,DefaultEndOfLine:_9,EditorAutoIndentStrategy:v9,EditorOption:C9,EndOfLinePreference:w9,EndOfLineSequence:y9,MinimapPosition:M9,MinimapSectionHeaderStyle:A9,MouseTargetType:O9,OverlayWidgetPositionPreference:B9,OverviewRulerLane:W9,GlyphMarginLane:S9,RenderLineNumbersType:z9,RenderMinimap:U9,ScrollbarVisibility:$9,ScrollType:j9,TextEditorCursorBlinkingStyle:X9,TextEditorCursorStyle:Q9,TrackedRangeStickiness:J9,WrappingIndent:e7,InjectedTextCursorStops:k9,PositionAffinity:V9,ShowLightbulbIconMode:K9,ConfigurationChangedEvent:aae,BareFontInfo:f_,FontInfo:f7,TextModelResolvedOptions:rI,FindMatch:Kx,ApplyUpdateResult:xS,EditorZoom:Nl,createMultiFileDiffEditor:RVe,EditorType:Qk,EditorOptions:Id}}function rze(s,e){if(!e||!Array.isArray(e))return!1;for(const t of e)if(!s(t))return!1;return!0}function SN(s,e){return typeof s=="boolean"?s:e}function Vie(s,e){return typeof s=="string"?s:e}function aze(s){const e={};for(const t of s)e[t]=!0;return e}function zie(s,e=!1){e&&(s=s.map(function(i){return i.toLowerCase()}));const t=aze(s);return e?function(i){return t[i.toLowerCase()]!==void 0&&t.hasOwnProperty(i.toLowerCase())}:function(i){return t[i]!==void 0&&t.hasOwnProperty(i)}}function EW(s,e,t){e=e.replace(/@@/g,"");let i=0,n;do n=!1,e=e.replace(/@(\w+)/g,function(r,a){n=!0;let l="";if(typeof s[a]=="string")l=s[a];else if(s[a]&&s[a]instanceof RegExp)l=s[a].source;else throw s[a]===void 0?hn(s,"language definition does not contain attribute '"+a+"', used at: "+e):hn(s,"attribute reference '"+a+"' must be a string, used at: "+e);return jm(l)?"":"(?:"+l+")"}),i++;while(n&&i<5);e=e.replace(/\x01/g,"@");const o=(s.ignoreCase?"i":"")+(s.unicode?"u":"");if(t&&e.match(/\$[sS](\d\d?)/g)){let a=null,l=null;return c=>(l&&a===c||(a=c,l=new RegExp(Y7e(s,e,c),o)),l)}return new RegExp(e,o)}function lze(s,e,t,i){if(i<0)return s;if(i<e.length)return e[i];if(i>=100){i=i-100;const n=t.split(".");if(n.unshift(t),i<n.length)return n[i]}return null}function cze(s,e,t,i){let n=-1,o=t,r=t.match(/^\$(([sS]?)(\d\d?)|#)(.*)$/);r&&(r[3]&&(n=parseInt(r[3]),r[2]&&(n=n+100)),o=r[4]);let a="~",l=o;!o||o.length===0?(a="!=",l=""):/^\w*$/.test(l)?a="==":(r=o.match(/^(@|!@|~|!~|==|!=)(.*)$/),r&&(a=r[1],l=r[2]));let c;if((a==="~"||a==="!~")&&/^(\w|\|)*$/.test(l)){const d=zie(l.split("|"),s.ignoreCase);c=function(u){return a==="~"?d(u):!d(u)}}else if(a==="@"||a==="!@"){const d=s[l];if(!d)throw hn(s,"the @ match target '"+l+"' is not defined, in rule: "+e);if(!rze(function(f){return typeof f=="string"},d))throw hn(s,"the @ match target '"+l+"' must be an array of strings, in rule: "+e);const u=zie(d,s.ignoreCase);c=function(f){return a==="@"?u(f):!u(f)}}else if(a==="~"||a==="!~")if(l.indexOf("$")<0){const d=EW(s,"^"+l+"$",!1);c=function(u){return a==="~"?d.test(u):!d.test(u)}}else c=function(d,u,f,p){return EW(s,"^"+xg(s,l,u,f,p)+"$",!1).test(d)};else if(l.indexOf("$")<0){const d=of(s,l);c=function(u){return a==="=="?u===d:u!==d}}else{const d=of(s,l);c=function(u,f,p,m,b){const w=xg(s,d,f,p,m);return a==="=="?u===w:u!==w}}return n===-1?{name:t,value:i,test:function(d,u,f,p){return c(d,d,u,f,p)}}:{name:t,value:i,test:function(d,u,f,p){const m=lze(d,u,f,n);return c(m||"",d,u,f,p)}}}function NW(s,e,t){if(t){if(typeof t=="string")return t;if(t.token||t.token===""){if(typeof t.token!="string")throw hn(s,"a 'token' attribute must be of type string, in rule: "+e);{const i={token:t.token};if(t.token.indexOf("$")>=0&&(i.tokenSubst=!0),typeof t.bracket=="string")if(t.bracket==="@open")i.bracket=1;else if(t.bracket==="@close")i.bracket=-1;else throw hn(s,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+e);if(t.next){if(typeof t.next!="string")throw hn(s,"the next state must be a string value in rule: "+e);{let n=t.next;if(!/^(@pop|@push|@popall)$/.test(n)&&(n[0]==="@"&&(n=n.substr(1)),n.indexOf("$")<0&&!Z7e(s,xg(s,n,"",[],""))))throw hn(s,"the next state '"+t.next+"' is not defined in rule: "+e);i.next=n}}return typeof t.goBack=="number"&&(i.goBack=t.goBack),typeof t.switchTo=="string"&&(i.switchTo=t.switchTo),typeof t.log=="string"&&(i.log=t.log),typeof t.nextEmbedded=="string"&&(i.nextEmbedded=t.nextEmbedded,s.usesEmbedded=!0),i}}else if(Array.isArray(t)){const i=[];for(let n=0,o=t.length;n<o;n++)i[n]=NW(s,e,t[n]);return{group:i}}else if(t.cases){const i=[];for(const o in t.cases)if(t.cases.hasOwnProperty(o)){const r=NW(s,e,t.cases[o]);o==="@default"||o==="@"||o===""?i.push({test:void 0,value:r,name:o}):o==="@eos"?i.push({test:function(a,l,c,d){return d},value:r,name:o}):i.push(cze(s,e,o,r))}const n=s.defaultToken;return{test:function(o,r,a,l){for(const c of i)if(!c.test||c.test(o,r,a,l))return c.value;return n}}}else throw hn(s,"an action must be a string, an object with a 'token' or 'cases' attribute, or an array of actions; in rule: "+e)}else return{token:""}}class dze{constructor(e){this.regex=new RegExp(""),this.action={token:""},this.matchOnlyAtLineStart=!1,this.name="",this.name=e}setRegex(e,t){let i;if(typeof t=="string")i=t;else if(t instanceof RegExp)i=t.source;else throw hn(e,"rules must start with a match string or regular expression: "+this.name);this.matchOnlyAtLineStart=i.length>0&&i[0]==="^",this.name=this.name+": "+i,this.regex=EW(e,"^(?:"+(this.matchOnlyAtLineStart?i.substr(1):i)+")",!0)}setAction(e,t){this.action=NW(e,this.name,t)}resolveRegex(e){return this.regex instanceof RegExp?this.regex:this.regex(e)}}function vhe(s,e){if(!e||typeof e!="object")throw new Error("Monarch: expecting a language definition object");const t={languageId:s,includeLF:SN(e.includeLF,!1),noThrow:!1,maxStack:100,start:typeof e.start=="string"?e.start:null,ignoreCase:SN(e.ignoreCase,!1),unicode:SN(e.unicode,!1),tokenPostfix:Vie(e.tokenPostfix,"."+s),defaultToken:Vie(e.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]},i=e;i.languageId=s,i.includeLF=t.includeLF,i.ignoreCase=t.ignoreCase,i.unicode=t.unicode,i.noThrow=t.noThrow,i.usesEmbedded=t.usesEmbedded,i.stateNames=e.tokenizer,i.defaultToken=t.defaultToken;function n(r,a,l){for(const c of l){let d=c.include;if(d){if(typeof d!="string")throw hn(t,"an 'include' attribute must be a string at: "+r);if(d[0]==="@"&&(d=d.substr(1)),!e.tokenizer[d])throw hn(t,"include target '"+d+"' is not defined at: "+r);n(r+"."+d,a,e.tokenizer[d])}else{const u=new dze(r);if(Array.isArray(c)&&c.length>=1&&c.length<=3)if(u.setRegex(i,c[0]),c.length>=3)if(typeof c[1]=="string")u.setAction(i,{token:c[1],next:c[2]});else if(typeof c[1]=="object"){const f=c[1];f.next=c[2],u.setAction(i,f)}else throw hn(t,"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: "+r);else u.setAction(i,c[1]);else{if(!c.regex)throw hn(t,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+r);c.name&&typeof c.name=="string"&&(u.name=c.name),c.matchOnlyAtStart&&(u.matchOnlyAtLineStart=SN(c.matchOnlyAtLineStart,!1)),u.setRegex(i,c.regex),u.setAction(i,c.action)}a.push(u)}}}if(!e.tokenizer||typeof e.tokenizer!="object")throw hn(t,"a language definition must define the 'tokenizer' attribute as an object");t.tokenizer=[];for(const r in e.tokenizer)if(e.tokenizer.hasOwnProperty(r)){t.start||(t.start=r);const a=e.tokenizer[r];t.tokenizer[r]=new Array,n("tokenizer."+r,t.tokenizer[r],a)}if(t.usesEmbedded=i.usesEmbedded,e.brackets){if(!Array.isArray(e.brackets))throw hn(t,"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 r of e.brackets){let a=r;if(a&&Array.isArray(a)&&a.length===3&&(a={token:a[2],open:a[0],close:a[1]}),a.open===a.close)throw hn(t,"open and close brackets in a 'brackets' attribute must be different: "+a.open+`
717
- hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")o.push({token:a.token+t.tokenPostfix,open:of(t,a.open),close:of(t,a.close)});else throw hn(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=o,t.noThrow=!0,t}function uze(s){c1.registerLanguage(s)}function hze(){let s=[];return s=s.concat(c1.getLanguages()),s}function fze(s){return bt.get(xn).languageIdCodec.encodeLanguageId(s)}function gze(s,e){return bt.withServices(()=>{const i=bt.get(xn).onDidRequestRichLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function pze(s,e){return bt.withServices(()=>{const i=bt.get(xn).onDidRequestBasicLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function mze(s,e){if(!bt.get(xn).isRegisteredLanguageId(s))throw new Error(`Cannot set configuration for unknown language ${s}`);return bt.get(Rn).register(s,e,100)}class _ze{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return BL.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new ZA(n.tokens,n.endState)}}class BL{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let o=0,r=e.length;o<r;o++){const a=e[o];let l=a.startIndex;o===0?l=0:l<n&&(l=n),i[o]=new Bx(l,a.scopes,t),n=l}return i}static adaptTokenize(e,t,i,n){const o=t.tokenize(i,n),r=BL._toClassicTokens(o.tokens,e);let a;return o.endState.equals(n)?a=n:a=o.endState,new cU(r,a)}tokenize(e,t,i){return BL.adaptTokenize(this._languageId,this._actual,e,i)}_toBinaryTokens(e,t){const i=e.encodeLanguageId(this._languageId),n=this._standaloneThemeService.getColorTheme().tokenTheme,o=[];let r=0,a=0;for(let c=0,d=t.length;c<d;c++){const u=t[c],f=n.match(i,u.scopes)|1024;if(r>0&&o[r-1]===f)continue;let p=u.startIndex;c===0?p=0:p<a&&(p=a),o[r++]=p,o[r++]=f,a=p}const l=new Uint32Array(r);for(let c=0;c<r;c++)l[c]=o[c];return l}tokenizeEncoded(e,t,i){const n=this._actual.tokenize(e,i),o=this._toBinaryTokens(this._languageService.languageIdCodec,n.tokens);let r;return n.endState.equals(i)?r=i:r=n.endState,new ZA(o,r)}}function bze(s){return typeof s.getInitialState=="function"}function vze(s){return"tokenizeEncoded"in s}function Che(s){return s&&typeof s.then=="function"}function Cze(s){const e=bt.get(hl);if(s){const t=[null];for(let i=1,n=s.length;i<n;i++)t[i]=ve.fromHex(s[i]);e.setColorMapOverride(t)}else e.setColorMapOverride(null)}function whe(s,e){return vze(e)?new _ze(s,e):new BL(s,e,bt.get(xn),bt.get(hl))}function O$(s,e){const t=new YEe(async()=>{const i=await Promise.resolve(e.create());return i?bze(i)?whe(s,i):new kL(bt.get(xn),bt.get(hl),s,vhe(s,i),bt.get(Wt)):null});return Vn.registerFactory(s,t)}function wze(s,e){if(!bt.get(xn).isRegisteredLanguageId(s))throw new Error(`Cannot set tokens provider for unknown language ${s}`);return Che(e)?O$(s,{create:()=>e}):Vn.register(s,whe(s,e))}function yze(s,e){const t=i=>new kL(bt.get(xn),bt.get(hl),s,vhe(s,i),bt.get(Wt));return Che(e)?O$(s,{create:()=>e}):Vn.register(s,t(e))}function Sze(s,e){return bt.get(qe).referenceProvider.register(s,e)}function xze(s,e){return bt.get(qe).renameProvider.register(s,e)}function Lze(s,e){return bt.get(qe).newSymbolNamesProvider.register(s,e)}function kze(s,e){return bt.get(qe).signatureHelpProvider.register(s,e)}function Dze(s,e){return bt.get(qe).hoverProvider.register(s,{provideHover:async(i,n,o,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,o,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new M(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new M(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function Eze(s,e){return bt.get(qe).documentSymbolProvider.register(s,e)}function Nze(s,e){return bt.get(qe).documentHighlightProvider.register(s,e)}function Ize(s,e){return bt.get(qe).linkedEditingRangeProvider.register(s,e)}function Tze(s,e){return bt.get(qe).definitionProvider.register(s,e)}function Rze(s,e){return bt.get(qe).implementationProvider.register(s,e)}function Mze(s,e){return bt.get(qe).typeDefinitionProvider.register(s,e)}function Aze(s,e){return bt.get(qe).codeLensProvider.register(s,e)}function Oze(s,e,t){return bt.get(qe).codeActionProvider.register(s,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,o,r,a)=>{const c=bt.get(zu).read({resource:n.uri}).filter(d=>M.areIntersectingOrTouching(d,o));return e.provideCodeActions(n,o,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function Pze(s,e){return bt.get(qe).documentFormattingEditProvider.register(s,e)}function Fze(s,e){return bt.get(qe).documentRangeFormattingEditProvider.register(s,e)}function Bze(s,e){return bt.get(qe).onTypeFormattingEditProvider.register(s,e)}function Wze(s,e){return bt.get(qe).linkProvider.register(s,e)}function Hze(s,e){return bt.get(qe).completionProvider.register(s,e)}function Vze(s,e){return bt.get(qe).colorProvider.register(s,e)}function zze(s,e){return bt.get(qe).foldingRangeProvider.register(s,e)}function Uze(s,e){return bt.get(qe).declarationProvider.register(s,e)}function jze(s,e){return bt.get(qe).selectionRangeProvider.register(s,e)}function $ze(s,e){return bt.get(qe).documentSemanticTokensProvider.register(s,e)}function qze(s,e){return bt.get(qe).documentRangeSemanticTokensProvider.register(s,e)}function Kze(s,e){return bt.get(qe).inlineCompletionsProvider.register(s,e)}function Gze(s,e){return bt.get(qe).inlineEditProvider.register(s,e)}function Yze(s,e){return bt.get(qe).inlayHintsProvider.register(s,e)}function Zze(){return{register:uze,getLanguages:hze,onLanguage:gze,onLanguageEncountered:pze,getEncodedLanguageId:fze,setLanguageConfiguration:mze,setColorMap:Cze,registerTokensProviderFactory:O$,setTokensProvider:wze,setMonarchTokensProvider:yze,registerReferenceProvider:Sze,registerRenameProvider:xze,registerNewSymbolNameProvider:Lze,registerCompletionItemProvider:Hze,registerSignatureHelpProvider:kze,registerHoverProvider:Dze,registerDocumentSymbolProvider:Eze,registerDocumentHighlightProvider:Nze,registerLinkedEditingRangeProvider:Ize,registerDefinitionProvider:Tze,registerImplementationProvider:Rze,registerTypeDefinitionProvider:Mze,registerCodeLensProvider:Aze,registerCodeActionProvider:Oze,registerDocumentFormattingEditProvider:Pze,registerDocumentRangeFormattingEditProvider:Fze,registerOnTypeFormattingEditProvider:Bze,registerLinkProvider:Wze,registerColorProvider:Vze,registerFoldingRangeProvider:zze,registerDeclarationProvider:Uze,registerSelectionRangeProvider:jze,registerDocumentSemanticTokensProvider:$ze,registerDocumentRangeSemanticTokensProvider:qze,registerInlineCompletionsProvider:Kze,registerInlineEditProvider:Gze,registerInlayHintsProvider:Yze,DocumentHighlightKind:b9,CompletionItemKind:h9,CompletionItemTag:f9,CompletionItemInsertTextRule:u9,SymbolKind:Y9,SymbolTag:Z9,IndentAction:L9,CompletionTriggerKind:g9,SignatureHelpTriggerKind:G9,InlayHintKind:D9,InlineCompletionTriggerKind:E9,InlineEditTriggerKind:N9,CodeActionTriggerType:d9,NewSymbolNameTag:P9,NewSymbolNameTriggerKind:F9,PartialAcceptTriggerKind:H9,HoverVerbosityAction:x9,FoldingRangeKind:bp,SelectedSuggestionInfo:Sae}}const P$=Kt("IEditorCancelService"),yhe=new Be("cancellableOperation",!1,v("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));ei(P$,class{constructor(){this._tokens=new WeakMap}add(s,e){let t=this._tokens.get(s);t||(t=s.invokeWithinContext(n=>{const o=yhe.bindTo(n.get(gt)),r=new cr;return{key:o,tokens:r}}),this._tokens.set(s,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(s){const e=this._tokens.get(s);if(!e)return;const t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);class Xze extends In{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(P$).add(e,this))}dispose(){this._unregister(),super.dispose()}}Fe(new class extends Ds{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:yhe})}runEditorCommand(s,e){s.get(P$).cancel(e)}});let She=class IW{constructor(e,t){if(this.flags=t,(this.flags&1)!==0){const i=e.getModel();this.modelVersionId=i?Lb("{0}#{1}",i.uri.toString(),i.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 IW))return!1;const t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new IW(e,this.flags))}};class Rp extends Xze{constructor(e,t,i,n){super(e,n),this._listener=new _e,t&4&&this._listener.add(e.onDidChangeCursorPosition(o=>{(!i||!M.containsPosition(i,o.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(o=>{(!i||!M.containsRange(i,o.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(o=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(o=>this.cancel())),this._listener.add(e.onDidChangeModelContent(o=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class F$ extends In{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}function Ou(s){return s&&typeof s.getEditorType=="function"?s.getEditorType()===Qk.ICodeEditor:!1}function B$(s){return s&&typeof s.getEditorType=="function"?s.getEditorType()===Qk.IDiffEditor:!1}function Qze(s){return!!s&&typeof s=="object"&&typeof s.onDidChangeActiveEditor=="function"}function xhe(s){return Ou(s)?s:B$(s)?s.getModifiedEditor():Qze(s)&&Ou(s.activeCodeEditor)?s.activeCodeEditor:null}class I1{static _handleEolEdits(e,t){let i;const n=[];for(const o of t)typeof o.eol=="number"&&(i=o.eol),o.range&&typeof o.text=="string"&&n.push(o);return typeof i=="number"&&e.hasModel()&&e.getModel().pushEOL(i),n}static _isFullModelReplaceEdit(e,t){if(!e.hasModel())return!1;const i=e.getModel(),n=i.validateRange(t.range);return i.getFullModelRange().equalsRange(n)}static execute(e,t,i){i&&e.pushUndoStop();const n=Dd.capture(e),o=I1._handleEolEdits(e,t);o.length===1&&I1._isFullModelReplaceEdit(e,o[0])?e.executeEdits("formatEditsCommand",o.map(r=>En.replace(M.lift(r.range),r.text))):e.executeEdits("formatEditsCommand",o.map(r=>En.replaceMove(M.lift(r.range),r.text))),i&&e.pushUndoStop(),n.restoreRelativeVerticalPositionOfCursor(e)}}class Uie{constructor(e){this.value=e,this._lower=e.toLowerCase()}static toKey(e){return typeof e=="string"?e.toLowerCase():e._lower}}class Jze{constructor(e){if(this._set=new Set,e)for(const t of e)this.add(t)}add(e){this._set.add(Uie.toKey(e))}has(e){return this._set.has(Uie.toKey(e))}}function Lhe(s,e,t){const i=[],n=new Jze,o=s.ordered(t);for(const a of o)i.push(a),a.extensionId&&n.add(a.extensionId);const r=e.ordered(t);for(const a of r){if(a.extensionId){if(n.has(a.extensionId))continue;n.add(a.extensionId)}i.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits(l,c,d){return a.provideDocumentRangeFormattingEdits(l,l.getFullModelRange(),c,d)}})}return i}const xx=class xx{static setFormatterSelector(e){return{dispose:xx._selectors.unshift(e)}}static async select(e,t,i,n){if(e.length===0)return;const o=ii.first(xx._selectors);if(o)return await o(e,t,i,n)}};xx._selectors=new cr;let WL=xx;async function khe(s,e,t,i,n,o,r){const a=s.get(it),{documentRangeFormattingEditProvider:l}=s.get(qe),c=Ou(e)?e.getModel():e,d=l.ordered(c),u=await WL.select(d,c,i,2);u&&(n.report(u),await a.invokeFunction(eUe,u,e,t,o,r))}async function eUe(s,e,t,i,n,o){const r=s.get(Kr),a=s.get(ko),l=s.get(jp);let c,d;Ou(t)?(c=t.getModel(),d=new Rp(t,5,void 0,n)):(c=t,d=new F$(t,n));const u=[];let f=0;for(const y of Qz(i).sort(M.compareRangesUsingStarts))f>0&&M.areIntersectingOrTouching(u[f-1],y)?u[f-1]=M.fromPositions(u[f-1].getStartPosition(),y.getEndPosition()):f=u.push(y);const p=async y=>{a.trace("[format][provideDocumentRangeFormattingEdits] (request)",e.extensionId?.value,y);const S=await e.provideDocumentRangeFormattingEdits(c,y,c.getFormattingOptions(),d.token)||[];return a.trace("[format][provideDocumentRangeFormattingEdits] (response)",e.extensionId?.value,S),S},m=(y,S)=>{if(!y.length||!S.length)return!1;const x=y.reduce((L,N)=>M.plusRange(L,N.range),y[0].range);if(!S.some(L=>M.intersectRanges(x,L.range)))return!1;for(const L of y)for(const N of S)if(M.intersectRanges(L.range,N.range))return!0;return!1},b=[],w=[];try{if(typeof e.provideDocumentRangesFormattingEdits=="function"){a.trace("[format][provideDocumentRangeFormattingEdits] (request)",e.extensionId?.value,u);const y=await e.provideDocumentRangesFormattingEdits(c,u,c.getFormattingOptions(),d.token)||[];a.trace("[format][provideDocumentRangeFormattingEdits] (response)",e.extensionId?.value,y),w.push(y)}else{for(const y of u){if(d.token.isCancellationRequested)return!0;w.push(await p(y))}for(let y=0;y<u.length;++y)for(let S=y+1;S<u.length;++S){if(d.token.isCancellationRequested)return!0;if(m(w[y],w[S])){const x=M.plusRange(u[y],u[S]),L=await p(x);u.splice(S,1),u.splice(y,1),u.push(x),w.splice(S,1),w.splice(y,1),w.push(L),y=0,S=0}}}for(const y of w){if(d.token.isCancellationRequested)return!0;const S=await r.computeMoreMinimalEdits(c.uri,y);S&&b.push(...S)}}finally{d.dispose()}if(b.length===0)return!1;if(Ou(t))I1.execute(t,b,!0),t.revealPositionInCenterIfOutsideViewport(t.getPosition(),1);else{const[{range:y}]=b,S=new Ye(y.startLineNumber,y.startColumn,y.endLineNumber,y.endColumn);c.pushEditOperations([S],b.map(x=>({text:x.text,range:M.lift(x.range),forceMoveMarkers:!0})),x=>{for(const{range:L}of x)if(M.areIntersectingOrTouching(L,S))return[new Ye(L.startLineNumber,L.startColumn,L.endLineNumber,L.endColumn)];return null})}return l.playSignal(Va.format,{userGesture:o}),!0}async function tUe(s,e,t,i,n,o){const r=s.get(it),a=s.get(qe),l=Ou(e)?e.getModel():e,c=Lhe(a.documentFormattingEditProvider,a.documentRangeFormattingEditProvider,l),d=await WL.select(c,l,t,1);d&&(i.report(d),await r.invokeFunction(iUe,d,e,t,n,o))}async function iUe(s,e,t,i,n,o){const r=s.get(Kr),a=s.get(jp);let l,c;Ou(t)?(l=t.getModel(),c=new Rp(t,5,void 0,n)):(l=t,c=new F$(t,n));let d;try{const u=await e.provideDocumentFormattingEdits(l,l.getFormattingOptions(),c.token);if(d=await r.computeMoreMinimalEdits(l.uri,u),c.token.isCancellationRequested)return!0}finally{c.dispose()}if(!d||d.length===0)return!1;if(Ou(t))I1.execute(t,d,i!==2),i!==2&&t.revealPositionInCenterIfOutsideViewport(t.getPosition(),1);else{const[{range:u}]=d,f=new Ye(u.startLineNumber,u.startColumn,u.endLineNumber,u.endColumn);l.pushEditOperations([f],d.map(p=>({text:p.text,range:M.lift(p.range),forceMoveMarkers:!0})),p=>{for(const{range:m}of p)if(M.areIntersectingOrTouching(m,f))return[new Ye(m.startLineNumber,m.startColumn,m.endLineNumber,m.endColumn)];return null})}return a.playSignal(Va.format,{userGesture:o}),!0}async function nUe(s,e,t,i,n,o){const r=e.documentRangeFormattingEditProvider.ordered(t);for(const a of r){const l=await Promise.resolve(a.provideDocumentRangeFormattingEdits(t,i,n,o)).catch(Qn);if(Xo(l))return await s.computeMoreMinimalEdits(t.uri,l)}}async function sUe(s,e,t,i,n){const o=Lhe(e.documentFormattingEditProvider,e.documentRangeFormattingEditProvider,t);for(const r of o){const a=await Promise.resolve(r.provideDocumentFormattingEdits(t,i,n)).catch(Qn);if(Xo(a))return await s.computeMoreMinimalEdits(t.uri,a)}}function Dhe(s,e,t,i,n,o,r){const a=e.onTypeFormattingEditProvider.ordered(t);return a.length===0||a[0].autoFormatTriggerCharacters.indexOf(n)<0?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(t,i,n,o,r)).catch(Qn).then(l=>s.computeMoreMinimalEdits(t.uri,l))}ni.registerCommand("_executeFormatRangeProvider",async function(s,...e){const[t,i,n]=e;fi(ot.isUri(t)),fi(M.isIRange(i));const o=s.get(jr),r=s.get(Kr),a=s.get(qe),l=await o.createModelReference(t);try{return nUe(r,a,l.object.textEditorModel,M.lift(i),n,Mt.None)}finally{l.dispose()}});ni.registerCommand("_executeFormatDocumentProvider",async function(s,...e){const[t,i]=e;fi(ot.isUri(t));const n=s.get(jr),o=s.get(Kr),r=s.get(qe),a=await n.createModelReference(t);try{return sUe(o,r,a.object.textEditorModel,i,Mt.None)}finally{a.dispose()}});ni.registerCommand("_executeFormatOnTypeProvider",async function(s,...e){const[t,i,n,o]=e;fi(ot.isUri(t)),fi(ee.isIPosition(i)),fi(typeof n=="string");const r=s.get(jr),a=s.get(Kr),l=s.get(qe),c=await r.createModelReference(t);try{return Dhe(a,l,c.object.textEditorModel,ee.lift(i),n,o,Mt.None)}finally{c.dispose()}});Id.wrappingIndent.defaultValue=0;Id.glyphMargin.defaultValue=!1;Id.autoIndent.defaultValue=3;Id.overviewRulerLanes.defaultValue=2;WL.setFormatterSelector((s,e,t)=>Promise.resolve(s[0]));const Sr=xae();Sr.editor=oze();Sr.languages=Zze();const oUe=Sr.CancellationTokenSource,rUe=Sr.Emitter,aUe=Sr.KeyCode,lUe=Sr.KeyMod,cUe=Sr.Position,dUe=Sr.Range,uUe=Sr.Selection,hUe=Sr.SelectionDirection,fUe=Sr.MarkerSeverity,gUe=Sr.MarkerTag,pUe=Sr.Uri,mUe=Sr.Token,TW=Sr.editor,_Ue=Sr.languages,bUe=globalThis.MonacoEnvironment;(bUe?.globalAPI||typeof define=="function"&&define.amd)&&(globalThis.monaco=Sr);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 iD=Object.freeze(Object.defineProperty({__proto__:null,CancellationTokenSource:oUe,Emitter:rUe,KeyCode:aUe,KeyMod:lUe,MarkerSeverity:fUe,MarkerTag:gUe,Position:cUe,Range:dUe,Selection:uUe,SelectionDirection:hUe,Token:mUe,Uri:pUe,editor:TW,languages:_Ue},Symbol.toStringTag,{value:"Module"}));var vUe=Object.defineProperty,CUe=Object.getOwnPropertyDescriptor,wUe=Object.getOwnPropertyNames,yUe=Object.prototype.hasOwnProperty,SUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of wUe(e))!yUe.call(s,n)&&n!==t&&vUe(s,n,{get:()=>e[n],enumerable:!(i=CUe(e,n))||i.enumerable});return s},xUe=(s,e,t)=>(SUe(s,e,"default"),t),cS={};xUe(cS,iD);var Ehe={},z3={},LUe=class Nhe{static getOrCreate(e){return z3[e]||(z3[e]=new Nhe(e)),z3[e]}constructor(e){this._languageId=e,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((t,i)=>{this._lazyLoadPromiseResolve=t,this._lazyLoadPromiseReject=i})}load(){return this._loadingTriggered||(this._loadingTriggered=!0,Ehe[this._languageId].loader().then(e=>this._lazyLoadPromiseResolve(e),e=>this._lazyLoadPromiseReject(e))),this._lazyLoadPromise}};function dt(s){const e=s.id;Ehe[e]=s,cS.languages.register(s);const t=LUe.getOrCreate(e);cS.languages.registerTokensProviderFactory(e,{create:async()=>(await t.load()).language}),cS.languages.onLanguageEncountered(e,async()=>{const i=await t.load();cS.languages.setLanguageConfiguration(e,i.conf)})}dt({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:()=>rt(()=>import("./abap-CRCWOmpq.js"),[])});dt({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:()=>rt(()=>import("./apex-DnsZk_dE.js"),[])});dt({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:()=>rt(()=>import("./azcli-1IWB1ccx.js"),[])});dt({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:()=>rt(()=>import("./bat-DPkNLes8.js"),[])});dt({id:"bicep",extensions:[".bicep"],aliases:["Bicep"],loader:()=>rt(()=>import("./bicep-Corcdgou.js"),[])});dt({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:()=>rt(()=>import("./cameligo-CGrWLZr3.js"),[])});dt({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:()=>rt(()=>import("./clojure-D9WOWImG.js"),[])});dt({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>rt(()=>import("./coffee-B7EJu28W.js"),[])});dt({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:()=>rt(()=>import("./cpp-SEyurbux.js"),[])});dt({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:()=>rt(()=>import("./cpp-SEyurbux.js"),[])});dt({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:()=>rt(()=>import("./csharp-BoL64M5l.js"),[])});dt({id:"csp",extensions:[".csp"],aliases:["CSP","csp"],loader:()=>rt(()=>import("./csp-C46ZqvIl.js"),[])});dt({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:()=>rt(()=>import("./css-DQU6DXDx.js"),[])});dt({id:"cypher",extensions:[".cypher",".cyp"],aliases:["Cypher","OpenCypher"],loader:()=>rt(()=>import("./cypher-D84EuPTj.js"),[])});dt({id:"dart",extensions:[".dart"],aliases:["Dart","dart"],mimetypes:["text/x-dart-source","text/x-dart"],loader:()=>rt(()=>import("./dart-D8lhlL1r.js"),[])});dt({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:()=>rt(()=>import("./dockerfile-DLk6rpji.js"),[])});dt({id:"ecl",extensions:[".ecl"],aliases:["ECL","Ecl","ecl"],loader:()=>rt(()=>import("./ecl-BO6FnfXk.js"),[])});dt({id:"elixir",extensions:[".ex",".exs"],aliases:["Elixir","elixir","ex"],loader:()=>rt(()=>import("./elixir-BRjLKONM.js"),[])});dt({id:"flow9",extensions:[".flow"],aliases:["Flow9","Flow","flow9","flow"],loader:()=>rt(()=>import("./flow9-Cac8vKd7.js"),[])});dt({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>rt(()=>import("./fsharp-fd1GTHhf.js"),[])});dt({id:"freemarker2",extensions:[".ftl",".ftlh",".ftlx"],aliases:["FreeMarker2","Apache FreeMarker2"],loader:()=>rt(()=>import("./freemarker2-JV7VLJuz.js"),[]).then(s=>s.TagAutoInterpolationDollar)});dt({id:"freemarker2.tag-angle.interpolation-dollar",aliases:["FreeMarker2 (Angle/Dollar)","Apache FreeMarker2 (Angle/Dollar)"],loader:()=>rt(()=>import("./freemarker2-JV7VLJuz.js"),[]).then(s=>s.TagAngleInterpolationDollar)});dt({id:"freemarker2.tag-bracket.interpolation-dollar",aliases:["FreeMarker2 (Bracket/Dollar)","Apache FreeMarker2 (Bracket/Dollar)"],loader:()=>rt(()=>import("./freemarker2-JV7VLJuz.js"),[]).then(s=>s.TagBracketInterpolationDollar)});dt({id:"freemarker2.tag-angle.interpolation-bracket",aliases:["FreeMarker2 (Angle/Bracket)","Apache FreeMarker2 (Angle/Bracket)"],loader:()=>rt(()=>import("./freemarker2-JV7VLJuz.js"),[]).then(s=>s.TagAngleInterpolationBracket)});dt({id:"freemarker2.tag-bracket.interpolation-bracket",aliases:["FreeMarker2 (Bracket/Bracket)","Apache FreeMarker2 (Bracket/Bracket)"],loader:()=>rt(()=>import("./freemarker2-JV7VLJuz.js"),[]).then(s=>s.TagBracketInterpolationBracket)});dt({id:"freemarker2.tag-auto.interpolation-dollar",aliases:["FreeMarker2 (Auto/Dollar)","Apache FreeMarker2 (Auto/Dollar)"],loader:()=>rt(()=>import("./freemarker2-JV7VLJuz.js"),[]).then(s=>s.TagAutoInterpolationDollar)});dt({id:"freemarker2.tag-auto.interpolation-bracket",aliases:["FreeMarker2 (Auto/Bracket)","Apache FreeMarker2 (Auto/Bracket)"],loader:()=>rt(()=>import("./freemarker2-JV7VLJuz.js"),[]).then(s=>s.TagAutoInterpolationBracket)});dt({id:"go",extensions:[".go"],aliases:["Go"],loader:()=>rt(()=>import("./go-O9LJTZXk.js"),[])});dt({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:()=>rt(()=>import("./graphql-LQdxqEYJ.js"),[])});dt({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars","hbs"],mimetypes:["text/x-handlebars-template"],loader:()=>rt(()=>import("./handlebars-Wq0xrjB8.js"),[])});dt({id:"hcl",extensions:[".tf",".tfvars",".hcl"],aliases:["Terraform","tf","HCL","hcl"],loader:()=>rt(()=>import("./hcl-DxDQ3s82.js"),[])});dt({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:()=>rt(()=>import("./html-KQAZW_HC.js"),[])});dt({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:()=>rt(()=>import("./ini-BvajGCUy.js"),[])});dt({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:()=>rt(()=>import("./java-SYsfObOQ.js"),[])});dt({id:"javascript",extensions:[".js",".es6",".jsx",".mjs",".cjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:()=>rt(()=>import("./javascript-BwwBtsWD.js"),__vite__mapDeps([0,1]))});dt({id:"julia",extensions:[".jl"],aliases:["julia","Julia"],loader:()=>rt(()=>import("./julia-DQXNmw_w.js"),[])});dt({id:"kotlin",extensions:[".kt",".kts"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:()=>rt(()=>import("./kotlin-qQ0MG-9I.js"),[])});dt({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:()=>rt(()=>import("./less-GGFNNJHn.js"),[])});dt({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>rt(()=>import("./lexon-Canl7DCW.js"),[])});dt({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:()=>rt(()=>import("./lua-D28Ae8-K.js"),[])});dt({id:"liquid",extensions:[".liquid",".html.liquid"],aliases:["Liquid","liquid"],mimetypes:["application/liquid"],loader:()=>rt(()=>import("./liquid-CtZHahU2.js"),[])});dt({id:"m3",extensions:[".m3",".i3",".mg",".ig"],aliases:["Modula-3","Modula3","modula3","m3"],loader:()=>rt(()=>import("./m3-DPitgjJI.js"),[])});dt({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:()=>rt(()=>import("./markdown-B811l8j2.js"),[])});dt({id:"mdx",extensions:[".mdx"],aliases:["MDX","mdx"],loader:()=>rt(()=>import("./mdx-DtoZ-9fa.js"),[])});dt({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:()=>rt(()=>import("./mips-CdjsipkG.js"),[])});dt({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:()=>rt(()=>import("./msdax-CYqgjx_P.js"),[])});dt({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:()=>rt(()=>import("./mysql-BHd6q0vd.js"),[])});dt({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:()=>rt(()=>import("./objective-c-B1aVtJYH.js"),[])});dt({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>rt(()=>import("./pascal-BhNW15KB.js"),[])});dt({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:()=>rt(()=>import("./pascaligo-5jv8CcQD.js"),[])});dt({id:"perl",extensions:[".pl",".pm"],aliases:["Perl","pl"],loader:()=>rt(()=>import("./perl-DlYyT36c.js"),[])});dt({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:()=>rt(()=>import("./pgsql-Dy0bjov7.js"),[])});dt({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:()=>rt(()=>import("./php-120yhfDK.js"),[])});dt({id:"pla",extensions:[".pla"],loader:()=>rt(()=>import("./pla-CjnFlu4u.js"),[])});dt({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:()=>rt(()=>import("./postiats-CQpG440k.js"),[])});dt({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:()=>rt(()=>import("./powerquery-DdJtto1Z.js"),[])});dt({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:()=>rt(()=>import("./powershell-Bu_VLpJB.js"),[])});dt({id:"proto",extensions:[".proto"],aliases:["protobuf","Protocol Buffers"],loader:()=>rt(()=>import("./protobuf-IBS6jZEB.js"),[])});dt({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:()=>rt(()=>import("./pug-kFxLfcjb.js"),[])});dt({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:()=>rt(()=>import("./python-DsLd8hBF.js"),[])});dt({id:"qsharp",extensions:[".qs"],aliases:["Q#","qsharp"],loader:()=>rt(()=>import("./qsharp-q7JyzKFN.js"),[])});dt({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:()=>rt(()=>import("./r-BIFz-_sK.js"),[])});dt({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:()=>rt(()=>import("./razor-ByeasSZw.js"),[])});dt({id:"redis",extensions:[".redis"],aliases:["redis"],loader:()=>rt(()=>import("./redis-CHOsPHWR.js"),[])});dt({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:()=>rt(()=>import("./redshift-CBifECDb.js"),[])});dt({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:()=>rt(()=>import("./restructuredtext-CghPJEOS.js"),[])});dt({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:()=>rt(()=>import("./ruby-CYWGW-b1.js"),[])});dt({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:()=>rt(()=>import("./rust-DMDD0SHb.js"),[])});dt({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:()=>rt(()=>import("./sb-BYAiYHFx.js"),[])});dt({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:()=>rt(()=>import("./scala-Bqvq8jcR.js"),[])});dt({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:()=>rt(()=>import("./scheme-Dhb-2j9p.js"),[])});dt({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>rt(()=>import("./scss-CTwUZ5N7.js"),[])});dt({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:()=>rt(()=>import("./shell-CsDZo4DB.js"),[])});dt({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:()=>rt(()=>import("./solidity-CME5AdoB.js"),[])});dt({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:()=>rt(()=>import("./sophia-RYC1BQQz.js"),[])});dt({id:"sparql",extensions:[".rq"],aliases:["sparql","SPARQL"],loader:()=>rt(()=>import("./sparql-KEyrF7De.js"),[])});dt({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:()=>rt(()=>import("./sql-BdTr02Mf.js"),[])});dt({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib",".TcPOU",".TcDUT",".TcGVL",".TcIO"],aliases:["StructuredText","scl","stl"],loader:()=>rt(()=>import("./st-C7iG7M4S.js"),[])});dt({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:()=>rt(()=>import("./swift-D7IUmUK8.js"),[])});dt({id:"systemverilog",extensions:[".sv",".svh"],aliases:["SV","sv","SystemVerilog","systemverilog"],loader:()=>rt(()=>import("./systemverilog-DgMryOEJ.js"),[])});dt({id:"verilog",extensions:[".v",".vh"],aliases:["V","v","Verilog","verilog"],loader:()=>rt(()=>import("./systemverilog-DgMryOEJ.js"),[])});dt({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:()=>rt(()=>import("./tcl-PloMZuKG.js"),[])});dt({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:()=>rt(()=>import("./twig-BfRIq3la.js"),[])});dt({id:"typescript",extensions:[".ts",".tsx",".cts",".mts"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:()=>rt(()=>import("./typescript-DafR78wI.js"),[])});dt({id:"typespec",extensions:[".tsp"],aliases:["TypeSpec"],loader:()=>rt(()=>import("./typespec-CzxlYoT_.js"),[])});dt({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:()=>rt(()=>import("./vb-BwAE3J76.js"),[])});dt({id:"wgsl",extensions:[".wgsl"],aliases:["WebGPU Shading Language","WGSL","wgsl"],loader:()=>rt(()=>import("./wgsl-B_1kOXbF.js"),[])});dt({id:"xml",extensions:[".xml",".xsd",".dtd",".ascx",".csproj",".config",".props",".targets",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xslt",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:()=>rt(()=>import("./xml-BIY1cH0j.js"),[])});dt({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:()=>rt(()=>import("./yaml-CitqxWJM.js"),[])});var kUe=Object.defineProperty,DUe=Object.getOwnPropertyDescriptor,EUe=Object.getOwnPropertyNames,NUe=Object.prototype.hasOwnProperty,IUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of EUe(e))!NUe.call(s,n)&&n!==t&&kUe(s,n,{get:()=>e[n],enumerable:!(i=DUe(e,n))||i.enumerable});return s},TUe=(s,e,t)=>(IUe(s,e,"default"),t),vy={};TUe(vy,iD);var W$=class{constructor(e,t,i){this._onDidChange=new vy.Emitter,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}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)}},H$={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}},V$={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},Ihe=new W$("css",H$,V$),The=new W$("scss",H$,V$),Rhe=new W$("less",H$,V$);vy.languages.css={cssDefaults:Ihe,lessDefaults:Rhe,scssDefaults:The};function z$(){return rt(()=>import("./cssMode-BTzeyxuZ.js"),[])}vy.languages.onLanguage("less",()=>{z$().then(s=>s.setupMode(Rhe))});vy.languages.onLanguage("scss",()=>{z$().then(s=>s.setupMode(The))});vy.languages.onLanguage("css",()=>{z$().then(s=>s.setupMode(Ihe))});var RUe=Object.defineProperty,MUe=Object.getOwnPropertyDescriptor,AUe=Object.getOwnPropertyNames,OUe=Object.prototype.hasOwnProperty,PUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of AUe(e))!OUe.call(s,n)&&n!==t&&RUe(s,n,{get:()=>e[n],enumerable:!(i=MUe(e,n))||i.enumerable});return s},FUe=(s,e,t)=>(PUe(s,e,"default"),t),rP={};FUe(rP,iD);var BUe=class{constructor(e,t,i){this._onDidChange=new rP.Emitter,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}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)}},WUe={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"},aP={format:WUe,suggest:{},data:{useDefaultDataProvider:!0}};function lP(s){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:s===JS,documentFormattingEdits:s===JS,documentRangeFormattingEdits:s===JS}}var JS="html",jie="handlebars",$ie="razor",Mhe=cP(JS,aP,lP(JS)),HUe=Mhe.defaults,Ahe=cP(jie,aP,lP(jie)),VUe=Ahe.defaults,Ohe=cP($ie,aP,lP($ie)),zUe=Ohe.defaults;rP.languages.html={htmlDefaults:HUe,razorDefaults:zUe,handlebarDefaults:VUe,htmlLanguageService:Mhe,handlebarLanguageService:Ahe,razorLanguageService:Ohe,registerHTMLLanguageService:cP};function UUe(){return rt(()=>import("./htmlMode-DRJ1_AV3.js"),[])}function cP(s,e=aP,t=lP(s)){const i=new BUe(s,e,t);let n;const o=rP.languages.onLanguage(s,async()=>{n=(await UUe()).setupMode(i)});return{defaults:i,dispose(){o.dispose(),n?.dispose(),n=void 0}}}var jUe=Object.defineProperty,$Ue=Object.getOwnPropertyDescriptor,qUe=Object.getOwnPropertyNames,KUe=Object.prototype.hasOwnProperty,GUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of qUe(e))!KUe.call(s,n)&&n!==t&&jUe(s,n,{get:()=>e[n],enumerable:!(i=$Ue(e,n))||i.enumerable});return s},YUe=(s,e,t)=>(GUe(s,e,"default"),t),nD={};YUe(nD,iD);var ZUe=class{constructor(e,t,i){this._onDidChange=new nD.Emitter,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(i)}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)}},XUe={validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1,schemaRequest:"warning",schemaValidation:"warning",comments:"error",trailingCommas:"error"},QUe={documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},Phe=new ZUe("json",XUe,QUe),JUe=()=>Fhe().then(s=>s.getWorker());nD.languages.json={jsonDefaults:Phe,getWorker:JUe};function Fhe(){return rt(()=>import("./jsonMode-D1JS0FC-.js"),[])}nD.languages.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]});nD.languages.onLanguage("json",()=>{Fhe().then(s=>s.setupMode(Phe))});var eje=Object.defineProperty,tje=Object.getOwnPropertyDescriptor,ije=Object.getOwnPropertyNames,nje=Object.prototype.hasOwnProperty,sje=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of ije(e))!nje.call(s,n)&&n!==t&&eje(s,n,{get:()=>e[n],enumerable:!(i=tje(e,n))||i.enumerable});return s},oje=(s,e,t)=>(sje(s,e,"default"),t),rje="5.4.5",T1={};oje(T1,iD);var Bhe=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ESNext=99]="ESNext",s))(Bhe||{}),Whe=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(Whe||{}),Hhe=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(Hhe||{}),Vhe=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(Vhe||{}),zhe=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s))(zhe||{}),Uhe=class{constructor(s,e,t,i,n){this._onDidChange=new T1.Emitter,this._onDidExtraLibsChange=new T1.Emitter,this._extraLibs=Object.create(null),this._removedExtraLibs=Object.create(null),this._eagerModelSync=!1,this.setCompilerOptions(s),this.setDiagnosticsOptions(e),this.setWorkerOptions(t),this.setInlayHintsOptions(i),this.setModeConfiguration(n),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(s,e){let t;if(typeof e>"u"?t=`ts:extralib-${Math.random().toString(36).substring(2,15)}`:t=e,this._extraLibs[t]&&this._extraLibs[t].content===s)return{dispose:()=>{}};let i=1;return this._removedExtraLibs[t]&&(i=this._removedExtraLibs[t]+1),this._extraLibs[t]&&(i=this._extraLibs[t].version+1),this._extraLibs[t]={content:s,version:i},this._fireOnDidExtraLibsChangeSoon(),{dispose:()=>{let n=this._extraLibs[t];n&&n.version===i&&(delete this._extraLibs[t],this._removedExtraLibs[t]=i,this._fireOnDidExtraLibsChangeSoon())}}}setExtraLibs(s){for(const e in this._extraLibs)this._removedExtraLibs[e]=this._extraLibs[e].version;if(this._extraLibs=Object.create(null),s&&s.length>0)for(const e of s){const t=e.filePath||`ts:extralib-${Math.random().toString(36).substring(2,15)}`,i=e.content;let n=1;this._removedExtraLibs[t]&&(n=this._removedExtraLibs[t]+1),this._extraLibs[t]={content:i,version:n}}this._fireOnDidExtraLibsChangeSoon()}_fireOnDidExtraLibsChangeSoon(){this._onDidExtraLibsChangeTimeout===-1&&(this._onDidExtraLibsChangeTimeout=window.setTimeout(()=>{this._onDidExtraLibsChangeTimeout=-1,this._onDidExtraLibsChange.fire(void 0)},0))}getCompilerOptions(){return this._compilerOptions}setCompilerOptions(s){this._compilerOptions=s||Object.create(null),this._onDidChange.fire(void 0)}getDiagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(s){this._diagnosticsOptions=s||Object.create(null),this._onDidChange.fire(void 0)}setWorkerOptions(s){this._workerOptions=s||Object.create(null),this._onDidChange.fire(void 0)}setInlayHintsOptions(s){this._inlayHintsOptions=s||Object.create(null),this._onDidChange.fire(void 0)}setMaximumWorkerIdleTime(s){}setEagerModelSync(s){this._eagerModelSync=s}getEagerModelSync(){return this._eagerModelSync}setModeConfiguration(s){this._modeConfiguration=s||Object.create(null),this._onDidChange.fire(void 0)}},aje=rje,jhe={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},$he=new Uhe({allowNonTsExtensions:!0,target:99},{noSemanticValidation:!1,noSyntaxValidation:!1,onlyVisible:!1},{},{},jhe),qhe=new Uhe({allowNonTsExtensions:!0,allowJs:!0,target:99},{noSemanticValidation:!0,noSyntaxValidation:!1,onlyVisible:!1},{},{},jhe),lje=()=>dP().then(s=>s.getTypeScriptWorker()),cje=()=>dP().then(s=>s.getJavaScriptWorker());T1.languages.typescript={ModuleKind:Bhe,JsxEmit:Whe,NewLineKind:Hhe,ScriptTarget:Vhe,ModuleResolutionKind:zhe,typescriptVersion:aje,typescriptDefaults:$he,javascriptDefaults:qhe,getTypeScriptWorker:lje,getJavaScriptWorker:cje};function dP(){return rt(()=>import("./tsMode-B8ZZzbQC.js"),[])}T1.languages.onLanguage("typescript",()=>dP().then(s=>s.setupTypeScript($he)));T1.languages.onLanguage("javascript",()=>dP().then(s=>s.setupJavaScript(qhe)));class dje extends wr{constructor(){super({id:"diffEditor.toggleCollapseUnchangedRegions",title:_t("toggleCollapseUnchangedRegions","Toggle Collapse Unchanged Regions"),icon:De.map,toggled:be.has("config.diffEditor.hideUnchangedRegions.enabled"),precondition:be.has("isInDiffEditor"),menu:{when:be.has("isInDiffEditor"),id:Ge.EditorTitle,order:22,group:"navigation"}})}run(e,...t){const i=e.get(Wt),n=!i.getValue("diffEditor.hideUnchangedRegions.enabled");i.updateValue("diffEditor.hideUnchangedRegions.enabled",n)}}class Khe extends wr{constructor(){super({id:"diffEditor.toggleShowMovedCodeBlocks",title:_t("toggleShowMovedCodeBlocks","Toggle Show Moved Code Blocks"),precondition:be.has("isInDiffEditor")})}run(e,...t){const i=e.get(Wt),n=!i.getValue("diffEditor.experimental.showMoves");i.updateValue("diffEditor.experimental.showMoves",n)}}class Ghe extends wr{constructor(){super({id:"diffEditor.toggleUseInlineViewWhenSpaceIsLimited",title:_t("toggleUseInlineViewWhenSpaceIsLimited","Toggle Use Inline View When Space Is Limited"),precondition:be.has("isInDiffEditor")})}run(e,...t){const i=e.get(Wt),n=!i.getValue("diffEditor.useInlineViewWhenSpaceIsLimited");i.updateValue("diffEditor.useInlineViewWhenSpaceIsLimited",n)}}const sD=_t("diffEditor","Diff Editor");class uje extends Td{constructor(){super({id:"diffEditor.switchSide",title:_t("switchSide","Switch Side"),icon:De.arrowSwap,precondition:be.has("isInDiffEditor"),f1:!0,category:sD})}runEditorCommand(e,t,i){const n=Cy(e);if(n instanceof bf){if(i&&i.dryRun)return{destinationSelection:n.mapToOtherSide().destinationSelection};n.switchSide()}}}class hje extends Td{constructor(){super({id:"diffEditor.exitCompareMove",title:_t("exitCompareMove","Exit Compare Move"),icon:De.close,precondition:W.comparingMovedCode,f1:!1,category:sD,keybinding:{weight:1e4,primary:9}})}runEditorCommand(e,t,...i){const n=Cy(e);n instanceof bf&&n.exitCompareMove()}}class fje extends Td{constructor(){super({id:"diffEditor.collapseAllUnchangedRegions",title:_t("collapseAllUnchangedRegions","Collapse All Unchanged Regions"),icon:De.fold,precondition:be.has("isInDiffEditor"),f1:!0,category:sD})}runEditorCommand(e,t,...i){const n=Cy(e);n instanceof bf&&n.collapseAllUnchangedRegions()}}class gje extends Td{constructor(){super({id:"diffEditor.showAllUnchangedRegions",title:_t("showAllUnchangedRegions","Show All Unchanged Regions"),icon:De.unfold,precondition:be.has("isInDiffEditor"),f1:!0,category:sD})}runEditorCommand(e,t,...i){const n=Cy(e);n instanceof bf&&n.showAllUnchangedRegions()}}class RW extends wr{constructor(){super({id:"diffEditor.revert",title:_t("revert","Revert"),f1:!1,category:sD})}run(e,t){const i=pje(e,t.originalUri,t.modifiedUri);i instanceof bf&&i.revertRangeMappings(t.mapping.innerChanges??[])}}const Yhe=_t("accessibleDiffViewer","Accessible Diff Viewer"),z2=class z2 extends wr{constructor(){super({id:z2.id,title:_t("editor.action.accessibleDiffViewer.next","Go to Next Difference"),category:Yhe,precondition:be.has("isInDiffEditor"),keybinding:{primary:65,weight:100},f1:!0})}run(e){Cy(e)?.accessibleDiffViewerNext()}};z2.id="editor.action.accessibleDiffViewer.next";let HL=z2;const U2=class U2 extends wr{constructor(){super({id:U2.id,title:_t("editor.action.accessibleDiffViewer.prev","Go to Previous Difference"),category:Yhe,precondition:be.has("isInDiffEditor"),keybinding:{primary:1089,weight:100},f1:!0})}run(e){Cy(e)?.accessibleDiffViewerPrev()}};U2.id="editor.action.accessibleDiffViewer.prev";let YR=U2;function pje(s,e,t){return s.get(gi).listDiffEditors().find(o=>{const r=o.getModifiedEditor(),a=o.getOriginalEditor();return r&&r.getModel()?.uri.toString()===t.toString()&&a&&a.getModel()?.uri.toString()===e.toString()})||null}function Cy(s){const t=s.get(gi).listDiffEditors(),i=So();if(i)for(const n of t){const o=n.getContainerDomNode();if(mje(o,i))return n}return null}function mje(s,e){let t=e;for(;t;){if(t===s)return!0;t=t.parentElement}return!1}Zi(dje);Zi(Khe);Zi(Ghe);qs.appendMenuItem(Ge.EditorTitle,{command:{id:new Ghe().desc.id,title:v("useInlineViewWhenSpaceIsLimited","Use Inline View When Space Is Limited"),toggled:be.has("config.diffEditor.useInlineViewWhenSpaceIsLimited"),precondition:be.has("isInDiffEditor")},order:11,group:"1_diff",when:be.and(W.diffEditorRenderSideBySideInlineBreakpointReached,be.has("isInDiffEditor"))});qs.appendMenuItem(Ge.EditorTitle,{command:{id:new Khe().desc.id,title:v("showMoves","Show Moved Code Blocks"),icon:De.move,toggled:iy.create("config.diffEditor.experimental.showMoves",!0),precondition:be.has("isInDiffEditor")},order:10,group:"1_diff",when:be.has("isInDiffEditor")});Zi(RW);for(const s of[{icon:De.arrowRight,key:W.diffEditorInlineMode.toNegated()},{icon:De.discard,key:W.diffEditorInlineMode}])qs.appendMenuItem(Ge.DiffEditorHunkToolbar,{command:{id:new RW().desc.id,title:v("revertHunk","Revert Block"),icon:s.icon},when:be.and(W.diffEditorModifiedWritable,s.key),order:5,group:"primary"}),qs.appendMenuItem(Ge.DiffEditorSelectionToolbar,{command:{id:new RW().desc.id,title:v("revertSelection","Revert Selection"),icon:s.icon},when:be.and(W.diffEditorModifiedWritable,s.key),order:5,group:"primary"});Zi(uje);Zi(hje);Zi(fje);Zi(gje);qs.appendMenuItem(Ge.EditorTitle,{command:{id:HL.id,title:v("Open Accessible Diff Viewer","Open Accessible Diff Viewer"),precondition:be.has("isInDiffEditor")},order:10,group:"2_diff",when:be.and(W.accessibleDiffViewerVisible.negate(),be.has("isInDiffEditor"))});ni.registerCommandAlias("editor.action.diffReview.next",HL.id);Zi(HL);ni.registerCommandAlias("editor.action.diffReview.prev",YR.id);Zi(YR);var _je=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},bje=function(s,e){return function(t,i){e(t,i,s)}},MW;const uP=new Be("selectionAnchorSet",!1);var A_;let Mp=(A_=class{static get(e){return e.getContribution(MW.ID)}constructor(e,t){this.editor=e,this.selectionAnchorSetContextKey=uP.bindTo(t),this.modelChangeListener=e.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}setSelectionAnchor(){if(this.editor.hasModel()){const e=this.editor.getPosition();this.editor.changeDecorations(t=>{this.decorationId&&t.removeDecoration(this.decorationId),this.decorationId=t.addDecoration(Ye.fromPositions(e,e),{description:"selection-anchor",stickiness:1,hoverMessage:new Mo().appendText(v("selectionAnchor","Selection Anchor")),className:"selection-anchor"})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),vr(v("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 t=this.editor.getPosition();this.editor.setSelection(Ye.fromPositions(e.getStartPosition(),t)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){const e=this.decorationId;this.editor.changeDecorations(t=>{t.removeDecoration(e),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}},MW=A_,A_.ID="editor.contrib.selectionAnchorController",A_);Mp=MW=_je([bje(1,gt)],Mp);class vje extends ze{constructor(){super({id:"editor.action.setSelectionAnchor",label:v("setSelectionAnchor","Set Selection Anchor"),alias:"Set Selection Anchor",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:bs(2089,2080),weight:100}})}async run(e,t){Mp.get(t)?.setSelectionAnchor()}}class Cje extends ze{constructor(){super({id:"editor.action.goToSelectionAnchor",label:v("goToSelectionAnchor","Go to Selection Anchor"),alias:"Go to Selection Anchor",precondition:uP})}async run(e,t){Mp.get(t)?.goToSelectionAnchor()}}class wje extends ze{constructor(){super({id:"editor.action.selectFromAnchorToCursor",label:v("selectFromAnchorToCursor","Select from Anchor to Cursor"),alias:"Select from Anchor to Cursor",precondition:uP,kbOpts:{kbExpr:W.editorTextFocus,primary:bs(2089,2089),weight:100}})}async run(e,t){Mp.get(t)?.selectFromAnchorToCursor()}}class yje extends ze{constructor(){super({id:"editor.action.cancelSelectionAnchor",label:v("cancelSelectionAnchor","Cancel Selection Anchor"),alias:"Cancel Selection Anchor",precondition:uP,kbOpts:{kbExpr:W.editorTextFocus,primary:9,weight:100}})}async run(e,t){Mp.get(t)?.cancelSelectionAnchor()}}ai(Mp.ID,Mp,4);ye(vje);ye(Cje);ye(wje);ye(yje);const Sje=V("editorOverviewRuler.bracketMatchForeground","#A0A0A0",v("overviewRulerBracketMatchForeground","Overview ruler marker color for matching brackets."));class xje extends ze{constructor(){super({id:"editor.action.jumpToBracket",label:v("smartSelect.jumpBracket","Go to Bracket"),alias:"Go to Bracket",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:3165,weight:100}})}run(e,t){Hb.get(t)?.jumpToBracket()}}class Lje extends ze{constructor(){super({id:"editor.action.selectToBracket",label:v("smartSelect.selectToBracket","Select to Bracket"),alias:"Select to Bracket",precondition:void 0,metadata:{description:_t("smartSelect.selectToBracketDescription","Select the text inside and including the brackets or curly braces"),args:[{name:"args",schema:{type:"object",properties:{selectBrackets:{type:"boolean",default:!0}}}}]}})}run(e,t,i){let n=!0;i&&i.selectBrackets===!1&&(n=!1),Hb.get(t)?.selectToBracket(n)}}class kje extends ze{constructor(){super({id:"editor.action.removeBrackets",label:v("smartSelect.removeBrackets","Remove Brackets"),alias:"Remove Brackets",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:2561,weight:100}})}run(e,t){Hb.get(t)?.removeBrackets(this.id)}}class Dje{constructor(e,t,i){this.position=e,this.brackets=t,this.options=i}}const vg=class vg extends se{static get(e){return e.getContribution(vg.ID)}constructor(e){super(),this._editor=e,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=this._editor.createDecorationsCollection(),this._updateBracketsSoon=this._register(new Ai(()=>this._updateBrackets(),50)),this._matchBrackets=this._editor.getOption(72),this._updateBracketsSoon.schedule(),this._register(e.onDidChangeCursorPosition(t=>{this._matchBrackets!=="never"&&this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelContent(t=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModel(t=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelLanguageConfiguration(t=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeConfiguration(t=>{t.hasChanged(72)&&(this._matchBrackets=this._editor.getOption(72),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(),t=this._editor.getSelections().map(i=>{const n=i.getStartPosition(),o=e.bracketPairs.matchBracket(n);let r=null;if(o)o[0].containsPosition(n)&&!o[1].containsPosition(n)?r=o[1].getStartPosition():o[1].containsPosition(n)&&(r=o[0].getStartPosition());else{const a=e.bracketPairs.findEnclosingBrackets(n);if(a)r=a[1].getStartPosition();else{const l=e.bracketPairs.findNextBracket(n);l&&l.range&&(r=l.range.getStartPosition())}}return r?new Ye(r.lineNumber,r.column,r.lineNumber,r.column):new Ye(n.lineNumber,n.column,n.lineNumber,n.column)});this._editor.setSelections(t),this._editor.revealRange(t[0])}selectToBracket(e){if(!this._editor.hasModel())return;const t=this._editor.getModel(),i=[];this._editor.getSelections().forEach(n=>{const o=n.getStartPosition();let r=t.bracketPairs.matchBracket(o);if(!r&&(r=t.bracketPairs.findEnclosingBrackets(o),!r)){const c=t.bracketPairs.findNextBracket(o);c&&c.range&&(r=t.bracketPairs.matchBracket(c.range.getStartPosition()))}let a=null,l=null;if(r){r.sort(M.compareRangesUsingStarts);const[c,d]=r;if(a=e?c.getStartPosition():c.getEndPosition(),l=e?d.getEndPosition():d.getStartPosition(),d.containsPosition(o)){const u=a;a=l,l=u}}a&&l&&i.push(new Ye(a.lineNumber,a.column,l.lineNumber,l.column))}),i.length>0&&(this._editor.setSelections(i),this._editor.revealRange(i[0]))}removeBrackets(e){if(!this._editor.hasModel())return;const t=this._editor.getModel();this._editor.getSelections().forEach(i=>{const n=i.getPosition();let o=t.bracketPairs.matchBracket(n);o||(o=t.bracketPairs.findEnclosingBrackets(n)),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 t=0;for(const i of this._lastBracketsData){const n=i.brackets;n&&(e[t++]={range:n[0],options:i.options},e[t++]={range:n[1],options:i.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 t=this._editor.getModel(),i=t.getVersionId();let n=[];this._lastVersionId===i&&(n=this._lastBracketsData);const o=[];let r=0;for(let u=0,f=e.length;u<f;u++){const p=e[u];p.isEmpty()&&(o[r++]=p.getStartPosition())}o.length>1&&o.sort(ee.compare);const a=[];let l=0,c=0;const d=n.length;for(let u=0,f=o.length;u<f;u++){const p=o[u];for(;c<d&&n[c].position.isBefore(p);)c++;if(c<d&&n[c].position.equals(p))a[l++]=n[c];else{let m=t.bracketPairs.matchBracket(p,20),b=vg._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;!m&&this._matchBrackets==="always"&&(m=t.bracketPairs.findEnclosingBrackets(p,20),b=vg._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER),a[l++]=new Dje(p,m,b)}}this._lastBracketsData=a,this._lastVersionId=i}};vg.ID="editor.contrib.bracketMatchingController",vg._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=Et.register({description:"bracket-match-overview",stickiness:1,className:"bracket-match",overviewRuler:{color:zn(Sje),position:Ja.Center}}),vg._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=Et.register({description:"bracket-match-no-overview",stickiness:1,className:"bracket-match"});let Hb=vg;ai(Hb.ID,Hb,1);ye(Lje);ye(xje);ye(kje);qs.appendMenuItem(Ge.MenubarGoMenu,{group:"5_infile_nav",command:{id:"editor.action.jumpToBracket",title:v({key:"miGoToBracket",comment:["&& denotes a mnemonic"]},"Go to &&Bracket")},order:2});class Eje{constructor(e,t){this._selection=e,this._isMovingLeft=t}getEditOperations(e,t){if(this._selection.startLineNumber!==this._selection.endLineNumber||this._selection.isEmpty())return;const i=this._selection.startLineNumber,n=this._selection.startColumn,o=this._selection.endColumn;if(!(this._isMovingLeft&&n===1)&&!(!this._isMovingLeft&&o===e.getLineMaxColumn(i)))if(this._isMovingLeft){const r=new M(i,n-1,i,n),a=e.getValueInRange(r);t.addEditOperation(r,null),t.addEditOperation(new M(i,o,i,o),a)}else{const r=new M(i,o,i,o+1),a=e.getValueInRange(r);t.addEditOperation(r,null),t.addEditOperation(new M(i,n,i,n),a)}}computeCursorState(e,t){return this._isMovingLeft?new Ye(this._selection.startLineNumber,this._selection.startColumn-1,this._selection.endLineNumber,this._selection.endColumn-1):new Ye(this._selection.startLineNumber,this._selection.startColumn+1,this._selection.endLineNumber,this._selection.endColumn+1)}}class Zhe extends ze{constructor(e,t){super(t),this.left=e}run(e,t){if(!t.hasModel())return;const i=[],n=t.getSelections();for(const o of n)i.push(new Eje(o,this.left));t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}}class Nje extends Zhe{constructor(){super(!0,{id:"editor.action.moveCarretLeftAction",label:v("caret.moveLeft","Move Selected Text Left"),alias:"Move Selected Text Left",precondition:W.writable})}}class Ije extends Zhe{constructor(){super(!1,{id:"editor.action.moveCarretRightAction",label:v("caret.moveRight","Move Selected Text Right"),alias:"Move Selected Text Right",precondition:W.writable})}}ye(Nje);ye(Ije);class Tje extends ze{constructor(){super({id:"editor.action.transposeLetters",label:v("transposeLetters.label","Transpose Letters"),alias:"Transpose Letters",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(e,t){if(!t.hasModel())return;const i=t.getModel(),n=[],o=t.getSelections();for(const r of o){if(!r.isEmpty())continue;const a=r.startLineNumber,l=r.startColumn,c=i.getLineMaxColumn(a);if(a===1&&(l===1||l===2&&c===2))continue;const d=l===c?r.getPosition():Li.rightPosition(i,r.getPosition().lineNumber,r.getPosition().column),u=Li.leftPosition(i,d),f=Li.leftPosition(i,u),p=i.getValueInRange(M.fromPositions(f,u)),m=i.getValueInRange(M.fromPositions(u,d)),b=M.fromPositions(f,d);n.push(new yo(b,m+p))}n.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop())}}ye(Tje);const hP=(function(){if(typeof crypto=="object"&&typeof crypto.randomUUID=="function")return crypto.randomUUID.bind(crypto);let s;typeof crypto=="object"&&typeof crypto.getRandomValues=="function"?s=crypto.getRandomValues.bind(crypto):s=function(i){for(let n=0;n<i.length;n++)i[n]=Math.floor(Math.random()*256);return i};const e=new Uint8Array(16),t=[];for(let i=0;i<256;i++)t.push(i.toString(16).padStart(2,"0"));return function(){s(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128;let n=0,o="";return o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o}})();function U$(s){return{asString:async()=>s,asFile:()=>{},value:typeof s=="string"?s:void 0}}function Rje(s,e,t){const i={id:hP(),name:s,uri:e,data:t};return{asString:async()=>"",asFile:()=>i,value:void 0}}class Xhe{constructor(){this._entries=new Map}get size(){let e=0;for(const t of this._entries)e++;return e}has(e){return this._entries.has(this.toKey(e))}matches(e){const t=[...this._entries.keys()];return ii.some(this,([i,n])=>n.asFile())&&t.push("files"),Jhe(ZR(e),t)}get(e){return this._entries.get(this.toKey(e))?.[0]}append(e,t){const i=this._entries.get(e);i?i.push(t):this._entries.set(this.toKey(e),[t])}replace(e,t){this._entries.set(this.toKey(e),[t])}delete(e){this._entries.delete(this.toKey(e))}*[Symbol.iterator](){for(const[e,t]of this._entries)for(const i of t)yield[e,i]}toKey(e){return ZR(e)}}function ZR(s){return s.toLowerCase()}function Qhe(s,e){return Jhe(ZR(s),e.map(ZR))}function Jhe(s,e){if(s==="*/*")return e.length>0;if(e.includes(s))return!0;const t=s.match(/^([a-z]+)\/([a-z]+|\*)$/i);if(!t)return!1;const[i,n,o]=t;return o==="*"?e.some(r=>r.startsWith(n+"/")):!1}const fP=Object.freeze({create:s=>df(s.map(e=>e.toString())).join(`\r
717
+ hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")o.push({token:a.token+t.tokenPostfix,open:of(t,a.open),close:of(t,a.close)});else throw hn(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=o,t.noThrow=!0,t}function uze(s){c1.registerLanguage(s)}function hze(){let s=[];return s=s.concat(c1.getLanguages()),s}function fze(s){return bt.get(xn).languageIdCodec.encodeLanguageId(s)}function gze(s,e){return bt.withServices(()=>{const i=bt.get(xn).onDidRequestRichLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function pze(s,e){return bt.withServices(()=>{const i=bt.get(xn).onDidRequestBasicLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function mze(s,e){if(!bt.get(xn).isRegisteredLanguageId(s))throw new Error(`Cannot set configuration for unknown language ${s}`);return bt.get(Rn).register(s,e,100)}class _ze{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return BL.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new ZA(n.tokens,n.endState)}}class BL{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let o=0,r=e.length;o<r;o++){const a=e[o];let l=a.startIndex;o===0?l=0:l<n&&(l=n),i[o]=new Bx(l,a.scopes,t),n=l}return i}static adaptTokenize(e,t,i,n){const o=t.tokenize(i,n),r=BL._toClassicTokens(o.tokens,e);let a;return o.endState.equals(n)?a=n:a=o.endState,new cU(r,a)}tokenize(e,t,i){return BL.adaptTokenize(this._languageId,this._actual,e,i)}_toBinaryTokens(e,t){const i=e.encodeLanguageId(this._languageId),n=this._standaloneThemeService.getColorTheme().tokenTheme,o=[];let r=0,a=0;for(let c=0,d=t.length;c<d;c++){const u=t[c],f=n.match(i,u.scopes)|1024;if(r>0&&o[r-1]===f)continue;let p=u.startIndex;c===0?p=0:p<a&&(p=a),o[r++]=p,o[r++]=f,a=p}const l=new Uint32Array(r);for(let c=0;c<r;c++)l[c]=o[c];return l}tokenizeEncoded(e,t,i){const n=this._actual.tokenize(e,i),o=this._toBinaryTokens(this._languageService.languageIdCodec,n.tokens);let r;return n.endState.equals(i)?r=i:r=n.endState,new ZA(o,r)}}function bze(s){return typeof s.getInitialState=="function"}function vze(s){return"tokenizeEncoded"in s}function Che(s){return s&&typeof s.then=="function"}function Cze(s){const e=bt.get(hl);if(s){const t=[null];for(let i=1,n=s.length;i<n;i++)t[i]=ve.fromHex(s[i]);e.setColorMapOverride(t)}else e.setColorMapOverride(null)}function whe(s,e){return vze(e)?new _ze(s,e):new BL(s,e,bt.get(xn),bt.get(hl))}function O$(s,e){const t=new YEe(async()=>{const i=await Promise.resolve(e.create());return i?bze(i)?whe(s,i):new kL(bt.get(xn),bt.get(hl),s,vhe(s,i),bt.get(Wt)):null});return Vn.registerFactory(s,t)}function wze(s,e){if(!bt.get(xn).isRegisteredLanguageId(s))throw new Error(`Cannot set tokens provider for unknown language ${s}`);return Che(e)?O$(s,{create:()=>e}):Vn.register(s,whe(s,e))}function yze(s,e){const t=i=>new kL(bt.get(xn),bt.get(hl),s,vhe(s,i),bt.get(Wt));return Che(e)?O$(s,{create:()=>e}):Vn.register(s,t(e))}function Sze(s,e){return bt.get(qe).referenceProvider.register(s,e)}function xze(s,e){return bt.get(qe).renameProvider.register(s,e)}function Lze(s,e){return bt.get(qe).newSymbolNamesProvider.register(s,e)}function kze(s,e){return bt.get(qe).signatureHelpProvider.register(s,e)}function Dze(s,e){return bt.get(qe).hoverProvider.register(s,{provideHover:async(i,n,o,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,o,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new M(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new M(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function Eze(s,e){return bt.get(qe).documentSymbolProvider.register(s,e)}function Nze(s,e){return bt.get(qe).documentHighlightProvider.register(s,e)}function Ize(s,e){return bt.get(qe).linkedEditingRangeProvider.register(s,e)}function Tze(s,e){return bt.get(qe).definitionProvider.register(s,e)}function Rze(s,e){return bt.get(qe).implementationProvider.register(s,e)}function Mze(s,e){return bt.get(qe).typeDefinitionProvider.register(s,e)}function Aze(s,e){return bt.get(qe).codeLensProvider.register(s,e)}function Oze(s,e,t){return bt.get(qe).codeActionProvider.register(s,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,o,r,a)=>{const c=bt.get(zu).read({resource:n.uri}).filter(d=>M.areIntersectingOrTouching(d,o));return e.provideCodeActions(n,o,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function Pze(s,e){return bt.get(qe).documentFormattingEditProvider.register(s,e)}function Fze(s,e){return bt.get(qe).documentRangeFormattingEditProvider.register(s,e)}function Bze(s,e){return bt.get(qe).onTypeFormattingEditProvider.register(s,e)}function Wze(s,e){return bt.get(qe).linkProvider.register(s,e)}function Hze(s,e){return bt.get(qe).completionProvider.register(s,e)}function Vze(s,e){return bt.get(qe).colorProvider.register(s,e)}function zze(s,e){return bt.get(qe).foldingRangeProvider.register(s,e)}function Uze(s,e){return bt.get(qe).declarationProvider.register(s,e)}function jze(s,e){return bt.get(qe).selectionRangeProvider.register(s,e)}function $ze(s,e){return bt.get(qe).documentSemanticTokensProvider.register(s,e)}function qze(s,e){return bt.get(qe).documentRangeSemanticTokensProvider.register(s,e)}function Kze(s,e){return bt.get(qe).inlineCompletionsProvider.register(s,e)}function Gze(s,e){return bt.get(qe).inlineEditProvider.register(s,e)}function Yze(s,e){return bt.get(qe).inlayHintsProvider.register(s,e)}function Zze(){return{register:uze,getLanguages:hze,onLanguage:gze,onLanguageEncountered:pze,getEncodedLanguageId:fze,setLanguageConfiguration:mze,setColorMap:Cze,registerTokensProviderFactory:O$,setTokensProvider:wze,setMonarchTokensProvider:yze,registerReferenceProvider:Sze,registerRenameProvider:xze,registerNewSymbolNameProvider:Lze,registerCompletionItemProvider:Hze,registerSignatureHelpProvider:kze,registerHoverProvider:Dze,registerDocumentSymbolProvider:Eze,registerDocumentHighlightProvider:Nze,registerLinkedEditingRangeProvider:Ize,registerDefinitionProvider:Tze,registerImplementationProvider:Rze,registerTypeDefinitionProvider:Mze,registerCodeLensProvider:Aze,registerCodeActionProvider:Oze,registerDocumentFormattingEditProvider:Pze,registerDocumentRangeFormattingEditProvider:Fze,registerOnTypeFormattingEditProvider:Bze,registerLinkProvider:Wze,registerColorProvider:Vze,registerFoldingRangeProvider:zze,registerDeclarationProvider:Uze,registerSelectionRangeProvider:jze,registerDocumentSemanticTokensProvider:$ze,registerDocumentRangeSemanticTokensProvider:qze,registerInlineCompletionsProvider:Kze,registerInlineEditProvider:Gze,registerInlayHintsProvider:Yze,DocumentHighlightKind:b9,CompletionItemKind:h9,CompletionItemTag:f9,CompletionItemInsertTextRule:u9,SymbolKind:Y9,SymbolTag:Z9,IndentAction:L9,CompletionTriggerKind:g9,SignatureHelpTriggerKind:G9,InlayHintKind:D9,InlineCompletionTriggerKind:E9,InlineEditTriggerKind:N9,CodeActionTriggerType:d9,NewSymbolNameTag:P9,NewSymbolNameTriggerKind:F9,PartialAcceptTriggerKind:H9,HoverVerbosityAction:x9,FoldingRangeKind:bp,SelectedSuggestionInfo:Sae}}const P$=Kt("IEditorCancelService"),yhe=new Be("cancellableOperation",!1,v("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));ei(P$,class{constructor(){this._tokens=new WeakMap}add(s,e){let t=this._tokens.get(s);t||(t=s.invokeWithinContext(n=>{const o=yhe.bindTo(n.get(gt)),r=new cr;return{key:o,tokens:r}}),this._tokens.set(s,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(s){const e=this._tokens.get(s);if(!e)return;const t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);class Xze extends In{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(P$).add(e,this))}dispose(){this._unregister(),super.dispose()}}Fe(new class extends Ds{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:yhe})}runEditorCommand(s,e){s.get(P$).cancel(e)}});let She=class IW{constructor(e,t){if(this.flags=t,(this.flags&1)!==0){const i=e.getModel();this.modelVersionId=i?Lb("{0}#{1}",i.uri.toString(),i.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 IW))return!1;const t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new IW(e,this.flags))}};class Rp extends Xze{constructor(e,t,i,n){super(e,n),this._listener=new _e,t&4&&this._listener.add(e.onDidChangeCursorPosition(o=>{(!i||!M.containsPosition(i,o.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(o=>{(!i||!M.containsRange(i,o.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(o=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(o=>this.cancel())),this._listener.add(e.onDidChangeModelContent(o=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}class F$ extends In{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}function Ou(s){return s&&typeof s.getEditorType=="function"?s.getEditorType()===Qk.ICodeEditor:!1}function B$(s){return s&&typeof s.getEditorType=="function"?s.getEditorType()===Qk.IDiffEditor:!1}function Qze(s){return!!s&&typeof s=="object"&&typeof s.onDidChangeActiveEditor=="function"}function xhe(s){return Ou(s)?s:B$(s)?s.getModifiedEditor():Qze(s)&&Ou(s.activeCodeEditor)?s.activeCodeEditor:null}class I1{static _handleEolEdits(e,t){let i;const n=[];for(const o of t)typeof o.eol=="number"&&(i=o.eol),o.range&&typeof o.text=="string"&&n.push(o);return typeof i=="number"&&e.hasModel()&&e.getModel().pushEOL(i),n}static _isFullModelReplaceEdit(e,t){if(!e.hasModel())return!1;const i=e.getModel(),n=i.validateRange(t.range);return i.getFullModelRange().equalsRange(n)}static execute(e,t,i){i&&e.pushUndoStop();const n=Dd.capture(e),o=I1._handleEolEdits(e,t);o.length===1&&I1._isFullModelReplaceEdit(e,o[0])?e.executeEdits("formatEditsCommand",o.map(r=>En.replace(M.lift(r.range),r.text))):e.executeEdits("formatEditsCommand",o.map(r=>En.replaceMove(M.lift(r.range),r.text))),i&&e.pushUndoStop(),n.restoreRelativeVerticalPositionOfCursor(e)}}class Uie{constructor(e){this.value=e,this._lower=e.toLowerCase()}static toKey(e){return typeof e=="string"?e.toLowerCase():e._lower}}class Jze{constructor(e){if(this._set=new Set,e)for(const t of e)this.add(t)}add(e){this._set.add(Uie.toKey(e))}has(e){return this._set.has(Uie.toKey(e))}}function Lhe(s,e,t){const i=[],n=new Jze,o=s.ordered(t);for(const a of o)i.push(a),a.extensionId&&n.add(a.extensionId);const r=e.ordered(t);for(const a of r){if(a.extensionId){if(n.has(a.extensionId))continue;n.add(a.extensionId)}i.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits(l,c,d){return a.provideDocumentRangeFormattingEdits(l,l.getFullModelRange(),c,d)}})}return i}const xx=class xx{static setFormatterSelector(e){return{dispose:xx._selectors.unshift(e)}}static async select(e,t,i,n){if(e.length===0)return;const o=ii.first(xx._selectors);if(o)return await o(e,t,i,n)}};xx._selectors=new cr;let WL=xx;async function khe(s,e,t,i,n,o,r){const a=s.get(it),{documentRangeFormattingEditProvider:l}=s.get(qe),c=Ou(e)?e.getModel():e,d=l.ordered(c),u=await WL.select(d,c,i,2);u&&(n.report(u),await a.invokeFunction(eUe,u,e,t,o,r))}async function eUe(s,e,t,i,n,o){const r=s.get(Kr),a=s.get(ko),l=s.get(jp);let c,d;Ou(t)?(c=t.getModel(),d=new Rp(t,5,void 0,n)):(c=t,d=new F$(t,n));const u=[];let f=0;for(const y of Qz(i).sort(M.compareRangesUsingStarts))f>0&&M.areIntersectingOrTouching(u[f-1],y)?u[f-1]=M.fromPositions(u[f-1].getStartPosition(),y.getEndPosition()):f=u.push(y);const p=async y=>{a.trace("[format][provideDocumentRangeFormattingEdits] (request)",e.extensionId?.value,y);const S=await e.provideDocumentRangeFormattingEdits(c,y,c.getFormattingOptions(),d.token)||[];return a.trace("[format][provideDocumentRangeFormattingEdits] (response)",e.extensionId?.value,S),S},m=(y,S)=>{if(!y.length||!S.length)return!1;const x=y.reduce((L,N)=>M.plusRange(L,N.range),y[0].range);if(!S.some(L=>M.intersectRanges(x,L.range)))return!1;for(const L of y)for(const N of S)if(M.intersectRanges(L.range,N.range))return!0;return!1},b=[],w=[];try{if(typeof e.provideDocumentRangesFormattingEdits=="function"){a.trace("[format][provideDocumentRangeFormattingEdits] (request)",e.extensionId?.value,u);const y=await e.provideDocumentRangesFormattingEdits(c,u,c.getFormattingOptions(),d.token)||[];a.trace("[format][provideDocumentRangeFormattingEdits] (response)",e.extensionId?.value,y),w.push(y)}else{for(const y of u){if(d.token.isCancellationRequested)return!0;w.push(await p(y))}for(let y=0;y<u.length;++y)for(let S=y+1;S<u.length;++S){if(d.token.isCancellationRequested)return!0;if(m(w[y],w[S])){const x=M.plusRange(u[y],u[S]),L=await p(x);u.splice(S,1),u.splice(y,1),u.push(x),w.splice(S,1),w.splice(y,1),w.push(L),y=0,S=0}}}for(const y of w){if(d.token.isCancellationRequested)return!0;const S=await r.computeMoreMinimalEdits(c.uri,y);S&&b.push(...S)}}finally{d.dispose()}if(b.length===0)return!1;if(Ou(t))I1.execute(t,b,!0),t.revealPositionInCenterIfOutsideViewport(t.getPosition(),1);else{const[{range:y}]=b,S=new Ye(y.startLineNumber,y.startColumn,y.endLineNumber,y.endColumn);c.pushEditOperations([S],b.map(x=>({text:x.text,range:M.lift(x.range),forceMoveMarkers:!0})),x=>{for(const{range:L}of x)if(M.areIntersectingOrTouching(L,S))return[new Ye(L.startLineNumber,L.startColumn,L.endLineNumber,L.endColumn)];return null})}return l.playSignal(Va.format,{userGesture:o}),!0}async function tUe(s,e,t,i,n,o){const r=s.get(it),a=s.get(qe),l=Ou(e)?e.getModel():e,c=Lhe(a.documentFormattingEditProvider,a.documentRangeFormattingEditProvider,l),d=await WL.select(c,l,t,1);d&&(i.report(d),await r.invokeFunction(iUe,d,e,t,n,o))}async function iUe(s,e,t,i,n,o){const r=s.get(Kr),a=s.get(jp);let l,c;Ou(t)?(l=t.getModel(),c=new Rp(t,5,void 0,n)):(l=t,c=new F$(t,n));let d;try{const u=await e.provideDocumentFormattingEdits(l,l.getFormattingOptions(),c.token);if(d=await r.computeMoreMinimalEdits(l.uri,u),c.token.isCancellationRequested)return!0}finally{c.dispose()}if(!d||d.length===0)return!1;if(Ou(t))I1.execute(t,d,i!==2),i!==2&&t.revealPositionInCenterIfOutsideViewport(t.getPosition(),1);else{const[{range:u}]=d,f=new Ye(u.startLineNumber,u.startColumn,u.endLineNumber,u.endColumn);l.pushEditOperations([f],d.map(p=>({text:p.text,range:M.lift(p.range),forceMoveMarkers:!0})),p=>{for(const{range:m}of p)if(M.areIntersectingOrTouching(m,f))return[new Ye(m.startLineNumber,m.startColumn,m.endLineNumber,m.endColumn)];return null})}return a.playSignal(Va.format,{userGesture:o}),!0}async function nUe(s,e,t,i,n,o){const r=e.documentRangeFormattingEditProvider.ordered(t);for(const a of r){const l=await Promise.resolve(a.provideDocumentRangeFormattingEdits(t,i,n,o)).catch(Qn);if(Xo(l))return await s.computeMoreMinimalEdits(t.uri,l)}}async function sUe(s,e,t,i,n){const o=Lhe(e.documentFormattingEditProvider,e.documentRangeFormattingEditProvider,t);for(const r of o){const a=await Promise.resolve(r.provideDocumentFormattingEdits(t,i,n)).catch(Qn);if(Xo(a))return await s.computeMoreMinimalEdits(t.uri,a)}}function Dhe(s,e,t,i,n,o,r){const a=e.onTypeFormattingEditProvider.ordered(t);return a.length===0||a[0].autoFormatTriggerCharacters.indexOf(n)<0?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(t,i,n,o,r)).catch(Qn).then(l=>s.computeMoreMinimalEdits(t.uri,l))}ni.registerCommand("_executeFormatRangeProvider",async function(s,...e){const[t,i,n]=e;fi(ot.isUri(t)),fi(M.isIRange(i));const o=s.get(jr),r=s.get(Kr),a=s.get(qe),l=await o.createModelReference(t);try{return nUe(r,a,l.object.textEditorModel,M.lift(i),n,Mt.None)}finally{l.dispose()}});ni.registerCommand("_executeFormatDocumentProvider",async function(s,...e){const[t,i]=e;fi(ot.isUri(t));const n=s.get(jr),o=s.get(Kr),r=s.get(qe),a=await n.createModelReference(t);try{return sUe(o,r,a.object.textEditorModel,i,Mt.None)}finally{a.dispose()}});ni.registerCommand("_executeFormatOnTypeProvider",async function(s,...e){const[t,i,n,o]=e;fi(ot.isUri(t)),fi(ee.isIPosition(i)),fi(typeof n=="string");const r=s.get(jr),a=s.get(Kr),l=s.get(qe),c=await r.createModelReference(t);try{return Dhe(a,l,c.object.textEditorModel,ee.lift(i),n,o,Mt.None)}finally{c.dispose()}});Id.wrappingIndent.defaultValue=0;Id.glyphMargin.defaultValue=!1;Id.autoIndent.defaultValue=3;Id.overviewRulerLanes.defaultValue=2;WL.setFormatterSelector((s,e,t)=>Promise.resolve(s[0]));const Sr=xae();Sr.editor=oze();Sr.languages=Zze();const oUe=Sr.CancellationTokenSource,rUe=Sr.Emitter,aUe=Sr.KeyCode,lUe=Sr.KeyMod,cUe=Sr.Position,dUe=Sr.Range,uUe=Sr.Selection,hUe=Sr.SelectionDirection,fUe=Sr.MarkerSeverity,gUe=Sr.MarkerTag,pUe=Sr.Uri,mUe=Sr.Token,TW=Sr.editor,_Ue=Sr.languages,bUe=globalThis.MonacoEnvironment;(bUe?.globalAPI||typeof define=="function"&&define.amd)&&(globalThis.monaco=Sr);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 iD=Object.freeze(Object.defineProperty({__proto__:null,CancellationTokenSource:oUe,Emitter:rUe,KeyCode:aUe,KeyMod:lUe,MarkerSeverity:fUe,MarkerTag:gUe,Position:cUe,Range:dUe,Selection:uUe,SelectionDirection:hUe,Token:mUe,Uri:pUe,editor:TW,languages:_Ue},Symbol.toStringTag,{value:"Module"}));var vUe=Object.defineProperty,CUe=Object.getOwnPropertyDescriptor,wUe=Object.getOwnPropertyNames,yUe=Object.prototype.hasOwnProperty,SUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of wUe(e))!yUe.call(s,n)&&n!==t&&vUe(s,n,{get:()=>e[n],enumerable:!(i=CUe(e,n))||i.enumerable});return s},xUe=(s,e,t)=>(SUe(s,e,"default"),t),cS={};xUe(cS,iD);var Ehe={},z3={},LUe=class Nhe{static getOrCreate(e){return z3[e]||(z3[e]=new Nhe(e)),z3[e]}constructor(e){this._languageId=e,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((t,i)=>{this._lazyLoadPromiseResolve=t,this._lazyLoadPromiseReject=i})}load(){return this._loadingTriggered||(this._loadingTriggered=!0,Ehe[this._languageId].loader().then(e=>this._lazyLoadPromiseResolve(e),e=>this._lazyLoadPromiseReject(e))),this._lazyLoadPromise}};function dt(s){const e=s.id;Ehe[e]=s,cS.languages.register(s);const t=LUe.getOrCreate(e);cS.languages.registerTokensProviderFactory(e,{create:async()=>(await t.load()).language}),cS.languages.onLanguageEncountered(e,async()=>{const i=await t.load();cS.languages.setLanguageConfiguration(e,i.conf)})}dt({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:()=>rt(()=>import("./abap-CRCWOmpq.js"),[])});dt({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:()=>rt(()=>import("./apex-DnsZk_dE.js"),[])});dt({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:()=>rt(()=>import("./azcli-1IWB1ccx.js"),[])});dt({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:()=>rt(()=>import("./bat-DPkNLes8.js"),[])});dt({id:"bicep",extensions:[".bicep"],aliases:["Bicep"],loader:()=>rt(()=>import("./bicep-Corcdgou.js"),[])});dt({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:()=>rt(()=>import("./cameligo-CGrWLZr3.js"),[])});dt({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:()=>rt(()=>import("./clojure-D9WOWImG.js"),[])});dt({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>rt(()=>import("./coffee-B7EJu28W.js"),[])});dt({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:()=>rt(()=>import("./cpp-SEyurbux.js"),[])});dt({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:()=>rt(()=>import("./cpp-SEyurbux.js"),[])});dt({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:()=>rt(()=>import("./csharp-BoL64M5l.js"),[])});dt({id:"csp",extensions:[".csp"],aliases:["CSP","csp"],loader:()=>rt(()=>import("./csp-C46ZqvIl.js"),[])});dt({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:()=>rt(()=>import("./css-DQU6DXDx.js"),[])});dt({id:"cypher",extensions:[".cypher",".cyp"],aliases:["Cypher","OpenCypher"],loader:()=>rt(()=>import("./cypher-D84EuPTj.js"),[])});dt({id:"dart",extensions:[".dart"],aliases:["Dart","dart"],mimetypes:["text/x-dart-source","text/x-dart"],loader:()=>rt(()=>import("./dart-D8lhlL1r.js"),[])});dt({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:()=>rt(()=>import("./dockerfile-DLk6rpji.js"),[])});dt({id:"ecl",extensions:[".ecl"],aliases:["ECL","Ecl","ecl"],loader:()=>rt(()=>import("./ecl-BO6FnfXk.js"),[])});dt({id:"elixir",extensions:[".ex",".exs"],aliases:["Elixir","elixir","ex"],loader:()=>rt(()=>import("./elixir-BRjLKONM.js"),[])});dt({id:"flow9",extensions:[".flow"],aliases:["Flow9","Flow","flow9","flow"],loader:()=>rt(()=>import("./flow9-Cac8vKd7.js"),[])});dt({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>rt(()=>import("./fsharp-fd1GTHhf.js"),[])});dt({id:"freemarker2",extensions:[".ftl",".ftlh",".ftlx"],aliases:["FreeMarker2","Apache FreeMarker2"],loader:()=>rt(()=>import("./freemarker2-VNR3qIlX.js"),[]).then(s=>s.TagAutoInterpolationDollar)});dt({id:"freemarker2.tag-angle.interpolation-dollar",aliases:["FreeMarker2 (Angle/Dollar)","Apache FreeMarker2 (Angle/Dollar)"],loader:()=>rt(()=>import("./freemarker2-VNR3qIlX.js"),[]).then(s=>s.TagAngleInterpolationDollar)});dt({id:"freemarker2.tag-bracket.interpolation-dollar",aliases:["FreeMarker2 (Bracket/Dollar)","Apache FreeMarker2 (Bracket/Dollar)"],loader:()=>rt(()=>import("./freemarker2-VNR3qIlX.js"),[]).then(s=>s.TagBracketInterpolationDollar)});dt({id:"freemarker2.tag-angle.interpolation-bracket",aliases:["FreeMarker2 (Angle/Bracket)","Apache FreeMarker2 (Angle/Bracket)"],loader:()=>rt(()=>import("./freemarker2-VNR3qIlX.js"),[]).then(s=>s.TagAngleInterpolationBracket)});dt({id:"freemarker2.tag-bracket.interpolation-bracket",aliases:["FreeMarker2 (Bracket/Bracket)","Apache FreeMarker2 (Bracket/Bracket)"],loader:()=>rt(()=>import("./freemarker2-VNR3qIlX.js"),[]).then(s=>s.TagBracketInterpolationBracket)});dt({id:"freemarker2.tag-auto.interpolation-dollar",aliases:["FreeMarker2 (Auto/Dollar)","Apache FreeMarker2 (Auto/Dollar)"],loader:()=>rt(()=>import("./freemarker2-VNR3qIlX.js"),[]).then(s=>s.TagAutoInterpolationDollar)});dt({id:"freemarker2.tag-auto.interpolation-bracket",aliases:["FreeMarker2 (Auto/Bracket)","Apache FreeMarker2 (Auto/Bracket)"],loader:()=>rt(()=>import("./freemarker2-VNR3qIlX.js"),[]).then(s=>s.TagAutoInterpolationBracket)});dt({id:"go",extensions:[".go"],aliases:["Go"],loader:()=>rt(()=>import("./go-O9LJTZXk.js"),[])});dt({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:()=>rt(()=>import("./graphql-LQdxqEYJ.js"),[])});dt({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars","hbs"],mimetypes:["text/x-handlebars-template"],loader:()=>rt(()=>import("./handlebars-Tl9rb_wi.js"),[])});dt({id:"hcl",extensions:[".tf",".tfvars",".hcl"],aliases:["Terraform","tf","HCL","hcl"],loader:()=>rt(()=>import("./hcl-DxDQ3s82.js"),[])});dt({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:()=>rt(()=>import("./html-DPF40zp3.js"),[])});dt({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:()=>rt(()=>import("./ini-BvajGCUy.js"),[])});dt({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:()=>rt(()=>import("./java-SYsfObOQ.js"),[])});dt({id:"javascript",extensions:[".js",".es6",".jsx",".mjs",".cjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:()=>rt(()=>import("./javascript-BpsgEO5T.js"),__vite__mapDeps([0,1]))});dt({id:"julia",extensions:[".jl"],aliases:["julia","Julia"],loader:()=>rt(()=>import("./julia-DQXNmw_w.js"),[])});dt({id:"kotlin",extensions:[".kt",".kts"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:()=>rt(()=>import("./kotlin-qQ0MG-9I.js"),[])});dt({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:()=>rt(()=>import("./less-GGFNNJHn.js"),[])});dt({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>rt(()=>import("./lexon-Canl7DCW.js"),[])});dt({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:()=>rt(()=>import("./lua-D28Ae8-K.js"),[])});dt({id:"liquid",extensions:[".liquid",".html.liquid"],aliases:["Liquid","liquid"],mimetypes:["application/liquid"],loader:()=>rt(()=>import("./liquid-LFSrT6MG.js"),[])});dt({id:"m3",extensions:[".m3",".i3",".mg",".ig"],aliases:["Modula-3","Modula3","modula3","m3"],loader:()=>rt(()=>import("./m3-DPitgjJI.js"),[])});dt({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:()=>rt(()=>import("./markdown-B811l8j2.js"),[])});dt({id:"mdx",extensions:[".mdx"],aliases:["MDX","mdx"],loader:()=>rt(()=>import("./mdx-CIgkEV38.js"),[])});dt({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:()=>rt(()=>import("./mips-CdjsipkG.js"),[])});dt({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:()=>rt(()=>import("./msdax-CYqgjx_P.js"),[])});dt({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:()=>rt(()=>import("./mysql-BHd6q0vd.js"),[])});dt({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:()=>rt(()=>import("./objective-c-B1aVtJYH.js"),[])});dt({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>rt(()=>import("./pascal-BhNW15KB.js"),[])});dt({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:()=>rt(()=>import("./pascaligo-5jv8CcQD.js"),[])});dt({id:"perl",extensions:[".pl",".pm"],aliases:["Perl","pl"],loader:()=>rt(()=>import("./perl-DlYyT36c.js"),[])});dt({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:()=>rt(()=>import("./pgsql-Dy0bjov7.js"),[])});dt({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:()=>rt(()=>import("./php-120yhfDK.js"),[])});dt({id:"pla",extensions:[".pla"],loader:()=>rt(()=>import("./pla-CjnFlu4u.js"),[])});dt({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:()=>rt(()=>import("./postiats-CQpG440k.js"),[])});dt({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:()=>rt(()=>import("./powerquery-DdJtto1Z.js"),[])});dt({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:()=>rt(()=>import("./powershell-Bu_VLpJB.js"),[])});dt({id:"proto",extensions:[".proto"],aliases:["protobuf","Protocol Buffers"],loader:()=>rt(()=>import("./protobuf-IBS6jZEB.js"),[])});dt({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:()=>rt(()=>import("./pug-kFxLfcjb.js"),[])});dt({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:()=>rt(()=>import("./python-f-APDdLJ.js"),[])});dt({id:"qsharp",extensions:[".qs"],aliases:["Q#","qsharp"],loader:()=>rt(()=>import("./qsharp-q7JyzKFN.js"),[])});dt({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:()=>rt(()=>import("./r-BIFz-_sK.js"),[])});dt({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:()=>rt(()=>import("./razor-CcZ5caQe.js"),[])});dt({id:"redis",extensions:[".redis"],aliases:["redis"],loader:()=>rt(()=>import("./redis-CHOsPHWR.js"),[])});dt({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:()=>rt(()=>import("./redshift-CBifECDb.js"),[])});dt({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:()=>rt(()=>import("./restructuredtext-CghPJEOS.js"),[])});dt({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:()=>rt(()=>import("./ruby-CYWGW-b1.js"),[])});dt({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:()=>rt(()=>import("./rust-DMDD0SHb.js"),[])});dt({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:()=>rt(()=>import("./sb-BYAiYHFx.js"),[])});dt({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:()=>rt(()=>import("./scala-Bqvq8jcR.js"),[])});dt({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:()=>rt(()=>import("./scheme-Dhb-2j9p.js"),[])});dt({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>rt(()=>import("./scss-CTwUZ5N7.js"),[])});dt({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:()=>rt(()=>import("./shell-CsDZo4DB.js"),[])});dt({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:()=>rt(()=>import("./solidity-CME5AdoB.js"),[])});dt({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:()=>rt(()=>import("./sophia-RYC1BQQz.js"),[])});dt({id:"sparql",extensions:[".rq"],aliases:["sparql","SPARQL"],loader:()=>rt(()=>import("./sparql-KEyrF7De.js"),[])});dt({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:()=>rt(()=>import("./sql-BdTr02Mf.js"),[])});dt({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib",".TcPOU",".TcDUT",".TcGVL",".TcIO"],aliases:["StructuredText","scl","stl"],loader:()=>rt(()=>import("./st-C7iG7M4S.js"),[])});dt({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:()=>rt(()=>import("./swift-D7IUmUK8.js"),[])});dt({id:"systemverilog",extensions:[".sv",".svh"],aliases:["SV","sv","SystemVerilog","systemverilog"],loader:()=>rt(()=>import("./systemverilog-DgMryOEJ.js"),[])});dt({id:"verilog",extensions:[".v",".vh"],aliases:["V","v","Verilog","verilog"],loader:()=>rt(()=>import("./systemverilog-DgMryOEJ.js"),[])});dt({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:()=>rt(()=>import("./tcl-PloMZuKG.js"),[])});dt({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:()=>rt(()=>import("./twig-BfRIq3la.js"),[])});dt({id:"typescript",extensions:[".ts",".tsx",".cts",".mts"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:()=>rt(()=>import("./typescript-BWSPzIAG.js"),[])});dt({id:"typespec",extensions:[".tsp"],aliases:["TypeSpec"],loader:()=>rt(()=>import("./typespec-CzxlYoT_.js"),[])});dt({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:()=>rt(()=>import("./vb-BwAE3J76.js"),[])});dt({id:"wgsl",extensions:[".wgsl"],aliases:["WebGPU Shading Language","WGSL","wgsl"],loader:()=>rt(()=>import("./wgsl-B_1kOXbF.js"),[])});dt({id:"xml",extensions:[".xml",".xsd",".dtd",".ascx",".csproj",".config",".props",".targets",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xslt",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:()=>rt(()=>import("./xml-kQvpQHq-.js"),[])});dt({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:()=>rt(()=>import("./yaml-Bl9AEojJ.js"),[])});var kUe=Object.defineProperty,DUe=Object.getOwnPropertyDescriptor,EUe=Object.getOwnPropertyNames,NUe=Object.prototype.hasOwnProperty,IUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of EUe(e))!NUe.call(s,n)&&n!==t&&kUe(s,n,{get:()=>e[n],enumerable:!(i=DUe(e,n))||i.enumerable});return s},TUe=(s,e,t)=>(IUe(s,e,"default"),t),vy={};TUe(vy,iD);var W$=class{constructor(e,t,i){this._onDidChange=new vy.Emitter,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}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)}},H$={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}},V$={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},Ihe=new W$("css",H$,V$),The=new W$("scss",H$,V$),Rhe=new W$("less",H$,V$);vy.languages.css={cssDefaults:Ihe,lessDefaults:Rhe,scssDefaults:The};function z$(){return rt(()=>import("./cssMode-DVODTskC.js"),[])}vy.languages.onLanguage("less",()=>{z$().then(s=>s.setupMode(Rhe))});vy.languages.onLanguage("scss",()=>{z$().then(s=>s.setupMode(The))});vy.languages.onLanguage("css",()=>{z$().then(s=>s.setupMode(Ihe))});var RUe=Object.defineProperty,MUe=Object.getOwnPropertyDescriptor,AUe=Object.getOwnPropertyNames,OUe=Object.prototype.hasOwnProperty,PUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of AUe(e))!OUe.call(s,n)&&n!==t&&RUe(s,n,{get:()=>e[n],enumerable:!(i=MUe(e,n))||i.enumerable});return s},FUe=(s,e,t)=>(PUe(s,e,"default"),t),rP={};FUe(rP,iD);var BUe=class{constructor(e,t,i){this._onDidChange=new rP.Emitter,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}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)}},WUe={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"},aP={format:WUe,suggest:{},data:{useDefaultDataProvider:!0}};function lP(s){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:s===JS,documentFormattingEdits:s===JS,documentRangeFormattingEdits:s===JS}}var JS="html",jie="handlebars",$ie="razor",Mhe=cP(JS,aP,lP(JS)),HUe=Mhe.defaults,Ahe=cP(jie,aP,lP(jie)),VUe=Ahe.defaults,Ohe=cP($ie,aP,lP($ie)),zUe=Ohe.defaults;rP.languages.html={htmlDefaults:HUe,razorDefaults:zUe,handlebarDefaults:VUe,htmlLanguageService:Mhe,handlebarLanguageService:Ahe,razorLanguageService:Ohe,registerHTMLLanguageService:cP};function UUe(){return rt(()=>import("./htmlMode-zWkU3Y3t.js"),[])}function cP(s,e=aP,t=lP(s)){const i=new BUe(s,e,t);let n;const o=rP.languages.onLanguage(s,async()=>{n=(await UUe()).setupMode(i)});return{defaults:i,dispose(){o.dispose(),n?.dispose(),n=void 0}}}var jUe=Object.defineProperty,$Ue=Object.getOwnPropertyDescriptor,qUe=Object.getOwnPropertyNames,KUe=Object.prototype.hasOwnProperty,GUe=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of qUe(e))!KUe.call(s,n)&&n!==t&&jUe(s,n,{get:()=>e[n],enumerable:!(i=$Ue(e,n))||i.enumerable});return s},YUe=(s,e,t)=>(GUe(s,e,"default"),t),nD={};YUe(nD,iD);var ZUe=class{constructor(e,t,i){this._onDidChange=new nD.Emitter,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(i)}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)}},XUe={validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1,schemaRequest:"warning",schemaValidation:"warning",comments:"error",trailingCommas:"error"},QUe={documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},Phe=new ZUe("json",XUe,QUe),JUe=()=>Fhe().then(s=>s.getWorker());nD.languages.json={jsonDefaults:Phe,getWorker:JUe};function Fhe(){return rt(()=>import("./jsonMode-CczDM46r.js"),[])}nD.languages.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]});nD.languages.onLanguage("json",()=>{Fhe().then(s=>s.setupMode(Phe))});var eje=Object.defineProperty,tje=Object.getOwnPropertyDescriptor,ije=Object.getOwnPropertyNames,nje=Object.prototype.hasOwnProperty,sje=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of ije(e))!nje.call(s,n)&&n!==t&&eje(s,n,{get:()=>e[n],enumerable:!(i=tje(e,n))||i.enumerable});return s},oje=(s,e,t)=>(sje(s,e,"default"),t),rje="5.4.5",T1={};oje(T1,iD);var Bhe=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ESNext=99]="ESNext",s))(Bhe||{}),Whe=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(Whe||{}),Hhe=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(Hhe||{}),Vhe=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(Vhe||{}),zhe=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s))(zhe||{}),Uhe=class{constructor(s,e,t,i,n){this._onDidChange=new T1.Emitter,this._onDidExtraLibsChange=new T1.Emitter,this._extraLibs=Object.create(null),this._removedExtraLibs=Object.create(null),this._eagerModelSync=!1,this.setCompilerOptions(s),this.setDiagnosticsOptions(e),this.setWorkerOptions(t),this.setInlayHintsOptions(i),this.setModeConfiguration(n),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(s,e){let t;if(typeof e>"u"?t=`ts:extralib-${Math.random().toString(36).substring(2,15)}`:t=e,this._extraLibs[t]&&this._extraLibs[t].content===s)return{dispose:()=>{}};let i=1;return this._removedExtraLibs[t]&&(i=this._removedExtraLibs[t]+1),this._extraLibs[t]&&(i=this._extraLibs[t].version+1),this._extraLibs[t]={content:s,version:i},this._fireOnDidExtraLibsChangeSoon(),{dispose:()=>{let n=this._extraLibs[t];n&&n.version===i&&(delete this._extraLibs[t],this._removedExtraLibs[t]=i,this._fireOnDidExtraLibsChangeSoon())}}}setExtraLibs(s){for(const e in this._extraLibs)this._removedExtraLibs[e]=this._extraLibs[e].version;if(this._extraLibs=Object.create(null),s&&s.length>0)for(const e of s){const t=e.filePath||`ts:extralib-${Math.random().toString(36).substring(2,15)}`,i=e.content;let n=1;this._removedExtraLibs[t]&&(n=this._removedExtraLibs[t]+1),this._extraLibs[t]={content:i,version:n}}this._fireOnDidExtraLibsChangeSoon()}_fireOnDidExtraLibsChangeSoon(){this._onDidExtraLibsChangeTimeout===-1&&(this._onDidExtraLibsChangeTimeout=window.setTimeout(()=>{this._onDidExtraLibsChangeTimeout=-1,this._onDidExtraLibsChange.fire(void 0)},0))}getCompilerOptions(){return this._compilerOptions}setCompilerOptions(s){this._compilerOptions=s||Object.create(null),this._onDidChange.fire(void 0)}getDiagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(s){this._diagnosticsOptions=s||Object.create(null),this._onDidChange.fire(void 0)}setWorkerOptions(s){this._workerOptions=s||Object.create(null),this._onDidChange.fire(void 0)}setInlayHintsOptions(s){this._inlayHintsOptions=s||Object.create(null),this._onDidChange.fire(void 0)}setMaximumWorkerIdleTime(s){}setEagerModelSync(s){this._eagerModelSync=s}getEagerModelSync(){return this._eagerModelSync}setModeConfiguration(s){this._modeConfiguration=s||Object.create(null),this._onDidChange.fire(void 0)}},aje=rje,jhe={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},$he=new Uhe({allowNonTsExtensions:!0,target:99},{noSemanticValidation:!1,noSyntaxValidation:!1,onlyVisible:!1},{},{},jhe),qhe=new Uhe({allowNonTsExtensions:!0,allowJs:!0,target:99},{noSemanticValidation:!0,noSyntaxValidation:!1,onlyVisible:!1},{},{},jhe),lje=()=>dP().then(s=>s.getTypeScriptWorker()),cje=()=>dP().then(s=>s.getJavaScriptWorker());T1.languages.typescript={ModuleKind:Bhe,JsxEmit:Whe,NewLineKind:Hhe,ScriptTarget:Vhe,ModuleResolutionKind:zhe,typescriptVersion:aje,typescriptDefaults:$he,javascriptDefaults:qhe,getTypeScriptWorker:lje,getJavaScriptWorker:cje};function dP(){return rt(()=>import("./tsMode-BeWp_Zmp.js"),[])}T1.languages.onLanguage("typescript",()=>dP().then(s=>s.setupTypeScript($he)));T1.languages.onLanguage("javascript",()=>dP().then(s=>s.setupJavaScript(qhe)));class dje extends wr{constructor(){super({id:"diffEditor.toggleCollapseUnchangedRegions",title:_t("toggleCollapseUnchangedRegions","Toggle Collapse Unchanged Regions"),icon:De.map,toggled:be.has("config.diffEditor.hideUnchangedRegions.enabled"),precondition:be.has("isInDiffEditor"),menu:{when:be.has("isInDiffEditor"),id:Ge.EditorTitle,order:22,group:"navigation"}})}run(e,...t){const i=e.get(Wt),n=!i.getValue("diffEditor.hideUnchangedRegions.enabled");i.updateValue("diffEditor.hideUnchangedRegions.enabled",n)}}class Khe extends wr{constructor(){super({id:"diffEditor.toggleShowMovedCodeBlocks",title:_t("toggleShowMovedCodeBlocks","Toggle Show Moved Code Blocks"),precondition:be.has("isInDiffEditor")})}run(e,...t){const i=e.get(Wt),n=!i.getValue("diffEditor.experimental.showMoves");i.updateValue("diffEditor.experimental.showMoves",n)}}class Ghe extends wr{constructor(){super({id:"diffEditor.toggleUseInlineViewWhenSpaceIsLimited",title:_t("toggleUseInlineViewWhenSpaceIsLimited","Toggle Use Inline View When Space Is Limited"),precondition:be.has("isInDiffEditor")})}run(e,...t){const i=e.get(Wt),n=!i.getValue("diffEditor.useInlineViewWhenSpaceIsLimited");i.updateValue("diffEditor.useInlineViewWhenSpaceIsLimited",n)}}const sD=_t("diffEditor","Diff Editor");class uje extends Td{constructor(){super({id:"diffEditor.switchSide",title:_t("switchSide","Switch Side"),icon:De.arrowSwap,precondition:be.has("isInDiffEditor"),f1:!0,category:sD})}runEditorCommand(e,t,i){const n=Cy(e);if(n instanceof bf){if(i&&i.dryRun)return{destinationSelection:n.mapToOtherSide().destinationSelection};n.switchSide()}}}class hje extends Td{constructor(){super({id:"diffEditor.exitCompareMove",title:_t("exitCompareMove","Exit Compare Move"),icon:De.close,precondition:W.comparingMovedCode,f1:!1,category:sD,keybinding:{weight:1e4,primary:9}})}runEditorCommand(e,t,...i){const n=Cy(e);n instanceof bf&&n.exitCompareMove()}}class fje extends Td{constructor(){super({id:"diffEditor.collapseAllUnchangedRegions",title:_t("collapseAllUnchangedRegions","Collapse All Unchanged Regions"),icon:De.fold,precondition:be.has("isInDiffEditor"),f1:!0,category:sD})}runEditorCommand(e,t,...i){const n=Cy(e);n instanceof bf&&n.collapseAllUnchangedRegions()}}class gje extends Td{constructor(){super({id:"diffEditor.showAllUnchangedRegions",title:_t("showAllUnchangedRegions","Show All Unchanged Regions"),icon:De.unfold,precondition:be.has("isInDiffEditor"),f1:!0,category:sD})}runEditorCommand(e,t,...i){const n=Cy(e);n instanceof bf&&n.showAllUnchangedRegions()}}class RW extends wr{constructor(){super({id:"diffEditor.revert",title:_t("revert","Revert"),f1:!1,category:sD})}run(e,t){const i=pje(e,t.originalUri,t.modifiedUri);i instanceof bf&&i.revertRangeMappings(t.mapping.innerChanges??[])}}const Yhe=_t("accessibleDiffViewer","Accessible Diff Viewer"),z2=class z2 extends wr{constructor(){super({id:z2.id,title:_t("editor.action.accessibleDiffViewer.next","Go to Next Difference"),category:Yhe,precondition:be.has("isInDiffEditor"),keybinding:{primary:65,weight:100},f1:!0})}run(e){Cy(e)?.accessibleDiffViewerNext()}};z2.id="editor.action.accessibleDiffViewer.next";let HL=z2;const U2=class U2 extends wr{constructor(){super({id:U2.id,title:_t("editor.action.accessibleDiffViewer.prev","Go to Previous Difference"),category:Yhe,precondition:be.has("isInDiffEditor"),keybinding:{primary:1089,weight:100},f1:!0})}run(e){Cy(e)?.accessibleDiffViewerPrev()}};U2.id="editor.action.accessibleDiffViewer.prev";let YR=U2;function pje(s,e,t){return s.get(gi).listDiffEditors().find(o=>{const r=o.getModifiedEditor(),a=o.getOriginalEditor();return r&&r.getModel()?.uri.toString()===t.toString()&&a&&a.getModel()?.uri.toString()===e.toString()})||null}function Cy(s){const t=s.get(gi).listDiffEditors(),i=So();if(i)for(const n of t){const o=n.getContainerDomNode();if(mje(o,i))return n}return null}function mje(s,e){let t=e;for(;t;){if(t===s)return!0;t=t.parentElement}return!1}Zi(dje);Zi(Khe);Zi(Ghe);qs.appendMenuItem(Ge.EditorTitle,{command:{id:new Ghe().desc.id,title:v("useInlineViewWhenSpaceIsLimited","Use Inline View When Space Is Limited"),toggled:be.has("config.diffEditor.useInlineViewWhenSpaceIsLimited"),precondition:be.has("isInDiffEditor")},order:11,group:"1_diff",when:be.and(W.diffEditorRenderSideBySideInlineBreakpointReached,be.has("isInDiffEditor"))});qs.appendMenuItem(Ge.EditorTitle,{command:{id:new Khe().desc.id,title:v("showMoves","Show Moved Code Blocks"),icon:De.move,toggled:iy.create("config.diffEditor.experimental.showMoves",!0),precondition:be.has("isInDiffEditor")},order:10,group:"1_diff",when:be.has("isInDiffEditor")});Zi(RW);for(const s of[{icon:De.arrowRight,key:W.diffEditorInlineMode.toNegated()},{icon:De.discard,key:W.diffEditorInlineMode}])qs.appendMenuItem(Ge.DiffEditorHunkToolbar,{command:{id:new RW().desc.id,title:v("revertHunk","Revert Block"),icon:s.icon},when:be.and(W.diffEditorModifiedWritable,s.key),order:5,group:"primary"}),qs.appendMenuItem(Ge.DiffEditorSelectionToolbar,{command:{id:new RW().desc.id,title:v("revertSelection","Revert Selection"),icon:s.icon},when:be.and(W.diffEditorModifiedWritable,s.key),order:5,group:"primary"});Zi(uje);Zi(hje);Zi(fje);Zi(gje);qs.appendMenuItem(Ge.EditorTitle,{command:{id:HL.id,title:v("Open Accessible Diff Viewer","Open Accessible Diff Viewer"),precondition:be.has("isInDiffEditor")},order:10,group:"2_diff",when:be.and(W.accessibleDiffViewerVisible.negate(),be.has("isInDiffEditor"))});ni.registerCommandAlias("editor.action.diffReview.next",HL.id);Zi(HL);ni.registerCommandAlias("editor.action.diffReview.prev",YR.id);Zi(YR);var _je=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},bje=function(s,e){return function(t,i){e(t,i,s)}},MW;const uP=new Be("selectionAnchorSet",!1);var A_;let Mp=(A_=class{static get(e){return e.getContribution(MW.ID)}constructor(e,t){this.editor=e,this.selectionAnchorSetContextKey=uP.bindTo(t),this.modelChangeListener=e.onDidChangeModel(()=>this.selectionAnchorSetContextKey.reset())}setSelectionAnchor(){if(this.editor.hasModel()){const e=this.editor.getPosition();this.editor.changeDecorations(t=>{this.decorationId&&t.removeDecoration(this.decorationId),this.decorationId=t.addDecoration(Ye.fromPositions(e,e),{description:"selection-anchor",stickiness:1,hoverMessage:new Mo().appendText(v("selectionAnchor","Selection Anchor")),className:"selection-anchor"})}),this.selectionAnchorSetContextKey.set(!!this.decorationId),vr(v("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 t=this.editor.getPosition();this.editor.setSelection(Ye.fromPositions(e.getStartPosition(),t)),this.cancelSelectionAnchor()}}}cancelSelectionAnchor(){if(this.decorationId){const e=this.decorationId;this.editor.changeDecorations(t=>{t.removeDecoration(e),this.decorationId=void 0}),this.selectionAnchorSetContextKey.set(!1)}}dispose(){this.cancelSelectionAnchor(),this.modelChangeListener.dispose()}},MW=A_,A_.ID="editor.contrib.selectionAnchorController",A_);Mp=MW=_je([bje(1,gt)],Mp);class vje extends ze{constructor(){super({id:"editor.action.setSelectionAnchor",label:v("setSelectionAnchor","Set Selection Anchor"),alias:"Set Selection Anchor",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:bs(2089,2080),weight:100}})}async run(e,t){Mp.get(t)?.setSelectionAnchor()}}class Cje extends ze{constructor(){super({id:"editor.action.goToSelectionAnchor",label:v("goToSelectionAnchor","Go to Selection Anchor"),alias:"Go to Selection Anchor",precondition:uP})}async run(e,t){Mp.get(t)?.goToSelectionAnchor()}}class wje extends ze{constructor(){super({id:"editor.action.selectFromAnchorToCursor",label:v("selectFromAnchorToCursor","Select from Anchor to Cursor"),alias:"Select from Anchor to Cursor",precondition:uP,kbOpts:{kbExpr:W.editorTextFocus,primary:bs(2089,2089),weight:100}})}async run(e,t){Mp.get(t)?.selectFromAnchorToCursor()}}class yje extends ze{constructor(){super({id:"editor.action.cancelSelectionAnchor",label:v("cancelSelectionAnchor","Cancel Selection Anchor"),alias:"Cancel Selection Anchor",precondition:uP,kbOpts:{kbExpr:W.editorTextFocus,primary:9,weight:100}})}async run(e,t){Mp.get(t)?.cancelSelectionAnchor()}}ai(Mp.ID,Mp,4);ye(vje);ye(Cje);ye(wje);ye(yje);const Sje=V("editorOverviewRuler.bracketMatchForeground","#A0A0A0",v("overviewRulerBracketMatchForeground","Overview ruler marker color for matching brackets."));class xje extends ze{constructor(){super({id:"editor.action.jumpToBracket",label:v("smartSelect.jumpBracket","Go to Bracket"),alias:"Go to Bracket",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:3165,weight:100}})}run(e,t){Hb.get(t)?.jumpToBracket()}}class Lje extends ze{constructor(){super({id:"editor.action.selectToBracket",label:v("smartSelect.selectToBracket","Select to Bracket"),alias:"Select to Bracket",precondition:void 0,metadata:{description:_t("smartSelect.selectToBracketDescription","Select the text inside and including the brackets or curly braces"),args:[{name:"args",schema:{type:"object",properties:{selectBrackets:{type:"boolean",default:!0}}}}]}})}run(e,t,i){let n=!0;i&&i.selectBrackets===!1&&(n=!1),Hb.get(t)?.selectToBracket(n)}}class kje extends ze{constructor(){super({id:"editor.action.removeBrackets",label:v("smartSelect.removeBrackets","Remove Brackets"),alias:"Remove Brackets",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:2561,weight:100}})}run(e,t){Hb.get(t)?.removeBrackets(this.id)}}class Dje{constructor(e,t,i){this.position=e,this.brackets=t,this.options=i}}const vg=class vg extends se{static get(e){return e.getContribution(vg.ID)}constructor(e){super(),this._editor=e,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=this._editor.createDecorationsCollection(),this._updateBracketsSoon=this._register(new Ai(()=>this._updateBrackets(),50)),this._matchBrackets=this._editor.getOption(72),this._updateBracketsSoon.schedule(),this._register(e.onDidChangeCursorPosition(t=>{this._matchBrackets!=="never"&&this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelContent(t=>{this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModel(t=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeModelLanguageConfiguration(t=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(e.onDidChangeConfiguration(t=>{t.hasChanged(72)&&(this._matchBrackets=this._editor.getOption(72),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(),t=this._editor.getSelections().map(i=>{const n=i.getStartPosition(),o=e.bracketPairs.matchBracket(n);let r=null;if(o)o[0].containsPosition(n)&&!o[1].containsPosition(n)?r=o[1].getStartPosition():o[1].containsPosition(n)&&(r=o[0].getStartPosition());else{const a=e.bracketPairs.findEnclosingBrackets(n);if(a)r=a[1].getStartPosition();else{const l=e.bracketPairs.findNextBracket(n);l&&l.range&&(r=l.range.getStartPosition())}}return r?new Ye(r.lineNumber,r.column,r.lineNumber,r.column):new Ye(n.lineNumber,n.column,n.lineNumber,n.column)});this._editor.setSelections(t),this._editor.revealRange(t[0])}selectToBracket(e){if(!this._editor.hasModel())return;const t=this._editor.getModel(),i=[];this._editor.getSelections().forEach(n=>{const o=n.getStartPosition();let r=t.bracketPairs.matchBracket(o);if(!r&&(r=t.bracketPairs.findEnclosingBrackets(o),!r)){const c=t.bracketPairs.findNextBracket(o);c&&c.range&&(r=t.bracketPairs.matchBracket(c.range.getStartPosition()))}let a=null,l=null;if(r){r.sort(M.compareRangesUsingStarts);const[c,d]=r;if(a=e?c.getStartPosition():c.getEndPosition(),l=e?d.getEndPosition():d.getStartPosition(),d.containsPosition(o)){const u=a;a=l,l=u}}a&&l&&i.push(new Ye(a.lineNumber,a.column,l.lineNumber,l.column))}),i.length>0&&(this._editor.setSelections(i),this._editor.revealRange(i[0]))}removeBrackets(e){if(!this._editor.hasModel())return;const t=this._editor.getModel();this._editor.getSelections().forEach(i=>{const n=i.getPosition();let o=t.bracketPairs.matchBracket(n);o||(o=t.bracketPairs.findEnclosingBrackets(n)),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 t=0;for(const i of this._lastBracketsData){const n=i.brackets;n&&(e[t++]={range:n[0],options:i.options},e[t++]={range:n[1],options:i.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 t=this._editor.getModel(),i=t.getVersionId();let n=[];this._lastVersionId===i&&(n=this._lastBracketsData);const o=[];let r=0;for(let u=0,f=e.length;u<f;u++){const p=e[u];p.isEmpty()&&(o[r++]=p.getStartPosition())}o.length>1&&o.sort(ee.compare);const a=[];let l=0,c=0;const d=n.length;for(let u=0,f=o.length;u<f;u++){const p=o[u];for(;c<d&&n[c].position.isBefore(p);)c++;if(c<d&&n[c].position.equals(p))a[l++]=n[c];else{let m=t.bracketPairs.matchBracket(p,20),b=vg._DECORATION_OPTIONS_WITH_OVERVIEW_RULER;!m&&this._matchBrackets==="always"&&(m=t.bracketPairs.findEnclosingBrackets(p,20),b=vg._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER),a[l++]=new Dje(p,m,b)}}this._lastBracketsData=a,this._lastVersionId=i}};vg.ID="editor.contrib.bracketMatchingController",vg._DECORATION_OPTIONS_WITH_OVERVIEW_RULER=Et.register({description:"bracket-match-overview",stickiness:1,className:"bracket-match",overviewRuler:{color:zn(Sje),position:Ja.Center}}),vg._DECORATION_OPTIONS_WITHOUT_OVERVIEW_RULER=Et.register({description:"bracket-match-no-overview",stickiness:1,className:"bracket-match"});let Hb=vg;ai(Hb.ID,Hb,1);ye(Lje);ye(xje);ye(kje);qs.appendMenuItem(Ge.MenubarGoMenu,{group:"5_infile_nav",command:{id:"editor.action.jumpToBracket",title:v({key:"miGoToBracket",comment:["&& denotes a mnemonic"]},"Go to &&Bracket")},order:2});class Eje{constructor(e,t){this._selection=e,this._isMovingLeft=t}getEditOperations(e,t){if(this._selection.startLineNumber!==this._selection.endLineNumber||this._selection.isEmpty())return;const i=this._selection.startLineNumber,n=this._selection.startColumn,o=this._selection.endColumn;if(!(this._isMovingLeft&&n===1)&&!(!this._isMovingLeft&&o===e.getLineMaxColumn(i)))if(this._isMovingLeft){const r=new M(i,n-1,i,n),a=e.getValueInRange(r);t.addEditOperation(r,null),t.addEditOperation(new M(i,o,i,o),a)}else{const r=new M(i,o,i,o+1),a=e.getValueInRange(r);t.addEditOperation(r,null),t.addEditOperation(new M(i,n,i,n),a)}}computeCursorState(e,t){return this._isMovingLeft?new Ye(this._selection.startLineNumber,this._selection.startColumn-1,this._selection.endLineNumber,this._selection.endColumn-1):new Ye(this._selection.startLineNumber,this._selection.startColumn+1,this._selection.endLineNumber,this._selection.endColumn+1)}}class Zhe extends ze{constructor(e,t){super(t),this.left=e}run(e,t){if(!t.hasModel())return;const i=[],n=t.getSelections();for(const o of n)i.push(new Eje(o,this.left));t.pushUndoStop(),t.executeCommands(this.id,i),t.pushUndoStop()}}class Nje extends Zhe{constructor(){super(!0,{id:"editor.action.moveCarretLeftAction",label:v("caret.moveLeft","Move Selected Text Left"),alias:"Move Selected Text Left",precondition:W.writable})}}class Ije extends Zhe{constructor(){super(!1,{id:"editor.action.moveCarretRightAction",label:v("caret.moveRight","Move Selected Text Right"),alias:"Move Selected Text Right",precondition:W.writable})}}ye(Nje);ye(Ije);class Tje extends ze{constructor(){super({id:"editor.action.transposeLetters",label:v("transposeLetters.label","Transpose Letters"),alias:"Transpose Letters",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:306},weight:100}})}run(e,t){if(!t.hasModel())return;const i=t.getModel(),n=[],o=t.getSelections();for(const r of o){if(!r.isEmpty())continue;const a=r.startLineNumber,l=r.startColumn,c=i.getLineMaxColumn(a);if(a===1&&(l===1||l===2&&c===2))continue;const d=l===c?r.getPosition():Li.rightPosition(i,r.getPosition().lineNumber,r.getPosition().column),u=Li.leftPosition(i,d),f=Li.leftPosition(i,u),p=i.getValueInRange(M.fromPositions(f,u)),m=i.getValueInRange(M.fromPositions(u,d)),b=M.fromPositions(f,d);n.push(new yo(b,m+p))}n.length>0&&(t.pushUndoStop(),t.executeCommands(this.id,n),t.pushUndoStop())}}ye(Tje);const hP=(function(){if(typeof crypto=="object"&&typeof crypto.randomUUID=="function")return crypto.randomUUID.bind(crypto);let s;typeof crypto=="object"&&typeof crypto.getRandomValues=="function"?s=crypto.getRandomValues.bind(crypto):s=function(i){for(let n=0;n<i.length;n++)i[n]=Math.floor(Math.random()*256);return i};const e=new Uint8Array(16),t=[];for(let i=0;i<256;i++)t.push(i.toString(16).padStart(2,"0"));return function(){s(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128;let n=0,o="";return o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+="-",o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o+=t[e[n++]],o}})();function U$(s){return{asString:async()=>s,asFile:()=>{},value:typeof s=="string"?s:void 0}}function Rje(s,e,t){const i={id:hP(),name:s,uri:e,data:t};return{asString:async()=>"",asFile:()=>i,value:void 0}}class Xhe{constructor(){this._entries=new Map}get size(){let e=0;for(const t of this._entries)e++;return e}has(e){return this._entries.has(this.toKey(e))}matches(e){const t=[...this._entries.keys()];return ii.some(this,([i,n])=>n.asFile())&&t.push("files"),Jhe(ZR(e),t)}get(e){return this._entries.get(this.toKey(e))?.[0]}append(e,t){const i=this._entries.get(e);i?i.push(t):this._entries.set(this.toKey(e),[t])}replace(e,t){this._entries.set(this.toKey(e),[t])}delete(e){this._entries.delete(this.toKey(e))}*[Symbol.iterator](){for(const[e,t]of this._entries)for(const i of t)yield[e,i]}toKey(e){return ZR(e)}}function ZR(s){return s.toLowerCase()}function Qhe(s,e){return Jhe(ZR(s),e.map(ZR))}function Jhe(s,e){if(s==="*/*")return e.length>0;if(e.includes(s))return!0;const t=s.match(/^([a-z]+)\/([a-z]+|\*)$/i);if(!t)return!1;const[i,n,o]=t;return o==="*"?e.some(r=>r.startsWith(n+"/")):!1}const fP=Object.freeze({create:s=>df(s.map(e=>e.toString())).join(`\r
718
718
  `),split:s=>s.split(`\r
719
719
  `),parse:s=>fP.split(s).filter(e=>!e.startsWith("#"))}),iu=class iu{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+iu.sep)}intersects(e){return this.contains(e)||e.contains(this)}append(...e){return new iu((this.value?[this.value,...e]:e).join(iu.sep))}};iu.sep=".",iu.None=new iu("@@none@@"),iu.Empty=new iu("");let yn=iu;const qie={EDITORS:"CodeEditors",FILES:"CodeFiles"};class Mje{}const Aje={DragAndDropContribution:"workbench.contributions.dragAndDrop"};Tn.add(Aje.DragAndDropContribution,new Mje);const Lx=class Lx{constructor(){}static getInstance(){return Lx.INSTANCE}hasData(e){return e&&e===this.proto}getData(e){if(this.hasData(e))return this.data}};Lx.INSTANCE=new Lx;let AW=Lx;function efe(s){const e=new Xhe;for(const t of s.items){const i=t.type;if(t.kind==="string"){const n=new Promise(o=>t.getAsString(o));e.append(i,U$(n))}else if(t.kind==="file"){const n=t.getAsFile();n&&e.append(i,Oje(n))}}return e}function Oje(s){const e=s.path?ot.parse(s.path):void 0;return Rje(s.name,e,async()=>new Uint8Array(await s.arrayBuffer()))}const Pje=Object.freeze([qie.EDITORS,qie.FILES,hL.RESOURCES,hL.INTERNAL_URI_LIST]);function tfe(s,e=!1){const t=efe(s),i=t.get(hL.INTERNAL_URI_LIST);if(i)t.replace(Zn.uriList,i);else if(e||!t.has(Zn.uriList)){const n=[];for(const o of s.items){const r=o.getAsFile();if(r){const a=r.path;try{a?n.push(ot.file(a).toString()):n.push(ot.parse(r.name,!0).toString())}catch{}}}n.length&&t.replace(Zn.uriList,U$(fP.create(n)))}for(const n of Pje)t.delete(n);return t}var j$=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},VL=function(s,e){return function(t,i){e(t,i,s)}};class $${async provideDocumentPasteEdits(e,t,i,n,o){const r=await this.getEdit(i,o);if(r)return{edits:[{insertText:r.insertText,title:r.title,kind:r.kind,handledMimeType:r.handledMimeType,yieldTo:r.yieldTo}],dispose(){}}}async provideDocumentDropEdits(e,t,i,n){const o=await this.getEdit(i,n);if(o)return{edits:[{insertText:o.insertText,title:o.title,kind:o.kind,handledMimeType:o.handledMimeType,yieldTo:o.yieldTo}],dispose(){}}}}const kx=class kx extends $${constructor(){super(...arguments),this.kind=kx.kind,this.dropMimeTypes=[Zn.text],this.pasteMimeTypes=[Zn.text]}async getEdit(e,t){const i=e.get(Zn.text);if(!i||e.has(Zn.uriList))return;const n=await i.asString();return{handledMimeType:Zn.text,title:v("text.label","Insert Plain Text"),insertText:n,kind:this.kind}}};kx.id="text",kx.kind=new yn("text.plain");let Vb=kx;class ife extends $${constructor(){super(...arguments),this.kind=new yn("uri.absolute"),this.dropMimeTypes=[Zn.uriList],this.pasteMimeTypes=[Zn.uriList]}async getEdit(e,t){const i=await nfe(e);if(!i.length||t.isCancellationRequested)return;let n=0;const o=i.map(({uri:a,originalText:l})=>a.scheme===kt.file?a.fsPath:(n++,l)).join(" ");let r;return n>0?r=i.length>1?v("defaultDropProvider.uriList.uris","Insert Uris"):v("defaultDropProvider.uriList.uri","Insert Uri"):r=i.length>1?v("defaultDropProvider.uriList.paths","Insert Paths"):v("defaultDropProvider.uriList.path","Insert Path"),{handledMimeType:Zn.uriList,insertText:o,title:r,kind:this.kind}}}let XR=class extends $${constructor(e){super(),this._workspaceContextService=e,this.kind=new yn("uri.relative"),this.dropMimeTypes=[Zn.uriList],this.pasteMimeTypes=[Zn.uriList]}async getEdit(e,t){const i=await nfe(e);if(!i.length||t.isCancellationRequested)return;const n=Dc(i.map(({uri:o})=>{const r=this._workspaceContextService.getWorkspaceFolder(o);return r?BOe(r.uri,o):void 0}));if(n.length)return{handledMimeType:Zn.uriList,insertText:n.join(" "),title:i.length>1?v("defaultDropProvider.uriList.relativePaths","Insert Relative Paths"):v("defaultDropProvider.uriList.relativePath","Insert Relative Path"),kind:this.kind}}};XR=j$([VL(0,Ab)],XR);class Fje{constructor(){this.kind=new yn("html"),this.pasteMimeTypes=["text/html"],this._yieldTo=[{mimeType:Zn.text}]}async provideDocumentPasteEdits(e,t,i,n,o){if(n.triggerKind!==Hx.PasteAs&&!n.only?.contains(this.kind))return;const a=await i.get("text/html")?.asString();if(!(!a||o.isCancellationRequested))return{dispose(){},edits:[{insertText:a,yieldTo:this._yieldTo,title:v("pasteHtmlLabel","Insert HTML"),kind:this.kind}]}}}async function nfe(s){const e=s.get(Zn.uriList);if(!e)return[];const t=await e.asString(),i=[];for(const n of fP.parse(t))try{i.push({uri:ot.parse(n),originalText:n})}catch{}return i}let OW=class extends se{constructor(e,t){super(),this._register(e.documentDropEditProvider.register("*",new Vb)),this._register(e.documentDropEditProvider.register("*",new ife)),this._register(e.documentDropEditProvider.register("*",new XR(t)))}};OW=j$([VL(0,qe),VL(1,Ab)],OW);let PW=class extends se{constructor(e,t){super(),this._register(e.documentPasteEditProvider.register("*",new Vb)),this._register(e.documentPasteEditProvider.register("*",new ife)),this._register(e.documentPasteEditProvider.register("*",new XR(t))),this._register(e.documentPasteEditProvider.register("*",new Fje))}};PW=j$([VL(0,qe),VL(1,Ab)],PW);const hc=class hc{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 t=0,i=this.value.charCodeAt(e),n;if(n=hc._table[i],typeof n=="number")return this.pos+=1,{type:n,pos:e,len:1};if(hc.isDigitCharacter(i)){n=8;do t+=1,i=this.value.charCodeAt(e+t);while(hc.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}if(hc.isVariableCharacter(i)){n=9;do i=this.value.charCodeAt(e+ ++t);while(hc.isVariableCharacter(i)||hc.isDigitCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}n=10;do t+=1,i=this.value.charCodeAt(e+t);while(!isNaN(i)&&typeof hc._table[i]>"u"&&!hc.isDigitCharacter(i)&&!hc.isVariableCharacter(i));return this.pos+=t,{type:n,pos:e,len:t}}};hc._table={36:0,58:1,44:2,123:3,125:4,92:5,47:6,124:7,43:11,45:12,63:13};let FW=hc;class wy{constructor(){this._children=[]}appendChild(e){return e instanceof lr&&this._children[this._children.length-1]instanceof lr?this._children[this._children.length-1].value+=e.value:(e.parent=this,this._children.push(e)),this}replace(e,t){const{parent:i}=e,n=i.children.indexOf(e),o=i.children.slice(0);o.splice(n,1,...t),i._children=o,(function r(a,l){for(const c of a)c.parent=l,r(c.children,c)})(t,i)}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 oD)return e;e=e.parent}}toString(){return this.children.reduce((e,t)=>e+t.toString(),"")}len(){return 0}}class lr extends wy{constructor(e){super(),this.value=e}toString(){return this.value}len(){return this.value.length}clone(){return new lr(this.value)}}class sfe extends wy{}class El extends sfe{static compareByIndex(e,t){return e.index===t.index?0:e.isFinalTabstop?1:t.isFinalTabstop||e.index<t.index?-1:e.index>t.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 yy?this._children[0]:void 0}clone(){const e=new El(this.index);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}class yy extends wy{constructor(){super(...arguments),this.options=[]}appendChild(e){return e instanceof lr&&(e.parent=this,this.options.push(e)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){const e=new yy;return this.options.forEach(e.appendChild,e),e}}class q$ extends wy{constructor(){super(...arguments),this.regexp=new RegExp("")}resolve(e){const t=this;let i=!1,n=e.replace(this.regexp,function(){return i=!0,t._replace(Array.prototype.slice.call(arguments,0,-2))});return!i&&this._children.some(o=>o instanceof td&&!!o.elseValue)&&(n=this._replace([])),n}_replace(e){let t="";for(const i of this._children)if(i instanceof td){let n=e[i.index]||"";n=i.resolve(n),t+=n}else t+=i.toString();return t}toString(){return""}clone(){const e=new q$;return e.regexp=new RegExp(this.regexp.source,(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),e._children=this.children.map(t=>t.clone()),e}}class td extends wy{constructor(e,t,i,n){super(),this.index=e,this.shorthandName=t,this.ifValue=i,this.elseValue=n}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 t=e.match(/[a-z0-9]+/gi);return t?t.map(i=>i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}_toCamelCase(e){const t=e.match(/[a-z0-9]+/gi);return t?t.map((i,n)=>n===0?i.charAt(0).toLowerCase()+i.substr(1):i.charAt(0).toUpperCase()+i.substr(1)).join(""):e}clone(){return new td(this.index,this.shorthandName,this.ifValue,this.elseValue)}}class zL extends sfe{constructor(e){super(),this.name=e}resolve(e){let t=e.resolve(this);return this.transform&&(t=this.transform.resolve(t||"")),t!==void 0?(this._children=[new lr(t)],!0):!1}clone(){const e=new zL(this.name);return this.transform&&(e.transform=this.transform.clone()),e._children=this.children.map(t=>t.clone()),e}}function Kie(s,e){const t=[...s];for(;t.length>0;){const i=t.shift();if(!e(i))break;t.unshift(...i.children)}}class oD extends wy{get placeholderInfo(){if(!this._placeholders){const e=[];let t;this.walk(function(i){return i instanceof El&&(e.push(i),t=!t||t.index<i.index?i:t),!0}),this._placeholders={all:e,last:t}}return this._placeholders}get placeholders(){const{all:e}=this.placeholderInfo;return e}offset(e){let t=0,i=!1;return this.walk(n=>n===e?(i=!0,!1):(t+=n.len(),!0)),i?t:-1}fullLen(e){let t=0;return Kie([e],i=>(t+=i.len(),!0)),t}enclosingPlaceholders(e){const t=[];let{parent:i}=e;for(;i;)i instanceof El&&t.push(i),i=i.parent;return t}resolveVariables(e){return this.walk(t=>(t instanceof zL&&t.resolve(e)&&(this._placeholders=void 0),!0)),this}appendChild(e){return this._placeholders=void 0,super.appendChild(e)}replace(e,t){return this._placeholders=void 0,super.replace(e,t)}clone(){const e=new oD;return this._children=this.children.map(t=>t.clone()),e}walk(e){Kie(this.children,e)}}class zb{constructor(){this._scanner=new FW,this._token={type:14,pos:0,len:0}}static escape(e){return e.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(e){return/\${?CLIPBOARD/.test(e)}parse(e,t,i){const n=new oD;return this.parseFragment(e,n),this.ensureFinalTabstop(n,i??!1,t??!1),n}parseFragment(e,t){const i=t.children.length;for(this._scanner.text(e),this._token=this._scanner.next();this._parse(t););const n=new Map,o=[];t.walk(l=>(l instanceof El&&(l.isFinalTabstop?n.set(0,void 0):!n.has(l.index)&&l.children.length>0?n.set(l.index,l.children):o.push(l)),!0));const r=(l,c)=>{const d=n.get(l.index);if(!d)return;const u=new El(l.index);u.transform=l.transform;for(const f of d){const p=f.clone();u.appendChild(p),p instanceof El&&n.has(p.index)&&!c.has(p.index)&&(c.add(p.index),r(p,c),c.delete(p.index))}t.replace(l,[u])},a=new Set;for(const l of o)r(l,a);return t.children.slice(i)}ensureFinalTabstop(e,t,i){(t||i&&e.placeholders.length>0)&&(e.placeholders.find(o=>o.index===0)||e.appendChild(new El(0)))}_accept(e,t){if(e===void 0||this._token.type===e){const i=t?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),i}return!1}_backTo(e){return this._scanner.pos=e.pos+e.len,this._token=e,!1}_until(e){const t=this._token;for(;this._token.type!==e;){if(this._token.type===14)return!1;if(this._token.type===5){const n=this._scanner.next();if(n.type!==0&&n.type!==4&&n.type!==5)return!1}this._token=this._scanner.next()}const i=this._scanner.value.substring(t.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),i}_parse(e){return this._parseEscaped(e)||this._parseTabstopOrVariableName(e)||this._parseComplexPlaceholder(e)||this._parseComplexVariable(e)||this._parseAnything(e)}_parseEscaped(e){let t;return(t=this._accept(5,!0))?(t=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||t,e.appendChild(new lr(t)),!0):!1}_parseTabstopOrVariableName(e){let t;const i=this._token;return this._accept(0)&&(t=this._accept(9,!0)||this._accept(8,!0))?(e.appendChild(/^\d+$/.test(t)?new El(Number(t)):new zL(t)),!0):this._backTo(i)}_parseComplexPlaceholder(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(8,!0))))return this._backTo(i);const o=new El(Number(t));if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(o),!0;if(!this._parse(o))return e.appendChild(new lr("${"+t+":")),o.children.forEach(e.appendChild,e),!0}else if(o.index>0&&this._accept(7)){const r=new yy;for(;;){if(this._parseChoiceElement(r)){if(this._accept(2))continue;if(this._accept(7)&&(o.appendChild(r),this._accept(4)))return e.appendChild(o),!0}return this._backTo(i),!1}}else return this._accept(6)?this._parseTransform(o)?(e.appendChild(o),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(o),!0):this._backTo(i)}_parseChoiceElement(e){const t=this._token,i=[];for(;!(this._token.type===2||this._token.type===7);){let n;if((n=this._accept(5,!0))?n=this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||n:n=this._accept(void 0,!0),!n)return this._backTo(t),!1;i.push(n)}return i.length===0?(this._backTo(t),!1):(e.appendChild(new lr(i.join(""))),!0)}_parseComplexVariable(e){let t;const i=this._token;if(!(this._accept(0)&&this._accept(3)&&(t=this._accept(9,!0))))return this._backTo(i);const o=new zL(t);if(this._accept(1))for(;;){if(this._accept(4))return e.appendChild(o),!0;if(!this._parse(o))return e.appendChild(new lr("${"+t+":")),o.children.forEach(e.appendChild,e),!0}else return this._accept(6)?this._parseTransform(o)?(e.appendChild(o),!0):(this._backTo(i),!1):this._accept(4)?(e.appendChild(o),!0):this._backTo(i)}_parseTransform(e){const t=new q$;let i="",n="";for(;!this._accept(6);){let o;if(o=this._accept(5,!0)){o=this._accept(6,!0)||o,i+=o;continue}if(this._token.type!==14){i+=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,t.appendChild(new lr(o));continue}if(!(this._parseFormatString(t)||this._parseAnything(t)))return!1}for(;!this._accept(4);){if(this._token.type!==14){n+=this._accept(void 0,!0);continue}return!1}try{t.regexp=new RegExp(i,n)}catch{return!1}return e.transform=t,!0}_parseFormatString(e){const t=this._token;if(!this._accept(0))return!1;let i=!1;this._accept(3)&&(i=!0);const n=this._accept(8,!0);if(n)if(i){if(this._accept(4))return e.appendChild(new td(Number(n))),!0;if(!this._accept(1))return this._backTo(t),!1}else return e.appendChild(new td(Number(n))),!0;else return this._backTo(t),!1;if(this._accept(6)){const o=this._accept(9,!0);return!o||!this._accept(4)?(this._backTo(t),!1):(e.appendChild(new td(Number(n),o)),!0)}else if(this._accept(11)){const o=this._until(4);if(o)return e.appendChild(new td(Number(n),void 0,o,void 0)),!0}else if(this._accept(12)){const o=this._until(4);if(o)return e.appendChild(new td(Number(n),void 0,void 0,o)),!0}else if(this._accept(13)){const o=this._until(1);if(o){const r=this._until(4);if(r)return e.appendChild(new td(Number(n),void 0,o,r)),!0}}else{const o=this._until(4);if(o)return e.appendChild(new td(Number(n),void 0,void 0,o)),!0}return this._backTo(t),!1}_parseAnything(e){return this._token.type!==14?(e.appendChild(new lr(this._scanner.tokenText(this._token))),this._accept(void 0),!0):!1}}function ofe(s,e,t){return(typeof t.insertText=="string"?t.insertText==="":t.insertText.snippet==="")?{edits:t.additionalEdit?.edits??[]}:{edits:[...e.map(i=>new Gg(s,{range:i,text:typeof t.insertText=="string"?zb.escape(t.insertText)+"$0":t.insertText.snippet,insertAsSnippet:!0})),...t.additionalEdit?.edits??[]]}}function rfe(s){function e(r,a){return"mimeType"in r?r.mimeType===a.handledMimeType:!!a.kind&&r.kind.contains(a.kind)}const t=new Map;for(const r of s)for(const a of r.yieldTo??[])for(const l of s)if(l!==r&&e(a,l)){let c=t.get(r);c||(c=[],t.set(r,c)),c.push(l)}if(!t.size)return Array.from(s);const i=new Set,n=[];function o(r){if(!r.length)return[];const a=r[0];if(n.includes(a))return console.warn("Yield to cycle detected",a),r;if(i.has(a))return o(r.slice(1));let l=[];const c=t.get(a);return c&&(n.push(a),l=o(c),n.pop()),i.add(a),[...l,a,...o(r.slice(1))]}return o(Array.from(s))}var Bje=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Wje=function(s,e){return function(t,i){e(t,i,s)}};const Hje=Et.register({description:"inline-progress-widget",stickiness:1,showIfCollapsed:!0,after:{content:Mae,inlineClassName:"inline-editor-progress-decoration",inlineClassNameAffectsLetterSpacing:!0}}),j2=class j2 extends se{constructor(e,t,i,n,o){super(),this.typeId=e,this.editor=t,this.range=i,this.delegate=o,this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this.create(n),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this)}create(e){this.domNode=Ne(".inline-progress-widget"),this.domNode.role="button",this.domNode.title=e;const t=Ne("span.icon");this.domNode.append(t),t.classList.add(...ft.asClassNameArray(De.loading),"codicon-modifier-spin");const i=()=>{const n=this.editor.getOption(67);this.domNode.style.height=`${n}px`,this.domNode.style.width=`${Math.ceil(.8*n)}px`};i(),this._register(this.editor.onDidChangeConfiguration(n=>{(n.hasChanged(52)||n.hasChanged(67))&&i()})),this._register(de(this.domNode,Ee.CLICK,n=>{this.delegate.cancel()}))}getId(){return j2.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)}};j2.baseId="editor.widget.inlineProgressWidget";let BW=j2,QR=class extends se{constructor(e,t,i){super(),this.id=e,this._editor=t,this._instantiationService=i,this._showDelay=500,this._showPromise=this._register(new Fs),this._currentWidget=this._register(new Fs),this._operationIdPool=0,this._currentDecorations=t.createDecorationsCollection()}dispose(){super.dispose(),this._currentDecorations.clear()}async showWhile(e,t,i,n,o){const r=this._operationIdPool++;this._currentOperation=r,this.clear(),this._showPromise.value=yp(()=>{const a=M.fromPositions(e);this._currentDecorations.set([{range:a,options:Hje}]).length>0&&(this._currentWidget.value=this._instantiationService.createInstance(BW,this.id,this._editor,a,t,n))},o??this._showDelay);try{return await i}finally{this._currentOperation===r&&(this.clear(),this._currentOperation=void 0)}}clear(){this._showPromise.clear(),this._currentDecorations.clear(),this._currentWidget.clear()}};QR=Bje([Wje(2,it)],QR);var Vje=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Gie=function(s,e){return function(t,i){e(t,i,s)}},EI,Jg;let ga=(Jg=class{static get(e){return e.getContribution(EI.ID)}constructor(e,t,i){this._openerService=i,this._messageWidget=new Fs,this._messageListeners=new _e,this._mouseOverMessage=!1,this._editor=e,this._visible=EI.MESSAGE_VISIBLE.bindTo(t)}dispose(){this._message?.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(e,t){vr(vd(e)?e.value:e),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._message=vd(e)?MO(e,{actionHandler:{callback:n=>{this.closeMessage(),uj(this._openerService,n,vd(e)?e.isTrusted:void 0)},disposables:this._messageListeners}}):void 0,this._messageWidget.value=new Yie(this._editor,t,typeof e=="string"?e:this._message.element),this._messageListeners.add(Me.debounce(this._editor.onDidBlurEditorText,(n,o)=>o,0)(()=>{this._mouseOverMessage||this._messageWidget.value&&Ms(So(),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(de(this._messageWidget.value.getDomNode(),Ee.MOUSE_ENTER,()=>this._mouseOverMessage=!0,!0)),this._messageListeners.add(de(this._messageWidget.value.getDomNode(),Ee.MOUSE_LEAVE,()=>this._mouseOverMessage=!1,!0));let i;this._messageListeners.add(this._editor.onMouseMove(n=>{n.target.position&&(i?i.containsPosition(n.target.position)||this.closeMessage():i=new M(t.lineNumber-3,1,n.target.position.lineNumber+3,1))}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(Yie.fadeOut(this._messageWidget.value))}},EI=Jg,Jg.ID="editor.contrib.messageController",Jg.MESSAGE_VISIBLE=new Be("messageVisible",!1,v("messageVisible","Whether the editor is currently showing an inline message")),Jg);ga=EI=Vje([Gie(1,gt),Gie(2,qr)],ga);const zje=Ds.bindToContribution(ga.get);Fe(new zje({id:"leaveEditorMessage",precondition:ga.MESSAGE_VISIBLE,handler:s=>s.closeMessage(),kbOpts:{weight:130,primary:9}}));let Yie=class{static fadeOut(e){const t=()=>{e.dispose(),clearTimeout(i),e.getDomNode().removeEventListener("animationend",t)},i=setTimeout(t,110);return e.getDomNode().addEventListener("animationend",t),e.getDomNode().classList.add("fadeOut"),{dispose:t}}constructor(e,{lineNumber:t,column:i},n){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=e,this._editor.revealLinesInCenterIfOutsideViewport(t,t,0),this._position={lineNumber:t,column:i},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 r=document.createElement("div");typeof n=="string"?(r.classList.add("message"),r.textContent=n):(n.classList.add("message"),r.appendChild(n)),this._domNode.appendChild(r);const a=document.createElement("div");a.classList.add("anchor","below"),this._domNode.appendChild(a),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)}};ai(ga.ID,ga,4);function U3(s,e){return e&&(s.stack||s.stacktrace)?v("stackTrace.format","{0}: {1}",Xie(s),Zie(s.stack)||Zie(s.stacktrace)):Xie(s)}function Zie(s){return Array.isArray(s)?s.join(`
720
720
  `):s}function Xie(s){return s.code==="ERR_UNC_HOST_NOT_ALLOWED"?`${s.message}. Please update the 'security.allowedUNCHosts' setting if you want to allow this host.`:typeof s.code=="string"&&typeof s.errno=="number"&&typeof s.syscall=="string"?v("nodeExceptionMessage","A system error occurred ({0})",s.message):s.message||v("error.defaultMessage","An unknown error occurred. Please consult the log for more details.")}function JR(s=null,e=!1){if(!s)return v("error.defaultMessage","An unknown error occurred. Please consult the log for more details.");if(Array.isArray(s)){const t=Dc(s),i=JR(t[0],e);return t.length>1?v("error.moreErrors","{0} ({1} errors in total)",i,t.length):i}if(Pr(s))return s;if(s.detail){const t=s.detail;if(t.error)return U3(t.error,e);if(t.exception)return U3(t.exception,e)}return s.stack?U3(s,e):s.message?s.message:v("error.defaultMessage","An unknown error occurred. Please consult the log for more details.")}var afe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},zw=function(s,e){return function(t,i){e(t,i,s)}},WW,O_;let HW=(O_=class extends se{constructor(e,t,i,n,o,r,a,l,c,d){super(),this.typeId=e,this.editor=t,this.showCommand=n,this.range=o,this.edits=r,this.onSelectNewEdit=a,this._contextMenuService=l,this._keybindingService=d,this.allowEditorOverflow=!0,this.suppressMouseDown=!0,this.create(),this.visibleContext=i.bindTo(c),this.visibleContext.set(!0),this._register(tt(()=>this.visibleContext.reset())),this.editor.addContentWidget(this),this.editor.layoutContentWidget(this),this._register(tt((()=>this.editor.removeContentWidget(this)))),this._register(this.editor.onDidChangeCursorPosition(u=>{o.containsPosition(u.position)||this.dispose()})),this._register(Me.runAndSubscribe(d.onDidUpdateKeybindings,()=>{this._updateButtonTitle()}))}_updateButtonTitle(){const e=this._keybindingService.lookupKeybinding(this.showCommand.id)?.getLabel();this.button.element.title=this.showCommand.label+(e?` (${e})`:"")}create(){this.domNode=Ne(".post-edit-widget"),this.button=this._register(new oR(this.domNode,{supportIcons:!0})),this.button.label="$(insert)",this._register(de(this.domNode,Ee.CLICK,()=>this.showSelector()))}getId(){return WW.baseId+"."+this.typeId}getDomNode(){return this.domNode}getPosition(){return{position:this.range.getEndPosition(),preference:[2]}}showSelector(){this._contextMenuService.showContextMenu({getAnchor:()=>{const e=Xn(this.button.element);return{x:e.left+e.width,y:e.top+e.height}},getActions:()=>this.edits.allEdits.map((e,t)=>g_({id:"",label:e.title,checked:t===this.edits.activeEditIndex,run:()=>{if(t!==this.edits.activeEditIndex)return this.onSelectNewEdit(t)}}))})}},WW=O_,O_.baseId="editor.widget.postEditWidget",O_);HW=WW=afe([zw(7,Ca),zw(8,gt),zw(9,yi)],HW);let eM=class extends se{constructor(e,t,i,n,o,r,a){super(),this._id=e,this._editor=t,this._visibleContext=i,this._showCommand=n,this._instantiationService=o,this._bulkEditService=r,this._notificationService=a,this._currentWidget=this._register(new Fs),this._register(Me.any(t.onDidChangeModel,t.onDidChangeModelContent)(()=>this.clear()))}async applyEditAndShowIfNeeded(e,t,i,n,o){const r=this._editor.getModel();if(!r||!e.length)return;const a=t.allEdits.at(t.activeEditIndex);if(!a)return;const l=async w=>{const y=this._editor.getModel();y&&(await y.undo(),this.applyEditAndShowIfNeeded(e,{activeEditIndex:w,allEdits:t.allEdits},i,n,o))},c=(w,y)=>{ql(w)||(this._notificationService.error(y),i&&this.show(e[0],t,l))};let d;try{d=await n(a,o)}catch(w){return c(w,v("resolveError",`Error resolving edit '{0}':
@@ -779,4 +779,4 @@ ${e.toString()}`}}class CR{constructor(e=new my,t=!1,i,n=d7e){this._services=e,t
779
779
  `));const b=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:"advanced"});return BO.fromFn(async()=>{const w=await b.computeDiff(this._originalModel.get(),this._modifiedModel.get(),{computeMoves:!1,ignoreTrimWhitespace:!1,maxComputationTimeMs:1e3},Mt.None);if(!w.identical)return new PQe(Nt.fromRangeInclusive(d),f(u),w.changes)})}),this._fetchStore=this._register(new _e),this._inlineEditsFetchResult=uL(this,void 0),this._inlineEdits=ja({owner:this,equalsFn:UT},l=>this._inlineEditsFetchResult.read(l)?.completions.map(c=>new VQe(c))??[]),this._fetchInlineEditsPromise=Xce({owner:this,createEmptyChangeSummary:()=>({inlineCompletionTriggerKind:gd.Automatic}),handleChange:(l,c)=>(l.didChange(this._forceUpdateExplicitlySignal)&&(c.inlineCompletionTriggerKind=gd.Explicit),!0)},async(l,c)=>{this._fetchStore.clear(),this._forceUpdateExplicitlySignal.read(l),this._textModelVersionId.read(l);function d(b,w){return w(b)}const u=this._pinnedRange.range.read(l)??d(this._selection.read(l),b=>b.isEmpty()?void 0:b);if(!u){this._inlineEditsFetchResult.set(void 0,void 0),this.userPrompt.set(void 0,void 0);return}const f={triggerKind:c.inlineCompletionTriggerKind,selectedSuggestionInfo:void 0,userPrompt:this.userPrompt.read(l)},p=JB(this._fetchStore);await ff(200,p);const m=await Dge(this.languageFeaturesService.inlineCompletionsProvider,u,this.textModel,f,p);p.isCancellationRequested||this._inlineEditsFetchResult.set(m,void 0)}),this._filteredInlineEditItems=ja({owner:this,equalsFn:zT()},l=>this._inlineEdits.read(l)),this.selectedInlineCompletionIndex=Je(this,l=>{const c=this._selectedInlineCompletionId.read(l),d=this._filteredInlineEditItems.read(l),u=this._selectedInlineCompletionId===void 0?-1:d.findIndex(f=>f.semanticId===c);return u===-1?(this._selectedInlineCompletionId.set(void 0,void 0),0):u}),this.selectedInlineEdit=Je(this,l=>{const c=this._filteredInlineEditItems.read(l),d=this.selectedInlineCompletionIndex.read(l);return c[d]}),this._register(hy(this._fetchInlineEditsPromise))}async triggerExplicitly(e){Ob(e,t=>{this._isActive.set(!0,t),this._forceUpdateExplicitlySignal.trigger(t)}),await this._fetchInlineEditsPromise.get()}stop(e){Ob(e,t=>{this.userPrompt.set(void 0,t),this._isActive.set(!1,t),this._inlineEditsFetchResult.set(void 0,t),this._pinnedRange.setRange(void 0,t)})}async _deltaSelectedInlineCompletionIndex(e){await this.triggerExplicitly();const t=this._filteredInlineEditItems.get()||[];if(t.length>0){const i=(this.selectedInlineCompletionIndex.get()+e+t.length)%t.length;this._selectedInlineCompletionId.set(t[i].semanticId,void 0)}else this._selectedInlineCompletionId.set(void 0,void 0)}async next(){await this._deltaSelectedInlineCompletionIndex(1)}async previous(){await this._deltaSelectedInlineCompletionIndex(-1)}async accept(e){if(e.getModel()!==this.textModel)throw new _i;const t=this.selectedInlineEdit.get();t&&(e.pushUndoStop(),e.executeEdits("inlineSuggestion.accept",[t.inlineCompletion.toSingleTextEdit().toSingleEditOperation()]),this.stop())}},bS=db,db._modelId=0,db);DV=bS=HQe([fB(4,qe),fB(5,tD),fB(6,ln)],DV);class VQe{constructor(e){this.inlineCompletion=e,this.semanticId=this.inlineCompletion.hash()}}class zQe extends se{constructor(e,t){super(),this._textModel=e,this._versionId=t,this._decorations=Bt(this,[]),this.range=Je(this,i=>{this._versionId.read(i);const n=this._decorations.read(i)[0];return n?this._textModel.getDecorationRange(n)??null:null}),this._register(tt(()=>{this._textModel.deltaDecorations(this._decorations.get(),[])}))}setRange(e,t){this._decorations.set(this._textModel.deltaDecorations(this._decorations.get(),e?[{range:e,options:{description:"trackedRange"}}]:[]),t)}}var UQe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Y0=function(s,e){return function(t,i){e(t,i,s)}},EV,ub;let wf=(ub=class extends se{static get(e){return e.getContribution(EV.ID)}constructor(e,t,i,n,o,r){super(),this.editor=e,this._instantiationService=t,this._contextKeyService=i,this._debounceService=n,this._languageFeaturesService=o,this._configurationService=r,this._enabled=lVe("editor.inlineEdits.enabled",!1,this._configurationService),this._editorObs=la(this.editor),this._selection=Je(this,a=>this._editorObs.cursorSelection.read(a)??new Ye(1,1,1,1)),this._debounceValue=this._debounceService.for(this._languageFeaturesService.inlineCompletionsProvider,"InlineEditsDebounce",{min:50,max:50}),this.model=Ko(this,a=>{if(!this._enabled.read(a)||this._editorObs.isReadonly.read(a))return;const l=this._editorObs.model.read(a);return l?this._instantiationService.createInstance(na(DV,a),l,this._editorObs.versionId,this._selection,this._debounceValue):void 0}),this._hadInlineEdit=qk(this,(a,l)=>l||this.model.read(a)?.inlineEdit.read(a)!==void 0),this._widget=Ko(this,a=>{if(this._hadInlineEdit.read(a))return this._instantiationService.createInstance(na(kV,a),this.editor,this.model.map((l,c)=>l?.inlineEdit.read(c)),jQe(l=>this.model.read(l)?.userPrompt??Bt("empty","")))}),this._register(Yc(j1,this._contextKeyService,a=>!!this.model.read(a)?.inlineEdit.read(a))),this._register(Yc(RQe,this._contextKeyService,a=>!!this.model.read(a)?.isPinned.read(a))),this.model.recomputeInitiallyAndOnChange(this._store),this._widget.recomputeInitiallyAndOnChange(this._store)}},EV=ub,ub.ID="editor.contrib.inlineEditsController",ub);wf=EV=UQe([Y0(1,it),Y0(2,gt),Y0(3,cl),Y0(4,qe),Y0(5,Wt)],wf);function jQe(s){return Uk(void 0,e=>s(e).read(e),(e,t)=>{s(void 0).set(e,t)})}function fD(s){return{label:s.value,alias:s.original}}const pA=class pA extends ze{constructor(){super({id:pA.ID,...fD(_t("action.inlineEdits.showNext","Show Next Inline Edit")),precondition:be.and(W.writable,j1),kbOpts:{weight:100,primary:606}})}async run(e,t){wf.get(t)?.model.get()?.next()}};pA.ID=TQe;let NV=pA;const mA=class mA extends ze{constructor(){super({id:mA.ID,...fD(_t("action.inlineEdits.showPrevious","Show Previous Inline Edit")),precondition:be.and(W.writable,j1),kbOpts:{weight:100,primary:604}})}async run(e,t){wf.get(t)?.model.get()?.previous()}};mA.ID=IQe;let IV=mA;class $Qe extends ze{constructor(){super({id:"editor.action.inlineEdits.trigger",...fD(_t("action.inlineEdits.trigger","Trigger Inline Edit")),precondition:W.writable})}async run(e,t){const i=wf.get(t);await Zce(async n=>{await i?.model.get()?.triggerExplicitly(n)})}}class qQe extends ze{constructor(){super({id:NQe,...fD(_t("action.inlineEdits.accept","Accept Inline Edit")),precondition:j1,menuOpts:{menuId:Ge.InlineEditsActions,title:v("inlineEditsActions","Accept Inline Edit"),group:"primary",order:1,icon:De.check},kbOpts:{primary:2058,weight:2e4,kbExpr:j1}})}async run(e,t){t instanceof Ac&&(t=t.getParentEditor());const i=wf.get(t);i&&(i.model.get()?.accept(i.editor),i.editor.focus())}}const _A=class _A extends ze{constructor(){super({id:_A.ID,...fD(_t("action.inlineEdits.hide","Hide Inline Edit")),precondition:j1,kbOpts:{weight:100,primary:9}})}async run(e,t){const i=wf.get(t);Nn(n=>{i?.model.get()?.stop(n)})}};_A.ID="editor.action.inlineEdits.hide";let TV=_A;ai(wf.ID,wf,3);ye($Qe);ye(NV);ye(IV);ye(qQe);ye(TV);const Zb={Visible:new Be("parameterHintsVisible",!1),MultipleSignatures:new Be("parameterHintsMultipleSignatures",!1)};async function qge(s,e,t,i,n){const o=s.ordered(e);for(const r of o)try{const a=await r.provideSignatureHelp(e,t,n,i);if(a)return a}catch(a){Qn(a)}}ni.registerCommand("_executeSignatureHelpProvider",async(s,...e)=>{const[t,i,n]=e;fi(ot.isUri(t)),fi(ee.isIPosition(i)),fi(typeof n=="string"||!n);const o=s.get(qe),r=await s.get(jr).createModelReference(t);try{const a=await qge(o.signatureHelpProvider,r.object.textEditorModel,ee.lift(i),{triggerKind:yu.Invoke,isRetrigger:!1,triggerCharacter:n},Mt.None);return a?(setTimeout(()=>a.dispose(),0),a.value):void 0}finally{r.dispose()}});var pg;(function(s){s.Default={type:0};class e{constructor(n,o){this.request=n,this.previouslyActiveHints=o,this.type=2}}s.Pending=e;class t{constructor(n){this.hints=n,this.type=1}}s.Active=t})(pg||(pg={}));const bA=class bA extends se{constructor(e,t,i=bA.DEFAULT_DELAY){super(),this._onChangedHints=this._register(new te),this.onChangedHints=this._onChangedHints.event,this.triggerOnType=!1,this._state=pg.Default,this._pendingTriggers=[],this._lastSignatureHelpResult=this._register(new Fs),this.triggerChars=new CT,this.retriggerChars=new CT,this.triggerId=0,this.editor=e,this.providers=t,this.throttledDelayer=new Wl(i),this._register(this.editor.onDidBlurEditorWidget(()=>this.cancel())),this._register(this.editor.onDidChangeConfiguration(()=>this.onEditorConfigurationChange())),this._register(this.editor.onDidChangeModel(n=>this.onModelChanged())),this._register(this.editor.onDidChangeModelLanguage(n=>this.onModelChanged())),this._register(this.editor.onDidChangeCursorSelection(n=>this.onCursorChange(n))),this._register(this.editor.onDidChangeModelContent(n=>this.onModelContentChange())),this._register(this.providers.onDidChange(this.onModelChanged,this)),this._register(this.editor.onDidType(n=>this.onDidType(n))),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=pg.Default,this.throttledDelayer.cancel(),e||this._onChangedHints.fire(void 0)}trigger(e,t){const i=this.editor.getModel();if(!i||!this.providers.has(i))return;const n=++this.triggerId;this._pendingTriggers.push(e),this.throttledDelayer.trigger(()=>this.doTrigger(n),t).catch(xt)}next(){if(this.state.type!==1)return;const e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,i=t%e===e-1,n=this.editor.getOption(86).cycle;if((e<2||i)&&!n){this.cancel();return}this.updateActiveSignature(i&&n?0:t+1)}previous(){if(this.state.type!==1)return;const e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,i=t===0,n=this.editor.getOption(86).cycle;if((e<2||i)&&!n){this.cancel();return}this.updateActiveSignature(i&&n?e-1:t-1)}updateActiveSignature(e){this.state.type===1&&(this.state=new pg.Active({...this.state.hints,activeSignature:e}),this._onChangedHints.fire(this.state.hints))}async doTrigger(e){const t=this.state.type===1||this.state.type===2,i=this.getLastActiveHints();if(this.cancel(!0),this._pendingTriggers.length===0)return!1;const n=this._pendingTriggers.reduce(KQe);this._pendingTriggers=[];const o={triggerKind:n.triggerKind,triggerCharacter:n.triggerCharacter,isRetrigger:t,activeSignatureHelp:i};if(!this.editor.hasModel())return!1;const r=this.editor.getModel(),a=this.editor.getPosition();this.state=new pg.Pending(As(l=>qge(this.providers,r,a,o,l)),i);try{const l=await this.state.request;return e!==this.triggerId?(l?.dispose(),!1):!l||!l.value.signatures||l.value.signatures.length===0?(l?.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),!1):(this.state=new pg.Active(l.value),this._lastSignatureHelpResult.value=l,this._onChangedHints.fire(this.state.hints),!0)}catch(l){return e===this.triggerId&&(this.state=pg.Default),xt(l),!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 t of this.providers.ordered(e)){for(const i of t.signatureHelpTriggerCharacters||[])if(i.length){const n=i.charCodeAt(0);this.triggerChars.add(n),this.retriggerChars.add(n)}for(const i of t.signatureHelpRetriggerCharacters||[])i.length&&this.retriggerChars.add(i.charCodeAt(0))}}onDidType(e){if(!this.triggerOnType)return;const t=e.length-1,i=e.charCodeAt(t);(this.triggerChars.has(i)||this.isTriggered&&this.retriggerChars.has(i))&&this.trigger({triggerKind:yu.TriggerCharacter,triggerCharacter:e.charAt(t)})}onCursorChange(e){e.source==="mouse"?this.cancel():this.isTriggered&&this.trigger({triggerKind:yu.ContentChange})}onModelContentChange(){this.isTriggered&&this.trigger({triggerKind:yu.ContentChange})}onEditorConfigurationChange(){this.triggerOnType=this.editor.getOption(86).enabled,this.triggerOnType||this.cancel()}dispose(){this.cancel(!0),super.dispose()}};bA.DEFAULT_DELAY=120;let RV=bA;function KQe(s,e){switch(e.triggerKind){case yu.Invoke:return e;case yu.ContentChange:return s;case yu.TriggerCharacter:default:return e}}var GQe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},$N=function(s,e){return function(t,i){e(t,i,s)}},MV;const Ta=Ne,YQe=cn("parameter-hints-next",De.chevronDown,v("parameterHintsNextIcon","Icon for show next parameter hint.")),ZQe=cn("parameter-hints-previous",De.chevronUp,v("parameterHintsPreviousIcon","Icon for show previous parameter hint."));var hb;let AV=(hb=class extends se{constructor(e,t,i,n,o,r){super(),this.editor=e,this.model=t,this.telemetryService=r,this.renderDisposeables=this._register(new _e),this.visible=!1,this.announcedLabel=null,this.allowEditorOverflow=!0,this.markdownRenderer=this._register(new mf({editor:e},o,n)),this.keyVisible=Zb.Visible.bindTo(i),this.keyMultipleSignatures=Zb.MultipleSignatures.bindTo(i)}createParameterHintDOMNodes(){const e=Ta(".editor-widget.parameter-hints-widget"),t=we(e,Ta(".phwrapper"));t.tabIndex=-1;const i=we(t,Ta(".controls")),n=we(i,Ta(".button"+ft.asCSSSelector(ZQe))),o=we(i,Ta(".overloads")),r=we(i,Ta(".button"+ft.asCSSSelector(YQe)));this._register(de(n,"click",f=>{Jt.stop(f),this.previous()})),this._register(de(r,"click",f=>{Jt.stop(f),this.next()}));const a=Ta(".body"),l=new Bk(a,{alwaysConsumeMouseWheel:!0});this._register(l),t.appendChild(l.getDomNode());const c=we(a,Ta(".signature")),d=we(a,Ta(".docs"));e.style.userSelect="text",this.domNodes={element:e,signature:c,overloads:o,docs:d,scrollbar:l},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection(f=>{this.visible&&this.editor.layoutContentWidget(this)}));const u=()=>{if(!this.domNodes)return;const f=this.editor.getOption(50),p=this.domNodes.element;p.style.fontSize=`${f.fontSize}px`,p.style.lineHeight=`${f.lineHeight/f.fontSize}`,p.style.setProperty("--vscode-parameterHintsWidget-editorFontFamily",f.fontFamily),p.style.setProperty("--vscode-parameterHintsWidget-editorFontFamilyDefault",gr.fontFamily)};u(),this._register(Me.chain(this.editor.onDidChangeConfiguration.bind(this.editor),f=>f.filter(p=>p.hasChanged(50)))(u)),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(()=>{this.domNodes?.element.classList.add("visible")},100),this.editor.layoutContentWidget(this))}hide(){this.renderDisposeables.clear(),this.visible&&(this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,this.domNodes?.element.classList.remove("visible"),this.editor.layoutContentWidget(this))}getPosition(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null}render(e){if(this.renderDisposeables.clear(),!this.domNodes)return;const t=e.signatures.length>1;this.domNodes.element.classList.toggle("multiple",t),this.keyMultipleSignatures.set(t),this.domNodes.signature.innerText="",this.domNodes.docs.innerText="";const i=e.signatures[e.activeSignature];if(!i)return;const n=we(this.domNodes.signature,Ta(".code")),o=i.parameters.length>0,r=i.activeParameter??e.activeParameter;if(o)this.renderParameters(n,i,r);else{const c=we(n,Ta("span"));c.textContent=i.label}const a=i.parameters[r];if(a?.documentation){const c=Ta("span.documentation");if(typeof a.documentation=="string")c.textContent=a.documentation;else{const d=this.renderMarkdownDocs(a.documentation);c.appendChild(d.element)}we(this.domNodes.docs,Ta("p",{},c))}if(i.documentation!==void 0)if(typeof i.documentation=="string")we(this.domNodes.docs,Ta("p",{},i.documentation));else{const c=this.renderMarkdownDocs(i.documentation);we(this.domNodes.docs,c.element)}const l=this.hasDocs(i,a);if(this.domNodes.signature.classList.toggle("has-docs",l),this.domNodes.docs.classList.toggle("empty",!l),this.domNodes.overloads.textContent=String(e.activeSignature+1).padStart(e.signatures.length.toString().length,"0")+"/"+e.signatures.length,a){let c="";const d=i.parameters[r];Array.isArray(d.label)?c=i.label.substring(d.label[0],d.label[1]):c=d.label,d.documentation&&(c+=typeof d.documentation=="string"?`, ${d.documentation}`:`, ${d.documentation.value}`),i.documentation&&(c+=typeof i.documentation=="string"?`, ${i.documentation}`:`, ${i.documentation.value}`),this.announcedLabel!==c&&(vr(v("hint","{0}, hint",c)),this.announcedLabel=c)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}renderMarkdownDocs(e){const t=new Ys,i=this.renderDisposeables.add(this.markdownRenderer.render(e,{asyncRenderCallback:()=>{this.domNodes?.scrollbar.scanDomNode()}}));i.element.classList.add("markdown-docs");const n=t.elapsed();return n>300&&this.telemetryService.publicLog2("parameterHints.parseMarkdown",{renderDuration:n}),i}hasDocs(e,t){return!!(t&&typeof t.documentation=="string"&&Ig(t.documentation).length>0||t&&typeof t.documentation=="object"&&Ig(t.documentation).value.length>0||e.documentation&&typeof e.documentation=="string"&&Ig(e.documentation).length>0||e.documentation&&typeof e.documentation=="object"&&Ig(e.documentation.value).length>0)}renderParameters(e,t,i){const[n,o]=this.getParameterLabelOffsets(t,i),r=document.createElement("span");r.textContent=t.label.substring(0,n);const a=document.createElement("span");a.textContent=t.label.substring(n,o),a.className="parameter active";const l=document.createElement("span");l.textContent=t.label.substring(o),we(e,r,a,l)}getParameterLabelOffsets(e,t){const i=e.parameters[t];if(i){if(Array.isArray(i.label))return i.label;if(i.label.length){const n=new RegExp(`(\\W|^)${il(i.label)}(?=\\W|$)`,"g");n.test(e.label);const o=n.lastIndex-i.label.length;return o>=0?[o,n.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 MV.ID}updateMaxHeight(){if(!this.domNodes)return;const t=`${Math.max(this.editor.getLayoutInfo().height/4,250)}px`;this.domNodes.element.style.maxHeight=t;const i=this.domNodes.element.getElementsByClassName("phwrapper");i.length&&(i[0].style.maxHeight=t)}},MV=hb,hb.ID="editor.widget.parameterHintsWidget",hb);AV=MV=GQe([$N(2,gt),$N(3,qr),$N(4,xn),$N(5,Fo)],AV);V("editorHoverWidget.highlightForeground",FC,v("editorHoverWidgetHighlightForeground","Foreground color of the active item in the parameter hint."));var XQe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},gse=function(s,e){return function(t,i){e(t,i,s)}},OV,fb;let $1=(fb=class extends se{static get(e){return e.getContribution(OV.ID)}constructor(e,t,i){super(),this.editor=e,this.model=this._register(new RV(e,i.signatureHelpProvider)),this._register(this.model.onChangedHints(n=>{n?(this.widget.value.show(),this.widget.value.render(n)):this.widget.rawValue?.hide()})),this.widget=new wd(()=>this._register(t.createInstance(AV,this.editor,this.model)))}cancel(){this.model.cancel()}previous(){this.widget.rawValue?.previous()}next(){this.widget.rawValue?.next()}trigger(e){this.model.trigger(e,0)}},OV=fb,fb.ID="editor.controller.parameterHints",fb);$1=OV=XQe([gse(1,it),gse(2,qe)],$1);class QQe extends ze{constructor(){super({id:"editor.action.triggerParameterHints",label:v("parameterHints.trigger.label","Trigger Parameter Hints"),alias:"Trigger Parameter Hints",precondition:W.hasSignatureHelpProvider,kbOpts:{kbExpr:W.editorTextFocus,primary:3082,weight:100}})}run(e,t){$1.get(t)?.trigger({triggerKind:yu.Invoke})}}ai($1.ID,$1,2);ye(QQe);const Sq=175,xq=Ds.bindToContribution($1.get);Fe(new xq({id:"closeParameterHints",precondition:Zb.Visible,handler:s=>s.cancel(),kbOpts:{weight:Sq,kbExpr:W.focus,primary:9,secondary:[1033]}}));Fe(new xq({id:"showPrevParameterHint",precondition:be.and(Zb.Visible,Zb.MultipleSignatures),handler:s=>s.previous(),kbOpts:{weight:Sq,kbExpr:W.focus,primary:16,secondary:[528],mac:{primary:16,secondary:[528,302]}}}));Fe(new xq({id:"showNextParameterHint",precondition:be.and(Zb.Visible,Zb.MultipleSignatures),handler:s=>s.next(),kbOpts:{weight:Sq,kbExpr:W.focus,primary:18,secondary:[530],mac:{primary:18,secondary:[530,300]}}}));var JQe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},eJe=function(s,e){return function(t,i){e(t,i,s)}};class tJe{constructor(e){this.instantiationService=e}init(...e){}}function iJe(s,e){return class extends e{constructor(){super(...arguments),this._autorun=void 0}init(...i){this._autorun=Fr((n,o)=>{const r=na(s(),n);o.add(this.instantiationService.createInstance(r,...i))})}dispose(){this._autorun?.dispose()}}}function nJe(s){return oP()?iJe(s,PV):s()}let PV=class extends tJe{constructor(e,t){super(t),this.init(e)}};PV=JQe([eJe(1,it)],PV);ai(sk.ID,nJe(()=>sk),0);V("editor.placeholder.foreground",YFe,v("placeholderForeground","Foreground color of the placeholder text in the editor."));var sJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},qN=function(s,e){return function(t,i){e(t,i,s)}};const Ly=new Be("renameInputVisible",!1,v("renameInputVisible","Whether the rename input widget is visible"));new Be("renameInputFocused",!1,v("renameInputFocused","Whether the rename input widget is focused"));let FV=class{constructor(e,t,i,n,o,r){this._editor=e,this._acceptKeybindings=t,this._themeService=i,this._keybindingService=n,this._logService=r,this.allowEditorOverflow=!0,this._disposables=new _e,this._visibleContextKey=Ly.bindTo(o),this._isEditingRenameCandidate=!1,this._nRenameSuggestionsInvocations=0,this._hadAutomaticRenameSuggestionsInvocation=!1,this._candidates=new Set,this._beforeFirstInputFieldEditSW=new Ys,this._inputWithButton=new oJe,this._disposables.add(this._inputWithButton),this._editor.addContentWidget(this),this._disposables.add(this._editor.onDidChangeConfiguration(a=>{a.hasChanged(50)&&this._updateFont()})),this._disposables.add(i.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._domNode.appendChild(this._inputWithButton.domNode),this._renameCandidateListView=this._disposables.add(new Lq(this._domNode,{fontInfo:this._editor.getOption(50),onFocusChange:e=>{this._inputWithButton.input.value=e,this._isEditingRenameCandidate=!1},onSelectionChange:()=>{this._isEditingRenameCandidate=!1,this.acceptInput(!1)}})),this._disposables.add(this._inputWithButton.onDidInputChange(()=>{this._renameCandidateListView?.focusedCandidate!==void 0&&(this._isEditingRenameCandidate=!0),this._timeBeforeFirstInputFieldEdit??=this._beforeFirstInputFieldEditSW.elapsed(),this._renameCandidateProvidersCts?.token.isCancellationRequested===!1&&this._renameCandidateProvidersCts.cancel(),this._renameCandidateListView?.clearFocus()})),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){if(!this._domNode)return;const t=e.getColor(ry),i=e.getColor(dce);this._domNode.style.backgroundColor=String(e.getColor(Ya)??""),this._domNode.style.boxShadow=t?` 0 0 8px 2px ${t}`:"",this._domNode.style.border=i?`1px solid ${i}`:"",this._domNode.style.color=String(e.getColor(fce)??"");const n=e.getColor(gce);this._inputWithButton.domNode.style.backgroundColor=String(e.getColor(Y7)??""),this._inputWithButton.input.style.backgroundColor=String(e.getColor(Y7)??""),this._inputWithButton.domNode.style.borderWidth=n?"1px":"0px",this._inputWithButton.domNode.style.borderStyle=n?"solid":"none",this._inputWithButton.domNode.style.borderColor=n?.toString()??"none"}_updateFont(){if(this._domNode===void 0)return;fi(this._label!==void 0,"RenameWidget#_updateFont: _label must not be undefined given _domNode is defined"),this._editor.applyFontInfo(this._inputWithButton.input);const e=this._editor.getOption(50);this._label.style.fontSize=`${this._computeLabelFontSize(e.fontSize)}px`}_computeLabelFontSize(e){return e*.8}getPosition(){if(!this._visible||!this._editor.hasModel()||!this._editor.getDomNode())return null;const e=Sp(this.getDomNode().ownerDocument.body),t=Xn(this._editor.getDomNode()),i=this._getTopForPosition();this._nPxAvailableAbove=i+t.top,this._nPxAvailableBelow=e.height-this._nPxAvailableAbove;const n=this._editor.getOption(67),{totalHeight:o}=ok.getLayoutInfo({lineHeight:n}),r=this._nPxAvailableBelow>o*6?[2,1]:[1,2];return{position:this._position,preference:r}}beforeRender(){const[e,t]=this._acceptKeybindings;return this._label.innerText=v({key:"label",comment:['placeholders are keybindings, e.g "F2 to Rename, Shift+F2 to Preview"']},"{0} to Rename, {1} to Preview",this._keybindingService.lookupKeybinding(e)?.getLabel(),this._keybindingService.lookupKeybinding(t)?.getLabel()),this._domNode.style.minWidth="200px",null}afterRender(e){if(e===null){this.cancelInput(!0,"afterRender (because position is null)");return}if(!this._editor.hasModel()||!this._editor.getDomNode())return;fi(this._renameCandidateListView),fi(this._nPxAvailableAbove!==void 0),fi(this._nPxAvailableBelow!==void 0);const t=Vh(this._inputWithButton.domNode),i=Vh(this._label);let n;e===2?n=this._nPxAvailableBelow:n=this._nPxAvailableAbove,this._renameCandidateListView.layout({height:n-i-t,width:ta(this._inputWithButton.domNode)})}acceptInput(e){this._trace("invoking acceptInput"),this._currentAcceptInput?.(e)}cancelInput(e,t){this._currentCancelInput?.(e)}focusNextRenameSuggestion(){this._renameCandidateListView?.focusNext()||(this._inputWithButton.input.value=this._currentName)}focusPreviousRenameSuggestion(){this._renameCandidateListView?.focusPrevious()||(this._inputWithButton.input.value=this._currentName)}getInput(e,t,i,n,o){const{start:r,end:a}=this._getSelection(e,t);this._renameCts=o;const l=new _e;this._nRenameSuggestionsInvocations=0,this._hadAutomaticRenameSuggestionsInvocation=!1,n===void 0?this._inputWithButton.button.style.display="none":(this._inputWithButton.button.style.display="flex",this._requestRenameCandidatesOnce=n,this._requestRenameCandidates(t,!1),l.add(de(this._inputWithButton.button,"click",()=>this._requestRenameCandidates(t,!0))),l.add(de(this._inputWithButton.button,Ee.KEY_DOWN,d=>{const u=new Yi(d);(u.equals(3)||u.equals(10))&&(u.stopPropagation(),u.preventDefault(),this._requestRenameCandidates(t,!0))}))),this._isEditingRenameCandidate=!1,this._domNode.classList.toggle("preview",i),this._position=new ee(e.startLineNumber,e.startColumn),this._currentName=t,this._inputWithButton.input.value=t,this._inputWithButton.input.setAttribute("selectionStart",r.toString()),this._inputWithButton.input.setAttribute("selectionEnd",a.toString()),this._inputWithButton.input.size=Math.max((e.endColumn-e.startColumn)*1.1,20),this._beforeFirstInputFieldEditSW.reset(),l.add(tt(()=>{this._renameCts=void 0,o.dispose(!0)})),l.add(tt(()=>{this._renameCandidateProvidersCts!==void 0&&(this._renameCandidateProvidersCts.dispose(!0),this._renameCandidateProvidersCts=void 0)})),l.add(tt(()=>this._candidates.clear()));const c=new ey;return c.p.finally(()=>{l.dispose(),this._hide()}),this._currentCancelInput=d=>(this._trace("invoking _currentCancelInput"),this._currentAcceptInput=void 0,this._currentCancelInput=void 0,this._renameCandidateListView?.clearCandidates(),c.complete(d),!0),this._currentAcceptInput=d=>{this._trace("invoking _currentAcceptInput"),fi(this._renameCandidateListView!==void 0);const u=this._renameCandidateListView.nCandidates;let f,p;const m=this._renameCandidateListView.focusedCandidate;if(m!==void 0?(this._trace("using new name from renameSuggestion"),f=m,p={k:"renameSuggestion"}):(this._trace("using new name from inputField"),f=this._inputWithButton.input.value,p=this._isEditingRenameCandidate?{k:"userEditedRenameSuggestion"}:{k:"inputField"}),f===t||f.trim().length===0){this.cancelInput(!0,"_currentAcceptInput (because newName === value || newName.trim().length === 0)");return}this._currentAcceptInput=void 0,this._currentCancelInput=void 0,this._renameCandidateListView.clearCandidates(),c.complete({newName:f,wantsPreview:i&&d,stats:{source:p,nRenameSuggestions:u,timeBeforeFirstInputFieldEdit:this._timeBeforeFirstInputFieldEdit,nRenameSuggestionsInvocations:this._nRenameSuggestionsInvocations,hadAutomaticRenameSuggestionsInvocation:this._hadAutomaticRenameSuggestionsInvocation}})},l.add(o.token.onCancellationRequested(()=>this.cancelInput(!0,"cts.token.onCancellationRequested"))),l.add(this._editor.onDidBlurEditorWidget(()=>this.cancelInput(!this._domNode?.ownerDocument.hasFocus(),"editor.onDidBlurEditorWidget"))),this._show(),c.p}_requestRenameCandidates(e,t){if(this._requestRenameCandidatesOnce!==void 0&&(this._renameCandidateProvidersCts!==void 0&&this._renameCandidateProvidersCts.dispose(!0),fi(this._renameCts),this._inputWithButton.buttonState!=="stop")){this._renameCandidateProvidersCts=new In;const i=t?Vx.Invoke:Vx.Automatic,n=this._requestRenameCandidatesOnce(i,this._renameCandidateProvidersCts.token);if(n.length===0){this._inputWithButton.setSparkleButton();return}t||(this._hadAutomaticRenameSuggestionsInvocation=!0),this._nRenameSuggestionsInvocations+=1,this._inputWithButton.setStopButton(),this._updateRenameCandidates(n,e,this._renameCts.token)}}_getSelection(e,t){fi(this._editor.hasModel());const i=this._editor.getSelection();let n=0,o=t.length;return!M.isEmpty(i)&&!M.spansMultipleLines(i)&&M.containsRange(e,i)&&(n=Math.max(0,i.startColumn-e.startColumn),o=Math.min(e.endColumn,i.endColumn)-e.startColumn),{start:n,end:o}}_show(){this._trace("invoking _show"),this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber,0),this._visible=!0,this._visibleContextKey.set(!0),this._editor.layoutContentWidget(this),setTimeout(()=>{this._inputWithButton.input.focus(),this._inputWithButton.input.setSelectionRange(parseInt(this._inputWithButton.input.getAttribute("selectionStart")),parseInt(this._inputWithButton.input.getAttribute("selectionEnd")))},100)}async _updateRenameCandidates(e,t,i){const n=(...c)=>this._trace("_updateRenameCandidates",...c);n("start");const o=await Mk(Promise.allSettled(e),i);if(this._inputWithButton.setSparkleButton(),o===void 0){n("returning early - received updateRenameCandidates results - undefined");return}const r=o.flatMap(c=>c.status==="fulfilled"&&wu(c.value)?c.value:[]);n(`received updateRenameCandidates results - total (unfiltered) ${r.length} candidates.`);const a=df(r,c=>c.newSymbolName);n(`distinct candidates - ${a.length} candidates.`);const l=a.filter(({newSymbolName:c})=>c.trim().length>0&&c!==this._inputWithButton.input.value&&c!==t&&!this._candidates.has(c));if(n(`valid distinct candidates - ${r.length} candidates.`),l.forEach(c=>this._candidates.add(c.newSymbolName)),l.length<1){n("returning early - no valid distinct candidates");return}n("setting candidates"),this._renameCandidateListView.setCandidates(l),n("asking editor to re-layout"),this._editor.layoutContentWidget(this)}_hide(){this._trace("invoked _hide"),this._visible=!1,this._visibleContextKey.reset(),this._editor.layoutContentWidget(this)}_getTopForPosition(){const e=this._editor.getVisibleRanges();let t;return e.length>0?t=e[0].startLineNumber:(this._logService.warn("RenameWidget#_getTopForPosition: this should not happen - visibleRanges is empty"),t=Math.max(1,this._position.lineNumber-5)),this._editor.getTopForLineNumber(this._position.lineNumber)-this._editor.getTopForLineNumber(t)}_trace(...e){this._logService.trace("RenameWidget",...e)}};FV=sJe([qN(2,Es),qN(3,yi),qN(4,gt),qN(5,ko)],FV);class Lq{constructor(e,t){this._disposables=new _e,this._availableHeight=0,this._minimumWidth=0,this._lineHeight=t.fontInfo.lineHeight,this._typicalHalfwidthCharacterWidth=t.fontInfo.typicalHalfwidthCharacterWidth,this._listContainer=document.createElement("div"),this._listContainer.className="rename-box rename-candidate-list-container",e.appendChild(this._listContainer),this._listWidget=Lq._createListWidget(this._listContainer,this._candidateViewHeight,t.fontInfo),this._listWidget.onDidChangeFocus(i=>{i.elements.length===1&&t.onFocusChange(i.elements[0].newSymbolName)},this._disposables),this._listWidget.onDidChangeSelection(i=>{i.elements.length===1&&t.onSelectionChange()},this._disposables),this._disposables.add(this._listWidget.onDidBlur(i=>{this._listWidget.setFocus([])})),this._listWidget.style(ov({listInactiveFocusForeground:nL,listInactiveFocusBackground:sL}))}dispose(){this._listWidget.dispose(),this._disposables.dispose()}layout({height:e,width:t}){this._availableHeight=e,this._minimumWidth=t}setCandidates(e){this._listWidget.splice(0,0,e);const t=this._pickListHeight(this._listWidget.length),i=this._pickListWidth(e);this._listWidget.layout(t,i),this._listContainer.style.height=`${t}px`,this._listContainer.style.width=`${i}px`,Iu(v("renameSuggestionsReceivedAria","Received {0} rename suggestions",e.length))}clearCandidates(){this._listContainer.style.height="0px",this._listContainer.style.width="0px",this._listWidget.splice(0,this._listWidget.length,[])}get nCandidates(){return this._listWidget.length}get focusedCandidate(){if(this._listWidget.length===0)return;const e=this._listWidget.getSelectedElements()[0];if(e!==void 0)return e.newSymbolName;const t=this._listWidget.getFocusedElements()[0];if(t!==void 0)return t.newSymbolName}focusNext(){if(this._listWidget.length===0)return!1;const e=this._listWidget.getFocus();if(e.length===0)return this._listWidget.focusFirst(),this._listWidget.reveal(0),!0;if(e[0]===this._listWidget.length-1)return this._listWidget.setFocus([]),this._listWidget.reveal(0),!1;{this._listWidget.focusNext();const t=this._listWidget.getFocus()[0];return this._listWidget.reveal(t),!0}}focusPrevious(){if(this._listWidget.length===0)return!1;const e=this._listWidget.getFocus();if(e.length===0){this._listWidget.focusLast();const t=this._listWidget.getFocus()[0];return this._listWidget.reveal(t),!0}else{if(e[0]===0)return this._listWidget.setFocus([]),!1;{this._listWidget.focusPrevious();const t=this._listWidget.getFocus()[0];return this._listWidget.reveal(t),!0}}}clearFocus(){this._listWidget.setFocus([])}get _candidateViewHeight(){const{totalHeight:e}=ok.getLayoutInfo({lineHeight:this._lineHeight});return e}_pickListHeight(e){const t=this._candidateViewHeight*e;return Math.min(t,this._availableHeight,this._candidateViewHeight*7)}_pickListWidth(e){const t=Math.ceil(Math.max(...e.map(n=>n.newSymbolName.length))*this._typicalHalfwidthCharacterWidth);return Math.max(this._minimumWidth,25+t+10)}static _createListWidget(e,t,i){const n=new class{getTemplateId(r){return"candidate"}getHeight(r){return t}},o=new class{constructor(){this.templateId="candidate"}renderTemplate(r){return new ok(r,i)}renderElement(r,a,l){l.populate(r)}disposeTemplate(r){r.dispose()}};return new ul("NewSymbolNameCandidates",e,n,[o],{keyboardSupport:!1,mouseSupport:!0,multipleSelectionSupport:!1})}}class oJe{constructor(){this._onDidInputChange=new te,this.onDidInputChange=this._onDidInputChange.event,this._disposables=new _e}get domNode(){return this._domNode||(this._domNode=document.createElement("div"),this._domNode.className="rename-input-with-button",this._domNode.style.display="flex",this._domNode.style.flexDirection="row",this._domNode.style.alignItems="center",this._inputNode=document.createElement("input"),this._inputNode.className="rename-input",this._inputNode.type="text",this._inputNode.style.border="none",this._inputNode.setAttribute("aria-label",v("renameAriaLabel","Rename input. Type new name and press Enter to commit.")),this._domNode.appendChild(this._inputNode),this._buttonNode=document.createElement("div"),this._buttonNode.className="rename-suggestions-button",this._buttonNode.setAttribute("tabindex","0"),this._buttonGenHoverText=v("generateRenameSuggestionsButton","Generate new name suggestions"),this._buttonCancelHoverText=v("cancelRenameSuggestionsButton","Cancel"),this._buttonHover=Rd().setupManagedHover(yr("element"),this._buttonNode,this._buttonGenHoverText),this._disposables.add(this._buttonHover),this._domNode.appendChild(this._buttonNode),this._disposables.add(de(this.input,Ee.INPUT,()=>this._onDidInputChange.fire())),this._disposables.add(de(this.input,Ee.KEY_DOWN,e=>{const t=new Yi(e);(t.keyCode===15||t.keyCode===17)&&this._onDidInputChange.fire()})),this._disposables.add(de(this.input,Ee.CLICK,()=>this._onDidInputChange.fire())),this._disposables.add(de(this.input,Ee.FOCUS,()=>{this.domNode.style.outlineWidth="1px",this.domNode.style.outlineStyle="solid",this.domNode.style.outlineOffset="-1px",this.domNode.style.outlineColor="var(--vscode-focusBorder)"})),this._disposables.add(de(this.input,Ee.BLUR,()=>{this.domNode.style.outline="none"}))),this._domNode}get input(){return fi(this._inputNode),this._inputNode}get button(){return fi(this._buttonNode),this._buttonNode}get buttonState(){return this._buttonState}setSparkleButton(){this._buttonState="sparkle",this._sparkleIcon??=Rb(De.sparkle),ao(this.button),this.button.appendChild(this._sparkleIcon),this.button.setAttribute("aria-label","Generating new name suggestions"),this._buttonHover?.update(this._buttonGenHoverText),this.input.focus()}setStopButton(){this._buttonState="stop",this._stopIcon??=Rb(De.primitiveSquare),ao(this.button),this.button.appendChild(this._stopIcon),this.button.setAttribute("aria-label","Cancel generating new name suggestions"),this._buttonHover?.update(this._buttonCancelHoverText),this.input.focus()}dispose(){this._disposables.dispose()}}const Ex=class Ex{constructor(e,t){this._domNode=document.createElement("div"),this._domNode.className="rename-box rename-candidate",this._domNode.style.display="flex",this._domNode.style.columnGap="5px",this._domNode.style.alignItems="center",this._domNode.style.height=`${t.lineHeight}px`,this._domNode.style.padding=`${Ex._PADDING}px`;const i=document.createElement("div");i.style.display="flex",i.style.alignItems="center",i.style.width=i.style.height=`${t.lineHeight*.8}px`,this._domNode.appendChild(i),this._icon=Rb(De.sparkle),this._icon.style.display="none",i.appendChild(this._icon),this._label=document.createElement("div"),co(this._label,t),this._domNode.appendChild(this._label),e.appendChild(this._domNode)}populate(e){this._updateIcon(e),this._updateLabel(e)}_updateIcon(e){const t=!!e.tags?.includes(r9.AIGenerated);this._icon.style.display=t?"inherit":"none"}_updateLabel(e){this._label.innerText=e.newSymbolName}static getLayoutInfo({lineHeight:e}){return{totalHeight:e+Ex._PADDING*2}}dispose(){}};Ex._PADDING=2;let ok=Ex;var rJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},lg=function(s,e){return function(t,i){e(t,i,s)}},BV;class kq{constructor(e,t,i){this.model=e,this.position=t,this._providerRenameIdx=0,this._providers=i.ordered(e)}hasProvider(){return this._providers.length>0}async resolveRenameLocation(e){const t=[];for(this._providerRenameIdx=0;this._providerRenameIdx<this._providers.length;this._providerRenameIdx++){const n=this._providers[this._providerRenameIdx];if(!n.resolveRenameLocation)break;const o=await n.resolveRenameLocation(this.model,this.position,e);if(o){if(o.rejectReason){t.push(o.rejectReason);continue}return o}}this._providerRenameIdx=0;const i=this.model.getWordAtPosition(this.position);return i?{range:new M(this.position.lineNumber,i.startColumn,this.position.lineNumber,i.endColumn),text:i.word,rejectReason:t.length>0?t.join(`
780
780
  `):void 0}:{range:M.fromPositions(this.position),text:"",rejectReason:t.length>0?t.join(`
781
781
  `):void 0}}async provideRenameEdits(e,t){return this._provideRenameEdits(e,this._providerRenameIdx,[],t)}async _provideRenameEdits(e,t,i,n){const o=this._providers[t];if(!o)return{edits:[],rejectReason:i.join(`
782
- `)};const r=await o.provideRenameEdits(this.model,this.position,e,n);if(r){if(r.rejectReason)return this._provideRenameEdits(e,t+1,i.concat(r.rejectReason),n)}else return this._provideRenameEdits(e,t+1,i.concat(v("no result","No result.")),n);return r}}async function aJe(s,e,t,i){const n=new kq(e,t,s),o=await n.resolveRenameLocation(Mt.None);return o?.rejectReason?{edits:[],rejectReason:o.rejectReason}:n.provideRenameEdits(i,Mt.None)}var gb;let Pp=(gb=class{static get(e){return e.getContribution(BV.ID)}constructor(e,t,i,n,o,r,a,l,c){this.editor=e,this._instaService=t,this._notificationService=i,this._bulkEditService=n,this._progressService=o,this._logService=r,this._configService=a,this._languageFeaturesService=l,this._telemetryService=c,this._disposableStore=new _e,this._cts=new In,this._renameWidget=this._disposableStore.add(this._instaService.createInstance(FV,this.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))}dispose(){this._disposableStore.dispose(),this._cts.dispose(!0)}async run(){const e=this._logService.trace.bind(this._logService,"[rename]");if(this._cts.dispose(!0),this._cts=new In,!this.editor.hasModel()){e("editor has no model");return}const t=this.editor.getPosition(),i=new kq(this.editor.getModel(),t,this._languageFeaturesService.renameProvider);if(!i.hasProvider()){e("skeleton has no provider");return}const n=new Rp(this.editor,5,void 0,this._cts.token);let o;try{e("resolving rename location");const m=i.resolveRenameLocation(n.token);this._progressService.showWhile(m,250),o=await m,e("resolved rename location")}catch(m){m instanceof Ec?e("resolve rename location cancelled",JSON.stringify(m,null," ")):(e("resolve rename location failed",m instanceof Error?m:JSON.stringify(m,null," ")),(typeof m=="string"||vd(m))&&ga.get(this.editor)?.showMessage(m||v("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),t));return}finally{n.dispose()}if(!o){e("returning early - no loc");return}if(o.rejectReason){e(`returning early - rejected with reason: ${o.rejectReason}`,o.rejectReason),ga.get(this.editor)?.showMessage(o.rejectReason,t);return}if(n.token.isCancellationRequested){e("returning early - cts1 cancelled");return}const r=new Rp(this.editor,5,o.range,this._cts.token),a=this.editor.getModel(),l=this._languageFeaturesService.newSymbolNamesProvider.all(a),c=await Promise.all(l.map(async m=>[m,await m.supportsAutomaticNewSymbolNamesTriggerKind??!1])),d=(m,b)=>{let w=c.slice();return m===Vx.Automatic&&(w=w.filter(([y,S])=>S)),w.map(([y])=>y.provideNewSymbolNames(a,o.range,m,b))};e("creating rename input field and awaiting its result");const u=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),f=await this._renameWidget.getInput(o.range,o.text,u,l.length>0?d:void 0,r);if(e("received response from rename input field"),l.length>0&&this._reportTelemetry(l.length,a.getLanguageId(),f),typeof f=="boolean"){e(`returning early - rename input field response - ${f}`),f&&this.editor.focus(),r.dispose();return}this.editor.focus(),e("requesting rename edits");const p=Mk(i.provideRenameEdits(f.newName,r.token),r.token).then(async m=>{if(!m){e("returning early - no rename edits result");return}if(!this.editor.hasModel()){e("returning early - no model after rename edits are provided");return}if(m.rejectReason){e(`returning early - rejected with reason: ${m.rejectReason}`),this._notificationService.info(m.rejectReason);return}this.editor.setSelection(M.fromPositions(this.editor.getSelection().getPosition())),e("applying edits"),this._bulkEditService.apply(m,{editor:this.editor,showPreview:f.wantsPreview,label:v("label","Renaming '{0}' to '{1}'",o?.text,f.newName),code:"undoredo.rename",quotableLabel:v("quotableLabel","Renaming {0} to {1}",o?.text,f.newName),respectAutoSaveConfig:!0}).then(b=>{e("edits applied"),b.ariaSummary&&vr(v("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",o.text,f.newName,b.ariaSummary))}).catch(b=>{e(`error when applying edits ${JSON.stringify(b,null," ")}`),this._notificationService.error(v("rename.failedApply","Rename failed to apply edits")),this._logService.error(b)})},m=>{e("error when providing rename edits",JSON.stringify(m,null," ")),this._notificationService.error(v("rename.failed","Rename failed to compute edits")),this._logService.error(m)}).finally(()=>{r.dispose()});return e("returning rename operation"),this._progressService.showWhile(p,250),p}acceptRenameInput(e){this._renameWidget.acceptInput(e)}cancelRenameInput(){this._renameWidget.cancelInput(!0,"cancelRenameInput command")}focusNextRenameSuggestion(){this._renameWidget.focusNextRenameSuggestion()}focusPreviousRenameSuggestion(){this._renameWidget.focusPreviousRenameSuggestion()}_reportTelemetry(e,t,i){const n=typeof i=="boolean"?{kind:"cancelled",languageId:t,nRenameSuggestionProviders:e}:{kind:"accepted",languageId:t,nRenameSuggestionProviders:e,source:i.stats.source.k,nRenameSuggestions:i.stats.nRenameSuggestions,timeBeforeFirstInputFieldEdit:i.stats.timeBeforeFirstInputFieldEdit,wantsPreview:i.wantsPreview,nRenameSuggestionsInvocations:i.stats.nRenameSuggestionsInvocations,hadAutomaticRenameSuggestionsInvocation:i.stats.hadAutomaticRenameSuggestionsInvocation};this._telemetryService.publicLog2("renameInvokedEvent",n)}},BV=gb,gb.ID="editor.contrib.renameController",gb);Pp=BV=rJe([lg(1,it),lg(2,rs),lg(3,Vk),lg(4,Vp),lg(5,ko),lg(6,bO),lg(7,qe),lg(8,Fo)],Pp);class lJe extends ze{constructor(){super({id:"editor.action.rename",label:v("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:be.and(W.writable,W.hasRenameProvider),kbOpts:{kbExpr:W.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})}runCommand(e,t){const i=e.get(gi),[n,o]=Array.isArray(t)&&t||[void 0,void 0];return ot.isUri(n)&&ee.isIPosition(o)?i.openCodeEditor({resource:n},i.getActiveCodeEditor()).then(r=>{r&&(r.setPosition(o),r.invokeWithinContext(a=>(this.reportTelemetry(a,r),this.run(a,r))))},xt):super.runCommand(e,t)}run(e,t){const i=e.get(ko),n=Pp.get(t);return n?(i.trace("[RenameAction] got controller, running..."),n.run()):(i.trace("[RenameAction] returning early - controller missing"),Promise.resolve())}}ai(Pp.ID,Pp,4);ye(lJe);const Dq=Ds.bindToContribution(Pp.get);Fe(new Dq({id:"acceptRenameInput",precondition:Ly,handler:s=>s.acceptRenameInput(!1),kbOpts:{weight:199,kbExpr:be.and(W.focus,be.not("isComposing")),primary:3}}));Fe(new Dq({id:"acceptRenameInputWithPreview",precondition:be.and(Ly,be.has("config.editor.rename.enablePreview")),handler:s=>s.acceptRenameInput(!0),kbOpts:{weight:199,kbExpr:be.and(W.focus,be.not("isComposing")),primary:2051}}));Fe(new Dq({id:"cancelRenameInput",precondition:Ly,handler:s=>s.cancelRenameInput(),kbOpts:{weight:199,kbExpr:W.focus,primary:9,secondary:[1033]}}));Zi(class extends wr{constructor(){super({id:"focusNextRenameSuggestion",title:{..._t("focusNextRenameSuggestion","Focus Next Rename Suggestion")},precondition:Ly,keybinding:[{primary:18,weight:199}]})}run(e){const t=e.get(gi).getFocusedCodeEditor();if(!t)return;const i=Pp.get(t);i&&i.focusNextRenameSuggestion()}});Zi(class extends wr{constructor(){super({id:"focusPreviousRenameSuggestion",title:{..._t("focusPreviousRenameSuggestion","Focus Previous Rename Suggestion")},precondition:Ly,keybinding:[{primary:16,weight:199}]})}run(e){const t=e.get(gi).getFocusedCodeEditor();if(!t)return;const i=Pp.get(t);i&&i.focusPreviousRenameSuggestion()}});$r("_executeDocumentRenameProvider",function(s,e,t,...i){const[n]=i;fi(typeof n=="string");const{renameProvider:o}=s.get(qe);return aJe(o,e,t,n)});$r("_executePrepareRename",async function(s,e,t){const{renameProvider:i}=s.get(qe),o=await new kq(e,t,i).resolveRenameLocation(Mt.None);if(o?.rejectReason)throw new Error(o.rejectReason);return o});Tn.as(Fc.Configuration).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:v("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}});var cJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},pse=function(s,e){return function(t,i){e(t,i,s)}},Jw;let WM=(Jw=class extends se{constructor(e,t,i){super(),this.editor=e,this.languageConfigurationService=t,this.editorWorkerService=i,this.decorations=this.editor.createDecorationsCollection(),this.options=this.createOptions(e.getOption(73)),this.computePromise=null,this.currentOccurrences={},this._register(e.onDidChangeModel(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(e.onDidChangeModelLanguage(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(t.onDidChange(n=>{const o=this.editor.getModel()?.getLanguageId();o&&n.affects(o)&&(this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(e.onDidChangeConfiguration(n=>{this.options&&!n.hasChanged(73)||(this.options=this.createOptions(e.getOption(73)),this.updateDecorations([]),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(this.editor.onDidChangeModelContent(n=>{this.computeSectionHeaders.schedule()})),this._register(e.onDidChangeModelTokens(n=>{this.computeSectionHeaders.isScheduled()||this.computeSectionHeaders.schedule(1e3)})),this.computeSectionHeaders=this._register(new Ai(()=>{this.findSectionHeaders()},250)),this.computeSectionHeaders.schedule(0)}createOptions(e){if(!e||!this.editor.hasModel())return;const t=this.editor.getModel().getLanguageId();if(!t)return;const i=this.languageConfigurationService.getLanguageConfiguration(t).comments,n=this.languageConfigurationService.getLanguageConfiguration(t).foldingRules;if(!(!i&&!n?.markers))return{foldingRules:n,findMarkSectionHeaders:e.showMarkSectionHeaders,findRegionSectionHeaders:e.showRegionSectionHeaders}}findSectionHeaders(){if(!this.editor.hasModel()||!this.options?.findMarkSectionHeaders&&!this.options?.findRegionSectionHeaders)return;const e=this.editor.getModel();if(e.isDisposed()||e.isTooLargeForSyncing())return;const t=e.getVersionId();this.editorWorkerService.findSectionHeaders(e.uri,this.options).then(i=>{e.isDisposed()||e.getVersionId()!==t||this.updateDecorations(i)})}updateDecorations(e){const t=this.editor.getModel();t&&(e=e.filter(o=>{if(!o.shouldBeInComments)return!0;const r=t.validateRange(o.range),a=t.tokenization.getLineTokens(r.startLineNumber),l=a.findTokenIndexAtOffset(r.startColumn-1),c=a.getStandardTokenType(l);return a.getLanguageId(l)===t.getLanguageId()&&c===1}));const i=Object.values(this.currentOccurrences).map(o=>o.decorationId),n=e.map(o=>dJe(o));this.editor.changeDecorations(o=>{const r=o.deltaDecorations(i,n);this.currentOccurrences={};for(let a=0,l=r.length;a<l;a++){const c={sectionHeader:e[a],decorationId:r[a]};this.currentOccurrences[c.decorationId]=c}})}stop(){this.computeSectionHeaders.cancel(),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)}dispose(){super.dispose(),this.stop(),this.decorations.clear()}},Jw.ID="editor.sectionHeaderDetector",Jw);WM=cJe([pse(1,Rn),pse(2,Kr)],WM);function dJe(s){return{range:s.range,options:Et.createDynamic({description:"section-header",stickiness:3,collapseOnReplaceEdit:!0,minimap:{color:void 0,position:1,sectionHeaderStyle:s.hasSeparatorLine?2:1,sectionHeaderText:s.text}})}}ai(WM.ID,WM,1);function uJe(s){for(let e=0,t=s.length;e<t;e+=4){const i=s[e+0],n=s[e+1],o=s[e+2],r=s[e+3];s[e+0]=r,s[e+1]=o,s[e+2]=n,s[e+3]=i}}function hJe(s){const e=new Uint8Array(s.buffer,s.byteOffset,s.length*4);return sae()||uJe(e),pO.wrap(e)}function Kge(s){const e=new Uint32Array(fJe(s));let t=0;if(e[t++]=s.id,s.type==="full")e[t++]=1,e[t++]=s.data.length,e.set(s.data,t),t+=s.data.length;else{e[t++]=2,e[t++]=s.deltas.length;for(const i of s.deltas)e[t++]=i.start,e[t++]=i.deleteCount,i.data?(e[t++]=i.data.length,e.set(i.data,t),t+=i.data.length):e[t++]=0}return hJe(e)}function fJe(s){let e=0;if(e+=2,s.type==="full")e+=1+s.data.length;else{e+=1,e+=3*s.deltas.length;for(const t of s.deltas)t.data&&(e+=t.data.length)}return e}function DP(s){return s&&!!s.data}function Gge(s){return s&&Array.isArray(s.edits)}class gJe{constructor(e,t,i){this.provider=e,this.tokens=t,this.error=i}}function Yge(s,e){return s.has(e)}function pJe(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}async function Zge(s,e,t,i,n){const o=pJe(s,e),r=await Promise.all(o.map(async a=>{let l,c=null;try{l=await a.provideDocumentSemanticTokens(e,a===t?i:null,n)}catch(d){c=d,l=null}return(!l||!DP(l)&&!Gge(l))&&(l=null),new gJe(a,l,c)}));for(const a of r){if(a.error)throw a.error;if(a.tokens)return a}return r.length>0?r[0]:null}function mJe(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:null}class _Je{constructor(e,t){this.provider=e,this.tokens=t}}function bJe(s,e){return s.has(e)}function Xge(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}async function Eq(s,e,t,i){const n=Xge(s,e),o=await Promise.all(n.map(async r=>{let a;try{a=await r.provideDocumentRangeSemanticTokens(e,t,i)}catch(l){Qn(l),a=null}return(!a||!DP(a))&&(a=null),new _Je(r,a)}));for(const r of o)if(r.tokens)return r;return o.length>0?o[0]:null}ni.registerCommand("_provideDocumentSemanticTokensLegend",async(s,...e)=>{const[t]=e;fi(t instanceof ot);const i=s.get(ln).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(qe),o=mJe(n,i);return o?o[0].getLegend():s.get(en).executeCommand("_provideDocumentRangeSemanticTokensLegend",t)});ni.registerCommand("_provideDocumentSemanticTokens",async(s,...e)=>{const[t]=e;fi(t instanceof ot);const i=s.get(ln).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(qe);if(!Yge(n,i))return s.get(en).executeCommand("_provideDocumentRangeSemanticTokens",t,i.getFullModelRange());const o=await Zge(n,i,null,null,Mt.None);if(!o)return;const{provider:r,tokens:a}=o;if(!a||!DP(a))return;const l=Kge({id:0,type:"full",data:a.data});return a.resultId&&r.releaseDocumentSemanticTokens(a.resultId),l});ni.registerCommand("_provideDocumentRangeSemanticTokensLegend",async(s,...e)=>{const[t,i]=e;fi(t instanceof ot);const n=s.get(ln).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(qe),r=Xge(o,n);if(r.length===0)return;if(r.length===1)return r[0].getLegend();if(!i||!M.isIRange(i))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),r[0].getLegend();const a=await Eq(o,n,M.lift(i),Mt.None);if(a)return a.provider.getLegend()});ni.registerCommand("_provideDocumentRangeSemanticTokens",async(s,...e)=>{const[t,i]=e;fi(t instanceof ot),fi(M.isIRange(i));const n=s.get(ln).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(qe),r=await Eq(o,n,M.lift(i),Mt.None);if(!(!r||!r.tokens))return Kge({id:0,type:"full",data:r.tokens.data})});const Nq="editor.semanticHighlighting";function BI(s,e,t){const i=t.getValue(Nq,{overrideIdentifier:s.getLanguageId(),resource:s.uri})?.enabled;return typeof i=="boolean"?i:e.getColorTheme().semanticHighlighting}var Qge=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},hu=function(s,e){return function(t,i){e(t,i,s)}},fg;let WV=class extends se{constructor(e,t,i,n,o,r){super(),this._watchers=Object.create(null);const a=d=>{this._watchers[d.uri.toString()]=new HV(d,e,i,o,r)},l=(d,u)=>{u.dispose(),delete this._watchers[d.uri.toString()]},c=()=>{for(const d of t.getModels()){const u=this._watchers[d.uri.toString()];BI(d,i,n)?u||a(d):u&&l(d,u)}};t.getModels().forEach(d=>{BI(d,i,n)&&a(d)}),this._register(t.onModelAdded(d=>{BI(d,i,n)&&a(d)})),this._register(t.onModelRemoved(d=>{const u=this._watchers[d.uri.toString()];u&&l(d,u)})),this._register(n.onDidChangeConfiguration(d=>{d.affectsConfiguration(Nq)&&c()})),this._register(i.onDidColorThemeChange(c))}dispose(){for(const e of Object.values(this._watchers))e.dispose();super.dispose()}};WV=Qge([hu(0,CO),hu(1,ln),hu(2,Es),hu(3,Wt),hu(4,cl),hu(5,qe)],WV);var fp;let HV=(fp=class extends se{constructor(e,t,i,n,o){super(),this._semanticTokensStylingService=t,this._isDisposed=!1,this._model=e,this._provider=o.documentSemanticTokensProvider,this._debounceInformation=n.for(this._provider,"DocumentSemanticTokens",{min:fg.REQUEST_MIN_DELAY,max:fg.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new Ai(()=>this._fetchDocumentSemanticTokensNow(),fg.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 r=()=>{Wi(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[];for(const a of this._provider.all(e))typeof a.onDidChange=="function"&&this._documentProvidersChangeListeners.push(a.onDidChange(()=>{if(this._currentDocumentRequestCancellationTokenSource){this._providersChangedDuringRequest=!0;return}this._fetchDocumentSemanticTokens.schedule(0)}))};r(),this._register(this._provider.onDidChange(()=>{r(),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(i.onDidColorThemeChange(a=>{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),Wi(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[],this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!Yge(this._provider,this._model)){this._currentDocumentResponse&&this._model.tokenization.setSemanticTokens(null,!1);return}if(!this._model.isAttachedToEditor())return;const e=new In,t=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,i=this._currentDocumentResponse&&this._currentDocumentResponse.resultId||null,n=Zge(this._provider,this._model,t,i,e.token);this._currentDocumentRequestCancellationTokenSource=e,this._providersChangedDuringRequest=!1;const o=[],r=this._model.onDidChangeContent(l=>{o.push(l)}),a=new Ys(!1);n.then(l=>{if(this._debounceInformation.update(this._model,a.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),!l)this._setDocumentSemanticTokens(null,null,null,o);else{const{provider:c,tokens:d}=l,u=this._semanticTokensStylingService.getStyling(c);this._setDocumentSemanticTokens(c,d||null,u,o)}},l=>{l&&(ql(l)||typeof l.message=="string"&&l.message.indexOf("busy")!==-1)||xt(l),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),(o.length>0||this._providersChangedDuringRequest)&&(this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model)))})}static _copy(e,t,i,n,o){o=Math.min(o,i.length-n,e.length-t);for(let r=0;r<o;r++)i[n+r]=e[t+r]}_setDocumentSemanticTokens(e,t,i,n){const o=this._currentDocumentResponse,r=()=>{(n.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&&t&&e.releaseDocumentSemanticTokens(t.resultId);return}if(!e||!i){this._model.tokenization.setSemanticTokens(null,!1);return}if(!t){this._model.tokenization.setSemanticTokens(null,!0),r();return}if(Gge(t)){if(!o){this._model.tokenization.setSemanticTokens(null,!0);return}if(t.edits.length===0)t={resultId:t.resultId,data:o.data};else{let a=0;for(const f of t.edits)a+=(f.data?f.data.length:0)-f.deleteCount;const l=o.data,c=new Uint32Array(l.length+a);let d=l.length,u=c.length;for(let f=t.edits.length-1;f>=0;f--){const p=t.edits[f];if(p.start>l.length){i.warnInvalidEditStart(o.resultId,t.resultId,f,p.start,l.length),this._model.tokenization.setSemanticTokens(null,!0);return}const m=d-(p.start+p.deleteCount);m>0&&(fg._copy(l,d-m,c,u-m,m),u-=m),p.data&&(fg._copy(p.data,0,c,u-p.data.length,p.data.length),u-=p.data.length),d=p.start}d>0&&fg._copy(l,0,c,0,d),t={resultId:t.resultId,data:c}}}if(DP(t)){this._currentDocumentResponse=new vJe(e,t.resultId,t.data);const a=Yle(t,i,this._model.getLanguageId());if(n.length>0)for(const l of n)for(const c of a)for(const d of l.changes)c.applyEdit(d.range,d.text);this._model.tokenization.setSemanticTokens(a,!0)}else this._model.tokenization.setSemanticTokens(null,!0);r()}},fg=fp,fp.REQUEST_MIN_DELAY=300,fp.REQUEST_MAX_DELAY=2e3,fp);HV=fg=Qge([hu(1,CO),hu(2,Es),hu(3,cl),hu(4,qe)],HV);class vJe{constructor(e,t,i){this.provider=e,this.resultId=t,this.data=i}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}_y(WV);var CJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Z0=function(s,e){return function(t,i){e(t,i,s)}},e1;let HM=(e1=class extends se{constructor(e,t,i,n,o,r){super(),this._semanticTokensStylingService=t,this._themeService=i,this._configurationService=n,this._editor=e,this._provider=r.documentRangeSemanticTokensProvider,this._debounceInformation=o.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new Ai(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];const a=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{a()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),a()})),this._register(this._editor.onDidChangeModelContent(l=>{this._cancelAll(),a()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),a()})),this._register(this._configurationService.onDidChangeConfiguration(l=>{l.affectsConfiguration(Nq)&&(this._cancelAll(),a())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),a()})),a()}_cancelAll(){for(const e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,i=this._outstandingRequests.length;t<i;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;const e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!BI(e,this._themeService,this._configurationService)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}if(!bJe(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}const t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(i=>this._requestRange(e,i)))}_requestRange(e,t){const i=e.getVersionId(),n=As(r=>Promise.resolve(Eq(this._provider,e,t,r))),o=new Ys(!1);return n.then(r=>{if(this._debounceInformation.update(e,o.elapsed()),!r||!r.tokens||e.isDisposed()||e.getVersionId()!==i)return;const{provider:a,tokens:l}=r,c=this._semanticTokensStylingService.getStyling(a);e.tokenization.setPartialSemanticTokens(t,Yle(l,c,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(n),()=>this._removeOutstandingRequest(n)),n}},e1.ID="editor.contrib.viewportSemanticTokens",e1);HM=CJe([Z0(1,CO),Z0(2,Es),Z0(3,Wt),Z0(4,cl),Z0(5,qe)],HM);ai(HM.ID,HM,1);class wJe{constructor(e=!0){this.selectSubwords=e}provideSelectionRanges(e,t){const i=[];for(const n of t){const o=[];i.push(o),this.selectSubwords&&this._addInWordRanges(o,e,n),this._addWordRanges(o,e,n),this._addWhitespaceLine(o,e,n),o.push({range:e.getFullModelRange()})}return i}_addInWordRanges(e,t,i){const n=t.getWordAtPosition(i);if(!n)return;const{word:o,startColumn:r}=n,a=i.column-r;let l=a,c=a,d=0;for(;l>=0;l--){const u=o.charCodeAt(l);if(l!==a&&(u===95||u===45))break;if(Tg(u)&&lu(d))break;d=u}for(l+=1;c<o.length;c++){const u=o.charCodeAt(c);if(lu(u)&&Tg(d))break;if(u===95||u===45)break;d=u}l<c&&e.push({range:new M(i.lineNumber,r+l,i.lineNumber,r+c)})}_addWordRanges(e,t,i){const n=t.getWordAtPosition(i);n&&e.push({range:new M(i.lineNumber,n.startColumn,i.lineNumber,n.endColumn)})}_addWhitespaceLine(e,t,i){t.getLineLength(i.lineNumber)>0&&t.getLineFirstNonWhitespaceColumn(i.lineNumber)===0&&t.getLineLastNonWhitespaceColumn(i.lineNumber)===0&&e.push({range:new M(i.lineNumber,1,i.lineNumber,t.getLineMaxColumn(i.lineNumber))})}}var yJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},SJe=function(s,e){return function(t,i){e(t,i,s)}},VV;class Iq{constructor(e,t){this.index=e,this.ranges=t}mov(e){const t=this.index+(e?1:-1);if(t<0||t>=this.ranges.length)return this;const i=new Iq(t,this.ranges);return i.ranges[t].equalsRange(this.ranges[this.index])?i.mov(e):i}}var pb;let rk=(pb=class{static get(e){return e.getContribution(VV.ID)}constructor(e,t){this._editor=e,this._languageFeaturesService=t,this._ignoreSelection=!1}dispose(){this._selectionListener?.dispose()}async run(e){if(!this._editor.hasModel())return;const t=this._editor.getSelections(),i=this._editor.getModel();if(this._state||await epe(this._languageFeaturesService.selectionRangeProvider,i,t.map(o=>o.getPosition()),this._editor.getOption(114),Mt.None).then(o=>{if(!(!Xo(o)||o.length!==t.length)&&!(!this._editor.hasModel()||!Sn(this._editor.getSelections(),t,(r,a)=>r.equalsSelection(a)))){for(let r=0;r<o.length;r++)o[r]=o[r].filter(a=>a.containsPosition(t[r].getStartPosition())&&a.containsPosition(t[r].getEndPosition())),o[r].unshift(t[r]);this._state=o.map(r=>new Iq(0,r)),this._selectionListener?.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{this._ignoreSelection||(this._selectionListener?.dispose(),this._state=void 0)})}}),!this._state)return;this._state=this._state.map(o=>o.mov(e));const n=this._state.map(o=>Ye.fromPositions(o.ranges[o.index].getStartPosition(),o.ranges[o.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(n)}finally{this._ignoreSelection=!1}}},VV=pb,pb.ID="editor.contrib.smartSelectController",pb);rk=VV=yJe([SJe(1,qe)],rk);class Jge extends ze{constructor(e,t){super(t),this._forward=e}async run(e,t){const i=rk.get(t);i&&await i.run(this._forward)}}class xJe extends Jge{constructor(){super(!0,{id:"editor.action.smartSelect.expand",label:v("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:Ge.MenubarSelectionMenu,group:"1_basic",title:v({key:"miSmartSelectGrow",comment:["&& denotes a mnemonic"]},"&&Expand Selection"),order:2}})}}ni.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");class LJe extends Jge{constructor(){super(!1,{id:"editor.action.smartSelect.shrink",label:v("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:Ge.MenubarSelectionMenu,group:"1_basic",title:v({key:"miSmartSelectShrink",comment:["&& denotes a mnemonic"]},"&&Shrink Selection"),order:3}})}}ai(rk.ID,rk,4);ye(xJe);ye(LJe);async function epe(s,e,t,i,n){const o=s.all(e).concat(new wJe(i.selectSubwords));o.length===1&&o.unshift(new xM);const r=[],a=[];for(const l of o)r.push(Promise.resolve(l.provideSelectionRanges(e,t,n)).then(c=>{if(Xo(c)&&c.length===t.length)for(let d=0;d<t.length;d++){a[d]||(a[d]=[]);for(const u of c[d])M.isIRange(u.range)&&M.containsPosition(u.range,t[d])&&a[d].push(M.lift(u.range))}},Qn));return await Promise.all(r),a.map(l=>{if(l.length===0)return[];l.sort((f,p)=>ee.isBefore(f.getStartPosition(),p.getStartPosition())?1:ee.isBefore(p.getStartPosition(),f.getStartPosition())||ee.isBefore(f.getEndPosition(),p.getEndPosition())?-1:ee.isBefore(p.getEndPosition(),f.getEndPosition())?1:0);const c=[];let d;for(const f of l)(!d||M.containsRange(f,d)&&!M.equalsRange(f,d))&&(c.push(f),d=f);if(!i.selectLeadingAndTrailingWhitespace)return c;const u=[c[0]];for(let f=1;f<c.length;f++){const p=c[f-1],m=c[f];if(m.startLineNumber!==p.startLineNumber||m.endLineNumber!==p.endLineNumber){const b=new M(p.startLineNumber,e.getLineFirstNonWhitespaceColumn(p.startLineNumber),p.endLineNumber,e.getLineLastNonWhitespaceColumn(p.endLineNumber));b.containsRange(p)&&!b.equalsRange(p)&&m.containsRange(b)&&!m.equalsRange(b)&&u.push(b);const w=new M(p.startLineNumber,1,p.endLineNumber,e.getLineMaxColumn(p.endLineNumber));w.containsRange(p)&&!w.equalsRange(b)&&m.containsRange(w)&&!m.equalsRange(w)&&u.push(w)}u.push(m)}return u})}ni.registerCommand("_executeSelectionRangeProvider",async function(s,...e){const[t,i]=e;fi(ot.isUri(t));const n=s.get(qe).selectionRangeProvider,o=await s.get(jr).createModelReference(t);try{return epe(n,o.object.textEditorModel,i,{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},Mt.None)}finally{o.dispose()}});const kJe=Object.freeze({View:_t("view","View"),Help:_t("help","Help"),Test:_t("test","Test"),File:_t("file","File"),Preferences:_t("preferences","Preferences"),Developer:_t({key:"developer",comment:["A developer on Code itself or someone diagnosing issues in Code"]},"Developer")});class ax{constructor(e,t,i,n=null){this.startLineNumbers=e,this.endLineNumbers=t,this.lastLineRelativePosition=i,this.showEndForLine=n}equals(e){return!!e&&this.lastLineRelativePosition===e.lastLineRelativePosition&&this.showEndForLine===e.showEndForLine&&Sn(this.startLineNumbers,e.startLineNumbers)&&Sn(this.endLineNumbers,e.endLineNumbers)}static get Empty(){return new ax([],[],0)}}const mse=kf("stickyScrollViewLayer",{createHTML:s=>s}),gB="data-sticky-line-index",_se="data-sticky-is-line",DJe="data-sticky-is-line-number",bse="data-sticky-is-folding-icon";class EJe extends se{constructor(e){super(),this._editor=e,this._foldingIconStore=new _e,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(67),this._renderedStickyLines=[],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 Ac),this._rootDomNode.appendChild(this._lineNumbersDomNode),this._rootDomNode.appendChild(this._linesDomNodeScrollable);const t=()=>{this._linesDomNode.style.left=this._editor.getOption(116).scrollWithEditor?`-${this._editor.getScrollLeft()}px`:"0px"};this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(116)&&t(),i.hasChanged(67)&&(this._lineHeight=this._editor.getOption(67))})),this._register(this._editor.onDidScrollChange(i=>{i.scrollLeftChanged&&t(),i.scrollWidthChanged&&this._updateWidgetWidth()})),this._register(this._editor.onDidChangeModel(()=>{t(),this._updateWidgetWidth()})),this._register(this._foldingIconStore),t(),this._register(this._editor.onDidLayoutChange(i=>{this._updateWidgetWidth()})),this._updateWidgetWidth()}get lineNumbers(){return this._lineNumbers}get lineNumberCount(){return this._lineNumbers.length}getRenderedStickyLine(e){return this._renderedStickyLines.find(t=>t.lineNumber===e)}getCurrentLines(){return this._lineNumbers}setState(e,t,i){if(i===void 0&&(!this._previousState&&!e||this._previousState&&this._previousState.equals(e)))return;const n=this._isWidgetHeightZero(e),o=n?void 0:e,r=n?0:this._findLineToRebuildWidgetFrom(e,i);this._renderRootNode(o,t,r),this._previousState=e}_isWidgetHeightZero(e){if(!e)return!0;const t=e.startLineNumbers.length*this._lineHeight+e.lastLineRelativePosition;if(t>0){this._lastLineRelativePosition=e.lastLineRelativePosition;const i=[...e.startLineNumbers];e.showEndForLine!==null&&(i[e.showEndForLine]=e.endLineNumbers[e.showEndForLine]),this._lineNumbers=i}else this._lastLineRelativePosition=0,this._lineNumbers=[];return t===0}_findLineToRebuildWidgetFrom(e,t){if(!e||!this._previousState)return 0;if(t!==void 0)return t;const i=this._previousState,n=e.startLineNumbers.findIndex(o=>!i.startLineNumbers.includes(o));return n===-1?0:n}_updateWidgetWidth(){const e=this._editor.getLayoutInfo(),t=e.contentLeft;this._lineNumbersDomNode.style.width=`${t}px`,this._linesDomNodeScrollable.style.setProperty("--vscode-editorStickyScroll-scrollableWidth",`${this._editor.getScrollWidth()-e.verticalScrollbarWidth}px`),this._rootDomNode.style.width=`${e.width-e.verticalScrollbarWidth}px`}_clearStickyLinesFromLine(e){this._foldingIconStore.clear();for(let t=e;t<this._renderedStickyLines.length;t++){const i=this._renderedStickyLines[t];i.lineNumberDomNode.remove(),i.lineDomNode.remove()}this._renderedStickyLines=this._renderedStickyLines.slice(0,e),this._rootDomNode.style.display="none"}_useFoldingOpacityTransition(e){this._lineNumbersDomNode.style.setProperty("--vscode-editorStickyScroll-foldingOpacityTransition",`opacity ${e?.5:0}s`)}_setFoldingIconsVisibility(e){for(const t of this._renderedStickyLines){const i=t.foldingIcon;i&&i.setVisible(e?!0:i.isCollapsed)}}async _renderRootNode(e,t,i){if(this._clearStickyLinesFromLine(i),!e)return;for(const a of this._renderedStickyLines)this._updateTopAndZIndexOfStickyLine(a);const n=this._editor.getLayoutInfo(),o=this._lineNumbers.slice(i);for(const[a,l]of o.entries()){const c=this._renderChildNode(a+i,l,t,n);c&&(this._linesDomNode.appendChild(c.lineDomNode),this._lineNumbersDomNode.appendChild(c.lineNumberDomNode),this._renderedStickyLines.push(c))}t&&(this._setFoldingHoverListeners(),this._useFoldingOpacityTransition(!this._isOnGlyphMargin));const r=this._lineNumbers.length*this._lineHeight+this._lastLineRelativePosition;this._rootDomNode.style.display="block",this._lineNumbersDomNode.style.height=`${r}px`,this._linesDomNodeScrollable.style.height=`${r}px`,this._rootDomNode.style.height=`${r}px`,this._rootDomNode.style.marginLeft="0px",this._minContentWidthInPx=Math.max(...this._renderedStickyLines.map(a=>a.scrollWidth))+n.verticalScrollbarWidth,this._editor.layoutOverlayWidget(this)}_setFoldingHoverListeners(){this._editor.getOption(111)==="mouseover"&&(this._foldingIconStore.add(de(this._lineNumbersDomNode,Ee.MOUSE_ENTER,()=>{this._isOnGlyphMargin=!0,this._setFoldingIconsVisibility(!0)})),this._foldingIconStore.add(de(this._lineNumbersDomNode,Ee.MOUSE_LEAVE,()=>{this._isOnGlyphMargin=!1,this._useFoldingOpacityTransition(!0),this._setFoldingIconsVisibility(!1)})))}_renderChildNode(e,t,i,n){const o=this._editor._getViewModel();if(!o)return;const r=o.coordinatesConverter.convertModelPositionToViewPosition(new ee(t,1)).lineNumber,a=o.getViewLineRenderingData(r),l=this._editor.getOption(68);let c;try{c=ur.filter(a.inlineDecorations,r,a.minColumn,a.maxColumn)}catch{c=[]}const d=new $p(!0,!0,a.content,a.continuesWithWrappedLine,a.isBasicASCII,a.containsRTL,0,a.tokens,c,a.tabSize,a.startVisibleColumn,1,1,1,500,"none",!0,!0,null),u=new sy(2e3),f=Jk(d,u);let p;mse?p=mse.createHTML(u.build()):p=u.build();const m=document.createElement("span");m.setAttribute(gB,String(e)),m.setAttribute(_se,""),m.setAttribute("role","listitem"),m.tabIndex=0,m.className="sticky-line-content",m.classList.add(`stickyLine${t}`),m.style.lineHeight=`${this._lineHeight}px`,m.innerHTML=p;const b=document.createElement("span");b.setAttribute(gB,String(e)),b.setAttribute(DJe,""),b.className="sticky-line-number",b.style.lineHeight=`${this._lineHeight}px`;const w=n.contentLeft;b.style.width=`${w}px`;const y=document.createElement("span");l.renderType===1||l.renderType===3&&t%10===0?y.innerText=t.toString():l.renderType===2&&(y.innerText=Math.abs(t-this._editor.getPosition().lineNumber).toString()),y.className="sticky-line-number-inner",y.style.lineHeight=`${this._lineHeight}px`,y.style.width=`${n.lineNumbersWidth}px`,y.style.paddingLeft=`${n.lineNumbersLeft}px`,b.appendChild(y);const S=this._renderFoldingIconForLine(i,t);S&&b.appendChild(S.domNode),this._editor.applyFontInfo(m),this._editor.applyFontInfo(y),b.style.lineHeight=`${this._lineHeight}px`,m.style.lineHeight=`${this._lineHeight}px`,b.style.height=`${this._lineHeight}px`,m.style.height=`${this._lineHeight}px`;const x=new NJe(e,t,m,b,S,f.characterMapping,m.scrollWidth);return this._updateTopAndZIndexOfStickyLine(x)}_updateTopAndZIndexOfStickyLine(e){const t=e.index,i=e.lineDomNode,n=e.lineNumberDomNode,o=t===this._lineNumbers.length-1,r="0",a="1";i.style.zIndex=o?r:a,n.style.zIndex=o?r:a;const l=`${t*this._lineHeight+this._lastLineRelativePosition+(e.foldingIcon?.isCollapsed?1:0)}px`,c=`${t*this._lineHeight}px`;return i.style.top=o?l:c,n.style.top=o?l:c,e}_renderFoldingIconForLine(e,t){const i=this._editor.getOption(111);if(!e||i==="never")return;const n=e.regions,o=n.findRange(t),r=n.getStartLineNumber(o);if(!(t===r))return;const l=n.isCollapsed(o),c=new IJe(l,r,n.getEndLineNumber(o),this._lineHeight);return c.setVisible(this._isOnGlyphMargin?!0:l||i==="always"),c.domNode.setAttribute(bse,""),c}getId(){return"editor.contrib.stickyScrollWidget"}getDomNode(){return this._rootDomNode}getPosition(){return{preference:2,stackOridinal:10}}getMinContentWidthInPx(){return this._minContentWidthInPx}focusLineWithIndex(e){0<=e&&e<this._renderedStickyLines.length&&this._renderedStickyLines[e].lineDomNode.focus()}getEditorPositionFromNode(e){if(!e||e.children.length>0)return null;const t=this._getRenderedStickyLineFromChildDomNode(e);if(!t)return null;const i=s$(t.characterMapping,e,0);return new ee(t.lineNumber,i)}getLineNumberFromChildDomNode(e){return this._getRenderedStickyLineFromChildDomNode(e)?.lineNumber??null}_getRenderedStickyLineFromChildDomNode(e){const t=this.getLineIndexFromChildDomNode(e);return t===null||t<0||t>=this._renderedStickyLines.length?null:this._renderedStickyLines[t]}getLineIndexFromChildDomNode(e){const t=this._getAttributeValue(e,gB);return t?parseInt(t,10):null}isInStickyLine(e){return this._getAttributeValue(e,_se)!==void 0}isInFoldingIconDomNode(e){return this._getAttributeValue(e,bse)!==void 0}_getAttributeValue(e,t){for(;e&&e!==this._rootDomNode;){const i=e.getAttribute(t);if(i!==null)return i;e=e.parentElement}}}class NJe{constructor(e,t,i,n,o,r,a){this.index=e,this.lineNumber=t,this.lineDomNode=i,this.lineNumberDomNode=n,this.foldingIcon=o,this.characterMapping=r,this.scrollWidth=a}}class IJe{constructor(e,t,i,n){this.isCollapsed=e,this.foldingStartLine=t,this.foldingEndLine=i,this.dimension=n,this.domNode=document.createElement("div"),this.domNode.style.width=`${n}px`,this.domNode.style.height=`${n}px`,this.domNode.className=ft.asClassName(e?fM:hM)}setVisible(e){this.domNode.style.cursor=e?"pointer":"default",this.domNode.style.opacity=e?"1":"0"}}class lx{constructor(e,t){this.startLineNumber=e,this.endLineNumber=t}}class VM{constructor(e,t,i){this.range=e,this.children=t,this.parent=i}}class tpe{constructor(e,t,i,n){this.uri=e,this.version=t,this.element=i,this.outlineProviderId=n}}var EP=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},ak=function(s,e){return function(t,i){e(t,i,s)}},cx;(function(s){s.OUTLINE_MODEL="outlineModel",s.FOLDING_PROVIDER_MODEL="foldingProviderModel",s.INDENTATION_MODEL="indentationModel"})(cx||(cx={}));var Ug;(function(s){s[s.VALID=0]="VALID",s[s.INVALID=1]="INVALID",s[s.CANCELED=2]="CANCELED"})(Ug||(Ug={}));let zV=class extends se{constructor(e,t,i,n){switch(super(),this._editor=e,this._modelProviders=[],this._modelPromise=null,this._updateScheduler=this._register(new Wl(300)),this._updateOperation=this._register(new _e),this._editor.getOption(116).defaultModel){case cx.OUTLINE_MODEL:this._modelProviders.push(new UV(this._editor,n));case cx.FOLDING_PROVIDER_MODEL:this._modelProviders.push(new $V(this._editor,t,n));case cx.INDENTATION_MODEL:this._modelProviders.push(new jV(this._editor,i));break}}dispose(){this._modelProviders.forEach(e=>e.dispose()),this._updateOperation.clear(),this._cancelModelPromise(),super.dispose()}_cancelModelPromise(){this._modelPromise&&(this._modelPromise.cancel(),this._modelPromise=null)}async update(e){return this._updateOperation.clear(),this._updateOperation.add({dispose:()=>{this._cancelModelPromise(),this._updateScheduler.cancel()}}),this._cancelModelPromise(),await this._updateScheduler.trigger(async()=>{for(const t of this._modelProviders){const{statusPromise:i,modelPromise:n}=t.computeStickyModel(e);this._modelPromise=n;const o=await i;if(this._modelPromise!==n)return null;switch(o){case Ug.CANCELED:return this._updateOperation.clear(),null;case Ug.VALID:return t.stickyModel}}return null}).catch(t=>(xt(t),null))}};zV=EP([ak(2,it),ak(3,qe)],zV);class ipe extends se{constructor(e){super(),this._editor=e,this._stickyModel=null}get stickyModel(){return this._stickyModel}_invalid(){return this._stickyModel=null,Ug.INVALID}computeStickyModel(e){if(e.isCancellationRequested||!this.isProviderValid())return{statusPromise:this._invalid(),modelPromise:null};const t=As(i=>this.createModelFromProvider(i));return{statusPromise:t.then(i=>this.isModelValid(i)?e.isCancellationRequested?Ug.CANCELED:(this._stickyModel=this.createStickyModel(e,i),Ug.VALID):this._invalid()).then(void 0,i=>(xt(i),Ug.CANCELED)),modelPromise:t}}isModelValid(e){return!0}isProviderValid(){return!0}}let UV=class extends ipe{constructor(e,t){super(e),this._languageFeaturesService=t}createModelFromProvider(e){return Ah.create(this._languageFeaturesService.documentSymbolProvider,this._editor.getModel(),e)}createStickyModel(e,t){const{stickyOutlineElement:i,providerID:n}=this._stickyModelFromOutlineModel(t,this._stickyModel?.outlineProviderId),o=this._editor.getModel();return new tpe(o.uri,o.getVersionId(),i,n)}isModelValid(e){return e&&e.children.size>0}_stickyModelFromOutlineModel(e,t){let i;if(ii.first(e.children.values())instanceof Sge){const a=ii.find(e.children.values(),l=>l.id===t);if(a)i=a.children;else{let l="",c=-1,d;for(const[u,f]of e.children.entries()){const p=this._findSumOfRangesOfGroup(f);p>c&&(d=f,c=p,l=f.id)}t=l,i=d.children}}else i=e.children;const n=[],o=Array.from(i.values()).sort((a,l)=>{const c=new lx(a.symbol.range.startLineNumber,a.symbol.range.endLineNumber),d=new lx(l.symbol.range.startLineNumber,l.symbol.range.endLineNumber);return this._comparator(c,d)});for(const a of o)n.push(this._stickyModelFromOutlineElement(a,a.symbol.selectionRange.startLineNumber));return{stickyOutlineElement:new VM(void 0,n,void 0),providerID:t}}_stickyModelFromOutlineElement(e,t){const i=[];for(const o of e.children.values())if(o.symbol.selectionRange.startLineNumber!==o.symbol.range.endLineNumber)if(o.symbol.selectionRange.startLineNumber!==t)i.push(this._stickyModelFromOutlineElement(o,o.symbol.selectionRange.startLineNumber));else for(const r of o.children.values())i.push(this._stickyModelFromOutlineElement(r,o.symbol.selectionRange.startLineNumber));i.sort((o,r)=>this._comparator(o.range,r.range));const n=new lx(e.symbol.selectionRange.startLineNumber,e.symbol.range.endLineNumber);return new VM(n,i,void 0)}_comparator(e,t){return e.startLineNumber!==t.startLineNumber?e.startLineNumber-t.startLineNumber:t.endLineNumber-e.endLineNumber}_findSumOfRangesOfGroup(e){let t=0;for(const i of e.children.values())t+=this._findSumOfRangesOfGroup(i);return e instanceof RH?t+e.symbol.range.endLineNumber-e.symbol.selectionRange.startLineNumber:t}};UV=EP([ak(1,qe)],UV);class npe extends ipe{constructor(e){super(e),this._foldingLimitReporter=new Cge(e)}createStickyModel(e,t){const i=this._fromFoldingRegions(t),n=this._editor.getModel();return new tpe(n.uri,n.getVersionId(),i,void 0)}isModelValid(e){return e!==null}_fromFoldingRegions(e){const t=e.length,i=[],n=new VM(void 0,[],void 0);for(let o=0;o<t;o++){const r=e.getParentIndex(o);let a;r!==-1?a=i[r]:a=n;const l=new VM(new lx(e.getStartLineNumber(o),e.getEndLineNumber(o)+1),[],a);a.children.push(l),i.push(l)}return n}}let jV=class extends npe{constructor(e,t){super(e),this._languageConfigurationService=t,this.provider=this._register(new pq(e.getModel(),this._languageConfigurationService,this._foldingLimitReporter))}async createModelFromProvider(e){return this.provider.compute(e)}};jV=EP([ak(1,Rn)],jV);let $V=class extends npe{constructor(e,t,i){super(e),this._languageFeaturesService=i;const n=Op.getFoldingRangeProviders(this._languageFeaturesService,e.getModel());n.length>0&&(this.provider=this._register(new mq(e.getModel(),n,t,this._foldingLimitReporter,void 0)))}isProviderValid(){return this.provider!==void 0}async createModelFromProvider(e){return this.provider?.compute(e)??null}};$V=EP([ak(2,qe)],$V);var TJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vse=function(s,e){return function(t,i){e(t,i,s)}};class RJe{constructor(e,t,i){this.startLineNumber=e,this.endLineNumber=t,this.nestingDepth=i}}let qV=class extends se{constructor(e,t,i){super(),this._languageFeaturesService=t,this._languageConfigurationService=i,this._onDidChangeStickyScroll=this._register(new te),this.onDidChangeStickyScroll=this._onDidChangeStickyScroll.event,this._model=null,this._cts=null,this._stickyModelProvider=null,this._editor=e,this._sessionStore=this._register(new _e),this._updateSoon=this._register(new Ai(()=>this.update(),50)),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(116)&&this.readConfiguration()})),this.readConfiguration()}readConfiguration(){this._sessionStore.clear(),this._editor.getOption(116).enabled&&(this._sessionStore.add(this._editor.onDidChangeModel(()=>{this._model=null,this.updateStickyModelProvider(),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._sessionStore.add(tt(()=>{this._stickyModelProvider?.dispose(),this._stickyModelProvider=null})),this.updateStickyModelProvider(),this.update())}getVersionId(){return this._model?.version}updateStickyModelProvider(){this._stickyModelProvider?.dispose(),this._stickyModelProvider=null;const e=this._editor;e.hasModel()&&(this._stickyModelProvider=new zV(e,()=>this._updateSoon.schedule(),this._languageConfigurationService,this._languageFeaturesService))}async update(){this._cts?.dispose(!0),this._cts=new In,await this.updateStickyModel(this._cts.token),this._onDidChangeStickyScroll.fire()}async updateStickyModel(e){if(!this._editor.hasModel()||!this._stickyModelProvider||this._editor.getModel().isTooLargeForTokenization()){this._model=null;return}const t=await this._stickyModelProvider.update(e);e.isCancellationRequested||(this._model=t)}updateIndex(e){return e===-1?e=0:e<0&&(e=-e-2),e}getCandidateStickyLinesIntersectingFromStickyModel(e,t,i,n,o){if(t.children.length===0)return;let r=o;const a=[];for(let d=0;d<t.children.length;d++){const u=t.children[d];u.range&&a.push(u.range.startLineNumber)}const l=this.updateIndex(Mx(a,e.startLineNumber,(d,u)=>d-u)),c=this.updateIndex(Mx(a,e.startLineNumber+n,(d,u)=>d-u));for(let d=l;d<=c;d++){const u=t.children[d];if(!u)return;if(u.range){const f=u.range.startLineNumber,p=u.range.endLineNumber;e.startLineNumber<=p+1&&f-1<=e.endLineNumber&&f!==r&&(r=f,i.push(new RJe(f,p-1,n+1)),this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n+1,f))}else this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n,o)}}getCandidateStickyLinesIntersecting(e){if(!this._model?.element)return[];let t=[];this.getCandidateStickyLinesIntersectingFromStickyModel(e,this._model.element,t,0,-1);const i=this._editor._getViewModel()?.getHiddenAreas();if(i)for(const n of i)t=t.filter(o=>!(o.startLineNumber>=n.startLineNumber&&o.endLineNumber<=n.endLineNumber+1));return t}};qV=TJe([vse(1,qe),vse(2,Rn)],qV);var MJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vC=function(s,e){return function(t,i){e(t,i,s)}},KV,mb;let yf=(mb=class extends se{constructor(e,t,i,n,o,r,a){super(),this._editor=e,this._contextMenuService=t,this._languageFeaturesService=i,this._instaService=n,this._contextKeyService=a,this._sessionStore=new _e,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._stickyScrollWidget=new EJe(this._editor),this._stickyLineCandidateProvider=new qV(this._editor,i,o),this._register(this._stickyScrollWidget),this._register(this._stickyLineCandidateProvider),this._widgetState=ax.Empty,this._onDidResize(),this._readConfiguration();const l=this._stickyScrollWidget.getDomNode();this._register(this._editor.onDidChangeConfiguration(d=>{this._readConfigurationChange(d)})),this._register(de(l,Ee.CONTEXT_MENU,async d=>{this._onContextMenu(ct(l),d)})),this._stickyScrollFocusedContextKey=W.stickyScrollFocused.bindTo(this._contextKeyService),this._stickyScrollVisibleContextKey=W.stickyScrollVisible.bindTo(this._contextKeyService);const c=this._register(yd(l));this._register(c.onDidBlur(d=>{this._positionRevealed===!1&&l.clientHeight===0?(this._focusedStickyElementIndex=-1,this.focus()):this._disposeFocusStickyScrollStore()})),this._register(c.onDidFocus(d=>{this.focus()})),this._registerMouseListeners(),this._register(de(l,Ee.MOUSE_DOWN,d=>{this._onMouseDown=!0}))}static get(e){return e.getContribution(KV.ID)}_disposeFocusStickyScrollStore(){this._stickyScrollFocusedContextKey.set(!1),this._focusDisposableStore?.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 _e,this._stickyScrollFocusedContextKey.set(!0),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumbers.length-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}focusNext(){this._focusedStickyElementIndex<this._stickyScrollWidget.lineNumberCount-1&&this._focusNav(!0)}focusPrevious(){this._focusedStickyElementIndex>0&&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,t){this._focused&&this._disposeFocusStickyScrollStore(),this._positionRevealed=!0,t(),this._editor.setSelection(M.fromPositions(e)),this._editor.focus()}_registerMouseListeners(){const e=this._register(new _e),t=this._register(new _P(this._editor,{extractLineNumberFromMouseEvent:o=>{const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);return r?r.lineNumber:0}})),i=o=>{if(!this._editor.hasModel()||o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return null;const r=o.target.element;if(!r||r.innerText!==r.innerHTML)return null;const a=this._stickyScrollWidget.getEditorPositionFromNode(r);return a?{range:new M(a.lineNumber,a.column,a.lineNumber,a.column+r.innerText.length),textElement:r}:null},n=this._stickyScrollWidget.getDomNode();this._register(On(n,Ee.CLICK,o=>{if(o.ctrlKey||o.altKey||o.metaKey||!o.leftButton)return;if(o.shiftKey){const c=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(c===null)return;const d=new ee(this._endLineNumbers[c],1);this._revealLineInCenterIfOutsideViewport(d);return}if(this._stickyScrollWidget.isInFoldingIconDomNode(o.target)){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);this._toggleFoldingRegionForLine(c);return}if(!this._stickyScrollWidget.isInStickyLine(o.target))return;let l=this._stickyScrollWidget.getEditorPositionFromNode(o.target);if(!l){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);if(c===null)return;l=new ee(c,1)}this._revealPosition(l)})),this._register(On(n,Ee.MOUSE_MOVE,o=>{if(o.shiftKey){const r=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(r===null||this._showEndForLine!==null&&this._showEndForLine===r)return;this._showEndForLine=r,this._renderStickyScroll();return}this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(de(n,Ee.MOUSE_LEAVE,o=>{this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(t.onMouseMoveOrRelevantKeyDown(([o,r])=>{const a=i(o);if(!a||!o.hasTriggerModifier||!this._editor.hasModel()){e.clear();return}const{range:l,textElement:c}=a;if(!l.equalsRange(this._stickyRangeProjectedOnEditor))this._stickyRangeProjectedOnEditor=l,e.clear();else if(c.style.textDecoration==="underline")return;const d=new In;e.add(tt(()=>d.dispose(!0)));let u;cD(this._languageFeaturesService.definitionProvider,this._editor.getModel(),new ee(l.startLineNumber,l.startColumn+1),!1,d.token).then((f=>{if(!d.token.isCancellationRequested)if(f.length!==0){this._candidateDefinitionsLength=f.length;const p=c;u!==p?(e.clear(),u=p,u.style.textDecoration="underline",e.add(tt(()=>{u.style.textDecoration="none"}))):u||(u=p,u.style.textDecoration="underline",e.add(tt(()=>{u.style.textDecoration="none"})))}else e.clear()}))})),this._register(t.onCancel(()=>{e.clear()})),this._register(t.onExecute(async o=>{if(o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return;const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);r&&(!this._editor.hasModel()||!this._stickyRangeProjectedOnEditor||(this._candidateDefinitionsLength>1&&(this._focused&&this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:r.lineNumber,column:1})),this._instaService.invokeFunction(nge,o,this._editor,{uri:this._editor.getModel().uri,range:this._stickyRangeProjectedOnEditor})))}))}_onContextMenu(e,t){const i=new wc(e,t);this._contextMenuService.showContextMenu({menuId:Ge.StickyScrollContext,getAnchor:()=>i})}_toggleFoldingRegionForLine(e){if(!this._foldingModel||e===null)return;const t=this._stickyScrollWidget.getRenderedStickyLine(e),i=t?.foldingIcon;if(!i)return;hq(this._foldingModel,Number.MAX_VALUE,[e]),i.isCollapsed=!i.isCollapsed;const n=(i.isCollapsed?this._editor.getTopForLineNumber(i.foldingEndLine):this._editor.getTopForLineNumber(i.foldingStartLine))-this._editor.getOption(67)*t.index+1;this._editor.setScrollTop(n),this._renderStickyScroll(e)}_readConfiguration(){const e=this._editor.getOption(116);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(i=>{i.scrollTopChanged&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._sessionStore.add(this._editor.onDidLayoutChange(()=>this._onDidResize())),this._sessionStore.add(this._editor.onDidChangeModelTokens(i=>this._onTokensChange(i))),this._sessionStore.add(this._stickyLineCandidateProvider.onDidChangeStickyScroll(()=>{this._showEndForLine=void 0,this._renderStickyScroll()})),this._enabled=!0);this._editor.getOption(68).renderType===2&&this._sessionStore.add(this._editor.onDidChangeCursorPosition(()=>{this._showEndForLine=void 0,this._renderStickyScroll(0)}))}_readConfigurationChange(e){(e.hasChanged(116)||e.hasChanged(73)||e.hasChanged(67)||e.hasChanged(111)||e.hasChanged(68))&&this._readConfiguration(),e.hasChanged(68)&&this._renderStickyScroll(0)}_needsUpdate(e){const t=this._stickyScrollWidget.getCurrentLines();for(const i of t)for(const n of e.ranges)if(i>=n.fromLineNumber&&i<=n.toLineNumber)return!0;return!1}_onTokensChange(e){this._needsUpdate(e)&&this._renderStickyScroll(0)}_onDidResize(){const t=this._editor.getLayoutInfo().height/this._editor.getOption(67);this._maxStickyLines=Math.round(t*.25)}async _renderStickyScroll(e){const t=this._editor.getModel();if(!t||t.isTooLargeForTokenization()){this._resetState();return}const i=this._updateAndGetMinRebuildFromLine(e),n=this._stickyLineCandidateProvider.getVersionId();if(n===void 0||n===t.getVersionId())if(!this._focused)await this._updateState(i);else if(this._focusedStickyElementIndex===-1)await this._updateState(i),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1,this._focusedStickyElementIndex!==-1&&this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);else{const r=this._stickyScrollWidget.lineNumbers[this._focusedStickyElementIndex];await this._updateState(i),this._stickyScrollWidget.lineNumberCount===0?this._focusedStickyElementIndex=-1:(this._stickyScrollWidget.lineNumbers.includes(r)||(this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1),this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}}_updateAndGetMinRebuildFromLine(e){if(e!==void 0){const t=this._minRebuildFromLine!==void 0?this._minRebuildFromLine:1/0;this._minRebuildFromLine=Math.min(e,t)}return this._minRebuildFromLine}async _updateState(e){this._minRebuildFromLine=void 0,this._foldingModel=await Op.get(this._editor)?.getFoldingModel()??void 0,this._widgetState=this.findScrollWidgetState();const t=this._widgetState.startLineNumbers.length>0;this._stickyScrollVisibleContextKey.set(t),this._stickyScrollWidget.setState(this._widgetState,this._foldingModel,e)}async _resetState(){this._minRebuildFromLine=void 0,this._foldingModel=void 0,this._widgetState=ax.Empty,this._stickyScrollVisibleContextKey.set(!1),this._stickyScrollWidget.setState(void 0,void 0)}findScrollWidgetState(){const e=this._editor.getOption(67),t=Math.min(this._maxStickyLines,this._editor.getOption(116).maxLineCount),i=this._editor.getScrollTop();let n=0;const o=[],r=[],a=this._editor.getVisibleRanges();if(a.length!==0){const l=new lx(a[0].startLineNumber,a[a.length-1].endLineNumber),c=this._stickyLineCandidateProvider.getCandidateStickyLinesIntersecting(l);for(const d of c){const u=d.startLineNumber,f=d.endLineNumber,p=d.nestingDepth;if(f-u>0){const m=(p-1)*e,b=p*e,w=this._editor.getBottomForLineNumber(u)-i,y=this._editor.getTopForLineNumber(f)-i,S=this._editor.getBottomForLineNumber(f)-i;if(m>y&&m<=S){o.push(u),r.push(f+1),n=S-b;break}else b>w&&b<=S&&(o.push(u),r.push(f+1));if(o.length===t)break}}}return this._endLineNumbers=r,new ax(o,r,n,this._showEndForLine)}dispose(){super.dispose(),this._sessionStore.dispose()}},KV=mb,mb.ID="store.contrib.stickyScrollController",mb);yf=KV=MJe([vC(1,Ca),vC(2,qe),vC(3,it),vC(4,Rn),vC(5,cl),vC(6,gt)],yf);class AJe extends wr{constructor(){super({id:"editor.action.toggleStickyScroll",title:{..._t("toggleEditorStickyScroll","Toggle Editor Sticky Scroll"),mnemonicTitle:v({key:"mitoggleStickyScroll",comment:["&& denotes a mnemonic"]},"&&Toggle Editor Sticky Scroll")},metadata:{description:_t("toggleEditorStickyScroll.description","Toggle/enable the editor sticky scroll which shows the nested scopes at the top of the viewport")},category:kJe.View,toggled:{condition:be.equals("config.editor.stickyScroll.enabled",!0),title:v("stickyScroll","Sticky Scroll"),mnemonicTitle:v({key:"miStickyScroll",comment:["&& denotes a mnemonic"]},"&&Sticky Scroll")},menu:[{id:Ge.CommandPalette},{id:Ge.MenubarAppearanceMenu,group:"4_editor",order:3},{id:Ge.StickyScrollContext}]})}async run(e){const t=e.get(Wt),i=!t.getValue("editor.stickyScroll.enabled");return t.updateValue("editor.stickyScroll.enabled",i)}}const NP=100;class OJe extends Td{constructor(){super({id:"editor.action.focusStickyScroll",title:{..._t("focusStickyScroll","Focus on the editor sticky scroll"),mnemonicTitle:v({key:"mifocusStickyScroll",comment:["&& denotes a mnemonic"]},"&&Focus Sticky Scroll")},precondition:be.and(be.has("config.editor.stickyScroll.enabled"),W.stickyScrollVisible),menu:[{id:Ge.CommandPalette}]})}runEditorCommand(e,t){yf.get(t)?.focus()}}class PJe extends Td{constructor(){super({id:"editor.action.selectNextStickyScrollLine",title:_t("selectNextStickyScrollLine.title","Select the next editor sticky scroll line"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:18}})}runEditorCommand(e,t){yf.get(t)?.focusNext()}}class FJe extends Td{constructor(){super({id:"editor.action.selectPreviousStickyScrollLine",title:_t("selectPreviousStickyScrollLine.title","Select the previous sticky scroll line"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:16}})}runEditorCommand(e,t){yf.get(t)?.focusPrevious()}}class BJe extends Td{constructor(){super({id:"editor.action.goToFocusedStickyScrollLine",title:_t("goToFocusedStickyScrollLine.title","Go to the focused sticky scroll line"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:3}})}runEditorCommand(e,t){yf.get(t)?.goToFocused()}}class WJe extends Td{constructor(){super({id:"editor.action.selectEditor",title:_t("selectEditor.title","Select Editor"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:9}})}runEditorCommand(e,t){yf.get(t)?.selectEditor()}}ai(yf.ID,yf,1);Zi(AJe);Zi(OJe);Zi(FJe);Zi(PJe);Zi(BJe);Zi(WJe);var spe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vS=function(s,e){return function(t,i){e(t,i,s)}};class HJe{constructor(e,t,i,n,o,r){this.range=e,this.insertText=t,this.filterText=i,this.additionalTextEdits=n,this.command=o,this.completion=r}}let GV=class extends dEe{constructor(e,t,i,n,o,r){super(o.disposable),this.model=e,this.line=t,this.word=i,this.completionModel=n,this._suggestMemoryService=r}canBeReused(e,t,i){return this.model===e&&this.line===t&&this.word.word.length>0&&this.word.startColumn===i.startColumn&&this.word.endColumn<i.endColumn&&this.completionModel.getIncompleteProvider().size===0}get items(){const e=[],{items:t}=this.completionModel,i=this._suggestMemoryService.select(this.model,{lineNumber:this.line,column:this.word.endColumn+this.completionModel.lineContext.characterCountDelta},t),n=ii.slice(t,i),o=ii.slice(t,0,i);let r=5;for(const a of ii.concat(n,o)){if(a.score===bd.Default)continue;const l=new M(a.editStart.lineNumber,a.editStart.column,a.editInsertEnd.lineNumber,a.editInsertEnd.column+this.completionModel.lineContext.characterCountDelta),c=a.completion.insertTextRules&&a.completion.insertTextRules&4?{snippet:a.completion.insertText}:a.completion.insertText;e.push(new HJe(l,c,a.filterTextLow??a.labelLow,a.completion.additionalTextEdits,a.completion.command,a)),r-->=0&&a.resolve(Mt.None)}return e}};GV=spe([vS(5,xP)],GV);let YV=class extends se{constructor(e,t,i,n){super(),this._languageFeatureService=e,this._clipboardService=t,this._suggestMemoryService=i,this._editorService=n,this._store.add(e.inlineCompletionsProvider.register("*",this))}async provideInlineCompletions(e,t,i,n){if(i.selectedSuggestionInfo)return;let o;for(const p of this._editorService.listCodeEditors())if(p.getModel()===e){o=p;break}if(!o)return;const r=o.getOption(90);if(JC.isAllOff(r))return;e.tokenization.tokenizeIfCheap(t.lineNumber);const a=e.tokenization.getLineTokens(t.lineNumber),l=a.getStandardTokenType(a.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(JC.valueFor(r,l)!=="inline")return;let c=e.getWordAtPosition(t),d;if(c?.word||(d=this._getTriggerCharacterInfo(e,t)),!c?.word&&!d||(c||(c=e.getWordUntilPosition(t)),c.endColumn!==t.column))return;let u;const f=e.getValueInRange(new M(t.lineNumber,1,t.lineNumber,t.column));if(!d&&this._lastResult?.canBeReused(e,t.lineNumber,c)){const p=new sse(f,t.column-this._lastResult.word.endColumn);this._lastResult.completionModel.lineContext=p,this._lastResult.acquire(),u=this._lastResult}else{const p=await _q(this._languageFeatureService.completionProvider,e,t,new QL(void 0,kM.createSuggestFilter(o).itemKind,d?.providers),d&&{triggerKind:1,triggerCharacter:d.ch},n);let m;p.needsClipboard&&(m=await this._clipboardService.readText());const b=new Eg(p.items,t.column,new sse(f,0),LM.None,o.getOption(119),o.getOption(113),{boostFullMatch:!1,firstMatchCanBeWeak:!1},m);u=new GV(e,t.lineNumber,c,b,p,this._suggestMemoryService)}return this._lastResult=u,u}handleItemDidShow(e,t){t.completion.resolve(Mt.None)}freeInlineCompletions(e){e.release()}_getTriggerCharacterInfo(e,t){const i=e.getValueInRange(M.fromPositions({lineNumber:t.lineNumber,column:t.column-1},t)),n=new Set;for(const o of this._languageFeatureService.completionProvider.all(e))o.triggerCharacters?.includes(i)&&n.add(o);if(n.size!==0)return{providers:n,ch:i}}};YV=spe([vS(0,qe),vS(1,If),vS(2,xP),vS(3,gi)],YV);_y(YV);class VJe extends ze{constructor(){super({id:"editor.action.forceRetokenize",label:v("forceRetokenize","Developer: Force Retokenize"),alias:"Developer: Force Retokenize",precondition:void 0})}run(e,t){if(!t.hasModel())return;const i=t.getModel();i.tokenization.resetTokenization();const n=new Ys;i.tokenization.forceTokenization(i.getLineCount()),n.stop(),console.log(`tokenization took ${n.elapsed()}`)}}ye(VJe);const vA=class vA extends wr{constructor(){super({id:vA.ID,title:_t({key:"toggle.tabMovesFocus",comment:["Turn on/off use of tab key for moving focus around VS Code"]},"Toggle Tab Key Moves Focus"),precondition:void 0,keybinding:{primary:2091,mac:{primary:1323},weight:100},metadata:{description:_t("tabMovesFocusDescriptions","Determines whether the tab key moves focus around the workbench or inserts the tab character in the current editor. This is also called tab trapping, tab navigation, or tab focus mode.")},f1:!0})}run(){const t=!D1.getTabFocusMode();D1.setTabFocusMode(t),vr(t?v("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element"):v("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))}};vA.ID="editor.action.toggleTabFocusMode";let ZV=vA;Zi(ZV);var zJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Cse=function(s,e){return function(t,i){e(t,i,s)}};let XV=class extends se{get enabled(){return this._enabled}set enabled(e){e?(this.el.setAttribute("aria-disabled","false"),this.el.tabIndex=0,this.el.style.pointerEvents="auto",this.el.style.opacity="1",this.el.style.cursor="pointer",this._enabled=!1):(this.el.setAttribute("aria-disabled","true"),this.el.tabIndex=-1,this.el.style.pointerEvents="none",this.el.style.opacity="0.4",this.el.style.cursor="default",this._enabled=!0),this._enabled=e}constructor(e,t,i={},n,o){super(),this._link=t,this._hoverService=n,this._enabled=!0,this.el=we(e,Ne("a.monaco-link",{tabIndex:t.tabIndex??0,href:t.href},t.label)),this.hoverDelegate=i.hoverDelegate??yr("mouse"),this.setTooltip(t.title),this.el.setAttribute("role","button");const r=this._register(new Xt(this.el,"click")),a=this._register(new Xt(this.el,"keypress")),l=Me.chain(a.event,u=>u.map(f=>new Yi(f)).filter(f=>f.keyCode===3)),c=this._register(new Xt(this.el,Ji.Tap)).event;this._register(Oo.addTarget(this.el));const d=Me.any(r.event,l,c);this._register(d(u=>{this.enabled&&(Jt.stop(u,!0),i?.opener?i.opener(this._link.href):o.open(this._link.href,{allowCommands:!0}))})),this.enabled=!0}setTooltip(e){this.hoverDelegate.showNativeHover?this.el.title=e??"":!this.hover&&e?this.hover=this._register(this._hoverService.setupManagedHover(this.hoverDelegate,this.el,e)):this.hover&&this.hover.update(e)}};XV=zJe([Cse(3,Vu),Cse(4,qr)],XV);var ope=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},rpe=function(s,e){return function(t,i){e(t,i,s)}};const UJe=26;let QV=class extends se{constructor(e,t){super(),this._editor=e,this.instantiationService=t,this.banner=this._register(this.instantiationService.createInstance(JV))}hide(){this._editor.setBanner(null,0),this.banner.clear()}show(e){this.banner.show({...e,onClose:()=>{this.hide(),e.onClose?.()}}),this._editor.setBanner(this.banner.element,UJe)}};QV=ope([rpe(1,it)],QV);let JV=class extends se{constructor(e){super(),this.instantiationService=e,this.markdownRenderer=this.instantiationService.createInstance(mf,{}),this.element=Ne("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 t=Ne("span");return t.innerText=e,t}return this.markdownRenderer.render(e).element}clear(){ao(this.element)}show(e){ao(this.element);const t=this.getAriaLabel(e);t&&this.element.setAttribute("aria-label",t);const i=we(this.element,Ne("div.icon-container"));i.setAttribute("aria-hidden","true"),e.icon&&i.appendChild(Ne(`div${ft.asCSSSelector(e.icon)}`));const n=we(this.element,Ne("div.message-container"));if(n.setAttribute("aria-hidden","true"),n.appendChild(this.getBannerMessage(e.message)),this.messageActionsContainer=we(this.element,Ne("div.message-actions-container")),e.actions)for(const r of e.actions)this._register(this.instantiationService.createInstance(XV,this.messageActionsContainer,{...r,tabIndex:-1},{}));const o=we(this.element,Ne("div.action-container"));this.actionBar=this._register(new tl(o)),this.actionBar.push(this._register(new ha("banner.close","Close Banner",ft.asClassName(Eue),!0,()=>{typeof e.onClose=="function"&&e.onClose()})),{icon:!0,label:!1}),this.actionBar.setFocusable(!1)}};JV=ope([rpe(0,it)],JV);var Tq=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},jw=function(s,e){return function(t,i){e(t,i,s)}};const jJe=cn("extensions-warning-message",De.warning,v("warningIcon","Icon shown with a warning message in the extensions editor."));var t1;let lk=(t1=class extends se{constructor(e,t,i,n){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=i,this._highlighter=null,this._bannerClosed=!1,this._updateState=o=>{if(o&&o.hasMore){if(this._bannerClosed)return;const r=Math.max(o.ambiguousCharacterCount,o.nonBasicAsciiCharacterCount,o.invisibleCharacterCount);let a;if(o.nonBasicAsciiCharacterCount>=r)a={message:v("unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters","This document contains many non-basic ASCII unicode characters"),command:new dk};else if(o.ambiguousCharacterCount>=r)a={message:v("unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters","This document contains many ambiguous unicode characters"),command:new Xb};else if(o.invisibleCharacterCount>=r)a={message:v("unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters","This document contains many invisible unicode characters"),command:new ck};else throw new Error("Unreachable");this._bannerController.show({id:"unicodeHighlightBanner",message:a.message,icon:jJe,actions:[{label:a.command.shortLabel,href:`command:${a.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(n.createInstance(QV,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(126),this._register(i.onDidChangeTrust(o=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(o=>{o.hasChanged(126)&&(this._options=e.getOption(126),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=$Je(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(i=>i===!1))return;const t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(i=>i.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(i=>i==="_os"?new Intl.NumberFormat().resolvedOptions().locale:i==="_vscode"?lDe:i)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new ez(this._editor,t,this._updateState,this._editorWorkerService):this._highlighter=new qJe(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}},t1.ID="editor.contrib.unicodeHighlighter",t1);lk=Tq([jw(1,Kr),jw(2,jce),jw(3,it)],lk);function $Je(s,e){return{nonBasicASCII:e.nonBasicASCII===Pa?!s:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments===Pa?!s:e.includeComments,includeStrings:e.includeStrings===Pa?!s:e.includeStrings,allowedCharacters:e.allowedCharacters,allowedLocales:e.allowedLocales}}let ez=class extends se{constructor(e,t,i,n){super(),this._editor=e,this._options=t,this._updateState=i,this._editorWorkerService=n,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ai(()=>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(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);const i=[];if(!t.hasMore)for(const n of t.ranges)i.push({range:n,options:zM.instance.getDecorationFromOptions(this._options)});this._decorations.set(i)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel();if(!v$(t,e))return null;const i=t.getValueInRange(e.range);return{reason:lpe(i,this._options),inComment:C$(t,e),inString:w$(t,e)}}};ez=Tq([jw(3,Kr)],ez);class qJe extends se{constructor(e,t,i){super(),this._editor=e,this._options=t,this._updateState=i,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ai(()=>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(),t=[],i={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(const n of e){const o=RU.computeUnicodeHighlights(this._model,this._options,n);for(const r of o.ranges)i.ranges.push(r);i.ambiguousCharacterCount+=i.ambiguousCharacterCount,i.invisibleCharacterCount+=i.invisibleCharacterCount,i.nonBasicAsciiCharacterCount+=i.nonBasicAsciiCharacterCount,i.hasMore=i.hasMore||o.hasMore}if(!i.hasMore)for(const n of i.ranges)t.push({range:n,options:zM.instance.getDecorationFromOptions(this._options)});this._updateState(i),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel(),i=t.getValueInRange(e.range);return v$(t,e)?{reason:lpe(i,this._options),inComment:C$(t,e),inString:w$(t,e)}:null}}const ape=v("unicodeHighlight.configureUnicodeHighlightOptions","Configure Unicode Highlight Options");let tz=class{constructor(e,t,i){this._editor=e,this._languageService=t,this._openerService=i,this.hoverOrdinal=5}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=this._editor.getContribution(lk.ID);if(!n)return[];const o=[],r=new Set;let a=300;for(const l of t){const c=n.getDecorationInfo(l);if(!c)continue;const u=i.getValueInRange(l.range).codePointAt(0),f=pB(u);let p;switch(c.reason.kind){case 0:{Tk(c.reason.confusableWith)?p=v("unicodeHighlight.characterIsAmbiguousASCII","The character {0} could be confused with the ASCII character {1}, which is more common in source code.",f,pB(c.reason.confusableWith.codePointAt(0))):p=v("unicodeHighlight.characterIsAmbiguous","The character {0} could be confused with the character {1}, which is more common in source code.",f,pB(c.reason.confusableWith.codePointAt(0)));break}case 1:p=v("unicodeHighlight.characterIsInvisible","The character {0} is invisible.",f);break;case 2:p=v("unicodeHighlight.characterIsNonBasicAscii","The character {0} is not a basic ASCII character.",f);break}if(r.has(p))continue;r.add(p);const m={codePoint:u,reason:c.reason,inComment:c.inComment,inString:c.inString},b=v("unicodeHighlight.adjustSettings","Adjust settings"),w=`command:${UM.ID}?${encodeURIComponent(JSON.stringify(m))}`,y=new Mo("",!0).appendMarkdown(p).appendText(" ").appendLink(w,b,ape);o.push(new Cc(this,l.range,[y],!1,a++))}return o}renderHoverParts(e,t){return wqe(e,t,this._editor,this._languageService,this._openerService)}};tz=Tq([jw(1,xn),jw(2,qr)],tz);function iz(s){return`U+${s.toString(16).padStart(4,"0")}`}function pB(s){let e=`\`${iz(s)}\``;return h_.isInvisibleCharacter(s)||(e+=` "${`${KJe(s)}`}"`),e}function KJe(s){return s===96?"`` ` ``":"`"+String.fromCodePoint(s)+"`"}function lpe(s,e){return RU.computeUnicodeHighlightReason(s,e)}const CA=class CA{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){const i=`${e}${t}`;let n=this.map.get(i);return n||(n=Et.createDynamic({description:"unicode-highlight",stickiness:1,className:"unicode-highlight",showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(i,n)),n}};CA.instance=new CA;let zM=CA;class GJe extends ze{constructor(){super({id:Xb.ID,label:v("action.unicodeHighlight.disableHighlightingInComments","Disable highlighting of characters in comments"),alias:"Disable highlighting of characters in comments",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingInComments.shortLabel","Disable Highlight In Comments")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.includeComments,!1,2)}}class YJe extends ze{constructor(){super({id:Xb.ID,label:v("action.unicodeHighlight.disableHighlightingInStrings","Disable highlighting of characters in strings"),alias:"Disable highlighting of characters in strings",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingInStrings.shortLabel","Disable Highlight In Strings")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.includeStrings,!1,2)}}const wA=class wA extends ze{constructor(){super({id:wA.ID,label:v("action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters","Disable highlighting of ambiguous characters"),alias:"Disable highlighting of ambiguous characters",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel","Disable Ambiguous Highlight")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.ambiguousCharacters,!1,2)}};wA.ID="editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters";let Xb=wA;const yA=class yA extends ze{constructor(){super({id:yA.ID,label:v("action.unicodeHighlight.disableHighlightingOfInvisibleCharacters","Disable highlighting of invisible characters"),alias:"Disable highlighting of invisible characters",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel","Disable Invisible Highlight")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.invisibleCharacters,!1,2)}};yA.ID="editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters";let ck=yA;const SA=class SA extends ze{constructor(){super({id:SA.ID,label:v("action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters","Disable highlighting of non basic ASCII characters"),alias:"Disable highlighting of non basic ASCII characters",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel","Disable Non ASCII Highlight")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.nonBasicASCII,!1,2)}};SA.ID="editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters";let dk=SA;const xA=class xA extends ze{constructor(){super({id:xA.ID,label:v("action.unicodeHighlight.showExcludeOptions","Show Exclude Options"),alias:"Show Exclude Options",precondition:void 0})}async run(e,t,i){const{codePoint:n,reason:o,inString:r,inComment:a}=i,l=String.fromCodePoint(n),c=e.get(Gl),d=e.get(Wt);function u(m){return h_.isInvisibleCharacter(m)?v("unicodeHighlight.excludeInvisibleCharFromBeingHighlighted","Exclude {0} (invisible character) from being highlighted",iz(m)):v("unicodeHighlight.excludeCharFromBeingHighlighted","Exclude {0} from being highlighted",`${iz(m)} "${l}"`)}const f=[];if(o.kind===0)for(const m of o.notAmbiguousInLocales)f.push({label:v("unicodeHighlight.allowCommonCharactersInLanguage",'Allow unicode characters that are more common in the language "{0}".',m),run:async()=>{XJe(d,[m])}});if(f.push({label:u(n),run:()=>ZJe(d,[n])}),a){const m=new GJe;f.push({label:m.label,run:async()=>m.runAction(d)})}else if(r){const m=new YJe;f.push({label:m.label,run:async()=>m.runAction(d)})}if(o.kind===0){const m=new Xb;f.push({label:m.label,run:async()=>m.runAction(d)})}else if(o.kind===1){const m=new ck;f.push({label:m.label,run:async()=>m.runAction(d)})}else if(o.kind===2){const m=new dk;f.push({label:m.label,run:async()=>m.runAction(d)})}else QJe(o);const p=await c.pick(f,{title:ape});p&&await p.run()}};xA.ID="editor.action.unicodeHighlight.showExcludeOptions";let UM=xA;async function ZJe(s,e){const t=s.getValue(Nr.allowedCharacters);let i;typeof t=="object"&&t?i=t:i={};for(const n of e)i[String.fromCodePoint(n)]=!0;await s.updateValue(Nr.allowedCharacters,i,2)}async function XJe(s,e){const t=s.inspect(Nr.allowedLocales).user?.value;let i;typeof t=="object"&&t?i=Object.assign({},t):i={};for(const n of e)i[n]=!0;await s.updateValue(Nr.allowedLocales,i,2)}function QJe(s){throw new Error(`Unexpected value: ${s}`)}ye(Xb);ye(ck);ye(dk);ye(UM);ai(lk.ID,lk,1);fv.register(tz);var JJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},wse=function(s,e){return function(t,i){e(t,i,s)}};const cpe="ignoreUnusualLineTerminators";function eet(s,e,t){s.setModelProperty(e.uri,cpe,t)}function tet(s,e){return s.getModelProperty(e.uri,cpe)}var i1;let jM=(i1=class extends se{constructor(e,t,i){super(),this._editor=e,this._dialogService=t,this._codeEditorService=i,this._isPresentingDialog=!1,this._config=this._editor.getOption(127),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(127)&&(this._config=this._editor.getOption(127),this._checkForUnusualLineTerminators())})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent(n=>{n.isUndoing||this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}async _checkForUnusualLineTerminators(){if(this._config==="off"||!this._editor.hasModel())return;const e=this._editor.getModel();if(!e.mightContainUnusualLineTerminators()||tet(this._codeEditorService,e)===!0||this._editor.getOption(92))return;if(this._config==="auto"){e.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let i;try{this._isPresentingDialog=!0,i=await this._dialogService.confirm({title:v("unusualLineTerminators.title","Unusual Line Terminators"),message:v("unusualLineTerminators.message","Detected unusual line terminators"),detail:v("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`.",zl(e.uri)),primaryButton:v({key:"unusualLineTerminators.fix",comment:["&& denotes a mnemonic"]},"&&Remove Unusual Line Terminators"),cancelButton:v("unusualLineTerminators.ignore","Ignore")})}finally{this._isPresentingDialog=!1}if(!i.confirmed){eet(this._codeEditorService,e,!0);return}e.removeUnusualLineTerminators(this._editor.getSelections())}},i1.ID="editor.contrib.unusualLineTerminatorsDetector",i1);jM=JJe([wse(1,Pk),wse(2,gi)],jM);ai(jM.ID,jM,1);var iet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},net=function(s,e){return function(t,i){e(t,i,s)}};class yse{constructor(){this.selector={language:"*"}}provideDocumentHighlights(e,t,i){const n=[],o=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});return o?e.isDisposed()?void 0:e.findMatches(o.word,!0,!1,!0,QI,!1).map(a=>({range:a.range,kind:r1.Text})):Promise.resolve(n)}provideMultiDocumentHighlights(e,t,i,n){const o=new Ks,r=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});if(!r)return Promise.resolve(o);for(const a of[e,...i]){if(a.isDisposed())continue;const c=a.findMatches(r.word,!0,!1,!0,QI,!1).map(d=>({range:d.range,kind:r1.Text}));c&&o.set(a.uri,c)}return o}}let nz=class extends se{constructor(e){super(),this._register(e.documentHighlightProvider.register("*",new yse)),this._register(e.multiDocumentHighlightProvider.register("*",new yse))}};nz=iet([net(0,qe)],nz);var dpe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},WI=function(s,e){return function(t,i){e(t,i,s)}},is,sz;const Rq=new Be("hasWordHighlights",!1);function upe(s,e,t,i){const n=s.ordered(e);return bU(n.map(o=>()=>Promise.resolve(o.provideDocumentHighlights(e,t,i)).then(void 0,Qn)),o=>o!=null).then(o=>{if(o){const r=new Ks;return r.set(e.uri,o),r}return new Ks})}function set(s,e,t,i,n,o){const r=s.ordered(e);return bU(r.map(a=>()=>{const l=o.filter(c=>Ile(c)).filter(c=>VU(a.selector,c.uri,c.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(a.provideMultiDocumentHighlights(e,t,l,n)).then(void 0,Qn)}),a=>a!=null)}class hpe{constructor(e,t,i){this._model=e,this._selection=t,this._wordSeparators=i,this._wordRange=this._getCurrentWordRange(e,t),this._result=null}get result(){return this._result||(this._result=As(e=>this._compute(this._model,this._selection,this._wordSeparators,e))),this._result}_getCurrentWordRange(e,t){const i=e.getWordAtPosition(t.getPosition());return i?new M(t.startLineNumber,i.startColumn,t.startLineNumber,i.endColumn):null}isValid(e,t,i){const n=t.startLineNumber,o=t.startColumn,r=t.endColumn,a=this._getCurrentWordRange(e,t);let l=!!(this._wordRange&&this._wordRange.equalsRange(a));for(let c=0,d=i.length;!l&&c<d;c++){const u=i.getRange(c);u&&u.startLineNumber===n&&u.startColumn<=o&&u.endColumn>=r&&(l=!0)}return l}cancel(){this.result.cancel()}}class oet extends hpe{constructor(e,t,i,n){super(e,t,i),this._providers=n}_compute(e,t,i,n){return upe(this._providers,e,t.getPosition(),n).then(o=>o||new Ks)}}class ret extends hpe{constructor(e,t,i,n,o){super(e,t,i),this._providers=n,this._otherModels=o}_compute(e,t,i,n){return set(this._providers,e,t.getPosition(),i,n,this._otherModels).then(o=>o||new Ks)}}function aet(s,e,t,i,n){return new oet(e,t,n,s)}function cet(s,e,t,i,n,o){return new ret(e,t,n,s,o)}$r("_executeDocumentHighlights",async(s,e,t)=>{const i=s.get(qe);return(await upe(i.documentHighlightProvider,e,t,Mt.None))?.get(e.uri)});var gp;let oz=(gp=class{constructor(e,t,i,n,o){this.toUnhook=new _e,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new Ks,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.runDelayer=this.toUnhook.add(new Wl(50)),this.editor=e,this.providers=t,this.multiDocumentProviders=i,this.codeEditorService=o,this._hasWordHighlights=Rq.bindTo(n),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(81),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(r=>{this._ignorePositionChangeEvent||this.occurrencesHighlight!=="off"&&this.runDelayer.trigger(()=>{this._onPositionChanged(r)})})),this.toUnhook.add(e.onDidFocusEditorText(r=>{this.occurrencesHighlight!=="off"&&(this.workerRequest||this.runDelayer.trigger(()=>{this._run()}))})),this.toUnhook.add(e.onDidChangeModelContent(r=>{QA(this.model.uri,"output")||this._stopAll()})),this.toUnhook.add(e.onDidChangeModel(r=>{!r.newModelUrl&&r.oldModelUrl?this._stopSingular():is.query&&this._run()})),this.toUnhook.add(e.onDidChangeConfiguration(r=>{const a=this.editor.getOption(81);if(this.occurrencesHighlight!==a)switch(this.occurrencesHighlight=a,a){case"off":this._stopAll();break;case"singleFile":this._stopAll(is.query?.modelInfo?.model);break;case"multiFile":is.query&&this._run(!0);break;default:console.warn("Unknown occurrencesHighlight setting value:",a);break}})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,is.query&&this._run()}hasDecorations(){return this.decorations.length>0}restore(){this.occurrencesHighlight!=="off"&&(this.runDelayer.cancel(),this._run())}_getSortedHighlights(){return this.decorations.getRanges().sort(M.compareRangesUsingStarts)}moveNext(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))+1)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);vr(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);vr(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;const e=is.storedDecorationIDs.get(this.editor.getModel().uri);e&&(this.editor.removeDecorations(e),is.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1)))}_removeAllDecorations(e){const t=this.codeEditorService.listCodeEditors(),i=[];for(const n of t){if(!n.hasModel()||lL(n.getModel().uri,e?.uri))continue;const o=is.storedDecorationIDs.get(n.getModel().uri);if(!o)continue;n.removeDecorations(o),i.push(n.getModel().uri);const r=Fp.get(n);r?.wordHighlighter&&r.wordHighlighter.decorations.length>0&&(r.wordHighlighter.decorations.clear(),r.wordHighlighter.workerRequest=null,r.wordHighlighter._hasWordHighlights.set(!1))}for(const n of i)is.storedDecorationIDs.delete(n)}_stopSingular(){this._removeSingleDecorations(),this.editor.hasTextFocus()&&(this.editor.getModel()?.uri.scheme!==kt.vscodeNotebookCell&&is.query?.modelInfo?.model.uri.scheme!==kt.vscodeNotebookCell?(is.query=null,this._run()):is.query?.modelInfo&&(is.query.modelInfo=null)),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)}_stopAll(e){this._removeAllDecorations(e),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==="off"){this._stopAll();return}if(e.reason!==3&&this.editor.getModel()?.uri.scheme!==kt.vscodeNotebookCell){this._stopAll();return}this._run()}_getWord(){const e=this.editor.getSelection(),t=e.startLineNumber,i=e.startColumn;return this.model.isDisposed()?null:this.model.getWordAtPosition({lineNumber:t,column:i})}getOtherModelsToHighlight(e){if(!e)return[];if(e.uri.scheme===kt.vscodeNotebookCell){const o=[],r=this.codeEditorService.listCodeEditors();for(const a of r){const l=a.getModel();l&&l!==e&&l.uri.scheme===kt.vscodeNotebookCell&&o.push(l)}return o}const i=[],n=this.codeEditorService.listCodeEditors();for(const o of n){if(!B$(o))continue;const r=o.getModel();r&&e===r.modified&&i.push(r.modified)}if(i.length)return i;if(this.occurrencesHighlight==="singleFile")return[];for(const o of n){const r=o.getModel();r&&r!==e&&i.push(r)}return i}_run(e){let t;if(this.editor.hasTextFocus()){const n=this.editor.getSelection();if(!n||n.startLineNumber!==n.endLineNumber){is.query=null,this._stopAll();return}const o=n.startColumn,r=n.endColumn,a=this._getWord();if(!a||a.startColumn>o||a.endColumn<r){is.query=null,this._stopAll();return}t=this.workerRequest&&this.workerRequest.isValid(this.model,n,this.decorations),is.query={modelInfo:{model:this.model,selection:n},word:a}}else if(!is.query){this._stopAll();return}if(this.lastCursorPositionChangeTime=new Date().getTime(),t)this.workerRequestCompleted&&this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1,this._beginRenderDecorations());else if(lL(this.editor.getModel().uri,is.query.modelInfo?.model.uri)){if(!e){const r=this.decorations.getRanges();for(const a of r)if(a.containsPosition(this.editor.getPosition()))return}this._stopAll(e?this.model:void 0);const n=++this.workerRequestTokenId;this.workerRequestCompleted=!1;const o=this.getOtherModelsToHighlight(this.editor.getModel());if(!is.query||!is.query.modelInfo||is.query.modelInfo.model.isDisposed())return;this.workerRequest=this.computeWithModel(is.query.modelInfo.model,is.query.modelInfo.selection,is.query.word,o),this.workerRequest?.result.then(r=>{n===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=r||[],this._beginRenderDecorations())},xt)}}computeWithModel(e,t,i,n){return n.length?cet(this.multiDocumentProviders,e,t,i,this.editor.getOption(132),n):aet(this.providers,e,t,i,this.editor.getOption(132))}_beginRenderDecorations(){const e=new Date().getTime(),t=this.lastCursorPositionChangeTime+250;e>=t?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},t-e)}renderDecorations(){this.renderDecorationsTimer=-1;const e=this.codeEditorService.listCodeEditors();for(const t of e){const i=Fp.get(t);if(!i)continue;const n=[],o=t.getModel()?.uri;if(o&&this.workerRequestValue.has(o)){const r=is.storedDecorationIDs.get(o),a=this.workerRequestValue.get(o);if(a)for(const c of a)c.range&&n.push({range:c.range,options:ZXe(c.kind)});let l=[];t.changeDecorations(c=>{l=c.deltaDecorations(r??[],n)}),is.storedDecorationIDs=is.storedDecorationIDs.set(o,l),n.length>0&&(i.wordHighlighter?.decorations.set(n),i.wordHighlighter?._hasWordHighlights.set(!0))}}}dispose(){this._stopSingular(),this.toUnhook.dispose()}},is=gp,gp.storedDecorationIDs=new Ks,gp.query=null,gp);oz=is=dpe([WI(4,gi)],oz);var _b;let Fp=(_b=class extends se{static get(e){return e.getContribution(sz.ID)}constructor(e,t,i,n){super(),this._wordHighlighter=null;const o=()=>{e.hasModel()&&!e.getModel().isTooLargeForTokenization()&&(this._wordHighlighter=new oz(e,i.documentHighlightProvider,i.multiDocumentHighlightProvider,t,n))};this._register(e.onDidChangeModel(r=>{this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),o()})),o()}get wordHighlighter(){return this._wordHighlighter}saveViewState(){return!!(this._wordHighlighter&&this._wordHighlighter.hasDecorations())}moveNext(){this._wordHighlighter?.moveNext()}moveBack(){this._wordHighlighter?.moveBack()}restoreViewState(e){this._wordHighlighter&&e&&this._wordHighlighter.restore()}dispose(){this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),super.dispose()}},sz=_b,_b.ID="editor.contrib.wordHighlighter",_b);Fp=sz=dpe([WI(1,gt),WI(2,qe),WI(3,gi)],Fp);class fpe extends ze{constructor(e,t){super(t),this._isNext=e}run(e,t){const i=Fp.get(t);i&&(this._isNext?i.moveNext():i.moveBack())}}class det extends fpe{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:v("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:Rq,kbOpts:{kbExpr:W.editorTextFocus,primary:65,weight:100}})}}class uet extends fpe{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:v("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:Rq,kbOpts:{kbExpr:W.editorTextFocus,primary:1089,weight:100}})}}class het extends ze{constructor(){super({id:"editor.action.wordHighlight.trigger",label:v("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:0,weight:100}})}run(e,t,i){const n=Fp.get(t);n&&n.restoreViewState(!0)}}ai(Fp.ID,Fp,0);ye(det);ye(uet);ye(het);_y(nz);class IP extends Ds{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){if(!t.hasModel())return;const n=Vl(t.getOption(132),t.getOption(131)),o=t.getModel(),r=t.getSelections(),a=r.length>1,l=r.map(c=>{const d=new ee(c.positionLineNumber,c.positionColumn),u=this._move(n,o,d,this._wordNavigationType,a);return this._moveTo(c,u,this._inSelectionMode)});if(o.pushStackElement(),t._getViewModel().setCursorStates("moveWordCommand",3,l.map(c=>hi.fromModelSelection(c))),l.length===1){const c=new ee(l[0].positionLineNumber,l[0].positionColumn);t.revealPosition(c,0)}}_moveTo(e,t,i){return i?new Ye(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new Ye(t.lineNumber,t.column,t.lineNumber,t.column)}}class Kp extends IP{_move(e,t,i,n,o){return Ci.moveWordLeft(e,t,i,n,o)}}class Gp extends IP{_move(e,t,i,n,o){return Ci.moveWordRight(e,t,i,n)}}class fet extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0})}}class get extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})}}class pet extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:2063,mac:{primary:527},weight:100}})}}class met extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0})}}class _et extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})}}class bet extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:3087,mac:{primary:1551},weight:100}})}}class vet extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class Cet extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class wet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})}}class yet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:2065,mac:{primary:529},weight:100}})}}class xet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})}}class Let extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})}}class ket extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:3089,mac:{primary:1553},weight:100}})}}class Det extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})}}class Eet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class Net extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class TP extends Ds{constructor(e){super(e),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){const n=e.get(Rn);if(!t.hasModel())return;const o=Vl(t.getOption(132),t.getOption(131)),r=t.getModel(),a=t.getSelections(),l=t.getOption(6),c=t.getOption(11),d=n.getLanguageConfiguration(r.getLanguageId()).getAutoClosingPairs(),u=t._getViewModel(),f=a.map(p=>{const m=this._delete({wordSeparators:o,model:r,selection:p,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:t.getOption(9),autoClosingBrackets:l,autoClosingQuotes:c,autoClosingPairs:d,autoClosedCharacters:u.getCursorAutoClosedCharacters()},this._wordNavigationType);return new yo(m,"")});t.pushUndoStop(),t.executeCommands(this.id,f),t.pushUndoStop()}}class Mq extends TP{_delete(e,t){const i=Ci.deleteWordLeft(e,t);return i||new M(1,1,1,1)}}class Aq extends TP{_delete(e,t){const i=Ci.deleteWordRight(e,t);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new M(n,o,n,o)}}class Iet extends Mq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:W.writable})}}class Tet extends Mq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:W.writable})}}class Ret extends Mq{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}}class Met extends Aq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:W.writable})}}class Aet extends Aq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:W.writable})}}class Oet extends Aq{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}}class Pet extends ze{constructor(){super({id:"deleteInsideWord",precondition:W.writable,label:v("deleteInsideWord","Delete Word"),alias:"Delete Word"})}run(e,t,i){if(!t.hasModel())return;const n=Vl(t.getOption(132),t.getOption(131)),o=t.getModel(),a=t.getSelections().map(l=>{const c=Ci.deleteInsideWord(n,o,l);return new yo(c,"")});t.pushUndoStop(),t.executeCommands(this.id,a),t.pushUndoStop()}}Fe(new fet);Fe(new get);Fe(new pet);Fe(new met);Fe(new _et);Fe(new bet);Fe(new wet);Fe(new yet);Fe(new xet);Fe(new Let);Fe(new ket);Fe(new Det);Fe(new vet);Fe(new Cet);Fe(new Eet);Fe(new Net);Fe(new Iet);Fe(new Tet);Fe(new Ret);Fe(new Met);Fe(new Aet);Fe(new Oet);ye(Pet);class Fet extends TP{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordPartLeft",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,t){const i=tP.deleteWordPartLeft(e);return i||new M(1,1,1,1)}}class Bet extends TP{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordPartRight",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,t){const i=tP.deleteWordPartRight(e);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new M(n,o,n,o)}}class gpe extends IP{_move(e,t,i,n,o){return tP.moveWordPartLeft(e,t,i,o)}}class Wet extends gpe{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordPartLeft",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:783},weight:100}})}}ni.registerCommandAlias("cursorWordPartStartLeft","cursorWordPartLeft");class Het extends gpe{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordPartLeftSelect",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}}ni.registerCommandAlias("cursorWordPartStartLeftSelect","cursorWordPartLeftSelect");class ppe extends IP{_move(e,t,i,n,o){return tP.moveWordPartRight(e,t,i)}}class Vet extends ppe{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordPartRight",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:785},weight:100}})}}class zet extends ppe{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordPartRightSelect",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}}Fe(new Fet);Fe(new Bet);Fe(new Wet);Fe(new Het);Fe(new Vet);Fe(new zet);const Uq=class Uq extends se{constructor(e){super(),this.editor=e,this._register(this.editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit()))}_onDidAttemptReadOnlyEdit(){const e=ga.get(this.editor);if(e&&this.editor.hasModel()){let t=this.editor.getOptions().get(93);t||(this.editor.isSimpleWidget?t=new Mo(v("editor.simple.readonly","Cannot edit in read-only input")):t=new Mo(v("editor.readonly","Cannot edit in read-only editor"))),e.showMessage(t,this.editor.getPosition())}}};Uq.ID="editor.contrib.readOnlyMessageController";let $M=Uq;ai($M.ID,$M,2);var Uet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Sse=function(s,e){return function(t,i){e(t,i,s)}};let rz=class extends se{constructor(e,t,i){super(),this._textModel=e,this._languageFeaturesService=t,this._outlineModelService=i,this._currentModel=Bt(this,void 0);const n=wo("documentSymbolProvider.onDidChange",this._languageFeaturesService.documentSymbolProvider.onDidChange),o=wo("_textModel.onDidChangeContent",Me.debounce(r=>this._textModel.onDidChangeContent(r),()=>{},100));this._register(Fr(async(r,a)=>{n.read(r),o.read(r);const l=a.add(new kHe),c=await this._outlineModelService.getOrCreate(this._textModel,l.token);a.isDisposed||this._currentModel.set(c,void 0)}))}getBreadcrumbItems(e,t){const i=this._currentModel.read(t);if(!i)return[];const n=i.asListOfDocumentSymbols().filter(o=>e.contains(o.range.startLineNumber)&&!e.contains(o.range.endLineNumber));return n.sort(Gre(fr(o=>o.range.endLineNumber-o.range.startLineNumber,xc))),n.map(o=>({name:o.name,kind:o.kind,startLineNumber:o.range.startLineNumber}))}};rz=Uet([Sse(1,qe),Sse(2,hD)],rz);$R.setBreadcrumbsSourceFactory((s,e)=>e.createInstance(rz,s));const jq=class jq extends se{constructor(e){super(),this.editor=e,this.widget=null,Cd&&(this._register(e.onDidChangeConfiguration(()=>this.update())),this.update())}update(){const e=!this.editor.getOption(92);!this.widget&&e?this.widget=new az(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)}dispose(){super.dispose(),this.widget&&(this.widget.dispose(),this.widget=null)}};jq.ID="editor.contrib.iPadShowKeyboard";let qM=jq;const LA=class LA extends se{constructor(e){super(),this.editor=e,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(de(this._domNode,"touchstart",t=>{this.editor.focus()})),this._register(de(this._domNode,"focus",t=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return LA.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}};LA.ID="editor.contrib.ShowKeyboardWidget";let az=LA;ai(qM.ID,qM,3);var jet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},xse=function(s,e){return function(t,i){e(t,i,s)}},lz,bb;let uk=(bb=class extends se{static get(e){return e.getContribution(lz.ID)}constructor(e,t,i){super(),this._editor=e,this._languageService=i,this._widget=null,this._register(this._editor.onDidChangeModel(n=>this.stop())),this._register(this._editor.onDidChangeModelLanguage(n=>this.stop())),this._register(Vn.onDidChange(n=>this.stop())),this._register(this._editor.onKeyUp(n=>n.keyCode===9&&this.stop()))}dispose(){this.stop(),super.dispose()}launch(){this._widget||this._editor.hasModel()&&(this._widget=new cz(this._editor,this._languageService))}stop(){this._widget&&(this._widget.dispose(),this._widget=null)}},lz=bb,bb.ID="editor.contrib.inspectTokens",bb);uk=lz=jet([xse(1,hl),xse(2,xn)],uk);class $et extends ze{constructor(){super({id:"editor.action.inspectTokens",label:p8.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(e,t){uk.get(t)?.launch()}}function qet(s){let e="";for(let t=0,i=s.length;t<i;t++){const n=s.charCodeAt(t);switch(n){case 9:e+="→";break;case 32:e+="·";break;default:e+=String.fromCharCode(n)}}return e}function Ket(s,e){const t=Vn.get(e);if(t)return t;const i=s.encodeLanguageId(e);return{getInitialState:()=>b1,tokenize:(n,o,r)=>dj(e,r),tokenizeEncoded:(n,o,r)=>AO(i,r)}}const kA=class kA extends se{constructor(e,t){super(),this.allowEditorOverflow=!0,this._editor=e,this._languageService=t,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=Ket(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition(i=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return kA._ID}_compute(e){const t=this._getTokensAtLine(e.lineNumber);let i=0;for(let l=t.tokens1.length-1;l>=0;l--){const c=t.tokens1[l];if(e.column-1>=c.offset){i=l;break}}let n=0;for(let l=t.tokens2.length>>>1;l>=0;l--)if(e.column-1>=t.tokens2[l<<1]){n=l;break}const o=this._model.getLineContent(e.lineNumber);let r="";if(i<t.tokens1.length){const l=t.tokens1[i].offset,c=i+1<t.tokens1.length?t.tokens1[i+1].offset:o.length;r=o.substring(l,c)}lo(this._domNode,Ne("h2.tm-token",void 0,qet(r),Ne("span.tm-token-length",void 0,`${r.length} ${r.length===1?"char":"chars"}`))),we(this._domNode,Ne("hr.tokens-inspect-separator",{style:"clear:both"}));const a=(n<<1)+1<t.tokens2.length?this._decodeMetadata(t.tokens2[(n<<1)+1]):null;we(this._domNode,Ne("table.tm-metadata-table",void 0,Ne("tbody",void 0,Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"language"),Ne("td.tm-metadata-value",void 0,`${a?a.languageId:"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"token type"),Ne("td.tm-metadata-value",void 0,`${a?this._tokenTypeToString(a.tokenType):"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"font style"),Ne("td.tm-metadata-value",void 0,`${a?this._fontStyleToString(a.fontStyle):"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"foreground"),Ne("td.tm-metadata-value",void 0,`${a?ve.Format.CSS.formatHex(a.foreground):"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"background"),Ne("td.tm-metadata-value",void 0,`${a?ve.Format.CSS.formatHex(a.background):"-?-"}`))))),we(this._domNode,Ne("hr.tokens-inspect-separator")),i<t.tokens1.length&&we(this._domNode,Ne("span.tm-token-type",void 0,t.tokens1[i].type)),this._editor.layoutContentWidget(this)}_decodeMetadata(e){const t=Vn.getColorMap(),i=Tr.getLanguageId(e),n=Tr.getTokenType(e),o=Tr.getFontStyle(e),r=Tr.getForeground(e),a=Tr.getBackground(e);return{languageId:this._languageService.languageIdCodec.decodeLanguageId(i),tokenType:n,fontStyle:o,foreground:t[r],background:t[a]}}_tokenTypeToString(e){switch(e){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 3:return"RegEx";default:return"??"}}_fontStyleToString(e){let t="";return e&1&&(t+="italic "),e&2&&(t+="bold "),e&4&&(t+="underline "),e&8&&(t+="strikethrough "),t.length===0&&(t="---"),t}_getTokensAtLine(e){const t=this._getStateBeforeLine(e),i=this._tokenizationSupport.tokenize(this._model.getLineContent(e),!0,t),n=this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(e),!0,t);return{startState:t,tokens1:i.tokens,tokens2:n.tokens,endState:i.endState}}_getStateBeforeLine(e){let t=this._tokenizationSupport.getInitialState();for(let i=1;i<e;i++)t=this._tokenizationSupport.tokenize(this._model.getLineContent(i),!0,t).endState;return t}getDomNode(){return this._domNode}getPosition(){return{position:this._editor.getPosition(),preference:[2,1]}}};kA._ID="editor.contrib.inspectTokensWidget";let cz=kA;ai(uk.ID,uk,4);ye($et);var Get=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Lse=function(s,e){return function(t,i){e(t,i,s)}},CS,vb;let dz=(vb=class{constructor(e,t){this.quickInputService=e,this.keybindingService=t,this.registry=Tn.as(rv.Quickaccess)}provide(e){const t=new _e;return t.add(e.onDidAccept(()=>{const[i]=e.selectedItems;i&&this.quickInputService.quickAccess.show(i.prefix,{preserveValue:!0})})),t.add(e.onDidChangeValue(i=>{const n=this.registry.getQuickAccessProvider(i.substr(CS.PREFIX.length));n&&n.prefix&&n.prefix!==CS.PREFIX&&this.quickInputService.quickAccess.show(n.prefix,{preserveValue:!0})})),e.items=this.getQuickAccessProviders().filter(i=>i.prefix!==CS.PREFIX),t}getQuickAccessProviders(){return this.registry.getQuickAccessProviders().sort((t,i)=>t.prefix.localeCompare(i.prefix)).flatMap(t=>this.createPicks(t))}createPicks(e){return e.helpEntries.map(t=>{const i=t.prefix||e.prefix,n=i||"…";return{prefix:i,label:n,keybinding:t.commandId?this.keybindingService.lookupKeybinding(t.commandId):void 0,ariaLabel:v("helpPickAriaLabel","{0}, {1}",n,t.description),description:t.description}})}},CS=vb,vb.PREFIX="?",vb);dz=CS=Get([Lse(0,Gl),Lse(1,yi)],dz);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:dz,prefix:"",helpEntries:[{description:m8.helpQuickAccessActionLabel}]});class mpe{constructor(e){this.options=e,this.rangeHighlightDecorationId=void 0}provide(e,t,i){const n=new _e;e.canAcceptInBackground=!!this.options?.canAcceptInBackground,e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;const o=n.add(new Fs);return o.value=this.doProvide(e,t,i),n.add(this.onDidActiveTextEditorControlChange(()=>{o.value=void 0,o.value=this.doProvide(e,t)})),n}doProvide(e,t,i){const n=new _e,o=this.activeTextEditorControl;if(o&&this.canProvideWithTextEditor(o)){const r={editor:o},a=xhe(o);if(a){let l=o.saveViewState()??void 0;n.add(a.onDidChangeCursorPosition(()=>{l=o.saveViewState()??void 0})),r.restoreViewState=()=>{l&&o===this.activeTextEditorControl&&o.restoreViewState(l)},n.add(_p(t.onCancellationRequested)(()=>r.restoreViewState?.()))}n.add(tt(()=>this.clearDecorations(o))),n.add(this.provideWithTextEditor(r,e,t,i))}else n.add(this.provideWithoutTextEditor(e,t));return n}canProvideWithTextEditor(e){return!0}gotoLocation({editor:e},t){e.setSelection(t.range,"code.jump"),e.revealRangeInCenter(t.range,0),t.preserveFocus||e.focus();const i=e.getModel();i&&"getLineContent"in i&&Iu(`${i.getLineContent(t.range.startLineNumber)}`)}getModel(e){return B$(e)?e.getModel()?.modified:e.getModel()}addDecorations(e,t){e.changeDecorations(i=>{const n=[];this.rangeHighlightDecorationId&&(n.push(this.rangeHighlightDecorationId.overviewRulerDecorationId),n.push(this.rangeHighlightDecorationId.rangeHighlightId),this.rangeHighlightDecorationId=void 0);const o=[{range:t,options:{description:"quick-access-range-highlight",className:"rangeHighlight",isWholeLine:!0}},{range:t,options:{description:"quick-access-range-highlight-overview",overviewRuler:{color:zn(pde),position:Ja.Full}}}],[r,a]=i.deltaDecorations(n,o);this.rangeHighlightDecorationId={rangeHighlightId:r,overviewRulerDecorationId:a}})}clearDecorations(e){const t=this.rangeHighlightDecorationId;t&&(e.changeDecorations(i=>{i.deltaDecorations([t.overviewRulerDecorationId,t.rangeHighlightId],[])}),this.rangeHighlightDecorationId=void 0)}}const DA=class DA extends mpe{constructor(){super({canAcceptInBackground:!0})}provideWithoutTextEditor(e){const t=v("cannotRunGotoLine","Open a text editor first to go to a line.");return e.items=[{label:t}],e.ariaLabel=t,se.None}provideWithTextEditor(e,t,i){const n=e.editor,o=new _e;o.add(t.onDidAccept(l=>{const[c]=t.selectedItems;if(c){if(!this.isValidLineNumber(n,c.lineNumber))return;this.gotoLocation(e,{range:this.toRange(c.lineNumber,c.column),keyMods:t.keyMods,preserveFocus:l.inBackground}),l.inBackground||t.hide()}}));const r=()=>{const l=this.parsePosition(n,t.value.trim().substr(DA.PREFIX.length)),c=this.getPickLabel(n,l.lineNumber,l.column);if(t.items=[{lineNumber:l.lineNumber,column:l.column,label:c}],t.ariaLabel=c,!this.isValidLineNumber(n,l.lineNumber)){this.clearDecorations(n);return}const d=this.toRange(l.lineNumber,l.column);n.revealRangeInCenter(d,0),this.addDecorations(n,d)};r(),o.add(t.onDidChangeValue(()=>r()));const a=xhe(n);return a&&a.getOptions().get(68).renderType===2&&(a.updateOptions({lineNumbers:"on"}),o.add(tt(()=>a.updateOptions({lineNumbers:"relative"})))),o}toRange(e=1,t=1){return{startLineNumber:e,startColumn:t,endLineNumber:e,endColumn:t}}parsePosition(e,t){const i=t.split(/,|:|#/).map(o=>parseInt(o,10)).filter(o=>!isNaN(o)),n=this.lineCount(e)+1;return{lineNumber:i[0]>0?i[0]:n+i[0],column:i[1]}}getPickLabel(e,t,i){if(this.isValidLineNumber(e,t))return this.isValidColumn(e,t,i)?v("gotoLineColumnLabel","Go to line {0} and character {1}.",t,i):v("gotoLineLabel","Go to line {0}.",t);const n=e.getPosition()||{lineNumber:1,column:1},o=this.lineCount(e);return o>1?v("gotoLineLabelEmptyWithLimit","Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.",n.lineNumber,n.column,o):v("gotoLineLabelEmpty","Current Line: {0}, Character: {1}. Type a line number to navigate to.",n.lineNumber,n.column)}isValidLineNumber(e,t){return!t||typeof t!="number"?!1:t>0&&t<=this.lineCount(e)}isValidColumn(e,t,i){if(!i||typeof i!="number")return!1;const n=this.getModel(e);if(!n)return!1;const o={lineNumber:t,column:i};return n.validatePosition(o).equals(o)}lineCount(e){return this.getModel(e)?.getLineCount()??0}};DA.PREFIX=":";let uz=DA;var Yet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Zet=function(s,e){return function(t,i){e(t,i,s)}};let hk=class extends uz{constructor(e){super(),this.editorService=e,this.onDidActiveTextEditorControlChange=Me.None}get activeTextEditorControl(){return this.editorService.getFocusedCodeEditor()??void 0}};hk=Yet([Zet(0,gi)],hk);var Cb;let _pe=(Cb=class extends ze{constructor(){super({id:Cb.ID,label:HT.gotoLineActionLabel,alias:"Go to Line/Column...",precondition:void 0,kbOpts:{kbExpr:W.focus,primary:2085,mac:{primary:293},weight:100}})}run(e){e.get(Gl).quickAccess.show(hk.PREFIX)}},Cb.ID="editor.action.gotoLine",Cb);ye(_pe);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:hk,prefix:hk.PREFIX,helpEntries:[{description:HT.gotoLineActionLabel,commandId:_pe.ID}]});const bpe=[void 0,[]];function mB(s,e,t=0,i=0){const n=e;return n.values&&n.values.length>1?Xet(s,n.values,t,i):vpe(s,e,t,i)}function Xet(s,e,t,i){let n=0;const o=[];for(const r of e){const[a,l]=vpe(s,r,t,i);if(typeof a!="number")return bpe;n+=a,o.push(...l)}return[n,Qet(o)]}function vpe(s,e,t,i){const n=Mb(e.original,e.originalLowercase,t,s,s.toLowerCase(),i,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return n?[n[0],Wk(n)]:bpe}function Qet(s){const e=s.sort((n,o)=>n.start-o.start),t=[];let i;for(const n of e)!i||!Jet(i,n)?(i=n,t.push(n)):(i.start=Math.min(i.start,n.start),i.end=Math.max(i.end,n.end));return t}function Jet(s,e){return!(s.end<e.start||e.end<s.start)}function kse(s){return s.startsWith('"')&&s.endsWith('"')}const Cpe=" ";function hz(s){typeof s!="string"&&(s="");const e=s.toLowerCase(),{pathNormalized:t,normalized:i,normalizedLowercase:n}=Dse(s),o=t.indexOf(fd)>=0,r=kse(s);let a;const l=s.split(Cpe);if(l.length>1)for(const c of l){const d=kse(c),{pathNormalized:u,normalized:f,normalizedLowercase:p}=Dse(c);f&&(a||(a=[]),a.push({original:c,originalLowercase:c.toLowerCase(),pathNormalized:u,normalized:f,normalizedLowercase:p,expectContiguousMatch:d}))}return{original:s,originalLowercase:e,pathNormalized:t,normalized:i,normalizedLowercase:n,values:a,containsPathSeparator:o,expectContiguousMatch:r}}function Dse(s){let e;Lo?e=s.replace(/\//g,fd):e=s.replace(/\\/g,fd);const t=nNe(e).replace(/\s|"/g,"");return{pathNormalized:e,normalized:t,normalizedLowercase:t.toLowerCase()}}function Ese(s){return Array.isArray(s)?hz(s.map(e=>e.original).join(Cpe)):hz(s.original)}var ett=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Nse=function(s,e){return function(t,i){e(t,i,s)}},HI,ad;let x_=(ad=class extends mpe{constructor(e,t,i=Object.create(null)){super(i),this._languageFeaturesService=e,this._outlineModelService=t,this.options=i,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(e){return this.provideLabelPick(e,v("cannotRunGotoSymbolWithoutEditor","To go to a symbol, first open a text editor with symbol information.")),se.None}provideWithTextEditor(e,t,i,n){const o=e.editor,r=this.getModel(o);return r?this._languageFeaturesService.documentSymbolProvider.has(r)?this.doProvideWithEditorSymbols(e,r,t,i,n):this.doProvideWithoutEditorSymbols(e,r,t,i):se.None}doProvideWithoutEditorSymbols(e,t,i,n){const o=new _e;return this.provideLabelPick(i,v("cannotRunGotoSymbolWithoutSymbolProvider","The active text editor does not provide symbol information.")),(async()=>!await this.waitForLanguageSymbolRegistry(t,o)||n.isCancellationRequested||o.add(this.doProvideWithEditorSymbols(e,t,i,n)))(),o}provideLabelPick(e,t){e.items=[{label:t,index:0,kind:14}],e.ariaLabel=t}async waitForLanguageSymbolRegistry(e,t){if(this._languageFeaturesService.documentSymbolProvider.has(e))return!0;const i=new ey,n=t.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{this._languageFeaturesService.documentSymbolProvider.has(e)&&(n.dispose(),i.complete(!0))}));return t.add(tt(()=>i.complete(!1))),i.p}doProvideWithEditorSymbols(e,t,i,n,o){const r=e.editor,a=new _e;a.add(i.onDidAccept(u=>{const[f]=i.selectedItems;f&&f.range&&(this.gotoLocation(e,{range:f.range.selection,keyMods:i.keyMods,preserveFocus:u.inBackground}),o?.handleAccept?.(f),u.inBackground||i.hide())})),a.add(i.onDidTriggerItemButton(({item:u})=>{u&&u.range&&(this.gotoLocation(e,{range:u.range.selection,keyMods:i.keyMods,forceSideBySide:!0}),i.hide())}));const l=this.getDocumentSymbols(t,n);let c;const d=async u=>{c?.dispose(!0),i.busy=!1,c=new In(n),i.busy=!0;try{const f=hz(i.value.substr(HI.PREFIX.length).trim()),p=await this.doGetSymbolPicks(l,f,void 0,c.token,t);if(n.isCancellationRequested)return;if(p.length>0){if(i.items=p,u&&f.original.length===0){const m=Gx(p,b=>!!(b.type!=="separator"&&b.range&&M.containsPosition(b.range.decoration,u)));m&&(i.activeItems=[m])}}else f.original.length>0?this.provideLabelPick(i,v("noMatchingSymbolResults","No matching editor symbols")):this.provideLabelPick(i,v("noSymbolResults","No editor symbols"))}finally{n.isCancellationRequested||(i.busy=!1)}};return a.add(i.onDidChangeValue(()=>d(void 0))),d(r.getSelection()?.getPosition()),a.add(i.onDidChangeActive(()=>{const[u]=i.activeItems;u&&u.range&&(r.revealRangeInCenter(u.range.selection,0),this.addDecorations(r,u.range.decoration))})),a}async doGetSymbolPicks(e,t,i,n,o){const r=await e;if(n.isCancellationRequested)return[];const a=t.original.indexOf(HI.SCOPE_PREFIX)===0,l=a?1:0;let c,d;t.values&&t.values.length>1?(c=Ese(t.values[0]),d=Ese(t.values.slice(1))):c=t;let u;const f=this.options?.openSideBySideDirection?.();f&&(u=[{iconClass:f==="right"?ft.asClassName(De.splitHorizontal):ft.asClassName(De.splitVertical),tooltip:f==="right"?v("openToSide","Open to the Side"):v("openToBottom","Open to the Bottom")}]);const p=[];for(let w=0;w<r.length;w++){const y=r[w],S=tNe(y.name),x=`$(${sT.toIcon(y.kind).id}) ${S}`,L=x.length-S.length;let N=y.containerName;i?.extraContainerLabel&&(N?N=`${i.extraContainerLabel} • ${N}`:N=i.extraContainerLabel);let I,T,A,P;if(t.original.length>l){let H=!1;if(c!==t&&([I,T]=mB(x,{...t,values:void 0},l,L),typeof I=="number"&&(H=!0)),typeof I!="number"&&([I,T]=mB(x,c,l,L),typeof I!="number"))continue;if(!H&&d){if(N&&d.original.length>0&&([A,P]=mB(N,d)),typeof A!="number")continue;typeof I=="number"&&(I+=A)}}const F=y.tags&&y.tags.indexOf(1)>=0;p.push({index:w,kind:y.kind,score:I,label:x,ariaLabel:GEe(y.name,y.kind),description:N,highlights:F?void 0:{label:T,description:P},range:{selection:M.collapseToStart(y.selectionRange),decoration:y.range},uri:o.uri,symbolName:S,strikethrough:F,buttons:u})}const m=p.sort((w,y)=>a?this.compareByKindAndScore(w,y):this.compareByScore(w,y));let b=[];if(a){let x=function(){y&&typeof w=="number"&&S>0&&(y.label=Lb(bB[w]||_B,S))},w,y,S=0;for(const L of m)w!==L.kind?(x(),w=L.kind,S=1,y={type:"separator"},b.push(y)):S++,b.push(L);x()}else m.length>0&&(b=[{label:v("symbols","symbols ({0})",p.length),type:"separator"},...m]);return b}compareByScore(e,t){if(typeof e.score!="number"&&typeof t.score=="number")return 1;if(typeof e.score=="number"&&typeof t.score!="number")return-1;if(typeof e.score=="number"&&typeof t.score=="number"){if(e.score>t.score)return-1;if(e.score<t.score)return 1}return e.index<t.index?-1:e.index>t.index?1:0}compareByKindAndScore(e,t){const i=bB[e.kind]||_B,n=bB[t.kind]||_B,o=i.localeCompare(n);return o===0?this.compareByScore(e,t):o}async getDocumentSymbols(e,t){const i=await this._outlineModelService.getOrCreate(e,t);return t.isCancellationRequested?[]:i.asListOfDocumentSymbols()}},HI=ad,ad.PREFIX="@",ad.SCOPE_PREFIX=":",ad.PREFIX_BY_CATEGORY=`${ad.PREFIX}${ad.SCOPE_PREFIX}`,ad);x_=HI=ett([Nse(0,qe),Nse(1,hD)],x_);const _B=v("property","properties ({0})"),bB={5:v("method","methods ({0})"),11:v("function","functions ({0})"),8:v("_constructor","constructors ({0})"),12:v("variable","variables ({0})"),4:v("class","classes ({0})"),22:v("struct","structs ({0})"),23:v("event","events ({0})"),24:v("operator","operators ({0})"),10:v("interface","interfaces ({0})"),2:v("namespace","namespaces ({0})"),3:v("package","packages ({0})"),25:v("typeParameter","type parameters ({0})"),1:v("modules","modules ({0})"),6:v("property","properties ({0})"),9:v("enum","enumerations ({0})"),21:v("enumMember","enumeration members ({0})"),14:v("string","strings ({0})"),0:v("file","files ({0})"),17:v("array","arrays ({0})"),15:v("number","numbers ({0})"),16:v("boolean","booleans ({0})"),18:v("object","objects ({0})"),19:v("key","keys ({0})"),7:v("field","fields ({0})"),13:v("constant","constants ({0})")};var ttt=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vB=function(s,e){return function(t,i){e(t,i,s)}};let fz=class extends x_{constructor(e,t,i){super(t,i),this.editorService=e,this.onDidActiveTextEditorControlChange=Me.None}get activeTextEditorControl(){return this.editorService.getFocusedCodeEditor()??void 0}};fz=ttt([vB(0,gi),vB(1,qe),vB(2,hD)],fz);const EA=class EA extends ze{constructor(){super({id:EA.ID,label:dL.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:W.hasDocumentSymbolProvider,kbOpts:{kbExpr:W.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(e){e.get(Gl).quickAccess.show(x_.PREFIX,{itemActivation:ed.NONE})}};EA.ID="editor.action.quickOutline";let KM=EA;ye(KM);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:fz,prefix:x_.PREFIX,helpEntries:[{description:dL.quickOutlineActionLabel,prefix:x_.PREFIX,commandId:KM.ID},{description:dL.quickOutlineByCategoryActionLabel,prefix:x_.PREFIX_BY_CATEGORY}]});function itt(s){const e=new Map;for(const t of s)e.set(t,(e.get(t)??0)+1);return e}class dx{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(e,t){const i=this.computeEmbedding(e),n=new Map,o=[];for(const[r,a]of this.documents){if(t.isCancellationRequested)return[];for(const l of a.chunks){const c=this.computeSimilarityScore(l,i,n);c>0&&o.push({key:r,score:c})}}return o}static termFrequencies(e){return itt(dx.splitTerms(e))}static*splitTerms(e){const t=i=>i.toLowerCase();for(const[i]of e.matchAll(new RegExp("\\b\\p{Letter}[\\p{Letter}\\d]{2,}\\b","gu"))){yield t(i);const n=i.replace(/([a-z])([A-Z])/g,"$1 $2").split(/\s+/g);if(n.length>1)for(const o of n)o.length>2&&new RegExp("\\p{Letter}{3,}","gu").test(o)&&(yield t(o))}}updateDocuments(e){for(const{key:t}of e)this.deleteDocument(t);for(const t of e){const i=[];for(const n of t.textChunks){const o=dx.termFrequencies(n);for(const r of o.keys())this.chunkOccurrences.set(r,(this.chunkOccurrences.get(r)??0)+1);i.push({text:n,tf:o})}this.chunkCount+=i.length,this.documents.set(t.key,{chunks:i})}return this}deleteDocument(e){const t=this.documents.get(e);if(t){this.documents.delete(e),this.chunkCount-=t.chunks.length;for(const i of t.chunks)for(const n of i.tf.keys()){const o=this.chunkOccurrences.get(n);if(typeof o=="number"){const r=o-1;r<=0?this.chunkOccurrences.delete(n):this.chunkOccurrences.set(n,r)}}}}computeSimilarityScore(e,t,i){let n=0;for(const[o,r]of Object.entries(t)){const a=e.tf.get(o);if(!a)continue;let l=i.get(o);typeof l!="number"&&(l=this.computeIdf(o),i.set(o,l));const c=a*l;n+=c*r}return n}computeEmbedding(e){const t=dx.termFrequencies(e);return this.computeTfidf(t)}computeIdf(e){const t=this.chunkOccurrences.get(e)??0;return t>0?Math.log((this.chunkCount+1)/t):0}computeTfidf(e){const t=Object.create(null);for(const[i,n]of e){const o=this.computeIdf(i);o>0&&(t[i]=n*o)}return t}}function ntt(s){const e=s.slice(0);e.sort((i,n)=>n.score-i.score);const t=e[0]?.score??0;if(t>0)for(const i of e)i.score/=t;return e}var tw;(function(s){s[s.NO_ACTION=0]="NO_ACTION",s[s.CLOSE_PICKER=1]="CLOSE_PICKER",s[s.REFRESH_PICKER=2]="REFRESH_PICKER",s[s.REMOVE_ITEM=3]="REMOVE_ITEM"})(tw||(tw={}));function CB(s){return Array.isArray(s.items)}function Ise(s){const e=s;return!!e.picks&&e.additionalPicks instanceof Promise}class stt extends se{constructor(e,t){super(),this.prefix=e,this.options=t}provide(e,t,i){const n=new _e;e.canAcceptInBackground=!!this.options?.canAcceptInBackground,e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;let o;const r=n.add(new Fs),a=async()=>{const c=r.value=new _e;o?.dispose(!0),e.busy=!1,o=new In(t);const d=o.token;let u=e.value.substring(this.prefix.length);this.options?.shouldSkipTrimPickFilter||(u=u.trim());const f=this._getPicks(u,c,d,i),p=(b,w)=>{let y,S;if(CB(b)?(y=b.items,S=b.active):y=b,y.length===0){if(w)return!1;(u.length>0||e.hideInput)&&this.options?.noResultsPick&&(Ox(this.options.noResultsPick)?y=[this.options.noResultsPick(u)]:y=[this.options.noResultsPick])}return e.items=y,S&&(e.activeItems=[S]),!0},m=async b=>{let w=!1,y=!1;await Promise.all([(async()=>{typeof b.mergeDelay=="number"&&(await ff(b.mergeDelay),d.isCancellationRequested)||y||(w=p(b.picks,!0))})(),(async()=>{e.busy=!0;try{const S=await b.additionalPicks;if(d.isCancellationRequested)return;let x,L;CB(b.picks)?(x=b.picks.items,L=b.picks.active):x=b.picks;let N,I;if(CB(S)?(N=S.items,I=S.active):N=S,N.length>0||!w){let T;if(!L&&!I){const A=e.activeItems[0];A&&x.indexOf(A)!==-1&&(T=A)}p({items:[...x,...N],active:L||I||T})}}finally{d.isCancellationRequested||(e.busy=!1),y=!0}})()])};if(f!==null)if(Ise(f))await m(f);else if(!(f instanceof Promise))p(f);else{e.busy=!0;try{const b=await f;if(d.isCancellationRequested)return;Ise(b)?await m(b):p(b)}finally{d.isCancellationRequested||(e.busy=!1)}}};n.add(e.onDidChangeValue(()=>a())),a(),n.add(e.onDidAccept(c=>{if(i?.handleAccept){c.inBackground||e.hide(),i.handleAccept?.(e.activeItems[0]);return}const[d]=e.selectedItems;typeof d?.accept=="function"&&(c.inBackground||e.hide(),d.accept(e.keyMods,c))}));const l=async(c,d)=>{if(typeof d.trigger!="function")return;const u=d.buttons?.indexOf(c)??-1;if(u>=0){const f=d.trigger(u,e.keyMods),p=typeof f=="number"?f:await f;if(t.isCancellationRequested)return;switch(p){case tw.NO_ACTION:break;case tw.CLOSE_PICKER:e.hide();break;case tw.REFRESH_PICKER:a();break;case tw.REMOVE_ITEM:{const m=e.items.indexOf(d);if(m!==-1){const b=e.items.slice(),w=b.splice(m,1),y=e.activeItems.filter(x=>x!==w[0]),S=e.keepScrollPosition;e.keepScrollPosition=!0,e.items=b,y&&(e.activeItems=y),e.keepScrollPosition=S}break}}}};return n.add(e.onDidTriggerItemButton(({button:c,item:d})=>l(c,d))),n.add(e.onDidTriggerSeparatorButton(({button:c,separator:d})=>l(c,d))),n}}var wpe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Ng=function(s,e){return function(t,i){e(t,i,s)}},Am,ws,bu;let gz=(bu=class extends stt{constructor(e,t,i,n,o,r){super(Am.PREFIX,e),this.instantiationService=t,this.keybindingService=i,this.commandService=n,this.telemetryService=o,this.dialogService=r,this.commandsHistory=this._register(this.instantiationService.createInstance(pz)),this.options=e}async _getPicks(e,t,i,n){const o=await this.getCommandPicks(i);if(i.isCancellationRequested)return[];const r=_p(()=>{const p=new dx;p.updateDocuments(o.map(b=>({key:b.commandId,textChunks:[this.getTfIdfChunk(b)]})));const m=p.calculateScores(e,i);return ntt(m).filter(b=>b.score>Am.TFIDF_THRESHOLD).slice(0,Am.TFIDF_MAX_RESULTS)}),a=[];for(const p of o){const m=Am.WORD_FILTER(e,p.label)??void 0,b=p.commandAlias?Am.WORD_FILTER(e,p.commandAlias)??void 0:void 0;if(m||b)p.highlights={label:m,detail:this.options.showAlias?b:void 0},a.push(p);else if(e===p.commandId)a.push(p);else if(e.length>=3){const w=r();if(i.isCancellationRequested)return[];const y=w.find(S=>S.key===p.commandId);y&&(p.tfIdfScore=y.score,a.push(p))}}const l=new Map;for(const p of a){const m=l.get(p.label);m?(p.description=p.commandId,m.description=m.commandId):l.set(p.label,p)}a.sort((p,m)=>{if(p.tfIdfScore&&m.tfIdfScore)return p.tfIdfScore===m.tfIdfScore?p.label.localeCompare(m.label):m.tfIdfScore-p.tfIdfScore;if(p.tfIdfScore)return 1;if(m.tfIdfScore)return-1;const b=this.commandsHistory.peek(p.commandId),w=this.commandsHistory.peek(m.commandId);if(b&&w)return b>w?-1:1;if(b)return-1;if(w)return 1;if(this.options.suggestedCommandIds){const y=this.options.suggestedCommandIds.has(p.commandId),S=this.options.suggestedCommandIds.has(m.commandId);if(y&&S)return 0;if(y)return-1;if(S)return 1}return p.label.localeCompare(m.label)});const c=[];let d=!1,u=!0,f=!!this.options.suggestedCommandIds;for(let p=0;p<a.length;p++){const m=a[p];p===0&&this.commandsHistory.peek(m.commandId)&&(c.push({type:"separator",label:v("recentlyUsed","recently used")}),d=!0),u&&m.tfIdfScore!==void 0&&(c.push({type:"separator",label:v("suggested","similar commands")}),u=!1),f&&m.tfIdfScore===void 0&&!this.commandsHistory.peek(m.commandId)&&this.options.suggestedCommandIds?.has(m.commandId)&&(c.push({type:"separator",label:v("commonlyUsed","commonly used")}),d=!0,f=!1),d&&m.tfIdfScore===void 0&&!this.commandsHistory.peek(m.commandId)&&!this.options.suggestedCommandIds?.has(m.commandId)&&(c.push({type:"separator",label:v("morecCommands","other commands")}),d=!1),c.push(this.toCommandPick(m,n))}return this.hasAdditionalCommandPicks(e,i)?{picks:c,additionalPicks:(async()=>{const p=await this.getAdditionalCommandPicks(o,a,e,i);if(i.isCancellationRequested)return[];const m=p.map(b=>this.toCommandPick(b,n));return u&&m[0]?.type!=="separator"&&m.unshift({type:"separator",label:v("suggested","similar commands")}),m})()}:c}toCommandPick(e,t){if(e.type==="separator")return e;const i=this.keybindingService.lookupKeybinding(e.commandId),n=i?v("commandPickAriaLabelWithKeybinding","{0}, {1}",e.label,i.getAriaLabel()):e.label;return{...e,ariaLabel:n,detail:this.options.showAlias&&e.commandAlias!==e.label?e.commandAlias:void 0,keybinding:i,accept:async()=>{this.commandsHistory.push(e.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.commandId,from:t?.from??"quick open"});try{e.args?.length?await this.commandService.executeCommand(e.commandId,...e.args):await this.commandService.executeCommand(e.commandId)}catch(o){ql(o)||this.dialogService.error(v("canNotRun","Command '{0}' resulted in an error",e.label),JR(o))}}}}getTfIdfChunk({label:e,commandAlias:t,commandDescription:i}){let n=e;return t&&t!==e&&(n+=` - ${t}`),i&&i.value!==e&&(n+=` - ${i.value===i.original?i.value:`${i.value} (${i.original})`}`),n}},Am=bu,bu.PREFIX=">",bu.TFIDF_THRESHOLD=.5,bu.TFIDF_MAX_RESULTS=5,bu.WORD_FILTER=tj(rL,pOe,Ece),bu);gz=Am=wpe([Ng(1,it),Ng(2,yi),Ng(3,en),Ng(4,Fo),Ng(5,Pk)],gz);var ld;let pz=(ld=class extends se{constructor(e,t,i){super(),this.storageService=e,this.configurationService=t,this.logService=i,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>this.updateConfiguration(e))),this._register(this.storageService.onWillSaveState(e=>{e.reason===gL.SHUTDOWN&&this.saveState()}))}updateConfiguration(e){e&&!e.affectsConfiguration("workbench.commandPalette.history")||(this.configuredCommandsHistoryLength=ws.getConfiguredCommandHistoryLength(this.configurationService),ws.cache&&ws.cache.limit!==this.configuredCommandsHistoryLength&&(ws.cache.limit=this.configuredCommandsHistoryLength,ws.hasChanges=!0))}load(){const e=this.storageService.get(ws.PREF_KEY_CACHE,0);let t;if(e)try{t=JSON.parse(e)}catch(n){this.logService.error(`[CommandsHistory] invalid data: ${n}`)}const i=ws.cache=new Wu(this.configuredCommandsHistoryLength,1);if(t){let n;t.usesLRU?n=t.entries:n=t.entries.sort((o,r)=>o.value-r.value),n.forEach(o=>i.set(o.key,o.value))}ws.counter=this.storageService.getNumber(ws.PREF_KEY_COUNTER,0,ws.counter)}push(e){ws.cache&&(ws.cache.set(e,ws.counter++),ws.hasChanges=!0)}peek(e){return ws.cache?.peek(e)}saveState(){if(!ws.cache||!ws.hasChanges)return;const e={usesLRU:!0,entries:[]};ws.cache.forEach((t,i)=>e.entries.push({key:i,value:t})),this.storageService.store(ws.PREF_KEY_CACHE,JSON.stringify(e),0,0),this.storageService.store(ws.PREF_KEY_COUNTER,ws.counter,0,0),ws.hasChanges=!1}static getConfiguredCommandHistoryLength(e){const i=e.getValue().workbench?.commandPalette?.history;return typeof i=="number"?i:ws.DEFAULT_COMMANDS_HISTORY_LENGTH}},ws=ld,ld.DEFAULT_COMMANDS_HISTORY_LENGTH=50,ld.PREF_KEY_CACHE="commandPalette.mru.cache",ld.PREF_KEY_COUNTER="commandPalette.mru.counter",ld.counter=1,ld.hasChanges=!1,ld);pz=ws=wpe([Ng(0,Bc),Ng(1,Wt),Ng(2,ko)],pz);class ott extends gz{constructor(e,t,i,n,o,r){super(e,t,i,n,o,r)}getCodeEditorCommandPicks(){const e=this.activeTextEditorControl;if(!e)return[];const t=[];for(const i of e.getSupportedActions()){let n;i.metadata?.description&&(fFe(i.metadata.description)?n=i.metadata.description:n={original:i.metadata.description,value:i.metadata.description}),t.push({commandId:i.id,commandAlias:i.alias,commandDescription:n,label:aj(i.label)||i.id})}return t}}var rtt=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},CC=function(s,e){return function(t,i){e(t,i,s)}};let fk=class extends ott{get activeTextEditorControl(){return this.codeEditorService.getFocusedCodeEditor()??void 0}constructor(e,t,i,n,o,r){super({showAlias:!1},e,i,n,o,r),this.codeEditorService=t}async getCommandPicks(){return this.getCodeEditorCommandPicks()}hasAdditionalCommandPicks(){return!1}async getAdditionalCommandPicks(){return[]}};fk=rtt([CC(0,it),CC(1,gi),CC(2,yi),CC(3,en),CC(4,Fo),CC(5,Pk)],fk);const NA=class NA extends ze{constructor(){super({id:NA.ID,label:VT.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:W.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(e){e.get(Gl).quickAccess.show(fk.PREFIX)}};NA.ID="editor.action.quickCommand";let GM=NA;ye(GM);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:fk,prefix:fk.PREFIX,helpEntries:[{description:VT.quickCommandHelp,commandId:GM.ID}]});var att=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},wC=function(s,e){return function(t,i){e(t,i,s)}};let mz=class extends Kb{constructor(e,t,i,n,o,r,a){super(!0,e,t,i,n,o,r,a)}};mz=att([wC(1,gt),wC(2,gi),wC(3,rs),wC(4,it),wC(5,Bc),wC(6,Wt)],mz);ai(Kb.ID,mz,4);class ltt extends ze{constructor(){super({id:"editor.action.toggleHighContrast",label:b8.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0}),this._originalThemeName=null}run(e,t){const i=e.get(hl),n=i.getColorTheme();md(n.type)?(i.setTheme(this._originalThemeName||(u1(n.type)?Aw:Bh)),this._originalThemeName=null):(i.setTheme(u1(n.type)?v_:C_),this._originalThemeName=n.themeName)}}ye(ltt);function ctt(s){return new Worker("/assets/editor.worker-B4pQIWZD.js",{name:s?.name})}const Tse=globalThis;Tse.MonacoEnvironment||(Tse.MonacoEnvironment={getWorker(){return new ctt}});function dtt({value:s,readOnly:e,language:t,onChange:i}){const n=B.useRef(null),o=B.useRef(null),r=B.useRef(null),a=B.useRef(i);return B.useEffect(()=>{a.current=i},[i]),B.useEffect(()=>{if(!n.current)return;const l=TW.create(n.current,{value:"",language:"plaintext",theme:"vs-dark",automaticLayout:!0,minimap:{enabled:!1},fontSize:13,readOnly:!1,scrollBeyondLastLine:!1});return o.current=l,r.current=l.onDidChangeModelContent(()=>{a.current(l.getValue())}),()=>{r.current?.dispose(),o.current?.dispose(),r.current=null,o.current=null}},[]),B.useEffect(()=>{const l=o.current;l&&l.getValue()!==s&&l.setValue(s)},[s]),B.useEffect(()=>{const l=o.current;l&&l.updateOptions({readOnly:e})},[e]),B.useEffect(()=>{const l=o.current;if(!l)return;const c=l.getModel();c&&TW.setModelLanguage(c,t)},[t]),D.jsx("div",{ref:n,className:"workflow-monaco-editor"})}function cg(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function wB(s){const e=s.lastIndexOf("/");return e===-1?"":s.slice(0,e)}function _z(s){const e=s.lastIndexOf("/");return e===-1?s:s.slice(e+1)}function yC(s,e){return s===e||s.startsWith(`${e}/`)}function utt(s){const e=s.lastIndexOf(".");return e===-1?"":s.slice(e+1).toLowerCase()}function htt(s){if(_z(s).toLowerCase()===".env")return"shell";const t=utt(s);return t==="ts"||t==="tsx"?"typescript":t==="js"||t==="jsx"||t==="mjs"||t==="cjs"?"javascript":t==="json"?"json":t==="py"?"python":t==="md"?"markdown":t==="yml"||t==="yaml"?"yaml":t==="sh"||t==="bash"?"shell":t==="css"?"css":t==="html"?"html":t==="xml"?"xml":"plaintext"}function Rse(s){return new Date(s).toLocaleString()}function Mse(s,e){return s&&e?`${s} (${e})`:s||e||"Unknown"}function ype({entity:s="workflow"}){const{slug:e=""}=TA(),t=zr(),i=Xs(),n=s==="workflow"?"/api/workflows":"/api/skills",o=s==="workflow"?"workflow":"skill",r=s==="workflow"?"workflows":"skills",a=s==="workflow"?"Workflow Info":"Skill Info",l=s==="workflow"?"Workflow project explorer":"Skill project explorer",c=i.loading?null:i.token,[d,u]=B.useState(!0),[f,p]=B.useState(null),[m,b]=B.useState(e),[w,y]=B.useState(null),[S,x]=B.useState(null),[L,N]=B.useState({}),[I,T]=B.useState({"":!0}),[A,P]=B.useState({}),[F,H]=B.useState({}),[z,ne]=B.useState(null),[G,ie]=B.useState(null),[Z,Q]=B.useState(""),[oe,ue]=B.useState({}),[q,Y]=B.useState({}),me=B.useRef(null),j=S?.can_edit??!1,Te=G?.kind==="text"?G:null,Ue=!!(Te&&Te.content!==Te.savedContent),Xe=L[""]??[],ht=B.useMemo(()=>c?{Authorization:`Bearer ${c}`}:void 0,[c]),Lt=B.useCallback(async Ct=>{if(ht){P(pt=>({...pt,[Ct]:!0})),H(pt=>({...pt,[Ct]:""}));try{const pt=await Zt.get(`${n}/`+encodeURIComponent(e)+"/files/tree",{params:Ct?{path:Ct}:{},headers:ht});N(Ke=>({...Ke,[Ct]:pt.data.entries}))}catch(pt){const Ke=cg(pt,"Failed to load files");H(at=>({...at,[Ct]:Ke})),Ct===""&&p(Ke)}finally{P(pt=>({...pt,[Ct]:!1}))}}},[n,ht,e]);B.useEffect(()=>{if(!c)return;let Ct=!1;return u(!0),p(null),(async()=>{try{const[pt,Ke]=await Promise.all([Zt.get(`${n}/${encodeURIComponent(e)}/files/access`,{headers:ht}),Zt.get(`${n}/${encodeURIComponent(e)}`,{headers:ht})]);if(Ct)return;x(pt.data);const at=s==="workflow"?Ke.data.workflow:Ke.data.skill;y(at),b(at.name||at.slug),await Lt("")}catch(pt){if(Ct)return;p(cg(pt,`Failed to load ${o} editor`))}finally{Ct||u(!1)}})(),()=>{Ct=!0}},[n,ht,s,o,Lt,e,c]),B.useEffect(()=>{const Ct=pt=>{Ue&&(pt.preventDefault(),pt.returnValue="")};return window.addEventListener("beforeunload",Ct),()=>window.removeEventListener("beforeunload",Ct)},[Ue]);const Pe=()=>Ue?window.confirm("You have unsaved changes. Discard them?"):!0,St=()=>{Pe()&&t(`/?tab=${r}`)},Dt=S?.editor_status??"pending",Ut=async Ct=>{if(Ct.kind!=="directory")return;const pt=!I[Ct.path];T(Ke=>({...Ke,[Ct.path]:pt})),pt&&L[Ct.path]===void 0&&await Lt(Ct.path)},xi=async Ct=>{if(Ct.kind==="file"&&Pe()){ne(Ct.path),ie({path:Ct.path,name:Ct.name,kind:"loading"});try{const Ke=(await Zt.get(`${n}/${encodeURIComponent(e)}/files/content`,{params:{path:Ct.path},headers:ht})).data;if(Ke.kind==="binary"){ie({path:Ke.path,name:Ke.name,kind:"binary",message:Ke.message,etag:Ke.etag,modifiedAtMs:Ke.modified_at_ms,sizeBytes:Ke.size_bytes});return}ie({path:Ke.path,name:Ke.name,kind:"text",content:Ke.content,savedContent:Ke.content,etag:Ke.etag,isDotenv:Ke.name===".env",modifiedAtMs:Ke.modified_at_ms,sizeBytes:Ke.size_bytes})}catch(pt){ie(null),p(cg(pt,"Failed to open file"))}}},Oi=B.useCallback(async()=>{if(!(!Te||!ht||!j))try{const pt=(await Zt.put(`${n}/${encodeURIComponent(e)}/files/content`,{path:Te.path,content:Te.content,base_etag:Te.etag},{headers:ht})).data;ie(Ke=>!Ke||Ke.kind!=="text"||Ke.path!==Te.path?Ke:{...Ke,etag:pt.etag,modifiedAtMs:pt.modified_at_ms,sizeBytes:pt.size_bytes,savedContent:Ke.content}),vt.success(`Saved ${Te.name}`),await Lt(wB(Te.path))}catch(Ct){vt.error(cg(Ct,"Failed to save file"))}},[Te,n,ht,j,e,Lt]);B.useEffect(()=>{const Ct=pt=>{!(pt.metaKey||pt.ctrlKey)||pt.key.toLowerCase()!=="s"||!Te||!Ue||!j||(pt.preventDefault(),Oi())};return window.addEventListener("keydown",Ct),()=>window.removeEventListener("keydown",Ct)},[Te,Ue,j,Oi]);const Ni=async(Ct,pt)=>{if(!ht||!j)return;const Ke=window.prompt(pt==="file"?"New file name":"New folder name");if(Ke)try{await Zt.post(`${n}/${encodeURIComponent(e)}/files`,{parent_path:Ct,name:Ke,kind:pt},{headers:ht}),T(at=>({...at,[Ct]:!0})),await Lt(Ct)}catch(at){vt.error(cg(at,`Failed to create ${pt}`))}},Pn=async Ct=>{if(!ht||!j)return;const pt=window.prompt("Rename to",Ct.name);if(!(!pt||pt===Ct.name))try{const at=(await Zt.patch(`${n}/${encodeURIComponent(e)}/files/rename`,{path:Ct.path,new_name:pt},{headers:ht})).data,ce=at.old_path,We=at.new_path;N(st=>{const Rt={};for(const[Gt,Ii]of Object.entries(st)){const bn=yC(Gt,ce)?Gt.replace(ce,We):Gt;Rt[bn]=Ii.map(Fi=>Fi.path===ce||Fi.path.startsWith(`${ce}/`)?{...Fi,path:Fi.path.replace(ce,We),name:Fi.path===ce?_z(We):Fi.name}:Fi)}return Rt}),T(st=>{const Rt={};for(const[Gt,Ii]of Object.entries(st)){const bn=yC(Gt,ce)?Gt.replace(ce,We):Gt;Rt[bn]=Ii}return Rt}),ne(st=>st&&(st===ce||st.startsWith(`${ce}/`))?st.replace(ce,We):st),ie(st=>!st||st.path!==ce&&!st.path.startsWith(`${ce}/`)?st:{...st,path:st.path.replace(ce,We),name:st.path===ce?_z(We):st.name}),await Lt(wB(We))}catch(Ke){vt.error(cg(Ke,"Failed to rename"))}},Vi=async Ct=>{if(!(!ht||!j||!window.confirm(`Delete ${Ct.kind} "${Ct.name}"? This cannot be undone.`)))try{await Zt.delete(`${n}/${encodeURIComponent(e)}/files`,{params:{path:Ct.path},headers:ht});const Ke=wB(Ct.path);await Lt(Ke),z&&yC(z,Ct.path)&&ne(null),G&&yC(G.path,Ct.path)&&ie(null),N(at=>{const ce={};for(const[We,st]of Object.entries(at))yC(We,Ct.path)||(ce[We]=st.filter(Rt=>!yC(Rt.path,Ct.path)));return ce})}catch(Ke){vt.error(cg(Ke,"Failed to delete"))}},zi=Ct=>{j&&(Q(Ct),me.current?.click())},dn=async Ct=>{const pt=Ct.target.files?.[0];if(!pt||!ht||!j)return;const Ke=Z;ue(at=>({...at,[Ke]:!0})),Y(at=>({...at,[Ke]:{fileName:pt.name,percent:0}}));try{const at=new FormData;at.append("parent_path",Ke),at.append("name",pt.name),at.append("file",pt,pt.name),await Moe.post(`${n}/${encodeURIComponent(e)}/files/upload`,at,{headers:ht,onUploadProgress:ce=>{const We=ce.total??pt.size;if(!We)return;const st=Math.min(100,Math.round(ce.loaded/We*100));Y(Rt=>({...Rt,[Ke]:{fileName:pt.name,percent:st}}))}}),T(ce=>({...ce,[Ke]:!0})),await Lt(Ke),Y(ce=>({...ce,[Ke]:{fileName:pt.name,percent:100}})),vt.success(`Uploaded ${pt.name}`)}catch(at){vt.error(cg(at,"Failed to upload file"))}finally{ue(at=>({...at,[Ke]:!1})),Y(at=>{const ce={...at};return delete ce[Ke],ce}),Q(""),Ct.currentTarget.value=""}},Ui=(Ct,pt)=>Ct.map(Ke=>{const at=Ke.kind==="directory"&&!!I[Ke.path],ce=z===Ke.path,We=L[Ke.path]??[],st=A[Ke.path],Rt=F[Ke.path],Gt=oe[Ke.path],Ii=q[Ke.path];return D.jsxs("div",{className:"wf-tree-row-wrap",children:[D.jsxs("div",{className:`wf-tree-row ${ce?"selected":""}`,style:{paddingLeft:`${8+pt*16}px`},onClick:()=>{Ke.kind==="directory"?Ut(Ke):xi(Ke)},role:"button",tabIndex:0,onKeyDown:bn=>{bn.key!=="Enter"&&bn.key!==" "||(bn.preventDefault(),Ke.kind==="directory"?Ut(Ke):xi(Ke))},children:[D.jsx("span",{className:"wf-tree-chevron",children:Ke.kind==="directory"?at?"▾":"▸":""}),D.jsx("span",{className:`wf-tree-icon ${Ke.kind}`,children:Ke.kind==="directory"?D.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:D.jsx("path",{d:"M1.75 3C1.75 2.30964 2.30964 1.75 3 1.75H6.08579C6.351 1.75 6.60536 1.85536 6.79289 2.04289L8.25 3.5H13C13.6904 3.5 14.25 4.05964 14.25 4.75V13C14.25 13.6904 13.6904 14.25 13 14.25H3C2.30964 14.25 1.75 13.6904 1.75 13V3Z",fill:"currentColor",fillOpacity:"0.3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}):D.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[D.jsx("path",{d:"M3.75 2.75C3.75 2.19772 4.19772 1.75 4.75 1.75H9.08579C9.351 1.75 9.60536 1.85536 9.79289 2.04289L12.9571 5.20711C13.1446 5.39464 13.25 5.649 13.25 5.91421V13.25C13.25 13.8023 12.8023 14.25 12.25 14.25H4.75C4.19772 14.25 3.75 13.8023 3.75 13.25V2.75Z",fill:"currentColor",fillOpacity:"0.1",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),D.jsx("path",{d:"M9.25 2V5.25C9.25 5.66421 9.58579 6 10 6H13",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}),D.jsx("span",{className:"wf-tree-name",children:Ke.name}),!Ke.readable&&D.jsx("span",{className:"wf-tree-badge",children:"no-read"}),j&&D.jsxs("span",{className:"wf-tree-actions",onClick:bn=>bn.stopPropagation(),children:[Ke.kind==="directory"&&D.jsxs(D.Fragment,{children:[D.jsx("button",{type:"button",onClick:()=>{Ni(Ke.path,"file")},title:"New file",children:"+F"}),D.jsx("button",{type:"button",onClick:()=>{Ni(Ke.path,"directory")},title:"New folder",children:"+D"}),D.jsx("button",{type:"button",onClick:()=>zi(Ke.path),title:"Upload files",children:"Upload"})]}),D.jsx("button",{type:"button",onClick:()=>{Pn(Ke)},title:"Rename",children:"Rename"}),D.jsx("button",{type:"button",onClick:()=>{Vi(Ke)},title:"Delete",children:"Delete"})]})]}),Ke.kind==="directory"&&at&&D.jsxs("div",{children:[st&&D.jsx("div",{className:"wf-tree-note",style:{paddingLeft:`${24+pt*16}px`},children:"Loading..."}),Gt&&Ii&&D.jsxs("div",{className:"wf-tree-note",style:{paddingLeft:`${24+pt*16}px`},children:["Uploading ",Ii.fileName,"... ",Ii.percent,"%"]}),Rt&&D.jsx("div",{className:"wf-tree-note error",style:{paddingLeft:`${24+pt*16}px`},children:Rt}),!st&&!Rt&&We.length>0&&Ui(We,pt+1),!st&&!Rt&&We.length===0&&D.jsx("div",{className:"wf-tree-note",style:{paddingLeft:`${24+pt*16}px`},children:"Empty"})]})]},Ke.path)});if(i.loading)return null;const Eo=w?s==="workflow"?w.permission_mode==="everyone"?"Everyone can run":w.is_locked_due_to_missing_users?"Restricted (locked: no allowed users remain)":"Restricted":w.permission_mode==="everyone"?"Everyone can access":w.is_locked_due_to_missing_users?"Restricted (locked: no allowed users remain)":"Restricted":null;return D.jsxs("div",{className:"workflow-editor-page",children:[D.jsxs("header",{className:"workflow-editor-header",children:[D.jsxs("div",{className:"workflow-editor-header-left",children:[D.jsx("button",{type:"button",className:"secondary",onClick:St,children:"Back"}),D.jsxs("div",{children:[D.jsx("h1",{children:m}),S&&D.jsxs("p",{className:"workflow-editor-subtitle",children:[e," · ",Dt," · ",j?"Editable":"Read only"]})]})]}),D.jsxs("div",{className:"workflow-editor-header-right",children:[Te&&D.jsx("span",{className:`wf-save-status ${Ue?"dirty":"saved"}`,children:Ue?"Unsaved changes":"Saved"}),D.jsx("button",{type:"button",onClick:()=>{Oi()},disabled:!Te||!Ue||!j,children:"Save"})]})]}),d?D.jsxs("div",{className:"workflow-editor-loading",children:["Loading ",o," editor..."]}):f?D.jsx("div",{className:"workflow-editor-error",children:f}):D.jsxs("div",{className:"workflow-editor-layout",children:[D.jsxs("aside",{className:"workflow-editor-sidebar",children:[w&&D.jsxs("div",{className:"wf-workflow-meta-card",children:[D.jsx("div",{className:"wf-workflow-meta-title",children:a}),D.jsxs("div",{className:"wf-workflow-meta-grid",children:[D.jsx("div",{className:"wf-workflow-meta-label",children:"Status"}),D.jsx("div",{className:"wf-workflow-meta-value",children:Dt==="approved"?"Approved":"Pending approval"}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Permissions"}),D.jsx("div",{className:"wf-workflow-meta-value",children:Eo}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Creator"}),D.jsx("div",{className:"wf-workflow-meta-value",children:Mse(w.created_by_user_name,w.created_by_user_email)}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Approver"}),D.jsx("div",{className:"wf-workflow-meta-value",children:w.approved_by_user_id?Mse(w.approved_by_user_name,w.approved_by_user_email):"Not approved yet"}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Required Secrets"}),D.jsx("div",{className:"wf-workflow-meta-value",children:w.required_secrets&&w.required_secrets.length>0?w.required_secrets.join(", "):"None"}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Missing Secrets"}),D.jsx("div",{className:"wf-workflow-meta-value",children:w.missing_required_secrets&&w.missing_required_secrets.length>0?`${w.missing_required_secrets.join(", ")} (add them in Profile Secrets)`:"None"})]})]}),D.jsxs("div",{className:"wf-sidebar-header",children:[D.jsxs("div",{children:[D.jsx("div",{className:"wf-sidebar-title",children:"Files"}),D.jsx("div",{className:"wf-sidebar-caption",children:l})]}),j&&D.jsxs("div",{className:"wf-sidebar-actions",children:[D.jsx("button",{type:"button",onClick:()=>{Ni("","file")},children:"New File"}),D.jsx("button",{type:"button",onClick:()=>{Ni("","directory")},children:"New Folder"}),D.jsx("button",{type:"button",onClick:()=>zi(""),children:"Upload"})]})]}),D.jsxs("div",{className:"wf-tree-scroll",children:[A[""]&&Xe.length===0&&D.jsx("div",{className:"wf-tree-note",children:"Loading..."}),oe[""]&&q[""]&&D.jsxs("div",{className:"wf-tree-note",children:["Uploading ",q[""].fileName,"... ",q[""].percent,"%"]}),F[""]&&D.jsx("div",{className:"wf-tree-note error",children:F[""]}),!A[""]&&!F[""]&&Xe.length===0&&D.jsx("div",{className:"wf-tree-note",children:"No files found."}),Ui(Xe,0)]}),j&&D.jsx("input",{ref:me,className:"wf-hidden-upload-input",type:"file",onChange:Ct=>{dn(Ct)}})]}),D.jsxs("section",{className:"workflow-editor-main",children:[!G&&D.jsxs("div",{className:"wf-editor-empty",children:[D.jsx("h2",{children:"Select a file"}),D.jsxs("p",{children:["Choose a file from the ",o," explorer to view or edit it."]})]}),G?.kind==="loading"&&D.jsx("div",{className:"wf-editor-empty",children:D.jsx("h2",{children:"Loading file..."})}),G?.kind==="binary"&&D.jsxs("div",{className:"wf-editor-panel",children:[D.jsx("div",{className:"wf-editor-toolbar",children:D.jsxs("div",{className:"wf-editor-filemeta",children:[D.jsx("strong",{children:G.name}),D.jsx("span",{children:G.path})]})}),D.jsxs("div",{className:"wf-editor-empty",children:[D.jsx("h2",{children:"Binary file"}),D.jsx("p",{children:G.message}),D.jsxs("p",{className:"wf-editor-meta-line",children:["Size: ",G.sizeBytes," bytes · Modified: ",Rse(G.modifiedAtMs)]})]})]}),Te&&D.jsxs("div",{className:"wf-editor-panel",children:[D.jsxs("div",{className:"wf-editor-toolbar",children:[D.jsxs("div",{className:"wf-editor-filemeta",children:[D.jsx("strong",{children:Te.name}),D.jsx("span",{children:Te.path})]}),D.jsxs("div",{className:"wf-editor-meta-right",children:[D.jsxs("span",{children:[Te.sizeBytes," bytes"]}),D.jsx("span",{children:Rse(Te.modifiedAtMs)}),Te.isDotenv&&D.jsx("span",{className:"wf-dotenv-pill",children:".env redacted"})]})]}),Te.isDotenv&&D.jsx("div",{className:"wf-dotenv-warning",children:"Redacted values are shown for `.env`. Saving preserves unchanged masked values and applies any edits you make."}),D.jsx("div",{className:"wf-editor-surface",children:D.jsx(dtt,{value:Te.content,language:htt(Te.path),readOnly:!j,onChange:Ct=>{ie(pt=>!pt||pt.kind!=="text"||pt.path!==Te.path?pt:{...pt,content:Ct})}})})]})]})]})]})}function ftt(){return Oc("Workflow Editor"),D.jsx(ype,{entity:"workflow"})}function gtt(){return Oc("Skill Editor"),D.jsx(ype,{entity:"skill"})}function yB(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Spe({entity:s="workflow"}){const{slug:e=""}=TA(),t=Xs(),i=t.loading?null:t.token,n=s==="workflow"?"/api/workflows":"/api/skills",o=s==="workflow"?"Workflow":"Skill",r=s==="workflow"?"workflow":"skill",[a,l]=B.useState(!0),[c,d]=B.useState(!1),[u,f]=B.useState(!1),[p,m]=B.useState(null),[b,w]=B.useState(null),[y,S]=B.useState(!1),[x,L]=B.useState({}),N=B.useCallback(async()=>{if(i){l(!0),m(null);try{const H=await Zt.get(`${n}/${encodeURIComponent(e)}/approval-diff`,{headers:{Authorization:`Bearer ${i}`}}),z=typeof H.data=="string"?JSON.parse(H.data):H.data;w(z),L({})}catch(H){m(yB(H,"Failed to load approval diff"))}finally{l(!1)}}},[n,e,i]);B.useEffect(()=>{N()},[N]);const I=async()=>{if(i){d(!0);try{await Zt.post(`${n}/${encodeURIComponent(e)}/approve`,{},{headers:{Authorization:`Bearer ${i}`}}),S(!0),vt.success(`${o} approved successfully`),await N()}catch(H){vt.error(yB(H,`Failed to approve ${r}`))}finally{d(!1)}}},T=async()=>{if(!(!i||!b||!b.has_previous_snapshot)){f(!0);try{await Zt.post(`${n}/${encodeURIComponent(e)}/reject-restore`,{},{headers:{Authorization:`Bearer ${i}`}}),S(!1),vt.success(`${o} files restored to last approved snapshot`),await N()}catch(H){vt.error(yB(H,"Failed to restore files from approved snapshot"))}finally{f(!1)}}},A=H=>{L(z=>({...z,[H]:!z[H]}))},P=b!==null&&b.files.length>0,F=b?zre(b.files):null;return D.jsxs("div",{className:"approval-review-page",children:[D.jsxs("header",{className:"approval-review-header",children:[D.jsxs("div",{children:[D.jsx("p",{className:"approval-review-eyebrow",children:"Approval Review"}),D.jsx("h1",{className:"approval-review-title",children:e}),D.jsxs("p",{className:"approval-review-subtitle",children:["Review ",r," changes against the last approved snapshot before approving."]})]}),D.jsxs("div",{className:"approval-review-actions",children:[D.jsx("button",{type:"button",className:"approval-review-btn secondary",onClick:()=>{N()},disabled:a||c||u,children:a?"Refreshing...":"Refresh Diff"}),P&&b?.has_previous_snapshot&&D.jsx("button",{type:"button",className:"approval-review-btn danger",onClick:()=>{T()},disabled:a||c||u,children:u?"Restoring...":"Reject & Restore"}),P&&D.jsx("button",{type:"button",className:"approval-review-btn primary",onClick:()=>{I()},disabled:a||c||u||b===null,children:c?"Approving...":`Approve ${o}`})]})]}),y&&D.jsxs("div",{className:"approval-review-banner success",children:[o," approved. You can close this tab."]}),a&&D.jsx("div",{className:"approval-review-state",children:"Loading diff..."}),p&&D.jsx("div",{className:"approval-review-state error",children:p}),!a&&!p&&b&&D.jsxs(D.Fragment,{children:[D.jsxs("section",{className:"approval-review-summary-card",children:[D.jsxs("div",{className:"approval-review-summary-pills",children:[D.jsxs("span",{className:"approval-review-pill added",children:["+",F?.added??0," added"]}),D.jsxs("span",{className:"approval-review-pill modified",children:["~",F?.modified??0," modified"]}),D.jsxs("span",{className:"approval-review-pill deleted",children:["-",F?.deleted??0," deleted"]})]}),D.jsx("p",{className:"approval-review-note",children:b.has_previous_snapshot?"Comparing current code to the previously approved snapshot.":"No previous approved snapshot. All included files are shown as new."})]}),D.jsx("section",{className:"approval-review-files",children:b.files.length===0?D.jsx("div",{className:"approval-review-empty",children:"No differences from the approved snapshot."}):b.files.map(H=>(()=>{const z=`${H.status}:${H.path}`,ne=x[z]===!0;return D.jsxs("article",{className:"approval-review-file",children:[D.jsxs("button",{type:"button",className:"approval-review-file-header approval-review-file-toggle",onClick:()=>A(z),"aria-expanded":!ne,"aria-controls":`approval-diff-file-${encodeURIComponent(z)}`,children:[D.jsxs("div",{className:"approval-review-file-header-main",children:[D.jsx("span",{className:"approval-review-file-chevron",children:ne?"▸":"▾"}),D.jsx("div",{className:"approval-review-file-path",children:H.path})]}),D.jsxs("div",{className:"approval-review-file-badges",children:[D.jsx("span",{className:"approval-review-file-badge collapse-label",children:ne?"collapsed":"expanded"}),D.jsx("span",{className:`approval-review-file-badge ${H.status}`,children:H.status}),D.jsx("span",{className:"approval-review-file-badge kind",children:H.kind})]})]}),!ne&&D.jsxs("div",{id:`approval-diff-file-${encodeURIComponent(z)}`,children:[H.message&&D.jsxs("div",{className:"approval-review-file-message",children:[H.message,(H.old_size_bytes!==null||H.new_size_bytes!==null)&&D.jsxs("span",{children:[" (",H.old_size_bytes??0,"B → ",H.new_size_bytes??0,"B)"]})]}),H.patch_lines&&D.jsx("div",{className:"approval-review-patch-scroll",children:D.jsxs("div",{className:"approval-review-patch",children:[H.patch_lines.map((G,ie)=>{const Z=G.startsWith("+")?"added":G.startsWith("-")?"removed":G.startsWith("@@")?"hunk":"context";return D.jsx("div",{className:`approval-review-line ${Z}`,children:G},`${H.path}-${ie}`)}),H.is_truncated&&D.jsx("div",{className:"approval-review-line truncated",children:"... diff truncated ..."})]})})]})]},z)})())})]})]})}function ptt(){return Oc("Workflow Approval"),D.jsx(Spe,{entity:"workflow"})}function mtt(){return Oc("Skill Approval"),D.jsx(Spe,{entity:"skill"})}function Ase(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Ose(s){return s?new Date(s).toLocaleString():"Not completed"}function _tt(s,e){if(!e)return"Running...";const t=e-s;return t<1e3?`${t}ms`:t<6e4?`${(t/1e3).toFixed(1)}s`:`${(t/6e4).toFixed(1)}m`}function btt(s){if(!s)return"No input provided";try{const e=JSON.parse(s);return JSON.stringify(e,null,2)}catch{return s}}function vtt(){const{id:s=""}=TA(),e=zr(),t=Xs(),i=t.loading?null:t.token,[n,o]=B.useState(!0),[r,a]=B.useState(null),[l,c]=B.useState(null),[d,u]=B.useState("No logs captured."),[f,p]=B.useState(!1),m=B.useRef(null);Oc("Run Details");const b=B.useMemo(()=>i?{Authorization:`Bearer ${i}`}:void 0,[i]);if(B.useEffect(()=>{m.current=l?.status??null},[l]),B.useEffect(()=>{if(!b)return;let y=!1;const S=async L=>{L&&o(!0);try{const[N,I]=await Promise.all([Zt.get(`/api/workflows/runs/${encodeURIComponent(s)}`,{headers:b}),Zt.get(`/api/workflows/runs/logs?run_id=${encodeURIComponent(s)}`,{headers:b})]);if(!y){const T=N.data.run;c(T),I.data?.found&&typeof I.data.logs=="string"?u(I.data.logs):u(T.output||"No logs captured."),a(null)}}catch(N){y||a(Ase(N,"Failed to load run details"))}finally{!y&&L&&o(!1)}};S(!0);const x=window.setInterval(()=>{y||m.current&&m.current!=="running"||S(!1)},1e3);return()=>{y=!0,window.clearInterval(x)}},[b,s]),t.loading)return null;const w=async()=>{if(!(!b||!l||l.status!=="running")){p(!0);try{await Zt.post(`/api/workflows/runs/${encodeURIComponent(s)}/stop`,{},{headers:b}),vt.info("Stop requested")}catch(y){vt.error(Ase(y,"Failed to stop workflow run"))}finally{p(!1)}}};return D.jsxs("div",{className:"run-details-page",children:[D.jsxs("header",{className:"run-details-header",children:[D.jsx("button",{className:"run-details-back-btn",onClick:()=>e("/?tab=history"),children:"Back to Run History"}),D.jsx("h1",{children:"Run Details"})]}),n&&null,r&&D.jsx("div",{className:"run-details-state error",children:r}),!n&&!r&&l&&D.jsxs("div",{className:"run-details-content",children:[D.jsxs("section",{className:"run-details-card",children:[D.jsxs("div",{className:"run-details-title-row",children:[D.jsx("h2",{children:l.workflow_slug}),D.jsxs("div",{className:"run-details-title-actions",children:[l.status==="running"&&D.jsx("button",{type:"button",className:"run-details-stop-btn",onClick:()=>{w()},disabled:f,children:f?"Stopping...":"Stop"}),D.jsx("span",{className:`run-details-status status-${l.status}`,children:l.status})]})]}),D.jsxs("div",{className:"run-details-grid",children:[D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Ran by"}),D.jsxs("p",{children:[l.user.name," (",l.user.email,")"]})]}),D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Started"}),D.jsx("p",{children:Ose(l.started_at)})]}),D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Completed"}),D.jsx("p",{children:Ose(l.completed_at)})]}),D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Duration"}),D.jsx("p",{children:_tt(l.started_at,l.completed_at)})]})]})]}),D.jsxs("section",{className:"run-details-card",children:[D.jsx("h3",{children:"Input"}),D.jsx("pre",{children:btt(l.args)})]}),D.jsxs("section",{className:"run-details-card",children:[D.jsx("h3",{children:"Logs"}),D.jsx("pre",{children:d||"No logs captured."})]})]})]})}function Pse(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Ctt(s){const e={};for(const[t,i]of Object.entries(s))i.type==="boolean"?e[t]=i.default===!0:i.default!==void 0?e[t]=String(i.default):e[t]="";return e}function wtt(){const{slug:s=""}=TA(),e=zr(),t=Xs(),i=t.loading?null:t.token,[n,o]=B.useState(!0),[r,a]=B.useState(!1),[l,c]=B.useState(null),[d,u]=B.useState(null),[f,p]=B.useState({});Oc("Manual Run");const m=B.useMemo(()=>i?{Authorization:`Bearer ${i}`}:void 0,[i]);B.useEffect(()=>{if(!m)return;let y=!1;return(async()=>{o(!0),c(null);try{const L=(await Zt.get(`/api/workflows/${encodeURIComponent(s)}`,{headers:m})).data.workflow;y||(u(L),p(Ctt(L.manifest.inputs||{})))}catch(x){y||c(Pse(x,"Failed to load workflow details"))}finally{y||o(!1)}})(),()=>{y=!0}},[m,s]);const b=(y,S)=>{p(x=>({...x,[y]:S}))},w=async()=>{if(!m||!d)return;const y=d.manifest.inputs||{},S={};for(const[x,L]of Object.entries(y)){const N=f[x];if(L.type==="boolean"){S[x]=!!N;continue}const T=(typeof N=="string"?N:String(N)).trim();if(T.length===0){if(L.required!==!1&&L.default===void 0){vt.error(`Missing required input: ${x}`);return}continue}if(L.type==="number"){const A=Number(T);if(!Number.isFinite(A)){vt.error(`Invalid number for input: ${x}`);return}S[x]=A;continue}S[x]=T}a(!0);try{const x=await Zt.post(`/api/workflows/${encodeURIComponent(s)}/manual-run`,{inputs:S},{headers:m}),L=String(x.data.run_id);e(`/runs/${encodeURIComponent(L)}`)}catch(x){vt.error(Pse(x,"Failed to start manual workflow run"))}finally{a(!1)}};return t.loading?null:D.jsxs("div",{className:"manual-run-page",children:[D.jsxs("header",{className:"manual-run-header",children:[D.jsx("button",{className:"manual-run-back-btn",onClick:()=>e("/?tab=workflows"),children:"Back to Workflows"}),D.jsx("h1",{children:"Manual Run"})]}),n&&D.jsx("div",{className:"manual-run-state",children:"Loading workflow inputs..."}),l&&D.jsx("div",{className:"manual-run-state error",children:l}),!n&&!l&&d&&D.jsxs("div",{className:"manual-run-content",children:[D.jsxs("section",{className:"manual-run-card",children:[D.jsx("h2",{children:d.name||d.slug}),D.jsx("p",{children:"Provide input values and run the workflow manually."}),d.required_secrets.length>0&&D.jsxs("p",{className:"manual-run-card-meta",children:["Required secrets: ",d.required_secrets.join(", ")]}),d.missing_required_secrets.length>0&&D.jsxs("p",{className:"manual-run-card-error",children:["Missing secrets: ",d.missing_required_secrets.join(", "),". Add them in Profile Secrets before running this workflow."]})]}),D.jsxs("section",{className:"manual-run-card",children:[D.jsx("h3",{children:"Inputs"}),D.jsx("div",{className:"manual-run-form-grid",children:Object.entries(d.manifest.inputs||{}).map(([y,S])=>D.jsxs("label",{className:"manual-run-field",children:[D.jsxs("span",{className:"manual-run-field-label",children:[y,S.required!==!1&&D.jsx("span",{className:"manual-run-required",children:"*"})]}),S.description&&D.jsx("span",{className:"manual-run-field-desc",children:S.description}),S.type==="boolean"?D.jsxs("div",{className:"manual-run-boolean-group",role:"group","aria-label":`${y} boolean input`,children:[D.jsx("button",{type:"button",className:`manual-run-boolean-btn ${f[y]===!0?"active":""}`,onClick:()=>b(y,!0),children:"Yes"}),D.jsx("button",{type:"button",className:`manual-run-boolean-btn ${f[y]!==!0?"active":""}`,onClick:()=>b(y,!1),children:"No"})]}):D.jsx("input",{type:S.type==="number"?"number":"text",value:String(f[y]??""),onChange:x=>b(y,x.target.value),placeholder:S.default!==void 0?String(S.default):""})]},y))}),D.jsx("div",{className:"manual-run-actions",children:D.jsx("button",{type:"button",className:"manual-run-submit-btn",onClick:()=>{w()},disabled:r||d.missing_required_secrets.length>0,children:r?"Starting...":"Run Workflow"})})]})]})]})}function ytt(s){const e=s.match(/enter code:\s*(.+)$/i);return!e||!e[1]?"":e[1].trim()}function Fse(s,e){return e==="anthropic"&&s.type==="oauth"?!1:s.type!=="oauth"?!0:!s.label.toLowerCase().includes("browser")}function Stt(s){const e=s.split("/").slice(1).join("/");return[{key:"AZURE_API_KEY",value:"abc123xyz",help:"API key for the Azure OpenAI resource."},{key:"AZURE_OPENAI_ENDPOINT",value:"https://my-resource.openai.azure.com/",help:"Base endpoint for the Azure OpenAI resource."},{key:"OPENCODE_MODEL",value:`azure-openai/${e}`,help:"Provider id plus the Azure deployment name."}]}function xtt(){const s=Xs(),e=s.loading?null:s.token,t=zr();Oc("OpenCode Auth Setup");const[i,n]=B.useState(null),[o,r]=B.useState(null),[a,l]=B.useState(""),[c,d]=B.useState(null),[u,f]=B.useState(""),[p,m]=B.useState(""),[b,w]=B.useState(!0),y=B.useRef(null),S=B.useMemo(()=>i?i.methods.filter(Q=>Fse(Q,i.provider_id)):[],[i]),x=B.useMemo(()=>e?{Authorization:`Bearer ${e}`}:void 0,[e]);function L(Q,oe){const ue=Q instanceof An?Q.response?.data?.message||Q.response?.data||Q.message:oe;return typeof ue=="string"?ue:oe}const N=B.useMemo(()=>o===null?null:S.find(Q=>Q.index===o)||null,[S,o]),I=c?.method==="code",T=c?.method==="auto",A=c?ytt(c.instructions):"",P=!I&&i?.provider_id==="azure-openai",F=i?Stt(i.model):[];function H(){y.current&&(y.current.abort(),y.current=null),d(null),f("")}const z=B.useCallback(async()=>{if(e){w(!0);try{const Q=await Zt.get("/api/opencode-auth/status",{headers:x}),oe=Q.data.methods.filter(ue=>Fse(ue,Q.data.provider_id));n({...Q.data,methods:oe}),m(""),r(ue=>ue!==null&&oe.some(q=>q.index===ue)?ue:oe[0]?.index??null)}catch(Q){m(L(Q,"Failed to load opencode auth status"))}finally{w(!1)}}},[x,e]);B.useEffect(()=>{z()},[z]),B.useEffect(()=>()=>{y.current&&(y.current.abort(),y.current=null)},[]);const ne=async()=>{if(!(!e||o===null)){if(!a){vt.error("API key is required");return}try{await Zt.post("/api/opencode-auth/api",{key:a},{headers:x}),l(""),vt.success("API key saved"),t("/opencode-auth/complete",{replace:!0})}catch(Q){vt.error(L(Q,"Failed to save API key"))}}},G=async()=>{if(!(!e||o===null))try{const Q=await Zt.post("/api/opencode-auth/oauth/authorize",{method:o},{headers:x});if(d(Q.data),window.open(Q.data.url,"_blank","noopener,noreferrer"),Q.data.method==="auto"){const oe=new AbortController;y.current=oe;try{await Zt.post("/api/opencode-auth/oauth/callback",{method:o},{headers:x,timeout:12e4,signal:oe.signal}),H(),vt.success("OAuth connected"),t("/opencode-auth/complete",{replace:!0})}catch(ue){if(ue instanceof An&&ue.code==="ERR_CANCELED")return;vt.error(L(ue,"Failed to complete OAuth flow"))}finally{y.current===oe&&(y.current=null)}}}catch(Q){vt.error(L(Q,"Failed to start OAuth flow"))}},ie=async()=>{if(!(!e||o===null||!c)){if(c.method==="code"&&!u){vt.error("Authorization code is required");return}try{await Zt.post("/api/opencode-auth/oauth/callback",{method:o,code:c.method==="code"?u:void 0},{headers:x}),H(),vt.success("OAuth connected"),t("/opencode-auth/complete",{replace:!0})}catch(Q){vt.error(L(Q,"Failed to complete OAuth flow"))}}},Z=async Q=>{Q.key==="Enter"&&(Q.preventDefault(),await ie())};return b?D.jsx("div",{className:"opencode-auth-page",children:D.jsx("p",{className:"opencode-auth-loading",children:"Checking opencode credentials..."})}):p?D.jsx("div",{className:"opencode-auth-page",children:D.jsxs("section",{className:"opencode-auth-panel",children:[D.jsx("h1",{children:"Model Authentication Setup"}),D.jsx("p",{className:"opencode-auth-error",children:p})]})}):i?T?D.jsx("div",{className:"opencode-auth-page",children:D.jsxs("section",{className:"opencode-auth-panel opencode-auth-panel-minimal",children:[D.jsx("header",{className:"opencode-auth-header opencode-auth-header-minimal",children:D.jsxs("div",{children:[D.jsx("h1",{children:"Model Authentication Setup"}),D.jsx("p",{className:"opencode-auth-subtitle",children:"Enter this device code in the opened OAuth page."})]})}),D.jsxs("div",{className:"opencode-auth-oauth-state",children:[D.jsx("label",{htmlFor:"opencode-device-code",children:"Device Code"}),D.jsx("input",{id:"opencode-device-code",type:"text",value:A,readOnly:!0}),D.jsx("p",{className:"opencode-auth-waiting",children:"Waiting for OAuth completion..."}),D.jsx("button",{type:"button",className:"opencode-auth-secondary",onClick:H,children:"Go back"})]})]})}):D.jsx("div",{className:"opencode-auth-page",children:D.jsxs("section",{className:"opencode-auth-panel",children:[D.jsxs("header",{className:"opencode-auth-header",children:[D.jsxs("div",{children:[D.jsx("h1",{children:"Model Authentication Setup"}),D.jsx("p",{className:"opencode-auth-subtitle",children:P?D.jsxs(D.Fragment,{children:["This model is configured at the service level for ",D.jsx("strong",{children:i.model})]}):D.jsxs(D.Fragment,{children:["Configure credentials for ",D.jsx("strong",{children:i.model})]})}),D.jsxs("p",{className:"opencode-auth-meta",children:["Provider: ",D.jsx("code",{children:i.provider_id})]})]}),D.jsx("div",{className:`opencode-auth-badge ${i.has_credentials?"is-connected":"is-required"}`,children:i.has_credentials?"Connected":P?"Admin Managed":"Setup Required"})]}),I&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:"Enter Authorization Code"}),D.jsxs("div",{className:"opencode-auth-card",children:[D.jsx("label",{htmlFor:"opencode-oauth-code",children:"Authorization Code"}),D.jsx("input",{id:"opencode-oauth-code",type:"text",value:u,onChange:Q=>f(Q.target.value),onKeyDown:Z,placeholder:"Paste authorization code and press Enter"}),D.jsx("button",{type:"button",onClick:ie,children:"Submit code"}),D.jsx("button",{type:"button",className:"opencode-auth-secondary",onClick:H,children:"Go back"})]})]}),!I&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:P?"Service Configuration":"Choose auth method"}),S.length===0&&!P&&D.jsxs("p",{className:"opencode-auth-error",children:["No auth methods are available for provider ",D.jsx("code",{children:i.provider_id}),"."]}),P&&D.jsxs("div",{className:"opencode-auth-card opencode-auth-managed-card",children:[D.jsx("div",{className:"opencode-auth-card-header opencode-auth-managed-header",children:D.jsxs("div",{children:[D.jsx("h3",{children:"Managed By Administrator"}),D.jsx("p",{className:"opencode-auth-help",children:"This provider is read-only in TeamCopilot."})]})}),D.jsxs("div",{className:"opencode-auth-managed-layout",children:[D.jsx("p",{className:"opencode-auth-managed-intro",children:"Azure OpenAI is configured through service environment variables. To update this model, ask the service administrator to change the values below and restart TeamCopilot."}),D.jsxs("div",{className:"opencode-auth-managed-example-block",children:[D.jsxs("div",{className:"opencode-auth-managed-example-header",children:[D.jsx("h4",{children:"Required Values"}),D.jsxs("p",{children:["Use your Azure deployment name in ",D.jsx("code",{children:"OPENCODE_MODEL"})]})]}),D.jsx("div",{className:"opencode-auth-managed-example-list",children:F.map(Q=>D.jsxs("div",{className:"opencode-auth-managed-example-row",children:[D.jsx("div",{className:"opencode-auth-managed-example-copy",children:D.jsxs("code",{children:[Q.key,"=",Q.value]})}),D.jsx("p",{children:Q.help})]},Q.key))})]})]})]}),S.length>0&&D.jsx("div",{className:"opencode-auth-method-grid",children:S.map(Q=>D.jsxs("button",{type:"button",className:`opencode-auth-method ${o===Q.index?"is-selected":""}`,onClick:()=>{r(Q.index),d(null),f("")},children:[D.jsx("span",{className:"opencode-auth-method-label",children:Q.label}),D.jsx("span",{className:"opencode-auth-method-type",children:Q.type.toUpperCase()})]},Q.index))})]}),!I&&N?.type==="api"&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:"API key"}),D.jsx("p",{className:"opencode-auth-help",children:"Paste the API key for your selected provider and save it."}),D.jsxs("div",{className:"opencode-auth-card",children:[D.jsx("label",{htmlFor:"opencode-api-key",children:"Provider API Key"}),D.jsx("input",{id:"opencode-api-key",type:"password",value:a,onChange:Q=>l(Q.target.value),placeholder:"Paste API key"}),D.jsx("button",{type:"button",onClick:ne,children:"Save API Key"})]})]}),!I&&N?.type==="oauth"&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:"OAuth"}),!T&&D.jsx("p",{className:"opencode-auth-help",children:"Use OAuth login for subscription-backed access (for example Pro/Max plans)."}),D.jsx("div",{className:"opencode-auth-card",children:!T&&D.jsx("button",{type:"button",onClick:G,children:"Start OAuth"})})]})]})}):null}function Ltt(){const s=zr();return Oc("OpenCode Auth Complete"),D.jsx("div",{className:"opencode-auth-complete-page",children:D.jsxs("section",{className:"opencode-auth-complete-card",children:[D.jsx("h1",{children:"Authentication Complete"}),D.jsx("p",{children:"Your model credentials are configured successfully."}),D.jsx("button",{type:"button",onClick:()=>s("/"),children:"Continue to dashboard"})]})})}function Bse(s,e){const t=s instanceof An?s.response?.data?.message||s.response?.data||s.message:e;return typeof t=="string"?t:e}function ktt(){const s=Xs(),e=s.loading?null:s.token,t=zr(),i=!s.loading&&s.user?.role==="Engineer",[n,o]=B.useState(""),[r,a]=B.useState(!0),[l,c]=B.useState(!1),[d,u]=B.useState("");Oc("Global AI Instructions");const f=B.useCallback(async()=>{if(!e||!i){a(!1);return}a(!0),u("");try{const m=await Zt.get("/api/chat/user-instructions",{headers:{Authorization:`Bearer ${e}`}});o(typeof m.data?.content=="string"?m.data.content:"")}catch(m){u(Bse(m,"Failed to load global AI instructions"))}finally{a(!1)}},[i,e]);B.useEffect(()=>{f()},[f]);const p=async()=>{if(!(!e||!i)){c(!0);try{await Zt.put("/api/chat/user-instructions",{content:n},{headers:{Authorization:`Bearer ${e}`}}),u(""),vt.success("Global AI instructions saved")}catch(m){vt.error(Bse(m,"Failed to save global AI instructions"))}finally{c(!1)}}};return B.useEffect(()=>{const m=b=>{(b.metaKey||b.ctrlKey)&&b.key.toLowerCase()==="s"&&(b.preventDefault(),!r&&!l&&p())};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[p,r,l]),s.loading?null:i?D.jsx("div",{className:"user-instructions-page",children:D.jsxs("div",{className:"user-instructions-card",children:[D.jsxs("div",{className:"user-instructions-header",children:[D.jsxs("div",{children:[D.jsx("h1",{children:"Global AI instructions"}),D.jsxs("p",{children:["These are saved to ",D.jsx("code",{children:"USER_INSTRUCTIONS.md"})," at the workspace root and apply immediately."]})]}),D.jsxs("div",{className:"user-instructions-actions",children:[D.jsx("button",{type:"button",className:"secondary",onClick:()=>t("/?tab=ai"),children:"Back to AI chat"}),D.jsx("button",{type:"button",onClick:()=>{p()},disabled:r||l,children:"Save"})]})]}),d?D.jsx("div",{className:"user-instructions-error",children:d}):null,D.jsx("textarea",{className:"user-instructions-editor",value:n,onChange:m=>o(m.target.value),placeholder:r?"Loading...":"Add custom instructions for the AI agent here. You can tell it about your organisation, target audience, team members, anything on how it should behave, or what it should restrict.",disabled:r||l,spellCheck:!1})]})}):D.jsx("div",{className:"user-instructions-page",children:D.jsxs("div",{className:"user-instructions-card",children:[D.jsx("h1",{children:"Global AI instructions"}),D.jsx("p",{children:"Only engineers can modify global AI instructions."}),D.jsx("div",{className:"user-instructions-actions",children:D.jsx("button",{type:"button",className:"secondary",onClick:()=>t("/?tab=ai"),children:"Back to AI chat"})})]})})}function SB(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Wse(s){return[...s].sort((e,t)=>e.key.localeCompare(t.key))}function Dtt(){const s=Xs(),e=zr(),t=s.loading?null:s.token,i=!s.loading&&s.user?.role==="Engineer",n=B.useMemo(()=>t?{Authorization:`Bearer ${t}`}:void 0,[t]),[o,r]=B.useState(!0),[a,l]=B.useState(null),[c,d]=B.useState([]),[u,f]=B.useState([]),[p,m]=B.useState(""),[b,w]=B.useState(""),[y,S]=B.useState(""),[x,L]=B.useState(""),[N,I]=B.useState(null),[T,A]=B.useState(null);Oc("Profile Secrets");const P=B.useCallback(async()=>{if(n){r(!0),l(null);try{const z=Zt.get("/api/users/me/secrets",{headers:n}),ne=Zt.get("/api/secrets/global",{headers:n}),[G,ie]=await Promise.all([z,ne]);d(Wse(G.data.secrets||[])),f(Wse(ie.data.secrets||[]))}catch(z){l(SB(z,"Failed to load secrets"))}finally{r(!1)}}},[n,i]);B.useEffect(()=>{P()},[P]);const F=async z=>{if(!n)return;const ne=z==="user"?p:y,G=z==="user"?b:x,ie=ne.trim().toUpperCase();if(!ie||!G){vt.error("Both key and value are required");return}I(z);try{await Zt.put(z==="user"?`/api/users/me/secrets/${encodeURIComponent(ie)}`:`/api/secrets/global/${encodeURIComponent(ie)}`,{value:G},{headers:n}),vt.success(z==="user"?"Personal secret saved":"Global secret saved"),z==="user"?(m(""),w("")):(S(""),L("")),await P()}catch(Z){vt.error(SB(Z,"Failed to save secret"))}finally{I(null)}},H=async(z,ne)=>{if(n){A(`${z}:${ne}`);try{await Zt.delete(z==="user"?`/api/users/me/secrets/${encodeURIComponent(ne)}`:`/api/secrets/global/${encodeURIComponent(ne)}`,{headers:n}),vt.success(z==="user"?"Personal secret deleted":"Global secret deleted"),await P()}catch(G){vt.error(SB(G,"Failed to delete secret"))}finally{A(null)}}};return s.loading?null:D.jsx("div",{className:"profile-secrets-page",children:D.jsxs("div",{className:"profile-secrets-card",children:[D.jsxs("div",{className:"profile-secrets-header",children:[D.jsxs("div",{children:[D.jsx("h1",{children:"Profile Secrets"}),D.jsx("p",{children:"Workflows and skills can require secret keys. Your personal secrets override engineer-managed global secrets with the same key."})]}),D.jsx("div",{className:"profile-secrets-actions",children:D.jsx("button",{type:"button",className:"secondary",onClick:()=>e("/"),children:"Back Home"})})]}),o&&D.jsx("div",{className:"profile-secrets-state",children:"Loading secrets..."}),a&&D.jsx("div",{className:"profile-secrets-error",children:a}),!o&&!a&&D.jsxs(D.Fragment,{children:[D.jsxs("section",{className:"profile-secrets-section",children:[D.jsx("div",{className:"profile-secrets-section-header",children:D.jsxs("div",{children:[D.jsx("h2",{children:"My Secrets"}),D.jsx("p",{children:"Visible only to you in masked form. Re-saving the same key replaces its value."})]})}),D.jsxs("div",{className:"profile-secrets-form",children:[D.jsx("input",{type:"text",name:"user-secret-key",autoComplete:"off",placeholder:"OPENAI_API_KEY",value:p,onChange:z=>m(z.target.value.toUpperCase())}),D.jsx("input",{type:"password",name:"user-secret-value",autoComplete:"new-password",placeholder:"Secret value",value:b,onChange:z=>w(z.target.value)}),D.jsx("button",{type:"button",onClick:()=>{F("user")},disabled:N!==null,children:N==="user"?"Saving...":"Save Secret"})]}),D.jsx("div",{className:"profile-secrets-list",children:c.length===0?D.jsx("div",{className:"profile-secrets-empty",children:"No personal secrets saved yet."}):c.map(z=>D.jsxs("div",{className:"profile-secrets-item",children:[D.jsxs("div",{children:[D.jsx("div",{className:"profile-secrets-item-key",children:z.key}),D.jsxs("div",{className:"profile-secrets-item-meta",children:[z.value," · Updated ",new Date(z.updated_at).toLocaleString()]})]}),D.jsx("button",{type:"button",className:"danger",onClick:()=>{H("user",z.key)},disabled:T===`user:${z.key}`,children:T===`user:${z.key}`?"Deleting...":"Delete"})]},z.key))})]}),D.jsxs("section",{className:"profile-secrets-section",children:[D.jsx("div",{className:"profile-secrets-section-header",children:D.jsxs("div",{children:[D.jsx("h2",{children:"Global Secrets"}),D.jsxs("p",{children:["Shared fallback secrets managed by engineers. Usable by all users, but personal secrets with the same key override these.",i?"":" You can view these masked values, but only engineers can edit them."]})]})}),i&&D.jsxs("div",{className:"profile-secrets-form",children:[D.jsx("input",{type:"text",name:"global-secret-key",autoComplete:"off",placeholder:"SLACK_BOT_TOKEN",value:y,onChange:z=>S(z.target.value.toUpperCase())}),D.jsx("input",{type:"password",name:"global-secret-value",autoComplete:"new-password",placeholder:"Global secret value",value:x,onChange:z=>L(z.target.value)}),D.jsx("button",{type:"button",onClick:()=>{F("global")},disabled:N!==null,children:N==="global"?"Saving...":"Save Global Secret"})]}),D.jsx("div",{className:"profile-secrets-list",children:u.length===0?D.jsx("div",{className:"profile-secrets-empty",children:"No global secrets saved yet."}):u.map(z=>D.jsxs("div",{className:"profile-secrets-item",children:[D.jsxs("div",{children:[D.jsx("div",{className:"profile-secrets-item-key",children:z.key}),D.jsxs("div",{className:"profile-secrets-item-meta",children:[z.value," · Updated ",new Date(z.updated_at).toLocaleString()]})]}),i&&D.jsx("button",{type:"button",className:"danger",onClick:()=>{H("global",z.key)},disabled:T===`global:${z.key}`,children:T===`global:${z.key}`?"Deleting...":"Delete"})]},z.key))})]})]})]})})}function Oq(s){const[e,t]=B.useState(null),[i,n]=B.useState(!1);return B.useEffect(()=>{s&&Zt.get("/api/opencode-auth/status",{headers:{Authorization:`Bearer ${s}`}}).then(o=>{n(o.data.has_credentials),t(s)}).catch(o=>{const r=o instanceof An?o.response?.data?.message||o.response?.data||o.message:"Failed to check opencode auth status";console.error(r),n(!1),t(s)})},[s]),s?{loading:e!==s,hasCredentials:i}:{loading:!1,hasCredentials:!1}}function Uc({children:s}){const e=Xs();return e.loading?null:e.user?D.jsx(D.Fragment,{children:s}):D.jsx(mk,{to:"/login",replace:!0})}function mh({children:s}){const e=Xs(),t=e.loading?null:e.token,{loading:i,hasCredentials:n}=Oq(t);return i?null:n?D.jsx(D.Fragment,{children:s}):D.jsx(mk,{to:"/opencode-auth",replace:!0})}function Ett(){const s=Xs(),e=s.loading?null:s.token,{loading:t}=Oq(e);return t?null:D.jsx(xtt,{})}function Ntt(){const s=Xs(),e=s.loading?null:s.token,{loading:t,hasCredentials:i}=Oq(e);return t?null:i?D.jsx(Ltt,{}):D.jsx(mk,{to:"/opencode-auth",replace:!0})}function Itt({children:s}){const e=Xs();return e.loading?null:e.user?D.jsx(mk,{to:"/",replace:!0}):D.jsx(D.Fragment,{children:s})}function Ttt(){const s=Xs(),e=zr(),[t,i]=B.useState(null),[n,o]=B.useState(null),[r,a]=B.useState(!1);return B.useEffect(()=>{Zt.get("/api/workspace").then(l=>{i(l.data.workspace_dir),o(null)}).catch(l=>{const c=l instanceof An?l.response?.data?.message||l.response?.data||l.message:"Failed to load workspace path";o(c)})},[]),B.useEffect(()=>{const l=()=>{window.innerWidth>720&&a(!1)};return window.addEventListener("resize",l),()=>window.removeEventListener("resize",l)},[]),D.jsxs("div",{className:"app-shell",children:[D.jsxs("header",{className:"app-header",children:[D.jsxs("div",{className:"app-header-top",children:[D.jsxs("div",{className:"app-brand-block",children:[D.jsxs("div",{className:"app-brand-row",children:[D.jsxs("div",{className:"app-brand",children:[D.jsx("img",{src:"/logo.svg",alt:"TeamCopilot logo",className:"app-brand-logo"}),D.jsxs("div",{className:"app-brand-copy",children:[D.jsx("div",{className:"app-brand-text",children:"TeamCopilot"}),D.jsxs("div",{className:"app-version",children:["v","0.3.0"]})]})]}),!s.loading&&s.user&&D.jsxs("button",{type:"button",className:"app-header-menu-toggle","aria-label":r?"Close header menu":"Open header menu","aria-expanded":r,"aria-controls":"app-header-mobile-menu",onClick:()=>a(l=>!l),children:[D.jsx("span",{}),D.jsx("span",{}),D.jsx("span",{})]})]}),D.jsxs("div",{className:"app-workspace",children:[D.jsx("span",{className:"app-workspace-label",children:"Workspace"}),D.jsx("span",{className:"app-workspace-value",children:n??t??"Loading..."})]})]}),D.jsxs("div",{className:"app-header-meta",children:[!s.loading&&s.user&&D.jsx("button",{className:"app-header-link-btn",onClick:()=>e("/profile/secrets"),children:"Profile Secrets"}),!s.loading&&s.user&&D.jsxs("div",{className:"app-user",children:[D.jsx("span",{className:"app-user-name",children:s.user.name}),D.jsx("span",{className:"app-user-email",children:s.user.email})]}),!s.loading&&s.user&&D.jsx("button",{className:"app-signout",onClick:s.logout,children:"Sign Out"})]})]}),!s.loading&&s.user&&D.jsxs("div",{id:"app-header-mobile-menu",className:`app-header-mobile-menu ${r?"open":""}`,children:[D.jsxs("div",{className:"app-header-mobile-section",children:[D.jsx("span",{className:"app-header-mobile-label",children:"Version"}),D.jsxs("span",{className:"app-header-mobile-value",children:["v","0.3.0"]})]}),D.jsxs("div",{className:"app-header-mobile-section",children:[D.jsx("span",{className:"app-header-mobile-label",children:"Workspace"}),D.jsx("span",{className:"app-header-mobile-value app-header-mobile-mono",children:n??t??"Loading..."})]}),D.jsxs("div",{className:"app-header-mobile-section",children:[D.jsx("span",{className:"app-header-mobile-label",children:"Signed In As"}),D.jsx("span",{className:"app-header-mobile-value",children:s.user.name}),D.jsx("span",{className:"app-header-mobile-subvalue",children:s.user.email})]}),D.jsx("button",{className:"app-header-link-btn app-header-link-btn-mobile",onClick:()=>e("/profile/secrets"),children:"Profile Secrets"}),D.jsx("button",{className:"app-signout app-signout-mobile",onClick:s.logout,children:"Sign Out"})]})]}),D.jsxs(Bbe,{children:[D.jsx(Ra,{path:"/login",element:D.jsx(Itt,{children:D.jsx(Mwe,{})})}),D.jsx(Ra,{path:"/opencode-auth",element:D.jsx(Uc,{children:D.jsx(Ett,{})})}),D.jsx(Ra,{path:"/opencode-auth/complete",element:D.jsx(Uc,{children:D.jsx(Ntt,{})})}),D.jsx(Ra,{path:"/user-instructions",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(ktt,{})})})}),D.jsx(Ra,{path:"/profile/secrets",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(Dtt,{})})})}),D.jsx(Ra,{path:"/",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(zke,{})})})}),D.jsx(Ra,{path:"/runs/:id",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(vtt,{})})})}),D.jsx(Ra,{path:"/workflows/:slug/manual-run",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(wtt,{})})})}),D.jsx(Ra,{path:"/workflows/:slug",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(ftt,{})})})}),D.jsx(Ra,{path:"/skills/:slug",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(gtt,{})})})}),D.jsx(Ra,{path:"/workflows/:slug/approval-review",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(ptt,{})})})}),D.jsx(Ra,{path:"/skills/:slug/approval-review",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(mtt,{})})})}),D.jsx(Ra,{path:"*",element:D.jsx(mk,{to:"/",replace:!0})})]})]})}function Rtt(){return D.jsx(Rwe,{children:D.jsx(Ttt,{})})}V_e.createRoot(document.getElementById("root")).render(D.jsx(B.StrictMode,{children:D.jsxs(cve,{children:[D.jsx(Rtt,{}),D.jsx(eCe,{position:"bottom-right",autoClose:5e3})]})}));export{iD as m,$he as t};
782
+ `)};const r=await o.provideRenameEdits(this.model,this.position,e,n);if(r){if(r.rejectReason)return this._provideRenameEdits(e,t+1,i.concat(r.rejectReason),n)}else return this._provideRenameEdits(e,t+1,i.concat(v("no result","No result.")),n);return r}}async function aJe(s,e,t,i){const n=new kq(e,t,s),o=await n.resolveRenameLocation(Mt.None);return o?.rejectReason?{edits:[],rejectReason:o.rejectReason}:n.provideRenameEdits(i,Mt.None)}var gb;let Pp=(gb=class{static get(e){return e.getContribution(BV.ID)}constructor(e,t,i,n,o,r,a,l,c){this.editor=e,this._instaService=t,this._notificationService=i,this._bulkEditService=n,this._progressService=o,this._logService=r,this._configService=a,this._languageFeaturesService=l,this._telemetryService=c,this._disposableStore=new _e,this._cts=new In,this._renameWidget=this._disposableStore.add(this._instaService.createInstance(FV,this.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))}dispose(){this._disposableStore.dispose(),this._cts.dispose(!0)}async run(){const e=this._logService.trace.bind(this._logService,"[rename]");if(this._cts.dispose(!0),this._cts=new In,!this.editor.hasModel()){e("editor has no model");return}const t=this.editor.getPosition(),i=new kq(this.editor.getModel(),t,this._languageFeaturesService.renameProvider);if(!i.hasProvider()){e("skeleton has no provider");return}const n=new Rp(this.editor,5,void 0,this._cts.token);let o;try{e("resolving rename location");const m=i.resolveRenameLocation(n.token);this._progressService.showWhile(m,250),o=await m,e("resolved rename location")}catch(m){m instanceof Ec?e("resolve rename location cancelled",JSON.stringify(m,null," ")):(e("resolve rename location failed",m instanceof Error?m:JSON.stringify(m,null," ")),(typeof m=="string"||vd(m))&&ga.get(this.editor)?.showMessage(m||v("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),t));return}finally{n.dispose()}if(!o){e("returning early - no loc");return}if(o.rejectReason){e(`returning early - rejected with reason: ${o.rejectReason}`,o.rejectReason),ga.get(this.editor)?.showMessage(o.rejectReason,t);return}if(n.token.isCancellationRequested){e("returning early - cts1 cancelled");return}const r=new Rp(this.editor,5,o.range,this._cts.token),a=this.editor.getModel(),l=this._languageFeaturesService.newSymbolNamesProvider.all(a),c=await Promise.all(l.map(async m=>[m,await m.supportsAutomaticNewSymbolNamesTriggerKind??!1])),d=(m,b)=>{let w=c.slice();return m===Vx.Automatic&&(w=w.filter(([y,S])=>S)),w.map(([y])=>y.provideNewSymbolNames(a,o.range,m,b))};e("creating rename input field and awaiting its result");const u=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),f=await this._renameWidget.getInput(o.range,o.text,u,l.length>0?d:void 0,r);if(e("received response from rename input field"),l.length>0&&this._reportTelemetry(l.length,a.getLanguageId(),f),typeof f=="boolean"){e(`returning early - rename input field response - ${f}`),f&&this.editor.focus(),r.dispose();return}this.editor.focus(),e("requesting rename edits");const p=Mk(i.provideRenameEdits(f.newName,r.token),r.token).then(async m=>{if(!m){e("returning early - no rename edits result");return}if(!this.editor.hasModel()){e("returning early - no model after rename edits are provided");return}if(m.rejectReason){e(`returning early - rejected with reason: ${m.rejectReason}`),this._notificationService.info(m.rejectReason);return}this.editor.setSelection(M.fromPositions(this.editor.getSelection().getPosition())),e("applying edits"),this._bulkEditService.apply(m,{editor:this.editor,showPreview:f.wantsPreview,label:v("label","Renaming '{0}' to '{1}'",o?.text,f.newName),code:"undoredo.rename",quotableLabel:v("quotableLabel","Renaming {0} to {1}",o?.text,f.newName),respectAutoSaveConfig:!0}).then(b=>{e("edits applied"),b.ariaSummary&&vr(v("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",o.text,f.newName,b.ariaSummary))}).catch(b=>{e(`error when applying edits ${JSON.stringify(b,null," ")}`),this._notificationService.error(v("rename.failedApply","Rename failed to apply edits")),this._logService.error(b)})},m=>{e("error when providing rename edits",JSON.stringify(m,null," ")),this._notificationService.error(v("rename.failed","Rename failed to compute edits")),this._logService.error(m)}).finally(()=>{r.dispose()});return e("returning rename operation"),this._progressService.showWhile(p,250),p}acceptRenameInput(e){this._renameWidget.acceptInput(e)}cancelRenameInput(){this._renameWidget.cancelInput(!0,"cancelRenameInput command")}focusNextRenameSuggestion(){this._renameWidget.focusNextRenameSuggestion()}focusPreviousRenameSuggestion(){this._renameWidget.focusPreviousRenameSuggestion()}_reportTelemetry(e,t,i){const n=typeof i=="boolean"?{kind:"cancelled",languageId:t,nRenameSuggestionProviders:e}:{kind:"accepted",languageId:t,nRenameSuggestionProviders:e,source:i.stats.source.k,nRenameSuggestions:i.stats.nRenameSuggestions,timeBeforeFirstInputFieldEdit:i.stats.timeBeforeFirstInputFieldEdit,wantsPreview:i.wantsPreview,nRenameSuggestionsInvocations:i.stats.nRenameSuggestionsInvocations,hadAutomaticRenameSuggestionsInvocation:i.stats.hadAutomaticRenameSuggestionsInvocation};this._telemetryService.publicLog2("renameInvokedEvent",n)}},BV=gb,gb.ID="editor.contrib.renameController",gb);Pp=BV=rJe([lg(1,it),lg(2,rs),lg(3,Vk),lg(4,Vp),lg(5,ko),lg(6,bO),lg(7,qe),lg(8,Fo)],Pp);class lJe extends ze{constructor(){super({id:"editor.action.rename",label:v("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:be.and(W.writable,W.hasRenameProvider),kbOpts:{kbExpr:W.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})}runCommand(e,t){const i=e.get(gi),[n,o]=Array.isArray(t)&&t||[void 0,void 0];return ot.isUri(n)&&ee.isIPosition(o)?i.openCodeEditor({resource:n},i.getActiveCodeEditor()).then(r=>{r&&(r.setPosition(o),r.invokeWithinContext(a=>(this.reportTelemetry(a,r),this.run(a,r))))},xt):super.runCommand(e,t)}run(e,t){const i=e.get(ko),n=Pp.get(t);return n?(i.trace("[RenameAction] got controller, running..."),n.run()):(i.trace("[RenameAction] returning early - controller missing"),Promise.resolve())}}ai(Pp.ID,Pp,4);ye(lJe);const Dq=Ds.bindToContribution(Pp.get);Fe(new Dq({id:"acceptRenameInput",precondition:Ly,handler:s=>s.acceptRenameInput(!1),kbOpts:{weight:199,kbExpr:be.and(W.focus,be.not("isComposing")),primary:3}}));Fe(new Dq({id:"acceptRenameInputWithPreview",precondition:be.and(Ly,be.has("config.editor.rename.enablePreview")),handler:s=>s.acceptRenameInput(!0),kbOpts:{weight:199,kbExpr:be.and(W.focus,be.not("isComposing")),primary:2051}}));Fe(new Dq({id:"cancelRenameInput",precondition:Ly,handler:s=>s.cancelRenameInput(),kbOpts:{weight:199,kbExpr:W.focus,primary:9,secondary:[1033]}}));Zi(class extends wr{constructor(){super({id:"focusNextRenameSuggestion",title:{..._t("focusNextRenameSuggestion","Focus Next Rename Suggestion")},precondition:Ly,keybinding:[{primary:18,weight:199}]})}run(e){const t=e.get(gi).getFocusedCodeEditor();if(!t)return;const i=Pp.get(t);i&&i.focusNextRenameSuggestion()}});Zi(class extends wr{constructor(){super({id:"focusPreviousRenameSuggestion",title:{..._t("focusPreviousRenameSuggestion","Focus Previous Rename Suggestion")},precondition:Ly,keybinding:[{primary:16,weight:199}]})}run(e){const t=e.get(gi).getFocusedCodeEditor();if(!t)return;const i=Pp.get(t);i&&i.focusPreviousRenameSuggestion()}});$r("_executeDocumentRenameProvider",function(s,e,t,...i){const[n]=i;fi(typeof n=="string");const{renameProvider:o}=s.get(qe);return aJe(o,e,t,n)});$r("_executePrepareRename",async function(s,e,t){const{renameProvider:i}=s.get(qe),o=await new kq(e,t,i).resolveRenameLocation(Mt.None);if(o?.rejectReason)throw new Error(o.rejectReason);return o});Tn.as(Fc.Configuration).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:v("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}});var cJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},pse=function(s,e){return function(t,i){e(t,i,s)}},Jw;let WM=(Jw=class extends se{constructor(e,t,i){super(),this.editor=e,this.languageConfigurationService=t,this.editorWorkerService=i,this.decorations=this.editor.createDecorationsCollection(),this.options=this.createOptions(e.getOption(73)),this.computePromise=null,this.currentOccurrences={},this._register(e.onDidChangeModel(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(e.onDidChangeModelLanguage(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(t.onDidChange(n=>{const o=this.editor.getModel()?.getLanguageId();o&&n.affects(o)&&(this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(e.onDidChangeConfiguration(n=>{this.options&&!n.hasChanged(73)||(this.options=this.createOptions(e.getOption(73)),this.updateDecorations([]),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(this.editor.onDidChangeModelContent(n=>{this.computeSectionHeaders.schedule()})),this._register(e.onDidChangeModelTokens(n=>{this.computeSectionHeaders.isScheduled()||this.computeSectionHeaders.schedule(1e3)})),this.computeSectionHeaders=this._register(new Ai(()=>{this.findSectionHeaders()},250)),this.computeSectionHeaders.schedule(0)}createOptions(e){if(!e||!this.editor.hasModel())return;const t=this.editor.getModel().getLanguageId();if(!t)return;const i=this.languageConfigurationService.getLanguageConfiguration(t).comments,n=this.languageConfigurationService.getLanguageConfiguration(t).foldingRules;if(!(!i&&!n?.markers))return{foldingRules:n,findMarkSectionHeaders:e.showMarkSectionHeaders,findRegionSectionHeaders:e.showRegionSectionHeaders}}findSectionHeaders(){if(!this.editor.hasModel()||!this.options?.findMarkSectionHeaders&&!this.options?.findRegionSectionHeaders)return;const e=this.editor.getModel();if(e.isDisposed()||e.isTooLargeForSyncing())return;const t=e.getVersionId();this.editorWorkerService.findSectionHeaders(e.uri,this.options).then(i=>{e.isDisposed()||e.getVersionId()!==t||this.updateDecorations(i)})}updateDecorations(e){const t=this.editor.getModel();t&&(e=e.filter(o=>{if(!o.shouldBeInComments)return!0;const r=t.validateRange(o.range),a=t.tokenization.getLineTokens(r.startLineNumber),l=a.findTokenIndexAtOffset(r.startColumn-1),c=a.getStandardTokenType(l);return a.getLanguageId(l)===t.getLanguageId()&&c===1}));const i=Object.values(this.currentOccurrences).map(o=>o.decorationId),n=e.map(o=>dJe(o));this.editor.changeDecorations(o=>{const r=o.deltaDecorations(i,n);this.currentOccurrences={};for(let a=0,l=r.length;a<l;a++){const c={sectionHeader:e[a],decorationId:r[a]};this.currentOccurrences[c.decorationId]=c}})}stop(){this.computeSectionHeaders.cancel(),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)}dispose(){super.dispose(),this.stop(),this.decorations.clear()}},Jw.ID="editor.sectionHeaderDetector",Jw);WM=cJe([pse(1,Rn),pse(2,Kr)],WM);function dJe(s){return{range:s.range,options:Et.createDynamic({description:"section-header",stickiness:3,collapseOnReplaceEdit:!0,minimap:{color:void 0,position:1,sectionHeaderStyle:s.hasSeparatorLine?2:1,sectionHeaderText:s.text}})}}ai(WM.ID,WM,1);function uJe(s){for(let e=0,t=s.length;e<t;e+=4){const i=s[e+0],n=s[e+1],o=s[e+2],r=s[e+3];s[e+0]=r,s[e+1]=o,s[e+2]=n,s[e+3]=i}}function hJe(s){const e=new Uint8Array(s.buffer,s.byteOffset,s.length*4);return sae()||uJe(e),pO.wrap(e)}function Kge(s){const e=new Uint32Array(fJe(s));let t=0;if(e[t++]=s.id,s.type==="full")e[t++]=1,e[t++]=s.data.length,e.set(s.data,t),t+=s.data.length;else{e[t++]=2,e[t++]=s.deltas.length;for(const i of s.deltas)e[t++]=i.start,e[t++]=i.deleteCount,i.data?(e[t++]=i.data.length,e.set(i.data,t),t+=i.data.length):e[t++]=0}return hJe(e)}function fJe(s){let e=0;if(e+=2,s.type==="full")e+=1+s.data.length;else{e+=1,e+=3*s.deltas.length;for(const t of s.deltas)t.data&&(e+=t.data.length)}return e}function DP(s){return s&&!!s.data}function Gge(s){return s&&Array.isArray(s.edits)}class gJe{constructor(e,t,i){this.provider=e,this.tokens=t,this.error=i}}function Yge(s,e){return s.has(e)}function pJe(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}async function Zge(s,e,t,i,n){const o=pJe(s,e),r=await Promise.all(o.map(async a=>{let l,c=null;try{l=await a.provideDocumentSemanticTokens(e,a===t?i:null,n)}catch(d){c=d,l=null}return(!l||!DP(l)&&!Gge(l))&&(l=null),new gJe(a,l,c)}));for(const a of r){if(a.error)throw a.error;if(a.tokens)return a}return r.length>0?r[0]:null}function mJe(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:null}class _Je{constructor(e,t){this.provider=e,this.tokens=t}}function bJe(s,e){return s.has(e)}function Xge(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}async function Eq(s,e,t,i){const n=Xge(s,e),o=await Promise.all(n.map(async r=>{let a;try{a=await r.provideDocumentRangeSemanticTokens(e,t,i)}catch(l){Qn(l),a=null}return(!a||!DP(a))&&(a=null),new _Je(r,a)}));for(const r of o)if(r.tokens)return r;return o.length>0?o[0]:null}ni.registerCommand("_provideDocumentSemanticTokensLegend",async(s,...e)=>{const[t]=e;fi(t instanceof ot);const i=s.get(ln).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(qe),o=mJe(n,i);return o?o[0].getLegend():s.get(en).executeCommand("_provideDocumentRangeSemanticTokensLegend",t)});ni.registerCommand("_provideDocumentSemanticTokens",async(s,...e)=>{const[t]=e;fi(t instanceof ot);const i=s.get(ln).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(qe);if(!Yge(n,i))return s.get(en).executeCommand("_provideDocumentRangeSemanticTokens",t,i.getFullModelRange());const o=await Zge(n,i,null,null,Mt.None);if(!o)return;const{provider:r,tokens:a}=o;if(!a||!DP(a))return;const l=Kge({id:0,type:"full",data:a.data});return a.resultId&&r.releaseDocumentSemanticTokens(a.resultId),l});ni.registerCommand("_provideDocumentRangeSemanticTokensLegend",async(s,...e)=>{const[t,i]=e;fi(t instanceof ot);const n=s.get(ln).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(qe),r=Xge(o,n);if(r.length===0)return;if(r.length===1)return r[0].getLegend();if(!i||!M.isIRange(i))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),r[0].getLegend();const a=await Eq(o,n,M.lift(i),Mt.None);if(a)return a.provider.getLegend()});ni.registerCommand("_provideDocumentRangeSemanticTokens",async(s,...e)=>{const[t,i]=e;fi(t instanceof ot),fi(M.isIRange(i));const n=s.get(ln).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(qe),r=await Eq(o,n,M.lift(i),Mt.None);if(!(!r||!r.tokens))return Kge({id:0,type:"full",data:r.tokens.data})});const Nq="editor.semanticHighlighting";function BI(s,e,t){const i=t.getValue(Nq,{overrideIdentifier:s.getLanguageId(),resource:s.uri})?.enabled;return typeof i=="boolean"?i:e.getColorTheme().semanticHighlighting}var Qge=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},hu=function(s,e){return function(t,i){e(t,i,s)}},fg;let WV=class extends se{constructor(e,t,i,n,o,r){super(),this._watchers=Object.create(null);const a=d=>{this._watchers[d.uri.toString()]=new HV(d,e,i,o,r)},l=(d,u)=>{u.dispose(),delete this._watchers[d.uri.toString()]},c=()=>{for(const d of t.getModels()){const u=this._watchers[d.uri.toString()];BI(d,i,n)?u||a(d):u&&l(d,u)}};t.getModels().forEach(d=>{BI(d,i,n)&&a(d)}),this._register(t.onModelAdded(d=>{BI(d,i,n)&&a(d)})),this._register(t.onModelRemoved(d=>{const u=this._watchers[d.uri.toString()];u&&l(d,u)})),this._register(n.onDidChangeConfiguration(d=>{d.affectsConfiguration(Nq)&&c()})),this._register(i.onDidColorThemeChange(c))}dispose(){for(const e of Object.values(this._watchers))e.dispose();super.dispose()}};WV=Qge([hu(0,CO),hu(1,ln),hu(2,Es),hu(3,Wt),hu(4,cl),hu(5,qe)],WV);var fp;let HV=(fp=class extends se{constructor(e,t,i,n,o){super(),this._semanticTokensStylingService=t,this._isDisposed=!1,this._model=e,this._provider=o.documentSemanticTokensProvider,this._debounceInformation=n.for(this._provider,"DocumentSemanticTokens",{min:fg.REQUEST_MIN_DELAY,max:fg.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new Ai(()=>this._fetchDocumentSemanticTokensNow(),fg.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 r=()=>{Wi(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[];for(const a of this._provider.all(e))typeof a.onDidChange=="function"&&this._documentProvidersChangeListeners.push(a.onDidChange(()=>{if(this._currentDocumentRequestCancellationTokenSource){this._providersChangedDuringRequest=!0;return}this._fetchDocumentSemanticTokens.schedule(0)}))};r(),this._register(this._provider.onDidChange(()=>{r(),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(i.onDidColorThemeChange(a=>{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),Wi(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[],this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!Yge(this._provider,this._model)){this._currentDocumentResponse&&this._model.tokenization.setSemanticTokens(null,!1);return}if(!this._model.isAttachedToEditor())return;const e=new In,t=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,i=this._currentDocumentResponse&&this._currentDocumentResponse.resultId||null,n=Zge(this._provider,this._model,t,i,e.token);this._currentDocumentRequestCancellationTokenSource=e,this._providersChangedDuringRequest=!1;const o=[],r=this._model.onDidChangeContent(l=>{o.push(l)}),a=new Ys(!1);n.then(l=>{if(this._debounceInformation.update(this._model,a.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),!l)this._setDocumentSemanticTokens(null,null,null,o);else{const{provider:c,tokens:d}=l,u=this._semanticTokensStylingService.getStyling(c);this._setDocumentSemanticTokens(c,d||null,u,o)}},l=>{l&&(ql(l)||typeof l.message=="string"&&l.message.indexOf("busy")!==-1)||xt(l),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),(o.length>0||this._providersChangedDuringRequest)&&(this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model)))})}static _copy(e,t,i,n,o){o=Math.min(o,i.length-n,e.length-t);for(let r=0;r<o;r++)i[n+r]=e[t+r]}_setDocumentSemanticTokens(e,t,i,n){const o=this._currentDocumentResponse,r=()=>{(n.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&&t&&e.releaseDocumentSemanticTokens(t.resultId);return}if(!e||!i){this._model.tokenization.setSemanticTokens(null,!1);return}if(!t){this._model.tokenization.setSemanticTokens(null,!0),r();return}if(Gge(t)){if(!o){this._model.tokenization.setSemanticTokens(null,!0);return}if(t.edits.length===0)t={resultId:t.resultId,data:o.data};else{let a=0;for(const f of t.edits)a+=(f.data?f.data.length:0)-f.deleteCount;const l=o.data,c=new Uint32Array(l.length+a);let d=l.length,u=c.length;for(let f=t.edits.length-1;f>=0;f--){const p=t.edits[f];if(p.start>l.length){i.warnInvalidEditStart(o.resultId,t.resultId,f,p.start,l.length),this._model.tokenization.setSemanticTokens(null,!0);return}const m=d-(p.start+p.deleteCount);m>0&&(fg._copy(l,d-m,c,u-m,m),u-=m),p.data&&(fg._copy(p.data,0,c,u-p.data.length,p.data.length),u-=p.data.length),d=p.start}d>0&&fg._copy(l,0,c,0,d),t={resultId:t.resultId,data:c}}}if(DP(t)){this._currentDocumentResponse=new vJe(e,t.resultId,t.data);const a=Yle(t,i,this._model.getLanguageId());if(n.length>0)for(const l of n)for(const c of a)for(const d of l.changes)c.applyEdit(d.range,d.text);this._model.tokenization.setSemanticTokens(a,!0)}else this._model.tokenization.setSemanticTokens(null,!0);r()}},fg=fp,fp.REQUEST_MIN_DELAY=300,fp.REQUEST_MAX_DELAY=2e3,fp);HV=fg=Qge([hu(1,CO),hu(2,Es),hu(3,cl),hu(4,qe)],HV);class vJe{constructor(e,t,i){this.provider=e,this.resultId=t,this.data=i}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}_y(WV);var CJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Z0=function(s,e){return function(t,i){e(t,i,s)}},e1;let HM=(e1=class extends se{constructor(e,t,i,n,o,r){super(),this._semanticTokensStylingService=t,this._themeService=i,this._configurationService=n,this._editor=e,this._provider=r.documentRangeSemanticTokensProvider,this._debounceInformation=o.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new Ai(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];const a=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{a()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),a()})),this._register(this._editor.onDidChangeModelContent(l=>{this._cancelAll(),a()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),a()})),this._register(this._configurationService.onDidChangeConfiguration(l=>{l.affectsConfiguration(Nq)&&(this._cancelAll(),a())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),a()})),a()}_cancelAll(){for(const e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,i=this._outstandingRequests.length;t<i;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;const e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!BI(e,this._themeService,this._configurationService)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}if(!bJe(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}const t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(i=>this._requestRange(e,i)))}_requestRange(e,t){const i=e.getVersionId(),n=As(r=>Promise.resolve(Eq(this._provider,e,t,r))),o=new Ys(!1);return n.then(r=>{if(this._debounceInformation.update(e,o.elapsed()),!r||!r.tokens||e.isDisposed()||e.getVersionId()!==i)return;const{provider:a,tokens:l}=r,c=this._semanticTokensStylingService.getStyling(a);e.tokenization.setPartialSemanticTokens(t,Yle(l,c,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(n),()=>this._removeOutstandingRequest(n)),n}},e1.ID="editor.contrib.viewportSemanticTokens",e1);HM=CJe([Z0(1,CO),Z0(2,Es),Z0(3,Wt),Z0(4,cl),Z0(5,qe)],HM);ai(HM.ID,HM,1);class wJe{constructor(e=!0){this.selectSubwords=e}provideSelectionRanges(e,t){const i=[];for(const n of t){const o=[];i.push(o),this.selectSubwords&&this._addInWordRanges(o,e,n),this._addWordRanges(o,e,n),this._addWhitespaceLine(o,e,n),o.push({range:e.getFullModelRange()})}return i}_addInWordRanges(e,t,i){const n=t.getWordAtPosition(i);if(!n)return;const{word:o,startColumn:r}=n,a=i.column-r;let l=a,c=a,d=0;for(;l>=0;l--){const u=o.charCodeAt(l);if(l!==a&&(u===95||u===45))break;if(Tg(u)&&lu(d))break;d=u}for(l+=1;c<o.length;c++){const u=o.charCodeAt(c);if(lu(u)&&Tg(d))break;if(u===95||u===45)break;d=u}l<c&&e.push({range:new M(i.lineNumber,r+l,i.lineNumber,r+c)})}_addWordRanges(e,t,i){const n=t.getWordAtPosition(i);n&&e.push({range:new M(i.lineNumber,n.startColumn,i.lineNumber,n.endColumn)})}_addWhitespaceLine(e,t,i){t.getLineLength(i.lineNumber)>0&&t.getLineFirstNonWhitespaceColumn(i.lineNumber)===0&&t.getLineLastNonWhitespaceColumn(i.lineNumber)===0&&e.push({range:new M(i.lineNumber,1,i.lineNumber,t.getLineMaxColumn(i.lineNumber))})}}var yJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},SJe=function(s,e){return function(t,i){e(t,i,s)}},VV;class Iq{constructor(e,t){this.index=e,this.ranges=t}mov(e){const t=this.index+(e?1:-1);if(t<0||t>=this.ranges.length)return this;const i=new Iq(t,this.ranges);return i.ranges[t].equalsRange(this.ranges[this.index])?i.mov(e):i}}var pb;let rk=(pb=class{static get(e){return e.getContribution(VV.ID)}constructor(e,t){this._editor=e,this._languageFeaturesService=t,this._ignoreSelection=!1}dispose(){this._selectionListener?.dispose()}async run(e){if(!this._editor.hasModel())return;const t=this._editor.getSelections(),i=this._editor.getModel();if(this._state||await epe(this._languageFeaturesService.selectionRangeProvider,i,t.map(o=>o.getPosition()),this._editor.getOption(114),Mt.None).then(o=>{if(!(!Xo(o)||o.length!==t.length)&&!(!this._editor.hasModel()||!Sn(this._editor.getSelections(),t,(r,a)=>r.equalsSelection(a)))){for(let r=0;r<o.length;r++)o[r]=o[r].filter(a=>a.containsPosition(t[r].getStartPosition())&&a.containsPosition(t[r].getEndPosition())),o[r].unshift(t[r]);this._state=o.map(r=>new Iq(0,r)),this._selectionListener?.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{this._ignoreSelection||(this._selectionListener?.dispose(),this._state=void 0)})}}),!this._state)return;this._state=this._state.map(o=>o.mov(e));const n=this._state.map(o=>Ye.fromPositions(o.ranges[o.index].getStartPosition(),o.ranges[o.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(n)}finally{this._ignoreSelection=!1}}},VV=pb,pb.ID="editor.contrib.smartSelectController",pb);rk=VV=yJe([SJe(1,qe)],rk);class Jge extends ze{constructor(e,t){super(t),this._forward=e}async run(e,t){const i=rk.get(t);i&&await i.run(this._forward)}}class xJe extends Jge{constructor(){super(!0,{id:"editor.action.smartSelect.expand",label:v("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:Ge.MenubarSelectionMenu,group:"1_basic",title:v({key:"miSmartSelectGrow",comment:["&& denotes a mnemonic"]},"&&Expand Selection"),order:2}})}}ni.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");class LJe extends Jge{constructor(){super(!1,{id:"editor.action.smartSelect.shrink",label:v("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:Ge.MenubarSelectionMenu,group:"1_basic",title:v({key:"miSmartSelectShrink",comment:["&& denotes a mnemonic"]},"&&Shrink Selection"),order:3}})}}ai(rk.ID,rk,4);ye(xJe);ye(LJe);async function epe(s,e,t,i,n){const o=s.all(e).concat(new wJe(i.selectSubwords));o.length===1&&o.unshift(new xM);const r=[],a=[];for(const l of o)r.push(Promise.resolve(l.provideSelectionRanges(e,t,n)).then(c=>{if(Xo(c)&&c.length===t.length)for(let d=0;d<t.length;d++){a[d]||(a[d]=[]);for(const u of c[d])M.isIRange(u.range)&&M.containsPosition(u.range,t[d])&&a[d].push(M.lift(u.range))}},Qn));return await Promise.all(r),a.map(l=>{if(l.length===0)return[];l.sort((f,p)=>ee.isBefore(f.getStartPosition(),p.getStartPosition())?1:ee.isBefore(p.getStartPosition(),f.getStartPosition())||ee.isBefore(f.getEndPosition(),p.getEndPosition())?-1:ee.isBefore(p.getEndPosition(),f.getEndPosition())?1:0);const c=[];let d;for(const f of l)(!d||M.containsRange(f,d)&&!M.equalsRange(f,d))&&(c.push(f),d=f);if(!i.selectLeadingAndTrailingWhitespace)return c;const u=[c[0]];for(let f=1;f<c.length;f++){const p=c[f-1],m=c[f];if(m.startLineNumber!==p.startLineNumber||m.endLineNumber!==p.endLineNumber){const b=new M(p.startLineNumber,e.getLineFirstNonWhitespaceColumn(p.startLineNumber),p.endLineNumber,e.getLineLastNonWhitespaceColumn(p.endLineNumber));b.containsRange(p)&&!b.equalsRange(p)&&m.containsRange(b)&&!m.equalsRange(b)&&u.push(b);const w=new M(p.startLineNumber,1,p.endLineNumber,e.getLineMaxColumn(p.endLineNumber));w.containsRange(p)&&!w.equalsRange(b)&&m.containsRange(w)&&!m.equalsRange(w)&&u.push(w)}u.push(m)}return u})}ni.registerCommand("_executeSelectionRangeProvider",async function(s,...e){const[t,i]=e;fi(ot.isUri(t));const n=s.get(qe).selectionRangeProvider,o=await s.get(jr).createModelReference(t);try{return epe(n,o.object.textEditorModel,i,{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},Mt.None)}finally{o.dispose()}});const kJe=Object.freeze({View:_t("view","View"),Help:_t("help","Help"),Test:_t("test","Test"),File:_t("file","File"),Preferences:_t("preferences","Preferences"),Developer:_t({key:"developer",comment:["A developer on Code itself or someone diagnosing issues in Code"]},"Developer")});class ax{constructor(e,t,i,n=null){this.startLineNumbers=e,this.endLineNumbers=t,this.lastLineRelativePosition=i,this.showEndForLine=n}equals(e){return!!e&&this.lastLineRelativePosition===e.lastLineRelativePosition&&this.showEndForLine===e.showEndForLine&&Sn(this.startLineNumbers,e.startLineNumbers)&&Sn(this.endLineNumbers,e.endLineNumbers)}static get Empty(){return new ax([],[],0)}}const mse=kf("stickyScrollViewLayer",{createHTML:s=>s}),gB="data-sticky-line-index",_se="data-sticky-is-line",DJe="data-sticky-is-line-number",bse="data-sticky-is-folding-icon";class EJe extends se{constructor(e){super(),this._editor=e,this._foldingIconStore=new _e,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(67),this._renderedStickyLines=[],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 Ac),this._rootDomNode.appendChild(this._lineNumbersDomNode),this._rootDomNode.appendChild(this._linesDomNodeScrollable);const t=()=>{this._linesDomNode.style.left=this._editor.getOption(116).scrollWithEditor?`-${this._editor.getScrollLeft()}px`:"0px"};this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(116)&&t(),i.hasChanged(67)&&(this._lineHeight=this._editor.getOption(67))})),this._register(this._editor.onDidScrollChange(i=>{i.scrollLeftChanged&&t(),i.scrollWidthChanged&&this._updateWidgetWidth()})),this._register(this._editor.onDidChangeModel(()=>{t(),this._updateWidgetWidth()})),this._register(this._foldingIconStore),t(),this._register(this._editor.onDidLayoutChange(i=>{this._updateWidgetWidth()})),this._updateWidgetWidth()}get lineNumbers(){return this._lineNumbers}get lineNumberCount(){return this._lineNumbers.length}getRenderedStickyLine(e){return this._renderedStickyLines.find(t=>t.lineNumber===e)}getCurrentLines(){return this._lineNumbers}setState(e,t,i){if(i===void 0&&(!this._previousState&&!e||this._previousState&&this._previousState.equals(e)))return;const n=this._isWidgetHeightZero(e),o=n?void 0:e,r=n?0:this._findLineToRebuildWidgetFrom(e,i);this._renderRootNode(o,t,r),this._previousState=e}_isWidgetHeightZero(e){if(!e)return!0;const t=e.startLineNumbers.length*this._lineHeight+e.lastLineRelativePosition;if(t>0){this._lastLineRelativePosition=e.lastLineRelativePosition;const i=[...e.startLineNumbers];e.showEndForLine!==null&&(i[e.showEndForLine]=e.endLineNumbers[e.showEndForLine]),this._lineNumbers=i}else this._lastLineRelativePosition=0,this._lineNumbers=[];return t===0}_findLineToRebuildWidgetFrom(e,t){if(!e||!this._previousState)return 0;if(t!==void 0)return t;const i=this._previousState,n=e.startLineNumbers.findIndex(o=>!i.startLineNumbers.includes(o));return n===-1?0:n}_updateWidgetWidth(){const e=this._editor.getLayoutInfo(),t=e.contentLeft;this._lineNumbersDomNode.style.width=`${t}px`,this._linesDomNodeScrollable.style.setProperty("--vscode-editorStickyScroll-scrollableWidth",`${this._editor.getScrollWidth()-e.verticalScrollbarWidth}px`),this._rootDomNode.style.width=`${e.width-e.verticalScrollbarWidth}px`}_clearStickyLinesFromLine(e){this._foldingIconStore.clear();for(let t=e;t<this._renderedStickyLines.length;t++){const i=this._renderedStickyLines[t];i.lineNumberDomNode.remove(),i.lineDomNode.remove()}this._renderedStickyLines=this._renderedStickyLines.slice(0,e),this._rootDomNode.style.display="none"}_useFoldingOpacityTransition(e){this._lineNumbersDomNode.style.setProperty("--vscode-editorStickyScroll-foldingOpacityTransition",`opacity ${e?.5:0}s`)}_setFoldingIconsVisibility(e){for(const t of this._renderedStickyLines){const i=t.foldingIcon;i&&i.setVisible(e?!0:i.isCollapsed)}}async _renderRootNode(e,t,i){if(this._clearStickyLinesFromLine(i),!e)return;for(const a of this._renderedStickyLines)this._updateTopAndZIndexOfStickyLine(a);const n=this._editor.getLayoutInfo(),o=this._lineNumbers.slice(i);for(const[a,l]of o.entries()){const c=this._renderChildNode(a+i,l,t,n);c&&(this._linesDomNode.appendChild(c.lineDomNode),this._lineNumbersDomNode.appendChild(c.lineNumberDomNode),this._renderedStickyLines.push(c))}t&&(this._setFoldingHoverListeners(),this._useFoldingOpacityTransition(!this._isOnGlyphMargin));const r=this._lineNumbers.length*this._lineHeight+this._lastLineRelativePosition;this._rootDomNode.style.display="block",this._lineNumbersDomNode.style.height=`${r}px`,this._linesDomNodeScrollable.style.height=`${r}px`,this._rootDomNode.style.height=`${r}px`,this._rootDomNode.style.marginLeft="0px",this._minContentWidthInPx=Math.max(...this._renderedStickyLines.map(a=>a.scrollWidth))+n.verticalScrollbarWidth,this._editor.layoutOverlayWidget(this)}_setFoldingHoverListeners(){this._editor.getOption(111)==="mouseover"&&(this._foldingIconStore.add(de(this._lineNumbersDomNode,Ee.MOUSE_ENTER,()=>{this._isOnGlyphMargin=!0,this._setFoldingIconsVisibility(!0)})),this._foldingIconStore.add(de(this._lineNumbersDomNode,Ee.MOUSE_LEAVE,()=>{this._isOnGlyphMargin=!1,this._useFoldingOpacityTransition(!0),this._setFoldingIconsVisibility(!1)})))}_renderChildNode(e,t,i,n){const o=this._editor._getViewModel();if(!o)return;const r=o.coordinatesConverter.convertModelPositionToViewPosition(new ee(t,1)).lineNumber,a=o.getViewLineRenderingData(r),l=this._editor.getOption(68);let c;try{c=ur.filter(a.inlineDecorations,r,a.minColumn,a.maxColumn)}catch{c=[]}const d=new $p(!0,!0,a.content,a.continuesWithWrappedLine,a.isBasicASCII,a.containsRTL,0,a.tokens,c,a.tabSize,a.startVisibleColumn,1,1,1,500,"none",!0,!0,null),u=new sy(2e3),f=Jk(d,u);let p;mse?p=mse.createHTML(u.build()):p=u.build();const m=document.createElement("span");m.setAttribute(gB,String(e)),m.setAttribute(_se,""),m.setAttribute("role","listitem"),m.tabIndex=0,m.className="sticky-line-content",m.classList.add(`stickyLine${t}`),m.style.lineHeight=`${this._lineHeight}px`,m.innerHTML=p;const b=document.createElement("span");b.setAttribute(gB,String(e)),b.setAttribute(DJe,""),b.className="sticky-line-number",b.style.lineHeight=`${this._lineHeight}px`;const w=n.contentLeft;b.style.width=`${w}px`;const y=document.createElement("span");l.renderType===1||l.renderType===3&&t%10===0?y.innerText=t.toString():l.renderType===2&&(y.innerText=Math.abs(t-this._editor.getPosition().lineNumber).toString()),y.className="sticky-line-number-inner",y.style.lineHeight=`${this._lineHeight}px`,y.style.width=`${n.lineNumbersWidth}px`,y.style.paddingLeft=`${n.lineNumbersLeft}px`,b.appendChild(y);const S=this._renderFoldingIconForLine(i,t);S&&b.appendChild(S.domNode),this._editor.applyFontInfo(m),this._editor.applyFontInfo(y),b.style.lineHeight=`${this._lineHeight}px`,m.style.lineHeight=`${this._lineHeight}px`,b.style.height=`${this._lineHeight}px`,m.style.height=`${this._lineHeight}px`;const x=new NJe(e,t,m,b,S,f.characterMapping,m.scrollWidth);return this._updateTopAndZIndexOfStickyLine(x)}_updateTopAndZIndexOfStickyLine(e){const t=e.index,i=e.lineDomNode,n=e.lineNumberDomNode,o=t===this._lineNumbers.length-1,r="0",a="1";i.style.zIndex=o?r:a,n.style.zIndex=o?r:a;const l=`${t*this._lineHeight+this._lastLineRelativePosition+(e.foldingIcon?.isCollapsed?1:0)}px`,c=`${t*this._lineHeight}px`;return i.style.top=o?l:c,n.style.top=o?l:c,e}_renderFoldingIconForLine(e,t){const i=this._editor.getOption(111);if(!e||i==="never")return;const n=e.regions,o=n.findRange(t),r=n.getStartLineNumber(o);if(!(t===r))return;const l=n.isCollapsed(o),c=new IJe(l,r,n.getEndLineNumber(o),this._lineHeight);return c.setVisible(this._isOnGlyphMargin?!0:l||i==="always"),c.domNode.setAttribute(bse,""),c}getId(){return"editor.contrib.stickyScrollWidget"}getDomNode(){return this._rootDomNode}getPosition(){return{preference:2,stackOridinal:10}}getMinContentWidthInPx(){return this._minContentWidthInPx}focusLineWithIndex(e){0<=e&&e<this._renderedStickyLines.length&&this._renderedStickyLines[e].lineDomNode.focus()}getEditorPositionFromNode(e){if(!e||e.children.length>0)return null;const t=this._getRenderedStickyLineFromChildDomNode(e);if(!t)return null;const i=s$(t.characterMapping,e,0);return new ee(t.lineNumber,i)}getLineNumberFromChildDomNode(e){return this._getRenderedStickyLineFromChildDomNode(e)?.lineNumber??null}_getRenderedStickyLineFromChildDomNode(e){const t=this.getLineIndexFromChildDomNode(e);return t===null||t<0||t>=this._renderedStickyLines.length?null:this._renderedStickyLines[t]}getLineIndexFromChildDomNode(e){const t=this._getAttributeValue(e,gB);return t?parseInt(t,10):null}isInStickyLine(e){return this._getAttributeValue(e,_se)!==void 0}isInFoldingIconDomNode(e){return this._getAttributeValue(e,bse)!==void 0}_getAttributeValue(e,t){for(;e&&e!==this._rootDomNode;){const i=e.getAttribute(t);if(i!==null)return i;e=e.parentElement}}}class NJe{constructor(e,t,i,n,o,r,a){this.index=e,this.lineNumber=t,this.lineDomNode=i,this.lineNumberDomNode=n,this.foldingIcon=o,this.characterMapping=r,this.scrollWidth=a}}class IJe{constructor(e,t,i,n){this.isCollapsed=e,this.foldingStartLine=t,this.foldingEndLine=i,this.dimension=n,this.domNode=document.createElement("div"),this.domNode.style.width=`${n}px`,this.domNode.style.height=`${n}px`,this.domNode.className=ft.asClassName(e?fM:hM)}setVisible(e){this.domNode.style.cursor=e?"pointer":"default",this.domNode.style.opacity=e?"1":"0"}}class lx{constructor(e,t){this.startLineNumber=e,this.endLineNumber=t}}class VM{constructor(e,t,i){this.range=e,this.children=t,this.parent=i}}class tpe{constructor(e,t,i,n){this.uri=e,this.version=t,this.element=i,this.outlineProviderId=n}}var EP=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},ak=function(s,e){return function(t,i){e(t,i,s)}},cx;(function(s){s.OUTLINE_MODEL="outlineModel",s.FOLDING_PROVIDER_MODEL="foldingProviderModel",s.INDENTATION_MODEL="indentationModel"})(cx||(cx={}));var Ug;(function(s){s[s.VALID=0]="VALID",s[s.INVALID=1]="INVALID",s[s.CANCELED=2]="CANCELED"})(Ug||(Ug={}));let zV=class extends se{constructor(e,t,i,n){switch(super(),this._editor=e,this._modelProviders=[],this._modelPromise=null,this._updateScheduler=this._register(new Wl(300)),this._updateOperation=this._register(new _e),this._editor.getOption(116).defaultModel){case cx.OUTLINE_MODEL:this._modelProviders.push(new UV(this._editor,n));case cx.FOLDING_PROVIDER_MODEL:this._modelProviders.push(new $V(this._editor,t,n));case cx.INDENTATION_MODEL:this._modelProviders.push(new jV(this._editor,i));break}}dispose(){this._modelProviders.forEach(e=>e.dispose()),this._updateOperation.clear(),this._cancelModelPromise(),super.dispose()}_cancelModelPromise(){this._modelPromise&&(this._modelPromise.cancel(),this._modelPromise=null)}async update(e){return this._updateOperation.clear(),this._updateOperation.add({dispose:()=>{this._cancelModelPromise(),this._updateScheduler.cancel()}}),this._cancelModelPromise(),await this._updateScheduler.trigger(async()=>{for(const t of this._modelProviders){const{statusPromise:i,modelPromise:n}=t.computeStickyModel(e);this._modelPromise=n;const o=await i;if(this._modelPromise!==n)return null;switch(o){case Ug.CANCELED:return this._updateOperation.clear(),null;case Ug.VALID:return t.stickyModel}}return null}).catch(t=>(xt(t),null))}};zV=EP([ak(2,it),ak(3,qe)],zV);class ipe extends se{constructor(e){super(),this._editor=e,this._stickyModel=null}get stickyModel(){return this._stickyModel}_invalid(){return this._stickyModel=null,Ug.INVALID}computeStickyModel(e){if(e.isCancellationRequested||!this.isProviderValid())return{statusPromise:this._invalid(),modelPromise:null};const t=As(i=>this.createModelFromProvider(i));return{statusPromise:t.then(i=>this.isModelValid(i)?e.isCancellationRequested?Ug.CANCELED:(this._stickyModel=this.createStickyModel(e,i),Ug.VALID):this._invalid()).then(void 0,i=>(xt(i),Ug.CANCELED)),modelPromise:t}}isModelValid(e){return!0}isProviderValid(){return!0}}let UV=class extends ipe{constructor(e,t){super(e),this._languageFeaturesService=t}createModelFromProvider(e){return Ah.create(this._languageFeaturesService.documentSymbolProvider,this._editor.getModel(),e)}createStickyModel(e,t){const{stickyOutlineElement:i,providerID:n}=this._stickyModelFromOutlineModel(t,this._stickyModel?.outlineProviderId),o=this._editor.getModel();return new tpe(o.uri,o.getVersionId(),i,n)}isModelValid(e){return e&&e.children.size>0}_stickyModelFromOutlineModel(e,t){let i;if(ii.first(e.children.values())instanceof Sge){const a=ii.find(e.children.values(),l=>l.id===t);if(a)i=a.children;else{let l="",c=-1,d;for(const[u,f]of e.children.entries()){const p=this._findSumOfRangesOfGroup(f);p>c&&(d=f,c=p,l=f.id)}t=l,i=d.children}}else i=e.children;const n=[],o=Array.from(i.values()).sort((a,l)=>{const c=new lx(a.symbol.range.startLineNumber,a.symbol.range.endLineNumber),d=new lx(l.symbol.range.startLineNumber,l.symbol.range.endLineNumber);return this._comparator(c,d)});for(const a of o)n.push(this._stickyModelFromOutlineElement(a,a.symbol.selectionRange.startLineNumber));return{stickyOutlineElement:new VM(void 0,n,void 0),providerID:t}}_stickyModelFromOutlineElement(e,t){const i=[];for(const o of e.children.values())if(o.symbol.selectionRange.startLineNumber!==o.symbol.range.endLineNumber)if(o.symbol.selectionRange.startLineNumber!==t)i.push(this._stickyModelFromOutlineElement(o,o.symbol.selectionRange.startLineNumber));else for(const r of o.children.values())i.push(this._stickyModelFromOutlineElement(r,o.symbol.selectionRange.startLineNumber));i.sort((o,r)=>this._comparator(o.range,r.range));const n=new lx(e.symbol.selectionRange.startLineNumber,e.symbol.range.endLineNumber);return new VM(n,i,void 0)}_comparator(e,t){return e.startLineNumber!==t.startLineNumber?e.startLineNumber-t.startLineNumber:t.endLineNumber-e.endLineNumber}_findSumOfRangesOfGroup(e){let t=0;for(const i of e.children.values())t+=this._findSumOfRangesOfGroup(i);return e instanceof RH?t+e.symbol.range.endLineNumber-e.symbol.selectionRange.startLineNumber:t}};UV=EP([ak(1,qe)],UV);class npe extends ipe{constructor(e){super(e),this._foldingLimitReporter=new Cge(e)}createStickyModel(e,t){const i=this._fromFoldingRegions(t),n=this._editor.getModel();return new tpe(n.uri,n.getVersionId(),i,void 0)}isModelValid(e){return e!==null}_fromFoldingRegions(e){const t=e.length,i=[],n=new VM(void 0,[],void 0);for(let o=0;o<t;o++){const r=e.getParentIndex(o);let a;r!==-1?a=i[r]:a=n;const l=new VM(new lx(e.getStartLineNumber(o),e.getEndLineNumber(o)+1),[],a);a.children.push(l),i.push(l)}return n}}let jV=class extends npe{constructor(e,t){super(e),this._languageConfigurationService=t,this.provider=this._register(new pq(e.getModel(),this._languageConfigurationService,this._foldingLimitReporter))}async createModelFromProvider(e){return this.provider.compute(e)}};jV=EP([ak(1,Rn)],jV);let $V=class extends npe{constructor(e,t,i){super(e),this._languageFeaturesService=i;const n=Op.getFoldingRangeProviders(this._languageFeaturesService,e.getModel());n.length>0&&(this.provider=this._register(new mq(e.getModel(),n,t,this._foldingLimitReporter,void 0)))}isProviderValid(){return this.provider!==void 0}async createModelFromProvider(e){return this.provider?.compute(e)??null}};$V=EP([ak(2,qe)],$V);var TJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vse=function(s,e){return function(t,i){e(t,i,s)}};class RJe{constructor(e,t,i){this.startLineNumber=e,this.endLineNumber=t,this.nestingDepth=i}}let qV=class extends se{constructor(e,t,i){super(),this._languageFeaturesService=t,this._languageConfigurationService=i,this._onDidChangeStickyScroll=this._register(new te),this.onDidChangeStickyScroll=this._onDidChangeStickyScroll.event,this._model=null,this._cts=null,this._stickyModelProvider=null,this._editor=e,this._sessionStore=this._register(new _e),this._updateSoon=this._register(new Ai(()=>this.update(),50)),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(116)&&this.readConfiguration()})),this.readConfiguration()}readConfiguration(){this._sessionStore.clear(),this._editor.getOption(116).enabled&&(this._sessionStore.add(this._editor.onDidChangeModel(()=>{this._model=null,this.updateStickyModelProvider(),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._sessionStore.add(tt(()=>{this._stickyModelProvider?.dispose(),this._stickyModelProvider=null})),this.updateStickyModelProvider(),this.update())}getVersionId(){return this._model?.version}updateStickyModelProvider(){this._stickyModelProvider?.dispose(),this._stickyModelProvider=null;const e=this._editor;e.hasModel()&&(this._stickyModelProvider=new zV(e,()=>this._updateSoon.schedule(),this._languageConfigurationService,this._languageFeaturesService))}async update(){this._cts?.dispose(!0),this._cts=new In,await this.updateStickyModel(this._cts.token),this._onDidChangeStickyScroll.fire()}async updateStickyModel(e){if(!this._editor.hasModel()||!this._stickyModelProvider||this._editor.getModel().isTooLargeForTokenization()){this._model=null;return}const t=await this._stickyModelProvider.update(e);e.isCancellationRequested||(this._model=t)}updateIndex(e){return e===-1?e=0:e<0&&(e=-e-2),e}getCandidateStickyLinesIntersectingFromStickyModel(e,t,i,n,o){if(t.children.length===0)return;let r=o;const a=[];for(let d=0;d<t.children.length;d++){const u=t.children[d];u.range&&a.push(u.range.startLineNumber)}const l=this.updateIndex(Mx(a,e.startLineNumber,(d,u)=>d-u)),c=this.updateIndex(Mx(a,e.startLineNumber+n,(d,u)=>d-u));for(let d=l;d<=c;d++){const u=t.children[d];if(!u)return;if(u.range){const f=u.range.startLineNumber,p=u.range.endLineNumber;e.startLineNumber<=p+1&&f-1<=e.endLineNumber&&f!==r&&(r=f,i.push(new RJe(f,p-1,n+1)),this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n+1,f))}else this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n,o)}}getCandidateStickyLinesIntersecting(e){if(!this._model?.element)return[];let t=[];this.getCandidateStickyLinesIntersectingFromStickyModel(e,this._model.element,t,0,-1);const i=this._editor._getViewModel()?.getHiddenAreas();if(i)for(const n of i)t=t.filter(o=>!(o.startLineNumber>=n.startLineNumber&&o.endLineNumber<=n.endLineNumber+1));return t}};qV=TJe([vse(1,qe),vse(2,Rn)],qV);var MJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vC=function(s,e){return function(t,i){e(t,i,s)}},KV,mb;let yf=(mb=class extends se{constructor(e,t,i,n,o,r,a){super(),this._editor=e,this._contextMenuService=t,this._languageFeaturesService=i,this._instaService=n,this._contextKeyService=a,this._sessionStore=new _e,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._stickyScrollWidget=new EJe(this._editor),this._stickyLineCandidateProvider=new qV(this._editor,i,o),this._register(this._stickyScrollWidget),this._register(this._stickyLineCandidateProvider),this._widgetState=ax.Empty,this._onDidResize(),this._readConfiguration();const l=this._stickyScrollWidget.getDomNode();this._register(this._editor.onDidChangeConfiguration(d=>{this._readConfigurationChange(d)})),this._register(de(l,Ee.CONTEXT_MENU,async d=>{this._onContextMenu(ct(l),d)})),this._stickyScrollFocusedContextKey=W.stickyScrollFocused.bindTo(this._contextKeyService),this._stickyScrollVisibleContextKey=W.stickyScrollVisible.bindTo(this._contextKeyService);const c=this._register(yd(l));this._register(c.onDidBlur(d=>{this._positionRevealed===!1&&l.clientHeight===0?(this._focusedStickyElementIndex=-1,this.focus()):this._disposeFocusStickyScrollStore()})),this._register(c.onDidFocus(d=>{this.focus()})),this._registerMouseListeners(),this._register(de(l,Ee.MOUSE_DOWN,d=>{this._onMouseDown=!0}))}static get(e){return e.getContribution(KV.ID)}_disposeFocusStickyScrollStore(){this._stickyScrollFocusedContextKey.set(!1),this._focusDisposableStore?.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 _e,this._stickyScrollFocusedContextKey.set(!0),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumbers.length-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}focusNext(){this._focusedStickyElementIndex<this._stickyScrollWidget.lineNumberCount-1&&this._focusNav(!0)}focusPrevious(){this._focusedStickyElementIndex>0&&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,t){this._focused&&this._disposeFocusStickyScrollStore(),this._positionRevealed=!0,t(),this._editor.setSelection(M.fromPositions(e)),this._editor.focus()}_registerMouseListeners(){const e=this._register(new _e),t=this._register(new _P(this._editor,{extractLineNumberFromMouseEvent:o=>{const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);return r?r.lineNumber:0}})),i=o=>{if(!this._editor.hasModel()||o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return null;const r=o.target.element;if(!r||r.innerText!==r.innerHTML)return null;const a=this._stickyScrollWidget.getEditorPositionFromNode(r);return a?{range:new M(a.lineNumber,a.column,a.lineNumber,a.column+r.innerText.length),textElement:r}:null},n=this._stickyScrollWidget.getDomNode();this._register(On(n,Ee.CLICK,o=>{if(o.ctrlKey||o.altKey||o.metaKey||!o.leftButton)return;if(o.shiftKey){const c=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(c===null)return;const d=new ee(this._endLineNumbers[c],1);this._revealLineInCenterIfOutsideViewport(d);return}if(this._stickyScrollWidget.isInFoldingIconDomNode(o.target)){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);this._toggleFoldingRegionForLine(c);return}if(!this._stickyScrollWidget.isInStickyLine(o.target))return;let l=this._stickyScrollWidget.getEditorPositionFromNode(o.target);if(!l){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);if(c===null)return;l=new ee(c,1)}this._revealPosition(l)})),this._register(On(n,Ee.MOUSE_MOVE,o=>{if(o.shiftKey){const r=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(r===null||this._showEndForLine!==null&&this._showEndForLine===r)return;this._showEndForLine=r,this._renderStickyScroll();return}this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(de(n,Ee.MOUSE_LEAVE,o=>{this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(t.onMouseMoveOrRelevantKeyDown(([o,r])=>{const a=i(o);if(!a||!o.hasTriggerModifier||!this._editor.hasModel()){e.clear();return}const{range:l,textElement:c}=a;if(!l.equalsRange(this._stickyRangeProjectedOnEditor))this._stickyRangeProjectedOnEditor=l,e.clear();else if(c.style.textDecoration==="underline")return;const d=new In;e.add(tt(()=>d.dispose(!0)));let u;cD(this._languageFeaturesService.definitionProvider,this._editor.getModel(),new ee(l.startLineNumber,l.startColumn+1),!1,d.token).then((f=>{if(!d.token.isCancellationRequested)if(f.length!==0){this._candidateDefinitionsLength=f.length;const p=c;u!==p?(e.clear(),u=p,u.style.textDecoration="underline",e.add(tt(()=>{u.style.textDecoration="none"}))):u||(u=p,u.style.textDecoration="underline",e.add(tt(()=>{u.style.textDecoration="none"})))}else e.clear()}))})),this._register(t.onCancel(()=>{e.clear()})),this._register(t.onExecute(async o=>{if(o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return;const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);r&&(!this._editor.hasModel()||!this._stickyRangeProjectedOnEditor||(this._candidateDefinitionsLength>1&&(this._focused&&this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:r.lineNumber,column:1})),this._instaService.invokeFunction(nge,o,this._editor,{uri:this._editor.getModel().uri,range:this._stickyRangeProjectedOnEditor})))}))}_onContextMenu(e,t){const i=new wc(e,t);this._contextMenuService.showContextMenu({menuId:Ge.StickyScrollContext,getAnchor:()=>i})}_toggleFoldingRegionForLine(e){if(!this._foldingModel||e===null)return;const t=this._stickyScrollWidget.getRenderedStickyLine(e),i=t?.foldingIcon;if(!i)return;hq(this._foldingModel,Number.MAX_VALUE,[e]),i.isCollapsed=!i.isCollapsed;const n=(i.isCollapsed?this._editor.getTopForLineNumber(i.foldingEndLine):this._editor.getTopForLineNumber(i.foldingStartLine))-this._editor.getOption(67)*t.index+1;this._editor.setScrollTop(n),this._renderStickyScroll(e)}_readConfiguration(){const e=this._editor.getOption(116);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(i=>{i.scrollTopChanged&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._sessionStore.add(this._editor.onDidLayoutChange(()=>this._onDidResize())),this._sessionStore.add(this._editor.onDidChangeModelTokens(i=>this._onTokensChange(i))),this._sessionStore.add(this._stickyLineCandidateProvider.onDidChangeStickyScroll(()=>{this._showEndForLine=void 0,this._renderStickyScroll()})),this._enabled=!0);this._editor.getOption(68).renderType===2&&this._sessionStore.add(this._editor.onDidChangeCursorPosition(()=>{this._showEndForLine=void 0,this._renderStickyScroll(0)}))}_readConfigurationChange(e){(e.hasChanged(116)||e.hasChanged(73)||e.hasChanged(67)||e.hasChanged(111)||e.hasChanged(68))&&this._readConfiguration(),e.hasChanged(68)&&this._renderStickyScroll(0)}_needsUpdate(e){const t=this._stickyScrollWidget.getCurrentLines();for(const i of t)for(const n of e.ranges)if(i>=n.fromLineNumber&&i<=n.toLineNumber)return!0;return!1}_onTokensChange(e){this._needsUpdate(e)&&this._renderStickyScroll(0)}_onDidResize(){const t=this._editor.getLayoutInfo().height/this._editor.getOption(67);this._maxStickyLines=Math.round(t*.25)}async _renderStickyScroll(e){const t=this._editor.getModel();if(!t||t.isTooLargeForTokenization()){this._resetState();return}const i=this._updateAndGetMinRebuildFromLine(e),n=this._stickyLineCandidateProvider.getVersionId();if(n===void 0||n===t.getVersionId())if(!this._focused)await this._updateState(i);else if(this._focusedStickyElementIndex===-1)await this._updateState(i),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1,this._focusedStickyElementIndex!==-1&&this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);else{const r=this._stickyScrollWidget.lineNumbers[this._focusedStickyElementIndex];await this._updateState(i),this._stickyScrollWidget.lineNumberCount===0?this._focusedStickyElementIndex=-1:(this._stickyScrollWidget.lineNumbers.includes(r)||(this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1),this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}}_updateAndGetMinRebuildFromLine(e){if(e!==void 0){const t=this._minRebuildFromLine!==void 0?this._minRebuildFromLine:1/0;this._minRebuildFromLine=Math.min(e,t)}return this._minRebuildFromLine}async _updateState(e){this._minRebuildFromLine=void 0,this._foldingModel=await Op.get(this._editor)?.getFoldingModel()??void 0,this._widgetState=this.findScrollWidgetState();const t=this._widgetState.startLineNumbers.length>0;this._stickyScrollVisibleContextKey.set(t),this._stickyScrollWidget.setState(this._widgetState,this._foldingModel,e)}async _resetState(){this._minRebuildFromLine=void 0,this._foldingModel=void 0,this._widgetState=ax.Empty,this._stickyScrollVisibleContextKey.set(!1),this._stickyScrollWidget.setState(void 0,void 0)}findScrollWidgetState(){const e=this._editor.getOption(67),t=Math.min(this._maxStickyLines,this._editor.getOption(116).maxLineCount),i=this._editor.getScrollTop();let n=0;const o=[],r=[],a=this._editor.getVisibleRanges();if(a.length!==0){const l=new lx(a[0].startLineNumber,a[a.length-1].endLineNumber),c=this._stickyLineCandidateProvider.getCandidateStickyLinesIntersecting(l);for(const d of c){const u=d.startLineNumber,f=d.endLineNumber,p=d.nestingDepth;if(f-u>0){const m=(p-1)*e,b=p*e,w=this._editor.getBottomForLineNumber(u)-i,y=this._editor.getTopForLineNumber(f)-i,S=this._editor.getBottomForLineNumber(f)-i;if(m>y&&m<=S){o.push(u),r.push(f+1),n=S-b;break}else b>w&&b<=S&&(o.push(u),r.push(f+1));if(o.length===t)break}}}return this._endLineNumbers=r,new ax(o,r,n,this._showEndForLine)}dispose(){super.dispose(),this._sessionStore.dispose()}},KV=mb,mb.ID="store.contrib.stickyScrollController",mb);yf=KV=MJe([vC(1,Ca),vC(2,qe),vC(3,it),vC(4,Rn),vC(5,cl),vC(6,gt)],yf);class AJe extends wr{constructor(){super({id:"editor.action.toggleStickyScroll",title:{..._t("toggleEditorStickyScroll","Toggle Editor Sticky Scroll"),mnemonicTitle:v({key:"mitoggleStickyScroll",comment:["&& denotes a mnemonic"]},"&&Toggle Editor Sticky Scroll")},metadata:{description:_t("toggleEditorStickyScroll.description","Toggle/enable the editor sticky scroll which shows the nested scopes at the top of the viewport")},category:kJe.View,toggled:{condition:be.equals("config.editor.stickyScroll.enabled",!0),title:v("stickyScroll","Sticky Scroll"),mnemonicTitle:v({key:"miStickyScroll",comment:["&& denotes a mnemonic"]},"&&Sticky Scroll")},menu:[{id:Ge.CommandPalette},{id:Ge.MenubarAppearanceMenu,group:"4_editor",order:3},{id:Ge.StickyScrollContext}]})}async run(e){const t=e.get(Wt),i=!t.getValue("editor.stickyScroll.enabled");return t.updateValue("editor.stickyScroll.enabled",i)}}const NP=100;class OJe extends Td{constructor(){super({id:"editor.action.focusStickyScroll",title:{..._t("focusStickyScroll","Focus on the editor sticky scroll"),mnemonicTitle:v({key:"mifocusStickyScroll",comment:["&& denotes a mnemonic"]},"&&Focus Sticky Scroll")},precondition:be.and(be.has("config.editor.stickyScroll.enabled"),W.stickyScrollVisible),menu:[{id:Ge.CommandPalette}]})}runEditorCommand(e,t){yf.get(t)?.focus()}}class PJe extends Td{constructor(){super({id:"editor.action.selectNextStickyScrollLine",title:_t("selectNextStickyScrollLine.title","Select the next editor sticky scroll line"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:18}})}runEditorCommand(e,t){yf.get(t)?.focusNext()}}class FJe extends Td{constructor(){super({id:"editor.action.selectPreviousStickyScrollLine",title:_t("selectPreviousStickyScrollLine.title","Select the previous sticky scroll line"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:16}})}runEditorCommand(e,t){yf.get(t)?.focusPrevious()}}class BJe extends Td{constructor(){super({id:"editor.action.goToFocusedStickyScrollLine",title:_t("goToFocusedStickyScrollLine.title","Go to the focused sticky scroll line"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:3}})}runEditorCommand(e,t){yf.get(t)?.goToFocused()}}class WJe extends Td{constructor(){super({id:"editor.action.selectEditor",title:_t("selectEditor.title","Select Editor"),precondition:W.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:NP,primary:9}})}runEditorCommand(e,t){yf.get(t)?.selectEditor()}}ai(yf.ID,yf,1);Zi(AJe);Zi(OJe);Zi(FJe);Zi(PJe);Zi(BJe);Zi(WJe);var spe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vS=function(s,e){return function(t,i){e(t,i,s)}};class HJe{constructor(e,t,i,n,o,r){this.range=e,this.insertText=t,this.filterText=i,this.additionalTextEdits=n,this.command=o,this.completion=r}}let GV=class extends dEe{constructor(e,t,i,n,o,r){super(o.disposable),this.model=e,this.line=t,this.word=i,this.completionModel=n,this._suggestMemoryService=r}canBeReused(e,t,i){return this.model===e&&this.line===t&&this.word.word.length>0&&this.word.startColumn===i.startColumn&&this.word.endColumn<i.endColumn&&this.completionModel.getIncompleteProvider().size===0}get items(){const e=[],{items:t}=this.completionModel,i=this._suggestMemoryService.select(this.model,{lineNumber:this.line,column:this.word.endColumn+this.completionModel.lineContext.characterCountDelta},t),n=ii.slice(t,i),o=ii.slice(t,0,i);let r=5;for(const a of ii.concat(n,o)){if(a.score===bd.Default)continue;const l=new M(a.editStart.lineNumber,a.editStart.column,a.editInsertEnd.lineNumber,a.editInsertEnd.column+this.completionModel.lineContext.characterCountDelta),c=a.completion.insertTextRules&&a.completion.insertTextRules&4?{snippet:a.completion.insertText}:a.completion.insertText;e.push(new HJe(l,c,a.filterTextLow??a.labelLow,a.completion.additionalTextEdits,a.completion.command,a)),r-->=0&&a.resolve(Mt.None)}return e}};GV=spe([vS(5,xP)],GV);let YV=class extends se{constructor(e,t,i,n){super(),this._languageFeatureService=e,this._clipboardService=t,this._suggestMemoryService=i,this._editorService=n,this._store.add(e.inlineCompletionsProvider.register("*",this))}async provideInlineCompletions(e,t,i,n){if(i.selectedSuggestionInfo)return;let o;for(const p of this._editorService.listCodeEditors())if(p.getModel()===e){o=p;break}if(!o)return;const r=o.getOption(90);if(JC.isAllOff(r))return;e.tokenization.tokenizeIfCheap(t.lineNumber);const a=e.tokenization.getLineTokens(t.lineNumber),l=a.getStandardTokenType(a.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(JC.valueFor(r,l)!=="inline")return;let c=e.getWordAtPosition(t),d;if(c?.word||(d=this._getTriggerCharacterInfo(e,t)),!c?.word&&!d||(c||(c=e.getWordUntilPosition(t)),c.endColumn!==t.column))return;let u;const f=e.getValueInRange(new M(t.lineNumber,1,t.lineNumber,t.column));if(!d&&this._lastResult?.canBeReused(e,t.lineNumber,c)){const p=new sse(f,t.column-this._lastResult.word.endColumn);this._lastResult.completionModel.lineContext=p,this._lastResult.acquire(),u=this._lastResult}else{const p=await _q(this._languageFeatureService.completionProvider,e,t,new QL(void 0,kM.createSuggestFilter(o).itemKind,d?.providers),d&&{triggerKind:1,triggerCharacter:d.ch},n);let m;p.needsClipboard&&(m=await this._clipboardService.readText());const b=new Eg(p.items,t.column,new sse(f,0),LM.None,o.getOption(119),o.getOption(113),{boostFullMatch:!1,firstMatchCanBeWeak:!1},m);u=new GV(e,t.lineNumber,c,b,p,this._suggestMemoryService)}return this._lastResult=u,u}handleItemDidShow(e,t){t.completion.resolve(Mt.None)}freeInlineCompletions(e){e.release()}_getTriggerCharacterInfo(e,t){const i=e.getValueInRange(M.fromPositions({lineNumber:t.lineNumber,column:t.column-1},t)),n=new Set;for(const o of this._languageFeatureService.completionProvider.all(e))o.triggerCharacters?.includes(i)&&n.add(o);if(n.size!==0)return{providers:n,ch:i}}};YV=spe([vS(0,qe),vS(1,If),vS(2,xP),vS(3,gi)],YV);_y(YV);class VJe extends ze{constructor(){super({id:"editor.action.forceRetokenize",label:v("forceRetokenize","Developer: Force Retokenize"),alias:"Developer: Force Retokenize",precondition:void 0})}run(e,t){if(!t.hasModel())return;const i=t.getModel();i.tokenization.resetTokenization();const n=new Ys;i.tokenization.forceTokenization(i.getLineCount()),n.stop(),console.log(`tokenization took ${n.elapsed()}`)}}ye(VJe);const vA=class vA extends wr{constructor(){super({id:vA.ID,title:_t({key:"toggle.tabMovesFocus",comment:["Turn on/off use of tab key for moving focus around VS Code"]},"Toggle Tab Key Moves Focus"),precondition:void 0,keybinding:{primary:2091,mac:{primary:1323},weight:100},metadata:{description:_t("tabMovesFocusDescriptions","Determines whether the tab key moves focus around the workbench or inserts the tab character in the current editor. This is also called tab trapping, tab navigation, or tab focus mode.")},f1:!0})}run(){const t=!D1.getTabFocusMode();D1.setTabFocusMode(t),vr(t?v("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element"):v("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))}};vA.ID="editor.action.toggleTabFocusMode";let ZV=vA;Zi(ZV);var zJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Cse=function(s,e){return function(t,i){e(t,i,s)}};let XV=class extends se{get enabled(){return this._enabled}set enabled(e){e?(this.el.setAttribute("aria-disabled","false"),this.el.tabIndex=0,this.el.style.pointerEvents="auto",this.el.style.opacity="1",this.el.style.cursor="pointer",this._enabled=!1):(this.el.setAttribute("aria-disabled","true"),this.el.tabIndex=-1,this.el.style.pointerEvents="none",this.el.style.opacity="0.4",this.el.style.cursor="default",this._enabled=!0),this._enabled=e}constructor(e,t,i={},n,o){super(),this._link=t,this._hoverService=n,this._enabled=!0,this.el=we(e,Ne("a.monaco-link",{tabIndex:t.tabIndex??0,href:t.href},t.label)),this.hoverDelegate=i.hoverDelegate??yr("mouse"),this.setTooltip(t.title),this.el.setAttribute("role","button");const r=this._register(new Xt(this.el,"click")),a=this._register(new Xt(this.el,"keypress")),l=Me.chain(a.event,u=>u.map(f=>new Yi(f)).filter(f=>f.keyCode===3)),c=this._register(new Xt(this.el,Ji.Tap)).event;this._register(Oo.addTarget(this.el));const d=Me.any(r.event,l,c);this._register(d(u=>{this.enabled&&(Jt.stop(u,!0),i?.opener?i.opener(this._link.href):o.open(this._link.href,{allowCommands:!0}))})),this.enabled=!0}setTooltip(e){this.hoverDelegate.showNativeHover?this.el.title=e??"":!this.hover&&e?this.hover=this._register(this._hoverService.setupManagedHover(this.hoverDelegate,this.el,e)):this.hover&&this.hover.update(e)}};XV=zJe([Cse(3,Vu),Cse(4,qr)],XV);var ope=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},rpe=function(s,e){return function(t,i){e(t,i,s)}};const UJe=26;let QV=class extends se{constructor(e,t){super(),this._editor=e,this.instantiationService=t,this.banner=this._register(this.instantiationService.createInstance(JV))}hide(){this._editor.setBanner(null,0),this.banner.clear()}show(e){this.banner.show({...e,onClose:()=>{this.hide(),e.onClose?.()}}),this._editor.setBanner(this.banner.element,UJe)}};QV=ope([rpe(1,it)],QV);let JV=class extends se{constructor(e){super(),this.instantiationService=e,this.markdownRenderer=this.instantiationService.createInstance(mf,{}),this.element=Ne("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 t=Ne("span");return t.innerText=e,t}return this.markdownRenderer.render(e).element}clear(){ao(this.element)}show(e){ao(this.element);const t=this.getAriaLabel(e);t&&this.element.setAttribute("aria-label",t);const i=we(this.element,Ne("div.icon-container"));i.setAttribute("aria-hidden","true"),e.icon&&i.appendChild(Ne(`div${ft.asCSSSelector(e.icon)}`));const n=we(this.element,Ne("div.message-container"));if(n.setAttribute("aria-hidden","true"),n.appendChild(this.getBannerMessage(e.message)),this.messageActionsContainer=we(this.element,Ne("div.message-actions-container")),e.actions)for(const r of e.actions)this._register(this.instantiationService.createInstance(XV,this.messageActionsContainer,{...r,tabIndex:-1},{}));const o=we(this.element,Ne("div.action-container"));this.actionBar=this._register(new tl(o)),this.actionBar.push(this._register(new ha("banner.close","Close Banner",ft.asClassName(Eue),!0,()=>{typeof e.onClose=="function"&&e.onClose()})),{icon:!0,label:!1}),this.actionBar.setFocusable(!1)}};JV=ope([rpe(0,it)],JV);var Tq=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},jw=function(s,e){return function(t,i){e(t,i,s)}};const jJe=cn("extensions-warning-message",De.warning,v("warningIcon","Icon shown with a warning message in the extensions editor."));var t1;let lk=(t1=class extends se{constructor(e,t,i,n){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=i,this._highlighter=null,this._bannerClosed=!1,this._updateState=o=>{if(o&&o.hasMore){if(this._bannerClosed)return;const r=Math.max(o.ambiguousCharacterCount,o.nonBasicAsciiCharacterCount,o.invisibleCharacterCount);let a;if(o.nonBasicAsciiCharacterCount>=r)a={message:v("unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters","This document contains many non-basic ASCII unicode characters"),command:new dk};else if(o.ambiguousCharacterCount>=r)a={message:v("unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters","This document contains many ambiguous unicode characters"),command:new Xb};else if(o.invisibleCharacterCount>=r)a={message:v("unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters","This document contains many invisible unicode characters"),command:new ck};else throw new Error("Unreachable");this._bannerController.show({id:"unicodeHighlightBanner",message:a.message,icon:jJe,actions:[{label:a.command.shortLabel,href:`command:${a.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(n.createInstance(QV,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(126),this._register(i.onDidChangeTrust(o=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(o=>{o.hasChanged(126)&&(this._options=e.getOption(126),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=$Je(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(i=>i===!1))return;const t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(i=>i.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(i=>i==="_os"?new Intl.NumberFormat().resolvedOptions().locale:i==="_vscode"?lDe:i)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new ez(this._editor,t,this._updateState,this._editorWorkerService):this._highlighter=new qJe(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}},t1.ID="editor.contrib.unicodeHighlighter",t1);lk=Tq([jw(1,Kr),jw(2,jce),jw(3,it)],lk);function $Je(s,e){return{nonBasicASCII:e.nonBasicASCII===Pa?!s:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments===Pa?!s:e.includeComments,includeStrings:e.includeStrings===Pa?!s:e.includeStrings,allowedCharacters:e.allowedCharacters,allowedLocales:e.allowedLocales}}let ez=class extends se{constructor(e,t,i,n){super(),this._editor=e,this._options=t,this._updateState=i,this._editorWorkerService=n,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ai(()=>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(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);const i=[];if(!t.hasMore)for(const n of t.ranges)i.push({range:n,options:zM.instance.getDecorationFromOptions(this._options)});this._decorations.set(i)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel();if(!v$(t,e))return null;const i=t.getValueInRange(e.range);return{reason:lpe(i,this._options),inComment:C$(t,e),inString:w$(t,e)}}};ez=Tq([jw(3,Kr)],ez);class qJe extends se{constructor(e,t,i){super(),this._editor=e,this._options=t,this._updateState=i,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ai(()=>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(),t=[],i={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(const n of e){const o=RU.computeUnicodeHighlights(this._model,this._options,n);for(const r of o.ranges)i.ranges.push(r);i.ambiguousCharacterCount+=i.ambiguousCharacterCount,i.invisibleCharacterCount+=i.invisibleCharacterCount,i.nonBasicAsciiCharacterCount+=i.nonBasicAsciiCharacterCount,i.hasMore=i.hasMore||o.hasMore}if(!i.hasMore)for(const n of i.ranges)t.push({range:n,options:zM.instance.getDecorationFromOptions(this._options)});this._updateState(i),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel(),i=t.getValueInRange(e.range);return v$(t,e)?{reason:lpe(i,this._options),inComment:C$(t,e),inString:w$(t,e)}:null}}const ape=v("unicodeHighlight.configureUnicodeHighlightOptions","Configure Unicode Highlight Options");let tz=class{constructor(e,t,i){this._editor=e,this._languageService=t,this._openerService=i,this.hoverOrdinal=5}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=this._editor.getContribution(lk.ID);if(!n)return[];const o=[],r=new Set;let a=300;for(const l of t){const c=n.getDecorationInfo(l);if(!c)continue;const u=i.getValueInRange(l.range).codePointAt(0),f=pB(u);let p;switch(c.reason.kind){case 0:{Tk(c.reason.confusableWith)?p=v("unicodeHighlight.characterIsAmbiguousASCII","The character {0} could be confused with the ASCII character {1}, which is more common in source code.",f,pB(c.reason.confusableWith.codePointAt(0))):p=v("unicodeHighlight.characterIsAmbiguous","The character {0} could be confused with the character {1}, which is more common in source code.",f,pB(c.reason.confusableWith.codePointAt(0)));break}case 1:p=v("unicodeHighlight.characterIsInvisible","The character {0} is invisible.",f);break;case 2:p=v("unicodeHighlight.characterIsNonBasicAscii","The character {0} is not a basic ASCII character.",f);break}if(r.has(p))continue;r.add(p);const m={codePoint:u,reason:c.reason,inComment:c.inComment,inString:c.inString},b=v("unicodeHighlight.adjustSettings","Adjust settings"),w=`command:${UM.ID}?${encodeURIComponent(JSON.stringify(m))}`,y=new Mo("",!0).appendMarkdown(p).appendText(" ").appendLink(w,b,ape);o.push(new Cc(this,l.range,[y],!1,a++))}return o}renderHoverParts(e,t){return wqe(e,t,this._editor,this._languageService,this._openerService)}};tz=Tq([jw(1,xn),jw(2,qr)],tz);function iz(s){return`U+${s.toString(16).padStart(4,"0")}`}function pB(s){let e=`\`${iz(s)}\``;return h_.isInvisibleCharacter(s)||(e+=` "${`${KJe(s)}`}"`),e}function KJe(s){return s===96?"`` ` ``":"`"+String.fromCodePoint(s)+"`"}function lpe(s,e){return RU.computeUnicodeHighlightReason(s,e)}const CA=class CA{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){const i=`${e}${t}`;let n=this.map.get(i);return n||(n=Et.createDynamic({description:"unicode-highlight",stickiness:1,className:"unicode-highlight",showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(i,n)),n}};CA.instance=new CA;let zM=CA;class GJe extends ze{constructor(){super({id:Xb.ID,label:v("action.unicodeHighlight.disableHighlightingInComments","Disable highlighting of characters in comments"),alias:"Disable highlighting of characters in comments",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingInComments.shortLabel","Disable Highlight In Comments")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.includeComments,!1,2)}}class YJe extends ze{constructor(){super({id:Xb.ID,label:v("action.unicodeHighlight.disableHighlightingInStrings","Disable highlighting of characters in strings"),alias:"Disable highlighting of characters in strings",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingInStrings.shortLabel","Disable Highlight In Strings")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.includeStrings,!1,2)}}const wA=class wA extends ze{constructor(){super({id:wA.ID,label:v("action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters","Disable highlighting of ambiguous characters"),alias:"Disable highlighting of ambiguous characters",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel","Disable Ambiguous Highlight")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.ambiguousCharacters,!1,2)}};wA.ID="editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters";let Xb=wA;const yA=class yA extends ze{constructor(){super({id:yA.ID,label:v("action.unicodeHighlight.disableHighlightingOfInvisibleCharacters","Disable highlighting of invisible characters"),alias:"Disable highlighting of invisible characters",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel","Disable Invisible Highlight")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.invisibleCharacters,!1,2)}};yA.ID="editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters";let ck=yA;const SA=class SA extends ze{constructor(){super({id:SA.ID,label:v("action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters","Disable highlighting of non basic ASCII characters"),alias:"Disable highlighting of non basic ASCII characters",precondition:void 0}),this.shortLabel=v("unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel","Disable Non ASCII Highlight")}async run(e,t,i){const n=e?.get(Wt);n&&this.runAction(n)}async runAction(e){await e.updateValue(Nr.nonBasicASCII,!1,2)}};SA.ID="editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters";let dk=SA;const xA=class xA extends ze{constructor(){super({id:xA.ID,label:v("action.unicodeHighlight.showExcludeOptions","Show Exclude Options"),alias:"Show Exclude Options",precondition:void 0})}async run(e,t,i){const{codePoint:n,reason:o,inString:r,inComment:a}=i,l=String.fromCodePoint(n),c=e.get(Gl),d=e.get(Wt);function u(m){return h_.isInvisibleCharacter(m)?v("unicodeHighlight.excludeInvisibleCharFromBeingHighlighted","Exclude {0} (invisible character) from being highlighted",iz(m)):v("unicodeHighlight.excludeCharFromBeingHighlighted","Exclude {0} from being highlighted",`${iz(m)} "${l}"`)}const f=[];if(o.kind===0)for(const m of o.notAmbiguousInLocales)f.push({label:v("unicodeHighlight.allowCommonCharactersInLanguage",'Allow unicode characters that are more common in the language "{0}".',m),run:async()=>{XJe(d,[m])}});if(f.push({label:u(n),run:()=>ZJe(d,[n])}),a){const m=new GJe;f.push({label:m.label,run:async()=>m.runAction(d)})}else if(r){const m=new YJe;f.push({label:m.label,run:async()=>m.runAction(d)})}if(o.kind===0){const m=new Xb;f.push({label:m.label,run:async()=>m.runAction(d)})}else if(o.kind===1){const m=new ck;f.push({label:m.label,run:async()=>m.runAction(d)})}else if(o.kind===2){const m=new dk;f.push({label:m.label,run:async()=>m.runAction(d)})}else QJe(o);const p=await c.pick(f,{title:ape});p&&await p.run()}};xA.ID="editor.action.unicodeHighlight.showExcludeOptions";let UM=xA;async function ZJe(s,e){const t=s.getValue(Nr.allowedCharacters);let i;typeof t=="object"&&t?i=t:i={};for(const n of e)i[String.fromCodePoint(n)]=!0;await s.updateValue(Nr.allowedCharacters,i,2)}async function XJe(s,e){const t=s.inspect(Nr.allowedLocales).user?.value;let i;typeof t=="object"&&t?i=Object.assign({},t):i={};for(const n of e)i[n]=!0;await s.updateValue(Nr.allowedLocales,i,2)}function QJe(s){throw new Error(`Unexpected value: ${s}`)}ye(Xb);ye(ck);ye(dk);ye(UM);ai(lk.ID,lk,1);fv.register(tz);var JJe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},wse=function(s,e){return function(t,i){e(t,i,s)}};const cpe="ignoreUnusualLineTerminators";function eet(s,e,t){s.setModelProperty(e.uri,cpe,t)}function tet(s,e){return s.getModelProperty(e.uri,cpe)}var i1;let jM=(i1=class extends se{constructor(e,t,i){super(),this._editor=e,this._dialogService=t,this._codeEditorService=i,this._isPresentingDialog=!1,this._config=this._editor.getOption(127),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(127)&&(this._config=this._editor.getOption(127),this._checkForUnusualLineTerminators())})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent(n=>{n.isUndoing||this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}async _checkForUnusualLineTerminators(){if(this._config==="off"||!this._editor.hasModel())return;const e=this._editor.getModel();if(!e.mightContainUnusualLineTerminators()||tet(this._codeEditorService,e)===!0||this._editor.getOption(92))return;if(this._config==="auto"){e.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let i;try{this._isPresentingDialog=!0,i=await this._dialogService.confirm({title:v("unusualLineTerminators.title","Unusual Line Terminators"),message:v("unusualLineTerminators.message","Detected unusual line terminators"),detail:v("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`.",zl(e.uri)),primaryButton:v({key:"unusualLineTerminators.fix",comment:["&& denotes a mnemonic"]},"&&Remove Unusual Line Terminators"),cancelButton:v("unusualLineTerminators.ignore","Ignore")})}finally{this._isPresentingDialog=!1}if(!i.confirmed){eet(this._codeEditorService,e,!0);return}e.removeUnusualLineTerminators(this._editor.getSelections())}},i1.ID="editor.contrib.unusualLineTerminatorsDetector",i1);jM=JJe([wse(1,Pk),wse(2,gi)],jM);ai(jM.ID,jM,1);var iet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},net=function(s,e){return function(t,i){e(t,i,s)}};class yse{constructor(){this.selector={language:"*"}}provideDocumentHighlights(e,t,i){const n=[],o=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});return o?e.isDisposed()?void 0:e.findMatches(o.word,!0,!1,!0,QI,!1).map(a=>({range:a.range,kind:r1.Text})):Promise.resolve(n)}provideMultiDocumentHighlights(e,t,i,n){const o=new Ks,r=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});if(!r)return Promise.resolve(o);for(const a of[e,...i]){if(a.isDisposed())continue;const c=a.findMatches(r.word,!0,!1,!0,QI,!1).map(d=>({range:d.range,kind:r1.Text}));c&&o.set(a.uri,c)}return o}}let nz=class extends se{constructor(e){super(),this._register(e.documentHighlightProvider.register("*",new yse)),this._register(e.multiDocumentHighlightProvider.register("*",new yse))}};nz=iet([net(0,qe)],nz);var dpe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},WI=function(s,e){return function(t,i){e(t,i,s)}},is,sz;const Rq=new Be("hasWordHighlights",!1);function upe(s,e,t,i){const n=s.ordered(e);return bU(n.map(o=>()=>Promise.resolve(o.provideDocumentHighlights(e,t,i)).then(void 0,Qn)),o=>o!=null).then(o=>{if(o){const r=new Ks;return r.set(e.uri,o),r}return new Ks})}function set(s,e,t,i,n,o){const r=s.ordered(e);return bU(r.map(a=>()=>{const l=o.filter(c=>Ile(c)).filter(c=>VU(a.selector,c.uri,c.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(a.provideMultiDocumentHighlights(e,t,l,n)).then(void 0,Qn)}),a=>a!=null)}class hpe{constructor(e,t,i){this._model=e,this._selection=t,this._wordSeparators=i,this._wordRange=this._getCurrentWordRange(e,t),this._result=null}get result(){return this._result||(this._result=As(e=>this._compute(this._model,this._selection,this._wordSeparators,e))),this._result}_getCurrentWordRange(e,t){const i=e.getWordAtPosition(t.getPosition());return i?new M(t.startLineNumber,i.startColumn,t.startLineNumber,i.endColumn):null}isValid(e,t,i){const n=t.startLineNumber,o=t.startColumn,r=t.endColumn,a=this._getCurrentWordRange(e,t);let l=!!(this._wordRange&&this._wordRange.equalsRange(a));for(let c=0,d=i.length;!l&&c<d;c++){const u=i.getRange(c);u&&u.startLineNumber===n&&u.startColumn<=o&&u.endColumn>=r&&(l=!0)}return l}cancel(){this.result.cancel()}}class oet extends hpe{constructor(e,t,i,n){super(e,t,i),this._providers=n}_compute(e,t,i,n){return upe(this._providers,e,t.getPosition(),n).then(o=>o||new Ks)}}class ret extends hpe{constructor(e,t,i,n,o){super(e,t,i),this._providers=n,this._otherModels=o}_compute(e,t,i,n){return set(this._providers,e,t.getPosition(),i,n,this._otherModels).then(o=>o||new Ks)}}function aet(s,e,t,i,n){return new oet(e,t,n,s)}function cet(s,e,t,i,n,o){return new ret(e,t,n,s,o)}$r("_executeDocumentHighlights",async(s,e,t)=>{const i=s.get(qe);return(await upe(i.documentHighlightProvider,e,t,Mt.None))?.get(e.uri)});var gp;let oz=(gp=class{constructor(e,t,i,n,o){this.toUnhook=new _e,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new Ks,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.runDelayer=this.toUnhook.add(new Wl(50)),this.editor=e,this.providers=t,this.multiDocumentProviders=i,this.codeEditorService=o,this._hasWordHighlights=Rq.bindTo(n),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(81),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(r=>{this._ignorePositionChangeEvent||this.occurrencesHighlight!=="off"&&this.runDelayer.trigger(()=>{this._onPositionChanged(r)})})),this.toUnhook.add(e.onDidFocusEditorText(r=>{this.occurrencesHighlight!=="off"&&(this.workerRequest||this.runDelayer.trigger(()=>{this._run()}))})),this.toUnhook.add(e.onDidChangeModelContent(r=>{QA(this.model.uri,"output")||this._stopAll()})),this.toUnhook.add(e.onDidChangeModel(r=>{!r.newModelUrl&&r.oldModelUrl?this._stopSingular():is.query&&this._run()})),this.toUnhook.add(e.onDidChangeConfiguration(r=>{const a=this.editor.getOption(81);if(this.occurrencesHighlight!==a)switch(this.occurrencesHighlight=a,a){case"off":this._stopAll();break;case"singleFile":this._stopAll(is.query?.modelInfo?.model);break;case"multiFile":is.query&&this._run(!0);break;default:console.warn("Unknown occurrencesHighlight setting value:",a);break}})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,is.query&&this._run()}hasDecorations(){return this.decorations.length>0}restore(){this.occurrencesHighlight!=="off"&&(this.runDelayer.cancel(),this._run())}_getSortedHighlights(){return this.decorations.getRanges().sort(M.compareRangesUsingStarts)}moveNext(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))+1)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);vr(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);vr(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;const e=is.storedDecorationIDs.get(this.editor.getModel().uri);e&&(this.editor.removeDecorations(e),is.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1)))}_removeAllDecorations(e){const t=this.codeEditorService.listCodeEditors(),i=[];for(const n of t){if(!n.hasModel()||lL(n.getModel().uri,e?.uri))continue;const o=is.storedDecorationIDs.get(n.getModel().uri);if(!o)continue;n.removeDecorations(o),i.push(n.getModel().uri);const r=Fp.get(n);r?.wordHighlighter&&r.wordHighlighter.decorations.length>0&&(r.wordHighlighter.decorations.clear(),r.wordHighlighter.workerRequest=null,r.wordHighlighter._hasWordHighlights.set(!1))}for(const n of i)is.storedDecorationIDs.delete(n)}_stopSingular(){this._removeSingleDecorations(),this.editor.hasTextFocus()&&(this.editor.getModel()?.uri.scheme!==kt.vscodeNotebookCell&&is.query?.modelInfo?.model.uri.scheme!==kt.vscodeNotebookCell?(is.query=null,this._run()):is.query?.modelInfo&&(is.query.modelInfo=null)),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)}_stopAll(e){this._removeAllDecorations(e),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==="off"){this._stopAll();return}if(e.reason!==3&&this.editor.getModel()?.uri.scheme!==kt.vscodeNotebookCell){this._stopAll();return}this._run()}_getWord(){const e=this.editor.getSelection(),t=e.startLineNumber,i=e.startColumn;return this.model.isDisposed()?null:this.model.getWordAtPosition({lineNumber:t,column:i})}getOtherModelsToHighlight(e){if(!e)return[];if(e.uri.scheme===kt.vscodeNotebookCell){const o=[],r=this.codeEditorService.listCodeEditors();for(const a of r){const l=a.getModel();l&&l!==e&&l.uri.scheme===kt.vscodeNotebookCell&&o.push(l)}return o}const i=[],n=this.codeEditorService.listCodeEditors();for(const o of n){if(!B$(o))continue;const r=o.getModel();r&&e===r.modified&&i.push(r.modified)}if(i.length)return i;if(this.occurrencesHighlight==="singleFile")return[];for(const o of n){const r=o.getModel();r&&r!==e&&i.push(r)}return i}_run(e){let t;if(this.editor.hasTextFocus()){const n=this.editor.getSelection();if(!n||n.startLineNumber!==n.endLineNumber){is.query=null,this._stopAll();return}const o=n.startColumn,r=n.endColumn,a=this._getWord();if(!a||a.startColumn>o||a.endColumn<r){is.query=null,this._stopAll();return}t=this.workerRequest&&this.workerRequest.isValid(this.model,n,this.decorations),is.query={modelInfo:{model:this.model,selection:n},word:a}}else if(!is.query){this._stopAll();return}if(this.lastCursorPositionChangeTime=new Date().getTime(),t)this.workerRequestCompleted&&this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1,this._beginRenderDecorations());else if(lL(this.editor.getModel().uri,is.query.modelInfo?.model.uri)){if(!e){const r=this.decorations.getRanges();for(const a of r)if(a.containsPosition(this.editor.getPosition()))return}this._stopAll(e?this.model:void 0);const n=++this.workerRequestTokenId;this.workerRequestCompleted=!1;const o=this.getOtherModelsToHighlight(this.editor.getModel());if(!is.query||!is.query.modelInfo||is.query.modelInfo.model.isDisposed())return;this.workerRequest=this.computeWithModel(is.query.modelInfo.model,is.query.modelInfo.selection,is.query.word,o),this.workerRequest?.result.then(r=>{n===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=r||[],this._beginRenderDecorations())},xt)}}computeWithModel(e,t,i,n){return n.length?cet(this.multiDocumentProviders,e,t,i,this.editor.getOption(132),n):aet(this.providers,e,t,i,this.editor.getOption(132))}_beginRenderDecorations(){const e=new Date().getTime(),t=this.lastCursorPositionChangeTime+250;e>=t?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},t-e)}renderDecorations(){this.renderDecorationsTimer=-1;const e=this.codeEditorService.listCodeEditors();for(const t of e){const i=Fp.get(t);if(!i)continue;const n=[],o=t.getModel()?.uri;if(o&&this.workerRequestValue.has(o)){const r=is.storedDecorationIDs.get(o),a=this.workerRequestValue.get(o);if(a)for(const c of a)c.range&&n.push({range:c.range,options:ZXe(c.kind)});let l=[];t.changeDecorations(c=>{l=c.deltaDecorations(r??[],n)}),is.storedDecorationIDs=is.storedDecorationIDs.set(o,l),n.length>0&&(i.wordHighlighter?.decorations.set(n),i.wordHighlighter?._hasWordHighlights.set(!0))}}}dispose(){this._stopSingular(),this.toUnhook.dispose()}},is=gp,gp.storedDecorationIDs=new Ks,gp.query=null,gp);oz=is=dpe([WI(4,gi)],oz);var _b;let Fp=(_b=class extends se{static get(e){return e.getContribution(sz.ID)}constructor(e,t,i,n){super(),this._wordHighlighter=null;const o=()=>{e.hasModel()&&!e.getModel().isTooLargeForTokenization()&&(this._wordHighlighter=new oz(e,i.documentHighlightProvider,i.multiDocumentHighlightProvider,t,n))};this._register(e.onDidChangeModel(r=>{this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),o()})),o()}get wordHighlighter(){return this._wordHighlighter}saveViewState(){return!!(this._wordHighlighter&&this._wordHighlighter.hasDecorations())}moveNext(){this._wordHighlighter?.moveNext()}moveBack(){this._wordHighlighter?.moveBack()}restoreViewState(e){this._wordHighlighter&&e&&this._wordHighlighter.restore()}dispose(){this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),super.dispose()}},sz=_b,_b.ID="editor.contrib.wordHighlighter",_b);Fp=sz=dpe([WI(1,gt),WI(2,qe),WI(3,gi)],Fp);class fpe extends ze{constructor(e,t){super(t),this._isNext=e}run(e,t){const i=Fp.get(t);i&&(this._isNext?i.moveNext():i.moveBack())}}class det extends fpe{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:v("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:Rq,kbOpts:{kbExpr:W.editorTextFocus,primary:65,weight:100}})}}class uet extends fpe{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:v("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:Rq,kbOpts:{kbExpr:W.editorTextFocus,primary:1089,weight:100}})}}class het extends ze{constructor(){super({id:"editor.action.wordHighlight.trigger",label:v("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:void 0,kbOpts:{kbExpr:W.editorTextFocus,primary:0,weight:100}})}run(e,t,i){const n=Fp.get(t);n&&n.restoreViewState(!0)}}ai(Fp.ID,Fp,0);ye(det);ye(uet);ye(het);_y(nz);class IP extends Ds{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){if(!t.hasModel())return;const n=Vl(t.getOption(132),t.getOption(131)),o=t.getModel(),r=t.getSelections(),a=r.length>1,l=r.map(c=>{const d=new ee(c.positionLineNumber,c.positionColumn),u=this._move(n,o,d,this._wordNavigationType,a);return this._moveTo(c,u,this._inSelectionMode)});if(o.pushStackElement(),t._getViewModel().setCursorStates("moveWordCommand",3,l.map(c=>hi.fromModelSelection(c))),l.length===1){const c=new ee(l[0].positionLineNumber,l[0].positionColumn);t.revealPosition(c,0)}}_moveTo(e,t,i){return i?new Ye(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new Ye(t.lineNumber,t.column,t.lineNumber,t.column)}}class Kp extends IP{_move(e,t,i,n,o){return Ci.moveWordLeft(e,t,i,n,o)}}class Gp extends IP{_move(e,t,i,n,o){return Ci.moveWordRight(e,t,i,n)}}class fet extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0})}}class get extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})}}class pet extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:2063,mac:{primary:527},weight:100}})}}class met extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0})}}class _et extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})}}class bet extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:3087,mac:{primary:1551},weight:100}})}}class vet extends Kp{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class Cet extends Kp{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class wet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})}}class yet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:2065,mac:{primary:529},weight:100}})}}class xet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})}}class Let extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})}}class ket extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:be.and(W.textInputFocus,be.and(Hk,jO)?.negate()),primary:3089,mac:{primary:1553},weight:100}})}}class Det extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})}}class Eet extends Gp{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class Net extends Gp{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Vl(Id.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class TP extends Ds{constructor(e){super(e),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){const n=e.get(Rn);if(!t.hasModel())return;const o=Vl(t.getOption(132),t.getOption(131)),r=t.getModel(),a=t.getSelections(),l=t.getOption(6),c=t.getOption(11),d=n.getLanguageConfiguration(r.getLanguageId()).getAutoClosingPairs(),u=t._getViewModel(),f=a.map(p=>{const m=this._delete({wordSeparators:o,model:r,selection:p,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:t.getOption(9),autoClosingBrackets:l,autoClosingQuotes:c,autoClosingPairs:d,autoClosedCharacters:u.getCursorAutoClosedCharacters()},this._wordNavigationType);return new yo(m,"")});t.pushUndoStop(),t.executeCommands(this.id,f),t.pushUndoStop()}}class Mq extends TP{_delete(e,t){const i=Ci.deleteWordLeft(e,t);return i||new M(1,1,1,1)}}class Aq extends TP{_delete(e,t){const i=Ci.deleteWordRight(e,t);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new M(n,o,n,o)}}class Iet extends Mq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:W.writable})}}class Tet extends Mq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:W.writable})}}class Ret extends Mq{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}}class Met extends Aq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:W.writable})}}class Aet extends Aq{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:W.writable})}}class Oet extends Aq{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}}class Pet extends ze{constructor(){super({id:"deleteInsideWord",precondition:W.writable,label:v("deleteInsideWord","Delete Word"),alias:"Delete Word"})}run(e,t,i){if(!t.hasModel())return;const n=Vl(t.getOption(132),t.getOption(131)),o=t.getModel(),a=t.getSelections().map(l=>{const c=Ci.deleteInsideWord(n,o,l);return new yo(c,"")});t.pushUndoStop(),t.executeCommands(this.id,a),t.pushUndoStop()}}Fe(new fet);Fe(new get);Fe(new pet);Fe(new met);Fe(new _et);Fe(new bet);Fe(new wet);Fe(new yet);Fe(new xet);Fe(new Let);Fe(new ket);Fe(new Det);Fe(new vet);Fe(new Cet);Fe(new Eet);Fe(new Net);Fe(new Iet);Fe(new Tet);Fe(new Ret);Fe(new Met);Fe(new Aet);Fe(new Oet);ye(Pet);class Fet extends TP{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordPartLeft",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,t){const i=tP.deleteWordPartLeft(e);return i||new M(1,1,1,1)}}class Bet extends TP{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordPartRight",precondition:W.writable,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,t){const i=tP.deleteWordPartRight(e);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new M(n,o,n,o)}}class gpe extends IP{_move(e,t,i,n,o){return tP.moveWordPartLeft(e,t,i,o)}}class Wet extends gpe{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordPartLeft",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:783},weight:100}})}}ni.registerCommandAlias("cursorWordPartStartLeft","cursorWordPartLeft");class Het extends gpe{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordPartLeftSelect",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}}ni.registerCommandAlias("cursorWordPartStartLeftSelect","cursorWordPartLeftSelect");class ppe extends IP{_move(e,t,i,n,o){return tP.moveWordPartRight(e,t,i)}}class Vet extends ppe{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordPartRight",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:785},weight:100}})}}class zet extends ppe{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordPartRightSelect",precondition:void 0,kbOpts:{kbExpr:W.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}}Fe(new Fet);Fe(new Bet);Fe(new Wet);Fe(new Het);Fe(new Vet);Fe(new zet);const Uq=class Uq extends se{constructor(e){super(),this.editor=e,this._register(this.editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit()))}_onDidAttemptReadOnlyEdit(){const e=ga.get(this.editor);if(e&&this.editor.hasModel()){let t=this.editor.getOptions().get(93);t||(this.editor.isSimpleWidget?t=new Mo(v("editor.simple.readonly","Cannot edit in read-only input")):t=new Mo(v("editor.readonly","Cannot edit in read-only editor"))),e.showMessage(t,this.editor.getPosition())}}};Uq.ID="editor.contrib.readOnlyMessageController";let $M=Uq;ai($M.ID,$M,2);var Uet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Sse=function(s,e){return function(t,i){e(t,i,s)}};let rz=class extends se{constructor(e,t,i){super(),this._textModel=e,this._languageFeaturesService=t,this._outlineModelService=i,this._currentModel=Bt(this,void 0);const n=wo("documentSymbolProvider.onDidChange",this._languageFeaturesService.documentSymbolProvider.onDidChange),o=wo("_textModel.onDidChangeContent",Me.debounce(r=>this._textModel.onDidChangeContent(r),()=>{},100));this._register(Fr(async(r,a)=>{n.read(r),o.read(r);const l=a.add(new kHe),c=await this._outlineModelService.getOrCreate(this._textModel,l.token);a.isDisposed||this._currentModel.set(c,void 0)}))}getBreadcrumbItems(e,t){const i=this._currentModel.read(t);if(!i)return[];const n=i.asListOfDocumentSymbols().filter(o=>e.contains(o.range.startLineNumber)&&!e.contains(o.range.endLineNumber));return n.sort(Gre(fr(o=>o.range.endLineNumber-o.range.startLineNumber,xc))),n.map(o=>({name:o.name,kind:o.kind,startLineNumber:o.range.startLineNumber}))}};rz=Uet([Sse(1,qe),Sse(2,hD)],rz);$R.setBreadcrumbsSourceFactory((s,e)=>e.createInstance(rz,s));const jq=class jq extends se{constructor(e){super(),this.editor=e,this.widget=null,Cd&&(this._register(e.onDidChangeConfiguration(()=>this.update())),this.update())}update(){const e=!this.editor.getOption(92);!this.widget&&e?this.widget=new az(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)}dispose(){super.dispose(),this.widget&&(this.widget.dispose(),this.widget=null)}};jq.ID="editor.contrib.iPadShowKeyboard";let qM=jq;const LA=class LA extends se{constructor(e){super(),this.editor=e,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(de(this._domNode,"touchstart",t=>{this.editor.focus()})),this._register(de(this._domNode,"focus",t=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return LA.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}};LA.ID="editor.contrib.ShowKeyboardWidget";let az=LA;ai(qM.ID,qM,3);var jet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},xse=function(s,e){return function(t,i){e(t,i,s)}},lz,bb;let uk=(bb=class extends se{static get(e){return e.getContribution(lz.ID)}constructor(e,t,i){super(),this._editor=e,this._languageService=i,this._widget=null,this._register(this._editor.onDidChangeModel(n=>this.stop())),this._register(this._editor.onDidChangeModelLanguage(n=>this.stop())),this._register(Vn.onDidChange(n=>this.stop())),this._register(this._editor.onKeyUp(n=>n.keyCode===9&&this.stop()))}dispose(){this.stop(),super.dispose()}launch(){this._widget||this._editor.hasModel()&&(this._widget=new cz(this._editor,this._languageService))}stop(){this._widget&&(this._widget.dispose(),this._widget=null)}},lz=bb,bb.ID="editor.contrib.inspectTokens",bb);uk=lz=jet([xse(1,hl),xse(2,xn)],uk);class $et extends ze{constructor(){super({id:"editor.action.inspectTokens",label:p8.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(e,t){uk.get(t)?.launch()}}function qet(s){let e="";for(let t=0,i=s.length;t<i;t++){const n=s.charCodeAt(t);switch(n){case 9:e+="→";break;case 32:e+="·";break;default:e+=String.fromCharCode(n)}}return e}function Ket(s,e){const t=Vn.get(e);if(t)return t;const i=s.encodeLanguageId(e);return{getInitialState:()=>b1,tokenize:(n,o,r)=>dj(e,r),tokenizeEncoded:(n,o,r)=>AO(i,r)}}const kA=class kA extends se{constructor(e,t){super(),this.allowEditorOverflow=!0,this._editor=e,this._languageService=t,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=Ket(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition(i=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return kA._ID}_compute(e){const t=this._getTokensAtLine(e.lineNumber);let i=0;for(let l=t.tokens1.length-1;l>=0;l--){const c=t.tokens1[l];if(e.column-1>=c.offset){i=l;break}}let n=0;for(let l=t.tokens2.length>>>1;l>=0;l--)if(e.column-1>=t.tokens2[l<<1]){n=l;break}const o=this._model.getLineContent(e.lineNumber);let r="";if(i<t.tokens1.length){const l=t.tokens1[i].offset,c=i+1<t.tokens1.length?t.tokens1[i+1].offset:o.length;r=o.substring(l,c)}lo(this._domNode,Ne("h2.tm-token",void 0,qet(r),Ne("span.tm-token-length",void 0,`${r.length} ${r.length===1?"char":"chars"}`))),we(this._domNode,Ne("hr.tokens-inspect-separator",{style:"clear:both"}));const a=(n<<1)+1<t.tokens2.length?this._decodeMetadata(t.tokens2[(n<<1)+1]):null;we(this._domNode,Ne("table.tm-metadata-table",void 0,Ne("tbody",void 0,Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"language"),Ne("td.tm-metadata-value",void 0,`${a?a.languageId:"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"token type"),Ne("td.tm-metadata-value",void 0,`${a?this._tokenTypeToString(a.tokenType):"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"font style"),Ne("td.tm-metadata-value",void 0,`${a?this._fontStyleToString(a.fontStyle):"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"foreground"),Ne("td.tm-metadata-value",void 0,`${a?ve.Format.CSS.formatHex(a.foreground):"-?-"}`)),Ne("tr",void 0,Ne("td.tm-metadata-key",void 0,"background"),Ne("td.tm-metadata-value",void 0,`${a?ve.Format.CSS.formatHex(a.background):"-?-"}`))))),we(this._domNode,Ne("hr.tokens-inspect-separator")),i<t.tokens1.length&&we(this._domNode,Ne("span.tm-token-type",void 0,t.tokens1[i].type)),this._editor.layoutContentWidget(this)}_decodeMetadata(e){const t=Vn.getColorMap(),i=Tr.getLanguageId(e),n=Tr.getTokenType(e),o=Tr.getFontStyle(e),r=Tr.getForeground(e),a=Tr.getBackground(e);return{languageId:this._languageService.languageIdCodec.decodeLanguageId(i),tokenType:n,fontStyle:o,foreground:t[r],background:t[a]}}_tokenTypeToString(e){switch(e){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 3:return"RegEx";default:return"??"}}_fontStyleToString(e){let t="";return e&1&&(t+="italic "),e&2&&(t+="bold "),e&4&&(t+="underline "),e&8&&(t+="strikethrough "),t.length===0&&(t="---"),t}_getTokensAtLine(e){const t=this._getStateBeforeLine(e),i=this._tokenizationSupport.tokenize(this._model.getLineContent(e),!0,t),n=this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(e),!0,t);return{startState:t,tokens1:i.tokens,tokens2:n.tokens,endState:i.endState}}_getStateBeforeLine(e){let t=this._tokenizationSupport.getInitialState();for(let i=1;i<e;i++)t=this._tokenizationSupport.tokenize(this._model.getLineContent(i),!0,t).endState;return t}getDomNode(){return this._domNode}getPosition(){return{position:this._editor.getPosition(),preference:[2,1]}}};kA._ID="editor.contrib.inspectTokensWidget";let cz=kA;ai(uk.ID,uk,4);ye($et);var Get=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Lse=function(s,e){return function(t,i){e(t,i,s)}},CS,vb;let dz=(vb=class{constructor(e,t){this.quickInputService=e,this.keybindingService=t,this.registry=Tn.as(rv.Quickaccess)}provide(e){const t=new _e;return t.add(e.onDidAccept(()=>{const[i]=e.selectedItems;i&&this.quickInputService.quickAccess.show(i.prefix,{preserveValue:!0})})),t.add(e.onDidChangeValue(i=>{const n=this.registry.getQuickAccessProvider(i.substr(CS.PREFIX.length));n&&n.prefix&&n.prefix!==CS.PREFIX&&this.quickInputService.quickAccess.show(n.prefix,{preserveValue:!0})})),e.items=this.getQuickAccessProviders().filter(i=>i.prefix!==CS.PREFIX),t}getQuickAccessProviders(){return this.registry.getQuickAccessProviders().sort((t,i)=>t.prefix.localeCompare(i.prefix)).flatMap(t=>this.createPicks(t))}createPicks(e){return e.helpEntries.map(t=>{const i=t.prefix||e.prefix,n=i||"…";return{prefix:i,label:n,keybinding:t.commandId?this.keybindingService.lookupKeybinding(t.commandId):void 0,ariaLabel:v("helpPickAriaLabel","{0}, {1}",n,t.description),description:t.description}})}},CS=vb,vb.PREFIX="?",vb);dz=CS=Get([Lse(0,Gl),Lse(1,yi)],dz);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:dz,prefix:"",helpEntries:[{description:m8.helpQuickAccessActionLabel}]});class mpe{constructor(e){this.options=e,this.rangeHighlightDecorationId=void 0}provide(e,t,i){const n=new _e;e.canAcceptInBackground=!!this.options?.canAcceptInBackground,e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;const o=n.add(new Fs);return o.value=this.doProvide(e,t,i),n.add(this.onDidActiveTextEditorControlChange(()=>{o.value=void 0,o.value=this.doProvide(e,t)})),n}doProvide(e,t,i){const n=new _e,o=this.activeTextEditorControl;if(o&&this.canProvideWithTextEditor(o)){const r={editor:o},a=xhe(o);if(a){let l=o.saveViewState()??void 0;n.add(a.onDidChangeCursorPosition(()=>{l=o.saveViewState()??void 0})),r.restoreViewState=()=>{l&&o===this.activeTextEditorControl&&o.restoreViewState(l)},n.add(_p(t.onCancellationRequested)(()=>r.restoreViewState?.()))}n.add(tt(()=>this.clearDecorations(o))),n.add(this.provideWithTextEditor(r,e,t,i))}else n.add(this.provideWithoutTextEditor(e,t));return n}canProvideWithTextEditor(e){return!0}gotoLocation({editor:e},t){e.setSelection(t.range,"code.jump"),e.revealRangeInCenter(t.range,0),t.preserveFocus||e.focus();const i=e.getModel();i&&"getLineContent"in i&&Iu(`${i.getLineContent(t.range.startLineNumber)}`)}getModel(e){return B$(e)?e.getModel()?.modified:e.getModel()}addDecorations(e,t){e.changeDecorations(i=>{const n=[];this.rangeHighlightDecorationId&&(n.push(this.rangeHighlightDecorationId.overviewRulerDecorationId),n.push(this.rangeHighlightDecorationId.rangeHighlightId),this.rangeHighlightDecorationId=void 0);const o=[{range:t,options:{description:"quick-access-range-highlight",className:"rangeHighlight",isWholeLine:!0}},{range:t,options:{description:"quick-access-range-highlight-overview",overviewRuler:{color:zn(pde),position:Ja.Full}}}],[r,a]=i.deltaDecorations(n,o);this.rangeHighlightDecorationId={rangeHighlightId:r,overviewRulerDecorationId:a}})}clearDecorations(e){const t=this.rangeHighlightDecorationId;t&&(e.changeDecorations(i=>{i.deltaDecorations([t.overviewRulerDecorationId,t.rangeHighlightId],[])}),this.rangeHighlightDecorationId=void 0)}}const DA=class DA extends mpe{constructor(){super({canAcceptInBackground:!0})}provideWithoutTextEditor(e){const t=v("cannotRunGotoLine","Open a text editor first to go to a line.");return e.items=[{label:t}],e.ariaLabel=t,se.None}provideWithTextEditor(e,t,i){const n=e.editor,o=new _e;o.add(t.onDidAccept(l=>{const[c]=t.selectedItems;if(c){if(!this.isValidLineNumber(n,c.lineNumber))return;this.gotoLocation(e,{range:this.toRange(c.lineNumber,c.column),keyMods:t.keyMods,preserveFocus:l.inBackground}),l.inBackground||t.hide()}}));const r=()=>{const l=this.parsePosition(n,t.value.trim().substr(DA.PREFIX.length)),c=this.getPickLabel(n,l.lineNumber,l.column);if(t.items=[{lineNumber:l.lineNumber,column:l.column,label:c}],t.ariaLabel=c,!this.isValidLineNumber(n,l.lineNumber)){this.clearDecorations(n);return}const d=this.toRange(l.lineNumber,l.column);n.revealRangeInCenter(d,0),this.addDecorations(n,d)};r(),o.add(t.onDidChangeValue(()=>r()));const a=xhe(n);return a&&a.getOptions().get(68).renderType===2&&(a.updateOptions({lineNumbers:"on"}),o.add(tt(()=>a.updateOptions({lineNumbers:"relative"})))),o}toRange(e=1,t=1){return{startLineNumber:e,startColumn:t,endLineNumber:e,endColumn:t}}parsePosition(e,t){const i=t.split(/,|:|#/).map(o=>parseInt(o,10)).filter(o=>!isNaN(o)),n=this.lineCount(e)+1;return{lineNumber:i[0]>0?i[0]:n+i[0],column:i[1]}}getPickLabel(e,t,i){if(this.isValidLineNumber(e,t))return this.isValidColumn(e,t,i)?v("gotoLineColumnLabel","Go to line {0} and character {1}.",t,i):v("gotoLineLabel","Go to line {0}.",t);const n=e.getPosition()||{lineNumber:1,column:1},o=this.lineCount(e);return o>1?v("gotoLineLabelEmptyWithLimit","Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.",n.lineNumber,n.column,o):v("gotoLineLabelEmpty","Current Line: {0}, Character: {1}. Type a line number to navigate to.",n.lineNumber,n.column)}isValidLineNumber(e,t){return!t||typeof t!="number"?!1:t>0&&t<=this.lineCount(e)}isValidColumn(e,t,i){if(!i||typeof i!="number")return!1;const n=this.getModel(e);if(!n)return!1;const o={lineNumber:t,column:i};return n.validatePosition(o).equals(o)}lineCount(e){return this.getModel(e)?.getLineCount()??0}};DA.PREFIX=":";let uz=DA;var Yet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Zet=function(s,e){return function(t,i){e(t,i,s)}};let hk=class extends uz{constructor(e){super(),this.editorService=e,this.onDidActiveTextEditorControlChange=Me.None}get activeTextEditorControl(){return this.editorService.getFocusedCodeEditor()??void 0}};hk=Yet([Zet(0,gi)],hk);var Cb;let _pe=(Cb=class extends ze{constructor(){super({id:Cb.ID,label:HT.gotoLineActionLabel,alias:"Go to Line/Column...",precondition:void 0,kbOpts:{kbExpr:W.focus,primary:2085,mac:{primary:293},weight:100}})}run(e){e.get(Gl).quickAccess.show(hk.PREFIX)}},Cb.ID="editor.action.gotoLine",Cb);ye(_pe);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:hk,prefix:hk.PREFIX,helpEntries:[{description:HT.gotoLineActionLabel,commandId:_pe.ID}]});const bpe=[void 0,[]];function mB(s,e,t=0,i=0){const n=e;return n.values&&n.values.length>1?Xet(s,n.values,t,i):vpe(s,e,t,i)}function Xet(s,e,t,i){let n=0;const o=[];for(const r of e){const[a,l]=vpe(s,r,t,i);if(typeof a!="number")return bpe;n+=a,o.push(...l)}return[n,Qet(o)]}function vpe(s,e,t,i){const n=Mb(e.original,e.originalLowercase,t,s,s.toLowerCase(),i,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return n?[n[0],Wk(n)]:bpe}function Qet(s){const e=s.sort((n,o)=>n.start-o.start),t=[];let i;for(const n of e)!i||!Jet(i,n)?(i=n,t.push(n)):(i.start=Math.min(i.start,n.start),i.end=Math.max(i.end,n.end));return t}function Jet(s,e){return!(s.end<e.start||e.end<s.start)}function kse(s){return s.startsWith('"')&&s.endsWith('"')}const Cpe=" ";function hz(s){typeof s!="string"&&(s="");const e=s.toLowerCase(),{pathNormalized:t,normalized:i,normalizedLowercase:n}=Dse(s),o=t.indexOf(fd)>=0,r=kse(s);let a;const l=s.split(Cpe);if(l.length>1)for(const c of l){const d=kse(c),{pathNormalized:u,normalized:f,normalizedLowercase:p}=Dse(c);f&&(a||(a=[]),a.push({original:c,originalLowercase:c.toLowerCase(),pathNormalized:u,normalized:f,normalizedLowercase:p,expectContiguousMatch:d}))}return{original:s,originalLowercase:e,pathNormalized:t,normalized:i,normalizedLowercase:n,values:a,containsPathSeparator:o,expectContiguousMatch:r}}function Dse(s){let e;Lo?e=s.replace(/\//g,fd):e=s.replace(/\\/g,fd);const t=nNe(e).replace(/\s|"/g,"");return{pathNormalized:e,normalized:t,normalizedLowercase:t.toLowerCase()}}function Ese(s){return Array.isArray(s)?hz(s.map(e=>e.original).join(Cpe)):hz(s.original)}var ett=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Nse=function(s,e){return function(t,i){e(t,i,s)}},HI,ad;let x_=(ad=class extends mpe{constructor(e,t,i=Object.create(null)){super(i),this._languageFeaturesService=e,this._outlineModelService=t,this.options=i,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(e){return this.provideLabelPick(e,v("cannotRunGotoSymbolWithoutEditor","To go to a symbol, first open a text editor with symbol information.")),se.None}provideWithTextEditor(e,t,i,n){const o=e.editor,r=this.getModel(o);return r?this._languageFeaturesService.documentSymbolProvider.has(r)?this.doProvideWithEditorSymbols(e,r,t,i,n):this.doProvideWithoutEditorSymbols(e,r,t,i):se.None}doProvideWithoutEditorSymbols(e,t,i,n){const o=new _e;return this.provideLabelPick(i,v("cannotRunGotoSymbolWithoutSymbolProvider","The active text editor does not provide symbol information.")),(async()=>!await this.waitForLanguageSymbolRegistry(t,o)||n.isCancellationRequested||o.add(this.doProvideWithEditorSymbols(e,t,i,n)))(),o}provideLabelPick(e,t){e.items=[{label:t,index:0,kind:14}],e.ariaLabel=t}async waitForLanguageSymbolRegistry(e,t){if(this._languageFeaturesService.documentSymbolProvider.has(e))return!0;const i=new ey,n=t.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{this._languageFeaturesService.documentSymbolProvider.has(e)&&(n.dispose(),i.complete(!0))}));return t.add(tt(()=>i.complete(!1))),i.p}doProvideWithEditorSymbols(e,t,i,n,o){const r=e.editor,a=new _e;a.add(i.onDidAccept(u=>{const[f]=i.selectedItems;f&&f.range&&(this.gotoLocation(e,{range:f.range.selection,keyMods:i.keyMods,preserveFocus:u.inBackground}),o?.handleAccept?.(f),u.inBackground||i.hide())})),a.add(i.onDidTriggerItemButton(({item:u})=>{u&&u.range&&(this.gotoLocation(e,{range:u.range.selection,keyMods:i.keyMods,forceSideBySide:!0}),i.hide())}));const l=this.getDocumentSymbols(t,n);let c;const d=async u=>{c?.dispose(!0),i.busy=!1,c=new In(n),i.busy=!0;try{const f=hz(i.value.substr(HI.PREFIX.length).trim()),p=await this.doGetSymbolPicks(l,f,void 0,c.token,t);if(n.isCancellationRequested)return;if(p.length>0){if(i.items=p,u&&f.original.length===0){const m=Gx(p,b=>!!(b.type!=="separator"&&b.range&&M.containsPosition(b.range.decoration,u)));m&&(i.activeItems=[m])}}else f.original.length>0?this.provideLabelPick(i,v("noMatchingSymbolResults","No matching editor symbols")):this.provideLabelPick(i,v("noSymbolResults","No editor symbols"))}finally{n.isCancellationRequested||(i.busy=!1)}};return a.add(i.onDidChangeValue(()=>d(void 0))),d(r.getSelection()?.getPosition()),a.add(i.onDidChangeActive(()=>{const[u]=i.activeItems;u&&u.range&&(r.revealRangeInCenter(u.range.selection,0),this.addDecorations(r,u.range.decoration))})),a}async doGetSymbolPicks(e,t,i,n,o){const r=await e;if(n.isCancellationRequested)return[];const a=t.original.indexOf(HI.SCOPE_PREFIX)===0,l=a?1:0;let c,d;t.values&&t.values.length>1?(c=Ese(t.values[0]),d=Ese(t.values.slice(1))):c=t;let u;const f=this.options?.openSideBySideDirection?.();f&&(u=[{iconClass:f==="right"?ft.asClassName(De.splitHorizontal):ft.asClassName(De.splitVertical),tooltip:f==="right"?v("openToSide","Open to the Side"):v("openToBottom","Open to the Bottom")}]);const p=[];for(let w=0;w<r.length;w++){const y=r[w],S=tNe(y.name),x=`$(${sT.toIcon(y.kind).id}) ${S}`,L=x.length-S.length;let N=y.containerName;i?.extraContainerLabel&&(N?N=`${i.extraContainerLabel} • ${N}`:N=i.extraContainerLabel);let I,T,A,P;if(t.original.length>l){let H=!1;if(c!==t&&([I,T]=mB(x,{...t,values:void 0},l,L),typeof I=="number"&&(H=!0)),typeof I!="number"&&([I,T]=mB(x,c,l,L),typeof I!="number"))continue;if(!H&&d){if(N&&d.original.length>0&&([A,P]=mB(N,d)),typeof A!="number")continue;typeof I=="number"&&(I+=A)}}const F=y.tags&&y.tags.indexOf(1)>=0;p.push({index:w,kind:y.kind,score:I,label:x,ariaLabel:GEe(y.name,y.kind),description:N,highlights:F?void 0:{label:T,description:P},range:{selection:M.collapseToStart(y.selectionRange),decoration:y.range},uri:o.uri,symbolName:S,strikethrough:F,buttons:u})}const m=p.sort((w,y)=>a?this.compareByKindAndScore(w,y):this.compareByScore(w,y));let b=[];if(a){let x=function(){y&&typeof w=="number"&&S>0&&(y.label=Lb(bB[w]||_B,S))},w,y,S=0;for(const L of m)w!==L.kind?(x(),w=L.kind,S=1,y={type:"separator"},b.push(y)):S++,b.push(L);x()}else m.length>0&&(b=[{label:v("symbols","symbols ({0})",p.length),type:"separator"},...m]);return b}compareByScore(e,t){if(typeof e.score!="number"&&typeof t.score=="number")return 1;if(typeof e.score=="number"&&typeof t.score!="number")return-1;if(typeof e.score=="number"&&typeof t.score=="number"){if(e.score>t.score)return-1;if(e.score<t.score)return 1}return e.index<t.index?-1:e.index>t.index?1:0}compareByKindAndScore(e,t){const i=bB[e.kind]||_B,n=bB[t.kind]||_B,o=i.localeCompare(n);return o===0?this.compareByScore(e,t):o}async getDocumentSymbols(e,t){const i=await this._outlineModelService.getOrCreate(e,t);return t.isCancellationRequested?[]:i.asListOfDocumentSymbols()}},HI=ad,ad.PREFIX="@",ad.SCOPE_PREFIX=":",ad.PREFIX_BY_CATEGORY=`${ad.PREFIX}${ad.SCOPE_PREFIX}`,ad);x_=HI=ett([Nse(0,qe),Nse(1,hD)],x_);const _B=v("property","properties ({0})"),bB={5:v("method","methods ({0})"),11:v("function","functions ({0})"),8:v("_constructor","constructors ({0})"),12:v("variable","variables ({0})"),4:v("class","classes ({0})"),22:v("struct","structs ({0})"),23:v("event","events ({0})"),24:v("operator","operators ({0})"),10:v("interface","interfaces ({0})"),2:v("namespace","namespaces ({0})"),3:v("package","packages ({0})"),25:v("typeParameter","type parameters ({0})"),1:v("modules","modules ({0})"),6:v("property","properties ({0})"),9:v("enum","enumerations ({0})"),21:v("enumMember","enumeration members ({0})"),14:v("string","strings ({0})"),0:v("file","files ({0})"),17:v("array","arrays ({0})"),15:v("number","numbers ({0})"),16:v("boolean","booleans ({0})"),18:v("object","objects ({0})"),19:v("key","keys ({0})"),7:v("field","fields ({0})"),13:v("constant","constants ({0})")};var ttt=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vB=function(s,e){return function(t,i){e(t,i,s)}};let fz=class extends x_{constructor(e,t,i){super(t,i),this.editorService=e,this.onDidActiveTextEditorControlChange=Me.None}get activeTextEditorControl(){return this.editorService.getFocusedCodeEditor()??void 0}};fz=ttt([vB(0,gi),vB(1,qe),vB(2,hD)],fz);const EA=class EA extends ze{constructor(){super({id:EA.ID,label:dL.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:W.hasDocumentSymbolProvider,kbOpts:{kbExpr:W.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(e){e.get(Gl).quickAccess.show(x_.PREFIX,{itemActivation:ed.NONE})}};EA.ID="editor.action.quickOutline";let KM=EA;ye(KM);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:fz,prefix:x_.PREFIX,helpEntries:[{description:dL.quickOutlineActionLabel,prefix:x_.PREFIX,commandId:KM.ID},{description:dL.quickOutlineByCategoryActionLabel,prefix:x_.PREFIX_BY_CATEGORY}]});function itt(s){const e=new Map;for(const t of s)e.set(t,(e.get(t)??0)+1);return e}class dx{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(e,t){const i=this.computeEmbedding(e),n=new Map,o=[];for(const[r,a]of this.documents){if(t.isCancellationRequested)return[];for(const l of a.chunks){const c=this.computeSimilarityScore(l,i,n);c>0&&o.push({key:r,score:c})}}return o}static termFrequencies(e){return itt(dx.splitTerms(e))}static*splitTerms(e){const t=i=>i.toLowerCase();for(const[i]of e.matchAll(new RegExp("\\b\\p{Letter}[\\p{Letter}\\d]{2,}\\b","gu"))){yield t(i);const n=i.replace(/([a-z])([A-Z])/g,"$1 $2").split(/\s+/g);if(n.length>1)for(const o of n)o.length>2&&new RegExp("\\p{Letter}{3,}","gu").test(o)&&(yield t(o))}}updateDocuments(e){for(const{key:t}of e)this.deleteDocument(t);for(const t of e){const i=[];for(const n of t.textChunks){const o=dx.termFrequencies(n);for(const r of o.keys())this.chunkOccurrences.set(r,(this.chunkOccurrences.get(r)??0)+1);i.push({text:n,tf:o})}this.chunkCount+=i.length,this.documents.set(t.key,{chunks:i})}return this}deleteDocument(e){const t=this.documents.get(e);if(t){this.documents.delete(e),this.chunkCount-=t.chunks.length;for(const i of t.chunks)for(const n of i.tf.keys()){const o=this.chunkOccurrences.get(n);if(typeof o=="number"){const r=o-1;r<=0?this.chunkOccurrences.delete(n):this.chunkOccurrences.set(n,r)}}}}computeSimilarityScore(e,t,i){let n=0;for(const[o,r]of Object.entries(t)){const a=e.tf.get(o);if(!a)continue;let l=i.get(o);typeof l!="number"&&(l=this.computeIdf(o),i.set(o,l));const c=a*l;n+=c*r}return n}computeEmbedding(e){const t=dx.termFrequencies(e);return this.computeTfidf(t)}computeIdf(e){const t=this.chunkOccurrences.get(e)??0;return t>0?Math.log((this.chunkCount+1)/t):0}computeTfidf(e){const t=Object.create(null);for(const[i,n]of e){const o=this.computeIdf(i);o>0&&(t[i]=n*o)}return t}}function ntt(s){const e=s.slice(0);e.sort((i,n)=>n.score-i.score);const t=e[0]?.score??0;if(t>0)for(const i of e)i.score/=t;return e}var tw;(function(s){s[s.NO_ACTION=0]="NO_ACTION",s[s.CLOSE_PICKER=1]="CLOSE_PICKER",s[s.REFRESH_PICKER=2]="REFRESH_PICKER",s[s.REMOVE_ITEM=3]="REMOVE_ITEM"})(tw||(tw={}));function CB(s){return Array.isArray(s.items)}function Ise(s){const e=s;return!!e.picks&&e.additionalPicks instanceof Promise}class stt extends se{constructor(e,t){super(),this.prefix=e,this.options=t}provide(e,t,i){const n=new _e;e.canAcceptInBackground=!!this.options?.canAcceptInBackground,e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;let o;const r=n.add(new Fs),a=async()=>{const c=r.value=new _e;o?.dispose(!0),e.busy=!1,o=new In(t);const d=o.token;let u=e.value.substring(this.prefix.length);this.options?.shouldSkipTrimPickFilter||(u=u.trim());const f=this._getPicks(u,c,d,i),p=(b,w)=>{let y,S;if(CB(b)?(y=b.items,S=b.active):y=b,y.length===0){if(w)return!1;(u.length>0||e.hideInput)&&this.options?.noResultsPick&&(Ox(this.options.noResultsPick)?y=[this.options.noResultsPick(u)]:y=[this.options.noResultsPick])}return e.items=y,S&&(e.activeItems=[S]),!0},m=async b=>{let w=!1,y=!1;await Promise.all([(async()=>{typeof b.mergeDelay=="number"&&(await ff(b.mergeDelay),d.isCancellationRequested)||y||(w=p(b.picks,!0))})(),(async()=>{e.busy=!0;try{const S=await b.additionalPicks;if(d.isCancellationRequested)return;let x,L;CB(b.picks)?(x=b.picks.items,L=b.picks.active):x=b.picks;let N,I;if(CB(S)?(N=S.items,I=S.active):N=S,N.length>0||!w){let T;if(!L&&!I){const A=e.activeItems[0];A&&x.indexOf(A)!==-1&&(T=A)}p({items:[...x,...N],active:L||I||T})}}finally{d.isCancellationRequested||(e.busy=!1),y=!0}})()])};if(f!==null)if(Ise(f))await m(f);else if(!(f instanceof Promise))p(f);else{e.busy=!0;try{const b=await f;if(d.isCancellationRequested)return;Ise(b)?await m(b):p(b)}finally{d.isCancellationRequested||(e.busy=!1)}}};n.add(e.onDidChangeValue(()=>a())),a(),n.add(e.onDidAccept(c=>{if(i?.handleAccept){c.inBackground||e.hide(),i.handleAccept?.(e.activeItems[0]);return}const[d]=e.selectedItems;typeof d?.accept=="function"&&(c.inBackground||e.hide(),d.accept(e.keyMods,c))}));const l=async(c,d)=>{if(typeof d.trigger!="function")return;const u=d.buttons?.indexOf(c)??-1;if(u>=0){const f=d.trigger(u,e.keyMods),p=typeof f=="number"?f:await f;if(t.isCancellationRequested)return;switch(p){case tw.NO_ACTION:break;case tw.CLOSE_PICKER:e.hide();break;case tw.REFRESH_PICKER:a();break;case tw.REMOVE_ITEM:{const m=e.items.indexOf(d);if(m!==-1){const b=e.items.slice(),w=b.splice(m,1),y=e.activeItems.filter(x=>x!==w[0]),S=e.keepScrollPosition;e.keepScrollPosition=!0,e.items=b,y&&(e.activeItems=y),e.keepScrollPosition=S}break}}}};return n.add(e.onDidTriggerItemButton(({button:c,item:d})=>l(c,d))),n.add(e.onDidTriggerSeparatorButton(({button:c,separator:d})=>l(c,d))),n}}var wpe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Ng=function(s,e){return function(t,i){e(t,i,s)}},Am,ws,bu;let gz=(bu=class extends stt{constructor(e,t,i,n,o,r){super(Am.PREFIX,e),this.instantiationService=t,this.keybindingService=i,this.commandService=n,this.telemetryService=o,this.dialogService=r,this.commandsHistory=this._register(this.instantiationService.createInstance(pz)),this.options=e}async _getPicks(e,t,i,n){const o=await this.getCommandPicks(i);if(i.isCancellationRequested)return[];const r=_p(()=>{const p=new dx;p.updateDocuments(o.map(b=>({key:b.commandId,textChunks:[this.getTfIdfChunk(b)]})));const m=p.calculateScores(e,i);return ntt(m).filter(b=>b.score>Am.TFIDF_THRESHOLD).slice(0,Am.TFIDF_MAX_RESULTS)}),a=[];for(const p of o){const m=Am.WORD_FILTER(e,p.label)??void 0,b=p.commandAlias?Am.WORD_FILTER(e,p.commandAlias)??void 0:void 0;if(m||b)p.highlights={label:m,detail:this.options.showAlias?b:void 0},a.push(p);else if(e===p.commandId)a.push(p);else if(e.length>=3){const w=r();if(i.isCancellationRequested)return[];const y=w.find(S=>S.key===p.commandId);y&&(p.tfIdfScore=y.score,a.push(p))}}const l=new Map;for(const p of a){const m=l.get(p.label);m?(p.description=p.commandId,m.description=m.commandId):l.set(p.label,p)}a.sort((p,m)=>{if(p.tfIdfScore&&m.tfIdfScore)return p.tfIdfScore===m.tfIdfScore?p.label.localeCompare(m.label):m.tfIdfScore-p.tfIdfScore;if(p.tfIdfScore)return 1;if(m.tfIdfScore)return-1;const b=this.commandsHistory.peek(p.commandId),w=this.commandsHistory.peek(m.commandId);if(b&&w)return b>w?-1:1;if(b)return-1;if(w)return 1;if(this.options.suggestedCommandIds){const y=this.options.suggestedCommandIds.has(p.commandId),S=this.options.suggestedCommandIds.has(m.commandId);if(y&&S)return 0;if(y)return-1;if(S)return 1}return p.label.localeCompare(m.label)});const c=[];let d=!1,u=!0,f=!!this.options.suggestedCommandIds;for(let p=0;p<a.length;p++){const m=a[p];p===0&&this.commandsHistory.peek(m.commandId)&&(c.push({type:"separator",label:v("recentlyUsed","recently used")}),d=!0),u&&m.tfIdfScore!==void 0&&(c.push({type:"separator",label:v("suggested","similar commands")}),u=!1),f&&m.tfIdfScore===void 0&&!this.commandsHistory.peek(m.commandId)&&this.options.suggestedCommandIds?.has(m.commandId)&&(c.push({type:"separator",label:v("commonlyUsed","commonly used")}),d=!0,f=!1),d&&m.tfIdfScore===void 0&&!this.commandsHistory.peek(m.commandId)&&!this.options.suggestedCommandIds?.has(m.commandId)&&(c.push({type:"separator",label:v("morecCommands","other commands")}),d=!1),c.push(this.toCommandPick(m,n))}return this.hasAdditionalCommandPicks(e,i)?{picks:c,additionalPicks:(async()=>{const p=await this.getAdditionalCommandPicks(o,a,e,i);if(i.isCancellationRequested)return[];const m=p.map(b=>this.toCommandPick(b,n));return u&&m[0]?.type!=="separator"&&m.unshift({type:"separator",label:v("suggested","similar commands")}),m})()}:c}toCommandPick(e,t){if(e.type==="separator")return e;const i=this.keybindingService.lookupKeybinding(e.commandId),n=i?v("commandPickAriaLabelWithKeybinding","{0}, {1}",e.label,i.getAriaLabel()):e.label;return{...e,ariaLabel:n,detail:this.options.showAlias&&e.commandAlias!==e.label?e.commandAlias:void 0,keybinding:i,accept:async()=>{this.commandsHistory.push(e.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.commandId,from:t?.from??"quick open"});try{e.args?.length?await this.commandService.executeCommand(e.commandId,...e.args):await this.commandService.executeCommand(e.commandId)}catch(o){ql(o)||this.dialogService.error(v("canNotRun","Command '{0}' resulted in an error",e.label),JR(o))}}}}getTfIdfChunk({label:e,commandAlias:t,commandDescription:i}){let n=e;return t&&t!==e&&(n+=` - ${t}`),i&&i.value!==e&&(n+=` - ${i.value===i.original?i.value:`${i.value} (${i.original})`}`),n}},Am=bu,bu.PREFIX=">",bu.TFIDF_THRESHOLD=.5,bu.TFIDF_MAX_RESULTS=5,bu.WORD_FILTER=tj(rL,pOe,Ece),bu);gz=Am=wpe([Ng(1,it),Ng(2,yi),Ng(3,en),Ng(4,Fo),Ng(5,Pk)],gz);var ld;let pz=(ld=class extends se{constructor(e,t,i){super(),this.storageService=e,this.configurationService=t,this.logService=i,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>this.updateConfiguration(e))),this._register(this.storageService.onWillSaveState(e=>{e.reason===gL.SHUTDOWN&&this.saveState()}))}updateConfiguration(e){e&&!e.affectsConfiguration("workbench.commandPalette.history")||(this.configuredCommandsHistoryLength=ws.getConfiguredCommandHistoryLength(this.configurationService),ws.cache&&ws.cache.limit!==this.configuredCommandsHistoryLength&&(ws.cache.limit=this.configuredCommandsHistoryLength,ws.hasChanges=!0))}load(){const e=this.storageService.get(ws.PREF_KEY_CACHE,0);let t;if(e)try{t=JSON.parse(e)}catch(n){this.logService.error(`[CommandsHistory] invalid data: ${n}`)}const i=ws.cache=new Wu(this.configuredCommandsHistoryLength,1);if(t){let n;t.usesLRU?n=t.entries:n=t.entries.sort((o,r)=>o.value-r.value),n.forEach(o=>i.set(o.key,o.value))}ws.counter=this.storageService.getNumber(ws.PREF_KEY_COUNTER,0,ws.counter)}push(e){ws.cache&&(ws.cache.set(e,ws.counter++),ws.hasChanges=!0)}peek(e){return ws.cache?.peek(e)}saveState(){if(!ws.cache||!ws.hasChanges)return;const e={usesLRU:!0,entries:[]};ws.cache.forEach((t,i)=>e.entries.push({key:i,value:t})),this.storageService.store(ws.PREF_KEY_CACHE,JSON.stringify(e),0,0),this.storageService.store(ws.PREF_KEY_COUNTER,ws.counter,0,0),ws.hasChanges=!1}static getConfiguredCommandHistoryLength(e){const i=e.getValue().workbench?.commandPalette?.history;return typeof i=="number"?i:ws.DEFAULT_COMMANDS_HISTORY_LENGTH}},ws=ld,ld.DEFAULT_COMMANDS_HISTORY_LENGTH=50,ld.PREF_KEY_CACHE="commandPalette.mru.cache",ld.PREF_KEY_COUNTER="commandPalette.mru.counter",ld.counter=1,ld.hasChanges=!1,ld);pz=ws=wpe([Ng(0,Bc),Ng(1,Wt),Ng(2,ko)],pz);class ott extends gz{constructor(e,t,i,n,o,r){super(e,t,i,n,o,r)}getCodeEditorCommandPicks(){const e=this.activeTextEditorControl;if(!e)return[];const t=[];for(const i of e.getSupportedActions()){let n;i.metadata?.description&&(fFe(i.metadata.description)?n=i.metadata.description:n={original:i.metadata.description,value:i.metadata.description}),t.push({commandId:i.id,commandAlias:i.alias,commandDescription:n,label:aj(i.label)||i.id})}return t}}var rtt=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},CC=function(s,e){return function(t,i){e(t,i,s)}};let fk=class extends ott{get activeTextEditorControl(){return this.codeEditorService.getFocusedCodeEditor()??void 0}constructor(e,t,i,n,o,r){super({showAlias:!1},e,i,n,o,r),this.codeEditorService=t}async getCommandPicks(){return this.getCodeEditorCommandPicks()}hasAdditionalCommandPicks(){return!1}async getAdditionalCommandPicks(){return[]}};fk=rtt([CC(0,it),CC(1,gi),CC(2,yi),CC(3,en),CC(4,Fo),CC(5,Pk)],fk);const NA=class NA extends ze{constructor(){super({id:NA.ID,label:VT.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:W.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(e){e.get(Gl).quickAccess.show(fk.PREFIX)}};NA.ID="editor.action.quickCommand";let GM=NA;ye(GM);Tn.as(rv.Quickaccess).registerQuickAccessProvider({ctor:fk,prefix:fk.PREFIX,helpEntries:[{description:VT.quickCommandHelp,commandId:GM.ID}]});var att=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},wC=function(s,e){return function(t,i){e(t,i,s)}};let mz=class extends Kb{constructor(e,t,i,n,o,r,a){super(!0,e,t,i,n,o,r,a)}};mz=att([wC(1,gt),wC(2,gi),wC(3,rs),wC(4,it),wC(5,Bc),wC(6,Wt)],mz);ai(Kb.ID,mz,4);class ltt extends ze{constructor(){super({id:"editor.action.toggleHighContrast",label:b8.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0}),this._originalThemeName=null}run(e,t){const i=e.get(hl),n=i.getColorTheme();md(n.type)?(i.setTheme(this._originalThemeName||(u1(n.type)?Aw:Bh)),this._originalThemeName=null):(i.setTheme(u1(n.type)?v_:C_),this._originalThemeName=n.themeName)}}ye(ltt);function ctt(s){return new Worker("/assets/editor.worker-B4pQIWZD.js",{name:s?.name})}const Tse=globalThis;Tse.MonacoEnvironment||(Tse.MonacoEnvironment={getWorker(){return new ctt}});function dtt({value:s,readOnly:e,language:t,onChange:i}){const n=B.useRef(null),o=B.useRef(null),r=B.useRef(null),a=B.useRef(i);return B.useEffect(()=>{a.current=i},[i]),B.useEffect(()=>{if(!n.current)return;const l=TW.create(n.current,{value:"",language:"plaintext",theme:"vs-dark",automaticLayout:!0,minimap:{enabled:!1},fontSize:13,readOnly:!1,scrollBeyondLastLine:!1});return o.current=l,r.current=l.onDidChangeModelContent(()=>{a.current(l.getValue())}),()=>{r.current?.dispose(),o.current?.dispose(),r.current=null,o.current=null}},[]),B.useEffect(()=>{const l=o.current;l&&l.getValue()!==s&&l.setValue(s)},[s]),B.useEffect(()=>{const l=o.current;l&&l.updateOptions({readOnly:e})},[e]),B.useEffect(()=>{const l=o.current;if(!l)return;const c=l.getModel();c&&TW.setModelLanguage(c,t)},[t]),D.jsx("div",{ref:n,className:"workflow-monaco-editor"})}function cg(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function wB(s){const e=s.lastIndexOf("/");return e===-1?"":s.slice(0,e)}function _z(s){const e=s.lastIndexOf("/");return e===-1?s:s.slice(e+1)}function yC(s,e){return s===e||s.startsWith(`${e}/`)}function utt(s){const e=s.lastIndexOf(".");return e===-1?"":s.slice(e+1).toLowerCase()}function htt(s){if(_z(s).toLowerCase()===".env")return"shell";const t=utt(s);return t==="ts"||t==="tsx"?"typescript":t==="js"||t==="jsx"||t==="mjs"||t==="cjs"?"javascript":t==="json"?"json":t==="py"?"python":t==="md"?"markdown":t==="yml"||t==="yaml"?"yaml":t==="sh"||t==="bash"?"shell":t==="css"?"css":t==="html"?"html":t==="xml"?"xml":"plaintext"}function Rse(s){return new Date(s).toLocaleString()}function Mse(s,e){return s&&e?`${s} (${e})`:s||e||"Unknown"}function ype({entity:s="workflow"}){const{slug:e=""}=TA(),t=zr(),i=Xs(),n=s==="workflow"?"/api/workflows":"/api/skills",o=s==="workflow"?"workflow":"skill",r=s==="workflow"?"workflows":"skills",a=s==="workflow"?"Workflow Info":"Skill Info",l=s==="workflow"?"Workflow project explorer":"Skill project explorer",c=i.loading?null:i.token,[d,u]=B.useState(!0),[f,p]=B.useState(null),[m,b]=B.useState(e),[w,y]=B.useState(null),[S,x]=B.useState(null),[L,N]=B.useState({}),[I,T]=B.useState({"":!0}),[A,P]=B.useState({}),[F,H]=B.useState({}),[z,ne]=B.useState(null),[G,ie]=B.useState(null),[Z,Q]=B.useState(""),[oe,ue]=B.useState({}),[q,Y]=B.useState({}),me=B.useRef(null),j=S?.can_edit??!1,Te=G?.kind==="text"?G:null,Ue=!!(Te&&Te.content!==Te.savedContent),Xe=L[""]??[],ht=B.useMemo(()=>c?{Authorization:`Bearer ${c}`}:void 0,[c]),Lt=B.useCallback(async Ct=>{if(ht){P(pt=>({...pt,[Ct]:!0})),H(pt=>({...pt,[Ct]:""}));try{const pt=await Zt.get(`${n}/`+encodeURIComponent(e)+"/files/tree",{params:Ct?{path:Ct}:{},headers:ht});N(Ke=>({...Ke,[Ct]:pt.data.entries}))}catch(pt){const Ke=cg(pt,"Failed to load files");H(at=>({...at,[Ct]:Ke})),Ct===""&&p(Ke)}finally{P(pt=>({...pt,[Ct]:!1}))}}},[n,ht,e]);B.useEffect(()=>{if(!c)return;let Ct=!1;return u(!0),p(null),(async()=>{try{const[pt,Ke]=await Promise.all([Zt.get(`${n}/${encodeURIComponent(e)}/files/access`,{headers:ht}),Zt.get(`${n}/${encodeURIComponent(e)}`,{headers:ht})]);if(Ct)return;x(pt.data);const at=s==="workflow"?Ke.data.workflow:Ke.data.skill;y(at),b(at.name||at.slug),await Lt("")}catch(pt){if(Ct)return;p(cg(pt,`Failed to load ${o} editor`))}finally{Ct||u(!1)}})(),()=>{Ct=!0}},[n,ht,s,o,Lt,e,c]),B.useEffect(()=>{const Ct=pt=>{Ue&&(pt.preventDefault(),pt.returnValue="")};return window.addEventListener("beforeunload",Ct),()=>window.removeEventListener("beforeunload",Ct)},[Ue]);const Pe=()=>Ue?window.confirm("You have unsaved changes. Discard them?"):!0,St=()=>{Pe()&&t(`/?tab=${r}`)},Dt=S?.editor_status??"pending",Ut=async Ct=>{if(Ct.kind!=="directory")return;const pt=!I[Ct.path];T(Ke=>({...Ke,[Ct.path]:pt})),pt&&L[Ct.path]===void 0&&await Lt(Ct.path)},xi=async Ct=>{if(Ct.kind==="file"&&Pe()){ne(Ct.path),ie({path:Ct.path,name:Ct.name,kind:"loading"});try{const Ke=(await Zt.get(`${n}/${encodeURIComponent(e)}/files/content`,{params:{path:Ct.path},headers:ht})).data;if(Ke.kind==="binary"){ie({path:Ke.path,name:Ke.name,kind:"binary",message:Ke.message,etag:Ke.etag,modifiedAtMs:Ke.modified_at_ms,sizeBytes:Ke.size_bytes});return}ie({path:Ke.path,name:Ke.name,kind:"text",content:Ke.content,savedContent:Ke.content,etag:Ke.etag,isDotenv:Ke.name===".env",modifiedAtMs:Ke.modified_at_ms,sizeBytes:Ke.size_bytes})}catch(pt){ie(null),p(cg(pt,"Failed to open file"))}}},Oi=B.useCallback(async()=>{if(!(!Te||!ht||!j))try{const pt=(await Zt.put(`${n}/${encodeURIComponent(e)}/files/content`,{path:Te.path,content:Te.content,base_etag:Te.etag},{headers:ht})).data;ie(Ke=>!Ke||Ke.kind!=="text"||Ke.path!==Te.path?Ke:{...Ke,etag:pt.etag,modifiedAtMs:pt.modified_at_ms,sizeBytes:pt.size_bytes,savedContent:Ke.content}),vt.success(`Saved ${Te.name}`),await Lt(wB(Te.path))}catch(Ct){vt.error(cg(Ct,"Failed to save file"))}},[Te,n,ht,j,e,Lt]);B.useEffect(()=>{const Ct=pt=>{!(pt.metaKey||pt.ctrlKey)||pt.key.toLowerCase()!=="s"||!Te||!Ue||!j||(pt.preventDefault(),Oi())};return window.addEventListener("keydown",Ct),()=>window.removeEventListener("keydown",Ct)},[Te,Ue,j,Oi]);const Ni=async(Ct,pt)=>{if(!ht||!j)return;const Ke=window.prompt(pt==="file"?"New file name":"New folder name");if(Ke)try{await Zt.post(`${n}/${encodeURIComponent(e)}/files`,{parent_path:Ct,name:Ke,kind:pt},{headers:ht}),T(at=>({...at,[Ct]:!0})),await Lt(Ct)}catch(at){vt.error(cg(at,`Failed to create ${pt}`))}},Pn=async Ct=>{if(!ht||!j)return;const pt=window.prompt("Rename to",Ct.name);if(!(!pt||pt===Ct.name))try{const at=(await Zt.patch(`${n}/${encodeURIComponent(e)}/files/rename`,{path:Ct.path,new_name:pt},{headers:ht})).data,ce=at.old_path,We=at.new_path;N(st=>{const Rt={};for(const[Gt,Ii]of Object.entries(st)){const bn=yC(Gt,ce)?Gt.replace(ce,We):Gt;Rt[bn]=Ii.map(Fi=>Fi.path===ce||Fi.path.startsWith(`${ce}/`)?{...Fi,path:Fi.path.replace(ce,We),name:Fi.path===ce?_z(We):Fi.name}:Fi)}return Rt}),T(st=>{const Rt={};for(const[Gt,Ii]of Object.entries(st)){const bn=yC(Gt,ce)?Gt.replace(ce,We):Gt;Rt[bn]=Ii}return Rt}),ne(st=>st&&(st===ce||st.startsWith(`${ce}/`))?st.replace(ce,We):st),ie(st=>!st||st.path!==ce&&!st.path.startsWith(`${ce}/`)?st:{...st,path:st.path.replace(ce,We),name:st.path===ce?_z(We):st.name}),await Lt(wB(We))}catch(Ke){vt.error(cg(Ke,"Failed to rename"))}},Vi=async Ct=>{if(!(!ht||!j||!window.confirm(`Delete ${Ct.kind} "${Ct.name}"? This cannot be undone.`)))try{await Zt.delete(`${n}/${encodeURIComponent(e)}/files`,{params:{path:Ct.path},headers:ht});const Ke=wB(Ct.path);await Lt(Ke),z&&yC(z,Ct.path)&&ne(null),G&&yC(G.path,Ct.path)&&ie(null),N(at=>{const ce={};for(const[We,st]of Object.entries(at))yC(We,Ct.path)||(ce[We]=st.filter(Rt=>!yC(Rt.path,Ct.path)));return ce})}catch(Ke){vt.error(cg(Ke,"Failed to delete"))}},zi=Ct=>{j&&(Q(Ct),me.current?.click())},dn=async Ct=>{const pt=Ct.target.files?.[0];if(!pt||!ht||!j)return;const Ke=Z;ue(at=>({...at,[Ke]:!0})),Y(at=>({...at,[Ke]:{fileName:pt.name,percent:0}}));try{const at=new FormData;at.append("parent_path",Ke),at.append("name",pt.name),at.append("file",pt,pt.name),await Moe.post(`${n}/${encodeURIComponent(e)}/files/upload`,at,{headers:ht,onUploadProgress:ce=>{const We=ce.total??pt.size;if(!We)return;const st=Math.min(100,Math.round(ce.loaded/We*100));Y(Rt=>({...Rt,[Ke]:{fileName:pt.name,percent:st}}))}}),T(ce=>({...ce,[Ke]:!0})),await Lt(Ke),Y(ce=>({...ce,[Ke]:{fileName:pt.name,percent:100}})),vt.success(`Uploaded ${pt.name}`)}catch(at){vt.error(cg(at,"Failed to upload file"))}finally{ue(at=>({...at,[Ke]:!1})),Y(at=>{const ce={...at};return delete ce[Ke],ce}),Q(""),Ct.currentTarget.value=""}},Ui=(Ct,pt)=>Ct.map(Ke=>{const at=Ke.kind==="directory"&&!!I[Ke.path],ce=z===Ke.path,We=L[Ke.path]??[],st=A[Ke.path],Rt=F[Ke.path],Gt=oe[Ke.path],Ii=q[Ke.path];return D.jsxs("div",{className:"wf-tree-row-wrap",children:[D.jsxs("div",{className:`wf-tree-row ${ce?"selected":""}`,style:{paddingLeft:`${8+pt*16}px`},onClick:()=>{Ke.kind==="directory"?Ut(Ke):xi(Ke)},role:"button",tabIndex:0,onKeyDown:bn=>{bn.key!=="Enter"&&bn.key!==" "||(bn.preventDefault(),Ke.kind==="directory"?Ut(Ke):xi(Ke))},children:[D.jsx("span",{className:"wf-tree-chevron",children:Ke.kind==="directory"?at?"▾":"▸":""}),D.jsx("span",{className:`wf-tree-icon ${Ke.kind}`,children:Ke.kind==="directory"?D.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:D.jsx("path",{d:"M1.75 3C1.75 2.30964 2.30964 1.75 3 1.75H6.08579C6.351 1.75 6.60536 1.85536 6.79289 2.04289L8.25 3.5H13C13.6904 3.5 14.25 4.05964 14.25 4.75V13C14.25 13.6904 13.6904 14.25 13 14.25H3C2.30964 14.25 1.75 13.6904 1.75 13V3Z",fill:"currentColor",fillOpacity:"0.3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}):D.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[D.jsx("path",{d:"M3.75 2.75C3.75 2.19772 4.19772 1.75 4.75 1.75H9.08579C9.351 1.75 9.60536 1.85536 9.79289 2.04289L12.9571 5.20711C13.1446 5.39464 13.25 5.649 13.25 5.91421V13.25C13.25 13.8023 12.8023 14.25 12.25 14.25H4.75C4.19772 14.25 3.75 13.8023 3.75 13.25V2.75Z",fill:"currentColor",fillOpacity:"0.1",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),D.jsx("path",{d:"M9.25 2V5.25C9.25 5.66421 9.58579 6 10 6H13",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}),D.jsx("span",{className:"wf-tree-name",children:Ke.name}),!Ke.readable&&D.jsx("span",{className:"wf-tree-badge",children:"no-read"}),j&&D.jsxs("span",{className:"wf-tree-actions",onClick:bn=>bn.stopPropagation(),children:[Ke.kind==="directory"&&D.jsxs(D.Fragment,{children:[D.jsx("button",{type:"button",onClick:()=>{Ni(Ke.path,"file")},title:"New file",children:"+F"}),D.jsx("button",{type:"button",onClick:()=>{Ni(Ke.path,"directory")},title:"New folder",children:"+D"}),D.jsx("button",{type:"button",onClick:()=>zi(Ke.path),title:"Upload files",children:"Upload"})]}),D.jsx("button",{type:"button",onClick:()=>{Pn(Ke)},title:"Rename",children:"Rename"}),D.jsx("button",{type:"button",onClick:()=>{Vi(Ke)},title:"Delete",children:"Delete"})]})]}),Ke.kind==="directory"&&at&&D.jsxs("div",{children:[st&&D.jsx("div",{className:"wf-tree-note",style:{paddingLeft:`${24+pt*16}px`},children:"Loading..."}),Gt&&Ii&&D.jsxs("div",{className:"wf-tree-note",style:{paddingLeft:`${24+pt*16}px`},children:["Uploading ",Ii.fileName,"... ",Ii.percent,"%"]}),Rt&&D.jsx("div",{className:"wf-tree-note error",style:{paddingLeft:`${24+pt*16}px`},children:Rt}),!st&&!Rt&&We.length>0&&Ui(We,pt+1),!st&&!Rt&&We.length===0&&D.jsx("div",{className:"wf-tree-note",style:{paddingLeft:`${24+pt*16}px`},children:"Empty"})]})]},Ke.path)});if(i.loading)return null;const Eo=w?s==="workflow"?w.permission_mode==="everyone"?"Everyone can run":w.is_locked_due_to_missing_users?"Restricted (locked: no allowed users remain)":"Restricted":w.permission_mode==="everyone"?"Everyone can access":w.is_locked_due_to_missing_users?"Restricted (locked: no allowed users remain)":"Restricted":null;return D.jsxs("div",{className:"workflow-editor-page",children:[D.jsxs("header",{className:"workflow-editor-header",children:[D.jsxs("div",{className:"workflow-editor-header-left",children:[D.jsx("button",{type:"button",className:"secondary",onClick:St,children:"Back"}),D.jsxs("div",{children:[D.jsx("h1",{children:m}),S&&D.jsxs("p",{className:"workflow-editor-subtitle",children:[e," · ",Dt," · ",j?"Editable":"Read only"]})]})]}),D.jsxs("div",{className:"workflow-editor-header-right",children:[Te&&D.jsx("span",{className:`wf-save-status ${Ue?"dirty":"saved"}`,children:Ue?"Unsaved changes":"Saved"}),D.jsx("button",{type:"button",onClick:()=>{Oi()},disabled:!Te||!Ue||!j,children:"Save"})]})]}),d?D.jsxs("div",{className:"workflow-editor-loading",children:["Loading ",o," editor..."]}):f?D.jsx("div",{className:"workflow-editor-error",children:f}):D.jsxs("div",{className:"workflow-editor-layout",children:[D.jsxs("aside",{className:"workflow-editor-sidebar",children:[w&&D.jsxs("div",{className:"wf-workflow-meta-card",children:[D.jsx("div",{className:"wf-workflow-meta-title",children:a}),D.jsxs("div",{className:"wf-workflow-meta-grid",children:[D.jsx("div",{className:"wf-workflow-meta-label",children:"Status"}),D.jsx("div",{className:"wf-workflow-meta-value",children:Dt==="approved"?"Approved":"Pending approval"}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Permissions"}),D.jsx("div",{className:"wf-workflow-meta-value",children:Eo}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Creator"}),D.jsx("div",{className:"wf-workflow-meta-value",children:Mse(w.created_by_user_name,w.created_by_user_email)}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Approver"}),D.jsx("div",{className:"wf-workflow-meta-value",children:w.approved_by_user_id?Mse(w.approved_by_user_name,w.approved_by_user_email):"Not approved yet"}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Required Secrets"}),D.jsx("div",{className:"wf-workflow-meta-value",children:w.required_secrets&&w.required_secrets.length>0?w.required_secrets.join(", "):"None"}),D.jsx("div",{className:"wf-workflow-meta-label",children:"Missing Secrets"}),D.jsx("div",{className:"wf-workflow-meta-value",children:w.missing_required_secrets&&w.missing_required_secrets.length>0?`${w.missing_required_secrets.join(", ")} (add them in Profile Secrets)`:"None"})]})]}),D.jsxs("div",{className:"wf-sidebar-header",children:[D.jsxs("div",{children:[D.jsx("div",{className:"wf-sidebar-title",children:"Files"}),D.jsx("div",{className:"wf-sidebar-caption",children:l})]}),j&&D.jsxs("div",{className:"wf-sidebar-actions",children:[D.jsx("button",{type:"button",onClick:()=>{Ni("","file")},children:"New File"}),D.jsx("button",{type:"button",onClick:()=>{Ni("","directory")},children:"New Folder"}),D.jsx("button",{type:"button",onClick:()=>zi(""),children:"Upload"})]})]}),D.jsxs("div",{className:"wf-tree-scroll",children:[A[""]&&Xe.length===0&&D.jsx("div",{className:"wf-tree-note",children:"Loading..."}),oe[""]&&q[""]&&D.jsxs("div",{className:"wf-tree-note",children:["Uploading ",q[""].fileName,"... ",q[""].percent,"%"]}),F[""]&&D.jsx("div",{className:"wf-tree-note error",children:F[""]}),!A[""]&&!F[""]&&Xe.length===0&&D.jsx("div",{className:"wf-tree-note",children:"No files found."}),Ui(Xe,0)]}),j&&D.jsx("input",{ref:me,className:"wf-hidden-upload-input",type:"file",onChange:Ct=>{dn(Ct)}})]}),D.jsxs("section",{className:"workflow-editor-main",children:[!G&&D.jsxs("div",{className:"wf-editor-empty",children:[D.jsx("h2",{children:"Select a file"}),D.jsxs("p",{children:["Choose a file from the ",o," explorer to view or edit it."]})]}),G?.kind==="loading"&&D.jsx("div",{className:"wf-editor-empty",children:D.jsx("h2",{children:"Loading file..."})}),G?.kind==="binary"&&D.jsxs("div",{className:"wf-editor-panel",children:[D.jsx("div",{className:"wf-editor-toolbar",children:D.jsxs("div",{className:"wf-editor-filemeta",children:[D.jsx("strong",{children:G.name}),D.jsx("span",{children:G.path})]})}),D.jsxs("div",{className:"wf-editor-empty",children:[D.jsx("h2",{children:"Binary file"}),D.jsx("p",{children:G.message}),D.jsxs("p",{className:"wf-editor-meta-line",children:["Size: ",G.sizeBytes," bytes · Modified: ",Rse(G.modifiedAtMs)]})]})]}),Te&&D.jsxs("div",{className:"wf-editor-panel",children:[D.jsxs("div",{className:"wf-editor-toolbar",children:[D.jsxs("div",{className:"wf-editor-filemeta",children:[D.jsx("strong",{children:Te.name}),D.jsx("span",{children:Te.path})]}),D.jsxs("div",{className:"wf-editor-meta-right",children:[D.jsxs("span",{children:[Te.sizeBytes," bytes"]}),D.jsx("span",{children:Rse(Te.modifiedAtMs)}),Te.isDotenv&&D.jsx("span",{className:"wf-dotenv-pill",children:".env redacted"})]})]}),Te.isDotenv&&D.jsx("div",{className:"wf-dotenv-warning",children:"Redacted values are shown for `.env`. Saving preserves unchanged masked values and applies any edits you make."}),D.jsx("div",{className:"wf-editor-surface",children:D.jsx(dtt,{value:Te.content,language:htt(Te.path),readOnly:!j,onChange:Ct=>{ie(pt=>!pt||pt.kind!=="text"||pt.path!==Te.path?pt:{...pt,content:Ct})}})})]})]})]})]})}function ftt(){return Oc("Workflow Editor"),D.jsx(ype,{entity:"workflow"})}function gtt(){return Oc("Skill Editor"),D.jsx(ype,{entity:"skill"})}function yB(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Spe({entity:s="workflow"}){const{slug:e=""}=TA(),t=Xs(),i=t.loading?null:t.token,n=s==="workflow"?"/api/workflows":"/api/skills",o=s==="workflow"?"Workflow":"Skill",r=s==="workflow"?"workflow":"skill",[a,l]=B.useState(!0),[c,d]=B.useState(!1),[u,f]=B.useState(!1),[p,m]=B.useState(null),[b,w]=B.useState(null),[y,S]=B.useState(!1),[x,L]=B.useState({}),N=B.useCallback(async()=>{if(i){l(!0),m(null);try{const H=await Zt.get(`${n}/${encodeURIComponent(e)}/approval-diff`,{headers:{Authorization:`Bearer ${i}`}}),z=typeof H.data=="string"?JSON.parse(H.data):H.data;w(z),L({})}catch(H){m(yB(H,"Failed to load approval diff"))}finally{l(!1)}}},[n,e,i]);B.useEffect(()=>{N()},[N]);const I=async()=>{if(i){d(!0);try{await Zt.post(`${n}/${encodeURIComponent(e)}/approve`,{},{headers:{Authorization:`Bearer ${i}`}}),S(!0),vt.success(`${o} approved successfully`),await N()}catch(H){vt.error(yB(H,`Failed to approve ${r}`))}finally{d(!1)}}},T=async()=>{if(!(!i||!b||!b.has_previous_snapshot)){f(!0);try{await Zt.post(`${n}/${encodeURIComponent(e)}/reject-restore`,{},{headers:{Authorization:`Bearer ${i}`}}),S(!1),vt.success(`${o} files restored to last approved snapshot`),await N()}catch(H){vt.error(yB(H,"Failed to restore files from approved snapshot"))}finally{f(!1)}}},A=H=>{L(z=>({...z,[H]:!z[H]}))},P=b!==null&&b.files.length>0,F=b?zre(b.files):null;return D.jsxs("div",{className:"approval-review-page",children:[D.jsxs("header",{className:"approval-review-header",children:[D.jsxs("div",{children:[D.jsx("p",{className:"approval-review-eyebrow",children:"Approval Review"}),D.jsx("h1",{className:"approval-review-title",children:e}),D.jsxs("p",{className:"approval-review-subtitle",children:["Review ",r," changes against the last approved snapshot before approving."]})]}),D.jsxs("div",{className:"approval-review-actions",children:[D.jsx("button",{type:"button",className:"approval-review-btn secondary",onClick:()=>{N()},disabled:a||c||u,children:a?"Refreshing...":"Refresh Diff"}),P&&b?.has_previous_snapshot&&D.jsx("button",{type:"button",className:"approval-review-btn danger",onClick:()=>{T()},disabled:a||c||u,children:u?"Restoring...":"Reject & Restore"}),P&&D.jsx("button",{type:"button",className:"approval-review-btn primary",onClick:()=>{I()},disabled:a||c||u||b===null,children:c?"Approving...":`Approve ${o}`})]})]}),y&&D.jsxs("div",{className:"approval-review-banner success",children:[o," approved. You can close this tab."]}),a&&D.jsx("div",{className:"approval-review-state",children:"Loading diff..."}),p&&D.jsx("div",{className:"approval-review-state error",children:p}),!a&&!p&&b&&D.jsxs(D.Fragment,{children:[D.jsxs("section",{className:"approval-review-summary-card",children:[D.jsxs("div",{className:"approval-review-summary-pills",children:[D.jsxs("span",{className:"approval-review-pill added",children:["+",F?.added??0," added"]}),D.jsxs("span",{className:"approval-review-pill modified",children:["~",F?.modified??0," modified"]}),D.jsxs("span",{className:"approval-review-pill deleted",children:["-",F?.deleted??0," deleted"]})]}),D.jsx("p",{className:"approval-review-note",children:b.has_previous_snapshot?"Comparing current code to the previously approved snapshot.":"No previous approved snapshot. All included files are shown as new."})]}),D.jsx("section",{className:"approval-review-files",children:b.files.length===0?D.jsx("div",{className:"approval-review-empty",children:"No differences from the approved snapshot."}):b.files.map(H=>(()=>{const z=`${H.status}:${H.path}`,ne=x[z]===!0;return D.jsxs("article",{className:"approval-review-file",children:[D.jsxs("button",{type:"button",className:"approval-review-file-header approval-review-file-toggle",onClick:()=>A(z),"aria-expanded":!ne,"aria-controls":`approval-diff-file-${encodeURIComponent(z)}`,children:[D.jsxs("div",{className:"approval-review-file-header-main",children:[D.jsx("span",{className:"approval-review-file-chevron",children:ne?"▸":"▾"}),D.jsx("div",{className:"approval-review-file-path",children:H.path})]}),D.jsxs("div",{className:"approval-review-file-badges",children:[D.jsx("span",{className:"approval-review-file-badge collapse-label",children:ne?"collapsed":"expanded"}),D.jsx("span",{className:`approval-review-file-badge ${H.status}`,children:H.status}),D.jsx("span",{className:"approval-review-file-badge kind",children:H.kind})]})]}),!ne&&D.jsxs("div",{id:`approval-diff-file-${encodeURIComponent(z)}`,children:[H.message&&D.jsxs("div",{className:"approval-review-file-message",children:[H.message,(H.old_size_bytes!==null||H.new_size_bytes!==null)&&D.jsxs("span",{children:[" (",H.old_size_bytes??0,"B → ",H.new_size_bytes??0,"B)"]})]}),H.patch_lines&&D.jsx("div",{className:"approval-review-patch-scroll",children:D.jsxs("div",{className:"approval-review-patch",children:[H.patch_lines.map((G,ie)=>{const Z=G.startsWith("+")?"added":G.startsWith("-")?"removed":G.startsWith("@@")?"hunk":"context";return D.jsx("div",{className:`approval-review-line ${Z}`,children:G},`${H.path}-${ie}`)}),H.is_truncated&&D.jsx("div",{className:"approval-review-line truncated",children:"... diff truncated ..."})]})})]})]},z)})())})]})]})}function ptt(){return Oc("Workflow Approval"),D.jsx(Spe,{entity:"workflow"})}function mtt(){return Oc("Skill Approval"),D.jsx(Spe,{entity:"skill"})}function Ase(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Ose(s){return s?new Date(s).toLocaleString():"Not completed"}function _tt(s,e){if(!e)return"Running...";const t=e-s;return t<1e3?`${t}ms`:t<6e4?`${(t/1e3).toFixed(1)}s`:`${(t/6e4).toFixed(1)}m`}function btt(s){if(!s)return"No input provided";try{const e=JSON.parse(s);return JSON.stringify(e,null,2)}catch{return s}}function vtt(){const{id:s=""}=TA(),e=zr(),t=Xs(),i=t.loading?null:t.token,[n,o]=B.useState(!0),[r,a]=B.useState(null),[l,c]=B.useState(null),[d,u]=B.useState("No logs captured."),[f,p]=B.useState(!1),m=B.useRef(null);Oc("Run Details");const b=B.useMemo(()=>i?{Authorization:`Bearer ${i}`}:void 0,[i]);if(B.useEffect(()=>{m.current=l?.status??null},[l]),B.useEffect(()=>{if(!b)return;let y=!1;const S=async L=>{L&&o(!0);try{const[N,I]=await Promise.all([Zt.get(`/api/workflows/runs/${encodeURIComponent(s)}`,{headers:b}),Zt.get(`/api/workflows/runs/logs?run_id=${encodeURIComponent(s)}`,{headers:b})]);if(!y){const T=N.data.run;c(T),I.data?.found&&typeof I.data.logs=="string"?u(I.data.logs):u(T.output||"No logs captured."),a(null)}}catch(N){y||a(Ase(N,"Failed to load run details"))}finally{!y&&L&&o(!1)}};S(!0);const x=window.setInterval(()=>{y||m.current&&m.current!=="running"||S(!1)},1e3);return()=>{y=!0,window.clearInterval(x)}},[b,s]),t.loading)return null;const w=async()=>{if(!(!b||!l||l.status!=="running")){p(!0);try{await Zt.post(`/api/workflows/runs/${encodeURIComponent(s)}/stop`,{},{headers:b}),vt.info("Stop requested")}catch(y){vt.error(Ase(y,"Failed to stop workflow run"))}finally{p(!1)}}};return D.jsxs("div",{className:"run-details-page",children:[D.jsxs("header",{className:"run-details-header",children:[D.jsx("button",{className:"run-details-back-btn",onClick:()=>e("/?tab=history"),children:"Back to Run History"}),D.jsx("h1",{children:"Run Details"})]}),n&&null,r&&D.jsx("div",{className:"run-details-state error",children:r}),!n&&!r&&l&&D.jsxs("div",{className:"run-details-content",children:[D.jsxs("section",{className:"run-details-card",children:[D.jsxs("div",{className:"run-details-title-row",children:[D.jsx("h2",{children:l.workflow_slug}),D.jsxs("div",{className:"run-details-title-actions",children:[l.status==="running"&&D.jsx("button",{type:"button",className:"run-details-stop-btn",onClick:()=>{w()},disabled:f,children:f?"Stopping...":"Stop"}),D.jsx("span",{className:`run-details-status status-${l.status}`,children:l.status})]})]}),D.jsxs("div",{className:"run-details-grid",children:[D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Ran by"}),D.jsxs("p",{children:[l.user.name," (",l.user.email,")"]})]}),D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Started"}),D.jsx("p",{children:Ose(l.started_at)})]}),D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Completed"}),D.jsx("p",{children:Ose(l.completed_at)})]}),D.jsxs("div",{children:[D.jsx("p",{className:"run-details-label",children:"Duration"}),D.jsx("p",{children:_tt(l.started_at,l.completed_at)})]})]})]}),D.jsxs("section",{className:"run-details-card",children:[D.jsx("h3",{children:"Input"}),D.jsx("pre",{children:btt(l.args)})]}),D.jsxs("section",{className:"run-details-card",children:[D.jsx("h3",{children:"Logs"}),D.jsx("pre",{children:d||"No logs captured."})]})]})]})}function Pse(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Ctt(s){const e={};for(const[t,i]of Object.entries(s))i.type==="boolean"?e[t]=i.default===!0:i.default!==void 0?e[t]=String(i.default):e[t]="";return e}function wtt(){const{slug:s=""}=TA(),e=zr(),t=Xs(),i=t.loading?null:t.token,[n,o]=B.useState(!0),[r,a]=B.useState(!1),[l,c]=B.useState(null),[d,u]=B.useState(null),[f,p]=B.useState({});Oc("Manual Run");const m=B.useMemo(()=>i?{Authorization:`Bearer ${i}`}:void 0,[i]);B.useEffect(()=>{if(!m)return;let y=!1;return(async()=>{o(!0),c(null);try{const L=(await Zt.get(`/api/workflows/${encodeURIComponent(s)}`,{headers:m})).data.workflow;y||(u(L),p(Ctt(L.manifest.inputs||{})))}catch(x){y||c(Pse(x,"Failed to load workflow details"))}finally{y||o(!1)}})(),()=>{y=!0}},[m,s]);const b=(y,S)=>{p(x=>({...x,[y]:S}))},w=async()=>{if(!m||!d)return;const y=d.manifest.inputs||{},S={};for(const[x,L]of Object.entries(y)){const N=f[x];if(L.type==="boolean"){S[x]=!!N;continue}const T=(typeof N=="string"?N:String(N)).trim();if(T.length===0){if(L.required!==!1&&L.default===void 0){vt.error(`Missing required input: ${x}`);return}continue}if(L.type==="number"){const A=Number(T);if(!Number.isFinite(A)){vt.error(`Invalid number for input: ${x}`);return}S[x]=A;continue}S[x]=T}a(!0);try{const x=await Zt.post(`/api/workflows/${encodeURIComponent(s)}/manual-run`,{inputs:S},{headers:m}),L=String(x.data.run_id);e(`/runs/${encodeURIComponent(L)}`)}catch(x){vt.error(Pse(x,"Failed to start manual workflow run"))}finally{a(!1)}};return t.loading?null:D.jsxs("div",{className:"manual-run-page",children:[D.jsxs("header",{className:"manual-run-header",children:[D.jsx("button",{className:"manual-run-back-btn",onClick:()=>e("/?tab=workflows"),children:"Back to Workflows"}),D.jsx("h1",{children:"Manual Run"})]}),n&&D.jsx("div",{className:"manual-run-state",children:"Loading workflow inputs..."}),l&&D.jsx("div",{className:"manual-run-state error",children:l}),!n&&!l&&d&&D.jsxs("div",{className:"manual-run-content",children:[D.jsxs("section",{className:"manual-run-card",children:[D.jsx("h2",{children:d.name||d.slug}),D.jsx("p",{children:"Provide input values and run the workflow manually."}),d.required_secrets.length>0&&D.jsxs("p",{className:"manual-run-card-meta",children:["Required secrets: ",d.required_secrets.join(", ")]}),d.missing_required_secrets.length>0&&D.jsxs("p",{className:"manual-run-card-error",children:["Missing secrets: ",d.missing_required_secrets.join(", "),". Add them in Profile Secrets before running this workflow."]})]}),D.jsxs("section",{className:"manual-run-card",children:[D.jsx("h3",{children:"Inputs"}),D.jsx("div",{className:"manual-run-form-grid",children:Object.entries(d.manifest.inputs||{}).map(([y,S])=>D.jsxs("label",{className:"manual-run-field",children:[D.jsxs("span",{className:"manual-run-field-label",children:[y,S.required!==!1&&D.jsx("span",{className:"manual-run-required",children:"*"})]}),S.description&&D.jsx("span",{className:"manual-run-field-desc",children:S.description}),S.type==="boolean"?D.jsxs("div",{className:"manual-run-boolean-group",role:"group","aria-label":`${y} boolean input`,children:[D.jsx("button",{type:"button",className:`manual-run-boolean-btn ${f[y]===!0?"active":""}`,onClick:()=>b(y,!0),children:"Yes"}),D.jsx("button",{type:"button",className:`manual-run-boolean-btn ${f[y]!==!0?"active":""}`,onClick:()=>b(y,!1),children:"No"})]}):D.jsx("input",{type:S.type==="number"?"number":"text",value:String(f[y]??""),onChange:x=>b(y,x.target.value),placeholder:S.default!==void 0?String(S.default):""})]},y))}),D.jsx("div",{className:"manual-run-actions",children:D.jsx("button",{type:"button",className:"manual-run-submit-btn",onClick:()=>{w()},disabled:r||d.missing_required_secrets.length>0,children:r?"Starting...":"Run Workflow"})})]})]})]})}function ytt(s){const e=s.match(/enter code:\s*(.+)$/i);return!e||!e[1]?"":e[1].trim()}function Fse(s,e){return e==="anthropic"&&s.type==="oauth"?!1:s.type!=="oauth"?!0:!s.label.toLowerCase().includes("browser")}function Stt(s){const e=s.split("/").slice(1).join("/");return[{key:"AZURE_API_KEY",value:"abc123xyz",help:"API key for the Azure OpenAI resource."},{key:"AZURE_OPENAI_ENDPOINT",value:"https://my-resource.openai.azure.com/",help:"Base endpoint for the Azure OpenAI resource."},{key:"OPENCODE_MODEL",value:`azure-openai/${e}`,help:"Provider id plus the Azure deployment name."}]}function xtt(){const s=Xs(),e=s.loading?null:s.token,t=zr();Oc("OpenCode Auth Setup");const[i,n]=B.useState(null),[o,r]=B.useState(null),[a,l]=B.useState(""),[c,d]=B.useState(null),[u,f]=B.useState(""),[p,m]=B.useState(""),[b,w]=B.useState(!0),y=B.useRef(null),S=B.useMemo(()=>i?i.methods.filter(Q=>Fse(Q,i.provider_id)):[],[i]),x=B.useMemo(()=>e?{Authorization:`Bearer ${e}`}:void 0,[e]);function L(Q,oe){const ue=Q instanceof An?Q.response?.data?.message||Q.response?.data||Q.message:oe;return typeof ue=="string"?ue:oe}const N=B.useMemo(()=>o===null?null:S.find(Q=>Q.index===o)||null,[S,o]),I=c?.method==="code",T=c?.method==="auto",A=c?ytt(c.instructions):"",P=!I&&i?.provider_id==="azure-openai",F=i?Stt(i.model):[];function H(){y.current&&(y.current.abort(),y.current=null),d(null),f("")}const z=B.useCallback(async()=>{if(e){w(!0);try{const Q=await Zt.get("/api/opencode-auth/status",{headers:x}),oe=Q.data.methods.filter(ue=>Fse(ue,Q.data.provider_id));n({...Q.data,methods:oe}),m(""),r(ue=>ue!==null&&oe.some(q=>q.index===ue)?ue:oe[0]?.index??null)}catch(Q){m(L(Q,"Failed to load opencode auth status"))}finally{w(!1)}}},[x,e]);B.useEffect(()=>{z()},[z]),B.useEffect(()=>()=>{y.current&&(y.current.abort(),y.current=null)},[]);const ne=async()=>{if(!(!e||o===null)){if(!a){vt.error("API key is required");return}try{await Zt.post("/api/opencode-auth/api",{key:a},{headers:x}),l(""),vt.success("API key saved"),t("/opencode-auth/complete",{replace:!0})}catch(Q){vt.error(L(Q,"Failed to save API key"))}}},G=async()=>{if(!(!e||o===null))try{const Q=await Zt.post("/api/opencode-auth/oauth/authorize",{method:o},{headers:x});if(d(Q.data),window.open(Q.data.url,"_blank","noopener,noreferrer"),Q.data.method==="auto"){const oe=new AbortController;y.current=oe;try{await Zt.post("/api/opencode-auth/oauth/callback",{method:o},{headers:x,timeout:12e4,signal:oe.signal}),H(),vt.success("OAuth connected"),t("/opencode-auth/complete",{replace:!0})}catch(ue){if(ue instanceof An&&ue.code==="ERR_CANCELED")return;vt.error(L(ue,"Failed to complete OAuth flow"))}finally{y.current===oe&&(y.current=null)}}}catch(Q){vt.error(L(Q,"Failed to start OAuth flow"))}},ie=async()=>{if(!(!e||o===null||!c)){if(c.method==="code"&&!u){vt.error("Authorization code is required");return}try{await Zt.post("/api/opencode-auth/oauth/callback",{method:o,code:c.method==="code"?u:void 0},{headers:x}),H(),vt.success("OAuth connected"),t("/opencode-auth/complete",{replace:!0})}catch(Q){vt.error(L(Q,"Failed to complete OAuth flow"))}}},Z=async Q=>{Q.key==="Enter"&&(Q.preventDefault(),await ie())};return b?D.jsx("div",{className:"opencode-auth-page",children:D.jsx("p",{className:"opencode-auth-loading",children:"Checking opencode credentials..."})}):p?D.jsx("div",{className:"opencode-auth-page",children:D.jsxs("section",{className:"opencode-auth-panel",children:[D.jsx("h1",{children:"Model Authentication Setup"}),D.jsx("p",{className:"opencode-auth-error",children:p})]})}):i?T?D.jsx("div",{className:"opencode-auth-page",children:D.jsxs("section",{className:"opencode-auth-panel opencode-auth-panel-minimal",children:[D.jsx("header",{className:"opencode-auth-header opencode-auth-header-minimal",children:D.jsxs("div",{children:[D.jsx("h1",{children:"Model Authentication Setup"}),D.jsx("p",{className:"opencode-auth-subtitle",children:"Enter this device code in the opened OAuth page."})]})}),D.jsxs("div",{className:"opencode-auth-oauth-state",children:[D.jsx("label",{htmlFor:"opencode-device-code",children:"Device Code"}),D.jsx("input",{id:"opencode-device-code",type:"text",value:A,readOnly:!0}),D.jsx("p",{className:"opencode-auth-waiting",children:"Waiting for OAuth completion..."}),D.jsx("button",{type:"button",className:"opencode-auth-secondary",onClick:H,children:"Go back"})]})]})}):D.jsx("div",{className:"opencode-auth-page",children:D.jsxs("section",{className:"opencode-auth-panel",children:[D.jsxs("header",{className:"opencode-auth-header",children:[D.jsxs("div",{children:[D.jsx("h1",{children:"Model Authentication Setup"}),D.jsx("p",{className:"opencode-auth-subtitle",children:P?D.jsxs(D.Fragment,{children:["This model is configured at the service level for ",D.jsx("strong",{children:i.model})]}):D.jsxs(D.Fragment,{children:["Configure credentials for ",D.jsx("strong",{children:i.model})]})}),D.jsxs("p",{className:"opencode-auth-meta",children:["Provider: ",D.jsx("code",{children:i.provider_id})]})]}),D.jsx("div",{className:`opencode-auth-badge ${i.has_credentials?"is-connected":"is-required"}`,children:i.has_credentials?"Connected":P?"Admin Managed":"Setup Required"})]}),I&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:"Enter Authorization Code"}),D.jsxs("div",{className:"opencode-auth-card",children:[D.jsx("label",{htmlFor:"opencode-oauth-code",children:"Authorization Code"}),D.jsx("input",{id:"opencode-oauth-code",type:"text",value:u,onChange:Q=>f(Q.target.value),onKeyDown:Z,placeholder:"Paste authorization code and press Enter"}),D.jsx("button",{type:"button",onClick:ie,children:"Submit code"}),D.jsx("button",{type:"button",className:"opencode-auth-secondary",onClick:H,children:"Go back"})]})]}),!I&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:P?"Service Configuration":"Choose auth method"}),S.length===0&&!P&&D.jsxs("p",{className:"opencode-auth-error",children:["No auth methods are available for provider ",D.jsx("code",{children:i.provider_id}),"."]}),P&&D.jsxs("div",{className:"opencode-auth-card opencode-auth-managed-card",children:[D.jsx("div",{className:"opencode-auth-card-header opencode-auth-managed-header",children:D.jsxs("div",{children:[D.jsx("h3",{children:"Managed By Administrator"}),D.jsx("p",{className:"opencode-auth-help",children:"This provider is read-only in TeamCopilot."})]})}),D.jsxs("div",{className:"opencode-auth-managed-layout",children:[D.jsx("p",{className:"opencode-auth-managed-intro",children:"Azure OpenAI is configured through service environment variables. To update this model, ask the service administrator to change the values below and restart TeamCopilot."}),D.jsxs("div",{className:"opencode-auth-managed-example-block",children:[D.jsxs("div",{className:"opencode-auth-managed-example-header",children:[D.jsx("h4",{children:"Required Values"}),D.jsxs("p",{children:["Use your Azure deployment name in ",D.jsx("code",{children:"OPENCODE_MODEL"})]})]}),D.jsx("div",{className:"opencode-auth-managed-example-list",children:F.map(Q=>D.jsxs("div",{className:"opencode-auth-managed-example-row",children:[D.jsx("div",{className:"opencode-auth-managed-example-copy",children:D.jsxs("code",{children:[Q.key,"=",Q.value]})}),D.jsx("p",{children:Q.help})]},Q.key))})]})]})]}),S.length>0&&D.jsx("div",{className:"opencode-auth-method-grid",children:S.map(Q=>D.jsxs("button",{type:"button",className:`opencode-auth-method ${o===Q.index?"is-selected":""}`,onClick:()=>{r(Q.index),d(null),f("")},children:[D.jsx("span",{className:"opencode-auth-method-label",children:Q.label}),D.jsx("span",{className:"opencode-auth-method-type",children:Q.type.toUpperCase()})]},Q.index))})]}),!I&&N?.type==="api"&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:"API key"}),D.jsx("p",{className:"opencode-auth-help",children:"Paste the API key for your selected provider and save it."}),D.jsxs("div",{className:"opencode-auth-card",children:[D.jsx("label",{htmlFor:"opencode-api-key",children:"Provider API Key"}),D.jsx("input",{id:"opencode-api-key",type:"password",value:a,onChange:Q=>l(Q.target.value),placeholder:"Paste API key"}),D.jsx("button",{type:"button",onClick:ne,children:"Save API Key"})]})]}),!I&&N?.type==="oauth"&&D.jsxs("section",{className:"opencode-auth-section",children:[D.jsx("h2",{children:"OAuth"}),!T&&D.jsx("p",{className:"opencode-auth-help",children:"Use OAuth login for subscription-backed access (for example Pro/Max plans)."}),D.jsx("div",{className:"opencode-auth-card",children:!T&&D.jsx("button",{type:"button",onClick:G,children:"Start OAuth"})})]})]})}):null}function Ltt(){const s=zr();return Oc("OpenCode Auth Complete"),D.jsx("div",{className:"opencode-auth-complete-page",children:D.jsxs("section",{className:"opencode-auth-complete-card",children:[D.jsx("h1",{children:"Authentication Complete"}),D.jsx("p",{children:"Your model credentials are configured successfully."}),D.jsx("button",{type:"button",onClick:()=>s("/"),children:"Continue to dashboard"})]})})}function Bse(s,e){const t=s instanceof An?s.response?.data?.message||s.response?.data||s.message:e;return typeof t=="string"?t:e}function ktt(){const s=Xs(),e=s.loading?null:s.token,t=zr(),i=!s.loading&&s.user?.role==="Engineer",[n,o]=B.useState(""),[r,a]=B.useState(!0),[l,c]=B.useState(!1),[d,u]=B.useState("");Oc("Global AI Instructions");const f=B.useCallback(async()=>{if(!e||!i){a(!1);return}a(!0),u("");try{const m=await Zt.get("/api/chat/user-instructions",{headers:{Authorization:`Bearer ${e}`}});o(typeof m.data?.content=="string"?m.data.content:"")}catch(m){u(Bse(m,"Failed to load global AI instructions"))}finally{a(!1)}},[i,e]);B.useEffect(()=>{f()},[f]);const p=async()=>{if(!(!e||!i)){c(!0);try{await Zt.put("/api/chat/user-instructions",{content:n},{headers:{Authorization:`Bearer ${e}`}}),u(""),vt.success("Global AI instructions saved")}catch(m){vt.error(Bse(m,"Failed to save global AI instructions"))}finally{c(!1)}}};return B.useEffect(()=>{const m=b=>{(b.metaKey||b.ctrlKey)&&b.key.toLowerCase()==="s"&&(b.preventDefault(),!r&&!l&&p())};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[p,r,l]),s.loading?null:i?D.jsx("div",{className:"user-instructions-page",children:D.jsxs("div",{className:"user-instructions-card",children:[D.jsxs("div",{className:"user-instructions-header",children:[D.jsxs("div",{children:[D.jsx("h1",{children:"Global AI instructions"}),D.jsxs("p",{children:["These are saved to ",D.jsx("code",{children:"USER_INSTRUCTIONS.md"})," at the workspace root and apply immediately."]})]}),D.jsxs("div",{className:"user-instructions-actions",children:[D.jsx("button",{type:"button",className:"secondary",onClick:()=>t("/?tab=ai"),children:"Back to AI chat"}),D.jsx("button",{type:"button",onClick:()=>{p()},disabled:r||l,children:"Save"})]})]}),d?D.jsx("div",{className:"user-instructions-error",children:d}):null,D.jsx("textarea",{className:"user-instructions-editor",value:n,onChange:m=>o(m.target.value),placeholder:r?"Loading...":"Add custom instructions for the AI agent here. You can tell it about your organisation, target audience, team members, anything on how it should behave, or what it should restrict.",disabled:r||l,spellCheck:!1})]})}):D.jsx("div",{className:"user-instructions-page",children:D.jsxs("div",{className:"user-instructions-card",children:[D.jsx("h1",{children:"Global AI instructions"}),D.jsx("p",{children:"Only engineers can modify global AI instructions."}),D.jsx("div",{className:"user-instructions-actions",children:D.jsx("button",{type:"button",className:"secondary",onClick:()=>t("/?tab=ai"),children:"Back to AI chat"})})]})})}function SB(s,e){return s instanceof An?String(s.response?.data?.message||s.response?.data||s.message):e}function Wse(s){return[...s].sort((e,t)=>e.key.localeCompare(t.key))}function Dtt(){const s=Xs(),e=zr(),t=s.loading?null:s.token,i=!s.loading&&s.user?.role==="Engineer",n=B.useMemo(()=>t?{Authorization:`Bearer ${t}`}:void 0,[t]),[o,r]=B.useState(!0),[a,l]=B.useState(null),[c,d]=B.useState([]),[u,f]=B.useState([]),[p,m]=B.useState(""),[b,w]=B.useState(""),[y,S]=B.useState(""),[x,L]=B.useState(""),[N,I]=B.useState(null),[T,A]=B.useState(null);Oc("Profile Secrets");const P=B.useCallback(async()=>{if(n){r(!0),l(null);try{const z=Zt.get("/api/users/me/secrets",{headers:n}),ne=Zt.get("/api/secrets/global",{headers:n}),[G,ie]=await Promise.all([z,ne]);d(Wse(G.data.secrets||[])),f(Wse(ie.data.secrets||[]))}catch(z){l(SB(z,"Failed to load secrets"))}finally{r(!1)}}},[n,i]);B.useEffect(()=>{P()},[P]);const F=async z=>{if(!n)return;const ne=z==="user"?p:y,G=z==="user"?b:x,ie=ne.trim().toUpperCase();if(!ie||!G){vt.error("Both key and value are required");return}I(z);try{await Zt.put(z==="user"?`/api/users/me/secrets/${encodeURIComponent(ie)}`:`/api/secrets/global/${encodeURIComponent(ie)}`,{value:G},{headers:n}),vt.success(z==="user"?"Personal secret saved":"Global secret saved"),z==="user"?(m(""),w("")):(S(""),L("")),await P()}catch(Z){vt.error(SB(Z,"Failed to save secret"))}finally{I(null)}},H=async(z,ne)=>{if(n){A(`${z}:${ne}`);try{await Zt.delete(z==="user"?`/api/users/me/secrets/${encodeURIComponent(ne)}`:`/api/secrets/global/${encodeURIComponent(ne)}`,{headers:n}),vt.success(z==="user"?"Personal secret deleted":"Global secret deleted"),await P()}catch(G){vt.error(SB(G,"Failed to delete secret"))}finally{A(null)}}};return s.loading?null:D.jsx("div",{className:"profile-secrets-page",children:D.jsxs("div",{className:"profile-secrets-card",children:[D.jsxs("div",{className:"profile-secrets-header",children:[D.jsxs("div",{children:[D.jsx("h1",{children:"Profile Secrets"}),D.jsx("p",{children:"Workflows and skills can require secret keys. Your personal secrets override engineer-managed global secrets with the same key."})]}),D.jsx("div",{className:"profile-secrets-actions",children:D.jsx("button",{type:"button",className:"secondary",onClick:()=>e("/"),children:"Back Home"})})]}),o&&D.jsx("div",{className:"profile-secrets-state",children:"Loading secrets..."}),a&&D.jsx("div",{className:"profile-secrets-error",children:a}),!o&&!a&&D.jsxs(D.Fragment,{children:[D.jsxs("section",{className:"profile-secrets-section",children:[D.jsx("div",{className:"profile-secrets-section-header",children:D.jsxs("div",{children:[D.jsx("h2",{children:"My Secrets"}),D.jsx("p",{children:"Visible only to you in masked form. Re-saving the same key replaces its value."})]})}),D.jsxs("div",{className:"profile-secrets-form",children:[D.jsx("input",{type:"text",name:"user-secret-key",autoComplete:"off",placeholder:"OPENAI_API_KEY",value:p,onChange:z=>m(z.target.value.toUpperCase())}),D.jsx("input",{type:"password",name:"user-secret-value",autoComplete:"new-password",placeholder:"Secret value",value:b,onChange:z=>w(z.target.value)}),D.jsx("button",{type:"button",onClick:()=>{F("user")},disabled:N!==null,children:N==="user"?"Saving...":"Save Secret"})]}),D.jsx("div",{className:"profile-secrets-list",children:c.length===0?D.jsx("div",{className:"profile-secrets-empty",children:"No personal secrets saved yet."}):c.map(z=>D.jsxs("div",{className:"profile-secrets-item",children:[D.jsxs("div",{children:[D.jsx("div",{className:"profile-secrets-item-key",children:z.key}),D.jsxs("div",{className:"profile-secrets-item-meta",children:[z.value," · Updated ",new Date(z.updated_at).toLocaleString()]})]}),D.jsx("button",{type:"button",className:"danger",onClick:()=>{H("user",z.key)},disabled:T===`user:${z.key}`,children:T===`user:${z.key}`?"Deleting...":"Delete"})]},z.key))})]}),D.jsxs("section",{className:"profile-secrets-section",children:[D.jsx("div",{className:"profile-secrets-section-header",children:D.jsxs("div",{children:[D.jsx("h2",{children:"Global Secrets"}),D.jsxs("p",{children:["Shared fallback secrets managed by engineers. Usable by all users, but personal secrets with the same key override these.",i?"":" You can view these masked values, but only engineers can edit them."]})]})}),i&&D.jsxs("div",{className:"profile-secrets-form",children:[D.jsx("input",{type:"text",name:"global-secret-key",autoComplete:"off",placeholder:"SLACK_BOT_TOKEN",value:y,onChange:z=>S(z.target.value.toUpperCase())}),D.jsx("input",{type:"password",name:"global-secret-value",autoComplete:"new-password",placeholder:"Global secret value",value:x,onChange:z=>L(z.target.value)}),D.jsx("button",{type:"button",onClick:()=>{F("global")},disabled:N!==null,children:N==="global"?"Saving...":"Save Global Secret"})]}),D.jsx("div",{className:"profile-secrets-list",children:u.length===0?D.jsx("div",{className:"profile-secrets-empty",children:"No global secrets saved yet."}):u.map(z=>D.jsxs("div",{className:"profile-secrets-item",children:[D.jsxs("div",{children:[D.jsx("div",{className:"profile-secrets-item-key",children:z.key}),D.jsxs("div",{className:"profile-secrets-item-meta",children:[z.value," · Updated ",new Date(z.updated_at).toLocaleString()]})]}),i&&D.jsx("button",{type:"button",className:"danger",onClick:()=>{H("global",z.key)},disabled:T===`global:${z.key}`,children:T===`global:${z.key}`?"Deleting...":"Delete"})]},z.key))})]})]})]})})}function Oq(s){const[e,t]=B.useState(null),[i,n]=B.useState(!1);return B.useEffect(()=>{s&&Zt.get("/api/opencode-auth/status",{headers:{Authorization:`Bearer ${s}`}}).then(o=>{n(o.data.has_credentials),t(s)}).catch(o=>{const r=o instanceof An?o.response?.data?.message||o.response?.data||o.message:"Failed to check opencode auth status";console.error(r),n(!1),t(s)})},[s]),s?{loading:e!==s,hasCredentials:i}:{loading:!1,hasCredentials:!1}}function Uc({children:s}){const e=Xs();return e.loading?null:e.user?D.jsx(D.Fragment,{children:s}):D.jsx(mk,{to:"/login",replace:!0})}function mh({children:s}){const e=Xs(),t=e.loading?null:e.token,{loading:i,hasCredentials:n}=Oq(t);return i?null:n?D.jsx(D.Fragment,{children:s}):D.jsx(mk,{to:"/opencode-auth",replace:!0})}function Ett(){const s=Xs(),e=s.loading?null:s.token,{loading:t}=Oq(e);return t?null:D.jsx(xtt,{})}function Ntt(){const s=Xs(),e=s.loading?null:s.token,{loading:t,hasCredentials:i}=Oq(e);return t?null:i?D.jsx(Ltt,{}):D.jsx(mk,{to:"/opencode-auth",replace:!0})}function Itt({children:s}){const e=Xs();return e.loading?null:e.user?D.jsx(mk,{to:"/",replace:!0}):D.jsx(D.Fragment,{children:s})}function Ttt(){const s=Xs(),e=zr(),[t,i]=B.useState(null),[n,o]=B.useState(null),[r,a]=B.useState(!1);return B.useEffect(()=>{Zt.get("/api/workspace").then(l=>{i(l.data.workspace_dir),o(null)}).catch(l=>{const c=l instanceof An?l.response?.data?.message||l.response?.data||l.message:"Failed to load workspace path";o(c)})},[]),B.useEffect(()=>{const l=()=>{window.innerWidth>720&&a(!1)};return window.addEventListener("resize",l),()=>window.removeEventListener("resize",l)},[]),D.jsxs("div",{className:"app-shell",children:[D.jsxs("header",{className:"app-header",children:[D.jsxs("div",{className:"app-header-top",children:[D.jsxs("div",{className:"app-brand-block",children:[D.jsxs("div",{className:"app-brand-row",children:[D.jsxs("div",{className:"app-brand",children:[D.jsx("img",{src:"/logo.svg",alt:"TeamCopilot logo",className:"app-brand-logo"}),D.jsxs("div",{className:"app-brand-copy",children:[D.jsx("div",{className:"app-brand-text",children:"TeamCopilot"}),D.jsxs("div",{className:"app-version",children:["v","0.3.1"]})]})]}),!s.loading&&s.user&&D.jsxs("button",{type:"button",className:"app-header-menu-toggle","aria-label":r?"Close header menu":"Open header menu","aria-expanded":r,"aria-controls":"app-header-mobile-menu",onClick:()=>a(l=>!l),children:[D.jsx("span",{}),D.jsx("span",{}),D.jsx("span",{})]})]}),D.jsxs("div",{className:"app-workspace",children:[D.jsx("span",{className:"app-workspace-label",children:"Workspace"}),D.jsx("span",{className:"app-workspace-value",children:n??t??"Loading..."})]})]}),D.jsxs("div",{className:"app-header-meta",children:[!s.loading&&s.user&&D.jsx("button",{className:"app-header-link-btn",onClick:()=>e("/profile/secrets"),children:"Profile Secrets"}),!s.loading&&s.user&&D.jsxs("div",{className:"app-user",children:[D.jsx("span",{className:"app-user-name",children:s.user.name}),D.jsx("span",{className:"app-user-email",children:s.user.email})]}),!s.loading&&s.user&&D.jsx("button",{className:"app-signout",onClick:s.logout,children:"Sign Out"})]})]}),!s.loading&&s.user&&D.jsxs("div",{id:"app-header-mobile-menu",className:`app-header-mobile-menu ${r?"open":""}`,children:[D.jsxs("div",{className:"app-header-mobile-section",children:[D.jsx("span",{className:"app-header-mobile-label",children:"Version"}),D.jsxs("span",{className:"app-header-mobile-value",children:["v","0.3.1"]})]}),D.jsxs("div",{className:"app-header-mobile-section",children:[D.jsx("span",{className:"app-header-mobile-label",children:"Workspace"}),D.jsx("span",{className:"app-header-mobile-value app-header-mobile-mono",children:n??t??"Loading..."})]}),D.jsxs("div",{className:"app-header-mobile-section",children:[D.jsx("span",{className:"app-header-mobile-label",children:"Signed In As"}),D.jsx("span",{className:"app-header-mobile-value",children:s.user.name}),D.jsx("span",{className:"app-header-mobile-subvalue",children:s.user.email})]}),D.jsx("button",{className:"app-header-link-btn app-header-link-btn-mobile",onClick:()=>e("/profile/secrets"),children:"Profile Secrets"}),D.jsx("button",{className:"app-signout app-signout-mobile",onClick:s.logout,children:"Sign Out"})]})]}),D.jsxs(Bbe,{children:[D.jsx(Ra,{path:"/login",element:D.jsx(Itt,{children:D.jsx(Mwe,{})})}),D.jsx(Ra,{path:"/opencode-auth",element:D.jsx(Uc,{children:D.jsx(Ett,{})})}),D.jsx(Ra,{path:"/opencode-auth/complete",element:D.jsx(Uc,{children:D.jsx(Ntt,{})})}),D.jsx(Ra,{path:"/user-instructions",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(ktt,{})})})}),D.jsx(Ra,{path:"/profile/secrets",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(Dtt,{})})})}),D.jsx(Ra,{path:"/",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(zke,{})})})}),D.jsx(Ra,{path:"/runs/:id",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(vtt,{})})})}),D.jsx(Ra,{path:"/workflows/:slug/manual-run",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(wtt,{})})})}),D.jsx(Ra,{path:"/workflows/:slug",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(ftt,{})})})}),D.jsx(Ra,{path:"/skills/:slug",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(gtt,{})})})}),D.jsx(Ra,{path:"/workflows/:slug/approval-review",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(ptt,{})})})}),D.jsx(Ra,{path:"/skills/:slug/approval-review",element:D.jsx(Uc,{children:D.jsx(mh,{children:D.jsx(mtt,{})})})}),D.jsx(Ra,{path:"*",element:D.jsx(mk,{to:"/",replace:!0})})]})]})}function Rtt(){return D.jsx(Rwe,{children:D.jsx(Ttt,{})})}V_e.createRoot(document.getElementById("root")).render(D.jsx(B.StrictMode,{children:D.jsxs(cve,{children:[D.jsx(Rtt,{}),D.jsx(eCe,{position:"bottom-right",autoClose:5e3})]})}));export{iD as m,$he as t};