/*! For license information please see main.js.LICENSE.txt */ (()=>{var __webpack_modules__={62:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GitCommitInputBoxCodeActionsProvider=t.GitCommitInputBoxDiagnosticsManager=t.DiagnosticCodes=void 0;const n=i(1398),r=i(7937);var o;!function(e){e.empty_message="empty_message",e.line_length="line_length"}(o||(t.DiagnosticCodes=o={})),t.GitCommitInputBoxDiagnosticsManager=class{model;diagnostics;severity=n.DiagnosticSeverity.Warning;disposables=[];constructor(e){this.model=e,this.diagnostics=n.languages.createDiagnosticCollection(),this.migrateInputValidationSettings().then(()=>{(0,r.mapEvent)((0,r.filterEvent)(n.workspace.onDidChangeTextDocument,e=>"vscode-scm"===e.document.uri.scheme),e=>e.document)(this.onDidChangeTextDocument,this,this.disposables),(0,r.filterEvent)(n.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git.inputValidation")||e.affectsConfiguration("git.inputValidationLength")||e.affectsConfiguration("git.inputValidationSubjectLength"))(this.onDidChangeConfiguration,this,this.disposables)})}getDiagnostics(e){return this.diagnostics.get(e)??[]}async migrateInputValidationSettings(){try{const e=n.workspace.getConfiguration("git"),t=e.inspect("inputValidation");if(void 0===t)return;"string"==typeof t.workspaceValue&&await e.update("inputValidation","off"!==t.workspaceValue,!1),"string"==typeof t.globalValue&&await e.update("inputValidation","off"!==t.workspaceValue,!0)}catch{}}onDidChangeConfiguration(){for(const e of this.model.repositories)this.onDidChangeTextDocument(e.inputBox.document)}onDidChangeTextDocument(e){const t=n.workspace.getConfiguration("git");if(!t.get("inputValidation",!1))return void this.diagnostics.set(e.uri,void 0);if(/^\s+$/.test(e.getText())){const t=new n.Range(e.lineAt(0).range.start,e.lineAt(e.lineCount-1).range.end),i=new n.Diagnostic(t,n.l10n.t("Current commit message only contains whitespace characters"),this.severity);return i.code=o.empty_message,void this.diagnostics.set(e.uri,[i])}const i=[],r=t.get("inputValidationLength",50),a=t.get("inputValidationSubjectLength",void 0);for(let t=0;tc){const e=new n.Diagnostic(s.range,n.l10n.t("{0} characters over {1} in current line",s.text.length-c,c),this.severity);e.code=o.line_length,i.push(e)}}this.diagnostics.set(e.uri,i)}dispose(){(0,r.dispose)(this.disposables)}},t.GitCommitInputBoxCodeActionsProvider=class{diagnosticsManager;disposables=[];constructor(e){this.diagnosticsManager=e,this.disposables.push(n.languages.registerCodeActionsProvider({scheme:"vscode-scm"},this))}provideCodeActions(e,t){const i=[],r=this.diagnosticsManager.getDiagnostics(e.uri),a=this.getWrapAllLinesCodeAction(e,r);for(const s of r)if(s.range.contains(t))switch(s.code){case o.empty_message:{const t=new n.WorkspaceEdit;t.delete(e.uri,s.range);const r=new n.CodeAction(n.l10n.t("Clear whitespace characters"),n.CodeActionKind.QuickFix);r.diagnostics=[s],r.edit=t,i.push(r);break}case o.line_length:{const t=this.getWrapLineWorkspaceEdit(e,s.range),r=new n.CodeAction(n.l10n.t("Hard wrap line"),n.CodeActionKind.QuickFix);r.diagnostics=[s],r.edit=t,i.push(r),a&&(a.diagnostics=[s],i.push(a));break}}return i}getWrapLineWorkspaceEdit(e,t){const i=this.wrapTextDocumentLine(e,t.start.line),r=new n.WorkspaceEdit;return r.replace(e.uri,t,i.join("\n")),r}getWrapAllLinesCodeAction(e,t){const i=t.filter(e=>e.code===o.line_length);if(i.length<2)return;const r=new n.CodeAction(n.l10n.t("Hard wrap all lines"),n.CodeActionKind.QuickFix);return r.edit=this.getWrapAllLinesWorkspaceEdit(e,i),r}getWrapAllLinesWorkspaceEdit(e,t){const i=new n.WorkspaceEdit;for(const n of t){const t=this.wrapTextDocumentLine(e,n.range.start.line);i.replace(e.uri,n.range,t.join("\n"))}return i}wrapTextDocumentLine(e,t){const i=n.workspace.getConfiguration("git"),r=i.get("inputValidationLength",50),o=i.get("inputValidationSubjectLength",void 0),a=0===t?o??r:r,s=[],c=e.lineAt(t).text.trim();let l=0;for(;c.length-l>a;){const e=c.lastIndexOf(" ",l+a);if(-1!==e&&e>l)s.push(c.substring(l,e)),l=e+1;else{const e=c.indexOf(" ",l+a);-1!==e?(s.push(c.substring(l,e)),l=e+1):(s.push(c.substring(l)),l=c.length)}}return l{"use strict";i.d(t,{Dt:()=>a,Y8:()=>c,bb:()=>s,vv:()=>l});var n=i(269),r=i(5130),o="";function a(e,t){return void 0===t&&(t=!1),null==e?t:"true"===e.toString()[r.OL]()}function s(e){(isNaN(e)||e<0)&&(e=0),e=Math.round(e);var t=o+e%1e3,i=o+Math.floor(e/1e3)%60,n=o+Math.floor(e/6e4)%60,a=o+Math.floor(e/36e5)%24,s=Math.floor(e/864e5);return t=1===t[r.oI]?"00"+t:2===t[r.oI]?"0"+t:t,i=i[r.oI]<2?"0"+i:i,n=n[r.oI]<2?"0"+n:n,a=a[r.oI]<2?"0"+a:a,(s>0?s+".":o)+a+":"+n+":"+i+"."+t}function c(e,t){var i=null;return(0,n.Iuo)(e,function(e){if(e.identifier===t)return i=e,-1}),i}function l(e,t,i,r,o){return!o&&(0,n.KgX)(e)&&("Script error."===e||"Script error"===e)}},251:(e,t)=>{t.read=function(e,t,i,n,r){var o,a,s=8*r-n-1,c=(1<>1,u=-7,d=i?r-1:0,m=i?-1:1,h=e[t+d];for(d+=m,o=h&(1<<-u)-1,h>>=-u,u+=s;u>0;o=256*o+e[t+d],d+=m,u-=8);for(a=o&(1<<-u)-1,o>>=-u,u+=n;u>0;a=256*a+e[t+d],d+=m,u-=8);if(0===o)o=1-l;else{if(o===c)return a?NaN:1/0*(h?-1:1);a+=Math.pow(2,n),o-=l}return(h?-1:1)*a*Math.pow(2,o-n)},t.write=function(e,t,i,n,r,o){var a,s,c,l=8*o-r-1,u=(1<>1,m=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,h=n?0:o-1,g=n?1:-1,p=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=u):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+d>=1?m/c:m*Math.pow(2,1-d))*c>=2&&(a++,c/=2),a+d>=u?(s=0,a=u):a+d>=1?(s=(t*c-1)*Math.pow(2,r),a+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,r),a=0));r>=8;e[i+h]=255&s,h+=g,s/=256,r-=8);for(a=a<0;e[i+h]=255&a,h+=g,a/=256,l-=8);e[i+h-g]|=128*p}},269:(e,t,i)=>{"use strict";function n(e,t){return e||t}function r(e,t){return e[t]}i.d(t,{$8:()=>ue,$PY:()=>U,$XS:()=>z,AHH:()=>di,Cv9:()=>Qt,DA8:()=>wt,EHq:()=>Ut,Edw:()=>M,EtT:()=>$,FJj:()=>Zt,GuU:()=>Ke,Gvm:()=>F,HzD:()=>ti,Iuo:()=>kt,JKf:()=>ct,KTd:()=>At,KVm:()=>Et,KgX:()=>L,KhI:()=>X,Lln:()=>lt,Lmq:()=>W,Lok:()=>mt,N6t:()=>ve,Nq2:()=>_t,O9V:()=>G,P0f:()=>Oe,QdQ:()=>$t,R3R:()=>Xt,SZ2:()=>x,Tnt:()=>H,UUD:()=>Yt,UxO:()=>te,Vdv:()=>et,W$7:()=>St,WSA:()=>Ce,Wtk:()=>Ye,Y0g:()=>gt,YEm:()=>Qe,Yny:()=>Ct,ZHX:()=>ye,ZWZ:()=>Le,aqQ:()=>Ot,b07:()=>O,bJ7:()=>j,cGk:()=>fe,cyL:()=>N,dRz:()=>li,eCG:()=>ft,f0d:()=>Bt,fn0:()=>Re,gBW:()=>A,hKY:()=>Be,hXl:()=>B,isD:()=>ie,jjc:()=>pt,jsL:()=>we,kgX:()=>J,mS$:()=>Xe,mmD:()=>le,nRs:()=>ze,oJg:()=>se,rDm:()=>Rt,raO:()=>ne,sSX:()=>It,tGl:()=>ii,twz:()=>rt,v0u:()=>q,vE3:()=>pe,vF1:()=>re,vKV:()=>ui,w3n:()=>nt,w9M:()=>it,woc:()=>K,xZI:()=>vt,zS2:()=>Ze,zav:()=>Y,zkX:()=>tt,zkd:()=>de,zwS:()=>Jt,zzB:()=>V});var o,a=void 0,s=null,c="",l="function",u="object",d="prototype",m="__proto__",h="undefined",g="constructor",p="Symbol",f="_polyfill",y="length",v="name",w="call",b="toString",C=n(Object),k=r(C,d),R=n(String),S=r(R,d),E=n(Math),D=n(Array),P=r(D,d),_=r(P,"slice");function A(e,t){try{return{v:e.apply(this,t)}}catch(e){return{e}}}function I(e){return function(t){return typeof t===e}}function T(e){var t="[object "+e+"]";return function(e){return!(!e||x(e)!==t)}}function x(e){return k[b].call(e)}function M(e,t){return typeof e===t}function O(e){return typeof e===h||e===h}function B(e){return e===s||O(e)}function G(e){return!!e||e!==a}var L=I("string"),H=I(l);function F(e){return!(!e&&B(e)||!e||typeof e!==u)}var N=r(D,"isArray"),U=T("Date"),$=I("number"),W=I("boolean"),j=T("Error");function z(e){return!!(e&&e.then&&H(e.then))}function K(e){return!e||!V(e)}function V(e){return!(!e||(t=function(){return!(e&&0+e)},i=!e,n=A(t),n.e?i:n.v));var t,i,n}var J=r(C,"getOwnPropertyDescriptor");function q(e,t){return!!e&&k.hasOwnProperty[w](e,t)}var X=n(r(C,"hasOwn"),Z);function Z(e,t){return q(e,t)||!!J(e,t)}function Y(e,t,i){if(e&&F(e))for(var n in e)if(X(e,n)&&-1===t[w](i||e,n,e[n]))break}var Q={e:"enumerable",c:"configurable",v:"value",w:"writable",g:"get",s:"set"};function ee(e){var t={};if(t[Q.c]=!0,t[Q.e]=!0,e.l){t.get=function(){return e.l.v};var i=J(e.l,"v");i&&i.set&&(t.set=function(t){e.l.v=t})}return Y(e,function(e,i){t[Q[e]]=G(i)?i:t[Q[e]]}),t}var te=r(C,"defineProperty"),ie=r(C,"defineProperties");function ne(e,t,i,n,r,o){var a={e:o,c:r};return i&&(a.g=i),n&&(a.s=n),te(e,t,ee(a))}function re(e,t,i){return te(e,t,ee(i))}function oe(e,t,i,n,r){var o={};return Y(e,function(e,n){ae(o,e,t?n:e,r),ae(o,n,i?n:e,r)}),n?n(o):o}function ae(e,t,i,n){te(e,t,{value:i,enumerable:!0,writable:!!n})}var se=n(R),ce="[object Error]";function le(e,t){var i=c,n=k[b][w](e);n===ce&&(e={stack:se(e.stack),message:se(e.message),name:se(e.name)});try{i=((i=JSON.stringify(e,s,t?"number"==typeof t?t:4:a))?i.replace(/"(\w+)"\s*:\s{0,1}/g,"$1: "):s)||se(e)}catch(e){i=" - "+le(e,t)}return n+": "+i}function ue(e){throw new Error(e)}function de(e){throw new TypeError(e)}var me=r(C,"freeze");function he(e){return e}function ge(e){return e[m]||s}var pe=r(C,"assign"),fe=r(C,"keys");function ye(e){return me&&Y(e,function(e,t){(N(t)||F(t))&&ye(t)}),ve(e)}var ve=n(me,he),we=n(r(C,"seal"),he),be=n(r(C,"getPrototypeOf"),ge);function Ce(e){return oe(e,1,0,ve)}function ke(e){return oe(e,0,0,ve)}function Re(e){return function(e){var t={};return Y(e,function(e,i){ae(t,e,i[1]),ae(t,i[0],i[1])}),ve(t)}(e)}var Se,Ee=ke({asyncIterator:0,hasInstance:1,isConcatSpreadable:2,iterator:3,match:4,matchAll:5,replace:6,search:7,species:8,split:9,toPrimitive:10,toStringTag:11,unscopables:12}),De="__tsUtils$gblCfg";function Pe(){var e;return typeof globalThis!==h&&(e=globalThis),e||typeof self===h||(e=self),e||typeof window===h||(e=window),e||typeof global===h||(e=global),e}function _e(){if(!Se){var e=A(Pe).v||{};Se=e[De]=e[De]||{}}return Se}var Ae=Ie;function Ie(e,t,i){var n=t?t[e]:s;return function(t){var r=(t?t[e]:s)||n;if(r||i){var o=arguments;return(r||i).apply(t,r?_[w](o,1):o)}de('"'+se(e)+'" not defined for '+le(t))}}function Te(e){return function(t){return t[e]}}var xe=r(E,"max"),Me=Ae("slice",S),Oe=Ae("substring",S),Be=Ie("substr",S,Ge);function Ge(e,t,i){return B(e)&&de("Invalid "+le(e)),i<0?c:((t=t||0)<0&&(t=xe(t+e[y],0)),O(i)?Me(e,t):Me(e,t,t+i))}function Le(e,t){return Oe(e,0,t)}var He,Fe,Ne,Ue="_urid";function $e(e){var t={description:se(e),toString:function(){return p+"("+e+")"}};return t[f]=!0,t}function We(e){var t=function(){if(!He){var e=_e();He=e.gblSym=e.gblSym||{k:{},s:{}}}return He}();if(!X(t.k,e)){var i=$e(e),n=fe(t.s).length;i[Ue]=function(){return n+"_"+i[b]()},t.k[e]=i,t.s[i[Ue]()]=se(e)}return t.k[e]}function je(){Ne=_e()}function ze(e){var t={};return!Ne&&je(),t.b=Ne.lzy,te(t,"v",{configurable:!0,get:function(){var i=e();return Ne.lzy||te(t,"v",{value:i}),t.b=Ne.lzy,i}}),t}function Ke(e){return te({toJSON:function(){return e}},"v",{value:e})}var Ve,Je="window";function qe(e,t){var i;return function(){return!Ne&&je(),i&&!Ne.lzy||(i=Ke(A(e,t).v)),i.v}}function Xe(e){return!Ne&&je(),Ve&&!1!==e&&!Ne.lzy||(Ve=Ke(A(Pe).v||s)),Ve.v}function Ze(e,t){var i;if((i=Ve&&!1!==t?Ve.v:Xe(t))&&i[e])return i[e];if(e===Je)try{return window}catch(e){}return s}function Ye(){return!!Qe()}var Qe=qe(Ze,["document"]);function et(){return!!tt()}var tt=qe(Ze,[Je]);function it(){return!!nt()}var nt=qe(Ze,["navigator"]);function rt(){return!!ct()}var ot,at,st,ct=qe(Ze,["history"]),lt=qe(function(){return!!A(function(){return process&&(process.versions||{}).node}).v});function ut(){return ot=Ke(A(Ze,[p]).v)}function dt(e){var t=(Ne.lzy?0:ot)||ut();return t.v?t.v[e]:a}function mt(){return!!ht()}function ht(){return!Ne&&je(),((Ne.lzy?0:ot)||ut()).v}function gt(e,t){var i=Ee[e];!Ne&&je();var n=(Ne.lzy?0:ot)||ut();return n.v?n.v[i||e]:t?a:function(e){var t;!Fe&&(Fe={});var i=Ee[e];return i&&(t=Fe[i]=Fe[i]||$e(p+"."+i)),t}(e)}function pt(e,t){!Ne&&je();var i=(Ne.lzy?0:ot)||ut();return i.v?i.v(e):t?s:$e(e)}function ft(e){return!Ne&&je(),((at=(Ne.lzy?0:at)||Ke(A(dt,["for"]).v)).v||We)(e)}function yt(e){return!!e&&H(e.next)}function vt(e){return!function(e){return e===s||!G(e)}(e)&&H(e[gt(3)])}function wt(e,t,i){if(e&&(yt(e)||(!st&&(st=Ke(gt(3))),e=e[st.v]?e[st.v]():s),yt(e))){var n=a,r=a;try{for(var o=0;!(r=e.next()).done&&-1!==t[w](i||e,r.value,o,e);)o++}catch(t){n={e:t},e.throw&&(r=s,e.throw(n))}finally{try{r&&!r.done&&e.return&&e.return(r)}finally{if(n)throw n.e}}}}function bt(e,t,i){return e.apply(t,i)}function Ct(e,t){return!O(t)&&e&&(N(t)?bt(e.push,e,t):yt(t)||vt(t)?wt(t,function(t){e.push(t)}):e.push(t)),e}function kt(e,t,i){if(e)for(var n=e[y]>>>0,r=0;r0?i:0;return Oe(e,r,r+n[y])===n}var ri="ref",oi="unref",ai="hasRef",si="enabled";function ci(e,t,i){var n=N(t),r=n?t.length:0,o=(r>0?t[0]:n?a:t)||setTimeout,c=(r>1?t[1]:a)||clearTimeout,l=i[0];i[0]=function(){u.dn(),bt(l,a,_[w](arguments))};var u=function(e,t,i){var n,r=!0,o=e?t(s):s;function a(){return r=!1,o&&o[oi]&&o[oi](),n}function c(){o&&i(o),o=s}function l(){return o=t(o),r||a(),n}return(n={cancel:c,refresh:l})[ai]=function(){return o&&o[ai]?o[ai]():r},n[ri]=function(){return r=!0,o&&o[ri]&&o[ri](),n},n[oi]=a,{h:n=te(n,si,{get:function(){return!!o},set:function(e){!e&&o&&c(),e&&!o&&l()}}),dn:function(){o=s}}}(e,function(e){if(e){if(e.refresh)return e.refresh(),e;bt(c,a,[e])}return bt(o,a,i)},function(e){bt(c,a,[e])});return u.h}function li(e,t){return ci(!0,a,_[w](arguments))}function ui(e,t,i){return ci(!0,e,_[w](arguments,1))}function di(e,t){return ci(!1,a,_[w](arguments))}},280:(e,t,i)=>{"use strict";const n=i(6928),r="win32"===process.platform,{REGEX_BACKSLASH:o,REGEX_REMOVE_BACKSLASH:a,REGEX_SPECIAL_CHARS:s,REGEX_SPECIAL_CHARS_GLOBAL:c}=i(3940);t.isObject=e=>null!==e&&"object"==typeof e&&!Array.isArray(e),t.hasRegexChars=e=>s.test(e),t.isRegexChar=e=>1===e.length&&t.hasRegexChars(e),t.escapeRegex=e=>e.replace(c,"\\$1"),t.toPosixSlashes=e=>e.replace(o,"/"),t.removeBackslashes=e=>e.replace(a,e=>"\\"===e?"":e),t.supportsLookbehinds=()=>{const e=process.version.slice(1).split(".").map(Number);return 3===e.length&&e[0]>=9||8===e[0]&&e[1]>=10},t.isWindows=e=>e&&"boolean"==typeof e.windows?e.windows:!0===r||"\\"===n.sep,t.escapeLast=(e,i,n)=>{const r=e.lastIndexOf(i,n);return-1===r?e:"\\"===e[r-1]?t.escapeLast(e,i,r-1):`${e.slice(0,r)}\\${e.slice(r)}`},t.removePrefix=(e,t={})=>{let i=e;return i.startsWith("./")&&(i=i.slice(2),t.prefix="./"),i},t.wrapOutput=(e,t={},i={})=>{let n=`${i.contains?"":"^"}(?:${e})${i.contains?"":"$"}`;return!0===t.negated&&(n=`(?:^(?!${n}).*$)`),n}},363:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromStream=t.fromBuffer=t.EndOfStreamError=t.fromFile=void 0;const n=i(1343),r=i(6452);var o=i(1456);Object.defineProperty(t,"fromFile",{enumerable:!0,get:function(){return o.fromFile}});var a=i(6452);Object.defineProperty(t,"EndOfStreamError",{enumerable:!0,get:function(){return a.EndOfStreamError}}),Object.defineProperty(t,"fromBuffer",{enumerable:!0,get:function(){return a.fromBuffer}}),t.fromStream=async function(e,t){if(t=t||{},e.path){const i=await n.stat(e.path);t.path=e.path,t.size=i.size}return r.fromStream(e,t)}},380:(e,t,i)=>{"use strict";i.d(t,{Cr:()=>l,Xc:()=>d,pI:()=>u,u7:()=>m});var n=i(269),r=i(6182),o=i(4276),a=i(6492),s=i(1864),c=(0,o.T)("plugin");function l(e){return c.get(e,"state",{},!0)}function u(e,t){for(var i,o=[],s=null,c=e[r.uR]();c;){var u=c[r.AP]();if(u){s&&s[r.YH]&&u[a.qT]&&s[r.YH](u);var d=!!(i=l(u))[r.tZ];u[r.tZ]&&(d=u[r.tZ]()),d||o[r.y5](u),s=u,c=c[r.uR]()}}(0,n.Iuo)(o,function(n){var o=e[a.eT]();n[r.mE](e.getCfg(),o,t,e[r.uR]()),i=l(n),n[a.eT]||i[a.eT]||(i[a.eT]=o),i[r.tZ]=!0,delete i[r.Ik]})}function d(e){return e.sort(function(e,t){var i=0;if(t){var n=t[a.qT];e[a.qT]?i=n?e[a.Vo]-t[a.Vo]:1:n&&(i=-1)}else i=e?1:-1;return i})}function m(e){var t={};return{getName:function(){return t[r.RS]},setName:function(i){e&&e.setName(i),t[r.RS]=i},getTraceId:function(){return t[r.P5]},setTraceId:function(i){e&&e.setTraceId(i),(0,s.hX)(i)&&(t[r.P5]=i)},getSpanId:function(){return t[r.wi]},setSpanId:function(i){e&&e.setSpanId(i),(0,s.wN)(i)&&(t[r.wi]=i)},getTraceFlags:function(){return t[r.Rr]},setTraceFlags:function(i){e&&e.setTraceFlags(i),t[r.Rr]=i}}}},527:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LRUCache=void 0;class i{[Symbol.toStringTag]="LinkedMap";_map;_head;_tail;_size;_state;constructor(){this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){const i=this._map.get(e);if(i)return 0!==t&&this.touch(i,t),i.value}set(e,t,i=0){let n=this._map.get(e);if(n)n.value=t,0!==i&&this.touch(n,i);else{switch(n={key:e,value:t,next:void 0,previous:void 0},i){case 0:case 2:default:this.addItemLast(n);break;case 1:this.addItemFirst(n)}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const i=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator]:()=>n,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const e={value:i.key,done:!1};return i=i.next,e}return{value:void 0,done:!0}}};return n}values(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator]:()=>n,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const e={value:i.value,done:!1};return i=i.next,e}return{value:void 0,done:!0}}};return n}entries(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator]:()=>n,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const e={value:[i.key,i.value],done:!1};return i=i.next,e}return{value:void 0,done:!0}}};return n}[Symbol.iterator](){return this.entries()}trimOld(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._head,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.next,i--;this._head=t,this._size=i,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._tail,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.previous,i--;this._tail=t,this._size=i,t&&(t.next=void 0),this._state++}addItemFirst(e){if(this._head||this._tail){if(!this._head)throw new Error("Invalid list");e.next=this._head,this._head.previous=e}else this._tail=e;this._head=e,this._state++}addItemLast(e){if(this._head||this._tail){if(!this._tail)throw new Error("Invalid list");e.previous=this._tail,this._tail.next=e}else this._head=e;this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,i=e.previous;if(!t||!i)throw new Error("Invalid list");t.previous=i,i.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(1===t||2===t)if(1===t){if(e===this._head)return;const t=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(t.previous=i,i.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(2===t){if(e===this._tail)return;const t=e.next,i=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=i,i.next=t),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}toJSON(){const e=[];return this.forEach((t,i)=>{e.push([i,t])}),e}fromJSON(e){this.clear();for(const[t,i]of e)this.set(t,i)}}class n extends i{_limit;_ratio;constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}t.LRUCache=class extends n{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}},659:(e,t,i)=>{"use strict";i.d(t,{Im:()=>a,qU:()=>c,vz:()=>l});var n=i(269),r=i(5664),o=(((0,n.mS$)()||{}).Symbol,((0,n.mS$)()||{}).Reflect,"hasOwnProperty"),a=n.vE3||function(e){for(var t,i=1,n=arguments.length;i{d.exec("which git",(n,r)=>{if(n)return i(new Error(`Executing "which git" failed: ${n.message}`));const o=r.toString().trim();function a(n){if(!e(n))return i(new Error(`Path "${n}" is invalid.`));d.exec("git --version",(e,r)=>e?i(new Error(`Executing "git --version" failed: ${e.message}`)):t({path:n,version:C(r.trim())}))}if("/usr/bin/git"!==o)return a(o);d.exec("xcode-select -p",e=>{if(e&&2===e.code)return i(new Error('Executing "xcode-select -p" failed with error code 2.'));a(o)})})})}(t);case"win32":return await function(e){return R(process.env.ProgramW6432,e).then(void 0,()=>R(process.env["ProgramFiles(x86)"],e)).then(void 0,()=>R(process.env.ProgramFiles,e)).then(void 0,()=>R(l.join(process.env.LocalAppData,"Programs"),e)).then(void 0,()=>async function(e){return k(await(0,h.default)("git.exe"),e)}(e))}(t);default:return await k("git",t)}}catch(e){i.warn(`Unable to find git. Error: ${e.message}`)}throw new Error("Git installation not found.")},t.parseGitmodules=M,t.parseGitRemotes=O,t.parseGitCommits=G,t.parseLsTree=F,t.parseLsFiles=N;const c=i(9896),l=a(i(6928)),u=a(i(857)),d=a(i(5317)),m=i(7016),h=s(i(7242)),g=i(4434),p=a(i(3846)),f=i(7937),y=i(1398),v=a(i(5607)),w=i(3193),b=3e4;function C(e){return e.replace(/^git version /,"")}function k(e,t){return new Promise((i,n)=>{if(!t(e))return n(new Error(`Path "${e}" is invalid.`));const r=[],o=d.spawn(e,["--version"]);o.stdout.on("data",e=>r.push(e)),o.on("error",S(n)),o.on("close",t=>t?n(new Error(`Not found. Code: ${t}`)):i({path:e,version:C(Buffer.concat(r).toString("utf8").trim())}))})}function R(e,t){return e?k(l.join(e,"Git","cmd","git.exe"),t):Promise.reject("Not found")}function S(e){return t=>{/ENOENT/.test(t.message)&&(t=new D({error:t,message:"Failed to execute git (ENOENT)",gitErrorCode:"NotAGitRepository"})),e(t)}}async function E(e,t){if(!e.stdout||!e.stderr)throw new D({message:"Failed to get stdout or stderr from git process."});if(t&&t.isCancellationRequested)throw new y.CancellationError;const i=[],n=(e,t,n)=>{e.once(t,n),i.push((0,f.toDisposable)(()=>e.removeListener(t,n)))},r=(e,t,n)=>{e.on(t,n),i.push((0,f.toDisposable)(()=>e.removeListener(t,n)))};let o=Promise.all([new Promise((t,i)=>{n(e,"error",S(i)),n(e,"exit",t)}),new Promise(t=>{const i=[];r(e.stdout,"data",e=>i.push(e)),n(e.stdout,"close",()=>t(Buffer.concat(i)))}),new Promise(t=>{const i=[];r(e.stderr,"data",e=>i.push(e)),n(e.stderr,"close",()=>t(Buffer.concat(i).toString("utf8")))})]);if(t){const i=new Promise((i,n)=>{(0,f.onceEvent)(t.onCancellationRequested)(()=>{try{e.kill()}catch(e){}n(new y.CancellationError)})});o=Promise.race([o,i])}try{const[e,t,i]=await o;return{exitCode:e,stdout:t,stderr:i}}finally{(0,f.dispose)(i)}}class D extends Error{error;stdout;stderr;exitCode;gitErrorCode;gitCommand;gitArgs;constructor(e){super(e.error?.message||e.message||"Git error"),this.error=e.error,this.stdout=e.stdout,this.stderr=e.stderr,this.exitCode=e.exitCode,this.gitErrorCode=e.gitErrorCode,this.gitCommand=e.gitCommand,this.gitArgs=e.gitArgs}toString(){let e=this.message+" "+JSON.stringify({exitCode:this.exitCode,gitErrorCode:this.gitErrorCode,gitCommand:this.gitCommand,stdout:this.stdout,stderr:this.stderr},null,2);return this.error?.stack&&(e+=this.error.stack),e}}function P(e){return/Another git process seems to be running in this repository|If no other git process is currently running/.test(e)?"RepositoryIsLocked":/Authentication failed/i.test(e)?"AuthenticationFailed":/Not a git repository/i.test(e)?"NotAGitRepository":/bad config file/.test(e)?"BadConfigFile":/cannot make pipe for command substitution|cannot create standard input pipe/.test(e)?"CantCreatePipe":/Repository not found/.test(e)?"RepositoryNotFound":/unable to access/.test(e)?"CantAccessRemote":/branch '.+' is not fully merged/.test(e)?"BranchNotFullyMerged":/Couldn\'t find remote ref/.test(e)?"NoRemoteReference":/A branch named '.+' already exists/.test(e)?"BranchAlreadyExists":/'.+' is not a valid branch name/.test(e)?"InvalidBranchName":/Please,? commit your changes or stash them/.test(e)?"DirtyWorkTree":/detected dubious ownership in repository at/.test(e)?"NotASafeGitRepository":/contains modified or untracked files|use --force to delete it/.test(e)?"WorktreeContainsChanges":/fatal: '[^']+' already exists/.test(e)?"WorktreeAlreadyExists":/is already used by worktree at/.test(e)?"WorktreeBranchAlreadyUsed":void 0}function _(e){return e.replace(/^([a-z]):\\/i,(e,t)=>`${t.toUpperCase()}:\\`)}function A(e){return e.replace(/\\/g,"/")}t.GitError=D;const I="%H%n%aN%n%aE%n%at%n%ct%n%P%n%D%n%B";t.Git=class{path;userAgent;version;env;commandsToLog=[];_onOutput=new g.EventEmitter;get onOutput(){return this._onOutput}constructor(e){this.path=e.gitPath,this.version=e.version,this.userAgent=e.userAgent,this.env=e.env||{};const t=e=>{if(void 0!==e&&!e.affectsConfiguration("git.commandsToLog"))return;const t=y.workspace.getConfiguration("git");this.commandsToLog=t.get("commandsToLog",[])};y.workspace.onDidChangeConfiguration(t,this),t()}compareGitVersionTo(e){return f.Versions.compare(f.Versions.fromString(this.version),f.Versions.fromString(e))}open(e,t,i,n){return new z(this,e,t,i,n)}async init(e,t={}){const i=["init"];t.defaultBranch&&""!==t.defaultBranch&&-1!==this.compareGitVersionTo("2.28.0")&&i.push("-b",t.defaultBranch),await this.exec(e,i)}async clone(e,t,i){const n=decodeURI(e).replace(/[\/]+$/,"").replace(/^.*[\/\\]/,"").replace(/\.git$/,"")||"repository";let r=n,o=l.join(t.parentPath,r),a=1;for(;a<20&&await new Promise(e=>(0,c.exists)(o,e));)r=`${n}-${a++}`,o=l.join(t.parentPath,r);await(0,f.mkdirp)(t.parentPath);const s=e=>{const i=new w.StringDecoder("utf8"),n=new v.LineStream({encoding:"utf8"});e.stderr.on("data",e=>n.write(i.write(e)));let r=0,o=0;n.on("data",e=>{let i=null;(i=/Counting objects:\s*(\d+)%/i.exec(e))?r=Math.floor(.1*parseInt(i[1])):(i=/Compressing objects:\s*(\d+)%/i.exec(e))?r=10+Math.floor(.1*parseInt(i[1])):(i=/Receiving objects:\s*(\d+)%/i.exec(e))?r=20+Math.floor(.4*parseInt(i[1])):(i=/Resolving deltas:\s*(\d+)%/i.exec(e))&&(r=60+Math.floor(.4*parseInt(i[1]))),r!==o&&(t.progress.report({increment:r-o}),o=r)})};try{const n=["clone",e.includes(" ")?encodeURI(e):e,o,"--progress"];t.recursive&&n.push("--recursive"),t.ref&&n.push("--branch",t.ref),await this.exec(t.parentPath,n,{cancellationToken:i,env:{GIT_HTTP_USER_AGENT:this.userAgent},onSpawn:s})}catch(e){throw e.stderr&&(e.stderr=e.stderr.replace(/^Cloning.+$/m,"").trim(),e.stderr=e.stderr.replace(/^ERROR:\s+/,"").trim()),e}return o}async getRepositoryRoot(e){const t=await this.exec(e,["rev-parse","--show-toplevel"]),i=l.normalize(t.stdout.trimStart().replace(/[\r\n]+$/,""));if(!(0,f.pathEquals)(e,i)&&!(0,f.isDescendant)(i,e)&&!(0,f.isDescendant)(e,i)&&-1!==this.compareGitVersionTo("2.31.0")){const t=await this.exec(e,["rev-parse","--path-format=relative","--show-toplevel"]);return l.resolve(e,t.stdout.trimStart().replace(/[\r\n]+$/,""))}if(f.isWindows){const t=y.Uri.file(i),n=y.Uri.file(e);if(0!==t.authority.length&&0===n.authority.length){const e=/^[\/]?([a-zA-Z])[:\/]/.exec(n.path);if(null!==e){const[,i]=e;try{const e=await new Promise(e=>c.realpath.native(`${i}:\\`,{encoding:"utf8"},(t,i)=>e(null!==t?void 0:i)));if(void 0!==e){const n=(0,f.pathEquals)(t.fsPath,e);return l.normalize(t.fsPath.replace(e,`${i.toLowerCase()}:${n||e.endsWith("\\")?"\\":""}`))}}catch{}}return l.normalize(n.fsPath)}}return i}async getRepositoryDotGit(e){let t,i,n;const r=["rev-parse","--git-dir","--git-common-dir"];this.compareGitVersionTo("2.13.0")>=0&&r.push("--show-superproject-working-tree");const o=await this.exec(e,r);return[t,i,n]=o.stdout.split("\n").map(e=>e.trim()),l.isAbsolute(t)||(t=l.join(e,t)),t=l.normalize(t),i&&(l.isAbsolute(i)||(i=l.join(e,i)),i=l.normalize(i)),{path:t,commonPath:i!==t?i:void 0,superProjectPath:n?l.normalize(n):void 0}}async exec(e,t,i={}){return i=(0,f.assign)({cwd:e},i||{}),await this._exec(t,i)}async exec2(e,t={}){return await this._exec(e,t)}stream(e,t,i={}){i=(0,f.assign)({cwd:e},i||{});const n=this.spawn(t,i);if(!1!==i.log){const e=Date.now();n.on("exit",i=>{this.log(`> git ${t.join(" ")} [${Date.now()-e}ms]${n.killed?" (cancelled)":""}\n`)})}return n}async _exec(e,t={}){const i=this.spawn(e,t);t.onSpawn?.(i),t.input&&i.stdin.end(t.input,"utf8");const n=Date.now();let r;try{r=await E(i,t.cancellationToken)}catch(t){throw t instanceof y.CancellationError&&this.log(`> git ${e.join(" ")} [${Date.now()-n}ms] (cancelled)\n`),t}!1!==t.log&&(this.log(`> git ${e.join(" ")} [${Date.now()-n}ms]\n`),r.stdout.length>0&&e.find(e=>this.commandsToLog.includes(e))&&this.log(`${r.stdout}\n`),r.stderr.length>0&&this.log(`${r.stderr}\n`));const o={exitCode:r.exitCode,stdout:r.stdout.toString("utf8"),stderr:r.stderr};return r.exitCode?Promise.reject(new D({message:"Failed to execute git",stdout:o.stdout,stderr:o.stderr,exitCode:o.exitCode,gitErrorCode:P(o.stderr),gitCommand:e[0],gitArgs:e})):o}spawn(e,t={}){if(!this.path)throw new Error("git could not be found in the system.");t||(t={}),t.stdio||t.input||(t.stdio=["ignore",null,null]),t.env=(0,f.assign)({},process.env,this.env,t.env||{},{VSCODE_GIT_COMMAND:e[0],LC_ALL:"en_US.UTF-8",LANG:"en_US.UTF-8",GIT_PAGER:"cat"});const i=this.getCwd(t);return i&&(t.cwd=_(i)),d.spawn(this.path,e,t)}getCwd(e){const t=e.cwd;return void 0===t||"string"==typeof t?t:"file:"===t.protocol?(0,m.fileURLToPath)(t):void 0}log(e){this._onOutput.emit("log",e)}async mergeFile(e){const t=["merge-file","-p",e.input1Path,e.basePath,e.input2Path];e.diff3?t.push("--diff3"):t.push("--no-diff3");try{return(await this.exec(u.homedir(),t)).stdout}catch(e){if("string"==typeof e.stdout)return e.stdout;throw e}}async addSafeDirectory(e){await this.exec(u.homedir(),["config","--global","--add","safe.directory",e])}};class T{static _lineSeparator=/\r?\n/;static _propertyRegex=/^\s*(\w+)\s*=\s*"?([^"]+)"?$/;static _sectionRegex=/^\s*\[\s*([^\]]+?)\s*(\"[^"]+\")*\]\s*$/;static parse(e){const t={sections:[]};let i={name:"DEFAULT",properties:{}};const n=e=>{e&&t.sections.push(e)};for(const t of e.split(T._lineSeparator)){const e=t.match(T._sectionRegex);if(3===e?.length){n(i),i={name:e[1],subSectionName:e[2]?.replaceAll('"',""),properties:{}};continue}const r=t.match(T._propertyRegex);3!==r?.length||Object.keys(i.properties).includes(r[1])||(i.properties[r[1]]=r[2])}return n(i),t.sections}}class x{lastRaw="";result=[];get status(){return this.result}update(e){let t,i=0;for(e=this.lastRaw+e;void 0!==(t=this.parseEntry(e,i));)i=t;this.lastRaw=e.substr(i)}parseEntry(e,t){if(t+4>=e.length)return;let i;const n={x:e.charAt(t++),y:e.charAt(t++),rename:void 0,path:""};if(t++,"R"===n.x||"R"===n.y||"C"===n.x){if(i=e.indexOf("\0",t),-1===i)return;n.rename=e.substring(t,i),t=i+1}return i=e.indexOf("\0",t),-1!==i?(n.path=e.substring(t,i),"/"!==n.path[n.path.length-1]&&this.result.push(n),i+1):void 0}}function M(e){const t=[];for(const i of T.parse(e).filter(e=>"submodule"===e.name))i.subSectionName&&i.properties.path&&i.properties.url&&t.push({name:i.subSectionName,path:i.properties.path,url:i.properties.url});return t}function O(e){const t=[];for(const i of T.parse(e).filter(e=>"remote"===e.name))i.subSectionName&&t.push({name:i.subSectionName,fetchUrl:i.properties.url,pushUrl:i.properties.pushurl??i.properties.url,isReadOnly:!1});return t}t.GitStatusParser=x;const B=/([0-9a-f]{40})\n(.*)\n(.*)\n(.*)\n(.*)\n(.*)\n(.*)(?:\n([^]*?))?(?:\x00)(?:\n((?:.*)files? changed(?:.*))$)?/gm;function G(e){const t=[];let i,n,r,o,a,s,c,l,u,d;for(;d=B.exec(e),null!==d;)[,i,n,r,o,a,s,c,l,u]=d,"\n"===l[l.length-1]&&(l=l.substr(0,l.length-1)),t.push({hash:` ${i}`.substr(1),message:` ${l}`.substr(1),parents:s?s.split(" "):[],authorDate:new Date(1e3*Number(o)),authorName:` ${n}`.substr(1),authorEmail:` ${r}`.substr(1),commitDate:new Date(1e3*Number(a)),refNames:c.split(",").map(e=>e.trim()),shortStat:u?H(u):void 0});return t}const L=/(\d+) files? changed(?:, (\d+) insertions?\(\+\))?(?:, (\d+) deletions?\(-\))?/;function H(e){const t=e.trim().match(L);if(!t)return{files:0,insertions:0,deletions:0};const[,i,n,r]=t;return{files:parseInt(i),insertions:parseInt(n??"0"),deletions:parseInt(r??"0")}}function F(e){return e.split("\n").filter(e=>!!e).map(e=>/^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(.*)$/.exec(e)).filter(e=>!!e).map(([,e,t,i,n,r])=>({mode:e,type:t,object:i,size:n,file:r}))}function N(e){return e.split("\n").filter(e=>!!e).map(e=>/^(\S+)\s+(\S+)\s+(\S+)\s+(.*)$/.exec(e)).filter(e=>!!e).map(([,e,t,i,n])=>({mode:e,object:t,stage:i,file:n}))}const U=/([0-9a-f]{40})\n(.*)\nstash@{(\d+)}\n(WIP\s)*on([^:]+):(.*)(?:\x00)/gim;function $(e,t){let i=0;const n=[],r=t.trim().split("\0").filter(e=>e);e:for(;i=r.length)break;const t=r[i++];if(!t)break;u=3,s=c=y.Uri.file(l.isAbsolute(t)?t:l.join(e,t));break}default:break e}n.push({status:u,uri:s,originalUri:a,renameUri:c})}return n}const W="%(refname)%00%(objectname)%00%(*objectname)",j=`${W}%00%(parent)%00%(*parent)%00%(authorname)%00%(*authorname)%00%(committerdate:unix)%00%(*committerdate:unix)%00%(subject)%00%(*subject)`;class z{_git;repositoryRoot;repositoryRootRealPath;dotGit;logger;_isUsingRefTable=!1;constructor(e,t,i,n,r){this._git=e,this.repositoryRoot=t,this.repositoryRootRealPath=i,this.dotGit=n,this.logger=r,this._kind=this.dotGit.commonPath?"worktree":this.dotGit.superProjectPath?"submodule":"repository"}_kind;get kind(){return this._kind}get git(){return this._git}get root(){return this.repositoryRoot}get rootRealPath(){return this.repositoryRootRealPath}async exec(e,t={}){return await this.git.exec(this.repositoryRoot,e,t)}stream(e,t={}){return this.git.stream(this.repositoryRoot,e,t)}spawn(e,t={}){return this.git.spawn(e,t)}async config(e,t,i,n=null,r={}){const o=["config",`--${e}`];t&&o.push(`--${t}`),o.push(i),n&&o.push(n);try{return(await this.exec(o,r)).stdout.trim()}catch(e){return this.logger.warn(`[Git][config] git config failed: ${e.message}`),""}}async getConfigs(e){const t=["config"];return e&&t.push("--"+e),t.push("-l"),(await this.exec(t)).stdout.trim().split(/\r|\r\n|\n/).map(e=>{const t=e.indexOf("=");return{key:e.substr(0,t),value:e.substr(t+1)}})}async log(e,t){const i={cancellationToken:t},n=["log",`--format=${I}`,"-z"];e?.shortStats&&(n.push("--shortstat"),-1!==this._git.compareGitVersionTo("2.31")&&n.push("--diff-merges=first-parent")),e?.reverse&&n.push("--reverse","--ancestry-path"),e?.sortByAuthorDate&&n.push("--author-date-order"),e?.range?n.push(e.range):n.push(`-n${e?.maxEntries??32}`),e?.author&&n.push(`--author=${e.author}`),e?.grep&&(n.push(`--grep=${e.grep}`),n.push("--extended-regexp"),n.push("--regexp-ignore-case")),"number"==typeof e?.maxParents&&n.push(`--max-parents=${e.maxParents}`),"number"==typeof e?.skip&&n.push(`--skip=${e.skip}`),e?.refNames&&(n.push("--topo-order"),n.push("--decorate=full"),i.input=e.refNames.join("\n"),n.push("--stdin")),e?.path&&n.push("--",e.path);const r=await this.exec(n,i);return r.exitCode?[]:G(r.stdout)}async logFile(e,t,i){const n=["log",`--format=${I}`,"-z"];t?.maxEntries&&!t?.reverse&&n.push(`-n${t.maxEntries}`),t?.hash&&(t?.reverse?n.push("--reverse","--ancestry-path",`${t.hash}..HEAD`):n.push(t.hash)),t?.shortStats&&n.push("--shortstat"),t?.sortByAuthorDate&&n.push("--author-date-order"),t?.follow&&n.push("--follow"),n.push("--",e.fsPath);try{const e=await this.exec(n,{cancellationToken:i});return e.exitCode?[]:G(e.stdout)}catch(e){if(/does not have any commits yet/.test(e.stderr))return[];throw e}}async reflog(e,t){const i=["reflog",e,`--grep-reflog=${t}`],n=await this.exec(i);return n.exitCode?[]:n.stdout.split("\n").filter(e=>!!e)}async buffer(e,t){const i=this.sanitizeRelativePath(t),n=this.stream(["show","--textconv",`${e}:${i}`]);if(!n.stdout)return Promise.reject("Can't open file from git");const{exitCode:r,stdout:o,stderr:a}=await E(n);if(r){const e=new D({message:"Could not show object.",exitCode:r});return/exists on disk, but not in/.test(a)&&(e.gitErrorCode="WrongCase"),Promise.reject(e)}return o}async getObjectDetails(e,t){if(!e||":1"===e||":2"===e||":3"===e){const i=await this.lsfiles(t);if(0===i.length)throw new D({message:"Path not known by git",gitErrorCode:"UnknownPath"});const{mode:n,object:r}=""!==e?i.find(t=>t.stage===e.substring(1))??i[0]:i[0],o=await this.exec(["cat-file","-s",r]);return{mode:n,object:r,size:parseInt(o.stdout)}}const i=await this.lstree(e,t);if(0===i.length)throw new D({message:"Path not known by git",gitErrorCode:"UnknownPath"});const{mode:n,object:r,size:o}=i[0];return{mode:n,object:r,size:parseInt(o)||0}}async lstree(e,t,i){const n=["ls-tree","-l"];i?.recursive&&n.push("-r"),n.push(e),t&&n.push("--",this.sanitizeRelativePath(t));const{stdout:r}=await this.exec(n);return F(r)}async lsfiles(e){const t=["ls-files","--stage"],i=this.sanitizeRelativePath(e);i&&t.push("--",i);const{stdout:n}=await this.exec(t);return N(n)}async getGitFilePath(e,t){const i=e?await this.lstree(e,void 0,{recursive:!0}):await this.lsfiles(this.repositoryRoot),n=this.sanitizeRelativePath(t).toLowerCase(),r=i.find(e=>e.file.toLowerCase()===n);if(!r)throw new D({message:`Git relative path not found. Was looking for ${n} among ${JSON.stringify(i.map(({file:e})=>e),null,2)}`});return l.join(this.repositoryRoot,r.file)}async detectObjectType(e){const t=await this.stream(["show","--textconv",e]),i=await(0,f.readBytes)(t.stdout,4100);try{t.kill()}catch(e){}const n=(0,f.detectUnicodeEncoding)(i);let r=!0;if("utf16be"!==n&&"utf16le"!==n)for(let e=0;ethis.sanitizeRelativePath(e)),b))await this.exec([...i,"--",...t]);else await this.exec([...i,"--","."])}async rm(e){const t=["rm","--"];e&&e.length&&(t.push(...e.map(e=>this.sanitizeRelativePath(e))),await this.exec(t))}async stage(e,t){const i=this.sanitizeRelativePath(e),n=this.stream(["hash-object","--stdin","-w","--path",i],{stdio:[null,null,null]});n.stdin.end(t);const{exitCode:r,stdout:o}=await E(n),a=o.toString("utf8");if(r)throw new D({message:"Could not hash object.",exitCode:r});const s=await this.getCommit("HEAD").then(()=>"HEAD",()=>"");let c,l="";try{c=(await this.getObjectDetails(s,e)).mode}catch(e){if("UnknownPath"!==e.gitErrorCode)throw e;c="100644",l="--add"}await this.exec(["update-index",l,"--cacheinfo",c,a,i])}async checkout(e,t,i=Object.create(null)){const n=["checkout","-q"];i.track&&n.push("--track"),i.detached&&n.push("--detach"),e&&n.push(e);try{if(t&&t.length>0)for(const e of(0,f.splitInChunks)(t.map(e=>this.sanitizeRelativePath(e)),b))await this.exec([...n,"--",...e]);else await this.exec(n)}catch(t){throw/Please,? commit your changes or stash them/.test(t.stderr||"")?(t.gitErrorCode="DirtyWorkTree",t.gitTreeish=e):/You are on a branch yet to be born/.test(t.stderr||"")&&(t.gitErrorCode="BranchNotYetBorn"),t}}async commit(e,t=Object.create(null)){const i=["commit","--quiet"],n={};e&&(n.input=e,i.push("--allow-empty-message","--file","-")),t.verbose&&i.push("--verbose"),t.all&&i.push("--all"),t.amend&&i.push("--amend"),t.useEditor||(e||(t.amend?i.push("--no-edit"):(n.input="",i.push("--file","-"))),i.push("--allow-empty-message")),t.signoff&&i.push("--signoff"),t.signCommit&&i.push("-S"),t.empty&&i.push("--allow-empty"),t.noVerify&&i.push("--no-verify"),(t.requireUserConfig??1)&&i.splice(0,0,"-c","user.useConfigOnly=true");try{await this.exec(i,n)}catch(e){await this.handleCommitError(e)}}async rebaseAbort(){await this.exec(["rebase","--abort"])}async rebaseContinue(){const e=["rebase","--continue"];try{await this.exec(e,{env:{GIT_EDITOR:"true"}})}catch(e){await this.handleCommitError(e)}}async handleCommitError(e){if(/not possible because you have unmerged files/.test(e.stderr||""))throw e.gitErrorCode="UnmergedChanges",e;if(/Aborting commit due to empty commit message/.test(e.stderr||""))throw e.gitErrorCode="EmptyCommitMessage",e;try{await this.exec(["config","--get-all","user.name"])}catch(e){throw e.gitErrorCode="NoUserNameConfigured",e}try{await this.exec(["config","--get-all","user.email"])}catch(e){throw e.gitErrorCode="NoUserEmailConfigured",e}throw e}async branch(e,t,i){const n=t?["checkout","-q","-b",e,"--no-track"]:["branch","-q",e];i&&n.push(i),await this.exec(n)}async deleteBranch(e,t){const i=["branch",t?"-D":"-d",e];await this.exec(i)}async renameBranch(e){const t=["branch","-m",e];await this.exec(t)}async move(e,t){const i=["mv",e,t];await this.exec(i)}async setBranchUpstream(e,t){const i=["branch","--set-upstream-to",t,e];await this.exec(i)}async deleteRef(e){const t=["update-ref","-d",e];await this.exec(t)}async merge(e){const t=["merge",e];try{await this.exec(t)}catch(e){throw/^CONFLICT /m.test(e.stdout||"")&&(e.gitErrorCode="Conflict"),e}}async mergeAbort(){await this.exec(["merge","--abort"])}async tag(e){let t=["tag"];t=e.message?[...t,"-a",e.name,"-m",e.message]:[...t,e.name],e.ref&&t.push(e.ref),await this.exec(t)}async deleteTag(e){const t=["tag","-d",e];await this.exec(t)}async addWorktree(e){const t=["worktree","add"];e.branch&&t.push("-b",e.branch),t.push(e.path,e.commitish),await this.exec(t)}async deleteWorktree(e,t){const i=["worktree","remove"];t?.force&&i.push("--force"),i.push(e),await this.exec(i)}async deleteRemoteRef(e,t,i){const n=["push",e,"--delete"];i?.force&&n.push("--force"),n.push(t),await this.exec(n)}async clean(e){const t=(0,f.groupBy)(e.map(_),e=>l.dirname(e)),i=Object.keys(t).map(e=>t[e]),n=new f.Limiter(5),r=[],o=["clean","-f","-q"];for(const e of i)for(const t of(0,f.splitInChunks)(e.map(e=>this.sanitizeRelativePath(e)),b))r.push(n.queue(()=>this.exec([...o,"--",...t])));await Promise.all(r)}async undo(){await this.exec(["clean","-fd"]);try{await this.exec(["checkout","--","."])}catch(e){if(/did not match any file\(s\) known to git\./.test(e.stderr||""))return;throw e}}async reset(e,t=!1){const i=["reset",t?"--hard":"--soft",e];await this.exec(i)}async revert(e,t){let i;i=(await this.exec(["branch"])).stdout?["reset","-q",e]:["rm","--cached","-r"];try{if(t&&t.length>0)for(const e of(0,f.splitInChunks)(t.map(e=>this.sanitizeRelativePath(e)),b))await this.exec([...i,"--",...e]);else await this.exec([...i,"--","."])}catch(e){if(/([^:]+: needs merge\n)+/m.test(e.stdout||""))return;throw e}}async addRemote(e,t){const i=["remote","add",e,t];await this.exec(i)}async removeRemote(e){const t=["remote","remove",e];await this.exec(t)}async renameRemote(e,t){const i=["remote","rename",e,t];await this.exec(i)}async fetch(e={}){const t=["fetch"],i={cancellationToken:e.cancellationToken,env:{GIT_HTTP_USER_AGENT:this.git.userAgent}};e.remote?(t.push(e.remote),e.ref&&t.push(e.ref)):e.all&&t.push("--all"),e.prune&&t.push("--prune"),"number"==typeof e.depth&&t.push(`--depth=${e.depth}`),e.silent&&(i.env.VSCODE_GIT_FETCH_SILENT="true");try{await this.exec(t,i)}catch(e){throw/No remote repository specified\./.test(e.stderr||"")?e.gitErrorCode="NoRemoteRepositorySpecified":/Could not read from remote repository/.test(e.stderr||"")?e.gitErrorCode="RemoteConnectionError":/! \[rejected\].*\(non-fast-forward\)/m.test(e.stderr||"")&&(e.gitErrorCode="BranchFastForwardRejected"),e}}async fetchTags(e){const t=["fetch"],i={env:{GIT_HTTP_USER_AGENT:this.git.userAgent}};t.push(e.remote);for(const i of e.tags)t.push(`refs/tags/${i}:refs/tags/${i}`);e.force&&t.push("--force"),await this.exec(t,i)}async pull(e,t,i,n={}){const r=["pull"];n.tags&&r.push("--tags"),n.unshallow&&r.push("--unshallow"),n.autoStash&&-1!==this._git.compareGitVersionTo("2.27.0")&&r.push("--autostash"),e&&r.push("-r"),t&&i&&(r.push(t),r.push(i));try{await this.exec(r,{cancellationToken:n.cancellationToken,env:{GIT_HTTP_USER_AGENT:this.git.userAgent}})}catch(e){throw/^CONFLICT \([^)]+\): \b/m.test(e.stdout||"")?e.gitErrorCode="Conflict":/Please tell me who you are\./.test(e.stderr||"")?e.gitErrorCode="NoUserNameConfigured":/Could not read from remote repository/.test(e.stderr||"")?e.gitErrorCode="RemoteConnectionError":/Pull(?:ing)? is not possible because you have unmerged files|Cannot pull with rebase: You have unstaged changes|Your local changes to the following files would be overwritten|Please, commit your changes before you can merge/i.test(e.stderr)?(e.stderr=e.stderr.replace(/Cannot pull with rebase: You have unstaged changes/i,"Cannot pull with rebase, you have unstaged changes"),e.gitErrorCode="DirtyWorkTree"):/cannot lock ref|unable to update local ref/i.test(e.stderr||"")?e.gitErrorCode="CantLockRef":/cannot rebase onto multiple branches/i.test(e.stderr||"")?e.gitErrorCode="CantRebaseMultipleBranches":/! \[rejected\].*\(would clobber existing tag\)/m.test(e.stderr||"")&&(e.gitErrorCode="TagConflict"),e}}async rebase(e,t={}){const i=["rebase"];i.push(e);try{await this.exec(i,t)}catch(e){throw/^CONFLICT \([^)]+\): \b/m.test(e.stdout||"")?e.gitErrorCode="Conflict":/cannot rebase onto multiple branches/i.test(e.stderr||"")&&(e.gitErrorCode="CantRebaseMultipleBranches"),e}}async push(e,t,i=!1,n=!1,r,o=!1){const a=["push"];1===r||2===r?(a.push("--force-with-lease"),2===r&&-1!==this._git.compareGitVersionTo("2.30")&&a.push("--force-if-includes")):0===r&&a.push("--force"),i&&a.push("-u"),n&&a.push("--follow-tags"),o&&a.push("--tags"),e&&a.push(e),t&&a.push(t);try{await this.exec(a,{env:{GIT_HTTP_USER_AGENT:this.git.userAgent}})}catch(e){throw/^error: failed to push some refs to\b/m.test(e.stderr||"")?1===r&&/! \[rejected\].*\(stale info\)/m.test(e.stderr||"")?e.gitErrorCode="ForcePushWithLeaseRejected":2===r&&/! \[rejected\].*\(remote ref updated since checkout\)/m.test(e.stderr||"")?e.gitErrorCode="ForcePushWithLeaseIfIncludesRejected":e.gitErrorCode="PushRejected":/Permission.*denied/.test(e.stderr||"")?e.gitErrorCode="PermissionDenied":/Could not read from remote repository/.test(e.stderr||"")?e.gitErrorCode="RemoteConnectionError":/^fatal: The current branch .* has no upstream branch/.test(e.stderr||"")&&(e.gitErrorCode="NoUpstreamBranch"),e}}async cherryPick(e){try{await this.exec(["cherry-pick",e])}catch(e){throw/The previous cherry-pick is now empty, possibly due to conflict resolution./.test(e.stderr??"")?(await this.cherryPickAbort(),e.gitErrorCode="CherryPickEmpty"):e.gitErrorCode="CherryPickConflict",e}}async cherryPickAbort(){await this.exec(["cherry-pick","--abort"])}async blame(e){try{const t=["blame","--",this.sanitizeRelativePath(e)];return(await this.exec(t)).stdout.trim()}catch(e){throw/^fatal: no such path/.test(e.stderr||"")&&(e.gitErrorCode="NoPathFound"),e}}async blame2(e,t){try{const i=["blame","--root","--incremental"];return t&&i.push(t),i.push("--",this.sanitizeRelativePath(e)),function(e){const t=/\r?\n/,i=/^([0-9a-f]{40})/gm,n=new Map;let r,o,a,s,c,l,u;for(const d of e.split(t)){const e=d.match(i);if(!r&&e){const t=d.split(" ");r=e[0],l=Number(t[2]),u=Number(t[2])+Number(t[3])-1}if(r&&d.startsWith("author ")&&(o=d.substring(7)),r&&d.startsWith("author-mail ")&&(a=d.substring(13,d.length-1)),r&&d.startsWith("author-time ")&&(s=1e3*Number(d.substring(12))),r&&d.startsWith("summary ")&&(c=d.substring(8)),r&&l&&u&&d.startsWith("filename ")){const e=n.get(r);e?(e.ranges.push({startLineNumber:l,endLineNumber:u}),n.set(r,e)):n.set(r,{hash:r,authorName:o,authorEmail:a,authorDate:s,subject:c,ranges:[{startLineNumber:l,endLineNumber:u}]}),r=o=a=s=c=l=u=void 0}}return Array.from(n.values())}((await this.exec(i)).stdout.trim())}catch(e){return}}async createStash(e,t,i){try{const n=["stash","push"];t&&n.push("-u"),i&&n.push("-S"),e&&n.push("-m",e),await this.exec(n)}catch(e){throw/No local changes to save/.test(e.stderr||"")&&(e.gitErrorCode="NoLocalChanges"),e}}async popStash(e){await this.popOrApplyStash(["stash","pop"],e)}async applyStash(e){await this.popOrApplyStash(["stash","apply"],e)}async popOrApplyStash(e,t){try{"number"==typeof t&&e.push(`stash@{${t}}`),await this.exec(e)}catch(e){throw/No stash found/.test(e.stderr||"")?e.gitErrorCode="NoStashFound":/error: Your local changes to the following files would be overwritten/.test(e.stderr||"")?e.gitErrorCode="LocalChangesOverwritten":/^CONFLICT/m.test(e.stdout||"")&&(e.gitErrorCode="StashConflict"),e}}async dropStash(e){const t=["stash"];"number"==typeof e?(t.push("drop"),t.push(`stash@{${e}}`)):t.push("clear");try{await this.exec(t)}catch(e){throw/No stash found/.test(e.stderr||"")&&(e.gitErrorCode="NoStashFound"),e}}async showStash(e){const t=["stash","show",`stash@{${e}}`,"--name-status","-z","-u"];try{const e=await this.exec(t);return e.exitCode?[]:$(this.repositoryRoot,e.stdout.trim())}catch(e){if(/No stash found/.test(e.stderr||""))return;throw e}}async getStatus(e){if(e?.cancellationToken&&e?.cancellationToken.isCancellationRequested)throw new y.CancellationError;const t=[],i=["status","-z"];"hidden"===e?.untrackedChanges?i.push("-uno"):i.push("-uall"),e?.ignoreSubmodules&&i.push("--ignore-submodules"),e?.similarityThreshold&&50!==e.similarityThreshold&&-1!==this._git.compareGitVersionTo("2.18.0")&&i.push(`--find-renames=${e.similarityThreshold}%`);const n=this.stream(i,{env:{GIT_OPTIONAL_LOCKS:"0"}});let r=new Promise((t,r)=>{const o=new x,a=e=>{if(0!==e){const t=l.join("");return r(new D({message:"Failed to execute git",stderr:t,exitCode:e,gitErrorCode:P(t),gitCommand:"status",gitArgs:i}))}t({status:o.status,statusLength:o.status.length,didHitLimit:!1})},s=e?.limit??1e4,c=e=>{o.update(e),0!==s&&o.status.length>s&&(n.removeListener("close",a),n.stdout.removeListener("data",c),n.kill(),t({status:o.status.slice(0,s),statusLength:o.status.length,didHitLimit:!0}))};n.stdout.setEncoding("utf8"),n.stdout.on("data",c);const l=[];n.stderr.setEncoding("utf8"),n.stderr.on("data",e=>l.push(e)),n.on("error",S(r)),n.on("close",a)});if(e?.cancellationToken){const i=new Promise((i,r)=>{t.push((0,f.onceEvent)(e.cancellationToken.onCancellationRequested)(()=>{try{n.kill()}catch(e){}r(new y.CancellationError)}))});r=Promise.race([r,i])}try{const{status:e,statusLength:t,didHitLimit:i}=await r;return{status:e,statusLength:t,didHitLimit:i}}finally{(0,f.dispose)(t)}}async getHEADRef(){let e;try{if(e=await this.getHEAD(),e.name){if(e=await this.getBranch(e.name),e&&e.upstream){const t="."!==e.upstream.remote?`refs/remotes/${e.upstream.remote}/${e.upstream.name}`:`refs/heads/${e.upstream.name}`,i=await this.revParse(t);e={...e,upstream:{...e.upstream,commit:i}}}}else if(e.commit){const t=(await this.getRefs({pattern:"refs/tags"})).find(t=>t.commit===e.commit);t&&(e={...e,name:t.name,type:2})}}catch(e){}return e}async getHEAD(){if(!this._isUsingRefTable)try{const e=await this.getHEADFS();if(".invalid"!==e.name)return e;this._isUsingRefTable=!0,this.logger.warn("[Git][getHEAD] Failed to parse HEAD file: Repository is using reftable format.")}catch(e){this.logger.warn(`[Git][getHEAD] Failed to parse HEAD file: ${e.message}`)}try{const e=await this.exec(["symbolic-ref","--short","HEAD"]);if(!e.stdout)throw new Error("Not in a branch");return{name:e.stdout.trim(),commit:void 0,type:0}}catch(e){}const e=await this.exec(["rev-parse","HEAD"]);if(!e.stdout)throw new Error("Error parsing HEAD");return{name:void 0,commit:e.stdout.trim(),type:0}}async getHEADFS(){const e=await c.promises.readFile(l.join(this.dotGit.path,"HEAD"),"utf8"),t=e.match(/^ref: refs\/heads\/(?.*)$/m);if(t?.groups?.name)return{name:t.groups.name,commit:void 0,type:0};const i=e.match(/^(?[0-9a-f]{40})$/m);if(i?.groups?.commit)return{name:void 0,commit:i.groups.commit,type:0};throw new Error(`Unable to parse HEAD file. HEAD file contents: ${e}.`)}async findTrackingBranches(e){return(await this.exec(["for-each-ref","--format","%(refname:short)%00%(upstream:short)","refs/heads"])).stdout.trim().split("\n").map(e=>e.trim().split("\0")).filter(([t,i])=>i===e).map(([e])=>({name:e,type:0}))}async getRefs(e,t){if(t&&t.isCancellationRequested)throw new y.CancellationError;const i=["for-each-ref"];if(e.count&&i.push(`--count=${e.count}`),e.sort&&"alphabetically"!==e.sort&&i.push("--sort",`-${e.sort}`),e.includeCommitDetails){const e=-1!==this._git.compareGitVersionTo("1.9.0")?`${j}%00%(upstream:track)`:j;i.push("--format",e)}else i.push("--format",W);if(e.pattern){const t=Array.isArray(e.pattern)?e.pattern:[e.pattern];for(const e of t)i.push(e.startsWith("refs/")?e:`refs/${e}`)}return e.contains&&i.push("--contains",e.contains),function(e){const t=/^(refs\/[^\0]+)\0([0-9a-f]{40})\0([0-9a-f]{40})?(?:\0(.*))?$/gm,i=/^refs\/heads\/([^ ]+)$/,n=/^refs\/remotes\/([^/]+)\/([^ ]+)$/,r=/^refs\/tags\/([^ ]+)$/,o=/\[(?:ahead ([0-9]+))?[,\s]*(?:behind ([0-9]+))?]|\[gone]/;let a,s,c,l,u,d,m,h,g,p,f,y,v;const w=[];let b,C;for(;b=t.exec(e),null!==b;){[,a,s,c,l]=b,[u,d,g,p,f,y,m,h,v]=l?.split("\0")??[];const e=d||u,t=h||m,k=p||g,R=y||f,S=e&&t&&k&&R?{hash:s,message:t,parents:e.split(" "),authorName:k,commitDate:R?new Date(1e3*Number(R)):void 0}:void 0;if(C=i.exec(a)){const[,e,t]=o.exec(v)??[],i=v?e?Number(e):0:void 0,n=v?t?Number(t):0:void 0;w.push({name:C[1],commit:s,commitDetails:S,ahead:i,behind:n,type:0})}else if(C=n.exec(a)){const e=`${C[1]}/${C[2]}`;w.push({name:e,remote:C[1],commit:s,commitDetails:S,type:1})}else(C=r.exec(a))&&w.push({name:C[1],commit:c??s,commitDetails:S,type:2})}return w}((await this.exec(i,{cancellationToken:t})).stdout)}async getRemoteRefs(e,t){if(t?.cancellationToken&&t?.cancellationToken.isCancellationRequested)throw new y.CancellationError;const i=["ls-remote"];return t?.heads&&i.push("--heads"),t?.tags&&i.push("--tags"),i.push(e),(await this.exec(i,{cancellationToken:t?.cancellationToken})).stdout.split("\n").filter(e=>!!e).map(e=>{let t;return(t=/^([0-9a-f]{40})\trefs\/heads\/([^ ]+)$/.exec(e))?{name:t[1],commit:t[2],type:0}:(t=/^([0-9a-f]{40})\trefs\/tags\/([^ ]+)$/.exec(e))?{name:t[2],commit:t[1],type:2}:null}).filter(e=>!!e)}async getStashes(){return function(e){const t=[];let i,n,r,o,a,s,c;for(;i=U.exec(e),null!==i;)[,n,r,o,a,s,c]=i,t.push({hash:n,parents:r.split(" "),index:parseInt(o),branchName:s.trim(),description:a?`WIP (${c.trim()})`:c.trim()});return t}((await this.exec(["stash","list","--format=%H%n%P%n%gd%n%gs","-z"])).stdout.trim())}async getWorktrees(){return await this.getWorktreesFS()}async getWorktreesFS(){if(!0!==y.workspace.getConfiguration("git",y.Uri.file(this.repositoryRoot)).get("detectWorktrees"))return this.logger.info("[Git][getWorktreesFS] Worktree detection is disabled, skipping worktree detection"),[];try{const e=l.join(this.dotGit.commonPath??this.dotGit.path,"worktrees"),t=await c.promises.readdir(e,{withFileTypes:!0}),i=[];for(const n of t)if(n.isDirectory())try{const t=l.join(e,n.name,"HEAD"),r=(await c.promises.readFile(t,"utf8")).trim(),o=l.join(e,n.name,"gitdir"),a=(await c.promises.readFile(o,"utf8")).trim();i.push({name:n.name,path:a.replace(/\/.git.*$/,""),ref:r.replace(/^ref: /,"")})}catch(e){if(/ENOENT/.test(e.message))continue;throw e}return i}catch(e){if(/ENOENT/.test(e.message)||/ENOTDIR/.test(e.message))return[];throw e}}async getRemotes(){const e=[];try{e.push(...await this.getRemotesFS()),0===e.length&&this.logger.info("[Git][getRemotes] No remotes found in the git config file")}catch(t){this.logger.warn(`[Git][getRemotes] Error: ${t.message}`),e.push(...await this.getRemotesGit())}for(const t of e)t.isReadOnly=void 0===t.pushUrl||"no_push"===t.pushUrl;return e}async getRemotesFS(){return O(await c.promises.readFile(l.join(this.dotGit.commonPath??this.dotGit.path,"config"),"utf8"))}async getRemotesGit(){const e=[],t=(await this.exec(["remote","--verbose"])).stdout.trim().split("\n").filter(e=>!!e);for(const i of t){const t=i.split(/\s/),[n,r,o]=t;let a=e.find(e=>e.name===n);a||(a={name:n,isReadOnly:!1},e.push(a)),/fetch/i.test(o)?a.fetchUrl=r:(/push/i.test(o)||(a.fetchUrl=r),a.pushUrl=r)}return e}async getBranch(e){if("HEAD"===e)return this.getHEAD();const t=["for-each-ref"];let i=!0;-1===this._git.compareGitVersionTo("1.9.0")?(t.push("--format=%(refname)%00%(upstream:short)%00%(objectname)"),i=!1):-1===this._git.compareGitVersionTo("2.16.0")?t.push("--format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)"):t.push("--format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref)"),-1!==this.git.compareGitVersionTo("2.12")&&(f.isWindows||f.isMacintosh)&&t.push("--ignore-case"),/^refs\/(heads|remotes)\//i.test(e)?t.push(e):t.push(`refs/heads/${e}`,`refs/remotes/${e}`);const n=(await this.exec(t)).stdout.trim().split("\n").map(e=>{let[t,i,n,r,o,a]=e.trim().split("\0");if(t.startsWith("refs/heads/")){t=t.substring(11);const e=i.indexOf("/");let s,c;const l=/\[(?:ahead ([0-9]+))?[,\s]*(?:behind ([0-9]+))?]|\[gone]/.exec(r);return l&&([,s,c]=l),{type:0,name:t,upstream:""!==i&&"[gone]"!==r?{name:a?a.substring(11):i.substring(e+1),remote:o||i.substring(0,e)}:void 0,commit:n||void 0,ahead:Number(s)||0,behind:Number(c)||0}}if(t.startsWith("refs/remotes/")){t=t.substring(13);const e=t.indexOf("/");return{type:1,name:t.substring(e+1),remote:t.substring(0,e),commit:n}}}).filter(e=>!!e);if(n.length){const[e]=n;if(!i&&e.upstream)try{const t=await this.exec(["rev-list","--left-right","--count",`${e.name}...${e.upstream.remote}/${e.upstream.name}`]),[i,n]=t.stdout.trim().split("\t");e.ahead=Number(i)||0,e.behind=Number(n)||0}catch{}return e}return this.logger.warn(`[Git][getBranch] No such branch: ${e}`),Promise.reject(new Error(`No such branch: ${e}.`))}async getDefaultBranch(e){const t=await this.exec(["symbolic-ref","--short",`refs/remotes/${e}/HEAD`]);if(!t.stdout||t.stderr)throw new Error("No default branch");return this.getBranch(t.stdout.trim())}stripCommitMessageComments(e){return e.replace(/^\s*#.*$\n?/gm,"").trim()}async getSquashMessage(){const e=l.join(this.repositoryRoot,".git","SQUASH_MSG");try{const t=await c.promises.readFile(e,"utf8");return this.stripCommitMessageComments(t)}catch{return}}async getMergeMessage(){const e=l.join(this.repositoryRoot,".git","MERGE_MSG");try{const t=await c.promises.readFile(e,"utf8");return this.stripCommitMessageComments(t)}catch{return}}async getCommitTemplate(){try{const e=await this.exec(["config","--get","commit.template"]);if(!e.stdout)return"";const t=u.homedir();let i=e.stdout.trim().replace(/^~([^\/]*)\//,(e,i)=>`${i?l.join(l.dirname(t),i):t}/`);l.isAbsolute(i)||(i=l.join(this.repositoryRoot,i));const n=await c.promises.readFile(i,"utf8");return this.stripCommitMessageComments(n)}catch(e){return""}}async getCommit(e){const t=G((await this.exec(["show","-s","--decorate=full","--shortstat",`--format=${I}`,"-z",e,"--"])).stdout);return 0===t.length?Promise.reject("bad commit format"):t[0]}async showChanges(e){try{return(await this.exec(["log","-p","-n1",e,"--"])).stdout.trim()}catch(e){throw/^fatal: bad revision '.+'/.test(e.stderr||"")&&(e.gitErrorCode="BadRevision"),e}}async showChangesBetween(e,t,i){try{const n=["log","-p",`${e}..${t}`,"--"];return i&&n.push(this.sanitizeRelativePath(i)),(await this.exec(n)).stdout.trim()}catch(e){throw/^fatal: bad revision '.+'/.test(e.stderr||"")&&(e.gitErrorCode="BadRevision"),e}}async revList(e,t){const i=await this.exec(["rev-list",`${e}..${t}`]);return i.stderr?[]:i.stdout.trim().split("\n")}async revParse(e){try{return(await c.promises.readFile(l.join(this.dotGit.path,e),"utf8")).trim()}catch(e){this.logger.warn(`[Git][revParse] Unable to read file: ${e.message}`)}try{const t=await this.exec(["rev-parse",e]);if(t.stderr)return;return t.stdout.trim()}catch(e){return}}async updateSubmodules(e){const t=["submodule","update"];for(const i of(0,f.splitInChunks)(e.map(e=>this.sanitizeRelativePath(e)),b))await this.exec([...t,"--",...i])}async getSubmodules(){const e=l.join(this.root,".gitmodules");try{return M(await c.promises.readFile(e,"utf8"))}catch(e){if(/ENOENT/.test(e.message))return[];throw e}}sanitizeRelativePath(e){if(this.logger.trace(`[Git][sanitizeRelativePath] filePath: ${e}`),!l.isAbsolute(e))return e=A(e),this.logger.trace(`[Git][sanitizeRelativePath] relativePath (noop): ${e}`),e;let t;return this.repositoryRootRealPath&&(t=(0,f.relativePathWithNoFallback)(this.repositoryRootRealPath,e),t)?(t=A(t),this.logger.trace(`[Git][sanitizeRelativePath] relativePath (real path): ${t}`),t):(t=(0,f.relativePathWithNoFallback)(this.repositoryRoot,e),t?(t=A(t),this.logger.trace(`[Git][sanitizeRelativePath] relativePath (path): ${t}`),t):(e=A(l.relative(this.repositoryRoot,e)),this.logger.trace(`[Git][sanitizeRelativePath] relativePath (fallback): ${e}`),e))}}t.Repository=z},740:(e,t,i)=>{"use strict";i.r(t),i.d(t,{AnalyticsPluginIdentifier:()=>N,BreezeChannelIdentifier:()=>F,ConfigurationManager:()=>E,ConnectionStringParser:()=>m.F,ContextTagKeys:()=>D.o,CtxTagKeys:()=>I.O,DEFAULT_BREEZE_ENDPOINT:()=>g._G,DEFAULT_BREEZE_PATH:()=>g.wc,Data:()=>R.B,DisabledPropertyName:()=>g.xF,DistributedTracingModes:()=>T.uG,Envelope:()=>p.L,Event:()=>f.J,EventPersistence:()=>T.iD,Exception:()=>y.WJ,Extensions:()=>I.F,HttpMethod:()=>g.ym,Metric:()=>v.J,PageView:()=>w.h,PageViewPerformance:()=>k.H,ProcessLegacy:()=>g.jp,PropertiesPluginIdentifier:()=>H,RemoteDependencyData:()=>b.A,RequestHeaders:()=>h.a,SampleRate:()=>g.tU,SeverityLevel:()=>S.O,TelemetryItemCreator:()=>A,ThrottleMgr:()=>d,Trace:()=>C.C,correlationIdCanIncludeCorrelationHeader:()=>n.Rs,correlationIdGetCorrelationContext:()=>n.pg,correlationIdGetCorrelationContextValue:()=>n.mD,correlationIdGetPrefix:()=>n.mp,correlationIdSetPrefix:()=>n.Wt,createDistributedTraceContextFromTrace:()=>n.Ft,createDomEvent:()=>B,createOfflineListener:()=>L.G,createTelemetryItem:()=>_,createTraceParent:()=>O.wk,dataSanitizeException:()=>P.Vt,dataSanitizeId:()=>P.HQ,dataSanitizeInput:()=>P._T,dataSanitizeKey:()=>P.lq,dataSanitizeKeyAndAddUniqueness:()=>P.zx,dataSanitizeMeasurements:()=>P.Vj,dataSanitizeMessage:()=>P.Vk,dataSanitizeProperties:()=>P.xP,dataSanitizeString:()=>P.Rr,dataSanitizeUrl:()=>P.pJ,dateTimeUtilsDuration:()=>n.jj,dateTimeUtilsNow:()=>n.lt,dsPadNumber:()=>P.qW,findAllScripts:()=>O.V5,findW3cTraceParent:()=>O.ef,formatTraceParent:()=>O.L0,getExtensionByName:()=>x.Y8,isBeaconApiSupported:()=>M.Uf,isCrossOriginError:()=>x.vv,isInternalApplicationInsightsEndpoint:()=>n.Qu,isSampledFlag:()=>O.N7,isValidSpanId:()=>O.wN,isValidTraceId:()=>O.hX,isValidTraceParent:()=>O.mJ,msToTimeSpan:()=>x.bb,parseConnectionString:()=>m.H,parseTraceParent:()=>O.ZI,strNotSpecified:()=>g.R2,stringToBoolOrDefault:()=>x.Dt,urlGetAbsoluteUrl:()=>G.wX,urlGetCompleteUrl:()=>G.k6,urlGetPathName:()=>G.Gz,urlParseFullHost:()=>G.M0,urlParseHost:()=>G.PS,urlParseUrl:()=>G.cM,utlCanUseLocalStorage:()=>l.BW,utlCanUseSessionStorage:()=>l.AN,utlDisableStorage:()=>l.Nu,utlEnableStorage:()=>l.iw,utlGetLocalStorage:()=>l.Se,utlGetSessionStorage:()=>l.vH,utlGetSessionStorageKeys:()=>l.T9,utlRemoveSessionStorage:()=>l.v7,utlRemoveStorage:()=>l.tm,utlSetLocalStorage:()=>l._M,utlSetSessionStorage:()=>l.Dt,utlSetStoragePrefix:()=>l.vh});var n=i(2318),r=i(269),o=i(3775),a=i(3673),s=i(9749),c=i(6535),l=i(4658),u=i(5130),d=function(e,t){var i,n,d,m,h,g,p,f=this,y=!1,v=!1;function w(e,t,r,o){if(y){var a=function(e){try{var t=b(e);return(0,c.Z1)(1e6)<=t.limit.samplingRate}catch(e){}return!1}(e);if(!a)return;var s=b(e),l=_(e),d=k(s,i,l),m=!1,g=0,p=A(e);try{d&&!p?(g=Math.min(s.limit.maxSendNumber,l[u.F2]+1),l[u.F2]=0,m=!0,h[e]=!0,l[u.Jm]=new Date):(h[e]=d,l[u.F2]+=1);var f=R(e);E(n,f,l);for(var v=0;v0,l[u.zw]=(a=null===(o=(o=m)||{})||void 0===o?void 0:o.monthInterval,s=null==o?void 0:o.dayInterval,(0,r.hXl)(a)&&(0,r.hXl)(s)&&(o.monthInterval=3,v||(o[u.i9]=[28],v=!0)),o={monthInterval:null==o?void 0:o.monthInterval,dayInterval:null==o?void 0:o.dayInterval,daysOfMonth:null==o?void 0:o.daysOfMonth});var h={samplingRate:(null===(i=c.limit)||void 0===i?void 0:i.samplingRate)||100,maxSendNumber:(null===(n=c.limit)||void 0===n?void 0:n.maxSendNumber)||1};l.limit=h,d[e]=l}catch(e){}}function k(e,t,i){if(e&&!e[u.Cx]&&t&&(0,a.Gh)(i)){var n=S(),o=i[u.C9],s=e[u.zw],c=1;if(null==s?void 0:s.monthInterval){var l=12*(n.getUTCFullYear()-o.getUTCFullYear())+n.getUTCMonth()-o.getUTCMonth();c=D(s.monthInterval,0,l)}var d=1;if(v)d=(0,r.rDm)(s[u.i9],n[u.$e]());else if(null==s?void 0:s.dayInterval){var m=Math.floor((n.getTime()-o.getTime())/864e5);d=D(s.dayInterval,0,m)}return c>=0&&d>=0}return!1}function R(e,t){var i=(0,a.Gh)(t)?t:"";return e?"appInsightsThrottle"+i+"-"+e:null}function S(e){try{if(!e)return new Date;var t=new Date(e);if(!isNaN(t.getDate()))return t}catch(e){}return null}function E(e,t,i){try{return(0,l._M)(e,t,(0,r.EHq)(JSON[u.Jj](i)))}catch(e){}return!1}function D(e,t,i){return e<=0?1:i>=t&&(i-t)%e==0?Math.floor((i-t)/e)+1:-1}function P(e,t,i,n){(0,o.ZP)(t,n||1,e,i)}function _(e){try{var t=m[e];if(!t){var i=R(e,g);t=function(e,t,i){try{var n={date:S(),count:0};if(e){var r=JSON.parse(e);return{date:S(r[u.C9])||n[u.C9],count:r[u.F2]||n[u.F2],preTriggerDate:r.preTriggerDate?S(r[u.Jm]):void 0}}return E(t,i,n),n}catch(e){}return null}((0,l.Se)(n,i),n,i),m[e]=t}return m[e]}catch(e){}return null}function A(e){var t=h[e];if((0,r.hXl)(t)){t=!1;var i=_(e);i&&(t=function(e){try{if(e){var t=new Date;return e.getUTCFullYear()===t.getUTCFullYear()&&e.getUTCMonth()===t.getUTCMonth()&&e[u.$e]()===t[u.$e]()}}catch(e){}return!1}(i[u.Jm])),h[e]=t}return h[e]}function I(e){return p=p||{},(0,r.hXl)(p[e])&&(p[e]=[]),p[e]}n=(0,o.y0)(e),h={},m={},p={},d={},C(109),g=(0,a.Gh)(t)?t:"",e.addUnloadHook((0,s.a)(e.config,function(e){var t=e.cfg;i=(0,l.BW)();var n=t.throttleMgrCfg||{};(0,r.zav)(n,function(e,t){C(parseInt(e),t)})})),f._getDbgPlgTargets=function(){return[p]},f.getConfig=function(){return d},f.canThrottle=function(e){var t=_(e);return k(b(e),i,t)},f.isTriggered=function(e){return A(e)},f.isReady=function(){return y},f.flush=function(e){try{var t=I(e);if(t&&t[u.oI]>0){var i=t.slice(0);return p[e]=[],(0,r.Iuo)(i,function(e){w(e.msgID,e[u.pM],e.severity,!1)}),!0}}catch(e){}return!1},f.flushAll=function(){try{if(p){var e=!0;return(0,r.zav)(p,function(t){var i=f.flush(parseInt(t));e=e&&i}),e}}catch(e){}return!1},f.onReadyState=function(e,t){return void 0===t&&(t=!0),(y=!!(0,r.hXl)(e)||e)&&t?f.flushAll():null},f.sendMessage=function(e,t,i){return w(e,t,i,!0)}},m=i(4484),h=i(2910),g=i(5025),p=i(1062),f=i(3072),y=i(5397),v=i(5014),w=i(1448),b=i(1365),C=i(2445),k=i(4164),R=i(7358),S=i(9762),E=function(){function e(){}return e.getConfig=function(e,t,i,n){var o;return void 0===n&&(n=!1),o=i&&e[u.up]&&e[u.up][i]&&!(0,r.hXl)(e[u.up][i][t])?e[u.up][i][t]:e[t],(0,r.hXl)(o)?n:o},e}(),D=i(8596),P=i(7975);function _(e,t,i,n,o,s){var c;i=(0,P.Rr)(n,i)||g.R2,((0,r.hXl)(e)||(0,r.hXl)(t)||(0,r.hXl)(i))&&(0,r.$8)("Input doesn't contain all required fields");var l="";e[g.ks]&&(l=e[g.ks],delete e[g.ks]);var d=((c={})[u.RS]=i,c.time=(0,a._u)(new Date),c.iKey=l,c.ext=s||{},c.tags=[],c.data={},c.baseType=t,c.baseData=e,c);return(0,r.hXl)(o)||(0,r.zav)(o,function(e,t){d.data[e]=t}),d}var A=function(){function e(){}return e.create=_,e}(),I=i(1575),T=i(7374),x=i(87),M=i(7292),O=i(1864);function B(e){var t=null;if((0,r.Tnt)(Event))t=new Event(e);else{var i=(0,r.YEm)();i&&i.createEvent&&(t=i.createEvent("Event")).initEvent(e,!0,!0)}return t}var G=i(9354),L=i(5571),H="AppInsightsPropertiesPlugin",F="AppInsightsChannelPlugin",N="ApplicationInsightsAnalytics"},836:(e,t,i)=>{"use strict";i.d(t,{P:()=>a});var n=i(269),r=i(6182),o=i(3775);function a(){var e=[];return{add:function(t){t&&e[r.y5](t)},run:function(t,i){(0,n.Iuo)(e,function(e){try{e(t,i)}catch(e){(0,o.ZP)(t[r.e4](),2,73,"Unexpected error calling unload handler - "+(0,n.mmD)(e))}}),e=[]}}}},842:(e,t,i)=>{"use strict";i.r(t),i.d(t,{isexe:()=>p,posix:()=>n,sync:()=>f,win32:()=>r});var n={};i.r(n),i.d(n,{isexe:()=>s,sync:()=>c});var r={};i.r(r),i.d(r,{isexe:()=>d,sync:()=>m});var o=i(9896);const a=require("fs/promises"),s=async(e,t={})=>{const{ignoreErrors:i=!1}=t;try{return l(await(0,a.stat)(e),t)}catch(e){const t=e;if(i||"EACCES"===t.code)return!1;throw t}},c=(e,t={})=>{const{ignoreErrors:i=!1}=t;try{return l((0,o.statSync)(e),t)}catch(e){const t=e;if(i||"EACCES"===t.code)return!1;throw t}},l=(e,t)=>e.isFile()&&u(e,t),u=(e,t)=>{const i=t.uid??process.getuid?.(),n=t.groups??process.getgroups?.()??[],r=t.gid??process.getgid?.()??n[0];if(void 0===i||void 0===r)throw new Error("cannot get uid or gid");const o=new Set([r,...n]),a=e.mode,s=e.uid,c=e.gid,l=parseInt("100",8),u=parseInt("010",8),d=l|u;return!!(a&parseInt("001",8)||a&u&&o.has(c)||a&l&&s===i||a&d&&0===i)},d=async(e,t={})=>{const{ignoreErrors:i=!1}=t;try{return h(await(0,a.stat)(e),e,t)}catch(e){const t=e;if(i||"EACCES"===t.code)return!1;throw t}},m=(e,t={})=>{const{ignoreErrors:i=!1}=t;try{return h((0,o.statSync)(e),e,t)}catch(e){const t=e;if(i||"EACCES"===t.code)return!1;throw t}},h=(e,t,i)=>e.isFile()&&((e,t)=>{const{pathExt:i=process.env.PATHEXT||""}=t,n=i.split(";");if(-1!==n.indexOf(""))return!0;for(let t=0;t{"use strict";i.d(t,{v:()=>g});var n=i(8279),r=i(8205),o=i(269),a=i(6182),s=i(7847),c=i(3775),l=i(7292),u=i(3673),d="",m="&NoResponseBody=true",h="POST",g=function(){function e(){var t,i,g,p,f,y,v,w,b,C,k,R,S,E,D=0;(0,n.A)(e,this,function(e,n){var P=!0;function _(e,t){(0,c.ZP)(g,2,26,"Failed to send telemetry.",{message:e}),I(t,400,{})}function A(e){_("No endpoint url is provided for the batch",e)}function I(e,t,i,n){try{e&&e(t,i,n)}catch(e){}}function T(e,t){var i=(0,o.w3n)(),n=e[a.Vq];if(!n)return A(t),!0;n=e[a.Vq]+(S?m:d);var r=e[a.Cd],s=p?r:new Blob([r],{type:"text/plain;charset=UTF-8"});return i.sendBeacon(n,s)}function x(e,t,i){var n=e[a.Cd];try{if(n)if(T(e,t))I(t,200,{},d);else{var r=f&&f.beaconOnRetry;r&&(0,o.Tnt)(r)?r(e,t,T):(w&&w[a.L](e,t,!0),(0,c.ZP)(g,2,40,". Failed to send telemetry with Beacon API, retried with normal sender."))}}catch(e){p&&(0,c.OG)(g,"Failed to send telemetry using sendBeacon API. Ex:"+(0,o.mmD)(e)),I(t,p?0:400,{},d)}}function M(e,i,n){var s,c,l,m=e[a.c1]||{};!n&&t&&(s=(0,r.Qo)(function(e,t){c=e,l=t})),p&&n&&e.disableXhrSync&&(n=!1);var g=e[a.Vq];if(!g)return A(i),void(c&&c(!1));var y=(0,u.H$)(h,g,P,!0,n,e[a.do]);function v(t){var n=f&&f.xhrOnComplete;if(n&&(0,o.Tnt)(n))n(t,i,e);else{var r=(0,u.Lo)(t);I(i,t[a.cV],(0,u.w3)(t,p),r)}}return p||y[a.yy]("Content-type","application/json"),(0,o.Iuo)((0,o.cGk)(m),function(e){y[a.yy](e,m[e])}),y.onreadystatechange=function(){p||(v(y),4===y.readyState&&c&&c(!0))},y.onload=function(){p&&v(y)},y.onerror=function(e){I(i,p?y[a.cV]:400,(0,u.w3)(y,p),p?d:(0,u.r4)(y)),l&&l(e)},y.ontimeout=function(){I(i,p?y[a.cV]:500,(0,u.w3)(y,p),p?d:(0,u.r4)(y)),c&&c(!1)},y.send(e[a.Cd]),s}function O(e,i,n){var c,l,u,g,y=e[a.Vq],w=e[a.Cd],b=p?w:new Blob([w],{type:"application/json"}),C=new Headers,k=w[a.oI],R=!1,_=!1,T=e[a.c1]||{},x=((c={method:h,body:b})[s.x]=!0,c);e.headers&&(0,o.cGk)(e.headers)[a.oI]>0&&((0,o.Iuo)((0,o.cGk)(T),function(e){C.append(e,T[e])}),x[a.c1]=C),v?x.credentials=v:P&&p&&(x.credentials="include"),n&&(x.keepalive=!0,D+=k,p?2===e._sendReason&&(R=!0,S&&(y+=m)):R=!0);var M=new Request(y,x);try{M[s.x]=!0}catch(e){}if(!n&&t&&(l=(0,r.Qo)(function(e,t){u=e,g=t})),!y)return A(i),void(u&&u(!1));function O(e){I(i,p?0:400,{},p?d:e)}function B(e,t,n){var r=e[a.cV],s=f.fetchOnComplete;s&&(0,o.Tnt)(s)?s(e,i,n||d,t):I(i,r,{},n||d)}try{(0,r.Dv)(fetch(p?y:M,p?x:null),function(t){if(n&&(D-=k,k=0),!_)if(_=!0,t.rejected)O(t.reason&&t.reason[a.pM]),g&&g(t.reason);else{var i=t[a.pF];try{p||i.ok?p&&!i.body?(B(i,null,d),u&&u(!0)):(0,r.Dv)(i.text(),function(t){B(i,e,t[a.pF]),u&&u(!0)}):(O(i.statusText),u&&u(!1))}catch(e){O((0,o.mmD)(e)),g&&g(e)}}})}catch(e){_||(O((0,o.mmD)(e)),g&&g(e))}return R&&!_&&(_=!0,I(i,200,{}),u&&u(!0)),p&&!_&&e[a.do]>0&&E&&E.set(function(){_||(_=!0,I(i,500,{}),u&&u(!0))},e[a.do]),l}function B(e,t,i){var n=(0,o.zkX)(),r=new XDomainRequest,s=e[a.Cd];r.onload=function(){var i=(0,u.Lo)(r),n=f&&f.xdrOnComplete;n&&(0,o.Tnt)(n)?n(r,t,e):I(t,200,{},i)},r.onerror=function(){I(t,400,{},p?d:(0,u.HU)(r))},r.ontimeout=function(){I(t,500,{})},r.onprogress=function(){};var l=n&&n.location&&n.location[a.Qg]||"",m=e[a.Vq];if(m){if(!p&&0!==m.lastIndexOf(l,0)){var y="Cannot send XDomain request. The endpoint URL protocol doesn't match the hosting page protocol.";return(0,c.ZP)(g,2,40,". "+y),void _(y,t)}var v=p?m:m[a.W7](/^(https?:)/,"");r.open(h,v),e[a.do]&&(r[a.do]=e[a.do]),r.send(s),p&&i?E&&E.set(function(){r.send(s)},0):r.send(s)}else A(t)}function G(){D=0,i=!1,t=!1,g=null,p=null,f=null,y=null,v=null,w=null,b=!1,C=!1,k=!1,R=!1,S=!1,E=null}G(),e[a.mE]=function(t,n){g=n,i&&(0,c.ZP)(g,1,28,"Sender is already initialized"),e.SetConfig(t),i=!0},e._getDbgPlgTargets=function(){return[i,p,y,t]},e.SetConfig=function(e){try{if(f=e.senderOnCompleteCallBack||{},y=!!e.disableCredentials,v=e.fetchCredentials,p=!!e.isOneDs,t=!!e.enableSendPromise,b=!!e.disableXhr,C=!!e.disableBeacon,k=!!e.disableBeaconSync,E=e.timeWrapper,S=!!e.addNoResponse,R=!!e.disableFetchKeepAlive,w={sendPOST:M},p||(P=!1),y){var i=(0,l.g$)();i&&i.protocol&&"file:"===i.protocol[a.OL]()&&(P=!1)}return!0}catch(e){}return!1},e.getSyncFetchPayload=function(){return D},e.getSenderInst=function(e,t){return e&&e[a.oI]?function(e,t){for(var i,n=0,r=null,o=0;null==r&&o{"use strict";e.exports=require("os")},937:(e,t,i)=>{"use strict";i.d(t,{S:()=>r,_0:()=>a,hj:()=>o,m5:()=>n});var n="",r="https://browser.events.data.microsoft.com/OneCollector/1.0/",o="version",a="properties"},956:(e,t,i)=>{"use strict";i.r(t),i.d(t,{ActiveStatus:()=>_.f,AppInsightsCore:()=>g,BaseTelemetryPlugin:()=>E.s,DiagnosticLogger:()=>c.wq,EventLatency:()=>y,EventPersistence:()=>w,EventPropertyType:()=>v,EventsDiscardedReason:()=>P.x,FullVersionString:()=>d.xE,InternalAppInsightsCore:()=>l._,LoggingSeverity:()=>R,MinChannelPriorty:()=>k,NotificationManager:()=>S.h,PerfEvent:()=>a.Q6,PerfManager:()=>a.NS,ProcessTelemetryContext:()=>D.W0,SenderPostManager:()=>N.v,TraceLevel:()=>b,Undefined:()=>O.bA,ValueKind:()=>f,ValueSanitizer:()=>C,Version:()=>d.Rx,_InternalLogMessage:()=>c.WD,__getRegisteredEvents:()=>A.El,_appendHeader:()=>I.LU,_getAllResponseHeaders:()=>I.w3,_logInternalMessage:()=>c.Oc,_testHookMaxUnloadHooksCb:()=>$.d,_throwInternal:()=>c.ZP,_warnToConsole:()=>c.OG,addEventHandler:()=>A.So,addEventListeners:()=>A.lQ,addPageHideEventListener:()=>A.Fc,addPageShowEventListener:()=>A.oS,addPageUnloadEventListener:()=>A.ee,areCookiesSupported:()=>B.gi,arrForEach:()=>o.Iuo,arrIndexOf:()=>o.rDm,arrMap:()=>o.W$7,arrReduce:()=>o.KTd,attachEvent:()=>A.Q3,blockDynamicConversion:()=>F.V9,convertAllHeadersToMap:()=>I.IL,cookieAvailable:()=>B.gi,createCookieMgr:()=>B.xN,createDynamicConfig:()=>s.e,createEnumStyle:()=>p.H,createGuid:()=>d.gj,createProcessTelemetryContext:()=>D.i8,createTraceParent:()=>H.wk,createUniqueNamespace:()=>G.Z,createUnloadHandlerContainer:()=>L.P,dateNow:()=>o.f0d,detachEvent:()=>A.Ym,disallowsSameSiteNone:()=>B.It,doPerf:()=>a.r2,dumpObj:()=>o.mmD,eventOff:()=>A.ML,eventOn:()=>A.mB,extend:()=>d.X$,findW3cTraceParent:()=>H.ef,forceDynamicConversion:()=>F.Hf,formatErrorMessageXdr:()=>I.HU,formatErrorMessageXhr:()=>I.r4,formatTraceParent:()=>H.L0,generateW3CId:()=>T.cL,getCommonSchemaMetaData:()=>d.Go,getConsole:()=>M.U5,getCookieValue:()=>d.UM,getCrypto:()=>M.MY,getDocument:()=>o.YEm,getDynamicConfigHandler:()=>F.QA,getExceptionName:()=>I.lL,getFieldValueType:()=>d.cq,getGlobal:()=>o.mS$,getGlobalInst:()=>o.zS2,getHistory:()=>o.JKf,getIEVersion:()=>M.L0,getISOString:()=>I._u,getJSON:()=>M.hm,getLocation:()=>M.g$,getMsCrypto:()=>M.iN,getNavigator:()=>o.w3n,getPerformance:()=>o.FJj,getResponseText:()=>I.Lo,getSetValue:()=>I.c2,getTenantId:()=>d.EO,getTime:()=>d.WB,getWindow:()=>o.zkX,hasDocument:()=>o.Wtk,hasHistory:()=>o.twz,hasJSON:()=>M.Z,hasNavigator:()=>o.w9M,hasOwnProperty:()=>o.v0u,hasWindow:()=>o.Vdv,isArray:()=>o.cyL,isArrayValid:()=>d.wJ,isBeaconsSupported:()=>M.Uf,isBoolean:()=>o.Lmq,isChromium:()=>d.F2,isDate:()=>o.$PY,isDocumentObjectAvailable:()=>d.g8,isError:()=>o.bJ7,isFetchSupported:()=>M.R7,isFunction:()=>o.Tnt,isGreaterThanZero:()=>d.ei,isIE:()=>M.lT,isLatency:()=>d.Hh,isNotTruthy:()=>o.woc,isNullOrUndefined:()=>o.hXl,isNumber:()=>o.EtT,isObject:()=>o.Gvm,isReactNative:()=>M.lV,isSampledFlag:()=>H.N7,isString:()=>o.KgX,isTruthy:()=>o.zzB,isTypeof:()=>o.Edw,isUint8ArrayAvailable:()=>d.h3,isUndefined:()=>o.b07,isValidSpanId:()=>H.wN,isValidTraceId:()=>H.hX,isValidTraceParent:()=>H.mJ,isValueAssigned:()=>d.yD,isValueKind:()=>d.m0,isWindowObjectAvailable:()=>d.P$,isXhrSupported:()=>M.xk,mergeEvtNamespace:()=>A.Hm,newGuid:()=>T.aq,newId:()=>x.Si,normalizeJsName:()=>I.cH,objDefineAccessors:()=>o.raO,objForEachKey:()=>o.zav,objFreeze:()=>o.N6t,objKeys:()=>o.cGk,objSeal:()=>o.jsL,onConfigChange:()=>s.a,openXhr:()=>d.H$,optimizeObject:()=>I.hW,parseResponse:()=>U.x,parseTraceParent:()=>H.ZI,perfNow:()=>o.UUD,prependTransports:()=>I.jL,proxyAssign:()=>I.qz,proxyFunctionAs:()=>I.RF,proxyFunctions:()=>I.o$,random32:()=>x.VN,randomValue:()=>x.Z1,removeEventHandler:()=>A.zh,removeEventListeners:()=>A.Wg,removePageHideEventListener:()=>A.sq,removePageShowEventListener:()=>A.vF,removePageUnloadEventListener:()=>A.Ds,safeGetCookieMgr:()=>B.um,safeGetLogger:()=>c.y0,sanitizeProperty:()=>d.TC,setEnableEnvMocks:()=>M.cU,setProcessTelemetryTimings:()=>d.u9,setValue:()=>I.KY,strContains:()=>I.Ju,strEndsWith:()=>o.Cv9,strFunction:()=>O.hW,strObject:()=>O._1,strPrototype:()=>O.vR,strStartsWith:()=>o.tGl,strTrim:()=>o.EHq,strUndefined:()=>O.bA,throwError:()=>o.$8,toISOString:()=>I._u,useXDomainRequest:()=>M.PV});var n=i(659),r=i(8279),o=i(269),a=i(8156),s=i(9749),c=i(3775),l=i(2774),u=i(937),d=i(4822),m=i(1739),h=(0,o.ZHX)({endpointUrl:u.S,propertyStorageOverride:{isVal:function(e){return!e||e.getProperty&&e.setProperty||(0,o.$8)("Invalid property storage override passed."),!0}}}),g=function(e){function t(){var i=e.call(this)||this;return(0,r.A)(t,i,function(e,t){e[m.mE]=function(i,n,r,l){(0,a.r2)(e,function(){return"AppInsightsCore.initialize"},function(){try{t[m.mE]((0,s.e)(i,h,r||e[m.Uw],!1).cfg,n,r,l)}catch(t){var a=e[m.Uw],u=(0,o.mmD)(t);-1!==u[m.Sj]("channels")&&(u+="\n - Channels must be provided through config.channels only!"),(0,c.ZP)(a,1,514,"SDK Initialization Failed - no telemetry will be sent: "+u)}},function(){return{config:i,extensions:n,logger:r,notificationManager:l}})},e.track=function(i){(0,a.r2)(e,function(){return"AppInsightsCore.track"},function(){var n=i;if(n){n[m.dg]=n[m.dg]||{},n[m.dg].trackStart=(0,d.WB)(),(0,d.Hh)(n.latency)||(n.latency=1);var r=n.ext=n.ext||{};r.sdk=r.sdk||{},r.sdk.ver=d.xE;var o=n.baseData=n.baseData||{};o[u._0]=o[u._0]||{};var a=o[u._0];a[u.hj]=a[u.hj]||e.pluginVersionString||u.m5}t.track(n)},function(){return{item:i}},!i.sync)},e[m.h4]=function(e){return t[m.h4](e||"InternalLog")}}),i}return(0,n.qU)(t,e),t.__ieDyn=1,t}(l._),p=i(4282),f=(0,p.H)({NotSet:0,Pii_DistinguishedName:1,Pii_GenericData:2,Pii_IPV4Address:3,Pii_IPv6Address:4,Pii_MailSubject:5,Pii_PhoneNumber:6,Pii_QueryString:7,Pii_SipAddress:8,Pii_SmtpAddress:9,Pii_Identity:10,Pii_Uri:11,Pii_Fqdn:12,Pii_IPV4AddressLegacy:13,Pii_IPv6ScrubLastHextets:14,Pii_DropValue:15,CustomerContent_GenericContent:32}),y=(0,p.H)({Normal:1,CostDeferred:2,RealTime:3,Immediate:4}),v=(0,p.H)({Unspecified:0,String:1,Int32:2,UInt32:3,Int64:4,UInt64:5,Double:6,Bool:7,Guid:8,DateTime:9}),w=(0,p.H)({Normal:1,Critical:2}),b=(0,p.H)({NONE:0,ERROR:1,WARNING:2,INFORMATION:3}),C=function(){function e(e){var t=this,i={},n=[],r=[];function a(e,t){var a,s=i[e];if(s&&(a=s[t]),!a&&null!==a){if((0,o.KgX)(e)&&(0,o.KgX)(t))if(r[m.oI]>0){for(var c=0;c{"use strict";i.d(t,{q:()=>c});var n=i(269),r=i(6182);function o(e){return e&&(0,n.Gvm)(e)&&(e.isVal||e.fb||(0,n.KhI)(e,"v")||(0,n.KhI)(e,"mrg")||(0,n.KhI)(e,"ref")||e.set)}function a(e,t,i){var o,a=i.dfVal||n.O9V;if(t&&i.fb){var s=i.fb;(0,n.cyL)(s)||(s=[s]);for(var c=0;c{"use strict";i.d(t,{L:()=>s});var n=i(3673),r=i(5025),o=i(5130),a=i(7975),s=function(e,t,i){var s=this,c=this;c.ver=1,c.sampleRate=100,c.tags={},c[o.RS]=(0,a.Rr)(e,i)||r.R2,c.data=t,c.time=(0,n._u)(new Date),c.aiDataContract={time:1,iKey:1,name:1,sampleRate:function(){return 100===s.sampleRate?4:1},tags:1,data:1}}},1154:(e,t,i)=>{"use strict";const n=i(3940),r=i(280),{MAX_LENGTH:o,POSIX_REGEX_SOURCE:a,REGEX_NON_SPECIAL_CHARS:s,REGEX_SPECIAL_CHARS_BACKREF:c,REPLACEMENTS:l}=n,u=(e,t)=>{if("function"==typeof t.expandRange)return t.expandRange(...e,t);e.sort();const i=`[${e.join("-")}]`;try{new RegExp(i)}catch(t){return e.map(e=>r.escapeRegex(e)).join("..")}return i},d=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,m=(e,t)=>{if("string"!=typeof e)throw new TypeError("Expected a string");e=l[e]||e;const i={...t},h="number"==typeof i.maxLength?Math.min(o,i.maxLength):o;let g=e.length;if(g>h)throw new SyntaxError(`Input length: ${g}, exceeds maximum allowed length: ${h}`);const p={type:"bos",value:"",output:i.prepend||""},f=[p],y=i.capture?"":"?:",v=r.isWindows(t),w=n.globChars(v),b=n.extglobChars(w),{DOT_LITERAL:C,PLUS_LITERAL:k,SLASH_LITERAL:R,ONE_CHAR:S,DOTS_SLASH:E,NO_DOT:D,NO_DOT_SLASH:P,NO_DOTS_SLASH:_,QMARK:A,QMARK_NO_DOT:I,STAR:T,START_ANCHOR:x}=w,M=e=>`(${y}(?:(?!${x}${e.dot?E:C}).)*?)`,O=i.dot?"":D,B=i.dot?A:I;let G=!0===i.bash?M(i):T;i.capture&&(G=`(${G})`),"boolean"==typeof i.noext&&(i.noextglob=i.noext);const L={input:e,index:-1,start:0,dot:!0===i.dot,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:f};e=r.removePrefix(e,L),g=e.length;const H=[],F=[],N=[];let U,$=p;const W=()=>L.index===g-1,j=L.peek=(t=1)=>e[L.index+t],z=L.advance=()=>e[++L.index]||"",K=()=>e.slice(L.index+1),V=(e="",t=0)=>{L.consumed+=e,L.index+=t},J=e=>{L.output+=null!=e.output?e.output:e.value,V(e.value)},q=()=>{let e=1;for(;"!"===j()&&("("!==j(2)||"?"===j(3));)z(),L.start++,e++;return e%2!=0&&(L.negated=!0,L.start++,!0)},X=e=>{L[e]++,N.push(e)},Z=e=>{L[e]--,N.pop()},Y=e=>{if("globstar"===$.type){const t=L.braces>0&&("comma"===e.type||"brace"===e.type),i=!0===e.extglob||H.length&&("pipe"===e.type||"paren"===e.type);"slash"===e.type||"paren"===e.type||t||i||(L.output=L.output.slice(0,-$.output.length),$.type="star",$.value="*",$.output=G,L.output+=$.output)}if(H.length&&"paren"!==e.type&&(H[H.length-1].inner+=e.value),(e.value||e.output)&&J(e),$&&"text"===$.type&&"text"===e.type)return $.value+=e.value,void($.output=($.output||"")+e.value);e.prev=$,f.push(e),$=e},Q=(e,t)=>{const n={...b[t],conditions:1,inner:""};n.prev=$,n.parens=L.parens,n.output=L.output;const r=(i.capture?"(":"")+n.open;X("parens"),Y({type:e,value:t,output:L.output?"":S}),Y({type:"paren",extglob:!0,value:z(),output:r}),H.push(n)},ee=e=>{let n,r=e.close+(i.capture?")":"");if("negate"===e.type){let o=G;if(e.inner&&e.inner.length>1&&e.inner.includes("/")&&(o=M(i)),(o!==G||W()||/^\)+$/.test(K()))&&(r=e.close=`)$))${o}`),e.inner.includes("*")&&(n=K())&&/^\.[^\\/.]+$/.test(n)){const i=m(n,{...t,fastpaths:!1}).output;r=e.close=`)${i})${o})`}"bos"===e.prev.type&&(L.negatedExtglob=!0)}Y({type:"paren",extglob:!0,value:U,output:r}),Z("parens")};if(!1!==i.fastpaths&&!/(^[*!]|[/()[\]{}"])/.test(e)){let n=!1,o=e.replace(c,(e,t,i,r,o,a)=>"\\"===r?(n=!0,e):"?"===r?t?t+r+(o?A.repeat(o.length):""):0===a?B+(o?A.repeat(o.length):""):A.repeat(i.length):"."===r?C.repeat(i.length):"*"===r?t?t+r+(o?G:""):G:t?e:`\\${e}`);return!0===n&&(o=!0===i.unescape?o.replace(/\\/g,""):o.replace(/\\+/g,e=>e.length%2==0?"\\\\":e?"\\":"")),o===e&&!0===i.contains?(L.output=e,L):(L.output=r.wrapOutput(o,L,t),L)}for(;!W();){if(U=z(),"\0"===U)continue;if("\\"===U){const e=j();if("/"===e&&!0!==i.bash)continue;if("."===e||";"===e)continue;if(!e){U+="\\",Y({type:"text",value:U});continue}const t=/^\\+/.exec(K());let n=0;if(t&&t[0].length>2&&(n=t[0].length,L.index+=n,n%2!=0&&(U+="\\")),!0===i.unescape?U=z():U+=z(),0===L.brackets){Y({type:"text",value:U});continue}}if(L.brackets>0&&("]"!==U||"["===$.value||"[^"===$.value)){if(!1!==i.posix&&":"===U){const e=$.value.slice(1);if(e.includes("[")&&($.posix=!0,e.includes(":"))){const e=$.value.lastIndexOf("["),t=$.value.slice(0,e),i=$.value.slice(e+2),n=a[i];if(n){$.value=t+n,L.backtrack=!0,z(),p.output||1!==f.indexOf($)||(p.output=S);continue}}}("["===U&&":"!==j()||"-"===U&&"]"===j())&&(U=`\\${U}`),"]"!==U||"["!==$.value&&"[^"!==$.value||(U=`\\${U}`),!0===i.posix&&"!"===U&&"["===$.value&&(U="^"),$.value+=U,J({value:U});continue}if(1===L.quotes&&'"'!==U){U=r.escapeRegex(U),$.value+=U,J({value:U});continue}if('"'===U){L.quotes=1===L.quotes?0:1,!0===i.keepQuotes&&Y({type:"text",value:U});continue}if("("===U){X("parens"),Y({type:"paren",value:U});continue}if(")"===U){if(0===L.parens&&!0===i.strictBrackets)throw new SyntaxError(d("opening","("));const e=H[H.length-1];if(e&&L.parens===e.parens+1){ee(H.pop());continue}Y({type:"paren",value:U,output:L.parens?")":"\\)"}),Z("parens");continue}if("["===U){if(!0!==i.nobracket&&K().includes("]"))X("brackets");else{if(!0!==i.nobracket&&!0===i.strictBrackets)throw new SyntaxError(d("closing","]"));U=`\\${U}`}Y({type:"bracket",value:U});continue}if("]"===U){if(!0===i.nobracket||$&&"bracket"===$.type&&1===$.value.length){Y({type:"text",value:U,output:`\\${U}`});continue}if(0===L.brackets){if(!0===i.strictBrackets)throw new SyntaxError(d("opening","["));Y({type:"text",value:U,output:`\\${U}`});continue}Z("brackets");const e=$.value.slice(1);if(!0===$.posix||"^"!==e[0]||e.includes("/")||(U=`/${U}`),$.value+=U,J({value:U}),!1===i.literalBrackets||r.hasRegexChars(e))continue;const t=r.escapeRegex($.value);if(L.output=L.output.slice(0,-$.value.length),!0===i.literalBrackets){L.output+=t,$.value=t;continue}$.value=`(${y}${t}|${$.value})`,L.output+=$.value;continue}if("{"===U&&!0!==i.nobrace){X("braces");const e={type:"brace",value:U,output:"(",outputIndex:L.output.length,tokensIndex:L.tokens.length};F.push(e),Y(e);continue}if("}"===U){const e=F[F.length-1];if(!0===i.nobrace||!e){Y({type:"text",value:U,output:U});continue}let t=")";if(!0===e.dots){const e=f.slice(),n=[];for(let t=e.length-1;t>=0&&(f.pop(),"brace"!==e[t].type);t--)"dots"!==e[t].type&&n.unshift(e[t].value);t=u(n,i),L.backtrack=!0}if(!0!==e.comma&&!0!==e.dots){const i=L.output.slice(0,e.outputIndex),n=L.tokens.slice(e.tokensIndex);e.value=e.output="\\{",U=t="\\}",L.output=i;for(const e of n)L.output+=e.output||e.value}Y({type:"brace",value:U,output:t}),Z("braces"),F.pop();continue}if("|"===U){H.length>0&&H[H.length-1].conditions++,Y({type:"text",value:U});continue}if(","===U){let e=U;const t=F[F.length-1];t&&"braces"===N[N.length-1]&&(t.comma=!0,e="|"),Y({type:"comma",value:U,output:e});continue}if("/"===U){if("dot"===$.type&&L.index===L.start+1){L.start=L.index+1,L.consumed="",L.output="",f.pop(),$=p;continue}Y({type:"slash",value:U,output:R});continue}if("."===U){if(L.braces>0&&"dot"===$.type){"."===$.value&&($.output=C);const e=F[F.length-1];$.type="dots",$.output+=U,$.value+=U,e.dots=!0;continue}if(L.braces+L.parens===0&&"bos"!==$.type&&"slash"!==$.type){Y({type:"text",value:U,output:C});continue}Y({type:"dot",value:U,output:C});continue}if("?"===U){if((!$||"("!==$.value)&&!0!==i.noextglob&&"("===j()&&"?"!==j(2)){Q("qmark",U);continue}if($&&"paren"===$.type){const e=j();let t=U;if("<"===e&&!r.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");("("===$.value&&!/[!=<:]/.test(e)||"<"===e&&!/<([!=]|\w+>)/.test(K()))&&(t=`\\${U}`),Y({type:"text",value:U,output:t});continue}if(!0!==i.dot&&("slash"===$.type||"bos"===$.type)){Y({type:"qmark",value:U,output:I});continue}Y({type:"qmark",value:U,output:A});continue}if("!"===U){if(!0!==i.noextglob&&"("===j()&&("?"!==j(2)||!/[!=<:]/.test(j(3)))){Q("negate",U);continue}if(!0!==i.nonegate&&0===L.index){q();continue}}if("+"===U){if(!0!==i.noextglob&&"("===j()&&"?"!==j(2)){Q("plus",U);continue}if($&&"("===$.value||!1===i.regex){Y({type:"plus",value:U,output:k});continue}if($&&("bracket"===$.type||"paren"===$.type||"brace"===$.type)||L.parens>0){Y({type:"plus",value:U});continue}Y({type:"plus",value:k});continue}if("@"===U){if(!0!==i.noextglob&&"("===j()&&"?"!==j(2)){Y({type:"at",extglob:!0,value:U,output:""});continue}Y({type:"text",value:U});continue}if("*"!==U){"$"!==U&&"^"!==U||(U=`\\${U}`);const e=s.exec(K());e&&(U+=e[0],L.index+=e[0].length),Y({type:"text",value:U});continue}if($&&("globstar"===$.type||!0===$.star)){$.type="star",$.star=!0,$.value+=U,$.output=G,L.backtrack=!0,L.globstar=!0,V(U);continue}let t=K();if(!0!==i.noextglob&&/^\([^?]/.test(t)){Q("star",U);continue}if("star"===$.type){if(!0===i.noglobstar){V(U);continue}const n=$.prev,r=n.prev,o="slash"===n.type||"bos"===n.type,a=r&&("star"===r.type||"globstar"===r.type);if(!0===i.bash&&(!o||t[0]&&"/"!==t[0])){Y({type:"star",value:U,output:""});continue}const s=L.braces>0&&("comma"===n.type||"brace"===n.type),c=H.length&&("pipe"===n.type||"paren"===n.type);if(!o&&"paren"!==n.type&&!s&&!c){Y({type:"star",value:U,output:""});continue}for(;"/**"===t.slice(0,3);){const i=e[L.index+4];if(i&&"/"!==i)break;t=t.slice(3),V("/**",3)}if("bos"===n.type&&W()){$.type="globstar",$.value+=U,$.output=M(i),L.output=$.output,L.globstar=!0,V(U);continue}if("slash"===n.type&&"bos"!==n.prev.type&&!a&&W()){L.output=L.output.slice(0,-(n.output+$.output).length),n.output=`(?:${n.output}`,$.type="globstar",$.output=M(i)+(i.strictSlashes?")":"|$)"),$.value+=U,L.globstar=!0,L.output+=n.output+$.output,V(U);continue}if("slash"===n.type&&"bos"!==n.prev.type&&"/"===t[0]){const e=void 0!==t[1]?"|$":"";L.output=L.output.slice(0,-(n.output+$.output).length),n.output=`(?:${n.output}`,$.type="globstar",$.output=`${M(i)}${R}|${R}${e})`,$.value+=U,L.output+=n.output+$.output,L.globstar=!0,V(U+z()),Y({type:"slash",value:"/",output:""});continue}if("bos"===n.type&&"/"===t[0]){$.type="globstar",$.value+=U,$.output=`(?:^|${R}|${M(i)}${R})`,L.output=$.output,L.globstar=!0,V(U+z()),Y({type:"slash",value:"/",output:""});continue}L.output=L.output.slice(0,-$.output.length),$.type="globstar",$.output=M(i),$.value+=U,L.output+=$.output,L.globstar=!0,V(U);continue}const n={type:"star",value:U,output:G};!0!==i.bash?!$||"bracket"!==$.type&&"paren"!==$.type||!0!==i.regex?(L.index!==L.start&&"slash"!==$.type&&"dot"!==$.type||("dot"===$.type?(L.output+=P,$.output+=P):!0===i.dot?(L.output+=_,$.output+=_):(L.output+=O,$.output+=O),"*"!==j()&&(L.output+=S,$.output+=S)),Y(n)):(n.output=U,Y(n)):(n.output=".*?","bos"!==$.type&&"slash"!==$.type||(n.output=O+n.output),Y(n))}for(;L.brackets>0;){if(!0===i.strictBrackets)throw new SyntaxError(d("closing","]"));L.output=r.escapeLast(L.output,"["),Z("brackets")}for(;L.parens>0;){if(!0===i.strictBrackets)throw new SyntaxError(d("closing",")"));L.output=r.escapeLast(L.output,"("),Z("parens")}for(;L.braces>0;){if(!0===i.strictBrackets)throw new SyntaxError(d("closing","}"));L.output=r.escapeLast(L.output,"{"),Z("braces")}if(!0===i.strictSlashes||"star"!==$.type&&"bracket"!==$.type||Y({type:"maybe_slash",value:"",output:`${R}?`}),!0===L.backtrack){L.output="";for(const e of L.tokens)L.output+=null!=e.output?e.output:e.value,e.suffix&&(L.output+=e.suffix)}return L};m.fastpaths=(e,t)=>{const i={...t},a="number"==typeof i.maxLength?Math.min(o,i.maxLength):o,s=e.length;if(s>a)throw new SyntaxError(`Input length: ${s}, exceeds maximum allowed length: ${a}`);e=l[e]||e;const c=r.isWindows(t),{DOT_LITERAL:u,SLASH_LITERAL:d,ONE_CHAR:m,DOTS_SLASH:h,NO_DOT:g,NO_DOTS:p,NO_DOTS_SLASH:f,STAR:y,START_ANCHOR:v}=n.globChars(c),w=i.dot?p:g,b=i.dot?f:g,C=i.capture?"":"?:";let k=!0===i.bash?".*?":y;i.capture&&(k=`(${k})`);const R=e=>!0===e.noglobstar?k:`(${C}(?:(?!${v}${e.dot?h:u}).)*?)`,S=e=>{switch(e){case"*":return`${w}${m}${k}`;case".*":return`${u}${m}${k}`;case"*.*":return`${w}${k}${u}${m}${k}`;case"*/*":return`${w}${k}${d}${m}${b}${k}`;case"**":return w+R(i);case"**/*":return`(?:${w}${R(i)}${d})?${b}${m}${k}`;case"**/*.*":return`(?:${w}${R(i)}${d})?${b}${k}${u}${m}${k}`;case"**/.*":return`(?:${w}${R(i)}${d})?${u}${m}${k}`;default:{const t=/^(.*?)\.(\w+)$/.exec(e);if(!t)return;const i=S(t[1]);if(!i)return;return i+u+t[2]}}},E=r.removePrefix(e,{negated:!1,prefix:""});let D=S(E);return D&&!0!==i.strictSlashes&&(D+=`${d}?`),D},e.exports=m},1170:function(e,t,i){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&n(t,e,i);return r(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});const a=o(i(5692)),s=o(i(857)),c=o(i(1398)),l=i(5396),u=i(2468),d=i(6548),m=i(2396),h=i(8393);function g(){return{sendPOST:(e,t)=>{const i={method:"POST",headers:{...e.headers,"Content-Type":"application/json","Content-Length":Buffer.byteLength(e.data)}};try{const n=a.request(e.urlString,i,e=>{e.on("data",function(i){t(e.statusCode??200,e.headers,i.toString())}),e.on("error",function(){t(0,{})})});n.write(e.data,e=>{e&&t(0,{})}),n.end()}catch{t(0,{})}}}}class p extends d.BaseTelemetryReporter{constructor(e,t){let i=e=>(0,u.appInsightsClientFactory)(e,c.env.machineId,c.env.sessionId,g(),t);h.TelemetryUtil.shouldUseOneDataSystemSDK(e)&&(i=e=>(0,l.oneDataSystemClientFactory)(e,c,g()));const n={release:s.release(),platform:s.platform(),architecture:s.arch()},r=new m.BaseTelemetrySender(e,i);if(e&&0===e.indexOf("AIF-"))throw new Error("AIF keys are no longer supported. Please switch to 1DS keys for 1st party extensions");super(r,c,{additionalCommonProperties:h.TelemetryUtil.getAdditionalCommonProperties(n)})}}t.default=p},1184:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;aw.normalize(e.uri.fsPath).replace(/[\r\n]+$/,""));a||0===o.length||(o=o.filter(e=>w.isAbsolute(e)));const y=await(0,l.findGit)(o,e=>{if(t.info(c.l10n.t('[main] Validating found git in: "{0}"',e)),0===f.length)return!0;const i=w.normalize(e).replace(/[\r\n]+$/,""),n=f.some(e=>i.startsWith(e));return n&&t.info(c.l10n.t('[main] Skipped found git in: "{0}"',e)),!n},t);let v;try{v=await(0,E.createIPCServer)(e.storagePath)}catch(e){t.error(`[main] Failed to create git IPC: ${e}`)}const b=new g.Askpass(v,t);n.push(b);const R=new D.GitEditor(v);n.push(R);const x={...b.getEnv(),...R.getEnv(),...v?.getEnv()},M=new S.TerminalEnvironmentManager(e,[b,R,v]);n.push(M),t.info(c.l10n.t('[main] Using git "{0}" from "{1}"',y.version,y.path));const O=new l.Git({gitPath:y.path,userAgent:`git/${y.version} (${C.version()??C.type()} ${C.release()}; ${C.platform()} ${C.arch()}) vscode/${c.version} (${c.env.appName})`,version:y.version,env:x}),B=new u.Model(O,b,e.globalState,e.workspaceState,t,i);n.push(B);const G=new T.CloneManager(B,i,B.repositoryCache),L=()=>c.commands.executeCommand("setContext","gitOpenRepositoryCount",`${B.repositories.length}`);B.onDidOpenRepository(L,null,n),B.onDidCloseRepository(L,null,n),L();const H=e=>{const i=e.split(/\r?\n/gm);for(;/^\s*$/.test(i[i.length-1]);)i.pop();t.appendLine(i.join("\n"))};O.onOutput.addListener("log",H),n.push((0,p.toDisposable)(()=>O.onOutput.removeListener("log",H)));const F=new d.CommandCenter(O,B,e.globalState,t,i,G);n.push(F,new m.GitFileSystemProvider(B,t),new h.GitDecorations(B),new I.GitBlameController(B),new k.GitTimelineProvider(B,F),new _.GitEditSessionIdentityProvider(B),new S.TerminalShellExecutionManager(B,t));const N=new P.GitPostCommitCommandsProvider(B);B.registerPostCommitCommandsProvider(N);const U=new A.GitCommitInputBoxDiagnosticsManager(B);n.push(U);const $=new A.GitCommitInputBoxCodeActionsProvider(U);n.push($);const W=c.languages.registerDocumentLinkProvider("git-commit",new D.GitEditorDocumentLinkProvider(B));return n.push(W),async function(e){await async function(e){const t=c.workspace.getConfiguration("git");if(!0===t.get("ignoreLegacyWarning"))return;if(!/^[01]/.test(e.version))return;const i=c.l10n.t("Update Git"),n=c.l10n.t("Don't Show Again"),r=await c.window.showWarningMessage(c.l10n.t('You seem to have git "{0}" installed. Code works best with git >= 2',e.version),i,n);r===i?c.commands.executeCommand("vscode.open",c.Uri.parse("https://aka.ms/vscode-download-git")):r===n&&await t.update("ignoreLegacyWarning",!0,!0)}(e),"win32"===process.platform&&await async function(e){if(!/^2\.(25|26)\./.test(e.version))return;const t=c.workspace.getConfiguration("git");if(!0===t.get("ignoreWindowsGit27Warning"))return;const i=c.l10n.t("Update Git"),n=c.l10n.t("Don't Show Again"),r=await c.window.showWarningMessage(c.l10n.t('There are known issues with the installed Git "{0}". Please update to Git >= 2.27 for the git features to work correctly.',e.version),i,n);r===i?c.commands.executeCommand("vscode.open",c.Uri.parse("https://aka.ms/vscode-download-git")):r===n&&await t.update("ignoreWindowsGit27Warning",!0,!0)}(e)}(y),c.commands.executeCommand("setContext","gitVersion2.35",O.compareGitVersionTo("2.35")>=0),{model:B,cloneManager:G}}async function O(e){if("file"!==e.uri.scheme)return!1;const t=w.join(e.uri.fsPath,".git");try{return(await new Promise((e,i)=>b.stat(t,(t,n)=>t?i(t):e(n)))).isDirectory()}catch(e){return!1}}async function B(e){const t=[];e.subscriptions.push(new c.Disposable(()=>c.Disposable.from(...t).dispose()));const n=c.window.createOutputChannel("Git",{log:!0});t.push(n);const r=e=>{n.appendLine(c.l10n.t("[main] Log level: {0}",c.LogLevel[e]))};t.push(n.onDidChangeLogLevel(r)),r(n.logLevel);const{aiKey:o}=i(8330),a=new f.default(o);if(x.push(()=>a.dispose()),!c.workspace.getConfiguration("git",null).get("enabled")){const i=(0,p.filterEvent)(c.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git")),r=(0,p.filterEvent)(i,()=>!0===c.workspace.getConfiguration("git",null).get("enabled")),o=new v.GitExtensionImpl;return(0,p.eventToPromise)(r).then(async()=>{const{model:i,cloneManager:r}=await M(e,n,a,t);o.model=i,o.cloneManager=r}),o}try{const{model:i,cloneManager:r}=await M(e,n,a,t);return new v.GitExtensionImpl({model:i,cloneManager:r})}catch(e){if(console.warn(e.message),n.warn(`[main] Failed to create model: ${e}`),!/Git installation not found/.test(e.message||""))throw e;return a.sendTelemetryEvent("git.missing"),c.commands.executeCommand("setContext","git.missing",!0),async function(){const e=c.workspace.getConfiguration("git");if(!0===e.get("ignoreMissingGitWarning"))return;if(!c.workspace.workspaceFolders)return;if((await Promise.all(c.workspace.workspaceFolders.map(O))).every(e=>!e))return;const t=c.l10n.t("Download Git"),i=c.l10n.t("Don't Show Again"),n=await c.window.showWarningMessage(c.l10n.t('Git not found. Install it or configure it using the "git.path" setting.'),t,i);n===t?c.commands.executeCommand("vscode.open",c.Uri.parse("https://aka.ms/vscode-download-git")):n===i&&await e.update("ignoreMissingGitWarning",!0,!0)}(),new v.GitExtensionImpl}finally{t.push(new y.GitProtocolHandler(n))}}let G},1190:(e,t,i)=>{"use strict";i.d(t,{x:()=>s});var n=i(269),r=i(6182),o=i(3775),a=i(7292);function s(e,t){try{if(e&&""!==e){var i=(0,a.hm)().parse(e);if(i&&i[r.cp]&&i[r.cp]>=i.itemsAccepted&&i.itemsReceived-i.itemsAccepted===i.errors[r.oI])return i}}catch(i){(0,o.ZP)(t,1,43,"Cannot parse the response. "+(i[r.RS]||(0,n.mmD)(i)),{response:e})}return null}},1343:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readFile=t.writeFileSync=t.writeFile=t.read=t.open=t.close=t.stat=t.createReadStream=t.pathExists=void 0;const n=i(9896);t.pathExists=n.existsSync,t.createReadStream=n.createReadStream,t.stat=async function(e){return new Promise((t,i)=>{n.stat(e,(e,n)=>{e?i(e):t(n)})})},t.close=async function(e){return new Promise((t,i)=>{n.close(e,e=>{e?i(e):t()})})},t.open=async function(e,t){return new Promise((i,r)=>{n.open(e,t,(e,t)=>{e?r(e):i(t)})})},t.read=async function(e,t,i,r,o){return new Promise((a,s)=>{n.read(e,t,i,r,o,(e,t,i)=>{e?s(e):a({bytesRead:t,buffer:i})})})},t.writeFile=async function(e,t){return new Promise((i,r)=>{n.writeFile(e,t,e=>{e?r(e):i()})})},t.writeFileSync=function(e,t){n.writeFileSync(e,t)},t.readFile=async function(e){return new Promise((t,i)=>{n.readFile(e,(e,n)=>{e?i(e):t(n)})})}},1356:(e,t,i)=>{"use strict";i.d(t,{h:()=>m});var n=i(8279),r=i(8205),o=i(269),a=i(9749),s=i(6182),c=i(6492),l={perfEvtsSendAll:!1};function u(e){e.h=null;var t=e.cb;e.cb=[],(0,o.Iuo)(t,function(e){(0,o.gBW)(e.fn,[e.arg])})}function d(e,t,i,n){(0,o.Iuo)(e,function(e){e&&e[t]&&(i?(i.cb[s.y5]({fn:n,arg:e}),i.h=i.h||(0,o.dRz)(u,0,i)):(0,o.gBW)(n,[e]))})}var m=function(){function e(t){var i,u;this.listeners=[];var m=[],h={h:null,cb:[]},g=(0,a.e)(t,l);u=g[s.x6](function(e){i=!!e.cfg.perfEvtsSendAll}),(0,n.A)(e,this,function(e){(0,o.vF1)(e,"listeners",{g:function(){return m}}),e[s.vR]=function(e){m[s.y5](e)},e[s.h3]=function(e){for(var t=(0,o.rDm)(m,e);t>-1;)m[s.Ic](t,1),t=(0,o.rDm)(m,e)},e[c.fc]=function(e){d(m,c.fc,h,function(t){t[c.fc](e)})},e[c.Yp]=function(e,t){d(m,c.Yp,h,function(i){i[c.Yp](e,t)})},e[c.dI]=function(e,t){d(m,c.dI,t?h:null,function(i){i[c.dI](e,t)})},e[c.l0]=function(e){e&&(!i&&e[s.Zu]()||d(m,c.l0,null,function(t){e[s.tI]?(0,o.dRz)(function(){return t[c.l0](e)},0):t[c.l0](e)}))},e[c.s4]=function(e){e&&e[s.oI]&&d(m,c.s4,h,function(t){t[c.s4](e)})},e[c.Vj]=function(e){e&&e[s.Cd]&&d(m,c.Vj,h,function(t){t[c.Vj](e)})},e[c.Ev]=function(e,t){if(e>0){var i=t||0;d(m,c.Ev,h,function(t){t[c.Ev](e,i)})}},e[s.M5]=function(e){var t,i=function(){u&&u.rm(),u=null,m=[],h.h&&h.h[s._w](),h.h=null,h.cb=[]};if(d(m,"unload",null,function(i){var n=i[s.M5](e);n&&(t||(t=[]),t[s.y5](n))}),t)return(0,r.Qo)(function(e){return(0,r.Dv)((0,r.Xf)(t),function(){i(),e()})});i()}})}return e.__ieDyn=1,e}()},1365:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(87),r=i(2318),o=i(5130),a=i(7975),s=function(){function e(e,t,i,s,c,l,u,d,m,h,g,p){void 0===m&&(m="Ajax"),this.aiDataContract={id:1,ver:1,name:0,resultCode:0,duration:0,success:0,data:0,target:0,type:0,properties:0,measurements:0,kind:0,value:0,count:0,min:0,max:0,stdDev:0,dependencyKind:0,dependencySource:0,commandName:0,dependencyTypeName:0};var f=this;f.ver=2,f.id=t,f[o.qd]=(0,n.bb)(c),f.success=l,f.resultCode=u+"",f.type=(0,a.Rr)(e,m);var y=(0,r._U)(e,i,d,s);f.data=(0,a.pJ)(e,s)||y.data,f.target=(0,a.Rr)(e,y.target),h&&(f.target="".concat(f.target," | ").concat(h)),f[o.RS]=(0,a.Rr)(e,y[o.RS]),f[o.$y]=(0,a.xP)(e,g),f[o.XA]=(0,a.Vj)(e,p)}return e.envelopeType="Microsoft.ApplicationInsights.{0}.RemoteDependency",e.dataType="RemoteDependencyData",e}()},1398:e=>{"use strict";e.exports=require("vscode")},1448:(e,t,i)=>{"use strict";i.d(t,{h:()=>s});var n=i(5025),r=i(87),o=i(5130),a=i(7975),s=function(){function e(e,t,i,s,c,l,u){this.aiDataContract={ver:1,name:0,url:0,duration:0,properties:0,measurements:0,id:0};var d=this;d.ver=2,d.id=(0,a.HQ)(e,u),d.url=(0,a.pJ)(e,i),d[o.RS]=(0,a.Rr)(e,t)||n.R2,isNaN(s)||(d[o.qd]=(0,r.bb)(s)),d[o.$y]=(0,a.xP)(e,c),d[o.XA]=(0,a.Vj)(e,l)}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Pageview",e.dataType="PageviewData",e}()},1456:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromFile=t.FileTokenizer=void 0;const n=i(8632),r=i(8705),o=i(1343);class a extends n.AbstractTokenizer{constructor(e,t){super(t),this.fd=e}async readBuffer(e,t){const i=this.normalizeOptions(e,t);this.position=i.position;const n=await o.read(this.fd,e,i.offset,i.length,i.position);if(this.position+=n.bytesRead,n.bytesRead{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GitArtifactProvider=void 0;const n=i(1398),r=i(7937);function o(e,t){const i=[];return e.commitDetails?.commitDate&&i.push((0,r.fromNow)(e.commitDetails.commitDate)),e.commit&&i.push(e.commit.substring(0,t)),e.commitDetails?.message&&i.push(e.commitDetails.message.split("\n")[0]),i.join(" • ")}t.GitArtifactProvider=class{repository;logger;_onDidChangeArtifacts=new n.EventEmitter;onDidChangeArtifacts=this._onDidChangeArtifacts.event;_groups;_disposables=[];constructor(e,t){this.repository=e,this.logger=t,this._groups=[{id:"branches",name:n.l10n.t("Branches"),icon:new n.ThemeIcon("git-branch")},{id:"tags",name:n.l10n.t("Tags"),icon:new n.ThemeIcon("tag")}],this._disposables.push(this._onDidChangeArtifacts),this._disposables.push(e.historyProvider.onDidChangeHistoryItemRefs(e=>{const t=new Set;for(const i of e.added.concat(e.modified).concat(e.removed))i.id.startsWith("refs/heads/")?t.add("branches"):i.id.startsWith("refs/tags/")&&t.add("tags");this._onDidChangeArtifacts.fire(Array.from(t))}))}provideArtifactGroups(){return this._groups}async provideArtifacts(e){const t=n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("commitShortHashLength",7);try{if("branches"===e)return(await this.repository.getRefs({pattern:"refs/heads",includeCommitDetails:!0})).map(e=>({id:`refs/heads/${e.name}`,name:e.name??e.commit??"",description:o(e,t),icon:0===this.repository.HEAD?.type&&e.name===this.repository.HEAD?.name?new n.ThemeIcon("target"):new n.ThemeIcon("git-branch")}));if("tags"===e)return(await this.repository.getRefs({pattern:"refs/tags",includeCommitDetails:!0})).map(e=>({id:`refs/tags/${e.name}`,name:e.name??e.commit??"",description:o(e,t),icon:2===this.repository.HEAD?.type&&e.name===this.repository.HEAD?.name?new n.ThemeIcon("target"):new n.ThemeIcon("tag")}))}catch(t){return this.logger.error(`[GitArtifactProvider][provideArtifacts] Error while providing artifacts for group '${e}': `,t),[]}return[]}dispose(){(0,r.dispose)(this._disposables)}}},1510:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamReader=t.EndOfStreamError=void 0;const n=i(5523),r=i(8122);var o=i(5523);Object.defineProperty(t,"EndOfStreamError",{enumerable:!0,get:function(){return o.EndOfStreamError}}),t.StreamReader=class{constructor(e){if(this.s=e,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!e.read||!e.once)throw new Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new n.EndOfStreamError)),this.s.once("error",e=>this.reject(e)),this.s.once("close",()=>this.reject(new Error("Stream closed")))}async peek(e,t,i){const n=await this.read(e,t,i);return this.peekQueue.push(e.subarray(t,t+n)),n}async read(e,t,i){if(0===i)return 0;if(0===this.peekQueue.length&&this.endOfStream)throw new n.EndOfStreamError;let r=i,o=0;for(;this.peekQueue.length>0&&r>0;){const i=this.peekQueue.pop();if(!i)throw new Error("peekData should be defined");const n=Math.min(i.length,r);e.set(i.subarray(0,n),t+o),o+=n,r-=n,n0&&!this.endOfStream;){const i=Math.min(r,1048576),n=await this.readFromStream(e,t+o,i);if(o+=n,n{this.readDeferred(n)}),n.deferred.promise}}readDeferred(e){const t=this.s.read(e.length);t?(e.buffer.set(t,e.offset),e.deferred.resolve(t.length),this.deferred=null):this.s.once("readable",()=>{this.readDeferred(e)})}reject(e){this.endOfStream=!0,this.deferred&&(this.deferred.reject(e),this.deferred=null)}}},1558:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GitBranchProtectionProvider=void 0;const n=i(1398),r=i(7937);t.GitBranchProtectionProvider=class{repositoryRoot;_onDidChangeBranchProtection=new n.EventEmitter;onDidChangeBranchProtection=this._onDidChangeBranchProtection.event;branchProtection;disposables=[];constructor(e){this.repositoryRoot=e,(0,r.filterEvent)(n.workspace.onDidChangeConfiguration,t=>t.affectsConfiguration("git.branchProtection",e))(this.updateBranchProtection,this,this.disposables),this.updateBranchProtection()}provideBranchProtection(){return[this.branchProtection]}updateBranchProtection(){const e=n.workspace.getConfiguration("git",this.repositoryRoot).get("branchProtection")??[],t=(Array.isArray(e)?e:[e]).map(e=>"string"==typeof e?e.trim():"").filter(e=>""!==e);this.branchProtection={remote:"",rules:[{include:t}]},this._onDidChangeBranchProtection.fire(this.repositoryRoot)}dispose(){this.disposables=(0,r.dispose)(this.disposables)}}},1575:(e,t,i)=>{"use strict";i.d(t,{F:()=>r,O:()=>o});var n=i(8596),r={UserExt:"user",DeviceExt:"device",TraceExt:"trace",WebExt:"web",AppExt:"app",OSExt:"os",SessionExt:"ses",SDKExt:"sdk"},o=new n.o},1664:e=>{"use strict";e.exports={extensions:["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf"],mimeTypes:["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/vnd.wave","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd"]}},1739:(e,t,i)=>{"use strict";i.d(t,{Jg:()=>d,Mr:()=>g,QV:()=>l,Rl:()=>h,Sj:()=>o,Uw:()=>r,dg:()=>a,h4:()=>s,hF:()=>m,mE:()=>n,nw:()=>p,oI:()=>u,pF:()=>c});var n="initialize",r="logger",o="indexOf",a="timings",s="pollInternalLogs",c="value",l="kind",u="length",d="processTelemetryStart",m="handleField",h="rmSanitizer",g="rmFieldSanitizer",p="canHandle"},1750:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StatusBarCommands=void 0;const n=i(1398),r=i(7937);class o{repository;_onDidChange=new n.EventEmitter;get onDidChange(){return this._onDidChange.event}disposables=[];_state;get state(){return this._state}set state(e){this._state=e,this._onDidChange.fire()}constructor(e){this.repository=e,this._state={isCheckoutRunning:!1,isCommitRunning:!1,isSyncRunning:!1},e.onDidChangeOperations(this.onDidChangeOperations,this,this.disposables),e.onDidRunGitStatus(this._onDidChange.fire,this._onDidChange,this.disposables),e.onDidChangeBranchProtection(this._onDidChange.fire,this._onDidChange,this.disposables)}get command(){const e=[...this.repository.operations.getOperations("Checkout"),...this.repository.operations.getOperations("CheckoutTracking")],t=!!this.repository.rebaseCommit,i=e[0]?.refLabel??`${this.repository.headLabel}${t?` (${n.l10n.t("Rebasing")})`:""}`;return{command:this.state.isCheckoutRunning||this.state.isCommitRunning||this.state.isSyncRunning?"":"git.checkout",tooltip:`${i}, ${this.getTooltip()}`,title:`${this.getIcon()} ${i}`,arguments:[this.repository.sourceControl]}}getIcon(){if(!this.repository.HEAD)return"";if(this.state.isCheckoutRunning)return"$(loading~spin)";if(0===this.repository.HEAD.type&&this.repository.HEAD.name)switch(!0){case this.repository.isBranchProtected():return"$(lock)";case this.repository.mergeInProgress||!!this.repository.rebaseCommit:return"$(git-branch-conflicts)";case this.repository.indexGroup.resourceStates.length>0:return"$(git-branch-staged-changes)";case this.repository.workingTreeGroup.resourceStates.length+this.repository.untrackedGroup.resourceStates.length>0:return"$(git-branch-changes)";default:return"$(git-branch)"}return 2===this.repository.HEAD.type?"$(tag)":"$(git-commit)"}getTooltip(){return this.state.isCheckoutRunning?n.l10n.t("Checking Out Branch/Tag..."):this.state.isCommitRunning?n.l10n.t("Committing Changes..."):this.state.isSyncRunning?n.l10n.t("Synchronizing Changes..."):n.l10n.t("Checkout Branch/Tag...")}onDidChangeOperations(){const e=this.repository.operations.isRunning("Commit"),t=this.repository.operations.isRunning("Checkout")||this.repository.operations.isRunning("CheckoutTracking"),i=this.repository.operations.isRunning("Sync")||this.repository.operations.isRunning("Push")||this.repository.operations.isRunning("Pull");this.state={...this.state,isCheckoutRunning:t,isCommitRunning:e,isSyncRunning:i}}dispose(){this.disposables.forEach(e=>e.dispose())}}class a{repository;remoteSourcePublisherRegistry;_onDidChange=new n.EventEmitter;get onDidChange(){return this._onDidChange.event}disposables=[];_state;get state(){return this._state}set state(e){this._state=e,this._onDidChange.fire()}constructor(e,t){this.repository=e,this.remoteSourcePublisherRegistry=t,this._state={enabled:!0,isCheckoutRunning:!1,isCommitRunning:!1,isSyncRunning:!1,hasRemotes:!1,HEAD:void 0,remoteSourcePublishers:t.getRemoteSourcePublishers()},e.onDidRunGitStatus(this.onDidRunGitStatus,this,this.disposables),e.onDidChangeOperations(this.onDidChangeOperations,this,this.disposables),(0,r.anyEvent)(t.onDidAddRemoteSourcePublisher,t.onDidRemoveRemoteSourcePublisher)(this.onDidChangeRemoteSourcePublishers,this,this.disposables),(0,r.filterEvent)(n.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git.enableStatusBarSync"))(this.updateEnablement,this,this.disposables),this.updateEnablement()}updateEnablement(){const e=n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("enableStatusBarSync",!0);this.state={...this.state,enabled:e}}onDidChangeOperations(){const e=this.repository.operations.isRunning("Commit"),t=this.repository.operations.isRunning("Checkout")||this.repository.operations.isRunning("CheckoutTracking"),i=this.repository.operations.isRunning("Sync")||this.repository.operations.isRunning("Push")||this.repository.operations.isRunning("Pull");this.state={...this.state,isCheckoutRunning:t,isCommitRunning:e,isSyncRunning:i}}onDidRunGitStatus(){this.state={...this.state,hasRemotes:this.repository.remotes.length>0,HEAD:this.repository.HEAD}}onDidChangeRemoteSourcePublishers(){this.state={...this.state,remoteSourcePublishers:this.remoteSourcePublisherRegistry.getRemoteSourcePublishers()}}get command(){if(!this.state.enabled)return;if(!this.state.hasRemotes){if(0===this.state.remoteSourcePublishers.length)return;return{command:this.state.isCheckoutRunning||this.state.isCommitRunning?"":"git.publish",title:"$(cloud-upload)",tooltip:this.state.isCheckoutRunning?n.l10n.t("Checking Out Changes..."):this.state.isCommitRunning?n.l10n.t("Committing Changes..."):1===this.state.remoteSourcePublishers.length?n.l10n.t("Publish to {0}",this.state.remoteSourcePublishers[0].name):n.l10n.t("Publish to..."),arguments:[this.repository.sourceControl]}}const e=this.state.HEAD;let t="$(sync)",i="",r="",o="";return e&&e.name&&e.commit?e.upstream?((e.ahead||e.behind)&&(i+=this.repository.syncLabel),r="git.sync",o=this.repository.syncTooltip):(t="$(cloud-upload)",r="git.publish",o=n.l10n.t("Publish Branch")):(r="",o=""),this.state.isCheckoutRunning&&(r="",o=n.l10n.t("Checking Out Changes...")),this.state.isCommitRunning&&(r="",o=n.l10n.t("Committing Changes...")),this.state.isSyncRunning&&(t="$(sync~spin)",r="",o=n.l10n.t("Synchronizing Changes...")),{command:r,title:[t,i].join(" ").trim(),tooltip:o,arguments:[this.repository.sourceControl]}}dispose(){this.disposables.forEach(e=>e.dispose())}}t.StatusBarCommands=class{onDidChange;syncStatusBar;checkoutStatusBar;disposables=[];constructor(e,t){this.syncStatusBar=new a(e,t),this.checkoutStatusBar=new o(e),this.onDidChange=(0,r.anyEvent)(this.syncStatusBar.onDidChange,this.checkoutStatusBar.onDidChange)}get commands(){return[this.checkoutStatusBar.command,this.syncStatusBar.command].filter(e=>!!e)}dispose(){this.syncStatusBar.dispose(),this.checkoutStatusBar.dispose(),this.disposables=(0,r.dispose)(this.disposables)}}},1864:(e,t,i)=>{"use strict";i.d(t,{L0:()=>R,N7:()=>k,V5:()=>E,ZI:()=>v,ef:()=>S,hX:()=>w,mJ:()=>C,wN:()=>b,wk:()=>y});var n=i(269),r=i(6182),o=i(9882),a=i(7292),s=i(6492),c=/^([\da-f]{2})-([\da-f]{32})-([\da-f]{16})-([\da-f]{2})(-[^\s]{1,64})?$/i,l="00",u="ff",d="00000000000000000000000000000000",m="0000000000000000",h=1;function g(e,t,i){return!(!e||e[r.oI]!==t||e===i||!e.match(/^[\da-f]*$/i))}function p(e,t,i){return g(e,t)?e:i}function f(e){(isNaN(e)||e<0||e>255)&&(e=1);for(var t=e.toString(16);t[r.oI]<2;)t="0"+t;return t}function y(e,t,i,a){var s;return(s={})[r.s]=g(a,2,u)?a:l,s[r.P5]=w(e)?e:(0,o.cL)(),s[r.wi]=b(t)?t:(0,n.ZWZ)((0,o.cL)(),16),s.traceFlags=i>=0&&i<=255?i:1,s}function v(e,t){var i;if(!e)return null;if((0,n.cyL)(e)&&(e=e[0]||""),!e||!(0,n.KgX)(e)||e[r.oI]>8192)return null;if(-1!==e.indexOf(",")){var o=e[r.sY](",");e=o[t>0&&o[r.oI]>t?t:0]}var a=c.exec((0,n.EHq)(e));return a&&a[1]!==u&&a[2]!==d&&a[3]!==m?((i={version:(a[1]||s.m5)[r.OL](),traceId:(a[2]||s.m5)[r.OL](),spanId:(a[3]||s.m5)[r.OL]()})[r.Rr]=parseInt(a[4],16),i):null}function w(e){return g(e,32,d)}function b(e){return g(e,16,m)}function C(e){return!!(e&&g(e[r.s],2,u)&&g(e[r.P5],32,d)&&g(e[r.wi],16,m)&&g(f(e[r.Rr]),2))}function k(e){return!!C(e)&&(e[r.Rr]&h)===h}function R(e){if(e){var t=f(e[r.Rr]);g(t,2)||(t="01");var i=e[r.s]||l;return"00"!==i&&"ff"!==i&&(i=l),"".concat(i.toLowerCase(),"-").concat(p(e.traceId,32,d).toLowerCase(),"-").concat(p(e.spanId,16,m).toLowerCase(),"-").concat(t.toLowerCase())}return""}function S(e){var t="traceparent",i=v((0,a.$Z)(t),e);return i||(i=v((0,a.Iu)(t),e)),i}function E(e){var t=e.getElementsByTagName("script"),i=[];return(0,n.Iuo)(t,function(e){var t=e[r.NA]("src");if(t){var n=e[r.NA]("crossorigin"),o=!0===e.hasAttribute("async"),a=!0===e.hasAttribute("defer"),s=e[r.NA]("referrerpolicy"),c={url:t};n&&(c.crossOrigin=n),o&&(c.async=o),a&&(c.defer=a),s&&(c.referrerPolicy=s),i[r.y5](c)}}),i}},1991:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionButton=void 0;const n=i(1398),r=i(7937);t.ActionButton=class{repository;postCommitCommandCenter;logger;_onDidChange=new n.EventEmitter;get onDidChange(){return this._onDidChange.event}_state;get state(){return this._state}set state(e){var t,i;t=this._state,i=e,(t.HEAD?.name!==i.HEAD?.name||t.HEAD?.commit!==i.HEAD?.commit||t.HEAD?.remote!==i.HEAD?.remote||t.HEAD?.type!==i.HEAD?.type||t.HEAD?.ahead!==i.HEAD?.ahead||t.HEAD?.behind!==i.HEAD?.behind||t.HEAD?.upstream?.name!==i.HEAD?.upstream?.name||t.HEAD?.upstream?.remote!==i.HEAD?.upstream?.remote||t.HEAD?.upstream?.commit!==i.HEAD?.upstream?.commit||t.isCheckoutInProgress!==i.isCheckoutInProgress||t.isCommitInProgress!==i.isCommitInProgress||t.isMergeInProgress!==i.isMergeInProgress||t.isRebaseInProgress!==i.isRebaseInProgress||t.isSyncInProgress!==i.isSyncInProgress||t.repositoryHasChangesToCommit!==i.repositoryHasChangesToCommit||t.repositoryHasUnresolvedConflicts!==i.repositoryHasUnresolvedConflicts)&&(this.logger.trace(`[ActionButton][setState] ${JSON.stringify(e)}`),this._state=e,this._onDidChange.fire())}disposables=[];constructor(e,t,i){this.repository=e,this.postCommitCommandCenter=t,this.logger=i,this._state={HEAD:void 0,isCheckoutInProgress:!1,isCommitInProgress:!1,isMergeInProgress:!1,isRebaseInProgress:!1,isSyncInProgress:!1,repositoryHasChangesToCommit:!1,repositoryHasUnresolvedConflicts:!1},e.onDidRunGitStatus(this.onDidRunGitStatus,this,this.disposables),e.onDidChangeOperations(this.onDidChangeOperations,this,this.disposables),this.disposables.push(e.onDidChangeBranchProtection(()=>this._onDidChange.fire())),this.disposables.push(t.onDidChange(()=>this._onDidChange.fire()));const r=n.Uri.file(e.root);this.disposables.push(n.workspace.onDidChangeConfiguration(e=>{(e.affectsConfiguration("git.enableSmartCommit",r)||e.affectsConfiguration("git.smartCommitChanges",r)||e.affectsConfiguration("git.suggestSmartCommit",r))&&this.onDidChangeSmartCommitSettings(),(e.affectsConfiguration("git.branchProtectionPrompt",r)||e.affectsConfiguration("git.postCommitCommand",r)||e.affectsConfiguration("git.rememberPostCommitCommand",r)||e.affectsConfiguration("git.showActionButton",r))&&this._onDidChange.fire()}))}get button(){if(!this.state.HEAD)return;let e;return this.state.repositoryHasChangesToCommit&&(e=this.getCommitActionButton()),e=e??this.getPublishBranchActionButton()??this.getSyncChangesActionButton()??this.getCommitActionButton(),this.logger.trace(`[ActionButton][getButton] ${JSON.stringify({command:e?.command.command,title:e?.command.title,enabled:e?.enabled})}`),e}getCommitActionButton(){if(n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("showActionButton",{commit:!0}).commit)return{command:this.getCommitActionButtonPrimaryCommand(),secondaryCommands:this.getCommitActionButtonSecondaryCommands(),enabled:(this.state.repositoryHasChangesToCommit||this.state.isRebaseInProgress&&!this.state.repositoryHasUnresolvedConflicts||this.state.isMergeInProgress&&!this.state.repositoryHasUnresolvedConflicts)&&!this.state.isCommitInProgress}}getCommitActionButtonPrimaryCommand(){return this.state.isRebaseInProgress?{command:"git.commit",title:n.l10n.t("{0} Continue","$(check)"),tooltip:this.state.isCommitInProgress?n.l10n.t("Continuing Rebase..."):n.l10n.t("Continue Rebase"),arguments:[this.repository.sourceControl,null]}:this.state.isMergeInProgress?{command:"git.commit",title:n.l10n.t("{0} Continue","$(check)"),tooltip:this.state.isCommitInProgress?n.l10n.t("Continuing Merge..."):n.l10n.t("Continue Merge"),arguments:[this.repository.sourceControl,null]}:2!==this.state.HEAD?.type&&this.state.HEAD?.name?this.postCommitCommandCenter.getPrimaryCommand():{command:"git.commit",title:n.l10n.t("{0} Commit","$(check)"),tooltip:this.state.isCommitInProgress?n.l10n.t("Committing Changes..."):n.l10n.t("Commit Changes"),arguments:[this.repository.sourceControl,null]}}getCommitActionButtonSecondaryCommands(){if(this.state.isRebaseInProgress)return[];if(this.state.isMergeInProgress)return[];if(2===this.state.HEAD?.type||!this.state.HEAD?.name)return[];const e=[];for(const t of this.postCommitCommandCenter.getSecondaryCommands())e.push(t.map(e=>({command:e.command,title:e.title,tooltip:e.tooltip,arguments:e.arguments})));return e}getPublishBranchActionButton(){const e=n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("showActionButton",{publish:!0});if(2===this.state.HEAD?.type||!this.state.HEAD?.name||this.state.HEAD?.upstream||this.state.isCommitInProgress||this.state.isMergeInProgress||this.state.isRebaseInProgress||!e.publish)return;const t=this.state.isSyncInProgress?"$(sync~spin)":"$(cloud-upload)";return{command:{command:"git.publish",title:n.l10n.t({message:"{0} Publish Branch",args:[t],comment:['{Locked="Branch"}','Do not translate "Branch" as it is a git term']}),tooltip:this.state.isSyncInProgress?this.state.HEAD?.name?n.l10n.t({message:'Publishing Branch "{0}"...',args:[this.state.HEAD.name],comment:['{Locked="Branch"}','Do not translate "Branch" as it is a git term']}):n.l10n.t({message:"Publishing Branch...",comment:['{Locked="Branch"}','Do not translate "Branch" as it is a git term']}):this.repository.HEAD?.name?n.l10n.t({message:'Publish Branch "{0}"',args:[this.state.HEAD?.name],comment:['{Locked="Branch"}','Do not translate "Branch" as it is a git term']}):n.l10n.t({message:"Publish Branch",comment:['{Locked="Branch"}','Do not translate "Branch" as it is a git term']}),arguments:[this.repository.sourceControl]},enabled:!this.state.isCheckoutInProgress&&!this.state.isSyncInProgress}}getSyncChangesActionButton(){const e=n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("showActionButton",{sync:!0}),t=(this.state.HEAD?.behind??0)>0||(this.state.HEAD?.ahead??0)>0;if(!this.state.HEAD?.upstream||!t||this.state.isCommitInProgress||this.state.isMergeInProgress||this.state.isRebaseInProgress||!e.sync)return;const i=this.state.HEAD.ahead?` ${this.state.HEAD.ahead}$(arrow-up)`:"",r=this.state.HEAD.behind?` ${this.state.HEAD.behind}$(arrow-down)`:"",o=this.state.isSyncInProgress?"$(sync~spin)":"$(sync)";return{command:{command:"git.sync",title:n.l10n.t("{0} Sync Changes{1}{2}",o,r,i),shortTitle:`${o}${r}${i}`,tooltip:this.state.isSyncInProgress?n.l10n.t("Synchronizing Changes..."):this.repository.syncTooltip,arguments:[this.repository.sourceControl]},enabled:!this.state.isCheckoutInProgress&&!this.state.isSyncInProgress}}onDidChangeOperations(){const e=this.repository.operations.isRunning("Checkout")||this.repository.operations.isRunning("CheckoutTracking"),t=this.repository.operations.isRunning("Commit")||this.repository.operations.isRunning("PostCommitCommand")||this.repository.operations.isRunning("RebaseContinue"),i=this.repository.operations.isRunning("Sync")||this.repository.operations.isRunning("Push")||this.repository.operations.isRunning("Pull");this.state={...this.state,isCheckoutInProgress:e,isCommitInProgress:t,isSyncInProgress:i}}onDidChangeSmartCommitSettings(){this.state={...this.state,repositoryHasChangesToCommit:this.repositoryHasChangesToCommit()}}onDidRunGitStatus(){this.state={...this.state,HEAD:this.repository.HEAD,isMergeInProgress:this.repository.mergeInProgress,isRebaseInProgress:!!this.repository.rebaseCommit,repositoryHasChangesToCommit:this.repositoryHasChangesToCommit(),repositoryHasUnresolvedConflicts:this.repository.mergeGroup.resourceStates.length>0}}repositoryHasChangesToCommit(){const e=n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)),t=!0===e.get("enableSmartCommit"),i=!0===e.get("suggestSmartCommit"),r=e.get("smartCommitChanges","all"),o=[...this.repository.indexGroup.resourceStates];return(t&&"all"===r||!t&&i)&&o.push(...this.repository.workingTreeGroup.resourceStates),t&&"tracked"===r&&o.push(...this.repository.workingTreeGroup.resourceStates.filter(e=>7!==e.type)),0!==o.length}dispose(){this.disposables=(0,r.dispose)(this.disposables)}}},2203:e=>{"use strict";e.exports=require("stream")},2228:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;a{const i=c.window.tabGroups.onDidChangeTabs(async n=>{if(n.closed.some(e=>e.input instanceof c.TabInputText&&e.input.uri.toString()===t.toString()))return i.dispose(),e(!0)})})}}getEnv(){return c.workspace.getConfiguration("git").get("useEditorAsCommitInput")?this.env:{}}getTerminalEnv(){const e=c.workspace.getConfiguration("git");return e.get("useEditorAsCommitInput")&&e.get("terminalGitEditor")?this.env:{}}dispose(){this.disposable.dispose()}},t.GitEditorDocumentLinkProvider=class{_model;_regex=/^#\s+(modified|new file|deleted|renamed|copied|type change):\s+(?.*?)(?:\s+->\s+(?.*))*$/gm;constructor(e){this._model=e}provideDocumentLinks(e,t){if(t.isCancellationRequested)return[];const i=this._model.getRepository(e.uri);if(!i)return[];const n=[];for(const t of e.getText().matchAll(this._regex)){if(!t.groups)continue;const{file1:r,file2:o}=t.groups;r&&n.push(this._createDocumentLink(i,e,t,r)),o&&n.push(this._createDocumentLink(i,e,t,o))}return n}_createDocumentLink(e,t,i,n){const r=i[0].indexOf(n),o=t.positionAt(i.index+r),a=t.positionAt(i.index+r+n.length),l=new c.DocumentLink(new c.Range(o,a),c.Uri.file(s.join(e.root,n)));return l.tooltip=c.l10n.t("Open File"),l}}},2317:(e,t,i)=>{"use strict";i.d(t,{PV:()=>b,W0:()=>C,i8:()=>y,nU:()=>w,tS:()=>v});var n=i(269),r=i(991),o=i(9749),a=i(6182),s=i(3775),c=i(3673),l=i(6492),u=i(8156),d=i(380),m="TelemetryPluginChain",h="_hasRun",g="_getTelCtx",p=0;function f(e,t,i,c){var u=null,d=[];t||(t=(0,o.e)({},null,i[a.Uw])),null!==c&&(u=c?function(e,t,i){for(;e;){if(e[a.AP]()===i)return e;e=e[a.uR]()}return b([i],t.config||{},t)}(e,i,c):e);var m={_next:function(){var e=u;if(u=e?e[a.uR]():null,!e){var t=d;t&&t[a.oI]>0&&((0,n.Iuo)(t,function(e){try{e.func.call(e.self,e.args)}catch(e){(0,s.ZP)(i[a.Uw],2,73,"Unexpected Exception during onComplete - "+(0,n.mmD)(e))}}),d=[])}return e},ctx:{core:function(){return i},diagLog:function(){return(0,s.y0)(i,t.cfg)},getCfg:function(){return t.cfg},getExtCfg:function(e,i){var o=h(e,!0);return i&&(0,n.zav)(i,function(e,i){if((0,n.hXl)(o[e])){var a=t.cfg[e];!a&&(0,n.hXl)(a)||(o[e]=a)}(0,r.q)(t,o,e,i)}),t[a.h0](o,i)},getConfig:function(e,i,r){void 0===r&&(r=!1);var o,a=h(e,!1),s=t.cfg;return!a||!a[i]&&(0,n.hXl)(a[i])?!s[i]&&(0,n.hXl)(s[i])||(o=s[i]):o=a[i],o||!(0,n.hXl)(o)?o:r},hasNext:function(){return!!u},getNext:function(){return u},setNext:function(e){u=e},iterate:function(e){for(var t;t=m._next();){var i=t[a.AP]();i&&e(i)}},onComplete:function(e,t){for(var i=[],r=2;r0){var f=null;(0,n.Iuo)(e,function(e){if(c||r!==e||(c=!0),c&&e&&(0,n.Tnt)(e[l.qT])){var v=function(e,t,i){var r,o=null,c=(0,n.Tnt)(e[l.qT]),f=(0,n.Tnt)(e[a.YH]),v={getPlugin:function(){return e},getNext:function(){return o},processTelemetry:function(r,s){w(s=s||function(){var r;return e&&(0,n.Tnt)(e[g])&&(r=e[g]()),r||(r=y(v,t,i)),r}(),function(t){if(!e||!c)return!1;var i=(0,d.Cr)(e);return!i[a.Ik]&&!i[l.Hr]&&(f&&e[a.YH](o),e[l.qT](r,t),!0)},"processTelemetry",function(){return{item:r}},!r.sync)||s[a.$5](r)},unload:function(t,i){w(t,function(){var n=!1;if(e){var r=(0,d.Cr)(e),o=e[l.eT]||r[l.eT];!e||o&&o!==t.core()||r[a.Ik]||(r[l.eT]=null,r[a.Ik]=!0,r[a.tZ]=!1,e[a.Ik]&&!0===e[a.Ik](t,i)&&(n=!0))}return n},"unload",function(){},i[a.tI])||t[a.$5](i)},update:function(t,i){w(t,function(){var n=!1;if(e){var r=(0,d.Cr)(e),o=e[l.eT]||r[l.eT];!e||o&&o!==t.core()||r[a.Ik]||e[a.HC]&&!0===e[a.HC](t,i)&&(n=!0)}return n},"update",function(){},!1)||t[a.$5](i)},_id:r=e?e[a.Ju]+"-"+e[l.Vo]+"-"+p++:"Unknown-0-"+p++,_setNext:function(e){o=e}};function w(t,i,c,d,g){var p=!1,f=e?e[a.Ju]:m,y=t[h];return y||(y=t[h]={}),t.setNext(o),e&&(0,u.r2)(t[l.eT](),function(){return f+":"+c},function(){y[r]=!0;try{var e=o?o._id:l.m5;e&&(y[e]=!1),p=i(t)}catch(e){var u=!o||y[o._id];u&&(p=!0),o&&u||(0,s.ZP)(t[a.e4](),1,73,"Plugin ["+f+"] failed during "+c+" - "+(0,n.mmD)(e)+", run flags: "+(0,n.mmD)(y))}},d,g),p}return(0,n.N6t)(v)}(e,t,i);o||(o=v),f&&f._setNext(v),f=v}})}return r&&!o?b([r],t,i):o}var C=function(e,t,i,r){var o=y(e,t,i,r);(0,c.o$)(this,o,(0,n.cGk)(o))}},2318:(e,t,i)=>{"use strict";i.d(t,{Ft:()=>C,Qu:()=>m,Rs:()=>p,Wt:()=>h,_U:()=>v,jj:()=>b,lt:()=>w,mD:()=>y,mp:()=>g,pg:()=>f});var n=i(269),r=i(1864),o=i(5025),a=i(2910),s=i(7975),c=i(9354),l=i(5130),u=[o._G+o.wc,"https://breeze.aimon.applicationinsights.io"+o.wc,"https://dc-int.services.visualstudio.com"+o.wc],d="cid-v1:";function m(e){return-1!==(0,n.rDm)(u,e[l.OL]())}function h(e){d=e}function g(){return d}function p(e,t,i){if(!t||e&&e.disableCorrelationHeaders)return!1;if(e&&e[l.Ol])for(var r=0;r0}function f(e){if(e){var t=y(e,a.a[1]);if(t&&t!==d)return t}}function y(e,t){if(e)for(var i=e[l.sY](","),n=0;n0){var u=(0,c.cM)(t);if(r=u.host,!o)if(null!=u[l.Ue]){var d=0===u.pathname[l.oI]?"/":u[l.Ue];"/"!==d.charAt(0)&&(d="/"+d),a=u[l.Ue],o=(0,s.Rr)(e,i?i+" "+d:d)}else o=(0,s.Rr)(e,t)}else r=n,o=n;return{target:r,name:o,data:a}}function w(){var e=(0,n.FJj)();if(e&&e.now&&e.timing){var t=e.now()+e.timing.navigationStart;if(t>0)return t}return(0,n.f0d)()}function b(e,t){var i=null;return 0===e||0===t||(0,n.hXl)(e)||(0,n.hXl)(t)||(i=t-e),i}function C(e,t){var i=e||{};return{getName:function(){return i[l.RS]},setName:function(e){t&&t.setName(e),i[l.RS]=e},getTraceId:function(){return i.traceID},setTraceId:function(e){t&&t.setTraceId(e),(0,r.hX)(e)&&(i.traceID=e)},getSpanId:function(){return i.parentID},setSpanId:function(e){t&&t.setSpanId(e),(0,r.wN)(e)&&(i.parentID=e)},getTraceFlags:function(){return i.traceFlags},setTraceFlags:function(e){t&&t.setTraceFlags(e),i.traceFlags=e}}}},2396:(e,t)=>{"use strict";var i;Object.defineProperty(t,"__esModule",{value:!0}),t.BaseTelemetrySender=void 0,function(e){e[e.NOT_INSTANTIATED=0]="NOT_INSTANTIATED",e[e.INSTANTIATING=1]="INSTANTIATING",e[e.INSTANTIATED=2]="INSTANTIATED"}(i||(i={})),t.BaseTelemetrySender=class{constructor(e,t){this._instantiationStatus=i.NOT_INSTANTIATED,this._eventQueue=[],this._exceptionQueue=[],this._clientFactory=t,this._key=e}sendEventData(e,t){this._telemetryClient?this._telemetryClient.logEvent(e,t):this._instantiationStatus!==i.INSTANTIATED&&this._eventQueue.push({eventName:e,data:t})}sendErrorData(e,t){if(!this._telemetryClient)return void(this._instantiationStatus!==i.INSTANTIATED&&this._exceptionQueue.push({exception:e,data:t}));const n={stack:e.stack,message:e.message,name:e.name};if(t){const e=t.properties||t;t.properties={...e,...n}}else t={properties:n};this._telemetryClient.logEvent("unhandlederror",t)}async flush(){return this._telemetryClient?.flush()}async dispose(){this._telemetryClient&&(await this._telemetryClient.dispose(),this._telemetryClient=void 0)}_flushQueues(){this._eventQueue.forEach(({eventName:e,data:t})=>this.sendEventData(e,t)),this._eventQueue=[],this._exceptionQueue.forEach(({exception:e,data:t})=>this.sendErrorData(e,t)),this._exceptionQueue=[]}instantiateSender(){this._instantiationStatus===i.NOT_INSTANTIATED&&(this._instantiationStatus=i.INSTANTIATING,this._clientFactory(this._key).then(e=>{this._telemetryClient=e,this._instantiationStatus=i.INSTANTIATED,this._flushQueues()}).catch(e=>{console.error(e),this._instantiationStatus=i.INSTANTIATED}))}}},2445:(e,t,i)=>{"use strict";i.d(t,{C:()=>a});var n=i(5025),r=i(5130),o=i(7975),a=function(){function e(e,t,i,a,s){this.aiDataContract={ver:1,message:1,severityLevel:0,properties:0};var c=this;c.ver=2,t=t||n.R2,c[r.pM]=(0,o.Vk)(e,t),c[r.$y]=(0,o.xP)(e,a),c[r.XA]=(0,o.Vj)(e,s),i&&(c[r.Ur]=i)}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Message",e.dataType="MessageData",e}()},2468:function(e,t,i){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&n(t,e,i);return r(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.appInsightsClientFactory=void 0;const a=i(740),s=i(8393);t.appInsightsClientFactory=async(e,t,n,r,c)=>{let l;try{const t=await Promise.resolve().then(()=>o(i(5927))),n={};if(r){const e={alwaysUseXhrOverride:!0,httpXHROverride:r};n[a.BreezeChannelIdentifier]=e}let s;e.startsWith("InstrumentationKey=")||(s=e);const c=s?{instrumentationKey:s}:{connectionString:e};l=new t.ApplicationInsights({...c,disableAjaxTracking:!0,disableExceptionTracking:!0,disableFetchTracking:!0,disableCorrelationHeaders:!0,disableCookiesUsage:!0,autoTrackPageVisitTime:!1,emitLineDelimitedJson:!1,disableInstrumentationKeyValidation:!0,extensionConfig:n})}catch(e){return Promise.reject(e)}return{logEvent:(e,i)=>{const r={...i?.properties,...i?.measurements};c?.length&&s.TelemetryUtil.applyReplacements(r,c),l?.track({name:e,data:r,baseType:"EventData",ext:{user:{id:t,authId:t},app:{sesId:n}},baseData:{name:e,properties:i?.properties,measurements:i?.measurements}})},flush:async()=>{l?.flush(!1)},dispose:async()=>new Promise(e=>{l?.unload(!0,()=>{e(),l=void 0},1e3)})}}},2475:(e,t,i)=>{"use strict";i.d(t,{DD:()=>c,Lx:()=>s,NU:()=>a});var n=i(269),r=i(6182);function o(e,t,i){return!e&&(0,n.hXl)(e)?t:(0,n.Lmq)(e)?e:"true"===(0,n.oJg)(e)[r.OL]()}function a(e){return{mrg:!0,v:e}}function s(e,t,i){return{fb:i,isVal:e,v:t}}function c(e,t){return{fb:t,set:o,v:!!e}}},2608:(e,t,i)=>{"use strict";const n=i(280),{CHAR_ASTERISK:r,CHAR_AT:o,CHAR_BACKWARD_SLASH:a,CHAR_COMMA:s,CHAR_DOT:c,CHAR_EXCLAMATION_MARK:l,CHAR_FORWARD_SLASH:u,CHAR_LEFT_CURLY_BRACE:d,CHAR_LEFT_PARENTHESES:m,CHAR_LEFT_SQUARE_BRACKET:h,CHAR_PLUS:g,CHAR_QUESTION_MARK:p,CHAR_RIGHT_CURLY_BRACE:f,CHAR_RIGHT_PARENTHESES:y,CHAR_RIGHT_SQUARE_BRACKET:v}=i(3940),w=e=>e===u||e===a,b=e=>{!0!==e.isPrefix&&(e.depth=e.isGlobstar?1/0:1)};e.exports=(e,t)=>{const i=t||{},C=e.length-1,k=!0===i.parts||!0===i.scanToEnd,R=[],S=[],E=[];let D,P,_=e,A=-1,I=0,T=0,x=!1,M=!1,O=!1,B=!1,G=!1,L=!1,H=!1,F=!1,N=!1,U=!1,$=0,W={value:"",depth:0,isGlob:!1};const j=()=>A>=C,z=()=>_.charCodeAt(A+1),K=()=>(D=P,_.charCodeAt(++A));for(;A0&&(J=_.slice(0,I),_=_.slice(I),T-=I),V&&!0===O&&T>0?(V=_.slice(0,T),q=_.slice(T)):!0===O?(V="",q=_):V=_,V&&""!==V&&"/"!==V&&V!==_&&w(V.charCodeAt(V.length-1))&&(V=V.slice(0,-1)),!0===i.unescape&&(q&&(q=n.removeBackslashes(q)),V&&!0===H&&(V=n.removeBackslashes(V)));const X={prefix:J,input:e,start:I,base:V,glob:q,isBrace:x,isBracket:M,isGlob:O,isExtglob:B,isGlobstar:G,negated:F,negatedExtglob:N};if(!0===i.tokens&&(X.maxDepth=0,w(P)||S.push(W),X.tokens=S),!0===i.parts||!0===i.tokens){let t;for(let n=0;n2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0},c=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;a{let e,t,i,n=[];return class{static{const r="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[d.memoize],t=[d.memoize],i=[d.memoize],s(this,null,e,{kind:"getter",name:"label",static:!1,private:!1,access:{has:e=>"label"in e,get:e=>e.label},metadata:r},null,n),s(this,null,t,{kind:"getter",name:"description",static:!1,private:!1,access:{has:e=>"description"in e,get:e=>e.description},metadata:r},null,n),s(this,null,i,{kind:"getter",name:"iconPath",static:!1,private:!1,access:{has:e=>"iconPath"in e,get:e=>e.iconPath},metadata:r},null,n),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}repository=a(this,n);index;get label(){return h.basename(this.repository.root)}get description(){return[this.repository.headLabel,this.repository.syncLabel].filter(e=>!!e).join(" ")}get iconPath(){switch(this.repository.kind){case"submodule":return new l.ThemeIcon("archive");case"worktree":return new l.ThemeIcon("list-tree");default:return new l.ThemeIcon("repo")}}constructor(e,t){this.repository=e,this.index=t}}})();class w{workspaceState;_repositories;get repositories(){return[...this._repositories.values()]}constructor(e){this.workspaceState=e,this._repositories=new Set(e.get("closedRepositories",[])),this.onDidChangeRepositories()}addRepository(e){this._repositories.add(e),this.onDidChangeRepositories()}deleteRepository(e){const t=this._repositories.delete(e);return t&&this.onDidChangeRepositories(),t}isRepositoryClosed(e){return this._repositories.has(e)}onDidChangeRepositories(){this.workspaceState.update("closedRepositories",[...this._repositories.values()]),l.commands.executeCommand("setContext","git.closedRepositoryCount",this._repositories.size)}}class b{globalState;_repositories=new Set;get repositories(){return[...this._repositories.values()]}constructor(e){this.globalState=e,this.onDidChangeRepositories()}addRepository(e){this._repositories.add(e),this.onDidChangeRepositories()}deleteRepository(e){const t=this._repositories.delete(e);return t&&this.onDidChangeRepositories(),t}hasRepository(e){return this._repositories.has(e)}openRepository(e){this.globalState.update(`parentRepository:${e}`,!0),this.deleteRepository(e)}onDidChangeRepositories(){l.commands.executeCommand("setContext","git.parentRepositoryCount",this._repositories.size)}}class C{_repositories=new Map;get repositories(){return[...this._repositories.keys()]}constructor(){this.onDidChangeRepositories()}addRepository(e,t){this._repositories.set(e,t),this.onDidChangeRepositories()}deleteRepository(e){const t=this._repositories.delete(e);return t&&this.onDidChangeRepositories(),t}getRepositoryPath(e){return this._repositories.get(e)}hasRepository(e){return this._repositories.has(e)}onDidChangeRepositories(){l.commands.executeCommand("setContext","git.unsafeRepositoryCount",this._repositories.size)}}let k=(()=>{let e,t,i,n=[];return class{static{const r="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[d.memoize],t=[(0,d.debounce)(500)],i=[d.sequentialize],s(this,null,e,{kind:"getter",name:"isInitialized",static:!1,private:!1,access:{has:e=>"isInitialized"in e,get:e=>e.isInitialized},metadata:r},null,n),s(this,null,t,{kind:"method",name:"eventuallyScanPossibleGitRepositories",static:!1,private:!1,access:{has:e=>"eventuallyScanPossibleGitRepositories"in e,get:e=>e.eventuallyScanPossibleGitRepositories},metadata:r},null,n),s(this,null,i,{kind:"method",name:"openRepository",static:!1,private:!1,access:{has:e=>"openRepository"in e,get:e=>e.openRepository},metadata:r},null,n),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}git=a(this,n);askpass;globalState;workspaceState;logger;telemetryReporter;_onDidOpenRepository=new l.EventEmitter;onDidOpenRepository=this._onDidOpenRepository.event;_onDidCloseRepository=new l.EventEmitter;onDidCloseRepository=this._onDidCloseRepository.event;_onDidChangeRepository=new l.EventEmitter;onDidChangeRepository=this._onDidChangeRepository.event;_onDidChangeOriginalResource=new l.EventEmitter;onDidChangeOriginalResource=this._onDidChangeOriginalResource.event;openRepositories=[];get repositories(){return this.openRepositories.map(e=>e.repository)}possibleGitRepositoryPaths=new Set;_onDidChangeState=new l.EventEmitter;onDidChangeState=this._onDidChangeState.event;_onDidPublish=new l.EventEmitter;onDidPublish=this._onDidPublish.event;firePublishEvent(e,t){this._onDidPublish.fire({repository:new f.ApiRepository(e),branch:t})}_state="uninitialized";get state(){return this._state}setState(e){this._state=e,this._onDidChangeState.fire(e),l.commands.executeCommand("setContext","git.state",e)}get isInitialized(){return"initialized"===this._state?Promise.resolve():(0,m.eventToPromise)((0,m.filterEvent)(this.onDidChangeState,e=>"initialized"===e))}remoteSourcePublishers=new Set;_onDidAddRemoteSourcePublisher=new l.EventEmitter;onDidAddRemoteSourcePublisher=this._onDidAddRemoteSourcePublisher.event;_onDidRemoveRemoteSourcePublisher=new l.EventEmitter;onDidRemoveRemoteSourcePublisher=this._onDidRemoveRemoteSourcePublisher.event;postCommitCommandsProviders=new Set;_onDidChangePostCommitCommandsProviders=new l.EventEmitter;onDidChangePostCommitCommandsProviders=this._onDidChangePostCommitCommandsProviders.event;branchProtectionProviders=new Map;_onDidChangeBranchProtectionProviders=new l.EventEmitter;onDidChangeBranchProtectionProviders=this._onDidChangeBranchProtectionProviders.event;pushErrorHandlers=new Set;historyItemDetailsProviders=new Set;_unsafeRepositoriesManager;get unsafeRepositories(){return this._unsafeRepositoriesManager.repositories}_parentRepositoriesManager;get parentRepositories(){return this._parentRepositoriesManager.repositories}_closedRepositoriesManager;get closedRepositories(){return[...this._closedRepositoriesManager.repositories]}_workspaceFolders=new Map;_repositoryCache;get repositoryCache(){return this._repositoryCache}disposables=[];constructor(e,t,i,n,r,o){this.git=e,this.askpass=t,this.globalState=i,this.workspaceState=n,this.logger=r,this.telemetryReporter=o,this._closedRepositoriesManager=new w(n),this._parentRepositoriesManager=new b(i),this._unsafeRepositoriesManager=new C,l.workspace.onDidChangeWorkspaceFolders(this.onDidChangeWorkspaceFolders,this,this.disposables),l.window.onDidChangeVisibleTextEditors(this.onDidChangeVisibleTextEditors,this,this.disposables),l.window.onDidChangeActiveTextEditor(this.onDidChangeActiveTextEditor,this,this.disposables),l.workspace.onDidChangeConfiguration(this.onDidChangeConfiguration,this,this.disposables);const a=l.workspace.createFileSystemWatcher("**");this.disposables.push(a);const s=(0,m.anyEvent)(a.onDidChange,a.onDidCreate,a.onDidDelete),c=(0,m.filterEvent)(s,e=>/\/\.git/.test(e.path));(0,m.filterEvent)(c,e=>!this.getRepository(e))(this.onPossibleGitRepositoryChange,this,this.disposables),this.setState("uninitialized"),this.doInitialScan().finally(()=>this.setState("initialized")),this._repositoryCache=new y.RepositoryCache(i,r)}async doInitialScan(){this.logger.info("[Model][doInitialScan] Initial repository scan started");const e=l.workspace.getConfiguration("git"),t=e.get("autoRepositoryDetection"),i=e.get("openRepositoryInParentFolders","prompt");this.logger.trace(`[Model][doInitialScan] Settings: autoRepositoryDetection=${t}, openRepositoryInParentFolders=${i}`);const n=()=>Promise.all([this.onDidChangeWorkspaceFolders({added:l.workspace.workspaceFolders||[],removed:[]}),this.onDidChangeVisibleTextEditors(l.window.visibleTextEditors),this.scanWorkspaceFolders()]);e.get("showProgress",!0)?await l.window.withProgress({location:l.ProgressLocation.SourceControl},n):await n(),0!==this.parentRepositories.length&&"prompt"===i?this.showParentRepositoryNotification():0!==this.unsafeRepositories.length&&this.showUnsafeRepositoryNotification(),this.telemetryReporter.sendTelemetryEvent("git.repositoryInitialScan",{autoRepositoryDetection:String(t)},{repositoryCount:this.openRepositories.length}),this.logger.info(`[Model][doInitialScan] Initial repository scan completed - repositories (${this.repositories.length}), closed repositories (${this.closedRepositories.length}), parent repositories (${this.parentRepositories.length}), unsafe repositories (${this.unsafeRepositories.length})`)}async scanWorkspaceFolders(){try{const e=l.workspace.getConfiguration("git"),t=e.get("autoRepositoryDetection");if(!0!==t&&"subFolders"!==t)return;await Promise.all((l.workspace.workspaceFolders||[]).map(async t=>{const i=t.uri.fsPath;this.logger.trace(`[Model][scanWorkspaceFolders] Workspace folder: ${i}`);const n=(l.workspace.isTrusted?l.workspace.getConfiguration("git",t.uri):e).get("repositoryScanMaxDepth",1),r=(l.workspace.isTrusted?l.workspace.getConfiguration("git",t.uri):e).get("repositoryScanIgnoredFolders",[]),o=new Set(await this.traverseWorkspaceFolder(i,n,r)),a=(l.workspace.isTrusted?l.workspace.getConfiguration("git",t.uri):e).get("scanRepositories")||[];this.logger.trace(`[Model][scanWorkspaceFolders] Workspace scan settings: repositoryScanMaxDepth=${n}; repositoryScanIgnoredFolders=[${r.join(", ")}]; scanRepositories=[${a.join(", ")}]`);for(const e of a)if(".git"!==e){if(h.isAbsolute(e)){const e=l.l10n.t('Absolute paths not supported in "git.scanRepositories" setting.');this.logger.warn(`[Model][scanWorkspaceFolders] ${e}`),console.warn(e);continue}o.add(h.join(i,e))}else this.logger.trace("[Model][scanWorkspaceFolders] '.git' not supported in 'git.scanRepositories' setting.");this.logger.trace(`[Model][scanWorkspaceFolders] Workspace scan sub folders: [${[...o].join(", ")}]`),await Promise.all([...o].map(e=>this.openRepository(e)))}))}catch(e){this.logger.warn(`[Model][scanWorkspaceFolders] Error: ${e}`)}}async traverseWorkspaceFolder(e,t,i){const n=[],r=[{path:e,depth:0}];for(;r.length>0;){const e=r.shift(),o=[];try{o.push(...await g.promises.readdir(e.path,{withFileTypes:!0})),0!==e.depth&&n.push(e.path)}catch(t){this.logger.warn(`[Model][traverseWorkspaceFolder] Unable to read workspace folder '${e.path}': ${t}`);continue}if(e.depthe.isDirectory()&&".git"!==e.name&&!i.find(t=>(0,m.pathEquals)(e.name,t))).map(t=>h.join(e.path,t.name));r.push(...t.map(t=>({path:t,depth:e.depth+1})))}}return n}onPossibleGitRepositoryChange(e){!1!==l.workspace.getConfiguration("git").get("autoRepositoryDetection")&&this.eventuallyScanPossibleGitRepository(e.fsPath.replace(/\.git.*$/,""))}eventuallyScanPossibleGitRepository(e){this.possibleGitRepositoryPaths.add(e),this.eventuallyScanPossibleGitRepositories()}eventuallyScanPossibleGitRepositories(){for(const e of this.possibleGitRepositoryPaths)this.openRepository(e,!1,!0);this.possibleGitRepositoryPaths.clear()}async onDidChangeWorkspaceFolders({added:e,removed:t}){try{const i=e.filter(e=>!this.getOpenRepository(e.uri)),n=l.window.visibleTextEditors.map(e=>this.getRepository(e.document.uri)).filter(e=>!!e),r=new Set(n);t.map(e=>this.getOpenRepository(e.uri)).filter(e=>!!e).filter(e=>!r.has(e.repository)).filter(e=>!(l.workspace.workspaceFolders||[]).some(t=>(0,m.isDescendant)(t.uri.fsPath,e.repository.root))).forEach(e=>e.dispose()),this.logger.trace(`[Model][onDidChangeWorkspaceFolders] Workspace folders: [${i.map(e=>e.uri.fsPath).join(", ")}]`),await Promise.all(i.map(e=>this.openRepository(e.uri.fsPath)))}catch(e){this.logger.warn(`[Model][onDidChangeWorkspaceFolders] Error: ${e}`)}}onDidChangeConfiguration(){const e=(l.workspace.workspaceFolders||[]).filter(e=>!0===l.workspace.getConfiguration("git",e.uri).get("enabled")).filter(e=>!this.getOpenRepository(e.uri)),t=this.openRepositories.map(e=>({repository:e,root:l.Uri.file(e.repository.root)})).filter(({root:e})=>!0!==l.workspace.getConfiguration("git",e).get("enabled")).map(({repository:e})=>e);this.logger.trace(`[Model][onDidChangeConfiguration] Workspace folders: [${e.map(e=>e.uri.fsPath).join(", ")}]`),e.forEach(e=>this.openRepository(e.uri.fsPath)),t.forEach(e=>e.dispose())}async onDidChangeVisibleTextEditors(e){try{if(!l.workspace.isTrusted)return void this.logger.trace("[Model][onDidChangeVisibleTextEditors] Workspace is not trusted.");const t=l.workspace.getConfiguration("git").get("autoRepositoryDetection");if(!0!==t&&"openEditors"!==t)return;await Promise.all(e.map(async e=>{const t=e.document.uri;if("file"!==t.scheme)return;const i=this.getRepository(t);i?this.logger.trace(`[Model][onDidChangeVisibleTextEditors] Repository for editor resource ${t.fsPath} already exists: ${i.root}`):(this.logger.trace(`[Model][onDidChangeVisibleTextEditors] Open repository for editor resource ${t.fsPath}`),await this.openRepository(h.dirname(t.fsPath)))}))}catch(e){this.logger.warn(`[Model][onDidChangeVisibleTextEditors] Error: ${e}`)}}onDidChangeActiveTextEditor(){const e=l.window.activeTextEditor;if(void 0===e)return l.commands.executeCommand("setContext","git.activeResourceHasUnstagedChanges",!1),l.commands.executeCommand("setContext","git.activeResourceHasStagedChanges",!1),void l.commands.executeCommand("setContext","git.activeResourceHasMergeConflicts",!1);const t=this.getRepository(e.document.uri);if(!t)return l.commands.executeCommand("setContext","git.activeResourceHasUnstagedChanges",!1),l.commands.executeCommand("setContext","git.activeResourceHasStagedChanges",!1),void l.commands.executeCommand("setContext","git.activeResourceHasMergeConflicts",!1);const i=t.indexGroup.resourceStates.find(t=>(0,m.pathEquals)(t.resourceUri.fsPath,e.document.uri.fsPath)),n=t.workingTreeGroup.resourceStates.find(t=>(0,m.pathEquals)(t.resourceUri.fsPath,e.document.uri.fsPath)),r=!!t.mergeGroup.resourceStates.find(t=>(0,m.pathEquals)(t.resourceUri.fsPath,e.document.uri.fsPath))&&/^(<{7,}|={7,}|>{7,})/m.test(e.document.getText());l.commands.executeCommand("setContext","git.activeResourceHasStagedChanges",void 0!==i),l.commands.executeCommand("setContext","git.activeResourceHasUnstagedChanges",void 0!==n),l.commands.executeCommand("setContext","git.activeResourceHasMergeConflicts",r)}async openRepository(e,t=!1,i=!1){this.logger.trace(`[Model][openRepository] Repository: ${e}`);const n=await this.getRepositoryExact(e);if(n)return void this.logger.trace(`[Model][openRepository] Repository for path ${e} already exists: ${n.root}`);const r=l.workspace.getConfiguration("git",l.Uri.file(e));if(!0===r.get("enabled")){if(!l.workspace.isTrusted)try{g.accessSync(h.join(e,"HEAD"),g.constants.F_OK);const t=await this.git.exec(e,["-C",e,"rev-parse","--show-cdup"]);if(""===t.stderr.trim()&&""===t.stdout.trim())return void this.logger.trace(`[Model][openRepository] Bare repository: ${e}`)}catch{}try{const{repositoryRoot:n,unsafeRepositoryMatch:o}=await this.getRepositoryRoot(e);this.logger.trace(`[Model][openRepository] Repository root for path ${e} is: ${n}`);const a=await this.getRepositoryExact(n);if(a)return void this.logger.trace(`[Model][openRepository] Repository for path ${n} already exists: ${a.root}`);if(this.shouldRepositoryBeIgnored(n))return void this.logger.trace(`[Model][openRepository] Repository for path ${n} is ignored`);const s=r.get("openRepositoryInParentFolders","prompt");if("always"!==s&&!0!==this.globalState.get(`parentRepository:${n}`)){const e=await this.isRepositoryOutsideWorkspace(n);if(!i&&e)return this.logger.trace(`[Model][openRepository] Repository in parent folder: ${n}`),void(this._parentRepositoriesManager.hasRepository(n)||("initialized"===this.state&&"prompt"===s&&this.showParentRepositoryNotification(),this._parentRepositoriesManager.addRepository(n)))}if(o&&3===o.length)return this.logger.trace(`[Model][openRepository] Unsafe repository: ${n}`),"initialized"!==this._state||this._unsafeRepositoriesManager.hasRepository(n)||this.showUnsafeRepositoryNotification(),void this._unsafeRepositoriesManager.addRepository(n,o[2]);if(!t&&this._closedRepositoriesManager.isRepositoryClosed(n))return void this.logger.trace(`[Model][openRepository] Repository for path ${n} is closed`);const[c,l]=await Promise.all([this.git.getRepositoryDotGit(n),this.getRepositoryRootRealPath(n)]),d=this.git.open(n,l,c,this.logger),m=new u.Repository(d,this,this,this,this,this,this,this.globalState,this.logger,this.telemetryReporter,this._repositoryCache);this.open(m),this._closedRepositoriesManager.deleteRepository(m.root),this.logger.info(`[Model][openRepository] Opened repository (path): ${m.root}`),this.logger.info(`[Model][openRepository] Opened repository (real path): ${m.rootRealPath??m.root}`),this.logger.info(`[Model][openRepository] Opened repository (kind): ${d.kind}`),m.status().then(()=>{this._repositoryCache.update(m.remotes,[],m.root)})}catch(t){this.logger.trace(`[Model][openRepository] Opening repository for path='${e}' failed. Error:${t}`)}}else this.logger.trace("[Model][openRepository] Git is not enabled")}async openParentRepository(e){this._parentRepositoriesManager.openRepository(e),await this.openRepository(e)}async getRepositoryRoot(e){try{const t=await this.git.getRepositoryRoot(e);return{repositoryRoot:l.Uri.file(t).fsPath,unsafeRepositoryMatch:null}}catch(e){const t=/^fatal: detected dubious ownership in repository at \'([^']+)\'[\s\S]*git config --global --add safe\.directory '?([^'\n]+)'?$/m.exec(e.stderr);if(t&&3===t.length)return{repositoryRoot:h.normalize(t[1]),unsafeRepositoryMatch:t};throw e}}async getRepositoryRootRealPath(e){try{const t=await g.promises.realpath(e);return(0,m.pathEquals)(e,t)?void 0:t}catch(t){return void this.logger.warn(`[Model][getRepositoryRootRealPath] Failed to get repository realpath for "${e}": ${t}`)}}shouldRepositoryBeIgnored(e){const t=l.workspace.getConfiguration("git").get("ignoredRepositories")||[];for(const i of t)if(h.isAbsolute(i)){if((0,m.pathEquals)(i,e))return!0}else for(const t of l.workspace.workspaceFolders||[])if((0,m.pathEquals)(h.join(t.uri.fsPath,i),e))return!0;return!1}open(e){this.logger.trace(`[Model][open] Repository: ${e.root}`);const t=(0,m.filterEvent)(e.onDidChangeState,e=>1===e)(()=>v()),i=e.sourceControl.onDidDisposeParent(()=>v()),n=e.onDidChangeRepository(t=>this._onDidChangeRepository.fire({repository:e,uri:t})),r=e.onDidChangeOriginalResource(t=>this._onDidChangeOriginalResource.fire({repository:e,uri:t})),o=l.workspace.getConfiguration("git",l.Uri.file(e.root)).get("detectSubmodules"),a=l.workspace.getConfiguration("git",l.Uri.file(e.root)).get("detectSubmodulesLimit"),s=l.workspace.getConfiguration("git",l.Uri.file(e.root)).get("detectWorktrees"),c=l.workspace.getConfiguration("git",l.Uri.file(e.root)).get("detectWorktreesLimit"),u=()=>{o?(e.submodules.length>a&&(l.window.showWarningMessage(l.l10n.t('The "{0}" repository has {1} submodules which won\'t be opened automatically. You can still open each one individually by opening a file within.',h.basename(e.root),e.submodules.length)),p.dispose()),e.submodules.slice(0,a).map(t=>h.join(e.root,t.path)).forEach(e=>{this.logger.trace(`[Model][open] Opening submodule: '${e}'`),this.eventuallyScanPossibleGitRepository(e)})):this.logger.trace("[Model][open] Automatic detection of git submodules is not enabled.")},d=()=>{s?"worktree"!==e.kind?(e.worktrees.length>c&&(l.window.showWarningMessage(l.l10n.t('The "{0}" repository has {1} worktrees which won\'t be opened automatically. You can still open each one individually by opening a file within.',h.basename(e.root),e.worktrees.length)),p.dispose()),e.worktrees.slice(0,c).forEach(e=>{this.logger.trace(`[Model][open] Opening worktree: '${e.path}'`),this.eventuallyScanPossibleGitRepository(e.path)})):this.logger.trace("[Model][open] Automatic detection of git worktrees is not skipped."):this.logger.trace("[Model][open] Automatic detection of git worktrees is not enabled.")},g=()=>{const e=[];for(const{repository:t}of this.openRepositories.values())for(const i of t.mergeGroup.resourceStates)e.push(i.resourceUri);l.commands.executeCommand("setContext","git.mergeChanges",e)},p=e.onDidRunGitStatus(()=>{u(),d(),g(),this.onDidChangeActiveTextEditor()});u(),d(),this.onDidChangeActiveTextEditor();const f=()=>{let e=!1;for(const{repository:t}of this.openRepositories.values())t.operations.shouldDisableCommands()&&(e=!0);l.commands.executeCommand("setContext","operationInProgress",e)},y=(0,m.anyEvent)(e.onDidRunOperation,e.onRunOperation)(()=>f());f();const v=()=>{t.dispose(),i.dispose(),n.dispose(),r.dispose(),p.dispose(),y.dispose(),e.dispose(),this.openRepositories=this.openRepositories.filter(e=>e!==w),this._onDidCloseRepository.fire(e)},w={repository:e,dispose:v};this.openRepositories.push(w),g(),this._onDidOpenRepository.fire(e)}close(e){const t=this.getOpenRepository(e);t&&(this.logger.info(`[Model][close] Repository: ${e.root}`),this._closedRepositoriesManager.addRepository(t.repository.root),this._repositoryCache.update(e.remotes,[],e.root),t.dispose())}async pickRepository(e){if(0===this.openRepositories.length)throw new Error(l.l10n.t("There are no available repositories"));const t=this.openRepositories.filter(t=>!e||e.includes(t.repository.kind));if(0===t.length)throw new Error(l.l10n.t("There are no available repositories matching the filter"));if(1===t.length)return t[0].repository;const i=l.window.activeTextEditor,n=t.map((e,t)=>new v(e.repository,t)),r=i&&this.getRepository(i.document.fileName),o=n.findIndex(e=>e.repository===r);o>-1&&n.unshift(...n.splice(o,1));const a=l.l10n.t("Choose a repository"),s=await l.window.showQuickPick(n,{placeHolder:a});return s&&s.repository}getRepository(e){const t=this.getOpenRepository(e);return t&&t.repository}async getRepositoryExact(e){const t=this.openRepositories.find(t=>(0,m.pathEquals)(t.repository.root,e));if(t)return t.repository;try{const t=await g.promises.realpath(e,{encoding:"utf8"}),i=this.openRepositories.find(e=>(0,m.pathEquals)(e.repository.rootRealPath??e.repository.root,t));return i?.repository}catch(t){return void this.logger.warn(`[Model][getRepositoryExact] Failed to get repository realpath for: "${e}". Error:${t}`)}}getOpenRepository(e){if(e){if(e instanceof u.Repository)return this.openRepositories.filter(t=>t.repository===e)[0];if(e instanceof f.ApiRepository&&(e=e.rootUri),"string"==typeof e&&(e=l.Uri.file(e)),e instanceof l.Uri){let t;t="git"===e.scheme?(0,p.fromGitUri)(e).path:e.fsPath;e:for(const e of this.openRepositories.sort((e,t)=>t.repository.root.length-e.repository.root.length))if((0,m.isDescendant)(e.repository.root,t)){for(const i of e.repository.submodules){const n=h.join(e.repository.root,i.path);if((0,m.isDescendant)(n,t))continue e}return e}return}for(const t of this.openRepositories){const i=t.repository;if(e===i.sourceControl)return t;if(e===i.mergeGroup||e===i.indexGroup||e===i.workingTreeGroup||e===i.untrackedGroup)return t}}}getRepositoryForSubmodule(e){for(const t of this.repositories)for(const i of t.submodules)if(h.join(t.root,i.path)===e.fsPath)return t}registerRemoteSourcePublisher(e){return this.remoteSourcePublishers.add(e),this._onDidAddRemoteSourcePublisher.fire(e),(0,m.toDisposable)(()=>{this.remoteSourcePublishers.delete(e),this._onDidRemoveRemoteSourcePublisher.fire(e)})}getRemoteSourcePublishers(){return[...this.remoteSourcePublishers.values()]}registerBranchProtectionProvider(e,t){const i=[];return this.branchProtectionProviders.set(e.toString(),(this.branchProtectionProviders.get(e.toString())??new Set).add(t)),i.push(t.onDidChangeBranchProtection(e=>this._onDidChangeBranchProtectionProviders.fire(e))),this._onDidChangeBranchProtectionProviders.fire(e),(0,m.toDisposable)(()=>{const n=this.branchProtectionProviders.get(e.toString());n&&n.has(t)&&(n.delete(t),this.branchProtectionProviders.set(e.toString(),n),this._onDidChangeBranchProtectionProviders.fire(e)),(0,m.dispose)(i)})}getBranchProtectionProviders(e){return[...(this.branchProtectionProviders.get(e.toString())??new Set).values()]}registerPostCommitCommandsProvider(e){return this.postCommitCommandsProviders.add(e),this._onDidChangePostCommitCommandsProviders.fire(),(0,m.toDisposable)(()=>{this.postCommitCommandsProviders.delete(e),this._onDidChangePostCommitCommandsProviders.fire()})}getPostCommitCommandsProviders(){return[...this.postCommitCommandsProviders.values()]}registerCredentialsProvider(e){return this.askpass.registerCredentialsProvider(e)}registerPushErrorHandler(e){return this.pushErrorHandlers.add(e),(0,m.toDisposable)(()=>this.pushErrorHandlers.delete(e))}getPushErrorHandlers(){return[...this.pushErrorHandlers]}registerSourceControlHistoryItemDetailsProvider(e){return this.historyItemDetailsProviders.add(e),(0,m.toDisposable)(()=>this.historyItemDetailsProviders.delete(e))}getSourceControlHistoryItemDetailsProviders(){return[...this.historyItemDetailsProviders]}getUnsafeRepositoryPath(e){return this._unsafeRepositoriesManager.getRepositoryPath(e)}deleteUnsafeRepository(e){return this._unsafeRepositoriesManager.deleteRepository(e)}async isRepositoryOutsideWorkspace(e){const t=(l.workspace.workspaceFolders||[]).filter(e=>"file"===e.uri.scheme);if(0===t.length)return!0;const i=new Set([...t.map(e=>e.uri.fsPath),...await Promise.all(t.map(e=>this.getWorkspaceFolderRealPath(e)))]);return!Array.from(i).some(t=>t&&((0,m.pathEquals)(t,e)||(0,m.isDescendant)(t,e)))}async getWorkspaceFolderRealPath(e){let t=this._workspaceFolders.get(e.uri.fsPath);if(!t)try{t=await g.promises.realpath(e.uri.fsPath,{encoding:"utf8"}),this._workspaceFolders.set(e.uri.fsPath,t)}catch(t){this.logger.trace(`[Model][getWorkspaceFolderRealPath] Failed to resolve workspace folder "${e.uri.fsPath}". Error:${t}`)}return t}async showParentRepositoryNotification(){const e=1===this.parentRepositories.length?l.l10n.t("A git repository was found in the parent folders of the workspace or the open file(s). Would you like to open the repository?"):l.l10n.t("Git repositories were found in the parent folders of the workspace or the open file(s). Would you like to open the repositories?"),t=l.l10n.t("Yes"),i=l.l10n.t("Always"),n=l.l10n.t("Never"),r=await l.window.showInformationMessage(e,t,i,n);if(r===t)l.commands.executeCommand("git.openRepositoriesInParentFolders");else if(r===i||r===n){const e=l.workspace.getConfiguration("git");if(await e.update("openRepositoryInParentFolders",r===i?"always":"never",!0),r===i)for(const e of this.parentRepositories)await this.openParentRepository(e)}}async showUnsafeRepositoryNotification(){if(0===this.repositories.length)return;const e=1===this.unsafeRepositories.length?l.l10n.t("The git repository in the current folder is potentially unsafe as the folder is owned by someone other than the current user."):l.l10n.t("The git repositories in the current folder are potentially unsafe as the folders are owned by someone other than the current user."),t=l.l10n.t("Manage Unsafe Repositories"),i=l.l10n.t("Learn More"),n=await l.window.showErrorMessage(e,t,i);n===t?l.commands.executeCommand("git.manageUnsafeRepositories"):n===i&&l.commands.executeCommand("vscode.open",l.Uri.parse("https://aka.ms/vscode-git-unsafe-repository"))}disposeRepository(e){const t=this.getOpenRepository(e);t&&(this.logger.info(`[Model][disposeRepository] Repository: ${e.root}`),t.dispose())}dispose(){[...this.openRepositories].forEach(e=>e.dispose()),this.openRepositories=[],this.possibleGitRepositoryPaths.clear(),this.disposables=(0,m.dispose)(this.disposables)}}})();t.Model=k},2772:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.applyLineChanges=function(e,t,i){const r=[];let o=0;for(const a of i){const i=0===a.originalEndLineNumber,s=0===a.modifiedEndLineNumber;let c=i?a.originalStartLineNumber:a.originalStartLineNumber-1,l=0;if(s&&a.originalEndLineNumber===e.lineCount&&(c-=1,l=e.lineAt(c).range.end.character),r.push(e.getText(new n.Range(o,0,c,l))),!s){let o=a.modifiedStartLineNumber-1,s=0;i&&a.originalStartLineNumber===e.lineCount&&(o-=1,s=t.lineAt(o).range.end.character),r.push(t.getText(new n.Range(o,s,a.modifiedEndLineNumber,0)))}o=i?a.originalStartLineNumber:a.originalEndLineNumber}return r.push(e.getText(new n.Range(o,0,e.lineCount,0))),r.join("")},t.toLineRanges=function(e,t){const i=e.map(e=>{const i=t.lineAt(e.start.line),r=t.lineAt(e.end.line);return new n.Range(i.range.start,r.range.end)});i.sort((e,t)=>e.start.line-t.start.line);const r=i.reduce((e,t)=>{if(0===e.length)return e.push(t),e;const[i,...r]=e,o=t.intersection(i);return o?[o,...r]:t.start.line===i.end.line+1?[new n.Range(i.start,t.end),...r]:[t,...e]},[]);return r.reverse(),r},t.getModifiedRange=o,t.intersectDiffWithRange=function(e,t,i){const n=o(e,t),r=i.intersection(n);if(!r)return null;if(0===t.modifiedEndLineNumber)return t;{const e=r.start.line+1,i=r.end.line+1;if(t.originalEndLineNumber-t.originalStartLineNumber===t.modifiedEndLineNumber-t.modifiedStartLineNumber){const n=e-t.modifiedStartLineNumber,r=i-e;return{originalStartLineNumber:t.originalStartLineNumber+n,originalEndLineNumber:t.originalStartLineNumber+n+r,modifiedStartLineNumber:e,modifiedEndLineNumber:i}}return{originalStartLineNumber:t.originalStartLineNumber,originalEndLineNumber:t.originalEndLineNumber,modifiedStartLineNumber:e,modifiedEndLineNumber:i}}},t.invertLineChange=function(e){return{modifiedStartLineNumber:e.originalStartLineNumber,modifiedEndLineNumber:e.originalEndLineNumber,originalStartLineNumber:e.modifiedStartLineNumber,originalEndLineNumber:e.modifiedEndLineNumber}},t.toLineChanges=function(e){return e.changes.map(e=>{let t,i,n,r;return e.original.startLineNumber===e.original.endLineNumberExclusive?(t=e.original.startLineNumber-1,i=0):(t=e.original.startLineNumber,i=e.original.endLineNumberExclusive-1),e.modified.startLineNumber===e.modified.endLineNumberExclusive?(n=e.modified.startLineNumber-1,r=0):(n=e.modified.startLineNumber,r=e.modified.endLineNumberExclusive-1),{originalStartLineNumber:t,originalEndLineNumber:i,modifiedStartLineNumber:n,modifiedEndLineNumber:r}})},t.compareLineChanges=function(e,t){let i=e.modifiedStartLineNumber-t.modifiedStartLineNumber;return 0!==i?i:(i=e.modifiedEndLineNumber-t.modifiedEndLineNumber,0!==i?i:(i=e.originalStartLineNumber-t.originalStartLineNumber,0!==i?i:e.originalEndLineNumber-t.originalEndLineNumber))},t.getIndexDiffInformation=function(e){return e.diffInformation?.find(e=>e.original&&(0,r.isGitUri)(e.original)&&"HEAD"===(0,r.fromGitUri)(e.original).ref&&e.modified&&(0,r.isGitUri)(e.modified)&&""===(0,r.fromGitUri)(e.modified).ref)},t.getWorkingTreeDiffInformation=function(e){return a(e,"~")??a(e,"")},t.getWorkingTreeAndIndexDiffInformation=function(e){return a(e,"HEAD")};const n=i(1398),r=i(4847);function o(e,t){return 0===t.modifiedEndLineNumber?0===t.modifiedStartLineNumber?new n.Range(e.lineAt(t.modifiedStartLineNumber).range.end,e.lineAt(t.modifiedStartLineNumber).range.start):e.lineCount===t.modifiedStartLineNumber?new n.Range(e.lineAt(t.modifiedStartLineNumber-1).range.end,e.lineAt(t.modifiedStartLineNumber-1).range.end):new n.Range(e.lineAt(t.modifiedStartLineNumber-1).range.end,e.lineAt(t.modifiedStartLineNumber).range.start):new n.Range(e.lineAt(t.modifiedStartLineNumber-1).range.start,e.lineAt(t.modifiedEndLineNumber-1).range.end)}function a(e,t){return e.diffInformation?.find(e=>e.original&&(0,r.isGitUri)(e.original)&&(0,r.fromGitUri)(e.original).ref===t)}},2774:(e,t,i)=>{"use strict";i.d(t,{_:()=>M});var n,r=i(659),o=i(8279),a=i(8205),s=i(269),c=i(9749),l=i(4875),u=i(6182),d=i(4013),m=i(7847),h=i(5034),g=i(4276),p=i(7867),f=i(3775),y=i(3673),v=i(6492),w=i(1356),b=i(8156),C=i(2317),k=i(380),R=function(e){function t(){var i,n,r=e.call(this)||this;function a(){i=0,n=[]}return r.identifier="TelemetryInitializerPlugin",r.priority=199,a(),(0,o.A)(t,r,function(e,t){e.addTelemetryInitializer=function(e){return function(e,t,i){var n={id:t,fn:i};return(0,s.Yny)(e,n),{remove:function(){(0,s.Iuo)(e,function(t,i){if(t.id===n.id)return e[u.Ic](i,1),-1})}}}(n,i++,e)},e[v.qT]=function(t,i){(function(e,t,i){for(var n=!1,r=e[u.oI],o=0;o0)&&(ae||(ae=!0,ke(t[u.x6](function(e){var t=e.cfg.diagnosticLogInterval;t&&t>0||(t=1e4);var i=!1;oe&&(i=oe[u.XM],oe[u._w]()),(oe=(0,s.AHH)(ye,t)).unref(),oe[u.XM]=i}))),oe[u.XM]=!0),oe}function ue(){var e={};Q=[];var t=function(t){t&&(0,s.Iuo)(t,function(t){if(t[u.Ju]&&t[u.s]&&!e[t.identifier]){var i=t[u.Ju]+"="+t[u.s];Q[u.y5](i),e[t.identifier]=t}})};t(U),N&&(0,s.Iuo)(N,function(e){t(e)}),t(F)}function de(){i=!1,(t=(0,c.e)({},_,e[u.Uw])).cfg[u.Bl]=1,(0,s.vF1)(e,"config",{g:function(){return t.cfg},s:function(t){e.updateCfg(t,!1)}}),(0,s.vF1)(e,"pluginVersionStringArr",{g:function(){return Q||ue(),Q}}),(0,s.vF1)(e,"pluginVersionString",{g:function(){return ee||(Q||ue(),ee=Q.join(";")),ee||v.m5}}),(0,s.vF1)(e,"logger",{g:function(){return n||(n=new f.wq(t.cfg),t[u.Uw]=n),n},s:function(e){t[u.Uw]=e,n!==e&&((0,d.K)(n,!1),n=e)}}),e[u.Uw]=new f.wq(t.cfg),Y=[];var r=e.config[v.jy]||[];r.splice(0,r[u.oI]),(0,s.Yny)(r,Y),W=new R,M=[],(0,d.K)(O,!1),O=null,B=null,G=null,(0,d.K)(L,!1),L=null,H=null,F=[],N=null,U=null,$=!1,j=null,z=(0,g.Z)("AIBaseCore",!0),K=(0,S.P)(),q=null,X=null,V=(0,E.w)(),Z=[],ee=null,Q=null,se=!1,oe=null,ae=!1,te=0,ie=null,ne=null,re=!1}function me(){var i=(0,C.i8)(pe(),t.cfg,e);return i[u.by](le),i}function he(t){var i=function(e,t,i){var n,r=[],o=[],a={};return(0,s.Iuo)(i,function(i){((0,s.hXl)(i)||(0,s.hXl)(i[u.mE]))&&(0,s.$8)(D);var n=i[v.Vo],c=i[u.Ju];i&&n&&((0,s.hXl)(a[n])?a[n]=c:(0,f.OG)(e,"Two extensions have same priority #"+n+" - "+a[n]+", "+c)),!n||n0&&(0,k.pI)(o[u.$o](U),n),(0,k.pI)(o,n),t&&we(t)}function ge(e){var t=null,i=null,n=[];return(0,s.Iuo)(Y,function(t){if(t[u.Ju]===e&&t!==W)return i=t,-1;t.getChannel&&n[u.y5](t)}),!i&&n[u.oI]>0&&(0,s.Iuo)(n,function(t){if(!(i=t.getChannel(e)))return-1}),i&&(t={plugin:i,setEnabled:function(e){(0,k.Cr)(i)[v.Hr]=!e},isEnabled:function(){var e=(0,k.Cr)(i);return!e[u.Ik]&&!e[v.Hr]},remove:function(e,t){var n;void 0===e&&(e=!0);var r=[i],o=((n={reason:1})[u.tI]=e,n);fe(r,o,function(e){e&&he({reason:32,removed:r}),t&&t(e)})}}),t}function pe(){if(!H){var i=(Y||[]).slice();-1===(0,s.rDm)(i,W)&&i[u.y5](W),H=(0,C.PV)((0,k.Xc)(i),t.cfg,e)}return H}function fe(i,n,r){if(i&&i[u.oI]>0){var o=(0,C.PV)(i,t.cfg,e),a=(0,C.tS)(o,e);a[u.by](function(){var e=!1,t=[];(0,s.Iuo)(F,function(n,r){I(n,i)?e=!0:t[u.y5](n)}),F=t,ee=null,Q=null;var n=[];N&&((0,s.Iuo)(N,function(t,r){var o=[];(0,s.Iuo)(t,function(t){I(t,i)?e=!0:o[u.y5](t)}),n[u.y5](o)}),N=n),r&&r(e),le()}),a[u.$5](n)}else r(!1)}function ye(){if(n&&n.queue){var t=n.queue.slice(0);n.queue[u.oI]=0,(0,s.Iuo)(t,function(t){var i,n=((i={})[u.RS]=j||"InternalMessageId: "+t[u.JR],i[u.FI]=X,i[u.fA]=(0,y._u)(new Date),i.baseType=f.WD.dataType,i.baseData={message:t[u.pM]},i);e.track(n)})}}function ve(e,t,i,n){var r=1,o=!1,a=null;function c(){r--,o&&0===r&&(a&&a[u._w](),a=null,t&&t(o),t=null)}return n=n||5e3,U&&U[u.oI]>0&&me()[u.$o](U).iterate(function(t){if(t.flush){r++;var o=!1;t.flush(e,function(){o=!0,c()},i)||o||(e&&null==a?a=(0,s.dRz)(function(){a=null,c()},n):c())}}),o=!0,c(),!0}function we(t){var i=(0,C.nU)(pe(),e);i[u.by](le),e._updateHook&&!0===e._updateHook(i,t)||i[u.$5](t)}function be(t){var i=e[u.Uw];i?((0,f.ZP)(i,2,73,t),le()):(0,s.$8)(t)}function Ce(t){var i=e[u.RF]();i&&i[v.Yp]([t],2)}function ke(e){V.add(e)}de(),e._getDbgPlgTargets=function(){return[Y,M]},e[u.tZ]=function(){return i},e.activeStatus=function(){return te},e._setPendingStatus=function(){te=3},e[u.mE]=function(d,m,h,g){var w;$&&(0,s.$8)(P),e[u.tZ]()&&(0,s.$8)("Core cannot be initialized more than once"),t=(0,c.e)(d,_,h||e[u.Uw],!1),d=t.cfg,ke(t[u.x6](function(e){var t=e.cfg;if(3!==te){ne=t.initInMemoMaxSize||100;var r=t[u.sl],c=t.endpointUrl;if((0,s.hXl)(r)){X=null,te=l.f[u.Yq];var m="Please provide instrumentation key";i?((0,f.ZP)(n,1,100,m),ce()):(0,s.$8)(m)}else{var h=[];if((0,s.$XS)(r)?(h[u.y5](r),X=null):X=r,(0,s.$XS)(c)?(h[u.y5](c),ie=null):ie=c,h[u.oI]){re=!1,te=3;var g=(0,y.Gh)(t.initTimeOut)?t.initTimeOut:5e4,p=(0,a.lh)(h);(0,s.dRz)(function(){re||o()},g),(0,a.Dv)(p,function(e){try{if(re)return;if(!e.rejected){var t=e[u.pF];if(t&&t[u.oI]){var i=t[0];if(X=i&&i[u.pF],t[u.oI]>1){var n=t[1];ie=n&&n[u.pF]}}X&&(d[u.sl]=X,d.endpointUrl=ie)}o()}catch(e){re||o()}})}else o();var w=e.ref(e.cfg,v.Bw);(0,s.zav)(w,function(t){e.ref(w,t)})}}})),J=function(e,t,i,n){return t.add(e[u.x6](function(e){var t=e.cfg.disableDbgExt;!0===t&&n&&(i[u.h3](n),n=null),i&&!n&&!0!==t&&(n=(0,p.M)(e.cfg),i[u.vR](n))})),n}(t,V,(O=g)&&e[u.RF](),J),ke(t[u.x6](function(t){if(t.cfg.enablePerfMgr){var i=t.cfg[v.Yd];w===i&&w||(i||(i=A),(0,y.c2)(t.cfg,v.Yd,i),w=i,G=null),B||G||!(0,s.Tnt)(i)||(G=i(e,e[u.RF]()))}else G=null,w=null})),e[u.Uw]=h;var b=d[v.jy];if((F=[])[u.y5].apply(F,(0,r.vz)((0,r.vz)([],m,!1),b,!1)),N=d[v.LZ],he(null),U&&0!==U[u.oI]||(0,s.$8)("No "+v.LZ+" available"),N&&N[u.oI]>1){var C=e[u.AP]("TeeChannelController");C&&C.plugin||(0,f.ZP)(n,1,28,"TeeChannel required")}!function(e,t,i){(0,s.Iuo)(t,function(t){var n=(0,c.a)(e,t.w,i);delete t.w,t.rm=function(){n.rm()}})}(d,Z,n),Z=null,i=!0,te===l.f.ACTIVE&&ce()},e.getChannels=function(){var e=[];return U&&(0,s.Iuo)(U,function(t){e[u.y5](t)}),(0,s.N6t)(e)},e.track=function(t){(0,b.r2)(e[v.kI](),function(){return"AppInsightsCore:track"},function(){null===t&&(Ce(t),(0,s.$8)("Invalid telemetry item")),!t[u.RS]&&(0,s.hXl)(t[u.RS])&&(Ce(t),(0,s.$8)("telemetry name required")),t[u.FI]=t[u.FI]||X,t[u.fA]=t[u.fA]||(0,y._u)(new Date),t.ver=t.ver||"4.0",!$&&e[u.tZ]()&&te===l.f.ACTIVE?me()[u.$5](t):te!==l.f[u.Yq]&&M[u.oI]<=ne&&M[u.y5](t)},function(){return{item:t}},!t.sync)},e[u.DI]=me,e[u.RF]=function(){return O||(O=new w.h(t.cfg),e._notificationManager=O),O},e[u.vR]=function(t){e.getNotifyMgr()[u.vR](t)},e[u.h3]=function(e){O&&O[u.h3](e)},e.getCookieMgr=function(){return L||(L=(0,h.xN)(t.cfg,e[u.Uw])),L},e.setCookieMgr=function(e){L!==e&&((0,d.K)(L,!1),L=e)},e[v.kI]=function(){return B||G||(0,b.Z4)()},e.setPerfMgr=function(e){B=e},e.eventCnt=function(){return M[u.oI]},e.releaseQueue=function(){if(i&&M[u.oI]>0){var e=M;M=[],2===te?(0,s.Iuo)(e,function(e){e[u.FI]=e[u.FI]||X,me()[u.$5](e)}):(0,f.ZP)(n,2,20,"core init status is not active")}},e[u.h4]=function(e){return j=e||null,se=!1,oe&&oe[u._w](),le(!0)},e[u.Di]=function(){se=!0,oe&&oe[u._w](),ye()},(0,y.o$)(e,function(){return W},["addTelemetryInitializer"]),e[u.M5]=function(t,r,o){var c;void 0===t&&(t=!0),i||(0,s.$8)("SDK is not initialized"),$&&(0,s.$8)(P);var l,m=((c={reason:50})[u.tI]=t,c.flushComplete=!1,c);t&&!r&&(l=(0,a.Qo)(function(e){r=e}));var h=(0,C.tS)(pe(),e);function g(t){m.flushComplete=t,$=!0,K.run(h,m),e[u.Di](),h[u.$5](m)}return h[u.by](function(){V.run(e[u.Uw]),(0,d.k)([L,O,n],t,function(){de(),r&&r(m)})},e),ye(),ve(t,g,6,o)||g(!1),l},e[u.AP]=ge,e.addPlugin=function(e,t,i,n){if(!e)return n&&n(!1),void be(D);var r=ge(e[u.Ju]);if(r&&!t)return n&&n(!1),void be("Plugin ["+e[u.Ju]+"] is already loaded!");var o={reason:16};function a(t){F[u.y5](e),o.added=[e],he(o),n&&n(!0)}if(r){var s=[r.plugin];fe(s,{reason:2,isAsync:!!i},function(e){e?(o.removed=s,o.reason|=32,a()):n&&n(!1)})}else a()},e.updateCfg=function(i,n){var r;if(void 0===n&&(n=!0),e[u.tZ]()){r={reason:1,cfg:t.cfg,oldCfg:(0,s.zwS)({},t.cfg),newConfig:(0,s.zwS)({},i),merge:n},i=r.newConfig;var o=t.cfg;i[v.jy]=o[v.jy],i[v.LZ]=o[v.LZ]}t._block(function(e){var t=e.cfg;T(e,t,i,n),n||(0,s.zav)(t,function(n){(0,s.KhI)(i,n)||e.set(t,n,v.HP)}),e[u.h0](t,_)},!0),t[u.zs](),r&&we(r)},e.evtNamespace=function(){return z},e.flush=ve,e.getTraceCtx=function(e){return q||(q=(0,k.u7)()),q},e.setTraceCtx=function(e){q=e||null},e.addUnloadHook=ke,(0,y.RF)(e,"addUnloadCb",function(){return K},"add"),e.onCfgChange=function(n){var r,o,a,l;return i?r=(0,c.a)(t.cfg,n,e[u.Uw]):((l=x(o=Z,a=n).l)||(l={w:a,rm:function(){var e=x(o,a);-1!==e.i&&o[u.Ic](e.i,1)}},o[u.y5](l)),r=l),function(e){return(0,s.vF1)({rm:function(){e.rm()}},"toJSON",{v:function(){return"aicore::onCfgChange<"+JSON.stringify(e)+">"}})}(r)},e.getWParam=function(){return(0,s.Wtk)()||t.cfg.enableWParam?0:-1}})}return e.__ieDyn=1,e}()},2857:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;athis.cache.delete(r),6e4),t.username}catch{}const c={password:o,placeHolder:t,prompt:`Git: ${i}`,ignoreFocusOut:!0};return await s.window.showInputBox(c)||""}async handleSSHAskpass(e){const t=e[3];if(/passphrase/i.test(t)){let i;e[5]&&!/key/i.test(e[5])?i=(0,c.extractFilePathFromArgs)(e,5):e[6]&&(i=(0,c.extractFilePathFromArgs)(e,6)),this.logger.trace(`[Askpass][handleSSHAskpass] request: ${t}, file: ${i}`);const n={password:!0,placeHolder:s.l10n.t("Passphrase"),prompt:i?`SSH Key: ${i}`:void 0,ignoreFocusOut:!0};return await s.window.showInputBox(n)||""}const i=e[6].replace(/^["']+|["':]+$/g,""),n=e[15];this.logger.trace(`[Askpass][handleSSHAskpass] request: ${t}, host: ${i}, fingerprint: ${n}`);const r={canPickMany:!1,ignoreFocusOut:!0,placeHolder:s.l10n.t("Are you sure you want to continue connecting?"),title:s.l10n.t('"{0}" has fingerprint "{1}"',i??"",n??"")},o=[s.l10n.t("yes"),s.l10n.t("no")];return await s.window.showQuickPick(o,r)??""}getEnv(){return s.workspace.getConfiguration("git").get("useIntegratedAskPass")?{...this.env,...this.sshEnv}:{}}getTerminalEnv(){const e=s.workspace.getConfiguration("git");return e.get("useIntegratedAskPass")&&e.get("terminalAuthentication")?this.env:{}}registerCredentialsProvider(e){return this.credentialsProviders.add(e),(0,c.toDisposable)(()=>this.credentialsProviders.delete(e))}dispose(){this.disposable.dispose()}}},2910:(e,t,i)=>{"use strict";i.d(t,{a:()=>n});var n=(0,i(4282).o)({requestContextHeader:[0,"Request-Context"],requestContextTargetKey:[1,"appId"],requestContextAppIdFormat:[2,"appId=cid-v1:"],requestIdHeader:[3,"Request-Id"],traceParentHeader:[4,"traceparent"],traceStateHeader:[5,"tracestate"],sdkContextHeader:[6,"Sdk-Context"],sdkContextHeaderAppIdRequest:[7,"appId"],requestContextHeaderLowerCase:[8,"request-context"]})},2987:function(e,t,i){"use strict";var n=this&&this.__runInitializers||function(e,t,i){for(var n=arguments.length>2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0};Object.defineProperty(t,"__esModule",{value:!0}),t.GitFileSystemProvider=void 0;const o=i(1398),a=i(4399),s=i(4847),c=i(7937);function l(e,t,i,n){if("~"===e){const e=o.Uri.file(t).toString(),[i]=n.indexGroup.resourceStates.filter(t=>t.resourceUri.toString()===e);return i?"":"HEAD"}return/^~\d$/.test(e)?`:${e[1]}`:!i||"index"!==e&&"wt"!==e?e:"HEAD"}let u=(()=>{let e,t,i=[];return class{static{const n="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[(0,a.debounce)(1100)],t=[a.throttle],r(this,null,e,{kind:"method",name:"eventuallyFireChangeEvents",static:!1,private:!1,access:{has:e=>"eventuallyFireChangeEvents"in e,get:e=>e.eventuallyFireChangeEvents},metadata:n},null,i),r(this,null,t,{kind:"method",name:"fireChangeEvents",static:!1,private:!1,access:{has:e=>"fireChangeEvents"in e,get:e=>e.fireChangeEvents},metadata:n},null,i),n&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:n})}model=n(this,i);logger;_onDidChangeFile=new o.EventEmitter;onDidChangeFile=this._onDidChangeFile.event;changedRepositoryRoots=new Set;cache=new Map;mtime=(new Date).getTime();disposables=[];constructor(e,t){this.model=e,this.logger=t,this.disposables.push(e.onDidChangeRepository(this.onDidChangeRepository,this),e.onDidChangeOriginalResource(this.onDidChangeOriginalResource,this),o.workspace.registerFileSystemProvider("git",this,{isReadonly:!0,isCaseSensitive:!0})),setInterval(()=>this.cleanup(),3e5)}onDidChangeRepository({repository:e}){this.changedRepositoryRoots.add(e.root),this.eventuallyFireChangeEvents()}onDidChangeOriginalResource({uri:e}){if("file"!==e.scheme)return;const t=(0,s.toGitUri)(e,"~"),i=(0,s.toGitUri)(e,"",{replaceFileExtension:!0});this.mtime=(new Date).getTime(),this._onDidChangeFile.fire([{type:o.FileChangeType.Changed,uri:t},{type:o.FileChangeType.Changed,uri:i}])}eventuallyFireChangeEvents(){this.fireChangeEvents()}async fireChangeEvents(){if(!o.window.state.focused){const e=(0,c.filterEvent)(o.window.onDidChangeWindowState,e=>e.focused);await(0,c.eventToPromise)(e)}const e=[];for(const{uri:t}of this.cache.values()){const i=t.fsPath;for(const n of this.changedRepositoryRoots)if((0,c.isDescendant)(n,i)){e.push({type:o.FileChangeType.Changed,uri:t});break}}e.length>0&&(this.mtime=(new Date).getTime(),this._onDidChangeFile.fire(e)),this.changedRepositoryRoots.clear()}cleanup(){const e=(new Date).getTime(),t=new Map;for(const i of this.cache.values()){const{path:n}=(0,s.fromGitUri)(i.uri);(o.workspace.textDocuments.filter(e=>"file"===e.uri.scheme).some(e=>(0,c.pathEquals)(e.uri.fsPath,n))||e-i.timestamp<18e4)&&t.set(i.uri.toString(),i)}this.cache=t}watch(){return c.EmptyDisposable}async stat(e){await this.model.isInitialized;const{submoduleOf:t,path:i,ref:n}=(0,s.fromGitUri)(e),r=t?this.model.getRepository(t):this.model.getRepository(e);if(!r)throw this.logger.warn(`[GitFileSystemProvider][stat] Repository not found - ${e.toString()}`),o.FileSystemError.FileNotFound();try{const e=await r.getObjectDetails(l(n,i,t,r),i);return{type:o.FileType.File,size:e.size,mtime:this.mtime,ctime:0}}catch{if(n===await r.getEmptyTree())return this.logger.warn(`[GitFileSystemProvider][stat] Empty tree - ${e.toString()}`),{type:o.FileType.File,size:0,mtime:this.mtime,ctime:0};throw this.logger.warn(`[GitFileSystemProvider][stat] File not found - ${e.toString()}`),o.FileSystemError.FileNotFound()}}readDirectory(){throw new Error("Method not implemented.")}createDirectory(){throw new Error("Method not implemented.")}async readFile(e){await this.model.isInitialized;const{path:t,ref:i,submoduleOf:n}=(0,s.fromGitUri)(e);if(n){const e=this.model.getRepository(n);if(!e)throw o.FileSystemError.FileNotFound();const r=new TextEncoder;return"index"===i?r.encode(await e.diffIndexWithHEAD(t)):r.encode(await e.diffWithHEAD(t))}const r=this.model.getRepository(e);if(!r)throw this.logger.warn(`[GitFileSystemProvider][readFile] Repository not found - ${e.toString()}`),o.FileSystemError.FileNotFound();const a={uri:e,timestamp:(new Date).getTime()};this.cache.set(e.toString(),a);try{return await r.buffer(l(i,t,n,r),t)}catch{if(i===await r.getEmptyTree())return this.logger.warn(`[GitFileSystemProvider][readFile] Empty tree - ${e.toString()}`),new Uint8Array(0);throw this.logger.warn(`[GitFileSystemProvider][readFile] File not found - ${e.toString()}`),o.FileSystemError.FileNotFound()}}writeFile(){throw new Error("Method not implemented.")}delete(){throw new Error("Method not implemented.")}rename(){throw new Error("Method not implemented.")}dispose(){this.disposables.forEach(e=>e.dispose())}}})();t.GitFileSystemProvider=u},3072:(e,t,i)=>{"use strict";i.d(t,{J:()=>a});var n=i(5025),r=i(5130),o=i(7975),a=function(){function e(e,t,i,a){this.aiDataContract={ver:1,name:1,properties:0,measurements:0};var s=this;s.ver=2,s[r.RS]=(0,o.Rr)(e,t)||n.R2,s[r.$y]=(0,o.xP)(e,i),s[r.XA]=(0,o.Vj)(e,a)}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Event",e.dataType="EventData",e}()},3102:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.pickRemoteSource=async function(e={}){return n.GitBaseApi.getAPI().pickRemoteSource(e)},t.getRemoteSourceActions=async function(e){return n.GitBaseApi.getAPI().getRemoteSourceActions(e)};const n=i(8623)},3193:e=>{"use strict";e.exports=require("string_decoder")},3480:e=>{"use strict";e.exports=require("querystring")},3492:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BufferTokenizer=void 0;const n=i(8705),r=i(8632);class o extends r.AbstractTokenizer{constructor(e,t){super(t),this.uint8Array=e,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:e.length}async readBuffer(e,t){if(t&&t.position){if(t.position{"use strict";e.exports=require("timers")},3662:(e,t,i)=>{"use strict";i.d(t,{x:()=>r});var n=i(4282),r=(0,n.H)({Unknown:0,NonRetryableStatus:1,InvalidEvent:2,SizeLimitExceeded:3,KillSwitch:4,QueueFull:5});(0,n.H)({Unknown:0,NonRetryableStatus:1,CleanStorage:2,MaxInStorageTimeExceeded:3})},3673:(e,t,i)=>{"use strict";i.d(t,{CP:()=>R,Gh:()=>u,H$:()=>T,HU:()=>E,IL:()=>x,Ju:()=>m,KY:()=>p,LU:()=>M,Lo:()=>S,RF:()=>w,SZ:()=>C,_u:()=>h,c2:()=>f,cH:()=>d,hW:()=>k,jL:()=>P,lL:()=>g,o$:()=>b,qz:()=>v,r4:()=>D,w3:()=>L});var n=i(269),r=i(5664),o=i(6182),a=i(6492),s=/-([a-z])/g,c=/([^\w\d_$])/g,l=/^(\d+[\w\d_$])/;function u(e){return!(0,n.hXl)(e)}function d(e){var t=e;return t&&(0,n.KgX)(t)&&(t=(t=(t=t[o.W7](s,function(e,t){return t.toUpperCase()}))[o.W7](c,"_"))[o.W7](l,function(e,t){return"_"+t})),t}function m(e,t){return!(!e||!t)&&-1!==(0,n.HzD)(e,t)}function h(e){return e&&e.toISOString()||""}function g(e){return(0,n.bJ7)(e)?e[o.RS]:a.m5}function p(e,t,i,n,r){var o=i;return e&&((o=e[t])===i||r&&!r(o)||n&&!n(i)||(o=i,e[t]=o)),o}function f(e,t,i){var r;return e?!(r=e[t])&&(0,n.hXl)(r)&&(r=(0,n.b07)(i)?{}:i,e[t]=r):r=(0,n.b07)(i)?{}:i,r}function y(e,t){var i=null,r=null;return(0,n.Tnt)(e)?i=e:r=e,function(){var e=arguments;if(i&&(r=i()),r)return r[t][o.y9](r,e)}}function v(e,t,i){if(e&&t&&(0,n.Gvm)(e)&&(0,n.Gvm)(t)){var r=function(r){if((0,n.KgX)(r)){var o=t[r];(0,n.Tnt)(o)?i&&!i(r,!0,t,e)||(e[r]=y(t,r)):i&&!i(r,!1,t,e)||((0,n.KhI)(e,r)&&delete e[r],(0,n.vF1)(e,r,{g:function(){return t[r]},s:function(e){t[r]=e}}))}};for(var o in t)r(o)}return e}function w(e,t,i,r,o){e&&t&&i&&(!1!==o||(0,n.b07)(e[t]))&&(e[t]=y(i,r))}function b(e,t,i,r){return e&&t&&(0,n.Gvm)(e)&&(0,n.cyL)(i)&&(0,n.Iuo)(i,function(i){(0,n.KgX)(i)&&w(e,i,t,i,r)}),e}function C(e){return function(){var t=this;e&&(0,n.zav)(e,function(e,i){t[e]=i})}}function k(e){return e&&n.vE3&&(e=(0,r.s6)((0,n.vE3)({},e))),e}function R(e,t,i,r,a,s){var c=arguments,l=c[0]||{},u=c[o.oI],d=!1,m=1;for(u>0&&(0,n.Lmq)(l)&&(d=l,l=c[m]||{},m++),(0,n.Gvm)(l)||(l={});mm.randomBytes(20,(i,n)=>i?t(i):e(n)));i.update(e)}const n=(r=i.digest("hex").substring(0,10),"win32"===process.platform?`\\\\.\\pipe\\vscode-git-${r}-sock`:"darwin"!==process.platform&&process.env.XDG_RUNTIME_DIR?c.join(process.env.XDG_RUNTIME_DIR,`vscode-git-${r}.sock`):c.join(u.tmpdir(),`vscode-git-${r}.sock`));var r;if("win32"!==process.platform)try{await d.promises.unlink(n)}catch{}return new Promise((e,i)=>{try{t.on("error",e=>i(e)),t.listen(n),e(new h(t,n))}catch(e){i(e)}})};const s=i(7937),c=a(i(6928)),l=a(i(8611)),u=a(i(857)),d=a(i(9896)),m=a(i(6982));class h{server;_ipcHandlePath;handlers=new Map;get ipcHandlePath(){return this._ipcHandlePath}constructor(e,t){this.server=e,this._ipcHandlePath=t,this.server.on("request",this.onRequest.bind(this))}registerHandler(e,t){return this.handlers.set(`/${e}`,t),(0,s.toDisposable)(()=>this.handlers.delete(e))}onRequest(e,t){if(!e.url)return void console.warn("Request lacks url");const i=this.handlers.get(e.url);if(!i)return void console.warn(`IPC handler for ${e.url} not found`);const n=[];e.on("data",e=>n.push(e)),e.on("end",()=>{const e=JSON.parse(Buffer.concat(n).toString("utf8"));i.handle(e).then(e=>{t.writeHead(200),t.end(JSON.stringify(e))},()=>{t.writeHead(500),t.end()})})}getEnv(){return{VSCODE_GIT_IPC_HANDLE:this.ipcHandlePath}}getTerminalEnv(){return{VSCODE_GIT_IPC_HANDLE:this.ipcHandlePath}}dispose(){this.handlers.clear(),this.server.close(),this._ipcHandlePath&&"win32"!==process.platform&&d.unlinkSync(this._ipcHandlePath)}}t.IPCServer=h},3775:(e,t,i)=>{"use strict";i.d(t,{OG:()=>C,Oc:()=>k,WD:()=>f,ZP:()=>b,wq:()=>v,y0:()=>y});var n,r=i(8279),o=i(269),a=i(9749),s=i(6182),c=i(7867),l=i(7292),u=i(6492),d="warnToConsole",m={loggingLevelConsole:0,loggingLevelTelemetry:1,maxMessageLimit:25,enableDebug:!1},h=((n={})[0]=null,n[1]="errorToConsole",n[2]=d,n[3]="debugToConsole",n);function g(e){return e?'"'+e[s.W7](/\"/g,u.m5)+'"':u.m5}function p(e,t){var i=(0,l.U5)();if(i){var n="log";i[e]&&(n=e),(0,o.Tnt)(i[n])&&i[n](t)}}var f=function(){function e(e,t,i,n){void 0===i&&(i=!1);var r=this;r[s.JR]=e,r[s.pM]=(i?"AI: ":"AI (Internal): ")+e;var o=u.m5;(0,l.Z)()&&(o=(0,l.hm)().stringify(n));var a=(t?" message:"+g(t):u.m5)+(n?" props:"+g(o):u.m5);r[s.pM]+=a}return e.dataType="MessageData",e}();function y(e,t){return(e||{})[s.Uw]||new v(t)}var v=function(){function e(t){this.identifier="DiagnosticLogger",this.queue=[];var i,n,l,u,g,y=0,v={};(0,r.A)(e,this,function(e){function r(t,i){if(!(y>=l)){var r=!0,o="AITR_"+i[s.JR];if(v[o]?r=!1:v[o]=!0,r&&(t<=n&&(e.queue[s.y5](i),y++,w(1===t?"error":"warn",i)),y===l)){var a="Internal events throttle limit per PageView reached for this app.",c=new f(23,a,!1);e.queue[s.y5](c),1===t?e.errorToConsole(a):e[s.on](a)}}}function w(e,i){var n=(0,c.$)(t||{});n&&n[s.e4]&&n[s.e4](e,i)}g=function(t){return(0,a.a)((0,a.e)(t,m,e).cfg,function(e){var t=e.cfg;i=t[s.Bl],n=t.loggingLevelTelemetry,l=t.maxMessageLimit,u=t.enableDebug})}(t||{}),e.consoleLoggingLevel=function(){return i},e[s.ih]=function(t,n,a,c,l){void 0===l&&(l=!1);var m=new f(n,a,l,c);if(u)throw(0,o.mmD)(m);var g=h[t]||d;if((0,o.b07)(m[s.pM]))w("throw"+(1===t?"Critical":"Warning"),m);else{if(l){var p=+m[s.JR];!v[p]&&i>=t&&(e[g](m[s.pM]),v[p]=!0)}else i>=t&&e[g](m[s.pM]);r(t,m)}},e.debugToConsole=function(e){p("debug",e),w("warning",e)},e[s.on]=function(e){p("warn",e),w("warning",e)},e.errorToConsole=function(e){p("error",e),w("error",e)},e.resetInternalMessageCount=function(){y=0,v={}},e[s.sx]=r,e[s.M5]=function(e){g&&g.rm(),g=null}})}return e.__ieDyn=1,e}();function w(e){return e||new v}function b(e,t,i,n,r,o){void 0===o&&(o=!1),w(e)[s.ih](t,i,n,r,o)}function C(e,t){w(e)[s.on](t)}function k(e,t,i){w(e)[s.sx](t,i)}},3804:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AutoFetcher=void 0;const n=i(1398),r=i(7937);class o{repository;globalState;static DidInformUser="autofetch.didInformUser";_onDidChange=new n.EventEmitter;onDidChange=this._onDidChange.event;_enabled=!1;_fetchAll=!1;get enabled(){return this._enabled}set enabled(e){this._enabled=e,this._onDidChange.fire(e)}disposables=[];constructor(e,t){this.repository=e,this.globalState=t,n.workspace.onDidChangeConfiguration(this.onConfiguration,this,this.disposables),this.onConfiguration();const i=(0,r.filterEvent)(e.onDidRunOperation,({operation:e,error:t})=>!t&&e.remote);(0,r.onceEvent)(i)(this.onFirstGoodRemoteOperation,this,this.disposables)}async onFirstGoodRemoteOperation(){const e=!this.globalState.get(o.DidInformUser);if(this.enabled&&!e&&this.globalState.update(o.DidInformUser,!0),this.enabled||!e)return;const t={title:n.l10n.t("Yes")},i={isCloseAffordance:!0,title:n.l10n.t("No")},r={title:n.l10n.t("Ask Me Later")},a=await n.window.showInformationMessage(n.l10n.t('Would you like {0} to [periodically run "git fetch"]({1})?',n.env.appName,"https://go.microsoft.com/fwlink/?linkid=865294"),t,i,r);a!==r&&(a===t&&n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).update("autofetch",!0,n.ConfigurationTarget.Global),this.globalState.update(o.DidInformUser,!0))}onConfiguration(e){if(void 0===e||e.affectsConfiguration("git.autofetch"))switch(n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("autofetch")){case!0:this._fetchAll=!1,this.enable();break;case"all":this._fetchAll=!0,this.enable();break;default:this._fetchAll=!1,this.disable()}}enable(){this.enabled||(this.enabled=!0,this.run())}disable(){this.enabled=!1}async run(){for(;this.enabled;){if(await this.repository.whenIdleAndFocused(),!this.enabled)return;try{this._fetchAll?await this.repository.fetchAll({silent:!0}):await this.repository.fetchDefault({silent:!0})}catch(e){"AuthenticationFailed"===e.gitErrorCode&&this.disable()}if(!this.enabled)return;const e=1e3*n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("autofetchPeriod",180),t=new Promise(t=>setTimeout(t,e)),i=(0,r.eventToPromise)((0,r.filterEvent)(this.onDidChange,e=>!e));await Promise.race([t,i])}}dispose(){this.disable(),this.disposables.forEach(e=>e.dispose())}}t.AutoFetcher=o},3846:(e,t,i)=>{"use strict";const n=i(363),r=i(5707),o={fromFile:async function(e){const t=await n.fromFile(e);try{return await r.fromTokenizer(t)}finally{await t.close()}}};Object.assign(o,r),Object.defineProperty(o,"extensions",{get:()=>r.extensions}),Object.defineProperty(o,"mimeTypes",{get:()=>r.mimeTypes}),e.exports=o},3905:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;ad.l10n.t("Clone from {0}",e.name),urlLabel:d.l10n.t("Clone from URL")})),!e)return void this.telemetryReporter.sendTelemetryEvent("clone",{outcome:"no_URL"});e=e.trim().replace(/^git\s+clone\s+/,"");const i=this.repositoryCache.get(e);return i&&i.length>0?this.tryOpenExistingRepository(i,e,t.postCloneAction,t.parentPath,t.ref):this.cloneRepository(e,t.parentPath,t)}async cloneRepository(e,t,i={}){if(!t){let i=d.workspace.getConfiguration("git").get("defaultCloneDirectory")||l.homedir();i=i.replace(/^~/,l.homedir());const n=await d.window.showOpenDialog({canSelectFiles:!1,canSelectFolders:!0,canSelectMany:!1,defaultUri:d.Uri.file(i),title:d.l10n.t("Choose a folder to clone {0} into",e),openLabel:d.l10n.t("Select as Repository Destination")});if(!n||0===n.length)return void this.telemetryReporter.sendTelemetryEvent("clone",{outcome:"no_directory"});const r=n[0];t=r.fsPath}try{const n={location:d.ProgressLocation.Notification,title:d.l10n.t('Cloning git repository "{0}"...',e),cancellable:!0},r=await d.window.withProgress(n,(n,r)=>this.model.git.clone(e,{parentPath:t,progress:n,recursive:i.recursive,ref:i.ref},r));return await this.doPostCloneAction(r,i.postCloneAction),r}catch(e){if(/already exists and is not an empty directory/.test(e&&e.stderr||""))this.telemetryReporter.sendTelemetryEvent("clone",{outcome:"directory_not_empty"});else{if(/Cancelled/i.test(e&&(e.message||e.stderr||"")))return;this.telemetryReporter.sendTelemetryEvent("clone",{outcome:"error"})}throw e}}async doPostCloneAction(e,t){const i=d.workspace.getConfiguration("git").get("openAfterClone");let n;if(t&&"none"===t?n=m.None:"always"===i?n=m.Open:"alwaysNewWindow"===i?n=m.OpenNewWindow:"whenNoFolderOpen"!==i||d.workspace.workspaceFolders||(n=m.Open),void 0===n){let e=d.l10n.t("Would you like to open the repository?");const t=d.l10n.t("Open"),i=d.l10n.t("Open in New Window"),r=[t,i],o=d.l10n.t("Add to Workspace");d.workspace.workspaceFolders&&(e=d.l10n.t("Would you like to open the repository, or add it to the current workspace?"),r.push(o));const a=await d.window.showInformationMessage(e,{modal:!0},...r);n=a===t?m.Open:a===i?m.OpenNewWindow:a===o?m.AddToWorkspace:void 0}this.telemetryReporter.sendTelemetryEvent("clone",{outcome:"success"},{openFolder:n===m.Open||n===m.OpenNewWindow?1:0});const r=d.Uri.file(e);n===m.Open?d.commands.executeCommand("vscode.openFolder",r,{forceReuseWindow:!0}):n===m.AddToWorkspace?d.workspace.updateWorkspaceFolders(d.workspace.workspaceFolders.length,0,{uri:r}):n===m.OpenNewWindow&&d.commands.executeCommand("vscode.openFolder",r,{forceNewWindow:!0})}async chooseExistingRepository(e,t,i,n,r){try{const o=t.map(e=>({label:e.workspacePath.endsWith(".code-workspace")?d.l10n.t("Workspace: {0}",s.basename(e.workspacePath,".code-workspace")):s.basename(e.workspacePath),description:e.workspacePath,item:e})),a={label:d.l10n.t("Clone again")};o.push(a);const c=d.l10n.t("Open Existing Repository Clone"),l=await d.window.showQuickPick(o,{placeHolder:c,canPickMany:!1});if(l===a)return await this.cloneRepository(e,n,{ref:i,postCloneAction:r})??void 0;if(!l?.item)return;return l.item.workspacePath}catch{return}}async tryOpenExistingRepository(e,t,i,n,r){const o=(await Promise.all(e.map(async e=>{if(await c.promises.stat(e.workspacePath).catch(()=>{}))return e}))).filter(e=>void 0!==e);if(!o.length)return await this.cloneRepository(t,n,{ref:r,postCloneAction:i})??void 0;const a=o?.find(e=>d.workspace.workspaceFolders?.some(t=>t.uri.fsPath===e.workspacePath));if(a)return a.workspacePath;let s=1===o.length?o[0].workspacePath:void 0;return s||(s=await this.chooseExistingRepository(t,o,r,n,i)),s?(await this.doPostCloneAction(s,i),s):void 0}}},3940:(e,t,i)=>{"use strict";const n=i(6928),r="\\\\/",o=`[^${r}]`,a="\\.",s="\\/",c="[^/]",l=`(?:${s}|$)`,u=`(?:^|${s})`,d=`${a}{1,2}${l}`,m={DOT_LITERAL:a,PLUS_LITERAL:"\\+",QMARK_LITERAL:"\\?",SLASH_LITERAL:s,ONE_CHAR:"(?=.)",QMARK:c,END_ANCHOR:l,DOTS_SLASH:d,NO_DOT:`(?!${a})`,NO_DOTS:`(?!${u}${d})`,NO_DOT_SLASH:`(?!${a}{0,1}${l})`,NO_DOTS_SLASH:`(?!${d})`,QMARK_NO_DOT:`[^.${s}]`,STAR:`${c}*?`,START_ANCHOR:u},h={...m,SLASH_LITERAL:`[${r}]`,QMARK:o,STAR:`${o}*?`,DOTS_SLASH:`${a}{1,2}(?:[${r}]|$)`,NO_DOT:`(?!${a})`,NO_DOTS:`(?!(?:^|[${r}])${a}{1,2}(?:[${r}]|$))`,NO_DOT_SLASH:`(?!${a}{0,1}(?:[${r}]|$))`,NO_DOTS_SLASH:`(?!${a}{1,2}(?:[${r}]|$))`,QMARK_NO_DOT:`[^.${r}]`,START_ANCHOR:`(?:^|[${r}])`,END_ANCHOR:`(?:[${r}]|$)`};e.exports={MAX_LENGTH:65536,POSIX_REGEX_SOURCE:{alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"},REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:n.sep,extglobChars:e=>({"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}),globChars:e=>!0===e?h:m}},4013:(e,t,i)=>{"use strict";i.d(t,{K:()=>a,k:()=>s});var n=i(8205),r=i(269),o=i(6182);function a(e,t){if(e&&e[o.M5])return e[o.M5](t)}function s(e,t,i){var o;return i||(o=(0,n.Qo)(function(e){i=e})),e&&(0,r.R3R)(e)>0?(0,n.Dv)(a(e[0],t),function(){s((0,r.KVm)(e,1),t,i)}):i(),o}},4164:(e,t,i)=>{"use strict";i.d(t,{H:()=>a});var n=i(5025),r=i(5130),o=i(7975),a=function(){function e(e,t,i,a,s,c,l){this.aiDataContract={ver:1,name:0,url:0,duration:0,perfTotal:0,networkConnect:0,sentRequest:0,receivedResponse:0,domProcessing:0,properties:0,measurements:0};var u=this;u.ver=2,u.url=(0,o.pJ)(e,i),u[r.RS]=(0,o.Rr)(e,t)||n.R2,u[r.$y]=(0,o.xP)(e,s),u[r.XA]=(0,o.Vj)(e,c),l&&(u.domProcessing=l.domProcessing,u[r.qd]=l[r.qd],u.networkConnect=l.networkConnect,u.perfTotal=l.perfTotal,u[r.fd]=l[r.fd],u.sentRequest=l.sentRequest)}return e.envelopeType="Microsoft.ApplicationInsights.{0}.PageviewPerformance",e.dataType="PageviewPerformanceData",e}()},4266:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AnsiStringType=t.StringType=t.BufferType=t.Uint8ArrayType=t.IgnoreType=t.Float80_LE=t.Float80_BE=t.Float64_LE=t.Float64_BE=t.Float32_LE=t.Float32_BE=t.Float16_LE=t.Float16_BE=t.INT64_BE=t.UINT64_BE=t.INT64_LE=t.UINT64_LE=t.INT32_LE=t.INT32_BE=t.INT24_BE=t.INT24_LE=t.INT16_LE=t.INT16_BE=t.INT8=t.UINT32_BE=t.UINT32_LE=t.UINT24_BE=t.UINT24_LE=t.UINT16_BE=t.UINT16_LE=t.UINT8=void 0;const n=i(251);function r(e){return new DataView(e.buffer,e.byteOffset)}t.UINT8={len:1,get:(e,t)=>r(e).getUint8(t),put:(e,t,i)=>(r(e).setUint8(t,i),t+1)},t.UINT16_LE={len:2,get:(e,t)=>r(e).getUint16(t,!0),put:(e,t,i)=>(r(e).setUint16(t,i,!0),t+2)},t.UINT16_BE={len:2,get:(e,t)=>r(e).getUint16(t),put:(e,t,i)=>(r(e).setUint16(t,i),t+2)},t.UINT24_LE={len:3,get(e,t){const i=r(e);return i.getUint8(t)+(i.getUint16(t+1,!0)<<8)},put(e,t,i){const n=r(e);return n.setUint8(t,255&i),n.setUint16(t+1,i>>8,!0),t+3}},t.UINT24_BE={len:3,get(e,t){const i=r(e);return(i.getUint16(t)<<8)+i.getUint8(t+2)},put(e,t,i){const n=r(e);return n.setUint16(t,i>>8),n.setUint8(t+2,255&i),t+3}},t.UINT32_LE={len:4,get:(e,t)=>r(e).getUint32(t,!0),put:(e,t,i)=>(r(e).setUint32(t,i,!0),t+4)},t.UINT32_BE={len:4,get:(e,t)=>r(e).getUint32(t),put:(e,t,i)=>(r(e).setUint32(t,i),t+4)},t.INT8={len:1,get:(e,t)=>r(e).getInt8(t),put:(e,t,i)=>(r(e).setInt8(t,i),t+2)},t.INT16_BE={len:2,get:(e,t)=>r(e).getInt16(t),put:(e,t,i)=>(r(e).setInt16(t,i),t+2)},t.INT16_LE={len:2,get:(e,t)=>r(e).getInt16(t,!0),put:(e,t,i)=>(r(e).setInt16(t,i,!0),t+2)},t.INT24_LE={len:3,get(e,i){const n=t.UINT24_LE.get(e,i);return n>8388607?n-16777216:n},put(e,t,i){const n=r(e);return n.setUint8(t,255&i),n.setUint16(t+1,i>>8,!0),t+3}},t.INT24_BE={len:3,get(e,i){const n=t.UINT24_BE.get(e,i);return n>8388607?n-16777216:n},put(e,t,i){const n=r(e);return n.setUint16(t,i>>8),n.setUint8(t+2,255&i),t+3}},t.INT32_BE={len:4,get:(e,t)=>r(e).getInt32(t),put:(e,t,i)=>(r(e).setInt32(t,i),t+4)},t.INT32_LE={len:4,get:(e,t)=>r(e).getInt32(t,!0),put:(e,t,i)=>(r(e).setInt32(t,i,!0),t+4)},t.UINT64_LE={len:8,get:(e,t)=>r(e).getBigUint64(t,!0),put:(e,t,i)=>(r(e).setBigUint64(t,i,!0),t+8)},t.INT64_LE={len:8,get:(e,t)=>r(e).getBigInt64(t,!0),put:(e,t,i)=>(r(e).setBigInt64(t,i,!0),t+8)},t.UINT64_BE={len:8,get:(e,t)=>r(e).getBigUint64(t),put:(e,t,i)=>(r(e).setBigUint64(t,i),t+8)},t.INT64_BE={len:8,get:(e,t)=>r(e).getBigInt64(t),put:(e,t,i)=>(r(e).setBigInt64(t,i),t+8)},t.Float16_BE={len:2,get(e,t){return n.read(e,t,!1,10,this.len)},put(e,t,i){return n.write(e,i,t,!1,10,this.len),t+this.len}},t.Float16_LE={len:2,get(e,t){return n.read(e,t,!0,10,this.len)},put(e,t,i){return n.write(e,i,t,!0,10,this.len),t+this.len}},t.Float32_BE={len:4,get:(e,t)=>r(e).getFloat32(t),put:(e,t,i)=>(r(e).setFloat32(t,i),t+4)},t.Float32_LE={len:4,get:(e,t)=>r(e).getFloat32(t,!0),put:(e,t,i)=>(r(e).setFloat32(t,i,!0),t+4)},t.Float64_BE={len:8,get:(e,t)=>r(e).getFloat64(t),put:(e,t,i)=>(r(e).setFloat64(t,i),t+8)},t.Float64_LE={len:8,get:(e,t)=>r(e).getFloat64(t,!0),put:(e,t,i)=>(r(e).setFloat64(t,i,!0),t+8)},t.Float80_BE={len:10,get(e,t){return n.read(e,t,!1,63,this.len)},put(e,t,i){return n.write(e,i,t,!1,63,this.len),t+this.len}},t.Float80_LE={len:10,get(e,t){return n.read(e,t,!0,63,this.len)},put(e,t,i){return n.write(e,i,t,!0,63,this.len),t+this.len}},t.IgnoreType=class{constructor(e){this.len=e}get(e,t){}},t.Uint8ArrayType=class{constructor(e){this.len=e}get(e,t){return e.subarray(t,t+this.len)}},t.BufferType=class{constructor(e){this.len=e}get(e,t){return Buffer.from(e.subarray(t,t+this.len))}},t.StringType=class{constructor(e,t){this.len=e,this.encoding=t}get(e,t){return Buffer.from(e).toString(this.encoding,t,t+this.len)}};class o{constructor(e){this.len=e}static decode(e,t,i){let n="";for(let r=t;r>10),56320+(1023&e)))}static singleByteDecoder(e){if(o.inRange(e,0,127))return e;const t=o.windows1252[e-128];if(null===t)throw Error("invaliding encoding");return t}get(e,t=0){return o.decode(e,t,t+this.len)}}t.AnsiStringType=o,o.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]},4276:(e,t,i)=>{"use strict";i.d(t,{T:()=>h,Z:()=>m});var n=i(269),r=i(6182),o=i(3673),a=i(6492),s=i(6535),c="3.3.4",l="."+(0,s.Si)(6),u=0;function d(e){return 1===e[r.re]||9===e[r.re]||!+e[r.re]}function m(e,t){return void 0===t&&(t=!1),(0,o.cH)(e+u+++(t?"."+c:a.m5)+l)}function h(e){var t={id:m("_aiData-"+(e||a.m5)+"."+c),accept:function(e){return d(e)},get:function(e,i,r,a){var s=e[t.id];return s?s[(0,o.cH)(i)]:(a&&(s=function(e,t){var i=t[e.id];if(!i){i={};try{d(t)&&(0,n.vF1)(t,e.id,{e:!1,v:i})}catch(e){}}return i}(t,e),s[(0,o.cH)(i)]=r),r)},kill:function(e,t){if(e&&e[t])try{delete e[t]}catch(e){}}};return t}},4282:(e,t,i)=>{"use strict";i.d(t,{H:()=>r,o:()=>o});var n=i(269),r=n.WSA,o=n.fn0},4399:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sequentialize=t.throttle=t.memoize=void 0,t.debounce=function(e){return r((t,i)=>{const n=`$debounce$${i}`;return function(...i){clearTimeout(this[n]),this[n]=setTimeout(()=>t.apply(this,i),e)}})};const n=i(7937);function r(e){return function(t,i){if("method"===i.kind||"getter"===i.kind||"setter"===i.kind)return e(t,i.name.toString());throw new Error("not supported")}}t.memoize=r(function(e,t){const i=`$memoize$${t}`;return function(...t){return this.hasOwnProperty(i)||Object.defineProperty(this,i,{configurable:!1,enumerable:!1,writable:!1,value:e.apply(this,t)}),this[i]}}),t.throttle=r(function(e,t){const i=`$throttle$current$${t}`,r=`$throttle$next$${t}`,o=function(...t){if(this[r])return this[r];if(this[i])return this[r]=(0,n.done)(this[i]).then(()=>(this[r]=void 0,o.apply(this,t))),this[r];this[i]=e.apply(this,t);const a=()=>this[i]=void 0;return(0,n.done)(this[i]).then(a,a),this[i]};return o}),t.sequentialize=r(function(e,t){const i=`__$sequence$${t}`;return function(...t){const n=this[i]||Promise.resolve(null),r=async()=>await e.apply(this,t);return this[i]=n.then(r,r),this[i]}})},4434:e=>{"use strict";e.exports=require("events")},4459:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__runInitializers||function(e,t,i){for(var n=arguments.length>2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0},c=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;a0?e.join("$(circle-small-filled)"):this.shortCommit}constructor(e,t){super(e,t),this.ref=e}}class _ extends P{async run(e,t){if(!this.ref.name)return;const i=!0===d.workspace.getConfiguration("git",d.Uri.file(e.root)).get("pullBeforeCheckout",!1),n=t?.detached?this.ref.commit??this.ref.name:this.ref.name;await e.checkout(n,{...t,pullBeforeCheckout:i})}}class A extends _{get label(){return`$(lock) ${this.ref.name??this.shortCommit}`}}class I extends D{async run(e,t){if(!this.ref.name)return;if(t?.detached)return void await e.checkout(this.ref.commit??this.ref.name,t);const i=await e.findTrackingBranches(this.ref.name);i.length>0?await e.checkout(i[0].name,t):await e.checkoutTracking(this.ref.name,t)}}class T extends D{async run(e,t){this.ref.name&&await e.checkout(this.ref.name,t)}}class x extends P{async run(e,t){if(0===this.ref.type&&this.refName)await e.deleteBranch(this.refName,t);else if(1===this.ref.type&&this.refRemote&&this.refName){const i=this.refName.substring(this.refRemote.length+1);await e.deleteRemoteRef(this.refRemote,i,{force:t})}}}class M extends D{async run(e){this.ref.name&&await e.deleteTag(this.ref.name)}}class O extends D{get description(){return d.l10n.t("Remote tag at {0}",this.shortCommit)}async run(e,t){this.ref.name&&await e.deleteRemoteRef(t,this.ref.name)}}class B extends E{async run(e){if(this.worktree.path)try{await e.deleteWorktree(this.worktree.path)}catch(t){if("WorktreeContainsChanges"===t.gitErrorCode){const t=d.l10n.t("Force Delete"),i=d.l10n.t("The worktree contains modified or untracked files. Do you want to force delete?");await d.window.showWarningMessage(i,{modal:!0},t)===t&&await e.deleteWorktree(this.worktree.path,{force:!0})}}}}class G extends P{async run(e){(this.ref.name||this.ref.commit)&&await e.merge(this.ref.name??this.ref.commit)}}class L extends P{async run(e){this.ref?.name&&await e.rebase(this.ref.name)}}class H extends L{get description(){return"(upstream)"}}class F{repository;shortCommitLength;constructor(e,t){this.repository=e,this.shortCommitLength=t}get label(){return"HEAD"}get description(){return(this.repository.HEAD?.commit??"").substring(0,this.shortCommitLength)}get alwaysShow(){return!0}get refName(){return"HEAD"}}class N{cc;constructor(e){this.cc=e}get label(){return"$(plus) "+d.l10n.t("Add a new remote...")}get description(){return""}get alwaysShow(){return!0}async run(e){await this.cc.addRemote(e)}}class U{repository;remote;get label(){return`$(cloud) ${this.remote.name}`}get description(){return this.remote.fetchUrl}get remoteName(){return this.remote.name}constructor(e,t){this.repository=e,this.remote=t}async run(){await this.repository.fetch({remote:this.remote.name})}}class ${repository;get label(){return d.l10n.t("{0} Fetch all remotes","$(cloud-download)")}constructor(e){this.repository=e}async run(){await this.repository.fetch({all:!0})}}class W{path;get label(){return`$(repo) ${Y(this.path)}`}get description(){return this.path}constructor(e){this.path=e}}class j{stash;get label(){return`#${this.stash.index}: ${this.stash.description}`}get description(){return this.stash.branchName}constructor(e){this.stash=e}}const z=[];function K(e,t={}){return(i,n)=>{if("method"!==n.kind)throw new Error("not supported");const r=n.name.toString();z.push({commandId:e,key:r,method:i,options:t})}}async function V(e){const t=e.filter(e=>e instanceof h.Resource).filter(e=>0===e.resourceGroupType),i=e=>18===e.type||16===e.type,n=e=>15===e.type||14===e.type,r=t.filter(i),o=r.map(e=>(0,f.grep)(e.resourceUri.fsPath,/^<{7}\s|^={7}$|^>{7}\s/)),a=await Promise.all(o),s=r.filter((e,t)=>!a[t]),c=t.filter(e=>n(e)),l=[...t.filter(e=>!i(e)&&!n(e)),...r.filter((e,t)=>a[t])];return{merge:t,resolved:s,unresolved:l,deletionConflicts:c}}class J{type;ctor;refs=[];constructor(e,t=D){this.type=e,this.ctor=t}processRef(e){return!(!e.name&&!e.commit||e.type!==this.type||(this.refs.push(e),0))}getItems(e){const t=this.refs.map(t=>new this.ctor(t,e));return 0===t.length?t:[new S(this.type),...t]}}class q{repository;processors;options;shortCommitLength;constructor(e,t,i={}){this.repository=e,this.processors=t,this.options=i;const n=d.workspace.getConfiguration("git",d.Uri.file(e.root));this.shortCommitLength=n.get("commitShortHashLength",7)}processRefs(e){const t=this.getRefsToSkip();for(const i of e)if(!i.name||!t.includes(i.name))for(const e of this.processors)if(e.processRef(i))break;const i=[];for(const e of this.processors)i.push(...e.getItems(this.shortCommitLength));return i}getRefsToSkip(){const e=["origin/HEAD"];return this.options.skipCurrentBranch&&this.repository.HEAD?.name&&e.push(this.repository.HEAD.name),this.options.skipCurrentBranchRemote&&this.repository.HEAD?.upstream&&e.push(`${this.repository.HEAD.upstream.remote}/${this.repository.HEAD.upstream.name}`),e}}class X extends J{repository;constructor(e){super(0),this.repository=e}getItems(e){const t=this.refs.map(t=>this.repository.isBranchProtected(t)?new A(t,e):new _(t,e));return 0===t.length?t:[new S(this.type),...t]}}class Z extends q{buttons;detached;defaultButtons;constructor(e,t,i,n=!1){super(e,t),this.buttons=i,this.detached=n;const r=e.remotes.find(t=>t.pushUrl===e.HEAD?.remote||t.fetchUrl===e.HEAD?.remote)??e.remotes[0],o=r?.pushUrl??r?.fetchUrl;o&&(this.defaultButtons=i.get(o))}processRefs(e){for(const t of e)if(this.detached||"origin/HEAD"!==t.name)for(const e of this.processors)if(e.processRef(t))break;const t=[];for(const e of this.processors)for(const i of e.getItems(this.shortCommitLength))if(i instanceof D){if(i.refRemote){const e=this.repository.remotes.find(e=>e.name===i.refRemote),t=[];e?.pushUrl&&t.push(...this.buttons.get(e.pushUrl)??[]),e?.fetchUrl&&e.fetchUrl!==e.pushUrl&&t.push(...this.buttons.get(e.fetchUrl)??[]),t.length&&(i.buttons=t)}else i.buttons=this.defaultButtons;t.push(i)}else t.push(i);return t}}function Y(e){const t=d.workspace.getWorkspaceFolder(d.Uri.file(e));return t?.uri.toString()===e?t.name:u.basename(e)}function Q(e,t){return Y(e).localeCompare(Y(t))}function ee(e,t){return e?e.trim().replace(/^-+/,"").replace(/^\.|\/\.|\.\.|~|\^|:|\/$|\.lock$|\.lock\/|\\|\*|\s|^\s*$|\.$|\[|\]$/g,t):e}function te(e){return(e=e.trim())&&e.replace(/^\.|\/\.|\.\.|~|\^|:|\/$|\.lock$|\.lock\/|\\|\*|\s|^\s*$|\.$|\[|\]$/g,"-")}var ie;!function(e){e[e.Push=0]="Push",e[e.PushTo=1]="PushTo",e[e.PushFollowTags=2]="PushFollowTags",e[e.PushTags=3]="PushTags"}(ie||(ie={}));class ne{items=new Map;set(e,t){this.items.set(e.path,t)}delete(e){this.items.delete(e.path)}provideTextDocumentContent(e){return this.items.get(e.path)}}let re=(()=>{let e,t,i,n,r,o,c,b,S,_,A,Y,re,oe,ae,se,ce,le,ue,de,me,he,ge,pe,fe,ye,ve,we,be,Ce,ke,Re,Se,Ee,De,Pe,_e,Ae,Ie,Te,xe,Me,Oe,Be,Ge,Le,He,Fe,Ne,Ue,$e,We,je,ze,Ke,Ve,Je,qe,Xe,Ze,Ye,Qe,et,tt,it,nt,rt,ot,at,st,ct,lt,ut,dt,mt,ht,gt,pt,ft,yt,vt,wt,bt,Ct,kt,Rt,St,Et,Dt,Pt,_t,At,It,Tt,xt,Mt,Ot,Bt,Gt,Lt,Ht,Ft,Nt,Ut,$t,Wt,jt,zt,Kt,Vt,Jt,qt,Xt,Zt,Yt,Qt,ei,ti,ii,ni,ri,oi,ai,si,ci,li,ui,di,mi,hi,gi,pi,fi,yi,vi,wi,bi,Ci,ki,Ri,Si,Ei,Di,Pi,_i,Ai,Ii,Ti,xi,Mi,Oi,Bi,Gi,Li,Hi,Fi,Ni,Ui,$i,Wi,ji,zi,Ki,Vi,Ji,qi,Xi=[];return class Zi{static{const a="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[K("git.showOutput")],t=[K("git.refresh",{repository:!0})],i=[K("git.openResource")],n=[K("git.openAllChanges",{repository:!0})],r=[K("git.openMergeEditor")],o=[K("git.continueInLocalClone")],c=[K("git.clone")],b=[K("git.cloneRecursive")],S=[K("git.init")],_=[K("git.openRepository",{repository:!1})],A=[K("git.reopenClosedRepositories",{repository:!1})],Y=[K("git.close",{repository:!0})],re=[K("git.closeOtherRepositories",{repository:!0})],oe=[K("git.openFile")],ae=[K("git.openFile2")],se=[K("git.openHEADFile")],ce=[K("git.openChange")],le=[K("git.compareWithWorkspace")],ue=[K("git.rename",{repository:!0})],de=[K("git.stage")],me=[K("git.stageAll",{repository:!0})],he=[K("git.stageAllTracked",{repository:!0})],ge=[K("git.stageAllUntracked",{repository:!0})],pe=[K("git.stageAllMerge",{repository:!0})],fe=[K("git.stageChange")],ye=[K("git.diff.stageHunk")],ve=[K("git.diff.stageSelection")],we=[K("git.stageSelectedRanges")],be=[K("git.stageFile")],Ce=[K("git.acceptMerge")],ke=[K("git.runGitMerge")],Re=[K("git.runGitMergeDiff3")],Se=[K("git.revertChange")],Ee=[K("git.revertSelectedRanges")],De=[K("git.unstage")],Pe=[K("git.unstageAll",{repository:!0})],_e=[K("git.unstageSelectedRanges")],Ae=[K("git.unstageFile")],Ie=[K("git.unstageChange")],Te=[K("git.clean")],xe=[K("git.cleanAll",{repository:!0})],Me=[K("git.cleanAllTracked",{repository:!0})],Oe=[K("git.cleanAllUntracked",{repository:!0})],Be=[K("git.commit",{repository:!0})],Ge=[K("git.commitAmend",{repository:!0})],Le=[K("git.commitSigned",{repository:!0})],He=[K("git.commitStaged",{repository:!0})],Fe=[K("git.commitStagedSigned",{repository:!0})],Ne=[K("git.commitStagedAmend",{repository:!0})],Ue=[K("git.commitAll",{repository:!0})],$e=[K("git.commitAllSigned",{repository:!0})],We=[K("git.commitAllAmend",{repository:!0})],je=[K("git.commitMessageAccept")],ze=[K("git.commitMessageDiscard")],Ke=[K("git.commitEmpty",{repository:!0})],Ve=[K("git.commitNoVerify",{repository:!0})],Je=[K("git.commitStagedNoVerify",{repository:!0})],qe=[K("git.commitStagedSignedNoVerify",{repository:!0})],Xe=[K("git.commitAmendNoVerify",{repository:!0})],Ze=[K("git.commitSignedNoVerify",{repository:!0})],Ye=[K("git.commitStagedAmendNoVerify",{repository:!0})],Qe=[K("git.commitAllNoVerify",{repository:!0})],et=[K("git.commitAllSignedNoVerify",{repository:!0})],tt=[K("git.commitAllAmendNoVerify",{repository:!0})],it=[K("git.commitEmptyNoVerify",{repository:!0})],nt=[K("git.restoreCommitTemplate",{repository:!0})],rt=[K("git.undoCommit",{repository:!0})],ot=[K("git.checkout",{repository:!0})],at=[K("git.graph.checkout",{repository:!0})],st=[K("git.checkoutDetached",{repository:!0})],ct=[K("git.graph.checkoutDetached",{repository:!0})],lt=[K("git.branch",{repository:!0})],ut=[K("git.branchFrom",{repository:!0})],dt=[K("git.deleteBranch",{repository:!0})],mt=[K("git.graph.deleteBranch",{repository:!0})],ht=[K("git.graph.compareWithRemote",{repository:!0})],gt=[K("git.graph.compareWithMergeBase",{repository:!0})],pt=[K("git.graph.compareRef",{repository:!0})],ft=[K("git.deleteRemoteBranch",{repository:!0})],yt=[K("git.renameBranch",{repository:!0})],vt=[K("git.merge",{repository:!0})],wt=[K("git.mergeAbort",{repository:!0})],bt=[K("git.rebase",{repository:!0})],Ct=[K("git.createTag",{repository:!0})],kt=[K("git.deleteTag",{repository:!0})],Rt=[K("git.migrateWorktreeChanges",{repository:!0,repositoryFilter:["repository","submodule"]})],St=[K("git.openWorktreeMergeEditor")],Et=[K("git.createWorktreeWithDefaults",{repository:!0,repositoryFilter:["repository"]})],Dt=[K("git.createWorktree")],Pt=[K("git.deleteWorktree",{repository:!0,repositoryFilter:["worktree"]})],_t=[K("git.deleteWorktreeFromPalette",{repository:!0,repositoryFilter:["repository","submodule"]})],At=[K("git.openWorktree",{repository:!0})],It=[K("git.openWorktreeInNewWindow",{repository:!0})],Tt=[K("git.graph.deleteTag",{repository:!0})],xt=[K("git.deleteRemoteTag",{repository:!0})],Mt=[K("git.fetch",{repository:!0})],Ot=[K("git.fetchPrune",{repository:!0})],Bt=[K("git.fetchAll",{repository:!0})],Gt=[K("git.fetchRef",{repository:!0})],Lt=[K("git.pullFrom",{repository:!0})],Ht=[K("git.pull",{repository:!0})],Ft=[K("git.pullRebase",{repository:!0})],Nt=[K("git.pullRef",{repository:!0})],Ut=[K("git.push",{repository:!0})],$t=[K("git.pushForce",{repository:!0})],Wt=[K("git.pushWithTags",{repository:!0})],jt=[K("git.pushWithTagsForce",{repository:!0})],zt=[K("git.pushRef",{repository:!0})],Kt=[K("git.cherryPick",{repository:!0})],Vt=[K("git.graph.cherryPick",{repository:!0})],Jt=[K("git.cherryPickAbort",{repository:!0})],qt=[K("git.pushTo",{repository:!0})],Xt=[K("git.pushToForce",{repository:!0})],Zt=[K("git.pushTags",{repository:!0})],Yt=[K("git.addRemote",{repository:!0})],Qt=[K("git.removeRemote",{repository:!0})],ei=[K("git.sync",{repository:!0})],ti=[K("git._syncAll")],ii=[K("git.syncRebase",{repository:!0})],ni=[K("git.publish",{repository:!0})],ri=[K("git.ignore")],oi=[K("git.revealInExplorer")],ai=[K("git.revealFileInOS.linux"),K("git.revealFileInOS.mac"),K("git.revealFileInOS.windows")],si=[K("git.stash",{repository:!0})],ci=[K("git.stashStaged",{repository:!0})],li=[K("git.stashIncludeUntracked",{repository:!0})],ui=[K("git.stashPop",{repository:!0})],di=[K("git.stashPopLatest",{repository:!0})],mi=[K("git.stashPopEditor")],hi=[K("git.stashApply",{repository:!0})],gi=[K("git.stashApplyLatest",{repository:!0})],pi=[K("git.stashApplyEditor")],fi=[K("git.stashDrop",{repository:!0})],yi=[K("git.stashDropAll",{repository:!0})],vi=[K("git.stashDropEditor")],wi=[K("git.stashView",{repository:!0})],bi=[K("git.timeline.openDiff",{repository:!1})],Ci=[K("git.timeline.viewCommit",{repository:!1})],ki=[K("git.timeline.copyCommitId",{repository:!1})],Ri=[K("git.timeline.copyCommitMessage",{repository:!1})],Si=[K("git.timeline.selectForCompare",{repository:!1})],Ei=[K("git.timeline.compareWithSelected",{repository:!1})],Di=[K("git.rebaseAbort",{repository:!0})],Pi=[K("git.closeAllDiffEditors",{repository:!0})],_i=[K("git.closeAllUnmodifiedEditors")],Ai=[K("git.openRepositoriesInParentFolders")],Ii=[K("git.manageUnsafeRepositories")],Ti=[K("git.viewChanges",{repository:!0})],xi=[K("git.viewStagedChanges",{repository:!0})],Mi=[K("git.viewUntrackedChanges",{repository:!0})],Oi=[K("git.copyCommitId",{repository:!0})],Bi=[K("git.copyCommitMessage",{repository:!0})],Gi=[K("git.viewCommit",{repository:!0})],Li=[K("git.copyContentToClipboard")],Hi=[K("git.blame.toggleEditorDecoration")],Fi=[K("git.blame.toggleStatusBarItem")],Ni=[K("git.repositories.createBranch",{repository:!0})],Ui=[K("git.repositories.createTag",{repository:!0})],$i=[K("git.repositories.checkout",{repository:!0})],Wi=[K("git.repositories.checkoutDetached",{repository:!0})],ji=[K("git.repositories.merge",{repository:!0})],zi=[K("git.repositories.rebase",{repository:!0})],Ki=[K("git.repositories.createFrom",{repository:!0})],Vi=[K("git.repositories.compareRef",{repository:!0})],Ji=[K("git.repositories.deleteBranch",{repository:!0})],qi=[K("git.repositories.deleteTag",{repository:!0})],s(this,null,e,{kind:"method",name:"showOutput",static:!1,private:!1,access:{has:e=>"showOutput"in e,get:e=>e.showOutput},metadata:a},null,Xi),s(this,null,t,{kind:"method",name:"refresh",static:!1,private:!1,access:{has:e=>"refresh"in e,get:e=>e.refresh},metadata:a},null,Xi),s(this,null,i,{kind:"method",name:"openResource",static:!1,private:!1,access:{has:e=>"openResource"in e,get:e=>e.openResource},metadata:a},null,Xi),s(this,null,n,{kind:"method",name:"openChanges",static:!1,private:!1,access:{has:e=>"openChanges"in e,get:e=>e.openChanges},metadata:a},null,Xi),s(this,null,r,{kind:"method",name:"openMergeEditor",static:!1,private:!1,access:{has:e=>"openMergeEditor"in e,get:e=>e.openMergeEditor},metadata:a},null,Xi),s(this,null,o,{kind:"method",name:"continueInLocalClone",static:!1,private:!1,access:{has:e=>"continueInLocalClone"in e,get:e=>e.continueInLocalClone},metadata:a},null,Xi),s(this,null,c,{kind:"method",name:"clone",static:!1,private:!1,access:{has:e=>"clone"in e,get:e=>e.clone},metadata:a},null,Xi),s(this,null,b,{kind:"method",name:"cloneRecursive",static:!1,private:!1,access:{has:e=>"cloneRecursive"in e,get:e=>e.cloneRecursive},metadata:a},null,Xi),s(this,null,S,{kind:"method",name:"init",static:!1,private:!1,access:{has:e=>"init"in e,get:e=>e.init},metadata:a},null,Xi),s(this,null,_,{kind:"method",name:"openRepository",static:!1,private:!1,access:{has:e=>"openRepository"in e,get:e=>e.openRepository},metadata:a},null,Xi),s(this,null,A,{kind:"method",name:"reopenClosedRepositories",static:!1,private:!1,access:{has:e=>"reopenClosedRepositories"in e,get:e=>e.reopenClosedRepositories},metadata:a},null,Xi),s(this,null,Y,{kind:"method",name:"close",static:!1,private:!1,access:{has:e=>"close"in e,get:e=>e.close},metadata:a},null,Xi),s(this,null,re,{kind:"method",name:"closeOtherRepositories",static:!1,private:!1,access:{has:e=>"closeOtherRepositories"in e,get:e=>e.closeOtherRepositories},metadata:a},null,Xi),s(this,null,oe,{kind:"method",name:"openFile",static:!1,private:!1,access:{has:e=>"openFile"in e,get:e=>e.openFile},metadata:a},null,Xi),s(this,null,ae,{kind:"method",name:"openFile2",static:!1,private:!1,access:{has:e=>"openFile2"in e,get:e=>e.openFile2},metadata:a},null,Xi),s(this,null,se,{kind:"method",name:"openHEADFile",static:!1,private:!1,access:{has:e=>"openHEADFile"in e,get:e=>e.openHEADFile},metadata:a},null,Xi),s(this,null,ce,{kind:"method",name:"openChange",static:!1,private:!1,access:{has:e=>"openChange"in e,get:e=>e.openChange},metadata:a},null,Xi),s(this,null,le,{kind:"method",name:"compareWithWorkspace",static:!1,private:!1,access:{has:e=>"compareWithWorkspace"in e,get:e=>e.compareWithWorkspace},metadata:a},null,Xi),s(this,null,ue,{kind:"method",name:"rename",static:!1,private:!1,access:{has:e=>"rename"in e,get:e=>e.rename},metadata:a},null,Xi),s(this,null,de,{kind:"method",name:"stage",static:!1,private:!1,access:{has:e=>"stage"in e,get:e=>e.stage},metadata:a},null,Xi),s(this,null,me,{kind:"method",name:"stageAll",static:!1,private:!1,access:{has:e=>"stageAll"in e,get:e=>e.stageAll},metadata:a},null,Xi),s(this,null,he,{kind:"method",name:"stageAllTracked",static:!1,private:!1,access:{has:e=>"stageAllTracked"in e,get:e=>e.stageAllTracked},metadata:a},null,Xi),s(this,null,ge,{kind:"method",name:"stageAllUntracked",static:!1,private:!1,access:{has:e=>"stageAllUntracked"in e,get:e=>e.stageAllUntracked},metadata:a},null,Xi),s(this,null,pe,{kind:"method",name:"stageAllMerge",static:!1,private:!1,access:{has:e=>"stageAllMerge"in e,get:e=>e.stageAllMerge},metadata:a},null,Xi),s(this,null,fe,{kind:"method",name:"stageChange",static:!1,private:!1,access:{has:e=>"stageChange"in e,get:e=>e.stageChange},metadata:a},null,Xi),s(this,null,ye,{kind:"method",name:"diffStageHunk",static:!1,private:!1,access:{has:e=>"diffStageHunk"in e,get:e=>e.diffStageHunk},metadata:a},null,Xi),s(this,null,ve,{kind:"method",name:"diffStageSelection",static:!1,private:!1,access:{has:e=>"diffStageSelection"in e,get:e=>e.diffStageSelection},metadata:a},null,Xi),s(this,null,we,{kind:"method",name:"stageSelectedChanges",static:!1,private:!1,access:{has:e=>"stageSelectedChanges"in e,get:e=>e.stageSelectedChanges},metadata:a},null,Xi),s(this,null,be,{kind:"method",name:"stageFile",static:!1,private:!1,access:{has:e=>"stageFile"in e,get:e=>e.stageFile},metadata:a},null,Xi),s(this,null,Ce,{kind:"method",name:"acceptMerge",static:!1,private:!1,access:{has:e=>"acceptMerge"in e,get:e=>e.acceptMerge},metadata:a},null,Xi),s(this,null,ke,{kind:"method",name:"runGitMergeNoDiff3",static:!1,private:!1,access:{has:e=>"runGitMergeNoDiff3"in e,get:e=>e.runGitMergeNoDiff3},metadata:a},null,Xi),s(this,null,Re,{kind:"method",name:"runGitMergeDiff3",static:!1,private:!1,access:{has:e=>"runGitMergeDiff3"in e,get:e=>e.runGitMergeDiff3},metadata:a},null,Xi),s(this,null,Se,{kind:"method",name:"revertChange",static:!1,private:!1,access:{has:e=>"revertChange"in e,get:e=>e.revertChange},metadata:a},null,Xi),s(this,null,Ee,{kind:"method",name:"revertSelectedRanges",static:!1,private:!1,access:{has:e=>"revertSelectedRanges"in e,get:e=>e.revertSelectedRanges},metadata:a},null,Xi),s(this,null,De,{kind:"method",name:"unstage",static:!1,private:!1,access:{has:e=>"unstage"in e,get:e=>e.unstage},metadata:a},null,Xi),s(this,null,Pe,{kind:"method",name:"unstageAll",static:!1,private:!1,access:{has:e=>"unstageAll"in e,get:e=>e.unstageAll},metadata:a},null,Xi),s(this,null,_e,{kind:"method",name:"unstageSelectedRanges",static:!1,private:!1,access:{has:e=>"unstageSelectedRanges"in e,get:e=>e.unstageSelectedRanges},metadata:a},null,Xi),s(this,null,Ae,{kind:"method",name:"unstageFile",static:!1,private:!1,access:{has:e=>"unstageFile"in e,get:e=>e.unstageFile},metadata:a},null,Xi),s(this,null,Ie,{kind:"method",name:"unstageChange",static:!1,private:!1,access:{has:e=>"unstageChange"in e,get:e=>e.unstageChange},metadata:a},null,Xi),s(this,null,Te,{kind:"method",name:"clean",static:!1,private:!1,access:{has:e=>"clean"in e,get:e=>e.clean},metadata:a},null,Xi),s(this,null,xe,{kind:"method",name:"cleanAll",static:!1,private:!1,access:{has:e=>"cleanAll"in e,get:e=>e.cleanAll},metadata:a},null,Xi),s(this,null,Me,{kind:"method",name:"cleanAllTracked",static:!1,private:!1,access:{has:e=>"cleanAllTracked"in e,get:e=>e.cleanAllTracked},metadata:a},null,Xi),s(this,null,Oe,{kind:"method",name:"cleanAllUntracked",static:!1,private:!1,access:{has:e=>"cleanAllUntracked"in e,get:e=>e.cleanAllUntracked},metadata:a},null,Xi),s(this,null,Be,{kind:"method",name:"commit",static:!1,private:!1,access:{has:e=>"commit"in e,get:e=>e.commit},metadata:a},null,Xi),s(this,null,Ge,{kind:"method",name:"commitAmend",static:!1,private:!1,access:{has:e=>"commitAmend"in e,get:e=>e.commitAmend},metadata:a},null,Xi),s(this,null,Le,{kind:"method",name:"commitSigned",static:!1,private:!1,access:{has:e=>"commitSigned"in e,get:e=>e.commitSigned},metadata:a},null,Xi),s(this,null,He,{kind:"method",name:"commitStaged",static:!1,private:!1,access:{has:e=>"commitStaged"in e,get:e=>e.commitStaged},metadata:a},null,Xi),s(this,null,Fe,{kind:"method",name:"commitStagedSigned",static:!1,private:!1,access:{has:e=>"commitStagedSigned"in e,get:e=>e.commitStagedSigned},metadata:a},null,Xi),s(this,null,Ne,{kind:"method",name:"commitStagedAmend",static:!1,private:!1,access:{has:e=>"commitStagedAmend"in e,get:e=>e.commitStagedAmend},metadata:a},null,Xi),s(this,null,Ue,{kind:"method",name:"commitAll",static:!1,private:!1,access:{has:e=>"commitAll"in e,get:e=>e.commitAll},metadata:a},null,Xi),s(this,null,$e,{kind:"method",name:"commitAllSigned",static:!1,private:!1,access:{has:e=>"commitAllSigned"in e,get:e=>e.commitAllSigned},metadata:a},null,Xi),s(this,null,We,{kind:"method",name:"commitAllAmend",static:!1,private:!1,access:{has:e=>"commitAllAmend"in e,get:e=>e.commitAllAmend},metadata:a},null,Xi),s(this,null,je,{kind:"method",name:"commitMessageAccept",static:!1,private:!1,access:{has:e=>"commitMessageAccept"in e,get:e=>e.commitMessageAccept},metadata:a},null,Xi),s(this,null,ze,{kind:"method",name:"commitMessageDiscard",static:!1,private:!1,access:{has:e=>"commitMessageDiscard"in e,get:e=>e.commitMessageDiscard},metadata:a},null,Xi),s(this,null,Ke,{kind:"method",name:"commitEmpty",static:!1,private:!1,access:{has:e=>"commitEmpty"in e,get:e=>e.commitEmpty},metadata:a},null,Xi),s(this,null,Ve,{kind:"method",name:"commitNoVerify",static:!1,private:!1,access:{has:e=>"commitNoVerify"in e,get:e=>e.commitNoVerify},metadata:a},null,Xi),s(this,null,Je,{kind:"method",name:"commitStagedNoVerify",static:!1,private:!1,access:{has:e=>"commitStagedNoVerify"in e,get:e=>e.commitStagedNoVerify},metadata:a},null,Xi),s(this,null,qe,{kind:"method",name:"commitStagedSignedNoVerify",static:!1,private:!1,access:{has:e=>"commitStagedSignedNoVerify"in e,get:e=>e.commitStagedSignedNoVerify},metadata:a},null,Xi),s(this,null,Xe,{kind:"method",name:"commitAmendNoVerify",static:!1,private:!1,access:{has:e=>"commitAmendNoVerify"in e,get:e=>e.commitAmendNoVerify},metadata:a},null,Xi),s(this,null,Ze,{kind:"method",name:"commitSignedNoVerify",static:!1,private:!1,access:{has:e=>"commitSignedNoVerify"in e,get:e=>e.commitSignedNoVerify},metadata:a},null,Xi),s(this,null,Ye,{kind:"method",name:"commitStagedAmendNoVerify",static:!1,private:!1,access:{has:e=>"commitStagedAmendNoVerify"in e,get:e=>e.commitStagedAmendNoVerify},metadata:a},null,Xi),s(this,null,Qe,{kind:"method",name:"commitAllNoVerify",static:!1,private:!1,access:{has:e=>"commitAllNoVerify"in e,get:e=>e.commitAllNoVerify},metadata:a},null,Xi),s(this,null,et,{kind:"method",name:"commitAllSignedNoVerify",static:!1,private:!1,access:{has:e=>"commitAllSignedNoVerify"in e,get:e=>e.commitAllSignedNoVerify},metadata:a},null,Xi),s(this,null,tt,{kind:"method",name:"commitAllAmendNoVerify",static:!1,private:!1,access:{has:e=>"commitAllAmendNoVerify"in e,get:e=>e.commitAllAmendNoVerify},metadata:a},null,Xi),s(this,null,it,{kind:"method",name:"commitEmptyNoVerify",static:!1,private:!1,access:{has:e=>"commitEmptyNoVerify"in e,get:e=>e.commitEmptyNoVerify},metadata:a},null,Xi),s(this,null,nt,{kind:"method",name:"restoreCommitTemplate",static:!1,private:!1,access:{has:e=>"restoreCommitTemplate"in e,get:e=>e.restoreCommitTemplate},metadata:a},null,Xi),s(this,null,rt,{kind:"method",name:"undoCommit",static:!1,private:!1,access:{has:e=>"undoCommit"in e,get:e=>e.undoCommit},metadata:a},null,Xi),s(this,null,ot,{kind:"method",name:"checkout",static:!1,private:!1,access:{has:e=>"checkout"in e,get:e=>e.checkout},metadata:a},null,Xi),s(this,null,at,{kind:"method",name:"checkout2",static:!1,private:!1,access:{has:e=>"checkout2"in e,get:e=>e.checkout2},metadata:a},null,Xi),s(this,null,st,{kind:"method",name:"checkoutDetached",static:!1,private:!1,access:{has:e=>"checkoutDetached"in e,get:e=>e.checkoutDetached},metadata:a},null,Xi),s(this,null,ct,{kind:"method",name:"checkoutDetached2",static:!1,private:!1,access:{has:e=>"checkoutDetached2"in e,get:e=>e.checkoutDetached2},metadata:a},null,Xi),s(this,null,lt,{kind:"method",name:"branch",static:!1,private:!1,access:{has:e=>"branch"in e,get:e=>e.branch},metadata:a},null,Xi),s(this,null,ut,{kind:"method",name:"branchFrom",static:!1,private:!1,access:{has:e=>"branchFrom"in e,get:e=>e.branchFrom},metadata:a},null,Xi),s(this,null,dt,{kind:"method",name:"deleteBranch",static:!1,private:!1,access:{has:e=>"deleteBranch"in e,get:e=>e.deleteBranch},metadata:a},null,Xi),s(this,null,mt,{kind:"method",name:"deleteBranch2",static:!1,private:!1,access:{has:e=>"deleteBranch2"in e,get:e=>e.deleteBranch2},metadata:a},null,Xi),s(this,null,ht,{kind:"method",name:"compareWithRemote",static:!1,private:!1,access:{has:e=>"compareWithRemote"in e,get:e=>e.compareWithRemote},metadata:a},null,Xi),s(this,null,gt,{kind:"method",name:"compareWithMergeBase",static:!1,private:!1,access:{has:e=>"compareWithMergeBase"in e,get:e=>e.compareWithMergeBase},metadata:a},null,Xi),s(this,null,pt,{kind:"method",name:"compareRef",static:!1,private:!1,access:{has:e=>"compareRef"in e,get:e=>e.compareRef},metadata:a},null,Xi),s(this,null,ft,{kind:"method",name:"deleteRemoteBranch",static:!1,private:!1,access:{has:e=>"deleteRemoteBranch"in e,get:e=>e.deleteRemoteBranch},metadata:a},null,Xi),s(this,null,yt,{kind:"method",name:"renameBranch",static:!1,private:!1,access:{has:e=>"renameBranch"in e,get:e=>e.renameBranch},metadata:a},null,Xi),s(this,null,vt,{kind:"method",name:"merge",static:!1,private:!1,access:{has:e=>"merge"in e,get:e=>e.merge},metadata:a},null,Xi),s(this,null,wt,{kind:"method",name:"abortMerge",static:!1,private:!1,access:{has:e=>"abortMerge"in e,get:e=>e.abortMerge},metadata:a},null,Xi),s(this,null,bt,{kind:"method",name:"rebase",static:!1,private:!1,access:{has:e=>"rebase"in e,get:e=>e.rebase},metadata:a},null,Xi),s(this,null,Ct,{kind:"method",name:"createTag",static:!1,private:!1,access:{has:e=>"createTag"in e,get:e=>e.createTag},metadata:a},null,Xi),s(this,null,kt,{kind:"method",name:"deleteTag",static:!1,private:!1,access:{has:e=>"deleteTag"in e,get:e=>e.deleteTag},metadata:a},null,Xi),s(this,null,Rt,{kind:"method",name:"migrateWorktreeChanges",static:!1,private:!1,access:{has:e=>"migrateWorktreeChanges"in e,get:e=>e.migrateWorktreeChanges},metadata:a},null,Xi),s(this,null,St,{kind:"method",name:"openWorktreeMergeEditor",static:!1,private:!1,access:{has:e=>"openWorktreeMergeEditor"in e,get:e=>e.openWorktreeMergeEditor},metadata:a},null,Xi),s(this,null,Et,{kind:"method",name:"createWorktreeWithDefaults",static:!1,private:!1,access:{has:e=>"createWorktreeWithDefaults"in e,get:e=>e.createWorktreeWithDefaults},metadata:a},null,Xi),s(this,null,Dt,{kind:"method",name:"createWorktree",static:!1,private:!1,access:{has:e=>"createWorktree"in e,get:e=>e.createWorktree},metadata:a},null,Xi),s(this,null,Pt,{kind:"method",name:"deleteWorktree",static:!1,private:!1,access:{has:e=>"deleteWorktree"in e,get:e=>e.deleteWorktree},metadata:a},null,Xi),s(this,null,_t,{kind:"method",name:"deleteWorktreeFromPalette",static:!1,private:!1,access:{has:e=>"deleteWorktreeFromPalette"in e,get:e=>e.deleteWorktreeFromPalette},metadata:a},null,Xi),s(this,null,At,{kind:"method",name:"openWorktreeInCurrentWindow",static:!1,private:!1,access:{has:e=>"openWorktreeInCurrentWindow"in e,get:e=>e.openWorktreeInCurrentWindow},metadata:a},null,Xi),s(this,null,It,{kind:"method",name:"openWorktreeInNewWindow",static:!1,private:!1,access:{has:e=>"openWorktreeInNewWindow"in e,get:e=>e.openWorktreeInNewWindow},metadata:a},null,Xi),s(this,null,Tt,{kind:"method",name:"deleteTag2",static:!1,private:!1,access:{has:e=>"deleteTag2"in e,get:e=>e.deleteTag2},metadata:a},null,Xi),s(this,null,xt,{kind:"method",name:"deleteRemoteTag",static:!1,private:!1,access:{has:e=>"deleteRemoteTag"in e,get:e=>e.deleteRemoteTag},metadata:a},null,Xi),s(this,null,Mt,{kind:"method",name:"fetch",static:!1,private:!1,access:{has:e=>"fetch"in e,get:e=>e.fetch},metadata:a},null,Xi),s(this,null,Ot,{kind:"method",name:"fetchPrune",static:!1,private:!1,access:{has:e=>"fetchPrune"in e,get:e=>e.fetchPrune},metadata:a},null,Xi),s(this,null,Bt,{kind:"method",name:"fetchAll",static:!1,private:!1,access:{has:e=>"fetchAll"in e,get:e=>e.fetchAll},metadata:a},null,Xi),s(this,null,Gt,{kind:"method",name:"fetchRef",static:!1,private:!1,access:{has:e=>"fetchRef"in e,get:e=>e.fetchRef},metadata:a},null,Xi),s(this,null,Lt,{kind:"method",name:"pullFrom",static:!1,private:!1,access:{has:e=>"pullFrom"in e,get:e=>e.pullFrom},metadata:a},null,Xi),s(this,null,Ht,{kind:"method",name:"pull",static:!1,private:!1,access:{has:e=>"pull"in e,get:e=>e.pull},metadata:a},null,Xi),s(this,null,Ft,{kind:"method",name:"pullRebase",static:!1,private:!1,access:{has:e=>"pullRebase"in e,get:e=>e.pullRebase},metadata:a},null,Xi),s(this,null,Nt,{kind:"method",name:"pullRef",static:!1,private:!1,access:{has:e=>"pullRef"in e,get:e=>e.pullRef},metadata:a},null,Xi),s(this,null,Ut,{kind:"method",name:"push",static:!1,private:!1,access:{has:e=>"push"in e,get:e=>e.push},metadata:a},null,Xi),s(this,null,$t,{kind:"method",name:"pushForce",static:!1,private:!1,access:{has:e=>"pushForce"in e,get:e=>e.pushForce},metadata:a},null,Xi),s(this,null,Wt,{kind:"method",name:"pushFollowTags",static:!1,private:!1,access:{has:e=>"pushFollowTags"in e,get:e=>e.pushFollowTags},metadata:a},null,Xi),s(this,null,jt,{kind:"method",name:"pushFollowTagsForce",static:!1,private:!1,access:{has:e=>"pushFollowTagsForce"in e,get:e=>e.pushFollowTagsForce},metadata:a},null,Xi),s(this,null,zt,{kind:"method",name:"pushRef",static:!1,private:!1,access:{has:e=>"pushRef"in e,get:e=>e.pushRef},metadata:a},null,Xi),s(this,null,Kt,{kind:"method",name:"cherryPick",static:!1,private:!1,access:{has:e=>"cherryPick"in e,get:e=>e.cherryPick},metadata:a},null,Xi),s(this,null,Vt,{kind:"method",name:"cherryPick2",static:!1,private:!1,access:{has:e=>"cherryPick2"in e,get:e=>e.cherryPick2},metadata:a},null,Xi),s(this,null,Jt,{kind:"method",name:"cherryPickAbort",static:!1,private:!1,access:{has:e=>"cherryPickAbort"in e,get:e=>e.cherryPickAbort},metadata:a},null,Xi),s(this,null,qt,{kind:"method",name:"pushTo",static:!1,private:!1,access:{has:e=>"pushTo"in e,get:e=>e.pushTo},metadata:a},null,Xi),s(this,null,Xt,{kind:"method",name:"pushToForce",static:!1,private:!1,access:{has:e=>"pushToForce"in e,get:e=>e.pushToForce},metadata:a},null,Xi),s(this,null,Zt,{kind:"method",name:"pushTags",static:!1,private:!1,access:{has:e=>"pushTags"in e,get:e=>e.pushTags},metadata:a},null,Xi),s(this,null,Yt,{kind:"method",name:"addRemote",static:!1,private:!1,access:{has:e=>"addRemote"in e,get:e=>e.addRemote},metadata:a},null,Xi),s(this,null,Qt,{kind:"method",name:"removeRemote",static:!1,private:!1,access:{has:e=>"removeRemote"in e,get:e=>e.removeRemote},metadata:a},null,Xi),s(this,null,ei,{kind:"method",name:"sync",static:!1,private:!1,access:{has:e=>"sync"in e,get:e=>e.sync},metadata:a},null,Xi),s(this,null,ti,{kind:"method",name:"syncAll",static:!1,private:!1,access:{has:e=>"syncAll"in e,get:e=>e.syncAll},metadata:a},null,Xi),s(this,null,ii,{kind:"method",name:"syncRebase",static:!1,private:!1,access:{has:e=>"syncRebase"in e,get:e=>e.syncRebase},metadata:a},null,Xi),s(this,null,ni,{kind:"method",name:"publish",static:!1,private:!1,access:{has:e=>"publish"in e,get:e=>e.publish},metadata:a},null,Xi),s(this,null,ri,{kind:"method",name:"ignore",static:!1,private:!1,access:{has:e=>"ignore"in e,get:e=>e.ignore},metadata:a},null,Xi),s(this,null,oi,{kind:"method",name:"revealInExplorer",static:!1,private:!1,access:{has:e=>"revealInExplorer"in e,get:e=>e.revealInExplorer},metadata:a},null,Xi),s(this,null,ai,{kind:"method",name:"revealFileInOS",static:!1,private:!1,access:{has:e=>"revealFileInOS"in e,get:e=>e.revealFileInOS},metadata:a},null,Xi),s(this,null,si,{kind:"method",name:"stash",static:!1,private:!1,access:{has:e=>"stash"in e,get:e=>e.stash},metadata:a},null,Xi),s(this,null,ci,{kind:"method",name:"stashStaged",static:!1,private:!1,access:{has:e=>"stashStaged"in e,get:e=>e.stashStaged},metadata:a},null,Xi),s(this,null,li,{kind:"method",name:"stashIncludeUntracked",static:!1,private:!1,access:{has:e=>"stashIncludeUntracked"in e,get:e=>e.stashIncludeUntracked},metadata:a},null,Xi),s(this,null,ui,{kind:"method",name:"stashPop",static:!1,private:!1,access:{has:e=>"stashPop"in e,get:e=>e.stashPop},metadata:a},null,Xi),s(this,null,di,{kind:"method",name:"stashPopLatest",static:!1,private:!1,access:{has:e=>"stashPopLatest"in e,get:e=>e.stashPopLatest},metadata:a},null,Xi),s(this,null,mi,{kind:"method",name:"stashPopEditor",static:!1,private:!1,access:{has:e=>"stashPopEditor"in e,get:e=>e.stashPopEditor},metadata:a},null,Xi),s(this,null,hi,{kind:"method",name:"stashApply",static:!1,private:!1,access:{has:e=>"stashApply"in e,get:e=>e.stashApply},metadata:a},null,Xi),s(this,null,gi,{kind:"method",name:"stashApplyLatest",static:!1,private:!1,access:{has:e=>"stashApplyLatest"in e,get:e=>e.stashApplyLatest},metadata:a},null,Xi),s(this,null,pi,{kind:"method",name:"stashApplyEditor",static:!1,private:!1,access:{has:e=>"stashApplyEditor"in e,get:e=>e.stashApplyEditor},metadata:a},null,Xi),s(this,null,fi,{kind:"method",name:"stashDrop",static:!1,private:!1,access:{has:e=>"stashDrop"in e,get:e=>e.stashDrop},metadata:a},null,Xi),s(this,null,yi,{kind:"method",name:"stashDropAll",static:!1,private:!1,access:{has:e=>"stashDropAll"in e,get:e=>e.stashDropAll},metadata:a},null,Xi),s(this,null,vi,{kind:"method",name:"stashDropEditor",static:!1,private:!1,access:{has:e=>"stashDropEditor"in e,get:e=>e.stashDropEditor},metadata:a},null,Xi),s(this,null,wi,{kind:"method",name:"stashView",static:!1,private:!1,access:{has:e=>"stashView"in e,get:e=>e.stashView},metadata:a},null,Xi),s(this,null,bi,{kind:"method",name:"timelineOpenDiff",static:!1,private:!1,access:{has:e=>"timelineOpenDiff"in e,get:e=>e.timelineOpenDiff},metadata:a},null,Xi),s(this,null,Ci,{kind:"method",name:"timelineViewCommit",static:!1,private:!1,access:{has:e=>"timelineViewCommit"in e,get:e=>e.timelineViewCommit},metadata:a},null,Xi),s(this,null,ki,{kind:"method",name:"timelineCopyCommitId",static:!1,private:!1,access:{has:e=>"timelineCopyCommitId"in e,get:e=>e.timelineCopyCommitId},metadata:a},null,Xi),s(this,null,Ri,{kind:"method",name:"timelineCopyCommitMessage",static:!1,private:!1,access:{has:e=>"timelineCopyCommitMessage"in e,get:e=>e.timelineCopyCommitMessage},metadata:a},null,Xi),s(this,null,Si,{kind:"method",name:"timelineSelectForCompare",static:!1,private:!1,access:{has:e=>"timelineSelectForCompare"in e,get:e=>e.timelineSelectForCompare},metadata:a},null,Xi),s(this,null,Ei,{kind:"method",name:"timelineCompareWithSelected",static:!1,private:!1,access:{has:e=>"timelineCompareWithSelected"in e,get:e=>e.timelineCompareWithSelected},metadata:a},null,Xi),s(this,null,Di,{kind:"method",name:"rebaseAbort",static:!1,private:!1,access:{has:e=>"rebaseAbort"in e,get:e=>e.rebaseAbort},metadata:a},null,Xi),s(this,null,Pi,{kind:"method",name:"closeDiffEditors",static:!1,private:!1,access:{has:e=>"closeDiffEditors"in e,get:e=>e.closeDiffEditors},metadata:a},null,Xi),s(this,null,_i,{kind:"method",name:"closeUnmodifiedEditors",static:!1,private:!1,access:{has:e=>"closeUnmodifiedEditors"in e,get:e=>e.closeUnmodifiedEditors},metadata:a},null,Xi),s(this,null,Ai,{kind:"method",name:"openRepositoriesInParentFolders",static:!1,private:!1,access:{has:e=>"openRepositoriesInParentFolders"in e,get:e=>e.openRepositoriesInParentFolders},metadata:a},null,Xi),s(this,null,Ii,{kind:"method",name:"manageUnsafeRepositories",static:!1,private:!1,access:{has:e=>"manageUnsafeRepositories"in e,get:e=>e.manageUnsafeRepositories},metadata:a},null,Xi),s(this,null,Ti,{kind:"method",name:"viewChanges",static:!1,private:!1,access:{has:e=>"viewChanges"in e,get:e=>e.viewChanges},metadata:a},null,Xi),s(this,null,xi,{kind:"method",name:"viewStagedChanges",static:!1,private:!1,access:{has:e=>"viewStagedChanges"in e,get:e=>e.viewStagedChanges},metadata:a},null,Xi),s(this,null,Mi,{kind:"method",name:"viewUnstagedChanges",static:!1,private:!1,access:{has:e=>"viewUnstagedChanges"in e,get:e=>e.viewUnstagedChanges},metadata:a},null,Xi),s(this,null,Oi,{kind:"method",name:"copyCommitId",static:!1,private:!1,access:{has:e=>"copyCommitId"in e,get:e=>e.copyCommitId},metadata:a},null,Xi),s(this,null,Bi,{kind:"method",name:"copyCommitMessage",static:!1,private:!1,access:{has:e=>"copyCommitMessage"in e,get:e=>e.copyCommitMessage},metadata:a},null,Xi),s(this,null,Gi,{kind:"method",name:"viewCommit",static:!1,private:!1,access:{has:e=>"viewCommit"in e,get:e=>e.viewCommit},metadata:a},null,Xi),s(this,null,Li,{kind:"method",name:"copyContentToClipboard",static:!1,private:!1,access:{has:e=>"copyContentToClipboard"in e,get:e=>e.copyContentToClipboard},metadata:a},null,Xi),s(this,null,Hi,{kind:"method",name:"toggleBlameEditorDecoration",static:!1,private:!1,access:{has:e=>"toggleBlameEditorDecoration"in e,get:e=>e.toggleBlameEditorDecoration},metadata:a},null,Xi),s(this,null,Fi,{kind:"method",name:"toggleBlameStatusBarItem",static:!1,private:!1,access:{has:e=>"toggleBlameStatusBarItem"in e,get:e=>e.toggleBlameStatusBarItem},metadata:a},null,Xi),s(this,null,Ni,{kind:"method",name:"artifactGroupCreateBranch",static:!1,private:!1,access:{has:e=>"artifactGroupCreateBranch"in e,get:e=>e.artifactGroupCreateBranch},metadata:a},null,Xi),s(this,null,Ui,{kind:"method",name:"artifactGroupCreateTag",static:!1,private:!1,access:{has:e=>"artifactGroupCreateTag"in e,get:e=>e.artifactGroupCreateTag},metadata:a},null,Xi),s(this,null,$i,{kind:"method",name:"artifactCheckout",static:!1,private:!1,access:{has:e=>"artifactCheckout"in e,get:e=>e.artifactCheckout},metadata:a},null,Xi),s(this,null,Wi,{kind:"method",name:"artifactCheckoutDetached",static:!1,private:!1,access:{has:e=>"artifactCheckoutDetached"in e,get:e=>e.artifactCheckoutDetached},metadata:a},null,Xi),s(this,null,ji,{kind:"method",name:"artifactMerge",static:!1,private:!1,access:{has:e=>"artifactMerge"in e,get:e=>e.artifactMerge},metadata:a},null,Xi),s(this,null,zi,{kind:"method",name:"artifactRebase",static:!1,private:!1,access:{has:e=>"artifactRebase"in e,get:e=>e.artifactRebase},metadata:a},null,Xi),s(this,null,Ki,{kind:"method",name:"artifactCreateFrom",static:!1,private:!1,access:{has:e=>"artifactCreateFrom"in e,get:e=>e.artifactCreateFrom},metadata:a},null,Xi),s(this,null,Vi,{kind:"method",name:"artifactCompareWith",static:!1,private:!1,access:{has:e=>"artifactCompareWith"in e,get:e=>e.artifactCompareWith},metadata:a},null,Xi),s(this,null,Ji,{kind:"method",name:"artifactDeleteBranch",static:!1,private:!1,access:{has:e=>"artifactDeleteBranch"in e,get:e=>e.artifactDeleteBranch},metadata:a},null,Xi),s(this,null,qi,{kind:"method",name:"artifactDeleteTag",static:!1,private:!1,access:{has:e=>"artifactDeleteTag"in e,get:e=>e.artifactDeleteTag},metadata:a},null,Xi),a&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}git=a(this,Xi);model;globalState;logger;telemetryReporter;cloneManager;disposables;commandErrors=new ne;static WORKTREE_ROOT_KEY="worktreeRoot";constructor(e,t,i,n,r,o){this.git=e,this.model=t,this.globalState=i,this.logger=n,this.telemetryReporter=r,this.cloneManager=o,this.disposables=z.map(({commandId:e,key:t,method:i,options:n})=>{const r=this.createCommand(e,t,i,n);return d.commands.registerCommand(e,r)}),this.disposables.push(d.workspace.registerTextDocumentContentProvider("git-output",this.commandErrors))}showOutput(){this.logger.show()}async refresh(e){await e.refresh()}async openResource(e){this.model.getRepository(e.resourceUri)&&await e.open()}async openChanges(e){for(const t of[...e.workingTreeGroup.resourceStates,...e.untrackedGroup.resourceStates])6!==t.type&&15!==t.type&&14!==t.type&&17!==t.type&&d.commands.executeCommand("vscode.open",t.resourceUri,{background:!0,preview:!1})}async openMergeEditor(e){if(void 0===e&&d.window.tabGroups.activeTabGroup.activeTab?.input instanceof d.TabInputText&&(e=d.window.tabGroups.activeTabGroup.activeTab.input.uri),!(e instanceof d.Uri))return;const t=this.model.getRepository(e);if(!t)return;const i=Boolean(t.rebaseCommit),n=(0,p.toMergeUris)(e);let r=!1;try{const t=function(e){const t="<<<<<<<";let i=!1,n="",r="",o=!1;for(let a=0;a>>>>>>")){r=s.substring(7).trim(),i=!1;break}}else s.startsWith(t)&&(n=s.substring(7).trim(),i=!0,o=!0)}if(o)return{currentChangeLabel:n,incomingChangeLabel:r}}(await d.workspace.openTextDocument(e));r="Stashed changes"===t?.incomingChangeLabel}catch(e){console.error(e)}const o={uri:n.ours,title:d.l10n.t("Current")},a={uri:n.theirs,title:d.l10n.t("Incoming")};r&&(a.title=d.l10n.t("Stashed Changes"));try{const[n,r,s,c]=await Promise.all([t.getCommit("HEAD"),i?t.getCommit("REBASE_HEAD"):t.getCommit("MERGE_HEAD"),await t.diffBetween(i?"REBASE_HEAD":"MERGE_HEAD","HEAD"),await t.diffBetween("HEAD",i?"REBASE_HEAD":"MERGE_HEAD")]),l=s?.find(t=>t.uri.fsPath===e.fsPath),u=c?.find(t=>t.uri.fsPath===e.fsPath);o.detail=n.refNames.map(e=>e.replace(/^HEAD ->/,"")).join(", "),o.description="$(git-commit) "+n.hash.substring(0,7),o.uri=u?(0,p.toGitUri)(u.originalUri,n.hash):(0,p.toGitUri)(e,n.hash),a.detail=r.refNames.join(", "),a.description="$(git-commit) "+r.hash.substring(0,7),a.uri=l?(0,p.toGitUri)(l.originalUri,r.hash):(0,p.toGitUri)(e,r.hash)}catch(e){console.error("FAILED to read HEAD, MERGE_HEAD commits"),console.error(e)}const s={base:n.base,input1:i?o:a,input2:i?a:o,output:e};await d.commands.executeCommand("_open.mergeEditor",s)}getRepositoriesWithRemote(e){return e.reduce((e,t)=>{const i=t.remotes.find(e=>e.name===t.HEAD?.upstream?.remote);return i?.pushUrl&&e.push({repository:t,label:i.pushUrl}),e},[])}async continueInLocalClone(){if(0===this.model.repositories.length)return;let e=this.getRepositoriesWithRemote(this.model.repositories);if(0===e.length){const t=1===this.model.repositories.length?{repository:this.model.repositories[0]}:await d.window.showQuickPick(this.model.repositories.map(e=>({repository:e,label:e.root})),{canPickMany:!1,placeHolder:d.l10n.t("Choose which repository to publish")});if(!t)return;if(await this.publish(t.repository),e=this.getRepositoriesWithRemote([t.repository]),0===e.length)return}let t=e[0];if(e.length>1){const i=await d.window.showQuickPick(e,{canPickMany:!1,placeHolder:d.l10n.t("Choose which repository to clone")});if(void 0===i)return;t=i}const i=t.label,n=t.repository.HEAD?.upstream?.name;if(void 0!==i){let e=`${d.env.uriScheme}://vscode.git/clone?url=${encodeURIComponent(i)}`;const t=d.env.uiKind===d.UIKind.Web,r=void 0!==d.env.remoteName;if(t||r){if(void 0!==n&&(e+=`&ref=${encodeURIComponent(n)}`),t)return d.Uri.parse(e);if(r)return e+="&windowId=_blank",d.Uri.parse(e)}this.clone(i,void 0,{ref:n})}}async clone(e,t,i){await this.cloneManager.clone(e,{parentPath:t,...i})}async cloneRecursive(e,t){await this.cloneManager.clone(e,{parentPath:t,recursive:!0})}async init(e=!1){let t,i=!0;if(d.workspace.workspaceFolders)if(e&&1===d.workspace.workspaceFolders.length)t=d.workspace.workspaceFolders[0].uri.fsPath,i=!1;else{const e=d.l10n.t("Pick workspace folder to initialize git repo in"),n={label:d.l10n.t("Choose Folder...")},r=[...d.workspace.workspaceFolders.map(e=>({label:e.name,description:e.uri.fsPath,folder:e})),n],o=await d.window.showQuickPick(r,{placeHolder:e,ignoreFocusOut:!0});if(!o)return;o.folder&&(t=o.folder.uri.fsPath,i=!1)}if(!t){const e=d.Uri.file(l.homedir()),n=d.workspace.workspaceFolders&&d.workspace.workspaceFolders.length>0?d.Uri.file(d.workspace.workspaceFolders[0].uri.fsPath):e,r=await d.window.showOpenDialog({canSelectFiles:!1,canSelectFolders:!0,canSelectMany:!1,defaultUri:n,openLabel:d.l10n.t("Initialize Repository")});if(!r||0===r.length)return;const o=r[0];if(e.toString().startsWith(o.toString())){const e=d.l10n.t("Initialize Repository");if(await d.window.showWarningMessage(d.l10n.t('This will create a Git repository in "{0}". Are you sure you want to continue?',o.fsPath),e)!==e)return}t=o.fsPath,d.workspace.workspaceFolders&&d.workspace.workspaceFolders.some(e=>e.uri.toString()===o.toString())&&(i=!1)}const n=d.workspace.getConfiguration("git"),r=n.get("defaultBranchName","main"),o=n.get("branchWhitespaceChar","-");await this.git.init(t,{defaultBranch:ee(r,o)});let a=d.l10n.t("Would you like to open the initialized repository?");const s=d.l10n.t("Open"),c=d.l10n.t("Open in New Window"),u=[s,c];if(!i)return void await this.model.openRepository(t);const m=d.l10n.t("Add to Workspace");d.workspace.workspaceFolders&&(a=d.l10n.t("Would you like to open the initialized repository, or add it to the current workspace?"),u.push(m));const h=await d.window.showInformationMessage(a,...u),g=d.Uri.file(t);h===s?d.commands.executeCommand("vscode.openFolder",g):h===m?d.workspace.updateWorkspaceFolders(d.workspace.workspaceFolders.length,0,{uri:g}):h===c?d.commands.executeCommand("vscode.openFolder",g,!0):await this.model.openRepository(t)}async openRepository(e){if(!e){const t=await d.window.showOpenDialog({canSelectFiles:!1,canSelectFolders:!0,canSelectMany:!1,defaultUri:d.Uri.file(l.homedir()),openLabel:d.l10n.t("Open Repository")});if(!t||0===t.length)return;e=t[0].fsPath}await this.model.openRepository(e,!0)}async reopenClosedRepositories(){if(0===this.model.closedRepositories.length)return;const e=[],t=d.l10n.t("Reopen Closed Repositories"),i=d.l10n.t("Pick a repository to reopen"),n={label:d.l10n.t("All Repositories")},r=this.model.closedRepositories.sort(Q).map(e=>new W(e)),o=1===this.model.closedRepositories.length?[...r]:[...r,{label:"",kind:d.QuickPickItemKind.Separator},n],a=await d.window.showQuickPick(o,{title:t,placeHolder:i});if(a){a===n?e.push(...this.model.closedRepositories.values()):e.push(a.path);for(const t of e)await this.model.openRepository(t,!0)}}async close(e,...t){const i=t.map(e=>this.model.getRepository(e)).filter(f.isDefined);for(const t of[e,...i])this.model.close(t)}async closeOtherRepositories(e,...t){const i=[e,...t.map(e=>this.model.getRepository(e)).filter(f.isDefined)];for(const e of this.model.repositories)i.includes(e)||this.model.close(e)}async openFile(e,...t){const i=e instanceof h.Resource;let n;if(e instanceof d.Uri)(0,p.isGitUri)(e)?n=[d.Uri.file((0,p.fromGitUri)(e).path)]:"file"===e.scheme&&(n=[e]);else{let i=e;i instanceof h.Resource||(i=this.getSCMResource()),i?n=[i,...t].filter(e=>6!==e.type&&2!==e.type).map(e=>e.resourceUri):d.window.activeTextEditor&&(n=[d.window.activeTextEditor.document.uri])}if(!n)return;const r=d.window.activeTextEditor,o=r?.visibleRanges,a=r?.document.uri,s=r?.selection;for(const t of n){const n={preserveFocus:i,preview:!1,viewColumn:d.ViewColumn.Active};await d.commands.executeCommand("vscode.open",t,{...n,override:!(e instanceof h.Resource&&18===e.type)&&void 0});const c=d.window.activeTextEditor?.document;if(c?.uri.toString()===t.toString()&&r&&a&&s&&a.path===t.path&&c){n.selection=s;const e=await d.window.showTextDocument(c,n);if(o&&o.length>0){let t=o[0];s&&o.length>1&&(t=o.find(e=>e.intersection(s))??t),e.revealRange(t)}}}}async openFile2(e,...t){this.openFile(e,...t)}async openHEADFile(e){let t;const i=!(e instanceof h.Resource);if(t=e instanceof h.Resource?e:e instanceof d.Uri?this.getSCMResource(e):this.getSCMResource(),!t)return;const n=t.leftUri,r=`${u.basename(t.resourceUri.fsPath)} (HEAD)`;if(!n)return void d.window.showWarningMessage(d.l10n.t('HEAD version of "{0}" is not available.',u.basename(t.resourceUri.fsPath)));const o={preview:i};return await d.commands.executeCommand("vscode.open",n,o,r)}async openChange(e,...t){let i;if(e instanceof d.Uri){const t=this.getSCMResource(e);void 0!==t&&(i=[t])}else{let n;n=e instanceof h.Resource?e:this.getSCMResource(),n&&(i=[...t,n])}if(i)for(const e of i)await e.openChange()}async compareWithWorkspace(e){e&&await e.compareWithWorkspace()}async rename(e,t){if(!(t=t??d.window.activeTextEditor?.document.uri))return;const i=(0,f.relativePath)(e.root,t.fsPath);let n=await d.window.showInputBox({value:i,valueSelection:[i.length-u.basename(i).length,i.length]});n=n?.trim(),n&&(await e.move(i,n),await d.commands.executeCommand("workbench.action.closeActiveEditor"),await d.commands.executeCommand("vscode.open",d.Uri.file(u.join(e.root,n)),{viewColumn:d.ViewColumn.Active}))}async stage(...e){if(this.logger.debug(`[CommandCenter][stage] git.stage ${e.length} `),0===(e=e.filter(e=>!!e)).length||e[0]&&!(e[0].resourceUri instanceof d.Uri)){const t=this.getSCMResource();if(this.logger.debug(`[CommandCenter][stage] git.stage.getSCMResource ${t?t.resourceUri.toString():null} `),!t)return;e=[t]}const t=e.filter(e=>e instanceof h.Resource),{resolved:i,unresolved:n,deletionConflicts:r}=await V(t);if(n.length>0){const e=n.length>1?d.l10n.t("Are you sure you want to stage {0} files with merge conflicts?",n.length):d.l10n.t("Are you sure you want to stage {0} with merge conflicts?",u.basename(n[0].resourceUri.fsPath)),t=d.l10n.t("Yes");if(await d.window.showWarningMessage(e,{modal:!0},t)!==t)return}try{await this.runByRepository(r.map(e=>e.resourceUri),async(e,t)=>{for(const i of t)await this._stageDeletionConflict(e,i)})}catch(e){if(/Cancelled/.test(e.message))return;throw e}const o=[...t.filter(e=>2===e.resourceGroupType),...t.filter(e=>3===e.resourceGroupType),...i,...n];if(this.logger.debug(`[CommandCenter][stage] git.stage.scmResources ${o.length} `),!o.length)return;const a=o.map(e=>e.resourceUri);await this.runByRepository(a,async(e,t)=>e.add(t))}async stageAll(e){const t=[...e.workingTreeGroup.resourceStates,...e.untrackedGroup.resourceStates].map(e=>e.resourceUri);if(t.length>0){const i=d.workspace.getConfiguration("git",d.Uri.file(e.root)).get("untrackedChanges");await e.add(t,"mixed"===i?void 0:{update:!0})}}async _stageDeletionConflict(e,t){const i=t.toString(),n=e.mergeGroup.resourceStates.filter(e=>e.resourceUri.toString()===i)[0];if(n)if(15===n.type){const i=d.l10n.t("Keep Our Version"),n=d.l10n.t("Delete File"),r=await d.window.showInformationMessage(d.l10n.t('File "{0}" was deleted by them and modified by us.\n\nWhat would you like to do?',u.basename(t.fsPath)),{modal:!0},i,n);if(r===i)await e.add([t]);else{if(r!==n)throw new Error("Cancelled");await e.rm([t])}}else if(14===n.type){const i=d.l10n.t("Keep Their Version"),n=d.l10n.t("Delete File"),r=await d.window.showInformationMessage(d.l10n.t('File "{0}" was deleted by us and modified by them.\n\nWhat would you like to do?',u.basename(t.fsPath)),{modal:!0},i,n);if(r===i)await e.add([t]);else{if(r!==n)throw new Error("Cancelled");await e.rm([t])}}}async stageAllTracked(e){const t=e.workingTreeGroup.resourceStates.filter(e=>7!==e.type&&8!==e.type).map(e=>e.resourceUri);await e.add(t)}async stageAllUntracked(e){const t=[...e.workingTreeGroup.resourceStates,...e.untrackedGroup.resourceStates].filter(e=>7===e.type||8===e.type).map(e=>e.resourceUri);await e.add(t)}async stageAllMerge(e){const t=e.mergeGroup.resourceStates.filter(e=>e instanceof h.Resource),{merge:i,unresolved:n,deletionConflicts:r}=await V(t);try{for(const t of r)await this._stageDeletionConflict(e,t.resourceUri)}catch(e){if(/Cancelled/.test(e.message))return;throw e}if(n.length>0){const e=n.length>1?d.l10n.t("Are you sure you want to stage {0} files with merge conflicts?",i.length):d.l10n.t("Are you sure you want to stage {0} with merge conflicts?",u.basename(i[0].resourceUri.fsPath)),t=d.l10n.t("Yes");if(await d.window.showWarningMessage(e,{modal:!0},t)!==t)return}const o=t.map(e=>e.resourceUri);o.length>0&&await e.add(o)}async stageChange(e,t,i){if(!e)return;const n=d.window.visibleTextEditors.filter(t=>t.document.uri.toString()===e.toString())[0];if(!n)return;await this._stageChanges(n,[t[i]]);const r=t[i].modifiedStartLineNumber;n.selections=[new d.Selection(r,0,r,0)]}async diffStageHunk(e){e?this.diffStageHunkOrSelection(e):await this.stageHunkAtCursor()}async diffStageSelection(e){this.diffStageHunkOrSelection(e)}async diffStageHunkOrSelection(e){if(!e)return;let t,i=e.modifiedUri;if(!i){const e=d.window.activeTextEditor;if(!e)return;t=e.document,i=t.uri}if("file"!==i.scheme)return;t||(t=await d.workspace.openTextDocument(i));const n=e.originalWithModifiedChanges;await this.runByRepository(i,async(e,i)=>await e.stage(i,n,t.encoding))}async stageHunkAtCursor(){const e=d.window.activeTextEditor;if(!e)return;const t=(0,g.getWorkingTreeDiffInformation)(e);if(!t)return;const i=(0,g.toLineChanges)(t),n=e.document,r=e.selection.active,o=i.find(e=>(0,g.getModifiedRange)(n,e).contains(r));o?await this._stageChanges(e,[o]):d.window.showInformationMessage(d.l10n.t("No hunk found at cursor position."))}async stageSelectedChanges(){const e=d.window.activeTextEditor;if(!e)return;const t=(0,g.getWorkingTreeDiffInformation)(e);if(!t)return;const i=(0,g.toLineChanges)(t);this.logger.trace(`[CommandCenter][stageSelectedChanges] diffInformation: ${JSON.stringify(t)}`),this.logger.trace(`[CommandCenter][stageSelectedChanges] diffInformation changes: ${JSON.stringify(i)}`);const n=e.document,r=(0,g.toLineRanges)(e.selections,n),o=i.map(e=>r.reduce((t,i)=>t||(0,g.intersectDiffWithRange)(n,e,i),null)).filter(e=>!!e);this.logger.trace(`[CommandCenter][stageSelectedChanges] selectedChanges: ${JSON.stringify(o)}`),o.length?await this._stageChanges(e,o):d.window.showInformationMessage(d.l10n.t("The selection range does not contain any changes."))}async stageFile(e){if(!(e=e??d.window.activeTextEditor?.document.uri))return;const t=this.model.getRepository(e);if(!t)return;const i=[...t.workingTreeGroup.resourceStates,...t.untrackedGroup.resourceStates].filter(t=>t.multiFileDiffEditorModifiedUri?.toString()===e.toString()||t.multiDiffEditorOriginalUri?.toString()===e.toString()).map(e=>e.resourceUri);0!==i.length&&await t.add(i)}async acceptMerge(e){const{activeTab:t}=d.window.tabGroups.activeTabGroup;if(!t)return;if(!(t.input instanceof d.TabInputTextMerge))return;const i=t.input.result,n=this.model.getRepository(i);n?(await d.commands.executeCommand("mergeEditor.acceptMerge")).successful&&(await n.add([i]),await d.commands.executeCommand("workbench.view.scm")):console.log(`FAILED to complete merge because uri ${i.toString()} doesn't belong to any repository`)}async runGitMergeNoDiff3(){await this.runGitMerge(!1)}async runGitMergeDiff3(){await this.runGitMerge(!0)}async runGitMerge(e){const{activeTab:t}=d.window.tabGroups.activeTabGroup;if(!t)return;const i=t.input;if(!(i instanceof d.TabInputTextMerge))return;const n=await this.git.mergeFile({basePath:i.base.fsPath,input1Path:i.input1.fsPath,input2Path:i.input2.fsPath,diff3:e}),r=d.workspace.textDocuments.find(e=>e.uri.toString()===i.result.toString());if(!r)return;const o=new d.WorkspaceEdit;o.replace(i.result,new d.Range(new d.Position(0,0),new d.Position(r.lineCount,0)),n),await d.workspace.applyEdit(o)}async _stageChanges(e,t){const i=e.document,n=i.uri;if("file"!==n.scheme)return;const r=(0,p.toGitUri)(n,"~"),o=await d.workspace.openTextDocument(r),a=(0,g.applyLineChanges)(o,i,t);await this.runByRepository(n,async(e,t)=>await e.stage(t,a,i.encoding))}async revertChange(e,t,i){if(!e)return;const n=d.window.visibleTextEditors.filter(t=>t.document.uri.toString()===e.toString())[0];if(!n)return;await this._revertChanges(n,[...t.slice(0,i),...t.slice(i+1)]);const r=t[i].modifiedStartLineNumber;n.selections=[new d.Selection(r,0,r,0)]}async revertSelectedRanges(){const e=d.window.activeTextEditor;if(!e)return;const t=(0,g.getWorkingTreeDiffInformation)(e);if(!t)return;const i=(0,g.toLineChanges)(t);this.logger.trace(`[CommandCenter][revertSelectedRanges] diffInformation: ${JSON.stringify(t)}`),this.logger.trace(`[CommandCenter][revertSelectedRanges] diffInformation changes: ${JSON.stringify(i)}`);const n=e.document,r=e.selections,o=i.filter(e=>{const t=(0,g.getModifiedRange)(n,e);return r.every(e=>!e.intersection(t))});if(o.length===i.length)return void d.window.showInformationMessage(d.l10n.t("The selection range does not contain any changes."));this.logger.trace(`[CommandCenter][revertSelectedRanges] selectedChanges: ${JSON.stringify(o)}`);const a=e.selections;await this._revertChanges(e,o),e.selections=a}async _revertChanges(e,t){const i=e.document,n=i.uri;if("file"!==n.scheme)return;const r=(0,p.toGitUri)(n,"~"),o=await d.workspace.openTextDocument(r),a=e.visibleRanges,s=(0,g.applyLineChanges)(o,i,t),c=new d.WorkspaceEdit;c.replace(n,new d.Range(new d.Position(0,0),i.lineAt(i.lineCount-1).range.end),s),d.workspace.applyEdit(c),await i.save(),e.revealRange(a[0])}async unstage(...e){if(0===(e=e.filter(e=>!!e)).length||e[0]&&!(e[0].resourceUri instanceof d.Uri)){const t=this.getSCMResource();if(!t)return;e=[t]}const t=e.filter(e=>e instanceof h.Resource&&1===e.resourceGroupType);if(!t.length)return;const i=t.map(e=>e.resourceUri);await this.runByRepository(i,async(e,t)=>e.revert(t))}async unstageAll(e){await e.revert([])}async unstageSelectedRanges(){const e=d.window.activeTextEditor;if(!e)return;const t=e.document,i=t.uri,n=this.model.getRepository(i);if(!n)return;const r=n.indexGroup.resourceStates.find(e=>(0,f.pathEquals)(e.resourceUri.fsPath,i.fsPath));if(!r)return;const o=(0,g.getIndexDiffInformation)(e);if(!o)return;const a=(0,g.toLineChanges)(o);this.logger.trace(`[CommandCenter][unstageSelectedRanges] diffInformation: ${JSON.stringify(o)}`),this.logger.trace(`[CommandCenter][unstageSelectedRanges] diffInformation changes: ${JSON.stringify(a)}`);const s=(0,p.toGitUri)(r.original,"HEAD"),c=await d.workspace.openTextDocument(s),l=(0,g.toLineRanges)(e.selections,t),u=a.map(e=>l.reduce((i,n)=>i||(0,g.intersectDiffWithRange)(t,e,n),null)).filter(e=>!!e);if(!u.length)return void d.window.showInformationMessage(d.l10n.t("The selection range does not contain any changes."));this.logger.trace(`[CommandCenter][unstageSelectedRanges] selectedDiffs: ${JSON.stringify(u)}`);const m=u.map(g.invertLineChange);this.logger.trace(`[CommandCenter][unstageSelectedRanges] selectedDiffsInverted: ${JSON.stringify(m)}`);const h=(0,g.applyLineChanges)(t,c,m);await n.stage(t.uri,h,t.encoding)}async unstageFile(e){if(!(e=e??d.window.activeTextEditor?.document.uri))return;const t=this.model.getRepository(e);if(!t)return;const i=t.indexGroup.resourceStates.filter(t=>t.multiFileDiffEditorModifiedUri?.toString()===e.toString()||t.multiDiffEditorOriginalUri?.toString()===e.toString()).map(e=>e.resourceUri);0!==i.length&&await t.revert(i)}async unstageChange(e,t,i){if(!e)return;const n=d.window.visibleTextEditors.filter(t=>t.document.uri.toString()===e.toString())[0];n&&await this._unstageChanges(n,[t[i]])}async _unstageChanges(e,t){const i=e.document,n=i.uri;if("file"!==n.scheme)return;const r=(0,g.getWorkingTreeDiffInformation)(e);if(!r)return;const o=(0,g.toLineChanges)(r).map(g.invertLineChange),a=[...t.map(g.invertLineChange),...o].sort(g.compareLineChanges),s=(0,p.toGitUri)(n,"HEAD"),c=await d.workspace.openTextDocument(s),l=(0,g.applyLineChanges)(i,c,a);await this.runByRepository(n,async(e,t)=>await e.stage(t,l,i.encoding))}async clean(...e){const t=new Set;if(0===(e=e.filter(e=>void 0!==e&&!t.has(e.resourceUri.toString())&&(t.add(e.resourceUri.toString()),!0))).length||e[0]&&!(e[0].resourceUri instanceof d.Uri)){const t=this.getSCMResource();if(!t)return;e=[t]}const i=e.filter(e=>e instanceof h.Resource&&(2===e.resourceGroupType||3===e.resourceGroupType));i.length&&await this._cleanAll(i)}async cleanAll(e){await this._cleanAll(e.workingTreeGroup.resourceStates)}async cleanAllTracked(e){const t=e.workingTreeGroup.resourceStates.filter(e=>7!==e.type&&8!==e.type);0!==t.length&&await this._cleanTrackedChanges(t)}async cleanAllUntracked(e){const t=[...e.workingTreeGroup.resourceStates,...e.untrackedGroup.resourceStates].filter(e=>7===e.type||8===e.type);0!==t.length&&await this._cleanUntrackedChanges(t)}async _cleanAll(e){if(0===e.length)return;const t=e.filter(e=>7!==e.type&&8!==e.type),i=e.filter(e=>7===e.type||8===e.type);if(0===i.length)await this._cleanTrackedChanges(e);else if(0===t.length)await this._cleanUntrackedChanges(e);else{const[n,r]=this.getDiscardUntrackedChangesDialogDetails(i),o=1===t.length?d.l10n.t("\n\nAre you sure you want to discard changes in '{0}'?",u.basename(t[0].resourceUri.fsPath)):d.l10n.t("\n\nAre you sure you want to discard ALL changes in {0} files?",t.length),a=1===t.length?d.l10n.t("Discard 1 Tracked File"):d.l10n.t("Discard All {0} Tracked Files",t.length),s=d.l10n.t("Discard All {0} Files",e.length),c=await d.window.showWarningMessage(`${n} ${r}${o}\n\nThis is IRREVERSIBLE!\nYour current working set will be FOREVER LOST if you proceed.`,{modal:!0},a,s);if(c===a)e=t;else if(c!==s)return;const l=e.map(e=>e.resourceUri);await this.runByRepository(l,async(e,t)=>e.clean(t))}}async _cleanTrackedChanges(e){const t=e.every(e=>6===e.type),i=t?1===e.length?d.l10n.t("Are you sure you want to restore '{0}'?",u.basename(e[0].resourceUri.fsPath)):d.l10n.t("Are you sure you want to restore ALL {0} files?",e.length):1===e.length?d.l10n.t("Are you sure you want to discard changes in '{0}'?",u.basename(e[0].resourceUri.fsPath)):d.l10n.t("Are you sure you want to discard ALL changes in {0} files?\n\nThis is IRREVERSIBLE!\nYour current working set will be FOREVER LOST if you proceed.",e.length),n=t?1===e.length?d.l10n.t("Restore File"):d.l10n.t("Restore All {0} Files",e.length):1===e.length?d.l10n.t("Discard File"):d.l10n.t("Discard All {0} Files",e.length);if(await d.window.showWarningMessage(i,{modal:!0},n)!==n)return;const r=e.map(e=>e.resourceUri);await this.runByRepository(r,async(e,t)=>e.clean(t))}async _cleanUntrackedChanges(e){const[t,i,n]=this.getDiscardUntrackedChangesDialogDetails(e);if(await d.window.showWarningMessage(t,{detail:i,modal:!0},n)!==n)return;const r=e.map(e=>e.resourceUri);await this.runByRepository(r,async(e,t)=>e.clean(t))}getDiscardUntrackedChangesDialogDetails(e){const t=d.workspace.getConfiguration("git").get("discardUntrackedChangesToTrash",!0)&&!f.isRemote&&!f.isLinuxSnap,i=t?"":1===e.length?"\n\n"+d.l10n.t("This is IRREVERSIBLE!\nThis file will be FOREVER LOST if you proceed."):"\n\n"+d.l10n.t("This is IRREVERSIBLE!\nThese files will be FOREVER LOST if you proceed.");return[1===e.length?d.l10n.t("Are you sure you want to DELETE the following untracked file: '{0}'?{1}",u.basename(e[0].resourceUri.fsPath),i):d.l10n.t("Are you sure you want to DELETE the {0} untracked files?{1}",e.length,i),t?f.isWindows?1===e.length?d.l10n.t("You can restore this file from the Recycle Bin."):d.l10n.t("You can restore these files from the Recycle Bin."):1===e.length?d.l10n.t("You can restore this file from the Trash."):d.l10n.t("You can restore these files from the Trash."):"",t?f.isWindows?d.l10n.t("Move to Recycle Bin"):d.l10n.t("Move to Trash"):1===e.length?d.l10n.t("Delete File"):d.l10n.t("Delete All {0} Files",e.length)]}async smartCommit(e,t,i){const n=d.workspace.getConfiguration("git",d.Uri.file(e.root));let r=n.get("promptToSaveFilesBeforeCommit");"boolean"==typeof r&&(r=r?"always":"never");let o=!0===n.get("enableSmartCommit");const a=!0===n.get("enableCommitSigning");let s=0===e.indexGroup.resourceStates.length,c=0===e.workingTreeGroup.resourceStates.length;if(!i.empty){if("never"!==r){let t=d.workspace.textDocuments.filter(t=>!t.isUntitled&&t.isDirty&&(0,f.isDescendant)(e.root,t.uri.fsPath));if(("staged"===r||e.indexGroup.resourceStates.length>0)&&(t=t.filter(t=>e.indexGroup.resourceStates.some(e=>(0,f.pathEquals)(e.resourceUri.fsPath,t.uri.fsPath)))),t.length>0){const i=1===t.length?d.l10n.t("The following file has unsaved changes which won't be included in the commit if you proceed: {0}.\n\nWould you like to save it before committing?",u.basename(t[0].uri.fsPath)):d.l10n.t("There are {0} unsaved files.\n\nWould you like to save them before committing?",t.length),n=d.l10n.t("Save All & Commit Changes"),r=d.l10n.t("Commit Changes"),o=await d.window.showWarningMessage(i,{modal:!0},n,r);if(o===n)await Promise.all(t.map(e=>e.save())),t=t.filter(t=>e.indexGroup.resourceStates.some(e=>(0,f.pathEquals)(e.resourceUri.fsPath,t.uri.fsPath))),await e.add(t.map(e=>e.uri)),s=0===e.indexGroup.resourceStates.length,c=0===e.workingTreeGroup.resourceStates.length;else if(o!==r)return}}if(!c&&s&&!o&&!i.all&&!i.amend){if(!0!==n.get("suggestSmartCommit"))return;const e=d.l10n.t("There are no staged changes to commit.\n\nWould you like to stage all your changes and commit them directly?"),t=d.l10n.t("Yes"),i=d.l10n.t("Always"),r=d.l10n.t("Never"),a=await d.window.showWarningMessage(e,{modal:!0},t,i,r);if(a===i)o=!0,n.update("enableSmartCommit",!0,!0);else{if(a===r)return void n.update("suggestSmartCommit",!1,!0);if(a!==t)return;o=!0}}o&&!i.all&&(i={...i,all:s})}i.signCommit=a,n.get("alwaysSignOff")&&(i.signoff=!0),n.get("useEditorAsCommitInput")&&(i.useEditor=!0,n.get("verboseCommit")&&(i.verbose=!0));const l=n.get("smartCommitChanges");if((s&&c||!i.all&&s||s&&"tracked"===l&&e.workingTreeGroup.resourceStates.every(e=>7===e.type))&&!i.amend&&!i.empty&&!e.mergeInProgress&&void 0===e.rebaseCommit){const e=d.l10n.t("Create Empty Commit");if(await d.window.showInformationMessage(d.l10n.t("There are no changes to commit."),e)!==e)return;i.empty=!0}if(i.noVerify){if(!n.get("allowNoVerifyCommit"))return void await d.window.showErrorMessage(d.l10n.t('Commits without verification are not allowed, please enable them with the "git.allowNoVerifyCommit" setting.'));if(n.get("confirmNoVerifyCommit")){const e=d.l10n.t("You are about to commit your changes without verification, this skips pre-commit hooks and can be undesirable.\n\nAre you sure to continue?"),t=d.l10n.t("OK"),i=d.l10n.t("OK, Don't Ask Again"),r=await d.window.showWarningMessage(e,{modal:!0},t,i);if(r===i)n.update("confirmNoVerifyCommit",!1,!0);else if(r!==t)return}}const m=await t();if(!m&&!i.amend&&!i.useEditor)return;i.all&&"tracked"===l&&(i.all="tracked"),i.all&&"mixed"!==n.get("untrackedChanges")&&(i.all="tracked");const h=await async function(e,t,i){const n=d.workspace.getConfiguration("git",d.Uri.file(e.root)),r=!0===n.get("diagnosticsCommitHook.enabled",!1),o=n.get("diagnosticsCommitHook.sources",{"*":"error"});if(i.trace(`[CommandCenter][evaluateDiagnosticsCommitHook] Diagnostics Commit Hook: enabled=${r}, sources=${JSON.stringify(o)}`),!r)return!0;const a=[];e.indexGroup.resourceStates.length>0?a.push(...e.indexGroup.resourceStates.map(e=>e.resourceUri)):"tracked"===t.all?a.push(...e.workingTreeGroup.resourceStates.filter(e=>7!==e.type&&8!==e.type).map(e=>e.resourceUri)):(a.push(...e.workingTreeGroup.resourceStates.map(e=>e.resourceUri)),a.push(...e.untrackedGroup.resourceStates.map(e=>e.resourceUri)));const s=new Map;for(const e of a){const t=d.languages.getDiagnostics(e).filter(t=>(i.trace(`[CommandCenter][evaluateDiagnosticsCommitHook] Evaluating diagnostic for ${e.fsPath}: source='${t.source}', severity='${t.severity}'`),!t.source||Object.keys(o).includes(t.source)&&"none"===o[t.source]?(i.trace(`[CommandCenter][evaluateDiagnosticsCommitHook] Ignoring diagnostic for ${e.fsPath}: source='${t.source}', severity='${t.severity}'`),!1):Object.keys(o).includes(t.source)&&t.severity<=(0,f.toDiagnosticSeverity)(o[t.source])||Object.keys(o).includes("*")&&t.severity<=(0,f.toDiagnosticSeverity)(o["*"])?(i.trace(`[CommandCenter][evaluateDiagnosticsCommitHook] Found unresolved diagnostic for ${e.fsPath}: source='${t.source}', severity='${t.severity}'`),!0):(i.trace(`[CommandCenter][evaluateDiagnosticsCommitHook] Ignoring diagnostic for ${e.fsPath}: source='${t.source}', severity='${t.severity}'`),!1)));t.length>0&&s.set(e,t.length)}if(0===s.size)return!0;const c=d.l10n.t("Commit Anyway"),l=d.l10n.t("View Problems"),m=1===s.size?d.l10n.t("The following file has unresolved diagnostics: '{0}'.\n\nHow would you like to proceed?",u.basename(s.keys().next().value.fsPath)):d.l10n.t("There are {0} files that have unresolved diagnostics.\n\nHow would you like to proceed?",s.size),h=await d.window.showWarningMessage(m,{modal:!0},c,l);return h===c||(h===l&&d.commands.executeCommand("workbench.panel.markers.view.focus"),!1)}(e,i,this.logger);if(!h)return;const g=n.get("branchProtectionPrompt");if(e.isBranchProtected()&&("alwaysPrompt"===g||"alwaysCommitToNewBranch"===g)){const t=d.l10n.t("Commit to a New Branch");let i=t;if("alwaysPrompt"===g){const e=d.l10n.t("You are trying to commit to a protected branch and you might not have permission to push your commits to the remote.\n\nHow would you like to proceed?"),n=d.l10n.t("Commit Anyway");i=await d.window.showWarningMessage(e,{modal:!0},t,n)}if(!i)return;if(i===t){const t=await this.promptForBranchName(e);if(!t)return;await e.branch(t,!0)}}await e.commit(m,i)}async commitWithAnyInput(e,t){const i=e.inputBox.value,n=d.Uri.file(e.root),r=d.workspace.getConfiguration("git",n);await this.smartCommit(e,async()=>{let n=i;if(!n&&!r.get("useEditorAsCommitInput")){const i=void 0;if(t&&t.amend&&e.HEAD&&e.HEAD.commit)return;const r=e.headShortName;let o;o=r?d.l10n.t('Message (commit on "{0}")',r):d.l10n.t("Commit message"),n=await d.window.showInputBox({value:i,placeHolder:o,prompt:d.l10n.t("Please provide a commit message"),ignoreFocusOut:!0})}return n},t)}async commit(e,t){await this.commitWithAnyInput(e,{postCommitCommand:t})}async commitAmend(e){await this.commitWithAnyInput(e,{amend:!0})}async commitSigned(e){await this.commitWithAnyInput(e,{signoff:!0})}async commitStaged(e){await this.commitWithAnyInput(e,{all:!1})}async commitStagedSigned(e){await this.commitWithAnyInput(e,{all:!1,signoff:!0})}async commitStagedAmend(e){await this.commitWithAnyInput(e,{all:!1,amend:!0})}async commitAll(e){await this.commitWithAnyInput(e,{all:!0})}async commitAllSigned(e){await this.commitWithAnyInput(e,{all:!0,signoff:!0})}async commitAllAmend(e){await this.commitWithAnyInput(e,{all:!0,amend:!0})}async commitMessageAccept(e){(e||d.window.activeTextEditor)&&(e??=d.window.activeTextEditor.document.uri,this._closeEditorTab(e))}async commitMessageDiscard(e){if(!e&&!d.window.activeTextEditor)return;e??=d.window.activeTextEditor.document.uri;const t=d.window.visibleTextEditors.filter(t=>"git-commit"===t.document.languageId&&t.document.uri.toString()===e.toString());if(1!==t.length)return;const i=t[0],n=i.document;await i.edit(e=>{const t=n.lineAt(0),i=n.lineAt(n.lineCount-1);e.delete(new d.Range(t.range.start,i.range.end))})&&await n.save()&&this._closeEditorTab(e)}_closeEditorTab(e){const t=d.window.tabGroups.all.map(e=>e.tabs).flat().filter(t=>t.input instanceof d.TabInputText&&t.input.uri.toString()===e.toString());d.window.tabGroups.close(t)}async _commitEmpty(e,t){const i=d.Uri.file(e.root),n=d.workspace.getConfiguration("git",i);if(!0===n.get("confirmEmptyCommits")){const e=d.l10n.t("Are you sure you want to create an empty commit?"),t=d.l10n.t("Yes"),i=d.l10n.t("Yes, Don't Show Again"),r=await d.window.showWarningMessage(e,{modal:!0},t,i);if(r===i)await n.update("confirmEmptyCommits",!1,!0);else if(r!==t)return}await this.commitWithAnyInput(e,{empty:!0,noVerify:t})}async commitEmpty(e){await this._commitEmpty(e)}async commitNoVerify(e){await this.commitWithAnyInput(e,{noVerify:!0})}async commitStagedNoVerify(e){await this.commitWithAnyInput(e,{all:!1,noVerify:!0})}async commitStagedSignedNoVerify(e){await this.commitWithAnyInput(e,{all:!1,signoff:!0,noVerify:!0})}async commitAmendNoVerify(e){await this.commitWithAnyInput(e,{amend:!0,noVerify:!0})}async commitSignedNoVerify(e){await this.commitWithAnyInput(e,{signoff:!0,noVerify:!0})}async commitStagedAmendNoVerify(e){await this.commitWithAnyInput(e,{all:!1,amend:!0,noVerify:!0})}async commitAllNoVerify(e){await this.commitWithAnyInput(e,{all:!0,noVerify:!0})}async commitAllSignedNoVerify(e){await this.commitWithAnyInput(e,{all:!0,signoff:!0,noVerify:!0})}async commitAllAmendNoVerify(e){await this.commitWithAnyInput(e,{all:!0,amend:!0,noVerify:!0})}async commitEmptyNoVerify(e){await this._commitEmpty(e,!0)}async restoreCommitTemplate(e){e.inputBox.value=await e.getCommitTemplate()}async undoCommit(e){const t=e.HEAD;if(!t||!t.commit)return void d.window.showWarningMessage(d.l10n.t("Can't undo because HEAD doesn't point to any commit."));const i=await e.getCommit("HEAD");if(i.parents.length>1){const e=d.l10n.t("Undo merge commit");if(await d.window.showWarningMessage(d.l10n.t("The last commit was a merge commit. Are you sure you want to undo it?"),{modal:!0},e)!==e)return}i.parents.length>0?await e.reset("HEAD~"):(await e.deleteRef("HEAD"),await this.unstageAll(e)),e.inputBox.value=i.message}async checkout(e,t){return this._checkout(e,{treeish:t})}async checkout2(e,t,i){const n=t?.references?.find(e=>e.id===i);if(!n)return;const r=!0===d.workspace.getConfiguration("git",d.Uri.file(e.root)).get("pullBeforeCheckout",!1);if(n.id.startsWith("refs/heads/")||n.id.startsWith("refs/tags/"))return void await e.checkout(n.name,{pullBeforeCheckout:r});const o=await e.findTrackingBranches(n.name);o.length>0?await e.checkout(o[0].name,{pullBeforeCheckout:r}):await e.checkoutTracking(n.name)}async checkoutDetached(e,t){return this._checkout(e,{detached:!0,treeish:t})}async checkoutDetached2(e,t){return!!t&&this._checkout(e,{detached:!0,treeish:t.id})}async _checkout(e,t){if("string"==typeof t?.treeish)return await e.checkout(t?.treeish,t),!0;const i=new C,n=new k,r=new R,o=[],a=[];t?.detached||a.push(i,n,r);const s=[],c=d.window.createQuickPick();c.busy=!0,c.sortByLabel=!1,c.matchOnDetail=!1,c.placeholder=t?.detached?d.l10n.t("Select a branch to checkout in detached mode"):d.l10n.t("Select a branch or tag to checkout"),c.show(),o.push(...await async function(e,t=!1){const i=d.workspace.getConfiguration("git"),n=i.get("checkoutType"),r=!0===i.get("showReferenceDetails");let o;o="all"!==n&&n&&0!==n.length?"string"==typeof n?[n]:n:["local","remote","tags"],t&&(o=o.filter(e=>"tags"!==e));const a=await e.getRefs({includeCommitDetails:r}),s=o.map(t=>function(e,t){switch(t){case"local":return new X(e);case"remote":return new J(1,I);case"tags":return new J(2,T);default:return}}(e,t)).filter(e=>!!e),c=await async function(e){const t=new Map,i=async e=>(await(0,w.getRemoteSourceActions)(e)).map(e=>({iconPath:new d.ThemeIcon(e.icon),tooltip:e.label,actual:e}));for(const n of e.remotes){if(n.fetchUrl){const e=t.get(n.fetchUrl)??[];e.push(...await i(n.fetchUrl)),t.set(n.fetchUrl,e)}if(n.pushUrl&&n.pushUrl!==n.fetchUrl){const e=t.get(n.pushUrl)??[];e.push(...await i(n.pushUrl)),t.set(n.pushUrl,e)}}return t}(e);return new Z(e,s,c,t).processRefs(a)}(e,t?.detached));const l=()=>{switch(!0){case""===c.value:c.items=[...a,...o];break;case 0===a.length:c.items=o;break;case 0===o.length:c.items=a;break;default:c.items=[...o,{label:"",kind:d.QuickPickItemKind.Separator},...a]}};l(),c.busy=!1;const m=await new Promise(e=>{s.push(c.onDidHide(()=>e(void 0))),s.push(c.onDidAccept(()=>e(c.activeItems[0]))),s.push(c.onDidTriggerItemButton(t=>{const i=t.button,n=t.item;i.actual&&n.refName&&i.actual.run(n.refRemote?n.refName.substring(n.refRemote.length+1):n.refName),e(void 0)})),s.push(c.onDidChangeValue(()=>l()))});if((0,f.dispose)(s),c.dispose(),!m)return!1;if(m===i)await this._branch(e,c.value);else if(m===n)await this._branch(e,c.value,!0);else{if(m===r)return this._checkout(e,{detached:!0});{const i=m;try{await i.run(e,t)}catch(n){if("DirtyWorkTree"!==n.gitErrorCode&&"WorktreeBranchAlreadyUsed"!==n.gitErrorCode)throw n;if("WorktreeBranchAlreadyUsed"===n.gitErrorCode){if(!e.dotGit.commonPath)return await this.handleWorktreeBranchAlreadyUsed(n),!1;const t=u.dirname(e.dotGit.commonPath);if(d.workspace.workspaceFolders&&d.workspace.workspaceFolders.some(e=>(0,f.pathEquals)(e.uri.fsPath,t))){const e=this.model.getRepository(t);if(e&&i.refName&&i.refName.replace(`${i.refRemote}/`,"")===e.HEAD?.name){const e=d.l10n.t('Branch "{0}" is already checked out in the current window.',i.refName);return await d.window.showErrorMessage(e,{modal:!0}),!1}}return await this.handleWorktreeBranchAlreadyUsed(n),!1}const r=d.l10n.t("Stash & Checkout"),o=d.l10n.t("Migrate Changes"),a=d.l10n.t("Force Checkout"),s=await d.window.showWarningMessage(d.l10n.t("Your local changes would be overwritten by checkout."),{modal:!0},r,o,a);s===a?(await this.cleanAll(e),await i.run(e,t)):s!==r&&s!==o||await this._stash(e,!0)&&(await i.run(e,t),s===o&&await this.stashPopLatest(e))}}}return!0}async branch(e,t){await this._branch(e,void 0,!1,t?.id)}async branchFrom(e){await this._branch(e,void 0,!0)}async generateRandomBranchName(e,t){const i=d.workspace.getConfiguration("git").get("branchRandomName.dictionary"),n=[];for(const e of i)"adjectives"===e.toLowerCase()&&n.push(m.adjectives),"animals"===e.toLowerCase()&&n.push(m.animals),"colors"===e.toLowerCase()&&n.push(m.colors),"numbers"===e.toLowerCase()&&n.push(m.NumberDictionary.generate({length:3}));if(0===n.length)return"";for(let i=0;i<5;i++){const i=(0,m.uniqueNamesGenerator)({dictionaries:n,length:n.length,separator:t});if(0===(await e.getRefs({pattern:`refs/heads/${i}`})).length)return i}return""}async promptForBranchName(e,t,i){const n=d.workspace.getConfiguration("git"),r=n.get("branchPrefix"),o=n.get("branchWhitespaceChar"),a=n.get("branchValidationRegex"),s=n.get("branchRandomName.enable",!1),c=await e.getRefs({pattern:"refs/heads"});if(t)return ee(t,o);const l=async()=>{const t=s?await this.generateRandomBranchName(e,o):"";return`${r}${t}`},u=e=>e.startsWith(r)?[r.length,e.length]:void 0,m=e=>{const t=new RegExp(a),i=ee(e,o);return c.find(e=>e.name===i)?d.l10n.t('Branch "{0}" already exists',i):t.test(i)?e===i?void 0:{message:d.l10n.t('The new branch will be "{0}"',i),severity:d.InputBoxValidationSeverity.Info}:d.l10n.t("Branch name needs to match regex: {0}",a)},h=[],g=d.window.createInputBox();g.placeholder=d.l10n.t("Branch name"),g.prompt=d.l10n.t("Please provide a new branch name"),g.buttons=s?[{iconPath:new d.ThemeIcon("refresh"),tooltip:d.l10n.t("Regenerate Branch Name"),location:d.QuickInputButtonLocation.Inline}]:[],g.value=i??await l(),g.valueSelection=u(g.value),g.validationMessage=m(g.value),g.ignoreFocusOut=!0,g.show();const p=await new Promise(e=>{h.push(g.onDidHide(()=>e(void 0))),h.push(g.onDidAccept(()=>e(g.value))),h.push(g.onDidChangeValue(e=>{g.validationMessage=m(e)})),h.push(g.onDidTriggerButton(async()=>{g.value=await l(),g.valueSelection=u(g.value)}))});return(0,f.dispose)(h),g.dispose(),ee(p||"",o)}async _branch(e,t,i=!1,n){n=n??"HEAD";const r=d.workspace.getConfiguration("git"),o=!0===r.get("showReferenceDetails"),a=r.get("commitShortHashLength")??7;if(i){const t=async()=>{const t=await e.getRefs({includeCommitDetails:o}),i=new q(e,[new J(0),new J(1),new J(2)]);return[new F(e,a),...i.processRefs(t)]},i=d.l10n.t("Select a ref to create the branch from"),r=await d.window.showQuickPick(t(),{placeHolder:i});if(!r)return;r instanceof D&&r.refName&&(n=r.refName)}const s=await this.promptForBranchName(e,t);s&&await e.branch(s,!0,n)}async pickRef(e,t){const i=[],n=d.window.createQuickPick();n.placeholder=t,n.sortByLabel=!1,n.busy=!0,n.show(),n.items=await e,n.busy=!1;const r=await new Promise(e=>{i.push(n.onDidHide(()=>e(void 0))),i.push(n.onDidAccept(()=>e(n.activeItems[0])))});return(0,f.dispose)(i),n.dispose(),r}async deleteBranch(e,t,i){await this._deleteBranch(e,void 0,t,{remote:!1,force:i})}async deleteBranch2(e,t,i){const n=t?.references?.find(e=>e.id===i);if(!n)return;if(n.id.startsWith("refs/heads/"))return n.id===e.historyProvider.currentHistoryItemRef?.id?void d.window.showInformationMessage(d.l10n.t("The active branch cannot be deleted.")):void await this._deleteBranch(e,void 0,n.name,{remote:!1});if(n.id===e.historyProvider.currentHistoryItemRemoteRef?.id)return void d.window.showInformationMessage(d.l10n.t("The remote branch of the active branch cannot be deleted."));const r=n.name.indexOf("/");if(-1===r)return;const o=n.name.substring(0,r),a=n.name.substring(r+1);await this._deleteBranch(e,o,a,{remote:!0})}async compareWithRemote(e,t){t&&e.historyProvider.currentHistoryItemRemoteRef&&await this._openChangesBetweenRefs(e,{id:e.historyProvider.currentHistoryItemRemoteRef.revision,displayId:e.historyProvider.currentHistoryItemRemoteRef.name},{id:t.id,displayId:(0,f.getHistoryItemDisplayName)(t)})}async compareWithMergeBase(e,t){t&&e.historyProvider.currentHistoryItemBaseRef&&await this._openChangesBetweenRefs(e,{id:e.historyProvider.currentHistoryItemBaseRef.revision,displayId:e.historyProvider.currentHistoryItemBaseRef.name},{id:t.id,displayId:(0,f.getHistoryItemDisplayName)(t)})}async compareRef(e,t){if(!e||!t)return;const i=!0===d.workspace.getConfiguration("git").get("showReferenceDetails"),n=d.l10n.t("Select a reference to compare with"),r=await this.pickRef((async()=>{const t=await e.getRefs({includeCommitDetails:i}),n=[new J(0,P),new J(1,P),new J(2,P)];return new q(e,n).processRefs(t)})(),n);r instanceof P&&r.ref.commit&&await this._openChangesBetweenRefs(e,{id:r.ref.commit,displayId:r.ref.name},{id:t.id,displayId:(0,f.getHistoryItemDisplayName)(t)})}async _openChangesBetweenRefs(e,t,i){if(e&&t.id&&i.id)try{const n=await e.diffBetween2(t.id,i.id);if(0===n.length)return void d.window.showInformationMessage(d.l10n.t('There are no changes between "{0}" and "{1}".',t.displayId??t.id,i.displayId??i.id));const r=d.Uri.from({scheme:"git-ref-compare",path:`${e.root}/${t.id}..${i.id}`}),o=n.map(e=>(0,p.toMultiFileDiffEditorUris)(e,t.id,i.id));await d.commands.executeCommand("_workbench.openMultiDiffEditor",{multiDiffSourceUri:r,title:`${t.displayId??t.id} ↔ ${i.displayId??i.id}`,resources:o})}catch(e){d.window.showErrorMessage(d.l10n.t('Failed to open changes between "{0}" and "{1}": {2}',t.displayId??t.id,i.displayId??i.id,e.message))}}async deleteRemoteBranch(e){await this._deleteBranch(e,void 0,void 0,{remote:!0})}async _deleteBranch(e,t,i,n){let r;const o=!0===d.workspace.getConfiguration("git").get("showReferenceDetails");if(n.remote||"string"!=typeof i)if(n.remote&&"string"==typeof t&&"string"==typeof i)r=n=>e.deleteRemoteRef(t,i,{force:n});else{const t=async()=>{const t=n.remote?"refs/remotes":"refs/heads",i=await e.getRefs({pattern:t,includeCommitDetails:o}),r=n.remote?[new J(1,x)]:[new J(0,x)];return new q(e,r,{skipCurrentBranch:!0,skipCurrentBranchRemote:!0}).processRefs(i)},a=n.remote?d.l10n.t("Select a remote branch to delete"):d.l10n.t("Select a branch to delete"),s=await this.pickRef(t(),a);if(!(s instanceof x&&s.refName))return;i=s.refName,r=t=>s.run(e,t)}else r=t=>e.deleteBranch(i,t);try{await r(n.force)}catch(e){if("BranchNotFullyMerged"!==e.gitErrorCode)throw e;const t=d.l10n.t('The branch "{0}" is not fully merged. Delete anyway?',i),n=d.l10n.t("Delete Branch");await d.window.showWarningMessage(t,{modal:!0},n)===n&&await r(!0)}}async renameBranch(e){const t=e.HEAD&&e.HEAD.name,i=await this.promptForBranchName(e,void 0,t);if(i)try{await e.renameBranch(i)}catch(e){switch(e.gitErrorCode){case"InvalidBranchName":return void d.window.showErrorMessage(d.l10n.t("Invalid branch name"));case"BranchAlreadyExists":return void d.window.showErrorMessage(d.l10n.t('A branch named "{0}" already exists',i));default:throw e}}}async merge(e){const t=!0===d.workspace.getConfiguration("git").get("showReferenceDetails"),i=d.l10n.t("Select a branch or tag to merge from"),n=await this.pickRef((async()=>{const i=await e.getRefs({includeCommitDetails:t});return new q(e,[new J(0,G),new J(1,G),new J(2,G)],{skipCurrentBranch:!0,skipCurrentBranchRemote:!0}).processRefs(i)})(),i);n instanceof G&&await n.run(e)}async abortMerge(e){await e.mergeAbort()}async rebase(e){const t=d.workspace.getConfiguration("git"),i=!0===t.get("showReferenceDetails"),n=t.get("commitShortHashLength")??7,r=d.l10n.t("Select a branch to rebase onto"),o=await this.pickRef((async()=>{const t=await e.getRefs({includeCommitDetails:i}),r=new q(e,[new J(0,L),new J(1,L)],{skipCurrentBranch:!0,skipCurrentBranchRemote:!0}).processRefs(t);if(e.HEAD?.upstream){const i=t.find(t=>1===t.type&&t.name===`${e.HEAD.upstream.remote}/${e.HEAD.upstream.name}`);i&&r.splice(0,0,new H(i,n))}return r})(),r);o instanceof L&&await o.run(e)}async createTag(e,t){await this._createTag(e,t?.id)}async deleteTag(e){const t=d.workspace.getConfiguration("git"),i=!0===t.get("showReferenceDetails"),n=t.get("commitShortHashLength")??7,r=d.l10n.t("Select a tag to delete"),o=await this.pickRef((async()=>{const t=await e.getRefs({pattern:"refs/tags",includeCommitDetails:i});return 0===t.length?[{label:d.l10n.t("$(info) This repository has no tags.")}]:t.map(e=>new M(e,n))})(),r);o instanceof M&&await o.run(e)}async migrateWorktreeChanges(e){const t=d.l10n.t("Select a worktree to migrate changes from"),i=await this.pickRef((async()=>{const t=await e.getWorktrees();return 0===t.length?[{label:d.l10n.t("$(info) This repository has no worktrees.")}]:t.map(e=>new E(e))})(),t);if(!(i&&i instanceof E))return;const n=this.model.getRepository(i.worktree.path);if(!n)return;if(0===n.indexGroup.resourceStates.length&&0===n.workingTreeGroup.resourceStates.length&&0===n.untrackedGroup.resourceStates.length)return void await d.window.showInformationMessage(d.l10n.t("There are no changes in the selected worktree to migrate."));const r=[...n.indexGroup.resourceStates,...n.workingTreeGroup.resourceStates,...n.untrackedGroup.resourceStates].map(e=>u.relative(n.root,e.resourceUri.fsPath)),o=[...e.workingTreeGroup.resourceStates,...e.untrackedGroup.resourceStates].map(t=>u.relative(e.root,t.resourceUri.fsPath)),a=r.filter(e=>o.includes(e));if(a.length>0){const e=5,t=a.slice(0,e),i=a.length-e,n=t.join("\n ")+(i>0?d.l10n.t("\n and {0} more file{1}...",i,i>1?"s":""):""),r=d.l10n.t("Your local changes to the following files would be overwritten by merge:\n {0}\n\nPlease stage, commit, or stash your changes in the repository before migrating changes.",n);return void await d.window.showErrorMessage(r,{modal:!0})}const s=d.l10n.t("Proceed with migrating changes to the current repository?"),c=d.l10n.t("This will apply the worktree's changes to this repository and discard changes in the worktree.\nThis is IRREVERSIBLE!"),l=d.l10n.t("Proceed");if(await d.window.showWarningMessage(s,{modal:!0,detail:c},l)!==l)return;await n.createStash(void 0,!0);const m=await n.getStashes();try{await e.applyStash(m[0].index),n.dropStash(m[0].index)}catch(t){if("StashConflict"!==t.gitErrorCode)throw await n.popStash(),t;e.isWorktreeMigrating=!0;const i=d.l10n.t("There are merge conflicts from migrating changes. Please resolve them before committing."),r=d.l10n.t("Show Changes");await d.window.showWarningMessage(i,r)===r&&await d.commands.executeCommand("workbench.view.scm"),n.dropStash(m[0].index)}}async openWorktreeMergeEditor(e){const t=(0,p.toMergeUris)(e),i={uri:t.ours,title:d.l10n.t("Workspace")},n={uri:t.theirs,title:d.l10n.t("Worktree")};await d.commands.executeCommand("_open.mergeEditor",{base:t.base,input1:i,input2:n,output:e})}async createWorktreeWithDefaults(e,t="HEAD"){const i=d.workspace.getConfiguration("git").get("branchPrefix","");let n=await this.generateRandomBranchName(e,"-");n||(n=`${i}worktree-${(new Date).toISOString().replace(/[:.]/g,"-").slice(0,19)}`),i&&!n.startsWith(i)&&(n=i+n);const r=n.startsWith(i)?n.substring(i.length).replace(/\//g,"-"):n.replace(/\//g,"-"),o=this.globalState.get(`${Zi.WORKTREE_ROOT_KEY}:${e.root}`),a=o?u.join(o,r):u.join(u.dirname(e.root),`${u.basename(e.root)}.worktrees`,r);if(e.worktrees.find(e=>(0,f.pathEquals)(u.normalize(e.path),u.normalize(a)))){let i=1,r=`${a}-${i}`;for(;e.worktrees.some(e=>(0,f.pathEquals)(u.normalize(e.path),u.normalize(r)));)i++,r=`${a}-${i}`;const s=r;try{await e.addWorktree({path:s,branch:n,commitish:t});const i=u.dirname(s);return i!==o&&this.globalState.update(`${Zi.WORKTREE_ROOT_KEY}:${e.root}`,i),s}catch(e){return}}try{await e.addWorktree({path:a,branch:n,commitish:t});const i=u.dirname(a);return i!==o&&this.globalState.update(`${Zi.WORKTREE_ROOT_KEY}:${e.root}`,i),a}catch(e){return}}async createWorktree(e){if((e=this.model.getRepository(e))||1===this.model.repositories.length&&(e=this.model.repositories[0]),!e){const t=this.model.repositories.filter(e=>"repository"===e.kind||"submodule"===e.kind);1===t.length&&(e=t[0])}e||(e=await this.model.pickRepository(["repository","submodule"])),e&&await this._createWorktree(e)}async _createWorktree(e){const t=d.workspace.getConfiguration("git"),i=t.get("branchPrefix"),n=!0===t.get("showReferenceDetails"),r=new C,o=d.l10n.t("Select a branch or tag to create the new worktree from"),a=await this.pickRef((async()=>{const t=await e.getRefs({includeCommitDetails:n}),i=new q(e,[new J(0),new J(1),new J(2)]).processRefs(t);return[r,{label:"",kind:d.QuickPickItemKind.Separator},...i]})(),o);if(!a)return;let s,c;if(a===r){if(s=await this.promptForBranchName(e),!s)return;c="HEAD"}else{if(!(a instanceof D&&a.refName))return;if(a.refName===e.HEAD?.name){const t=d.l10n.t('Branch "{0}" is already checked out in the current repository.',a.refName),i=d.l10n.t("Create New Branch");if(await d.window.showWarningMessage(t,{modal:!0},i)!==i)return;if(s=await this.promptForBranchName(e),!s)return;c="HEAD"}else{const t=e.worktrees.find(e=>e.ref===a.refId);if(t){const e=d.l10n.t('Branch "{0}" is already checked out in the worktree at "{1}".',a.refName,t.path);return void await this.handleWorktreeConflict(t.path,e)}c=a.refName}}const l=(s??c).startsWith(i)?(s??c).substring(i.length).replace(/\//g,"-"):(s??c).replace(/\//g,"-"),m=async()=>{const t=this.globalState.get(`${Zi.WORKTREE_ROOT_KEY}:${e.root}`),i=t?d.Uri.file(t):d.Uri.file(u.dirname(e.root)),n=await d.window.showOpenDialog({defaultUri:i,canSelectFiles:!1,canSelectFolders:!0,canSelectMany:!1,openLabel:d.l10n.t("Select as Worktree Destination")});if(n&&0!==n.length)return u.join(n[0].fsPath,l)},h=e=>{if(e&&l)return[e.length-l.length,e.length]},g=t=>e.worktrees.find(e=>(0,f.pathEquals)(u.normalize(e.path),u.normalize(t)))?{message:d.l10n.t('A worktree already exists at "{0}".',t),severity:d.InputBoxValidationSeverity.Warning}:void 0,p=this.globalState.get(`${Zi.WORKTREE_ROOT_KEY}:${e.root}`),y=p?u.join(p,l):u.join(u.dirname(e.root),`${u.basename(e.root)}.worktrees`,l),v=[],w=d.window.createInputBox();v.push(w),w.placeholder=d.l10n.t("Worktree path"),w.prompt=d.l10n.t("Please provide a worktree path"),w.value=y,w.valueSelection=h(w.value),w.validationMessage=g(w.value),w.ignoreFocusOut=!0,w.buttons=[{iconPath:new d.ThemeIcon("folder"),tooltip:d.l10n.t("Select Worktree Destination"),location:d.QuickInputButtonLocation.Inline}],w.show();const b=await new Promise(e=>{v.push(w.onDidHide(()=>e(void 0))),v.push(w.onDidAccept(()=>e(w.value))),v.push(w.onDidChangeValue(e=>{w.validationMessage=g(e)})),v.push(w.onDidTriggerButton(async()=>{w.value=await m()??"",w.valueSelection=h(w.value)}))});if((0,f.dispose)(v),b)try{await e.addWorktree({path:b,branch:s,commitish:c});const t=u.dirname(b);t!==p&&this.globalState.update(`${Zi.WORKTREE_ROOT_KEY}:${e.root}`,t)}catch(e){if("WorktreeAlreadyExists"===e.gitErrorCode)await this.handleWorktreeAlreadyExists(e);else{if("WorktreeBranchAlreadyUsed"!==e.gitErrorCode)throw e;await this.handleWorktreeBranchAlreadyUsed(e)}return}}async handleWorktreeBranchAlreadyUsed(e){const t=e.stderr.match(/fatal: '([^']+)' is already used by worktree at '([^']+)'/);if(!t)return;const[,i,n]=t,r=d.l10n.t('Branch "{0}" is already checked out in the worktree at "{1}".',i,n);await this.handleWorktreeConflict(n,r)}async handleWorktreeAlreadyExists(e){const t=e.stderr.match(/fatal: '([^']+)'/);if(!t)return;const[,i]=t,n=d.l10n.t('A worktree already exists at "{0}".',i);await this.handleWorktreeConflict(i,n)}async handleWorktreeConflict(e,t){await this.model.openRepository(e,!0);const i=this.model.getRepository(e);if(!i)return;const n=d.l10n.t("Open Worktree in Current Window"),r=d.l10n.t("Open Worktree in New Window"),o=await d.window.showWarningMessage(t,{modal:!0},n,r);o===n?await this.openWorktreeInCurrentWindow(i):o===r&&await this.openWorktreeInNewWindow(i)}async deleteWorktree(e){if(!e.dotGit.commonPath)return;const t=this.model.getRepository(u.dirname(e.dotGit.commonPath));if(t){this.model.disposeRepository(e);try{await t.deleteWorktree(e.root)}catch(i){if("WorktreeContainsChanges"===i.gitErrorCode){const i=d.l10n.t("Force Delete"),n=d.l10n.t("The worktree contains modified or untracked files. Do you want to force delete?");return void(await d.window.showWarningMessage(n,{modal:!0},i)===i?await t.deleteWorktree(e.root,{force:!0}):await this.model.openRepository(e.root))}throw i}}else await d.window.showErrorMessage(d.l10n.t("You cannot delete the worktree you are currently in. Please switch to the main repository first."),{modal:!0})}async deleteWorktreeFromPalette(e){const t=d.l10n.t("Select a worktree to delete"),i=await this.pickRef((async()=>{const t=await e.getWorktrees();return 0===t.length?[{label:d.l10n.t("$(info) This repository has no worktrees.")}]:t.map(e=>new B(e))})(),t);i instanceof B&&await i.run(e)}async openWorktreeInCurrentWindow(e){if(!e)return;const t=d.Uri.file(e.root);await d.commands.executeCommand("vscode.openFolder",t,{forceReuseWindow:!0})}async openWorktreeInNewWindow(e){if(!e)return;const t=d.Uri.file(e.root);await d.commands.executeCommand("vscode.openFolder",t,{forceNewWindow:!0})}async deleteTag2(e,t,i){const n=t?.references?.find(e=>e.id===i);n&&await e.deleteTag(n.name)}async deleteRemoteTag(e){const t=d.workspace.getConfiguration("git").get("commitShortHashLength")??7,i=e.remotes.filter(e=>void 0!==e.pushUrl).map(t=>new U(e,t));if(0===i.length)return void d.window.showErrorMessage(d.l10n.t("Your repository has no remotes configured to push to."));let n=i[0].remoteName;if(i.length>1){const e=d.l10n.t("Select a remote to delete a tag from"),t=await d.window.showQuickPick(i,{placeHolder:e});if(!t)return;n=t.remoteName}const r=d.l10n.t("Select a remote tag to delete"),o=await d.window.showQuickPick((async()=>{const i=await e.getRemoteRefs(n,{tags:!0}),r=new Set,o=[];for(const e of i){const t=(e.name??"").replace(/\^{}$/,"");r.has(t)||(o.push({...e,name:t}),r.add(t))}return 0===o.length?[{label:d.l10n.t('$(info) Remote "{0}" has no tags.',n)}]:o.map(e=>new O(e,t))})(),{placeHolder:r});o instanceof O&&await o.run(e,n)}async fetch(e){if(0===e.remotes.length)return void d.window.showWarningMessage(d.l10n.t("This repository has no remotes configured to fetch from."));if(1===e.remotes.length)return void await e.fetchDefault();const t=e.remotes.map(t=>new U(e,t));if(e.HEAD?.upstream?.remote){const i=t.findIndex(t=>t.remoteName===e.HEAD.upstream.remote);-1!==i&&t.splice(0,0,...t.splice(i,1))}const i=d.window.createQuickPick();i.placeholder=d.l10n.t("Select a remote to fetch"),i.canSelectMany=!1,i.items=[...t,{label:"",kind:d.QuickPickItemKind.Separator},new $(e)],i.show();const n=await new Promise(e=>{i.onDidAccept(()=>e(i.activeItems[0])),i.onDidHide(()=>e(void 0))});i.hide(),n&&await n.run()}async fetchPrune(e){0!==e.remotes.length?await e.fetchPrune():d.window.showWarningMessage(d.l10n.t("This repository has no remotes configured to fetch from."))}async fetchAll(e){0!==e.remotes.length?await e.fetchAll():d.window.showWarningMessage(d.l10n.t("This repository has no remotes configured to fetch from."))}async fetchRef(e,t){if(t=t??e?.historyProvider.currentHistoryItemRemoteRef?.id,!e||!t)return;const i=await e.getBranch(t);await e.fetch({remote:i.remote,ref:i.name})}async pullFrom(e){const t=d.workspace.getConfiguration("git").get("commitShortHashLength")??7,i=e.remotes;if(0===i.length)return void d.window.showWarningMessage(d.l10n.t("Your repository has no remotes configured to pull from."));let n=i[0].name;if(i.length>1){const e=i.filter(e=>void 0!==e.fetchUrl).map(e=>({label:e.name,description:e.fetchUrl})),t=d.l10n.t("Pick a remote to pull the branch from"),r=await d.window.showQuickPick(e,{placeHolder:t});if(!r)return;n=r.label}const r=d.l10n.t("Pick a branch to pull from"),o=await this.pickRef((async()=>(await e.getRefs({pattern:`refs/remotes/${n}/`})).map(e=>new D(e,t)))(),r);if(!o||!o.refName)return;const a=n.length;await e.pullFrom(!1,n,o.refName.slice(a+1))}async pull(e){0!==e.remotes.length?await e.pull(e.HEAD):d.window.showWarningMessage(d.l10n.t("Your repository has no remotes configured to pull from."))}async pullRebase(e){0!==e.remotes.length?await e.pullWithRebase(e.HEAD):d.window.showWarningMessage(d.l10n.t("Your repository has no remotes configured to pull from."))}async pullRef(e,t){if(t=t??e?.historyProvider.currentHistoryItemRemoteRef?.id,!e||!t)return;const i=await e.getBranch(t);await e.pullFrom(!1,i.remote,i.name)}async _push(e,t){const i=e.remotes;if(0===i.length){if(t.silent)return;const i=d.l10n.t("Add Remote");return void(await d.window.showWarningMessage(d.l10n.t("Your repository has no remotes configured to push to."),i)===i&&await this.addRemote(e))}const n=d.workspace.getConfiguration("git",d.Uri.file(e.root));let r;if(t.forcePush){if(!n.get("allowForcePush"))return void await d.window.showErrorMessage(d.l10n.t('Force push is not allowed, please enable it with the "git.allowForcePush" setting.'));const e=!0===n.get("useForcePushWithLease"),t=!0===n.get("useForcePushIfIncludes");if(r=e?t?2:1:0,n.get("confirmForcePush")){const e=d.l10n.t("You are about to force push your changes, this can be destructive and could inadvertently overwrite changes made by others.\n\nAre you sure to continue?"),t=d.l10n.t("OK"),i=d.l10n.t("OK, Don't Ask Again"),r=await d.window.showWarningMessage(e,{modal:!0},t,i);if(r===i)n.update("confirmForcePush",!1,!0);else if(r!==t)return}}if(t.pushType!==ie.PushFollowTags)if(t.pushType===ie.PushTags&&await e.pushTags(void 0,r),e.HEAD&&e.HEAD.name)if(t.pushType===ie.Push)try{await e.push(e.HEAD,r)}catch(i){if("NoUpstreamBranch"!==i.gitErrorCode)throw i;if(t.silent)return;if(this.globalState.get("confirmBranchPublish",!0)){const t=e.HEAD.name,i=d.l10n.t('The branch "{0}" has no remote branch. Would you like to publish this branch?',t),n=d.l10n.t("OK"),r=d.l10n.t("OK, Don't Ask Again"),o=await d.window.showWarningMessage(i,{modal:!0},n,r);o!==n&&o!==r||(o===r&&this.globalState.update("confirmBranchPublish",!1),await this.publish(e))}else await this.publish(e)}else{const n=e.HEAD.name;if(t.pushTo?.remote)await e.pushTo(t.pushTo.remote,t.pushTo.refspec||n,t.pushTo.setUpstream,r);else{const t=new N(this),o=[...i.filter(e=>void 0!==e.pushUrl).map(e=>({label:e.name,description:e.pushUrl})),t],a=d.l10n.t('Pick a remote to publish the branch "{0}" to:',n),s=await d.window.showQuickPick(o,{placeHolder:a});if(!s)return;if(s===t){const t=await this.addRemote(e);t&&await e.pushTo(t,n,void 0,r)}else await e.pushTo(s.label,n,void 0,r)}}else t.silent||d.window.showWarningMessage(d.l10n.t("Please check out a branch to push to a remote."));else await e.pushFollowTags(void 0,r)}async push(e){await this._push(e,{pushType:ie.Push})}async pushForce(e){await this._push(e,{pushType:ie.Push,forcePush:!0})}async pushFollowTags(e){await this._push(e,{pushType:ie.PushFollowTags})}async pushFollowTagsForce(e){await this._push(e,{pushType:ie.PushFollowTags,forcePush:!0})}async pushRef(e){e&&await this._push(e,{pushType:ie.Push})}async cherryPick(e){const t=await d.window.showInputBox({placeHolder:d.l10n.t("Commit Hash"),prompt:d.l10n.t("Please provide the commit hash"),ignoreFocusOut:!0});t&&await e.cherryPick(t)}async cherryPick2(e,t){t&&await e.cherryPick(t.id)}async cherryPickAbort(e){await e.cherryPickAbort()}async pushTo(e,t,i,n){await this._push(e,{pushType:ie.PushTo,pushTo:{remote:t,refspec:i,setUpstream:n}})}async pushToForce(e,t,i,n){await this._push(e,{pushType:ie.PushTo,pushTo:{remote:t,refspec:i,setUpstream:n},forcePush:!0})}async pushTags(e){await this._push(e,{pushType:ie.PushTags})}async addRemote(e){const t=await(0,w.pickRemoteSource)({providerLabel:e=>d.l10n.t("Add remote from {0}",e.name),urlLabel:d.l10n.t("Add remote from URL")});if(!t)return;const i=await d.window.showInputBox({placeHolder:d.l10n.t("Remote name"),prompt:d.l10n.t("Please provide a remote name"),ignoreFocusOut:!0,validateInput:t=>te(t)?e.remotes.find(e=>e.name===t)?d.l10n.t('Remote "{0}" already exists.',t):null:d.l10n.t("Remote name format invalid")}),n=te(i||"");return n?(await e.addRemote(n,t.trim()),await e.fetch({remote:n}),n):void 0}async removeRemote(e){if(0===e.remotes.length)return void d.window.showErrorMessage(d.l10n.t("Your repository has no remotes."));const t=e.remotes.map(t=>new U(e,t)),i=d.l10n.t("Pick a remote to remove"),n=await d.window.showQuickPick(t,{placeHolder:i});n&&await e.removeRemote(n.remoteName)}async _sync(e,t){const i=e.HEAD;if(!i)return;if(!i.upstream)return void this._push(e,{pushType:ie.Push});const n=i.remote||i.upstream.remote,r=e.remotes.find(e=>e.name===n),o=r&&r.isReadOnly,a=d.workspace.getConfiguration("git");if(!o&&!0===a.get("confirmSync")){const e=d.l10n.t('This action will pull and push commits from and to "{0}/{1}".',i.upstream.remote,i.upstream.name),t=d.l10n.t("OK"),n=d.l10n.t("OK, Don't Show Again"),r=await d.window.showWarningMessage(e,{modal:!0},t,n);if(r===n)await a.update("confirmSync",!1,!0);else if(r!==t)return}await e.sync(i,t)}async sync(e){const t=!0===d.workspace.getConfiguration("git",d.Uri.file(e.root)).get("rebaseWhenSync",!1);try{await this._sync(e,t)}catch(e){if(/Cancelled/i.test(e&&(e.message||e.stderr||"")))return;throw e}}async syncAll(){await Promise.all(this.model.repositories.map(async e=>{const t=!0===d.workspace.getConfiguration("git",d.Uri.file(e.root)).get("rebaseWhenSync",!1),i=e.HEAD;i&&i.upstream&&await e.sync(i,t)}))}async syncRebase(e){try{await this._sync(e,!0)}catch(e){if(/Cancelled/i.test(e&&(e.message||e.stderr||"")))return;throw e}}async publish(e){const t=e.HEAD&&e.HEAD.name||"",i=e.remotes;if(0===i.length){const i=this.model.getRemoteSourcePublishers();if(0===i.length)return void d.window.showWarningMessage(d.l10n.t("Your repository has no remotes configured to publish to."));let n;if(1===i.length)n=i[0];else{const e=i.map(e=>({label:(e.icon?`$(${e.icon}) `:"")+d.l10n.t("Publish to {0}",e.name),alwaysShow:!0,provider:e})),r=d.l10n.t('Pick a provider to publish the branch "{0}" to:',t),o=await d.window.showQuickPick(e,{placeHolder:r});if(!o)return;n=o.provider}return await n.publishRepository(new v.ApiRepository(e)),void this.model.firePublishEvent(e,t)}if(1===i.length)return await e.pushTo(i[0].name,t,!0),void this.model.firePublishEvent(e,t);const n=new N(this),r=[...e.remotes.map(e=>({label:e.name,description:e.pushUrl})),n],o=d.l10n.t('Pick a remote to publish the branch "{0}" to:',t),a=await d.window.showQuickPick(r,{placeHolder:o});if(a)if(a===n){const i=await this.addRemote(e);i&&(await e.pushTo(i,t,!0),this.model.firePublishEvent(e,t))}else await e.pushTo(a.label,t,!0),this.model.firePublishEvent(e,t)}async ignore(...e){if(0===(e=e.filter(e=>!!e)).length||e[0]&&!(e[0].resourceUri instanceof d.Uri)){const t=this.getSCMResource();if(!t)return;e=[t]}const t=e.filter(e=>e instanceof h.Resource).map(e=>e.resourceUri);t.length&&await this.runByRepository(t,async(e,t)=>e.ignore(t))}async revealInExplorer(e){e&&e.resourceUri instanceof d.Uri&&await d.commands.executeCommand("revealInExplorer",e.resourceUri)}async revealFileInOS(e){e&&e.resourceUri instanceof d.Uri&&await d.commands.executeCommand("revealFileInOS",e.resourceUri)}async _stash(e,t=!1,i=!1){const n=0===e.workingTreeGroup.resourceStates.length&&(!t||0===e.untrackedGroup.resourceStates.length),r=0===e.indexGroup.resourceStates.length;if(i){if(r)return d.window.showInformationMessage(d.l10n.t("There are no staged changes to stash.")),!1}else if(n&&r)return d.window.showInformationMessage(d.l10n.t("There are no changes to stash.")),!1;const o=d.workspace.getConfiguration("git",d.Uri.file(e.root)),a=o.get("promptToSaveFilesBeforeStash");if("never"!==a){let t=d.workspace.textDocuments.filter(t=>!t.isUntitled&&t.isDirty&&(0,f.isDescendant)(e.root,t.uri.fsPath));if(("staged"===a||e.indexGroup.resourceStates.length>0)&&(t=t.filter(t=>e.indexGroup.resourceStates.some(e=>(0,f.pathEquals)(e.resourceUri.fsPath,t.uri.fsPath)))),t.length>0){const e=1===t.length?d.l10n.t("The following file has unsaved changes which won't be included in the stash if you proceed: {0}.\n\nWould you like to save it before stashing?",u.basename(t[0].uri.fsPath)):d.l10n.t("There are {0} unsaved files.\n\nWould you like to save them before stashing?",t.length),i=d.l10n.t("Save All & Stash"),n=d.l10n.t("Stash Anyway"),r=await d.window.showWarningMessage(e,{modal:!0},i,n);if(r===i)await Promise.all(t.map(e=>e.save()));else if(r!==n)return!1}}let s;if(!o.get("useCommitInputAsStashMessage")||e.sourceControl.commitTemplate&&e.inputBox.value===e.sourceControl.commitTemplate||(s=e.inputBox.value),s=await d.window.showInputBox({value:s,prompt:d.l10n.t("Optionally provide a stash message"),placeHolder:d.l10n.t("Stash message")}),void 0===s)return!1;try{return await e.createStash(s,t,i),!0}catch(e){if(/You do not have the initial commit yet/.test(e.stderr||""))return d.window.showInformationMessage(d.l10n.t("The repository does not have any commits. Please make an initial commit before creating a stash.")),!1;throw e}}async stash(e){return await this._stash(e)}async stashStaged(e){return await this._stash(e,!1,!0)}async stashIncludeUntracked(e){return await this._stash(e,!0)}async stashPop(e){const t=d.l10n.t("Pick a stash to pop"),i=await this.pickStash(e,t);i&&await e.popStash(i.index)}async stashPopLatest(e){0!==(await e.getStashes()).length?await e.popStash():d.window.showInformationMessage(d.l10n.t("There are no stashes in the repository."))}async stashPopEditor(e){const t=await this.getStashFromUri(e);t&&(await d.commands.executeCommand("workbench.action.closeActiveEditor"),await t.repository.popStash(t.stash.index))}async stashApply(e){const t=d.l10n.t("Pick a stash to apply"),i=await this.pickStash(e,t);i&&await e.applyStash(i.index)}async stashApplyLatest(e){0!==(await e.getStashes()).length?await e.applyStash():d.window.showInformationMessage(d.l10n.t("There are no stashes in the repository."))}async stashApplyEditor(e){const t=await this.getStashFromUri(e);t&&(await d.commands.executeCommand("workbench.action.closeActiveEditor"),await t.repository.applyStash(t.stash.index))}async stashDrop(e){const t=d.l10n.t("Pick a stash to drop"),i=await this.pickStash(e,t);i&&await this._stashDrop(e,i)}async stashDropAll(e){const t=await e.getStashes();if(0===t.length)return void d.window.showInformationMessage(d.l10n.t("There are no stashes in the repository."));const i=d.l10n.t("Yes"),n=1===t.length?d.l10n.t("Are you sure you want to drop ALL stashes? There is 1 stash that will be subject to pruning, and MAY BE IMPOSSIBLE TO RECOVER."):d.l10n.t("Are you sure you want to drop ALL stashes? There are {0} stashes that will be subject to pruning, and MAY BE IMPOSSIBLE TO RECOVER.",t.length);await d.window.showWarningMessage(n,{modal:!0},i)===i&&await e.dropStash()}async stashDropEditor(e){const t=await this.getStashFromUri(e);t&&await this._stashDrop(t.repository,t.stash)&&await d.commands.executeCommand("workbench.action.closeActiveEditor")}async _stashDrop(e,t){const i=d.l10n.t("Yes");return await d.window.showWarningMessage(d.l10n.t("Are you sure you want to drop the stash: {0}?",t.description),{modal:!0},i)===i&&(await e.dropStash(t.index),!0)}async stashView(e){const t=d.l10n.t("Pick a stash to view"),i=await this.pickStash(e,t);if(!i)return;const n=await e.showStash(i.index);if(!n||0===n.length)return;const r=i.parents.length>0?i.parents[0]:`${i.hash}^`,o=3===i.parents.length?i.parents[2]:void 0,a=[];if(o){const t=await e.getObjectFiles(o);a.push(...t.map(t=>u.join(e.root,t.file)))}const s=`Git Stash #${i.index}: ${i.description}`,c=(0,p.toGitUri)(d.Uri.file(e.root),`stash@{${i.index}}`,{scheme:"git-stash"}),l=[];for(const e of n){const t=a.find(t=>(0,f.pathEquals)(t,e.uri.fsPath))?o??i.hash:i.hash;l.push((0,p.toMultiFileDiffEditorUris)(e,r,t))}d.commands.executeCommand("_workbench.openMultiDiffEditor",{multiDiffSourceUri:c,title:s,resources:l})}async pickStash(e,t){const i=await d.window.showQuickPick((async()=>{const t=await e.getStashes();return t.length>0?t.map(e=>new j(e)):[{label:d.l10n.t("$(info) This repository has no stashes.")}]})(),{placeHolder:t});return i instanceof j?i.stash:void 0}async getStashFromUri(e){if(!e||"git-stash"!==e.scheme)return;const t=(0,p.fromGitUri)(e),i=this.model.getRepository(t.path);if(!i)return;const n=/^stash@{(\d+)}$/.exec(t.ref);if(!n)return;const[,r]=n,o=(await i.getStashes()).find(e=>e.index===parseInt(r));return o?{repository:i,stash:o}:void 0}async timelineOpenDiff(e,t,i){const n=this.resolveTimelineOpenDiffCommand(e,t,{preserveFocus:!0,preview:!0,viewColumn:d.ViewColumn.Active});if(void 0!==n)return d.commands.executeCommand(n.command,...n.arguments??[])}resolveTimelineOpenDiffCommand(e,t,i){if(null==t||!y.GitTimelineItem.is(e))return;const n=u.basename(t.fsPath);let r;return r="HEAD"!==e.previousRef&&"~"!==e.previousRef||""!==e.ref?"HEAD"===e.previousRef&&"~"===e.ref?d.l10n.t("{0} (Index)",n):d.l10n.t("{0} ({1}) ↔ {0} ({2})",n,e.shortPreviousRef,e.shortRef):d.l10n.t("{0} (Working Tree)",n),{command:"vscode.diff",title:d.l10n.t("Open Comparison"),arguments:[(0,p.toGitUri)(t,e.previousRef),""===e.ref?t:(0,p.toGitUri)(t,e.ref),r,i]}}async timelineViewCommit(e,t,i){if(!y.GitTimelineItem.is(e))return;const n=await this._resolveTimelineOpenCommitCommand(e,t,{preserveFocus:!0,preview:!0,viewColumn:d.ViewColumn.Active});return void 0!==n?d.commands.executeCommand(n.command,...n.arguments??[]):void 0}async _resolveTimelineOpenCommitCommand(e,t,i){if(null==t||!y.GitTimelineItem.is(e))return;const n=await this.model.getRepository(t.fsPath);if(!n)return;const r=await n.getCommit(e.ref),o=r.parents.length>0?r.parents[0]:await n.getEmptyTree(),a=(await n.diffBetween2(o,r.hash)).map(e=>(0,p.toMultiFileDiffEditorUris)(e,o,r.hash)),s=`${e.shortRef} - ${(0,f.subject)(r.message)}`,c=d.Uri.from({scheme:"scm-history-item",path:`${n.root}/${o}..${r.hash}`}),l={modifiedUri:(0,p.toGitUri)(t,r.hash)};return{command:"_workbench.openMultiDiffEditor",title:d.l10n.t("Open Commit"),arguments:[{multiDiffSourceUri:c,title:s,resources:a,reveal:l},i]}}async timelineCopyCommitId(e,t,i){y.GitTimelineItem.is(e)&&d.env.clipboard.writeText(e.ref)}async timelineCopyCommitMessage(e,t,i){y.GitTimelineItem.is(e)&&d.env.clipboard.writeText(e.message)}_selectedForCompare;async timelineSelectForCompare(e,t,i){y.GitTimelineItem.is(e)&&t&&(this._selectedForCompare={uri:t,item:e},await d.commands.executeCommand("setContext","git.timeline.selectedForCompare",!0))}async timelineCompareWithSelected(e,t,i){if(!y.GitTimelineItem.is(e)||!t||!this._selectedForCompare||t.toString()!==this._selectedForCompare.uri.toString())return;const{item:n}=this._selectedForCompare,r=u.basename(t.fsPath);let o,a;o="HEAD"!==n.previousRef&&"~"!==n.previousRef||""!==n.ref?"HEAD"===n.previousRef&&"~"===n.ref?d.l10n.t("{0} (Index)",r):d.l10n.t("{0} ({1})",r,n.shortRef):d.l10n.t("{0} (Working Tree)",r),a="HEAD"!==e.previousRef&&"~"!==e.previousRef||""!==e.ref?"HEAD"===e.previousRef&&"~"===e.ref?d.l10n.t("{0} (Index)",r):d.l10n.t("{0} ({1})",r,e.shortRef):d.l10n.t("{0} (Working Tree)",r);const s=d.l10n.t("{0} ↔ {1}",o,a);await d.commands.executeCommand("vscode.diff",""===n.ref?t:(0,p.toGitUri)(t,n.ref),""===e.ref?t:(0,p.toGitUri)(t,e.ref),s)}async rebaseAbort(e){e.rebaseCommit?await e.rebaseAbort():await d.window.showInformationMessage(d.l10n.t("No rebase in progress."))}closeDiffEditors(e){e.closeDiffEditors(void 0,void 0,!0)}closeUnmodifiedEditors(){const e=[],t=[];for(const e of this.model.repositories)t.push(...e.indexGroup.resourceStates.map(e=>e.resourceUri.fsPath)),t.push(...e.workingTreeGroup.resourceStates.map(e=>e.resourceUri.fsPath)),t.push(...e.untrackedGroup.resourceStates.map(e=>e.resourceUri.fsPath)),t.push(...e.mergeGroup.resourceStates.map(e=>e.resourceUri.fsPath));for(const i of d.window.tabGroups.all.map(e=>e.tabs).flat())if(!i.isDirty&&(i.input instanceof d.TabInputText||i.input instanceof d.TabInputNotebook)){const{uri:n}=i.input;t.find(e=>(0,f.pathEquals)(e,n.fsPath))||e.push(i)}d.window.tabGroups.close(e,!0)}async openRepositoriesInParentFolders(){const e=[],t=d.l10n.t("Open Repositories In Parent Folders"),i=d.l10n.t("Pick a repository to open"),n={label:d.l10n.t("All Repositories")},r=this.model.parentRepositories.sort(Q).map(e=>new W(e)),o=1===this.model.parentRepositories.length?[...r]:[...r,{label:"",kind:d.QuickPickItemKind.Separator},n],a=await d.window.showQuickPick(o,{title:t,placeHolder:i});if(a){a===n?e.push(...this.model.parentRepositories):e.push(a.path);for(const t of e)await this.model.openParentRepository(t)}}async manageUnsafeRepositories(){const e=[],t=d.window.createQuickPick();t.title=d.l10n.t("Manage Unsafe Repositories"),t.placeholder=d.l10n.t("Pick a repository to mark as safe and open");const i=d.l10n.t("All Repositories"),n={label:i},r=this.model.unsafeRepositories.sort(Q).map(e=>new W(e));t.items=1===this.model.unsafeRepositories.length?[...r]:[...r,{label:"",kind:d.QuickPickItemKind.Separator},n],t.show();const o=await new Promise(e=>{t.onDidAccept(()=>e(t.activeItems[0])),t.onDidHide(()=>e(void 0))});if(t.hide(),o){o.label===i?e.push(...this.model.unsafeRepositories):e.push(o.path);for(const t of e)await this.git.addSafeDirectory(this.model.getUnsafeRepositoryPath(t)),await this.model.openRepository(t),this.model.deleteUnsafeRepository(t)}}async viewChanges(e){await this._viewResourceGroupChanges(e,e.workingTreeGroup)}async viewStagedChanges(e){await this._viewResourceGroupChanges(e,e.indexGroup)}async viewUnstagedChanges(e){await this._viewResourceGroupChanges(e,e.untrackedGroup)}async _viewResourceGroupChanges(e,t){if(0!==t.resourceStates.length)await d.commands.executeCommand("_workbench.openScmMultiDiffEditor",{title:`${e.sourceControl.label}: ${t.label}`,repositoryUri:d.Uri.file(e.root),resourceGroupId:t.id});else switch(t.id){case"index":d.window.showInformationMessage(d.l10n.t("The repository does not have any staged changes."));break;case"workingTree":d.window.showInformationMessage(d.l10n.t("The repository does not have any changes."));break;case"untracked":d.window.showInformationMessage(d.l10n.t("The repository does not have any untracked changes."))}}async copyCommitId(e,t){e&&t&&d.env.clipboard.writeText(t.id)}async copyCommitMessage(e,t){e&&t&&d.env.clipboard.writeText(t.message)}async viewCommit(e,t,i){if(!e||!t)return;const n=d.Uri.file(e.root),r=d.workspace.getConfiguration("git",n).get("commitShortHashLength",7),o=await e.getCommit(t),a=`${(0,f.truncate)(t,r,!1)} - ${(0,f.subject)(o.message)}`,s=o.parents.length>0?o.parents[0]:await e.getEmptyTree(),c=d.Uri.from({scheme:"scm-history-item",path:`${e.root}/${s}..${t}`}),l=(await e.diffBetween2(s,t)).map(e=>(0,p.toMultiFileDiffEditorUris)(e,s,t)),u=i?{modifiedUri:(0,p.toGitUri)(i,t)}:void 0;await d.commands.executeCommand("_workbench.openMultiDiffEditor",{multiDiffSourceUri:c,title:a,resources:l,reveal:u})}async copyContentToClipboard(e){"string"==typeof e&&d.env.clipboard.writeText(e)}toggleBlameEditorDecoration(){this._toggleBlameSetting("blame.editorDecoration.enabled")}toggleBlameStatusBarItem(){this._toggleBlameSetting("blame.statusBarItem.enabled")}_toggleBlameSetting(e){const t=d.workspace.getConfiguration("git"),i=!0===t.get(e);t.update(e,!i,!0)}async artifactGroupCreateBranch(e){e&&await this._branch(e,void 0,!1)}async artifactGroupCreateTag(e){e&&await this._createTag(e)}async artifactCheckout(e,t){e&&t&&await this._checkout(e,{treeish:t.name})}async artifactCheckoutDetached(e,t){e&&t&&await this._checkout(e,{treeish:t.name,detached:!0})}async artifactMerge(e,t){e&&t&&await e.merge(t.id)}async artifactRebase(e,t){e&&t&&await e.rebase(t.id)}async artifactCreateFrom(e,t){e&&t&&await this._branch(e,void 0,!1,t.id)}async artifactCompareWith(e,t){if(!e||!t)return;const i=!0===d.workspace.getConfiguration("git").get("showReferenceDetails"),n=d.l10n.t("Select a reference to compare with"),r=await this.pickRef((async()=>{const t=await e.getRefs({includeCommitDetails:i}),n=[new J(0,P),new J(1,P),new J(2,P)];return new q(e,n).processRefs(t)})(),n);r instanceof P&&r.ref.commit&&await this._openChangesBetweenRefs(e,{id:r.ref.commit,displayId:r.ref.name},{id:t.id,displayId:t.name})}async _createTag(e,t){const i=await d.window.showInputBox({placeHolder:d.l10n.t("Tag name"),prompt:d.l10n.t("Please provide a tag name"),ignoreFocusOut:!0});if(!i)return;const n=await d.window.showInputBox({placeHolder:d.l10n.t("Message"),prompt:d.l10n.t("Please provide a message to annotate the tag"),ignoreFocusOut:!0}),r=i.replace(/^\.|\/\.|\.\.|~|\^|:|\/$|\.lock$|\.lock\/|\\|\*|\s|^\s*$|\.$/g,"-");await e.tag({name:r,message:n,ref:t})}async artifactDeleteBranch(e,t){if(!e||!t)return;const i=d.l10n.t('Are you sure you want to delete branch "{0}"? This action will permanently remove the branch reference from the repository.',t.name),n=d.l10n.t("Delete Branch");await d.window.showWarningMessage(i,{modal:!0},n)===n&&await this._deleteBranch(e,void 0,t.name,{remote:!1})}async artifactDeleteTag(e,t){if(!e||!t)return;const i=d.l10n.t('Are you sure you want to delete tag "{0}"? This action will permanently remove the tag reference from the repository.',t.name),n=d.l10n.t("Delete Tag");await d.window.showWarningMessage(i,{modal:!0},n)===n&&await e.deleteTag(t.name)}createCommand(e,t,i,n){const r=(...t)=>{let r;if(n.repository){const e=this.model.getRepository(t[0]);let o;o=e?Promise.resolve(e):this.model.pickRepository(n.repositoryFilter),r=o.then(e=>e?Promise.resolve(i.apply(this,[e,...t.slice(1)])):Promise.resolve())}else r=Promise.resolve(i.apply(this,t));return this.telemetryReporter.sendTelemetryEvent("git.command",{command:e}),r.catch(e=>{const t={modal:!0};let i,n="error";const r=new Map,o=d.l10n.t("Open Git Log"),a=this.logger;r.set(o,()=>a.show());const s=d.l10n.t("Show Command Output");switch(e.stderr&&r.set(s,async()=>{const t=(new Date).getTime(),i=d.Uri.parse(`git-output:/git-error-${t}`);let n="git";e.gitArgs?n=`${n} ${e.gitArgs.join(" ")}`:e.gitCommand&&(n=`${n} ${e.gitCommand}`),this.commandErrors.set(i,`> ${n}\n${e.stderr}`);try{const e=await d.workspace.openTextDocument(i);await d.window.showTextDocument(e)}finally{this.commandErrors.delete(i)}}),e.gitErrorCode){case"DirtyWorkTree":i=d.l10n.t("Please clean your repository working tree before checkout.");break;case"PushRejected":i=d.l10n.t('Can\'t push refs to remote. Try running "Pull" first to integrate your changes.');break;case"ForcePushWithLeaseRejected":case"ForcePushWithLeaseIfIncludesRejected":i=d.l10n.t('Can\'t force push refs to remote. The tip of the remote-tracking branch has been updated since the last checkout. Try running "Pull" first to pull the latest changes from the remote branch first.');break;case"Conflict":i=d.l10n.t("There are merge conflicts. Please resolve them before committing your changes."),n="warning",r.clear(),r.set(d.l10n.t("Show Changes"),()=>d.commands.executeCommand("workbench.view.scm")),t.modal=!1;break;case"StashConflict":i=d.l10n.t("There are merge conflicts while applying the stash. Please resolve them before committing your changes."),n="warning",r.clear(),r.set(d.l10n.t("Show Changes"),()=>d.commands.executeCommand("workbench.view.scm")),t.modal=!1;break;case"AuthenticationFailed":{const t=/Authentication failed for '(.*)'/i.exec(e.stderr||String(e));i=t?d.l10n.t("Failed to authenticate to git remote:\n\n{0}",t[1]):d.l10n.t("Failed to authenticate to git remote.");break}case"NoUserNameConfigured":case"NoUserEmailConfigured":i=d.l10n.t('Make sure you configure your "user.name" and "user.email" in git.'),r.set(d.l10n.t("Learn More"),()=>d.commands.executeCommand("vscode.open",d.Uri.parse("https://aka.ms/vscode-setup-git")));break;case"EmptyCommitMessage":i=d.l10n.t("Commit operation was cancelled due to empty commit message."),r.clear(),n="information",t.modal=!1;break;case"CherryPickEmpty":i=d.l10n.t("The changes are already present in the current branch."),r.clear(),n="information",t.modal=!1;break;case"CherryPickConflict":i=d.l10n.t("There were merge conflicts while cherry picking the changes. Resolve the conflicts before committing them."),n="warning",r.set(d.l10n.t("Show Changes"),()=>d.commands.executeCommand("workbench.view.scm")),t.modal=!1;break;default:{const t=(e.stderr||e.message||String(e)).replace(/^error: /im,"").replace(/^> husky.*$/im,"").split(/[\r\n]/).filter(e=>!!e)[0];i=t?d.l10n.t("Git: {0}",t):d.l10n.t("Git error");break}}i?this.showErrorNotification(n,i,t,r):console.error(e)})};return this[t]=r,r}async showErrorNotification(e,t,i,n){let r;const o=Array.from(n.keys());switch(e){case"error":r=await d.window.showErrorMessage(t,i,...o);break;case"warning":r=await d.window.showWarningMessage(t,i,...o);break;case"information":r=await d.window.showInformationMessage(t,i,...o)}if(r){const e=n.get(r);e?.()}}getSCMResource(e){e=e||d.window.activeTextEditor&&d.window.activeTextEditor.document.uri,this.logger.debug(`[CommandCenter][getSCMResource] git.getSCMResource.uri: ${e&&e.toString()}`);for(const e of this.model.repositories.map(e=>e.root))this.logger.debug(`[CommandCenter][getSCMResource] repo root: ${e}`);if(e){if((0,p.isGitUri)(e)){const{path:t}=(0,p.fromGitUri)(e);e=d.Uri.file(t)}if("file"===e.scheme){const t=e.toString(),i=this.model.getRepository(e);if(!i)return;return i.workingTreeGroup.resourceStates.filter(e=>e.resourceUri.toString()===t)[0]||i.indexGroup.resourceStates.filter(e=>e.resourceUri.toString()===t)[0]||i.mergeGroup.resourceStates.filter(e=>e.resourceUri.toString()===t)[0]}}}async runByRepository(e,t){const i=e instanceof d.Uri?[e]:e,n=e instanceof d.Uri,r=i.reduce((e,t)=>{let i=this.model.getRepository(t);if(!i)return console.warn("Could not find git repository for ",t),e;(0,f.pathEquals)(t.fsPath,i.root)&&(i=this.model.getRepositoryForSubmodule(t)||i);const n=e.filter(e=>e.repository===i)[0];return n?n.resources.push(t):e.push({repository:i,resources:[t]}),e},[]).map(({repository:e,resources:i})=>t(e,n?i[0]:i));return Promise.all(r)}dispose(){this.disposables.forEach(e=>e.dispose())}}})();t.CommandCenter=re},4484:(e,t,i)=>{"use strict";i.d(t,{F:()=>l,H:()=>c});var n=i(269),r=i(5025),o=i(5130),a=";",s="=";function c(e){if(!e)return{};var t=e[o.sY](a),i=(0,n.KTd)(t,function(e,t){var i=t[o.sY](s);if(2===i[o.oI]){var n=i[0][o.OL](),r=i[1];e[n]=r}return e},{});if((0,n.cGk)(i)[o.oI]>0){if(i.endpointsuffix){var c=i.location?i.location+".":"";i[o.zV]=i[o.zV]||"https://"+c+"dc."+i.endpointsuffix}i[o.zV]=i[o.zV]||r._G,(0,n.Cv9)(i[o.zV],"/")&&(i[o.zV]=i[o.zV].slice(0,-1))}return i}var l={parse:c}},4531:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RepositoryCache=void 0;const n=i(1398),r=i(527),o=i(7937);function a(e){return!(!e||"object"!=typeof e)&&"string"==typeof e.workspacePath}class s{_globalState;_logger;static STORAGE_KEY="git.repositoryCache";static MAX_REPO_ENTRIES=30;static MAX_FOLDER_ENTRIES=10;normalizeRepoUrl(e){try{return e.trim().replace(/(?:\.git)?\/*$/i,"")}catch{return e}}lru=new r.LRUCache(s.MAX_REPO_ENTRIES);constructor(e,t){this._globalState=e,this._logger=t,this.load()}get _workspaceFile(){return n.workspace.workspaceFile}get _workspaceFolders(){return n.workspace.workspaceFolders}set(e,t){const i=this.normalizeRepoUrl(e);let n=this.lru.get(i);n||(n=new r.LRUCache(s.MAX_FOLDER_ENTRIES));const o=this._findWorkspaceForRepo(t);o&&(n.set(o,{workspacePath:o}),this.lru.set(i,n),this.save())}_findWorkspaceForRepo(e){let t;try{if(this._workspaceFile)t=this._workspaceFile.fsPath;else if(this._workspaceFolders&&this._workspaceFolders.length){const i=[...this._workspaceFolders].sort((e,t)=>t.uri.fsPath.length-e.uri.fsPath.length);for(const n of i){const i=n.uri.fsPath;if((0,o.isDescendant)(i,e)||(0,o.isDescendant)(e,i)){t=i;break}}}return t}catch{return}}update(e,t,i){for(const e of t){const t=e.fetchUrl;if(!t)continue;const n=this._findWorkspaceForRepo(i);n&&this.delete(t,n)}for(const t of e){const e=t.fetchUrl;e&&this.set(e,i)}}get(e){const t=this.normalizeRepoUrl(e),i=this.lru.get(t);return i?Array.from(i.values()):void 0}delete(e,t){const i=this.normalizeRepoUrl(e),n=this.lru.get(i);n&&n.remove(t)&&(0===n.size?this.lru.remove(i):this.lru.set(i,n),this.save())}load(){try{const e=this._globalState.get(s.STORAGE_KEY);if(!Array.isArray(e))return;for(const[t,i]of e){if("string"!=typeof t||!Array.isArray(i))continue;const e=new r.LRUCache(s.MAX_FOLDER_ENTRIES);for(const t of i){if(!Array.isArray(t)||2!==t.length)continue;const[i,n]=t;"string"==typeof i&&a(n)&&e.set(i,n)}e.size&&this.lru.set(t,e)}}catch{this._logger.warn("[CachedRepositories][load] Failed to load cached repositories from global state.")}}save(){const e=[];for(const[t,i]of this.lru){const n=[];for(const[e,t]of i)n.push([e,t]);e.push([t,n])}this._globalState.update(s.STORAGE_KEY,e)}}t.RepositoryCache=s},4658:(e,t,i)=>{"use strict";i.d(t,{AN:()=>C,BW:()=>y,Dt:()=>S,Nu:()=>g,Se:()=>v,T9:()=>k,_M:()=>w,iw:()=>f,tm:()=>b,v7:()=>E,vH:()=>R,vh:()=>p});var n=i(269),r=i(3775),o=i(3673),a=i(7374),s=i(5130),c=void 0,l=void 0,u="";function d(){return y()?m(a.eL.LocalStorage):null}function m(e){try{if((0,n.hXl)((0,n.mS$)()))return null;var t=(new Date)[s.xE](),i=(0,n.zS2)(e===a.eL.LocalStorage?"localStorage":"sessionStorage"),r=u+t;i.setItem(r,t);var o=i.getItem(r)!==t;if(i[s.AZ](r),!o)return i}catch(e){}return null}function h(){return C()?m(a.eL.SessionStorage):null}function g(){c=!1,l=!1}function p(e){u=e||""}function f(){c=y(!0),l=C(!0)}function y(e){return(e||void 0===c)&&(c=!!m(a.eL.LocalStorage)),c}function v(e,t){var i=d();if(null!==i)try{return i.getItem(t)}catch(t){c=!1,(0,r.ZP)(e,2,1,"Browser failed read of local storage. "+(0,o.lL)(t),{exception:(0,n.mmD)(t)})}return null}function w(e,t,i){var a=d();if(null!==a)try{return a.setItem(t,i),!0}catch(t){c=!1,(0,r.ZP)(e,2,3,"Browser failed write to local storage. "+(0,o.lL)(t),{exception:(0,n.mmD)(t)})}return!1}function b(e,t){var i=d();if(null!==i)try{return i[s.AZ](t),!0}catch(t){c=!1,(0,r.ZP)(e,2,5,"Browser failed removal of local storage item. "+(0,o.lL)(t),{exception:(0,n.mmD)(t)})}return!1}function C(e){return(e||void 0===l)&&(l=!!m(a.eL.SessionStorage)),l}function k(){var e=[];return C()&&(0,n.zav)((0,n.zS2)("sessionStorage"),function(t){e[s.y5](t)}),e}function R(e,t){var i=h();if(null!==i)try{return i.getItem(t)}catch(t){l=!1,(0,r.ZP)(e,2,2,"Browser failed read of session storage. "+(0,o.lL)(t),{exception:(0,n.mmD)(t)})}return null}function S(e,t,i){var a=h();if(null!==a)try{return a.setItem(t,i),!0}catch(t){l=!1,(0,r.ZP)(e,2,4,"Browser failed write to session storage. "+(0,o.lL)(t),{exception:(0,n.mmD)(t)})}return!1}function E(e,t){var i=h();if(null!==i)try{return i[s.AZ](t),!0}catch(t){l=!1,(0,r.ZP)(e,2,6,"Browser failed removal of session storage item. "+(0,o.lL)(t),{exception:(0,n.mmD)(t)})}return!1}},4822:(e,t,i)=>{"use strict";i.d(t,{EO:()=>C,F2:()=>O,Go:()=>E,H$:()=>B,Hh:()=>R,P$:()=>w,Rx:()=>u,TC:()=>S,UM:()=>D,WB:()=>A,X$:()=>_,cq:()=>M,ei:()=>G,g8:()=>v,gj:()=>P,h3:()=>k,m0:()=>I,u9:()=>x,wJ:()=>T,xE:()=>d,yD:()=>b});var n,r=i(269),o=i(7292),a=i(9882),s=i(5664),c=i(937),l=i(1739),u="4.3.4",d="1DS-Web-JS-"+u,m=s.Wy.hasOwnProperty,h="Microsoft_ApplicationInsights_BypassAjaxInstrumentation",g="withCredentials",p="timeout",f=((n={})[0]=0,n[2]=6,n[1]=1,n[3]=7,n[4098]=6,n[4097]=1,n[4099]=7,n),y=null,v=(0,r.Wtk)(),w=(0,r.Vdv)();function b(e){return!(e===c.m5||(0,r.hXl)(e))}function C(e){if(e){var t=(0,r.HzD)(e,"-");if(t>-1)return(0,r.ZWZ)(e,t)}return c.m5}function k(){return null===y&&(y=!(0,r.b07)(Uint8Array)&&!function(){var e=(0,r.w3n)();if(!(0,r.b07)(e)&&e.userAgent){var t=e.userAgent.toLowerCase();if((t[l.Sj]("safari")>=0||t[l.Sj]("firefox")>=0)&&t[l.Sj]("chrome")<0)return!0}return!1}()&&!(0,o.lV)()),y}function R(e){return!!(e&&(0,r.EtT)(e)&&e>=1&&e<=4)}function S(e,t,i){if(!t&&!b(t)||"string"!=typeof e)return null;var n=typeof t;if("string"===n||"number"===n||"boolean"===n||(0,r.cyL)(t))t={value:t};else if("object"!==n||m.call(t,"value")){if((0,r.hXl)(t[l.pF])||t[l.pF]===c.m5||!(0,r.KgX)(t[l.pF])&&!(0,r.EtT)(t[l.pF])&&!(0,r.Lmq)(t[l.pF])&&!(0,r.cyL)(t[l.pF]))return null}else t={value:i?JSON.stringify(t):t};if((0,r.cyL)(t[l.pF])&&!T(t[l.pF]))return null;if(!(0,r.hXl)(t[l.QV])){if((0,r.cyL)(t[l.pF])||!I(t[l.QV]))return null;t[l.pF]=t[l.pF].toString()}return t}function E(e,t,i){var n=-1;if(!(0,r.b07)(e))if(t>0&&(32===t?n=8192:t<=13&&(n=t<<5)),function(e){return e>=0&&e<=9}(i))-1===n&&(n=0),n|=i;else{var o=f[M(e)]||-1;-1!==n&&-1!==o?n|=o:6===o&&(n=o)}return n}function D(e,t,i){var n;return void 0===i&&(i=!0),e&&(n=e.get(t),i&&n&&decodeURIComponent&&(n=decodeURIComponent(n))),n||c.m5}function P(e){void 0===e&&(e="D");var t=(0,a.aq)();return"B"===e?t="{"+t+"}":"P"===e?t="("+t+")":"N"===e&&(t=t.replace(/-/g,c.m5)),t}function _(e,t,i,n,o){var a={},s=!1,c=0,u=arguments[l.oI],d=arguments;for((0,r.Lmq)(d[0])&&(s=d[0],c++);c0&&e<=13||32===e}function T(e){return e[l.oI]>0}function x(e,t){var i=e;i[l.dg]=i[l.dg]||{},i[l.dg][l.Jg]=i[l.dg][l.Jg]||{},i[l.dg][l.Jg][t]=A()}function M(e){var t=0;if(null!=e){var i=typeof e;"string"===i?t=1:"number"===i?t=2:"boolean"===i?t=3:i===s._1&&(t=4,(0,r.cyL)(e)?(t=4096,e[l.oI]>0&&(t|=M(e[0]))):m.call(e,"value")&&(t=8192|M(e[l.pF])))}return t}function O(){return!!(0,r.zS2)("chrome")}function B(e,t,i,n,r,o){function a(e,t,i){try{e[t]=i}catch(e){}}void 0===n&&(n=!1),void 0===r&&(r=!1);var s=new XMLHttpRequest;return n&&a(s,h,n),i&&a(s,g,i),s.open(e,t,!r),i&&a(s,g,i),!r&&o&&a(s,p,o),s}function G(e){return e>0}},4847:(e,t)=>{"use strict";function i(e,t,i={}){const n={path:e.fsPath,ref:t};i.submoduleOf&&(n.submoduleOf=i.submoduleOf);let r=e.path;return i.replaceFileExtension?r=`${r}.git`:i.submoduleOf&&(r=`${r}.diff`),e.with({scheme:i.scheme??"git",path:r,query:JSON.stringify(n)})}Object.defineProperty(t,"__esModule",{value:!0}),t.isGitUri=function(e){return/^git$/.test(e.scheme)},t.fromGitUri=function(e){return JSON.parse(e.query)},t.toGitUri=i,t.toMergeUris=function(e){return{base:i(e,":1"),ours:i(e,":2"),theirs:i(e,":3")}},t.toMultiFileDiffEditorUris=function(e,t,n){switch(e.status){case 1:return{originalUri:void 0,modifiedUri:i(e.uri,n)};case 6:return{originalUri:i(e.uri,t),modifiedUri:void 0};case 3:return{originalUri:i(e.originalUri,t),modifiedUri:i(e.uri,n)};default:return{originalUri:i(e.uri,t),modifiedUri:i(e.uri,n)}}}},4875:(e,t,i)=>{"use strict";i.d(t,{f:()=>n});var n=(0,i(4282).H)({NONE:0,PENDING:3,INACTIVE:1,ACTIVE:2})},5014:(e,t,i)=>{"use strict";i.d(t,{J:()=>s});var n=i(5025),r=i(5130),o=function(){this.aiDataContract={name:1,kind:0,value:1,count:0,min:0,max:0,stdDev:0},this.kind=0},a=i(7975),s=function(){function e(e,t,i,s,c,l,u,d,m){this.aiDataContract={ver:1,metrics:1,properties:0};var h=this;h.ver=2;var g=new o;g[r.F2]=s>0?s:void 0,g.max=isNaN(l)||null===l?void 0:l,g.min=isNaN(c)||null===c?void 0:c,g[r.RS]=(0,a.Rr)(e,t)||n.R2,g.value=i,g.stdDev=isNaN(u)||null===u?void 0:u,h.metrics=[g],h[r.$y]=(0,a.xP)(e,d),h[r.XA]=(0,a.Vj)(e,m)}return e.envelopeType="Microsoft.ApplicationInsights.{0}.Metric",e.dataType="MetricData",e}()},5025:(e,t,i)=>{"use strict";i.d(t,{R2:()=>l,_G:()=>s,jp:()=>o,ks:()=>u,tU:()=>r,wc:()=>c,xF:()=>n,ym:()=>a});var n="Microsoft_ApplicationInsights_BypassAjaxInstrumentation",r="sampleRate",o="ProcessLegacy",a="http.method",s="https://dc.services.visualstudio.com",c="/v2/track",l="not_specified",u="iKey"},5034:(e,t,i)=>{"use strict";i.d(t,{It:()=>F,gi:()=>M,um:()=>T,xN:()=>x});var n,r,o,a=i(269),s=i(2475),c=i(9749),l=i(6182),u=i(3775),d=i(7292),m=i(3673),h=i(6492),g="toGMTString",p="toUTCString",f="cookie",y="expires",v="isCookieUseDisabled",w="disableCookiesUsage",b="_ckMgr",C=null,k=null,R=null,S={},E={},D=((n={cookieCfg:(0,s.NU)((r={},r[h.Fk]={fb:"cookieDomain",dfVal:m.Gh},r.path={fb:"cookiePath",dfVal:m.Gh},r.enabled=h.HP,r.ignoreCookies=h.HP,r.blockedCookies=h.HP,r)),cookieDomain:h.HP,cookiePath:h.HP})[w]=h.HP,n);function P(){!o&&(o=(0,a.nRs)(function(){return(0,a.YEm)()}))}function _(e){return!e||e.isEnabled()}function A(e,t){return!!(t&&e&&(0,a.cyL)(e.ignoreCookies))&&-1!==(0,a.rDm)(e.ignoreCookies,t)}function I(e,t){var i=t[l.XM];if((0,a.hXl)(i)){var n=void 0;(0,a.b07)(e[v])||(n=!e[v]),(0,a.b07)(e[w])||(n=!e[w]),i=n}return i}function T(e,t){var i;if(e)i=e.getCookieMgr();else if(t){var n=t.cookieCfg;i=n&&n[b]?n[b]:x(t)}return i||(i=function(e,t){var i=x[b]||E[b];return i||(i=x[b]=x(e,t),E[b]=i),i}(t,(e||{})[l.Uw])),i}function x(e,t){var i,n,r,o,s,u,f,v,w;e=(0,c.e)(e||E,null,t).cfg,s=(0,c.a)(e,function(t){t[l.h0](t.cfg,D),n=t.ref(t.cfg,"cookieCfg"),r=n[h.QW]||"/",o=n[h.Fk],u=!1!==I(e,n),f=n.getCookie||L,v=n.setCookie||H,w=n.delCookie||H},t);var C=((i={isEnabled:function(){var i=!1!==I(e,n)&&u&&M(t),r=E[b];return i&&r&&C!==r&&(i=_(r)),i},setEnabled:function(e){u=!1!==e,n[l.XM]=e},set:function(e,t,i,s,c){var u=!1;if(_(C)&&!function(e,t){return!!(t&&e&&(0,a.cyL)(e.blockedCookies)&&-1!==(0,a.rDm)(e.blockedCookies,t))||A(e,t)}(n,e)){var f={},w=(0,a.EHq)(t||h.m5),b=(0,a.HzD)(w,";");if(-1!==b&&(w=(0,a.EHq)((0,a.ZWZ)(t,b)),f=O((0,a.P0f)(t,b+1))),(0,m.KY)(f,h.Fk,s||o,a.zzB,a.b07),!(0,a.hXl)(i)){var R=(0,d.lT)();if((0,a.b07)(f[y])){var S=(0,a.f0d)()+1e3*i;if(S>0){var E=new Date;E.setTime(S),(0,m.KY)(f,y,B(E,R?g:p)||B(E,R?g:p)||h.m5,a.zzB)}}R||(0,m.KY)(f,"max-age",h.m5+i,null,a.b07)}var D=(0,d.g$)();D&&"https:"===D[l.Qg]&&((0,m.KY)(f,"secure",null,null,a.b07),null===k&&(k=!F(((0,a.w3n)()||{})[l.tX])),k&&(0,m.KY)(f,"SameSite","None",null,a.b07)),(0,m.KY)(f,h.QW,c||r,null,a.b07),v(e,G(w,f)),u=!0}return u},get:function(e){var t=h.m5;return _(C)&&!A(n,e)&&(t=f(e)),t},del:function(e,t){var i=!1;return _(C)&&(i=C.purge(e,t)),i},purge:function(e,i){var n,r=!1;if(M(t)){var o=((n={})[h.QW]=i||"/",n[y]="Thu, 01 Jan 1970 00:00:01 GMT",n);(0,d.lT)()||(o["max-age"]="0"),w(e,G(h.m5,o)),r=!0}return r}})[l.M5]=function(e){s&&s.rm(),s=null},i);return C[b]=C,C}function M(e){if(null===C){C=!1,!o&&P();try{var t=o.v||{};C=void 0!==t[f]}catch(t){(0,u.ZP)(e,2,68,"Cannot access document.cookie - "+(0,m.lL)(t),{exception:(0,a.mmD)(t)})}}return C}function O(e){var t={};if(e&&e[l.oI]){var i=(0,a.EHq)(e)[l.sY](";");(0,a.Iuo)(i,function(e){if(e=(0,a.EHq)(e||h.m5)){var i=(0,a.HzD)(e,"=");-1===i?t[e]=null:t[(0,a.EHq)((0,a.ZWZ)(e,i))]=(0,a.EHq)((0,a.P0f)(e,i+1))}})}return t}function B(e,t){return(0,a.Tnt)(e[t])?e[t]():null}function G(e,t){var i=e||h.m5;return(0,a.zav)(t,function(e,t){i+="; "+e+((0,a.hXl)(t)?h.m5:"="+t)}),i}function L(e){var t=h.m5;if(!o&&P(),o.v){var i=o.v[f]||h.m5;R!==i&&(S=O(i),R=i),t=(0,a.EHq)(S[e]||h.m5)}return t}function H(e,t){!o&&P(),o.v&&(o.v[f]=e+"="+t)}function F(e){return!(!(0,a.KgX)(e)||!(0,m.Ju)(e,"CPU iPhone OS 12")&&!(0,m.Ju)(e,"iPad; CPU OS 12")&&!((0,m.Ju)(e,"Macintosh; Intel Mac OS X 10_14")&&(0,m.Ju)(e,"Version/")&&(0,m.Ju)(e,"Safari"))&&(!(0,m.Ju)(e,"Macintosh; Intel Mac OS X 10_14")||!(0,a.Cv9)(e,"AppleWebKit/605.1.15 (KHTML, like Gecko)"))&&!(0,m.Ju)(e,"Chrome/5")&&!(0,m.Ju)(e,"Chrome/6")&&(!(0,m.Ju)(e,"UnrealEngine")||(0,m.Ju)(e,"Chrome"))&&!(0,m.Ju)(e,"UCBrowser/12")&&!(0,m.Ju)(e,"UCBrowser/11"))}},5130:(e,t,i)=>{"use strict";i.d(t,{$e:()=>v,$y:()=>E,AZ:()=>l,Av:()=>G,C9:()=>y,Cx:()=>g,F2:()=>m,Fq:()=>I,IE:()=>O,J$:()=>P,Jj:()=>w,Jm:()=>h,OK:()=>R,OL:()=>o,Ol:()=>C,QE:()=>M,RS:()=>u,Ue:()=>b,Ur:()=>A,XA:()=>D,fd:()=>N,h_:()=>H,i9:()=>f,lW:()=>B,lx:()=>L,oI:()=>r,on:()=>S,pM:()=>d,qd:()=>F,qg:()=>_,r1:()=>T,sY:()=>n,up:()=>k,vu:()=>x,xE:()=>s,y5:()=>c,zV:()=>a,zw:()=>p});var n="split",r="length",o="toLowerCase",a="ingestionendpoint",s="toString",c="push",l="removeItem",u="name",d="message",m="count",h="preTriggerDate",g="disabled",p="interval",f="daysOfMonth",y="date",v="getUTCDate",w="stringify",b="pathname",C="correlationHeaderExcludePatterns",k="extensionConfig",R="exceptions",S="parsedStack",E="properties",D="measurements",P="sizeInBytes",_="typeName",A="severityLevel",I="problemGroup",T="isManual",x="CreateFromInterface",M="assembly",O="fileName",B="hasFullStack",G="level",L="method",H="line",F="duration",N="receivedResponse"},5157:(e,t,i)=>{"use strict";e.exports=i(6675)},5317:e=>{"use strict";e.exports=require("child_process")},5362:function(e,t,i){"use strict";var n=this&&this.__runInitializers||function(e,t,i){for(var n=arguments.length>2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0};Object.defineProperty(t,"__esModule",{value:!0}),t.GitBlameController=void 0;const o=i(1398),a=i(7937),s=i(4399),c=i(4847),l=i(6867),u=i(2772),d=i(8107),m=i(527),h=i(8e3);function g(e,t){return e.some(e=>e.modified.startLineNumber<=t&&t{let e,t=[];return class{static{const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[s.throttle],r(this,null,e,{kind:"method",name:"_updateTextEditorBlameInformation",static:!1,private:!1,access:{has:e=>"_updateTextEditorBlameInformation"in e,get:e=>e._updateTextEditorBlameInformation},metadata:i},null,t),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}_model=n(this,t);_subjectMaxLength=50;_onDidChangeBlameInformation=new o.EventEmitter;onDidChangeBlameInformation=this._onDidChangeBlameInformation.event;_textEditorBlameInformation;get textEditorBlameInformation(){return this._textEditorBlameInformation}set textEditorBlameInformation(e){(function(e,t){if(e===t)return!0;if(!e||!t||e.resource.toString()!==t.resource.toString()||e.blameInformation.length!==t.blameInformation.length)return!1;for(let i=0;it in n?n[t]:`\${${t}}`)}async getBlameInformationHover(e,t){const i=[];let n,r,a;const s=this._model.getRepository(e);if(s){try{r=this._commitInformationCache.get(t.hash),r||(r=await s.getCommit(t.hash),this._commitInformationCache.set(t.hash,r));const e={commits:[{hash:t.hash,authorName:t.authorName,authorEmail:t.authorEmail}],size:h.AVATAR_SIZE},i=await(0,d.provideSourceControlHistoryItemAvatar)(this._model,s,e);n=i?.get(t.hash)}catch{}(await s.getUnpublishedCommits()).has(t.hash)||i.push(...await(0,d.provideSourceControlHistoryItemHoverCommands)(this._model,s)??[]),a=await(0,d.provideSourceControlHistoryItemMessageLinks)(this._model,s,r?.message??t.subject??"")}const c=r?.hash??t.hash,l=r?.authorName??t.authorName,u=r?.authorEmail??t.authorEmail,m=r?.authorDate??t.authorDate,g=a??r?.message??t.subject??"",p=[(0,h.getHistoryItemHoverCommitHashCommands)(e,c),(0,h.processHistoryItemRemoteHoverCommands)(i,c)];return p.push([{title:"$(gear)",tooltip:o.l10n.t("Open Settings"),command:"workbench.action.openSettings",arguments:["git.blame"]}]),(0,h.getHistoryItemHover)(n,l,u,m,g,r?.shortStat,p)}_onDidChangeConfiguration(e){if(e&&!e.affectsConfiguration("git.blame.editorDecoration.enabled")&&!e.affectsConfiguration("git.blame.statusBarItem.enabled"))return;const t=o.workspace.getConfiguration("git"),i=!0===t.get("blame.editorDecoration.enabled"),n=!0===t.get("blame.statusBarItem.enabled");if(i?this._editorDecoration||(this._editorDecoration=new C(this)):(this._editorDecoration?.dispose(),this._editorDecoration=void 0),n?this._statusBarItem||(this._statusBarItem=new k(this)):(this._statusBarItem?.dispose(),this._statusBarItem=void 0),i||n){if(0===this._enablementDisposables.length){this._model.onDidOpenRepository(this._onDidOpenRepository,this,this._enablementDisposables),this._model.onDidCloseRepository(this._onDidCloseRepository,this,this._enablementDisposables);for(const e of this._model.repositories)this._onDidOpenRepository(e);o.window.onDidChangeActiveTextEditor(e=>this._updateTextEditorBlameInformation(e),this,this._enablementDisposables),o.window.onDidChangeTextEditorSelection(e=>this._updateTextEditorBlameInformation(e.textEditor,"selection"),this,this._enablementDisposables),o.window.onDidChangeTextEditorDiffInformation(e=>this._updateTextEditorBlameInformation(e.textEditor),this,this._enablementDisposables)}}else this._enablementDisposables=(0,a.dispose)(this._enablementDisposables);this._updateTextEditorBlameInformation(o.window.activeTextEditor)}_onDidOpenRepository(e){const t=[];e.onDidRunGitStatus(()=>this._onDidRunGitStatus(e),this,t),this._repositoryDisposables.set(e,t)}_onDidCloseRepository(e){const t=this._repositoryDisposables.get(e);t&&(0,a.dispose)(t),this._repositoryDisposables.delete(e),this._repositoryBlameCache.delete(e)}_onDidRunGitStatus(e){e.HEAD?.commit&&this._HEAD!==e.HEAD.commit&&(this._HEAD=e.HEAD.commit,this._updateTextEditorBlameInformation(o.window.activeTextEditor))}async _getBlameInformation(e,t){const i=this._model.getRepository(e);if(!i)return;const n=this._repositoryBlameCache.get(i,e,t);if(n)return n;await(0,l.ensureEmojis)();const r=await i.blame2(e.fsPath,t)??[];return this._repositoryBlameCache.set(i,e,t,r),r}async _updateTextEditorBlameInformation(e,t){if(!e)return void(this.textEditorBlameInformation=void 0);if(!e.diffInformation||e!==o.window.activeTextEditor)return;const i=this._model.getRepository(e.document.uri);if(!i||!i.HEAD?.commit)return;if(!v(e.document.uri))return void(this.textEditorBlameInformation=void 0);if("selection"!==t&&1===e.selections.length&&0===e.selections[0].start.line&&0===e.selections[0].start.character&&0===e.selections[0].end.line&&0===e.selections[0].end.character)return void(this.textEditorBlameInformation=void 0);let n,r,a,s;if((0,c.isGitUri)(e.document.uri)){const{ref:t}=(0,c.fromGitUri)(e.document.uri);if(/^[0-9a-f]{40}$/i.test(t)||"HEAD"===t||"~"===t)r=n=[],a=void 0;else{if(""!==t)throw new Error(`Unexpected ref: ${t}`);{const t=(0,u.getWorkingTreeAndIndexDiffInformation)(e);if(t&&t.isStale)return void(this.textEditorBlameInformation=void 0);r=[],a=n=t?.changes??[]}}}else{const t=(0,u.getWorkingTreeDiffInformation)(e);if(!t||t.isStale)return void(this.textEditorBlameInformation=void 0);const i=(0,u.getWorkingTreeAndIndexDiffInformation)(e);if(i&&i.isStale)return void(this.textEditorBlameInformation=void 0);r=t.changes,a=i?.changes,n=a??r}if((0,c.isGitUri)(e.document.uri)){const{ref:t}=(0,c.fromGitUri)(e.document.uri);s=/^[0-9a-f]{40}$/i.test(t)?t:i.HEAD.commit}else s=i.HEAD.commit;const l=await this._getBlameInformation(e.document.uri,s);if(!l)return;const d=[];for(const i of new Set(e.selections.map(e=>e.active.line))){if(g(r,i+1)){"selection"===t&&d.push({lineNumber:i,blameInformation:o.l10n.t("Not Committed Yet")});continue}if(g(a??[],i+1)){d.push({lineNumber:i,blameInformation:o.l10n.t("Not Committed Yet (Staged)")});continue}const e=f(i+1,n),s=l.find(t=>t.ranges.find(t=>e>=t.startLineNumber&&e<=t.endLineNumber));s&&d.push({lineNumber:i,blameInformation:s})}this.textEditorBlameInformation={resource:e.document.uri,blameInformation:d}}dispose(){for(const e of this._repositoryDisposables.values())(0,a.dispose)(e);this._repositoryDisposables.clear(),this._disposables=(0,a.dispose)(this._disposables)}}})();t.GitBlameController=b;class C{_controller;_template="";_decoration;_hoverDisposable;_disposables=[];constructor(e){this._controller=e,this._decoration=o.window.createTextEditorDecorationType({after:{color:new o.ThemeColor("git.blame.editorDecorationForeground")}}),this._disposables.push(this._decoration),o.workspace.onDidChangeConfiguration(this._onDidChangeConfiguration,this,this._disposables),o.window.onDidChangeActiveTextEditor(this._onDidChangeActiveTextEditor,this,this._disposables),this._controller.onDidChangeBlameInformation(()=>this._onDidChangeBlameInformation(),this,this._disposables),this._onDidChangeConfiguration()}async provideHover(e,t,i){if(i.isCancellationRequested)return;const n=o.window.activeTextEditor;if(!n)return;if(t.character!==e.lineAt(t.line).range.end.character)return;const r=this._controller.textEditorBlameInformation?.blameInformation,a=r?.find(e=>e.lineNumber===t.line);if(!a||"string"==typeof a.blameInformation)return;const s=await this._controller.getBlameInformationHover(n.document.uri,a.blameInformation);return s&&!i.isCancellationRequested?{range:y(t.line),contents:[s]}:void 0}_onDidChangeConfiguration(e){if(e&&!e.affectsConfiguration("git.commitShortHashLength")&&!e.affectsConfiguration("git.blame.editorDecoration.template"))return;const t=o.workspace.getConfiguration("git");this._template=t.get("blame.editorDecoration.template","${subject}, ${authorName} (${authorDateAgo})"),this._registerHoverProvider(),this._onDidChangeBlameInformation()}_onDidChangeActiveTextEditor(){for(const e of o.window.visibleTextEditors)e!==o.window.activeTextEditor&&e.setDecorations(this._decoration,[]);this._registerHoverProvider()}_onDidChangeBlameInformation(){const e=o.window.activeTextEditor;if(!e)return;const t=this._controller.textEditorBlameInformation?.blameInformation;if(!t||0===t.length)return void e.setDecorations(this._decoration,[]);const i=t.map(t=>{const i="string"!=typeof t.blameInformation?this._controller.formatBlameInformationMessage(e.document.uri,this._template,t.blameInformation):t.blameInformation;return this._createDecoration(t.lineNumber,i)});e.setDecorations(this._decoration,i)}_createDecoration(e,t){return{range:y(e),renderOptions:{after:{contentText:t,margin:"0 0 0 50px"}}}}_registerHoverProvider(){this._hoverDisposable?.dispose(),o.window.activeTextEditor&&v(o.window.activeTextEditor.document.uri)&&(this._hoverDisposable=o.languages.registerHoverProvider({pattern:o.window.activeTextEditor.document.uri.fsPath},this))}dispose(){this._hoverDisposable?.dispose(),this._hoverDisposable=void 0,this._disposables=(0,a.dispose)(this._disposables)}}class k{_controller;_template="";_statusBarItem;_disposables=[];constructor(e){this._controller=e,this._statusBarItem=o.window.createStatusBarItem("git.blame",o.StatusBarAlignment.Right,200),this._statusBarItem.name=o.l10n.t("Git Blame Information"),this._disposables.push(this._statusBarItem),o.workspace.onDidChangeConfiguration(this._onDidChangeConfiguration,this,this._disposables),this._controller.onDidChangeBlameInformation(()=>this._onDidChangeBlameInformation(),this,this._disposables),this._onDidChangeConfiguration()}_onDidChangeConfiguration(e){if(e&&!e.affectsConfiguration("git.commitShortHashLength")&&!e.affectsConfiguration("git.blame.statusBarItem.template"))return;const t=o.workspace.getConfiguration("git");this._template=t.get("blame.statusBarItem.template","${authorName} (${authorDateAgo})"),this._onDidChangeBlameInformation()}async _onDidChangeBlameInformation(){if(!o.window.activeTextEditor)return void this._statusBarItem.hide();const e=this._controller.textEditorBlameInformation?.blameInformation;if(e&&0!==e.length){if("string"==typeof e[0].blameInformation)this._statusBarItem.text=`$(git-commit) ${e[0].blameInformation}`,this._statusBarItem.tooltip=o.l10n.t("Git Blame Information"),this._statusBarItem.command=void 0;else{this._statusBarItem.text=`$(git-commit) ${this._controller.formatBlameInformationMessage(o.window.activeTextEditor.document.uri,this._template,e[0].blameInformation)}`,this._statusBarItem.tooltip2=t=>this._provideTooltip(o.window.activeTextEditor.document.uri,e[0].blameInformation,t);const t=o.window.activeTextEditor.document.uri,i=e[0].blameInformation.hash;this._statusBarItem.command={title:o.l10n.t("Open Commit"),command:"git.viewCommit",arguments:[t,i,t]}}this._statusBarItem.show()}else this._statusBarItem.hide()}async _provideTooltip(e,t,i){if(i.isCancellationRequested)return;const n=await this._controller.getBlameInformationHover(e,t);return i.isCancellationRequested?void 0:n}dispose(){this._disposables=(0,a.dispose)(this._disposables)}}},5396:function(e,t,i){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),r=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&n(t,e,i);return r(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.oneDataSystemClientFactory=void 0,t.oneDataSystemClientFactory=async(e,t,n)=>{let r=await(async(e,t,n)=>{const r=await Promise.resolve().then(()=>o(i(956))),a=await Promise.resolve().then(()=>o(i(8916))),s=new r.AppInsightsCore,c=new a.PostChannel,l={instrumentationKey:e,endpointUrl:"https://mobile.events.data.microsoft.com/OneCollector/1.0",loggingLevelTelemetry:0,loggingLevelConsole:0,disableCookiesUsage:!0,disableDbgExt:!0,disableInstrumentationKeyValidation:!0,channels:[[c]]};if(n){l.extensionConfig={};const e={alwaysUseXhrOverride:!0,httpXHROverride:n};l.extensionConfig[c.identifier]=e}const u=t.workspace.getConfiguration("telemetry").get("internalTesting");return s.initialize(l,[]),s.addTelemetryInitializer(e=>{e.ext=e.ext??{},e.ext.web=e.ext.web??{},e.ext.web.consentDetails='{"GPC_DataSharingOptIn":false}',u&&(e.ext.utc=e.ext.utc??{},e.ext.utc.flags=8462029)}),s})(e,t,n);return{logEvent:(e,t)=>{try{r?.track({name:e,baseData:{name:e,properties:t?.properties,measurements:t?.measurements}})}catch(e){throw new Error("Failed to log event to app insights!\n"+e.message)}},flush:async()=>{try{return new Promise((e,t)=>{r?r.flush(!0,e=>{e||t("Failed to flush app 1DS!")}):e()})}catch(e){throw new Error("Failed to flush 1DS!\n"+e.message)}},dispose:async()=>new Promise(e=>{r?r.unload(!1,()=>{e(),r=void 0},1e3):e()})}}},5397:(e,t,i)=>{"use strict";i.d(t,{WJ:()=>C});var n=i(659),r=i(269),o=i(5025),a=i(5130),s=i(7975),c="error",l="stack",u="stackDetails",d="errorSrc",m="message",h="description";function g(e,t){var i=e;return i&&!(0,r.KgX)(i)&&(JSON&&JSON[a.Jj]?(i=JSON[a.Jj](e),!t||i&&"{}"!==i||(i=(0,r.Tnt)(e[a.xE])?e[a.xE]():""+e)):i=e+" - (Missing JSON.stringify)"),i||""}function p(e,t){var i=e;return e&&(i&&!(0,r.KgX)(i)&&(i=e[m]||e[h]||i),i&&!(0,r.KgX)(i)&&(i=g(i,!0)),e.filename&&(i=i+" @"+(e.filename||"")+":"+(e.lineno||"?")+":"+(e.colno||"?"))),t&&"String"!==t&&"Object"!==t&&"Error"!==t&&-1===(0,r.HzD)(i||"",t)&&(i=t+": "+i),i||""}function f(e){return e&&e.src&&(0,r.KgX)(e.src)&&e.obj&&(0,r.cyL)(e.obj)}function y(e){var t=e||"";(0,r.KgX)(t)||(t=(0,r.KgX)(t[l])?t[l]:""+t);var i=t[a.sY]("\n");return{src:t,obj:i}}function v(e){var t=null;if(e)try{if(e[l])t=y(e[l]);else if(e[c]&&e[c][l])t=y(e[c][l]);else if(e.exception&&e.exception[l])t=y(e.exception[l]);else if(f(e))t=e;else if(f(e[u]))t=e[u];else if((0,r.zkX)()&&(0,r.zkX)().opera&&e[m])t=function(e){for(var t=[],i=e[a.sY]("\n"),n=0;n1?i[1]:""}catch(e){}return t}function b(e){if(e)try{if(!(0,r.KgX)(e)){var t=w(e),i=g(e,!1);return i&&"{}"!==i||(e[c]&&(t=w(e=e[c])),i=g(e,!0)),0!==(0,r.HzD)(i,t)&&"String"!==t?t+":"+i:i}}catch(e){}return""+(e||"")}var C=function(){function e(e,t,i,n,o,c){this.aiDataContract={ver:1,exceptions:1,severityLevel:0,properties:0,measurements:0};var l=this;l.ver=2,function(e){try{if((0,r.Gvm)(e))return"ver"in e&&"exceptions"in e&&"properties"in e}catch(e){}return!1}(t)?(l[a.OK]=t[a.OK]||[],l[a.$y]=t[a.$y],l[a.XA]=t[a.XA],t[a.Ur]&&(l[a.Ur]=t[a.Ur]),t.id&&(l.id=t.id,t[a.$y].id=t.id),t[a.Fq]&&(l[a.Fq]=t[a.Fq]),(0,r.hXl)(t[a.r1])||(l[a.r1]=t[a.r1])):(i||(i={}),c&&(i.id=c),l[a.OK]=[new k(e,t,i)],l[a.$y]=(0,s.xP)(e,i),l[a.XA]=(0,s.Vj)(e,n),o&&(l[a.Ur]=o),c&&(l.id=c))}return e.CreateAutoException=function(e,t,i,n,r,o,s,c){var l,u=w(r||o||e);return(l={})[a.pM]=p(e,u),l.url=t,l.lineNumber=i,l.columnNumber=n,l.error=b(r||o||e),l.evt=b(o||e),l[a.qg]=u,l.stackDetails=v(s||r||o),l.errorSrc=c,l},e.CreateFromInterface=function(t,i,o,s){var c=i[a.OK]&&(0,r.W$7)(i[a.OK],function(e){return k[a.vu](t,e)});return new e(t,(0,n.Im)((0,n.Im)({},i),{exceptions:c}),o,s)},e.prototype.toInterface=function(){var e,t=this,i=t.exceptions,n=t.properties,o=t.measurements,s=t.severityLevel,c=t.problemGroup,l=t.id,u=t.isManual,d=i instanceof Array&&(0,r.W$7)(i,function(e){return e.toInterface()})||void 0;return(e={ver:"4.0"})[a.OK]=d,e.severityLevel=s,e.properties=n,e.measurements=o,e.problemGroup=c,e.id=l,e.isManual=u,e},e.CreateSimpleException=function(e,t,i,n,r,o){var s;return{exceptions:[(s={},s[a.lW]=!0,s.message=e,s.stack=r,s.typeName=t,s)]}},e.envelopeType="Microsoft.ApplicationInsights.{0}.Exception",e.dataType="ExceptionData",e.formatError=b,e}(),k=function(){function e(e,t,i){this.aiDataContract={id:0,outerId:0,typeName:1,message:1,hasFullStack:0,stack:0,parsedStack:2};var n=this;if(function(e){try{if((0,r.Gvm)(e))return"hasFullStack"in e&&"typeName"in e}catch(e){}return!1}(t))n[a.qg]=t[a.qg],n[a.pM]=t[a.pM],n[l]=t[l],n[a.on]=t[a.on]||[],n[a.lW]=t[a.lW];else{var d=t,m=d&&d.evt;(0,r.bJ7)(d)||(d=d[c]||m||d),n[a.qg]=(0,s.Rr)(e,w(d))||o.R2,n[a.pM]=(0,s.Vk)(e,p(t||d,n[a.qg]))||o.R2;var h=t[u]||v(t);n[a.on]=function(e){var t,i=e.obj;if(i&&i[a.oI]>0){t=[];var n=0,o=0;if((0,r.Iuo)(i,function(e){var i=e[a.xE]();if(R.regex.test(i)){var r=new R(i,n++);o+=r[a.J$],t[a.y5](r)}}),o>32768)for(var s=0,c=t[a.oI]-1,l=0,u=s,d=c;s32768){var m=d-u+1;t.splice(u,m);break}u=s,d=c,s++,c--}}return t}(h),(0,r.cyL)(n[a.on])&&(0,r.W$7)(n[a.on],function(t){t[a.QE]=(0,s.Rr)(e,t[a.QE]),t[a.IE]=(0,s.Rr)(e,t[a.IE])}),n[l]=(0,s.Vt)(e,function(e){var t="";return e&&(e.obj?(0,r.Iuo)(e.obj,function(e){t+=e+"\n"}):t=e.src||""),t}(h)),n.hasFullStack=(0,r.cyL)(n.parsedStack)&&n.parsedStack[a.oI]>0,i&&(i[a.qg]=i[a.qg]||n[a.qg])}}return e.prototype.toInterface=function(){var e,t=this,i=t[a.on]instanceof Array&&(0,r.W$7)(t[a.on],function(e){return e.toInterface()});return(e={id:t.id,outerId:t.outerId,typeName:t[a.qg],message:t[a.pM],hasFullStack:t[a.lW],stack:t[l]})[a.on]=i||void 0,e},e.CreateFromInterface=function(t,i){var o=i[a.on]instanceof Array&&(0,r.W$7)(i[a.on],function(e){return R[a.vu](e)})||i[a.on];return new e(t,(0,n.Im)((0,n.Im)({},i),{parsedStack:o}))},e}(),R=function(){function e(t,i){this.aiDataContract={level:1,method:1,assembly:0,fileName:0,line:0};var n=this;if(n[a.J$]=0,"string"==typeof t){var o=t;n[a.Av]=i,n[a.lx]="",n[a.QE]=(0,r.EHq)(o),n[a.IE]="",n[a.h_]=0;var s=o.match(e.regex);s&&s[a.oI]>=5&&(n[a.lx]=(0,r.EHq)(s[2])||n[a.lx],n[a.IE]=(0,r.EHq)(s[4]),n[a.h_]=parseInt(s[5])||0)}else n[a.Av]=t[a.Av],n[a.lx]=t[a.lx],n[a.QE]=t[a.QE],n[a.IE]=t[a.IE],n[a.h_]=t[a.h_],n[a.J$]=0;n.sizeInBytes+=n.method[a.oI],n.sizeInBytes+=n.fileName[a.oI],n.sizeInBytes+=n.assembly[a.oI],n[a.J$]+=e.baseSize,n.sizeInBytes+=n.level.toString()[a.oI],n.sizeInBytes+=n.line.toString()[a.oI]}return e.CreateFromInterface=function(t){return new e(t,null)},e.prototype.toInterface=function(){var e=this;return{level:e[a.Av],method:e[a.lx],assembly:e[a.QE],fileName:e[a.IE],line:e[a.h_]}},e.regex=/^([\s]+at)?[\s]{0,50}([^\@\()]+?)[\s]{0,50}(\@|\()([^\(\n]+):([0-9]+):([0-9]+)(\)?)$/,e.baseSize=58,e}()},5495:(e,t,i)=>{"use strict";i.r(t),i.d(t,{NumberDictionary:()=>h,adjectives:()=>s,animals:()=>c,colors:()=>l,languages:()=>u,names:()=>d,starWars:()=>m,uniqueNamesGenerator:()=>a});const n=e=>{e=1831565813+(e|=0)|0;let t=Math.imul(e^e>>>15,1|e);return t=t+Math.imul(t^t>>>7,61|t)^t,((t^t>>>14)>>>0)/4294967296};class r{constructor(e){this.dictionaries=void 0,this.length=void 0,this.separator=void 0,this.style=void 0,this.seed=void 0;const{length:t,separator:i,dictionaries:n,style:r,seed:o}=e;this.dictionaries=n,this.separator=i,this.length=t,this.style=r,this.seed=o}generate(){if(!this.dictionaries)throw new Error('Cannot find any dictionary. Please provide at least one, or leave the "dictionary" field empty in the config object');if(this.length<=0)throw new Error("Invalid length provided");if(this.length>this.dictionaries.length)throw new Error(`The length cannot be bigger than the number of dictionaries.\nLength provided: ${this.length}. Number of dictionaries provided: ${this.dictionaries.length}`);let e=this.seed;return this.dictionaries.slice(0,this.length).reduce((t,i)=>{let r;e?(r=(e=>{if("string"==typeof e){const t=e.split("").map(e=>e.charCodeAt(0)).reduce((e,t)=>e+t,1),i=Math.floor(Number(t));return n(i)}return n(e)})(e),e=4294967296*r):r=Math.random();let o=i[Math.floor(r*i.length)]||"";if("lowerCase"===this.style)o=o.toLowerCase();else if("capital"===this.style){const[e,...t]=o.split("");o=e.toUpperCase()+t.join("")}else"upperCase"===this.style&&(o=o.toUpperCase());return t?`${t}${this.separator}${o}`:`${o}`},"")}}const o={separator:"_",dictionaries:[]},a=e=>{const t=[...e&&e.dictionaries||o.dictionaries],i={...o,...e,length:e&&e.length||t.length,dictionaries:t};if(!e||!e.dictionaries||!e.dictionaries.length)throw new Error('A "dictionaries" array must be provided. This is a breaking change introduced starting from Unique Name Generator v4. Read more about the breaking change here: https://github.com/andreasonny83/unique-names-generator#migration-guide');return new r(i).generate()};var s=["able","above","absent","absolute","abstract","abundant","academic","acceptable","accepted","accessible","accurate","accused","active","actual","acute","added","additional","adequate","adjacent","administrative","adorable","advanced","adverse","advisory","aesthetic","afraid","aggregate","aggressive","agreeable","agreed","agricultural","alert","alive","alleged","allied","alone","alright","alternative","amateur","amazing","ambitious","amused","ancient","angry","annoyed","annual","anonymous","anxious","appalling","apparent","applicable","appropriate","arbitrary","architectural","armed","arrogant","artificial","artistic","ashamed","asleep","assistant","associated","atomic","attractive","automatic","autonomous","available","average","awake","aware","awful","awkward","back","bad","balanced","bare","basic","beautiful","beneficial","better","bewildered","big","binding","biological","bitter","bizarre","blank","blonde","blushing","boiling","bold","bored","boring","bottom","brainy","brave","breakable","breezy","brief","bright","brilliant","broad","broken","bumpy","burning","busy","calm","capable","careful","casual","causal","cautious","central","certain","changing","characteristic","charming","cheap","cheerful","chemical","chief","chilly","chosen","chronic","chubby","circular","civic","civil","classic","classical","clean","clear","clever","clinical","close","closed","cloudy","clumsy","coastal","cognitive","coherent","cold","collective","colorful","colossal","coloured","colourful","combined","comfortable","commercial","common","compact","comparable","comparative","compatible","competent","competitive","complete","complex","complicated","comprehensive","compulsory","conceptual","concerned","concrete","condemned","confident","confidential","confused","conscious","conservation","considerable","consistent","constant","constitutional","contemporary","content","continental","continued","continuing","continuous","controlled","controversial","convenient","conventional","convinced","convincing","cooing","cool","cooperative","corporate","correct","corresponding","costly","courageous","creative","creepy","criminal","critical","crooked","crowded","crucial","crude","cruel","cuddly","cultural","curious","curly","current","curved","cute","daily","damaged","damp","dangerous","dark","dead","deafening","dear","decent","decisive","deep","defeated","defensive","defiant","definite","deliberate","delicate","delicious","delighted","delightful","democratic","dependent","depressed","desirable","desperate","detailed","determined","developed","developing","devoted","different","difficult","digital","diplomatic","direct","dirty","disappointed","disastrous","disciplinary","disgusted","distant","distinct","distinctive","distinguished","disturbed","disturbing","diverse","divine","dizzy","domestic","dominant","double","doubtful","drab","dramatic","dreadful","driving","dry","dual","due","dull","dusty","dutch","dying","dynamic","eager","early","eastern","easy","economic","educational","eerie","effective","efficient","elaborate","elated","elderly","eldest","electoral","electric","electrical","electronic","elegant","eligible","embarrassed","embarrassing","emotional","empirical","empty","enchanting","encouraging","endless","energetic","enormous","enthusiastic","entire","entitled","envious","environmental","equal","equivalent","essential","established","estimated","ethical","eventual","everyday","evident","evil","evolutionary","exact","excellent","exceptional","excess","excessive","excited","exciting","exclusive","existing","exotic","expected","expensive","experienced","experimental","explicit","extended","extensive","external","extra","extraordinary","extreme","exuberant","faint","fair","faithful","familiar","famous","fancy","fantastic","far","fascinating","fashionable","fast","fatal","favourable","favourite","federal","fellow","few","fierce","final","financial","fine","firm","fiscal","fit","fixed","flaky","flat","flexible","fluffy","fluttering","flying","following","fond","foolish","foreign","formal","formidable","forthcoming","fortunate","forward","fragile","frail","frantic","free","frequent","fresh","friendly","frightened","front","frozen","full","fun","functional","fundamental","funny","furious","future","fuzzy","gastric","general","generous","genetic","gentle","genuine","geographical","giant","gigantic","given","glad","glamorous","gleaming","global","glorious","golden","good","gorgeous","gothic","governing","graceful","gradual","grand","grateful","greasy","great","grieving","grim","gross","grotesque","growing","grubby","grumpy","guilty","handsome","happy","hard","harsh","head","healthy","heavy","helpful","helpless","hidden","high","hilarious","hissing","historic","historical","hollow","holy","homely","hon","honest","horizontal","horrible","hostile","hot","huge","human","hungry","hurt","hushed","husky","icy","ideal","identical","ideological","ill","illegal","imaginative","immediate","immense","implicit","important","impossible","impressed","impressive","improved","inadequate","inc","inclined","increased","increasing","incredible","independent","indirect","individual","industrial","inevitable","influential","informal","inherent","initial","injured","inland","inner","innocent","innovative","inquisitive","instant","institutional","insufficient","intact","integral","integrated","intellectual","intelligent","intense","intensive","interested","interesting","interim","interior","intermediate","internal","international","invisible","involved","irrelevant","isolated","itchy","jealous","jittery","joint","jolly","joyous","judicial","juicy","junior","just","keen","key","kind","known","labour","large","late","latin","lazy","leading","left","legal","legislative","legitimate","lengthy","lesser","level","lexical","liable","light","like","likely","limited","linear","linguistic","liquid","literary","little","live","lively","living","local","logical","lonely","long","loose","lost","loud","lovely","low","loyal","ltd","lucky","mad","magic","magnetic","magnificent","main","major","mammoth","managerial","managing","manual","many","marginal","marine","marked","married","marvellous","mass","massive","mathematical","mature","maximum","mean","meaningful","mechanical","medical","medieval","melodic","melted","mental","mere","metropolitan","mid","middle","mighty","mild","military","miniature","minimal","minimum","ministerial","minor","miserable","misleading","missing","misty","mixed","moaning","mobile","moderate","modern","modest","molecular","monetary","monthly","moral","motionless","muddy","multiple","mushy","musical","mutual","mysterious","naked","narrow","nasty","national","natural","naughty","naval","near","nearby","neat","necessary","negative","neighbouring","nervous","net","neutral","new","nice","noble","noisy","normal","northern","nosy","notable","novel","nuclear","numerous","nursing","nutritious","nutty","obedient","objective","obliged","obnoxious","obvious","occasional","occupational","odd","official","ok","okay","old","only","open","operational","opposite","optimistic","ordinary","organic","organisational","original","orthodox","other","outdoor","outer","outrageous","outside","outstanding","overall","overseas","overwhelming","painful","pale","panicky","parallel","parental","parliamentary","partial","particular","passing","passive","past","patient","payable","peaceful","peculiar","perfect","permanent","persistent","personal","petite","philosophical","physical","plain","planned","plastic","pleasant","pleased","poised","polite","poor","popular","positive","possible","potential","powerful","practical","precious","precise","preferred","pregnant","preliminary","premier","prepared","present","presidential","pretty","previous","prickly","primary","prime","principal","printed","prior","private","probable","productive","professional","profitable","profound","progressive","prominent","promising","proper","proposed","prospective","protective","proud","provincial","psychiatric","psychological","public","puny","pure","purring","puzzled","quaint","qualified","quarrelsome","querulous","quick","quickest","quiet","quintessential","quixotic","racial","radical","rainy","random","rapid","rare","raspy","rational","ratty","raw","ready","real","realistic","rear","reasonable","recent","reduced","redundant","regional","registered","regular","regulatory","related","relative","relaxed","relevant","reliable","relieved","religious","reluctant","remaining","remarkable","remote","renewed","representative","repulsive","required","resident","residential","resonant","respectable","respective","responsible","resulting","retail","retired","revolutionary","rich","ridiculous","right","rigid","ripe","rising","rival","roasted","robust","rolling","romantic","rotten","rough","round","royal","rubber","rude","ruling","running","rural","sacred","sad","safe","salty","satisfactory","satisfied","scared","scary","scattered","scientific","scornful","scrawny","screeching","secondary","secret","secure","select","selected","selective","selfish","semantic","senior","sensible","sensitive","separate","serious","severe","shaggy","shaky","shallow","shared","sharp","sheer","shiny","shivering","shocked","short","shrill","shy","sick","significant","silent","silky","silly","similar","simple","single","skilled","skinny","sleepy","slight","slim","slimy","slippery","slow","small","smart","smiling","smoggy","smooth","social","soft","solar","sole","solid","sophisticated","sore","sorry","sound","sour","southern","spare","sparkling","spatial","special","specific","specified","spectacular","spicy","spiritual","splendid","spontaneous","sporting","spotless","spotty","square","squealing","stable","stale","standard","static","statistical","statutory","steady","steep","sticky","stiff","still","stingy","stormy","straight","straightforward","strange","strategic","strict","striking","striped","strong","structural","stuck","subjective","subsequent","substantial","subtle","successful","successive","sudden","sufficient","suitable","sunny","super","superb","superior","supporting","supposed","supreme","sure","surprised","surprising","surrounding","surviving","suspicious","sweet","swift","symbolic","sympathetic","systematic","tall","tame","tart","tasteless","tasty","technical","technological","teenage","temporary","tender","tense","terrible","territorial","testy","then","theoretical","thick","thin","thorough","thoughtful","thoughtless","thundering","tight","tiny","tired","top","total","tough","toxic","traditional","tragic","tremendous","tricky","tropical","troubled","typical","ugliest","ugly","ultimate","unable","unacceptable","unaware","uncertain","unchanged","uncomfortable","unconscious","underground","underlying","unemployed","uneven","unexpected","unfair","unfortunate","unhappy","uniform","uninterested","unique","united","universal","unknown","unlikely","unnecessary","unpleasant","unsightly","unusual","unwilling","upper","upset","uptight","urban","urgent","used","useful","useless","usual","vague","valid","valuable","variable","varied","various","varying","vast","verbal","vertical","very","vicarious","vicious","victorious","violent","visible","visiting","visual","vital","vitreous","vivacious","vivid","vocal","vocational","voiceless","voluminous","voluntary","vulnerable","wandering","warm","wasteful","watery","weak","wealthy","weary","wee","weekly","weird","welcome","well","western","wet","whispering","whole","wicked","wide","widespread","wild","wilful","willing","willowy","wily","wise","wispy","wittering","witty","wonderful","wooden","working","worldwide","worried","worrying","worthwhile","worthy","written","wrong","xenacious","xenial","xenogeneic","xeric","xerothermic","yabbering","yammering","yappiest","yappy","yawning","yearling","yearning","yeasty","yelling","yelping","yielding","yodelling","young","youngest","youthful","ytterbic","yucky","yummy","zany","zealous","zeroth","zestful","zesty","zippy","zonal","zoophagous","zygomorphic","zygotic"],c=["aardvark","aardwolf","albatross","alligator","alpaca","amphibian","anaconda","angelfish","anglerfish","ant","anteater","antelope","antlion","ape","aphid","armadillo","asp","baboon","badger","bandicoot","barnacle","barracuda","basilisk","bass","bat","bear","beaver","bedbug","bee","beetle","bird","bison","blackbird","boa","boar","bobcat","bobolink","bonobo","bovid","bug","butterfly","buzzard","camel","canid","canidae","capybara","cardinal","caribou","carp","cat","caterpillar","catfish","catshark","cattle","centipede","cephalopod","chameleon","cheetah","chickadee","chicken","chimpanzee","chinchilla","chipmunk","cicada","clam","clownfish","cobra","cockroach","cod","condor","constrictor","coral","cougar","cow","coyote","crab","crane","crawdad","crayfish","cricket","crocodile","crow","cuckoo","damselfly","deer","dingo","dinosaur","dog","dolphin","donkey","dormouse","dove","dragon","dragonfly","duck","eagle","earthworm","earwig","echidna","eel","egret","elephant","elk","emu","ermine","falcon","felidae","ferret","finch","firefly","fish","flamingo","flea","fly","flyingfish","fowl","fox","frog","galliform","gamefowl","gayal","gazelle","gecko","gerbil","gibbon","giraffe","goat","goldfish","goose","gopher","gorilla","grasshopper","grouse","guan","guanaco","guineafowl","gull","guppy","haddock","halibut","hamster","hare","harrier","hawk","hedgehog","heron","herring","hippopotamus","hookworm","hornet","horse","hoverfly","hummingbird","hyena","iguana","impala","jackal","jaguar","jay","jellyfish","junglefowl","kangaroo","kingfisher","kite","kiwi","koala","koi","krill","ladybug","lamprey","landfowl","lark","leech","lemming","lemur","leopard","leopon","limpet","lion","lizard","llama","lobster","locust","loon","louse","lungfish","lynx","macaw","mackerel","magpie","mammal","manatee","mandrill","marlin","marmoset","marmot","marsupial","marten","mastodon","meadowlark","meerkat","mink","minnow","mite","mockingbird","mole","mollusk","mongoose","monkey","moose","mosquito","moth","mouse","mule","muskox","narwhal","newt","nightingale","ocelot","octopus","opossum","orangutan","orca","ostrich","otter","owl","ox","panda","panther","parakeet","parrot","parrotfish","partridge","peacock","peafowl","pelican","penguin","perch","pheasant","pig","pigeon","pike","pinniped","piranha","planarian","platypus","pony","porcupine","porpoise","possum","prawn","primate","ptarmigan","puffin","puma","python","quail","quelea","quokka","rabbit","raccoon","rat","rattlesnake","raven","reindeer","reptile","rhinoceros","roadrunner","rodent","rook","rooster","roundworm","sailfish","salamander","salmon","sawfish","scallop","scorpion","seahorse","shark","sheep","shrew","shrimp","silkworm","silverfish","skink","skunk","sloth","slug","smelt","snail","snake","snipe","sole","sparrow","spider","spoonbill","squid","squirrel","starfish","stingray","stoat","stork","sturgeon","swallow","swan","swift","swordfish","swordtail","tahr","takin","tapir","tarantula","tarsier","termite","tern","thrush","tick","tiger","tiglon","toad","tortoise","toucan","trout","tuna","turkey","turtle","tyrannosaurus","unicorn","urial","vicuna","viper","vole","vulture","wallaby","walrus","warbler","wasp","weasel","whale","whippet","whitefish","wildcat","wildebeest","wildfowl","wolf","wolverine","wombat","woodpecker","worm","wren","xerinae","yak","zebra"],l=["amaranth","amber","amethyst","apricot","aqua","aquamarine","azure","beige","black","blue","blush","bronze","brown","chocolate","coffee","copper","coral","crimson","cyan","emerald","fuchsia","gold","gray","green","harlequin","indigo","ivory","jade","lavender","lime","magenta","maroon","moccasin","olive","orange","peach","pink","plum","purple","red","rose","salmon","sapphire","scarlet","silver","tan","teal","tomato","turquoise","violet","white","yellow"],u=["Akan","Amharic","Arabic","Assamese","Awadhi","Azerbaijani","Balochi","Belarusian","Bhojpuri","Burmese","Cebuano","Chewa","Chhattisgarhi","Chittagonian","Czech","Deccan","Dhundhari","Dutch","English","French","Fula","Gan","German","Greek","Gujarati","Hakka","Haryanvi","Hausa","Hiligaynon","Hindi","Hmong","Hungarian","Igbo","Ilocano","Italian","Japanese","Javanese","Jin","Kannada","Kazakh","Khmer","Kinyarwanda","Kirundi","Konkani","Korean","Kurdish","Madurese","Magahi","Maithili","Malagasy","Malay","Malayalam","Mandarin","Marathi","Marwari","Min","Mossi","Nepali","Odia","Oromo","Pashto","Persian","Polish","Portuguese","Punjabi","Quechua","Romanian","Russian","Saraiki","Shona","Sindhi","Sinhala","Somali","Spanish","Sundanese","Swedish","Sylheti","Tagalog","Tamil","Telugu","Thai","Turkish","Turkmen","Ukrainian","Urdu","Uyghur","Uzbek","Vietnamese","Wu","Xhosa","Xiang","Yoruba","Yue","Zhuang","Zulu"],d=["Aaren","Aarika","Abagael","Abagail","Abbe","Abbey","Abbi","Abbie","Abby","Abbye","Abigael","Abigail","Abigale","Abra","Ada","Adah","Adaline","Adan","Adara","Adda","Addi","Addia","Addie","Addy","Adel","Adela","Adelaida","Adelaide","Adele","Adelheid","Adelice","Adelina","Adelind","Adeline","Adella","Adelle","Adena","Adey","Adi","Adiana","Adina","Adora","Adore","Adoree","Adorne","Adrea","Adria","Adriaens","Adrian","Adriana","Adriane","Adrianna","Adrianne","Adriena","Adrienne","Aeriel","Aeriela","Aeriell","Afton","Ag","Agace","Agata","Agatha","Agathe","Aggi","Aggie","Aggy","Agna","Agnella","Agnes","Agnese","Agnesse","Agneta","Agnola","Agretha","Aida","Aidan","Aigneis","Aila","Aile","Ailee","Aileen","Ailene","Ailey","Aili","Ailina","Ailis","Ailsun","Ailyn","Aime","Aimee","Aimil","Aindrea","Ainslee","Ainsley","Ainslie","Ajay","Alaine","Alameda","Alana","Alanah","Alane","Alanna","Alayne","Alberta","Albertina","Albertine","Albina","Alecia","Aleda","Aleece","Aleen","Alejandra","Alejandrina","Alena","Alene","Alessandra","Aleta","Alethea","Alex","Alexa","Alexandra","Alexandrina","Alexi","Alexia","Alexina","Alexine","Alexis","Alfi","Alfie","Alfreda","Alfy","Ali","Alia","Alica","Alice","Alicea","Alicia","Alida","Alidia","Alie","Alika","Alikee","Alina","Aline","Alis","Alisa","Alisha","Alison","Alissa","Alisun","Alix","Aliza","Alla","Alleen","Allegra","Allene","Alli","Allianora","Allie","Allina","Allis","Allison","Allissa","Allix","Allsun","Allx","Ally","Allyce","Allyn","Allys","Allyson","Alma","Almeda","Almeria","Almeta","Almira","Almire","Aloise","Aloisia","Aloysia","Alta","Althea","Alvera","Alverta","Alvina","Alvinia","Alvira","Alyce","Alyda","Alys","Alysa","Alyse","Alysia","Alyson","Alyss","Alyssa","Amabel","Amabelle","Amalea","Amalee","Amaleta","Amalia","Amalie","Amalita","Amalle","Amanda","Amandi","Amandie","Amandy","Amara","Amargo","Amata","Amber","Amberly","Ambur","Ame","Amelia","Amelie","Amelina","Ameline","Amelita","Ami","Amie","Amii","Amil","Amitie","Amity","Ammamaria","Amy","Amye","Ana","Anabal","Anabel","Anabella","Anabelle","Analiese","Analise","Anallese","Anallise","Anastasia","Anastasie","Anastassia","Anatola","Andee","Andeee","Anderea","Andi","Andie","Andra","Andrea","Andreana","Andree","Andrei","Andria","Andriana","Andriette","Andromache","Andy","Anestassia","Anet","Anett","Anetta","Anette","Ange","Angel","Angela","Angele","Angelia","Angelica","Angelika","Angelina","Angeline","Angelique","Angelita","Angelle","Angie","Angil","Angy","Ania","Anica","Anissa","Anita","Anitra","Anjanette","Anjela","Ann","Ann-marie","Anna","Anna-diana","Anna-diane","Anna-maria","Annabal","Annabel","Annabela","Annabell","Annabella","Annabelle","Annadiana","Annadiane","Annalee","Annaliese","Annalise","Annamaria","Annamarie","Anne","Anne-corinne","Anne-marie","Annecorinne","Anneliese","Annelise","Annemarie","Annetta","Annette","Anni","Annice","Annie","Annis","Annissa","Annmaria","Annmarie","Annnora","Annora","Anny","Anselma","Ansley","Anstice","Anthe","Anthea","Anthia","Anthiathia","Antoinette","Antonella","Antonetta","Antonia","Antonie","Antonietta","Antonina","Anya","Appolonia","April","Aprilette","Ara","Arabel","Arabela","Arabele","Arabella","Arabelle","Arda","Ardath","Ardeen","Ardelia","Ardelis","Ardella","Ardelle","Arden","Ardene","Ardenia","Ardine","Ardis","Ardisj","Ardith","Ardra","Ardyce","Ardys","Ardyth","Aretha","Ariadne","Ariana","Aridatha","Ariel","Ariela","Ariella","Arielle","Arlana","Arlee","Arleen","Arlen","Arlena","Arlene","Arleta","Arlette","Arleyne","Arlie","Arliene","Arlina","Arlinda","Arline","Arluene","Arly","Arlyn","Arlyne","Aryn","Ashely","Ashia","Ashien","Ashil","Ashla","Ashlan","Ashlee","Ashleigh","Ashlen","Ashley","Ashli","Ashlie","Ashly","Asia","Astra","Astrid","Astrix","Atalanta","Athena","Athene","Atlanta","Atlante","Auberta","Aubine","Aubree","Aubrette","Aubrey","Aubrie","Aubry","Audi","Audie","Audra","Audre","Audrey","Audrie","Audry","Audrye","Audy","Augusta","Auguste","Augustina","Augustine","Aundrea","Aura","Aurea","Aurel","Aurelea","Aurelia","Aurelie","Auria","Aurie","Aurilia","Aurlie","Auroora","Aurora","Aurore","Austin","Austina","Austine","Ava","Aveline","Averil","Averyl","Avie","Avis","Aviva","Avivah","Avril","Avrit","Ayn","Bab","Babara","Babb","Babbette","Babbie","Babette","Babita","Babs","Bambi","Bambie","Bamby","Barb","Barbabra","Barbara","Barbara-anne","Barbaraanne","Barbe","Barbee","Barbette","Barbey","Barbi","Barbie","Barbra","Barby","Bari","Barrie","Barry","Basia","Bathsheba","Batsheva","Bea","Beatrice","Beatrisa","Beatrix","Beatriz","Bebe","Becca","Becka","Becki","Beckie","Becky","Bee","Beilul","Beitris","Bekki","Bel","Belia","Belicia","Belinda","Belita","Bell","Bella","Bellanca","Belle","Bellina","Belva","Belvia","Bendite","Benedetta","Benedicta","Benedikta","Benetta","Benita","Benni","Bennie","Benny","Benoite","Berenice","Beret","Berget","Berna","Bernadene","Bernadette","Bernadina","Bernadine","Bernardina","Bernardine","Bernelle","Bernete","Bernetta","Bernette","Berni","Bernice","Bernie","Bernita","Berny","Berri","Berrie","Berry","Bert","Berta","Berte","Bertha","Berthe","Berti","Bertie","Bertina","Bertine","Berty","Beryl","Beryle","Bess","Bessie","Bessy","Beth","Bethanne","Bethany","Bethena","Bethina","Betsey","Betsy","Betta","Bette","Bette-ann","Betteann","Betteanne","Betti","Bettina","Bettine","Betty","Bettye","Beulah","Bev","Beverie","Beverlee","Beverley","Beverlie","Beverly","Bevvy","Bianca","Bianka","Bibbie","Bibby","Bibbye","Bibi","Biddie","Biddy","Bidget","Bili","Bill","Billi","Billie","Billy","Billye","Binni","Binnie","Binny","Bird","Birdie","Birgit","Birgitta","Blair","Blaire","Blake","Blakelee","Blakeley","Blanca","Blanch","Blancha","Blanche","Blinni","Blinnie","Blinny","Bliss","Blisse","Blithe","Blondell","Blondelle","Blondie","Blondy","Blythe","Bobbe","Bobbee","Bobbette","Bobbi","Bobbie","Bobby","Bobbye","Bobette","Bobina","Bobine","Bobinette","Bonita","Bonnee","Bonni","Bonnibelle","Bonnie","Bonny","Brana","Brandais","Brande","Brandea","Brandi","Brandice","Brandie","Brandise","Brandy","Breanne","Brear","Bree","Breena","Bren","Brena","Brenda","Brenn","Brenna","Brett","Bria","Briana","Brianna","Brianne","Bride","Bridget","Bridgette","Bridie","Brier","Brietta","Brigid","Brigida","Brigit","Brigitta","Brigitte","Brina","Briney","Brinn","Brinna","Briny","Brit","Brita","Britney","Britni","Britt","Britta","Brittan","Brittaney","Brittani","Britte","Britteny","Brittne","Brittney","Brittni","Brook","Brooke","Brooks","Brunhilda","Brunhilde","Bryana","Bryn","Bryna","Brynn","Brynna","Brynne","Buffy","Bunni","Bunnie","Bunny","Cacilia","Cacilie","Cahra","Cairistiona","Caitlin","Caitrin","Cal","Calida","Calla","Calley","Calli","Callida","Callie","Cally","Calypso","Cam","Camala","Camel","Camella","Camellia","Cami","Camila","Camile","Camilla","Camille","Cammi","Cammie","Cammy","Candace","Candi","Candice","Candida","Candide","Candie","Candis","Candra","Candy","Caprice","Cara","Caralie","Caren","Carena","Caresa","Caressa","Caresse","Carey","Cari","Caria","Carie","Caril","Carilyn","Carin","Carina","Carine","Cariotta","Carissa","Carita","Caritta","Carla","Carlee","Carleen","Carlen","Carlene","Carley","Carlie","Carlin","Carlina","Carline","Carlita","Carlota","Carlotta","Carly","Carlye","Carlyn","Carlynn","Carlynne","Carma","Carmel","Carmela","Carmelia","Carmelina","Carmelita","Carmella","Carmelle","Carmen","Carmencita","Carmina","Carmine","Carmita","Carmon","Caro","Carol","Carol-jean","Carola","Carolan","Carolann","Carole","Carolee","Carolin","Carolina","Caroline","Caroljean","Carolyn","Carolyne","Carolynn","Caron","Carree","Carri","Carrie","Carrissa","Carroll","Carry","Cary","Caryl","Caryn","Casandra","Casey","Casi","Casie","Cass","Cassandra","Cassandre","Cassandry","Cassaundra","Cassey","Cassi","Cassie","Cassondra","Cassy","Catarina","Cate","Caterina","Catha","Catharina","Catharine","Cathe","Cathee","Catherin","Catherina","Catherine","Cathi","Cathie","Cathleen","Cathlene","Cathrin","Cathrine","Cathryn","Cathy","Cathyleen","Cati","Catie","Catina","Catlaina","Catlee","Catlin","Catrina","Catriona","Caty","Caye","Cayla","Cecelia","Cecil","Cecile","Ceciley","Cecilia","Cecilla","Cecily","Ceil","Cele","Celene","Celesta","Celeste","Celestia","Celestina","Celestine","Celestyn","Celestyna","Celia","Celie","Celina","Celinda","Celine","Celinka","Celisse","Celka","Celle","Cesya","Chad","Chanda","Chandal","Chandra","Channa","Chantal","Chantalle","Charil","Charin","Charis","Charissa","Charisse","Charita","Charity","Charla","Charlean","Charleen","Charlena","Charlene","Charline","Charlot","Charlotta","Charlotte","Charmain","Charmaine","Charmane","Charmian","Charmine","Charmion","Charo","Charyl","Chastity","Chelsae","Chelsea","Chelsey","Chelsie","Chelsy","Cher","Chere","Cherey","Cheri","Cherianne","Cherice","Cherida","Cherie","Cherilyn","Cherilynn","Cherin","Cherise","Cherish","Cherlyn","Cherri","Cherrita","Cherry","Chery","Cherye","Cheryl","Cheslie","Chiarra","Chickie","Chicky","Chiquia","Chiquita","Chlo","Chloe","Chloette","Chloris","Chris","Chrissie","Chrissy","Christa","Christabel","Christabella","Christal","Christalle","Christan","Christean","Christel","Christen","Christi","Christian","Christiana","Christiane","Christie","Christin","Christina","Christine","Christy","Christye","Christyna","Chrysa","Chrysler","Chrystal","Chryste","Chrystel","Cicely","Cicily","Ciel","Cilka","Cinda","Cindee","Cindelyn","Cinderella","Cindi","Cindie","Cindra","Cindy","Cinnamon","Cissiee","Cissy","Clair","Claire","Clara","Clarabelle","Clare","Claresta","Clareta","Claretta","Clarette","Clarey","Clari","Claribel","Clarice","Clarie","Clarinda","Clarine","Clarissa","Clarisse","Clarita","Clary","Claude","Claudelle","Claudetta","Claudette","Claudia","Claudie","Claudina","Claudine","Clea","Clem","Clemence","Clementia","Clementina","Clementine","Clemmie","Clemmy","Cleo","Cleopatra","Clerissa","Clio","Clo","Cloe","Cloris","Clotilda","Clovis","Codee","Codi","Codie","Cody","Coleen","Colene","Coletta","Colette","Colleen","Collen","Collete","Collette","Collie","Colline","Colly","Con","Concettina","Conchita","Concordia","Conni","Connie","Conny","Consolata","Constance","Constancia","Constancy","Constanta","Constantia","Constantina","Constantine","Consuela","Consuelo","Cookie","Cora","Corabel","Corabella","Corabelle","Coral","Coralie","Coraline","Coralyn","Cordelia","Cordelie","Cordey","Cordi","Cordie","Cordula","Cordy","Coreen","Corella","Corenda","Corene","Coretta","Corette","Corey","Cori","Corie","Corilla","Corina","Corine","Corinna","Corinne","Coriss","Corissa","Corliss","Corly","Cornela","Cornelia","Cornelle","Cornie","Corny","Correna","Correy","Corri","Corrianne","Corrie","Corrina","Corrine","Corrinne","Corry","Cortney","Cory","Cosetta","Cosette","Costanza","Courtenay","Courtnay","Courtney","Crin","Cris","Crissie","Crissy","Crista","Cristabel","Cristal","Cristen","Cristi","Cristie","Cristin","Cristina","Cristine","Cristionna","Cristy","Crysta","Crystal","Crystie","Cthrine","Cyb","Cybil","Cybill","Cymbre","Cynde","Cyndi","Cyndia","Cyndie","Cyndy","Cynthea","Cynthia","Cynthie","Cynthy","Dacey","Dacia","Dacie","Dacy","Dael","Daffi","Daffie","Daffy","Dagmar","Dahlia","Daile","Daisey","Daisi","Daisie","Daisy","Dale","Dalenna","Dalia","Dalila","Dallas","Daloris","Damara","Damaris","Damita","Dana","Danell","Danella","Danette","Dani","Dania","Danica","Danice","Daniela","Daniele","Daniella","Danielle","Danika","Danila","Danit","Danita","Danna","Danni","Dannie","Danny","Dannye","Danya","Danyelle","Danyette","Daphene","Daphna","Daphne","Dara","Darb","Darbie","Darby","Darcee","Darcey","Darci","Darcie","Darcy","Darda","Dareen","Darell","Darelle","Dari","Daria","Darice","Darla","Darleen","Darlene","Darline","Darlleen","Daron","Darrelle","Darryl","Darsey","Darsie","Darya","Daryl","Daryn","Dasha","Dasi","Dasie","Dasya","Datha","Daune","Daveen","Daveta","Davida","Davina","Davine","Davita","Dawn","Dawna","Dayle","Dayna","Ddene","De","Deana","Deane","Deanna","Deanne","Deb","Debbi","Debbie","Debby","Debee","Debera","Debi","Debor","Debora","Deborah","Debra","Dede","Dedie","Dedra","Dee","Deeann","Deeanne","Deedee","Deena","Deerdre","Deeyn","Dehlia","Deidre","Deina","Deirdre","Del","Dela","Delcina","Delcine","Delia","Delila","Delilah","Delinda","Dell","Della","Delly","Delora","Delores","Deloria","Deloris","Delphine","Delphinia","Demeter","Demetra","Demetria","Demetris","Dena","Deni","Denice","Denise","Denna","Denni","Dennie","Denny","Deny","Denys","Denyse","Deonne","Desdemona","Desirae","Desiree","Desiri","Deva","Devan","Devi","Devin","Devina","Devinne","Devon","Devondra","Devonna","Devonne","Devora","Di","Diahann","Dian","Diana","Diandra","Diane","Diane-marie","Dianemarie","Diann","Dianna","Dianne","Diannne","Didi","Dido","Diena","Dierdre","Dina","Dinah","Dinnie","Dinny","Dion","Dione","Dionis","Dionne","Dita","Dix","Dixie","Dniren","Dode","Dodi","Dodie","Dody","Doe","Doll","Dolley","Dolli","Dollie","Dolly","Dolores","Dolorita","Doloritas","Domeniga","Dominga","Domini","Dominica","Dominique","Dona","Donella","Donelle","Donetta","Donia","Donica","Donielle","Donna","Donnamarie","Donni","Donnie","Donny","Dora","Doralia","Doralin","Doralyn","Doralynn","Doralynne","Dore","Doreen","Dorelia","Dorella","Dorelle","Dorena","Dorene","Doretta","Dorette","Dorey","Dori","Doria","Dorian","Dorice","Dorie","Dorine","Doris","Dorisa","Dorise","Dorita","Doro","Dorolice","Dorolisa","Dorotea","Doroteya","Dorothea","Dorothee","Dorothy","Dorree","Dorri","Dorrie","Dorris","Dorry","Dorthea","Dorthy","Dory","Dosi","Dot","Doti","Dotti","Dottie","Dotty","Dre","Dreddy","Dredi","Drona","Dru","Druci","Drucie","Drucill","Drucy","Drusi","Drusie","Drusilla","Drusy","Dulce","Dulcea","Dulci","Dulcia","Dulciana","Dulcie","Dulcine","Dulcinea","Dulcy","Dulsea","Dusty","Dyan","Dyana","Dyane","Dyann","Dyanna","Dyanne","Dyna","Dynah","Eachelle","Eada","Eadie","Eadith","Ealasaid","Eartha","Easter","Eba","Ebba","Ebonee","Ebony","Eda","Eddi","Eddie","Eddy","Ede","Edee","Edeline","Eden","Edi","Edie","Edin","Edita","Edith","Editha","Edithe","Ediva","Edna","Edwina","Edy","Edyth","Edythe","Effie","Eileen","Eilis","Eimile","Eirena","Ekaterina","Elaina","Elaine","Elana","Elane","Elayne","Elberta","Elbertina","Elbertine","Eleanor","Eleanora","Eleanore","Electra","Eleen","Elena","Elene","Eleni","Elenore","Eleonora","Eleonore","Elfie","Elfreda","Elfrida","Elfrieda","Elga","Elianora","Elianore","Elicia","Elie","Elinor","Elinore","Elisa","Elisabet","Elisabeth","Elisabetta","Elise","Elisha","Elissa","Elita","Eliza","Elizabet","Elizabeth","Elka","Elke","Ella","Elladine","Elle","Ellen","Ellene","Ellette","Elli","Ellie","Ellissa","Elly","Ellyn","Ellynn","Elmira","Elna","Elnora","Elnore","Eloisa","Eloise","Elonore","Elora","Elsa","Elsbeth","Else","Elset","Elsey","Elsi","Elsie","Elsinore","Elspeth","Elsy","Elva","Elvera","Elvina","Elvira","Elwira","Elyn","Elyse","Elysee","Elysha","Elysia","Elyssa","Em","Ema","Emalee","Emalia","Emelda","Emelia","Emelina","Emeline","Emelita","Emelyne","Emera","Emilee","Emili","Emilia","Emilie","Emiline","Emily","Emlyn","Emlynn","Emlynne","Emma","Emmalee","Emmaline","Emmalyn","Emmalynn","Emmalynne","Emmeline","Emmey","Emmi","Emmie","Emmy","Emmye","Emogene","Emyle","Emylee","Engracia","Enid","Enrica","Enrichetta","Enrika","Enriqueta","Eolanda","Eolande","Eran","Erda","Erena","Erica","Ericha","Ericka","Erika","Erin","Erina","Erinn","Erinna","Erma","Ermengarde","Ermentrude","Ermina","Erminia","Erminie","Erna","Ernaline","Ernesta","Ernestine","Ertha","Eryn","Esma","Esmaria","Esme","Esmeralda","Essa","Essie","Essy","Esta","Estel","Estele","Estell","Estella","Estelle","Ester","Esther","Estrella","Estrellita","Ethel","Ethelda","Ethelin","Ethelind","Etheline","Ethelyn","Ethyl","Etta","Etti","Ettie","Etty","Eudora","Eugenia","Eugenie","Eugine","Eula","Eulalie","Eunice","Euphemia","Eustacia","Eva","Evaleen","Evangelia","Evangelin","Evangelina","Evangeline","Evania","Evanne","Eve","Eveleen","Evelina","Eveline","Evelyn","Evey","Evie","Evita","Evonne","Evvie","Evvy","Evy","Eyde","Eydie","Ezmeralda","Fae","Faina","Faith","Fallon","Fan","Fanchette","Fanchon","Fancie","Fancy","Fanechka","Fania","Fanni","Fannie","Fanya","Fara","Farah","Farand","Farica","Farra","Farrah","Farrand","Faun","Faunie","Faustina","Faustine","Fawn","Fawne","Fawnia","Fay","Faydra","Faye","Fayette","Fayina","Fayre","Fayth","Faythe","Federica","Fedora","Felecia","Felicdad","Felice","Felicia","Felicity","Felicle","Felipa","Felisha","Felita","Feliza","Fenelia","Feodora","Ferdinanda","Ferdinande","Fern","Fernanda","Fernande","Fernandina","Ferne","Fey","Fiann","Fianna","Fidela","Fidelia","Fidelity","Fifi","Fifine","Filia","Filide","Filippa","Fina","Fiona","Fionna","Fionnula","Fiorenze","Fleur","Fleurette","Flo","Flor","Flora","Florance","Flore","Florella","Florence","Florencia","Florentia","Florenza","Florette","Flori","Floria","Florida","Florie","Florina","Florinda","Floris","Florri","Florrie","Florry","Flory","Flossi","Flossie","Flossy","Flss","Fran","Francene","Frances","Francesca","Francine","Francisca","Franciska","Francoise","Francyne","Frank","Frankie","Franky","Franni","Frannie","Franny","Frayda","Fred","Freda","Freddi","Freddie","Freddy","Fredelia","Frederica","Fredericka","Frederique","Fredi","Fredia","Fredra","Fredrika","Freida","Frieda","Friederike","Fulvia","Gabbey","Gabbi","Gabbie","Gabey","Gabi","Gabie","Gabriel","Gabriela","Gabriell","Gabriella","Gabrielle","Gabriellia","Gabrila","Gaby","Gae","Gael","Gail","Gale","Galina","Garland","Garnet","Garnette","Gates","Gavra","Gavrielle","Gaye","Gayel","Gayla","Gayle","Gayleen","Gaylene","Gaynor","Gelya","Gena","Gene","Geneva","Genevieve","Genevra","Genia","Genna","Genni","Gennie","Gennifer","Genny","Genovera","Genvieve","George","Georgeanna","Georgeanne","Georgena","Georgeta","Georgetta","Georgette","Georgia","Georgiana","Georgianna","Georgianne","Georgie","Georgina","Georgine","Geralda","Geraldine","Gerda","Gerhardine","Geri","Gerianna","Gerianne","Gerladina","Germain","Germaine","Germana","Gerri","Gerrie","Gerrilee","Gerry","Gert","Gerta","Gerti","Gertie","Gertrud","Gertruda","Gertrude","Gertrudis","Gerty","Giacinta","Giana","Gianina","Gianna","Gigi","Gilberta","Gilberte","Gilbertina","Gilbertine","Gilda","Gilemette","Gill","Gillan","Gilli","Gillian","Gillie","Gilligan","Gilly","Gina","Ginelle","Ginevra","Ginger","Ginni","Ginnie","Ginnifer","Ginny","Giorgia","Giovanna","Gipsy","Giralda","Gisela","Gisele","Gisella","Giselle","Giuditta","Giulia","Giulietta","Giustina","Gizela","Glad","Gladi","Gladys","Gleda","Glen","Glenda","Glenine","Glenn","Glenna","Glennie","Glennis","Glori","Gloria","Gloriana","Gloriane","Glory","Glyn","Glynda","Glynis","Glynnis","Gnni","Godiva","Golda","Goldarina","Goldi","Goldia","Goldie","Goldina","Goldy","Grace","Gracia","Gracie","Grata","Gratia","Gratiana","Gray","Grayce","Grazia","Greer","Greta","Gretal","Gretchen","Grete","Gretel","Grethel","Gretna","Gretta","Grier","Griselda","Grissel","Guendolen","Guenevere","Guenna","Guglielma","Gui","Guillema","Guillemette","Guinevere","Guinna","Gunilla","Gus","Gusella","Gussi","Gussie","Gussy","Gusta","Gusti","Gustie","Gusty","Gwen","Gwendolen","Gwendolin","Gwendolyn","Gweneth","Gwenette","Gwenneth","Gwenni","Gwennie","Gwenny","Gwenora","Gwenore","Gwyn","Gwyneth","Gwynne","Hadria","Hailee","Haily","Haleigh","Halette","Haley","Hali","Halie","Halimeda","Halley","Halli","Hallie","Hally","Hana","Hanna","Hannah","Hanni","Hannie","Hannis","Hanny","Happy","Harlene","Harley","Harli","Harlie","Harmonia","Harmonie","Harmony","Harri","Harrie","Harriet","Harriett","Harrietta","Harriette","Harriot","Harriott","Hatti","Hattie","Hatty","Hayley","Hazel","Heath","Heather","Heda","Hedda","Heddi","Heddie","Hedi","Hedvig","Hedvige","Hedwig","Hedwiga","Hedy","Heida","Heidi","Heidie","Helaina","Helaine","Helen","Helen-elizabeth","Helena","Helene","Helenka","Helga","Helge","Helli","Heloise","Helsa","Helyn","Hendrika","Henka","Henrie","Henrieta","Henrietta","Henriette","Henryetta","Hephzibah","Hermia","Hermina","Hermine","Herminia","Hermione","Herta","Hertha","Hester","Hesther","Hestia","Hetti","Hettie","Hetty","Hilary","Hilda","Hildagard","Hildagarde","Hilde","Hildegaard","Hildegarde","Hildy","Hillary","Hilliary","Hinda","Holli","Hollie","Holly","Holly-anne","Hollyanne","Honey","Honor","Honoria","Hope","Horatia","Hortense","Hortensia","Hulda","Hyacinth","Hyacintha","Hyacinthe","Hyacinthia","Hyacinthie","Hynda","Ianthe","Ibbie","Ibby","Ida","Idalia","Idalina","Idaline","Idell","Idelle","Idette","Ileana","Ileane","Ilene","Ilise","Ilka","Illa","Ilsa","Ilse","Ilysa","Ilyse","Ilyssa","Imelda","Imogen","Imogene","Imojean","Ina","Indira","Ines","Inesita","Inessa","Inez","Inga","Ingaberg","Ingaborg","Inge","Ingeberg","Ingeborg","Inger","Ingrid","Ingunna","Inna","Iolande","Iolanthe","Iona","Iormina","Ira","Irena","Irene","Irina","Iris","Irita","Irma","Isa","Isabel","Isabelita","Isabella","Isabelle","Isadora","Isahella","Iseabal","Isidora","Isis","Isobel","Issi","Issie","Issy","Ivett","Ivette","Ivie","Ivonne","Ivory","Ivy","Izabel","Jacenta","Jacinda","Jacinta","Jacintha","Jacinthe","Jackelyn","Jacki","Jackie","Jacklin","Jacklyn","Jackquelin","Jackqueline","Jacky","Jaclin","Jaclyn","Jacquelin","Jacqueline","Jacquelyn","Jacquelynn","Jacquenetta","Jacquenette","Jacquetta","Jacquette","Jacqui","Jacquie","Jacynth","Jada","Jade","Jaime","Jaimie","Jaine","Jami","Jamie","Jamima","Jammie","Jan","Jana","Janaya","Janaye","Jandy","Jane","Janean","Janeczka","Janeen","Janel","Janela","Janella","Janelle","Janene","Janenna","Janessa","Janet","Janeta","Janetta","Janette","Janeva","Janey","Jania","Janice","Janie","Janifer","Janina","Janine","Janis","Janith","Janka","Janna","Jannel","Jannelle","Janot","Jany","Jaquelin","Jaquelyn","Jaquenetta","Jaquenette","Jaquith","Jasmin","Jasmina","Jasmine","Jayme","Jaymee","Jayne","Jaynell","Jazmin","Jean","Jeana","Jeane","Jeanelle","Jeanette","Jeanie","Jeanine","Jeanna","Jeanne","Jeannette","Jeannie","Jeannine","Jehanna","Jelene","Jemie","Jemima","Jemimah","Jemmie","Jemmy","Jen","Jena","Jenda","Jenelle","Jeni","Jenica","Jeniece","Jenifer","Jeniffer","Jenilee","Jenine","Jenn","Jenna","Jennee","Jennette","Jenni","Jennica","Jennie","Jennifer","Jennilee","Jennine","Jenny","Jeralee","Jere","Jeri","Jermaine","Jerrie","Jerrilee","Jerrilyn","Jerrine","Jerry","Jerrylee","Jess","Jessa","Jessalin","Jessalyn","Jessamine","Jessamyn","Jesse","Jesselyn","Jessi","Jessica","Jessie","Jessika","Jessy","Jewel","Jewell","Jewelle","Jill","Jillana","Jillane","Jillayne","Jilleen","Jillene","Jilli","Jillian","Jillie","Jilly","Jinny","Jo","Jo-ann","Jo-anne","Joan","Joana","Joane","Joanie","Joann","Joanna","Joanne","Joannes","Jobey","Jobi","Jobie","Jobina","Joby","Jobye","Jobyna","Jocelin","Joceline","Jocelyn","Jocelyne","Jodee","Jodi","Jodie","Jody","Joeann","Joela","Joelie","Joell","Joella","Joelle","Joellen","Joelly","Joellyn","Joelynn","Joete","Joey","Johanna","Johannah","Johna","Johnath","Johnette","Johnna","Joice","Jojo","Jolee","Joleen","Jolene","Joletta","Joli","Jolie","Joline","Joly","Jolyn","Jolynn","Jonell","Joni","Jonie","Jonis","Jordain","Jordan","Jordana","Jordanna","Jorey","Jori","Jorie","Jorrie","Jorry","Joscelin","Josee","Josefa","Josefina","Josepha","Josephina","Josephine","Josey","Josi","Josie","Josselyn","Josy","Jourdan","Joy","Joya","Joyan","Joyann","Joyce","Joycelin","Joye","Jsandye","Juana","Juanita","Judi","Judie","Judith","Juditha","Judy","Judye","Juieta","Julee","Juli","Julia","Juliana","Juliane","Juliann","Julianna","Julianne","Julie","Julienne","Juliet","Julieta","Julietta","Juliette","Julina","Juline","Julissa","Julita","June","Junette","Junia","Junie","Junina","Justina","Justine","Justinn","Jyoti","Kacey","Kacie","Kacy","Kaela","Kai","Kaia","Kaila","Kaile","Kailey","Kaitlin","Kaitlyn","Kaitlynn","Kaja","Kakalina","Kala","Kaleena","Kali","Kalie","Kalila","Kalina","Kalinda","Kalindi","Kalli","Kally","Kameko","Kamila","Kamilah","Kamillah","Kandace","Kandy","Kania","Kanya","Kara","Kara-lynn","Karalee","Karalynn","Kare","Karee","Karel","Karen","Karena","Kari","Karia","Karie","Karil","Karilynn","Karin","Karina","Karine","Kariotta","Karisa","Karissa","Karita","Karla","Karlee","Karleen","Karlen","Karlene","Karlie","Karlotta","Karlotte","Karly","Karlyn","Karmen","Karna","Karol","Karola","Karole","Karolina","Karoline","Karoly","Karon","Karrah","Karrie","Karry","Kary","Karyl","Karylin","Karyn","Kasey","Kass","Kassandra","Kassey","Kassi","Kassia","Kassie","Kat","Kata","Katalin","Kate","Katee","Katerina","Katerine","Katey","Kath","Katha","Katharina","Katharine","Katharyn","Kathe","Katherina","Katherine","Katheryn","Kathi","Kathie","Kathleen","Kathlin","Kathrine","Kathryn","Kathryne","Kathy","Kathye","Kati","Katie","Katina","Katine","Katinka","Katleen","Katlin","Katrina","Katrine","Katrinka","Katti","Kattie","Katuscha","Katusha","Katy","Katya","Kay","Kaycee","Kaye","Kayla","Kayle","Kaylee","Kayley","Kaylil","Kaylyn","Keeley","Keelia","Keely","Kelcey","Kelci","Kelcie","Kelcy","Kelila","Kellen","Kelley","Kelli","Kellia","Kellie","Kellina","Kellsie","Kelly","Kellyann","Kelsey","Kelsi","Kelsy","Kendra","Kendre","Kenna","Keri","Keriann","Kerianne","Kerri","Kerrie","Kerrill","Kerrin","Kerry","Kerstin","Kesley","Keslie","Kessia","Kessiah","Ketti","Kettie","Ketty","Kevina","Kevyn","Ki","Kiah","Kial","Kiele","Kiersten","Kikelia","Kiley","Kim","Kimberlee","Kimberley","Kimberli","Kimberly","Kimberlyn","Kimbra","Kimmi","Kimmie","Kimmy","Kinna","Kip","Kipp","Kippie","Kippy","Kira","Kirbee","Kirbie","Kirby","Kiri","Kirsten","Kirsteni","Kirsti","Kirstin","Kirstyn","Kissee","Kissiah","Kissie","Kit","Kitti","Kittie","Kitty","Kizzee","Kizzie","Klara","Klarika","Klarrisa","Konstance","Konstanze","Koo","Kora","Koral","Koralle","Kordula","Kore","Korella","Koren","Koressa","Kori","Korie","Korney","Korrie","Korry","Kris","Krissie","Krissy","Krista","Kristal","Kristan","Kriste","Kristel","Kristen","Kristi","Kristien","Kristin","Kristina","Kristine","Kristy","Kristyn","Krysta","Krystal","Krystalle","Krystle","Krystyna","Kyla","Kyle","Kylen","Kylie","Kylila","Kylynn","Kym","Kynthia","Kyrstin","Lacee","Lacey","Lacie","Lacy","Ladonna","Laetitia","Laina","Lainey","Lana","Lanae","Lane","Lanette","Laney","Lani","Lanie","Lanita","Lanna","Lanni","Lanny","Lara","Laraine","Lari","Larina","Larine","Larisa","Larissa","Lark","Laryssa","Latashia","Latia","Latisha","Latrena","Latrina","Laura","Lauraine","Laural","Lauralee","Laure","Lauree","Laureen","Laurel","Laurella","Lauren","Laurena","Laurene","Lauretta","Laurette","Lauri","Laurianne","Laurice","Laurie","Lauryn","Lavena","Laverna","Laverne","Lavina","Lavinia","Lavinie","Layla","Layne","Layney","Lea","Leah","Leandra","Leann","Leanna","Leanor","Leanora","Lebbie","Leda","Lee","Leeann","Leeanne","Leela","Leelah","Leena","Leesa","Leese","Legra","Leia","Leigh","Leigha","Leila","Leilah","Leisha","Lela","Lelah","Leland","Lelia","Lena","Lenee","Lenette","Lenka","Lenna","Lenora","Lenore","Leodora","Leoine","Leola","Leoline","Leona","Leonanie","Leone","Leonelle","Leonie","Leonora","Leonore","Leontine","Leontyne","Leora","Leshia","Lesley","Lesli","Leslie","Lesly","Lesya","Leta","Lethia","Leticia","Letisha","Letitia","Letizia","Letta","Letti","Lettie","Letty","Lexi","Lexie","Lexine","Lexis","Lexy","Leyla","Lezlie","Lia","Lian","Liana","Liane","Lianna","Lianne","Lib","Libbey","Libbi","Libbie","Libby","Licha","Lida","Lidia","Liesa","Lil","Lila","Lilah","Lilas","Lilia","Lilian","Liliane","Lilias","Lilith","Lilla","Lilli","Lillian","Lillis","Lilllie","Lilly","Lily","Lilyan","Lin","Lina","Lind","Linda","Lindi","Lindie","Lindsay","Lindsey","Lindsy","Lindy","Linea","Linell","Linet","Linette","Linn","Linnea","Linnell","Linnet","Linnie","Linzy","Lira","Lisa","Lisabeth","Lisbeth","Lise","Lisetta","Lisette","Lisha","Lishe","Lissa","Lissi","Lissie","Lissy","Lita","Liuka","Liv","Liva","Livia","Livvie","Livvy","Livvyy","Livy","Liz","Liza","Lizabeth","Lizbeth","Lizette","Lizzie","Lizzy","Loella","Lois","Loise","Lola","Loleta","Lolita","Lolly","Lona","Lonee","Loni","Lonna","Lonni","Lonnie","Lora","Lorain","Loraine","Loralee","Loralie","Loralyn","Loree","Loreen","Lorelei","Lorelle","Loren","Lorena","Lorene","Lorenza","Loretta","Lorette","Lori","Loria","Lorianna","Lorianne","Lorie","Lorilee","Lorilyn","Lorinda","Lorine","Lorita","Lorna","Lorne","Lorraine","Lorrayne","Lorri","Lorrie","Lorrin","Lorry","Lory","Lotta","Lotte","Lotti","Lottie","Lotty","Lou","Louella","Louisa","Louise","Louisette","Loutitia","Lu","Luce","Luci","Lucia","Luciana","Lucie","Lucienne","Lucila","Lucilia","Lucille","Lucina","Lucinda","Lucine","Lucita","Lucky","Lucretia","Lucy","Ludovika","Luella","Luelle","Luisa","Luise","Lula","Lulita","Lulu","Lura","Lurette","Lurleen","Lurlene","Lurline","Lusa","Luz","Lyda","Lydia","Lydie","Lyn","Lynda","Lynde","Lyndel","Lyndell","Lyndsay","Lyndsey","Lyndsie","Lyndy","Lynea","Lynelle","Lynett","Lynette","Lynn","Lynna","Lynne","Lynnea","Lynnell","Lynnelle","Lynnet","Lynnett","Lynnette","Lynsey","Lyssa","Mab","Mabel","Mabelle","Mable","Mada","Madalena","Madalyn","Maddalena","Maddi","Maddie","Maddy","Madel","Madelaine","Madeleine","Madelena","Madelene","Madelin","Madelina","Madeline","Madella","Madelle","Madelon","Madelyn","Madge","Madlen","Madlin","Madonna","Mady","Mae","Maegan","Mag","Magda","Magdaia","Magdalen","Magdalena","Magdalene","Maggee","Maggi","Maggie","Maggy","Mahala","Mahalia","Maia","Maible","Maiga","Maighdiln","Mair","Maire","Maisey","Maisie","Maitilde","Mala","Malanie","Malena","Malia","Malina","Malinda","Malinde","Malissa","Malissia","Mallissa","Mallorie","Mallory","Malorie","Malory","Malva","Malvina","Malynda","Mame","Mamie","Manda","Mandi","Mandie","Mandy","Manon","Manya","Mara","Marabel","Marcela","Marcelia","Marcella","Marcelle","Marcellina","Marcelline","Marchelle","Marci","Marcia","Marcie","Marcile","Marcille","Marcy","Mareah","Maren","Marena","Maressa","Marga","Margalit","Margalo","Margaret","Margareta","Margarete","Margaretha","Margarethe","Margaretta","Margarette","Margarita","Margaux","Marge","Margeaux","Margery","Marget","Margette","Margi","Margie","Margit","Margo","Margot","Margret","Marguerite","Margy","Mari","Maria","Mariam","Marian","Mariana","Mariann","Marianna","Marianne","Maribel","Maribelle","Maribeth","Marice","Maridel","Marie","Marie-ann","Marie-jeanne","Marieann","Mariejeanne","Mariel","Mariele","Marielle","Mariellen","Marietta","Mariette","Marigold","Marijo","Marika","Marilee","Marilin","Marillin","Marilyn","Marin","Marina","Marinna","Marion","Mariquilla","Maris","Marisa","Mariska","Marissa","Marita","Maritsa","Mariya","Marj","Marja","Marje","Marji","Marjie","Marjorie","Marjory","Marjy","Marketa","Marla","Marlane","Marleah","Marlee","Marleen","Marlena","Marlene","Marley","Marlie","Marline","Marlo","Marlyn","Marna","Marne","Marney","Marni","Marnia","Marnie","Marquita","Marrilee","Marris","Marrissa","Marsha","Marsiella","Marta","Martelle","Martguerita","Martha","Marthe","Marthena","Marti","Martica","Martie","Martina","Martita","Marty","Martynne","Mary","Marya","Maryann","Maryanna","Maryanne","Marybelle","Marybeth","Maryellen","Maryjane","Maryjo","Maryl","Marylee","Marylin","Marylinda","Marylou","Marylynne","Maryrose","Marys","Marysa","Masha","Matelda","Mathilda","Mathilde","Matilda","Matilde","Matti","Mattie","Matty","Maud","Maude","Maudie","Maura","Maure","Maureen","Maureene","Maurene","Maurine","Maurise","Maurita","Maurizia","Mavis","Mavra","Max","Maxi","Maxie","Maxine","Maxy","May","Maybelle","Maye","Mead","Meade","Meagan","Meaghan","Meara","Mechelle","Meg","Megan","Megen","Meggi","Meggie","Meggy","Meghan","Meghann","Mehetabel","Mei","Mel","Mela","Melamie","Melania","Melanie","Melantha","Melany","Melba","Melesa","Melessa","Melicent","Melina","Melinda","Melinde","Melisa","Melisande","Melisandra","Melisenda","Melisent","Melissa","Melisse","Melita","Melitta","Mella","Melli","Mellicent","Mellie","Mellisa","Mellisent","Melloney","Melly","Melodee","Melodie","Melody","Melonie","Melony","Melosa","Melva","Mercedes","Merci","Mercie","Mercy","Meredith","Meredithe","Meridel","Meridith","Meriel","Merilee","Merilyn","Meris","Merissa","Merl","Merla","Merle","Merlina","Merline","Merna","Merola","Merralee","Merridie","Merrie","Merrielle","Merrile","Merrilee","Merrili","Merrill","Merrily","Merry","Mersey","Meryl","Meta","Mia","Micaela","Michaela","Michaelina","Michaeline","Michaella","Michal","Michel","Michele","Michelina","Micheline","Michell","Michelle","Micki","Mickie","Micky","Midge","Mignon","Mignonne","Miguela","Miguelita","Mikaela","Mil","Mildred","Mildrid","Milena","Milicent","Milissent","Milka","Milli","Millicent","Millie","Millisent","Milly","Milzie","Mimi","Min","Mina","Minda","Mindy","Minerva","Minetta","Minette","Minna","Minnaminnie","Minne","Minni","Minnie","Minnnie","Minny","Minta","Miquela","Mira","Mirabel","Mirabella","Mirabelle","Miran","Miranda","Mireielle","Mireille","Mirella","Mirelle","Miriam","Mirilla","Mirna","Misha","Missie","Missy","Misti","Misty","Mitzi","Modesta","Modestia","Modestine","Modesty","Moina","Moira","Moll","Mollee","Molli","Mollie","Molly","Mommy","Mona","Monah","Monica","Monika","Monique","Mora","Moreen","Morena","Morgan","Morgana","Morganica","Morganne","Morgen","Moria","Morissa","Morna","Moselle","Moyna","Moyra","Mozelle","Muffin","Mufi","Mufinella","Muire","Mureil","Murial","Muriel","Murielle","Myra","Myrah","Myranda","Myriam","Myrilla","Myrle","Myrlene","Myrna","Myrta","Myrtia","Myrtice","Myrtie","Myrtle","Nada","Nadean","Nadeen","Nadia","Nadine","Nadiya","Nady","Nadya","Nalani","Nan","Nana","Nananne","Nance","Nancee","Nancey","Nanci","Nancie","Nancy","Nanete","Nanette","Nani","Nanice","Nanine","Nannette","Nanni","Nannie","Nanny","Nanon","Naoma","Naomi","Nara","Nari","Nariko","Nat","Nata","Natala","Natalee","Natalie","Natalina","Nataline","Natalya","Natasha","Natassia","Nathalia","Nathalie","Natividad","Natka","Natty","Neala","Neda","Nedda","Nedi","Neely","Neila","Neile","Neilla","Neille","Nelia","Nelie","Nell","Nelle","Nelli","Nellie","Nelly","Nerissa","Nerita","Nert","Nerta","Nerte","Nerti","Nertie","Nerty","Nessa","Nessi","Nessie","Nessy","Nesta","Netta","Netti","Nettie","Nettle","Netty","Nevsa","Neysa","Nichol","Nichole","Nicholle","Nicki","Nickie","Nicky","Nicol","Nicola","Nicole","Nicolea","Nicolette","Nicoli","Nicolina","Nicoline","Nicolle","Nikaniki","Nike","Niki","Nikki","Nikkie","Nikoletta","Nikolia","Nina","Ninetta","Ninette","Ninnetta","Ninnette","Ninon","Nissa","Nisse","Nissie","Nissy","Nita","Nixie","Noami","Noel","Noelani","Noell","Noella","Noelle","Noellyn","Noelyn","Noemi","Nola","Nolana","Nolie","Nollie","Nomi","Nona","Nonah","Noni","Nonie","Nonna","Nonnah","Nora","Norah","Norean","Noreen","Norene","Norina","Norine","Norma","Norri","Norrie","Norry","Novelia","Nydia","Nyssa","Octavia","Odele","Odelia","Odelinda","Odella","Odelle","Odessa","Odetta","Odette","Odilia","Odille","Ofelia","Ofella","Ofilia","Ola","Olenka","Olga","Olia","Olimpia","Olive","Olivette","Olivia","Olivie","Oliy","Ollie","Olly","Olva","Olwen","Olympe","Olympia","Olympie","Ondrea","Oneida","Onida","Oona","Opal","Opalina","Opaline","Ophelia","Ophelie","Ora","Oralee","Oralia","Oralie","Oralla","Oralle","Orel","Orelee","Orelia","Orelie","Orella","Orelle","Oriana","Orly","Orsa","Orsola","Ortensia","Otha","Othelia","Othella","Othilia","Othilie","Ottilie","Page","Paige","Paloma","Pam","Pamela","Pamelina","Pamella","Pammi","Pammie","Pammy","Pandora","Pansie","Pansy","Paola","Paolina","Papagena","Pat","Patience","Patrica","Patrice","Patricia","Patrizia","Patsy","Patti","Pattie","Patty","Paula","Paule","Pauletta","Paulette","Pauli","Paulie","Paulina","Pauline","Paulita","Pauly","Pavia","Pavla","Pearl","Pearla","Pearle","Pearline","Peg","Pegeen","Peggi","Peggie","Peggy","Pen","Penelopa","Penelope","Penni","Pennie","Penny","Pepi","Pepita","Peri","Peria","Perl","Perla","Perle","Perri","Perrine","Perry","Persis","Pet","Peta","Petra","Petrina","Petronella","Petronia","Petronilla","Petronille","Petunia","Phaedra","Phaidra","Phebe","Phedra","Phelia","Phil","Philipa","Philippa","Philippe","Philippine","Philis","Phillida","Phillie","Phillis","Philly","Philomena","Phoebe","Phylis","Phyllida","Phyllis","Phyllys","Phylys","Pia","Pier","Pierette","Pierrette","Pietra","Piper","Pippa","Pippy","Polly","Pollyanna","Pooh","Poppy","Portia","Pris","Prisca","Priscella","Priscilla","Prissie","Pru","Prudence","Prudi","Prudy","Prue","Queenie","Quentin","Querida","Quinn","Quinta","Quintana","Quintilla","Quintina","Rachael","Rachel","Rachele","Rachelle","Rae","Raeann","Raf","Rafa","Rafaela","Rafaelia","Rafaelita","Rahal","Rahel","Raina","Raine","Rakel","Ralina","Ramona","Ramonda","Rana","Randa","Randee","Randene","Randi","Randie","Randy","Ranee","Rani","Rania","Ranice","Ranique","Ranna","Raphaela","Raquel","Raquela","Rasia","Rasla","Raven","Ray","Raychel","Raye","Rayna","Raynell","Rayshell","Rea","Reba","Rebbecca","Rebe","Rebeca","Rebecca","Rebecka","Rebeka","Rebekah","Rebekkah","Ree","Reeba","Reena","Reeta","Reeva","Regan","Reggi","Reggie","Regina","Regine","Reiko","Reina","Reine","Remy","Rena","Renae","Renata","Renate","Rene","Renee","Renell","Renelle","Renie","Rennie","Reta","Retha","Revkah","Rey","Reyna","Rhea","Rheba","Rheta","Rhetta","Rhiamon","Rhianna","Rhianon","Rhoda","Rhodia","Rhodie","Rhody","Rhona","Rhonda","Riane","Riannon","Rianon","Rica","Ricca","Rici","Ricki","Rickie","Ricky","Riki","Rikki","Rina","Risa","Rita","Riva","Rivalee","Rivi","Rivkah","Rivy","Roana","Roanna","Roanne","Robbi","Robbie","Robbin","Robby","Robbyn","Robena","Robenia","Roberta","Robin","Robina","Robinet","Robinett","Robinetta","Robinette","Robinia","Roby","Robyn","Roch","Rochell","Rochella","Rochelle","Rochette","Roda","Rodi","Rodie","Rodina","Rois","Romola","Romona","Romonda","Romy","Rona","Ronalda","Ronda","Ronica","Ronna","Ronni","Ronnica","Ronnie","Ronny","Roobbie","Rora","Rori","Rorie","Rory","Ros","Rosa","Rosabel","Rosabella","Rosabelle","Rosaleen","Rosalia","Rosalie","Rosalind","Rosalinda","Rosalinde","Rosaline","Rosalyn","Rosalynd","Rosamond","Rosamund","Rosana","Rosanna","Rosanne","Rose","Roseann","Roseanna","Roseanne","Roselia","Roselin","Roseline","Rosella","Roselle","Rosemaria","Rosemarie","Rosemary","Rosemonde","Rosene","Rosetta","Rosette","Roshelle","Rosie","Rosina","Rosita","Roslyn","Rosmunda","Rosy","Row","Rowe","Rowena","Roxana","Roxane","Roxanna","Roxanne","Roxi","Roxie","Roxine","Roxy","Roz","Rozalie","Rozalin","Rozamond","Rozanna","Rozanne","Roze","Rozele","Rozella","Rozelle","Rozina","Rubetta","Rubi","Rubia","Rubie","Rubina","Ruby","Ruperta","Ruth","Ruthann","Ruthanne","Ruthe","Ruthi","Ruthie","Ruthy","Ryann","Rycca","Saba","Sabina","Sabine","Sabra","Sabrina","Sacha","Sada","Sadella","Sadie","Sadye","Saidee","Sal","Salaidh","Sallee","Salli","Sallie","Sally","Sallyann","Sallyanne","Saloma","Salome","Salomi","Sam","Samantha","Samara","Samaria","Sammy","Sande","Sandi","Sandie","Sandra","Sandy","Sandye","Sapphira","Sapphire","Sara","Sara-ann","Saraann","Sarah","Sarajane","Saree","Sarena","Sarene","Sarette","Sari","Sarina","Sarine","Sarita","Sascha","Sasha","Sashenka","Saudra","Saundra","Savina","Sayre","Scarlet","Scarlett","Sean","Seana","Seka","Sela","Selena","Selene","Selestina","Selia","Selie","Selina","Selinda","Seline","Sella","Selle","Selma","Sena","Sephira","Serena","Serene","Shae","Shaina","Shaine","Shalna","Shalne","Shana","Shanda","Shandee","Shandeigh","Shandie","Shandra","Shandy","Shane","Shani","Shanie","Shanna","Shannah","Shannen","Shannon","Shanon","Shanta","Shantee","Shara","Sharai","Shari","Sharia","Sharity","Sharl","Sharla","Sharleen","Sharlene","Sharline","Sharon","Sharona","Sharron","Sharyl","Shaun","Shauna","Shawn","Shawna","Shawnee","Shay","Shayla","Shaylah","Shaylyn","Shaylynn","Shayna","Shayne","Shea","Sheba","Sheela","Sheelagh","Sheelah","Sheena","Sheeree","Sheila","Sheila-kathryn","Sheilah","Shel","Shela","Shelagh","Shelba","Shelbi","Shelby","Shelia","Shell","Shelley","Shelli","Shellie","Shelly","Shena","Sher","Sheree","Sheri","Sherie","Sherill","Sherilyn","Sherline","Sherri","Sherrie","Sherry","Sherye","Sheryl","Shina","Shir","Shirl","Shirlee","Shirleen","Shirlene","Shirley","Shirline","Shoshana","Shoshanna","Siana","Sianna","Sib","Sibbie","Sibby","Sibeal","Sibel","Sibella","Sibelle","Sibilla","Sibley","Sibyl","Sibylla","Sibylle","Sidoney","Sidonia","Sidonnie","Sigrid","Sile","Sileas","Silva","Silvana","Silvia","Silvie","Simona","Simone","Simonette","Simonne","Sindee","Siobhan","Sioux","Siouxie","Sisely","Sisile","Sissie","Sissy","Siusan","Sofia","Sofie","Sondra","Sonia","Sonja","Sonni","Sonnie","Sonnnie","Sonny","Sonya","Sophey","Sophi","Sophia","Sophie","Sophronia","Sorcha","Sosanna","Stace","Stacee","Stacey","Staci","Stacia","Stacie","Stacy","Stafani","Star","Starla","Starlene","Starlin","Starr","Stefa","Stefania","Stefanie","Steffane","Steffi","Steffie","Stella","Stepha","Stephana","Stephani","Stephanie","Stephannie","Stephenie","Stephi","Stephie","Stephine","Stesha","Stevana","Stevena","Stoddard","Storm","Stormi","Stormie","Stormy","Sue","Suellen","Sukey","Suki","Sula","Sunny","Sunshine","Susan","Susana","Susanetta","Susann","Susanna","Susannah","Susanne","Susette","Susi","Susie","Susy","Suzann","Suzanna","Suzanne","Suzette","Suzi","Suzie","Suzy","Sybil","Sybila","Sybilla","Sybille","Sybyl","Sydel","Sydelle","Sydney","Sylvia","Tabatha","Tabbatha","Tabbi","Tabbie","Tabbitha","Tabby","Tabina","Tabitha","Talia","Tallia","Tallie","Tallou","Tallulah","Tally","Talya","Talyah","Tamar","Tamara","Tamarah","Tamarra","Tamera","Tami","Tamiko","Tamma","Tammara","Tammi","Tammie","Tammy","Tamqrah","Tamra","Tana","Tandi","Tandie","Tandy","Tanhya","Tani","Tania","Tanitansy","Tansy","Tanya","Tara","Tarah","Tarra","Tarrah","Taryn","Tasha","Tasia","Tate","Tatiana","Tatiania","Tatum","Tawnya","Tawsha","Ted","Tedda","Teddi","Teddie","Teddy","Tedi","Tedra","Teena","Teirtza","Teodora","Tera","Teresa","Terese","Teresina","Teresita","Teressa","Teri","Teriann","Terra","Terri","Terrie","Terrijo","Terry","Terrye","Tersina","Terza","Tess","Tessa","Tessi","Tessie","Tessy","Thalia","Thea","Theadora","Theda","Thekla","Thelma","Theo","Theodora","Theodosia","Theresa","Therese","Theresina","Theresita","Theressa","Therine","Thia","Thomasa","Thomasin","Thomasina","Thomasine","Tiena","Tierney","Tiertza","Tiff","Tiffani","Tiffanie","Tiffany","Tiffi","Tiffie","Tiffy","Tilda","Tildi","Tildie","Tildy","Tillie","Tilly","Tim","Timi","Timmi","Timmie","Timmy","Timothea","Tina","Tine","Tiphani","Tiphanie","Tiphany","Tish","Tisha","Tobe","Tobey","Tobi","Toby","Tobye","Toinette","Toma","Tomasina","Tomasine","Tomi","Tommi","Tommie","Tommy","Toni","Tonia","Tonie","Tony","Tonya","Tonye","Tootsie","Torey","Tori","Torie","Torrie","Tory","Tova","Tove","Tracee","Tracey","Traci","Tracie","Tracy","Trenna","Tresa","Trescha","Tressa","Tricia","Trina","Trish","Trisha","Trista","Trix","Trixi","Trixie","Trixy","Truda","Trude","Trudey","Trudi","Trudie","Trudy","Trula","Tuesday","Twila","Twyla","Tybi","Tybie","Tyne","Ula","Ulla","Ulrica","Ulrika","Ulrikaumeko","Ulrike","Umeko","Una","Ursa","Ursala","Ursola","Ursula","Ursulina","Ursuline","Uta","Val","Valaree","Valaria","Vale","Valeda","Valencia","Valene","Valenka","Valentia","Valentina","Valentine","Valera","Valeria","Valerie","Valery","Valerye","Valida","Valina","Valli","Vallie","Vally","Valma","Valry","Van","Vanda","Vanessa","Vania","Vanna","Vanni","Vannie","Vanny","Vanya","Veda","Velma","Velvet","Venita","Venus","Vera","Veradis","Vere","Verena","Verene","Veriee","Verile","Verina","Verine","Verla","Verna","Vernice","Veronica","Veronika","Veronike","Veronique","Vevay","Vi","Vicki","Vickie","Vicky","Victoria","Vida","Viki","Vikki","Vikky","Vilhelmina","Vilma","Vin","Vina","Vinita","Vinni","Vinnie","Vinny","Viola","Violante","Viole","Violet","Violetta","Violette","Virgie","Virgina","Virginia","Virginie","Vita","Vitia","Vitoria","Vittoria","Viv","Viva","Vivi","Vivia","Vivian","Viviana","Vivianna","Vivianne","Vivie","Vivien","Viviene","Vivienne","Viviyan","Vivyan","Vivyanne","Vonni","Vonnie","Vonny","Vyky","Wallie","Wallis","Walliw","Wally","Waly","Wanda","Wandie","Wandis","Waneta","Wanids","Wenda","Wendeline","Wendi","Wendie","Wendy","Wendye","Wenona","Wenonah","Whitney","Wileen","Wilhelmina","Wilhelmine","Wilie","Willa","Willabella","Willamina","Willetta","Willette","Willi","Willie","Willow","Willy","Willyt","Wilma","Wilmette","Wilona","Wilone","Wilow","Windy","Wini","Winifred","Winna","Winnah","Winne","Winni","Winnie","Winnifred","Winny","Winona","Winonah","Wren","Wrennie","Wylma","Wynn","Wynne","Wynnie","Wynny","Xaviera","Xena","Xenia","Xylia","Xylina","Yalonda","Yasmeen","Yasmin","Yelena","Yetta","Yettie","Yetty","Yevette","Ynes","Ynez","Yoko","Yolanda","Yolande","Yolane","Yolanthe","Yoshi","Yoshiko","Yovonnda","Ysabel","Yvette","Yvonne","Zabrina","Zahara","Zandra","Zaneta","Zara","Zarah","Zaria","Zarla","Zea","Zelda","Zelma","Zena","Zenia","Zia","Zilvia","Zita","Zitella","Zoe","Zola","Zonda","Zondra","Zonnya","Zora","Zorah","Zorana","Zorina","Zorine","Zsazsa","Zulema","Zuzana"],m=["Ackbar","Adi Gallia","Anakin Skywalker","Arvel Crynyd","Ayla Secura","Bail Prestor Organa","Barriss Offee","Ben Quadinaros","Beru Whitesun lars","Bib Fortuna","Biggs Darklighter","Boba Fett","Bossk","C-3PO","Chewbacca","Cliegg Lars","Cordé","Darth Maul","Darth Vader","Dexter Jettster","Dooku","Dormé","Dud Bolt","Eeth Koth","Finis Valorum","Gasgano","Greedo","Gregar Typho","Grievous","Han Solo","IG-88","Jabba Desilijic Tiure","Jango Fett","Jar Jar Binks","Jek Tono Porkins","Jocasta Nu","Ki-Adi-Mundi","Kit Fisto","Lama Su","Lando Calrissian","Leia Organa","Lobot","Luke Skywalker","Luminara Unduli","Mace Windu","Mas Amedda","Mon Mothma","Nien Nunb","Nute Gunray","Obi-Wan Kenobi","Owen Lars","Padmé Amidala","Palpatine","Plo Koon","Poggle the Lesser","Quarsh Panaka","Qui-Gon Jinn","R2-D2","R4-P17","R5-D4","Ratts Tyerel","Raymus Antilles","Ric Olié","Roos Tarpals","Rugor Nass","Saesee Tiin","San Hill","Sebulba","Shaak Ti","Shmi Skywalker","Sly Moore","Tarfful","Taun We","Tion Medon","Wat Tambor","Watto","Wedge Antilles","Wicket Systri Warrick","Wilhuff Tarkin","Yoda","Zam Wesell"];class h{static generate(e={}){let t=e.min||1,i=e.max||999;if(e.length){const n=Math.pow(10,e.length);return t=n/10,i=n-1,[`${Math.floor(Math.random()*(i-t))+t}`]}return[`${Math.floor(Math.random()*(i-t))+t}`]}}},5509:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;a2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0},c=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;a{let e,t=[];return class i{static{const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[(0,d.debounce)(500)],s(this,null,e,{kind:"method",name:"checkIgnoreSoon",static:!1,private:!1,access:{has:e=>"checkIgnoreSoon"in e,get:e=>e.checkIgnoreSoon},metadata:i},null,t),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}model=a(this,t);static Decoration={color:new l.ThemeColor("gitDecoration.ignoredResourceForeground")};_onDidChangeDecorations=new l.EventEmitter;onDidChangeFileDecorations=this._onDidChangeDecorations.event;queue=new Map;disposables=[];constructor(e){this.model=e;const t=(0,m.anyEvent)((0,m.filterEvent)(l.workspace.onDidSaveTextDocument,e=>/\.gitignore$|\.git\/info\/exclude$/.test(e.uri.path)),e.onDidOpenRepository,e.onDidCloseRepository);this.disposables.push(t(()=>this._onDidChangeDecorations.fire(void 0))),this.disposables.push(l.window.registerFileDecorationProvider(this))}async provideFileDecoration(e){const t=this.model.getRepository(e);if(!t)return;let i=this.queue.get(t.root);i||(i={repository:t,queue:new Map},this.queue.set(t.root,i));let n=i.queue.get(e.fsPath);return n||(n=new m.PromiseSource,i.queue.set(e.fsPath,n),this.checkIgnoreSoon()),await n.promise}checkIgnoreSoon(){const e=new Map(this.queue.entries());this.queue.clear();for(const[,t]of e){const e=[...t.queue.keys()];t.repository.checkIgnore(e).then(e=>{for(const[n,r]of t.queue.entries())r.resolve(e.has(n)?i.Decoration:void 0)},e=>{"IsInSubmodule"!==e.gitErrorCode&&console.error(e);for(const[,i]of t.queue.entries())i.reject(e)})}}dispose(){this.disposables.forEach(e=>e.dispose()),this.queue.clear()}}})();class p{repository;static SubmoduleDecorationData={tooltip:"Submodule",badge:"S",color:new l.ThemeColor("gitDecoration.submoduleResourceForeground")};_onDidChangeDecorations=new l.EventEmitter;onDidChangeFileDecorations=this._onDidChangeDecorations.event;disposables=[];decorations=new Map;constructor(e){this.repository=e,this.disposables.push(l.window.registerFileDecorationProvider(this),(0,m.runAndSubscribeEvent)(e.onDidRunGitStatus,()=>this.onDidRunGitStatus()))}onDidRunGitStatus(){const e=new Map;this.collectDecorationData(this.repository.indexGroup,e),this.collectDecorationData(this.repository.untrackedGroup,e),this.collectDecorationData(this.repository.workingTreeGroup,e),this.collectDecorationData(this.repository.mergeGroup,e),this.collectSubmoduleDecorationData(e);const t=new Set([...this.decorations.keys()].concat([...e.keys()]));this.decorations=e,this._onDidChangeDecorations.fire([...t.values()].map(e=>l.Uri.parse(e,!0)))}collectDecorationData(e,t){for(const i of e.resourceStates){const e=i.resourceDecoration;e&&(t.set(i.original.toString(),e),6===i.type&&i.rightUri&&t.set(i.rightUri.toString(),e),3!==i.type&&10!==i.type||t.set(i.resourceUri.toString(),e))}}collectSubmoduleDecorationData(e){for(const t of this.repository.submodules)e.set(l.Uri.file(u.join(this.repository.root,t.path)).toString(),p.SubmoduleDecorationData)}provideFileDecoration(e){return this.decorations.get(e.toString())}dispose(){this.disposables.forEach(e=>e.dispose())}}class f{repository;_onDidChangeDecorations=new l.EventEmitter;onDidChangeFileDecorations=this._onDidChangeDecorations.event;_currentHistoryItemRef;_currentHistoryItemRemoteRef;_decorations=new Map;disposables=[];constructor(e){this.repository=e,this.disposables.push(l.window.registerFileDecorationProvider(this),(0,m.runAndSubscribeEvent)(e.historyProvider.onDidChangeCurrentHistoryItemRefs,()=>this.onDidChangeCurrentHistoryItemRefs()))}async onDidChangeCurrentHistoryItemRefs(){const e=this.repository.historyProvider,t=e.currentHistoryItemRef,i=e.currentHistoryItemRemoteRef;if(h(this._currentHistoryItemRef,t)&&h(this._currentHistoryItemRemoteRef,i))return;const n=new Map;await this.collectIncomingChangesFileDecorations(n);const r=new Set([...this._decorations.keys()].concat([...n.keys()]));this._decorations=n,this._currentHistoryItemRef=t,this._currentHistoryItemRemoteRef=i,this._onDidChangeDecorations.fire([...r.values()].map(e=>l.Uri.parse(e,!0)))}async collectIncomingChangesFileDecorations(e){for(const t of await this.getIncomingChanges())switch(t.status){case 1:e.set(t.uri.toString(),{badge:"↓A",tooltip:l.l10n.t("Incoming Changes (added)")});break;case 6:e.set(t.uri.toString(),{badge:"↓D",tooltip:l.l10n.t("Incoming Changes (deleted)")});break;case 3:e.set(t.originalUri.toString(),{badge:"↓R",tooltip:l.l10n.t("Incoming Changes (renamed)")});break;case 5:e.set(t.uri.toString(),{badge:"↓M",tooltip:l.l10n.t("Incoming Changes (modified)")});break;default:e.set(t.uri.toString(),{badge:"↓~",tooltip:l.l10n.t("Incoming Changes")})}}async getIncomingChanges(){try{const e=this.repository.historyProvider,t=e.currentHistoryItemRef,i=e.currentHistoryItemRemoteRef;if(!t||!i)return[];const n=await e.resolveHistoryItemRefsCommonAncestor([t.id,i.id]);return n?await this.repository.diffBetween2(n,i.id):[]}catch(e){return[]}}provideFileDecoration(e){return this._decorations.get(e.toString())}dispose(){(0,m.dispose)(this.disposables)}}t.GitDecorations=class{model;enabled=!1;disposables=[];modelDisposables=[];providers=new Map;constructor(e){this.model=e,this.disposables.push(new g(e)),(0,m.filterEvent)(l.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git.decorations.enabled"))(this.update,this,this.disposables),this.update()}update(){const e=!0===l.workspace.getConfiguration("git").get("decorations.enabled");this.enabled!==e&&(e?this.enable():this.disable(),this.enabled=e)}enable(){this.model.onDidOpenRepository(this.onDidOpenRepository,this,this.modelDisposables),this.model.onDidCloseRepository(this.onDidCloseRepository,this,this.modelDisposables),this.model.repositories.forEach(this.onDidOpenRepository,this)}disable(){this.modelDisposables=(0,m.dispose)(this.modelDisposables),this.providers.forEach(e=>e.dispose()),this.providers.clear()}onDidOpenRepository(e){const t=(0,m.combinedDisposable)([new p(e),new f(e)]);this.providers.set(e,t)}onDidCloseRepository(e){const t=this.providers.get(e);t&&(t.dispose(),this.providers.delete(e))}dispose(){this.disable(),this.disposables=(0,m.dispose)(this.disposables)}}},5523:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EndOfStreamError=t.defaultMessages=void 0,t.defaultMessages="End-Of-Stream";class i extends Error{constructor(){super(t.defaultMessages)}}t.EndOfStreamError=i},5571:(e,t,i)=>{"use strict";i.d(t,{G:()=>c});var n=i(6149),r=i(269),o=i(4276),a=i(5130);function s(e,t){(0,n.ML)(e,null,null,t)}function c(e){var t=(0,r.YEm)(),i=(0,r.w3n)(),c=!1,l=[],u=1;!i||(0,r.hXl)(i.onLine)||i.onLine||(u=2);var d=0,m=f(),h=(0,n.Hm)((0,o.Z)("OfflineListener"),e);try{if(p((0,r.zkX)())&&(c=!0),t){var g=t.body||t;g.ononline&&p(g)&&(c=!0)}}catch(e){c=!1}function p(e){var t=!1;return e&&(t=(0,n.mB)(e,"online",v,h))&&(0,n.mB)(e,"offline",w,h),t}function f(){return 2!==d&&2!==u}function y(){var e=f();m!==e&&(m=e,(0,r.Iuo)(l,function(e){var t={isOnline:m,rState:u,uState:d};try{e(t)}catch(e){}}))}function v(){u=1,y()}function w(){u=2,y()}return{isOnline:function(){return m},isListening:function(){return c},unload:function(){var e=(0,r.zkX)();if(e&&c){if(s(e,h),t){var i=t.body||t;(0,r.b07)(i.ononline)||s(i,h)}c=!1}},addListener:function(e){return l[a.y5](e),{rm:function(){var t=l.indexOf(e);return t>-1?l.splice(t,1):void 0}}},setOnlineState:function(e){d=e,y()}}}},5607:(e,t,i)=>{var n=i(2203),r=i(9023),o=i(3557);function a(e,t){if(!e)throw new Error("expected readStream");if(!e.readable)throw new Error("readStream must be readable");var i=new s(t);return e.pipe(i),i}function s(e){n.Transform.call(this,e),e=e||{},this._readableState.objectMode=!0,this._lineBuffer=[],this._keepEmptyLines=e.keepEmptyLines||!1,this._lastChunkEndedWithCR=!1;var t=this;this.on("pipe",function(e){t.encoding||e instanceof n.Readable&&(t.encoding=e._readableState.encoding)})}e.exports=function(t,i){return e.exports.createStream(t,i)},e.exports.createStream=function(e,t){return e?a(e,t):new s(t)},e.exports.createLineStream=function(e){return console.log("WARNING: byline#createLineStream is deprecated and will be removed soon"),a(e)},e.exports.LineStream=s,r.inherits(s,n.Transform),s.prototype._transform=function(e,t,i){t=t||"utf8",Buffer.isBuffer(e)&&("buffer"==t?(e=e.toString(),t="utf8"):e=e.toString(t)),this._chunkEncoding=t;var n=e.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/g);this._lastChunkEndedWithCR&&"\n"==e[0]&&n.shift(),this._lineBuffer.length>0&&(this._lineBuffer[this._lineBuffer.length-1]+=n[0],n.shift()),this._lastChunkEndedWithCR="\r"==e[e.length-1],this._lineBuffer=this._lineBuffer.concat(n),this._pushBuffer(t,1,i)},s.prototype._pushBuffer=function(e,t,i){for(;this._lineBuffer.length>t;){var n=this._lineBuffer.shift();if((this._keepEmptyLines||n.length>0)&&!this.push(this._reencode(n,e))){var r=this;return void o.setImmediate(function(){r._pushBuffer(e,t,i)})}}i()},s.prototype._flush=function(e){this._pushBuffer(this._chunkEncoding,0,e)},s.prototype._reencode=function(e,t){return this.encoding&&this.encoding!=t?new Buffer(e,t).toString(this.encoding):this.encoding?e:new Buffer(e,t)}},5664:(e,t,i)=>{"use strict";i.d(t,{Wy:()=>c,_1:()=>r,bA:()=>o,hW:()=>n,s6:()=>s,vR:()=>a});var n="function",r="object",o="undefined",a="prototype",s=Object,c=s[a]},5692:e=>{"use strict";e.exports=require("https")},5707:(module,__unused_webpack_exports,__webpack_require__)=>{"use strict";const Token=__webpack_require__(4266),strtok3=__webpack_require__(6452),{stringToBytes,tarHeaderChecksumMatches,uint32SyncSafeToken}=__webpack_require__(6760),supported=__webpack_require__(1664),minimumBytes=4100;async function fromStream(e){const t=await strtok3.fromStream(e);try{return await fromTokenizer(t)}finally{await t.close()}}async function fromBuffer(e){if(!(e instanceof Uint8Array||e instanceof ArrayBuffer||Buffer.isBuffer(e)))throw new TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof e}\``);const t=e instanceof Buffer?e:Buffer.from(e);if(t&&t.length>1)return fromTokenizer(strtok3.fromBuffer(t))}function _check(e,t,i){i={offset:0,...i};for(const[n,r]of t.entries())if(i.mask){if(r!==(i.mask[n]&e[n+i.offset]))return!1}else if(r!==e[n+i.offset])return!1;return!0}async function fromTokenizer(e){try{return _fromTokenizer(e)}catch(e){if(!(e instanceof strtok3.EndOfStreamError))throw e}}async function _fromTokenizer(e){let t=Buffer.alloc(minimumBytes);const i=(e,i)=>_check(t,e,i),n=(e,t)=>i(stringToBytes(e),t);if(e.fileInfo.size||(e.fileInfo.size=Number.MAX_SAFE_INTEGER),await e.peekBuffer(t,{length:12,mayBeLess:!0}),i([66,77]))return{ext:"bmp",mime:"image/bmp"};if(i([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(i([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(i([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(i([37,33]))return await e.peekBuffer(t,{length:24,mayBeLess:!0}),n("PS-Adobe-",{offset:2})&&n(" EPSF-",{offset:14})?{ext:"eps",mime:"application/eps"}:{ext:"ps",mime:"application/postscript"};if(i([31,160])||i([31,157]))return{ext:"Z",mime:"application/x-compress"};if(i([255,216,255]))return{ext:"jpg",mime:"image/jpeg"};if(i([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(i([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(i([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(n("ID3")){await e.ignore(6);const r=await e.readToken(uint32SyncSafeToken);return e.position+r>e.fileInfo.size?{ext:"mp3",mime:"audio/mpeg"}:(await e.ignore(r),fromTokenizer(e))}if(n("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((67===t[0]||70===t[0])&&i([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(i([71,73,70]))return{ext:"gif",mime:"image/gif"};if(n("FLIF"))return{ext:"flif",mime:"image/flif"};if(n("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(n("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(n("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(n("FORM"))return{ext:"aif",mime:"audio/aiff"};if(n("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(i([80,75,3,4])){try{for(;e.position+30=0?a:t.length)}else await e.ignore(o.compressedSize)}}catch(s){if(!(s instanceof strtok3.EndOfStreamError))throw s}return{ext:"zip",mime:"application/zip"}}if(n("OggS")){await e.ignore(28);const c=Buffer.alloc(8);return await e.readBuffer(c),_check(c,[79,112,117,115,72,101,97,100])?{ext:"opus",mime:"audio/opus"}:_check(c,[128,116,104,101,111,114,97])?{ext:"ogv",mime:"video/ogg"}:_check(c,[1,118,105,100,101,111,0])?{ext:"ogm",mime:"video/ogg"}:_check(c,[127,70,76,65,67])?{ext:"oga",mime:"audio/ogg"}:_check(c,[83,112,101,101,120,32,32])?{ext:"spx",mime:"audio/ogg"}:_check(c,[1,118,111,114,98,105,115])?{ext:"ogg",mime:"audio/ogg"}:{ext:"ogx",mime:"application/ogg"}}if(i([80,75])&&(3===t[2]||5===t[2]||7===t[2])&&(4===t[3]||6===t[3]||8===t[3]))return{ext:"zip",mime:"application/zip"};if(n("ftyp",{offset:4})&&96&t[8]){const l=t.toString("binary",8,12).replace("\0"," ").trim();switch(l){case"avif":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:return l.startsWith("3g")?l.startsWith("3g2")?{ext:"3g2",mime:"video/3gpp2"}:{ext:"3gp",mime:"video/3gpp"}:{ext:"mp4",mime:"video/mp4"}}}if(n("MThd"))return{ext:"mid",mime:"audio/midi"};if(n("wOFF")&&(i([0,1,0,0],{offset:4})||n("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(n("wOF2")&&(i([0,1,0,0],{offset:4})||n("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(i([212,195,178,161])||i([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(n("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(n("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(n("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(i([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(n("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(n("%PDF")){await e.ignore(1350);const u=10485760,d=Buffer.alloc(Math.min(u,e.fileInfo.size));return await e.readBuffer(d,{mayBeLess:!0}),d.includes(Buffer.from("AIPrivateData"))?{ext:"ai",mime:"application/postscript"}:{ext:"pdf",mime:"application/pdf"}}if(i([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(i([73,73,42,0]))return n("CR",{offset:8})?{ext:"cr2",mime:"image/x-canon-cr2"}:i([28,0,254,0],{offset:8})||i([31,0,11,0],{offset:8})?{ext:"nef",mime:"image/x-nikon-nef"}:i([8,0,0,0],{offset:4})&&(i([45,0,254,0],{offset:8})||i([39,0,254,0],{offset:8}))?{ext:"dng",mime:"image/x-adobe-dng"}:(t=Buffer.alloc(24),await e.peekBuffer(t),(i([16,251,134,1],{offset:4})||i([8,0,0,0],{offset:4}))&&i([0,254,0,4,0,1,0,0,0,1,0,0,0,3,1],{offset:9})?{ext:"arw",mime:"image/x-sony-arw"}:{ext:"tif",mime:"image/tiff"});if(i([77,77,0,42]))return{ext:"tif",mime:"image/tiff"};if(n("MAC "))return{ext:"ape",mime:"audio/ape"};if(i([26,69,223,163])){async function m(){const t=await e.peekNumber(Token.UINT8);let i=128,n=0;for(;0===(t&i)&&0!==i;)++n,i>>=1;const r=Buffer.alloc(n+1);return await e.readBuffer(r),r}async function h(){const e=await m(),t=await m();t[0]^=128>>t.length-1;const i=Math.min(6,t.length);return{id:e.readUIntBE(0,e.length),len:t.readUIntBE(t.length-i,i)}}async function g(t,i){for(;i>0;){const t=await h();if(17026===t.id)return e.readToken(new Token.StringType(t.len,"utf-8"));await e.ignore(t.len),--i}}const p=await h();switch(await g(0,p.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(i([82,73,70,70])){if(i([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(i([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/vnd.wave"};if(i([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(n("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(i([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(n("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(n("MSCF")||n("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(i([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(i([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(i([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(i([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(n("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(n("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(i([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(n("IMPM"))return{ext:"it",mime:"audio/x-it"};if(n("-lh0-",{offset:2})||n("-lh1-",{offset:2})||n("-lh2-",{offset:2})||n("-lh3-",{offset:2})||n("-lh4-",{offset:2})||n("-lh5-",{offset:2})||n("-lh6-",{offset:2})||n("-lh7-",{offset:2})||n("-lzs-",{offset:2})||n("-lz4-",{offset:2})||n("-lz5-",{offset:2})||n("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(i([0,0,1,186])){if(i([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(i([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(n("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(i([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(n(""))return await e.ignore(8),"debian-binary"===await e.readToken(new Token.StringType(13,"ascii"))?{ext:"deb",mime:"application/x-deb"}:{ext:"ar",mime:"application/x-unix-archive"};if(i([137,80,78,71,13,10,26,10])){async function f(){return{length:await e.readToken(Token.INT32_BE),type:await e.readToken(new Token.StringType(4,"binary"))}}await e.ignore(8);do{const y=await f();if(y.length<0)return;switch(y.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await e.ignore(y.length+4)}}while(e.position+8=16){const k=t.readUInt32LE(12);if(k>12&&t.length>=k+16)try{const R=t.slice(16,k+16).toString();if(JSON.parse(R).files)return{ext:"asar",mime:"application/x-asar"}}catch(S){}}if(i([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(n("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(i([71],{offset:4})&&(i([71],{offset:192})||i([71],{offset:196})))return{ext:"mts",mime:"video/mp2t"};if(i([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(i([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(i([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(i([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(i([76,80],{offset:34})&&(i([0,0,1],{offset:8})||i([1,0,2],{offset:8})||i([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(i([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await e.peekBuffer(t,{length:Math.min(512,e.fileInfo.size),mayBeLess:!0}),tarHeaderChecksumMatches(t))return{ext:"tar",mime:"application/x-tar"};if(i([255,254,255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0]))return{ext:"skp",mime:"application/vnd.sketchup.skp"};if(n("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(t.length>=2&&i([255,224],{offset:0,mask:[255,224]})){if(i([16],{offset:1,mask:[22]}))return i([8],{offset:1,mask:[8]}),{ext:"aac",mime:"audio/aac"};if(i([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(i([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(i([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}const stream=readableStream=>new Promise((resolve,reject)=>{const stream=eval("require")("stream");readableStream.on("error",reject),readableStream.once("readable",async()=>{const e=new stream.PassThrough;let t;t=stream.pipeline?stream.pipeline(readableStream,e,()=>{}):readableStream.pipe(e);const i=readableStream.read(minimumBytes)||readableStream.read()||Buffer.alloc(0);try{const t=await fromBuffer(i);e.fileType=t}catch(e){reject(e)}resolve(t)})}),fileType={fromStream,fromTokenizer,fromBuffer,stream};Object.defineProperty(fileType,"extensions",{get:()=>new Set(supported.extensions)}),Object.defineProperty(fileType,"mimeTypes",{get:()=>new Set(supported.mimeTypes)}),module.exports=fileType},5927:(e,t,i)=>{"use strict";i.r(t),i.d(t,{AppInsightsCore:()=>yt._,ApplicationInsights:()=>_t,Sender:()=>pt,SeverityLevel:()=>Et.O,arrForEach:()=>C.Iuo,isNullOrUndefined:()=>C.hXl,proxyFunctions:()=>b.o$,throwError:()=>C.$8});var n=i(8279),r=i(659),o=i(5025),a=i(3072),s=i(2445),c=i(1448),l=i(4164),u=i(5397),d=i(5014),m=i(1365),h=i(740),g=i(5571),p=i(4658),f=i(2318),y=i(2910),v=i(2475),w=i(3775),b=i(3673),C=i(269),k=i(6149),R=i(4276),S=i(9749),E=i(2317),D=i(4875),P=i(7292),_=i(856),A=i(4013),I=i(1190),T=i(8257),x=i(1575),M=i(7975),O=i(1062),B=i(7358),G="duration",L="tags",H="deviceType",F="data",N="name",U="traceID",$="length",W="stringify",j="measurements",z="dataType",K="envelopeType",V="toString",J="_get",q="enqueue",X="count",Z="eventsLimitInMem",Y="push",Q="item",ee="emitLineDelimitedJson",te="clear",ie="createNew",ne="markAsSent",re="clearSent",oe="bufferOverride",ae="BUFFER_KEY",se="SENT_BUFFER_KEY",ce="concat",le="MAX_BUFFER_SIZE",ue="triggerSend",de="diagLog",me="initialize",he="_sender",ge="endpointUrl",pe="instrumentationKey",fe="customHeaders",ye="maxBatchSizeInBytes",ve="onunloadDisableBeacon",we="isBeaconApiDisabled",be="alwaysUseXhrOverride",Ce="disableXhr",ke="enableSessionStorageBuffer",Re="_buffer",Se="onunloadDisableFetch",Ee="disableSendBeaconSplit",De="enableSendPromise",Pe="getSenderInst",_e="unloadTransports",Ae="convertUndefined",Ie="maxBatchInterval",Te="serialize",xe="_onError",Me="_onPartialSuccess",Oe="_onSuccess",Be="itemsReceived",Ge="itemsAccepted",Le="oriPayload",He="baseType",Fe="sampleRate",Ne="eventsSendRequest",Ue="getSamplingScore",$e="baseType",We="baseData",je="properties",ze="true";function Ke(e,t,i){return(0,b.KY)(e,t,i,C.zzB)}function Ve(e,t,i){(0,C.hXl)(e)||(0,C.zav)(e,function(e,n){(0,C.EtT)(n)?i[e]=n:(0,C.KgX)(n)?t[e]=n:(0,P.Z)()&&(t[e]=(0,P.hm)()[W](n))})}function Je(e,t){(0,C.hXl)(e)||(0,C.zav)(e,function(i,n){e[i]=n||t})}function qe(e,t,i,n){var a=new O.L(e,n,t);Ke(a,"sampleRate",i[o.tU]),(i[We]||{}).startTime&&(a.time=(0,b._u)(i[We].startTime)),a.iKey=i.iKey;var s=i.iKey.replace(/-/g,"");return a[N]=a[N].replace("{0}",s),function(e,t,i){var n=i[L]=i[L]||{},o=t.ext=t.ext||{},a=t[L]=t[L]||[],s=o.user;s&&(Ke(n,x.O.userAuthUserId,s.authId),Ke(n,x.O.userId,s.id||s.localId));var c=o.app;c&&Ke(n,x.O.sessionId,c.sesId);var l=o.device;l&&(Ke(n,x.O.deviceId,l.id||l.localId),Ke(n,x.O[H],l.deviceClass),Ke(n,x.O.deviceIp,l.ip),Ke(n,x.O.deviceModel,l.model),Ke(n,x.O[H],l[H]));var u=t.ext.web;if(u){Ke(n,x.O.deviceLanguage,u.browserLang),Ke(n,x.O.deviceBrowserVersion,u.browserVer),Ke(n,x.O.deviceBrowser,u.browser);var d=i[F]=i[F]||{},m=d[We]=d[We]||{},h=m[je]=m[je]||{};Ke(h,"domain",u.domain),Ke(h,"isManual",u.isManual?ze:null),Ke(h,"screenRes",u.screenRes),Ke(h,"userConsent",u.userConsent?ze:null)}var g=o.os;g&&(Ke(n,x.O.deviceOS,g[N]),Ke(n,x.O.deviceOSVersion,g.osVer));var p=o.trace;p&&(Ke(n,x.O.operationParentId,p.parentID),Ke(n,x.O.operationName,(0,M.Rr)(e,p[N])),Ke(n,x.O.operationId,p[U]));for(var f={},y=a[$]-1;y>=0;y--){var v=a[y];(0,C.zav)(v,function(e,t){f[e]=t}),a.splice(y,1)}(0,C.zav)(a,function(e,t){f[e]=t});var w=(0,r.Im)((0,r.Im)({},n),f);w[x.O.internalSdkVersion]||(w[x.O.internalSdkVersion]=(0,M.Rr)(e,"javascript:".concat(Ze.Version),64)),i[L]=(0,b.hW)(w)}(e,i,a),i[L]=i[L]||[],(0,b.hW)(a)}function Xe(e,t){(0,C.hXl)(t[We])&&(0,w.ZP)(e,1,46,"telemetryItem.baseData cannot be null.")}var Ze={Version:"3.3.4"};function Ye(e,t,i){Xe(e,t);var n={},r={};t[$e]!==a.J[z]&&(n.baseTypeSource=t[$e]),t[$e]===a.J[z]?(n=t[We][je]||{},r=t[We][j]||{}):t[We]&&Ve(t[We],n,r),Ve(t[F],n,r),(0,C.hXl)(i)||Je(n,i);var o=t[We][N],s=new a.J(e,o,n,r),c=new B.B(a.J[z],s);return qe(e,a.J[K],t,c)}var Qe,et,tt=function(){function e(t,i){var r=[],o=!1,a=i.maxRetryCnt;this[J]=function(){return r},this._set=function(e){return r=e},(0,n.A)(e,this,function(e){e[q]=function(n){e[X]()>=i[Z]?o||((0,w.ZP)(t,2,105,"Maximum in-memory buffer size reached: "+e[X](),!0),o=!0):(n.cnt=n.cnt||0,!(0,C.hXl)(a)&&n.cnt>a||r[Y](n))},e[X]=function(){return r[$]},e.size=function(){for(var e=r[$],t=0;t0){var t=[];return(0,C.Iuo)(e,function(e){t[Y](e[Q])}),i[ee]?t.join("\n"):"["+t.join(",")+"]"}return null},e[ie]=function(e,i,n){var o=r.slice(0);e=e||t,i=i||{};var a=n?new rt(e,i):new it(e,i);return(0,C.Iuo)(o,function(e){a[q](e)}),a}})}return e.__ieDyn=1,e}(),it=function(e){function t(i,r){var o=e.call(this,i,r)||this;return(0,n.A)(t,o,function(e,t){e[ne]=function(e){t[te]()},e[re]=function(e){}}),o}return(0,r.qU)(t,e),t.__ieDyn=1,t}(tt),nt=["AI_buffer","AI_sentBuffer"],rt=function(e){function t(i,r){var o=e.call(this,i,r)||this,a=!1,s=null==r?void 0:r.namePrefix,c=r[oe]||{getItem:p.vH,setItem:p.Dt},l=c.getItem,u=c.setItem,d=r.maxRetryCnt;return(0,n.A)(t,o,function(e,n){var r=f(t[ae]),o=f(t[se]),c=function(){var e=[];try{return(0,C.Iuo)(nt,function(t){var i=k(t);if(e=e[ce](i),s){var n=k(s+"_"+t);e=e[ce](n)}}),e}catch(e){(0,w.ZP)(i,2,41,"Transfer events from previous buffers: "+(0,b.lL)(e)+". previous Buffer items can not be removed",{exception:(0,C.mmD)(e)})}return[]}(),m=o[ce](c),h=e._set(r[ce](m));function g(e,t){var i=[],n=[];return(0,C.Iuo)(e,function(e){n[Y](e[Q])}),(0,C.Iuo)(t,function(e){(0,C.Tnt)(e)||-1!==(0,C.rDm)(n,e[Q])||i[Y](e)}),i}function f(e){return y(s?s+"_"+e:e)}function y(e){try{var t=l(i,e);if(t){var n=(0,P.hm)().parse(t);if((0,C.KgX)(n)&&(n=(0,P.hm)().parse(n)),n&&(0,C.cyL)(n))return n}}catch(t){(0,w.ZP)(i,1,42," storage key: "+e+", "+(0,b.lL)(t),{exception:(0,C.mmD)(t)})}return[]}function v(e,t){var n=e;try{n=s?s+"_"+n:n;var r=JSON[W](t);u(i,n,r)}catch(e){u(i,n,JSON[W]([])),(0,w.ZP)(i,2,41," storage key: "+n+", "+(0,b.lL)(e)+". Buffer cleared",{exception:(0,C.mmD)(e)})}}function k(e){try{var t=y(e),n=[];return(0,C.Iuo)(t,function(e){var t={item:e,cnt:0};n[Y](t)}),(0,p.v7)(i,e),n}catch(e){}return[]}h[$]>t[le]&&(h[$]=t[le]),v(t[se],[]),v(t[ae],h),e[q]=function(r){e[X]()>=t[le]?a||((0,w.ZP)(i,2,67,"Maximum buffer size reached: "+e[X](),!0),a=!0):(r.cnt=r.cnt||0,!(0,C.hXl)(d)&&r.cnt>d||(n[q](r),v(t.BUFFER_KEY,e[J]())))},e[te]=function(){n[te](),v(t.BUFFER_KEY,e[J]()),v(t[se],[]),a=!1},e[ne]=function(n){v(t[ae],e._set(g(n,e[J]())));var r=f(t[se]);r instanceof Array&&n instanceof Array&&((r=r[ce](n))[$]>t[le]&&((0,w.ZP)(i,1,67,"Sent buffer reached its maximum size: "+r[$],!0),r[$]=t[le]),v(t[se],r))},e[re]=function(e){var i=f(t[se]);i=g(e,i),v(t[se],i)},e[ie]=function(n,r,o){o=!!o;var a=e[J]().slice(0),s=f(t[se]).slice(0);n=n||i,r=r||{},e[te]();var c=o?new t(n,r):new it(n,r);return(0,C.Iuo)(a,function(e){c[q](e)}),o&&c[ne](s),c}}),o}var i;return(0,r.qU)(t,e),i=t,t.VERSION="_1",t.BUFFER_KEY="AI_buffer"+i.VERSION,t.SENT_BUFFER_KEY="AI_sentBuffer"+i.VERSION,t.MAX_BUFFER_SIZE=2e3,t}(tt),ot=function(){function e(t){(0,n.A)(e,this,function(e){function i(e,o){var a="__aiCircularRefCheck",s={};if(!e)return(0,w.ZP)(t,1,48,"cannot serialize object because it is null or undefined",{name:o},!0),s;if(e[a])return(0,w.ZP)(t,2,50,"Circular reference detected while serializing object",{name:o},!0),s;if(!e.aiDataContract){if("measurements"===o)s=r(e,"number",o);else if("properties"===o)s=r(e,"string",o);else if("tags"===o)s=r(e,"string",o);else if((0,C.cyL)(e))s=n(e,o);else{(0,w.ZP)(t,2,49,"Attempting to serialize an object which does not implement ISerializable",{name:o},!0);try{(0,P.hm)()[W](e),s=e}catch(e){(0,w.ZP)(t,1,48,e&&(0,C.Tnt)(e[V])?e[V]():"Error serializing object",null,!0)}}return s}return e[a]=!0,(0,C.zav)(e.aiDataContract,function(r,a){var c=(0,C.Tnt)(a)?1&a():1&a,l=(0,C.Tnt)(a)?4&a():4&a,u=2&a,d=void 0!==e[r],m=(0,C.Gvm)(e[r])&&null!==e[r];if(!c||d||u){if(!l){var h;void 0!==(h=m?u?n(e[r],r):i(e[r],r):e[r])&&(s[r]=h)}}else(0,w.ZP)(t,1,24,"Missing required field specification. The field is required but not present on source",{field:r,name:o})}),delete e[a],s}function n(e,n){var r;if(e)if((0,C.cyL)(e)){r=[];for(var o=0;o100||e<0)&&(i.throwInternal(2,58,"Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.",{samplingRate:e},!0),e=100),this[Fe]=e,this.samplingScoreGenerator=new ct}return e.prototype.isSampledIn=function(e){var t=this[Fe];return null==t||t>=100||e.baseType===d.J[z]||this.samplingScoreGenerator[Ue](e)0&&e<=100},100),Qe[fe]=ut,Qe[Ae]=ut,Qe[Z]=1e4,Qe[oe]=!1,Qe.httpXHROverride={isVal:function(e){return e&&e.sendPOST},v:ut},Qe[be]=(0,v.DD)(),Qe.transports=ut,Qe.retryCodes=ut,Qe.maxRetryCnt={isVal:C.EtT,v:10},Qe)),gt=((et={})[a.J.dataType]=Ye,et[s.C.dataType]=function(e,t,i){Xe(e,t);var n=t[We].message,r=t[We].severityLevel,o=t[We][je]||{},a=t[We][j]||{};Ve(t[F],o,a),(0,C.hXl)(i)||Je(o,i);var c=new s.C(e,n,r,o,a),l=new B.B(s.C[z],c);return qe(e,s.C[K],t,l)},et[c.h.dataType]=function(e,t,i){var n;Xe(e,t);var r=t[We];(0,C.hXl)(r)||(0,C.hXl)(r[je])||(0,C.hXl)(r[je][G])?(0,C.hXl)(t[F])||(0,C.hXl)(t[F][G])||(n=t[F][G],delete t[F][G]):(n=r[je][G],delete r[je][G]);var o,a=t[We];((t.ext||{}).trace||{})[U]&&(o=t.ext.trace[U]);var s=a.id||o,l=a[N],u=a.uri,d=a[je]||{},m=a[j]||{};if((0,C.hXl)(a.refUri)||(d.refUri=a.refUri),(0,C.hXl)(a.pageType)||(d.pageType=a.pageType),(0,C.hXl)(a.isLoggedIn)||(d.isLoggedIn=a.isLoggedIn[V]()),!(0,C.hXl)(a[je])){var h=a[je];(0,C.zav)(h,function(e,t){d[e]=t})}Ve(t[F],d,m),(0,C.hXl)(i)||Je(d,i);var g=new c.h(e,l,u,n,d,m,s),p=new B.B(c.h[z],g);return qe(e,c.h[K],t,p)},et[l.H.dataType]=function(e,t,i){Xe(e,t);var n=t[We],r=n[N],o=n.uri||n.url,a=n[je]||{},s=n[j]||{};Ve(t[F],a,s),(0,C.hXl)(i)||Je(a,i);var c=new l.H(e,r,o,void 0,a,s,n),u=new B.B(l.H[z],c);return qe(e,l.H[K],t,u)},et[u.WJ.dataType]=function(e,t,i){Xe(e,t);var n=t[We][j]||{},r=t[We][je]||{};Ve(t[F],r,n),(0,C.hXl)(i)||Je(r,i);var o=t[We],a=u.WJ.CreateFromInterface(e,o,r,n),s=new B.B(u.WJ[z],a);return qe(e,u.WJ[K],t,s)},et[d.J.dataType]=function(e,t,i){Xe(e,t);var n=t[We],r=n[je]||{},o=n[j]||{};Ve(t[F],r,o),(0,C.hXl)(i)||Je(r,i);var a=new d.J(e,n[N],n.average,n.sampleCount,n.min,n.max,n.stdDev,r,o),s=new B.B(d.J[z],a);return qe(e,d.J[K],t,s)},et[m.A.dataType]=function(e,t,i){Xe(e,t);var n=t[We][j]||{},r=t[We][je]||{};Ve(t[F],r,n),(0,C.hXl)(i)||Je(r,i);var a=t[We];if((0,C.hXl)(a))return(0,w.OG)(e,"Invalid input for dependency data"),null;var s=a[je]&&a[je][o.ym]?a[je][o.ym]:"GET",c=new m.A(e,a.id,a.target,a[N],a[G],a.success,a.responseCode,s,a.type,a.correlationContext,r,n),l=new B.B(m.A[z],c);return qe(e,m.A[K],t,l)},et),pt=function(e){function t(){var i,r,a,s,c,l,u,d=e.call(this)||this;d.priority=1001,d.identifier=h.BreezeChannelIdentifier;var m,v,T,x,M,O,B,G,H,N,U,W,j,z,K,V,J,Z,ee,ae,se,ce,le,Ue,$e,We,je,ze=0;return(0,n.A)(t,d,function(e,n){function h(t,n){var r=dt(t);if(!t||r+""!="200"&&""!==r){var o=(0,I.x)(r);o&&o[Be]&&o[Be]>o[Ge]&&!z?e[Me](n,o):e[xe](n,(0,b.HU)(t))}else i=0,e[Oe](n,0)}function Ke(e,t,i){4===e.readyState&&at(e.status,t,e.responseURL,i,(0,b.r4)(e),dt(e)||e.response)}function Ve(e){try{if(e){var t=e[Le];return t&&t[$]?t:null}}catch(e){}return null}function Je(t,i){return!(U||(t?t.baseData&&!t[He]?(i&&(0,w.ZP)(i,1,70,"Cannot send telemetry without baseData and baseType"),1):(t[He]||(t[He]="EventData"),e[he]?(n=t,e._sample.isSampledIn(n)?(t[o.tU]=e._sample[Fe],0):(i&&(0,w.ZP)(i,2,33,"Telemetry item was sampled out and not sent",{SampleRate:e._sample[Fe]}),1)):(i&&(0,w.ZP)(i,1,28,"Sender was not initialized"),1)):(i&&(0,w.ZP)(i,1,7,"Cannot send empty telemetry"),1)));var n}function qe(e,i){var n=e.iKey||W,r=t.constructEnvelope(e,n,i,j);if(r){var a=!1;if(e[L]&&e[L][o.jp]&&((0,C.Iuo)(e[L][o.jp],function(e){try{e&&!1===e(r)&&(a=!0,(0,w.OG)(i,"Telemetry processor check returns false"))}catch(e){(0,w.ZP)(i,1,64,"One of telemetry initializers failed, telemetry item will not be sent: "+(0,b.lL)(e),{exception:(0,C.mmD)(e)},!0)}}),delete e[L][o.jp]),!a)return r}else(0,w.ZP)(i,1,47,"Unable to create an AppInsights envelope")}function Xe(t){var i="",n=e[de]();try{var r=Je(t,n),o=null;r&&(o=qe(t,n)),o&&(i=c[Te](o))}catch(e){}return i}function Ze(e){var t="";return e&&e[$]&&(t="["+e.join(",")+"]"),t}function Ye(e){var t,i=tt();return(t={urlString:x})[F]=e,t.headers=i,t}function Qe(t,i,n,r){void 0===r&&(r=!0);var o=et(i),a=t&&t.sendPOST;return a&&o?(r&&e._buffer[ne](i),a(o,function(t,n,r){return function(t,i,n,r){200===i&&t?e._onSuccess(t,t[$]):r&&e[xe](t,r)}(i,t,0,r)},!n)):null}function et(t){var i;if((0,C.cyL)(t)&&t[$]>0){var n=e[Re].batchPayloads(t),r=tt();return(i={})[F]=n,i.urlString=x,i.headers=r,i.disableXhrSync=se,i.disableFetchKeepAlive=!ce,i[Le]=t,i}return null}function tt(){try{var e=u||{};return(0,f.Qu)(x)&&(e[y.a[6]]=y.a[7]),e}catch(e){}return null}function nt(t){var i=t?t[$]:0;return e[Re].size()+i>O&&(v&&!v.isOnline()||e[ue](!0,null,10),!0)}function at(t,n,r,o,a,s){var c=null;if(e._appId||(c=(0,I.x)(s))&&c.appId&&(e._appId=c.appId),(t<200||t>=300)&&0!==t){if((301===t||307===t||308===t)&&!st(r))return void e[xe](n,a);if(v&&!v.isOnline())return void(z||(pt(n,10),(0,w.ZP)(e[de](),2,40,". Offline - Response Code: ".concat(t,". Offline status: ").concat(!v.isOnline(),". Will retry to send ").concat(n.length," items."))));!z&&vt(t)?(pt(n),(0,w.ZP)(e[de](),2,40,". Response code "+t+". Will retry to send "+n[$]+" items.")):e[xe](n,a)}else st(r),206===t?(c||(c=(0,I.x)(s)),c&&!z?e[Me](n,c):e[xe](n,a)):(i=0,e[Oe](n,o))}function st(e){return!(l>=10||(0,C.hXl)(e)||""===e||e===x||(x=e,++l,0))}function ct(e,t){if(!m)return Qe(We&&We[Pe]([3],!0),e,t);m(e,!1)}function mt(e){try{if(e&&e[$])return(0,C.KgX)(e[0])}catch(e){}return null}function gt(t,i){var n=null;if((0,C.cyL)(t)){for(var r=t[$],o=0;o-1}function wt(){e[he]=null,e[Re]=null,e._appId=null,e._sample=null,u={},v=null,i=0,r=null,a=!1,s=null,c=null,l=0,ze=0,m=null,T=null,x=null,M=null,O=0,B=!1,N=null,U=!1,W=null,j=ut,z=!1,V=null,Z=ut,se=!1,ce=!1,$e=!1,le=null,Ue=null,We=null,(0,C.vF1)(e,"_senderConfig",{g:function(){return(0,b.CP)({},ht)}})}wt(),e.pause=function(){yt(),a=!0},e.resume=function(){a&&(a=!1,r=null,nt(),ft())},e.flush=function(t,i,n){if(void 0===t&&(t=!0),!a){yt();try{return e[ue](t,null,n||1)}catch(t){(0,w.ZP)(e[de](),1,22,"flush failed, telemetry will not be collected: "+(0,b.lL)(t),{exception:(0,C.mmD)(t)})}}},e.onunloadFlush=function(){if(!a)if(B||ae)try{return e[ue](!0,ct,2)}catch(t){(0,w.ZP)(e[de](),1,20,"failed to flush with beacon sender on page unload, telemetry will not be collected: "+(0,b.lL)(t),{exception:(0,C.mmD)(t)})}else e.flush(!1)},e.addHeader=function(e,t){u[e]=t},e[me]=function(t,o,a,s){e.isInitialized()&&(0,w.ZP)(e[de](),1,28,"Sender is already initialized"),n[me](t,o,a,s);var y=e.identifier;c=new ot(o.logger),i=0,r=null,e[he]=null,l=0;var A=e[de]();T=(0,k.Hm)((0,R.Z)("Sender"),o.evtNamespace&&o.evtNamespace()),v=(0,g.G)(T),e._addHook((0,S.a)(t,function(t){var i=t.cfg;i.storagePrefix&&(0,p.vh)(i.storagePrefix);var n=(0,E.i8)(null,i,o).getExtCfg(y,ht),r=n[ge];if(x&&r===x){var a=i[ge];a&&a!==r&&(n[ge]=a)}(0,C.$XS)(n[pe])&&(n[pe]=i[pe]),(0,C.vF1)(e,"_senderConfig",{g:function(){return n}}),M!==n[ge]&&(x=M=n[ge]),o.activeStatus()===D.f.PENDING?e.pause():o.activeStatus()===D.f.ACTIVE&&e.resume(),N&&N!==n[fe]&&(0,C.Iuo)(N,function(e){delete u[e.header]}),O=n[ye],B=(!1===n[ve]||!1===n[we])&&(0,P.Uf)(),G=!1===n[ve]&&(0,P.Uf)(),H=!1===n[we]&&(0,P.Uf)(),ae=n[be],se=!!n[Ce],je=n.retryCodes;var s=n[oe],c=!!n[ke]&&(!!s||(0,p.AN)()),l=n.namePrefix,g=c!==V||c&&Z!==l||c&&J!==s;if(e[Re]){if(g)try{e._buffer=e._buffer[ie](A,n,c)}catch(t){(0,w.ZP)(e[de](),1,12,"failed to transfer telemetry to different buffer storage, telemetry will be lost: "+(0,b.lL)(t),{exception:(0,C.mmD)(t)})}nt()}else e[Re]=c?new rt(A,n):new it(A,n);Z=l,V=c,J=s,ce=!n[Se]&&(0,P.R7)(!0),$e=!!n[Ee],e._sample=new lt(n.samplingPercentage,A),W=n[pe],(0,C.$XS)(W)||function(e,t){var i=t.disableInstrumentationKeyValidation;return!((0,C.hXl)(i)||!i)||new RegExp("^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$").test(e)}(W,i)||(0,w.ZP)(A,1,100,"Invalid Instrumentation key "+W),N=n[fe],(0,C.KgX)(x)&&!(0,f.Qu)(x)&&N&&N[$]>0?(0,C.Iuo)(N,function(e){d.addHeader(e.header,e.value)}):N=null,ee=n[De];var v=function(){var t;try{var i={xdrOnComplete:function(e,t,i){var n=Ve(i);if(n)return h(e,n)},fetchOnComplete:function(e,t,i,n){var r=Ve(n);if(r)return at(e.status,r,e.url,r[$],e.statusText,i||"")},xhrOnComplete:function(e,t,i){var n=Ve(i);if(n)return Ke(e,n,n[$])},beaconOnRetry:function(t,i,n){return function(t,i,n){var r=t&&t[Le];if($e)Ue&&Ue(r,!0),(0,w.ZP)(e[de](),2,40,". Failed to send telemetry with Beacon API, retried with normal sender.");else{for(var o=[],a=0;a0&&(Ue&&Ue(o,!0),(0,w.ZP)(e[de](),2,40,". Failed to send telemetry with Beacon API, retried with normal sender."))}}(t,i,n)}};return(t={})[De]=ee,t.isOneDs=!1,t.disableCredentials=!1,t[Ce]=se,t.disableBeacon=!H,t.disableBeaconSync=!G,t.senderOnCompleteCallBack=i,t}catch(e){}return null}();We?We.SetConfig(v):(We=new _.v)[me](v,A);var k=n.httpXHROverride,R=null,S=null,I=(0,b.jL)([3,1,2],n.transports);R=We&&We[Pe](I,!1);var T=We&&We.getFallbackInst();le=function(e,t){return Qe(T,e,t)},Ue=function(e,t){return Qe(T,e,t,!1)},R=ae?k:R||k||T,e[he]=function(e,t){return Qe(R,e,t)},ce&&(m=gt);var L=(0,b.jL)([3,1],n[_e]);ce||(L=L.filter(function(e){return 2!==e})),S=We&&We[Pe](L,!0),S=ae?k:S||k,(ae||n[_e]||!m)&&S&&(m=function(e,t){return Qe(S,e,t)}),m||(m=le),U=n.disableTelemetry,j=n[Ae]||ut,z=n.isRetryDisabled,K=n[Ie]}))},e.processTelemetry=function(t,i){var n,r=(i=e._getTelCtx(i))[de]();try{if(!Je(t,r))return;var o=qe(t,r);if(!o)return;var a=c[Te](o),s=e[Re];nt(a);var l=((n={})[Q]=a,n.cnt=0,n);s[q](l),ft()}catch(e){(0,w.ZP)(r,2,12,"Failed adding telemetry to the sender's buffer, some telemetry will be lost: "+(0,b.lL)(e),{exception:(0,C.mmD)(e)})}e.processNext(t,i)},e.isCompletelyIdle=function(){return!a&&0===ze&&0===e._buffer[X]()},e.getOfflineListener=function(){return v},e._xhrReadyStateChange=function(e,t,i){if(!mt(t))return Ke(e,t,i)},e[ue]=function(t,i,n){var r;if(void 0===t&&(t=!0),!a)try{var o=e[Re];if(U)o[te]();else{if(o[X]()>0){var s=o.getItems();!function(t,i){var n,r=(n="getNotifyMgr",e.core[n]?e.core[n]():e.core._notificationManager);if(r&&r[Ne])try{r[Ne](t,i)}catch(t){(0,w.ZP)(e[de](),1,74,"send request notification failed: "+(0,b.lL)(t),{exception:(0,C.mmD)(t)})}}(n||0,t),r=i?i.call(e,s,t):e[he](s,t)}new Date}yt()}catch(t){var c=(0,P.L0)();(!c||c>9)&&(0,w.ZP)(e[de](),1,40,"Telemetry transmission failed, some telemetry will be lost: "+(0,b.lL)(t),{exception:(0,C.mmD)(t)})}return r},e.getOfflineSupport=function(){var e;return(e={getUrl:function(){return x},createPayload:Ye})[Te]=Xe,e.batch=Ze,e.shouldProcess=function(e){return!!Je(e)},e},e._doTeardown=function(t,i){e.onunloadFlush(),(0,A.K)(v,!1),wt()},e[xe]=function(t,i,n){if(!mt(t))return function(t,i){(0,w.ZP)(e[de](),2,26,"Failed to send telemetry.",{message:i}),e._buffer&&e._buffer[re](t)}(t,i)},e[Me]=function(t,i){if(!mt(t))return function(t,i){for(var n=[],r=[],o=0,a=i.errors.reverse();o0&&e[Oe](t,i[Ge]),n[$]>0&&e[xe](n,(0,b.r4)(null,["partial success",i[Ge],"of",i.itemsReceived].join(" "))),r[$]>0&&(pt(r),(0,w.ZP)(e[de](),2,40,"Partial success. Delivered: "+t[$]+", Failed: "+n[$]+". Will retry to send "+r[$]+" our of "+i[Be]+" items"))}(t,i)},e[Oe]=function(t,i){if(!mt(t))return function(t){e._buffer&&e._buffer[re](t)}(t)},e._xdrOnLoad=function(e,t){if(!mt(t))return h(e,t)}}),d}return(0,r.qU)(t,e),t.constructEnvelope=function(e,t,i,n){var o;return o=t===e.iKey||(0,C.hXl)(t)?e:(0,r.Im)((0,r.Im)({},e),{iKey:t}),(gt[o.baseType]||Ye)(i,o,n)},t}(T.s),ft=i(4484),yt=i(2774),vt=i(8205),wt="instrumentationKey",bt="connectionString",Ct="instrumentationkey",kt="endpointUrl",Rt="ingestionendpoint",St="userOverrideEndpointUrl",Et=i(9762),Dt=void 0,Pt=((mt={diagnosticLogInterval:(0,v.Lx)(function(e){return e&&e>0},1e4)})[bt]=Dt,mt[kt]=Dt,mt[wt]=Dt,mt.extensionConfig={},mt),_t=function(){function e(t){var i,r=new yt._;function a(e){e&&(e.baseData=e.baseData||{},e.baseType=e.baseType||"EventData"),r.track(e)}((0,C.hXl)(t)||(0,C.hXl)(t[wt])&&(0,C.hXl)(t[bt]))&&(0,C.$8)("Invalid input configuration"),(0,n.A)(e,this,function(e){function n(){var e=(0,S.e)(t||{},Pt);i=e.cfg,r.addUnloadHook((0,S.a)(e,function(){var e=i[bt];if((0,C.$XS)(e)){var t=(0,vt.Rf)(function(t,n){(0,vt.Dv)(e,function(e){var n=e.value,r=i[wt];!e.rejected&&n&&(i[bt]=n,r=(0,ft.H)(n)[Ct]||r),t(r)})}),n=(0,vt.Rf)(function(t,n){(0,vt.Dv)(e,function(e){var n=e.value,r=i[kt];if(!e.rejected&&n){var a=(0,ft.H)(n)[Rt];r=a?a+o.wc:r}t(r)})});i[wt]=t,i[kt]=i[St]||n}if((0,C.KgX)(e)){var r=(0,ft.H)(e),a=r[Rt];i[kt]=i[St]?i[St]:a+o.wc,i[wt]=r[Ct]||i[wt]}i[kt]=i[St]?i[St]:i[kt]})),r.initialize(i,[new pt])}(0,C.vF1)(e,"config",{g:function(){return i}}),n(),e.initialize=n,e.track=a,(0,b.o$)(e,r,["flush","pollInternalLogs","stopPollingInternalLogs","unload","getPlugin","addPlugin","evtNamespace","addUnloadCb","onCfgChange","getTraceCtx","updateCfg","addTelemetryInitializer"])})}return e.__ieDyn=1,e}()},6066:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReadStreamTokenizer=void 0;const n=i(8632),r=i(8705);class o extends n.AbstractTokenizer{constructor(e,t){super(t),this.streamReader=new r.StreamReader(e)}async getFileInfo(){return this.fileInfo}async readBuffer(e,t){const i=this.normalizeOptions(e,t),n=i.position-this.position;if(n>0)return await this.ignore(n),this.readBuffer(e,t);if(n<0)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");if(0===i.length)return 0;const o=await this.streamReader.read(e,i.offset,i.length);if(this.position+=o,(!t||!t.mayBeLess)&&o0){const r=new Uint8Array(i.length+t);return n=await this.peekBuffer(r,{mayBeLess:i.mayBeLess}),e.set(r.subarray(t),i.offset),n-t}if(t<0)throw new Error("Cannot peek from a negative offset in a stream")}if(i.length>0){try{n=await this.streamReader.peek(e,i.offset,i.length)}catch(e){if(t&&t.mayBeLess&&e instanceof r.EndOfStreamError)return 0;throw e}if(!i.mayBeLess&&n2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0};Object.defineProperty(t,"__esModule",{value:!0}),t.GitTimelineProvider=t.GitTimelineItem=void 0;const o=i(1398),a=i(7681),s=i(4399),c=i(6867),l=i(7937),u=i(8107),d=i(8e3);class m extends o.TimelineItem{static is(e){return e instanceof m}ref;previousRef;message;constructor(e,t,i,n,r,o){const a=i.indexOf("\n");super(-1!==a?`${(0,l.truncate)(i,a,!1)}`:i,n),this.ref=e,this.previousRef=t,this.message=i,this.id=r,this.contextValue=o}get shortRef(){return this.shortenRef(this.ref)}get shortPreviousRef(){return this.shortenRef(this.previousRef)}shortenRef(e){return""===e||"~"===e||"HEAD"===e?e:e.endsWith("^")?`${e.substr(0,8)}^`:e.substr(0,8)}}t.GitTimelineItem=m;let h=(()=>{let e,t=[];return class{static{const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[(0,s.debounce)(500)],r(this,null,e,{kind:"method",name:"fireChanged",static:!1,private:!1,access:{has:e=>"fireChanged"in e,get:e=>e.fireChanged},metadata:i},null,t),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}model=n(this,t);commands;_onDidChange=new o.EventEmitter;get onDidChange(){return this._onDidChange.event}id="git-history";label=o.l10n.t("Git History");disposable;providerDisposable;repo;repoDisposable;repoOperationDate;constructor(e,t){this.model=e,this.commands=t,this.disposable=o.Disposable.from(e.onDidOpenRepository(this.onRepositoriesChanged,this),o.workspace.onDidChangeConfiguration(this.onConfigurationChanged,this)),e.repositories.length&&this.ensureProviderRegistration()}dispose(){this.providerDisposable?.dispose(),this.disposable.dispose()}async provideTimeline(e,t,i){const n=this.model.getRepository(e);if(!n)return this.repoDisposable?.dispose(),this.repoOperationDate=void 0,this.repo=void 0,{items:[]};let r;if(this.repo?.root!==n.root&&(this.repoDisposable?.dispose(),this.repo=n,this.repoOperationDate=new Date,this.repoDisposable=o.Disposable.from(n.onDidChangeRepository(e=>this.onRepositoryChanged(n,e)),n.onDidRunGitStatus(()=>this.onRepositoryStatusChanged(n)),n.onDidRunOperation(e=>this.onRepositoryOperationRun(n,e)))),void 0!==t.limit&&"number"!=typeof t.limit)try{const i=await this.model.git.exec(n.root,["rev-list","--count",`${t.limit.id}..`,"--",e.fsPath]);i.exitCode||(r=Number(i.stdout)+2)}catch{r=void 0}else r=void 0===t.limit?void 0:t.limit+1;await(0,c.ensureEmojis)();const s=await n.logFile(e,{maxEntries:r,hash:t.cursor,follow:!0,shortStats:!0},i),l=s.length?{cursor:void 0===r?void 0:s.length>=r?s[s.length-1]?.hash:void 0}:void 0;void 0!==r&&s.length>=r&&s.splice(s.length-1,1);const h=o.workspace.getConfiguration("git",o.Uri.file(n.root)),g=h.get("timeline.date"),p=h.get("timeline.showAuthor"),f=h.get("timeline.showUncommitted"),y=o.l10n.t("Open Comparison"),v=await n.getEmptyTree(),w=await n.getUnpublishedCommits(),b=await(0,u.provideSourceControlHistoryItemHoverCommands)(this.model,n),C={commits:s.map(e=>({hash:e.hash,authorName:e.authorName,authorEmail:e.authorEmail})),size:20},k=await(0,u.provideSourceControlHistoryItemAvatar)(this.model,n,C),R=[];for(let t=0;tt.resourceUri.fsPath===e.fsPath);if(i){const n=this.repoOperationDate??new Date,r=new m("~","HEAD",o.l10n.t("Staged Changes"),n.getTime(),"index","git:file:index");r.iconPath=new o.ThemeIcon("git-commit"),r.description="",r.tooltip=(0,d.getHistoryItemHover)(void 0,t,void 0,n,a.Resource.getStatusText(i.type),void 0,void 0);const s=this.commands.resolveTimelineOpenDiffCommand(r,e);s&&(r.command={title:y,command:s.command,arguments:s.arguments}),R.splice(0,0,r)}if(f){const r=n.workingTreeGroup.resourceStates.find(t=>t.resourceUri.fsPath===e.fsPath);if(r){const n=new Date,s=new m("",i?"~":"HEAD",o.l10n.t("Uncommitted Changes"),n.getTime(),"working","git:file:working");s.iconPath=new o.ThemeIcon("circle-outline"),s.description="",s.tooltip=(0,d.getHistoryItemHover)(void 0,t,void 0,n,a.Resource.getStatusText(r.type),void 0,void 0);const c=this.commands.resolveTimelineOpenDiffCommand(s,e);c&&(s.command={title:y,command:c.command,arguments:c.arguments}),R.splice(0,0,s)}}}return{items:R,paging:l}}ensureProviderRegistration(){void 0===this.providerDisposable&&(this.providerDisposable=o.workspace.registerTimelineProvider(["file","git","vscode-remote","vscode-local-history"],this))}onConfigurationChanged(e){(e.affectsConfiguration("git.timeline.date")||e.affectsConfiguration("git.timeline.showAuthor")||e.affectsConfiguration("git.timeline.showUncommitted"))&&this.fireChanged()}onRepositoriesChanged(e){this.ensureProviderRegistration(),this.fireChanged()}onRepositoryChanged(e,t){this.fireChanged()}onRepositoryStatusChanged(e){!0===o.workspace.getConfiguration("git.timeline").get("showUncommitted")&&this.fireChanged()}onRepositoryOperationRun(e,t){t.error||t.operation.readOnly||"Status"===t.operation.kind||(this.repoOperationDate=new Date,this.fireChanged())}fireChanged(){this._onDidChange.fire(void 0)}}})();t.GitTimelineProvider=h},6149:(e,t,i)=>{"use strict";i.d(t,{Ds:()=>$,El:()=>P,Fc:()=>W,Hm:()=>T,ML:()=>M,Q3:()=>O,So:()=>G,Wg:()=>N,Ym:()=>B,ee:()=>U,lQ:()=>F,mB:()=>x,oS:()=>z,sq:()=>j,vF:()=>K,zh:()=>L});var n=i(269),r=i(6182),o=i(4276),a=i(6492),s="on",c="attachEvent",l="addEventListener",u="detachEvent",d="removeEventListener",m="events",h="visibilitychange",g="pagehide",p="pageshow",f="unload",y="beforeunload",v=(0,o.Z)("aiEvtPageHide"),w=(0,o.Z)("aiEvtPageShow"),b=/\.[\.]+/g,C=/[\.]+$/,k=1,R=(0,o.T)("events"),S=/^([^.]*)(?:\.(.+)|)/;function E(e){return e&&e[r.W7]?e[r.W7](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g,a.m5):e}function D(e,t){var i;if(t){var o=a.m5;(0,n.cyL)(t)?(o=a.m5,(0,n.Iuo)(t,function(e){(e=E(e))&&("."!==e[0]&&(e="."+e),o+=e)})):o=E(t),o&&("."!==o[0]&&(o="."+o),e=(e||a.m5)+o)}var s=S.exec(e||a.m5)||[];return(i={})[r.QM]=s[1],i.ns=(s[2]||a.m5).replace(b,".").replace(C,a.m5)[r.sY](".").sort().join("."),i}function P(e,t,i){var o=[],s=R.get(e,m,{},!1),c=D(t,i);return(0,n.zav)(s,function(e,t){(0,n.Iuo)(t,function(e){var t;c[r.QM]&&c[r.QM]!==e.evtName[r.QM]||c.ns&&c.ns!=c.ns||o[r.y5](((t={})[r.RS]=e.evtName[r.QM]+(e.evtName.ns?"."+e.evtName.ns:a.m5),t.handler=e[r.Yo],t))})}),o}function _(e,t,i){void 0===i&&(i=!0);var n=R.get(e,m,{},i),r=n[t];return r||(r=n[t]=[]),r}function A(e,t,i,n){e&&t&&t[r.QM]&&(e[d]?e[d](t[r.QM],i,n):e[u]&&e[u](s+t[r.QM],i))}function I(e,t,i,n){for(var o=t[r.oI];o--;){var a=t[o];a&&(i.ns&&i.ns!==a.evtName.ns||n&&!n(a)||(A(e,a.evtName,a[r.Yo],a.capture),t[r.Ic](o,1)))}}function T(e,t){return t?D("xx",(0,n.cyL)(t)?[e].concat(t):[e,t]).ns[r.sY]("."):e}function x(e,t,i,n,o){var a;void 0===o&&(o=!1);var u=!1;if(e)try{var d=D(t,n);if(u=function(e,t,i,n){var o=!1;return e&&t&&t[r.QM]&&i&&(e[l]?(e[l](t[r.QM],i,n),o=!0):e[c]&&(e[c](s+t[r.QM],i),o=!0)),o}(e,d,i,o),u&&R.accept(e)){var m=((a={guid:k++,evtName:d})[r.Yo]=i,a.capture=o,a);_(e,d.type)[r.y5](m)}}catch(e){}return u}function M(e,t,i,o,a){if(void 0===a&&(a=!1),e)try{var s=D(t,o),c=!1;!function(e,t,i){if(t[r.QM])I(e,_(e,t[r.QM]),t,i);else{var o=R.get(e,m,{});(0,n.zav)(o,function(n,r){I(e,r,t,i)}),0===(0,n.cGk)(o)[r.oI]&&R.kill(e,m)}}(e,s,function(e){return!((!s.ns||i)&&e[r.Yo]!==i||(c=!0,0))}),c||A(e,s,i,a)}catch(e){}}function O(e,t,i,n){return void 0===n&&(n=!1),x(e,t,i,null,n)}function B(e,t,i,n){void 0===n&&(n=!1),M(e,t,i,null,n)}function G(e,t,i){var r=!1,o=(0,n.zkX)();o&&(r=x(o,e,t,i),r=x(o.body,e,t,i)||r);var a=(0,n.YEm)();return a&&(r=x(a,e,t,i)||r),r}function L(e,t,i){var r=(0,n.zkX)();r&&(M(r,e,t,i),M(r.body,e,t,i));var o=(0,n.YEm)();o&&M(o,e,t,i)}function H(e,t,i,o){var a=!1;return t&&e&&e[r.oI]>0&&(0,n.Iuo)(e,function(e){e&&(i&&-1!==(0,n.rDm)(i,e)||(a=G(e,t,o)||a))}),a}function F(e,t,i,o){var a=!1;return t&&e&&(0,n.cyL)(e)&&!(a=H(e,t,i,o))&&i&&i[r.oI]>0&&(a=H(e,t,null,o)),a}function N(e,t,i){e&&(0,n.cyL)(e)&&(0,n.Iuo)(e,function(e){e&&L(e,t,i)})}function U(e,t,i){return F([y,f,g],e,t,i)}function $(e,t){N([y,f,g],e,t)}function W(e,t,i){var r=T(v,i),o=H([g],e,t,r);return t&&-1!==(0,n.rDm)(t,h)||(o=H([h],function(t){var i=(0,n.YEm)();e&&i&&"hidden"===i.visibilityState&&e(t)},t,r)||o),!o&&t&&(o=W(e,null,i)),o}function j(e,t){var i=T(v,t);N([g],e,i),N([h],null,i)}function z(e,t,i){var r=T(w,i),o=H([p],e,t,r);return!(o=H([h],function(t){var i=(0,n.YEm)();e&&i&&"visible"===i.visibilityState&&e(t)},t,r)||o)&&t&&(o=z(e,null,i)),o}function K(e,t){var i=T(w,t);N([p],e,i),N([h],null,i)}},6182:(e,t,i)=>{"use strict";i.d(t,{$5:()=>T,$o:()=>N,AP:()=>P,Az:()=>oe,Bl:()=>F,Cd:()=>ce,DI:()=>x,Di:()=>B,FI:()=>A,HC:()=>V,Ic:()=>p,Ik:()=>U,JQ:()=>r,JR:()=>$,Ju:()=>w,K0:()=>f,L:()=>ge,M5:()=>G,NA:()=>Ce,OL:()=>n,O_:()=>le,P5:()=>ve,QM:()=>ie,Qg:()=>X,RF:()=>D,RS:()=>_,Rr:()=>be,Ru:()=>de,Uw:()=>m,Vq:()=>he,W7:()=>ee,XM:()=>O,XW:()=>a,YH:()=>q,Yo:()=>ne,Yq:()=>S,Zu:()=>se,_w:()=>y,by:()=>L,c1:()=>pe,cV:()=>re,cp:()=>me,do:()=>fe,e4:()=>z,e_:()=>ue,fA:()=>I,h0:()=>u,h3:()=>b,h4:()=>M,ih:()=>l,mE:()=>v,oI:()=>o,on:()=>c,pF:()=>E,pM:()=>W,re:()=>Q,s:()=>H,sY:()=>Y,sl:()=>R,sx:()=>te,tI:()=>j,tX:()=>Z,tZ:()=>k,tn:()=>K,uR:()=>J,vR:()=>C,wJ:()=>ae,wi:()=>we,x6:()=>d,y5:()=>g,y9:()=>h,yy:()=>ye,zs:()=>s});var n="toLowerCase",r="blkVal",o="length",a="rdOnly",s="notify",c="warnToConsole",l="throwInternal",u="setDf",d="watch",m="logger",h="apply",g="push",p="splice",f="hdlr",y="cancel",v="initialize",w="identifier",b="removeNotificationListener",C="addNotificationListener",k="isInitialized",R="instrumentationKey",S="INACTIVE",E="value",D="getNotifyMgr",P="getPlugin",_="name",A="iKey",I="time",T="processNext",x="getProcessTelContext",M="pollInternalLogs",O="enabled",B="stopPollingInternalLogs",G="unload",L="onComplete",H="version",F="loggingLevelConsole",N="createNew",U="teardown",$="messageId",W="message",j="isAsync",z="diagLog",K="_doTeardown",V="update",J="getNext",q="setNextPlugin",X="protocol",Z="userAgent",Y="split",Q="nodeType",ee="replace",te="logInternalMessage",ie="type",ne="handler",re="status",oe="getResponseHeader",ae="getAllResponseHeaders",se="isChildEvt",ce="data",le="getCtx",ue="setCtx",de="complete",me="itemsReceived",he="urlString",ge="sendPOST",pe="headers",fe="timeout",ye="setRequestHeader",ve="traceId",we="spanId",be="traceFlags",Ce="getAttribute"},6199:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiImpl=t.ApiGit=t.ApiRepository=t.ApiRepositoryUIState=t.ApiRepositoryState=t.ApiChange=void 0,t.registerAPICommands=function(e){const t=[];return t.push(n.commands.registerCommand("git.api.getRepositories",()=>e.getAPI(1).repositories.map(e=>e.rootUri.toString()))),t.push(n.commands.registerCommand("git.api.getRepositoryState",t=>{const i=e.getAPI(1).getRepository(n.Uri.parse(t));if(!i)return null;const r=i.state,o=e=>e&&{...e,type:h(e.type)},a=e=>({uri:e.uri.toString(),originalUri:e.originalUri.toString(),renameUri:e.renameUri?.toString(),status:g(e.status)});return{HEAD:o(r.HEAD),refs:r.refs.map(o),remotes:r.remotes,submodules:r.submodules,rebaseCommit:r.rebaseCommit,mergeChanges:r.mergeChanges.map(a),indexChanges:r.indexChanges.map(a),workingTreeChanges:r.workingTreeChanges.map(a)}})),t.push(n.commands.registerCommand("git.api.getRemoteSources",e=>n.commands.executeCommand("git-base.api.getRemoteSources",e))),n.Disposable.from(...t)};const n=i(1398),r=i(7937),o=i(4847),a=i(8623);class s{#e;constructor(e){this.#e=e}set value(e){this.#e.value=e}get value(){return this.#e.value}}class c{#t;constructor(e){this.#t=e}get uri(){return this.#t.resourceUri}get originalUri(){return this.#t.original}get renameUri(){return this.#t.renameResourceUri}get status(){return this.#t.type}}t.ApiChange=c;class l{#i;onDidChange;constructor(e){this.#i=e,this.onDidChange=this.#i.onDidRunGitStatus}get HEAD(){return this.#i.HEAD}get refs(){return console.warn("Deprecated. Use ApiRepository.getRefs() instead."),[]}get remotes(){return[...this.#i.remotes]}get submodules(){return[...this.#i.submodules]}get rebaseCommit(){return this.#i.rebaseCommit}get mergeChanges(){return this.#i.mergeGroup.resourceStates.map(e=>new c(e))}get indexChanges(){return this.#i.indexGroup.resourceStates.map(e=>new c(e))}get workingTreeChanges(){return this.#i.workingTreeGroup.resourceStates.map(e=>new c(e))}get untrackedChanges(){return this.#i.untrackedGroup.resourceStates.map(e=>new c(e))}}t.ApiRepositoryState=l;class u{#n;onDidChange;constructor(e){this.#n=e,this.onDidChange=(0,r.mapEvent)(this.#n.onDidChangeSelection,()=>null)}get selected(){return this.#n.selected}}t.ApiRepositoryUIState=u;class d{#i;rootUri;inputBox;state;ui;onDidCommit;onDidCheckout;constructor(e){this.#i=e,this.rootUri=n.Uri.file(this.#i.root),this.inputBox=new s(this.#i.inputBox),this.state=new l(this.#i),this.ui=new u(this.#i.sourceControl),this.onDidCommit=(0,r.mapEvent)((0,r.filterEvent)(this.#i.onDidRunOperation,e=>"Commit"===e.operation.kind),()=>null),this.onDidCheckout=(0,r.mapEvent)((0,r.filterEvent)(this.#i.onDidRunOperation,e=>"Checkout"===e.operation.kind||"CheckoutTracking"===e.operation.kind),()=>null)}apply(e,t){return this.#i.apply(e,t)}getConfigs(){return this.#i.getConfigs()}getConfig(e){return this.#i.getConfig(e)}setConfig(e,t){return this.#i.setConfig(e,t)}unsetConfig(e){return this.#i.unsetConfig(e)}getGlobalConfig(e){return this.#i.getGlobalConfig(e)}getObjectDetails(e,t){return this.#i.getObjectDetails(e,t)}detectObjectType(e){return this.#i.detectObjectType(e)}buffer(e,t){return this.#i.buffer(e,t)}show(e,t){return this.#i.show(e,t)}getCommit(e){return this.#i.getCommit(e)}add(e){return this.#i.add(e.map(e=>n.Uri.file(e)))}revert(e){return this.#i.revert(e.map(e=>n.Uri.file(e)))}clean(e){return this.#i.clean(e.map(e=>n.Uri.file(e)))}diff(e){return this.#i.diff(e)}diffWithHEAD(e){return this.#i.diffWithHEAD(e)}diffWith(e,t){return this.#i.diffWith(e,t)}diffIndexWithHEAD(e){return this.#i.diffIndexWithHEAD(e)}diffIndexWith(e,t){return this.#i.diffIndexWith(e,t)}diffBlobs(e,t){return this.#i.diffBlobs(e,t)}diffBetween(e,t,i){return this.#i.diffBetween(e,t,i)}hashObject(e){return this.#i.hashObject(e)}createBranch(e,t,i){return this.#i.branch(e,t,i)}deleteBranch(e,t){return this.#i.deleteBranch(e,t)}getBranch(e){return this.#i.getBranch(e)}getBranches(e,t){return this.#i.getBranches(e,t)}getBranchBase(e){return this.#i.getBranchBase(e)}setBranchUpstream(e,t){return this.#i.setBranchUpstream(e,t)}getRefs(e,t){return this.#i.getRefs(e,t)}checkIgnore(e){return this.#i.checkIgnore(e)}getMergeBase(e,t){return this.#i.getMergeBase(e,t)}tag(e,t,i){return this.#i.tag({name:e,message:t,ref:i})}deleteTag(e){return this.#i.deleteTag(e)}status(){return this.#i.status()}checkout(e){return this.#i.checkout(e)}addRemote(e,t){return this.#i.addRemote(e,t)}removeRemote(e){return this.#i.removeRemote(e)}renameRemote(e,t){return this.#i.renameRemote(e,t)}fetch(e,t,i,n){return void 0!==e&&"string"!=typeof e?this.#i.fetch(e):this.#i.fetch({remote:e,ref:t,depth:i,prune:n})}pull(e){return this.#i.pull(void 0,e)}push(e,t,i=!1,n){return this.#i.pushTo(e,t,i,n)}blame(e){return this.#i.blame(e)}log(e){return this.#i.log(e)}commit(e,t){return this.#i.commit(e,{...t,postCommitCommand:null})}merge(e){return this.#i.merge(e)}mergeAbort(){return this.#i.mergeAbort()}applyStash(e){return this.#i.applyStash(e)}popStash(e){return this.#i.popStash(e)}dropStash(e){return this.#i.dropStash(e)}}t.ApiRepository=d;class m{#r;_env;constructor(e){this.#r=e}get path(){return this.#r.git.path}get env(){return void 0===this._env&&(this._env=Object.freeze(this.#r.git.env)),this._env}}function h(e){switch(e){case 0:return"Head";case 1:return"RemoteHead";case 2:return"Tag"}return"unknown"}function g(e){switch(e){case 0:return"INDEX_MODIFIED";case 1:return"INDEX_ADDED";case 2:return"INDEX_DELETED";case 3:return"INDEX_RENAMED";case 4:return"INDEX_COPIED";case 5:return"MODIFIED";case 6:return"DELETED";case 7:return"UNTRACKED";case 8:return"IGNORED";case 9:return"INTENT_TO_ADD";case 10:return"INTENT_TO_RENAME";case 11:return"TYPE_CHANGED";case 12:return"ADDED_BY_US";case 13:return"ADDED_BY_THEM";case 14:return"DELETED_BY_US";case 15:return"DELETED_BY_THEM";case 16:return"BOTH_ADDED";case 17:return"BOTH_DELETED";case 18:return"BOTH_MODIFIED"}return"UNKNOWN"}t.ApiGit=m,t.ApiImpl=class{#r;#o;git;constructor(e){this.#r=e.model,this.#o=e.cloneManager,this.git=new m(this.#r)}get state(){return this.#r.state}get onDidChangeState(){return this.#r.onDidChangeState}get onDidPublish(){return this.#r.onDidPublish}get onDidOpenRepository(){return(0,r.mapEvent)(this.#r.onDidOpenRepository,e=>new d(e))}get onDidCloseRepository(){return(0,r.mapEvent)(this.#r.onDidCloseRepository,e=>new d(e))}get repositories(){return this.#r.repositories.map(e=>new d(e))}toGitUri(e,t){return(0,o.toGitUri)(e,t)}getRepository(e){const t=this.#r.getRepository(e);return t?new d(t):null}async getRepositoryRoot(e){const t=this.getRepository(e);if(t)return t.rootUri;try{const t=await this.#r.git.getRepositoryRoot(e.fsPath);return n.Uri.file(t)}catch(e){if("NotAGitRepository"===e.gitErrorCode||"NotASafeGitRepository"===e.gitErrorCode)return null;throw e}}async getRepositoryWorkspace(e){const t=this.#r.repositoryCache.get(e.toString());return t?t.map(e=>n.Uri.file(e.workspacePath)):null}async init(e,t){const i=e.fsPath;return await this.#r.git.init(i,t),await this.#r.openRepository(i),this.getRepository(e)||null}async clone(e,t){const i=t?.parentPath?.fsPath,r=await this.#o.clone(e.toString(),{parentPath:i,recursive:t?.recursive,ref:t?.ref,postCloneAction:t?.postCloneAction});return r?n.Uri.file(r):null}async openRepository(e){return"file"!==e.scheme?null:(await this.#r.openRepository(e.fsPath),this.getRepository(e)||null)}registerRemoteSourceProvider(e){const t=[];return e.publishRepository&&t.push(this.#r.registerRemoteSourcePublisher(e)),t.push(a.GitBaseApi.getAPI().registerRemoteSourceProvider(e)),(0,r.combinedDisposable)(t)}registerRemoteSourcePublisher(e){return this.#r.registerRemoteSourcePublisher(e)}registerCredentialsProvider(e){return this.#r.registerCredentialsProvider(e)}registerPostCommitCommandsProvider(e){return this.#r.registerPostCommitCommandsProvider(e)}registerPushErrorHandler(e){return this.#r.registerPushErrorHandler(e)}registerSourceControlHistoryItemDetailsProvider(e){return this.#r.registerSourceControlHistoryItemDetailsProvider(e)}registerBranchProtectionProvider(e,t){return this.#r.registerBranchProtectionProvider(e,t)}}},6326:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.watch=function(e){const t=n.workspace.createFileSystemWatcher(new n.RelativePattern(e,"*"));return new class{event=(0,r.anyEvent)(t.onDidCreate,t.onDidChange,t.onDidDelete);dispose(){t.dispose()}}};const n=i(1398),r=i(7937)},6333:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalShellExecutionManager=t.TerminalEnvironmentManager=void 0;const n=i(1398),r=i(7937);t.TerminalEnvironmentManager=class{context;envProviders;disposable;constructor(e,t){this.context=e,this.envProviders=t,this.disposable=(0,r.filterEvent)(n.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git"))(this.refresh,this),this.refresh()}refresh(){const e=n.workspace.getConfiguration("git",null);if(this.context.environmentVariableCollection.clear(),!e.get("enabled",!0))return;const t=[];for(const e of this.envProviders){const i=e?.getTerminalEnv()??{};for(const e of Object.keys(i))this.context.environmentVariableCollection.replace(e,i[e]);e?.featureDescription&&Object.keys(i).length>0&&t.push(e.featureDescription)}t.length&&(this.context.environmentVariableCollection.description=n.l10n.t("Enables the following features: {0}",t.join(", ")))}dispose(){this.disposable.dispose()}},t.TerminalShellExecutionManager=class{model;logger;subcommands=new Set(["add","branch","checkout","cherry-pick","clean","commit","fetch","merge","mv","rebase","reset","restore","revert","rm","pull","push","stash","switch"]);disposables=[];constructor(e,t){this.model=e,this.logger=t,n.window.onDidEndTerminalShellExecution(this.onDidEndTerminalShellExecution,this,this.disposables)}onDidEndTerminalShellExecution(e){const{execution:t,exitCode:i,shellIntegration:n}=e,[r,o]=t.commandLine.value.split(/\s+/),a=t.cwd??n.cwd;if("git"!==r.toLowerCase()||!this.subcommands.has(o?.toLowerCase())||!a||0!==i)return;this.logger.trace(`[TerminalShellExecutionManager][onDidEndTerminalShellExecution] Matched git subcommand: ${o}`);const s=this.model.getRepository(a);s?s.status():this.logger.trace(`[TerminalShellExecutionManager][onDidEndTerminalShellExecution] Unable to find repository for current working directory: ${a.toString()}`)}dispose(){(0,r.dispose)(this.disposables)}}},6452:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromBuffer=t.fromStream=t.EndOfStreamError=void 0;const n=i(6066),r=i(3492);var o=i(8705);Object.defineProperty(t,"EndOfStreamError",{enumerable:!0,get:function(){return o.EndOfStreamError}}),t.fromStream=function(e,t){return t=t||{},new n.ReadStreamTokenizer(e,t)},t.fromBuffer=function(e,t){return new r.BufferTokenizer(e,t)}},6492:(e,t,i)=>{"use strict";i.d(t,{Bw:()=>l,Ev:()=>w,Fk:()=>C,HP:()=>n,Hr:()=>c,LZ:()=>o,QW:()=>k,Vj:()=>v,Vo:()=>m,Yd:()=>s,Yp:()=>g,dI:()=>p,eT:()=>a,fc:()=>h,jy:()=>u,kI:()=>b,l0:()=>f,m5:()=>r,qT:()=>d,s4:()=>y,xW:()=>R});var n=void 0,r="",o="channels",a="core",s="createPerfMgr",c="disabled",l="extensionConfig",u="extensions",d="processTelemetry",m="priority",h="eventsSent",g="eventsDiscarded",p="eventsSendRequest",f="perfEvent",y="offlineEventsStored",v="offlineBatchSent",w="offlineBatchDrop",b="getPerfMgr",C="domain",k="path",R="Not dynamic - "},6535:(e,t,i)=>{"use strict";i.d(t,{Si:()=>y,VN:()=>f,Z1:()=>p});var n=i(269),r=i(6182),o=i(7292),a=i(6492),s=4294967296,c=4294967295,l=123456789,u=987654321,d=!1,m=l,h=u;function g(){try{var e=2147483647&(0,n.f0d)();(t=(Math.random()*s^e)+e)<0&&(t>>>=0),m=l+t&c,h=u-t&c,d=!0}catch(e){}var t}function p(e){return e>0?Math.floor(f()/c*(e+1))>>>0:0}function f(e){var t=0,i=(0,o.MY)()||(0,o.iN)();return i&&i.getRandomValues&&(t=i.getRandomValues(new Uint32Array(1))[0]&c),0===t&&(0,o.lT)()&&(d||g(),t=function(){var e=((h=36969*(65535&h)+(h>>16)&c)<<16)+(65535&(m=18e3*(65535&m)+(m>>16)&c))>>>0&c;return e>>>=0}()&c),0===t&&(t=Math.floor(s*Math.random()|0)),e||(t>>>=0),t}function y(e){void 0===e&&(e=22);for(var t=f()>>>0,i=0,n=a.m5;n[r.oI]>>=6,5===i&&(t=(f()<<2&4294967295|3&t)>>>0,i=0);return n}},6548:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseTelemetryReporter=void 0,t.BaseTelemetryReporter=class{constructor(e,t,i){this.telemetrySender=e,this.vscodeAPI=t,this.userOptIn=!1,this.errorOptIn=!1,this.disposables=[],this._onDidChangeTelemetryLevel=new this.vscodeAPI.EventEmitter,this.onDidChangeTelemetryLevel=this._onDidChangeTelemetryLevel.event,this.telemetryLogger=this.vscodeAPI.env.createTelemetryLogger(this.telemetrySender,i),this.updateUserOptIn(),this.telemetryLogger.onDidChangeEnableStates(()=>{this.updateUserOptIn()})}updateUserOptIn(){this.errorOptIn=this.telemetryLogger.isErrorsEnabled,this.userOptIn=this.telemetryLogger.isUsageEnabled,(this.telemetryLogger.isErrorsEnabled||this.telemetryLogger.isUsageEnabled)&&this.telemetrySender.instantiateSender(),this._onDidChangeTelemetryLevel.fire(this.telemetryLevel)}get telemetryLevel(){return this.errorOptIn&&this.userOptIn?"all":this.errorOptIn?"error":"off"}internalSendTelemetryEvent(e,t,i,n){n?this.telemetrySender.sendEventData(e,{properties:t,measurements:i}):this.telemetryLogger.logUsage(e,{properties:t,measurements:i})}sendTelemetryEvent(e,t,i){this.internalSendTelemetryEvent(e,t,i,!1)}sendRawTelemetryEvent(e,t,i){const n={...t};for(const e of Object.keys(n??{})){const t=n[e];"string"==typeof e&&void 0!==t&&(n[e]=new this.vscodeAPI.TelemetryTrustedValue("string"==typeof t?t:t.value))}this.sendTelemetryEvent(e,n,i)}sendDangerousTelemetryEvent(e,t,i){this.telemetrySender.instantiateSender(),this.internalSendTelemetryEvent(e,t,i,!0)}internalSendTelemetryErrorEvent(e,t,i,n){n?this.telemetrySender.sendEventData(e,{properties:t,measurements:i}):this.telemetryLogger.logError(e,{properties:t,measurements:i})}sendTelemetryErrorEvent(e,t,i){this.internalSendTelemetryErrorEvent(e,t,i,!1)}sendDangerousTelemetryErrorEvent(e,t,i){this.telemetrySender.instantiateSender(),this.internalSendTelemetryErrorEvent(e,t,i,!0)}async dispose(){return await this.telemetrySender.dispose(),this.telemetryLogger.dispose(),Promise.all(this.disposables.map(e=>e.dispose()))}}},6675:(e,t,i)=>{"use strict";const n=i(6928),r=i(2608),o=i(1154),a=i(280),s=i(3940),c=(e,t,i=!1)=>{if(Array.isArray(e)){const n=e.map(e=>c(e,t,i)),r=e=>{for(const t of n){const i=t(e);if(i)return i}return!1};return r}const n=(r=e)&&"object"==typeof r&&!Array.isArray(r)&&e.tokens&&e.input;var r;if(""===e||"string"!=typeof e&&!n)throw new TypeError("Expected pattern to be a non-empty string");const o=t||{},s=a.isWindows(t),l=n?c.compileRe(e,t):c.makeRe(e,t,!1,!0),u=l.state;delete l.state;let d=()=>!1;if(o.ignore){const e={...t,ignore:null,onMatch:null,onResult:null};d=c(o.ignore,e,i)}const m=(i,n=!1)=>{const{isMatch:r,match:a,output:m}=c.test(i,l,t,{glob:e,posix:s}),h={glob:e,state:u,regex:l,posix:s,input:i,output:m,match:a,isMatch:r};return"function"==typeof o.onResult&&o.onResult(h),!1===r?(h.isMatch=!1,!!n&&h):d(i)?("function"==typeof o.onIgnore&&o.onIgnore(h),h.isMatch=!1,!!n&&h):("function"==typeof o.onMatch&&o.onMatch(h),!n||h)};return i&&(m.state=u),m};c.test=(e,t,i,{glob:n,posix:r}={})=>{if("string"!=typeof e)throw new TypeError("Expected input to be a string");if(""===e)return{isMatch:!1,output:""};const o=i||{},s=o.format||(r?a.toPosixSlashes:null);let l=e===n,u=l&&s?s(e):e;return!1===l&&(u=s?s(e):e,l=u===n),!1!==l&&!0!==o.capture||(l=!0===o.matchBase||!0===o.basename?c.matchBase(e,t,i,r):t.exec(u)),{isMatch:Boolean(l),match:l,output:u}},c.matchBase=(e,t,i,r=a.isWindows(i))=>(t instanceof RegExp?t:c.makeRe(t,i)).test(n.basename(e)),c.isMatch=(e,t,i)=>c(t,i)(e),c.parse=(e,t)=>Array.isArray(e)?e.map(e=>c.parse(e,t)):o(e,{...t,fastpaths:!1}),c.scan=(e,t)=>r(e,t),c.compileRe=(e,t,i=!1,n=!1)=>{if(!0===i)return e.output;const r=t||{},o=r.contains?"":"^",a=r.contains?"":"$";let s=`${o}(?:${e.output})${a}`;e&&!0===e.negated&&(s=`^(?!${s}).*$`);const l=c.toRegex(s,t);return!0===n&&(l.state=e),l},c.makeRe=(e,t={},i=!1,n=!1)=>{if(!e||"string"!=typeof e)throw new TypeError("Expected a non-empty string");let r={negated:!1,fastpaths:!0};return!1===t.fastpaths||"."!==e[0]&&"*"!==e[0]||(r.output=o.fastpaths(e,t)),r.output||(r=o(e,t)),c.compileRe(r,t,i,n)},c.toRegex=(e,t)=>{try{const i=t||{};return new RegExp(e,i.flags||(i.nocase?"i":""))}catch(e){if(t&&!0===t.debug)throw e;return/$^/}},c.constants=s,e.exports=c},6760:(e,t)=>{"use strict";t.stringToBytes=e=>[...e].map(e=>e.charCodeAt(0)),t.tarHeaderChecksumMatches=(e,t=0)=>{const i=parseInt(e.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(isNaN(i))return!1;let n=256;for(let i=t;i127&e[t+3]|e[t+2]<<7|e[t+1]<<14|e[t]<<21,len:4}},6867:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ensureEmojis=async function(){void 0===s&&(void 0===c&&(c=async function(){const e=(0,r.getExtensionContext)(),t=n.Uri.joinPath(e.extensionUri,"resources","emojis.json");s=JSON.parse(new o.TextDecoder("utf8").decode(await n.workspace.fs.readFile(t)))}()),await c)},t.emojify=function(e){return void 0===s?e:e.replace(a,(e,t)=>s?.[t]||e)};const n=i(1398),r=i(1184),o=i(9023),a=/:([-+_a-z0-9]+):/g;let s,c},6928:e=>{"use strict";e.exports=require("path")},6982:e=>{"use strict";e.exports=require("crypto")},7016:e=>{"use strict";e.exports=require("url")},7242:(e,t,i)=>{const{isexe:n,sync:r}=i(842),{join:o,delimiter:a,sep:s,posix:c}=i(6928),l="win32"===process.platform,u=new RegExp(`[${c.sep}${s===c.sep?"":s}]`.replace(/(\\)/g,"\\$1")),d=new RegExp(`^\\.${u.source}`),m=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),h=(e,{path:t=process.env.PATH,pathExt:i=process.env.PATHEXT,delimiter:n=a})=>{const r=e.match(u)?[""]:[...l?[process.cwd()]:[],...(t||"").split(n)];if(l){const t=i||[".EXE",".CMD",".BAT",".COM"].join(n),o=t.split(n).flatMap(e=>[e,e.toLowerCase()]);return e.includes(".")&&""!==o[0]&&o.unshift(""),{pathEnv:r,pathExt:o,pathExtExe:t}}return{pathEnv:r,pathExt:[""]}},g=(e,t)=>{const i=/^".*"$/.test(e)?e.slice(1,-1):e;return(!i&&d.test(t)?t.slice(0,2):"")+o(i,t)},p=async(e,t={})=>{const{pathEnv:i,pathExt:r,pathExtExe:o}=h(e,t),a=[];for(const s of i){const i=g(s,e);for(const e of r){const r=i+e;if(await n(r,{pathExt:o,ignoreErrors:!0})){if(!t.all)return r;a.push(r)}}}if(t.all&&a.length)return a;if(t.nothrow)return null;throw m(e)};e.exports=p,p.sync=(e,t={})=>{const{pathEnv:i,pathExt:n,pathExtExe:o}=h(e,t),a=[];for(const s of i){const i=g(s,e);for(const e of n){const n=i+e;if(r(n,{pathExt:o,ignoreErrors:!0})){if(!t.all)return n;a.push(n)}}}if(t.all&&a.length)return a;if(t.nothrow)return null;throw m(e)}},7292:(e,t,i)=>{"use strict";i.d(t,{$Z:()=>F,Iu:()=>N,L0:()=>M,MY:()=>A,PV:()=>G,R7:()=>B,U5:()=>D,Uf:()=>O,Z:()=>P,cU:()=>S,g$:()=>E,hm:()=>_,iN:()=>I,lT:()=>x,lV:()=>T,xk:()=>L});var n=i(5664),r=i(269),o=i(6182),a=i(3673),s=i(6492),c="documentMode",l="location",u="console",d="JSON",m="crypto",h="msCrypto",g="ReactNative",p="msie",f="trident/",y="XMLHttpRequest",v=null,w=null,b=!1,C=null,k=null;function R(e,t){var i=!1;if(e){try{if(!(i=t in e)){var o=e[n.vR];o&&(i=t in o)}}catch(e){}if(!i)try{var a=new e;i=!(0,r.b07)(a[t])}catch(e){}}return i}function S(e){b=e}function E(e){if(e&&b){var t=(0,r.zS2)("__mockLocation");if(t)return t}return typeof location===n._1&&location?location:(0,r.zS2)(l)}function D(){return typeof console!==n.bA?console:(0,r.zS2)(u)}function P(){return Boolean(typeof JSON===n._1&&JSON||null!==(0,r.zS2)(d))}function _(){return P()?JSON||(0,r.zS2)(d):null}function A(){return(0,r.zS2)(m)}function I(){return(0,r.zS2)(h)}function T(){var e=(0,r.w3n)();return!(!e||!e.product)&&e.product===g}function x(){var e=(0,r.w3n)();if(e&&(e[o.tX]!==w||null===v)){var t=((w=e[o.tX])||s.m5)[o.OL]();v=(0,a.Ju)(t,p)||(0,a.Ju)(t,f)}return v}function M(e){if(void 0===e&&(e=null),!e){var t=(0,r.w3n)()||{};e=t?(t.userAgent||s.m5)[o.OL]():s.m5}var i=(e||s.m5)[o.OL]();if((0,a.Ju)(i,p)){var n=(0,r.YEm)()||{};return Math.max(parseInt(i[o.sY](p)[1]),n[c]||0)}if((0,a.Ju)(i,f)){var l=parseInt(i[o.sY](f)[1]);if(l)return l+4}return null}function O(e){return null!==k&&!1!==e||(k=(0,r.w9M)()&&Boolean((0,r.w3n)().sendBeacon)),k}function B(e){var t=!1;try{t=!!(0,r.zS2)("fetch");var i=(0,r.zS2)("Request");t&&e&&i&&(t=R(i,"keepalive"))}catch(e){}return t}function G(){return null===C&&(C=typeof XDomainRequest!==n.bA)&&L()&&(C=C&&!R((0,r.zS2)(y),"withCredentials")),C}function L(){var e=!1;try{e=!!(0,r.zS2)(y)}catch(e){}return e}function H(e,t){if(e)for(var i=0;i0?n[0]:{}).serverTiming,e).description}return t}},7358:(e,t,i)=>{"use strict";i.d(t,{B:()=>n});var n=function(e,t){this.aiDataContract={baseType:1,baseData:1},this.baseType=e,this.baseData=t}},7374:(e,t,i)=>{"use strict";i.d(t,{eL:()=>r,iD:()=>a,uG:()=>o});var n=i(4282),r=(0,n.H)({LocalStorage:0,SessionStorage:1}),o=(0,n.H)({AI:0,AI_AND_W3C:1,W3C:2}),a=(0,n.H)({Normal:1,Critical:2})},7681:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__runInitializers||function(e,t,i){for(var n=arguments.length>2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0},c=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;anew Promise(t=>setTimeout(t,e)),A=d.join(d.dirname(__dirname),"resources","icons");function I(e,t){return h.Uri.file(d.join(A,t,`${e}.svg`))}let T=(()=>{let e,t,i,n,r=[];return class o{static{const o="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[v.memoize],t=[v.memoize],i=[v.memoize],n=[v.memoize],s(this,null,e,{kind:"getter",name:"resourceUri",static:!1,private:!1,access:{has:e=>"resourceUri"in e,get:e=>e.resourceUri},metadata:o},null,r),s(this,null,t,{kind:"getter",name:"command",static:!1,private:!1,access:{has:e=>"command"in e,get:e=>e.command},metadata:o},null,r),s(this,null,i,{kind:"getter",name:"resources",static:!1,private:!1,access:{has:e=>"resources"in e,get:e=>e.resources},metadata:o},null,r),s(this,null,n,{kind:"getter",name:"faded",static:!1,private:!1,access:{has:e=>"faded"in e,get:e=>e.faded},metadata:o},null,r),o&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:o})}_commandResolver=a(this,r);_resourceGroupType;_resourceUri;_type;_useIcons;_renameResourceUri;_repositoryKind;static getStatusLetter(e){switch(e){case 0:case 5:return"M";case 1:case 9:return"A";case 2:case 6:return"D";case 3:case 10:return"R";case 11:return"T";case 7:return"U";case 8:return"I";case 4:return"C";case 17:case 12:case 15:case 13:case 14:case 16:case 18:return"!";default:throw new Error("Unknown git status: "+e)}}static getStatusText(e){switch(e){case 0:return h.l10n.t("Index Modified");case 5:return h.l10n.t("Modified");case 1:return h.l10n.t("Index Added");case 2:return h.l10n.t("Index Deleted");case 6:return h.l10n.t("Deleted");case 3:return h.l10n.t("Index Renamed");case 4:return h.l10n.t("Index Copied");case 7:return h.l10n.t("Untracked");case 8:return h.l10n.t("Ignored");case 9:return h.l10n.t("Intent to Add");case 10:return h.l10n.t("Intent to Rename");case 11:return h.l10n.t("Type Changed");case 17:return h.l10n.t("Conflict: Both Deleted");case 12:return h.l10n.t("Conflict: Added By Us");case 15:return h.l10n.t("Conflict: Deleted By Them");case 13:return h.l10n.t("Conflict: Added By Them");case 14:return h.l10n.t("Conflict: Deleted By Us");case 16:return h.l10n.t("Conflict: Both Added");case 18:return h.l10n.t("Conflict: Both Modified");default:return""}}static getStatusColor(e){switch(e){case 0:return new h.ThemeColor("gitDecoration.stageModifiedResourceForeground");case 5:case 11:return new h.ThemeColor("gitDecoration.modifiedResourceForeground");case 2:return new h.ThemeColor("gitDecoration.stageDeletedResourceForeground");case 6:return new h.ThemeColor("gitDecoration.deletedResourceForeground");case 1:case 9:return new h.ThemeColor("gitDecoration.addedResourceForeground");case 4:case 3:case 10:return new h.ThemeColor("gitDecoration.renamedResourceForeground");case 7:return new h.ThemeColor("gitDecoration.untrackedResourceForeground");case 8:return new h.ThemeColor("gitDecoration.ignoredResourceForeground");case 17:case 12:case 15:case 13:case 14:case 16:case 18:return new h.ThemeColor("gitDecoration.conflictingResourceForeground");default:throw new Error("Unknown git status: "+e)}}get resourceUri(){return!this.renameResourceUri||5!==this._type&&6!==this._type&&3!==this._type&&4!==this._type&&10!==this._type?this._resourceUri:this.renameResourceUri}get leftUri(){return this.resources.left}get rightUri(){return this.resources.right}get multiDiffEditorOriginalUri(){return this.resources.original}get multiFileDiffEditorModifiedUri(){return this.resources.modified}get command(){return this._commandResolver.resolveDefaultCommand(this)}get resources(){return this._commandResolver.getResources(this)}get resourceGroupType(){return this._resourceGroupType}get type(){return this._type}get original(){return this._resourceUri}get renameResourceUri(){return this._renameResourceUri}get contextValue(){return this._repositoryKind}static Icons={light:{Modified:I("status-modified","light"),Added:I("status-added","light"),Deleted:I("status-deleted","light"),Renamed:I("status-renamed","light"),Copied:I("status-copied","light"),Untracked:I("status-untracked","light"),Ignored:I("status-ignored","light"),Conflict:I("status-conflict","light"),TypeChanged:I("status-type-changed","light")},dark:{Modified:I("status-modified","dark"),Added:I("status-added","dark"),Deleted:I("status-deleted","dark"),Renamed:I("status-renamed","dark"),Copied:I("status-copied","dark"),Untracked:I("status-untracked","dark"),Ignored:I("status-ignored","dark"),Conflict:I("status-conflict","dark"),TypeChanged:I("status-type-changed","dark")}};getIconPath(e){switch(this.type){case 0:case 5:return o.Icons[e].Modified;case 1:case 9:return o.Icons[e].Added;case 2:case 6:return o.Icons[e].Deleted;case 3:case 10:return o.Icons[e].Renamed;case 4:return o.Icons[e].Copied;case 7:return o.Icons[e].Untracked;case 8:return o.Icons[e].Ignored;case 11:return o.Icons[e].TypeChanged;case 17:case 12:case 15:case 13:case 14:case 16:case 18:return o.Icons[e].Conflict;default:throw new Error("Unknown git status: "+this.type)}}get tooltip(){return o.getStatusText(this.type)}get strikeThrough(){switch(this.type){case 6:case 17:case 15:case 14:case 2:return!0;default:return!1}}get faded(){return!1}get decorations(){const e=this._useIcons?{iconPath:this.getIconPath("light")}:void 0,t=this._useIcons?{iconPath:this.getIconPath("dark")}:void 0,i=this.tooltip;return{strikeThrough:this.strikeThrough,faded:this.faded,tooltip:i,light:e,dark:t}}get letter(){return o.getStatusLetter(this.type)}get color(){return o.getStatusColor(this.type)}get priority(){switch(this.type){case 0:case 5:case 4:case 11:return 2;case 8:return 3;case 17:case 12:case 15:case 13:case 14:case 16:case 18:return 4;default:return 1}}get resourceDecoration(){const e=new h.FileDecoration(this.letter,this.tooltip,this.color);return e.propagate=6!==this.type&&2!==this.type,e}constructor(e,t,i,n,r,o,a){this._commandResolver=e,this._resourceGroupType=t,this._resourceUri=i,this._type=n,this._useIcons=r,this._renameResourceUri=o,this._repositoryKind=a}async open(){const e=this.command;await h.commands.executeCommand(e.command,...e.arguments||[])}async openFile(){const e=this._commandResolver.resolveFileCommand(this);await h.commands.executeCommand(e.command,...e.arguments||[])}async openChange(){const e=this._commandResolver.resolveChangeCommand(this);await h.commands.executeCommand(e.command,...e.arguments||[])}async compareWithWorkspace(){const e=this._commandResolver.resolveCompareWithWorkspaceCommand(this);await h.commands.executeCommand(e.command,...e.arguments||[])}clone(e){return new o(this._commandResolver,e??this._resourceGroupType,this._resourceUri,this._type,this._useIcons,this._renameResourceUri,this._repositoryKind)}}})();t.Resource=T;class x{repository;enabled=!1;disposable=E.EmptyDisposable;constructor(e){this.repository=e,(0,E.filterEvent)(h.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git",h.Uri.file(this.repository.root)))(e=>this.updateEnablement()),this.updateEnablement(),this.repository.onDidChangeOperations(()=>{this.repository.sourceControl.inputBox.enabled=!this.repository.operations.isRunning("Commit")})}updateEnablement(){h.workspace.getConfiguration("git",h.Uri.file(this.repository.root)).get("showProgress")?this.enable():this.disable()}enable(){if(this.enabled)return;const e=(0,E.onceEvent)((0,E.filterEvent)(this.repository.onDidChangeOperations,()=>this.repository.operations.shouldShowProgress())),t=(0,E.onceEvent)((0,E.filterEvent)((0,E.debounceEvent)(this.repository.onDidChangeOperations,300),()=>!this.repository.operations.shouldShowProgress())),i=()=>{this.disposable=e(()=>{const e=(0,E.eventToPromise)(t).then(()=>i());h.window.withProgress({location:h.ProgressLocation.SourceControl},()=>e)})};i(),this.enabled=!0}disable(){this.enabled&&(this.disposable.dispose(),this.disposable=E.EmptyDisposable,this.enabled=!1)}dispose(){this.disable()}}class M{onWorkspaceWorkingTreeFileChange;onDotGitFileChange;logger;eventDisposable=E.EmptyDisposable;logLevelDisposable=E.EmptyDisposable;constructor(e,t,i){this.onWorkspaceWorkingTreeFileChange=e,this.onDotGitFileChange=t,this.logger=i,this.logLevelDisposable=i.onDidChangeLogLevel(this.onDidChangeLogLevel,this),this.onDidChangeLogLevel(i.logLevel)}onDidChangeLogLevel(e){this.eventDisposable.dispose(),e>h.LogLevel.Debug||(this.eventDisposable=(0,E.combinedDisposable)([this.onWorkspaceWorkingTreeFileChange(e=>this.logger.debug(`[FileEventLogger][onWorkspaceWorkingTreeFileChange] ${e.fsPath}`)),this.onDotGitFileChange(e=>this.logger.debug(`[FileEventLogger][onDotGitFileChange] ${e.fsPath}`))]))}dispose(){this.eventDisposable.dispose(),this.logLevelDisposable.dispose()}}class O{repository;logger;event;emitter=new h.EventEmitter;transientDisposables=[];disposables=[];constructor(e,t){this.repository=e,this.logger=t;const i=(0,D.watch)(e.dotGit.path);this.disposables.push(i);const n=(0,E.filterEvent)(i.event,e=>"file"===e.scheme&&!/\/\.git(\/index\.lock)?$|\/\.watchman-cookie-/.test(e.path));this.event=(0,E.anyEvent)(n,this.emitter.event),e.onDidRunGitStatus(this.updateTransientWatchers,this,this.disposables),this.updateTransientWatchers()}updateTransientWatchers(){if(this.transientDisposables=(0,E.dispose)(this.transientDisposables),!this.repository.HEAD||!this.repository.HEAD.upstream)return;this.transientDisposables=(0,E.dispose)(this.transientDisposables);const{name:e,remote:t}=this.repository.HEAD.upstream,i=d.join(this.repository.dotGit.commonPath??this.repository.dotGit.path,"refs","remotes",t,e);try{const e=(0,D.watch)(i);this.transientDisposables.push(e),e.event(this.emitter.fire,this.emitter,this.transientDisposables)}catch(e){this.logger.warn(`[DotGitWatcher][updateTransientWatchers] Failed to watch ref '${i}', is most likely packed.`)}}dispose(){this.emitter.dispose(),this.transientDisposables=(0,E.dispose)(this.transientDisposables),this.disposables=(0,E.dispose)(this.disposables)}}class B{repository;constructor(e){this.repository=e}resolveDefaultCommand(e){return h.workspace.getConfiguration("git",h.Uri.file(this.repository.root)).get("openDiffOnClick",!0)?this.resolveChangeCommand(e):this.resolveFileCommand(e)}resolveFileCommand(e){return{command:"vscode.open",title:h.l10n.t("Open"),arguments:[e.resourceUri]}}resolveChangeCommand(e,t,i){t||(i=e.leftUri);const n=this.getTitle(e);if(i)return{command:"vscode.diff",title:h.l10n.t("Open"),arguments:[i,e.rightUri,n]};{const t=18===e.type;return e.rightUri&&h.workspace.getConfiguration("git").get("mergeEditor",!1)&&(t||16===e.type)?{command:this.repository.isWorktreeMigrating?"git.openWorktreeMergeEditor":"git.openMergeEditor",title:h.l10n.t("Open Merge"),arguments:[e.rightUri]}:{command:"vscode.open",title:h.l10n.t("Open"),arguments:[e.rightUri,{override:!t&&void 0},n]}}}resolveCompareWithWorkspaceCommand(e){if(!this.repository.dotGit.commonPath)return this.resolveChangeCommand(e);const t=d.dirname(this.repository.dotGit.commonPath),i=d.relative(this.repository.root,e.resourceUri.fsPath),n=d.join(t,i),r=u.existsSync(n)?h.Uri.file(n):void 0;return this.resolveChangeCommand(e,!0,r)}getResources(e){for(const t of this.repository.submodules)if(d.join(this.repository.root,t.path)===e.resourceUri.fsPath){const t=void 0,i=(0,S.toGitUri)(e.resourceUri,1===e.resourceGroupType?"index":"wt",{submoduleOf:this.repository.root});return{left:t,right:i,original:t,modified:i}}const t=this.getLeftResource(e),i=this.getRightResource(e);return{left:t.original??t.modified,right:i.original??i.modified,original:t.original??i.original,modified:t.modified??i.modified}}getLeftResource(e){switch(e.type){case 0:case 3:case 10:case 11:return{original:(0,S.toGitUri)(e.original,"HEAD")};case 5:return{original:(0,S.toGitUri)(e.resourceUri,"~")};case 14:case 15:return{original:(0,S.toGitUri)(e.resourceUri,"~1")}}return{}}getRightResource(e){switch(e.type){case 0:case 1:case 4:case 3:return{modified:(0,S.toGitUri)(e.resourceUri,"")};case 2:case 6:return{original:(0,S.toGitUri)(e.resourceUri,"HEAD")};case 14:return{original:(0,S.toGitUri)(e.resourceUri,"~3")};case 15:return{original:(0,S.toGitUri)(e.resourceUri,"~2")};case 5:case 7:case 8:case 9:case 10:case 11:{const t=e.resourceUri.toString(),[i]=this.repository.indexGroup.resourceStates.filter(e=>e.resourceUri.toString()===t);return i&&i.renameResourceUri?{modified:i.renameResourceUri}:{modified:e.resourceUri}}case 16:case 18:return{modified:e.resourceUri}}return{}}getTitle(e){const t=d.basename(e.resourceUri.fsPath);switch(e.type){case 0:case 3:case 1:return h.l10n.t("{0} (Index)",t);case 5:case 16:case 18:return h.l10n.t("{0} (Working Tree)",t);case 2:case 6:return h.l10n.t("{0} (Deleted)",t);case 14:return h.l10n.t("{0} (Theirs)",t);case 15:return h.l10n.t("{0} (Ours)",t);case 7:return h.l10n.t("{0} (Untracked)",t);case 9:case 10:return h.l10n.t("{0} (Intent to add)",t);case 11:return h.l10n.t("{0} (Type changed)",t);default:return""}}}let G=(()=>{let e,t,i,n,r,o,c,l,D,A,I,G,H,F,N=[];return class U{static{const a="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[v.memoize],t=[v.throttle],i=[v.throttle],n=[v.throttle],r=[v.sequentialize],o=[v.throttle],c=[v.throttle],l=[v.throttle],D=[v.throttle],A=[v.throttle],I=[v.throttle],G=[v.throttle],H=[(0,v.debounce)(1e3)],F=[v.throttle],s(this,null,e,{kind:"getter",name:"onDidChangeOperations",static:!1,private:!1,access:{has:e=>"onDidChangeOperations"in e,get:e=>e.onDidChangeOperations},metadata:a},null,N),s(this,null,t,{kind:"method",name:"status",static:!1,private:!1,access:{has:e=>"status"in e,get:e=>e.status},metadata:a},null,N),s(this,null,i,{kind:"method",name:"refresh",static:!1,private:!1,access:{has:e=>"refresh"in e,get:e=>e.refresh},metadata:a},null,N),s(this,null,n,{kind:"method",name:"fastForwardBranch",static:!1,private:!1,access:{has:e=>"fastForwardBranch"in e,get:e=>e.fastForwardBranch},metadata:a},null,N),s(this,null,r,{kind:"method",name:"getBranchBase",static:!1,private:!1,access:{has:e=>"getBranchBase"in e,get:e=>e.getBranchBase},metadata:a},null,N),s(this,null,o,{kind:"method",name:"fetchDefault",static:!1,private:!1,access:{has:e=>"fetchDefault"in e,get:e=>e.fetchDefault},metadata:a},null,N),s(this,null,c,{kind:"method",name:"fetchPrune",static:!1,private:!1,access:{has:e=>"fetchPrune"in e,get:e=>e.fetchPrune},metadata:a},null,N),s(this,null,l,{kind:"method",name:"fetchAll",static:!1,private:!1,access:{has:e=>"fetchAll"in e,get:e=>e.fetchAll},metadata:a},null,N),s(this,null,D,{kind:"method",name:"pullWithRebase",static:!1,private:!1,access:{has:e=>"pullWithRebase"in e,get:e=>e.pullWithRebase},metadata:a},null,N),s(this,null,A,{kind:"method",name:"pull",static:!1,private:!1,access:{has:e=>"pull"in e,get:e=>e.pull},metadata:a},null,N),s(this,null,I,{kind:"method",name:"push",static:!1,private:!1,access:{has:e=>"push"in e,get:e=>e.push},metadata:a},null,N),s(this,null,G,{kind:"method",name:"sync",static:!1,private:!1,access:{has:e=>"sync"in e,get:e=>e.sync},metadata:a},null,N),s(this,null,H,{kind:"method",name:"eventuallyUpdateWhenIdleAndWait",static:!1,private:!1,access:{has:e=>"eventuallyUpdateWhenIdleAndWait"in e,get:e=>e.eventuallyUpdateWhenIdleAndWait},metadata:a},null,N),s(this,null,F,{kind:"method",name:"updateWhenIdleAndWait",static:!1,private:!1,access:{has:e=>"updateWhenIdleAndWait"in e,get:e=>e.updateWhenIdleAndWait},metadata:a},null,N),a&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}repository=a(this,N);repositoryResolver;pushErrorHandlerRegistry;branchProtectionProviderRegistry;logger;telemetryReporter;repositoryCache;_onDidChangeRepository=new h.EventEmitter;onDidChangeRepository=this._onDidChangeRepository.event;_onDidChangeState=new h.EventEmitter;onDidChangeState=this._onDidChangeState.event;_onDidChangeStatus=new h.EventEmitter;onDidRunGitStatus=this._onDidChangeStatus.event;_onDidChangeOriginalResource=new h.EventEmitter;onDidChangeOriginalResource=this._onDidChangeOriginalResource.event;_onRunOperation=new h.EventEmitter;onRunOperation=this._onRunOperation.event;_onDidRunOperation=new h.EventEmitter;onDidRunOperation=this._onDidRunOperation.event;_onDidChangeBranchProtection=new h.EventEmitter;onDidChangeBranchProtection=this._onDidChangeBranchProtection.event;get onDidChangeOperations(){return(0,E.anyEvent)(this.onRunOperation,this.onDidRunOperation)}_sourceControl;get sourceControl(){return this._sourceControl}get inputBox(){return this._sourceControl.inputBox}_mergeGroup;get mergeGroup(){return this._mergeGroup}_indexGroup;get indexGroup(){return this._indexGroup}_workingTreeGroup;get workingTreeGroup(){return this._workingTreeGroup}_untrackedGroup;get untrackedGroup(){return this._untrackedGroup}_EMPTY_TREE;_HEAD;get HEAD(){return this._HEAD}_refs=[];get refs(){return this._refs}get headShortName(){if(!this.HEAD)return;const e=this.HEAD;return e.name?e.name:(e.commit||"").substr(0,8)}_remotes=[];get remotes(){return this._remotes}_submodules=[];get submodules(){return this._submodules}_worktrees=[];get worktrees(){return this._worktrees}_rebaseCommit=void 0;set rebaseCommit(e){this._rebaseCommit&&!e?this.inputBox.value="":!e||this._rebaseCommit&&this._rebaseCommit.hash===e.hash||(this.inputBox.value=e.message);const t=!!this._rebaseCommit!=!!e;this._rebaseCommit=e,t&&h.commands.executeCommand("setContext","gitRebaseInProgress",!!this._rebaseCommit)}get rebaseCommit(){return this._rebaseCommit}_mergeInProgress=!1;set mergeInProgress(e){this._mergeInProgress!==e&&(this._mergeInProgress=e,h.commands.executeCommand("setContext","gitMergeInProgress",e))}get mergeInProgress(){return this._mergeInProgress}_cherryPickInProgress=!1;set cherryPickInProgress(e){this._cherryPickInProgress!==e&&(this._cherryPickInProgress=e,h.commands.executeCommand("setContext","gitCherryPickInProgress",e))}get cherryPickInProgress(){return this._cherryPickInProgress}_isWorktreeMigrating=!1;get isWorktreeMigrating(){return this._isWorktreeMigrating}set isWorktreeMigrating(e){this._isWorktreeMigrating=e}_operations;get operations(){return this._operations}_state=0;get state(){return this._state}set state(e){this._state=e,this._onDidChangeState.fire(e),this._HEAD=void 0,this._remotes=[],this.mergeGroup.resourceStates=[],this.indexGroup.resourceStates=[],this.workingTreeGroup.resourceStates=[],this.untrackedGroup.resourceStates=[],this._sourceControl.count=0}get root(){return this.repository.root}get rootRealPath(){return this.repository.rootRealPath}get dotGit(){return this.repository.dotGit}get kind(){return this.repository.kind}_artifactProvider;get artifactProvider(){return this._artifactProvider}_historyProvider;get historyProvider(){return this._historyProvider}isRepositoryHuge=!1;didWarnAboutLimit=!1;unpublishedCommits=void 0;branchProtection=new Map;commitCommandCenter;resourceCommandResolver=new B(this);updateModelStateCancellationTokenSource;disposables=[];constructor(e,t,i,n,r,o,a,s,c,l,u){this.repository=e,this.repositoryResolver=t,this.pushErrorHandlerRegistry=i,this.branchProtectionProviderRegistry=o,this.logger=c,this.telemetryReporter=l,this.repositoryCache=u,this._operations=new C.OperationManager(this.logger);const m=h.workspace.createFileSystemWatcher(new h.RelativePattern(h.Uri.file(e.root),"**"));this.disposables.push(m);const p=(0,E.anyEvent)(m.onDidChange,m.onDidCreate,m.onDidDelete),v=(0,E.filterEvent)(p,t=>!/\.git($|\\|\/)/.test((0,E.relativePath)(e.root,t.fsPath)));let w;try{const e=new O(this,c);w=e.event,this.disposables.push(e)}catch(e){c.error(`Failed to watch path:'${this.dotGit.path}' or commonPath:'${this.dotGit.commonPath}', reverting to legacy API file watched. Some events might be lost.\n${e.stack||e}`),w=(0,E.filterEvent)(p,e=>/\.git($|\\|\/)/.test(e.path))}(0,E.anyEvent)(v,w)(this.onFileChange,this,this.disposables),w(this._onDidChangeRepository.fire,this._onDidChangeRepository,this.disposables),this.disposables.push(new M(v,w,c));const S="submodule"===e.kind?e.dotGit.superProjectPath:"worktree"===e.kind&&e.dotGit.commonPath?d.dirname(e.dotGit.commonPath):void 0,D=this.repositoryResolver.getRepository(S)?.sourceControl,_="submodule"===e.kind?new h.ThemeIcon("archive"):"worktree"===e.kind?new h.ThemeIcon("list-tree"):new h.ThemeIcon("repo"),A=h.Uri.file(e.root);this._sourceControl=h.scm.createSourceControl("git","Git",A,_,D),this._sourceControl.contextValue=e.kind,this._sourceControl.quickDiffProvider=this,this._sourceControl.secondaryQuickDiffProvider=new L(this,c),this._historyProvider=new b.GitHistoryProvider(a,this,c),this._sourceControl.historyProvider=this._historyProvider,this.disposables.push(this._historyProvider),this._artifactProvider=new P.GitArtifactProvider(this,c),this._sourceControl.artifactProvider=this._artifactProvider,this.disposables.push(this._artifactProvider),this._sourceControl.acceptInputCommand={command:"git.commit",title:h.l10n.t("Commit"),arguments:[this._sourceControl]},this._sourceControl.inputBox.validateInput=this.validateInput.bind(this),this.disposables.push(this._sourceControl),this.updateInputBoxPlaceholder(),this.disposables.push(this.onDidRunGitStatus(()=>this.updateInputBoxPlaceholder())),this._mergeGroup=this._sourceControl.createResourceGroup("merge",h.l10n.t("Merge Changes")),this._indexGroup=this._sourceControl.createResourceGroup("index",h.l10n.t("Staged Changes"),{multiDiffEditorEnableViewChanges:!0}),this._workingTreeGroup=this._sourceControl.createResourceGroup("workingTree",h.l10n.t("Changes"),{multiDiffEditorEnableViewChanges:!0}),this._untrackedGroup=this._sourceControl.createResourceGroup("untracked",h.l10n.t("Untracked Changes"),{multiDiffEditorEnableViewChanges:!0});const I=()=>{const e=h.workspace.getConfiguration("git",A);this.indexGroup.hideWhenEmpty=!e.get("alwaysShowStagedChangesResourceGroup")};(0,E.filterEvent)(h.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git.alwaysShowStagedChangesResourceGroup",A))(I,this,this.disposables),I(),h.workspace.onDidChangeConfiguration(e=>{e.affectsConfiguration("git.mergeEditor")&&(this.mergeGroup.resourceStates=this.mergeGroup.resourceStates.map(e=>e.clone()))},void 0,this.disposables),(0,E.filterEvent)(h.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git.branchSortOrder",A)||e.affectsConfiguration("git.untrackedChanges",A)||e.affectsConfiguration("git.ignoreSubmodules",A)||e.affectsConfiguration("git.openDiffOnClick",A)||e.affectsConfiguration("git.showActionButton",A)||e.affectsConfiguration("git.similarityThreshold",A))(()=>this.updateModelState(),this,this.disposables);const T=()=>{const e=h.workspace.getConfiguration("git",A);this._sourceControl.inputBox.visible=e.get("showCommitInput",!0)};if((0,E.filterEvent)(h.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git.showCommitInput",A))(T,this,this.disposables),T(),this.mergeGroup.hideWhenEmpty=!0,this.untrackedGroup.hideWhenEmpty=!0,this.disposables.push(this.mergeGroup),this.disposables.push(this.indexGroup),this.disposables.push(this.workingTreeGroup),this.disposables.push(this.untrackedGroup),h.workspace.isTrusted)this.disposables.push(new f.AutoFetcher(this,s));else{const e=h.workspace.onDidGrantWorkspaceTrust(()=>{e.dispose(),this.disposables.push(new f.AutoFetcher(this,s))});this.disposables.push(e)}(0,E.filterEvent)(this.onDidRunOperation,e=>"Push"===e.operation.kind&&!e.error)(()=>{h.workspace.getConfiguration("git").get("showPushSuccessNotification")&&h.window.showInformationMessage(h.l10n.t("Successfully pushed."))},null,this.disposables);const B=(0,E.filterEvent)(this.branchProtectionProviderRegistry.onDidChangeBranchProtectionProviders,e=>(0,E.pathEquals)(e.fsPath,A.fsPath));this.disposables.push(B(e=>this.updateBranchProtectionMatchers(e))),this.disposables.push(this.branchProtectionProviderRegistry.registerBranchProtectionProvider(A,new y.GitBranchProtectionProvider(A)));const G=new R.StatusBarCommands(this,n);this.disposables.push(G),G.onDidChange(()=>this._sourceControl.statusBarCommands=G.commands,null,this.disposables),this._sourceControl.statusBarCommands=G.commands,this.commitCommandCenter=new k.CommitCommandsCenter(s,this,r),this.disposables.push(this.commitCommandCenter);const H=new g.ActionButton(this,this.commitCommandCenter,this.logger);this.disposables.push(H),H.onDidChange(()=>this._sourceControl.actionButton=H.button,this,this.disposables),this._sourceControl.actionButton=H.button;const F=new x(this);this.disposables.push(F),(0,E.filterEvent)(h.workspace.onDidChangeConfiguration,e=>e.affectsConfiguration("git.countBadge",A))(this.setCountBadge,this,this.disposables),this.setCountBadge()}validateInput(e,t){return this.isRepositoryHuge?{message:h.l10n.t("Too many changes were detected. Only the first {0} changes will be shown below.",this.isRepositoryHuge.limit),type:h.SourceControlInputBoxValidationType.Warning}:this.rebaseCommit&&this.rebaseCommit.message!==e?{message:h.l10n.t("It's not possible to change the commit message in the middle of a rebase. Please complete the rebase operation and use interactive rebase instead."),type:h.SourceControlInputBoxValidationType.Warning}:void 0}get label(){return h.l10n.t("Git Local Changes (Working Tree)")}async provideOriginalResource(e){if(this.logger.trace(`[Repository][provideOriginalResource] Resource: ${e.toString()}`),"file"!==e.scheme)return void this.logger.trace(`[Repository][provideOriginalResource] Resource is not a file: ${e.scheme}`);if(0!==((await h.workspace.fs.stat(e)).type&h.FileType.SymbolicLink))return void this.logger.trace(`[Repository][provideOriginalResource] Resource is a symbolic link: ${e.toString()}`);if(this.repositoryResolver.getRepository(e)!==this)return void this.logger.trace(`[Repository][provideOriginalResource] Resource is not part of the repository: ${e.toString()}`);if(this.mergeGroup.resourceStates.some(t=>(0,E.pathEquals)(t.resourceUri.fsPath,e.fsPath)))return void this.logger.trace(`[Repository][provideOriginalResource] Resource is part of a merge group: ${e.toString()}`);if(this.untrackedGroup.resourceStates.some(t=>(0,E.pathEquals)(t.resourceUri.path,e.path))||this.workingTreeGroup.resourceStates.some(t=>(0,E.pathEquals)(t.resourceUri.path,e.path)&&7===t.type))return void this.logger.trace(`[Repository][provideOriginalResource] Resource is untracked: ${e.toString()}`);const t=h.window.tabGroups.activeTabGroup.activeTab?.input;if(t instanceof h.TabInputTextDiff&&(0,E.pathEquals)(t.modified.fsPath,e.fsPath))return void this.logger.trace(`[Repository][provideOriginalResource] Resource is on the right-hand side of a diff editor: ${e.toString()}`);if(t instanceof h.TabInputTextMultiDiff&&t.textDiffs.some(t=>(0,E.pathEquals)(t.modified.fsPath,e.fsPath)))return void this.logger.trace(`[Repository][provideOriginalResource] Resource is on the right-hand side of a multi-file diff editor: ${e.toString()}`);const i=(0,S.toGitUri)(e,"",{replaceFileExtension:!0});return this.logger.trace(`[Repository][provideOriginalResource] Original resource: ${i.toString()}`),i}async getInputTemplate(){return(await Promise.all([this.repository.getMergeMessage(),this.repository.getSquashMessage()])).find(e=>!!e)||await this.repository.getCommitTemplate()}getConfigs(){return this.run(C.Operation.Config(!0),()=>this.repository.getConfigs("local"))}getConfig(e){return this.run(C.Operation.Config(!0),()=>this.repository.config("get","local",e))}getGlobalConfig(e){return this.run(C.Operation.Config(!0),()=>this.repository.config("get","global",e))}setConfig(e,t){return this.run(C.Operation.Config(!1),()=>this.repository.config("add","local",e,t))}unsetConfig(e){return this.run(C.Operation.Config(!1),()=>this.repository.config("unset","local",e))}log(e,t){const i=!e||!0!==e.silent;return this.run(C.Operation.Log(i),()=>this.repository.log(e,t))}logFile(e,t,i){return this.run(C.Operation.LogFile,()=>this.repository.logFile(e,t,i))}async status(){await this.run(C.Operation.Status)}async refresh(){await this.run(C.Operation.Refresh)}diff(e){return this.run(C.Operation.Diff,()=>this.repository.diff(e))}diffWithHEAD(e){return this.run(C.Operation.Diff,()=>this.repository.diffWithHEAD(e))}diffWith(e,t){return this.run(C.Operation.Diff,()=>this.repository.diffWith(e,t))}diffIndexWithHEAD(e){return this.run(C.Operation.Diff,()=>this.repository.diffIndexWithHEAD(e))}diffIndexWith(e,t){return this.run(C.Operation.Diff,()=>this.repository.diffIndexWith(e,t))}diffBlobs(e,t){return this.run(C.Operation.Diff,()=>this.repository.diffBlobs(e,t))}diffBetween(e,t,i){return this.run(C.Operation.Diff,()=>this.repository.diffBetween(e,t,i))}diffBetween2(e,t){if(e===this._EMPTY_TREE)return this.diffTrees(e,t);const i=h.workspace.getConfiguration("git",h.Uri.file(this.root)).get("similarityThreshold",50);return this.run(C.Operation.Diff,()=>this.repository.diffBetween2(e,t,{similarityThreshold:i}))}diffTrees(e,t){const i=h.workspace.getConfiguration("git",h.Uri.file(this.root)).get("similarityThreshold",50);return this.run(C.Operation.Diff,()=>this.repository.diffTrees(e,t,{similarityThreshold:i}))}getMergeBase(e,t,...i){return this.run(C.Operation.MergeBase,()=>this.repository.getMergeBase(e,t,...i))}async hashObject(e){return this.run(C.Operation.HashObject,()=>this.repository.hashObject(e))}async add(e,t){await this.run(C.Operation.Add(!this.optimisticUpdateEnabled()),async()=>{await this.repository.add(e.map(e=>e.fsPath),t),this.closeDiffEditors([],[...e.map(e=>e.fsPath)]),h.commands.executeCommand("_chat.editSessions.accept",e)},()=>{const t=e.map(e=>e.fsPath),i=this.indexGroup.resourceStates.map(e=>e.resourceUri.fsPath),n=[];for(const e of[...this.mergeGroup.resourceStates,...this.untrackedGroup.resourceStates,...this.workingTreeGroup.resourceStates])t.includes(e.resourceUri.fsPath)&&!i.includes(e.resourceUri.fsPath)&&n.push(e.clone(1));return{indexGroup:[...this.indexGroup.resourceStates,...n],mergeGroup:this.mergeGroup.resourceStates.filter(e=>!t.includes(e.resourceUri.fsPath)),workingTreeGroup:this.workingTreeGroup.resourceStates.filter(e=>!t.includes(e.resourceUri.fsPath)),untrackedGroup:this.untrackedGroup.resourceStates.filter(e=>!t.includes(e.resourceUri.fsPath))}})}async rm(e){await this.run(C.Operation.Remove,()=>this.repository.rm(e.map(e=>e.fsPath)))}async stage(e,t,i){await this.run(C.Operation.Stage,async()=>{const n=await h.workspace.encode(t,{encoding:i});await this.repository.stage(e.fsPath,n),this._onDidChangeOriginalResource.fire(e),this.closeDiffEditors([],[...e.fsPath])})}async revert(e){await this.run(C.Operation.RevertFiles(!this.optimisticUpdateEnabled()),async()=>{await this.repository.revert("HEAD",e.map(e=>e.fsPath));for(const t of e)this._onDidChangeOriginalResource.fire(t);this.closeDiffEditors([...0!==e.length?e.map(e=>e.fsPath):this.indexGroup.resourceStates.map(e=>e.resourceUri.fsPath)],[])},()=>{const t=h.workspace.getConfiguration("git",h.Uri.file(this.repository.root)).get("untrackedChanges"),i="mixed"===t?2:3,n=0===e.length?this.indexGroup.resourceStates.map(e=>e.resourceUri.fsPath):e.map(e=>e.fsPath),r=[],o=[];for(const e of this.indexGroup.resourceStates)n.includes(e.resourceUri.fsPath)&&(1===e.type?o.push(e.clone(i)):r.push(e.clone(2)));return{indexGroup:this.indexGroup.resourceStates.filter(e=>!n.includes(e.resourceUri.fsPath)),workingTreeGroup:"mixed"===t?[...this.workingTreeGroup.resourceStates,...r,...o]:[...this.workingTreeGroup.resourceStates,...r],untrackedGroup:"separate"===t?[...this.untrackedGroup.resourceStates,...o]:void 0}})}async commit(e,t=Object.create(null)){const i=[...this.indexGroup.resourceStates.map(e=>e.resourceUri.fsPath)],n=t.all&&"tracked"!==t.all?[...this.workingTreeGroup.resourceStates.map(e=>e.resourceUri.fsPath)]:[];this.rebaseCommit?await this.run(C.Operation.RebaseContinue,async()=>{if(t.all){const e="tracked"===t.all?{update:!0}:{};await this.repository.add([],e)}await this.repository.rebaseContinue(),await this.commitOperationCleanup(e,i,n)},()=>this.commitOperationGetOptimisticResourceGroups(t)):(this.commitCommandCenter.postCommitCommand=t.postCommitCommand,await this.run(C.Operation.Commit,async()=>{if(t.all){const e="tracked"===t.all?{update:!0}:{};await this.repository.add([],e)}if(delete t.all,void 0===t.requireUserConfig||null===t.requireUserConfig){const e=h.workspace.getConfiguration("git",h.Uri.file(this.root));t.requireUserConfig=e.get("requireGitUserConfig")}await this.repository.commit(e,t),await this.commitOperationCleanup(e,i,n)},()=>this.commitOperationGetOptimisticResourceGroups(t)),await this.run(C.Operation.PostCommitCommand,async()=>{await this.commitCommandCenter.executePostCommitCommand(t.postCommitCommand)}))}async commitOperationCleanup(e,t,i){e&&(this.inputBox.value=await this.getInputTemplate()),this.closeDiffEditors(t,i);const n=0!==t.length?t.map(e=>h.Uri.file(e)):i.map(e=>h.Uri.file(e));h.commands.executeCommand("_chat.editSessions.accept",n)}commitOperationGetOptimisticResourceGroups(e){let t,i;return"tracked"===e.all?i=this.workingTreeGroup.resourceStates.filter(e=>7===e.type):e.all&&(t=i=[]),{indexGroup:[],mergeGroup:[],untrackedGroup:t,workingTreeGroup:i}}async clean(e){const t=h.workspace.getConfiguration("git").get("discardUntrackedChangesToTrash",!0)&&!E.isRemote&&!E.isLinuxSnap;await this.run(C.Operation.Clean(!this.optimisticUpdateEnabled()),async()=>{const i=[],n=[],r=[],o=[...this.workingTreeGroup.resourceStates,...this.untrackedGroup.resourceStates];if(e.forEach(e=>{const t=e.fsPath;for(const e of this.submodules)if(d.join(this.root,e.path)===t)return void r.push(t);const a=e.toString(),s=(0,E.find)(o,e=>e.resourceUri.toString()===a);if(s)switch(s.type){case 7:case 8:i.push(t);break;default:n.push(t)}}),i.length>0)if(t)try{await h.workspace.fs.delete(h.Uri.file(i[0]),{useTrash:!0});const e=new E.Limiter(5);await Promise.all(i.slice(1).map(t=>e.queue(async()=>await h.workspace.fs.delete(h.Uri.file(t),{useTrash:!0}))))}catch{const t=E.isWindows?h.l10n.t("Failed to delete using the Recycle Bin. Do you want to permanently delete instead?"):h.l10n.t("Failed to delete using the Trash. Do you want to permanently delete instead?"),n=1===i.length?h.l10n.t("Delete File"):h.l10n.t("Delete All {0} Files",e.length);await h.window.showWarningMessage(t,{modal:!0},n)===n&&await this.repository.clean(i)}else await this.repository.clean(i);if(n.length>0)try{await this.repository.checkout("",n)}catch(e){if("BranchNotYetBorn"!==e.gitErrorCode)throw e}r.length>0&&await this.repository.updateSubmodules(r),this.closeDiffEditors([],[...i,...n])},()=>{const t=e.map(e=>e.fsPath);return{workingTreeGroup:this.workingTreeGroup.resourceStates.filter(e=>!t.includes(e.resourceUri.fsPath)),untrackedGroup:this.untrackedGroup.resourceStates.filter(e=>!t.includes(e.resourceUri.fsPath))}})}closeDiffEditors(e,t,i=!1){if(!h.workspace.getConfiguration("git",h.Uri.file(this.root)).get("closeDiffOnOperation",!1)&&!i)return;function n(i){return!("git"!==i.modified.scheme||void 0!==e&&!e.some(e=>(0,E.pathEquals)(e,i.modified.fsPath)))||!("file"!==i.modified.scheme||"git"!==i.original.scheme||void 0!==t&&!t.some(e=>(0,E.pathEquals)(e,i.modified.fsPath)))}const r=h.window.tabGroups.all.flatMap(e=>e.tabs).filter(({input:e})=>e instanceof h.TabInputTextDiff||e instanceof h.TabInputNotebookDiff?n(e):e instanceof h.TabInputTextMultiDiff&&e.textDiffs.every(n));h.window.tabGroups.close(r,!0)}async branch(e,t,i){await this.run(C.Operation.Branch,()=>this.repository.branch(e,t,i))}async deleteBranch(e,t){return this.run(C.Operation.DeleteBranch,async()=>{await this.repository.deleteBranch(e,t),await this.repository.config("unset","local",`branch.${e}.vscode-merge-base`)})}async renameBranch(e){await this.run(C.Operation.RenameBranch,()=>this.repository.renameBranch(e))}async fastForwardBranch(e){const t=await this.getBranch(e);if(t.upstream?.remote&&t.upstream?.name&&t.name)try{const e={remote:t.upstream.remote,ref:`${t.upstream.name}:${t.name}`};await this.run(C.Operation.Fetch(!0),async()=>this.repository.fetch(e))}catch(e){if("BranchFastForwardRejected"===e.gitErrorCode)return;throw e}}async cherryPick(e){await this.run(C.Operation.CherryPick,()=>this.repository.cherryPick(e))}async cherryPickAbort(){await this.run(C.Operation.CherryPick,()=>this.repository.cherryPickAbort())}async move(e,t){await this.run(C.Operation.Move,()=>this.repository.move(e,t))}async getBranch(e){return await this.run(C.Operation.GetBranch,()=>this.repository.getBranch(e))}async getBranches(e={},t){return await this.run(C.Operation.GetBranches,async()=>(await this.getRefs(e,t)).filter(t=>0===t.type||1===t.type&&e.remote))}async getBranchBase(e){const t=`branch.${(await this.getBranch(e)).name}.vscode-merge-base`;try{const e=await this.getConfig(t),i=""!==e?await this.getBranch(e):void 0;if(i&&i.remote)return i}catch(e){}const i=await this.getBranchBaseFromReflog(e);let n;if(1===i?.type?n=i:0===i?.type&&(n=await this.getUpstreamBranch(i)),n)return await this.setConfig(t,`${n.remote}/${n.name}`),n;const r=await this.getDefaultBranch();return r?(await this.setConfig(t,`${r.remote}/${r.name}`),r):void 0}async getBranchBaseFromReflog(e){try{const t=await this.repository.reflog(e,"branch: Created from *.");if(1!==t.length)return;const i=t[0].match(/branch: Created from (?.*)$/);if(i&&2===i.length&&"HEAD"!==i[1])return await this.getBranch(i[1]);const n=await this.repository.reflog("HEAD",`checkout: moving from .* to ${e.replace("refs/heads/","")}`);if(0===n.length)return;const r=n[n.length-1].match(/checkout: moving from ([^\s]+)\s/);if(r&&2===r.length)return await this.getBranch(r[1])}catch(e){}}async getDefaultBranch(){const e=this.getDefaultRemote();if(e)try{return await this.repository.getDefaultBranch(e.name)}catch(e){return void this.logger.warn(`[Repository][getDefaultBranch] Failed to get default branch details: ${e.message}.`)}}async getUpstreamBranch(e){if(e.upstream)try{return await this.getBranch(`refs/remotes/${e.upstream.remote}/${e.upstream.name}`)}catch(t){return void this.logger.warn(`[Repository][getUpstreamBranch] Failed to get branch details for 'refs/remotes/${e.upstream.remote}/${e.upstream.name}': ${t.message}.`)}}async getRefs(e={},t){let i=h.workspace.getConfiguration("git").get("branchSortOrder");return"alphabetically"!==i&&"committerdate"!==i&&(i="alphabetically"),e={...e,sort:e?.sort??i},await this.run(C.Operation.GetRefs,()=>this.repository.getRefs(e,t))}async getWorktrees(){return await this.run(C.Operation.GetWorktrees,()=>this.repository.getWorktrees())}async getRemoteRefs(e,t){return await this.run(C.Operation.GetRemoteRefs,()=>this.repository.getRemoteRefs(e,t))}async setBranchUpstream(e,t){await this.run(C.Operation.SetBranchUpstream,()=>this.repository.setBranchUpstream(e,t))}async merge(e){await this.run(C.Operation.Merge,()=>this.repository.merge(e))}async mergeAbort(){await this.run(C.Operation.MergeAbort,async()=>await this.repository.mergeAbort())}async rebase(e){await this.run(C.Operation.Rebase,()=>this.repository.rebase(e))}async tag(e){await this.run(C.Operation.Tag,()=>this.repository.tag(e))}async deleteTag(e){await this.run(C.Operation.DeleteTag,()=>this.repository.deleteTag(e))}async addWorktree(e){await this.run(C.Operation.Worktree,()=>this.repository.addWorktree(e))}async deleteWorktree(e,t){await this.run(C.Operation.DeleteWorktree,()=>this.repository.deleteWorktree(e,t))}async deleteRemoteRef(e,t,i){await this.run(C.Operation.DeleteRemoteRef,()=>this.repository.deleteRemoteRef(e,t,i))}async checkout(e,t){const i=t?.detached?(0,E.getCommitShortHash)(h.Uri.file(this.root),e):e;await this.run(C.Operation.Checkout(i),async()=>{if(t?.pullBeforeCheckout&&!t?.detached)try{await this.fastForwardBranch(e)}catch(e){}await this.repository.checkout(e,[],t)})}async checkoutTracking(e,t={}){const i=t.detached?(0,E.getCommitShortHash)(h.Uri.file(this.root),e):e;await this.run(C.Operation.CheckoutTracking(i),()=>this.repository.checkout(e,[],{...t,track:!0}))}async findTrackingBranches(e){return await this.run(C.Operation.FindTrackingBranches,()=>this.repository.findTrackingBranches(e))}async getCommit(e){return await this.repository.getCommit(e)}async showChanges(e){return await this.run(C.Operation.Log(!1),()=>this.repository.showChanges(e))}async showChangesBetween(e,t,i){return await this.run(C.Operation.Log(!1),()=>this.repository.showChangesBetween(e,t,i))}async getEmptyTree(){if(!this._EMPTY_TREE){const e=await this.repository.exec(["hash-object","-t","tree","/dev/null"]);this._EMPTY_TREE=e.stdout.trim()}return this._EMPTY_TREE}async reset(e,t){await this.run(C.Operation.Reset,()=>this.repository.reset(e,t))}async deleteRef(e){await this.run(C.Operation.DeleteRef,()=>this.repository.deleteRef(e))}getDefaultRemote(){if(0!==this.remotes.length)return this.remotes.find(e=>"origin"===e.name)??this.remotes[0]}async addRemote(e,t){await this.run(C.Operation.Remote,async()=>{const i=await this.repository.addRemote(e,t);return this.repositoryCache.update(this.remotes,[],this.root),i})}async removeRemote(e){await this.run(C.Operation.Remote,async()=>{const t=this.repository.removeRemote(e),i=this.remotes.find(t=>t.name===e);return i&&this.repositoryCache.update([],[i],this.root),t})}async renameRemote(e,t){await this.run(C.Operation.Remote,()=>this.repository.renameRemote(e,t))}async fetchDefault(e={}){await this._fetch({silent:e.silent})}async fetchPrune(){await this._fetch({prune:!0})}async fetchAll(e={},t){await this._fetch({all:!0,silent:e.silent,cancellationToken:t})}async fetch(e){await this._fetch(e)}async _fetch(e={}){if(!e.prune){const t=h.workspace.getConfiguration("git",h.Uri.file(this.root)).get("pruneOnFetch");e.prune=t}await this.run(C.Operation.Fetch(!0!==e.silent),async()=>this.repository.fetch(e))}async pullWithRebase(e){let t,i;return e&&e.name&&e.upstream&&(t=e.upstream.remote,i=`${e.upstream.name}`),this.pullFrom(!0,t,i)}async pull(e,t){let i,n;return e&&e.name&&e.upstream&&(i=e.upstream.remote,n=`${e.upstream.name}`),this.pullFrom(!1,i,n,t)}async pullFrom(e,t,i,n){await this.run(C.Operation.Pull,async()=>{await this.maybeAutoStash(async()=>{const r=h.workspace.getConfiguration("git",h.Uri.file(this.root)),o=r.get("autoStash"),a=r.get("fetchOnPull"),s=r.get("pullTags");a&&await this.fetchAll(),await this.checkIfMaybeRebased(this.HEAD?.name)&&await this._pullAndHandleTagConflict(e,t,i,{unshallow:n,tags:s,autoStash:o})})})}async _pullAndHandleTagConflict(e,t,i,n={}){try{await this.repository.pull(e,t,i,n)}catch(r){if("TagConflict"!==r.gitErrorCode)throw r;await this.handleTagConflict(t,r.stderr)&&await this.repository.pull(e,t,i,n)}}async push(e,t){let i,n;e&&e.name&&e.upstream&&(i=e.upstream.remote,n=`${e.name}:${e.upstream.name}`),await this.run(C.Operation.Push,()=>this._push(i,n,void 0,void 0,t))}async pushTo(e,t,i=!1,n){await this.run(C.Operation.Push,()=>this._push(e,t,i,void 0,n))}async pushFollowTags(e,t){await this.run(C.Operation.Push,()=>this._push(e,void 0,!1,!0,t))}async pushTags(e,t){await this.run(C.Operation.Push,()=>this._push(e,void 0,!1,!1,t,!0))}async blame(e){return await this.run(C.Operation.Blame(!0),()=>this.repository.blame(e))}async blame2(e,t){return await this.run(C.Operation.Blame(!1),()=>this.repository.blame2(e,t))}sync(e,t){return this._sync(e,t)}async _sync(e,t){let i,n,r;e.name&&e.upstream&&(i=e.upstream.remote,n=`${e.upstream.name}`,r=`${e.name}:${e.upstream.name}`),await this.run(C.Operation.Sync,async()=>{await this.maybeAutoStash(async()=>{const e=h.workspace.getConfiguration("git",h.Uri.file(this.root)),o=e.get("autoStash"),a=e.get("fetchOnPull"),s=e.get("pullTags"),c=e.get("followTagsWhenSync"),l=e.get("supportCancellation"),u=async e=>{a&&await this.fetchAll({},e),await this.checkIfMaybeRebased(this.HEAD?.name)&&await this._pullAndHandleTagConflict(t,i,n,{tags:s,cancellationToken:e,autoStash:o})};if(l){const e={location:h.ProgressLocation.Notification,title:h.l10n.t("Syncing. Cancelling may cause serious damages to the repository"),cancellable:!0};await h.window.withProgress(e,(e,t)=>u(t))}else await u();const d=this.remotes.find(e=>e.name===i);d&&d.isReadOnly||this.HEAD&&("number"!=typeof this.HEAD.ahead||this.HEAD.ahead>0)&&await this._push(i,r,!1,c)})})}async checkIfMaybeRebased(e){const t=h.workspace.getConfiguration("git");if(!0===t.get("ignoreRebaseWarning"))return!0;const i=await this.run(C.Operation.Log(!0),async()=>{try{const t=await this.repository.exec(["log","--oneline","--cherry",`${e??""}...${e??""}@{upstream}`,"--"]);return!t.exitCode&&/^=/.test(t.stdout)}catch{return!1}});if(!i)return!0;const n={title:h.l10n.t("Always Pull")},r={title:h.l10n.t("Pull")},o={title:h.l10n.t("Don't Pull")},a=await h.window.showWarningMessage(e?h.l10n.t('It looks like the current branch "{0}" might have been rebased. Are you sure you still want to pull into it?',e):h.l10n.t("It looks like the current branch might have been rebased. Are you sure you still want to pull into it?"),n,r,o);return a===r||a===n&&(await t.update("ignoreRebaseWarning",!0,!0),!0)}async show(e,t){return await this.run(C.Operation.Show,async()=>{try{const i=await this.repository.buffer(e,t);return await h.workspace.decode(i,{uri:h.Uri.file(t)})}catch(i){if("WrongCase"===i.gitErrorCode){const i=await this.repository.getGitFilePath(e,t),n=await this.repository.buffer(e,i);return await h.workspace.decode(n,{uri:h.Uri.file(t)})}throw i}})}async buffer(e,t){return this.run(C.Operation.Show,()=>this.repository.buffer(e,t))}getObjectFiles(e){return this.run(C.Operation.GetObjectFiles,()=>this.repository.lstree(e))}getObjectDetails(e,t){return this.run(C.Operation.GetObjectDetails,()=>this.repository.getObjectDetails(e,t))}detectObjectType(e){return this.run(C.Operation.Show,()=>this.repository.detectObjectType(e))}async apply(e,t){return await this.run(C.Operation.Apply,()=>this.repository.apply(e,t))}async getStashes(){return this.run(C.Operation.Stash,()=>this.repository.getStashes())}async createStash(e,t,i){const n=[...this.indexGroup.resourceStates.map(e=>e.resourceUri.fsPath)],r=[...i?[]:this.workingTreeGroup.resourceStates.map(e=>e.resourceUri.fsPath),...t?this.untrackedGroup.resourceStates.map(e=>e.resourceUri.fsPath):[]];return await this.run(C.Operation.Stash,async()=>{await this.repository.createStash(e,t,i),this.closeDiffEditors(n,r)})}async popStash(e){return await this.run(C.Operation.Stash,()=>this.repository.popStash(e))}async dropStash(e){return await this.run(C.Operation.Stash,()=>this.repository.dropStash(e))}async applyStash(e){return await this.run(C.Operation.Stash,()=>this.repository.applyStash(e))}async showStash(e){return await this.run(C.Operation.Stash,()=>this.repository.showStash(e))}async getCommitTemplate(){return await this.run(C.Operation.GetCommitTemplate,async()=>this.repository.getCommitTemplate())}async ignore(e){return await this.run(C.Operation.Ignore,async()=>{const t=`${this.repository.root}${d.sep}.gitignore`,i=e.map(e=>(0,E.relativePath)(this.repository.root,e.fsPath).replace(/\\|\[/g,e=>"\\"===e?"/":`\\${e}`)).join("\n"),n=await new Promise(e=>u.exists(t,e))?await h.workspace.openTextDocument(t):await h.workspace.openTextDocument(h.Uri.file(t).with({scheme:"untitled"}));await h.window.showTextDocument(n);const r=new h.WorkspaceEdit,o=n.lineAt(n.lineCount-1),a=o.isEmptyOrWhitespace?`${i}\n`:`\n${i}\n`;r.insert(n.uri,o.range.end,a),await h.workspace.applyEdit(r),await n.save()})}async rebaseAbort(){await this.run(C.Operation.RebaseAbort,async()=>await this.repository.rebaseAbort())}checkIgnore(e){return this.run(C.Operation.CheckIgnore,()=>new Promise((t,i)=>{if(0===(e=e.filter(e=>(0,E.isDescendant)(this.root,e))).length)return t(new Set);const n=this.repository.stream(["check-ignore","-v","-z","--stdin"],{stdio:[null,null,null]});n.stdin.end(e.join("\0"),"utf8");let r="";n.stdout.setEncoding("utf8"),n.stdout.on("data",e=>{r+=e});let o="";n.stderr.setEncoding("utf8"),n.stderr.on("data",e=>o+=e),n.on("error",i),n.on("exit",e=>{1===e?t(new Set):0===e?t(new Set(this.parseIgnoreCheck(r))):/ is in submodule /.test(o)?i(new w.GitError({stdout:r,stderr:o,exitCode:e,gitErrorCode:"IsInSubmodule"})):i(new w.GitError({stdout:r,stderr:o,exitCode:e}))})}))}parseIgnoreCheck(e){const t=[],i=e.split("\0");for(let e=0;et.name===e);if(!r)throw i;for(const e of this.pushErrorHandlerRegistry.getPushErrorHandlers())if(await e.handlePushError(n,r,t,i))return;throw i}}async run(e,t=()=>Promise.resolve(null),i=()=>{}){if(0!==this.state)throw new Error("Repository not initialized");let n=null;this._operations.start(e),this._onRunOperation.fire(e.kind);try{const n=await this.retryRun(e,t);return e.readOnly||await this.updateModelState(this.optimisticUpdateEnabled()?i():void 0),n}catch(t){throw n=t,"NotAGitRepository"===t.gitErrorCode&&(this.state=1),e.readOnly||await this.updateModelState(),t}finally{this._operations.end(e),this._onDidRunOperation.fire({operation:e,error:n})}}async retryRun(e,t=()=>Promise.resolve(null)){let i=0;for(;;)try{return i++,await t()}catch(t){if(!(i<=10)||"RepositoryIsLocked"!==t.gitErrorCode&&(!e.retry||"CantLockRef"!==t.gitErrorCode&&"CantRebaseMultipleBranches"!==t.gitErrorCode))throw t;await _(50*Math.pow(i,2))}}static KnownHugeFolderNames=["node_modules"];async findKnownHugeFolderPathsToIgnore(){const e=[];for(const t of U.KnownHugeFolderNames){const i=d.join(this.repository.root,t);await new Promise(e=>u.exists(i,e))&&e.push(i)}const t=await this.checkIgnore(e);return e.filter(e=>!t.has(e))}async updateModelState(e){this.updateModelStateCancellationTokenSource?.cancel(),this.updateModelStateCancellationTokenSource=new h.CancellationTokenSource,await this._updateModelState(e,this.updateModelStateCancellationTokenSource.token)}async _updateModelState(e,t){try{e&&this._updateResourceGroupsState(e);const[i,n,r,o,a,s,c,l]=await Promise.all([this.repository.getHEADRef(),this.repository.getRemotes(),this.repository.getSubmodules(),this.repository.getWorktrees(),this.getRebaseCommit(),this.isMergeInProgress(),this.isCherryPickInProgress(),this.getInputTemplate()]);this.HEAD?.name===i?.name&&this.HEAD?.commit===i?.commit&&this.HEAD?.ahead===i?.ahead&&this.HEAD?.upstream===i?.upstream||(this.unpublishedCommits=void 0),this._HEAD=i,this._remotes=n,this._submodules=r,this._worktrees=o,this.rebaseCommit=a,this.mergeInProgress=s,this.cherryPickInProgress=c,this._sourceControl.commitTemplate=l;const[u,d]=await Promise.all([this.getStatus(t),this.getRefs({},t)]);this._refs=d,this._updateResourceGroupsState(u),this._onDidChangeStatus.fire()}catch(e){if(e instanceof h.CancellationError)return;throw e}}_updateResourceGroupsState(e){e.indexGroup&&(this.indexGroup.resourceStates=e.indexGroup),e.mergeGroup&&(this.mergeGroup.resourceStates=e.mergeGroup),e.untrackedGroup&&(this.untrackedGroup.resourceStates=e.untrackedGroup),e.workingTreeGroup&&(this.workingTreeGroup.resourceStates=e.workingTreeGroup),this._isWorktreeMigrating&&e.mergeGroup&&0===e.mergeGroup.length&&(this._isWorktreeMigrating=!1),this.setCountBadge()}async getStatus(e){if(e&&e.isCancellationRequested)throw new h.CancellationError;const t=h.workspace.getConfiguration("git",h.Uri.file(this.repository.root)),i=t.get("untrackedChanges"),n=t.get("ignoreSubmodules"),r=t.get("statusLimit",1e4),o=t.get("similarityThreshold",50),a=(new Date).getTime(),{status:s,statusLength:c,didHitLimit:l}=await this.repository.getStatus({limit:r,ignoreSubmodules:n,similarityThreshold:o,untrackedChanges:i,cancellationToken:e}),u=(new Date).getTime()-a;this.isRepositoryHuge=!!l&&{limit:r},l&&this.telemetryReporter.sendTelemetryEvent("statusLimit",{ignoreSubmodules:String(n)},{limit:r,statusLength:c,totalTime:u}),u>5e3&&this.telemetryReporter.sendTelemetryEvent("statusSlow",{ignoreSubmodules:String(n),didHitLimit:String(l),didWarnAboutLimit:String(this.didWarnAboutLimit)},{statusLength:c,totalTime:u}),this._sourceControl.inputBox.validateInput=this._sourceControl.inputBox.validateInput;const m=h.workspace.getConfiguration("git"),g=!0===m.get("ignoreLimitWarning"),p=!m.get("decorations.enabled",!0);if(l&&!g&&!this.didWarnAboutLimit){const e=await this.findKnownHugeFolderPathsToIgnore(),t=h.l10n.t('The git repository at "{0}" has too many active changes, only a subset of Git features will be enabled.',this.repository.root),i={title:h.l10n.t("Don't Show Again")};if(e.length>0){const n=e[0],r=d.basename(n),o=h.l10n.t('Would you like to add "{0}" to .gitignore?',r),a={title:h.l10n.t("Yes")},s={title:h.l10n.t("No")};h.window.showWarningMessage(`${t} ${o}`,a,s,i).then(e=>{e===a?this.ignore([h.Uri.file(n)]):(e===i&&m.update("ignoreLimitWarning",!0,!1),this.didWarnAboutLimit=!0)})}else{const e={title:h.l10n.t("OK")};h.window.showWarningMessage(t,e,i).then(e=>{e===i&&m.update("ignoreLimitWarning",!0,!1),this.didWarnAboutLimit=!0})}}const f=[],y=[],v=[],w=[];return s.forEach(e=>{const t=h.Uri.file(d.join(this.repository.root,e.path)),n=e.rename?h.Uri.file(d.join(this.repository.root,e.rename)):void 0;switch(e.x+e.y){case"??":switch(i){case"mixed":return w.push(new T(this.resourceCommandResolver,2,t,7,p,void 0,this.kind));case"separate":return v.push(new T(this.resourceCommandResolver,3,t,7,p));default:return}case"!!":switch(i){case"mixed":return w.push(new T(this.resourceCommandResolver,2,t,8,p,void 0,this.kind));case"separate":return v.push(new T(this.resourceCommandResolver,3,t,8,p));default:return}case"DD":return y.push(new T(this.resourceCommandResolver,0,t,17,p));case"AU":return y.push(new T(this.resourceCommandResolver,0,t,12,p));case"UD":return y.push(new T(this.resourceCommandResolver,0,t,15,p));case"UA":return y.push(new T(this.resourceCommandResolver,0,t,13,p));case"DU":return y.push(new T(this.resourceCommandResolver,0,t,14,p));case"AA":return y.push(new T(this.resourceCommandResolver,0,t,16,p));case"UU":return y.push(new T(this.resourceCommandResolver,0,t,18,p))}switch(e.x){case"M":f.push(new T(this.resourceCommandResolver,1,t,0,p,void 0,this.kind));break;case"A":f.push(new T(this.resourceCommandResolver,1,t,1,p,void 0,this.kind));break;case"D":f.push(new T(this.resourceCommandResolver,1,t,2,p,void 0,this.kind));break;case"R":f.push(new T(this.resourceCommandResolver,1,t,3,p,n,this.kind));break;case"C":f.push(new T(this.resourceCommandResolver,1,t,4,p,n,this.kind))}switch(e.y){case"M":w.push(new T(this.resourceCommandResolver,2,t,5,p,n,this.kind));break;case"D":w.push(new T(this.resourceCommandResolver,2,t,6,p,n,this.kind));break;case"A":w.push(new T(this.resourceCommandResolver,2,t,9,p,n,this.kind));break;case"R":w.push(new T(this.resourceCommandResolver,2,t,10,p,n,this.kind));break;case"T":w.push(new T(this.resourceCommandResolver,2,t,11,p,n,this.kind))}}),{indexGroup:f,mergeGroup:y,untrackedGroup:v,workingTreeGroup:w}}setCountBadge(){const e=h.workspace.getConfiguration("git",h.Uri.file(this.repository.root)),t=e.get("countBadge"),i=e.get("untrackedChanges");let n=this.mergeGroup.resourceStates.length+this.indexGroup.resourceStates.length+this.workingTreeGroup.resourceStates.length;switch(t){case"off":n=0;break;case"tracked":"mixed"===i&&(n-=this.workingTreeGroup.resourceStates.filter(e=>7===e.type||8===e.type).length);break;case"all":"separate"===i&&(n+=this.untrackedGroup.resourceStates.length)}this._sourceControl.count=n}async getRebaseCommit(){const e=d.join(this.repository.root,".git","REBASE_HEAD"),t=d.join(this.repository.root,".git","rebase-apply"),i=d.join(this.repository.root,".git","rebase-merge");try{const[n,r,o]=await Promise.all([new Promise(e=>u.exists(t,e)),new Promise(e=>u.exists(i,e)),new Promise((t,i)=>u.readFile(e,"utf8",(e,n)=>e?i(e):t(n)))]);if(!n&&!r)return;return await this.getCommit(o.trim())}catch(e){return}}isMergeInProgress(){const e=d.join(this.repository.root,".git","MERGE_HEAD");return new Promise(t=>u.exists(e,t))}isCherryPickInProgress(){const e=d.join(this.repository.root,".git","CHERRY_PICK_HEAD");return new Promise(t=>u.exists(e,t))}async maybeAutoStash(e){if(!(h.workspace.getConfiguration("git",h.Uri.file(this.root)).get("autoStash")&&this.repository.git.compareGitVersionTo("2.27.0")<0&&(this.indexGroup.resourceStates.length>0||this.workingTreeGroup.resourceStates.some(e=>7!==e.type&&8!==e.type))))return await e();await this.repository.createStash(void 0,!0);try{return await e()}finally{await this.repository.popStash()}}onFileChange(e){h.workspace.getConfiguration("git").get("autorefresh")?this.isRepositoryHuge?this.logger.trace("[Repository][onFileChange] Skip running git status because repository is huge."):this.operations.isIdle()?this.eventuallyUpdateWhenIdleAndWait():this.logger.trace("[Repository][onFileChange] Skip running git status because an operation is running."):this.logger.trace("[Repository][onFileChange] Skip running git status because autorefresh setting is disabled.")}eventuallyUpdateWhenIdleAndWait(){this.updateWhenIdleAndWait()}async updateWhenIdleAndWait(){await this.whenIdleAndFocused(),await this.status(),await _(5e3)}async whenIdleAndFocused(){for(;;){if(this.operations.isIdle()){if(!h.window.state.focused){const e=(0,E.filterEvent)(h.window.onDidChangeWindowState,e=>e.focused);await(0,E.eventToPromise)(e);continue}return}await(0,E.eventToPromise)(this.onDidRunOperation)}}get headLabel(){const e=this.HEAD;return e?(e.name||(e.commit||"").substr(0,8))+(this.workingTreeGroup.resourceStates.length+this.untrackedGroup.resourceStates.length>0?"*":"")+(this.indexGroup.resourceStates.length>0?"+":"")+(this.mergeInProgress||this.rebaseCommit?"!":""):""}get syncLabel(){if(!(this.HEAD&&this.HEAD.name&&this.HEAD.commit&&this.HEAD.upstream&&(this.HEAD.ahead||this.HEAD.behind)))return"";const e=this.HEAD&&this.HEAD.remote||this.HEAD.upstream.remote,t=this.remotes.find(t=>t.name===e);return t&&t.isReadOnly?`${this.HEAD.behind}↓`:`${this.HEAD.behind}↓ ${this.HEAD.ahead}↑`}get syncTooltip(){if(!(this.HEAD&&this.HEAD.name&&this.HEAD.commit&&this.HEAD.upstream&&(this.HEAD.ahead||this.HEAD.behind)))return h.l10n.t("Synchronize Changes");const e=this.HEAD&&this.HEAD.remote||this.HEAD.upstream.remote,t=this.remotes.find(t=>t.name===e);return t&&t.isReadOnly||!this.HEAD.ahead?h.l10n.t("Pull {0} commits from {1}/{2}",this.HEAD.behind,this.HEAD.upstream.remote,this.HEAD.upstream.name):this.HEAD.behind?h.l10n.t("Pull {0} and push {1} commits between {2}/{3}",this.HEAD.behind,this.HEAD.ahead,this.HEAD.upstream.remote,this.HEAD.upstream.name):h.l10n.t("Push {0} commits to {1}/{2}",this.HEAD.ahead,this.HEAD.upstream.remote,this.HEAD.upstream.name)}updateInputBoxPlaceholder(){const e=this.headShortName;this._sourceControl.inputBox.placeholder=e?h.l10n.t('Message ({0} to commit on "{1}")',"{0}",e):h.l10n.t("Message ({0} to commit)")}updateBranchProtectionMatchers(e){this.branchProtection.clear();for(const t of this.branchProtectionProviderRegistry.getBranchProtectionProviders(e))for(const{remote:e,rules:i}of t.provideBranchProtection()){const t=[];for(const e of i){const i=e.include&&0!==e.include.length?(0,m.default)(e.include):void 0,n=e.exclude&&0!==e.exclude.length?(0,m.default)(e.exclude):void 0;(i||n)&&t.push({include:i,exclude:n})}0!==t.length&&this.branchProtection.set(e,t)}this._onDidChangeBranchProtection.fire()}optimisticUpdateEnabled(){return!0===h.workspace.getConfiguration("git",h.Uri.file(this.root)).get("optimisticUpdate")}async handleTagConflict(e,t){if(!(e=e??this.HEAD?.upstream?.remote))throw new Error("Unable to resolve tag conflict due to missing remote.");const i=[];for(const e of t.matchAll(/^ ! \[rejected\]\s+([^\s]+)\s+->\s+([^\s]+)\s+\(would clobber existing tag\)$/gm))3===e.length&&i.push(e[1]);if(0===i.length)throw new Error(`Unable to extract tag names from error message: ${t}`);const n=h.workspace.getConfiguration("git",h.Uri.file(this.repository.root));if(!0!==n.get("replaceTagsWhenPull",!1)){const e=h.l10n.t("Replace Local Tag(s)"),t=h.l10n.t("Always Replace Local Tag(s)"),r=h.l10n.t("Unable to pull from remote repository due to conflicting tag(s): {0}. Would you like to resolve the conflict by replacing the local tag(s)?",i.join(", ")),o=await h.window.showErrorMessage(r,{modal:!0},e,t);if(o!==e&&o!==t)return!1;o===t&&await n.update("replaceTagsWhenPull",!0,!0)}return await this.repository.fetchTags({remote:e,tags:i,force:!0}),!0}isBranchProtected(e=this.HEAD){if(e?.name){const t=this.branchProtection.get("");if(1===t?.length&&t[0].include&&t[0].include(e.name))return!0;if(e.upstream?.remote){const t=this.branchProtection.get(e.upstream.remote);if(t&&0!==t?.length)return t.some(t=>{const i=!t.include||t.include(e.name),n=!!t.exclude&&t.exclude(e.name);return i&&!n})}}return!1}async getUnpublishedCommits(){if(this.unpublishedCommits)return this.unpublishedCommits;if(!this.HEAD?.name)return this.unpublishedCommits=new Set,this.unpublishedCommits;if(this.HEAD.upstream)if(0===this.HEAD.ahead)this.unpublishedCommits=new Set;else{const e=`${this.HEAD.upstream.remote}/${this.HEAD.upstream.name}`,t=this.HEAD.name,i=await this.repository.revList(e,t);this.unpublishedCommits=new Set(i)}else if(this.historyProvider.currentHistoryItemBaseRef){const e=this.historyProvider.currentHistoryItemBaseRef.id,t=this.HEAD.name,i=await this.repository.revList(e,t);this.unpublishedCommits=new Set(i)}else this.unpublishedCommits=new Set;return this.unpublishedCommits}dispose(){this.disposables=(0,E.dispose)(this.disposables)}}})();t.Repository=G;class L{_repository;logger;label=h.l10n.t("Git Local Changes (Index)");constructor(e,t){this._repository=e,this.logger=t}async provideOriginalResource(e){if(this.logger.trace(`[StagedResourceQuickDiffProvider][provideOriginalResource] Resource: ${e.toString()}`),"file"!==e.scheme)return void this.logger.trace(`[StagedResourceQuickDiffProvider][provideOriginalResource] Resource is not a file: ${e.scheme}`);if(0!==((await h.workspace.fs.stat(e)).type&h.FileType.SymbolicLink))return void this.logger.trace(`[StagedResourceQuickDiffProvider][provideOriginalResource] Resource is a symbolic link: ${e.toString()}`);if(!this._repository.indexGroup.resourceStates.some(t=>(0,E.pathEquals)(t.resourceUri.fsPath,e.fsPath)))return void this.logger.trace(`[StagedResourceQuickDiffProvider][provideOriginalResource] Resource is not part of a index group: ${e.toString()}`);const t=(0,S.toGitUri)(e,"HEAD",{replaceFileExtension:!0});return this.logger.trace(`[StagedResourceQuickDiffProvider][provideOriginalResource] Original resource: ${t.toString()}`),t}}t.StagedResourceQuickDiffProvider=L},7847:(e,t,i)=>{"use strict";i.d(t,{i:()=>n,x:()=>r});var n=500,r="Microsoft_ApplicationInsights_BypassAjaxInstrumentation"},7867:(e,t,i)=>{"use strict";i.d(t,{$:()=>u,M:()=>d});var n,r=i(269),o=i(6182),a=i(6492),s=[a.fc,a.Yp,a.dI,a.l0],c=null;function l(e,t){return function(){var i=arguments,n=u(t);if(n){var r=n.listener;r&&r[e]&&r[e][o.y9](r,i)}}}function u(e){var t,i=c;return i||!0===e.disableDbgExt||(i=c||((t=(0,r.zS2)("Microsoft"))&&(c=t.ApplicationInsights),c)),i?i.ChromeDbgExt:null}function d(e){if(!n){n={};for(var t=0;te(e=>i.call(n,t(e)),null,r)},t.filterEvent=function(e,t){return(i,n,r)=>e(e=>t(e)&&i.call(n,e),null,r)},t.runAndSubscribeEvent=function(e,t,i){return t(i),e(e=>t(e))},t.anyEvent=function(...e){return(t,i,n)=>{const r=u(e.map(e=>e(e=>t.call(i,e))));return n?.push(r),r}},t.done=function(e){return e.then(()=>{})},t.onceEvent=d,t.debounceEvent=function(e,t){return(i,n,r)=>{let o;return e(e=>{clearTimeout(o),o=setTimeout(()=>i.call(n,e),t)},null,r)}},t.eventToPromise=m,t.once=function(e){return(...t)=>e(...t)},t.assign=function(e,...t){for(const i of t)Object.keys(i).forEach(t=>e[t]=i[t]);return e},t.uniqBy=function(e,t){const i=Object.create(null);return e.filter(e=>{const n=t(e);return!i[n]&&(i[n]=!0,!0)})},t.groupBy=function(e,t){return e.reduce((e,i)=>{const n=t(i);return e[n]=[...e[n]||[],i],e},Object.create(null))},t.mkdirp=async function e(t,i){const n=async()=>{try{await a.promises.mkdir(t,i)}catch(e){if("EEXIST"===e.code){if((await a.promises.stat(t)).isDirectory())return;throw new Error(`'${t}' exists and is not a directory.`)}throw e}};if(t===(0,o.dirname)(t))return!0;try{await n()}catch(r){if("ENOENT"!==r.code)throw r;await e((0,o.dirname)(t),i),await n()}return!0},t.uniqueFilter=function(e){const t=Object.create(null);return i=>{const n=e(i);return!t[n]&&(t[n]=!0,!0)}},t.find=function(e,t){let i;return e.some(e=>!!t(e)&&(i=e,!0)),i},t.grep=async function(e,t){return new Promise((i,n)=>{const r=(0,a.createReadStream)(e,{encoding:"utf8"}),o=(0,s.default)(r);o.on("data",e=>{t.test(e)&&(r.close(),i(!0))}),o.on("error",n),o.on("end",()=>i(!1))})},t.readBytes=function(e,t){return new Promise((i,n)=>{let r=!1;const o=Buffer.allocUnsafe(t);let a=0;e.on("data",i=>{const n=Math.min(t-a,i.length);i.copy(o,a,0,n),a+=n,a===t&&e.destroy()}),e.on("error",e=>{r||(r=!0,n(e))}),e.on("close",()=>{r||(r=!0,i(o.slice(0,a)))})})},t.detectUnicodeEncoding=function(e){if(e.length<2)return null;const t=e.readUInt8(0),i=e.readUInt8(1);if(254===t&&255===i)return"utf16be";if(255===t&&254===i)return"utf16le";if(e.length<3)return null;const n=e.readUInt8(2);return 239===t&&187===i&&191===n?"utf8":null},t.truncate=h,t.subject=function(e){const t=e.indexOf("\n");return-1===t?e:h(e,t,!1)},t.isDescendant=p,t.pathEquals=function(e,t){return g(e)===g(t)},t.relativePath=function(e,t){return f(e,t)??(0,o.relative)(e,t)},t.relativePathWithNoFallback=f,t.splitInChunks=function*(e,t){let i=[],n=0;for(const r of e){let e=n+r.length;e>t&&i.length>0&&(yield i,i=[],e=r.length),i.push(r),n=e}i.length>0&&(yield i)},t.isDefined=function(e){return!y(e)},t.isUndefinedOrNull=y,t.isUndefined=v,t.deltaHistoryItemRefs=function(e,t){if(0===e.length)return{added:t,modified:[],removed:[]};const i=[],n=[],r=[];let o=0,a=0;for(;;){if(o===e.length){i.push(...t.slice(a));break}if(a===t.length){r.push(...e.slice(o));break}const s=e[o],c=t[a],l=s.id.localeCompare(c.id);0===l?(s.revision!==c.revision&&n.push(c),o+=1,a+=1):l<0?(r.push(s),o+=1):l>0&&(i.push(c),a+=1)}return{added:i,modified:n,removed:r}},t.fromNow=function e(t,i,n,o){"number"!=typeof t&&(t=t.getTime());const a=Math.round(((new Date).getTime()-t)/1e3);if(a<-30)return r.l10n.t("in {0}",e((new Date).getTime()+1e3*a,!1));if(!o&&a<30)return r.l10n.t("now");let s;return a1)return i.slice(1,-1);let r=i;for(let i=t+1;ie.dispose()),[]}function l(e){return{dispose:e}}function u(e){return l(()=>c(e))}function d(e){return(t,i,n)=>{const r=e(e=>(r.dispose(),t.call(i,e)),null,n);return r}}function m(e){return new Promise(t=>d(e)(t))}function h(e,t=20,i=!0){return e.length<=t?e:`${e.substring(0,t)}${i?"…":""}`}function g(e){return(t.isWindows||t.isMacintosh)&&(e=e.toLowerCase()),/[/\\]$/.test(e)&&(e=e.substring(0,e.length-1)),(0,o.normalize)(e)}function p(e,t){return e===t||(e=g(e),t=g(t),e.charAt(e.length-1)!==o.sep&&(e+=o.sep),t.startsWith(e))}function f(e,t){if(e.charAt(e.length-1)!==o.sep&&(e+=o.sep),p(e,t)&&e.lengthnull),t.Limiter=class{runningPromises;maxDegreeOfParalellism;outstandingPromises;constructor(e){this.maxDegreeOfParalellism=e,this.outstandingPromises=[],this.runningPromises=0}queue(e){return new Promise((t,i)=>{this.outstandingPromises.push({factory:e,c:t,e:i}),this.consume()})}consume(){for(;this.outstandingPromises.length&&this.runningPromisesthis.consumed(),()=>this.consumed())}}consumed(){this.runningPromises--,this.outstandingPromises.length>0&&this.consume()}},t.PromiseSource=class{_onDidComplete=new r.EventEmitter;_promise;get promise(){return this._promise?this._promise:m(this._onDidComplete.event).then(e=>{if(e.success)return e.value;throw e.err})}resolve(e){this._promise||(this._promise=Promise.resolve(e),this._onDidComplete.fire({success:!0,value:e}))}reject(e){this._promise||(this._promise=Promise.reject(e),this._onDidComplete.fire({success:!1,err:e}))}},function(e){function t(e,t,i,n){return{major:"string"==typeof e?parseInt(e,10):e,minor:"string"==typeof t?parseInt(t,10):t,patch:null==i?0:"string"==typeof i?parseInt(i,10):i,pre:n}}function i(e){const[i,n]=e.split("-"),[r,o,a]=i.split(".");return t(r,o,a,n)}e.compare=function(e,t){return"string"==typeof e&&(e=i(e)),"string"==typeof t&&(t=i(t)),e.major>t.major?1:e.majort.minor?1:e.minort.patch?1:e.patch{"use strict";i.d(t,{HQ:()=>p,Rr:()=>l,Vj:()=>g,Vk:()=>d,Vt:()=>m,_T:()=>f,lq:()=>c,pJ:()=>u,qW:()=>y,xP:()=>h,zx:()=>s});var n=i(269),r=i(3775),o=i(7292),a=i(5130);function s(e,t,i){var r=t[a.oI],o=c(e,t);if(o[a.oI]!==r){for(var s=0,l=o;void 0!==i[l];)s++,l=(0,n.P0f)(o,0,147)+y(s);o=l}return o}function c(e,t){var i;return t&&(t=(0,n.EHq)((0,n.oJg)(t)))[a.oI]>150&&(i=(0,n.P0f)(t,0,150),(0,r.ZP)(e,2,57,"name is too long. It has been truncated to 150 characters.",{name:t},!0)),i||t}function l(e,t,i){var o;return void 0===i&&(i=1024),t&&(i=i||1024,(t=(0,n.EHq)((0,n.oJg)(t)))[a.oI]>i&&(o=(0,n.P0f)(t,0,i),(0,r.ZP)(e,2,61,"string value is too long. It has been truncated to "+i+" characters.",{value:t},!0))),o||t}function u(e,t){return f(e,t,2048,66)}function d(e,t){var i;return t&&t[a.oI]>32768&&(i=(0,n.P0f)(t,0,32768),(0,r.ZP)(e,2,56,"message is too long, it has been truncated to 32768 characters.",{message:t},!0)),i||t}function m(e,t){var i;if(t){var o=""+t;o[a.oI]>32768&&(i=(0,n.P0f)(o,0,32768),(0,r.ZP)(e,2,52,"exception is too long, it has been truncated to 32768 characters.",{exception:t},!0))}return i||t}function h(e,t){if(t){var i={};(0,n.zav)(t,function(t,c){if((0,n.Gvm)(c)&&(0,o.Z)())try{c=(0,o.hm)()[a.Jj](c)}catch(t){(0,r.ZP)(e,2,49,"custom property is not valid",{exception:t},!0)}c=l(e,c,8192),t=s(e,t,i),i[t]=c}),t=i}return t}function g(e,t){if(t){var i={};(0,n.zav)(t,function(t,n){t=s(e,t,i),i[t]=n}),t=i}return t}function p(e,t){return t?f(e,t,128,69)[a.xE]():t}function f(e,t,i,o){var s;return t&&(t=(0,n.EHq)((0,n.oJg)(t)))[a.oI]>i&&(s=(0,n.P0f)(t,0,i),(0,r.ZP)(e,2,o,"input is too long, it has been truncated to "+i+" characters.",{data:t},!0)),s||t}function y(e){var t="00"+e;return(0,n.hKY)(t,t[a.oI]-3)}},8e3:function(e,t,i){"use strict";var n=this&&this.__runInitializers||function(e,t,i){for(var n=arguments.length>2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0};Object.defineProperty(t,"__esModule",{value:!0}),t.AVATAR_SIZE=t.GitHistoryProvider=void 0,t.getHistoryItemHoverCommitHashCommands=g,t.processHistoryItemRemoteHoverCommands=p,t.getHistoryItemHover=f;const o=i(1398),a=i(7681),s=i(7937),c=i(4847),l=i(6867),u=i(8107),d=i(4399);function m(e,t){const i=e=>e.id.startsWith("refs/heads/")?1:e.id.startsWith("refs/remotes/")?2:e.id.startsWith("refs/tags/")?3:99,n=i(e),r=i(t);return n!==r?n-r:e.name.localeCompare(t.name)}let h=(()=>{let e,t=[];return class{static{const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[d.throttle],r(this,null,e,{kind:"method",name:"onDidRunWriteOperation",static:!1,private:!1,access:{has:e=>"onDidRunWriteOperation"in e,get:e=>e.onDidRunWriteOperation},metadata:i},null,t),i&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})}historyItemDetailProviderRegistry=n(this,t);repository;logger;_onDidChangeDecorations=new o.EventEmitter;onDidChangeFileDecorations=this._onDidChangeDecorations.event;_currentHistoryItemRef;get currentHistoryItemRef(){return this._currentHistoryItemRef}_currentHistoryItemRemoteRef;get currentHistoryItemRemoteRef(){return this._currentHistoryItemRemoteRef}_currentHistoryItemBaseRef;get currentHistoryItemBaseRef(){return this._currentHistoryItemBaseRef}_onDidChangeCurrentHistoryItemRefs=new o.EventEmitter;onDidChangeCurrentHistoryItemRefs=this._onDidChangeCurrentHistoryItemRefs.event;_onDidChangeHistoryItemRefs=new o.EventEmitter;onDidChangeHistoryItemRefs=this._onDidChangeHistoryItemRefs.event;_HEAD;_historyItemRefs=[];commitShortHashLength=7;historyItemDecorations=new Map;disposables=[];constructor(e,t,i){this.historyItemDetailProviderRegistry=e,this.repository=t,this.logger=i,this.disposables.push(o.workspace.onDidChangeConfiguration(this.onDidChangeConfiguration)),this.onDidChangeConfiguration();const n=(0,s.filterEvent)(t.onDidRunOperation,e=>!e.operation.readOnly);this.disposables.push(n(this.onDidRunWriteOperation,this)),this.disposables.push(o.window.registerFileDecorationProvider(this))}onDidChangeConfiguration(e){if(e&&!e.affectsConfiguration("git.commitShortHashLength"))return;const t=o.workspace.getConfiguration("git",o.Uri.file(this.repository.root));this.commitShortHashLength=t.get("commitShortHashLength",7)}async onDidRunWriteOperation(e){if(!this.repository.HEAD)return this.logger.trace("[GitHistoryProvider][onDidRunWriteOperation] repository.HEAD is undefined"),this._currentHistoryItemRef=this._currentHistoryItemRemoteRef=this._currentHistoryItemBaseRef=void 0,void this._onDidChangeCurrentHistoryItemRefs.fire();const t=this.repository.refs.map(e=>this.toSourceControlHistoryItemRef(e)).sort((e,t)=>e.id.localeCompare(t.id)),i=(0,s.deltaHistoryItemRefs)(this._historyItemRefs,t);this._historyItemRefs=t;let n="",r="";switch(this.repository.HEAD.type){case 0:if(void 0!==this.repository.HEAD.name)if(n=`refs/heads/${this.repository.HEAD.name}`,r=this.repository.HEAD.name,this.repository.HEAD.upstream?"."===this.repository.HEAD.upstream.remote?this._currentHistoryItemRemoteRef={id:`refs/heads/${this.repository.HEAD.upstream.name}`,name:this.repository.HEAD.upstream.name,revision:this.repository.HEAD.upstream.commit,icon:new o.ThemeIcon("git-branch")}:this._currentHistoryItemRemoteRef={id:`refs/remotes/${this.repository.HEAD.upstream.remote}/${this.repository.HEAD.upstream.name}`,name:`${this.repository.HEAD.upstream.remote}/${this.repository.HEAD.upstream.name}`,revision:this.repository.HEAD.upstream.commit,icon:new o.ThemeIcon("cloud")}:this._currentHistoryItemRemoteRef=void 0,this._HEAD?.name!==this.repository.HEAD.name){const e=await this.resolveHEADMergeBase();this._currentHistoryItemBaseRef=e&&e.name&&e.remote&&(e.remote!==this.repository.HEAD.upstream?.remote||e.name!==this.repository.HEAD.upstream?.name)?{id:`refs/remotes/${e.remote}/${e.name}`,name:`${e.remote}/${e.name}`,revision:e.commit,icon:new o.ThemeIcon("cloud")}:void 0}else{const e=i.modified.find(e=>e.id===this._currentHistoryItemBaseRef?.id);this._currentHistoryItemBaseRef&&e&&(this._currentHistoryItemBaseRef={...this._currentHistoryItemBaseRef,revision:e.revision})}else n=this.repository.HEAD.commit??"",r=this.repository.HEAD.commit??"",this._currentHistoryItemRemoteRef=void 0,this._currentHistoryItemBaseRef=void 0;break;case 2:n=`refs/tags/${this.repository.HEAD.name}`,r=this.repository.HEAD.name??this.repository.HEAD.commit??"",this._currentHistoryItemRemoteRef=void 0,this._currentHistoryItemBaseRef=void 0}this._HEAD?.ahead!==this.repository.HEAD?.ahead&&o.commands.executeCommand("setContext","git.currentHistoryItemIsAhead",(this.repository.HEAD?.ahead??0)>0),this._HEAD?.behind!==this.repository.HEAD?.behind&&o.commands.executeCommand("setContext","git.currentHistoryItemIsBehind",(this.repository.HEAD?.behind??0)>0),this._HEAD=this.repository.HEAD,this._currentHistoryItemRef={id:n,name:r,revision:this.repository.HEAD.commit,icon:new o.ThemeIcon("target")},this._onDidChangeCurrentHistoryItemRefs.fire(),this.logger.trace(`[GitHistoryProvider][onDidRunWriteOperation] currentHistoryItemRef: ${JSON.stringify(this._currentHistoryItemRef)}`),this.logger.trace(`[GitHistoryProvider][onDidRunWriteOperation] currentHistoryItemRemoteRef: ${JSON.stringify(this._currentHistoryItemRemoteRef)}`),this.logger.trace(`[GitHistoryProvider][onDidRunWriteOperation] currentHistoryItemBaseRef: ${JSON.stringify(this._currentHistoryItemBaseRef)}`);const a="Fetch"===e.operation.kind&&!1===e.operation.showProgress;this._onDidChangeHistoryItemRefs.fire({...i,silent:a});const c={added:i.added.map(e=>e.id),modified:i.modified.map(e=>e.id),removed:i.removed.map(e=>e.id),silent:a};this.logger.trace(`[GitHistoryProvider][onDidRunWriteOperation] historyItemRefs: ${JSON.stringify(c)}`)}async provideHistoryItemRefs(e){const t=await this.repository.getRefs({pattern:e}),i=[],n=[],r=[];for(const e of t)switch(e.type){case 1:n.push(this.toSourceControlHistoryItemRef(e));break;case 2:r.push(this.toSourceControlHistoryItemRef(e));break;default:i.push(this.toSourceControlHistoryItemRef(e))}return[...i,...n,...r]}async provideHistoryItems(e,t){if(!this.currentHistoryItemRef||!e.historyItemRefs)return[];let i={refNames:Array.from(new Set(e.historyItemRefs)),shortStats:!0};try{if(void 0===e.limit||"number"==typeof e.limit)i={...i,maxEntries:e.limit??50};else if("string"==typeof e.limit.id){const t=await this.repository.getCommit(e.limit.id),n=t.parents.length>0?t.parents[0]:await this.repository.getEmptyTree();i={...i,range:`${n}..`}}"number"==typeof e.skip&&(i={...i,skip:e.skip});const n="string"==typeof e.filterText&&""!==e.filterText?await this._searchHistoryItems(e.filterText.trim(),i,t):await this.repository.log({...i,silent:!0},t);if(t.isCancellationRequested)return[];const r={commits:n.map(e=>({hash:e.hash,authorName:e.authorName,authorEmail:e.authorEmail})),size:20},a=await(0,u.provideSourceControlHistoryItemAvatar)(this.historyItemDetailProviderRegistry,this.repository,r),c=await(0,u.provideSourceControlHistoryItemHoverCommands)(this.historyItemDetailProviderRegistry,this.repository)??[];await(0,l.ensureEmojis)();const d=[];for(const e of n){const t=(0,l.emojify)(e.message),i=await(0,u.provideSourceControlHistoryItemMessageLinks)(this.historyItemDetailProviderRegistry,this.repository,t)??t,n=a?.get(e.hash),r=this._resolveHistoryItemRefs(e),m=[g(o.Uri.file(this.repository.root),e.hash),p(c,e.hash)],h=f(n,e.authorName,e.authorEmail,e.authorDate??e.commitDate,i,e.shortStat,m);d.push({id:e.hash,parentIds:e.parents,subject:(0,s.subject)(t),message:i,author:e.authorName,authorEmail:e.authorEmail,authorIcon:n?o.Uri.parse(n):new o.ThemeIcon("account"),displayId:(0,s.truncate)(e.hash,this.commitShortHashLength,!1),timestamp:e.authorDate?.getTime(),statistics:e.shortStat??{files:0,insertions:0,deletions:0},references:0!==r.length?r:void 0,tooltip:h})}return d}catch(t){return this.logger.error(`[GitHistoryProvider][provideHistoryItems] Failed to get history items with options '${JSON.stringify(e)}': ${t}`),[]}}async provideHistoryItemChanges(e,t){t=t??await this.repository.getEmptyTree();const i=[],n=[],r=await this.repository.diffBetween2(t,e);for(const s of r){const r=s.uri.with({query:`ref=${e}`});n.push({uri:r,...(0,c.toMultiFileDiffEditorUris)(s,t,e)});const l=a.Resource.getStatusLetter(s.status),u=a.Resource.getStatusText(s.status),d=a.Resource.getStatusColor(s.status),m=new o.FileDecoration(l,u,d);this.historyItemDecorations.set(r.toString(),m),i.push(r)}return this._onDidChangeDecorations.fire(i),n}async resolveHistoryItem(e,t){try{const i=await this.repository.getCommit(e);if(!i||t.isCancellationRequested)return;const n={commits:[{hash:i.hash,authorName:i.authorName,authorEmail:i.authorEmail}],size:20},r=await(0,u.provideSourceControlHistoryItemAvatar)(this.historyItemDetailProviderRegistry,this.repository,n);await(0,l.ensureEmojis)();const a=(0,l.emojify)(i.message),c=await(0,u.provideSourceControlHistoryItemMessageLinks)(this.historyItemDetailProviderRegistry,this.repository,a)??a,d=a.indexOf("\n"),m=-1!==d?`${(0,s.truncate)(a,d,!1)}`:a,h=r?.get(i.hash),g=this._resolveHistoryItemRefs(i);return{id:i.hash,parentIds:i.parents,subject:m,message:c,author:i.authorName,authorEmail:i.authorEmail,authorIcon:h?o.Uri.parse(h):new o.ThemeIcon("account"),displayId:(0,s.truncate)(i.hash,this.commitShortHashLength,!1),timestamp:i.authorDate?.getTime(),statistics:i.shortStat??{files:0,insertions:0,deletions:0},references:0!==g.length?g:void 0}}catch(t){return void this.logger.error(`[GitHistoryProvider][resolveHistoryItem] Failed to resolve history item '${e}': ${t}`)}}async resolveHistoryItemChatContext(e){try{return await this.repository.showChanges(e)}catch(t){this.logger.error(`[GitHistoryProvider][resolveHistoryItemChatContext] Failed to resolve history item '${e}': ${t}`)}}async resolveHistoryItemChangeRangeChatContext(e,t,i,n){try{const r=await this.repository.showChangesBetween(t,e,i);if(n.isCancellationRequested)return;return`Output of git log -p ${t}..${e} -- ${i}:\n\n${r}`}catch(t){this.logger.error(`[GitHistoryProvider][resolveHistoryItemChangeRangeChatContext] Failed to resolve history item change range '${e}' for '${i}': ${t}`)}}async resolveHistoryItemRefsCommonAncestor(e){try{if(0===e.length)return;if(1===e.length&&e[0]===this.currentHistoryItemRef?.id){if(this.currentHistoryItemRemoteRef)return await this.repository.getMergeBase(e[0],this.currentHistoryItemRemoteRef.id);if(this.currentHistoryItemBaseRef)return await this.repository.getMergeBase(e[0],this.currentHistoryItemBaseRef.id);const t=await this.repository.log({maxParents:0,refNames:["HEAD"]});if(t.length>0)return t[0].hash}else if(e.length>1)return await this.repository.getMergeBase(e[0],e[1],...e.slice(2))}catch(t){this.logger.error(`[GitHistoryProvider][resolveHistoryItemRefsCommonAncestor] Failed to resolve common ancestor for ${e.join(",")}: ${t}`)}}provideFileDecoration(e){return this.historyItemDecorations.get(e.toString())}_resolveHistoryItemRefs(e){const t=[];for(const i of e.refNames)if("refs/remotes/origin/HEAD"!==i)switch(!0){case i.startsWith("HEAD -> refs/heads/"):t.push({id:i.substring(8),name:i.substring(19),revision:e.hash,category:o.l10n.t("branches"),icon:new o.ThemeIcon("target")});break;case i.startsWith("refs/heads/"):t.push({id:i,name:i.substring(11),revision:e.hash,category:o.l10n.t("branches"),icon:new o.ThemeIcon("git-branch")});break;case i.startsWith("refs/remotes/"):t.push({id:i,name:i.substring(13),revision:e.hash,category:o.l10n.t("remote branches"),icon:new o.ThemeIcon("cloud")});break;case i.startsWith("tag: refs/tags/"):t.push({id:i.substring(5),name:i.substring(15),revision:e.hash,category:o.l10n.t("tags"),icon:new o.ThemeIcon("tag")})}return t.sort(m)}async resolveHEADMergeBase(){try{if(0!==this.repository.HEAD?.type||!this.repository.HEAD?.name)return;return await this.repository.getBranchBase(this.repository.HEAD.name)}catch(e){return void this.logger.error(`[GitHistoryProvider][resolveHEADMergeBase] Failed to resolve merge base for ${this.repository.HEAD?.name}: ${e}`)}}async _searchHistoryItems(e,t,i){if(i.isCancellationRequested)return[];const n=new Map,[r,o]=await Promise.all([this.repository.log({...t,refNames:void 0,author:e,silent:!0},i),this.repository.log({...t,refNames:void 0,grep:e,silent:!0},i)]);for(const e of[...r,...o])n.has(e.hash)||n.set(e.hash,e);return Array.from(n.values()).slice(0,t.maxEntries??50)}toSourceControlHistoryItemRef(e){switch(e.type){case 1:return{id:`refs/remotes/${e.name}`,name:e.name??"",description:e.commit?o.l10n.t("Remote branch at {0}",(0,s.truncate)(e.commit,this.commitShortHashLength,!1)):void 0,revision:e.commit,icon:new o.ThemeIcon("cloud"),category:o.l10n.t("remote branches")};case 2:return{id:`refs/tags/${e.name}`,name:e.name??"",description:e.commit?o.l10n.t("Tag at {0}",(0,s.truncate)(e.commit,this.commitShortHashLength,!1)):void 0,revision:e.commit,icon:new o.ThemeIcon("tag"),category:o.l10n.t("tags")};default:return{id:`refs/heads/${e.name}`,name:e.name??"",description:e.commit?(0,s.truncate)(e.commit,this.commitShortHashLength,!1):void 0,revision:e.commit,icon:new o.ThemeIcon("git-branch"),category:o.l10n.t("branches")}}}dispose(){(0,s.dispose)(this.disposables)}}})();function g(e,t){return[{title:`$(git-commit) ${(0,s.getCommitShortHash)(e,t)}`,tooltip:o.l10n.t("Open Commit"),command:"git.viewCommit",arguments:[e,t,e]},{title:"$(copy)",tooltip:o.l10n.t("Copy Commit Hash"),command:"git.copyContentToClipboard",arguments:[t]}]}function p(e,t){return e.map(e=>({...e,arguments:[...e.arguments??[],t]}))}function f(e,i,n,r,a,c,u){const d=new o.MarkdownString("",!0);if(d.isTrusted={enabledCommands:u?.flat().map(e=>e.command)??[]},i){if(e?(d.appendMarkdown("!["),d.appendText(i),d.appendMarkdown("]("),d.appendText(e),d.appendMarkdown(`|width=${t.AVATAR_SIZE},height=${t.AVATAR_SIZE})`)):d.appendMarkdown("$(account)"),n?(d.appendMarkdown(" [**"),d.appendText(i),d.appendMarkdown("**](mailto:"),d.appendText(n),d.appendMarkdown(")")):(d.appendMarkdown(" **"),d.appendText(i),d.appendMarkdown("**")),r&&!isNaN(new Date(r).getTime())){const e=new Date(r).toLocaleString(void 0,{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"numeric"});d.appendMarkdown(", $(history)"),d.appendText(` ${(0,s.fromNow)(r,!0,!0)} (${e})`)}d.appendMarkdown("\n\n")}if(d.appendMarkdown(`${(0,l.emojify)(a.replace(/!\[/g,"![").replace(/\r\n|\r|\n/g,"\n\n"))}\n\n`),d.appendMarkdown("---\n\n"),c&&(d.appendMarkdown(`${1===c.files?o.l10n.t("{0} file changed",c.files):o.l10n.t("{0} files changed",c.files)}`),c.insertions&&d.appendMarkdown(`, ${1===c.insertions?o.l10n.t("{0} insertion{1}",c.insertions,"(+)"):o.l10n.t("{0} insertions{1}",c.insertions,"(+)")}`),c.deletions&&d.appendMarkdown(`, ${1===c.deletions?o.l10n.t("{0} deletion{1}",c.deletions,"(-)"):o.l10n.t("{0} deletions{1}",c.deletions,"(-)")}`),d.appendMarkdown("\n\n---\n\n")),u&&u.length>0)for(let e=0;e`[${e.title}](command:${e.command}?${encodeURIComponent(JSON.stringify(e.arguments))} "${e.tooltip}")`);d.appendMarkdown(t.join(" "))}return d}t.GitHistoryProvider=h,t.AVATAR_SIZE=20},8107:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.provideSourceControlHistoryItemAvatar=async function(e,t,i){for(const r of e.getSourceControlHistoryItemDetailsProviders()){const e=await r.provideAvatar(new n.ApiRepository(t),i);if(e)return e}},t.provideSourceControlHistoryItemHoverCommands=async function(e,t){for(const i of e.getSourceControlHistoryItemDetailsProviders()){const e=await i.provideHoverCommands(new n.ApiRepository(t));if(e)return e}},t.provideSourceControlHistoryItemMessageLinks=async function(e,t,i){for(const r of e.getSourceControlHistoryItemDetailsProviders()){const e=await r.provideMessageLinks(new n.ApiRepository(t),i);if(e)return e}};const n=i(6199)},8122:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Deferred=void 0,t.Deferred=class{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((e,t)=>{this.reject=t,this.resolve=e})}}},8156:(e,t,i)=>{"use strict";i.d(t,{NS:()=>m,Q6:()=>d,Z4:()=>p,r2:()=>g});var n=i(8279),r=i(269),o=i(6182),a=i(6492),s="ctx",c="ParentContextKey",l="ChildrenContextKey",u=null,d=function(){function e(t,i,n){var a,u=this;u.start=(0,r.f0d)(),u[o.RS]=t,u[o.tI]=n,u[o.Zu]=function(){return!1},(0,r.Tnt)(i)&&(0,r.vF1)(u,"payload",{g:function(){return!a&&(0,r.Tnt)(i)&&(a=i(),i=null),a}}),u[o.O_]=function(t){return t?t===e[c]||t===e[l]?u[t]:(u[s]||{})[t]:null},u[o.e_]=function(t,i){t&&(t===e[c]?(u[t]||(u[o.Zu]=function(){return!0}),u[t]=i):t===e[l]?u[t]=i:(u[s]=u[s]||{})[t]=i)},u[o.Ru]=function(){var t=0,i=u[o.O_](e[l]);if((0,r.cyL)(i))for(var n=0;n{"use strict";i.d(t,{Dv:()=>l,Qo:()=>M,Rf:()=>T,Xf:()=>O,lh:()=>x});var n,r,o,a=i(269),s="Promise",c="rejected";function l(e,t){return u(e,function(e){return t?t({status:"fulfilled",rejected:!1,value:e}):e},function(e){return t?t({status:c,rejected:!0,reason:e}):e})}function u(e,t,i,n){var r=e;try{if((0,a.$XS)(e))(t||i)&&(r=e.then(t,i));else try{t&&(r=t(e))}catch(e){if(!i)throw e;r=i(e)}}finally{n&&function(e,t){var i=e;t&&((0,a.$XS)(e)?i=e.finally?e.finally(t):e.then(function(e){return t(),e},function(e){throw t(),e}):t())}(r,n)}return r}var d,m=!1,h=["pending","resolving","resolved",c],g="dispatchEvent";function p(e){var t;return e&&e.createEvent&&(t=e.createEvent("Event")),!!t&&t.initEvent}var f,y,v,w,b="unhandledRejection",C=b.toLowerCase(),k=[],R=0,S=10;function E(e){return(0,a.Tnt)(e)?e.toString():(0,a.mmD)(e)}function D(e,t,i){var c,l,u=(0,a.KVm)(arguments,3),y=0,v=!1,w=[],D=R++,P=k.length>0?k[k.length-1]:void 0,_=!1,A=null;function I(t,i){try{return k.push(D),_=!0,A&&A.cancel(),A=null,e(function(e,n){w.push(function(){try{var r=2===y?t:i,o=(0,a.b07)(r)?c:(0,a.Tnt)(r)?r(c):r;(0,a.$XS)(o)?o.then(e,n):r?e(o):3===y?n(o):e(o)}catch(e){n(e)}}),v&&x()},u)}finally{k.pop()}}function T(){return h[y]}function x(){if(w.length>0){var e=w.slice();w=[],_=!0,A&&A.cancel(),A=null,t(e)}}function M(e,t){return function(i){if(y===t){if(2===e&&(0,a.$XS)(i))return y=1,void i.then(M(2,1),M(3,1));y=e,v=!0,c=i,x(),_||3!==e||A||(A=(0,a.dRz)(O,S))}}}function O(){if(!_)if(_=!0,(0,a.Lln)())process.emit(b,c,l);else{var e=(0,a.zkX)()||(0,a.mS$)();!f&&(f=(0,a.GuU)((0,a.gBW)(a.zS2,[s+"RejectionEvent"]).v)),function(e,t,i,n){var r=(0,a.YEm)();!d&&(d=(0,a.GuU)(!!(0,a.gBW)(p,[r]).v));var o=d.v?r.createEvent("Event"):n?new Event(t):{};if(i&&i(o),d.v&&o.initEvent(t,!1,!0),o&&e[g])e[g](o);else{var s=e["on"+t];if(s)s(o);else{var c=(0,a.zS2)("console");c&&(c.error||c.log)(t,(0,a.mmD)(o))}}}(e,C,function(e){return(0,a.vF1)(e,"promise",{g:function(){return l}}),e.reason=c,e},!!f.v)}}return l={then:I,catch:function(e){return I(void 0,e)},finally:function(e){var t=e,i=e;return(0,a.Tnt)(e)&&(t=function(t){return e&&e(),t},i=function(t){throw e&&e(),t}),I(t,i)}},(0,a.UxO)(l,"state",{get:T}),m&&function(e,t){r=r||{toString:function(){return"[[PromiseResult]]"}},o=o||{toString:function(){return"[[PromiseIsHandled]]"}};var i={};i[n=n||{toString:function(){return"[[PromiseState]]"}}]={get:t},i[r]={get:function(){return(0,a.SZ2)(c)}},i[o]={get:function(){return _}},(0,a.isD)(e,i)}(l,T),(0,a.Lok)()&&(l[(0,a.Y0g)(11)]="IPromise"),l.toString=function(){return"IPromise"+(m?"["+D+((0,a.b07)(P)?"":":"+P)+"]":"")+" "+T()+(v?" - "+E(c):"")},function(){(0,a.Tnt)(i)||(0,a.zkd)(s+": executor is not a function - "+E(i));var e=M(3,0);try{i.call(l,M(2,0),e)}catch(t){e(t)}}(),l}function P(e){return function(t){var i=(0,a.KVm)(arguments,1);return e(function(e,i){try{var n=[],r=1;(0,a.DA8)(t,function(t,o){t&&(r++,u(t,function(t){n[o]=t,0===--r&&e(n)},i))}),0===--r&&e(n)}catch(e){i(e)}},i)}}function _(e){(0,a.Iuo)(e,function(e){try{e()}catch(e){}})}function A(e,t){return D(A,function(e){var t=(0,a.EtT)(e)?e:0;return function(e){(0,a.dRz)(function(){_(e)},t)}}(t),e,t)}function I(e,t){!y&&(y=(0,a.GuU)((0,a.gBW)(a.zS2,[s]).v||null));var i=y.v;if(!i)return A(e);(0,a.Tnt)(e)||(0,a.zkd)(s+": executor is not a function - "+(0,a.mmD)(e));var n=0,r=new i(function(t,i){e(function(e){n=2,t(e)},function(e){n=3,i(e)})});return(0,a.UxO)(r,"state",{get:function(){return h[n]}}),r}function T(e){return D(T,_,e)}function x(e,t){return!v&&(i=T,v=(0,a.GuU)(function(e){var t=(0,a.KVm)(arguments,1);return i(function(t,i){var n=[],r=1;function o(e,i){r++,l(e,function(e){e.rejected?n[i]={status:c,reason:e.reason}:n[i]={status:"fulfilled",value:e.value},0===--r&&t(n)})}try{(0,a.cyL)(e)?(0,a.Iuo)(e,o):(0,a.xZI)(e)?(0,a.DA8)(e,o):(0,a.zkd)("Input is not an iterable"),0===--r&&t(n)}catch(e){i(e)}},t)})),v.v(e,t);var i}function M(e,t){return!w&&(w=(0,a.GuU)(I)),w.v.call(this,e,t)}var O=P(M);(0,a.Y0g)(11)},8257:(e,t,i)=>{"use strict";i.d(t,{s:()=>f});var n,r=i(8279),o=i(269),a=i(9749),s=i(6182),c=i(3775),l=i(3673),u=i(6492),d=i(2317),m=i(836),h=i(8969),g="getPlugin",p=((n={})[u.Bw]={isVal:l.Gh,v:{}},n),f=function(){function e(){var t,i,n,f,y,v=this;function w(e){void 0===e&&(e=null);var t=e;if(!t){var r=i||(0,d.i8)(null,{},v[u.eT]);t=n&&n[g]?r[s.$o](null,n[g]):r[s.$o](null,n)}return t}function b(e,t,r){(0,a.e)(e,p,(0,c.y0)(t)),!r&&t&&(r=t[s.DI]()[s.uR]());var o=n;n&&n[g]&&(o=n[g]()),v[u.eT]=t,i=(0,d.i8)(r,e,t,o)}function C(){t=!1,v[u.eT]=null,i=null,n=null,y=(0,h.w)(),f=(0,m.P)()}C(),(0,r.A)(e,v,function(e){e[s.mE]=function(e,i,n,r){b(e,i,r),t=!0},e[s.Ik]=function(t,i){var r,o=e[u.eT];if(o&&(!t||o===t[u.eT]())){var a,c=!1,l=t||(0,d.tS)(null,o,n&&n[g]?n[g]():n),m=i||((r={reason:0})[s.tI]=!1,r);return e[s.tn]&&!0===e[s.tn](l,m,h)?a=!0:h(),a}function h(){c||(c=!0,f.run(l,i),y.run(l[s.e4]()),!0===a&&l[s.$5](m),C())}},e[s.HC]=function(t,i){var r=e[u.eT];if(r&&(!t||r===t[u.eT]())){var o,a=!1,c=t||(0,d.nU)(null,r,n&&n[g]?n[g]():n),l=i||{reason:0};return e._doUpdate&&!0===e._doUpdate(c,l,m)?o=!0:m(),o}function m(){a||(a=!0,b(c.getCfg(),c.core(),c[s.uR]()))}},(0,l.RF)(e,"_addUnloadCb",function(){return f},"add"),(0,l.RF)(e,"_addHook",function(){return y},"add"),(0,o.vF1)(e,"_unloadHooks",{g:function(){return y}})}),v[s.e4]=function(e){return w(e)[s.e4]()},v[s.tZ]=function(){return t},v.setInitialized=function(e){t=e},v[s.YH]=function(e){n=e},v[s.$5]=function(e,t){t?t[s.$5](e):n&&(0,o.Tnt)(n[u.qT])&&n[u.qT](e,null)},v._getTelCtx=w}return e.__ieDyn=1,e}()},8279:(e,t,i)=>{"use strict";i.d(t,{A:()=>G});var n,r=i(269),o="constructor",a="prototype",s="function",c="_dynInstFuncs",l="_isDynProxy",u="_dynClass",d="_dynCls$",m="_dynInstChk",h=m,g="_dfOpts",p="_unknown_",f="__proto__",y="_dyn"+f,v="__dynProto$Gbl",w="_dynInstProto",b="useBaseInst",C="setInstFuncs",k=Object,R=k.getPrototypeOf,S=k.getOwnPropertyNames,E=(0,r.mS$)(),D=E[v]||(E[v]={o:(n={},n[C]=!0,n[b]=!0,n),n:1e3});function P(e){return e&&(e===k[a]||e===Array[a])}function _(e){return P(e)||e===Function[a]}function A(e){var t;if(e){if(R)return R(e);var i=e[f]||e[a]||(e[o]?e[o][a]:null);t=e[y]||i,(0,r.v0u)(e,y)||(delete e[w],t=e[y]=e[w]||e[y],e[w]=i)}return t}function I(e,t){var i=[];if(S)i=S(e);else for(var n in e)"string"==typeof n&&(0,r.v0u)(e,n)&&i.push(n);if(i&&i.length>0)for(var o=0;o=0;i--)if(e[i]===t)return!0;return!1}function O(e,t,i,n,o){if(!P(e)){var a=i[c]=i[c]||(0,r.sSX)(null);if(!P(a)){var d=a[t]=a[t]||(0,r.sSX)(null);!1!==a[h]&&(a[h]=!!o),P(d)||I(i,function(t){T(i,t,!1)&&i[t]!==n[t]&&(d[t]=i[t],delete i[t],(!(0,r.v0u)(e,t)||e[t]&&!e[t][l])&&(e[t]=function(e,t){var i=function(){var n=function(e,t,i,n){var o=null;if(e&&(0,r.v0u)(i,u)){var a=e[c]||(0,r.sSX)(null);if((o=(a[i[u]]||(0,r.sSX)(null))[t])||x("Missing ["+t+"] "+s),!o[m]&&!1!==a[h]){for(var l=!(0,r.v0u)(e,t),d=A(e),g=[];l&&d&&!_(d)&&!M(g,d);){var p=d[t];if(p){l=p===n;break}g.push(d),d=A(d)}try{l&&(e[t]=o),o[m]=1}catch(e){a[h]=!1}}}return o}(this,t,e,i)||function(e,t,i){var n=t[e];return n===i&&(n=A(t)[e]),typeof n!==s&&x("["+e+"] is not a "+s),n}(t,e,i);return n.apply(this,arguments)};return i[l]=1,i}(e,t)))})}}}function B(e,t){return(0,r.v0u)(e,a)?e.name||t||p:((e||{})[o]||{}).name||t||p}function G(e,t,i,n){(0,r.v0u)(e,a)||x("theClass is an invalid class definition.");var o=e[a];(function(e,t){if(R){for(var i=[],n=A(t);n&&!_(n)&&!M(i,n);){if(n===e)return!0;i.push(n),n=A(n)}return!1}return!0})(o,t)||x("["+B(e)+"] not in hierarchy of ["+B(t)+"]");var s=null;(0,r.v0u)(o,u)?s=o[u]:(s=d+B(e,"_")+"$"+D.n,D.n++,o[u]=s);var m=G[g],p=!!m[b];p&&n&&void 0!==n[b]&&(p=!!n[b]);var f=function(e){var t=(0,r.sSX)(null);return I(e,function(i){!t[i]&&T(e,i,!1)&&(t[i]=e[i])}),t}(t),y=function(e,t,i,n){function o(e,t,i){var r=t[i];if(r[l]&&n){var o=e[c]||{};!1!==o[h]&&(r=(o[t[u]]||{})[i]||r)}return function(){return r.apply(e,arguments)}}var a=(0,r.sSX)(null);I(i,function(e){a[e]=o(t,i,e)});for(var s=A(e),d=[];s&&!_(s)&&!M(d,s);)I(s,function(e){!a[e]&&T(s,e,!R)&&(a[e]=o(t,s,e))}),d.push(s),s=A(s);return a}(o,t,f,p);i(t,y);var v=!!R&&!!m[C];v&&n&&(v=!!n[C]),O(o,s,t,f,!1!==v)}G[g]=D.o},8330:e=>{"use strict";e.exports=JSON.parse('{"name":"git","displayName":"%displayName%","description":"%description%","publisher":"vscode","license":"MIT","version":"1.0.0","engines":{"vscode":"^1.5.0"},"aiKey":"0c6ae279ed8443289764825290e4f9e2-1a736e7c-1324-4338-be46-fc2a58ae4d14-7255","enabledApiProposals":["canonicalUriProvider","contribEditSessions","contribEditorContentMenu","contribMergeEditorMenus","contribMultiDiffEditorMenus","contribDiffEditorGutterToolBarMenus","contribSourceControlArtifactGroupMenu","contribSourceControlArtifactMenu","contribSourceControlHistoryItemMenu","contribSourceControlHistoryTitleMenu","contribSourceControlInputBoxMenu","contribSourceControlTitleMenu","contribViewsWelcome","editSessionIdentityProvider","quickDiffProvider","quickInputButtonLocation","quickPickSortByLabel","scmActionButton","scmArtifactProvider","scmHistoryProvider","scmMultiDiffEditor","scmProviderOptions","scmSelectedProvider","scmTextDocument","scmValidation","statusBarItemTooltip","tabInputMultiDiff","tabInputTextMerge","textEditorDiffInformation","timeline"],"categories":["Other"],"activationEvents":["*","onEditSession:file","onFileSystem:git","onFileSystem:git-show"],"extensionDependencies":["vscode.git-base"],"main":"./out/main","icon":"resources/icons/git.png","scripts":{"compile":"gulp compile-extension:git","watch":"gulp watch-extension:git","update-emoji":"node ./build/update-emoji.js","test":"node ../../node_modules/mocha/bin/mocha"},"capabilities":{"virtualWorkspaces":true,"untrustedWorkspaces":{"supported":false}},"contributes":{"commands":[{"command":"git.continueInLocalClone","title":"%command.continueInLocalClone%","category":"Git","icon":"$(repo-clone)","enablement":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && remoteName"},{"command":"git.clone","title":"%command.clone%","category":"Git","enablement":"!operationInProgress"},{"command":"git.cloneRecursive","title":"%command.cloneRecursive%","category":"Git","enablement":"!operationInProgress"},{"command":"git.init","title":"%command.init%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.openRepository","title":"%command.openRepository%","category":"Git","enablement":"!operationInProgress"},{"command":"git.reopenClosedRepositories","title":"%command.reopenClosedRepositories%","icon":"$(repo)","category":"Git","enablement":"!operationInProgress && git.closedRepositoryCount != 0"},{"command":"git.close","title":"%command.close%","category":"Git","enablement":"!operationInProgress"},{"command":"git.closeOtherRepositories","title":"%command.closeOtherRepositories%","category":"Git","enablement":"!operationInProgress"},{"command":"git.openWorktree","title":"%command.openWorktree%","category":"Git","enablement":"!operationInProgress"},{"command":"git.openWorktreeInNewWindow","title":"%command.openWorktreeInNewWindow%","category":"Git","enablement":"!operationInProgress"},{"command":"git.refresh","title":"%command.refresh%","category":"Git","icon":"$(refresh)","enablement":"!operationInProgress"},{"command":"git.compareWithWorkspace","title":"%command.compareWithWorkspace%","category":"Git"},{"command":"git.openChange","title":"%command.openChange%","category":"Git","icon":"$(compare-changes)"},{"command":"git.openAllChanges","title":"%command.openAllChanges%","category":"Git"},{"command":"git.openFile","title":"%command.openFile%","category":"Git","icon":"$(go-to-file)"},{"command":"git.openFile2","title":"%command.openFile%","category":"Git","icon":"$(go-to-file)"},{"command":"git.openHEADFile","title":"%command.openHEADFile%","category":"Git"},{"command":"git.stage","title":"%command.stage%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.stageAll","title":"%command.stageAll%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.stageAllTracked","title":"%command.stageAllTracked%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.stageAllUntracked","title":"%command.stageAllUntracked%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.stageAllMerge","title":"%command.stageAllMerge%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.stageSelectedRanges","title":"%command.stageSelectedRanges%","category":"Git","enablement":"!operationInProgress"},{"command":"git.diff.stageHunk","title":"%command.stageBlock%","category":"Git","icon":"$(plus)"},{"command":"git.diff.stageSelection","title":"%command.stageSelection%","category":"Git","icon":"$(plus)"},{"command":"git.revertSelectedRanges","title":"%command.revertSelectedRanges%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stageChange","title":"%command.stageChange%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.stageFile","title":"%command.stage%","category":"Git","icon":"$(add)","enablement":"!operationInProgress"},{"command":"git.revertChange","title":"%command.revertChange%","category":"Git","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"git.unstage","title":"%command.unstage%","category":"Git","icon":"$(remove)","enablement":"!operationInProgress"},{"command":"git.unstageAll","title":"%command.unstageAll%","category":"Git","icon":"$(remove)","enablement":"!operationInProgress"},{"command":"git.unstageSelectedRanges","title":"%command.unstageSelectedRanges%","category":"Git","enablement":"!operationInProgress"},{"command":"git.unstageChange","title":"%command.unstageChange%","category":"Git","icon":"$(remove)","enablement":"!operationInProgress"},{"command":"git.unstageFile","title":"%command.unstage%","category":"Git","icon":"$(remove)","enablement":"!operationInProgress"},{"command":"git.clean","title":"%command.clean%","category":"Git","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"git.cleanAll","title":"%command.cleanAll%","category":"Git","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"git.cleanAllTracked","title":"%command.cleanAllTracked%","category":"Git","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"git.cleanAllUntracked","title":"%command.cleanAllUntracked%","category":"Git","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"git.rename","title":"%command.rename%","category":"Git","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"git.commit","title":"%command.commit%","category":"Git","icon":"$(check)","enablement":"!operationInProgress"},{"command":"git.commitAmend","title":"%command.commitAmend%","category":"Git","icon":"$(check)","enablement":"!operationInProgress"},{"command":"git.commitSigned","title":"%command.commitSigned%","category":"Git","icon":"$(check)","enablement":"!operationInProgress"},{"command":"git.commitStaged","title":"%command.commitStaged%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitEmpty","title":"%command.commitEmpty%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitStagedSigned","title":"%command.commitStagedSigned%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitStagedAmend","title":"%command.commitStagedAmend%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitAll","title":"%command.commitAll%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitAllSigned","title":"%command.commitAllSigned%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitAllAmend","title":"%command.commitAllAmend%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitNoVerify","title":"%command.commitNoVerify%","category":"Git","icon":"$(check)","enablement":"!operationInProgress"},{"command":"git.commitStagedNoVerify","title":"%command.commitStagedNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitEmptyNoVerify","title":"%command.commitEmptyNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitStagedSignedNoVerify","title":"%command.commitStagedSignedNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitAmendNoVerify","title":"%command.commitAmendNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitSignedNoVerify","title":"%command.commitSignedNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitStagedAmendNoVerify","title":"%command.commitStagedAmendNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitAllNoVerify","title":"%command.commitAllNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitAllSignedNoVerify","title":"%command.commitAllSignedNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitAllAmendNoVerify","title":"%command.commitAllAmendNoVerify%","category":"Git","enablement":"!operationInProgress"},{"command":"git.commitMessageAccept","title":"%command.commitMessageAccept%","icon":"$(check)","category":"Git"},{"command":"git.commitMessageDiscard","title":"%command.commitMessageDiscard%","icon":"$(discard)","category":"Git"},{"command":"git.restoreCommitTemplate","title":"%command.restoreCommitTemplate%","category":"Git","enablement":"!operationInProgress"},{"command":"git.undoCommit","title":"%command.undoCommit%","category":"Git","enablement":"!operationInProgress"},{"command":"git.checkout","title":"%command.checkout%","category":"Git","enablement":"!operationInProgress"},{"command":"git.graph.checkout","title":"%command.graphCheckout%","category":"Git","enablement":"!operationInProgress"},{"command":"git.checkoutDetached","title":"%command.checkoutDetached%","category":"Git","enablement":"!operationInProgress"},{"command":"git.graph.checkoutDetached","title":"%command.graphCheckoutDetached%","category":"Git","enablement":"!operationInProgress"},{"command":"git.branch","title":"%command.branch%","category":"Git","enablement":"!operationInProgress"},{"command":"git.branchFrom","title":"%command.branchFrom%","category":"Git","enablement":"!operationInProgress"},{"command":"git.deleteBranch","title":"%command.deleteBranch%","category":"Git","enablement":"!operationInProgress"},{"command":"git.graph.deleteBranch","title":"%command.graphDeleteBranch%","category":"Git","enablement":"!operationInProgress"},{"command":"git.deleteRemoteBranch","title":"%command.deleteRemoteBranch%","category":"Git","enablement":"!operationInProgress"},{"command":"git.renameBranch","title":"%command.renameBranch%","category":"Git","enablement":"!operationInProgress"},{"command":"git.merge","title":"%command.merge%","category":"Git","enablement":"!operationInProgress"},{"command":"git.mergeAbort","title":"%command.mergeAbort%","category":"Git","enablement":"gitMergeInProgress"},{"command":"git.rebase","title":"%command.rebase%","category":"Git","enablement":"!operationInProgress"},{"command":"git.createTag","title":"%command.createTag%","icon":"$(plus)","category":"Git","enablement":"!operationInProgress"},{"command":"git.deleteTag","title":"%command.deleteTag%","category":"Git","enablement":"!operationInProgress"},{"command":"git.migrateWorktreeChanges","title":"%command.migrateWorktreeChanges%","category":"Git","enablement":"!operationInProgress"},{"command":"git.createWorktree","title":"%command.createWorktree%","category":"Git","enablement":"!operationInProgress"},{"command":"git.createWorktreeWithDefaults","title":"Create Worktree With Defaults","category":"Git","enablement":"!operationInProgress"},{"command":"git.deleteWorktree","title":"%command.deleteWorktree%","category":"Git","enablement":"!operationInProgress"},{"command":"git.deleteWorktreeFromPalette","title":"%command.deleteWorktreeFromPalette%","category":"Git","enablement":"!operationInProgress"},{"command":"git.graph.deleteTag","title":"%command.graphDeleteTag%","category":"Git","enablement":"!operationInProgress"},{"command":"git.deleteRemoteTag","title":"%command.deleteRemoteTag%","category":"Git","enablement":"!operationInProgress"},{"command":"git.fetch","title":"%command.fetch%","category":"Git","enablement":"!operationInProgress"},{"command":"git.fetchPrune","title":"%command.fetchPrune%","category":"Git","enablement":"!operationInProgress"},{"command":"git.fetchAll","title":"%command.fetchAll%","icon":"$(git-fetch)","category":"Git","enablement":"!operationInProgress"},{"command":"git.fetchRef","title":"%command.fetch%","icon":"$(git-fetch)","category":"Git","enablement":"!operationInProgress"},{"command":"git.pull","title":"%command.pull%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pullRebase","title":"%command.pullRebase%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pullFrom","title":"%command.pullFrom%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pullRef","title":"%command.pull%","icon":"$(repo-pull)","category":"Git","enablement":"!operationInProgress && scmCurrentHistoryItemRefInFilter && scmCurrentHistoryItemRefHasRemote"},{"command":"git.push","title":"%command.push%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pushForce","title":"%command.pushForce%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pushTo","title":"%command.pushTo%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pushToForce","title":"%command.pushToForce%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pushTags","title":"%command.pushTags%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pushWithTags","title":"%command.pushFollowTags%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pushWithTagsForce","title":"%command.pushFollowTagsForce%","category":"Git","enablement":"!operationInProgress"},{"command":"git.pushRef","title":"%command.push%","icon":"$(repo-push)","category":"Git","enablement":"!operationInProgress && scmCurrentHistoryItemRefInFilter && scmCurrentHistoryItemRefHasRemote"},{"command":"git.cherryPick","title":"%command.cherryPick%","category":"Git","enablement":"!operationInProgress"},{"command":"git.graph.cherryPick","title":"%command.graphCherryPick%","category":"Git","enablement":"!operationInProgress"},{"command":"git.cherryPickAbort","title":"%command.cherryPickAbort%","category":"Git","enablement":"!operationInProgress"},{"command":"git.addRemote","title":"%command.addRemote%","category":"Git","enablement":"!operationInProgress"},{"command":"git.removeRemote","title":"%command.removeRemote%","category":"Git","enablement":"!operationInProgress"},{"command":"git.sync","title":"%command.sync%","category":"Git","enablement":"!operationInProgress"},{"command":"git.syncRebase","title":"%command.syncRebase%","category":"Git","enablement":"!operationInProgress"},{"command":"git.publish","title":"%command.publish%","category":"Git","icon":"$(cloud-upload)","enablement":"!operationInProgress"},{"command":"git.showOutput","title":"%command.showOutput%","category":"Git"},{"command":"git.ignore","title":"%command.ignore%","category":"Git","enablement":"!operationInProgress"},{"command":"git.revealInExplorer","title":"%command.revealInExplorer%","category":"Git"},{"command":"git.revealFileInOS.linux","title":"%command.revealFileInOS.linux%","category":"Git"},{"command":"git.revealFileInOS.mac","title":"%command.revealFileInOS.mac%","category":"Git"},{"command":"git.revealFileInOS.windows","title":"%command.revealFileInOS.windows%","category":"Git"},{"command":"git.stashIncludeUntracked","title":"%command.stashIncludeUntracked%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stash","title":"%command.stash%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashStaged","title":"%command.stashStaged%","category":"Git","enablement":"!operationInProgress && gitVersion2.35"},{"command":"git.stashPop","title":"%command.stashPop%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashPopLatest","title":"%command.stashPopLatest%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashPopEditor","title":"%command.stashPopEditor%","icon":"$(git-stash-pop)","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashApply","title":"%command.stashApply%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashApplyLatest","title":"%command.stashApplyLatest%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashApplyEditor","title":"%command.stashApplyEditor%","icon":"$(git-stash-apply)","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashDrop","title":"%command.stashDrop%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashDropAll","title":"%command.stashDropAll%","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashDropEditor","title":"%command.stashDropEditor%","icon":"$(trash)","category":"Git","enablement":"!operationInProgress"},{"command":"git.stashView","title":"%command.stashView%","category":"Git","enablement":"!operationInProgress"},{"command":"git.timeline.openDiff","title":"%command.timelineOpenDiff%","icon":"$(compare-changes)","category":"Git"},{"command":"git.timeline.copyCommitId","title":"%command.timelineCopyCommitId%","category":"Git"},{"command":"git.timeline.copyCommitMessage","title":"%command.timelineCopyCommitMessage%","category":"Git"},{"command":"git.timeline.selectForCompare","title":"%command.timelineSelectForCompare%","category":"Git"},{"command":"git.timeline.compareWithSelected","title":"%command.timelineCompareWithSelected%","category":"Git"},{"command":"git.timeline.viewCommit","title":"%command.viewCommit%","icon":"$(diff-multiple)","category":"Git"},{"command":"git.rebaseAbort","title":"%command.rebaseAbort%","category":"Git","enablement":"gitRebaseInProgress"},{"command":"git.closeAllDiffEditors","title":"%command.closeAllDiffEditors%","category":"Git","enablement":"!operationInProgress"},{"command":"git.closeAllUnmodifiedEditors","title":"%command.closeAllUnmodifiedEditors%","category":"Git","enablement":"!operationInProgress"},{"command":"git.api.getRepositories","title":"%command.api.getRepositories%","category":"Git API"},{"command":"git.api.getRepositoryState","title":"%command.api.getRepositoryState%","category":"Git API"},{"command":"git.api.getRemoteSources","title":"%command.api.getRemoteSources%","category":"Git API"},{"command":"git.acceptMerge","title":"%command.git.acceptMerge%","category":"Git","enablement":"isMergeEditor && mergeEditorResultUri in git.mergeChanges"},{"command":"git.openMergeEditor","title":"%command.git.openMergeEditor%","category":"Git"},{"command":"git.runGitMerge","title":"%command.git.runGitMerge%","category":"Git","enablement":"isMergeEditor"},{"command":"git.runGitMergeDiff3","title":"%command.git.runGitMergeDiff3%","category":"Git","enablement":"isMergeEditor"},{"command":"git.manageUnsafeRepositories","title":"%command.manageUnsafeRepositories%","category":"Git"},{"command":"git.openRepositoriesInParentFolders","title":"%command.openRepositoriesInParentFolders%","category":"Git"},{"command":"git.viewChanges","title":"%command.viewChanges%","icon":"$(diff-multiple)","category":"Git","enablement":"!operationInProgress"},{"command":"git.viewStagedChanges","title":"%command.viewStagedChanges%","icon":"$(diff-multiple)","category":"Git","enablement":"!operationInProgress"},{"command":"git.viewUntrackedChanges","title":"%command.viewUntrackedChanges%","icon":"$(diff-multiple)","category":"Git","enablement":"!operationInProgress"},{"command":"git.viewCommit","title":"%command.viewCommit%","icon":"$(diff-multiple)","category":"Git","enablement":"!operationInProgress"},{"command":"git.copyCommitId","title":"%command.timelineCopyCommitId%","category":"Git"},{"command":"git.copyCommitMessage","title":"%command.timelineCopyCommitMessage%","category":"Git"},{"command":"git.blame.toggleEditorDecoration","title":"%command.blameToggleEditorDecoration%","category":"Git"},{"command":"git.blame.toggleStatusBarItem","title":"%command.blameToggleStatusBarItem%","category":"Git"},{"command":"git.graph.compareRef","title":"%command.graphCompareRef%","category":"Git","enablement":"!operationInProgress"},{"command":"git.graph.compareWithRemote","title":"%command.graphCompareWithRemote%","category":"Git","enablement":"!operationInProgress && scmCurrentHistoryItemRefHasRemote"},{"command":"git.graph.compareWithMergeBase","title":"%command.graphCompareWithMergeBase%","category":"Git","enablement":"!operationInProgress && scmCurrentHistoryItemRefHasBase"},{"command":"git.repositories.checkout","title":"%command.graphCheckout%","icon":"$(target)","category":"Git","enablement":"!operationInProgress && !scmArtifactIsHistoryItemRef"},{"command":"git.repositories.checkoutDetached","title":"%command.graphCheckoutDetached%","category":"Git","enablement":"!operationInProgress"},{"command":"git.repositories.compareRef","title":"%command.graphCompareRef%","category":"Git","enablement":"!operationInProgress"},{"command":"git.repositories.createBranch","title":"%command.branch%","icon":"$(plus)","category":"Git","enablement":"!operationInProgress"},{"command":"git.repositories.createTag","title":"%command.createTag%","icon":"$(plus)","category":"Git","enablement":"!operationInProgress"},{"command":"git.repositories.merge","title":"%command.merge2%","category":"Git","enablement":"!operationInProgress"},{"command":"git.repositories.rebase","title":"%command.rebase2%","category":"Git","enablement":"!operationInProgress"},{"command":"git.repositories.deleteBranch","title":"%command.deleteRef%","category":"Git","enablement":"!operationInProgress && !scmArtifactIsHistoryItemRef"},{"command":"git.repositories.deleteTag","title":"%command.deleteRef%","category":"Git","enablement":"!operationInProgress && !scmArtifactIsHistoryItemRef"},{"command":"git.repositories.createFrom","title":"%command.createFrom%","category":"Git","enablement":"!operationInProgress"}],"continueEditSession":[{"command":"git.continueInLocalClone","qualifiedName":"%command.continueInLocalClone.qualifiedName%","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && remoteName","remoteGroup":"remote_42_git_0_local@0"}],"keybindings":[{"command":"git.stageSelectedRanges","key":"ctrl+k ctrl+alt+s","mac":"cmd+k cmd+alt+s","when":"editorTextFocus && resourceScheme == file"},{"command":"git.unstageSelectedRanges","key":"ctrl+k ctrl+n","mac":"cmd+k cmd+n","when":"editorTextFocus && isInDiffEditor && isInDiffRightEditor && resourceScheme == git"},{"command":"git.revertSelectedRanges","key":"ctrl+k ctrl+r","mac":"cmd+k cmd+r","when":"editorTextFocus && resourceScheme == file"}],"menus":{"commandPalette":[{"command":"git.continueInLocalClone","when":"false"},{"command":"git.clone","when":"config.git.enabled && !git.missing"},{"command":"git.cloneRecursive","when":"config.git.enabled && !git.missing"},{"command":"git.init","when":"config.git.enabled && !git.missing && remoteName != \'codespaces\'"},{"command":"git.openRepository","when":"config.git.enabled && !git.missing"},{"command":"git.close","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.closeOtherRepositories","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount > 1"},{"command":"git.openWorktree","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount > 1"},{"command":"git.openWorktreeInNewWindow","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount > 1"},{"command":"git.refresh","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.openFile","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && resourceScheme == file && scmActiveResourceHasChanges"},{"command":"git.openHEADFile","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && resourceScheme == file && scmActiveResourceHasChanges"},{"command":"git.openChange","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stage","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stageAll","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stageAllTracked","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stageAllUntracked","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stageAllMerge","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stageSelectedRanges","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && resourceScheme == file"},{"command":"git.stageChange","when":"false"},{"command":"git.revertSelectedRanges","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && resourceScheme == file"},{"command":"git.revertChange","when":"false"},{"command":"git.openFile2","when":"false"},{"command":"git.unstage","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.unstageAll","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.unstageSelectedRanges","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && resourceScheme == git"},{"command":"git.unstageChange","when":"false"},{"command":"git.clean","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.cleanAll","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.cleanAllTracked","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.cleanAllUntracked","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.rename","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && resourceScheme == file && scmActiveResourceRepository"},{"command":"git.commit","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitAmend","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitSigned","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitStaged","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitEmpty","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitStagedSigned","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitStagedAmend","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitAll","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitAllSigned","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.commitAllAmend","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.rebaseAbort","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && gitRebaseInProgress"},{"command":"git.commitNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitStagedNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitEmptyNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitStagedSignedNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitAmendNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitSignedNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitStagedAmendNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitAllNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitAllSignedNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.commitAllAmendNoVerify","when":"config.git.enabled && !git.missing && config.git.allowNoVerifyCommit && gitOpenRepositoryCount != 0"},{"command":"git.restoreCommitTemplate","when":"false"},{"command":"git.commitMessageAccept","when":"false"},{"command":"git.commitMessageDiscard","when":"false"},{"command":"git.revealInExplorer","when":"false"},{"command":"git.revealFileInOS.linux","when":"false"},{"command":"git.revealFileInOS.mac","when":"false"},{"command":"git.revealFileInOS.windows","when":"false"},{"command":"git.undoCommit","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.checkout","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.branch","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.branchFrom","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.deleteBranch","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.deleteRemoteBranch","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.renameBranch","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.cherryPick","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.cherryPickAbort","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && gitCherryPickInProgress"},{"command":"git.pull","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.pullFrom","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.pullRebase","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.merge","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.mergeAbort","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && gitMergeInProgress"},{"command":"git.rebase","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.createTag","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.deleteTag","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.migrateWorktreeChanges","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.createWorktree","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.deleteWorktree","when":"false"},{"command":"git.openWorktree","when":"false"},{"command":"git.openWorktreeInNewWindow","when":"false"},{"command":"git.deleteWorktreeFromPalette","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.deleteRemoteTag","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.fetch","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.fetchPrune","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.fetchAll","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.push","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.pushForce","when":"config.git.enabled && !git.missing && config.git.allowForcePush && gitOpenRepositoryCount != 0"},{"command":"git.pushTo","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.pushToForce","when":"config.git.enabled && !git.missing && config.git.allowForcePush && gitOpenRepositoryCount != 0"},{"command":"git.pushWithTags","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.pushWithTagsForce","when":"config.git.enabled && !git.missing && config.git.allowForcePush && gitOpenRepositoryCount != 0"},{"command":"git.pushTags","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.addRemote","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.removeRemote","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.sync","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.syncRebase","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.publish","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.showOutput","when":"config.git.enabled"},{"command":"git.ignore","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && resourceScheme == file && scmActiveResourceRepository"},{"command":"git.stashIncludeUntracked","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stash","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stashStaged","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && gitVersion2.35"},{"command":"git.stashPop","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stashPopLatest","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stashPopEditor","when":"false"},{"command":"git.stashApply","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stashApplyLatest","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stashApplyEditor","when":"false"},{"command":"git.stashDrop","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stashDropAll","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.stashDropEditor","when":"false"},{"command":"git.timeline.openDiff","when":"false"},{"command":"git.timeline.copyCommitId","when":"false"},{"command":"git.timeline.copyCommitMessage","when":"false"},{"command":"git.timeline.selectForCompare","when":"false"},{"command":"git.timeline.compareWithSelected","when":"false"},{"command":"git.timeline.viewCommit","when":"false"},{"command":"git.closeAllDiffEditors","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0"},{"command":"git.api.getRepositories","when":"false"},{"command":"git.api.getRepositoryState","when":"false"},{"command":"git.api.getRemoteSources","when":"false"},{"command":"git.openMergeEditor","when":"false"},{"command":"git.manageUnsafeRepositories","when":"config.git.enabled && !git.missing && git.unsafeRepositoryCount != 0"},{"command":"git.openRepositoriesInParentFolders","when":"config.git.enabled && !git.missing && git.parentRepositoryCount != 0"},{"command":"git.stashView","when":"config.git.enabled && !git.missing && config.multiDiffEditor.experimental.enabled"},{"command":"git.viewChanges","when":"config.git.enabled && !git.missing && config.multiDiffEditor.experimental.enabled"},{"command":"git.viewStagedChanges","when":"config.git.enabled && !git.missing && config.multiDiffEditor.experimental.enabled"},{"command":"git.viewUntrackedChanges","when":"config.git.enabled && !git.missing && config.multiDiffEditor.experimental.enabled && config.git.untrackedChanges == separate"},{"command":"git.viewCommit","when":"false"},{"command":"git.stageFile","when":"false"},{"command":"git.unstageFile","when":"false"},{"command":"git.fetchRef","when":"false"},{"command":"git.pullRef","when":"false"},{"command":"git.pushRef","when":"false"},{"command":"git.copyCommitId","when":"false"},{"command":"git.copyCommitMessage","when":"false"},{"command":"git.graph.checkout","when":"false"},{"command":"git.graph.checkoutDetached","when":"false"},{"command":"git.graph.deleteBranch","when":"false"},{"command":"git.graph.compareRef","when":"false"},{"command":"git.graph.deleteTag","when":"false"},{"command":"git.graph.cherryPick","when":"false"},{"command":"git.graph.compareWithMergeBase","when":"false"},{"command":"git.graph.compareWithRemote","when":"false"},{"command":"git.diff.stageHunk","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && diffEditorOriginalUri =~ /^git\\\\:.*%22ref%22%3A%22~%22%7D$/"},{"command":"git.diff.stageSelection","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && diffEditorOriginalUri =~ /^git\\\\:.*%22ref%22%3A%22~%22%7D$/"},{"command":"git.repositories.checkout","when":"false"},{"command":"git.repositories.checkoutDetached","when":"false"},{"command":"git.repositories.compareRef","when":"false"},{"command":"git.repositories.createBranch","when":"false"},{"command":"git.repositories.createTag","when":"false"},{"command":"git.repositories.merge","when":"false"},{"command":"git.repositories.rebase","when":"false"},{"command":"git.repositories.deleteBranch","when":"false"},{"command":"git.repositories.deleteTag","when":"false"},{"command":"git.repositories.createFrom","when":"false"}],"scm/title":[{"command":"git.commit","group":"navigation","when":"scmProvider == git"},{"command":"git.refresh","group":"navigation","when":"scmProvider == git"},{"command":"git.pull","group":"1_header@1","when":"scmProvider == git"},{"command":"git.push","group":"1_header@2","when":"scmProvider == git"},{"command":"git.clone","group":"1_header@3","when":"scmProvider == git"},{"command":"git.checkout","group":"1_header@4","when":"scmProvider == git"},{"command":"git.fetch","group":"1_header@5","when":"scmProvider == git"},{"submenu":"git.commit","group":"2_main@1","when":"scmProvider == git"},{"submenu":"git.changes","group":"2_main@2","when":"scmProvider == git"},{"submenu":"git.pullpush","group":"2_main@3","when":"scmProvider == git"},{"submenu":"git.branch","group":"2_main@4","when":"scmProvider == git"},{"submenu":"git.remotes","group":"2_main@5","when":"scmProvider == git"},{"submenu":"git.stash","group":"2_main@6","when":"scmProvider == git"},{"submenu":"git.tags","group":"2_main@7","when":"scmProvider == git"},{"submenu":"git.worktrees","group":"2_main@8","when":"scmProvider == git"},{"command":"git.showOutput","group":"3_footer","when":"scmProvider == git"}],"scm/repositories/title":[{"command":"git.reopenClosedRepositories","group":"navigation@1","when":"git.closedRepositoryCount > 0"}],"scm/repository":[{"command":"git.pull","group":"1_header@1","when":"scmProvider == git"},{"command":"git.push","group":"1_header@2","when":"scmProvider == git"},{"command":"git.clone","group":"1_header@3","when":"scmProvider == git"},{"command":"git.checkout","group":"1_header@4","when":"scmProvider == git"},{"command":"git.fetch","group":"1_header@5","when":"scmProvider == git"},{"submenu":"git.commit","group":"2_main@1","when":"scmProvider == git"},{"submenu":"git.changes","group":"2_main@2","when":"scmProvider == git"},{"submenu":"git.pullpush","group":"2_main@3","when":"scmProvider == git"},{"submenu":"git.branch","group":"2_main@4","when":"scmProvider == git"},{"submenu":"git.remotes","group":"2_main@5","when":"scmProvider == git"},{"submenu":"git.stash","group":"2_main@6","when":"scmProvider == git"},{"submenu":"git.tags","group":"2_main@7","when":"scmProvider == git"},{"submenu":"git.worktrees","group":"2_main@8","when":"scmProvider == git"},{"command":"git.showOutput","group":"3_footer","when":"scmProvider == git"}],"scm/sourceControl":[{"command":"git.close","group":"navigation@1","when":"scmProvider == git"},{"command":"git.closeOtherRepositories","group":"navigation@2","when":"scmProvider == git && gitOpenRepositoryCount > 1"},{"command":"git.openWorktree","group":"1_worktree@1","when":"scmProvider == git && scmProviderContext == worktree"},{"command":"git.openWorktreeInNewWindow","group":"1_worktree@2","when":"scmProvider == git && scmProviderContext == worktree"},{"command":"git.deleteWorktree","group":"2_worktree@1","when":"scmProvider == git && scmProviderContext == worktree"}],"scm/artifactGroup/context":[{"command":"git.repositories.createBranch","group":"inline@1","when":"scmProvider == git && scmArtifactGroup == branches"},{"command":"git.repositories.createTag","group":"inline@1","when":"scmProvider == git && scmArtifactGroup == tags"}],"scm/artifact/context":[{"command":"git.repositories.checkout","group":"inline@1","when":"scmProvider == git"},{"command":"git.repositories.checkout","group":"1_checkout@1","when":"scmProvider == git"},{"command":"git.repositories.checkoutDetached","group":"1_checkout@2","when":"scmProvider == git"},{"command":"git.repositories.merge","group":"2_modify@1","when":"scmProvider == git && scmArtifactGroupId == branches"},{"command":"git.repositories.rebase","group":"2_modify@2","when":"scmProvider == git && scmArtifactGroupId == branches"},{"command":"git.repositories.createFrom","group":"3_modify@1","when":"scmProvider == git && scmArtifactGroupId == branches"},{"command":"git.repositories.deleteBranch","group":"3_modify@2","when":"scmProvider == git && scmArtifactGroupId == branches"},{"command":"git.repositories.deleteTag","group":"3_modify@1","when":"scmProvider == git && scmArtifactGroupId == tags"},{"command":"git.repositories.compareRef","group":"4_compare@1","when":"scmProvider == git"}],"scm/resourceGroup/context":[{"command":"git.stageAllMerge","when":"scmProvider == git && scmResourceGroup == merge","group":"1_modification"},{"command":"git.stageAllMerge","when":"scmProvider == git && scmResourceGroup == merge","group":"inline@2"},{"command":"git.unstageAll","when":"scmProvider == git && scmResourceGroup == index","group":"1_modification"},{"command":"git.unstageAll","when":"scmProvider == git && scmResourceGroup == index","group":"inline@2"},{"command":"git.viewStagedChanges","when":"scmProvider == git && scmResourceGroup == index && config.multiDiffEditor.experimental.enabled","group":"inline@1"},{"command":"git.viewChanges","when":"scmProvider == git && scmResourceGroup == workingTree && config.multiDiffEditor.experimental.enabled","group":"inline@1"},{"command":"git.cleanAll","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges == mixed","group":"1_modification"},{"command":"git.stageAll","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges == mixed","group":"1_modification"},{"command":"git.cleanAll","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges == mixed","group":"inline@2"},{"command":"git.stageAll","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges == mixed","group":"inline@2"},{"command":"git.cleanAllTracked","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges != mixed","group":"1_modification"},{"command":"git.stageAllTracked","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges != mixed","group":"1_modification"},{"command":"git.cleanAllTracked","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges != mixed","group":"inline@2"},{"command":"git.stageAllTracked","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.untrackedChanges != mixed","group":"inline@2"},{"command":"git.cleanAllUntracked","when":"scmProvider == git && scmResourceGroup == untracked","group":"1_modification"},{"command":"git.stageAllUntracked","when":"scmProvider == git && scmResourceGroup == untracked","group":"1_modification"},{"command":"git.viewUntrackedChanges","when":"scmProvider == git && scmResourceGroup == untracked && config.multiDiffEditor.experimental.enabled","group":"inline@1"},{"command":"git.cleanAllUntracked","when":"scmProvider == git && scmResourceGroup == untracked","group":"inline@2"},{"command":"git.stageAllUntracked","when":"scmProvider == git && scmResourceGroup == untracked","group":"inline@2"}],"scm/resourceFolder/context":[{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == merge","group":"1_modification"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == merge","group":"inline@2"},{"command":"git.unstage","when":"scmProvider == git && scmResourceGroup == index","group":"1_modification"},{"command":"git.unstage","when":"scmProvider == git && scmResourceGroup == index","group":"inline@2"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == workingTree","group":"1_modification"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == workingTree","group":"1_modification"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == workingTree","group":"inline@2"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == workingTree","group":"inline@2"},{"command":"git.ignore","when":"scmProvider == git && scmResourceGroup == workingTree","group":"1_modification@3"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == untracked","group":"1_modification"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == untracked","group":"inline@2"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == untracked","group":"1_modification"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == untracked","group":"inline@2"},{"command":"git.ignore","when":"scmProvider == git && scmResourceGroup == untracked","group":"1_modification@3"}],"scm/resourceState/context":[{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == merge","group":"1_modification"},{"command":"git.openFile","when":"scmProvider == git && scmResourceGroup == merge","group":"navigation"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == merge","group":"inline@2"},{"command":"git.revealFileInOS.linux","when":"scmProvider == git && scmResourceGroup == merge && remoteName == \'\' && isLinux","group":"2_view@1"},{"command":"git.revealFileInOS.mac","when":"scmProvider == git && scmResourceGroup == merge && remoteName == \'\' && isMac","group":"2_view@1"},{"command":"git.revealFileInOS.windows","when":"scmProvider == git && scmResourceGroup == merge && remoteName == \'\' && isWindows","group":"2_view@1"},{"command":"git.revealInExplorer","when":"scmProvider == git && scmResourceGroup == merge","group":"2_view@2"},{"command":"git.openFile2","when":"scmProvider == git && scmResourceGroup == merge && config.git.showInlineOpenFileAction && config.git.openDiffOnClick","group":"inline@1"},{"command":"git.openChange","when":"scmProvider == git && scmResourceGroup == merge && config.git.showInlineOpenFileAction && !config.git.openDiffOnClick","group":"inline@1"},{"command":"git.openChange","when":"scmProvider == git && scmResourceGroup == index","group":"navigation"},{"command":"git.openFile","when":"scmProvider == git && scmResourceGroup == index","group":"navigation"},{"command":"git.openHEADFile","when":"scmProvider == git && scmResourceGroup == index","group":"navigation"},{"command":"git.unstage","when":"scmProvider == git && scmResourceGroup == index","group":"1_modification"},{"command":"git.unstage","when":"scmProvider == git && scmResourceGroup == index","group":"inline@2"},{"command":"git.revealFileInOS.linux","when":"scmProvider == git && scmResourceGroup == index && remoteName == \'\' && isLinux","group":"2_view@1"},{"command":"git.revealFileInOS.mac","when":"scmProvider == git && scmResourceGroup == index && remoteName == \'\' && isMac","group":"2_view@1"},{"command":"git.revealFileInOS.windows","when":"scmProvider == git && scmResourceGroup == index && remoteName == \'\' && isWindows","group":"2_view@1"},{"command":"git.revealInExplorer","when":"scmProvider == git && scmResourceGroup == index","group":"2_view@2"},{"command":"git.compareWithWorkspace","when":"scmProvider == git && scmResourceGroup == index && scmResourceState == worktree","group":"worktree_diff"},{"command":"git.openFile2","when":"scmProvider == git && scmResourceGroup == index && config.git.showInlineOpenFileAction && config.git.openDiffOnClick","group":"inline@1"},{"command":"git.openChange","when":"scmProvider == git && scmResourceGroup == index && config.git.showInlineOpenFileAction && !config.git.openDiffOnClick","group":"inline@1"},{"command":"git.openChange","when":"scmProvider == git && scmResourceGroup == workingTree","group":"navigation"},{"command":"git.openHEADFile","when":"scmProvider == git && scmResourceGroup == workingTree","group":"navigation"},{"command":"git.openFile","when":"scmProvider == git && scmResourceGroup == workingTree","group":"navigation"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == workingTree","group":"1_modification"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == workingTree","group":"1_modification"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == workingTree","group":"inline@2"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == workingTree","group":"inline@2"},{"command":"git.compareWithWorkspace","when":"scmProvider == git && scmResourceGroup == workingTree && scmResourceState == worktree","group":"worktree_diff"},{"command":"git.openFile2","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.showInlineOpenFileAction && config.git.openDiffOnClick","group":"inline@1"},{"command":"git.openChange","when":"scmProvider == git && scmResourceGroup == workingTree && config.git.showInlineOpenFileAction && !config.git.openDiffOnClick","group":"inline@1"},{"command":"git.ignore","when":"scmProvider == git && scmResourceGroup == workingTree","group":"1_modification@3"},{"command":"git.revealFileInOS.linux","when":"scmProvider == git && scmResourceGroup == workingTree && remoteName == \'\' && isLinux","group":"2_view@1"},{"command":"git.revealFileInOS.mac","when":"scmProvider == git && scmResourceGroup == workingTree && remoteName == \'\' && isMac","group":"2_view@1"},{"command":"git.revealFileInOS.windows","when":"scmProvider == git && scmResourceGroup == workingTree && remoteName == \'\' && isWindows","group":"2_view@1"},{"command":"git.revealInExplorer","when":"scmProvider == git && scmResourceGroup == workingTree","group":"2_view@2"},{"command":"git.openChange","when":"scmProvider == git && scmResourceGroup == untracked","group":"navigation"},{"command":"git.openHEADFile","when":"scmProvider == git && scmResourceGroup == untracked","group":"navigation"},{"command":"git.openFile","when":"scmProvider == git && scmResourceGroup == untracked","group":"navigation"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == untracked","group":"1_modification"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == untracked && !gitFreshRepository","group":"1_modification"},{"command":"git.clean","when":"scmProvider == git && scmResourceGroup == untracked && !gitFreshRepository","group":"inline@2"},{"command":"git.stage","when":"scmProvider == git && scmResourceGroup == untracked","group":"inline@2"},{"command":"git.openFile2","when":"scmProvider == git && scmResourceGroup == untracked && config.git.showInlineOpenFileAction && config.git.openDiffOnClick","group":"inline@1"},{"command":"git.openChange","when":"scmProvider == git && scmResourceGroup == untracked && config.git.showInlineOpenFileAction && !config.git.openDiffOnClick","group":"inline@1"},{"command":"git.ignore","when":"scmProvider == git && scmResourceGroup == untracked","group":"1_modification@3"}],"scm/history/title":[{"command":"git.fetchAll","group":"navigation@900","when":"scmProvider == git"},{"command":"git.pullRef","group":"navigation@901","when":"scmProvider == git"},{"command":"git.pushRef","when":"scmProvider == git && scmCurrentHistoryItemRefHasRemote","group":"navigation@902"},{"command":"git.publish","when":"scmProvider == git && !scmCurrentHistoryItemRefHasRemote","group":"navigation@903"}],"scm/historyItem/context":[{"command":"git.graph.checkoutDetached","when":"scmProvider == git","group":"1_checkout@2"},{"command":"git.branch","when":"scmProvider == git","group":"2_branch@2"},{"command":"git.createTag","when":"scmProvider == git","group":"3_tag@1"},{"command":"git.graph.cherryPick","when":"scmProvider == git","group":"4_modify@1"},{"command":"git.graph.compareWithRemote","when":"scmProvider == git","group":"5_compare@1"},{"command":"git.graph.compareWithMergeBase","when":"scmProvider == git","group":"5_compare@2"},{"command":"git.graph.compareRef","when":"scmProvider == git","group":"5_compare@3"},{"command":"git.copyCommitId","when":"scmProvider == git && !listMultiSelection","group":"9_copy@1"},{"command":"git.copyCommitMessage","when":"scmProvider == git && !listMultiSelection","group":"9_copy@2"}],"scm/historyItemRef/context":[{"command":"git.graph.checkout","when":"scmProvider == git","group":"1_checkout@1"},{"command":"git.graph.deleteBranch","when":"scmProvider == git && scmHistoryItemRef =~ /^refs\\\\/heads\\\\/|^refs\\\\/remotes\\\\//","group":"2_branch@2"},{"command":"git.graph.deleteTag","when":"scmProvider == git && scmHistoryItemRef =~ /^refs\\\\/tags\\\\//","group":"3_tag@2"}],"editor/title":[{"command":"git.openFile","group":"navigation","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && resourceScheme =~ /^git$|^file$/"},{"command":"git.openFile","group":"navigation","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInNotebookTextDiffEditor && resourceScheme =~ /^git$|^file$/"},{"command":"git.openFile","group":"navigation","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && !isInDiffEditor && !isInNotebookTextDiffEditor && resourceScheme == git"},{"command":"git.openChange","group":"navigation@2","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && !isInDiffEditor && !isMergeEditor && resourceScheme == file && scmActiveResourceHasChanges"},{"command":"git.commitMessageAccept","group":"navigation","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && editorLangId == git-commit"},{"command":"git.commitMessageDiscard","group":"navigation","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && editorLangId == git-commit"},{"command":"git.stashApplyEditor","alt":"git.stashPopEditor","group":"navigation@1","when":"config.git.enabled && !git.missing && resourceScheme == git-stash"},{"command":"git.stashDropEditor","group":"navigation@2","when":"config.git.enabled && !git.missing && resourceScheme == git-stash"},{"command":"git.stage","group":"2_git@1","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && !isInDiffEditor && !isMergeEditor && resourceScheme == file && git.activeResourceHasUnstagedChanges"},{"command":"git.unstage","group":"2_git@2","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && !isInDiffEditor && !isMergeEditor && resourceScheme == file && git.activeResourceHasStagedChanges"},{"command":"git.stage","group":"2_git@1","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == file"},{"command":"git.stageSelectedRanges","group":"2_git@2","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == file"},{"command":"git.unstage","group":"2_git@3","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == git"},{"command":"git.unstageSelectedRanges","group":"2_git@4","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == git"},{"command":"git.revertSelectedRanges","group":"2_git@5","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == file"}],"editor/context":[{"command":"git.stageSelectedRanges","group":"2_git@1","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == file"},{"command":"git.unstageSelectedRanges","group":"2_git@2","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == git"},{"command":"git.revertSelectedRanges","group":"2_git@3","when":"config.git.enabled && !git.missing && gitOpenRepositoryCount != 0 && isInDiffEditor && isInDiffRightEditor && !isEmbeddedDiffEditor && resourceScheme == file"}],"editor/content":[{"command":"git.acceptMerge","when":"isMergeResultEditor && mergeEditorBaseUri =~ /^(git|file):/ && mergeEditorResultUri in git.mergeChanges"},{"command":"git.openMergeEditor","group":"navigation@-10","when":"config.git.enabled && !git.missing && !isInDiffEditor && !isMergeEditor && git.activeResourceHasMergeConflicts"}],"multiDiffEditor/resource/title":[{"command":"git.stageFile","group":"navigation","when":"scmProvider == git && scmResourceGroup == workingTree"},{"command":"git.stageFile","group":"navigation","when":"scmProvider == git && scmResourceGroup == untracked"},{"command":"git.unstageFile","group":"navigation","when":"scmProvider == git && scmResourceGroup == index"}],"diffEditor/gutter/hunk":[{"command":"git.diff.stageHunk","group":"primary@10","when":"diffEditorOriginalUri =~ /^git\\\\:.*%22ref%22%3A%22~%22%7D$/"}],"diffEditor/gutter/selection":[{"command":"git.diff.stageSelection","group":"primary@10","when":"diffEditorOriginalUri =~ /^git\\\\:.*%22ref%22%3A%22~%22%7D$/"}],"scm/change/title":[{"command":"git.stageChange","when":"config.git.enabled && !git.missing && originalResource =~ /^git\\\\:.*%22ref%22%3A%22%22%7D$/"},{"command":"git.revertChange","when":"config.git.enabled && !git.missing && originalResource =~ /^git\\\\:.*%22ref%22%3A%22%22%7D$/"},{"command":"git.unstageChange","when":"false"}],"timeline/item/context":[{"command":"git.timeline.viewCommit","group":"inline","when":"config.git.enabled && !git.missing && timelineItem =~ /git:file:commit\\\\b/ && !listMultiSelection && config.multiDiffEditor.experimental.enabled"},{"command":"git.timeline.openDiff","group":"1_actions@1","when":"config.git.enabled && !git.missing && timelineItem =~ /git:file\\\\b/ && !listMultiSelection"},{"command":"git.timeline.viewCommit","group":"1_actions@2","when":"config.git.enabled && !git.missing && timelineItem =~ /git:file:commit\\\\b/ && !listMultiSelection && config.multiDiffEditor.experimental.enabled"},{"command":"git.timeline.compareWithSelected","group":"3_compare@1","when":"config.git.enabled && !git.missing && git.timeline.selectedForCompare && timelineItem =~ /git:file\\\\b/ && !listMultiSelection"},{"command":"git.timeline.selectForCompare","group":"3_compare@2","when":"config.git.enabled && !git.missing && timelineItem =~ /git:file\\\\b/ && !listMultiSelection"},{"command":"git.timeline.copyCommitId","group":"5_copy@1","when":"config.git.enabled && !git.missing && timelineItem =~ /git:file:commit\\\\b/ && !listMultiSelection"},{"command":"git.timeline.copyCommitMessage","group":"5_copy@2","when":"config.git.enabled && !git.missing && timelineItem =~ /git:file:commit\\\\b/ && !listMultiSelection"}],"git.commit":[{"command":"git.commit","group":"1_commit@1"},{"command":"git.commitStaged","group":"1_commit@2"},{"command":"git.commitAll","group":"1_commit@3"},{"command":"git.undoCommit","group":"1_commit@4"},{"command":"git.rebaseAbort","group":"1_commit@5"},{"command":"git.commitNoVerify","group":"2_commit_noverify@1","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitStagedNoVerify","group":"2_commit_noverify@2","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitAllNoVerify","group":"2_commit_noverify@3","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitAmend","group":"3_amend@1"},{"command":"git.commitStagedAmend","group":"3_amend@2"},{"command":"git.commitAllAmend","group":"3_amend@3"},{"command":"git.commitAmendNoVerify","group":"4_amend_noverify@1","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitStagedAmendNoVerify","group":"4_amend_noverify@2","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitAllAmendNoVerify","group":"4_amend_noverify@3","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitSigned","group":"5_signoff@1"},{"command":"git.commitStagedSigned","group":"5_signoff@2"},{"command":"git.commitAllSigned","group":"5_signoff@3"},{"command":"git.commitSignedNoVerify","group":"6_signoff_noverify@1","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitStagedSignedNoVerify","group":"6_signoff_noverify@2","when":"config.git.allowNoVerifyCommit"},{"command":"git.commitAllSignedNoVerify","group":"6_signoff_noverify@3","when":"config.git.allowNoVerifyCommit"}],"git.changes":[{"command":"git.stageAll","group":"changes@1"},{"command":"git.unstageAll","group":"changes@2"},{"command":"git.cleanAll","group":"changes@3"}],"git.pullpush":[{"command":"git.sync","group":"1_sync@1"},{"command":"git.syncRebase","when":"gitState == idle","group":"1_sync@2"},{"command":"git.pull","group":"2_pull@1"},{"command":"git.pullRebase","group":"2_pull@2"},{"command":"git.pullFrom","group":"2_pull@3"},{"command":"git.push","group":"3_push@1"},{"command":"git.pushForce","when":"config.git.allowForcePush","group":"3_push@2"},{"command":"git.pushTo","group":"3_push@3"},{"command":"git.pushToForce","when":"config.git.allowForcePush","group":"3_push@4"},{"command":"git.fetch","group":"4_fetch@1"},{"command":"git.fetchPrune","group":"4_fetch@2"},{"command":"git.fetchAll","group":"4_fetch@3"}],"git.branch":[{"command":"git.merge","group":"1_merge@1"},{"command":"git.rebase","group":"1_merge@2"},{"command":"git.branch","group":"2_branch@1"},{"command":"git.branchFrom","group":"2_branch@2"},{"command":"git.renameBranch","group":"3_modify@1"},{"command":"git.deleteBranch","group":"3_modify@2"},{"command":"git.deleteRemoteBranch","group":"3_modify@3"},{"command":"git.publish","group":"4_publish@1"}],"git.remotes":[{"command":"git.addRemote","group":"remote@1"},{"command":"git.removeRemote","group":"remote@2"}],"git.stash":[{"command":"git.stash","group":"1_stash@1"},{"command":"git.stashIncludeUntracked","group":"1_stash@2"},{"command":"git.stashStaged","when":"gitVersion2.35","group":"1_stash@3"},{"command":"git.stashApplyLatest","group":"2_apply@1"},{"command":"git.stashApply","group":"2_apply@2"},{"command":"git.stashPopLatest","group":"3_pop@1"},{"command":"git.stashPop","group":"3_pop@2"},{"command":"git.stashDrop","group":"4_drop@1"},{"command":"git.stashDropAll","group":"4_drop@2"},{"command":"git.stashView","when":"config.multiDiffEditor.experimental.enabled","group":"5_preview@1"}],"git.tags":[{"command":"git.createTag","group":"tags@1"},{"command":"git.deleteTag","group":"tags@2"},{"command":"git.deleteRemoteTag","group":"tags@3"}],"git.worktrees":[{"when":"scmProviderContext == worktree","command":"git.openWorktree","group":"openWorktrees@1"},{"when":"scmProviderContext == worktree","command":"git.openWorktreeInNewWindow","group":"openWorktrees@2"},{"when":"scmProviderContext == repository","command":"git.createWorktree","group":"worktrees@1"},{"when":"scmProviderContext == worktree","command":"git.deleteWorktree","group":"worktrees@2"}]},"submenus":[{"id":"git.commit","label":"%submenu.commit%"},{"id":"git.changes","label":"%submenu.changes%"},{"id":"git.pullpush","label":"%submenu.pullpush%"},{"id":"git.branch","label":"%submenu.branch%"},{"id":"git.remotes","label":"%submenu.remotes%"},{"id":"git.stash","label":"%submenu.stash%"},{"id":"git.tags","label":"%submenu.tags%"},{"id":"git.worktrees","label":"%submenu.worktrees%"}],"configuration":{"title":"Git","properties":{"git.enabled":{"type":"boolean","scope":"resource","description":"%config.enabled%","default":true},"git.path":{"type":["string","null","array"],"markdownDescription":"%config.path%","default":null,"scope":"machine"},"git.autoRepositoryDetection":{"type":["boolean","string"],"enum":[true,false,"subFolders","openEditors"],"enumDescriptions":["%config.autoRepositoryDetection.true%","%config.autoRepositoryDetection.false%","%config.autoRepositoryDetection.subFolders%","%config.autoRepositoryDetection.openEditors%"],"description":"%config.autoRepositoryDetection%","default":true},"git.autorefresh":{"type":"boolean","description":"%config.autorefresh%","default":true},"git.autofetch":{"type":["boolean","string"],"enum":[true,false,"all"],"scope":"resource","markdownDescription":"%config.autofetch%","default":false,"tags":["usesOnlineServices"]},"git.autofetchPeriod":{"type":"number","scope":"resource","markdownDescription":"%config.autofetchPeriod%","default":180},"git.defaultBranchName":{"type":"string","markdownDescription":"%config.defaultBranchName%","default":"main","scope":"resource"},"git.branchPrefix":{"type":"string","description":"%config.branchPrefix%","default":"","scope":"resource"},"git.branchProtection":{"type":"array","markdownDescription":"%config.branchProtection%","items":{"type":"string"},"default":[],"scope":"resource"},"git.branchProtectionPrompt":{"type":"string","description":"%config.branchProtectionPrompt%","enum":["alwaysCommit","alwaysCommitToNewBranch","alwaysPrompt"],"enumDescriptions":["%config.branchProtectionPrompt.alwaysCommit%","%config.branchProtectionPrompt.alwaysCommitToNewBranch%","%config.branchProtectionPrompt.alwaysPrompt%"],"default":"alwaysPrompt","scope":"resource"},"git.branchValidationRegex":{"type":"string","description":"%config.branchValidationRegex%","default":""},"git.branchWhitespaceChar":{"type":"string","description":"%config.branchWhitespaceChar%","default":"-"},"git.branchRandomName.enable":{"type":"boolean","description":"%config.branchRandomNameEnable%","default":false,"scope":"resource"},"git.branchRandomName.dictionary":{"type":"array","markdownDescription":"%config.branchRandomNameDictionary%","items":{"type":"string","enum":["adjectives","animals","colors","numbers"],"enumDescriptions":["%config.branchRandomNameDictionary.adjectives%","%config.branchRandomNameDictionary.animals%","%config.branchRandomNameDictionary.colors%","%config.branchRandomNameDictionary.numbers%"]},"minItems":1,"maxItems":5,"default":["adjectives","animals"],"scope":"resource"},"git.confirmSync":{"type":"boolean","description":"%config.confirmSync%","default":true},"git.countBadge":{"type":"string","enum":["all","tracked","off"],"enumDescriptions":["%config.countBadge.all%","%config.countBadge.tracked%","%config.countBadge.off%"],"description":"%config.countBadge%","default":"all","scope":"resource"},"git.checkoutType":{"type":"array","items":{"type":"string","enum":["local","tags","remote"],"enumDescriptions":["%config.checkoutType.local%","%config.checkoutType.tags%","%config.checkoutType.remote%"]},"uniqueItems":true,"markdownDescription":"%config.checkoutType%","default":["local","remote","tags"]},"git.ignoreLegacyWarning":{"type":"boolean","description":"%config.ignoreLegacyWarning%","default":false},"git.ignoreMissingGitWarning":{"type":"boolean","description":"%config.ignoreMissingGitWarning%","default":false},"git.ignoreWindowsGit27Warning":{"type":"boolean","description":"%config.ignoreWindowsGit27Warning%","default":false},"git.ignoreLimitWarning":{"type":"boolean","description":"%config.ignoreLimitWarning%","default":false},"git.ignoreRebaseWarning":{"type":"boolean","description":"%config.ignoreRebaseWarning%","default":false},"git.defaultCloneDirectory":{"type":["string","null"],"default":null,"scope":"machine","description":"%config.defaultCloneDirectory%"},"git.useEditorAsCommitInput":{"type":"boolean","description":"%config.useEditorAsCommitInput%","default":true},"git.verboseCommit":{"type":"boolean","scope":"resource","markdownDescription":"%config.verboseCommit%","default":false},"git.enableSmartCommit":{"type":"boolean","scope":"resource","description":"%config.enableSmartCommit%","default":false},"git.smartCommitChanges":{"type":"string","enum":["all","tracked"],"enumDescriptions":["%config.smartCommitChanges.all%","%config.smartCommitChanges.tracked%"],"scope":"resource","description":"%config.smartCommitChanges%","default":"all"},"git.suggestSmartCommit":{"type":"boolean","scope":"resource","description":"%config.suggestSmartCommit%","default":true},"git.enableCommitSigning":{"type":"boolean","scope":"resource","description":"%config.enableCommitSigning%","default":false},"git.confirmEmptyCommits":{"type":"boolean","scope":"resource","description":"%config.confirmEmptyCommits%","default":true},"git.decorations.enabled":{"type":"boolean","default":true,"description":"%config.decorations.enabled%"},"git.enableStatusBarSync":{"type":"boolean","default":true,"description":"%config.enableStatusBarSync%","scope":"resource"},"git.followTagsWhenSync":{"type":"boolean","scope":"resource","default":false,"description":"%config.followTagsWhenSync%"},"git.replaceTagsWhenPull":{"type":"boolean","scope":"resource","default":false,"description":"%config.replaceTagsWhenPull%"},"git.promptToSaveFilesBeforeStash":{"type":"string","enum":["always","staged","never"],"enumDescriptions":["%config.promptToSaveFilesBeforeStash.always%","%config.promptToSaveFilesBeforeStash.staged%","%config.promptToSaveFilesBeforeStash.never%"],"scope":"resource","default":"always","description":"%config.promptToSaveFilesBeforeStash%"},"git.promptToSaveFilesBeforeCommit":{"type":"string","enum":["always","staged","never"],"enumDescriptions":["%config.promptToSaveFilesBeforeCommit.always%","%config.promptToSaveFilesBeforeCommit.staged%","%config.promptToSaveFilesBeforeCommit.never%"],"scope":"resource","default":"always","description":"%config.promptToSaveFilesBeforeCommit%"},"git.postCommitCommand":{"type":"string","enum":["none","push","sync"],"enumDescriptions":["%config.postCommitCommand.none%","%config.postCommitCommand.push%","%config.postCommitCommand.sync%"],"markdownDescription":"%config.postCommitCommand%","scope":"resource","default":"none"},"git.rememberPostCommitCommand":{"type":"boolean","description":"%config.rememberPostCommitCommand%","scope":"resource","default":false},"git.openAfterClone":{"type":"string","enum":["always","alwaysNewWindow","whenNoFolderOpen","prompt"],"enumDescriptions":["%config.openAfterClone.always%","%config.openAfterClone.alwaysNewWindow%","%config.openAfterClone.whenNoFolderOpen%","%config.openAfterClone.prompt%"],"default":"prompt","description":"%config.openAfterClone%"},"git.showInlineOpenFileAction":{"type":"boolean","default":true,"description":"%config.showInlineOpenFileAction%"},"git.showPushSuccessNotification":{"type":"boolean","description":"%config.showPushSuccessNotification%","default":false},"git.inputValidation":{"type":"boolean","default":false,"description":"%config.inputValidation%"},"git.inputValidationLength":{"type":"number","default":72,"description":"%config.inputValidationLength%"},"git.inputValidationSubjectLength":{"type":["number","null"],"default":50,"markdownDescription":"%config.inputValidationSubjectLength%"},"git.detectSubmodules":{"type":"boolean","scope":"resource","default":true,"description":"%config.detectSubmodules%"},"git.detectSubmodulesLimit":{"type":"number","scope":"resource","default":10,"description":"%config.detectSubmodulesLimit%"},"git.detectWorktrees":{"type":"boolean","scope":"resource","default":true,"description":"%config.detectWorktrees%"},"git.detectWorktreesLimit":{"type":"number","scope":"resource","default":10,"description":"%config.detectWorktreesLimit%"},"git.alwaysShowStagedChangesResourceGroup":{"type":"boolean","scope":"resource","default":false,"description":"%config.alwaysShowStagedChangesResourceGroup%"},"git.alwaysSignOff":{"type":"boolean","scope":"resource","default":false,"description":"%config.alwaysSignOff%"},"git.ignoreSubmodules":{"type":"boolean","scope":"resource","default":false,"description":"%config.ignoreSubmodules%"},"git.ignoredRepositories":{"type":"array","items":{"type":"string"},"default":[],"scope":"window","description":"%config.ignoredRepositories%"},"git.scanRepositories":{"type":"array","items":{"type":"string"},"default":[],"scope":"resource","description":"%config.scanRepositories%"},"git.showProgress":{"type":"boolean","description":"%config.showProgress%","default":true,"scope":"resource"},"git.rebaseWhenSync":{"type":"boolean","scope":"resource","default":false,"description":"%config.rebaseWhenSync%"},"git.pullBeforeCheckout":{"type":"boolean","scope":"resource","default":false,"description":"%config.pullBeforeCheckout%"},"git.fetchOnPull":{"type":"boolean","scope":"resource","default":false,"description":"%config.fetchOnPull%"},"git.pruneOnFetch":{"type":"boolean","scope":"resource","default":false,"description":"%config.pruneOnFetch%"},"git.pullTags":{"type":"boolean","scope":"resource","default":true,"description":"%config.pullTags%"},"git.autoStash":{"type":"boolean","scope":"resource","default":false,"description":"%config.autoStash%"},"git.allowForcePush":{"type":"boolean","default":false,"description":"%config.allowForcePush%"},"git.useForcePushWithLease":{"type":"boolean","default":true,"description":"%config.useForcePushWithLease%"},"git.useForcePushIfIncludes":{"type":"boolean","default":true,"markdownDescription":"%config.useForcePushIfIncludes%"},"git.confirmForcePush":{"type":"boolean","default":true,"description":"%config.confirmForcePush%"},"git.allowNoVerifyCommit":{"type":"boolean","default":false,"description":"%config.allowNoVerifyCommit%"},"git.confirmNoVerifyCommit":{"type":"boolean","default":true,"description":"%config.confirmNoVerifyCommit%"},"git.closeDiffOnOperation":{"type":"boolean","scope":"resource","default":false,"description":"%config.closeDiffOnOperation%"},"git.openDiffOnClick":{"type":"boolean","scope":"resource","default":true,"description":"%config.openDiffOnClick%"},"git.supportCancellation":{"type":"boolean","scope":"resource","default":false,"description":"%config.supportCancellation%"},"git.branchSortOrder":{"type":"string","enum":["committerdate","alphabetically"],"default":"committerdate","description":"%config.branchSortOrder%"},"git.untrackedChanges":{"type":"string","enum":["mixed","separate","hidden"],"enumDescriptions":["%config.untrackedChanges.mixed%","%config.untrackedChanges.separate%","%config.untrackedChanges.hidden%"],"default":"mixed","description":"%config.untrackedChanges%","scope":"resource"},"git.requireGitUserConfig":{"type":"boolean","description":"%config.requireGitUserConfig%","default":true,"scope":"resource"},"git.showCommitInput":{"type":"boolean","scope":"resource","default":true,"description":"%config.showCommitInput%"},"git.terminalAuthentication":{"type":"boolean","default":true,"description":"%config.terminalAuthentication%"},"git.terminalGitEditor":{"type":"boolean","default":false,"description":"%config.terminalGitEditor%"},"git.useCommitInputAsStashMessage":{"type":"boolean","scope":"resource","default":false,"description":"%config.useCommitInputAsStashMessage%"},"git.useIntegratedAskPass":{"type":"boolean","default":true,"description":"%config.useIntegratedAskPass%"},"git.githubAuthentication":{"markdownDeprecationMessage":"This setting is now deprecated, please use `#github.gitAuthentication#` instead."},"git.timeline.date":{"type":"string","enum":["committed","authored"],"enumDescriptions":["%config.timeline.date.committed%","%config.timeline.date.authored%"],"default":"committed","description":"%config.timeline.date%","scope":"window"},"git.timeline.showAuthor":{"type":"boolean","default":true,"description":"%config.timeline.showAuthor%","scope":"window"},"git.timeline.showUncommitted":{"type":"boolean","default":false,"description":"%config.timeline.showUncommitted%","scope":"window"},"git.showActionButton":{"type":"object","additionalProperties":false,"description":"%config.showActionButton%","properties":{"commit":{"type":"boolean","description":"%config.showActionButton.commit%"},"publish":{"type":"boolean","description":"%config.showActionButton.publish%"},"sync":{"type":"boolean","description":"%config.showActionButton.sync%"}},"default":{"commit":true,"publish":true,"sync":true},"scope":"resource"},"git.statusLimit":{"type":"number","scope":"resource","default":10000,"description":"%config.statusLimit%"},"git.repositoryScanIgnoredFolders":{"type":"array","items":{"type":"string"},"default":["node_modules"],"scope":"resource","markdownDescription":"%config.repositoryScanIgnoredFolders%"},"git.repositoryScanMaxDepth":{"type":"number","scope":"resource","default":1,"markdownDescription":"%config.repositoryScanMaxDepth%"},"git.commandsToLog":{"type":"array","items":{"type":"string"},"default":[],"markdownDescription":"%config.commandsToLog%"},"git.mergeEditor":{"type":"boolean","default":false,"markdownDescription":"%config.mergeEditor%","scope":"window"},"git.optimisticUpdate":{"type":"boolean","default":true,"markdownDescription":"%config.optimisticUpdate%","scope":"resource","tags":["experimental"]},"git.openRepositoryInParentFolders":{"type":"string","enum":["always","never","prompt"],"enumDescriptions":["%config.openRepositoryInParentFolders.always%","%config.openRepositoryInParentFolders.never%","%config.openRepositoryInParentFolders.prompt%"],"default":"prompt","markdownDescription":"%config.openRepositoryInParentFolders%","scope":"resource"},"git.similarityThreshold":{"type":"number","default":50,"minimum":0,"maximum":100,"markdownDescription":"%config.similarityThreshold%","scope":"resource"},"git.blame.editorDecoration.enabled":{"type":"boolean","default":false,"markdownDescription":"%config.blameEditorDecoration.enabled%"},"git.blame.editorDecoration.template":{"type":"string","default":"${subject}, ${authorName} (${authorDateAgo})","markdownDescription":"%config.blameEditorDecoration.template%"},"git.blame.statusBarItem.enabled":{"type":"boolean","default":true,"markdownDescription":"%config.blameStatusBarItem.enabled%"},"git.blame.statusBarItem.template":{"type":"string","default":"${authorName} (${authorDateAgo})","markdownDescription":"%config.blameStatusBarItem.template%"},"git.commitShortHashLength":{"type":"number","default":7,"minimum":7,"maximum":40,"markdownDescription":"%config.commitShortHashLength%","scope":"resource"},"git.diagnosticsCommitHook.enabled":{"type":"boolean","default":false,"markdownDescription":"%config.diagnosticsCommitHook.enabled%","scope":"resource"},"git.diagnosticsCommitHook.sources":{"type":"object","additionalProperties":{"type":"string","enum":["error","warning","information","hint","none"]},"default":{"*":"error"},"markdownDescription":"%config.diagnosticsCommitHook.sources%","scope":"resource"},"git.discardUntrackedChangesToTrash":{"type":"boolean","default":true,"markdownDescription":"%config.discardUntrackedChangesToTrash%"},"git.showReferenceDetails":{"type":"boolean","default":true,"markdownDescription":"%config.showReferenceDetails%"}}},"colors":[{"id":"gitDecoration.addedResourceForeground","description":"%colors.added%","defaults":{"light":"#587c0c","dark":"#81b88b","highContrast":"#a1e3ad","highContrastLight":"#374e06"}},{"id":"gitDecoration.modifiedResourceForeground","description":"%colors.modified%","defaults":{"light":"#895503","dark":"#E2C08D","highContrast":"#E2C08D","highContrastLight":"#895503"}},{"id":"gitDecoration.deletedResourceForeground","description":"%colors.deleted%","defaults":{"light":"#ad0707","dark":"#c74e39","highContrast":"#c74e39","highContrastLight":"#ad0707"}},{"id":"gitDecoration.renamedResourceForeground","description":"%colors.renamed%","defaults":{"light":"#007100","dark":"#73C991","highContrast":"#73C991","highContrastLight":"#007100"}},{"id":"gitDecoration.untrackedResourceForeground","description":"%colors.untracked%","defaults":{"light":"#007100","dark":"#73C991","highContrast":"#73C991","highContrastLight":"#007100"}},{"id":"gitDecoration.ignoredResourceForeground","description":"%colors.ignored%","defaults":{"light":"#8E8E90","dark":"#8C8C8C","highContrast":"#A7A8A9","highContrastLight":"#8e8e90"}},{"id":"gitDecoration.stageModifiedResourceForeground","description":"%colors.stageModified%","defaults":{"light":"#895503","dark":"#E2C08D","highContrast":"#E2C08D","highContrastLight":"#895503"}},{"id":"gitDecoration.stageDeletedResourceForeground","description":"%colors.stageDeleted%","defaults":{"light":"#ad0707","dark":"#c74e39","highContrast":"#c74e39","highContrastLight":"#ad0707"}},{"id":"gitDecoration.conflictingResourceForeground","description":"%colors.conflict%","defaults":{"light":"#ad0707","dark":"#e4676b","highContrast":"#c74e39","highContrastLight":"#ad0707"}},{"id":"gitDecoration.submoduleResourceForeground","description":"%colors.submodule%","defaults":{"light":"#1258a7","dark":"#8db9e2","highContrast":"#8db9e2","highContrastLight":"#1258a7"}},{"id":"git.blame.editorDecorationForeground","description":"%colors.blameEditorDecoration%","defaults":{"dark":"editorInlayHint.foreground","light":"editorInlayHint.foreground","highContrast":"editorInlayHint.foreground","highContrastLight":"editorInlayHint.foreground"}}],"configurationDefaults":{"[git-commit]":{"editor.rulers":[50,72],"editor.wordWrap":"off","workbench.editor.restoreViewState":false},"[git-rebase]":{"workbench.editor.restoreViewState":false}},"viewsWelcome":[{"view":"scm","contents":"%view.workbench.scm.disabled%","when":"!config.git.enabled"},{"view":"scm","contents":"%view.workbench.scm.missing%","when":"config.git.enabled && git.missing && remoteName != \'\'"},{"view":"scm","contents":"%view.workbench.scm.missing.mac%","when":"config.git.enabled && git.missing && remoteName == \'\' && isMac"},{"view":"scm","contents":"%view.workbench.scm.missing.windows%","when":"config.git.enabled && git.missing && remoteName == \'\' && isWindows"},{"view":"scm","contents":"%view.workbench.scm.missing.linux%","when":"config.git.enabled && git.missing && remoteName == \'\' && isLinux"},{"view":"scm","contents":"%view.workbench.scm.empty%","when":"config.git.enabled && !git.missing && workbenchState == empty && git.parentRepositoryCount == 0 && git.unsafeRepositoryCount == 0 && git.closedRepositoryCount == 0","enablement":"git.state == initialized","group":"2_open@1"},{"view":"scm","contents":"%view.workbench.scm.emptyWorkspace%","when":"config.git.enabled && !git.missing && workbenchState == workspace && workspaceFolderCount == 0 && git.parentRepositoryCount == 0 && git.unsafeRepositoryCount == 0 && git.closedRepositoryCount == 0","enablement":"git.state == initialized","group":"2_open@1"},{"view":"scm","contents":"%view.workbench.scm.scanFolderForRepositories%","when":"config.git.enabled && !git.missing && workbenchState == folder && workspaceFolderCount != 0 && git.state != initialized"},{"view":"scm","contents":"%view.workbench.scm.scanWorkspaceForRepositories%","when":"config.git.enabled && !git.missing && workbenchState == workspace && workspaceFolderCount != 0 && git.state != initialized"},{"view":"scm","contents":"%view.workbench.scm.folder%","when":"config.git.enabled && !git.missing && git.state == initialized && workbenchState == folder && scm.providerCount == 0 && git.parentRepositoryCount == 0 && git.unsafeRepositoryCount == 0 && git.closedRepositoryCount == 0 && remoteName != \'codespaces\'","group":"5_scm@1"},{"view":"scm","contents":"%view.workbench.scm.workspace%","when":"config.git.enabled && !git.missing && git.state == initialized && workbenchState == workspace && workspaceFolderCount != 0 && scm.providerCount == 0 && git.parentRepositoryCount == 0 && git.unsafeRepositoryCount == 0 && git.closedRepositoryCount == 0 && remoteName != \'codespaces\'","group":"5_scm@1"},{"view":"scm","contents":"%view.workbench.scm.repositoryInParentFolders%","when":"config.git.enabled && !git.missing && git.state == initialized && git.parentRepositoryCount == 1"},{"view":"scm","contents":"%view.workbench.scm.repositoriesInParentFolders%","when":"config.git.enabled && !git.missing && git.state == initialized && git.parentRepositoryCount > 1"},{"view":"scm","contents":"%view.workbench.scm.unsafeRepository%","when":"config.git.enabled && !git.missing && git.state == initialized && git.unsafeRepositoryCount == 1"},{"view":"scm","contents":"%view.workbench.scm.unsafeRepositories%","when":"config.git.enabled && !git.missing && git.state == initialized && git.unsafeRepositoryCount > 1"},{"view":"scm","contents":"%view.workbench.scm.closedRepository%","when":"config.git.enabled && !git.missing && git.state == initialized && git.closedRepositoryCount == 1"},{"view":"scm","contents":"%view.workbench.scm.closedRepositories%","when":"config.git.enabled && !git.missing && git.state == initialized && git.closedRepositoryCount > 1"},{"view":"explorer","contents":"%view.workbench.cloneRepository%","when":"config.git.enabled && git.state == initialized && scm.providerCount == 0","group":"5_scm@1"},{"view":"explorer","contents":"%view.workbench.learnMore%","when":"config.git.enabled && git.state == initialized && scm.providerCount == 0","group":"5_scm@10"}]},"dependencies":{"@joaomoreno/unique-names-generator":"^5.2.0","@vscode/extension-telemetry":"^0.9.8","byline":"^5.0.0","file-type":"16.5.4","picomatch":"2.3.1","vscode-uri":"^2.0.0","which":"4.0.0"},"devDependencies":{"@types/byline":"4.2.31","@types/mocha":"^10.0.10","@types/node":"22.x","@types/picomatch":"2.3.0","@types/which":"3.0.0"},"repository":{"type":"git","url":"https://github.com/microsoft/vscode.git"}}')},8393:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TelemetryUtil=void 0;class i{static applyReplacements(e,t){for(const i of Object.keys(e))for(const n of t)n.lookup.test(i)&&(void 0!==n.replacementString?e[i]=n.replacementString:delete e[i])}static shouldUseOneDataSystemSDK(e){return 74===e.length&&"-"===e[32]&&"-"===e[41]&&"-"===e[46]&&"-"===e[51]&&"-"===e[56]&&"-"===e[69]}static getAdditionalCommonProperties(e){return{"common.os":e.platform,"common.nodeArch":e.architecture,"common.platformversion":(e.release||"").replace(/^(\d+)(\.\d+)?(\.\d+)?(.*)/,"$1$2$3"),"common.telemetryclientversion":"0.9.8"}}static getInstance(){return i._instance||(i._instance=new i),i._instance}}t.TelemetryUtil=i},8596:(e,t,i)=>{"use strict";i.d(t,{o:()=>g});var n=i(659),r=i(3673);function o(e){var t="ai."+e+".";return function(e){return t+e}}var a=o("application"),s=o("device"),c=o("location"),l=o("operation"),u=o("session"),d=o("user"),m=o("cloud"),h=o("internal"),g=function(e){function t(){return e.call(this)||this}return(0,n.qU)(t,e),t}((0,r.SZ)({applicationVersion:a("ver"),applicationBuild:a("build"),applicationTypeId:a("typeId"),applicationId:a("applicationId"),applicationLayer:a("layer"),deviceId:s("id"),deviceIp:s("ip"),deviceLanguage:s("language"),deviceLocale:s("locale"),deviceModel:s("model"),deviceFriendlyName:s("friendlyName"),deviceNetwork:s("network"),deviceNetworkName:s("networkName"),deviceOEMName:s("oemName"),deviceOS:s("os"),deviceOSVersion:s("osVersion"),deviceRoleInstance:s("roleInstance"),deviceRoleName:s("roleName"),deviceScreenResolution:s("screenResolution"),deviceType:s("type"),deviceMachineName:s("machineName"),deviceVMName:s("vmName"),deviceBrowser:s("browser"),deviceBrowserVersion:s("browserVersion"),locationIp:c("ip"),locationCountry:c("country"),locationProvince:c("province"),locationCity:c("city"),operationId:l("id"),operationName:l("name"),operationParentId:l("parentId"),operationRootId:l("rootId"),operationSyntheticSource:l("syntheticSource"),operationCorrelationVector:l("correlationVector"),sessionId:u("id"),sessionIsFirst:u("isFirst"),sessionIsNew:u("isNew"),userAccountAcquisitionDate:d("accountAcquisitionDate"),userAccountId:d("accountId"),userAgent:d("userAgent"),userId:d("id"),userStoreRegion:d("storeRegion"),userAuthUserId:d("authUserId"),userAnonymousUserAcquisitionDate:d("anonUserAcquisitionDate"),userAuthenticatedUserAcquisitionDate:d("authUserAcquisitionDate"),cloudName:m("name"),cloudRole:m("role"),cloudRoleVer:m("roleVer"),cloudRoleInstance:m("roleInstance"),cloudEnvironment:m("environment"),cloudLocation:m("location"),cloudDeploymentUnit:m("deploymentUnit"),internalNodeName:h("nodeName"),internalSdkVersion:h("sdkVersion"),internalAgentVersion:h("agentVersion"),internalSnippet:h("snippet"),internalSdkSrc:h("sdkSrc")}))},8611:e=>{"use strict";e.exports=require("http")},8623:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GitBaseApi=void 0;const n=i(1398);t.GitBaseApi=class{static _gitBaseApi;static getAPI(){if(!this._gitBaseApi){const e=n.extensions.getExtension("vscode.git-base").exports,t=t=>{this._gitBaseApi=t?e.getAPI(1):void 0};if(e.onDidChangeEnablement(t),t(e.enabled),!this._gitBaseApi)throw new Error("vscode.git-base extension is not enabled.")}return this._gitBaseApi}}},8632:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractTokenizer=void 0;const n=i(8705);t.AbstractTokenizer=class{constructor(e){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=e||{}}async readToken(e,t=this.position){const i=Buffer.alloc(e.len);if(await this.readBuffer(i,{position:t})t)return this.position+=t,t}return this.position+=e,e}async close(){}normalizeOptions(e,t){if(t&&void 0!==t.position&&t.position{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CommitCommandsCenter=t.GitPostCommitCommandsProvider=void 0;const n=i(1398),r=i(6199),o=i(7937);t.GitPostCommitCommandsProvider=class{_repositoryResolver;constructor(e){this._repositoryResolver=e}getCommands(e){const t=this._repositoryResolver.getRepository(e.rootUri);if(!t)return[];const i=n.workspace.getConfiguration("git",n.Uri.file(t.root)),r=t.isBranchProtected(),o=i.get("branchProtectionPrompt"),a=r&&"alwaysPrompt"===o,s=r&&"alwaysCommitToNewBranch"===o,c=t.operations.isRunning("Commit")||t.operations.isRunning("PostCommitCommand"),l=c?"$(sync~spin)":a?"$(lock)":s?"$(git-branch)":void 0;let u=s?n.l10n.t("Commit to New Branch & Push Changes"):n.l10n.t("Commit & Push Changes"),d=s?n.l10n.t("Commit to New Branch & Synchronize Changes"):n.l10n.t("Commit & Sync Changes");return c&&(u=s?n.l10n.t("Committing to New Branch & Pushing Changes..."):n.l10n.t("Committing & Pushing Changes..."),d=s?n.l10n.t("Committing to New Branch & Synchronizing Changes..."):n.l10n.t("Committing & Synchronizing Changes...")),[{command:"git.push",title:n.l10n.t("{0} Commit & Push",l??"$(arrow-up)"),tooltip:u},{command:"git.sync",title:n.l10n.t("{0} Commit & Sync",l??"$(sync)"),tooltip:d}]}},t.CommitCommandsCenter=class{globalState;repository;postCommitCommandsProviderRegistry;_onDidChange=new n.EventEmitter;get onDidChange(){return this._onDidChange.event}disposables=[];set postCommitCommand(e){void 0!==e&&this.globalState.update(this.getGlobalStateKey(),e).then(()=>this._onDidChange.fire())}constructor(e,t,i){this.globalState=e,this.repository=t,this.postCommitCommandsProviderRegistry=i;const r=n.Uri.file(t.root);this.migratePostCommitCommandStorage().then(()=>{const e=async()=>{n.workspace.getConfiguration("git",r).get("rememberPostCommitCommand")||await this.globalState.update(this.getGlobalStateKey(),void 0)};this.disposables.push(n.workspace.onDidChangeConfiguration(t=>{t.affectsConfiguration("git.rememberPostCommitCommand",r)&&e()})),e(),this.disposables.push(i.onDidChangePostCommitCommandsProviders(()=>this._onDidChange.fire()))})}getPrimaryCommand(){const e=this.getSecondaryCommands().map(e=>e).flat(),t=e.find(e=>2===e.arguments?.length&&e.arguments[1]===this.getPostCommitCommandStringFromStorage()),i=e.find(e=>2===e.arguments?.length&&e.arguments[1]===this.getPostCommitCommandStringFromSetting());return t??i??this.getCommitCommands()[0]}getSecondaryCommands(){const e=[];for(const t of this.postCommitCommandsProviderRegistry.getPostCommitCommandsProviders()){const i=t.getCommands(new r.ApiRepository(this.repository));e.push((i??[]).map(e=>({command:"git.commit",title:e.title,tooltip:e.tooltip,arguments:[this.repository.sourceControl,e.command]})))}return e.length>0&&e.splice(0,0,this.getCommitCommands()),e}async executePostCommitCommand(e){try{if(null===e)return;if(void 0===e){const t=this.getPrimaryCommand();e=2===t.arguments?.length?t.arguments[1]:null}null!==e&&await n.commands.executeCommand(e.toString(),new r.ApiRepository(this.repository))}catch(e){throw e}finally{this.isRememberPostCommitCommandEnabled()||(await this.globalState.update(this.getGlobalStateKey(),void 0),this._onDidChange.fire())}}getGlobalStateKey(){return`postCommitCommand:${this.repository.root}`}getCommitCommands(){const e=n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)),t=this.repository.isBranchProtected(),i=e.get("branchProtectionPrompt"),r=t&&"alwaysCommitToNewBranch"===i,o=t&&"alwaysPrompt"===i?"$(lock)":r?"$(git-branch)":void 0,a=this.repository.HEAD?.name;let s=r?n.l10n.t("Commit Changes to New Branch"):a?n.l10n.t('Commit Changes on "{0}"',a):n.l10n.t("Commit Changes");return this.repository.operations.isRunning("Commit")&&(s=r?n.l10n.t("Committing Changes to New Branch..."):n.l10n.t("Committing Changes...")),[{command:"git.commit",title:n.l10n.t("{0} Commit",o??"$(check)"),tooltip:s,arguments:[this.repository.sourceControl,null]},{command:"git.commitAmend",title:n.l10n.t("{0} Commit (Amend)",o??"$(check)"),tooltip:s,arguments:[this.repository.sourceControl,null]}]}getPostCommitCommandStringFromSetting(){const e=n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("postCommitCommand");return"push"===e||"sync"===e?`git.${e}`:void 0}getPostCommitCommandStringFromStorage(){return this.globalState.get(this.getGlobalStateKey())}async migratePostCommitCommandStorage(){const e=this.globalState.get(this.repository.root);void 0!==e&&(await this.globalState.update(this.getGlobalStateKey(),e),await this.globalState.update(this.repository.root,void 0))}isRememberPostCommitCommandEnabled(){return!0===n.workspace.getConfiguration("git",n.Uri.file(this.repository.root)).get("rememberPostCommitCommand")}dispose(){this.disposables=(0,o.dispose)(this.disposables)}}},8705:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamReader=t.EndOfStreamError=void 0;var n=i(5523);Object.defineProperty(t,"EndOfStreamError",{enumerable:!0,get:function(){return n.EndOfStreamError}});var r=i(1510);Object.defineProperty(t,"StreamReader",{enumerable:!0,get:function(){return r.StreamReader}})},8916:(e,t,i)=>{"use strict";i.r(t),i.d(t,{BE_PROFILE:()=>o,NRT_PROFILE:()=>r,PostChannel:()=>Ct,RT_PROFILE:()=>n});var n="REAL_TIME",r="NEAR_REAL_TIME",o="BEST_EFFORT",a=i(659),s=i(8279),c=i(4822),l=i(269),u=i(8156),d=i(6149),m=i(4276),h=i(9749),g=i(2317),p=i(3673),f=i(3662),y=i(3775),v=i(8257),w=i(8205),b="",C="drop",k="requeue",R="no-cache, no-store",S="application/x-json-stream",E="cache-control",D="content-type",P="client-version",_="client-id",A="time-delta-to-apply-millis",I="upload-time",T="apikey",x="AuthMsaDeviceTicket",M="WebAuthToken",O="AuthXToken",B="msfpc",G="trace",L="user",H="allowRequestSending",F="firstRequestSent",N="shouldAddClockSkewHeaders",U="getClockSkewHeaderValue",$="setClockSkew",W="length",j="concat",z="iKey",K="count",V="events",J="push",q="split",X="splice",Z="toLowerCase",Y="hdrs",Q="useHdrs",ee="initialize",te="setTimeoutOverride",ie="clearTimeoutOverride",ne="overrideEndpointUrl",re="avoidOptions",oe="enableCompoundKey",ae="disableXhrSync",se="disableFetchKeepAlive",ce="useSendBeacon",le="fetchCredentials",ue="alwaysUseXhrOverride",de="serializeOfflineEvt",me="getOfflineRequestDetails",he="createPayload",ge="createOneDSPayload",pe="payloadBlob",fe="headers",ye="_thePayload",ve="urlString",we="batches",be="sendType",Ce="addHeader",ke="canSendRequest",Re="sendQueuedRequests",Se="isCompletelyIdle",Ee="setUnloading",De="resume",Pe="sendSynchronousBatch",_e="_transport",Ae="getWParam",Ie="isBeacon",Te="timings",xe="isTeardown",Me="isSync",Oe="data",Be="_sendReason",Ge="setKillSwitchTenants",Le="_backOffTransmission",He="identifier",Fe="eventsLimitInMem",Ne="autoFlushEventsLimit",Ue="baseData",$e="sendAttempt",We="latency",je="sync";function ze(e){var t=(e.ext||{}).intweb;return t&&(0,c.yD)(t[B])?t[B]:null}function Ke(e){for(var t=null,i=0;null===t&&i(0,l.f0d)()||(delete i[n],!1)}})}return e.__ieDyn=1,e}();function Qe(e){var t,i=Math.floor(1200*Math.random())+2400;return t=Math.pow(2,e)*i,Math.min(t,6e5)}var et,tt=2e6,it=Math.min(tt,65e3),nt="metadata",rt="f",ot=/\./,at=function(){function e(t,i,n,r,o,a){var d="data",m="baseData",h=!!r,g=!0,p=i,f={},y=!!a,v=o||c.Go;(0,s.A)(e,this,function(e){function i(e,t,r,o,a,s,u){(0,l.zav)(e,function(e,d){var m=null;if(d||(0,c.yD)(d)){var g=r,y=e,v=a,w=t;if(h&&!o&&ot.test(e)){var b=e.split("."),C=b.length;if(C>1){v&&(v=v.slice());for(var k=0;k=7&&(t=(0,l.tGl)(e,"ext.metadata")||(0,l.tGl)(e,"ext.web")),f[e]=t),t}(g);if(m=!S&&p&&p.handleField(g,y)?p.value(g,y,d,n):(0,c.TC)(y,d,n)){var E=m.value;if(w[y]=E,s&&s(v,y,m),u&&"object"==typeof E&&!(0,l.cyL)(E)){var D=v;D&&(D=D.slice()).push(y),i(d,E,g+"."+y,o,D,s,u)}}}})}e.createPayload=function(e,t,i,n,r,o){return{apiKeys:[],payloadBlob:b,overflow:null,sizeExceed:[],failedEvts:[],batches:[],numEvents:0,retryCnt:e,isTeardown:t,isSync:i,isBeacon:n,sendType:o,sendReason:r}},e.appendPayload=function(i,n,r){var o=i&&n&&!i.overflow;return o&&(0,u.r2)(t,function(){return"Serializer:appendPayload"},function(){for(var t=n.events(),o=i.payloadBlob,a=i.numEvents,s=!1,c=[],u=[],d=i.isBeacon,m=d?65e3:3984588,h=d?it:tt,g=0,p=0;g=r){i.overflow=n.split(g);break}var y=e.getEventBlob(f);if(y&&y.length<=h){var v=y.length;if(o.length+v>m){i.overflow=n.split(g);break}o&&(o+="\n"),o+=y,++p>20&&((0,l.hKY)(o,0,1),p=0),s=!0,a++}else y?c.push(f):u.push(f),t.splice(g,1),g--}g++}if(c.length>0&&i.sizeExceed.push(Ve.create(n.iKey(),c)),u.length>0&&i.failedEvts.push(Ve.create(n.iKey(),u)),s){i.batches.push(n),i.payloadBlob=o,i.numEvents=a;var w=n.iKey();-1===(0,l.rDm)(i.apiKeys,w)&&i.apiKeys.push(w)}},function(){return{payload:i,theBatch:{iKey:n.iKey(),evts:n.events()},max:r}}),o},e.getEventBlob=function(e){try{return(0,u.r2)(t,function(){return"Serializer.getEventBlob"},function(){var t={};t.name=e.name,t.time=e.time,t.ver=e.ver,t.iKey="o:"+(0,c.EO)(e.iKey);var n,r={};y||(n=function(e,t,i){!function(e,t,i,n,r){if(r&&t){var o=e(r.value,r.kind,r.propertyType);if(o>-1){var a=t[nt];a||(a=t[nt]={f:{}});var s=a[rt];if(s||(s=a[rt]={}),i)for(var c=0;c0)for(var r=t[Z](),o=0;o0&&(n&&dt[t]?(e[Y][dt[t]]=i,e[Q]=!0):e.url+="&"+t+"="+i)}ht(x,x,!1),ht(P,P),ht(_,"Client-Id"),ht(T,T),ht(A,A),ht(I,I),ht(O,O);var ft=function(){function e(t,i,n,r){var o,a,d,m,g,f,v,w,k,x,M,O,G,L,Z,He,Fe,Ne,Ue,$e,We,je,ze,Ke,et,tt,it,nt,rt,ot,dt,ht,ft=!1;(0,s.A)(e,this,function(e){function s(e,t){try{return dt&&dt.getSenderInst(e,t)}catch(e){}return null}function yt(){try{return{enableSendPromise:!1,isOneDs:!0,disableCredentials:!1,fetchCredentials:ht,disableXhr:!1,disableBeacon:!ft,disableBeaconSync:!ft,disableFetchKeepAlive:We,timeWrapper:rt,addNoResponse:ze,senderOnCompleteCallBack:{xdrOnComplete:vt,fetchOnComplete:wt,xhrOnComplete:bt,beaconOnRetry:kt}}}catch(e){}return null}function vt(e,t,i){var n=(0,p.Lo)(e);Ct(t,200,{},n),Ot(n)}function wt(e,t,i,n){var r={},o=e[fe];o&&o.forEach(function(e,t){r[t]=e}),function(e,i,n){Ct(t,e,i,n),Ot(n)}(e.status,r,i||b)}function bt(e,t,i){var n=(0,p.Lo)(e);Ct(t,e.status,(0,p.w3)(e,!0),n),Ot(n)}function Ct(e,t,i,n){try{e(t,i,n)}catch(e){(0,y.ZP)(v,2,518,(0,l.mmD)(e))}}function kt(e,t,i){var n=200,r=e[ye],o=e[ve]+(ze?"&NoResponseBody=true":b);try{var a=(0,l.w3n)();if(r){var s=!!k.getPlugin("LocalStorage"),c=[],u=[];(0,l.Iuo)(r[we],function(e){if(c&&e&&e[K]()>0)for(var t=e[V](),i=0;i0&&(r.sentEvts=u),s||Bt(c,8003,r[be],!0)}else n=0}catch(e){(0,y.OG)(v,"Failed to send telemetry using sendBeacon API. Ex:"+(0,l.mmD)(e)),n=0}finally{Ct(t,n,{},b)}}function Rt(e){return 2===e||3===e}function St(e){return Fe&&Rt(e)&&(e=2),e}function Et(){return!d&&g0&&!d&&w[t]&&L&&(n=0!==t||Et()&&(i>0||m[H]())),n}function _t(e){var t={};return e&&(0,l.Iuo)(e,function(e,i){t[i]={iKey:e[z](),evts:e[V]()}}),t}function At(e,i,n,r,o){if(e&&0!==e[W])if(d)Bt(e,1,r);else{r=St(r);try{var s=e,m=0!==r;(0,u.r2)(k,function(){return"HttpManager:_sendBatches"},function(s){s&&(e=e.slice(0));for(var l=[],u=null,d=(0,c.WB)(),h=w[r]||(m?w[1]:w[0]),g=h&&h[_e],p=je&&(Fe||Rt(r)||3===g||h._isSync&&2===g);Pt(e,r,i);){var f=e.shift();f&&f[K]()>0&&(a.isTenantKilled(f[z]())?l[J](f):(u=u||L[he](i,n,m,p,o,r),L.appendPayload(u,f,t)?null!==u.overflow&&(e=[u.overflow][j](e),u.overflow=null,xt(u,d,(0,c.WB)(),o),d=(0,c.WB)(),u=null):(xt(u,d,(0,c.WB)(),o),d=(0,c.WB)(),e=[f][j](e),u=null)))}u&&xt(u,d,(0,c.WB)(),o),e[W]>0&&(G=e[j](G)),Bt(l,8004,r)},function(){return{batches:_t(s),retryCount:i,isTeardown:n,isSynchronous:m,sendReason:o,useSendBeacon:Rt(r),sendType:r}},!m)}catch(e){(0,y.ZP)(v,2,48,"Unexpected Exception sending batch: "+(0,l.mmD)(e))}}}function It(e,t){var i={url:o,hdrs:{},useHdrs:!1};t?(i[Y]=(0,c.X$)(i[Y],O),i.useHdrs=(0,l.cGk)(i.hdrs)[W]>0):(0,l.zav)(O,function(e,t){mt[e]?pt(i,mt[e],t,!1):(i[Y][e]=t,i[Q]=!0)}),pt(i,_,"NO_AUTH",t),pt(i,P,c.xE,t);var n=b;(0,l.Iuo)(e.apiKeys,function(e){n[W]>0&&(n+=","),n+=e}),pt(i,T,n,t),pt(i,I,(0,l.f0d)().toString(),t);var r=function(e){for(var t=0;t=0&&(i.url+="&w="+a)}for(var s=0;s0){var s=!!et,d=w[t.sendType];!Rt(t[be])&&t[Ie]&&2===t.sendReason&&(d=w[2]||w[3]||d);var h=Ne;(t.isBeacon||3===d[_e])&&(h=!1);var p=It(t,h);h=h||p[Q];var b=(0,c.WB)();(0,u.r2)(k,function(){return"HttpManager:_doPayloadSend"},function(){for(var w=0;w0?_[ct]++:_[ct]=1}Bt(t[we],1e3+(o||0),t[be],!0);var I={data:t[pe],urlString:p.url,headers:p[Y],_thePayload:t,_sendReason:o,timeout:Ue,disableXhrSync:$e,disableFetchKeepAlive:We};h&&(gt(I[fe],E)||(I[fe][E]=R),gt(I[fe],D)||(I[fe][D]=S));var T=null;d&&(T=function(i){m[F]();var r=function(i,r){!function(t,i,r,o){var s,u=9e3,d=null,h=!1,p=!1;try{var y=!0;if(typeof t!==Xe.bA){if(i){m[$](i["time-delta-millis"]);var v=i["kill-duration"]||i["kill-duration-seconds"];(0,l.Iuo)(a[Ge](i["kill-tokens"],v),function(e){(0,l.Iuo)(r[we],function(t){if(t[z]()===e){d=d||[];var i=t[q](0);r.numEvents-=i[K](),d[J](i)}})})}if(200==t||204==t)return void(u=200);((s=t)>=300&&s<500&&429!=s||501==s||505==s||r.numEvents<=0)&&(y=!1),u=9e3+t%1e3}if(y){u=100;var w=r.retryCnt;0===r[be]&&(w0&&function(e,t){Z&&(0,l.Iuo)(e,function(e){Tt(e[Te]=e[Te]||{},"sendEventCompleted",t)})}(e[V](),t)})}}(o)),Bt(o,i,t[be],!0)}finally{0===t[be]&&(g--,5!==n&&e.sendQueuedRequests(t[be],n))}}(r,u,o,p)),Bt(d,8004,r[be])}}(i,r,t,o)},s=t[xe]||t[Me];try{d.sendPOST(i,r,s),tt&&tt(I,i,s,t[Ie])}catch(e){(0,y.OG)(v,"Unexpected exception sending payload. Ex:"+(0,l.mmD)(e)),Ct(r,0,{})}}),(0,u.r2)(k,function(){return"HttpManager:_doPayloadSend.sender"},function(){if(T)if(0===t[be]&&g++,s&&!t.isBeacon&&3!==d[_e]){var e={data:I[Oe],urlString:I[ve],headers:(0,c.X$)({},I[fe]),timeout:I.timeout,disableXhrSync:I[ae],disableFetchKeepAlive:I[se]},i=!1;(0,u.r2)(k,function(){return"HttpManager:_doPayloadSend.sendHook"},function(){try{et(e,function(e){i=!0,x||e[ye]||(e[ye]=e[ye]||I[ye],e[Be]=e[Be]||I[Be]),T(e)},t.isSync||t[xe])}catch(e){i||T(I)}})}else T(I)})},function(){return{thePayload:t,serializationStart:i,serializationCompleted:r,sendReason:o}},t[Me])}t.sizeExceed&&t.sizeExceed[W]>0&&Bt(t.sizeExceed,8003,t[be]),t.failedEvts&&t.failedEvts[W]>0&&Bt(t.failedEvts,8002,t[be])}function Mt(e,t,i){t?e():rt.set(e,i)}function Ot(e){var t=it;try{for(var i=0;i0&&r){var o=r[(s=t,l=ut[s],(0,c.yD)(l)||(l="oth",s>=9e3&&s<=9999?l="rspFail":s>=8e3&&s<=8999?l=C:s>=1e3&&s<=1999&&(l="send")),l)];if(o){var a=0!==i;(0,u.r2)(k,function(){return"HttpManager:_sendBatchesNotification"},function(){Mt(function(){try{o.call(r,e,t,a,i)}catch(e){(0,y.ZP)(v,1,74,"send request notification failed: "+e)}},n||a,0)},function(){return{batches:_t(e),reason:t,isSync:a,sendSync:n,sendType:i}},!a)}}var s,l}!function(){var e;o=null,a=new Ye,d=!1,m=new Ze,ft=!1,g=0,f=null,v=null,w=null,k=null,x=!0,M=[],O={},G=[],L=null,Z=!1,He=null,Fe=!1,Ne=!1,Ue=e,$e=e,We=e,je=e,ze=e,Ke=[],et=e,tt=e,it=[],nt=!1,rt=st(),ot=!1,dt=null}(),e[ee]=function(e,t,i){nt||(k=t,He=t.getCookieMgr(),v=(f=i).diagLog(),(0,l.Yny)(Ke,(0,h.a)(e,function(e){var n,r=e.cfg,a=e.cfg.extensionConfig[i.identifier];rt=st(a[te],a[ie]),(0,c.yD)(r.anonCookieName)?function(e,t,i){for(var n=0;n=0&&it[X](t,1)}}},e[de]=function(e){try{if(L)return L.getEventBlob(e)}catch(e){}return b},e[me]=function(){try{return It(L&&L[he](0,!1,!1,!1,1,0),Ne)}catch(e){}return null},e[ge]=function(e,i){try{var n=[];(0,l.Iuo)(e,function(e){i&&(e=(0,p.hW)(e));var t=Ve.create(e[z],[e]);n[J](t)});for(var r=null;n[W]>0&&L;){var o=n.shift();o&&o[K]()>0&&(r=r||L[he](0,!1,!1,!1,1,0),L.appendPayload(r,o,t))}var a=It(r,Ne),s={data:r[pe],urlString:a.url,headers:a[Y],timeout:Ue,disableXhrSync:$e,disableFetchKeepAlive:We};return Ne&&(gt(s[fe],E)||(s[fe][E]=R),gt(s[fe],D)||(s[fe][D]=S)),s}catch(e){}return null},e._getDbgPlgTargets=function(){return[w[0],a,L,w,yt(),o]},e[Ce]=function(e,t){O[e]=t},e.removeHeader=function(e){delete O[e]},e[ke]=function(){return Et()&&m[H]()},e[Re]=function(e,t){(0,l.b07)(e)&&(e=0),Fe&&(e=St(e),t=2),Pt(G,e,0)&&At(Dt(),0,!1,e,t||0)},e[Se]=function(){return!d&&0===g&&0===G[W]},e[Ee]=function(e){Fe=e},e.addBatch=function(e){if(e&&e[K]()>0){if(a.isTenantKilled(e[z]()))return!1;G[J](e)}return!0},e.teardown=function(){G[W]>0&&At(Dt(),0,!0,2,2),(0,l.Iuo)(Ke,function(e){e&&e.rm&&e.rm()}),Ke=[]},e.pause=function(){d=!0},e[De]=function(){d=!1,e[Re](0,4)},e[Pe]=function(e,t,i){e&&e[K]()>0&&((0,l.hXl)(t)&&(t=1),Fe&&(t=St(t),i=2),At([e],0,!1,t,i||0))}})}return e.__ieDyn=1,e}(),yt=1e4,vt="eventsDiscarded",wt=void 0,bt=(0,l.ZHX)({eventsLimitInMem:{isVal:c.ei,v:yt},immediateEventLimit:{isVal:c.ei,v:500},autoFlushEventsLimit:{isVal:c.ei,v:0},disableAutoBatchFlushLimit:!1,httpXHROverride:{isVal:function(e){return e&&e.sendPOST},v:wt},overrideInstrumentationKey:wt,overrideEndpointUrl:wt,disableTelemetry:!1,ignoreMc1Ms0CookieProcessing:!1,setTimeoutOverride:wt,clearTimeoutOverride:wt,payloadPreprocessor:wt,payloadListener:wt,disableEventTimings:wt,valueSanitizer:wt,stringifyObjects:wt,enableCompoundKey:wt,disableOptimizeObj:!1,fetchCredentials:wt,transports:wt,unloadTransports:wt,useSendBeacon:wt,disableFetchKeepAlive:wt,avoidOptions:!1,xhrTimeout:wt,disableXhrSync:wt,alwaysUseXhrOverride:!1,maxEventRetryAttempts:{isVal:l.EtT,v:6},maxUnloadEventRetryAttempts:{isVal:l.EtT,v:2},addNoResponse:wt,excludeCsMetaData:wt}),Ct=function(e){function t(){var i,a=e.call(this)||this;a.identifier="PostChannel",a.priority=1011,a.version="4.3.4";var v,b,C,k,R,S,E,D,P,_,A,I,T,O,B,H,F,N,U,$,Z,Y,Q,ne,re,oe=!1,ae=[],se=!1,ce=0,le=0,ue={},he=n;return(0,s.A)(t,a,function(e,t){function a(){(0,d.Ds)(null,N),(0,d.sq)(null,N),(0,d.vF)(null,N)}function s(e){var t="";return e&&e[W]&&(0,l.Iuo)(e,function(e){t&&(t+="\n"),t+=e}),t}function pe(e){var t="";try{ve(e),t=D[de](e)}catch(e){}return t}function fe(e){"beforeunload"!==(e||(0,l.zkX)().event).type&&(B=!0,D[Ee](B)),Ge(2,2)}function ye(e){B=!1,D[Ee](B)}function ve(e){e.ext&&e.ext[G]&&delete e.ext[G],e.ext&&e.ext[L]&&e.ext[L].id&&delete e.ext[L].id,O&&(e.ext=(0,p.hW)(e.ext),e[Ue]&&(e[Ue]=(0,p.hW)(e[Ue])),e[Oe]&&(e[Oe]=(0,p.hW)(e[Oe])))}function be(e,t){if(e[$e]||(e[$e]=0),e[We]||(e[We]=1),ve(e),e[je])if(S||se)e[We]=3,e[je]=!1;else if(D)return O&&(e=(0,p.hW)(e)),void D[Pe](Ve.create(e[z],[e]),!0===e[je]?1:e[je],3);var i=e[We],n=le,r=C;4===i&&(n=ce,r=b);var o=!1;if(n0){var o=r[q](0,n),a=o[K]();if(a>0)return 4===i?ce-=a:le-=a,rt(vt,[o],f.x.QueueFull),!0}i++}return qe(),!1}(e[z],e[We],a,s)&&(o=!Je(e,t))}o&&nt(vt,[e],f.x.QueueFull)}function _e(e,t,i){var n=Xe(e,t,i);return D[Re](t,i),n}function Ie(){return le>0}function Te(){if(I>=0&&Xe(I,0,T)&&D[Re](0,T),ce>0&&!R&&!se){var e=ue[he][2];e>=0&&(R=Me(function(){R=null,_e(4,0,1),Te()},e))}var t=ue[he][1];!k&&!v&&t>=0&&!se&&(Ie()?k=Me(function(){k=null,_e(0===E?3:1,0,1),E++,E%=2,Te()},t):E=0)}function xe(){i=null,oe=!1,ae=[],v=null,se=!1,ce=0,b=500,le=0,C=yt,ue={},he=n,k=null,R=null,S=0,E=0,P={},_=0,Q=!1,A=0,I=-1,T=null,O=!0,B=!1,H=6,F=2,N=null,ne=null,re=!1,U=st(),D=new ft(500,2,1,{requeue:tt,send:ot,sent:at,drop:ct,rspFail:lt,oth:ut}),et(),P[4]={batches:[],iKeyMap:{}},P[3]={batches:[],iKeyMap:{}},P[2]={batches:[],iKeyMap:{}},P[1]={batches:[],iKeyMap:{}},dt()}function Me(e,t){0===t&&S&&(t=1);var i=1e3;return S&&(i=Qe(S-1)),U.set(e,t*i)}function Be(){return null!==k&&(k.cancel(),k=null,E=0,!0)}function Ge(e,t){Be(),v&&(v.cancel(),v=null),se||_e(1,e,t)}function ze(e,t,i){var n=P[t];n||(n=P[t=1]);var r=n.iKeyMap[e];return!r&&i&&(r=Ve.create(e),n.batches[J](r),n.iKeyMap[e]=r),r}function Ke(t,i){D[ke]()&&!S&&(_>0&&le>_&&(i=!0),i&&null==v&&e.flush(t,function(){},20))}function Je(e,t){O&&(e=(0,p.hW)(e));var i=e[We],n=ze(e[z],i,!0);return!!n.addEvent(e)&&(4!==i?(le++,t&&0===e[$e]&&Ke(!e.sync,A>0&&n[K]()>=A)):ce++,!0)}function qe(){for(var e=0,t=0,i=function(i){var n=P[i];n&&n[we]&&(0,l.Iuo)(n[we],function(n){4===i?e+=n[K]():t+=n[K]()})},n=1;n<=4;n++)i(n);le=t,ce=e}function Xe(t,i,n){var r=!1,o=0===i;return!o||D[ke]()?(0,u.r2)(e.core,function(){return"PostChannel._queueBatches"},function(){for(var e=[],i=4;i>=t;){var n=P[i];n&&n.batches&&n.batches[W]>0&&((0,l.Iuo)(n[we],function(t){D.addBatch(t)?r=r||t&&t[K]()>0:e=e[j](t[V]()),4===i?ce-=t[K]():le-=t[K]()}),n[we]=[],n.iKeyMap={}),i--}e[W]>0&&nt(vt,e,f.x.KillSwitch),r&&I>=t&&(I=-1,T=0)},function(){return{latency:t,sendType:i,sendReason:n}},!o):(I=I>=0?Math.min(I,t):t,T=Math.max(T,n)),r}function Ze(e,t){_e(1,0,t),qe(),Ye(function(){e&&e(),ae[W]>0?v=Me(function(){v=null,Ze(ae.shift(),t)},0):(v=null,Te())})}function Ye(e){D[Se]()?e():v=Me(function(){v=null,Ye(e)},.25)}function et(){(ue={})[n]=[2,1,0],ue[r]=[6,3,0],ue[o]=[18,9,0]}function tt(t,i){var n=[],r=H;B&&(r=F),(0,l.Iuo)(t,function(t){t&&t[K]()>0&&(0,l.Iuo)(t[V](),function(t){t&&(t[je]&&(t[We]=4,t[je]=!1),t[$e]0&&nt(vt,n,f.x.NonRetryableStatus),B&&Ge(2,2)}function it(t,i){var n=Y||{},r=n[t];if(r)try{r.apply(n,i)}catch(i){(0,y.ZP)(e.diagLog(),1,74,t+" notification failed: "+i)}}function nt(e,t){for(var i=[],n=2;n0&&it(e,[t][j](i))}function rt(e,t){for(var i=[],n=2;n0&&(0,l.Iuo)(t,function(t){t&&t[K]()>0&&it(e,[t.events()][j](i))})}function ot(e,t,i){e&&e[W]>0&&it("eventsSendRequest",[t>=1e3&&t<=1999?t-1e3:0,!0!==i])}function at(e,t){rt("eventsSent",e,t),Te()}function ct(e,t){rt(vt,e,t>=8e3&&t<=8999?t-8e3:f.x.Unknown)}function lt(e){rt(vt,e,f.x.NonRetryableStatus),Te()}function ut(e,t){rt(vt,e,f.x.Unknown),Te()}function dt(){A=Z?0:Math.max(1500,C/6)}xe(),e._getDbgPlgTargets=function(){return[D,i]},e[ee]=function(n,r,o){(0,u.r2)(r,function(){return"PostChannel:initialize"},function(){t[ee](n,r,o),Y=r.getNotifyMgr();try{N=(0,d.Hm)((0,m.Z)(e[He]),r.evtNamespace&&r.evtNamespace()),e._addHook((0,h.a)(n,function(t){var n=t.cfg,o=(0,g.i8)(null,n,r);i=o.getExtCfg(e[He],bt),U=st(i[te],i[ie]),O=!i.disableOptimizeObj&&(0,c.F2)(),$=i.ignoreMc1Ms0CookieProcessing,function(e){var t=e[Ae];e[Ae]=function(){var i=0;return $&&(i|=2),i|t.call(e)}}(r),C=i[Fe],b=i.immediateEventLimit,_=i[Ne],H=i.maxEventRetryAttempts,F=i.maxUnloadEventRetryAttempts,Z=i.disableAutoBatchFlushLimit,(0,l.$XS)(n.endpointUrl)?e.pause():se&&e[De](),dt(),ne=i.overrideInstrumentationKey,re=!!i.disableTelemetry,Q&&a();var s=n.disablePageUnloadEvents||[];Q=(0,d.ee)(fe,s,N),Q=(0,d.Fc)(fe,s,N)||Q,Q=(0,d.oS)(ye,n.disablePageShowEvents,N)||Q})),D[ee](n,e.core,e)}catch(t){throw e.setInitialized(!1),t}},function(){return{theConfig:n,core:r,extensions:o}})},e.processTelemetry=function(t,i){(0,c.u9)(t,e[He]),i=i||e._getTelCtx(i);var n=t;re||oe||(ne&&(n[z]=ne),be(n,!0),B?Ge(2,2):Te()),e.processNext(n,i)},e.getOfflineSupport=function(){try{var e=D&&D[me]();if(D)return{getUrl:function(){return e?e.url:null},serialize:pe,batch:s,shouldProcess:function(e){return!re},createPayload:function(e){return null},createOneDSPayload:function(e){if(D[ge])return D[ge](e,O)}}}catch(e){}return null},e._doTeardown=function(e,t){Ge(2,2),oe=!0,D.teardown(),a(),xe()},e.setEventQueueLimits=function(e,t){i[Fe]=C=(0,c.ei)(e)?e:yt,i[Ne]=_=(0,c.ei)(t)?t:0,dt();var n=le>e;if(!n&&A>0)for(var r=1;!n&&r<=3;r++){var o=P[r];o&&o[we]&&(0,l.Iuo)(o[we],function(e){e&&e[K]()>=A&&(n=!0)})}Ke(!0,n)},e.pause=function(){Be(),se=!0,D&&D.pause()},e[De]=function(){se=!1,D&&D[De](),Te()},e._loadTransmitProfiles=function(e){Be(),et(),he=n,Te(),(0,l.zav)(e,function(e,t){var i=t[W];if(i>=2){var n=i>2?t[2]:0;if(t[X](0,i-2),t[1]<0&&(t[0]=-1),t[1]>0&&t[0]>0){var r=t[0]/t[1];t[0]=Math.ceil(r)*t[1]}n>=0&&t[1]>=0&&n>t[1]&&(n=t[1]),t[J](n),ue[e]=t}})},e.flush=function(e,t,i){var n;if(void 0===e&&(e=!0),!se)if(i=i||1,e)t||(n=(0,w.Qo)(function(e){t=e})),null==v?(Be(),Xe(1,0,i),v=Me(function(){v=null,Ze(t,i)},0)):ae[J](t);else{var r=Be();_e(1,1,i),t&&t(),r&&Te()}return n},e.setMsaAuthTicket=function(e){D[Ce](x,e)},e.setAuthPluginHeader=function(e){D[Ce](M,e)},e.removeAuthPluginHeader=function(){D.removeHeader(M)},e.hasEvents=Ie,e._setTransmitProfile=function(e){he!==e&&void 0!==ue[e]&&(Be(),he=e,Te())},(0,p.o$)(e,function(){return D},["addResponseHandler"]),e[Le]=function(){S<4&&(S++,Be(),Te())},e._clearBackOff=function(){S&&(S=0,Be(),Te())}}),a}return(0,a.qU)(t,e),t.__ieDyn=1,t}(v.s)},8969:(e,t,i)=>{"use strict";i.d(t,{d:()=>c,w:()=>l});var n,r,o=i(269),a=i(6182),s=i(3775);function c(e,t){n=e,r=t}function l(){var e=[];return{run:function(t){var i=e;e=[],(0,o.Iuo)(i,function(e){try{(e.rm||e.remove).call(e)}catch(e){(0,s.ZP)(t,2,73,"Unloading:"+(0,o.mmD)(e))}}),n&&i[a.oI]>n&&(r?r("doUnload",i):(0,s.ZP)(null,1,48,"Max unload hooks exceeded. An excessive number of unload hooks has been detected."))},add:function(t){t&&((0,o.Yny)(e,t),n&&e[a.oI]>n&&(r?r("Add",e):(0,s.ZP)(null,1,48,"Max unload hooks exceeded. An excessive number of unload hooks has been detected.")))}}}},9023:e=>{"use strict";e.exports=require("util")},9147:(e,t,i)=>{"use strict";i.d(t,{Dy:()=>c,Hf:()=>d,If:()=>h,QA:()=>l,V9:()=>u,hF:()=>m,nM:()=>o});var n=i(269),r=i(6182),o=(0,n.eCG)("[[ai_dynCfg_1]]"),a=(0,n.eCG)("[[ai_blkDynCfg_1]]"),s=(0,n.eCG)("[[ai_frcDynCfg_1]]");function c(e){var t;return e&&((0,n.cyL)(e)?(t=[])[r.oI]=e[r.oI]:(0,n.QdQ)(e)&&(t={}),t)?((0,n.zav)(e,function(e,i){t[e]=c(i)}),t):e}function l(e){if(e){var t=e[o]||e;if(t.cfg&&(t.cfg===e||t.cfg[o]===t))return t}return null}function u(e){if(e&&((0,n.QdQ)(e)||(0,n.cyL)(e)))try{e[a]=!0}catch(e){}return e}function d(e){if(e)try{e[s]=!0}catch(e){}return e}function m(e,t,i){var r=!1;return i&&!e[t.blkVal]&&((r=i[s])||i[a]||(r=(0,n.QdQ)(i)||(0,n.cyL)(i))),r}function h(e){(0,n.zkd)("InvalidAccess:"+e)}},9212:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OperationManager=t.Operation=void 0,t.Operation={Add:e=>({kind:"Add",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:e}),Apply:{kind:"Apply",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Blame:e=>({kind:"Blame",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:e}),Branch:{kind:"Branch",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},CheckIgnore:{kind:"CheckIgnore",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},CherryPick:{kind:"CherryPick",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Checkout:e=>({kind:"Checkout",blocking:!0,readOnly:!1,remote:!1,retry:!1,showProgress:!0,refLabel:e}),CheckoutTracking:e=>({kind:"CheckoutTracking",blocking:!0,readOnly:!1,remote:!1,retry:!1,showProgress:!0,refLabel:e}),Clean:e=>({kind:"Clean",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:e}),Commit:{kind:"Commit",blocking:!0,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Config:e=>({kind:"Config",blocking:!1,readOnly:e,remote:!1,retry:!1,showProgress:!1}),DeleteBranch:{kind:"DeleteBranch",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},DeleteRef:{kind:"DeleteRef",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},DeleteRemoteRef:{kind:"DeleteRemoteRef",blocking:!1,readOnly:!1,remote:!0,retry:!1,showProgress:!0},DeleteTag:{kind:"DeleteTag",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},DeleteWorktree:{kind:"DeleteWorktree",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Diff:{kind:"Diff",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},Fetch:e=>({kind:"Fetch",blocking:!1,readOnly:!1,remote:!0,retry:!0,showProgress:e}),FindTrackingBranches:{kind:"GetTracking",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!0},GetBranch:{kind:"GetBranch",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},GetBranches:{kind:"GetBranches",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!0},GetCommitTemplate:{kind:"GetCommitTemplate",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!0},GetObjectDetails:{kind:"GetObjectDetails",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},GetObjectFiles:{kind:"GetObjectFiles",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},GetRefs:{kind:"GetRefs",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},GetWorktrees:{kind:"GetWorktrees",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},GetRemoteRefs:{kind:"GetRemoteRefs",blocking:!1,readOnly:!0,remote:!0,retry:!1,showProgress:!1},HashObject:{kind:"HashObject",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Ignore:{kind:"Ignore",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Log:e=>({kind:"Log",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:e}),LogFile:{kind:"LogFile",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},Merge:{kind:"Merge",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},MergeAbort:{kind:"MergeAbort",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},MergeBase:{kind:"MergeBase",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!0},Move:{kind:"Move",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},PostCommitCommand:{kind:"PostCommitCommand",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Pull:{kind:"Pull",blocking:!0,readOnly:!1,remote:!0,retry:!0,showProgress:!0},Push:{kind:"Push",blocking:!0,readOnly:!1,remote:!0,retry:!1,showProgress:!0},Remote:{kind:"Remote",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},RenameBranch:{kind:"RenameBranch",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Remove:{kind:"Remove",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Reset:{kind:"Reset",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Rebase:{kind:"Rebase",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},RebaseAbort:{kind:"RebaseAbort",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},RebaseContinue:{kind:"RebaseContinue",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Refresh:{kind:"Refresh",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},RevertFiles:e=>({kind:"RevertFiles",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:e}),RevList:{kind:"RevList",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},RevParse:{kind:"RevParse",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},SetBranchUpstream:{kind:"SetBranchUpstream",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Show:{kind:"Show",blocking:!1,readOnly:!0,remote:!1,retry:!1,showProgress:!1},Stage:{kind:"Stage",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Status:{kind:"Status",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Stash:{kind:"Stash",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},SubmoduleUpdate:{kind:"SubmoduleUpdate",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Sync:{kind:"Sync",blocking:!0,readOnly:!1,remote:!0,retry:!0,showProgress:!0},Tag:{kind:"Tag",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0},Worktree:{kind:"Worktree",blocking:!1,readOnly:!1,remote:!1,retry:!1,showProgress:!0}},t.OperationManager=class{logger;operations=new Map;constructor(e){this.logger=e}start(e){this.operations.has(e.kind)?this.operations.get(e.kind).add(e):this.operations.set(e.kind,new Set([e])),this.logger.trace(`[OperationManager][start] ${e.kind} (blocking: ${e.blocking}, readOnly: ${e.readOnly}; retry: ${e.retry}; showProgress: ${e.showProgress})`)}end(e){const t=this.operations.get(e.kind);t&&(t.delete(e),0===t.size&&this.operations.delete(e.kind)),this.logger.trace(`[OperationManager][end] ${e.kind} (blocking: ${e.blocking}, readOnly: ${e.readOnly}; retry: ${e.retry}; showProgress: ${e.showProgress})`)}getOperations(e){const t=this.operations.get(e);return t?Array.from(t):[]}isIdle(){const e=this.operations.values();for(const t of e)for(const e of t)if(!e.readOnly)return!1;return!0}isRunning(e){return this.operations.has(e)}shouldDisableCommands(){const e=this.operations.values();for(const t of e)for(const e of t)if(e.blocking)return!0;return!1}shouldShowProgress(){const e=this.operations.values();for(const t of e)for(const e of t)if(e.showProgress)return!0;return!1}}},9354:(e,t,i)=>{"use strict";i.d(t,{Gz:()=>u,M0:()=>h,PS:()=>m,cM:()=>c,k6:()=>d,wX:()=>l});var n=i(269),r=i(5130),o=(0,n.YEm)()||{},a=0,s=[null,null,null,null,null];function c(e){var t=a,i=s,n=i[t];return o.createElement?i[t]||(n=i[t]=o.createElement("a")):n={host:m(e,!0)},n.href=e,++t>=i[r.oI]&&(t=0),a=t,n}function l(e){var t,i=c(e);return i&&(t=i.href),t}function u(e){var t,i=c(e);return i&&(t=i[r.Ue]),t}function d(e,t){return e?e.toUpperCase()+" "+t:t}function m(e,t){var i=h(e,t)||"";if(i){var o=i.match(/(www\d{0,5}\.)?([^\/:]{1,256})(:\d{1,20})?/i);if(null!=o&&o[r.oI]>3&&(0,n.KgX)(o[2])&&o[2][r.oI]>0)return o[2]+(o[3]||"")}return i}function h(e,t){var i=null;if(e){var o=e.match(/(\w{1,150}):\/\/([^\/:]{1,256})(:\d{1,20})?/i);if(null!=o&&o[r.oI]>2&&(0,n.KgX)(o[2])&&o[2][r.oI]>0&&(i=o[2]||"",t&&o[r.oI]>2)){var a=(o[1]||"")[r.OL](),s=o[3]||"";("http"===a&&":80"===s||"https"===a&&":443"===s)&&(s=""),i+=s}}return i}},9522:function(e,t,i){"use strict";var n,r=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[t.length]=i);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i=n(e),a=0;a{e.waitUntil(this._onWillCreateEditSessionIdentity(e.workspaceFolder).catch(e=>{if(e instanceof c.CancellationError)throw e}))}))}dispose(){this.providerRegistration.dispose()}async provideEditSessionIdentity(e,t){await this.model.openRepository(s.dirname(e.uri.fsPath));const i=this.model.getRepository(e.uri);if(await(i?.status()),!i||!i?.HEAD?.upstream)return;const n=i.remotes.find(e=>e.name===i.HEAD?.upstream?.remote)?.pushUrl?.replace(/^(git@[^\/:]+)(:)/i,"ssh://$1/"),r=n?await c.workspace.getCanonicalUri(c.Uri.parse(n),{targetScheme:"https"},t):null;return JSON.stringify({remote:r?.toString()??n,ref:i.HEAD?.upstream?.name??null,sha:i.HEAD?.commit??null})}provideEditSessionIdentityMatch(e,t){try{const i=l(e),n=l(t);return i.remote===n.remote&&i.ref===n.ref&&i.sha===n.sha?c.EditSessionIdentityMatch.Complete:i.remote===n.remote&&i.ref===n.ref&&i.sha!==n.sha?c.EditSessionIdentityMatch.Partial:c.EditSessionIdentityMatch.None}catch(e){return c.EditSessionIdentityMatch.Partial}}async _onWillCreateEditSessionIdentity(e){await this._doPublish(e)}async _doPublish(e){await this.model.openRepository(s.dirname(e.uri.fsPath));const t=this.model.getRepository(e.uri);if(t)if(await t.status(),t.HEAD?.commit){if(!t.HEAD?.upstream&&0===t.HEAD?.type){const e=c.l10n.t("Publish Branch");if(await c.window.showInformationMessage(c.l10n.t("The current branch is not published to the remote. Would you like to publish it to access your changes elsewhere?"),{modal:!0},e)!==e)throw new c.CancellationError;await c.commands.executeCommand("git.publish")}}else{const e=c.l10n.t("Yes");if(await c.window.showInformationMessage(c.l10n.t("Would you like to publish this repository to continue working on it elsewhere?"),{modal:!0},e)!==e)throw new c.CancellationError;await t.commit("Initial commit",{all:!0}),await c.commands.executeCommand("git.publish")}}}},9749:(e,t,i)=>{"use strict";i.d(t,{e:()=>w,a:()=>b});var n,r=i(269),o=i(4276),a=i(6492),s=i(6182),c=i(991),l=i(9147),u=["push","pop","shift","unshift","splice"],d=function(e,t,i,n){e&&e[s.ih](3,108,"".concat(i," [").concat(t,"] failed - ")+(0,r.mmD)(n))};function m(e,t){var i=(0,r.kgX)(e,t);return i&&i.get}function h(e,t,i,n){if(t){var o=m(t,i);o&&o[e.prop]?t[i]=n:function(e,t,i,n){var o={n:i,h:[],trk:function(t){t&&t.fn&&(-1===(0,r.rDm)(o.h,t)&&o.h[s.y5](t),e.trk(t,o))},clr:function(e){var t=(0,r.rDm)(o.h,e);-1!==t&&o.h[s.Ic](t,1)}},c=!0,u=!1;function g(){c&&(u=u||(0,l.hF)(g,e,n),n&&!n[l.nM]&&u&&(n=p(e,n,i,"Converting")),c=!1);var t=e.act;return t&&o.trk(t),n}g[e.prop]={chng:function(){e.add(o)}},(0,r.vF1)(t,o.n,{g,s:function(f){if(n!==f){g[e.ro]&&!e.upd&&(0,l.If)("["+i+"] is read-only:"+(0,r.mmD)(t)),c&&(u=u||(0,l.hF)(g,e,n),c=!1);var y=u&&g[e.rf];if(u)if(y){(0,r.zav)(n,function(e){n[e]=f?f[e]:a.HP});try{(0,r.zav)(f,function(t,i){h(e,n,t,i)}),f=n}catch(t){d((e.hdlr||{})[s.Uw],i,"Assigning",t),u=!1}}else n&&n[l.nM]&&(0,r.zav)(n,function(t){var i=m(n,t);if(i){var r=i[e.prop];r&&r.chng()}});if(f!==n){var v=f&&(0,l.hF)(g,e,f);!y&&v&&(f=p(e,f,i,"Converting")),n=f,u=v}e.add(o)}}})}(e,t,i,n)}return t}function g(e,t,i,n){if(t){var r=m(t,i),o=r&&!!r[e.prop],a=n&&n[0],c=n&&n[1],u=n&&n[2];if(!o){if(u)try{(0,l.V9)(t)}catch(t){d((e.hdlr||{})[s.Uw],i,"Blocking",t)}try{h(e,t,i,t[i]),r=m(t,i)}catch(t){d((e.hdlr||{})[s.Uw],i,"State",t)}}a&&(r[e.rf]=a),c&&(r[e.ro]=c),u&&(r[e.blkVal]=!0)}return t}function p(e,t,i,n){try{(0,r.zav)(t,function(i,n){h(e,t,i,n)}),t[l.nM]||((0,r.UxO)(t,l.nM,{get:function(){return e[s.K0]}}),function(e,t,i){(0,r.cyL)(t)&&(0,r.Iuo)(u,function(n){var r=t[n];t[n]=function(){for(var n=[],o=0;o0&&function(e,t){n||(n=(0,r.aqQ)("AggregationError",function(e,t){t[s.oI]>1&&(e.errors=t[1])}));var i="Watcher error(s): ";throw(0,r.Iuo)(t,function(e,t){i+="\n".concat(t," > ").concat((0,r.mmD)(e))}),new n(i,t||[])}(0,t)}}return(t={prop:o,ro:a,rf:c})[s.JQ]=l,t[s.K0]=e,t.add=function(e){if(e&&e.h[s.oI]>0){d||(d=[]),m||(m=(0,r.dRz)(function(){m=null,g()},0));for(var t=0;t{"use strict";i.d(t,{O:()=>n});var n=(0,i(4282).H)({Verbose:0,Information:1,Warning:2,Error:3,Critical:4})},9815:function(e,t,i){"use strict";var n=this&&this.__runInitializers||function(e,t,i){for(var n=arguments.length>2,r=0;r=0;h--){var g={};for(var p in n)g[p]="access"===p?{}:n[p];for(var p in n.access)g.access[p]=n.access[p];g.addInitializer=function(e){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(e||null))};var f=(0,i[h])("accessor"===c?{get:d.get,set:d.set}:d[l],g);if("accessor"===c){if(void 0===f)continue;if(null===f||"object"!=typeof f)throw new TypeError("Object expected");(s=a(f.get))&&(d.get=s),(s=a(f.set))&&(d.set=s),(s=a(f.init))&&r.unshift(s)}else(s=a(f))&&("field"===c?r.unshift(s):d[l]=s)}u&&Object.defineProperty(u,n.name,d),m=!0};Object.defineProperty(t,"__esModule",{value:!0}),t.GitExtensionImpl=void 0;const o=i(6199),a=i(1398);function s(e,t){if("method"!==t.kind)throw new Error("not supported");const i=t.name.toString();return function(...t){return console.warn(`Git extension API method '${i}' is deprecated.`),e.apply(this,t)}}let c=(()=>{let e,t,i=[];return class{static{const n="function"==typeof Symbol&&Symbol.metadata?Object.create(null):void 0;e=[s],t=[s],r(this,null,e,{kind:"method",name:"getGitPath",static:!1,private:!1,access:{has:e=>"getGitPath"in e,get:e=>e.getGitPath},metadata:n},null,i),r(this,null,t,{kind:"method",name:"getRepositories",static:!1,private:!1,access:{has:e=>"getRepositories"in e,get:e=>e.getRepositories},metadata:n},null,i),n&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:n})}enabled=(n(this,i),!1);_onDidChangeEnablement=new a.EventEmitter;onDidChangeEnablement=this._onDidChangeEnablement.event;_model=void 0;_cloneManager=void 0;set model(e){this._model=e;const t=!!e;this.enabled!==t&&(this.enabled=t,this._onDidChangeEnablement.fire(this.enabled))}get model(){return this._model}set cloneManager(e){this._cloneManager=e}constructor(e){e&&(this.enabled=!0,this._model=e.model,this._cloneManager=e.cloneManager)}async getGitPath(){if(!this._model)throw new Error("Git model not found");return this._model.git.path}async getRepositories(){if(!this._model)throw new Error("Git model not found");return this._model.repositories.map(e=>new o.ApiRepository(e))}getAPI(e){if(!this._model||!this._cloneManager)throw new Error("Git model not found");if(1!==e)throw new Error(`No API version ${e} found.`);return new o.ApiImpl({model:this._model,cloneManager:this._cloneManager})}}})();t.GitExtensionImpl=c},9882:(e,t,i)=>{"use strict";i.d(t,{aq:()=>a,cL:()=>s});var n=i(269),r=i(6492),o=i(6535);function a(){var e=s();return(0,n.P0f)(e,0,8)+"-"+(0,n.P0f)(e,8,12)+"-"+(0,n.P0f)(e,12,16)+"-"+(0,n.P0f)(e,16,20)+"-"+(0,n.P0f)(e,20)}function s(){for(var e,t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"],i=r.m5,a=0;a<4;a++)i+=t[15&(e=(0,o.VN)())]+t[e>>4&15]+t[e>>8&15]+t[e>>12&15]+t[e>>16&15]+t[e>>20&15]+t[e>>24&15]+t[e>>28&15];var s=t[8+(3&(0,o.VN)())|0];return(0,n.hKY)(i,0,8)+(0,n.hKY)(i,9,4)+"4"+(0,n.hKY)(i,13,3)+s+(0,n.hKY)(i,16,3)+(0,n.hKY)(i,19,12)}},9896:e=>{"use strict";e.exports=require("fs")}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var i=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e].call(i.exports,i,i.exports,__webpack_require__),i.exports}__webpack_require__.d=(e,t)=>{for(var i in t)__webpack_require__.o(t,i)&&!__webpack_require__.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__=__webpack_require__(1184),__webpack_export_target__=exports;for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__]=__webpack_exports__[__webpack_i__];__webpack_exports__.__esModule&&Object.defineProperty(__webpack_export_target__,"__esModule",{value:!0})})(); //# sourceMappingURL=https://main.vscode-cdn.net/sourcemaps/1e3c50d64110be466c0b4a45222e81d2c9352888/extensions/git/dist/main.js.map