factoriomod-debug 2.0.11 → 2.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -51,10 +51,10 @@ ${JSON.stringify(g,null,4)}`);let L=g;if(Oe.string(L.id)||Oe.number(L.id)){let U
|
|
|
51
51
|
`,`\r
|
|
52
52
|
`,"\r"];var Nc;(function(l){function A(E,B,ae,Ne){return new Kg(E,B,ae,Ne)}l.create=A;function v(E){var B=E;return!!(D.defined(B)&&D.string(B.uri)&&(D.undefined(B.languageId)||D.string(B.languageId))&&D.uinteger(B.lineCount)&&D.func(B.getText)&&D.func(B.positionAt)&&D.func(B.offsetAt))}l.is=v;function f(E,B){for(var ae=E.getText(),Ne=u(B,function(Ir,Qn){var qc=Ir.range.start.line-Qn.range.start.line;return qc===0?Ir.range.start.character-Qn.range.start.character:qc}),Re=ae.length,Rt=Ne.length-1;Rt>=0;Rt--){var St=Ne[Rt],_t=E.offsetAt(St.range.start),de=E.offsetAt(St.range.end);if(de<=Re)ae=ae.substring(0,_t)+St.newText+ae.substring(de,ae.length);else throw new Error("Overlapping edit");Re=_t}return ae}l.applyEdits=f;function u(E,B){if(E.length<=1)return E;var ae=E.length/2|0,Ne=E.slice(0,ae),Re=E.slice(ae);u(Ne,B),u(Re,B);for(var Rt=0,St=0,_t=0;Rt<Ne.length&&St<Re.length;){var de=B(Ne[Rt],Re[St]);de<=0?E[_t++]=Ne[Rt++]:E[_t++]=Re[St++]}for(;Rt<Ne.length;)E[_t++]=Ne[Rt++];for(;St<Re.length;)E[_t++]=Re[St++];return E}})(Nc||(e.TextDocument=Nc={}));var Kg=(function(){function l(A,v,f,u){this._uri=A,this._languageId=v,this._version=f,this._content=u,this._lineOffsets=void 0}return Object.defineProperty(l.prototype,"uri",{get:function(){return this._uri},enumerable:!1,configurable:!0}),Object.defineProperty(l.prototype,"languageId",{get:function(){return this._languageId},enumerable:!1,configurable:!0}),Object.defineProperty(l.prototype,"version",{get:function(){return this._version},enumerable:!1,configurable:!0}),l.prototype.getText=function(A){if(A){var v=this.offsetAt(A.start),f=this.offsetAt(A.end);return this._content.substring(v,f)}return this._content},l.prototype.update=function(A,v){this._content=A.text,this._version=v,this._lineOffsets=void 0},l.prototype.getLineOffsets=function(){if(this._lineOffsets===void 0){for(var A=[],v=this._content,f=!0,u=0;u<v.length;u++){f&&(A.push(u),f=!1);var E=v.charAt(u);f=E==="\r"||E===`
|
|
53
53
|
`,E==="\r"&&u+1<v.length&&v.charAt(u+1)===`
|
|
54
|
-
`&&u++}f&&v.length>0&&A.push(v.length),this._lineOffsets=A}return this._lineOffsets},l.prototype.positionAt=function(A){A=Math.max(Math.min(A,this._content.length),0);var v=this.getLineOffsets(),f=0,u=v.length;if(u===0)return s.create(0,A);for(;f<u;){var E=Math.floor((f+u)/2);v[E]>A?u=E:f=E+1}var B=f-1;return s.create(B,A-v[B])},l.prototype.offsetAt=function(A){var v=this.getLineOffsets();if(A.line>=v.length)return this._content.length;if(A.line<0)return 0;var f=v[A.line],u=A.line+1<v.length?v[A.line+1]:this._content.length;return Math.max(Math.min(f+A.character,u),f)},Object.defineProperty(l.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),l})(),D;(function(l){var A=Object.prototype.toString;function v(de){return typeof de<"u"}l.defined=v;function f(de){return typeof de>"u"}l.undefined=f;function u(de){return de===!0||de===!1}l.boolean=u;function E(de){return A.call(de)==="[object String]"}l.string=E;function B(de){return A.call(de)==="[object Number]"}l.number=B;function ae(de,Ir,Qn){return A.call(de)==="[object Number]"&&Ir<=de&&de<=Qn}l.numberRange=ae;function Ne(de){return A.call(de)==="[object Number]"&&-2147483648<=de&&de<=2147483647}l.integer=Ne;function Re(de){return A.call(de)==="[object Number]"&&0<=de&&de<=2147483647}l.uinteger=Re;function Rt(de){return A.call(de)==="[object Function]"}l.func=Rt;function St(de){return de!==null&&typeof de=="object"}l.objectLiteral=St;function _t(de,Ir){return Array.isArray(de)&&de.every(Ir)}l.typedArray=_t})(D||(D={}))})});var Te=T(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.ProtocolNotificationType=ct.ProtocolNotificationType0=ct.ProtocolRequestType=ct.ProtocolRequestType0=ct.RegistrationType=ct.MessageDirection=void 0;var Yr=Er(),Kf;(function(r){r.clientToServer="clientToServer",r.serverToClient="serverToClient",r.both="both"})(Kf||(ct.MessageDirection=Kf={}));var yc=class{constructor(e){this.method=e}};ct.RegistrationType=yc;var bc=class extends Yr.RequestType0{constructor(e){super(e)}};ct.ProtocolRequestType0=bc;var vc=class extends Yr.RequestType{constructor(e){super(e,Yr.ParameterStructures.byName)}};ct.ProtocolRequestType=vc;var wc=class extends Yr.NotificationType0{constructor(e){super(e)}};ct.ProtocolNotificationType0=wc;var Ec=class extends Yr.NotificationType{constructor(e){super(e,Yr.ParameterStructures.byName)}};ct.ProtocolNotificationType=Ec});var io=T(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.objectLiteral=_e.typedArray=_e.stringArray=_e.array=_e.func=_e.error=_e.number=_e.string=_e.boolean=void 0;function Wv(r){return r===!0||r===!1}_e.boolean=Wv;function Yf(r){return typeof r=="string"||r instanceof String}_e.string=Yf;function Vv(r){return typeof r=="number"||r instanceof Number}_e.number=Vv;function Hv(r){return r instanceof Error}_e.error=Hv;function Jv(r){return typeof r=="function"}_e.func=Jv;function Wf(r){return Array.isArray(r)}_e.array=Wf;function Zv(r){return Wf(r)&&r.every(e=>Yf(e))}_e.stringArray=Zv;function Xv(r,e){return Array.isArray(r)&&r.every(e)}_e.typedArray=Xv;function zv(r){return r!==null&&typeof r=="object"}_e.objectLiteral=zv});var Jf=T(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});oo.ImplementationRequest=void 0;var Vf=Te(),Hf;(function(r){r.method="textDocument/implementation",r.messageDirection=Vf.MessageDirection.clientToServer,r.type=new Vf.ProtocolRequestType(r.method)})(Hf||(oo.ImplementationRequest=Hf={}))});var zf=T(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.TypeDefinitionRequest=void 0;var Zf=Te(),Xf;(function(r){r.method="textDocument/typeDefinition",r.messageDirection=Zf.MessageDirection.clientToServer,r.type=new Zf.ProtocolRequestType(r.method)})(Xf||(so.TypeDefinitionRequest=Xf={}))});var th=T(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.DidChangeWorkspaceFoldersNotification=Wr.WorkspaceFoldersRequest=void 0;var ao=Te(),$f;(function(r){r.method="workspace/workspaceFolders",r.messageDirection=ao.MessageDirection.serverToClient,r.type=new ao.ProtocolRequestType0(r.method)})($f||(Wr.WorkspaceFoldersRequest=$f={}));var eh;(function(r){r.method="workspace/didChangeWorkspaceFolders",r.messageDirection=ao.MessageDirection.clientToServer,r.type=new ao.ProtocolNotificationType(r.method)})(eh||(Wr.DidChangeWorkspaceFoldersNotification=eh={}))});var ih=T(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.ConfigurationRequest=void 0;var rh=Te(),nh;(function(r){r.method="workspace/configuration",r.messageDirection=rh.MessageDirection.serverToClient,r.type=new rh.ProtocolRequestType(r.method)})(nh||(co.ConfigurationRequest=nh={}))});var ah=T(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.ColorPresentationRequest=Vr.DocumentColorRequest=void 0;var uo=Te(),oh;(function(r){r.method="textDocument/documentColor",r.messageDirection=uo.MessageDirection.clientToServer,r.type=new uo.ProtocolRequestType(r.method)})(oh||(Vr.DocumentColorRequest=oh={}));var sh;(function(r){r.method="textDocument/colorPresentation",r.messageDirection=uo.MessageDirection.clientToServer,r.type=new uo.ProtocolRequestType(r.method)})(sh||(Vr.ColorPresentationRequest=sh={}))});var lh=T(Hr=>{"use strict";Object.defineProperty(Hr,"__esModule",{value:!0});Hr.FoldingRangeRefreshRequest=Hr.FoldingRangeRequest=void 0;var lo=Te(),ch;(function(r){r.method="textDocument/foldingRange",r.messageDirection=lo.MessageDirection.clientToServer,r.type=new lo.ProtocolRequestType(r.method)})(ch||(Hr.FoldingRangeRequest=ch={}));var uh;(function(r){r.method="workspace/foldingRange/refresh",r.messageDirection=lo.MessageDirection.serverToClient,r.type=new lo.ProtocolRequestType0(r.method)})(uh||(Hr.FoldingRangeRefreshRequest=uh={}))});var hh=T(fo=>{"use strict";Object.defineProperty(fo,"__esModule",{value:!0});fo.DeclarationRequest=void 0;var dh=Te(),fh;(function(r){r.method="textDocument/declaration",r.messageDirection=dh.MessageDirection.clientToServer,r.type=new dh.ProtocolRequestType(r.method)})(fh||(fo.DeclarationRequest=fh={}))});var mh=T(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.SelectionRangeRequest=void 0;var ph=Te(),gh;(function(r){r.method="textDocument/selectionRange",r.messageDirection=ph.MessageDirection.clientToServer,r.type=new ph.ProtocolRequestType(r.method)})(gh||(ho.SelectionRangeRequest=gh={}))});var vh=T(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.WorkDoneProgressCancelNotification=or.WorkDoneProgressCreateRequest=or.WorkDoneProgress=void 0;var $v=Er(),po=Te(),Ah;(function(r){r.type=new $v.ProgressType;function e(t){return t===r.type}r.is=e})(Ah||(or.WorkDoneProgress=Ah={}));var yh;(function(r){r.method="window/workDoneProgress/create",r.messageDirection=po.MessageDirection.serverToClient,r.type=new po.ProtocolRequestType(r.method)})(yh||(or.WorkDoneProgressCreateRequest=yh={}));var bh;(function(r){r.method="window/workDoneProgress/cancel",r.messageDirection=po.MessageDirection.clientToServer,r.type=new po.ProtocolNotificationType(r.method)})(bh||(or.WorkDoneProgressCancelNotification=bh={}))});var Ph=T(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.CallHierarchyOutgoingCallsRequest=sr.CallHierarchyIncomingCallsRequest=sr.CallHierarchyPrepareRequest=void 0;var Jr=Te(),wh;(function(r){r.method="textDocument/prepareCallHierarchy",r.messageDirection=Jr.MessageDirection.clientToServer,r.type=new Jr.ProtocolRequestType(r.method)})(wh||(sr.CallHierarchyPrepareRequest=wh={}));var Eh;(function(r){r.method="callHierarchy/incomingCalls",r.messageDirection=Jr.MessageDirection.clientToServer,r.type=new Jr.ProtocolRequestType(r.method)})(Eh||(sr.CallHierarchyIncomingCallsRequest=Eh={}));var Dh;(function(r){r.method="callHierarchy/outgoingCalls",r.messageDirection=Jr.MessageDirection.clientToServer,r.type=new Jr.ProtocolRequestType(r.method)})(Dh||(sr.CallHierarchyOutgoingCallsRequest=Dh={}))});var kh=T(ut=>{"use strict";Object.defineProperty(ut,"__esModule",{value:!0});ut.SemanticTokensRefreshRequest=ut.SemanticTokensRangeRequest=ut.SemanticTokensDeltaRequest=ut.SemanticTokensRequest=ut.SemanticTokensRegistrationType=ut.TokenFormat=void 0;var Wt=Te(),Rh;(function(r){r.Relative="relative"})(Rh||(ut.TokenFormat=Rh={}));var Ln;(function(r){r.method="textDocument/semanticTokens",r.type=new Wt.RegistrationType(r.method)})(Ln||(ut.SemanticTokensRegistrationType=Ln={}));var Sh;(function(r){r.method="textDocument/semanticTokens/full",r.messageDirection=Wt.MessageDirection.clientToServer,r.type=new Wt.ProtocolRequestType(r.method),r.registrationMethod=Ln.method})(Sh||(ut.SemanticTokensRequest=Sh={}));var Ih;(function(r){r.method="textDocument/semanticTokens/full/delta",r.messageDirection=Wt.MessageDirection.clientToServer,r.type=new Wt.ProtocolRequestType(r.method),r.registrationMethod=Ln.method})(Ih||(ut.SemanticTokensDeltaRequest=Ih={}));var Lh;(function(r){r.method="textDocument/semanticTokens/range",r.messageDirection=Wt.MessageDirection.clientToServer,r.type=new Wt.ProtocolRequestType(r.method),r.registrationMethod=Ln.method})(Lh||(ut.SemanticTokensRangeRequest=Lh={}));var Ch;(function(r){r.method="workspace/semanticTokens/refresh",r.messageDirection=Wt.MessageDirection.serverToClient,r.type=new Wt.ProtocolRequestType0(r.method)})(Ch||(ut.SemanticTokensRefreshRequest=Ch={}))});var Th=T(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.ShowDocumentRequest=void 0;var Bh=Te(),Mh;(function(r){r.method="window/showDocument",r.messageDirection=Bh.MessageDirection.serverToClient,r.type=new Bh.ProtocolRequestType(r.method)})(Mh||(go.ShowDocumentRequest=Mh={}))});var Fh=T(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});mo.LinkedEditingRangeRequest=void 0;var xh=Te(),Oh;(function(r){r.method="textDocument/linkedEditingRange",r.messageDirection=xh.MessageDirection.clientToServer,r.type=new xh.ProtocolRequestType(r.method)})(Oh||(mo.LinkedEditingRangeRequest=Oh={}))});var Kh=T(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.WillDeleteFilesRequest=et.DidDeleteFilesNotification=et.DidRenameFilesNotification=et.WillRenameFilesRequest=et.DidCreateFilesNotification=et.WillCreateFilesRequest=et.FileOperationPatternKind=void 0;var Et=Te(),Nh;(function(r){r.file="file",r.folder="folder"})(Nh||(et.FileOperationPatternKind=Nh={}));var qh;(function(r){r.method="workspace/willCreateFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolRequestType(r.method)})(qh||(et.WillCreateFilesRequest=qh={}));var jh;(function(r){r.method="workspace/didCreateFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolNotificationType(r.method)})(jh||(et.DidCreateFilesNotification=jh={}));var Uh;(function(r){r.method="workspace/willRenameFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolRequestType(r.method)})(Uh||(et.WillRenameFilesRequest=Uh={}));var _h;(function(r){r.method="workspace/didRenameFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolNotificationType(r.method)})(_h||(et.DidRenameFilesNotification=_h={}));var Qh;(function(r){r.method="workspace/didDeleteFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolNotificationType(r.method)})(Qh||(et.DidDeleteFilesNotification=Qh={}));var Gh;(function(r){r.method="workspace/willDeleteFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolRequestType(r.method)})(Gh||(et.WillDeleteFilesRequest=Gh={}))});var Jh=T(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.MonikerRequest=ar.MonikerKind=ar.UniquenessLevel=void 0;var Yh=Te(),Wh;(function(r){r.document="document",r.project="project",r.group="group",r.scheme="scheme",r.global="global"})(Wh||(ar.UniquenessLevel=Wh={}));var Vh;(function(r){r.$import="import",r.$export="export",r.local="local"})(Vh||(ar.MonikerKind=Vh={}));var Hh;(function(r){r.method="textDocument/moniker",r.messageDirection=Yh.MessageDirection.clientToServer,r.type=new Yh.ProtocolRequestType(r.method)})(Hh||(ar.MonikerRequest=Hh={}))});var $h=T(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.TypeHierarchySubtypesRequest=cr.TypeHierarchySupertypesRequest=cr.TypeHierarchyPrepareRequest=void 0;var Zr=Te(),Zh;(function(r){r.method="textDocument/prepareTypeHierarchy",r.messageDirection=Zr.MessageDirection.clientToServer,r.type=new Zr.ProtocolRequestType(r.method)})(Zh||(cr.TypeHierarchyPrepareRequest=Zh={}));var Xh;(function(r){r.method="typeHierarchy/supertypes",r.messageDirection=Zr.MessageDirection.clientToServer,r.type=new Zr.ProtocolRequestType(r.method)})(Xh||(cr.TypeHierarchySupertypesRequest=Xh={}));var zh;(function(r){r.method="typeHierarchy/subtypes",r.messageDirection=Zr.MessageDirection.clientToServer,r.type=new Zr.ProtocolRequestType(r.method)})(zh||(cr.TypeHierarchySubtypesRequest=zh={}))});var rp=T(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.InlineValueRefreshRequest=Xr.InlineValueRequest=void 0;var Ao=Te(),ep;(function(r){r.method="textDocument/inlineValue",r.messageDirection=Ao.MessageDirection.clientToServer,r.type=new Ao.ProtocolRequestType(r.method)})(ep||(Xr.InlineValueRequest=ep={}));var tp;(function(r){r.method="workspace/inlineValue/refresh",r.messageDirection=Ao.MessageDirection.serverToClient,r.type=new Ao.ProtocolRequestType0(r.method)})(tp||(Xr.InlineValueRefreshRequest=tp={}))});var sp=T(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.InlayHintRefreshRequest=ur.InlayHintResolveRequest=ur.InlayHintRequest=void 0;var zr=Te(),np;(function(r){r.method="textDocument/inlayHint",r.messageDirection=zr.MessageDirection.clientToServer,r.type=new zr.ProtocolRequestType(r.method)})(np||(ur.InlayHintRequest=np={}));var ip;(function(r){r.method="inlayHint/resolve",r.messageDirection=zr.MessageDirection.clientToServer,r.type=new zr.ProtocolRequestType(r.method)})(ip||(ur.InlayHintResolveRequest=ip={}));var op;(function(r){r.method="workspace/inlayHint/refresh",r.messageDirection=zr.MessageDirection.serverToClient,r.type=new zr.ProtocolRequestType0(r.method)})(op||(ur.InlayHintRefreshRequest=op={}))});var hp=T(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.DiagnosticRefreshRequest=Dt.WorkspaceDiagnosticRequest=Dt.DocumentDiagnosticRequest=Dt.DocumentDiagnosticReportKind=Dt.DiagnosticServerCancellationData=void 0;var fp=Er(),ew=io(),$r=Te(),ap;(function(r){function e(t){let n=t;return n&&ew.boolean(n.retriggerRequest)}r.is=e})(ap||(Dt.DiagnosticServerCancellationData=ap={}));var cp;(function(r){r.Full="full",r.Unchanged="unchanged"})(cp||(Dt.DocumentDiagnosticReportKind=cp={}));var up;(function(r){r.method="textDocument/diagnostic",r.messageDirection=$r.MessageDirection.clientToServer,r.type=new $r.ProtocolRequestType(r.method),r.partialResult=new fp.ProgressType})(up||(Dt.DocumentDiagnosticRequest=up={}));var lp;(function(r){r.method="workspace/diagnostic",r.messageDirection=$r.MessageDirection.clientToServer,r.type=new $r.ProtocolRequestType(r.method),r.partialResult=new fp.ProgressType})(lp||(Dt.WorkspaceDiagnosticRequest=lp={}));var dp;(function(r){r.method="workspace/diagnostic/refresh",r.messageDirection=$r.MessageDirection.serverToClient,r.type=new $r.ProtocolRequestType0(r.method)})(dp||(Dt.DiagnosticRefreshRequest=dp={}))});var vp=T(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.DidCloseNotebookDocumentNotification=qe.DidSaveNotebookDocumentNotification=qe.DidChangeNotebookDocumentNotification=qe.NotebookCellArrayChange=qe.DidOpenNotebookDocumentNotification=qe.NotebookDocumentSyncRegistrationType=qe.NotebookDocument=qe.NotebookCell=qe.ExecutionSummary=qe.NotebookCellKind=void 0;var Cn=no(),kt=io(),Ft=Te(),Dc;(function(r){r.Markup=1,r.Code=2;function e(t){return t===1||t===2}r.is=e})(Dc||(qe.NotebookCellKind=Dc={}));var Pc;(function(r){function e(i,o){let s={executionOrder:i};return(o===!0||o===!1)&&(s.success=o),s}r.create=e;function t(i){let o=i;return kt.objectLiteral(o)&&Cn.uinteger.is(o.executionOrder)&&(o.success===void 0||kt.boolean(o.success))}r.is=t;function n(i,o){return i===o?!0:i==null||o===null||o===void 0?!1:i.executionOrder===o.executionOrder&&i.success===o.success}r.equals=n})(Pc||(qe.ExecutionSummary=Pc={}));var yo;(function(r){function e(o,s){return{kind:o,document:s}}r.create=e;function t(o){let s=o;return kt.objectLiteral(s)&&Dc.is(s.kind)&&Cn.DocumentUri.is(s.document)&&(s.metadata===void 0||kt.objectLiteral(s.metadata))}r.is=t;function n(o,s){let a=new Set;return o.document!==s.document&&a.add("document"),o.kind!==s.kind&&a.add("kind"),o.executionSummary!==s.executionSummary&&a.add("executionSummary"),(o.metadata!==void 0||s.metadata!==void 0)&&!i(o.metadata,s.metadata)&&a.add("metadata"),(o.executionSummary!==void 0||s.executionSummary!==void 0)&&!Pc.equals(o.executionSummary,s.executionSummary)&&a.add("executionSummary"),a}r.diff=n;function i(o,s){if(o===s)return!0;if(o==null||s===null||s===void 0||typeof o!=typeof s||typeof o!="object")return!1;let a=Array.isArray(o),d=Array.isArray(s);if(a!==d)return!1;if(a&&d){if(o.length!==s.length)return!1;for(let c=0;c<o.length;c++)if(!i(o[c],s[c]))return!1}if(kt.objectLiteral(o)&&kt.objectLiteral(s)){let c=Object.keys(o),h=Object.keys(s);if(c.length!==h.length||(c.sort(),h.sort(),!i(c,h)))return!1;for(let m=0;m<c.length;m++){let w=c[m];if(!i(o[w],s[w]))return!1}}return!0}})(yo||(qe.NotebookCell=yo={}));var pp;(function(r){function e(n,i,o,s){return{uri:n,notebookType:i,version:o,cells:s}}r.create=e;function t(n){let i=n;return kt.objectLiteral(i)&&kt.string(i.uri)&&Cn.integer.is(i.version)&&kt.typedArray(i.cells,yo.is)}r.is=t})(pp||(qe.NotebookDocument=pp={}));var en;(function(r){r.method="notebookDocument/sync",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.RegistrationType(r.method)})(en||(qe.NotebookDocumentSyncRegistrationType=en={}));var gp;(function(r){r.method="notebookDocument/didOpen",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(gp||(qe.DidOpenNotebookDocumentNotification=gp={}));var mp;(function(r){function e(n){let i=n;return kt.objectLiteral(i)&&Cn.uinteger.is(i.start)&&Cn.uinteger.is(i.deleteCount)&&(i.cells===void 0||kt.typedArray(i.cells,yo.is))}r.is=e;function t(n,i,o){let s={start:n,deleteCount:i};return o!==void 0&&(s.cells=o),s}r.create=t})(mp||(qe.NotebookCellArrayChange=mp={}));var Ap;(function(r){r.method="notebookDocument/didChange",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(Ap||(qe.DidChangeNotebookDocumentNotification=Ap={}));var yp;(function(r){r.method="notebookDocument/didSave",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(yp||(qe.DidSaveNotebookDocumentNotification=yp={}));var bp;(function(r){r.method="notebookDocument/didClose",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(bp||(qe.DidCloseNotebookDocumentNotification=bp={}))});var Dp=T(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.InlineCompletionRequest=void 0;var wp=Te(),Ep;(function(r){r.method="textDocument/inlineCompletion",r.messageDirection=wp.MessageDirection.clientToServer,r.type=new wp.ProtocolRequestType(r.method)})(Ep||(bo.InlineCompletionRequest=Ep={}))});var Fg=T(p=>{"use strict";Object.defineProperty(p,"__esModule",{value:!0});p.WorkspaceSymbolRequest=p.CodeActionResolveRequest=p.CodeActionRequest=p.DocumentSymbolRequest=p.DocumentHighlightRequest=p.ReferencesRequest=p.DefinitionRequest=p.SignatureHelpRequest=p.SignatureHelpTriggerKind=p.HoverRequest=p.CompletionResolveRequest=p.CompletionRequest=p.CompletionTriggerKind=p.PublishDiagnosticsNotification=p.WatchKind=p.RelativePattern=p.FileChangeType=p.DidChangeWatchedFilesNotification=p.WillSaveTextDocumentWaitUntilRequest=p.WillSaveTextDocumentNotification=p.TextDocumentSaveReason=p.DidSaveTextDocumentNotification=p.DidCloseTextDocumentNotification=p.DidChangeTextDocumentNotification=p.TextDocumentContentChangeEvent=p.DidOpenTextDocumentNotification=p.TextDocumentSyncKind=p.TelemetryEventNotification=p.LogMessageNotification=p.ShowMessageRequest=p.ShowMessageNotification=p.MessageType=p.DidChangeConfigurationNotification=p.ExitNotification=p.ShutdownRequest=p.InitializedNotification=p.InitializeErrorCodes=p.InitializeRequest=p.WorkDoneProgressOptions=p.TextDocumentRegistrationOptions=p.StaticRegistrationOptions=p.PositionEncodingKind=p.FailureHandlingKind=p.ResourceOperationKind=p.UnregistrationRequest=p.RegistrationRequest=p.DocumentSelector=p.NotebookCellTextDocumentFilter=p.NotebookDocumentFilter=p.TextDocumentFilter=void 0;p.MonikerRequest=p.MonikerKind=p.UniquenessLevel=p.WillDeleteFilesRequest=p.DidDeleteFilesNotification=p.WillRenameFilesRequest=p.DidRenameFilesNotification=p.WillCreateFilesRequest=p.DidCreateFilesNotification=p.FileOperationPatternKind=p.LinkedEditingRangeRequest=p.ShowDocumentRequest=p.SemanticTokensRegistrationType=p.SemanticTokensRefreshRequest=p.SemanticTokensRangeRequest=p.SemanticTokensDeltaRequest=p.SemanticTokensRequest=p.TokenFormat=p.CallHierarchyPrepareRequest=p.CallHierarchyOutgoingCallsRequest=p.CallHierarchyIncomingCallsRequest=p.WorkDoneProgressCancelNotification=p.WorkDoneProgressCreateRequest=p.WorkDoneProgress=p.SelectionRangeRequest=p.DeclarationRequest=p.FoldingRangeRefreshRequest=p.FoldingRangeRequest=p.ColorPresentationRequest=p.DocumentColorRequest=p.ConfigurationRequest=p.DidChangeWorkspaceFoldersNotification=p.WorkspaceFoldersRequest=p.TypeDefinitionRequest=p.ImplementationRequest=p.ApplyWorkspaceEditRequest=p.ExecuteCommandRequest=p.PrepareRenameRequest=p.RenameRequest=p.PrepareSupportDefaultBehavior=p.DocumentOnTypeFormattingRequest=p.DocumentRangesFormattingRequest=p.DocumentRangeFormattingRequest=p.DocumentFormattingRequest=p.DocumentLinkResolveRequest=p.DocumentLinkRequest=p.CodeLensRefreshRequest=p.CodeLensResolveRequest=p.CodeLensRequest=p.WorkspaceSymbolResolveRequest=void 0;p.InlineCompletionRequest=p.DidCloseNotebookDocumentNotification=p.DidSaveNotebookDocumentNotification=p.DidChangeNotebookDocumentNotification=p.NotebookCellArrayChange=p.DidOpenNotebookDocumentNotification=p.NotebookDocumentSyncRegistrationType=p.NotebookDocument=p.NotebookCell=p.ExecutionSummary=p.NotebookCellKind=p.DiagnosticRefreshRequest=p.WorkspaceDiagnosticRequest=p.DocumentDiagnosticRequest=p.DocumentDiagnosticReportKind=p.DiagnosticServerCancellationData=p.InlayHintRefreshRequest=p.InlayHintResolveRequest=p.InlayHintRequest=p.InlineValueRefreshRequest=p.InlineValueRequest=p.TypeHierarchySupertypesRequest=p.TypeHierarchySubtypesRequest=p.TypeHierarchyPrepareRequest=void 0;var q=Te(),Pp=no(),Ye=io(),tw=Jf();Object.defineProperty(p,"ImplementationRequest",{enumerable:!0,get:function(){return tw.ImplementationRequest}});var rw=zf();Object.defineProperty(p,"TypeDefinitionRequest",{enumerable:!0,get:function(){return rw.TypeDefinitionRequest}});var Mg=th();Object.defineProperty(p,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return Mg.WorkspaceFoldersRequest}});Object.defineProperty(p,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return Mg.DidChangeWorkspaceFoldersNotification}});var nw=ih();Object.defineProperty(p,"ConfigurationRequest",{enumerable:!0,get:function(){return nw.ConfigurationRequest}});var Tg=ah();Object.defineProperty(p,"DocumentColorRequest",{enumerable:!0,get:function(){return Tg.DocumentColorRequest}});Object.defineProperty(p,"ColorPresentationRequest",{enumerable:!0,get:function(){return Tg.ColorPresentationRequest}});var xg=lh();Object.defineProperty(p,"FoldingRangeRequest",{enumerable:!0,get:function(){return xg.FoldingRangeRequest}});Object.defineProperty(p,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return xg.FoldingRangeRefreshRequest}});var iw=hh();Object.defineProperty(p,"DeclarationRequest",{enumerable:!0,get:function(){return iw.DeclarationRequest}});var ow=mh();Object.defineProperty(p,"SelectionRangeRequest",{enumerable:!0,get:function(){return ow.SelectionRangeRequest}});var Cc=vh();Object.defineProperty(p,"WorkDoneProgress",{enumerable:!0,get:function(){return Cc.WorkDoneProgress}});Object.defineProperty(p,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return Cc.WorkDoneProgressCreateRequest}});Object.defineProperty(p,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return Cc.WorkDoneProgressCancelNotification}});var kc=Ph();Object.defineProperty(p,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return kc.CallHierarchyIncomingCallsRequest}});Object.defineProperty(p,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return kc.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(p,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return kc.CallHierarchyPrepareRequest}});var tn=kh();Object.defineProperty(p,"TokenFormat",{enumerable:!0,get:function(){return tn.TokenFormat}});Object.defineProperty(p,"SemanticTokensRequest",{enumerable:!0,get:function(){return tn.SemanticTokensRequest}});Object.defineProperty(p,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return tn.SemanticTokensDeltaRequest}});Object.defineProperty(p,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return tn.SemanticTokensRangeRequest}});Object.defineProperty(p,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return tn.SemanticTokensRefreshRequest}});Object.defineProperty(p,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return tn.SemanticTokensRegistrationType}});var sw=Th();Object.defineProperty(p,"ShowDocumentRequest",{enumerable:!0,get:function(){return sw.ShowDocumentRequest}});var aw=Fh();Object.defineProperty(p,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return aw.LinkedEditingRangeRequest}});var Dr=Kh();Object.defineProperty(p,"FileOperationPatternKind",{enumerable:!0,get:function(){return Dr.FileOperationPatternKind}});Object.defineProperty(p,"DidCreateFilesNotification",{enumerable:!0,get:function(){return Dr.DidCreateFilesNotification}});Object.defineProperty(p,"WillCreateFilesRequest",{enumerable:!0,get:function(){return Dr.WillCreateFilesRequest}});Object.defineProperty(p,"DidRenameFilesNotification",{enumerable:!0,get:function(){return Dr.DidRenameFilesNotification}});Object.defineProperty(p,"WillRenameFilesRequest",{enumerable:!0,get:function(){return Dr.WillRenameFilesRequest}});Object.defineProperty(p,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return Dr.DidDeleteFilesNotification}});Object.defineProperty(p,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return Dr.WillDeleteFilesRequest}});var Bc=Jh();Object.defineProperty(p,"UniquenessLevel",{enumerable:!0,get:function(){return Bc.UniquenessLevel}});Object.defineProperty(p,"MonikerKind",{enumerable:!0,get:function(){return Bc.MonikerKind}});Object.defineProperty(p,"MonikerRequest",{enumerable:!0,get:function(){return Bc.MonikerRequest}});var Mc=$h();Object.defineProperty(p,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return Mc.TypeHierarchyPrepareRequest}});Object.defineProperty(p,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return Mc.TypeHierarchySubtypesRequest}});Object.defineProperty(p,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return Mc.TypeHierarchySupertypesRequest}});var Og=rp();Object.defineProperty(p,"InlineValueRequest",{enumerable:!0,get:function(){return Og.InlineValueRequest}});Object.defineProperty(p,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return Og.InlineValueRefreshRequest}});var Tc=sp();Object.defineProperty(p,"InlayHintRequest",{enumerable:!0,get:function(){return Tc.InlayHintRequest}});Object.defineProperty(p,"InlayHintResolveRequest",{enumerable:!0,get:function(){return Tc.InlayHintResolveRequest}});Object.defineProperty(p,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return Tc.InlayHintRefreshRequest}});var kn=hp();Object.defineProperty(p,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return kn.DiagnosticServerCancellationData}});Object.defineProperty(p,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return kn.DocumentDiagnosticReportKind}});Object.defineProperty(p,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return kn.DocumentDiagnosticRequest}});Object.defineProperty(p,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return kn.WorkspaceDiagnosticRequest}});Object.defineProperty(p,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return kn.DiagnosticRefreshRequest}});var Nt=vp();Object.defineProperty(p,"NotebookCellKind",{enumerable:!0,get:function(){return Nt.NotebookCellKind}});Object.defineProperty(p,"ExecutionSummary",{enumerable:!0,get:function(){return Nt.ExecutionSummary}});Object.defineProperty(p,"NotebookCell",{enumerable:!0,get:function(){return Nt.NotebookCell}});Object.defineProperty(p,"NotebookDocument",{enumerable:!0,get:function(){return Nt.NotebookDocument}});Object.defineProperty(p,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return Nt.NotebookDocumentSyncRegistrationType}});Object.defineProperty(p,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidOpenNotebookDocumentNotification}});Object.defineProperty(p,"NotebookCellArrayChange",{enumerable:!0,get:function(){return Nt.NotebookCellArrayChange}});Object.defineProperty(p,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidChangeNotebookDocumentNotification}});Object.defineProperty(p,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidSaveNotebookDocumentNotification}});Object.defineProperty(p,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidCloseNotebookDocumentNotification}});var cw=Dp();Object.defineProperty(p,"InlineCompletionRequest",{enumerable:!0,get:function(){return cw.InlineCompletionRequest}});var Rc;(function(r){function e(t){let n=t;return Ye.string(n)||Ye.string(n.language)||Ye.string(n.scheme)||Ye.string(n.pattern)}r.is=e})(Rc||(p.TextDocumentFilter=Rc={}));var Sc;(function(r){function e(t){let n=t;return Ye.objectLiteral(n)&&(Ye.string(n.notebookType)||Ye.string(n.scheme)||Ye.string(n.pattern))}r.is=e})(Sc||(p.NotebookDocumentFilter=Sc={}));var Ic;(function(r){function e(t){let n=t;return Ye.objectLiteral(n)&&(Ye.string(n.notebook)||Sc.is(n.notebook))&&(n.language===void 0||Ye.string(n.language))}r.is=e})(Ic||(p.NotebookCellTextDocumentFilter=Ic={}));var Lc;(function(r){function e(t){if(!Array.isArray(t))return!1;for(let n of t)if(!Ye.string(n)&&!Rc.is(n)&&!Ic.is(n))return!1;return!0}r.is=e})(Lc||(p.DocumentSelector=Lc={}));var Rp;(function(r){r.method="client/registerCapability",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType(r.method)})(Rp||(p.RegistrationRequest=Rp={}));var Sp;(function(r){r.method="client/unregisterCapability",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType(r.method)})(Sp||(p.UnregistrationRequest=Sp={}));var Ip;(function(r){r.Create="create",r.Rename="rename",r.Delete="delete"})(Ip||(p.ResourceOperationKind=Ip={}));var Lp;(function(r){r.Abort="abort",r.Transactional="transactional",r.TextOnlyTransactional="textOnlyTransactional",r.Undo="undo"})(Lp||(p.FailureHandlingKind=Lp={}));var Cp;(function(r){r.UTF8="utf-8",r.UTF16="utf-16",r.UTF32="utf-32"})(Cp||(p.PositionEncodingKind=Cp={}));var kp;(function(r){function e(t){let n=t;return n&&Ye.string(n.id)&&n.id.length>0}r.hasId=e})(kp||(p.StaticRegistrationOptions=kp={}));var Bp;(function(r){function e(t){let n=t;return n&&(n.documentSelector===null||Lc.is(n.documentSelector))}r.is=e})(Bp||(p.TextDocumentRegistrationOptions=Bp={}));var Mp;(function(r){function e(n){let i=n;return Ye.objectLiteral(i)&&(i.workDoneProgress===void 0||Ye.boolean(i.workDoneProgress))}r.is=e;function t(n){let i=n;return i&&Ye.boolean(i.workDoneProgress)}r.hasWorkDoneProgress=t})(Mp||(p.WorkDoneProgressOptions=Mp={}));var Tp;(function(r){r.method="initialize",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Tp||(p.InitializeRequest=Tp={}));var xp;(function(r){r.unknownProtocolVersion=1})(xp||(p.InitializeErrorCodes=xp={}));var Op;(function(r){r.method="initialized",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Op||(p.InitializedNotification=Op={}));var Fp;(function(r){r.method="shutdown",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType0(r.method)})(Fp||(p.ShutdownRequest=Fp={}));var Np;(function(r){r.method="exit",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType0(r.method)})(Np||(p.ExitNotification=Np={}));var qp;(function(r){r.method="workspace/didChangeConfiguration",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(qp||(p.DidChangeConfigurationNotification=qp={}));var jp;(function(r){r.Error=1,r.Warning=2,r.Info=3,r.Log=4,r.Debug=5})(jp||(p.MessageType=jp={}));var Up;(function(r){r.method="window/showMessage",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(Up||(p.ShowMessageNotification=Up={}));var _p;(function(r){r.method="window/showMessageRequest",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType(r.method)})(_p||(p.ShowMessageRequest=_p={}));var Qp;(function(r){r.method="window/logMessage",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(Qp||(p.LogMessageNotification=Qp={}));var Gp;(function(r){r.method="telemetry/event",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(Gp||(p.TelemetryEventNotification=Gp={}));var Kp;(function(r){r.None=0,r.Full=1,r.Incremental=2})(Kp||(p.TextDocumentSyncKind=Kp={}));var Yp;(function(r){r.method="textDocument/didOpen",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Yp||(p.DidOpenTextDocumentNotification=Yp={}));var Wp;(function(r){function e(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}r.isIncremental=e;function t(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}r.isFull=t})(Wp||(p.TextDocumentContentChangeEvent=Wp={}));var Vp;(function(r){r.method="textDocument/didChange",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Vp||(p.DidChangeTextDocumentNotification=Vp={}));var Hp;(function(r){r.method="textDocument/didClose",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Hp||(p.DidCloseTextDocumentNotification=Hp={}));var Jp;(function(r){r.method="textDocument/didSave",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Jp||(p.DidSaveTextDocumentNotification=Jp={}));var Zp;(function(r){r.Manual=1,r.AfterDelay=2,r.FocusOut=3})(Zp||(p.TextDocumentSaveReason=Zp={}));var Xp;(function(r){r.method="textDocument/willSave",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Xp||(p.WillSaveTextDocumentNotification=Xp={}));var zp;(function(r){r.method="textDocument/willSaveWaitUntil",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(zp||(p.WillSaveTextDocumentWaitUntilRequest=zp={}));var $p;(function(r){r.method="workspace/didChangeWatchedFiles",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})($p||(p.DidChangeWatchedFilesNotification=$p={}));var eg;(function(r){r.Created=1,r.Changed=2,r.Deleted=3})(eg||(p.FileChangeType=eg={}));var tg;(function(r){function e(t){let n=t;return Ye.objectLiteral(n)&&(Pp.URI.is(n.baseUri)||Pp.WorkspaceFolder.is(n.baseUri))&&Ye.string(n.pattern)}r.is=e})(tg||(p.RelativePattern=tg={}));var rg;(function(r){r.Create=1,r.Change=2,r.Delete=4})(rg||(p.WatchKind=rg={}));var ng;(function(r){r.method="textDocument/publishDiagnostics",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(ng||(p.PublishDiagnosticsNotification=ng={}));var ig;(function(r){r.Invoked=1,r.TriggerCharacter=2,r.TriggerForIncompleteCompletions=3})(ig||(p.CompletionTriggerKind=ig={}));var og;(function(r){r.method="textDocument/completion",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(og||(p.CompletionRequest=og={}));var sg;(function(r){r.method="completionItem/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(sg||(p.CompletionResolveRequest=sg={}));var ag;(function(r){r.method="textDocument/hover",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(ag||(p.HoverRequest=ag={}));var cg;(function(r){r.Invoked=1,r.TriggerCharacter=2,r.ContentChange=3})(cg||(p.SignatureHelpTriggerKind=cg={}));var ug;(function(r){r.method="textDocument/signatureHelp",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(ug||(p.SignatureHelpRequest=ug={}));var lg;(function(r){r.method="textDocument/definition",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(lg||(p.DefinitionRequest=lg={}));var dg;(function(r){r.method="textDocument/references",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(dg||(p.ReferencesRequest=dg={}));var fg;(function(r){r.method="textDocument/documentHighlight",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(fg||(p.DocumentHighlightRequest=fg={}));var hg;(function(r){r.method="textDocument/documentSymbol",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(hg||(p.DocumentSymbolRequest=hg={}));var pg;(function(r){r.method="textDocument/codeAction",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(pg||(p.CodeActionRequest=pg={}));var gg;(function(r){r.method="codeAction/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(gg||(p.CodeActionResolveRequest=gg={}));var mg;(function(r){r.method="workspace/symbol",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(mg||(p.WorkspaceSymbolRequest=mg={}));var Ag;(function(r){r.method="workspaceSymbol/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Ag||(p.WorkspaceSymbolResolveRequest=Ag={}));var yg;(function(r){r.method="textDocument/codeLens",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(yg||(p.CodeLensRequest=yg={}));var bg;(function(r){r.method="codeLens/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(bg||(p.CodeLensResolveRequest=bg={}));var vg;(function(r){r.method="workspace/codeLens/refresh",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType0(r.method)})(vg||(p.CodeLensRefreshRequest=vg={}));var wg;(function(r){r.method="textDocument/documentLink",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(wg||(p.DocumentLinkRequest=wg={}));var Eg;(function(r){r.method="documentLink/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Eg||(p.DocumentLinkResolveRequest=Eg={}));var Dg;(function(r){r.method="textDocument/formatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Dg||(p.DocumentFormattingRequest=Dg={}));var Pg;(function(r){r.method="textDocument/rangeFormatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Pg||(p.DocumentRangeFormattingRequest=Pg={}));var Rg;(function(r){r.method="textDocument/rangesFormatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Rg||(p.DocumentRangesFormattingRequest=Rg={}));var Sg;(function(r){r.method="textDocument/onTypeFormatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Sg||(p.DocumentOnTypeFormattingRequest=Sg={}));var Ig;(function(r){r.Identifier=1})(Ig||(p.PrepareSupportDefaultBehavior=Ig={}));var Lg;(function(r){r.method="textDocument/rename",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Lg||(p.RenameRequest=Lg={}));var Cg;(function(r){r.method="textDocument/prepareRename",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Cg||(p.PrepareRenameRequest=Cg={}));var kg;(function(r){r.method="workspace/executeCommand",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(kg||(p.ExecuteCommandRequest=kg={}));var Bg;(function(r){r.method="workspace/applyEdit",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType("workspace/applyEdit")})(Bg||(p.ApplyWorkspaceEditRequest=Bg={}))});var qg=T(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.createProtocolConnection=void 0;var Ng=Er();function uw(r,e,t,n){return Ng.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,Ng.createMessageConnection)(r,e,t,n)}vo.createProtocolConnection=uw});var Ug=T(lt=>{"use strict";var lw=lt&<.__createBinding||(Object.create?(function(r,e,t,n){n===void 0&&(n=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,n,i)}):(function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]})),wo=lt&<.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&lw(e,r,t)};Object.defineProperty(lt,"__esModule",{value:!0});lt.LSPErrorCodes=lt.createProtocolConnection=void 0;wo(Er(),lt);wo(no(),lt);wo(Te(),lt);wo(Fg(),lt);var dw=qg();Object.defineProperty(lt,"createProtocolConnection",{enumerable:!0,get:function(){return dw.createProtocolConnection}});var jg;(function(r){r.lspReservedErrorRangeStart=-32899,r.RequestFailed=-32803,r.ServerCancelled=-32802,r.ContentModified=-32801,r.RequestCancelled=-32800,r.lspReservedErrorRangeEnd=-32800})(jg||(lt.LSPErrorCodes=jg={}))});var Qg=T(qt=>{"use strict";var fw=qt&&qt.__createBinding||(Object.create?(function(r,e,t,n){n===void 0&&(n=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,n,i)}):(function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]})),_g=qt&&qt.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&fw(e,r,t)};Object.defineProperty(qt,"__esModule",{value:!0});qt.createProtocolConnection=void 0;var hw=Ac();_g(Ac(),qt);_g(Ug(),qt);function pw(r,e,t,n){return(0,hw.createMessageConnection)(r,e,t,n)}qt.createProtocolConnection=pw});var gw=T((bD,Gg)=>{"use strict";Gg.exports=Qg()});var vw="Factorio Modding Tool Kit",dr="2.0.11";var $=ve(eu(),1),Ss=ve(Gl(),1);import*as Qt from"path";import*as od from"fs/promises";import*as mr from"os";var Kl;(()=>{"use strict";var r={975:N=>{function R(S){if(typeof S!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(S))}function _(S,M){for(var x,P="",V=0,j=-1,ne=0,oe=0;oe<=S.length;++oe){if(oe<S.length)x=S.charCodeAt(oe);else{if(x===47)break;x=47}if(x===47){if(!(j===oe-1||ne===1))if(j!==oe-1&&ne===2){if(P.length<2||V!==2||P.charCodeAt(P.length-1)!==46||P.charCodeAt(P.length-2)!==46){if(P.length>2){var je=P.lastIndexOf("/");if(je!==P.length-1){je===-1?(P="",V=0):V=(P=P.slice(0,je)).length-1-P.lastIndexOf("/"),j=oe,ne=0;continue}}else if(P.length===2||P.length===1){P="",V=0,j=oe,ne=0;continue}}M&&(P.length>0?P+="/..":P="..",V=2)}else P.length>0?P+="/"+S.slice(j+1,oe):P=S.slice(j+1,oe),V=oe-j-1;j=oe,ne=0}else x===46&&ne!==-1?++ne:ne=-1}return P}var K={resolve:function(){for(var S,M="",x=!1,P=arguments.length-1;P>=-1&&!x;P--){var V;P>=0?V=arguments[P]:(S===void 0&&(S=process.cwd()),V=S),R(V),V.length!==0&&(M=V+"/"+M,x=V.charCodeAt(0)===47)}return M=_(M,!x),x?M.length>0?"/"+M:"/":M.length>0?M:"."},normalize:function(S){if(R(S),S.length===0)return".";var M=S.charCodeAt(0)===47,x=S.charCodeAt(S.length-1)===47;return(S=_(S,!M)).length!==0||M||(S="."),S.length>0&&x&&(S+="/"),M?"/"+S:S},isAbsolute:function(S){return R(S),S.length>0&&S.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var S,M=0;M<arguments.length;++M){var x=arguments[M];R(x),x.length>0&&(S===void 0?S=x:S+="/"+x)}return S===void 0?".":K.normalize(S)},relative:function(S,M){if(R(S),R(M),S===M||(S=K.resolve(S))===(M=K.resolve(M)))return"";for(var x=1;x<S.length&&S.charCodeAt(x)===47;++x);for(var P=S.length,V=P-x,j=1;j<M.length&&M.charCodeAt(j)===47;++j);for(var ne=M.length-j,oe=V<ne?V:ne,je=-1,pe=0;pe<=oe;++pe){if(pe===oe){if(ne>oe){if(M.charCodeAt(j+pe)===47)return M.slice(j+pe+1);if(pe===0)return M.slice(j+pe)}else V>oe&&(S.charCodeAt(x+pe)===47?je=pe:pe===0&&(je=0));break}var it=S.charCodeAt(x+pe);if(it!==M.charCodeAt(j+pe))break;it===47&&(je=pe)}var Bt="";for(pe=x+je+1;pe<=P;++pe)pe!==P&&S.charCodeAt(pe)!==47||(Bt.length===0?Bt+="..":Bt+="/..");return Bt.length>0?Bt+M.slice(j+je):(j+=je,M.charCodeAt(j)===47&&++j,M.slice(j))},_makeLong:function(S){return S},dirname:function(S){if(R(S),S.length===0)return".";for(var M=S.charCodeAt(0),x=M===47,P=-1,V=!0,j=S.length-1;j>=1;--j)if((M=S.charCodeAt(j))===47){if(!V){P=j;break}}else V=!1;return P===-1?x?"/":".":x&&P===1?"//":S.slice(0,P)},basename:function(S,M){if(M!==void 0&&typeof M!="string")throw new TypeError('"ext" argument must be a string');R(S);var x,P=0,V=-1,j=!0;if(M!==void 0&&M.length>0&&M.length<=S.length){if(M.length===S.length&&M===S)return"";var ne=M.length-1,oe=-1;for(x=S.length-1;x>=0;--x){var je=S.charCodeAt(x);if(je===47){if(!j){P=x+1;break}}else oe===-1&&(j=!1,oe=x+1),ne>=0&&(je===M.charCodeAt(ne)?--ne==-1&&(V=x):(ne=-1,V=oe))}return P===V?V=oe:V===-1&&(V=S.length),S.slice(P,V)}for(x=S.length-1;x>=0;--x)if(S.charCodeAt(x)===47){if(!j){P=x+1;break}}else V===-1&&(j=!1,V=x+1);return V===-1?"":S.slice(P,V)},extname:function(S){R(S);for(var M=-1,x=0,P=-1,V=!0,j=0,ne=S.length-1;ne>=0;--ne){var oe=S.charCodeAt(ne);if(oe!==47)P===-1&&(V=!1,P=ne+1),oe===46?M===-1?M=ne:j!==1&&(j=1):M!==-1&&(j=-1);else if(!V){x=ne+1;break}}return M===-1||P===-1||j===0||j===1&&M===P-1&&M===x+1?"":S.slice(M,P)},format:function(S){if(S===null||typeof S!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof S);return(function(M,x){var P=x.dir||x.root,V=x.base||(x.name||"")+(x.ext||"");return P?P===x.root?P+V:P+"/"+V:V})(0,S)},parse:function(S){R(S);var M={root:"",dir:"",base:"",ext:"",name:""};if(S.length===0)return M;var x,P=S.charCodeAt(0),V=P===47;V?(M.root="/",x=1):x=0;for(var j=-1,ne=0,oe=-1,je=!0,pe=S.length-1,it=0;pe>=x;--pe)if((P=S.charCodeAt(pe))!==47)oe===-1&&(je=!1,oe=pe+1),P===46?j===-1?j=pe:it!==1&&(it=1):j!==-1&&(it=-1);else if(!je){ne=pe+1;break}return j===-1||oe===-1||it===0||it===1&&j===oe-1&&j===ne+1?oe!==-1&&(M.base=M.name=ne===0&&V?S.slice(1,oe):S.slice(ne,oe)):(ne===0&&V?(M.name=S.slice(1,j),M.base=S.slice(1,oe)):(M.name=S.slice(ne,j),M.base=S.slice(ne,oe)),M.ext=S.slice(j,oe)),ne>0?M.dir=S.slice(0,ne-1):V&&(M.dir="/"),M},sep:"/",delimiter:":",win32:null,posix:null};K.posix=K,N.exports=K}},e={};function t(N){var R=e[N];if(R!==void 0)return R.exports;var _=e[N]={exports:{}};return r[N](_,_.exports,t),_.exports}t.d=(N,R)=>{for(var _ in R)t.o(R,_)&&!t.o(N,_)&&Object.defineProperty(N,_,{enumerable:!0,get:R[_]})},t.o=(N,R)=>Object.prototype.hasOwnProperty.call(N,R),t.r=N=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(N,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(N,"__esModule",{value:!0})};var n={};let i;t.r(n),t.d(n,{URI:()=>w,Utils:()=>Ge}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let o=/^\w[\w\d+.-]*$/,s=/^\//,a=/^\/\//;function d(N,R){if(!N.scheme&&R)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${N.authority}", path: "${N.path}", query: "${N.query}", fragment: "${N.fragment}"}`);if(N.scheme&&!o.test(N.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(N.path){if(N.authority){if(!s.test(N.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(a.test(N.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let c="",h="/",m=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class w{static isUri(R){return R instanceof w||!!R&&typeof R.authority=="string"&&typeof R.fragment=="string"&&typeof R.path=="string"&&typeof R.query=="string"&&typeof R.scheme=="string"&&typeof R.fsPath=="string"&&typeof R.with=="function"&&typeof R.toString=="function"}scheme;authority;path;query;fragment;constructor(R,_,K,S,M,x=!1){typeof R=="object"?(this.scheme=R.scheme||c,this.authority=R.authority||c,this.path=R.path||c,this.query=R.query||c,this.fragment=R.fragment||c):(this.scheme=(function(P,V){return P||V?P:"file"})(R,x),this.authority=_||c,this.path=(function(P,V){switch(P){case"https":case"http":case"file":V?V[0]!==h&&(V=h+V):V=h}return V})(this.scheme,K||c),this.query=S||c,this.fragment=M||c,d(this,x))}get fsPath(){return Y(this,!1)}with(R){if(!R)return this;let{scheme:_,authority:K,path:S,query:M,fragment:x}=R;return _===void 0?_=this.scheme:_===null&&(_=c),K===void 0?K=this.authority:K===null&&(K=c),S===void 0?S=this.path:S===null&&(S=c),M===void 0?M=this.query:M===null&&(M=c),x===void 0?x=this.fragment:x===null&&(x=c),_===this.scheme&&K===this.authority&&S===this.path&&M===this.query&&x===this.fragment?this:new O(_,K,S,M,x)}static parse(R,_=!1){let K=m.exec(R);return K?new O(K[2]||c,se(K[4]||c),se(K[5]||c),se(K[7]||c),se(K[9]||c),_):new O(c,c,c,c,c)}static file(R){let _=c;if(i&&(R=R.replace(/\\/g,h)),R[0]===h&&R[1]===h){let K=R.indexOf(h,2);K===-1?(_=R.substring(2),R=h):(_=R.substring(2,K),R=R.substring(K)||h)}return new O("file",_,R,c,c)}static from(R){let _=new O(R.scheme,R.authority,R.path,R.query,R.fragment);return d(_,!0),_}toString(R=!1){return W(this,R)}toJSON(){return this}static revive(R){if(R){if(R instanceof w)return R;{let _=new O(R);return _._formatted=R.external,_._fsPath=R._sep===b?R.fsPath:null,_}}return R}}let b=i?1:void 0;class O extends w{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=Y(this,!1)),this._fsPath}toString(R=!1){return R?W(this,!0):(this._formatted||(this._formatted=W(this,!1)),this._formatted)}toJSON(){let R={$mid:1};return this._fsPath&&(R.fsPath=this._fsPath,R._sep=b),this._formatted&&(R.external=this._formatted),this.path&&(R.path=this.path),this.scheme&&(R.scheme=this.scheme),this.authority&&(R.authority=this.authority),this.query&&(R.query=this.query),this.fragment&&(R.fragment=this.fragment),R}}let k={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function X(N,R,_){let K,S=-1;for(let M=0;M<N.length;M++){let x=N.charCodeAt(M);if(x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===45||x===46||x===95||x===126||R&&x===47||_&&x===91||_&&x===93||_&&x===58)S!==-1&&(K+=encodeURIComponent(N.substring(S,M)),S=-1),K!==void 0&&(K+=N.charAt(M));else{K===void 0&&(K=N.substr(0,M));let P=k[x];P!==void 0?(S!==-1&&(K+=encodeURIComponent(N.substring(S,M)),S=-1),K+=P):S===-1&&(S=M)}}return S!==-1&&(K+=encodeURIComponent(N.substring(S))),K!==void 0?K:N}function te(N){let R;for(let _=0;_<N.length;_++){let K=N.charCodeAt(_);K===35||K===63?(R===void 0&&(R=N.substr(0,_)),R+=k[K]):R!==void 0&&(R+=N[_])}return R!==void 0?R:N}function Y(N,R){let _;return _=N.authority&&N.path.length>1&&N.scheme==="file"?`//${N.authority}${N.path}`:N.path.charCodeAt(0)===47&&(N.path.charCodeAt(1)>=65&&N.path.charCodeAt(1)<=90||N.path.charCodeAt(1)>=97&&N.path.charCodeAt(1)<=122)&&N.path.charCodeAt(2)===58?R?N.path.substr(1):N.path[1].toLowerCase()+N.path.substr(2):N.path,i&&(_=_.replace(/\//g,"\\")),_}function W(N,R){let _=R?te:X,K="",{scheme:S,authority:M,path:x,query:P,fragment:V}=N;if(S&&(K+=S,K+=":"),(M||S==="file")&&(K+=h,K+=h),M){let j=M.indexOf("@");if(j!==-1){let ne=M.substr(0,j);M=M.substr(j+1),j=ne.lastIndexOf(":"),j===-1?K+=_(ne,!1,!1):(K+=_(ne.substr(0,j),!1,!1),K+=":",K+=_(ne.substr(j+1),!1,!0)),K+="@"}M=M.toLowerCase(),j=M.lastIndexOf(":"),j===-1?K+=_(M,!1,!0):(K+=_(M.substr(0,j),!1,!0),K+=M.substr(j))}if(x){if(x.length>=3&&x.charCodeAt(0)===47&&x.charCodeAt(2)===58){let j=x.charCodeAt(1);j>=65&&j<=90&&(x=`/${String.fromCharCode(j+32)}:${x.substr(3)}`)}else if(x.length>=2&&x.charCodeAt(1)===58){let j=x.charCodeAt(0);j>=65&&j<=90&&(x=`${String.fromCharCode(j+32)}:${x.substr(2)}`)}K+=_(x,!0,!1)}return P&&(K+="?",K+=_(P,!1,!1)),V&&(K+="#",K+=R?V:X(V,!1,!1)),K}function F(N){try{return decodeURIComponent(N)}catch{return N.length>3?N.substr(0,3)+F(N.substr(3)):N}}let C=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function se(N){return N.match(C)?N.replace(C,(R=>F(R))):N}var Q=t(975);let ye=Q.posix||Q,xe="/";var Ge;(function(N){N.joinPath=function(R,..._){return R.with({path:ye.join(R.path,..._)})},N.resolvePath=function(R,..._){let K=R.path,S=!1;K[0]!==xe&&(K=xe+K,S=!0);let M=ye.resolve(K,..._);return S&&M[0]===xe&&!R.authority&&(M=M.substring(1)),R.with({path:M})},N.dirname=function(R){if(R.path.length===0||R.path===xe)return R;let _=ye.dirname(R.path);return _.length===1&&_.charCodeAt(0)===46&&(_=""),R.with({path:_})},N.basename=function(R){return ye.basename(R.path)},N.extname=function(R){return ye.extname(R.path)}})(Ge||(Ge={})),Kl=n})();var{URI:Ze,Utils:It}=Kl;function pr(r){let e=r.toString().match(/\]=*$/),t="=".repeat((r.toString().match(/\]=*\]/g)||[]).map(n=>n.length-1).reduce((n,i)=>Math.max(n,i),e?e[0].length:0));return Buffer.concat([Buffer.from(`[${t}[`),r,Buffer.from(`]${t}]`)])}function rb(r){return`"${r.replaceAll(/[\x00-\x1f'"\\]/gm,e=>{switch(e){case" ":return"\\t";case"\r":return"\\r";case`
|
|
54
|
+
`&&u++}f&&v.length>0&&A.push(v.length),this._lineOffsets=A}return this._lineOffsets},l.prototype.positionAt=function(A){A=Math.max(Math.min(A,this._content.length),0);var v=this.getLineOffsets(),f=0,u=v.length;if(u===0)return s.create(0,A);for(;f<u;){var E=Math.floor((f+u)/2);v[E]>A?u=E:f=E+1}var B=f-1;return s.create(B,A-v[B])},l.prototype.offsetAt=function(A){var v=this.getLineOffsets();if(A.line>=v.length)return this._content.length;if(A.line<0)return 0;var f=v[A.line],u=A.line+1<v.length?v[A.line+1]:this._content.length;return Math.max(Math.min(f+A.character,u),f)},Object.defineProperty(l.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),l})(),D;(function(l){var A=Object.prototype.toString;function v(de){return typeof de<"u"}l.defined=v;function f(de){return typeof de>"u"}l.undefined=f;function u(de){return de===!0||de===!1}l.boolean=u;function E(de){return A.call(de)==="[object String]"}l.string=E;function B(de){return A.call(de)==="[object Number]"}l.number=B;function ae(de,Ir,Qn){return A.call(de)==="[object Number]"&&Ir<=de&&de<=Qn}l.numberRange=ae;function Ne(de){return A.call(de)==="[object Number]"&&-2147483648<=de&&de<=2147483647}l.integer=Ne;function Re(de){return A.call(de)==="[object Number]"&&0<=de&&de<=2147483647}l.uinteger=Re;function Rt(de){return A.call(de)==="[object Function]"}l.func=Rt;function St(de){return de!==null&&typeof de=="object"}l.objectLiteral=St;function _t(de,Ir){return Array.isArray(de)&&de.every(Ir)}l.typedArray=_t})(D||(D={}))})});var Te=T(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.ProtocolNotificationType=ct.ProtocolNotificationType0=ct.ProtocolRequestType=ct.ProtocolRequestType0=ct.RegistrationType=ct.MessageDirection=void 0;var Yr=Er(),Kf;(function(r){r.clientToServer="clientToServer",r.serverToClient="serverToClient",r.both="both"})(Kf||(ct.MessageDirection=Kf={}));var yc=class{constructor(e){this.method=e}};ct.RegistrationType=yc;var bc=class extends Yr.RequestType0{constructor(e){super(e)}};ct.ProtocolRequestType0=bc;var vc=class extends Yr.RequestType{constructor(e){super(e,Yr.ParameterStructures.byName)}};ct.ProtocolRequestType=vc;var wc=class extends Yr.NotificationType0{constructor(e){super(e)}};ct.ProtocolNotificationType0=wc;var Ec=class extends Yr.NotificationType{constructor(e){super(e,Yr.ParameterStructures.byName)}};ct.ProtocolNotificationType=Ec});var io=T(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.objectLiteral=_e.typedArray=_e.stringArray=_e.array=_e.func=_e.error=_e.number=_e.string=_e.boolean=void 0;function Wv(r){return r===!0||r===!1}_e.boolean=Wv;function Yf(r){return typeof r=="string"||r instanceof String}_e.string=Yf;function Vv(r){return typeof r=="number"||r instanceof Number}_e.number=Vv;function Hv(r){return r instanceof Error}_e.error=Hv;function Jv(r){return typeof r=="function"}_e.func=Jv;function Wf(r){return Array.isArray(r)}_e.array=Wf;function Zv(r){return Wf(r)&&r.every(e=>Yf(e))}_e.stringArray=Zv;function Xv(r,e){return Array.isArray(r)&&r.every(e)}_e.typedArray=Xv;function zv(r){return r!==null&&typeof r=="object"}_e.objectLiteral=zv});var Jf=T(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});oo.ImplementationRequest=void 0;var Vf=Te(),Hf;(function(r){r.method="textDocument/implementation",r.messageDirection=Vf.MessageDirection.clientToServer,r.type=new Vf.ProtocolRequestType(r.method)})(Hf||(oo.ImplementationRequest=Hf={}))});var zf=T(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.TypeDefinitionRequest=void 0;var Zf=Te(),Xf;(function(r){r.method="textDocument/typeDefinition",r.messageDirection=Zf.MessageDirection.clientToServer,r.type=new Zf.ProtocolRequestType(r.method)})(Xf||(so.TypeDefinitionRequest=Xf={}))});var th=T(Wr=>{"use strict";Object.defineProperty(Wr,"__esModule",{value:!0});Wr.DidChangeWorkspaceFoldersNotification=Wr.WorkspaceFoldersRequest=void 0;var ao=Te(),$f;(function(r){r.method="workspace/workspaceFolders",r.messageDirection=ao.MessageDirection.serverToClient,r.type=new ao.ProtocolRequestType0(r.method)})($f||(Wr.WorkspaceFoldersRequest=$f={}));var eh;(function(r){r.method="workspace/didChangeWorkspaceFolders",r.messageDirection=ao.MessageDirection.clientToServer,r.type=new ao.ProtocolNotificationType(r.method)})(eh||(Wr.DidChangeWorkspaceFoldersNotification=eh={}))});var ih=T(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.ConfigurationRequest=void 0;var rh=Te(),nh;(function(r){r.method="workspace/configuration",r.messageDirection=rh.MessageDirection.serverToClient,r.type=new rh.ProtocolRequestType(r.method)})(nh||(co.ConfigurationRequest=nh={}))});var ah=T(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.ColorPresentationRequest=Vr.DocumentColorRequest=void 0;var uo=Te(),oh;(function(r){r.method="textDocument/documentColor",r.messageDirection=uo.MessageDirection.clientToServer,r.type=new uo.ProtocolRequestType(r.method)})(oh||(Vr.DocumentColorRequest=oh={}));var sh;(function(r){r.method="textDocument/colorPresentation",r.messageDirection=uo.MessageDirection.clientToServer,r.type=new uo.ProtocolRequestType(r.method)})(sh||(Vr.ColorPresentationRequest=sh={}))});var lh=T(Hr=>{"use strict";Object.defineProperty(Hr,"__esModule",{value:!0});Hr.FoldingRangeRefreshRequest=Hr.FoldingRangeRequest=void 0;var lo=Te(),ch;(function(r){r.method="textDocument/foldingRange",r.messageDirection=lo.MessageDirection.clientToServer,r.type=new lo.ProtocolRequestType(r.method)})(ch||(Hr.FoldingRangeRequest=ch={}));var uh;(function(r){r.method="workspace/foldingRange/refresh",r.messageDirection=lo.MessageDirection.serverToClient,r.type=new lo.ProtocolRequestType0(r.method)})(uh||(Hr.FoldingRangeRefreshRequest=uh={}))});var hh=T(fo=>{"use strict";Object.defineProperty(fo,"__esModule",{value:!0});fo.DeclarationRequest=void 0;var dh=Te(),fh;(function(r){r.method="textDocument/declaration",r.messageDirection=dh.MessageDirection.clientToServer,r.type=new dh.ProtocolRequestType(r.method)})(fh||(fo.DeclarationRequest=fh={}))});var mh=T(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.SelectionRangeRequest=void 0;var ph=Te(),gh;(function(r){r.method="textDocument/selectionRange",r.messageDirection=ph.MessageDirection.clientToServer,r.type=new ph.ProtocolRequestType(r.method)})(gh||(ho.SelectionRangeRequest=gh={}))});var vh=T(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.WorkDoneProgressCancelNotification=or.WorkDoneProgressCreateRequest=or.WorkDoneProgress=void 0;var $v=Er(),po=Te(),Ah;(function(r){r.type=new $v.ProgressType;function e(t){return t===r.type}r.is=e})(Ah||(or.WorkDoneProgress=Ah={}));var yh;(function(r){r.method="window/workDoneProgress/create",r.messageDirection=po.MessageDirection.serverToClient,r.type=new po.ProtocolRequestType(r.method)})(yh||(or.WorkDoneProgressCreateRequest=yh={}));var bh;(function(r){r.method="window/workDoneProgress/cancel",r.messageDirection=po.MessageDirection.clientToServer,r.type=new po.ProtocolNotificationType(r.method)})(bh||(or.WorkDoneProgressCancelNotification=bh={}))});var Ph=T(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.CallHierarchyOutgoingCallsRequest=sr.CallHierarchyIncomingCallsRequest=sr.CallHierarchyPrepareRequest=void 0;var Jr=Te(),wh;(function(r){r.method="textDocument/prepareCallHierarchy",r.messageDirection=Jr.MessageDirection.clientToServer,r.type=new Jr.ProtocolRequestType(r.method)})(wh||(sr.CallHierarchyPrepareRequest=wh={}));var Eh;(function(r){r.method="callHierarchy/incomingCalls",r.messageDirection=Jr.MessageDirection.clientToServer,r.type=new Jr.ProtocolRequestType(r.method)})(Eh||(sr.CallHierarchyIncomingCallsRequest=Eh={}));var Dh;(function(r){r.method="callHierarchy/outgoingCalls",r.messageDirection=Jr.MessageDirection.clientToServer,r.type=new Jr.ProtocolRequestType(r.method)})(Dh||(sr.CallHierarchyOutgoingCallsRequest=Dh={}))});var kh=T(ut=>{"use strict";Object.defineProperty(ut,"__esModule",{value:!0});ut.SemanticTokensRefreshRequest=ut.SemanticTokensRangeRequest=ut.SemanticTokensDeltaRequest=ut.SemanticTokensRequest=ut.SemanticTokensRegistrationType=ut.TokenFormat=void 0;var Wt=Te(),Rh;(function(r){r.Relative="relative"})(Rh||(ut.TokenFormat=Rh={}));var Ln;(function(r){r.method="textDocument/semanticTokens",r.type=new Wt.RegistrationType(r.method)})(Ln||(ut.SemanticTokensRegistrationType=Ln={}));var Sh;(function(r){r.method="textDocument/semanticTokens/full",r.messageDirection=Wt.MessageDirection.clientToServer,r.type=new Wt.ProtocolRequestType(r.method),r.registrationMethod=Ln.method})(Sh||(ut.SemanticTokensRequest=Sh={}));var Ih;(function(r){r.method="textDocument/semanticTokens/full/delta",r.messageDirection=Wt.MessageDirection.clientToServer,r.type=new Wt.ProtocolRequestType(r.method),r.registrationMethod=Ln.method})(Ih||(ut.SemanticTokensDeltaRequest=Ih={}));var Lh;(function(r){r.method="textDocument/semanticTokens/range",r.messageDirection=Wt.MessageDirection.clientToServer,r.type=new Wt.ProtocolRequestType(r.method),r.registrationMethod=Ln.method})(Lh||(ut.SemanticTokensRangeRequest=Lh={}));var Ch;(function(r){r.method="workspace/semanticTokens/refresh",r.messageDirection=Wt.MessageDirection.serverToClient,r.type=new Wt.ProtocolRequestType0(r.method)})(Ch||(ut.SemanticTokensRefreshRequest=Ch={}))});var Th=T(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.ShowDocumentRequest=void 0;var Bh=Te(),Mh;(function(r){r.method="window/showDocument",r.messageDirection=Bh.MessageDirection.serverToClient,r.type=new Bh.ProtocolRequestType(r.method)})(Mh||(go.ShowDocumentRequest=Mh={}))});var Fh=T(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});mo.LinkedEditingRangeRequest=void 0;var xh=Te(),Oh;(function(r){r.method="textDocument/linkedEditingRange",r.messageDirection=xh.MessageDirection.clientToServer,r.type=new xh.ProtocolRequestType(r.method)})(Oh||(mo.LinkedEditingRangeRequest=Oh={}))});var Kh=T(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.WillDeleteFilesRequest=et.DidDeleteFilesNotification=et.DidRenameFilesNotification=et.WillRenameFilesRequest=et.DidCreateFilesNotification=et.WillCreateFilesRequest=et.FileOperationPatternKind=void 0;var Et=Te(),Nh;(function(r){r.file="file",r.folder="folder"})(Nh||(et.FileOperationPatternKind=Nh={}));var qh;(function(r){r.method="workspace/willCreateFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolRequestType(r.method)})(qh||(et.WillCreateFilesRequest=qh={}));var jh;(function(r){r.method="workspace/didCreateFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolNotificationType(r.method)})(jh||(et.DidCreateFilesNotification=jh={}));var Uh;(function(r){r.method="workspace/willRenameFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolRequestType(r.method)})(Uh||(et.WillRenameFilesRequest=Uh={}));var _h;(function(r){r.method="workspace/didRenameFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolNotificationType(r.method)})(_h||(et.DidRenameFilesNotification=_h={}));var Qh;(function(r){r.method="workspace/didDeleteFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolNotificationType(r.method)})(Qh||(et.DidDeleteFilesNotification=Qh={}));var Gh;(function(r){r.method="workspace/willDeleteFiles",r.messageDirection=Et.MessageDirection.clientToServer,r.type=new Et.ProtocolRequestType(r.method)})(Gh||(et.WillDeleteFilesRequest=Gh={}))});var Jh=T(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.MonikerRequest=ar.MonikerKind=ar.UniquenessLevel=void 0;var Yh=Te(),Wh;(function(r){r.document="document",r.project="project",r.group="group",r.scheme="scheme",r.global="global"})(Wh||(ar.UniquenessLevel=Wh={}));var Vh;(function(r){r.$import="import",r.$export="export",r.local="local"})(Vh||(ar.MonikerKind=Vh={}));var Hh;(function(r){r.method="textDocument/moniker",r.messageDirection=Yh.MessageDirection.clientToServer,r.type=new Yh.ProtocolRequestType(r.method)})(Hh||(ar.MonikerRequest=Hh={}))});var $h=T(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.TypeHierarchySubtypesRequest=cr.TypeHierarchySupertypesRequest=cr.TypeHierarchyPrepareRequest=void 0;var Zr=Te(),Zh;(function(r){r.method="textDocument/prepareTypeHierarchy",r.messageDirection=Zr.MessageDirection.clientToServer,r.type=new Zr.ProtocolRequestType(r.method)})(Zh||(cr.TypeHierarchyPrepareRequest=Zh={}));var Xh;(function(r){r.method="typeHierarchy/supertypes",r.messageDirection=Zr.MessageDirection.clientToServer,r.type=new Zr.ProtocolRequestType(r.method)})(Xh||(cr.TypeHierarchySupertypesRequest=Xh={}));var zh;(function(r){r.method="typeHierarchy/subtypes",r.messageDirection=Zr.MessageDirection.clientToServer,r.type=new Zr.ProtocolRequestType(r.method)})(zh||(cr.TypeHierarchySubtypesRequest=zh={}))});var rp=T(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.InlineValueRefreshRequest=Xr.InlineValueRequest=void 0;var Ao=Te(),ep;(function(r){r.method="textDocument/inlineValue",r.messageDirection=Ao.MessageDirection.clientToServer,r.type=new Ao.ProtocolRequestType(r.method)})(ep||(Xr.InlineValueRequest=ep={}));var tp;(function(r){r.method="workspace/inlineValue/refresh",r.messageDirection=Ao.MessageDirection.serverToClient,r.type=new Ao.ProtocolRequestType0(r.method)})(tp||(Xr.InlineValueRefreshRequest=tp={}))});var sp=T(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.InlayHintRefreshRequest=ur.InlayHintResolveRequest=ur.InlayHintRequest=void 0;var zr=Te(),np;(function(r){r.method="textDocument/inlayHint",r.messageDirection=zr.MessageDirection.clientToServer,r.type=new zr.ProtocolRequestType(r.method)})(np||(ur.InlayHintRequest=np={}));var ip;(function(r){r.method="inlayHint/resolve",r.messageDirection=zr.MessageDirection.clientToServer,r.type=new zr.ProtocolRequestType(r.method)})(ip||(ur.InlayHintResolveRequest=ip={}));var op;(function(r){r.method="workspace/inlayHint/refresh",r.messageDirection=zr.MessageDirection.serverToClient,r.type=new zr.ProtocolRequestType0(r.method)})(op||(ur.InlayHintRefreshRequest=op={}))});var hp=T(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.DiagnosticRefreshRequest=Dt.WorkspaceDiagnosticRequest=Dt.DocumentDiagnosticRequest=Dt.DocumentDiagnosticReportKind=Dt.DiagnosticServerCancellationData=void 0;var fp=Er(),ew=io(),$r=Te(),ap;(function(r){function e(t){let n=t;return n&&ew.boolean(n.retriggerRequest)}r.is=e})(ap||(Dt.DiagnosticServerCancellationData=ap={}));var cp;(function(r){r.Full="full",r.Unchanged="unchanged"})(cp||(Dt.DocumentDiagnosticReportKind=cp={}));var up;(function(r){r.method="textDocument/diagnostic",r.messageDirection=$r.MessageDirection.clientToServer,r.type=new $r.ProtocolRequestType(r.method),r.partialResult=new fp.ProgressType})(up||(Dt.DocumentDiagnosticRequest=up={}));var lp;(function(r){r.method="workspace/diagnostic",r.messageDirection=$r.MessageDirection.clientToServer,r.type=new $r.ProtocolRequestType(r.method),r.partialResult=new fp.ProgressType})(lp||(Dt.WorkspaceDiagnosticRequest=lp={}));var dp;(function(r){r.method="workspace/diagnostic/refresh",r.messageDirection=$r.MessageDirection.serverToClient,r.type=new $r.ProtocolRequestType0(r.method)})(dp||(Dt.DiagnosticRefreshRequest=dp={}))});var vp=T(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.DidCloseNotebookDocumentNotification=qe.DidSaveNotebookDocumentNotification=qe.DidChangeNotebookDocumentNotification=qe.NotebookCellArrayChange=qe.DidOpenNotebookDocumentNotification=qe.NotebookDocumentSyncRegistrationType=qe.NotebookDocument=qe.NotebookCell=qe.ExecutionSummary=qe.NotebookCellKind=void 0;var Cn=no(),kt=io(),Ft=Te(),Dc;(function(r){r.Markup=1,r.Code=2;function e(t){return t===1||t===2}r.is=e})(Dc||(qe.NotebookCellKind=Dc={}));var Pc;(function(r){function e(i,o){let s={executionOrder:i};return(o===!0||o===!1)&&(s.success=o),s}r.create=e;function t(i){let o=i;return kt.objectLiteral(o)&&Cn.uinteger.is(o.executionOrder)&&(o.success===void 0||kt.boolean(o.success))}r.is=t;function n(i,o){return i===o?!0:i==null||o===null||o===void 0?!1:i.executionOrder===o.executionOrder&&i.success===o.success}r.equals=n})(Pc||(qe.ExecutionSummary=Pc={}));var yo;(function(r){function e(o,s){return{kind:o,document:s}}r.create=e;function t(o){let s=o;return kt.objectLiteral(s)&&Dc.is(s.kind)&&Cn.DocumentUri.is(s.document)&&(s.metadata===void 0||kt.objectLiteral(s.metadata))}r.is=t;function n(o,s){let a=new Set;return o.document!==s.document&&a.add("document"),o.kind!==s.kind&&a.add("kind"),o.executionSummary!==s.executionSummary&&a.add("executionSummary"),(o.metadata!==void 0||s.metadata!==void 0)&&!i(o.metadata,s.metadata)&&a.add("metadata"),(o.executionSummary!==void 0||s.executionSummary!==void 0)&&!Pc.equals(o.executionSummary,s.executionSummary)&&a.add("executionSummary"),a}r.diff=n;function i(o,s){if(o===s)return!0;if(o==null||s===null||s===void 0||typeof o!=typeof s||typeof o!="object")return!1;let a=Array.isArray(o),d=Array.isArray(s);if(a!==d)return!1;if(a&&d){if(o.length!==s.length)return!1;for(let c=0;c<o.length;c++)if(!i(o[c],s[c]))return!1}if(kt.objectLiteral(o)&&kt.objectLiteral(s)){let c=Object.keys(o),h=Object.keys(s);if(c.length!==h.length||(c.sort(),h.sort(),!i(c,h)))return!1;for(let m=0;m<c.length;m++){let w=c[m];if(!i(o[w],s[w]))return!1}}return!0}})(yo||(qe.NotebookCell=yo={}));var pp;(function(r){function e(n,i,o,s){return{uri:n,notebookType:i,version:o,cells:s}}r.create=e;function t(n){let i=n;return kt.objectLiteral(i)&&kt.string(i.uri)&&Cn.integer.is(i.version)&&kt.typedArray(i.cells,yo.is)}r.is=t})(pp||(qe.NotebookDocument=pp={}));var en;(function(r){r.method="notebookDocument/sync",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.RegistrationType(r.method)})(en||(qe.NotebookDocumentSyncRegistrationType=en={}));var gp;(function(r){r.method="notebookDocument/didOpen",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(gp||(qe.DidOpenNotebookDocumentNotification=gp={}));var mp;(function(r){function e(n){let i=n;return kt.objectLiteral(i)&&Cn.uinteger.is(i.start)&&Cn.uinteger.is(i.deleteCount)&&(i.cells===void 0||kt.typedArray(i.cells,yo.is))}r.is=e;function t(n,i,o){let s={start:n,deleteCount:i};return o!==void 0&&(s.cells=o),s}r.create=t})(mp||(qe.NotebookCellArrayChange=mp={}));var Ap;(function(r){r.method="notebookDocument/didChange",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(Ap||(qe.DidChangeNotebookDocumentNotification=Ap={}));var yp;(function(r){r.method="notebookDocument/didSave",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(yp||(qe.DidSaveNotebookDocumentNotification=yp={}));var bp;(function(r){r.method="notebookDocument/didClose",r.messageDirection=Ft.MessageDirection.clientToServer,r.type=new Ft.ProtocolNotificationType(r.method),r.registrationMethod=en.method})(bp||(qe.DidCloseNotebookDocumentNotification=bp={}))});var Dp=T(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.InlineCompletionRequest=void 0;var wp=Te(),Ep;(function(r){r.method="textDocument/inlineCompletion",r.messageDirection=wp.MessageDirection.clientToServer,r.type=new wp.ProtocolRequestType(r.method)})(Ep||(bo.InlineCompletionRequest=Ep={}))});var Fg=T(p=>{"use strict";Object.defineProperty(p,"__esModule",{value:!0});p.WorkspaceSymbolRequest=p.CodeActionResolveRequest=p.CodeActionRequest=p.DocumentSymbolRequest=p.DocumentHighlightRequest=p.ReferencesRequest=p.DefinitionRequest=p.SignatureHelpRequest=p.SignatureHelpTriggerKind=p.HoverRequest=p.CompletionResolveRequest=p.CompletionRequest=p.CompletionTriggerKind=p.PublishDiagnosticsNotification=p.WatchKind=p.RelativePattern=p.FileChangeType=p.DidChangeWatchedFilesNotification=p.WillSaveTextDocumentWaitUntilRequest=p.WillSaveTextDocumentNotification=p.TextDocumentSaveReason=p.DidSaveTextDocumentNotification=p.DidCloseTextDocumentNotification=p.DidChangeTextDocumentNotification=p.TextDocumentContentChangeEvent=p.DidOpenTextDocumentNotification=p.TextDocumentSyncKind=p.TelemetryEventNotification=p.LogMessageNotification=p.ShowMessageRequest=p.ShowMessageNotification=p.MessageType=p.DidChangeConfigurationNotification=p.ExitNotification=p.ShutdownRequest=p.InitializedNotification=p.InitializeErrorCodes=p.InitializeRequest=p.WorkDoneProgressOptions=p.TextDocumentRegistrationOptions=p.StaticRegistrationOptions=p.PositionEncodingKind=p.FailureHandlingKind=p.ResourceOperationKind=p.UnregistrationRequest=p.RegistrationRequest=p.DocumentSelector=p.NotebookCellTextDocumentFilter=p.NotebookDocumentFilter=p.TextDocumentFilter=void 0;p.MonikerRequest=p.MonikerKind=p.UniquenessLevel=p.WillDeleteFilesRequest=p.DidDeleteFilesNotification=p.WillRenameFilesRequest=p.DidRenameFilesNotification=p.WillCreateFilesRequest=p.DidCreateFilesNotification=p.FileOperationPatternKind=p.LinkedEditingRangeRequest=p.ShowDocumentRequest=p.SemanticTokensRegistrationType=p.SemanticTokensRefreshRequest=p.SemanticTokensRangeRequest=p.SemanticTokensDeltaRequest=p.SemanticTokensRequest=p.TokenFormat=p.CallHierarchyPrepareRequest=p.CallHierarchyOutgoingCallsRequest=p.CallHierarchyIncomingCallsRequest=p.WorkDoneProgressCancelNotification=p.WorkDoneProgressCreateRequest=p.WorkDoneProgress=p.SelectionRangeRequest=p.DeclarationRequest=p.FoldingRangeRefreshRequest=p.FoldingRangeRequest=p.ColorPresentationRequest=p.DocumentColorRequest=p.ConfigurationRequest=p.DidChangeWorkspaceFoldersNotification=p.WorkspaceFoldersRequest=p.TypeDefinitionRequest=p.ImplementationRequest=p.ApplyWorkspaceEditRequest=p.ExecuteCommandRequest=p.PrepareRenameRequest=p.RenameRequest=p.PrepareSupportDefaultBehavior=p.DocumentOnTypeFormattingRequest=p.DocumentRangesFormattingRequest=p.DocumentRangeFormattingRequest=p.DocumentFormattingRequest=p.DocumentLinkResolveRequest=p.DocumentLinkRequest=p.CodeLensRefreshRequest=p.CodeLensResolveRequest=p.CodeLensRequest=p.WorkspaceSymbolResolveRequest=void 0;p.InlineCompletionRequest=p.DidCloseNotebookDocumentNotification=p.DidSaveNotebookDocumentNotification=p.DidChangeNotebookDocumentNotification=p.NotebookCellArrayChange=p.DidOpenNotebookDocumentNotification=p.NotebookDocumentSyncRegistrationType=p.NotebookDocument=p.NotebookCell=p.ExecutionSummary=p.NotebookCellKind=p.DiagnosticRefreshRequest=p.WorkspaceDiagnosticRequest=p.DocumentDiagnosticRequest=p.DocumentDiagnosticReportKind=p.DiagnosticServerCancellationData=p.InlayHintRefreshRequest=p.InlayHintResolveRequest=p.InlayHintRequest=p.InlineValueRefreshRequest=p.InlineValueRequest=p.TypeHierarchySupertypesRequest=p.TypeHierarchySubtypesRequest=p.TypeHierarchyPrepareRequest=void 0;var q=Te(),Pp=no(),Ye=io(),tw=Jf();Object.defineProperty(p,"ImplementationRequest",{enumerable:!0,get:function(){return tw.ImplementationRequest}});var rw=zf();Object.defineProperty(p,"TypeDefinitionRequest",{enumerable:!0,get:function(){return rw.TypeDefinitionRequest}});var Mg=th();Object.defineProperty(p,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return Mg.WorkspaceFoldersRequest}});Object.defineProperty(p,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return Mg.DidChangeWorkspaceFoldersNotification}});var nw=ih();Object.defineProperty(p,"ConfigurationRequest",{enumerable:!0,get:function(){return nw.ConfigurationRequest}});var Tg=ah();Object.defineProperty(p,"DocumentColorRequest",{enumerable:!0,get:function(){return Tg.DocumentColorRequest}});Object.defineProperty(p,"ColorPresentationRequest",{enumerable:!0,get:function(){return Tg.ColorPresentationRequest}});var xg=lh();Object.defineProperty(p,"FoldingRangeRequest",{enumerable:!0,get:function(){return xg.FoldingRangeRequest}});Object.defineProperty(p,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return xg.FoldingRangeRefreshRequest}});var iw=hh();Object.defineProperty(p,"DeclarationRequest",{enumerable:!0,get:function(){return iw.DeclarationRequest}});var ow=mh();Object.defineProperty(p,"SelectionRangeRequest",{enumerable:!0,get:function(){return ow.SelectionRangeRequest}});var Cc=vh();Object.defineProperty(p,"WorkDoneProgress",{enumerable:!0,get:function(){return Cc.WorkDoneProgress}});Object.defineProperty(p,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return Cc.WorkDoneProgressCreateRequest}});Object.defineProperty(p,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return Cc.WorkDoneProgressCancelNotification}});var kc=Ph();Object.defineProperty(p,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return kc.CallHierarchyIncomingCallsRequest}});Object.defineProperty(p,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return kc.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(p,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return kc.CallHierarchyPrepareRequest}});var tn=kh();Object.defineProperty(p,"TokenFormat",{enumerable:!0,get:function(){return tn.TokenFormat}});Object.defineProperty(p,"SemanticTokensRequest",{enumerable:!0,get:function(){return tn.SemanticTokensRequest}});Object.defineProperty(p,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return tn.SemanticTokensDeltaRequest}});Object.defineProperty(p,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return tn.SemanticTokensRangeRequest}});Object.defineProperty(p,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return tn.SemanticTokensRefreshRequest}});Object.defineProperty(p,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return tn.SemanticTokensRegistrationType}});var sw=Th();Object.defineProperty(p,"ShowDocumentRequest",{enumerable:!0,get:function(){return sw.ShowDocumentRequest}});var aw=Fh();Object.defineProperty(p,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return aw.LinkedEditingRangeRequest}});var Dr=Kh();Object.defineProperty(p,"FileOperationPatternKind",{enumerable:!0,get:function(){return Dr.FileOperationPatternKind}});Object.defineProperty(p,"DidCreateFilesNotification",{enumerable:!0,get:function(){return Dr.DidCreateFilesNotification}});Object.defineProperty(p,"WillCreateFilesRequest",{enumerable:!0,get:function(){return Dr.WillCreateFilesRequest}});Object.defineProperty(p,"DidRenameFilesNotification",{enumerable:!0,get:function(){return Dr.DidRenameFilesNotification}});Object.defineProperty(p,"WillRenameFilesRequest",{enumerable:!0,get:function(){return Dr.WillRenameFilesRequest}});Object.defineProperty(p,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return Dr.DidDeleteFilesNotification}});Object.defineProperty(p,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return Dr.WillDeleteFilesRequest}});var Bc=Jh();Object.defineProperty(p,"UniquenessLevel",{enumerable:!0,get:function(){return Bc.UniquenessLevel}});Object.defineProperty(p,"MonikerKind",{enumerable:!0,get:function(){return Bc.MonikerKind}});Object.defineProperty(p,"MonikerRequest",{enumerable:!0,get:function(){return Bc.MonikerRequest}});var Mc=$h();Object.defineProperty(p,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return Mc.TypeHierarchyPrepareRequest}});Object.defineProperty(p,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return Mc.TypeHierarchySubtypesRequest}});Object.defineProperty(p,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return Mc.TypeHierarchySupertypesRequest}});var Og=rp();Object.defineProperty(p,"InlineValueRequest",{enumerable:!0,get:function(){return Og.InlineValueRequest}});Object.defineProperty(p,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return Og.InlineValueRefreshRequest}});var Tc=sp();Object.defineProperty(p,"InlayHintRequest",{enumerable:!0,get:function(){return Tc.InlayHintRequest}});Object.defineProperty(p,"InlayHintResolveRequest",{enumerable:!0,get:function(){return Tc.InlayHintResolveRequest}});Object.defineProperty(p,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return Tc.InlayHintRefreshRequest}});var kn=hp();Object.defineProperty(p,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return kn.DiagnosticServerCancellationData}});Object.defineProperty(p,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return kn.DocumentDiagnosticReportKind}});Object.defineProperty(p,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return kn.DocumentDiagnosticRequest}});Object.defineProperty(p,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return kn.WorkspaceDiagnosticRequest}});Object.defineProperty(p,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return kn.DiagnosticRefreshRequest}});var Nt=vp();Object.defineProperty(p,"NotebookCellKind",{enumerable:!0,get:function(){return Nt.NotebookCellKind}});Object.defineProperty(p,"ExecutionSummary",{enumerable:!0,get:function(){return Nt.ExecutionSummary}});Object.defineProperty(p,"NotebookCell",{enumerable:!0,get:function(){return Nt.NotebookCell}});Object.defineProperty(p,"NotebookDocument",{enumerable:!0,get:function(){return Nt.NotebookDocument}});Object.defineProperty(p,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return Nt.NotebookDocumentSyncRegistrationType}});Object.defineProperty(p,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidOpenNotebookDocumentNotification}});Object.defineProperty(p,"NotebookCellArrayChange",{enumerable:!0,get:function(){return Nt.NotebookCellArrayChange}});Object.defineProperty(p,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidChangeNotebookDocumentNotification}});Object.defineProperty(p,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidSaveNotebookDocumentNotification}});Object.defineProperty(p,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return Nt.DidCloseNotebookDocumentNotification}});var cw=Dp();Object.defineProperty(p,"InlineCompletionRequest",{enumerable:!0,get:function(){return cw.InlineCompletionRequest}});var Rc;(function(r){function e(t){let n=t;return Ye.string(n)||Ye.string(n.language)||Ye.string(n.scheme)||Ye.string(n.pattern)}r.is=e})(Rc||(p.TextDocumentFilter=Rc={}));var Sc;(function(r){function e(t){let n=t;return Ye.objectLiteral(n)&&(Ye.string(n.notebookType)||Ye.string(n.scheme)||Ye.string(n.pattern))}r.is=e})(Sc||(p.NotebookDocumentFilter=Sc={}));var Ic;(function(r){function e(t){let n=t;return Ye.objectLiteral(n)&&(Ye.string(n.notebook)||Sc.is(n.notebook))&&(n.language===void 0||Ye.string(n.language))}r.is=e})(Ic||(p.NotebookCellTextDocumentFilter=Ic={}));var Lc;(function(r){function e(t){if(!Array.isArray(t))return!1;for(let n of t)if(!Ye.string(n)&&!Rc.is(n)&&!Ic.is(n))return!1;return!0}r.is=e})(Lc||(p.DocumentSelector=Lc={}));var Rp;(function(r){r.method="client/registerCapability",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType(r.method)})(Rp||(p.RegistrationRequest=Rp={}));var Sp;(function(r){r.method="client/unregisterCapability",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType(r.method)})(Sp||(p.UnregistrationRequest=Sp={}));var Ip;(function(r){r.Create="create",r.Rename="rename",r.Delete="delete"})(Ip||(p.ResourceOperationKind=Ip={}));var Lp;(function(r){r.Abort="abort",r.Transactional="transactional",r.TextOnlyTransactional="textOnlyTransactional",r.Undo="undo"})(Lp||(p.FailureHandlingKind=Lp={}));var Cp;(function(r){r.UTF8="utf-8",r.UTF16="utf-16",r.UTF32="utf-32"})(Cp||(p.PositionEncodingKind=Cp={}));var kp;(function(r){function e(t){let n=t;return n&&Ye.string(n.id)&&n.id.length>0}r.hasId=e})(kp||(p.StaticRegistrationOptions=kp={}));var Bp;(function(r){function e(t){let n=t;return n&&(n.documentSelector===null||Lc.is(n.documentSelector))}r.is=e})(Bp||(p.TextDocumentRegistrationOptions=Bp={}));var Mp;(function(r){function e(n){let i=n;return Ye.objectLiteral(i)&&(i.workDoneProgress===void 0||Ye.boolean(i.workDoneProgress))}r.is=e;function t(n){let i=n;return i&&Ye.boolean(i.workDoneProgress)}r.hasWorkDoneProgress=t})(Mp||(p.WorkDoneProgressOptions=Mp={}));var Tp;(function(r){r.method="initialize",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Tp||(p.InitializeRequest=Tp={}));var xp;(function(r){r.unknownProtocolVersion=1})(xp||(p.InitializeErrorCodes=xp={}));var Op;(function(r){r.method="initialized",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Op||(p.InitializedNotification=Op={}));var Fp;(function(r){r.method="shutdown",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType0(r.method)})(Fp||(p.ShutdownRequest=Fp={}));var Np;(function(r){r.method="exit",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType0(r.method)})(Np||(p.ExitNotification=Np={}));var qp;(function(r){r.method="workspace/didChangeConfiguration",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(qp||(p.DidChangeConfigurationNotification=qp={}));var jp;(function(r){r.Error=1,r.Warning=2,r.Info=3,r.Log=4,r.Debug=5})(jp||(p.MessageType=jp={}));var Up;(function(r){r.method="window/showMessage",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(Up||(p.ShowMessageNotification=Up={}));var _p;(function(r){r.method="window/showMessageRequest",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType(r.method)})(_p||(p.ShowMessageRequest=_p={}));var Qp;(function(r){r.method="window/logMessage",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(Qp||(p.LogMessageNotification=Qp={}));var Gp;(function(r){r.method="telemetry/event",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(Gp||(p.TelemetryEventNotification=Gp={}));var Kp;(function(r){r.None=0,r.Full=1,r.Incremental=2})(Kp||(p.TextDocumentSyncKind=Kp={}));var Yp;(function(r){r.method="textDocument/didOpen",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Yp||(p.DidOpenTextDocumentNotification=Yp={}));var Wp;(function(r){function e(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}r.isIncremental=e;function t(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}r.isFull=t})(Wp||(p.TextDocumentContentChangeEvent=Wp={}));var Vp;(function(r){r.method="textDocument/didChange",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Vp||(p.DidChangeTextDocumentNotification=Vp={}));var Hp;(function(r){r.method="textDocument/didClose",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Hp||(p.DidCloseTextDocumentNotification=Hp={}));var Jp;(function(r){r.method="textDocument/didSave",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Jp||(p.DidSaveTextDocumentNotification=Jp={}));var Zp;(function(r){r.Manual=1,r.AfterDelay=2,r.FocusOut=3})(Zp||(p.TextDocumentSaveReason=Zp={}));var Xp;(function(r){r.method="textDocument/willSave",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})(Xp||(p.WillSaveTextDocumentNotification=Xp={}));var zp;(function(r){r.method="textDocument/willSaveWaitUntil",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(zp||(p.WillSaveTextDocumentWaitUntilRequest=zp={}));var $p;(function(r){r.method="workspace/didChangeWatchedFiles",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolNotificationType(r.method)})($p||(p.DidChangeWatchedFilesNotification=$p={}));var eg;(function(r){r.Created=1,r.Changed=2,r.Deleted=3})(eg||(p.FileChangeType=eg={}));var tg;(function(r){function e(t){let n=t;return Ye.objectLiteral(n)&&(Pp.URI.is(n.baseUri)||Pp.WorkspaceFolder.is(n.baseUri))&&Ye.string(n.pattern)}r.is=e})(tg||(p.RelativePattern=tg={}));var rg;(function(r){r.Create=1,r.Change=2,r.Delete=4})(rg||(p.WatchKind=rg={}));var ng;(function(r){r.method="textDocument/publishDiagnostics",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolNotificationType(r.method)})(ng||(p.PublishDiagnosticsNotification=ng={}));var ig;(function(r){r.Invoked=1,r.TriggerCharacter=2,r.TriggerForIncompleteCompletions=3})(ig||(p.CompletionTriggerKind=ig={}));var og;(function(r){r.method="textDocument/completion",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(og||(p.CompletionRequest=og={}));var sg;(function(r){r.method="completionItem/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(sg||(p.CompletionResolveRequest=sg={}));var ag;(function(r){r.method="textDocument/hover",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(ag||(p.HoverRequest=ag={}));var cg;(function(r){r.Invoked=1,r.TriggerCharacter=2,r.ContentChange=3})(cg||(p.SignatureHelpTriggerKind=cg={}));var ug;(function(r){r.method="textDocument/signatureHelp",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(ug||(p.SignatureHelpRequest=ug={}));var lg;(function(r){r.method="textDocument/definition",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(lg||(p.DefinitionRequest=lg={}));var dg;(function(r){r.method="textDocument/references",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(dg||(p.ReferencesRequest=dg={}));var fg;(function(r){r.method="textDocument/documentHighlight",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(fg||(p.DocumentHighlightRequest=fg={}));var hg;(function(r){r.method="textDocument/documentSymbol",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(hg||(p.DocumentSymbolRequest=hg={}));var pg;(function(r){r.method="textDocument/codeAction",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(pg||(p.CodeActionRequest=pg={}));var gg;(function(r){r.method="codeAction/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(gg||(p.CodeActionResolveRequest=gg={}));var mg;(function(r){r.method="workspace/symbol",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(mg||(p.WorkspaceSymbolRequest=mg={}));var Ag;(function(r){r.method="workspaceSymbol/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Ag||(p.WorkspaceSymbolResolveRequest=Ag={}));var yg;(function(r){r.method="textDocument/codeLens",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(yg||(p.CodeLensRequest=yg={}));var bg;(function(r){r.method="codeLens/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(bg||(p.CodeLensResolveRequest=bg={}));var vg;(function(r){r.method="workspace/codeLens/refresh",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType0(r.method)})(vg||(p.CodeLensRefreshRequest=vg={}));var wg;(function(r){r.method="textDocument/documentLink",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(wg||(p.DocumentLinkRequest=wg={}));var Eg;(function(r){r.method="documentLink/resolve",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Eg||(p.DocumentLinkResolveRequest=Eg={}));var Dg;(function(r){r.method="textDocument/formatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Dg||(p.DocumentFormattingRequest=Dg={}));var Pg;(function(r){r.method="textDocument/rangeFormatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Pg||(p.DocumentRangeFormattingRequest=Pg={}));var Rg;(function(r){r.method="textDocument/rangesFormatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Rg||(p.DocumentRangesFormattingRequest=Rg={}));var Sg;(function(r){r.method="textDocument/onTypeFormatting",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Sg||(p.DocumentOnTypeFormattingRequest=Sg={}));var Ig;(function(r){r.Identifier=1})(Ig||(p.PrepareSupportDefaultBehavior=Ig={}));var Lg;(function(r){r.method="textDocument/rename",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Lg||(p.RenameRequest=Lg={}));var Cg;(function(r){r.method="textDocument/prepareRename",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(Cg||(p.PrepareRenameRequest=Cg={}));var kg;(function(r){r.method="workspace/executeCommand",r.messageDirection=q.MessageDirection.clientToServer,r.type=new q.ProtocolRequestType(r.method)})(kg||(p.ExecuteCommandRequest=kg={}));var Bg;(function(r){r.method="workspace/applyEdit",r.messageDirection=q.MessageDirection.serverToClient,r.type=new q.ProtocolRequestType("workspace/applyEdit")})(Bg||(p.ApplyWorkspaceEditRequest=Bg={}))});var qg=T(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.createProtocolConnection=void 0;var Ng=Er();function uw(r,e,t,n){return Ng.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,Ng.createMessageConnection)(r,e,t,n)}vo.createProtocolConnection=uw});var Ug=T(lt=>{"use strict";var lw=lt&<.__createBinding||(Object.create?(function(r,e,t,n){n===void 0&&(n=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,n,i)}):(function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]})),wo=lt&<.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&lw(e,r,t)};Object.defineProperty(lt,"__esModule",{value:!0});lt.LSPErrorCodes=lt.createProtocolConnection=void 0;wo(Er(),lt);wo(no(),lt);wo(Te(),lt);wo(Fg(),lt);var dw=qg();Object.defineProperty(lt,"createProtocolConnection",{enumerable:!0,get:function(){return dw.createProtocolConnection}});var jg;(function(r){r.lspReservedErrorRangeStart=-32899,r.RequestFailed=-32803,r.ServerCancelled=-32802,r.ContentModified=-32801,r.RequestCancelled=-32800,r.lspReservedErrorRangeEnd=-32800})(jg||(lt.LSPErrorCodes=jg={}))});var Qg=T(qt=>{"use strict";var fw=qt&&qt.__createBinding||(Object.create?(function(r,e,t,n){n===void 0&&(n=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,n,i)}):(function(r,e,t,n){n===void 0&&(n=t),r[n]=e[t]})),_g=qt&&qt.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&fw(e,r,t)};Object.defineProperty(qt,"__esModule",{value:!0});qt.createProtocolConnection=void 0;var hw=Ac();_g(Ac(),qt);_g(Ug(),qt);function pw(r,e,t,n){return(0,hw.createMessageConnection)(r,e,t,n)}qt.createProtocolConnection=pw});var gw=T((bD,Gg)=>{"use strict";Gg.exports=Qg()});var vw="Factorio Modding Tool Kit",dr="2.0.12";var $=ve(eu(),1),Ss=ve(Gl(),1);import*as Qt from"path";import*as od from"fs/promises";import*as mr from"os";var Kl;(()=>{"use strict";var r={975:N=>{function R(S){if(typeof S!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(S))}function _(S,M){for(var x,P="",V=0,j=-1,ne=0,oe=0;oe<=S.length;++oe){if(oe<S.length)x=S.charCodeAt(oe);else{if(x===47)break;x=47}if(x===47){if(!(j===oe-1||ne===1))if(j!==oe-1&&ne===2){if(P.length<2||V!==2||P.charCodeAt(P.length-1)!==46||P.charCodeAt(P.length-2)!==46){if(P.length>2){var je=P.lastIndexOf("/");if(je!==P.length-1){je===-1?(P="",V=0):V=(P=P.slice(0,je)).length-1-P.lastIndexOf("/"),j=oe,ne=0;continue}}else if(P.length===2||P.length===1){P="",V=0,j=oe,ne=0;continue}}M&&(P.length>0?P+="/..":P="..",V=2)}else P.length>0?P+="/"+S.slice(j+1,oe):P=S.slice(j+1,oe),V=oe-j-1;j=oe,ne=0}else x===46&&ne!==-1?++ne:ne=-1}return P}var K={resolve:function(){for(var S,M="",x=!1,P=arguments.length-1;P>=-1&&!x;P--){var V;P>=0?V=arguments[P]:(S===void 0&&(S=process.cwd()),V=S),R(V),V.length!==0&&(M=V+"/"+M,x=V.charCodeAt(0)===47)}return M=_(M,!x),x?M.length>0?"/"+M:"/":M.length>0?M:"."},normalize:function(S){if(R(S),S.length===0)return".";var M=S.charCodeAt(0)===47,x=S.charCodeAt(S.length-1)===47;return(S=_(S,!M)).length!==0||M||(S="."),S.length>0&&x&&(S+="/"),M?"/"+S:S},isAbsolute:function(S){return R(S),S.length>0&&S.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var S,M=0;M<arguments.length;++M){var x=arguments[M];R(x),x.length>0&&(S===void 0?S=x:S+="/"+x)}return S===void 0?".":K.normalize(S)},relative:function(S,M){if(R(S),R(M),S===M||(S=K.resolve(S))===(M=K.resolve(M)))return"";for(var x=1;x<S.length&&S.charCodeAt(x)===47;++x);for(var P=S.length,V=P-x,j=1;j<M.length&&M.charCodeAt(j)===47;++j);for(var ne=M.length-j,oe=V<ne?V:ne,je=-1,pe=0;pe<=oe;++pe){if(pe===oe){if(ne>oe){if(M.charCodeAt(j+pe)===47)return M.slice(j+pe+1);if(pe===0)return M.slice(j+pe)}else V>oe&&(S.charCodeAt(x+pe)===47?je=pe:pe===0&&(je=0));break}var it=S.charCodeAt(x+pe);if(it!==M.charCodeAt(j+pe))break;it===47&&(je=pe)}var Bt="";for(pe=x+je+1;pe<=P;++pe)pe!==P&&S.charCodeAt(pe)!==47||(Bt.length===0?Bt+="..":Bt+="/..");return Bt.length>0?Bt+M.slice(j+je):(j+=je,M.charCodeAt(j)===47&&++j,M.slice(j))},_makeLong:function(S){return S},dirname:function(S){if(R(S),S.length===0)return".";for(var M=S.charCodeAt(0),x=M===47,P=-1,V=!0,j=S.length-1;j>=1;--j)if((M=S.charCodeAt(j))===47){if(!V){P=j;break}}else V=!1;return P===-1?x?"/":".":x&&P===1?"//":S.slice(0,P)},basename:function(S,M){if(M!==void 0&&typeof M!="string")throw new TypeError('"ext" argument must be a string');R(S);var x,P=0,V=-1,j=!0;if(M!==void 0&&M.length>0&&M.length<=S.length){if(M.length===S.length&&M===S)return"";var ne=M.length-1,oe=-1;for(x=S.length-1;x>=0;--x){var je=S.charCodeAt(x);if(je===47){if(!j){P=x+1;break}}else oe===-1&&(j=!1,oe=x+1),ne>=0&&(je===M.charCodeAt(ne)?--ne==-1&&(V=x):(ne=-1,V=oe))}return P===V?V=oe:V===-1&&(V=S.length),S.slice(P,V)}for(x=S.length-1;x>=0;--x)if(S.charCodeAt(x)===47){if(!j){P=x+1;break}}else V===-1&&(j=!1,V=x+1);return V===-1?"":S.slice(P,V)},extname:function(S){R(S);for(var M=-1,x=0,P=-1,V=!0,j=0,ne=S.length-1;ne>=0;--ne){var oe=S.charCodeAt(ne);if(oe!==47)P===-1&&(V=!1,P=ne+1),oe===46?M===-1?M=ne:j!==1&&(j=1):M!==-1&&(j=-1);else if(!V){x=ne+1;break}}return M===-1||P===-1||j===0||j===1&&M===P-1&&M===x+1?"":S.slice(M,P)},format:function(S){if(S===null||typeof S!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof S);return(function(M,x){var P=x.dir||x.root,V=x.base||(x.name||"")+(x.ext||"");return P?P===x.root?P+V:P+"/"+V:V})(0,S)},parse:function(S){R(S);var M={root:"",dir:"",base:"",ext:"",name:""};if(S.length===0)return M;var x,P=S.charCodeAt(0),V=P===47;V?(M.root="/",x=1):x=0;for(var j=-1,ne=0,oe=-1,je=!0,pe=S.length-1,it=0;pe>=x;--pe)if((P=S.charCodeAt(pe))!==47)oe===-1&&(je=!1,oe=pe+1),P===46?j===-1?j=pe:it!==1&&(it=1):j!==-1&&(it=-1);else if(!je){ne=pe+1;break}return j===-1||oe===-1||it===0||it===1&&j===oe-1&&j===ne+1?oe!==-1&&(M.base=M.name=ne===0&&V?S.slice(1,oe):S.slice(ne,oe)):(ne===0&&V?(M.name=S.slice(1,j),M.base=S.slice(1,oe)):(M.name=S.slice(ne,j),M.base=S.slice(ne,oe)),M.ext=S.slice(j,oe)),ne>0?M.dir=S.slice(0,ne-1):V&&(M.dir="/"),M},sep:"/",delimiter:":",win32:null,posix:null};K.posix=K,N.exports=K}},e={};function t(N){var R=e[N];if(R!==void 0)return R.exports;var _=e[N]={exports:{}};return r[N](_,_.exports,t),_.exports}t.d=(N,R)=>{for(var _ in R)t.o(R,_)&&!t.o(N,_)&&Object.defineProperty(N,_,{enumerable:!0,get:R[_]})},t.o=(N,R)=>Object.prototype.hasOwnProperty.call(N,R),t.r=N=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(N,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(N,"__esModule",{value:!0})};var n={};let i;t.r(n),t.d(n,{URI:()=>w,Utils:()=>Ge}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let o=/^\w[\w\d+.-]*$/,s=/^\//,a=/^\/\//;function d(N,R){if(!N.scheme&&R)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${N.authority}", path: "${N.path}", query: "${N.query}", fragment: "${N.fragment}"}`);if(N.scheme&&!o.test(N.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(N.path){if(N.authority){if(!s.test(N.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(a.test(N.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let c="",h="/",m=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class w{static isUri(R){return R instanceof w||!!R&&typeof R.authority=="string"&&typeof R.fragment=="string"&&typeof R.path=="string"&&typeof R.query=="string"&&typeof R.scheme=="string"&&typeof R.fsPath=="string"&&typeof R.with=="function"&&typeof R.toString=="function"}scheme;authority;path;query;fragment;constructor(R,_,K,S,M,x=!1){typeof R=="object"?(this.scheme=R.scheme||c,this.authority=R.authority||c,this.path=R.path||c,this.query=R.query||c,this.fragment=R.fragment||c):(this.scheme=(function(P,V){return P||V?P:"file"})(R,x),this.authority=_||c,this.path=(function(P,V){switch(P){case"https":case"http":case"file":V?V[0]!==h&&(V=h+V):V=h}return V})(this.scheme,K||c),this.query=S||c,this.fragment=M||c,d(this,x))}get fsPath(){return Y(this,!1)}with(R){if(!R)return this;let{scheme:_,authority:K,path:S,query:M,fragment:x}=R;return _===void 0?_=this.scheme:_===null&&(_=c),K===void 0?K=this.authority:K===null&&(K=c),S===void 0?S=this.path:S===null&&(S=c),M===void 0?M=this.query:M===null&&(M=c),x===void 0?x=this.fragment:x===null&&(x=c),_===this.scheme&&K===this.authority&&S===this.path&&M===this.query&&x===this.fragment?this:new O(_,K,S,M,x)}static parse(R,_=!1){let K=m.exec(R);return K?new O(K[2]||c,se(K[4]||c),se(K[5]||c),se(K[7]||c),se(K[9]||c),_):new O(c,c,c,c,c)}static file(R){let _=c;if(i&&(R=R.replace(/\\/g,h)),R[0]===h&&R[1]===h){let K=R.indexOf(h,2);K===-1?(_=R.substring(2),R=h):(_=R.substring(2,K),R=R.substring(K)||h)}return new O("file",_,R,c,c)}static from(R){let _=new O(R.scheme,R.authority,R.path,R.query,R.fragment);return d(_,!0),_}toString(R=!1){return W(this,R)}toJSON(){return this}static revive(R){if(R){if(R instanceof w)return R;{let _=new O(R);return _._formatted=R.external,_._fsPath=R._sep===b?R.fsPath:null,_}}return R}}let b=i?1:void 0;class O extends w{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=Y(this,!1)),this._fsPath}toString(R=!1){return R?W(this,!0):(this._formatted||(this._formatted=W(this,!1)),this._formatted)}toJSON(){let R={$mid:1};return this._fsPath&&(R.fsPath=this._fsPath,R._sep=b),this._formatted&&(R.external=this._formatted),this.path&&(R.path=this.path),this.scheme&&(R.scheme=this.scheme),this.authority&&(R.authority=this.authority),this.query&&(R.query=this.query),this.fragment&&(R.fragment=this.fragment),R}}let k={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function X(N,R,_){let K,S=-1;for(let M=0;M<N.length;M++){let x=N.charCodeAt(M);if(x>=97&&x<=122||x>=65&&x<=90||x>=48&&x<=57||x===45||x===46||x===95||x===126||R&&x===47||_&&x===91||_&&x===93||_&&x===58)S!==-1&&(K+=encodeURIComponent(N.substring(S,M)),S=-1),K!==void 0&&(K+=N.charAt(M));else{K===void 0&&(K=N.substr(0,M));let P=k[x];P!==void 0?(S!==-1&&(K+=encodeURIComponent(N.substring(S,M)),S=-1),K+=P):S===-1&&(S=M)}}return S!==-1&&(K+=encodeURIComponent(N.substring(S))),K!==void 0?K:N}function te(N){let R;for(let _=0;_<N.length;_++){let K=N.charCodeAt(_);K===35||K===63?(R===void 0&&(R=N.substr(0,_)),R+=k[K]):R!==void 0&&(R+=N[_])}return R!==void 0?R:N}function Y(N,R){let _;return _=N.authority&&N.path.length>1&&N.scheme==="file"?`//${N.authority}${N.path}`:N.path.charCodeAt(0)===47&&(N.path.charCodeAt(1)>=65&&N.path.charCodeAt(1)<=90||N.path.charCodeAt(1)>=97&&N.path.charCodeAt(1)<=122)&&N.path.charCodeAt(2)===58?R?N.path.substr(1):N.path[1].toLowerCase()+N.path.substr(2):N.path,i&&(_=_.replace(/\//g,"\\")),_}function W(N,R){let _=R?te:X,K="",{scheme:S,authority:M,path:x,query:P,fragment:V}=N;if(S&&(K+=S,K+=":"),(M||S==="file")&&(K+=h,K+=h),M){let j=M.indexOf("@");if(j!==-1){let ne=M.substr(0,j);M=M.substr(j+1),j=ne.lastIndexOf(":"),j===-1?K+=_(ne,!1,!1):(K+=_(ne.substr(0,j),!1,!1),K+=":",K+=_(ne.substr(j+1),!1,!0)),K+="@"}M=M.toLowerCase(),j=M.lastIndexOf(":"),j===-1?K+=_(M,!1,!0):(K+=_(M.substr(0,j),!1,!0),K+=M.substr(j))}if(x){if(x.length>=3&&x.charCodeAt(0)===47&&x.charCodeAt(2)===58){let j=x.charCodeAt(1);j>=65&&j<=90&&(x=`/${String.fromCharCode(j+32)}:${x.substr(3)}`)}else if(x.length>=2&&x.charCodeAt(1)===58){let j=x.charCodeAt(0);j>=65&&j<=90&&(x=`${String.fromCharCode(j+32)}:${x.substr(2)}`)}K+=_(x,!0,!1)}return P&&(K+="?",K+=_(P,!1,!1)),V&&(K+="#",K+=R?V:X(V,!1,!1)),K}function F(N){try{return decodeURIComponent(N)}catch{return N.length>3?N.substr(0,3)+F(N.substr(3)):N}}let C=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function se(N){return N.match(C)?N.replace(C,(R=>F(R))):N}var Q=t(975);let ye=Q.posix||Q,xe="/";var Ge;(function(N){N.joinPath=function(R,..._){return R.with({path:ye.join(R.path,..._)})},N.resolvePath=function(R,..._){let K=R.path,S=!1;K[0]!==xe&&(K=xe+K,S=!0);let M=ye.resolve(K,..._);return S&&M[0]===xe&&!R.authority&&(M=M.substring(1)),R.with({path:M})},N.dirname=function(R){if(R.path.length===0||R.path===xe)return R;let _=ye.dirname(R.path);return _.length===1&&_.charCodeAt(0)===46&&(_=""),R.with({path:_})},N.basename=function(R){return ye.basename(R.path)},N.extname=function(R){return ye.extname(R.path)}})(Ge||(Ge={})),Kl=n})();var{URI:Ze,Utils:It}=Kl;function pr(r){let e=r.toString().match(/\]=*$/),t="=".repeat((r.toString().match(/\]=*\]/g)||[]).map(n=>n.length-1).reduce((n,i)=>Math.max(n,i),e?e[0].length:0));return Buffer.concat([Buffer.from(`[${t}[`),r,Buffer.from(`]${t}]`)])}function rb(r){return`"${r.replaceAll(/[\x00-\x1f'"\\]/gm,e=>{switch(e){case" ":return"\\t";case"\r":return"\\r";case`
|
|
55
55
|
`:return"\\n";case"'":return"\\'";case'"':return'\\"';case"\\":return"\\\\";default:return`\\x${(e.codePointAt(0)??0).toString(16).padStart(2,"0")}`}})}"`}function Yl(r,e){let t=[],n=r.length,i=0;for(;i<n;)t.push(r.subarray(i,i+=e));return t}function Br(r){switch(typeof r){case"object":if(Array.isArray(r)){let e=[Buffer.from("{")];for(let t of r)e.push(Br(t)),e.push(Buffer.from(","));return e.push(Buffer.from("}")),Buffer.concat(e)}else{let e=[Buffer.from("{")];for(let t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e.push(Buffer.from("[")),e.push(Br(t)),e.push(Buffer.from("]=")),e.push(Br(r[t])),e.push(Buffer.from(",")));return e.push(Buffer.from("}")),Buffer.concat(e)}case"string":return Buffer.from(rb(r));case"boolean":case"number":return Buffer.from(`${r}`)}}function kr(r){if(r>4294967280)throw new Error("Values > 0xFFFFFFF0 are reserved");if(r<0)throw new Error("Value must be positive");r===10?r=4294967295:r===26?r=4294967294:r===13&&(r=4294967293);let e,t,n,i;if(r<128)return Buffer.from([r]);r<2048?(i=2,e=192,t=31,n=6):r<65536?(i=3,e=224,t=15,n=12):r<2097152?(i=4,e=240,t=7,n=18):r<67108864?(i=5,e=248,t=3,n=24):(i=6,e=252,t=3,n=30);let o=Buffer.alloc(i);o[0]=e|r>>n&t;for(let s=n-6,a=1;s>=0;s-=6,a++)o[a]=128|r>>s&63;return o}function mi(r){let e=Buffer.from(r,"utf8"),t=kr(e.length);return Buffer.concat([t,e])}function gi(r){let e=kr(r.line),t=0,n=new Array;return r.condition&&(t|=1,n.push(mi(r.condition.replace(/[\r\n]+/g," ")))),r.hitCondition&&(t|=2,n.push(mi(r.hitCondition.replace(/[\r\n]+/g," ")))),r.logMessage&&(t|=4,n.push(mi(r.logMessage.replace(/[\r\n]+/g," ")))),Buffer.concat([e,Buffer.from([t]),Buffer.concat(n)])}function Wl(r,e){let t=mi(r),n=e.filter(a=>!a.condition&&!a.hitCondition&&!a.logMessage).map(a=>a.line),i;if(n.length===0)i=Buffer.from([255]);else if(n.length===10){let a=Buffer.from([254]);i=Buffer.concat([a,Buffer.concat(n.map(d=>kr(d)))])}else if(n.length===26){let a=Buffer.from([253]);i=Buffer.concat([a,Buffer.concat(n.map(d=>kr(d)))])}else if(n.length===13){let a=Buffer.from([252]);i=Buffer.concat([a,Buffer.concat(n.map(d=>kr(d)))])}else{let a=Buffer.from([n.length]);i=Buffer.concat([a,Buffer.concat(n.map(d=>kr(d)))])}let o=e.filter(a=>a.condition||a.hitCondition||a.logMessage),s;if(o.length===0)s=Buffer.from([255]);else if(o.length===10){let a=Buffer.from([254]);s=Buffer.concat([a,Buffer.concat(o.map(d=>gi(d)))])}else if(o.length===26){let a=Buffer.from([253]);s=Buffer.concat([a,Buffer.concat(o.map(d=>gi(d)))])}else if(o.length===13){let a=Buffer.from([252]);s=Buffer.concat([a,Buffer.concat(o.map(d=>gi(d)))])}else{let a=Buffer.from([o.length]);s=Buffer.concat([a,Buffer.concat(o.map(d=>gi(d)))])}return Buffer.concat([t,i,s])}import{spawn as ob}from"child_process";import{EventEmitter as sb}from"events";import{EventEmitter as nb}from"events";var gn=class extends nb{buf;matchers;constructor(e,t){super(),this.buf=Buffer.alloc(0),this.matchers=t instanceof Buffer?[t]:t,e.on("close",()=>{this.emit("close")}),e.on("end",()=>{this.emit("end")}),e.on("data",n=>{for(this.buf=Buffer.concat([this.buf,n]);this.buf.length>0;){let i=this.matchers.map(s=>this.buf.indexOf(s instanceof Buffer?s:s.start)),o=i.reduce((s,a)=>s===-1?a:a===-1?s:Math.min(s,a));if(o!==-1){let s=this.matchers[i.indexOf(o)];if(s instanceof Buffer)o>0&&this.emit("segment",this.buf.subarray(0,o)),this.buf=this.buf.subarray(o+s.length);else{let a=s;o>0&&(this.emit("segment",this.buf.subarray(0,o)),this.buf=this.buf.subarray(o));let d=this.buf.indexOf(a.end,a.start.length);if(d!==-1)this.emit("segment",this.buf.subarray(a.start.length,d)),this.buf=this.buf.subarray(d+a.end.length);else return}}else return}})}};var ed=ve(zl(),1);import*as $l from"path";var ab=[Buffer.from(`
|
|
56
56
|
`),Buffer.from("lua_debug> ")],cb=[Buffer.from(`
|
|
57
|
-
`),{start:Buffer.from([239,183,174]),end:Buffer.from([239,183,175])}],Ai=class extends sb{factorio;hasNativeDebug;constructor(e,t,n){super();let i={cwd:$l.dirname(e),env:Object.assign({},process.env,n,{SteamAppId:"427520"})};this.factorio=ob(e,t,i),this.factorio.on("exit",(a,d)=>this.emit("exit",a,d)),new gn(this.factorio.stderr,ab).on("segment",a=>{a.length===1&&a[0]===13||this.emit("stderr",a)}),new gn(this.factorio.stdout,cb).on("segment",a=>{a.length===1&&a[0]===13||this.emit("stdout",a)})}writeStdin(e){return this.factorio.stdin.write(e)}kill(){if(this.hasNativeDebug)this.factorio.pid&&(0,ed.default)(this.factorio.pid);else{this.factorio.kill();try{this.factorio.kill("SIGKILL")}catch{}}}};import{Readable as ub}from"stream";var Mr=class extends ub{constructor(e){super(),this.push(e),this.push(null)}readUInt8(){return this.read(1).readUInt8()}readUInt16LE(){return this.read(2).readUInt16LE()}readUInt32LE(){return this.read(4).readUInt32LE()}readInt32LE(){return this.read(4).readInt32LE()}readBigInt64LE(){return this.read(8).readBigInt64LE()}readBigUInt64LE(){return this.read(8).readBigUInt64LE()}readDoubleLE(){return this.read(8).readDoubleLE()}readPackedUInt_8_32(){let e=this.readUInt8();return e===255&&(e=this.readUInt32LE()),e}readPackedUInt_16_32(){let e=this.readUInt16LE();return e===65535&&(e=this.readUInt32LE()),e}readString(e){return e===0?"":this.read(e).toString("utf8")}};import*as st from"fs/promises";import*as xt from"path";var td=Kn("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");var rd=Kn("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");var fb={debugadapter:{version:dr,zip:td},"debugadapter-tests":{version:dr,zip:rd}};async function hb(r,e){let t=await fetch(`https://mods.factorio.com/api/mods/${r}${e?"/full":""}`);if(!t.ok)throw new Error(t.statusText);return await t.json()}var mn=class{constructor(e,t){this.modsPath=e;this.playerdataPath=t;this.Loaded=this.reload()}modsPath;playerdataPath;modList={mods:[]};Loaded;async reload(){let e=xt.resolve(this.modsPath,"./mod-list.json");try{this.modList=JSON.parse(await st.readFile(e,"utf8"))}catch{this.modList={mods:[]}}}async write(){let e=xt.resolve(this.modsPath,"./mod-list.json");return st.writeFile(e,JSON.stringify(this.modList,null,2),"utf8")}async getDownloadCredentials(e){let t=this.playerdataPath??xt.resolve(this.modsPath,"../player-data.json"),n=t?await st.readFile(t,"utf8").then(a=>JSON.parse(a)).catch(()=>{}):void 0;if(n?.["service-token"])return{username:n["service-username"],token:n["service-token"]};let i=await e(n?.["service-username"]),o=await fetch("https://auth.factorio.com/api-login",{method:"POST",body:new URLSearchParams({username:i.username,password:i.password,api_version:"4",require_game_ownership:"true"})});if(!o.ok)throw new Error(o.statusText);let s=await o.json();return n&&(n["service-username"]=s.username,n["service-token"]=s.token,await st.writeFile(t,JSON.stringify(n,void 0,2))),s}async findInstallSource(e,t){if(t.origin!=="portal"){let a=fb[e];if(a)return a;if(t.origin==="bundle")throw new Error(`No bundled package for ${e}`)}let n=await hb(e),i=n.releases[n.releases.length-1],o=await this.getDownloadCredentials(t.credentialPrompt),s=await fetch(`https://mods.factorio.com/${i.download_url}?username=${o.username}&token=${o.token}`);if(!s.ok)throw new Error(s.statusText);return{version:i.version,zip:await s.bytes()}}async installMod(e,t){let n=await this.findInstallSource(e,t),i=n.version,o=this.modList.mods.find(h=>h.name===e),s=o?.enabled?o.version??!0:o?.enabled;async function a(h){let m=xt.resolve(h,"info.json");try{let w=await st.readFile(m,"utf8");if(w){let b=JSON.parse(w);if(b.name===e&&b.version===i)return!0}}catch{}return!1}if(!t.force){if(await a(xt.resolve(this.modsPath,e)))return this.set(e,i),{using:i,from:"folder",previous:s};if(await a(xt.resolve(this.modsPath,`${e}_${i}`)))return this.set(e,i),{using:i,from:"versioned_folder",previous:s};try{return await st.access(xt.resolve(this.modsPath,`${e}_${i}.zip`)),this.set(e,i),{using:i,from:"existing",previous:s}}catch{}}let d=st.writeFile(xt.resolve(this.modsPath,`${e}_${i}.zip`),n.zip),c;if(!t.keepOld){let h=(await st.readdir(this.modsPath,"utf8")).filter(m=>m.startsWith(e)&&m.endsWith(".zip")&&m.substring(e.length,m.length-4).match(/^_[\d\.]+$/)&&m!==`${e}_${i}.zip`);h.length===1&&(await st.unlink(xt.resolve(this.modsPath,h[0])),c=h[0].substring(e.length+1,h[0].length-4))}return this.set(e,i),await d,{using:i,from:"installed",previous:s,replaced:c}}set(e,t){let n=!!t,i=typeof t=="string"?t:void 0,o=this.modList.mods.find(s=>s.name===e);o?(o.enabled=n,o.version=i):this.modList.mods.push({name:e,enabled:n,version:i})}disableAll(){this.modList.mods.forEach(e=>e.enabled=!1)}};function bs(r){if(r.readUInt8()!==0)return"";{let t=r.readPackedUInt_8_32();return r.readString(t)}}function yi(r){let e=r.readUInt8();switch(r.readUInt8(),e){case 0:return{type:e};case 1:return{type:e,value:r.readUInt8()!==0};case 2:return{type:e,value:r.readDoubleLE()};case 3:return{type:e,value:bs(r)};case 4:{let t=r.readUInt32LE(),n=[];for(let i=0;i<t;i++){bs(r);let o=yi(r);n.push(o)}return{type:e,value:n}}case 5:{let t=r.readUInt32LE(),n={};for(let i=0;i<t;i++){let o=bs(r);if(!o)throw new Error("Missing key in PropertyTree Dictionary");let s=yi(r);n[o]=s}return{type:e,value:n}}case 6:return{type:e,value:r.readBigInt64LE()};case 7:return{type:e,value:r.readBigUInt64LE()};default:throw new Error(`Invalid datatype in PropertyTree ${e}`)}}function vs(r){if(!r)return Buffer.from([1]);let e=Buffer.from(r,"utf8"),t=Buffer.alloc(1);return e.length<255?t.writeUInt8(e.length):(t=Buffer.alloc(5),t.writeUInt8(255),t.writeUInt32LE(e.length,1)),Buffer.concat([Buffer.from([0]),t,e])}function Zt(r){return Buffer.from([r,0])}function bi(r){switch(r.type){case 3:return Buffer.concat([Zt(3),vs(r.value)]);case 1:return Buffer.concat([Zt(1),Buffer.from([r.value?1:0])]);case 2:{let e=Buffer.alloc(8);return e.writeDoubleLE(r.value),Buffer.concat([Zt(2),e])}case 6:{let e=Buffer.alloc(8);return e.writeBigInt64LE(r.value),Buffer.concat([Zt(6),e])}case 7:{let e=Buffer.alloc(8);return e.writeBigUInt64LE(r.value),Buffer.concat([Zt(7),e])}case 0:return Zt(0);case 4:{let e=Buffer.alloc(4);return e.writeUInt32LE(r.value.length),Buffer.concat([Zt(4),e,Buffer.concat(r.value.map(t=>Buffer.concat([vs(""),bi(t)])))])}case 5:{let e=[];for(let n in r.value)if(Object.prototype.hasOwnProperty.call(r.value,n)){let i=r.value[n];e.push(Buffer.concat([vs(n),bi(i)]))}let t=Buffer.alloc(4);return t.writeUInt32LE(e.length),Buffer.concat([Zt(5),t,Buffer.concat(e)])}default:throw new Error(`Invalid datatype in PropertyTree ${r.type}`)}}var gr=class r{constructor(e,t,n,i,o){this.main=e;this.major=t;this.minor=n;this.patch=i;this.branch=o}main;major;minor;patch;branch;static load(e){let t=e.readUInt16LE(0),n=e.readUInt16LE(2),i=e.readUInt16LE(4),o=e.readUInt16LE(6),s=e.readUInt8(8);return new r(t,n,i,o,s)}save(){let e=Buffer.alloc(9);return e.writeUInt16LE(this.main,0),e.writeUInt16LE(this.major,2),e.writeUInt16LE(this.minor,4),e.writeUInt16LE(this.patch,6),e.writeUInt8(this.branch,8),e}format(){return`${this.main}.${this.major}.${this.minor}-${this.patch}`}isBeyond(e,t,n,i){return this.main<e?!1:this.main>e||t===void 0?!0:this.major<t?!1:this.major>t||n===void 0?!0:this.minor<n?!1:this.minor>n||i===void 0?!0:this.patch<i?!1:(this.patch>i,!0)}};import ws from"assert";var nd=["startup","runtime-global","runtime-per-user"],vi=class{version;_settings;constructor(e){this.version=gr.load(e.read(9));let t=yi(e);ws(t.type===5);let n={startup:{},"runtime-global":{},"runtime-per-user":{}};for(let i of nd){let o=t.value[i];ws(o.type===5);let s=n[i];for(let a in o.value){let d=o.value[a];ws(d.type===5);let c=d.value.value;switch(c.type){case 3:s[a]={type:"string",value:c.value};break;case 2:s[a]={type:"number",value:c.value};break;case 6:s[a]={type:"int",value:c.value};break;case 1:s[a]={type:"bool",value:c.value};break;case 5:let h=c.value;if("r"in h&&h.r.type===2&&"g"in h&&h.g.type===2&&"b"in h&&h.b.type===2&&"a"in h&&h.a.type===2)s[a]={type:"color",value:{r:h.r.value,g:h.g.value,b:h.b.value,a:h.a.value}};else throw new Error(`Dictionary value in ModSettings Tree does not match any known structure at ${i} ${a}`);break;default:throw new Error(`Unexpected type in ModSettings Tree: ${c.type}`)}}}this._settings=n}get settings(){return this._settings}save(){let e={type:5,value:{}};for(let t of nd){let n=this._settings[t],i={type:5,value:{}};e.value[t]=i;for(let o in n){let s=n[o];switch(s.type){case"string":i.value[o]={type:5,value:{value:{type:3,value:s.value}}};break;case"bool":i.value[o]={type:5,value:{value:{type:1,value:s.value}}};break;case"int":i.value[o]={type:5,value:{value:{type:6,value:s.value}}};break;case"number":i.value[o]={type:5,value:{value:{type:2,value:s.value}}};break;case"color":i.value[o]={type:5,value:{value:{type:5,value:{r:{type:2,value:s.value.r},g:{type:2,value:s.value.g},b:{type:2,value:s.value.b},a:{type:2,value:s.value.a}}}}};break;default:break}}}return Buffer.concat([this.version.save(),bi(e)])}set(e,t,n){n===void 0?delete this._settings[e][t]:this._settings[e][t]=n}get(e,t){return this._settings[e][t]}*list(){for(let e in this._settings)for(let t in this._settings[e]){let n=this._settings[e][t];yield{scope:e,setting:t,value:n.value}}}};var Es=Buffer.from([27,76,117,97,82,0,1,4,8,4,8,0,25,147,13,10,26,10]);function wi(r,e){let t=r.readBigUInt64LE(e);e+=8;let n;return t>0?(n=r.subarray(e,e+Number(t)-1),e+=Number(t)):n=Buffer.alloc(0,0),[n,e]}var Ds=class{constructor(e,t){this.raw=e;this.line=t}raw;line;get Op(){return this.raw&63}get A(){return this.raw>>6&255}get B(){return this.raw>>23&511}get C(){return this.raw>>14&511}get Ax(){return this.raw>>6&67108863}get Bx(){return this.raw>>14&262143}get sBx(){return this.Bx-131071}},Ps=class{name;instack;idx;constructor(e,t){this.instack=e.readUInt8(t)!==0,this.idx=e.readUInt8(t+1)}},Rs=class{name;start;end;dumpsize;constructor(e,t){let n;[n,t]=wi(e,t),this.name=n.toString("utf8"),this.start=e.readUInt32LE(t),t+=4,this.end=e.readUInt32LE(t),t+=4,this.dumpsize=(n.length===0?8:8+n.length+1)+8}},Tr=class{constructor(e,t){this.type=e;this.value=t;switch(e){case 0:if(t!==void 0)throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;case 1:if(typeof t!="boolean")throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;case 3:if(typeof t!="number")throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;case 4:if(!(t instanceof Buffer))throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;default:throw new Error(`Invalid Lua Constant Type: ${e}`)}}type;value;get label(){switch(this.type){case 0:return"nil";case 1:case 3:return this.value.toString();case 4:return`"${this.value.toString("utf8")}"`;default:throw new Error(`Invalid Lua Constant Type: ${this.type} ${this.value}`)}}},Ei=class r{source;nparam;is_vararg;maxstack;locals=[];upvals=[];instruction_count;_instraw;_instlines;constants=[];inner_functions=[];firstline;lastline;nextbyte;constructor(e,t){if(t===void 0){if(!e.subarray(0,Es.length).equals(Es))throw new Error("Invalid Header");t=Es.length}this.firstline=e.readUInt32LE(t),t+=4,this.lastline=e.readUInt32LE(t),t+=4,this.nparam=e[t++],this.is_vararg=e[t++]!==0,this.maxstack=e[t++],this.instruction_count=e.readUInt32LE(t),t+=4,this._instraw=e.subarray(t,t+this.instruction_count*4),t+=this.instruction_count*4;let n=e.readUInt32LE(t);t+=4;for(let c=0;c<n;c++){let h=e[t++];switch(h){case 0:this.constants.push(new Tr(0));break;case 1:this.constants.push(new Tr(1,e[t++]!==0));break;case 3:this.constants.push(new Tr(3,e.readDoubleLE(t))),t+=8;break;case 4:let m;[m,t]=wi(e,t),this.constants.push(new Tr(4,m));break;default:throw new Error(`Invalid Lua Constant Type: ${h}`)}}let i=e.readUInt32LE(t);t+=4;for(let c=0;c<i;c++){let h=new r(e,t);t=h.nextbyte,this.inner_functions.push(h)}let o=e.readUInt32LE(t);t+=4;for(let c=0;c<o;c++)this.upvals.push(new Ps(e,t)),t+=2;{let c;[c,t]=wi(e,t),this.source=c.toString("utf8")}let s=e.readUInt32LE(t);if(t+=4,s!==this.instruction_count)throw new Error("line info count mismatch");this._instlines=e.subarray(t,t+this.instruction_count*4),t+=this.instruction_count*4;let a=e.readUInt32LE(t);t+=4;for(let c=0;c<a;c++){let h=new Rs(e,t);t+=h.dumpsize,this.locals.push(h)}let d=e.readUInt32LE(t);t+=4;for(let c=0;c<d;c++){let h;[h,t]=wi(e,t),this.upvals[c].name=h.toString("utf8")}this.nextbyte=t}_baseAddr;get baseAddr(){return this._baseAddr}rebase(e){let t=e;return this._baseAddr=t,t+=this.instruction_count,this.inner_functions.forEach(n=>{t=n.rebase(t)}),t}_instructions=[];instruction(e){if(e>this.instruction_count-1)return;let t=this._instructions[e];return t===void 0&&(t=new Ds(this._instraw.readUint32LE(e*4),this._instlines.readUint32LE(e*4)),this._instructions[e]=t),t}get lines(){let e=[];for(let t=0;t<this.instruction_count;t++)e[t]=this._instlines.readUInt32LE(t*4);return e}walk_functions(e){e(this),this.inner_functions.forEach(t=>t.walk_functions(e))}getFunctionAtStartLine(e){if(this.firstline===e)return this;if(this.firstline<e&&(this.lastline===0||this.lastline>e)&&this.inner_functions)for(let t=0;t<this.inner_functions.length;t++){let n=this.inner_functions[t].getFunctionAtStartLine(e);if(n)return n}}getInstructionsAtBase(e,t){if(!(t===0||!this._baseAddr)&&this._baseAddr<=e&&this._baseAddr+this.instruction_count>e){let n=e-this._baseAddr,i=[];n+t>this.instruction_count&&(t=this.instruction_count-n);for(let o=0;o<t;o++){let s=this.instruction(o+n);i.push({address:"0x"+(this._baseAddr+n+o).toString(16),instruction:this.getInstructionLabel(o+n),line:s.line,instructionBytes:s.raw.toString(16).padStart(8,"0"),symbol:o+n===0?this.source+":"+this.firstline:void 0})}return i}}getInstructionLabel(e){let t=this.instruction(e);if(!t)throw new Error("Invalid PC");let n=this.instruction(e+1);switch(t.Op){case 1:return`LOADK ${this.getRegisterLabel(e,t.A)} := ${this.constants[t.Bx].label}`;case 2:if(!n)throw new Error("Invalid PC");return`LOADKX ${this.getRegisterLabel(e,t.A)} := ${this.constants[n.Ax].label}`;case 3:return`LOADBOOL ${this.getRegisterLabel(e,t.A)} := ${t.B!==0}${t.C!==0?" pc++":""}`;case 4:return`LOADNIL ${this.getRegisterLabel(e,t.A)}...${this.getRegisterLabel(e,t.A+t.B)})`;case 5:return`GETUPVAL ${this.getRegisterLabel(e,t.A)} := ${this.getUpvalLabel(t.B)}`;case 6:return`GETTABUP ${this.getRegisterLabel(e,t.A)} := ${this.getUpvalLabel(t.B)}[${this.getRegisterOrConstantLabel(e,t.C)}]`;case 7:return`GETTABLE ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}[${this.getRegisterOrConstantLabel(e,t.C)}]`;case 8:return`SETTABUP ${this.getUpvalLabel(t.A)}[${this.getRegisterOrConstantLabel(e,t.B)}] := ${this.getRegisterOrConstantLabel(e,t.C)}`;case 9:return`SETUPVAL ${this.getUpvalLabel(t.B)} := ${this.getRegisterLabel(e,t.A)}`;case 10:return`SETTABLE ${this.getRegisterLabel(e,t.A)}[${this.getRegisterOrConstantLabel(e,t.B)}] := ${this.getRegisterOrConstantLabel(e,t.C)}`;case 11:{let a=t.B,d=this.fb2int(a),c=t.C,h=this.fb2int(c),m=a===d?`${d}`:`${a}->${d}`,w=c===h?`${h}`:`${c}->${h}`;return`NEWTABLE ${this.getRegisterLabel(e,t.A)} := {} size(${m},${w})`}case 12:return`SELF ${this.getRegisterLabel(e,t.A+1)} := ${this.getRegisterLabel(e,t.B)}; ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}[${this.getRegisterOrConstantLabel(e,t.C)}]`;case 13:return`ADD ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} + ${this.getRegisterOrConstantLabel(e,t.C)}`;case 14:return`SUB ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} - ${this.getRegisterOrConstantLabel(e,t.C)}`;case 15:return`MUL ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} * ${this.getRegisterOrConstantLabel(e,t.C)}`;case 16:return`DIV ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} / ${this.getRegisterOrConstantLabel(e,t.C)}`;case 17:return`MOD ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} % ${this.getRegisterOrConstantLabel(e,t.C)}`;case 18:return`POW ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} ^ ${this.getRegisterOrConstantLabel(e,t.C)}`;case 0:return`MOVE ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}`;case 19:return`UNM ${this.getRegisterLabel(e,t.A)} := -${this.getRegisterLabel(e,t.B)}`;case 20:return`NOT ${this.getRegisterLabel(e,t.A)} := not ${this.getRegisterLabel(e,t.B)}`;case 21:return`LEN ${this.getRegisterLabel(e,t.A)} := length of ${this.getRegisterLabel(e,t.B)}`;case 22:return`CONCAT ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}.. ... ..${this.getRegisterLabel(e,t.C)}`;case 23:return`JMP pc+=${t.sBx}${t.A?`; close >= ${t.A-1}`:""}`;case 24:return`EQ if(${this.getRegisterOrConstantLabel(e,t.B)} ${t.A?"~=":"=="} ${this.getRegisterOrConstantLabel(e,t.B)}) then pc++`;case 25:return`LT if(${this.getRegisterOrConstantLabel(e,t.B)} ${t.A?">=":"<"} ${this.getRegisterOrConstantLabel(e,t.B)}) then pc++`;case 26:return`LE if(${this.getRegisterOrConstantLabel(e,t.B)} ${t.A?">":"<="} ${this.getRegisterOrConstantLabel(e,t.B)}) then pc++`;case 27:return`TEST if ${t.C?"not ":""}${this.getRegisterLabel(e,t.A)} then pc++`;case 28:return`TESTSET if ${t.C?"":"not "}${this.getRegisterLabel(e,t.A)} then ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)} else pc++`;case 29:return`CALL ${this.getRegisterLabel(e,t.A)}(${t.B?t.B-1:"var"} args ${t.C?t.C-1:"var"} returns)`;case 30:return`TAILCALL return ${this.getRegisterLabel(e,t.A)}(${t.B?t.B-1:"var"} args)`;case 31:return`RETURN return ${t.B?t.B-1:"var"} results ${t.B>1?`starting at ${this.getRegisterLabel(e,t.A)}`:""}`;case 32:return`FORLOOP ${this.getRegisterLabel(e,t.A)} += ${this.getRegisterLabel(e,t.A+2)}; if ${this.getRegisterLabel(e,t.A)} <= ${this.getRegisterLabel(e,t.A+1)} then { pc+=${t.sBx}; ${this.getRegisterLabel(e,t.A+3)} := ${this.getRegisterLabel(e,t.A)} }`;case 33:return`FORPREP ${this.getRegisterLabel(e,t.A)} -= ${this.getRegisterLabel(e,t.A+2)}; pc += ${t.sBx}`;case 34:return`TFORCALL ${this.getRegisterLabel(e,t.A+3)}...${this.getRegisterLabel(e,t.A+2+t.C)} := ${this.getRegisterLabel(e,t.A)}(${this.getRegisterLabel(e,t.A+1)},${this.getRegisterLabel(e,t.A+2)})`;case 35:return`TFORLOOP if ${this.getRegisterLabel(e,t.A+1)} ~= nil then { ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.A+1)}; pc += ${t.sBx} }`;case 36:let i=t.C-1;if(!t.C){if(!n)throw new Error("Invalid PC");i=n.Ax-1}let o=50;return`SETLIST ${this.getRegisterLabel(e,t.A)}[${i*o+1}...${t.B?i*o+t.B:""}] := ${this.getRegisterLabel(e,t.A+1)}...${t.B?this.getRegisterLabel(e,t.A+t.B):"top"}`;case 37:let s=this.inner_functions[t.Bx];return`CLOSURE ${this.getRegisterLabel(e,t.A)} := closure(${s.source}:${s.firstline}-${s.lastline})`;case 38:return`VARARG ${this.getRegisterLabel(e,t.A)}...${t.B?this.getRegisterLabel(e,t.A+t.B-2):"top"}`;case 39:return"EXTRAARG";default:return`UNKNOWN OP(${t.Op}) A(${t.A}) B(${t.B}) C(${t.C})`}}fb2int(e){let t=e>>3&31;return t===0?e:(e&7)+8<<t-1}getRegisterOrConstantLabel(e,t){return t&256?this.constants[t&255].label:this.getRegisterLabel(e,t)}getUpvalLabel(e){return`Up(${this.upvals[e]?.name??e})`}getRegisterLabel(e,t){let n=0;for(let i=0;i<this.locals.length;i++){let o=this.locals[i];if(o.start<=e+1){if(o.end>=e+1){if(n===t)return`R(${o.name})`;n++}}else break}return`R(${t})`}};var An=class extends $.StoppedEvent{constructor(e,t,n){super(e,t,n),this.body.allThreadsStopped=!0}},id=class extends $.LoggingDebugSession{constructor(t,n,i){super();this.activeVersion=t;this.fs=n;this.editorInterface=i;this.objectInfoChunks=Yl(Br(this.activeVersion.docs.generate_debuginfo()),3500),this.setDebuggerLinesStartAt1(!0),this.setDebuggerColumnsStartAt1(!0),this.setDebuggerPathFormat("uri"),this.configDone=new Promise(o=>{this._configurationDone=o})}activeVersion;fs;editorInterface;_configurationDone;configDone;nextBreakpointID=1;breakPoints=new Map;breakPointsChanged=new Set;exceptionFilters=new Set(["unhandled"]);_modules=new Map;_responses=new Map;_dumps=new Map;translations=new Map;buffers=new Map;nextRef=1;factorio;stdinQueue=[];launchArgs;inPrompt=0;pauseRequested=!1;workspaceModInfo=[];initializeRequest(t,n){t.body=t.body||{},t.body.supportsConditionalBreakpoints=!0,t.body.supportsHitConditionalBreakpoints=!0,t.body.supportsEvaluateForHovers=!0,t.body.exceptionBreakpointFilters=[{filter:"pcall",label:"Caught by pcall",default:!1},{filter:"xpcall",label:"Caught by xpcall",default:!1},{filter:"unhandled",label:"Unhandled Exceptions",default:!0}],t.body.supportsSetVariable=!0,t.body.supportsModulesRequest=!0,t.body.supportsLogPoints=!0,t.body.supportsConfigurationDoneRequest=!0,t.body.supportsLoadedSourcesRequest=!0,t.body.supportsBreakpointLocationsRequest=!0,t.body.supportsDisassembleRequest=!0,t.body.supportsSteppingGranularity=!0,t.body.supportsInstructionBreakpoints=!1,this.sendResponse(t)}configurationDoneRequest(t,n){super.configurationDoneRequest(t,n),this._configurationDone?.()}terminateRequest(t,n){this.sendResponse(t),this.terminate()}disconnectRequest(t,n){this.sendResponse(t),this.terminate()}checkFactorioArgs(t){let n=t.factorioArgs;if(n){if(n.includes("--config"))return this.sendEvent(new $.OutputEvent(`Factorio --config option is set by configPath and should not be included in factorioArgs
|
|
57
|
+
`),{start:Buffer.from([239,183,174]),end:Buffer.from([239,183,175])}],Ai=class extends sb{factorio;hasNativeDebug;constructor(e,t,n){super();let i={cwd:$l.dirname(e),env:Object.assign({},process.env,n,{SteamAppId:"427520"})};this.factorio=ob(e,t,i),this.factorio.on("exit",(a,d)=>this.emit("exit",a,d)),new gn(this.factorio.stderr,ab).on("segment",a=>{a.length===1&&a[0]===13||this.emit("stderr",a)}),new gn(this.factorio.stdout,cb).on("segment",a=>{a.length===1&&a[0]===13||this.emit("stdout",a)})}writeStdin(e){return this.factorio.stdin.write(e)}kill(){if(this.hasNativeDebug)this.factorio.pid&&(0,ed.default)(this.factorio.pid);else{this.factorio.kill();try{this.factorio.kill("SIGKILL")}catch{}}}};import{Readable as ub}from"stream";var Mr=class extends ub{constructor(e){super(),this.push(e),this.push(null)}readUInt8(){return this.read(1).readUInt8()}readUInt16LE(){return this.read(2).readUInt16LE()}readUInt32LE(){return this.read(4).readUInt32LE()}readInt32LE(){return this.read(4).readInt32LE()}readBigInt64LE(){return this.read(8).readBigInt64LE()}readBigUInt64LE(){return this.read(8).readBigUInt64LE()}readDoubleLE(){return this.read(8).readDoubleLE()}readPackedUInt_8_32(){let e=this.readUInt8();return e===255&&(e=this.readUInt32LE()),e}readPackedUInt_16_32(){let e=this.readUInt16LE();return e===65535&&(e=this.readUInt32LE()),e}readString(e){return e===0?"":this.read(e).toString("utf8")}};import*as st from"fs/promises";import*as xt from"path";var td=Kn("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");var rd=Kn("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");var fb={debugadapter:{version:dr,zip:td},"debugadapter-tests":{version:dr,zip:rd}};async function hb(r,e){let t=await fetch(`https://mods.factorio.com/api/mods/${r}${e?"/full":""}`);if(!t.ok)throw new Error(t.statusText);return await t.json()}var mn=class{constructor(e,t){this.modsPath=e;this.playerdataPath=t;this.Loaded=this.reload()}modsPath;playerdataPath;modList={mods:[]};Loaded;async reload(){let e=xt.resolve(this.modsPath,"./mod-list.json");try{this.modList=JSON.parse(await st.readFile(e,"utf8"))}catch{this.modList={mods:[]}}}async write(){let e=xt.resolve(this.modsPath,"./mod-list.json");return st.writeFile(e,JSON.stringify(this.modList,null,2),"utf8")}async getDownloadCredentials(e){let t=this.playerdataPath??xt.resolve(this.modsPath,"../player-data.json"),n=t?await st.readFile(t,"utf8").then(a=>JSON.parse(a)).catch(()=>{}):void 0;if(n?.["service-token"])return{username:n["service-username"],token:n["service-token"]};let i=await e(n?.["service-username"]),o=await fetch("https://auth.factorio.com/api-login",{method:"POST",body:new URLSearchParams({username:i.username,password:i.password,api_version:"4",require_game_ownership:"true"})});if(!o.ok)throw new Error(o.statusText);let s=await o.json();return n&&(n["service-username"]=s.username,n["service-token"]=s.token,await st.writeFile(t,JSON.stringify(n,void 0,2))),s}async findInstallSource(e,t){if(t.origin!=="portal"){let a=fb[e];if(a)return a;if(t.origin==="bundle")throw new Error(`No bundled package for ${e}`)}let n=await hb(e),i=n.releases[n.releases.length-1],o=await this.getDownloadCredentials(t.credentialPrompt),s=await fetch(`https://mods.factorio.com/${i.download_url}?username=${o.username}&token=${o.token}`);if(!s.ok)throw new Error(s.statusText);return{version:i.version,zip:await s.bytes()}}async installMod(e,t){let n=await this.findInstallSource(e,t),i=n.version,o=this.modList.mods.find(h=>h.name===e),s=o?.enabled?o.version??!0:o?.enabled;async function a(h){let m=xt.resolve(h,"info.json");try{let w=await st.readFile(m,"utf8");if(w){let b=JSON.parse(w);if(b.name===e&&b.version===i)return!0}}catch{}return!1}if(!t.force){if(await a(xt.resolve(this.modsPath,e)))return this.set(e,i),{using:i,from:"folder",previous:s};if(await a(xt.resolve(this.modsPath,`${e}_${i}`)))return this.set(e,i),{using:i,from:"versioned_folder",previous:s};try{return await st.access(xt.resolve(this.modsPath,`${e}_${i}.zip`)),this.set(e,i),{using:i,from:"existing",previous:s}}catch{}}let d=st.writeFile(xt.resolve(this.modsPath,`${e}_${i}.zip`),n.zip),c;if(!t.keepOld){let h=(await st.readdir(this.modsPath,"utf8")).filter(m=>m.startsWith(e)&&m.endsWith(".zip")&&m.substring(e.length,m.length-4).match(/^_[\d\.]+$/)&&m!==`${e}_${i}.zip`);h.length===1&&(await st.unlink(xt.resolve(this.modsPath,h[0])),c=h[0].substring(e.length+1,h[0].length-4))}return this.set(e,i),await d,{using:i,from:"installed",previous:s,replaced:c}}set(e,t){let n=!!t,i=typeof t=="string"?t:void 0,o=this.modList.mods.find(s=>s.name===e);o?(o.enabled=n,o.version=i):this.modList.mods.push({name:e,enabled:n,version:i})}disableAll(){this.modList.mods.forEach(e=>e.enabled=!1)}};function bs(r){if(r.readUInt8()!==0)return"";{let t=r.readPackedUInt_8_32();return r.readString(t)}}function yi(r){let e=r.readUInt8();switch(r.readUInt8(),e){case 0:return{type:e};case 1:return{type:e,value:r.readUInt8()!==0};case 2:return{type:e,value:r.readDoubleLE()};case 3:return{type:e,value:bs(r)};case 4:{let t=r.readUInt32LE(),n=[];for(let i=0;i<t;i++){bs(r);let o=yi(r);n.push(o)}return{type:e,value:n}}case 5:{let t=r.readUInt32LE(),n={};for(let i=0;i<t;i++){let o=bs(r);if(!o)throw new Error("Missing key in PropertyTree Dictionary");let s=yi(r);n[o]=s}return{type:e,value:n}}case 6:return{type:e,value:r.readBigInt64LE()};case 7:return{type:e,value:r.readBigUInt64LE()};default:throw new Error(`Invalid datatype in PropertyTree ${e}`)}}function vs(r){if(!r)return Buffer.from([1]);let e=Buffer.from(r,"utf8"),t=Buffer.alloc(1);return e.length<255?t.writeUInt8(e.length):(t=Buffer.alloc(5),t.writeUInt8(255),t.writeUInt32LE(e.length,1)),Buffer.concat([Buffer.from([0]),t,e])}function Zt(r){return Buffer.from([r,0])}function bi(r){switch(r.type){case 3:return Buffer.concat([Zt(3),vs(r.value)]);case 1:return Buffer.concat([Zt(1),Buffer.from([r.value?1:0])]);case 2:{let e=Buffer.alloc(8);return e.writeDoubleLE(r.value),Buffer.concat([Zt(2),e])}case 6:{let e=Buffer.alloc(8);return e.writeBigInt64LE(r.value),Buffer.concat([Zt(6),e])}case 7:{let e=Buffer.alloc(8);return e.writeBigUInt64LE(r.value),Buffer.concat([Zt(7),e])}case 0:return Zt(0);case 4:{let e=Buffer.alloc(4);return e.writeUInt32LE(r.value.length),Buffer.concat([Zt(4),e,Buffer.concat(r.value.map(t=>Buffer.concat([vs(""),bi(t)])))])}case 5:{let e=[];for(let n in r.value)if(Object.prototype.hasOwnProperty.call(r.value,n)){let i=r.value[n];e.push(Buffer.concat([vs(n),bi(i)]))}let t=Buffer.alloc(4);return t.writeUInt32LE(e.length),Buffer.concat([Zt(5),t,Buffer.concat(e)])}default:throw new Error(`Invalid datatype in PropertyTree ${r.type}`)}}var gr=class r{constructor(e,t,n,i,o){this.main=e;this.major=t;this.minor=n;this.patch=i;this.branch=o}main;major;minor;patch;branch;static load(e){let t=e.readUInt16LE(0),n=e.readUInt16LE(2),i=e.readUInt16LE(4),o=e.readUInt16LE(6),s=e.readUInt8(8);return new r(t,n,i,o,s)}save(){let e=Buffer.alloc(9);return e.writeUInt16LE(this.main,0),e.writeUInt16LE(this.major,2),e.writeUInt16LE(this.minor,4),e.writeUInt16LE(this.patch,6),e.writeUInt8(this.branch,8),e}format(){return`${this.main}.${this.major}.${this.minor}-${this.patch}`}isBeyond(e,t,n,i){return this.main<e?!1:this.main>e||t===void 0?!0:this.major<t?!1:this.major>t||n===void 0?!0:this.minor<n?!1:this.minor>n||i===void 0?!0:this.patch<i?!1:(this.patch>i,!0)}};import ws from"assert";var nd=["startup","runtime-global","runtime-per-user"],vi=class{version;_settings;constructor(e){this.version=gr.load(e.read(9));let t=yi(e);ws(t.type===5);let n={startup:{},"runtime-global":{},"runtime-per-user":{}};for(let i of nd){let o=t.value[i];ws(o.type===5);let s=n[i];for(let a in o.value){let d=o.value[a];ws(d.type===5);let c=d.value.value;switch(c.type){case 3:s[a]={type:"string",value:c.value};break;case 2:s[a]={type:"number",value:c.value};break;case 6:s[a]={type:"int",value:c.value};break;case 1:s[a]={type:"bool",value:c.value};break;case 5:let h=c.value;if("r"in h&&h.r.type===2&&"g"in h&&h.g.type===2&&"b"in h&&h.b.type===2&&"a"in h&&h.a.type===2)s[a]={type:"color",value:{r:h.r.value,g:h.g.value,b:h.b.value,a:h.a.value}};else throw new Error(`Dictionary value in ModSettings Tree does not match any known structure at ${i} ${a}`);break;default:throw new Error(`Unexpected type in ModSettings Tree: ${c.type}`)}}}this._settings=n}get settings(){return this._settings}save(){let e={type:5,value:{}};for(let t of nd){let n=this._settings[t],i={type:5,value:{}};e.value[t]=i;for(let o in n){let s=n[o];switch(s.type){case"string":i.value[o]={type:5,value:{value:{type:3,value:s.value}}};break;case"bool":i.value[o]={type:5,value:{value:{type:1,value:s.value}}};break;case"int":i.value[o]={type:5,value:{value:{type:6,value:s.value}}};break;case"number":i.value[o]={type:5,value:{value:{type:2,value:s.value}}};break;case"color":i.value[o]={type:5,value:{value:{type:5,value:{r:{type:2,value:s.value.r},g:{type:2,value:s.value.g},b:{type:2,value:s.value.b},a:{type:2,value:s.value.a}}}}};break;default:break}}}return Buffer.concat([this.version.save(),bi(e)])}set(e,t,n){n===void 0?delete this._settings[e][t]:this._settings[e][t]=n}get(e,t){return this._settings[e][t]}*list(){for(let e in this._settings)for(let t in this._settings[e]){let n=this._settings[e][t];yield{scope:e,setting:t,value:n.value}}}};var Es=Buffer.from([27,76,117,97,82,0,1,4,8,4,8,0,25,147,13,10,26,10]);function wi(r,e){let t=r.readBigUInt64LE(e);e+=8;let n;return t>0?(n=r.subarray(e,e+Number(t)-1),e+=Number(t)):n=Buffer.alloc(0,0),[n,e]}var Ds=class{constructor(e,t){this.raw=e;this.line=t}raw;line;get Op(){return this.raw&63}get A(){return this.raw>>6&255}get B(){return this.raw>>23&511}get C(){return this.raw>>14&511}get Ax(){return this.raw>>6&67108863}get Bx(){return this.raw>>14&262143}get sBx(){return this.Bx-131071}},Ps=class{name;instack;idx;constructor(e,t){this.instack=e.readUInt8(t)!==0,this.idx=e.readUInt8(t+1)}},Rs=class{name;start;end;dumpsize;constructor(e,t){let n;[n,t]=wi(e,t),this.name=n.toString("utf8"),this.start=e.readUInt32LE(t),t+=4,this.end=e.readUInt32LE(t),t+=4,this.dumpsize=(n.length===0?8:8+n.length+1)+8}},Tr=class{constructor(e,t){this.type=e;this.value=t;switch(e){case 0:if(t!==void 0)throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;case 1:if(typeof t!="boolean")throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;case 3:if(typeof t!="number")throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;case 4:if(!(t instanceof Buffer))throw new Error(`Invalid Lua Constant: ${e} ${t}`);break;default:throw new Error(`Invalid Lua Constant Type: ${e}`)}}type;value;get label(){switch(this.type){case 0:return"nil";case 1:case 3:return this.value.toString();case 4:return`"${this.value.toString("utf8")}"`;default:throw new Error(`Invalid Lua Constant Type: ${this.type} ${this.value}`)}}},Ei=class r{source;nparam;is_vararg;maxstack;locals=[];upvals=[];instruction_count;_instraw;_instlines;constants=[];inner_functions=[];firstline;lastline;nextbyte;constructor(e,t){if(t===void 0){if(!e.subarray(0,Es.length).equals(Es))throw new Error("Invalid Header");t=Es.length}this.firstline=e.readUInt32LE(t),t+=4,this.lastline=e.readUInt32LE(t),t+=4,this.nparam=e[t++],this.is_vararg=e[t++]!==0,this.maxstack=e[t++],this.instruction_count=e.readUInt32LE(t),t+=4,this._instraw=e.subarray(t,t+this.instruction_count*4),t+=this.instruction_count*4;let n=e.readUInt32LE(t);t+=4;for(let c=0;c<n;c++){let h=e[t++];switch(h){case 0:this.constants.push(new Tr(0));break;case 1:this.constants.push(new Tr(1,e[t++]!==0));break;case 3:this.constants.push(new Tr(3,e.readDoubleLE(t))),t+=8;break;case 4:let m;[m,t]=wi(e,t),this.constants.push(new Tr(4,m));break;default:throw new Error(`Invalid Lua Constant Type: ${h}`)}}let i=e.readUInt32LE(t);t+=4;for(let c=0;c<i;c++){let h=new r(e,t);t=h.nextbyte,this.inner_functions.push(h)}let o=e.readUInt32LE(t);t+=4;for(let c=0;c<o;c++)this.upvals.push(new Ps(e,t)),t+=2;{let c;[c,t]=wi(e,t),this.source=c.toString("utf8")}let s=e.readUInt32LE(t);if(t+=4,s!==this.instruction_count)throw new Error("line info count mismatch");this._instlines=e.subarray(t,t+this.instruction_count*4),t+=this.instruction_count*4;let a=e.readUInt32LE(t);t+=4;for(let c=0;c<a;c++){let h=new Rs(e,t);t+=h.dumpsize,this.locals.push(h)}let d=e.readUInt32LE(t);t+=4;for(let c=0;c<d;c++){let h;[h,t]=wi(e,t),this.upvals[c].name=h.toString("utf8")}this.nextbyte=t}_baseAddr;get baseAddr(){return this._baseAddr}rebase(e){let t=e;return this._baseAddr=t,t+=this.instruction_count,this.inner_functions.forEach(n=>{t=n.rebase(t)}),t}_instructions=[];instruction(e){if(e>this.instruction_count-1)return;let t=this._instructions[e];return t===void 0&&(t=new Ds(this._instraw.readUint32LE(e*4),this._instlines.readUint32LE(e*4)),this._instructions[e]=t),t}get lines(){let e=[];for(let t=0;t<this.instruction_count;t++)e[t]=this._instlines.readUInt32LE(t*4);return e}walk_functions(e){e(this),this.inner_functions.forEach(t=>t.walk_functions(e))}getFunctionAtStartLine(e){if(this.firstline===e)return this;if(this.firstline<e&&(this.lastline===0||this.lastline>e)&&this.inner_functions)for(let t=0;t<this.inner_functions.length;t++){let n=this.inner_functions[t].getFunctionAtStartLine(e);if(n)return n}}getInstructionsAtBase(e,t){if(!(t===0||!this._baseAddr)&&this._baseAddr<=e&&this._baseAddr+this.instruction_count>e){let n=e-this._baseAddr,i=[];n+t>this.instruction_count&&(t=this.instruction_count-n);for(let o=0;o<t;o++){let s=this.instruction(o+n);i.push({address:"0x"+(this._baseAddr+n+o).toString(16),instruction:this.getInstructionLabel(o+n),line:s.line,instructionBytes:s.raw.toString(16).padStart(8,"0"),symbol:o+n===0?this.source+":"+this.firstline:void 0})}return i}}getInstructionLabel(e){let t=this.instruction(e);if(!t)throw new Error("Invalid PC");let n=this.instruction(e+1);switch(t.Op){case 1:return`LOADK ${this.getRegisterLabel(e,t.A)} := ${this.constants[t.Bx].label}`;case 2:if(!n)throw new Error("Invalid PC");return`LOADKX ${this.getRegisterLabel(e,t.A)} := ${this.constants[n.Ax].label}`;case 3:return`LOADBOOL ${this.getRegisterLabel(e,t.A)} := ${t.B!==0}${t.C!==0?" pc++":""}`;case 4:return`LOADNIL ${this.getRegisterLabel(e,t.A)}...${this.getRegisterLabel(e,t.A+t.B)})`;case 5:return`GETUPVAL ${this.getRegisterLabel(e,t.A)} := ${this.getUpvalLabel(t.B)}`;case 6:return`GETTABUP ${this.getRegisterLabel(e,t.A)} := ${this.getUpvalLabel(t.B)}[${this.getRegisterOrConstantLabel(e,t.C)}]`;case 7:return`GETTABLE ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}[${this.getRegisterOrConstantLabel(e,t.C)}]`;case 8:return`SETTABUP ${this.getUpvalLabel(t.A)}[${this.getRegisterOrConstantLabel(e,t.B)}] := ${this.getRegisterOrConstantLabel(e,t.C)}`;case 9:return`SETUPVAL ${this.getUpvalLabel(t.B)} := ${this.getRegisterLabel(e,t.A)}`;case 10:return`SETTABLE ${this.getRegisterLabel(e,t.A)}[${this.getRegisterOrConstantLabel(e,t.B)}] := ${this.getRegisterOrConstantLabel(e,t.C)}`;case 11:{let a=t.B,d=this.fb2int(a),c=t.C,h=this.fb2int(c),m=a===d?`${d}`:`${a}->${d}`,w=c===h?`${h}`:`${c}->${h}`;return`NEWTABLE ${this.getRegisterLabel(e,t.A)} := {} size(${m},${w})`}case 12:return`SELF ${this.getRegisterLabel(e,t.A+1)} := ${this.getRegisterLabel(e,t.B)}; ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}[${this.getRegisterOrConstantLabel(e,t.C)}]`;case 13:return`ADD ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} + ${this.getRegisterOrConstantLabel(e,t.C)}`;case 14:return`SUB ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} - ${this.getRegisterOrConstantLabel(e,t.C)}`;case 15:return`MUL ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} * ${this.getRegisterOrConstantLabel(e,t.C)}`;case 16:return`DIV ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} / ${this.getRegisterOrConstantLabel(e,t.C)}`;case 17:return`MOD ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} % ${this.getRegisterOrConstantLabel(e,t.C)}`;case 18:return`POW ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterOrConstantLabel(e,t.B)} ^ ${this.getRegisterOrConstantLabel(e,t.C)}`;case 0:return`MOVE ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}`;case 19:return`UNM ${this.getRegisterLabel(e,t.A)} := -${this.getRegisterLabel(e,t.B)}`;case 20:return`NOT ${this.getRegisterLabel(e,t.A)} := not ${this.getRegisterLabel(e,t.B)}`;case 21:return`LEN ${this.getRegisterLabel(e,t.A)} := length of ${this.getRegisterLabel(e,t.B)}`;case 22:return`CONCAT ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)}.. ... ..${this.getRegisterLabel(e,t.C)}`;case 23:return`JMP pc+=${t.sBx}${t.A?`; close >= ${t.A-1}`:""}`;case 24:return`EQ if(${this.getRegisterOrConstantLabel(e,t.B)} ${t.A?"~=":"=="} ${this.getRegisterOrConstantLabel(e,t.B)}) then pc++`;case 25:return`LT if(${this.getRegisterOrConstantLabel(e,t.B)} ${t.A?">=":"<"} ${this.getRegisterOrConstantLabel(e,t.B)}) then pc++`;case 26:return`LE if(${this.getRegisterOrConstantLabel(e,t.B)} ${t.A?">":"<="} ${this.getRegisterOrConstantLabel(e,t.B)}) then pc++`;case 27:return`TEST if ${t.C?"not ":""}${this.getRegisterLabel(e,t.A)} then pc++`;case 28:return`TESTSET if ${t.C?"":"not "}${this.getRegisterLabel(e,t.A)} then ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.B)} else pc++`;case 29:return`CALL ${this.getRegisterLabel(e,t.A)}(${t.B?t.B-1:"var"} args ${t.C?t.C-1:"var"} returns)`;case 30:return`TAILCALL return ${this.getRegisterLabel(e,t.A)}(${t.B?t.B-1:"var"} args)`;case 31:return`RETURN return ${t.B?t.B-1:"var"} results ${t.B>1?`starting at ${this.getRegisterLabel(e,t.A)}`:""}`;case 32:return`FORLOOP ${this.getRegisterLabel(e,t.A)} += ${this.getRegisterLabel(e,t.A+2)}; if ${this.getRegisterLabel(e,t.A)} <= ${this.getRegisterLabel(e,t.A+1)} then { pc+=${t.sBx}; ${this.getRegisterLabel(e,t.A+3)} := ${this.getRegisterLabel(e,t.A)} }`;case 33:return`FORPREP ${this.getRegisterLabel(e,t.A)} -= ${this.getRegisterLabel(e,t.A+2)}; pc += ${t.sBx}`;case 34:return`TFORCALL ${this.getRegisterLabel(e,t.A+3)}...${this.getRegisterLabel(e,t.A+2+t.C)} := ${this.getRegisterLabel(e,t.A)}(${this.getRegisterLabel(e,t.A+1)},${this.getRegisterLabel(e,t.A+2)})`;case 35:return`TFORLOOP if ${this.getRegisterLabel(e,t.A+1)} ~= nil then { ${this.getRegisterLabel(e,t.A)} := ${this.getRegisterLabel(e,t.A+1)}; pc += ${t.sBx} }`;case 36:let i=t.C-1;if(!t.C){if(!n)throw new Error("Invalid PC");i=n.Ax-1}let o=50;return`SETLIST ${this.getRegisterLabel(e,t.A)}[${i*o+1}...${t.B?i*o+t.B:""}] := ${this.getRegisterLabel(e,t.A+1)}...${t.B?this.getRegisterLabel(e,t.A+t.B):"top"}`;case 37:let s=this.inner_functions[t.Bx];return`CLOSURE ${this.getRegisterLabel(e,t.A)} := closure(${s.source}:${s.firstline}-${s.lastline})`;case 38:return`VARARG ${this.getRegisterLabel(e,t.A)}...${t.B?this.getRegisterLabel(e,t.A+t.B-2):"top"}`;case 39:return"EXTRAARG";default:return`UNKNOWN OP(${t.Op}) A(${t.A}) B(${t.B}) C(${t.C})`}}fb2int(e){let t=e>>3&31;return t===0?e:(e&7)+8<<t-1}getRegisterOrConstantLabel(e,t){return t&256?this.constants[t&255].label:this.getRegisterLabel(e,t)}getUpvalLabel(e){return`Up(${this.upvals[e]?.name??e})`}getRegisterLabel(e,t){let n=0;for(let i=0;i<this.locals.length;i++){let o=this.locals[i];if(o.start<=e+1){if(o.end>=e+1){if(n===t)return`R(${o.name})`;n++}}else break}return`R(${t})`}};var An=class extends $.StoppedEvent{constructor(e,t,n){super(e,t,n),this.body.allThreadsStopped=!0}},id=class extends $.LoggingDebugSession{constructor(t,n,i){super();this.activeVersion=t;this.fs=n;this.editorInterface=i;this.objectInfoChunks=Yl(Br(this.activeVersion.docs.generate_debuginfo()),3500),this.setDebuggerLinesStartAt1(!0),this.setDebuggerColumnsStartAt1(!0),this.setDebuggerPathFormat("uri"),this.configDone=new Promise(o=>{this._configurationDone=o})}activeVersion;fs;editorInterface;_configurationDone;configDone;nextBreakpointID=1;breakPoints=new Map;breakPointsChanged=new Set;exceptionFilters=new Set(["unhandled"]);_modules=new Map;_responses=new Map;_dumps=new Map;translations=new Map;buffers=new Map;nextRef=1;factorio;stdinQueue=[];launchArgs;inPrompt=0;pauseRequested=!1;workspaceModInfo=[];initializeRequest(t,n){t.body=t.body||{},t.body.supportsConditionalBreakpoints=!0,t.body.supportsHitConditionalBreakpoints=!0,t.body.supportsEvaluateForHovers=!0,t.body.exceptionBreakpointFilters=[{filter:"pcall",label:"Caught by pcall",default:!1},{filter:"xpcall",label:"Caught by xpcall",default:!1},{filter:"unhandled",label:"Unhandled Exceptions",default:!0}],t.body.supportsSetVariable=!0,t.body.supportsModulesRequest=!0,t.body.supportsLogPoints=!0,t.body.supportsConfigurationDoneRequest=!0,t.body.supportsLoadedSourcesRequest=!0,t.body.supportsBreakpointLocationsRequest=!0,t.body.supportsDisassembleRequest=!0,t.body.supportsSteppingGranularity=!0,t.body.supportsInstructionBreakpoints=!1,this.sendResponse(t)}configurationDoneRequest(t,n){super.configurationDoneRequest(t,n),this._configurationDone?.()}terminateRequest(t,n){this.sendResponse(t),this.terminate()}disconnectRequest(t,n){this.sendResponse(t),this.terminate()}checkFactorioArgs(t){let n=t.factorioArgs;if(n){if(n.includes("--config"))return this.sendEvent(new $.OutputEvent(`Factorio --config option is set by configPath and should not be included in factorioArgs
|
|
58
58
|
`,"console")),!1;if(n.includes("--mod-directory"))return this.sendEvent(new $.OutputEvent(`Factorio --mod-directory option is set by modsPath and should not be included in factorioArgs
|
|
59
59
|
`,"console")),!1}return!0}async resolveModsPath(t){let n;if(t.modsPath){n="launch";let i=Qt.posix.normalize(t.modsPath);i.match(/^~[\\\/]/)&&(i=Qt.posix.join(mr.homedir().replace(/\\/g,"/"),i.replace(/^~[\\\/]/,""))),i.match(/[\\\/]$/)&&(i=i.replace(/[\\\/]+$/,""));try{await od.access(i),t.modsPath=i}catch{return this.sendEvent(new $.OutputEvent(`modsPath specified in launch configuration does not exist
|
|
60
60
|
`,"console")),!1}}else{let i=await this.editorInterface.findWorkspaceFiles("**/mod-list.json");if(i.length===1)t.modsPath=Qt.dirname(i[0].fsPath),n="workspace";else{if(i.length>1)return this.sendEvent(new $.OutputEvent(`multiple mod-list.json in workspace, please specify one as modsPath
|
|
@@ -146,4 +146,4 @@ disable-mouse-auto-capture=true
|
|
|
146
146
|
`+t.slice(n.index+n[0].length);else{let i=t.match(/^\[other\]$/m);t=t.slice(0,i.index+i[0].length)+`
|
|
147
147
|
disable-mouse-auto-capture=true
|
|
148
148
|
`+t.slice(i.index+i[0].length)}await this.fs.writeFile(e,Buffer.from(t)),this.iniData=vn.parse(t)}async defaultModsPath(){let e=(await this.configIni())?.path?.["write-data"];if(!e)throw new Error("path.write-data missing in config.ini");return me.posix.normalize(me.resolve(this.translatePath(e),"mods"))}async dataPath(){let e=(await this.configIni().catch(()=>({path:{"read-data":"__PATH__executable__/../../data"}}))).path?.["read-data"];if(!e)throw new Error("path.read-data missing in config.ini");return me.posix.normalize(this.translatePath(e))}async lualibPath(){return me.posix.normalize(me.resolve(await this.dataPath(),"core","lualib"))}async writeDataPath(){let e=(await this.configIni()).path?.["write-data"];if(!e)throw new Error("path.write-data missing in config.ini");return me.posix.normalize(this.translatePath(e))}async scriptOutputPath(){return me.posix.join(await this.writeDataPath(),"script-output")}translatePath(e){if(e.startsWith("__PATH__executable__"))return me.join(me.dirname(this.factorioPath),e.replace("__PATH__executable__",""));if(e.startsWith("__PATH__system-write-data__")){let t=gt.platform()==="win32"?me.resolve(process.env.APPDATA,"Factorio"):gt.platform()==="linux"?me.resolve(gt.homedir(),".factorio"):gt.platform()==="darwin"?me.resolve(gt.homedir(),"Library/Application Support/factorio"):"??";return me.join(t,e.replace("__PATH__system-write-data__",""))}if(e.startsWith("__PATH__system-read-data__")){let t=gt.platform()==="linux"?"/usr/share/factorio":gt.platform()==="darwin"?me.resolve(me.dirname(this.factorioPath),"../data"):me.resolve(me.dirname(this.factorioPath),"../../data");return me.join(t,e.replace("__PATH__system-read-data__",""))}return e}is(e){let t=this.fv;return t.name===e.name&&t.factorioPath===e.factorioPath&&t.configPath===e.configPath&&t.nativeDAP===e.nativeDAP&&t.onlineDocs===e.onlineDocs&&t.docsPath===e.docsPath&&t.protosPath===e.protosPath}};var Gd=(c=>(c[c.Nil=0]="Nil",c[c.BoolFalse=1]="BoolFalse",c[c.BoolTrue=2]="BoolTrue",c[c.Number=3]="Number",c[c.String=4]="String",c[c.Table=5]="Table",c[c.ExistingGCObject=6]="ExistingGCObject",c[c.LuaObject=7]="LuaObject",c[c.TableWithMeta=8]="TableWithMeta",c))(Gd||{}),Kd=(y=>(y[y.LuaEntity=0]="LuaEntity",y[y.LuaInvalidObject=1]="LuaInvalidObject",y[y.LuaRecipe=2]="LuaRecipe",y[y.LuaTechnology=3]="LuaTechnology",y[y.LuaRandomGenerator=4]="LuaRandomGenerator",y[y.LuaForce=5]="LuaForce",y[y.LuaBurner=6]="LuaBurner",y[y.LuaLogisticPoint=7]="LuaLogisticPoint",y[y.LuaDecorativePrototype=8]="LuaDecorativePrototype",y[y.LuaCustomChartTag=9]="LuaCustomChartTag",y[y.LuaPermissionGroups=10]="LuaPermissionGroups",y[y.LuaPermissionGroup=11]="LuaPermissionGroup",y[y.LuaUnitGroup=12]="LuaUnitGroup",y[y.LuaTrain=13]="LuaTrain",y[y.LuaFluidBox=14]="LuaFluidBox",y[y.LuaEntityPrototype=15]="LuaEntityPrototype",y[y.LuaItemPrototype=16]="LuaItemPrototype",y[y.LuaEquipmentGrid=18]="LuaEquipmentGrid",y[y.LuaEquipment=19]="LuaEquipment",y[y.LuaItemStack=20]="LuaItemStack",y[y.LuaPlayer=21]="LuaPlayer",y[y.LuaGui=22]="LuaGui",y[y.LuaGuiElement=23]="LuaGuiElement",y[y.LuaStyle=24]="LuaStyle",y[y.LuaSurface=25]="LuaSurface",y[y.LuaFluidPrototype=26]="LuaFluidPrototype",y[y.LuaGroup=27]="LuaGroup",y[y.LuaTile=28]="LuaTile",y[y.LuaChunkIterator=29]="LuaChunkIterator",y[y.LuaStructMapSettings=30]="LuaStructMapSettings",y[y.LuaTransportLine=31]="LuaTransportLine",y[y.LuaLogisticNetwork=32]="LuaLogisticNetwork",y[y.LuaLogisticCell=33]="LuaLogisticCell",y[y.LuaInventory=34]="LuaInventory",y[y.LuaControlBehavior=35]="LuaControlBehavior",y[y.LuaFlowStatistics=36]="LuaFlowStatistics",y[y.LuaTilePrototype=37]="LuaTilePrototype",y[y.LuaEquipmentPrototype=38]="LuaEquipmentPrototype",y[y.LuaCircuitNetwork=39]="LuaCircuitNetwork",y[y.LuaDamagePrototype=40]="LuaDamagePrototype",y[y.LuaVirtualSignalPrototype=41]="LuaVirtualSignalPrototype",y[y.LuaEquipmentGridPrototype=42]="LuaEquipmentGridPrototype",y[y.LuaRecipePrototype=43]="LuaRecipePrototype",y[y.LuaTechnologyPrototype=44]="LuaTechnologyPrototype",y[y.LuaBurnerPrototype=45]="LuaBurnerPrototype",y[y.LuaElectricEnergySourcePrototype=46]="LuaElectricEnergySourcePrototype",y[y.LuaCustomInputPrototype=47]="LuaCustomInputPrototype",y[y.LuaNoiseLayerPrototype=48]="LuaNoiseLayerPrototype",y[y.LuaAutoplaceControlPrototype=49]="LuaAutoplaceControlPrototype",y[y.LuaModSettingPrototype=50]="LuaModSettingPrototype",y[y.LuaAmmoCategoryPrototype=51]="LuaAmmoCategoryPrototype",y[y.LuaRailPath=52]="LuaRailPath",y[y.LuaFluidBoxPrototype=53]="LuaFluidBoxPrototype",y[y.LuaAISettings=54]="LuaAISettings",y[y.LuaProfiler=55]="LuaProfiler",y[y.LuaNamedNoiseExpression=56]="LuaNamedNoiseExpression",y[y.LuaFuelCategoryPrototype=57]="LuaFuelCategoryPrototype",y[y.LuaResourceCategoryPrototype=58]="LuaResourceCategoryPrototype",y[y.LuaAchievementPrototype=59]="LuaAchievementPrototype",y[y.LuaModuleCategoryPrototype=60]="LuaModuleCategoryPrototype",y[y.LuaEquipmentCategoryPrototype=61]="LuaEquipmentCategoryPrototype",y[y.LuaTrivialSmokePrototype=62]="LuaTrivialSmokePrototype",y[y.LuaShortcutPrototype=63]="LuaShortcutPrototype",y[y.LuaRecipeCategoryPrototype=64]="LuaRecipeCategoryPrototype",y[y.LuaParticlePrototype=65]="LuaParticlePrototype",y[y.LuaFluidEnergySourcePrototype=66]="LuaFluidEnergySourcePrototype",y[y.LuaHeatEnergySourcePrototype=67]="LuaHeatEnergySourcePrototype",y[y.LuaVoidEnergySourcePrototype=68]="LuaVoidEnergySourcePrototype",y[y.LuaFontPrototype=69]="LuaFontPrototype",y[y.LuaQualityPrototype=70]="LuaQualityPrototype",y[y.LuaSpaceLocationPrototype=71]="LuaSpaceLocationPrototype",y[y.LuaPlanet=72]="LuaPlanet",y[y.LuaUndoRedoStack=73]="LuaUndoRedoStack",y[y.LuaSurfacePropertyPrototype=74]="LuaSurfacePropertyPrototype",y[y.LuaCustomEventPrototype=75]="LuaCustomEventPrototype",y[y.LuaSpaceConnectionPrototype=76]="LuaSpaceConnectionPrototype",y[y.LuaActiveTriggerPrototype=77]="LuaActiveTriggerPrototype",y[y.LuaSpacePlatform=78]="LuaSpacePlatform",y[y.LuaHeatBufferPrototype=79]="LuaHeatBufferPrototype",y[y.LuaWireConnector=80]="LuaWireConnector",y[y.LuaAsteroidChunkPrototype=81]="LuaAsteroidChunkPrototype",y[y.LuaLogisticSection=82]="LuaLogisticSection",y[y.LuaRailEnd=83]="LuaRailEnd",y[y.LuaNamedNoiseFunction=84]="LuaNamedNoiseFunction",y[y.LuaCollisionLayerPrototype=85]="LuaCollisionLayerPrototype",y[y.LuaSimulation=86]="LuaSimulation",y[y.LuaAirbornePollutionPrototype=87]="LuaAirbornePollutionPrototype",y[y.LuaItem=88]="LuaItem",y[y.LuaTrainManager=89]="LuaTrainManager",y[y.LuaRenderObject=90]="LuaRenderObject",y[y.LuaRecord=91]="LuaRecord",y[y.LuaBurnerUsagePrototype=92]="LuaBurnerUsagePrototype",y[y.LuaSurfacePrototype=93]="LuaSurfacePrototype",y[y.LuaProcessionPrototype=94]="LuaProcessionPrototype",y[y.LuaProcessionLayerInheritanceGroupPrototype=95]="LuaProcessionLayerInheritanceGroupPrototype",y[y.LuaLogisticSections=96]="LuaLogisticSections",y[y.LuaCargoHatch=97]="LuaCargoHatch",y[y.LuaSchedule=98]="LuaSchedule",y[y.LuaTerritory=99]="LuaTerritory",y[y.LuaSegmentedUnit=100]="LuaSegmentedUnit",y[y.LuaSegment=101]="LuaSegment",y[y.LuaModData=104]="LuaModData",y[y.xLuaFutureObject=-1]="xLuaFutureObject",y))(Kd||{}),$t=(k=>(k[k.None=0]="None",k[k.EntityInventory=1]="EntityInventory",k[k.ControllerInventory=2]="ControllerInventory",k[k.ItemEntity=3]="ItemEntity",k[k.EntityCursorStack=4]="EntityCursorStack",k[k.ControllerCursorStack=5]="ControllerCursorStack",k[k.Inserter=6]="Inserter",k[k.ItemWithInventory=7]="ItemWithInventory",k[k.BeltConnectable=8]="BeltConnectable",k[k.Equipment=9]="Equipment",k[k.TargetableInventory=10]="TargetableInventory",k[k.TargetableItemStack=11]="TargetableItemStack",k[k.PlayerBlueprint=12]="PlayerBlueprint",k[k.ScriptInventory=13]="ScriptInventory",k[k.LinkedInventory=14]="LinkedInventory",k))($t||{}),Yd=(P=>(P[P.Container=1]="Container",P[P.GenericOnOff=2]="GenericOnOff",P[P.Inserter=3]="Inserter",P[P.Lamp=4]="Lamp",P[P.LogisticContainer=5]="LogisticContainer",P[P.Roboport=6]="Roboport",P[P.StorageTank=7]="StorageTank",P[P.TrainStop=8]="TrainStop",P[P.DeciderCombinator=9]="DeciderCombinator",P[P.ArithmeticCombinator=10]="ArithmeticCombinator",P[P.ConstantCombinator=11]="ConstantCombinator",P[P.TransportBelt=12]="TransportBelt",P[P.Accumulator=13]="Accumulator",P[P.RailSignal=14]="RailSignal",P[P.Wall=15]="Wall",P[P.MiningDrill=16]="MiningDrill",P[P.ProgrammableSpeaker=17]="ProgrammableSpeaker",P[P.RailChainSignal=18]="RailChainSignal",P[P.AssemblingMachine=19]="AssemblingMachine",P[P.SelectorCombinator=20]="SelectorCombinator",P[P.Pump=21]="Pump",P[P.RocketSilo=22]="RocketSilo",P[P.Turret=23]="Turret",P[P.Reactor=24]="Reactor",P[P.SpacePlatformHub=25]="SpacePlatformHub",P[P.ArtilleryTurret=26]="ArtilleryTurret",P[P.Radar=27]="Radar",P[P.AsteroidCollector=28]="AsteroidCollector",P[P.DisplayPanel=29]="DisplayPanel",P[P.Loader=30]="Loader",P[P.CargoLandingPad=31]="CargoLandingPad",P[P.AgriculturalTower=32]="AgriculturalTower",P[P.Furnace=33]="Furnace",P[P.ProxyContainer=34]="ProxyContainer",P))(Yd||{}),Mi=(s=>(s[s.ItemProduction=1]="ItemProduction",s[s.FluidProduction=2]="FluidProduction",s[s.KillCount=3]="KillCount",s[s.EntityBuild=6]="EntityBuild",s[s.ElectricNetwork=7]="ElectricNetwork",s[s.Pollution=8]="Pollution",s))(Mi||{}),Qd=class{version;data;gcid=0;gcidmap=[];gcidmaps;constructor(e){this.version=gr.load(e.read(9)),this.data={},this.gcidmaps={};let t=e.readUInt32LE();for(let n=0;n<t;n++){let i=e.readPackedUInt_8_32(),o=e.readString(i),s=e.readPackedUInt_8_32(),a=new Mr(e.read(s));gr.load(a.read(9)),this.gcid=0,this.gcidmap=[];let d=this.loadLuaValue(a);if(a.readableLength>0)throw new Error(`Data for ${o} not fully consumed, ${a.readableLength} bytes left`);e.readUInt8(),this.data[o]=d,this.gcidmaps[o]=this.gcidmap}}find(e,t){return this.gcidmaps[e][t]}loadLuaValue(e){let t=e.readUInt8(),n=Gd[t];switch(n){case"Nil":case"BoolFalse":case"BoolTrue":return{type:n,size:1};case"Number":{let o=e.readDoubleLE();return{type:n,value:o,size:9}}case"String":{let o=e.readPackedUInt_8_32(),s=e.readString(o);return{type:n,value:s,size:2+(o>=255?4:0)+o}}case"TableWithMeta":case"Table":{let o=this.gcid++,s,a=1;if(n==="TableWithMeta"){let m=e.readPackedUInt_8_32();s=e.readString(m),a+=1+(m>=255?4:0)+m}let d=e.readPackedUInt_8_32();a+=d>=255?5:1;let c=[];for(let m=0;m<d;m++){let w=this.loadLuaValue(e),b=this.loadLuaValue(e);c.push({key:w,value:b}),a+=w.size+b.size}let h={type:n,id:o,values:c,meta:s,size:a};return this.gcidmap[o]=h,h}case"ExistingGCObject":let i=e.readPackedUInt_16_32();return{type:n,id:i,size:3+(i>=65535?4:0)};case"LuaObject":{let o="LuaObject",s=this.gcid++,a=e.readUInt32LE(),d=Kd[a],c=Object.assign({type:d},this.loadLuaObjectData(a,e));return{type:o,id:s,value:c,size:5+c.size}}default:throw new Error(`Invalid type ${t} in saved lua value`)}}loadLuaObjectData(e,t){switch(e){case 0:case 11:case 12:case 13:case 14:case 18:case 19:case 21:case 22:case 32:case 33:case 52:case 54:case 72:case 90:case 73:case 78:case 88:case 97:case 98:case 99:case 100:return{target:t.readUInt32LE(),size:4};case 10:case 89:return{size:0};case 2:case 3:{let n=t.readUInt8(),i=t.readUInt16LE();return{force:n,id:i,size:3}}case 4:return{seed:[t.readUInt32LE(),t.readUInt32LE(),t.readUInt32LE()],size:12};case 6:{let n=t.readUInt32LE(),i=t.readUInt32LE();return{entity:n,equipment:i,size:8}}case 7:{let n=t.readUInt8(),i=t.readUInt32LE();return{index:n,owner:i,size:5}}case 9:{let n=t.readUInt8(),i=1,o;this.version.isBeyond(1,2,0,259)||(o=t.readPackedUInt_8_32(),i+=o>=255?5:1);let s=t.readUInt32LE();return i+=4,{force:n,surface:o,target:s,size:i}}case 8:return this.version.isBeyond(1,2,1,4)?{id:t.readUInt16LE(),size:2}:{id:t.readUInt8(),size:1};case 37:return this.version.isBeyond(1,2,0,3)?{id:t.readUInt16LE(),size:2}:{id:t.readUInt8(),size:1};case 5:case 40:case 42:case 49:case 51:case 57:case 58:case 60:case 61:case 62:case 70:case 95:return{id:t.readUInt8(),size:1};case 15:case 16:case 26:case 38:case 41:case 43:case 44:case 47:case 48:case 50:case 59:case 63:case 64:case 65:case 66:case 67:case 68:case 79:case 71:case 74:case 75:case 76:case 77:case 81:case 85:case 87:case 92:case 93:case 94:return{id:t.readUInt16LE(),size:2};case 56:case 84:case 104:return{id:t.readUInt32LE(),size:4};case 28:{let n={x:t.readInt32LE(),y:t.readInt32LE()},i=t.readPackedUInt_8_32();return{position:n,surface:i,size:8+(i>=255?5:1)}}case 23:{if(this.version.isBeyond(1,2,0,415))return{id:t.readUInt32LE(),size:4};{let n=t.readUInt32LE(),i=t.readUInt32LE();return{player:n,index:i,size:8}}}case 24:{let n=t.readUInt32LE(),i=t.readUInt32LE();return{player:n,index:i,size:8}}case 25:{if(this.version.isBeyond(1,2,7,1))return{target:t.readUInt32LE(),size:4};{let n=t.readPackedUInt_8_32();return{surface:n,size:n>=255?5:1}}}case 27:{let n=t.readUInt8(),i=t.readUInt16LE();return{group:n,subgroup:i,size:3}}case 29:{let n=t.readPackedUInt_8_32(),i={x:t.readInt32LE(),y:t.readInt32LE()};return{surface:n,position:i,size:(n>=255?5:1)+8}}case 31:{let n=t.readUInt32LE(),i=t.readUInt8();return{target:n,index:i,size:5}}case 34:{let n=t.readUInt32LE(),i=t.readUInt32LE(),o=t.readUInt32LE(),s=t.readUInt32LE(),a=t.readUInt32LE(),d=t.readUInt8()!==0,c=21,h;if(d){let w=t.readUInt8(),b=t.readUInt16LE(),O=t.readUInt32LE();h={force:w,proto:b,linkid:O},c+=7}let m=t.readUInt8();return c+=1,{entity:n,controller:i,item:o,equipment:s,scriptinv:a,link:h,index:m,size:c}}case 45:case 46:{let n=t.readUInt16LE(),i=t.readUInt16LE();return{entity:n,equipment:i,size:4}}case 53:{let n=t.readUInt16LE(),i=t.readUInt32LE(),o=t.readUInt8();return{entity:n,index:i,targettype:o,size:7}}case 55:return{stopped:t.readUInt8()!==0,size:1};case 69:{let n=t.readUInt8()!==0,i=1,o;if(n){let s=t.readPackedUInt_8_32();o=t.readString(s),i+=(s>=255?5:1)+s}return{name:o,size:i}}case 39:{let n=t.readUInt32LE(),i=4,o,s;return this.version.isBeyond(1,2,0,155)?(s=t.readUInt8(),i+=1):(o=t.readUInt8(),s=t.readUInt8(),i+=2),{target:n,connector:o,wire:s,size:i}}case 80:{let n=t.readUInt32LE(),i=t.readUInt8();return{target:n,connector:i,size:5}}case 83:{let n=t.readUInt32LE(),i=t.readUInt8();return{target:n,direction:i,size:5}}case 91:{let n=t.readUInt16LE(),i=t.readUInt32LE();return{player:n,id:i,size:6}}case 96:{let n=t.readUInt32LE(),i=t.readUInt8();return{target:n,member:i,size:5}}case 101:{let n=t.readUInt32LE(),i=t.readUInt32LE();return{target:n,index:i,size:8}}case 20:return this.loadLuaItemStack(t);case 35:return this.loadLuaControlBehavior(t);case 36:return this.loadLuaFlowStatistics(t);case 82:return this.loadLuaLogisticSection(t);case 30:case 86:throw new Error(`LuaObject of type ${e} cannot have been saved`);default:throw new Error(`Unknown LuaObject type ${e}`)}}loadItemStackLocation(e){let t=this.version.isBeyond(1,2,0,33)?e.readUInt8():0;if(t!==0)return{standaloneStack:t,size:1};let n=e.readUInt8(),i=e.readUInt16LE();return{inventoryIndex:n,slotIndex:i,size:(this.version.isBeyond(1,2,0,33)?1:0)+1+2}}loadLuaItemStack(e){let t=this.version.isBeyond(1,2,0,359)?e.readUInt8():e.readUInt32LE(),n=this.version.isBeyond(1,2,0,359)?1:4;switch(t){case 0:return{stacktype:$t[t],size:n};case 1:case 2:case 7:case 9:{let i=e.readUInt32LE();n+=4;let o;if(this.version.isBeyond(1,2,0,361))o=this.loadItemStackLocation(e),n+=o.size;else{let s=e.readUInt8(),a=e.readUInt16LE();o={inventoryIndex:s,slotIndex:a},n+=3}return{stacktype:$t[t],target:i,location:o,size:n}}case 3:case 4:case 5:case 6:case 12:{let i=e.readUInt32LE();return n+=4,{stacktype:$t[t],target:i,size:n}}case 8:{let i=e.readUInt32LE(),o=e.readUInt8();n+=5;let s,a;return this.version.isBeyond(1,2,0,361)?(s=e.readUInt16LE(),a=e.readUInt32LE(),n+=6):(s=e.readUInt8(),n+=1),{stacktype:$t[t],target:i,line:o,item:s,itemid:a,size:n}}case 10:throw new Error(`LuaItemStack type ${t} cannot have been saved`);case 11:return{stacktype:$t[t],size:n};case 13:{let i=e.readUInt32LE(),o=e.readUInt16LE();return n+=6,{stacktype:$t[t],target:i,slot:o,size:n}}case 14:{let i=e.readUInt8(),o=e.readUInt16LE(),s=e.readUInt32LE();return n+=7,{stacktype:$t[t],force:i,proto:o,linkid:s,size:n}}default:throw new Error(`Unknown LuaItemStack type ${t}`)}}loadLuaControlBehavior(e){let t=e.readUInt32LE(),n=e.readUInt32LE();return{behavior:Yd[t],target:n,size:8}}loadLuaFlowStatistics(e){let t=e.readUInt32LE(),n=4;switch(t){case 1:case 2:case 3:case 6:{let i;this.version.isBeyond(1,2,0,360)&&(i=e.readPackedUInt_8_32(),n+=i>=255?5:1);let o=e.readUInt8();return n+=1,{flow:Mi[t],force:o,surface:i,size:n}}case 7:{let i=e.readUInt32LE();n+=4;let o;return this.version.isBeyond(2,0,48,4)&&(o=e.readPackedUInt_8_32(),n+=o>=255?5:1),{flow:Mi[t],target:i,surface:o,size:n}}case 8:{let i;return this.version.isBeyond(1,2,0,360)&&(i=e.readPackedUInt_8_32(),n+=i>=255?5:1),{flow:Mi[t],surface:i,size:n}}default:throw new Error(`Unknown LuaFlowStatistics type ${t}`)}}loadLuaLogisticSection(e){let t=0;this.version.isBeyond(1,2,31,1)||(e.readUInt8(),t+=1);let n;this.version.isBeyond(1,2,0,265)?(n=e.readUInt32LE(),t+=4):(e.readUInt8(),t+=1);let i=e.readUInt32LE();return t+=4,{entity:i,section:n,size:t}}};export{ot as a,mw as b,T as c,Se as d,ve as e,Aw as f,vw as g,dr as h,hb as i,mn as j,Ze as k,It as l,Mr as m,vi as n,Qg as o,gw as p,dv as q,hr as r,hn as s,Gl as t,Ot as u,G as v,Qe as w,Di as x,xr as y,Pi as z,wt as A,Gt as B,Xe as C,ge as D,Lt as E,nt as F,Ee as G,sd as H,Pe as I,h0 as J,g0 as K,Ud as L,_d as M,gn as N,id as O,Qd as P};
|
|
149
|
-
//# sourceMappingURL=chunk-
|
|
149
|
+
//# sourceMappingURL=chunk-OF4WOBLZ.js.map
|