miniscript-languageserver 1.9.1 → 1.9.2

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.
Files changed (2) hide show
  1. package/index.js +1 -1
  2. package/package.json +2 -2
package/index.js CHANGED
@@ -107,7 +107,7 @@ ${e}`;for(let a=0;a<this.details.length;++a){let u=a+1;o=`${o}
107
107
  */`),[n]=e;if(n.tags.length>0){let{descriptions:r,args:i,returns:s,examples:o}=Bj(n);return y_.SignatureDefinitionFunction.parse({type:y_.SignatureDefinitionBaseType.Function,arguments:t.getArguments().map((a,u)=>{let c=a.getLabel(),l=a.getTypes().map(d=>d.toString()),h=a.isOptional();return{types:l,opt:h,...i[u],label:c}}),returns:s,description:r,example:o})}return t}Ms.enrichWithMetaInformation=Wj});var __=m(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});cd.createResolveChain=void 0;var Lt=ke();function es(t,e,n=null,r=!1){switch(t.type){case Lt.ASTType.ParenthesisExpression:{es(t.expression,e,n);return}case Lt.ASTType.MemberExpression:{let i=t;es(i.base,e),e.push({ref:t,getter:i.identifier,unary:n,isInCallExpression:r});return}case Lt.ASTType.IndexExpression:{let i=t;es(i.base,e),e.push({ref:t,getter:i.index,unary:n,isInCallExpression:r});return}case Lt.ASTType.CallStatement:{es(t.expression,e,n,!0);return}case Lt.ASTType.CallExpression:{es(t.base,e,n,!0);return}case Lt.ASTType.NegationExpression:case Lt.ASTType.BinaryNegatedExpression:case Lt.ASTType.UnaryExpression:{let i=t;es(i.argument,e,i);return}case Lt.ASTType.Identifier:{e.push({ref:t,getter:t,unary:n,isInCallExpression:r});return}case Lt.ASTType.NumericLiteral:case Lt.ASTType.StringLiteral:case Lt.ASTType.NilLiteral:case Lt.ASTType.BooleanLiteral:case Lt.ASTType.MapConstructorExpression:case Lt.ASTType.ListConstructorExpression:case Lt.ASTType.BinaryExpression:case Lt.ASTType.LogicalExpression:case Lt.ASTType.ComparisonGroupExpression:{e.push({ref:t,value:t,unary:n,isInCallExpression:r});return}case Lt.ASTType.SliceExpression:es(t.base,e),e.push({ref:t,unary:n,isInCallExpression:r})}}function Uj(t){let e=[];return es(t,e),e}cd.createResolveChain=Uj});var H1=m(v_=>{function U1(t,e){return t>e?1:-1}v_.hash=function t(e,n){var r=5381;if(typeof e=="object"&&e!==null&&(e.toString===Object.prototype.toString||e.toString===Array.prototype.toString)){n||(n=new WeakSet);for(var i=Object.keys(e).sort(U1),s=0;s<i.length;s++){var o=i[s],a=e[o];if(r=33*r^t(o,n),typeof a=="object"&&a!==null&&(e.toString===Object.prototype.toString||e.toString===Array.prototype.toString)){if(n.has(a))continue;n.add(a)}r=33*r^t(a,n)}return 33*r^t(e.constructor,n)}var u=typeof e;try{e instanceof Date?u+=e.getTime():u+=String(e)}catch{u+=String(Object.assign({},e))}for(var c=0;c<u.length;c++)r=33*r^u.charCodeAt(c);return r},v_.sortNumbers=U1});var T_=m(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.ObjectSet=Go.ObjectSetIterator=void 0;var S_=H1(),ld=class{constructor(e){let n=this;n.value=e,n.index=0}next(){let e=this;return e.index>=e.value.length?{value:null,done:!0}:{value:e.value[e.index++],done:!1}}};Go.ObjectSetIterator=ld;var w_=class{constructor(e){let r=(e?Array.from(e):[]).map(i=>[(0,S_.hash)(i),i]);this._map=new Map(r),this._first=null,this._last=null,r.length>0&&(this._first=r[0][0],this._last=r[r.length-1][0])}[Symbol.iterator](){return new ld(Array.from(this._map.values()))}first(){return this._first!=null?this._map.get(this._first)??null:null}last(){return this._last!=null?this._map.get(this._last)??null:null}toArray(){return Array.from(this._map.values())}add(e){let n=(0,S_.hash)(e);return this._map.set(n,e),this._first??(this._first=n),this._last=n,this}delete(e){let n=(0,S_.hash)(e);return this._map.delete(n)}extend(e){return e._map.forEach((n,r)=>{this._map.set(r,n),this._first??(this._first=r),this._last=r}),this}toJSON(){return Array.from(this._map.values())}clear(){this._map.clear()}};Go.ObjectSet=w_});var E_=m(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});hd.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION=void 0;hd.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION="This is a custom method. You can add a description for this method by adding a comment above or after the function.\n```\nmyFunction = function(a, b, c) // This function does xyz\n```\nor\n```\n/*\n This function does xyz\n*/\nmyFunction = function(a, b, c)\n```"});var Ls=m(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});Eu.CompletionItemKind=void 0;var Hj;(function(t){t.Variable="var",t.Property="property",t.Function="function",t.Literal="literal",t.Constant="constant",t.Internal="internal",t.InternalFunction="internal-function",t.InternalProperty="internal-property",t.ListConstructor="list",t.MapConstructor="map",t.Expression="expr",t.Unknown="unknown"})(Hj=Eu.CompletionItemKind||(Eu.CompletionItemKind={}))});var Ns=m(yi=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.IsaPropertyPattern=yi.IdentifierPropertyPattern=yi.PropertyType=void 0;var x_;(function(t){t.Type="t",t.Identifier="i"})(x_=yi.PropertyType||(yi.PropertyType={}));yi.IdentifierPropertyPattern=`${x_.Identifier}:`;yi.IsaPropertyPattern=`${x_.Identifier}:__isa`});var k_=m(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.isResolveChainItemWithValue=Xr.isResolveChainItemWithIdentifier=Xr.isResolveChainItemWithMember=Xr.isResolveChainItemWithIndex=void 0;var ir=ke(),Gj=t=>t!=null&&t.ref.type===ir.ASTType.IndexExpression;Xr.isResolveChainItemWithIndex=Gj;var zj=t=>t!=null&&t.ref.type===ir.ASTType.MemberExpression;Xr.isResolveChainItemWithMember=zj;var Kj=t=>t!=null&&t.ref.type===ir.ASTType.Identifier;Xr.isResolveChainItemWithIdentifier=Kj;var Vj=new Set([ir.ASTType.NumericLiteral,ir.ASTType.StringLiteral,ir.ASTType.NilLiteral,ir.ASTType.BooleanLiteral,ir.ASTType.MapConstructorExpression,ir.ASTType.ListConstructorExpression,ir.ASTType.BinaryExpression,ir.ASTType.LogicalExpression,ir.ASTType.ComparisonGroupExpression]),Xj=t=>t!=null&&Vj.has(t.ref.type);Xr.isResolveChainItemWithValue=Xj});var A_=m(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});dd.isSignatureDefinitionFunction=void 0;var Yj=jn(),Jj=t=>t.getType().type===Yj.SignatureDefinitionBaseType.Function;dd.isSignatureDefinitionFunction=Jj});var C_=m(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});fd.aggregateEntity=void 0;var Qj=t=>{let e=new Set,n=t;for(;n!=null&&!e.has(n);)e.add(n),n=n.getIsa();return Array.from(e)};fd.aggregateEntity=Qj});var xu=m(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});pd.injectIdentifers=void 0;var Zj=Ns(),eF=C_(),tF=(t,e)=>{let n=(0,eF.aggregateEntity)(e);for(let r=0;r<n.length;r++)n[r].values.forEach((s,o)=>{if(o.startsWith(Zj.IdentifierPropertyPattern)){let a=o.slice(2);if(t.has(a))return;t.set(a,{kind:s.kind,line:s.source===e.source?s.line:-1})}})};pd.injectIdentifers=tF});var md=m(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});gd.isEligibleForProperties=void 0;var O_=jn(),nF=t=>t.types.has(O_.SignatureDefinitionBaseType.Map)||t.types.has(O_.SignatureDefinitionBaseType.List)||t.types.has(O_.SignatureDefinitionBaseType.Any);gd.isEligibleForProperties=nF});var bd=m(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});yd.lookupProperty=void 0;var rF=md(),iF=(t,e,n)=>{let r=e,i=new Set([r]);for(;(0,rF.isEligibleForProperties)(r);){let s=r.values.get(`${t}:${n}`);if(s!=null)return s;let o=r.getIsa();if(o==null||i.has(o))break;i.add(o),r=o}return null};yd.lookupProperty=iF});var R_=m(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.mergeUnique=void 0;function sF(t,e,n=1e4){let r=Array.from(new Set([...t,...e]));if(t.length=0,r.length<=n){Array.prototype.push.apply(t,r);return}for(let i=0;i<r.length;i+=n)Array.prototype.push.apply(t,r.slice(i,i+n))}_d.mergeUnique=sF});var zo=m(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});Sd.Entity=void 0;var yt=jn(),qs=Ls(),sr=Ns(),oF=A_(),aF=xu(),ku=md(),vd=bd(),uF=R_(),G1=T_(),bi=class t{static resolveEntity(e,n,r=!1){if(n.isCallable()&&!r){let i=n.getReturnEntity();if(i!==null)return i;let s=n.getCallableReturnTypes();return s?new t({source:n.source,kind:qs.CompletionItemKind.Variable,container:e,label:n.label,context:n.context}).addTypesWithMeta(s):new t({source:n.source,kind:qs.CompletionItemKind.Variable,container:e,label:n.label,context:n.context}).addType(yt.SignatureDefinitionBaseType.Any)}return n}get source(){return this._source}get definitions(){return this._definitions}get kind(){return this._kind}get line(){return this._line}get signatureDefinitions(){return this._signatureDefinitions}get context(){return this._context}get label(){return this._label}get types(){return this._types}get values(){return this._values}constructor(e){this._source=e.source,this._isAPI=e.isAPI??!1,this._isFromSignature=e.isFromSignature??!1,this._kind=e.kind,this._line=e.line??-1,this._label=e.label??"anonymous",this._signatureDefinitions=e.signatureDefinitions??new G1.ObjectSet,this._types=e.types??new Set,this._values=e.values??new Map,this._context=e.context??null,this._container=e.container,this._definitions=e.definitions??[],this._returnEntity=e.returnEntity??null}isFromSignature(){return this._isFromSignature}hasContext(){return this._context!=null&&!this._context.isAPI}getIsa(){return this._values.get(sr.IsaPropertyPattern)??null}hasIsa(){return this._values.has(sr.IsaPropertyPattern)}isAPI(){return this._isAPI}isCallable(){return this._types.has(yt.SignatureDefinitionBaseType.Function)}getCallableReturnTypes(){if(!this.isCallable())return null;let e=Array.from(this._signatureDefinitions).filter(n=>(0,oF.isSignatureDefinitionFunction)(n));return e.length===0?null:e.flatMap(n=>n.getReturns())}addSignatureType(e){return this._signatureDefinitions.add(e),this.addType(e.getType().type),this}setReturnEntity(e){return this._returnEntity=e,this}getReturnEntity(){return this._returnEntity}setKind(e){return this._kind=e,this}setLine(e){return this._line=e,this}setLabel(e){return this._label=e,this}setContext(e){return this._context=e,this}addType(e){return this._types.add(e),this}addTypes(e){for(let n=0;n<e.length;n++)this._types.add(e[n]);return this}addTypeWithMeta(e){if(this._types.add(e.type),e.type===yt.SignatureDefinitionBaseType.Map||e.type===yt.SignatureDefinitionBaseType.List){let n=e.type===yt.SignatureDefinitionBaseType.Map?e.keyType.type??yt.SignatureDefinitionBaseType.Any:yt.SignatureDefinitionBaseType.Number,r=new t({source:this._source,kind:qs.CompletionItemKind.Property,container:this._container,context:this});e.valueType.type===yt.SignatureDefinitionBaseType.Map||e.valueType.type===yt.SignatureDefinitionBaseType.List?r.addTypeWithMeta(e.valueType):r.addType(e.valueType.type??yt.SignatureDefinitionBaseType.Any),t.handlers.type.setProperty(this,this._container,n,r)}return this}addTypesWithMeta(e){for(let n=0;n<e.length;n++)this.addTypeWithMeta(e[n]);return this}hasProperty(e){switch(typeof e){case"object":return t.handlers.entity.hasProperty(this,this._container,e);default:return t.handlers.identifier.hasProperty(this,this._container,e)}}resolveProperty(e,n=!1){switch(typeof e){case"object":return t.handlers.entity.resolveProperty(this,this._container,e,n);default:return t.handlers.identifier.resolveProperty(this,this._container,e,n)}}setProperty(e,n,r=!1){switch(typeof e){case"object":return t.handlers.entity.setProperty(this,this._container,e,n,r);default:return t.handlers.identifier.setProperty(this,this._container,e,n,r)}}extend(e,n=!1,r=!1){if(e===this)return this;let i=new WeakSet([e]),s=[{target:this,source:e}];for(;s.length>0;){let o=s.pop(),a=o.target,u=o.source;a._isFromSignature=!1,a._signatureDefinitions.extend(u._signatureDefinitions),n&&(r?a._definitions=[...a._definitions,...u._definitions]:(0,uF.mergeUnique)(a._definitions,u._definitions)),a.addTypes(Array.from(u.types)),u.values.forEach((c,l)=>{let h=a._values.get(l);h==null?a._values.set(l,c.copy({container:a._container,context:a,deepCopy:r})):i.has(c)||(i.add(c),s.push({target:h,source:c}))})}return this}insertSignature(e){let n=Object.keys(e.getDefinitions());this.addType(yt.SignatureDefinitionBaseType.Map);for(let r=0;r<n.length;r++){let i=n[r],s=e.getDefinition(i),o=new t({source:this._source,label:i,kind:s.getType().type===yt.SignatureDefinitionBaseType.Function?qs.CompletionItemKind.InternalFunction:qs.CompletionItemKind.InternalProperty,container:this._container,isFromSignature:!0});o.addSignatureType(s),this.setProperty(i,o)}return this}getPropertyTypes(){let e=new Set;return this._values.forEach((n,r)=>{let[i,s]=r.split(":");i===sr.PropertyType.Type?e.add(s):e.add(yt.SignatureDefinitionBaseType.String)}),Array.from(e)}getValueTypes(){let e=new Set;return this._values.forEach(n=>{n.types.forEach(r=>{e.add(r)})}),Array.from(e)}getAvailableIdentifier(){let e=new Map;return this._types.forEach(n=>{this._container.getAvailableIdentifier(n).forEach((i,s)=>{e.set(s,i)})}),(0,aF.injectIdentifers)(e,this),e}toJSON(e=new WeakMap){if(e.has(this))return e.get(this);let n={};return e.set(this,n),n.kind=this.kind,n.signatureDefinitions=this._signatureDefinitions.toJSON(),n.types=Array.from(this._types),n.values=Array.from(this._values).reduce((r,[i,s])=>(r[i]=s?.toJSON(e),r),{}),n}toMeta(){let e=[];return this.types.forEach(n=>{let r={type:n};switch(n){case yt.SignatureDefinitionBaseType.Map:{let i=this.getPropertyTypes();i.length===1?r.keyType=i[0]:r.keyType=yt.SignatureDefinitionBaseType.Any;let s=this.getValueTypes();s.length===1?r.valueType=s[0]:r.valueType=yt.SignatureDefinitionBaseType.Any;break}case yt.SignatureDefinitionBaseType.List:{let i=t.handlers.type.resolveProperty(this,this._container,yt.SignatureDefinitionBaseType.Number);i!=null&&i.types.size===1?r.valueType=i.types.values().next().value:r.valueType=yt.SignatureDefinitionBaseType.Any;break}}e.push(r)}),e}copy(e={}){let n=new t({source:e.source??this._source,kind:e.kind??this._kind,line:e.line??this._line,isFromSignature:e.isFromSignature??this._isFromSignature,isAPI:e.isAPI??this._isAPI,container:e.container??this._container,label:e.label??this._label,context:e.context??this._context,signatureDefinitions:new G1.ObjectSet(Array.from(this._signatureDefinitions,s=>s.copy())),types:new Set(this._types),returnEntity:this._returnEntity,values:e.values??this.values,definitions:e.definitions??this._definitions});if(!e.deepCopy)return n;let r=new WeakMap;function i(s,o){let a=r.get(o);if(a)return a;let u=o.copy({container:e.container,line:e.line,context:s,values:new Map});return r.set(o,u),o.values.forEach((c,l)=>{u._values.set(l,i(u,c))}),u._definitions=[...o.definitions],u}return n._values=new Map,this._values.forEach((s,o)=>{n._values.set(o,i(n,s))}),n._definitions=[...this._definitions],n}};Sd.Entity=bi;bi.handlers={identifier:{hasProperty(t,e,n){return!!(0,vd.lookupProperty)(sr.PropertyType.Identifier,t,n)||!t.isAPI()&&!!e.getDefinition(Array.from(t.types),n,!0)},resolveProperty(t,e,n,r=!1){let i=(0,vd.lookupProperty)(sr.PropertyType.Identifier,t,n)??null;return i==null?t.isAPI()?null:e.getDefinition(Array.from(t.types),n,r):bi.resolveEntity(e,i,r)},setProperty(t,e,n,r,i=!1){if(!(0,ku.isEligibleForProperties)(t))return!1;let s=`${sr.PropertyType.Identifier}:${n}`,o=t.values.get(s);return o?o.extend(r,i):t.values.set(s,r.copy({container:e,label:n,context:t,definitions:i?r.definitions:[]})),!0}},entity:{hasProperty(t,e,n){if(!(0,ku.isEligibleForProperties)(t))return!1;for(let r of n.types)if(t.values.has(`${sr.PropertyType.Type}:${r}`))return!0;return!1},resolveProperty(t,e,n,r=!1){if(!(0,ku.isEligibleForProperties)(t))return new bi({source:t.source,kind:qs.CompletionItemKind.Variable,container:e,label:n.label,context:t}).addType(yt.SignatureDefinitionBaseType.Any);let i=new bi({source:n.source,kind:qs.CompletionItemKind.Variable,container:e,label:n.label,context:t});return n.types.has(yt.SignatureDefinitionBaseType.Any)?t.values.forEach(s=>{i.extend(s)}):n.types.forEach(s=>{let o=t.values.get(`${sr.PropertyType.Type}:${s}`);o&&i.extend(o)}),i.types.size===0&&i.addType(yt.SignatureDefinitionBaseType.Any),bi.resolveEntity(e,i,r)},setProperty(t,e,n,r,i=!1){return(0,ku.isEligibleForProperties)(t)?(n.types.forEach(s=>{let o=`${sr.PropertyType.Type}:${s}`,a=t.values.get(o);a?a.extend(r,i):t.values.set(o,r.copy({container:e,label:s,context:t,definitions:i?r.definitions:[]}))}),!0):!1}},type:{hasProperty(t,e,n){return!!(0,vd.lookupProperty)(sr.PropertyType.Type,t,n)},resolveProperty(t,e,n,r=!1){let i=(0,vd.lookupProperty)(sr.PropertyType.Type,t,n)??null;return i==null?null:bi.resolveEntity(e,i,r)},setProperty(t,e,n,r,i=!1){if(!(0,ku.isEligibleForProperties)(t))return!1;let s=`${sr.PropertyType.Type}:${n}`,o=t.values.get(s);return o?o.extend(r,i):t.values.set(s,r.copy({container:e,label:n,context:t,definitions:i?r.definitions:[]})),!0}}}});var I_=m(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});Ed.Scope=void 0;var wd=jn(),js=Ls(),cF=Ns(),P_=xu(),Td=zo(),D_=class t{get source(){return this._source}get definitions(){return[]}get signatureDefinitions(){return null}get kind(){return js.CompletionItemKind.Constant}get line(){return this._locals.line}get label(){return this._locals.label}get context(){return this._locals.context}get types(){return new Set(wd.SignatureDefinitionBaseType.Map)}get values(){return this._locals.values}get globals(){return this._globals}get outer(){return this._parent?.locals??null}get locals(){return this._locals}constructor(e){this._source=e.source,this._container=e.container,this._parent=e.parent??null,this._globals=e.globals,this._locals=e.locals??new Td.Entity({source:this._source,kind:js.CompletionItemKind.Constant,container:this._container,label:"locals"}).addType(wd.SignatureDefinitionBaseType.Map)}getIsa(){return null}hasIsa(){return!1}setCustomType(e,n){this._container.setCustomType(e,n)}addSignatureType(){throw new Error("Cannot add signature type to scope!")}hasProperty(e){return this._locals.hasProperty(e)}resolveProperty(e,n){return this._locals.resolveProperty(e,n)}resolveNamespace(e,n=!1){if(typeof e!="string")throw new Error("Invalid property type for scope!");if(e==="locals")return this._locals;if(e==="outer")return this._parent?.locals??this._globals;if(e==="globals")return this._globals;let r=`${cF.PropertyType.Identifier}:${e}`;if(this._locals.values.has(r)){let i=this._locals.values.get(r);return Td.Entity.resolveEntity(this._container,i,n)}else if(this._parent?.locals.values.has(r)){let i=this._parent.locals.values.get(r);return Td.Entity.resolveEntity(this._container,i,n)}else if(this._globals.values.has(r)){let i=this._globals.values.get(r);return Td.Entity.resolveEntity(this._container,i,n)}return this._container.getGeneralDefinition(e,n)}setProperty(e,n){return this._locals.setProperty(e,n)}extend(e){return this._locals.extend(e),this}addType(){throw new Error("Scope cannot get type assigned!")}addTypes(){throw new Error("Scope cannot get types assigned!")}addTypeWithMeta(){throw new Error("Scope cannot get meta type assigned!")}addTypesWithMeta(){throw new Error("Scope cannot get meta types assigned!")}setReturnEntity(){throw new Error("Scope cannot set return entity!")}getReturnEntity(){throw new Error("Scope cannot get return entity!")}setKind(e){return this._locals.setKind(e),this}setLine(e){return this._locals.setLine(e),this}setLabel(e){return this._locals.setLabel(e),this}setContext(e){return this._locals.setContext(e),this}insertSignature(e){return this._locals.insertSignature(e),this}isAPI(){return!1}hasContext(){return!1}isFromSignature(){return!1}isCallable(){return!1}getCallableReturnTypes(){return null}getPropertyTypes(){return this._locals.getPropertyTypes()}getValueTypes(){return this._locals.getValueTypes()}getAvailableIdentifier(){let e=new Map([["globals",{kind:js.CompletionItemKind.Constant,line:-1}],["locals",{kind:js.CompletionItemKind.Constant,line:-1}],["outer",{kind:js.CompletionItemKind.Constant,line:-1}],...this._container.getAvailableIdentifier(wd.SignatureDefinitionBaseType.General)]);return this._locals!==this._globals&&(0,P_.injectIdentifers)(e,this._globals),this._parent&&(0,P_.injectIdentifers)(e,this._parent.locals),(0,P_.injectIdentifers)(e,this._locals),this.isSelfAvailable()&&e.set("self",{kind:js.CompletionItemKind.Constant,line:-1}),this.isSuperAvailable()&&e.set("super",{kind:js.CompletionItemKind.Constant,line:-1}),e}isSelfAvailable(){return this._locals.context!=null&&this._locals.context.types.has(wd.SignatureDefinitionBaseType.Map)}isSuperAvailable(){return this.isSelfAvailable()&&this._locals.context.hasProperty("__isa")}toJSON(){return this._locals.toJSON()}toMeta(){return this._locals.toMeta()}copy(e={}){return new t({source:this._source,container:e.container??this._container,parent:this._parent.copy({container:e.container,deepCopy:!0}),globals:this._globals.copy({container:e.container,deepCopy:!0}),locals:this._locals.copy({...e,deepCopy:!0})})}};Ed.Scope=D_});var Ko=m(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.GreybelKeyword=void 0;var lF;(function(t){t.Envar="#envar",t.Import="#import",t.Include="#include",t.ImportWithComment="//import",t.IncludeWithComment="//include",t.Debugger="debugger",t.Line="#line",t.File="#filename",t.Inject="#inject"})(lF=Au.GreybelKeyword||(Au.GreybelKeyword={}))});var N_=m(L_=>{"use strict";Object.defineProperty(L_,"__esModule",{value:!0});var Fs=ke(),hF=Ko(),M_=class extends Fs.LexerValidator{constructor(){super(...arguments),this.isKeyword=Set.prototype.has.bind(new Set([...Object.values(Fs.Keyword),...Object.values(hF.GreybelKeyword)]))}isIdentifierStart(e){return super.isIdentifierStart(e)||e===Fs.CharacterCode.HASH}isMultilineComment(e,n){return Fs.CharacterCode.SLASH===e&&Fs.CharacterCode.ASTERISK===n}isMultilineCommentEnd(e,n){return Fs.CharacterCode.ASTERISK===e&&Fs.CharacterCode.SLASH===n}isComment(e,n){return super.isComment(e,n)||this.isMultilineComment(e,n)}};L_.default=M_});var q_=m(Cu=>{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});Cu.CharacterCode=void 0;var dF;(function(t){t[t.VERTICAL_LINE=124]="VERTICAL_LINE",t[t.AMPERSAND=38]="AMPERSAND"})(dF=Cu.CharacterCode||(Cu.CharacterCode={}))});var Vo=m(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.Operator=void 0;var fF;(function(t){t.BitwiseAnd="&",t.BitwiseOr="|",t.LeftShift="<<",t.RightShift=">>",t.UnsignedRightShift=">>>"})(fF=Ou.Operator||(Ou.Operator={}))});var F_=m(Ru=>{"use strict";var pF=Ru&&Ru.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ru,"__esModule",{value:!0});var kr=ke(),gF=pF(N_()),z1=q_(),K1=Ko(),j_=Vo();function V1(t){let e=this.content[this.index];return this.index+=e.length,this.createPunctuator(e,t)}var xd=class t extends kr.Lexer{constructor(e,n={}){n.validator=n.validator||new gF.default,super(e,n)}scan(e,n){let r=t.greybelScanHandlers[e];return r?r.call(this,n)||super.scan(e,n):super.scan(e,n)}scanMultilineComment(e){let n=this,r=n.line,i=n.lineStart,s=n.index,o=n.offset,a=n.offset,u=!1;for(;n.index<n.length;){let h=n.codeAt();if(n.validator.isEndOfLine(h))n.validator.isWinNewline(h,n.codeAt(1))&&n.index++,n.line++,a=n.index+1;else if(n.validator.isMultilineCommentEnd(n.codeAt(),n.codeAt(1))){u=!0;break}n.index++}if(!u)return n.raise("Unexpected end of file in multiline comment.",new kr.ASTRange(new kr.ASTPosition(r,s-o+1),new kr.ASTPosition(n.line,n.index-a+3)));let c=n.content.slice(s+2,n.index);n.index+=2;let l=new kr.Token({type:kr.TokenType.Comment,value:c,line:r,lineStart:i,range:[n.tokenStart,n.index],offsetRange:[o,a],afterSpace:e,lastLine:n.line,lastLineStart:n.lineStart});return n.offset=a,n.snapshot.enqueue(l),l}scanComment(e){let n=this,r=n.validator;return n.content.startsWith(K1.GreybelKeyword.ImportWithComment,n.index)||n.content.startsWith(K1.GreybelKeyword.IncludeWithComment,n.index)?(n.index++,n.scanIdentifierOrKeyword(e)):r.isMultilineComment(n.codeAt(),n.codeAt(1))?n.scanMultilineComment(e):super.scanComment(e)}};Ru.default=xd;xd.greybelScanHandlers={[kr.CharacterCode.ARROW_LEFT]:function(e){if(kr.CharacterCode.ARROW_LEFT===this.codeAt(1))return this.scanPunctuator(j_.Operator.LeftShift,e)},[kr.CharacterCode.ARROW_RIGHT]:function(e){if(kr.CharacterCode.ARROW_RIGHT===this.codeAt(1))return kr.CharacterCode.ARROW_RIGHT===this.codeAt(2)?this.scanPunctuator(j_.Operator.UnsignedRightShift,e):this.scanPunctuator(j_.Operator.RightShift,e)},[z1.CharacterCode.AMPERSAND]:V1,[z1.CharacterCode.VERTICAL_LINE]:V1}});var kd=m(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.ASTType=void 0;var mF;(function(t){t.FeatureImportExpression="FeatureImportExpression",t.FeatureIncludeExpression="FeatureIncludeExpression",t.FeatureEnvarExpression="FeatureEnvarExpression",t.FeatureInjectExpression="FeatureInjectExpression",t.FeatureDebuggerExpression="FeatureDebuggerExpression",t.FeatureLineExpression="FeatureLineExpression",t.FeatureFileExpression="FeatureFileExpression"})(mF=Pu.ASTType||(Pu.ASTType={}))});var B_=m(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});Ad.ASTChunkGreybel=void 0;var yF=ke(),$_=class t extends yF.ASTChunk{constructor(e){super(e),this.imports=e.imports||[],this.includes=e.includes||[],this.injects=e.injects||[]}clone(){return new t({literals:this.literals.map(e=>e.clone()),scopes:this.scopes.map(e=>e.clone()),imports:this.imports.map(e=>e.clone()),includes:this.includes.map(e=>e.clone()),injects:this.injects.map(e=>e.clone()),lines:this.lines,start:this.start,end:this.end,range:this.range,scope:this.scope})}};Ad.ASTChunkGreybel=$_});var K_=m(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.ASTFeatureFileExpression=or.ASTFeatureInjectExpression=or.ASTFeatureEnvarExpression=or.ASTFeatureIncludeExpression=or.ASTFeatureImportExpression=void 0;var Du=ke(),Iu=kd(),W_=class t extends Du.ASTBase{constructor(e){super(Iu.ASTType.FeatureImportExpression,e),this.name=e.name,this.path=e.path,this.chunk=e.chunk,this.namespace=e.namespace}toString(){return`FeatureImportExpression[${this.start}-${this.end}][name = ${this.name}, path = ${this.path}]`}clone(){return new t({name:this.name.clone(),path:this.path,chunk:this.chunk.clone(),namespace:this.namespace,start:this.start,end:this.end,range:this.range,scope:this.scope})}};or.ASTFeatureImportExpression=W_;var U_=class t extends Du.ASTBase{constructor(e){super(Iu.ASTType.FeatureIncludeExpression,e),this.path=e.path,this.chunk=e.chunk,this.namespace=e.namespace}toString(){return`FeatureIncludeExpression[${this.start}-${this.end}][path = ${this.path}]`}clone(){return new t({path:this.path,chunk:this.chunk.clone(),namespace:this.namespace,start:this.start,end:this.end,range:this.range,scope:this.scope})}};or.ASTFeatureIncludeExpression=U_;var H_=class t extends Du.ASTBase{constructor(e){super(Iu.ASTType.FeatureEnvarExpression,e),this.name=e.name}toString(){return`FeatureEnvarExpression[${this.start}-${this.end}][name = ${this.name}]`}clone(){return new t({name:this.name,start:this.start,end:this.end,range:this.range,scope:this.scope})}};or.ASTFeatureEnvarExpression=H_;var G_=class t extends Du.ASTBase{constructor(e){super(Iu.ASTType.FeatureInjectExpression,e),this.path=e.path}toString(){return`FeatureInjectExpression[${this.start}-${this.end}][path = ${this.path}]`}clone(){return new t({path:this.path,start:this.start,end:this.end,range:this.range,scope:this.scope})}};or.ASTFeatureInjectExpression=G_;var z_=class t extends Du.ASTBase{constructor(e){super(Iu.ASTType.FeatureFileExpression,e),this.filename=e.filename}toString(){return`FeatureFileExpression[${this.start}-${this.end}][path = ${this.filename}]`}clone(){return new t({filename:this.filename,start:this.start,end:this.end,range:this.range,scope:this.scope})}};or.ASTFeatureFileExpression=z_});var Y_=m(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.ASTFeatureInjectExpression=Wt.ASTFeatureIncludeExpression=Wt.ASTFeatureImportExpression=Wt.ASTFeatureFileExpression=Wt.ASTFeatureEnvarExpression=Wt.ASTChunkGreybel=Wt.ASTType=Wt.ASTProvider=void 0;var V_=ke(),X1=kd(),bF=B_(),Mu=K_(),X_=class extends V_.ASTProvider{featureImportExpression(e){return new Mu.ASTFeatureImportExpression(e)}featureIncludeExpression(e){return new Mu.ASTFeatureIncludeExpression(e)}featureEnvarExpression(e){return new Mu.ASTFeatureEnvarExpression(e)}featureInjectExpression(e){return new Mu.ASTFeatureInjectExpression(e)}featureDebuggerExpression(e){return new V_.ASTBase(X1.ASTType.FeatureDebuggerExpression,e)}featureLineExpression(e){return new V_.ASTBase(X1.ASTType.FeatureLineExpression,e)}featureFileExpression(e){return new Mu.ASTFeatureFileExpression(e)}chunk(e){return new bF.ASTChunkGreybel(e)}};Wt.ASTProvider=X_;var _F=kd();Object.defineProperty(Wt,"ASTType",{enumerable:!0,get:function(){return _F.ASTType}});var vF=B_();Object.defineProperty(Wt,"ASTChunkGreybel",{enumerable:!0,get:function(){return vF.ASTChunkGreybel}});var Lu=K_();Object.defineProperty(Wt,"ASTFeatureEnvarExpression",{enumerable:!0,get:function(){return Lu.ASTFeatureEnvarExpression}});Object.defineProperty(Wt,"ASTFeatureFileExpression",{enumerable:!0,get:function(){return Lu.ASTFeatureFileExpression}});Object.defineProperty(Wt,"ASTFeatureImportExpression",{enumerable:!0,get:function(){return Lu.ASTFeatureImportExpression}});Object.defineProperty(Wt,"ASTFeatureIncludeExpression",{enumerable:!0,get:function(){return Lu.ASTFeatureIncludeExpression}});Object.defineProperty(Wt,"ASTFeatureInjectExpression",{enumerable:!0,get:function(){return Lu.ASTFeatureInjectExpression}})});var J_=m(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});bt.SelectorGroups=bt.SelectorGroupType=bt.Selectors=bt.SelectorTypes=void 0;var Ue=ke(),Cd=Ko(),Nu=Vo(),SF;(function(t){t.From="From",t.Envar="Envar",t.Inject="Inject",t.Line="Line",t.File="File",t.LeftShift="LeftShift",t.RightShift="RightShift",t.UnsignedRightShift="UnsignedRightShift",t.BitwiseOr="BitwiseOr",t.BitwiseAnd="BitwiseAnd",t.Escape="Escape"})(SF=bt.SelectorTypes||(bt.SelectorTypes={}));bt.Selectors=Object.assign(Object.assign({},Ue.Selectors),{From:(0,Ue.createSelector)({type:Ue.TokenType.Identifier,value:"from"}),Envar:(0,Ue.createSelector)({type:Ue.TokenType.Keyword,value:Cd.GreybelKeyword.Envar}),Inject:(0,Ue.createSelector)({type:Ue.TokenType.Keyword,value:Cd.GreybelKeyword.Inject}),Line:(0,Ue.createSelector)({type:Ue.TokenType.Keyword,value:Cd.GreybelKeyword.Line}),File:(0,Ue.createSelector)({type:Ue.TokenType.Keyword,value:Cd.GreybelKeyword.File}),LeftShift:(0,Ue.createSelector)({type:Ue.TokenType.Punctuator,value:Nu.Operator.LeftShift}),RightShift:(0,Ue.createSelector)({type:Ue.TokenType.Punctuator,value:Nu.Operator.RightShift}),UnsignedRightShift:(0,Ue.createSelector)({type:Ue.TokenType.Punctuator,value:Nu.Operator.UnsignedRightShift}),BitwiseOr:(0,Ue.createSelector)({type:Ue.TokenType.Punctuator,value:Nu.Operator.BitwiseOr}),BitwiseAnd:(0,Ue.createSelector)({type:Ue.TokenType.Punctuator,value:Nu.Operator.BitwiseAnd}),Escape:(0,Ue.createSelector)({type:Ue.TokenType.Punctuator,value:Ue.Operator.Escape})});var _i;(function(t){t.MapSeparator="MapSeparator",t.ListSeparator="ListSeparator",t.PathSegmentEnd="PathSegmentEnd",t.BitwiseOperators="BitwiseOperators"})(_i=bt.SelectorGroupType||(bt.SelectorGroupType={}));bt.SelectorGroups=Object.assign(Object.assign({},Ue.SelectorGroups),{[_i.MapSeparator]:(0,Ue.createSelectorGroup)(_i.MapSeparator,[bt.Selectors.MapSeperator,bt.Selectors.CRBracket]),[_i.ListSeparator]:(0,Ue.createSelectorGroup)(_i.ListSeparator,[bt.Selectors.MapSeperator,bt.Selectors.SRBracket]),[_i.PathSegmentEnd]:(0,Ue.createSelectorGroup)(_i.PathSegmentEnd,[bt.Selectors.EndOfLine,bt.Selectors.Comment,bt.Selectors.EndOfFile]),[_i.BitwiseOperators]:(0,Ue.createSelectorGroup)(_i.BitwiseOperators,[bt.Selectors.LeftShift,bt.Selectors.RightShift,bt.Selectors.UnsignedRightShift])})});var Q1=m(qu=>{"use strict";var wF=qu&&qu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(qu,"__esModule",{value:!0});var Fn=ke(),TF=Ha(),Y1=Ya(),EF=wF(F_()),xF=Y_(),$s=Ko(),J1=Vo(),je=J_(),Q_=class extends Fn.Parser{constructor(e,n={}){var r;n.lexer=n.lexer||new EF.default(e,{unsafe:n.unsafe,tabWidth:n.tabWidth}),n.astProvider=n.astProvider||new xF.ASTProvider,super(e,n);let i=this;i.filename=(r=n.filename)!==null&&r!==void 0?r:"unknown",i.imports=[],i.includes=[],i.injects=[]}skipNewlines(){var e;let n=this,r=0;for(;;){if(je.Selectors.Comment(n.token)){let i=((e=n.previousToken)===null||e===void 0?void 0:e.line)!==n.token.line,s=n.astProvider.comment({value:n.token.value,isMultiline:n.token.value.indexOf(`
108
108
  `)!==-1,start:n.token.start,end:n.token.end,range:n.token.range,scope:n.currentScope,isStatement:i});n.lineRegistry.addItemToLines(s)}else if(je.Selectors.EndOfLine(n.token))r++;else break;n.next()}return r}parseMap(e=!1,n=!1){let r=this;if(!je.Selectors.CLBracket(r.token))return r.parseList(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.mapConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),je.Selectors.CRBracket(r.token))r.next();else for(;!je.Selectors.EndOfFile(r.token);){if(r.skipNewlines(),je.Selectors.CRBracket(r.token)){r.next();break}let u=r.astProvider.mapKeyString({key:null,value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});u.key=r.parseExpr(null),r.requireToken(je.Selectors.MapKeyValueSeperator),r.skipNewlines(),u.value=r.parseExpr(u),u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),r.skipNewlines();let c=r.requireTokenOfAny(je.SelectorGroups.MapSeparator,s.start);if(je.Selectors.CRBracket(c))break}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parseList(e=!1,n=!1){let r=this;if(!je.Selectors.SLBracket(r.token))return r.parseQuantity(e,n);let i=r.currentScope,s=r.token,o=[],a=r.astProvider.listConstructorExpression({fields:o,start:s.start,end:null,range:[s.range[0],null],scope:i});if(r.next(),je.Selectors.SRBracket(r.token))r.next();else for(;!je.Selectors.EndOfFile(r.token);){if(r.skipNewlines(),je.Selectors.SRBracket(r.token)){r.next();break}let u=r.astProvider.listValue({value:null,start:r.token.start,end:null,range:[r.token.range[0],null],scope:i});u.value=r.parseExpr(u),u.end=r.previousToken.end,u.range[1]=r.previousToken.range[1],o.push(u),r.skipNewlines();let c=r.requireTokenOfAny(je.SelectorGroups.ListSeparator,s.start);if(je.Selectors.SRBracket(c))break}return a.end=r.token.start,a.range[1]=r.token.range[1],a}parsePathSegment(){let e=this;if(this.token.type===Fn.ASTType.StringLiteral){let r=this.token.value;return this.next(),r}let n="";for(;!je.SelectorGroups.PathSegmentEnd(e.token);)n=n+e.token.value,e.next();return e.consumeMany(je.SelectorGroups.PathSegmentEnd),n}parseFeatureIncludeStatement(){let e=this,n=e.previousToken,r=e.parsePathSegment(),i=e.astProvider.featureIncludeExpression({path:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope});return e.includes.push(i),i}parseFeatureImportStatement(){var e;let n=this,r=n.previousToken,i=n.parseIdentifier(Fn.ASTIdentifierKind.Variable);if(!n.consume(je.Selectors.From))return n.raise("expected from keyword",new Y1.Range(r.start,new TF.Position((e=n.token.lastLine)!==null&&e!==void 0?e:n.token.line,n.token.end.character))),n.parseInvalidCode();let s=n.parsePathSegment(),o=n.astProvider.featureImportExpression({name:i,path:s,start:r.start,end:n.previousToken.end,range:[r.range[0],n.previousToken.range[1]],scope:n.currentScope});return n.imports.push(o),n.currentScope.definitions.push(o),o}parseFeatureEnvarExpression(){let e=this,n=e.previousToken,r=e.token.value;return e.next(),e.astProvider.featureEnvarExpression({name:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope})}parseFeatureInjectExpression(){let e=this,n=e.previousToken,r=this.parsePathSegment();e.next();let i=e.astProvider.featureInjectExpression({path:r,start:n.start,end:e.previousToken.end,range:[n.range[0],e.previousToken.range[1]],scope:e.currentScope});return e.injects.push(i),i}parseIsa(e=!1,n=!1){let r=this,i=r.token,s=r.parseBitwiseOr(e,n);if(je.Selectors.Isa(r.token)){r.next(),r.skipNewlines();let o=r.parseBitwiseOr();return r.astProvider.isaExpression({operator:Fn.Operator.Isa,left:s,right:o,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return s}parseBitwiseOr(e=!1,n=!1){let r=this,i=r.token,o=r.parseBitwiseAnd(e,n);for(;je.Selectors.BitwiseOr(r.token);){r.next();let a=r.parseBitwiseAnd();o=r.astProvider.binaryExpression({operator:J1.Operator.BitwiseOr,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseBitwiseAnd(e=!1,n=!1){let r=this,i=r.token,o=r.parseComparisons(e,n);for(;je.Selectors.BitwiseAnd(r.token);){r.next();let a=r.parseComparisons();o=r.astProvider.binaryExpression({operator:J1.Operator.BitwiseAnd,left:o,right:a,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAddSub(e=!1,n=!1){let r=this,i=r.token,o=r.parseBitwise(e,n);for(;je.Selectors.Plus(r.token)||je.Selectors.Minus(r.token)&&(!n||!r.token.afterSpace||r.lexer.isAtWhitespace());){let a=r.token;r.next(),r.skipNewlines();let u=r.parseBitwise();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseBitwise(e=!1,n=!1){let r=this,i=r.token,o=r.parseMultDiv(e,n);for(;je.SelectorGroups.BitwiseOperators(r.token);){let a=r.token;r.next(),r.skipNewlines();let u=r.parseMultDiv();o=r.astProvider.binaryExpression({operator:a.value,left:o,right:u,start:i.start,end:r.previousToken.end,range:[i.range[0],r.previousToken.range[1]],scope:r.currentScope})}return o}parseAtom(){let e=this;return je.Selectors.Envar(e.token)?(e.next(),e.parseFeatureEnvarExpression()):je.Selectors.Inject(e.token)?(e.next(),e.parseFeatureInjectExpression()):je.Selectors.Line(e.token)?(e.next(),e.astProvider.featureLineExpression({start:new Fn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new Fn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope})):je.Selectors.File(e.token)?(e.next(),e.astProvider.featureFileExpression({filename:e.filename,start:new Fn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new Fn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope})):super.parseAtom()}parseStatement(){let e=this,n=e.backpatches.peek();if(e.isType(Fn.TokenType.Keyword))switch(e.token.value){case $s.GreybelKeyword.Include:case $s.GreybelKeyword.IncludeWithComment:{e.next();let i=e.parseFeatureIncludeStatement();e.lineRegistry.addItemToLines(i),n.body.push(i);return}case $s.GreybelKeyword.Import:case $s.GreybelKeyword.ImportWithComment:{e.next();let i=e.parseFeatureImportStatement();e.lineRegistry.addItemToLines(i),n.body.push(i);return}case $s.GreybelKeyword.Envar:{e.next();let i=e.parseFeatureEnvarExpression();e.lineRegistry.addItemToLines(i),n.body.push(i);return}case $s.GreybelKeyword.Inject:{e.next();let i=e.parseFeatureInjectExpression();e.lineRegistry.addItemToLines(i),n.body.push(i);return}case $s.GreybelKeyword.Debugger:{e.next();let i=e.astProvider.featureDebuggerExpression({start:new Fn.ASTPosition(e.previousToken.line,e.previousToken.start.character),end:new Fn.ASTPosition(e.previousToken.line,e.previousToken.end.character),range:e.previousToken.range,scope:e.currentScope});e.lineRegistry.addItemToLines(i),n.body.push(i);return}default:break}super.parseStatement()}parseChunk(){let e=this;e.next();let n=e.token,r=e.astProvider.chunk({start:n.start,end:null,range:[n.range[0],null]}),i=new Fn.PendingChunk(r,e.lineRegistry);for(e.backpatches.setDefault(i),e.pushScope(r);!je.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!je.Selectors.EndOfFile(e.token));)e.lexer.recordSnapshot(),e.statementErrors=[],e.parseStatement(),e.statementErrors.length>0&&e.tryToRecover();let s=e.backpatches.pop();for(;!(0,Fn.isPendingChunk)(s);){let o=e.raise(`found open block ${s.block.type}`,new Y1.Range(s.block.start,s.block.start));if(s.complete(e.previousToken),e.errors.push(o),!e.unsafe)throw o;s=e.backpatches.pop()}return e.finishRemaingScopes(),e.popScope(),i.complete(e.token),r.literals=e.literals,r.scopes=e.scopes,r.lines=e.lineRegistry.lines,r.imports=e.imports,r.includes=e.includes,r.injects=e.injects,r}};qu.default=Q_});var Yr=m(Nt=>{"use strict";var kF=Nt&&Nt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),ju=Nt&&Nt.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&kF(e,t,n)},Z_=Nt&&Nt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Nt,"__esModule",{value:!0});Nt.Parser=Nt.LexerValidator=Nt.Lexer=void 0;var AF=F_();Object.defineProperty(Nt,"Lexer",{enumerable:!0,get:function(){return Z_(AF).default}});var CF=N_();Object.defineProperty(Nt,"LexerValidator",{enumerable:!0,get:function(){return Z_(CF).default}});var OF=Q1();Object.defineProperty(Nt,"Parser",{enumerable:!0,get:function(){return Z_(OF).default}});ju(Y_(),Nt);ju(q_(),Nt);ju(Ko(),Nt);ju(Vo(),Nt);ju(J_(),Nt)});var ev=m(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});Od.merge=void 0;function RF(t,e,n=1e4){if(e.length<=n){Array.prototype.push.apply(t,e);return}for(let r=0;r<e.length;r+=n)Array.prototype.push.apply(t,e.slice(r,r+n))}Od.merge=RF});var Z1=m(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});Rd.parseMapDescription=void 0;var PF=kb(),DF=jn();function IF(t){return DF.SignatureDefinitionTypeMeta.fromString(t)}function MF(t){return{path:t.name,type:t.type.split("|").map(IF)}}function LF(t){let e=t.tags.find(r=>r.tag==="type");if(!e)return null;let n=t.tags.filter(r=>r.tag==="property");return{type:e.name,properties:n.map(MF)}}function NF(t){let e=(0,PF.parse)(`/**
109
109
  ${t}
110
- */`),[n]=e;return n.tags.length>0?LF(n):null}Rd.parseMapDescription=NF});var nv=m(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});Xo.Aggregator=Xo.ASTChainIterator=void 0;var Fu=Yr(),Te=jn(),Ee=ke(),qF=E_(),we=Ls(),eC=Ns(),Bs=k_(),tC=cb(),nC=__(),jF=b_(),iC=iu(),rC=ev(),FF=R_(),$F=Z1(),BF=zo(),Pd=class{constructor(e,n,r=!1,i=!1){this.aggregator=e,this.chain=n,this.noInvoke=r,this.assume=i,this.index=0,this.endIndex=this.chain.length-1,this.current=null}defineAssumedProperty(e,n){let r=this.aggregator.factory(this.index===0?we.CompletionItemKind.Variable:we.CompletionItemKind.Property);return typeof n=="string"&&r.setLabel(n),this.assume?(r.addType(Te.SignatureDefinitionBaseType.Map),e.setProperty(n,r),e.resolveProperty(n,!0)):(r.addType(Te.SignatureDefinitionBaseType.Any),r)}getInitial(){let e=null,n=this.aggregator.scope,r=this.aggregator.document,i=this.chain[0],s=i.unary?.operator==="@"&&!i.isInCallExpression||this.noInvoke&&this.index===this.endIndex;if((0,Bs.isResolveChainItemWithIdentifier)(i))if(i.getter.name==="globals")e=n.globals;else if(i.getter.name==="outer")e=n.outer;else if(i.getter.name==="locals")e=n.locals;else if(i.getter.name==="super"){let o=r.getScopeContext(i.ref.scope)?.scope.context?.getIsa();o==null?e=this.aggregator.factory(we.CompletionItemKind.Constant).addType("null").setLabel("super"):e=o.copy({kind:we.CompletionItemKind.Constant,label:"super",values:o.values})}else if(i.getter.name==="self"){let o=r.getScopeContext(i.ref.scope)?.scope.context;o==null?e=this.aggregator.factory(we.CompletionItemKind.Constant).addType("null").setLabel("self"):e=o.copy({kind:we.CompletionItemKind.Constant,label:"self",values:o.values})}else{let o=n.resolveNamespace(i.getter.name,s);o==null&&(o=this.defineAssumedProperty(n.globals,i.getter.name)),e=o}else if((0,Bs.isResolveChainItemWithValue)(i))e=this.aggregator.resolveTypeWithDefault(i.value,s);else return null;if(i.unary?.operator===Ee.Keyword.New&&e!==null){let o=this.aggregator.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Map).setLabel(e.label);o.setProperty("__isa",e),this.aggregator.createCustomTypeFromMap(i.unary,o),e=o}return e}getNext(){let e=this.current,n=this.chain[this.index];if((0,Bs.isResolveChainItemWithMember)(n)){let r=n.unary?.operator==="@"&&!n.isInCallExpression||this.noInvoke&&this.index===this.endIndex,i=e.resolveProperty(n.getter.name,r);i==null&&(i=this.defineAssumedProperty(e,n.getter.name)),e=i}else if((0,Bs.isResolveChainItemWithIndex)(n)){let r=n.unary?.operator==="@"&&!n.isInCallExpression||this.noInvoke&&this.index===this.endIndex||!n.ref.isStatementStart;if((0,iC.isValidIdentifierLiteral)(n.getter)){let i=n.getter.value.toString(),s=e.resolveProperty(i,r);s==null&&(s=this.defineAssumedProperty(e,i)),e=s}else{let i=this.aggregator.resolveTypeWithDefault(n.getter),s=e.resolveProperty(i,n.isInCallExpression);s==null&&(s=this.defineAssumedProperty(e,i)),e=s}}else if(n.ref.type===Ee.ASTType.SliceExpression)e=e.copy();else return null;if(n.unary?.operator===Ee.Keyword.New&&this.current!==null){let r=this.aggregator.factory(we.CompletionItemKind.Property).addType(Te.SignatureDefinitionBaseType.Map).setLabel(e.label);r.setProperty("__isa",e),this.aggregator.createCustomTypeFromMap(n.unary,r),e=r}return e}next(){if(this.index>=this.chain.length)return{value:null,done:!0};let e=this.index===0?this.getInitial():this.getNext();return e==null?{value:null,done:!0}:(this.index++,this.current=e,{value:e,done:!1})}};Xo.ASTChainIterator=Pd;var tv=class{get definitions(){return this._definitions}get parent(){return this._parent}get scope(){return this._scope}get document(){return this._document}constructor(e){this._root=e.root,this._scope=e.scope,this._document=e.document,this._parent=e.parent??null,this._definitions=new Map,this._lastModifiedProperty=null}factory(e){return new BF.Entity({source:this._document.source,kind:e,container:this._document.container})}createMapDescription(e){let n=this._document.getLastASTItemOfLine(e.start.line-1),r=this._document.findASTItemInLine(e.start.line,Ee.ASTType.Comment);if(n instanceof Ee.ASTComment){let i=new Set,s=[],o=e.start.line-1;for(;o>=0;){let a=this._document.getLastASTItemOfLine(o--);if(!i.has(a))if(a instanceof Ee.ASTComment)i.add(a),s.unshift(a.value);else break}return s.join(`
110
+ */`),[n]=e;return n.tags.length>0?LF(n):null}Rd.parseMapDescription=NF});var nv=m(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});Xo.Aggregator=Xo.ASTChainIterator=void 0;var Fu=Yr(),Te=jn(),Ee=ke(),qF=E_(),we=Ls(),eC=Ns(),Bs=k_(),tC=cb(),nC=__(),jF=b_(),iC=iu(),rC=ev(),FF=R_(),$F=Z1(),BF=zo(),Pd=class{constructor(e,n,r=!1,i=!1){this.aggregator=e,this.chain=n,this.noInvoke=r,this.assume=i,this.index=0,this.endIndex=this.chain.length-1,this.current=null}defineAssumedProperty(e,n){let r=this.aggregator.factory(this.index===0?we.CompletionItemKind.Variable:we.CompletionItemKind.Property);return typeof n=="string"&&r.setLabel(n),this.assume?(r.addType(Te.SignatureDefinitionBaseType.Map),e.setProperty(n,r),e.resolveProperty(n,!0)):(r.addType(Te.SignatureDefinitionBaseType.Any),r)}getInitial(){let e=null,n=this.aggregator.scope,r=this.aggregator.document,i=this.chain[0],s=i.unary?.operator==="@"&&!i.isInCallExpression||this.noInvoke&&this.index===this.endIndex;if((0,Bs.isResolveChainItemWithIdentifier)(i))if(i.getter.name==="globals")e=n.globals;else if(i.getter.name==="outer")e=n.outer;else if(i.getter.name==="locals")e=n.locals;else if(i.getter.name==="super"){let o=r.getScopeContext(i.ref.scope)?.scope.context?.getIsa();o==null?e=this.aggregator.factory(we.CompletionItemKind.Constant).addType("null").setLabel("super"):e=o.copy({kind:we.CompletionItemKind.Constant,label:"super",values:o.values})}else if(i.getter.name==="self"){let o=r.getScopeContext(i.ref.scope)?.scope.context;o==null?e=this.aggregator.factory(we.CompletionItemKind.Constant).addType("null").setLabel("self"):e=o.copy({kind:we.CompletionItemKind.Constant,label:"self",values:o.values})}else{let o=n.resolveNamespace(i.getter.name,s);o==null&&(o=this.defineAssumedProperty(n.globals,i.getter.name)),e=o}else if((0,Bs.isResolveChainItemWithValue)(i))e=this.aggregator.resolveTypeWithDefault(i.value,s);else return null;if(i.unary?.operator===Ee.Keyword.New&&e!==null){let o=this.aggregator.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Map).setLabel(e.label);o.setProperty("__isa",e),this.aggregator.createCustomTypeFromMap(i.unary,o),e=o}return e}getNext(){let e=this.current,n=this.chain[this.index];if((0,Bs.isResolveChainItemWithMember)(n)){let r=n.unary?.operator==="@"&&!n.isInCallExpression||this.noInvoke&&this.index===this.endIndex,i=e.resolveProperty(n.getter.name,r);i==null&&(i=this.defineAssumedProperty(e,n.getter.name)),e=i}else if((0,Bs.isResolveChainItemWithIndex)(n)){let r=n.unary?.operator==="@"&&!n.isInCallExpression||this.noInvoke&&this.index===this.endIndex||!n.ref.isStatementStart&&!n.isInCallExpression;if((0,iC.isValidIdentifierLiteral)(n.getter)){let i=n.getter.value.toString(),s=e.resolveProperty(i,r);s==null&&(s=this.defineAssumedProperty(e,i)),e=s}else{let i=this.aggregator.resolveTypeWithDefault(n.getter),s=e.resolveProperty(i,r);s==null&&(s=this.defineAssumedProperty(e,i)),e=s}}else if(n.ref.type===Ee.ASTType.SliceExpression)e=e.copy();else return null;if(n.unary?.operator===Ee.Keyword.New&&this.current!==null){let r=this.aggregator.factory(we.CompletionItemKind.Property).addType(Te.SignatureDefinitionBaseType.Map).setLabel(e.label);r.setProperty("__isa",e),this.aggregator.createCustomTypeFromMap(n.unary,r),e=r}return e}next(){if(this.index>=this.chain.length)return{value:null,done:!0};let e=this.index===0?this.getInitial():this.getNext();return e==null?{value:null,done:!0}:(this.index++,this.current=e,{value:e,done:!1})}};Xo.ASTChainIterator=Pd;var tv=class{get definitions(){return this._definitions}get parent(){return this._parent}get scope(){return this._scope}get document(){return this._document}constructor(e){this._root=e.root,this._scope=e.scope,this._document=e.document,this._parent=e.parent??null,this._definitions=new Map,this._lastModifiedProperty=null}factory(e){return new BF.Entity({source:this._document.source,kind:e,container:this._document.container})}createMapDescription(e){let n=this._document.getLastASTItemOfLine(e.start.line-1),r=this._document.findASTItemInLine(e.start.line,Ee.ASTType.Comment);if(n instanceof Ee.ASTComment){let i=new Set,s=[],o=e.start.line-1;for(;o>=0;){let a=this._document.getLastASTItemOfLine(o--);if(!i.has(a))if(a instanceof Ee.ASTComment)i.add(a),s.unshift(a.value);else break}return s.join(`
111
111
  `)}else if(r instanceof Ee.ASTComment)return r.value;return null}createCustomTypeFromMap(e,n){let r=this.createMapDescription(e);if(r==null)return;let i=(0,$F.parseMapDescription)(r);i!=null&&(i.properties.forEach(s=>{if(s.path==="__isa")return;let o=s.path.split("."),a=this.factory(we.CompletionItemKind.Property).addTypesWithMeta(s.type).setLabel(o[o.length-1]);this.setEntityInPath(n,o,a)}),this._scope.setCustomType(i.type,n))}createFunctionDescription(e,n=qF.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION){let r=this._document.getLastASTItemOfLine(e.start.line-1),i=this._document.findASTItemInLine(e.start.line,Ee.ASTType.Comment);if(r instanceof Ee.ASTComment){let s=new Set,o=[],a=e.start.line-1;for(;a>=0;){let u=this._document.getLastASTItemOfLine(a--);if(!s.has(u))if(u instanceof Ee.ASTComment)s.add(u),o.unshift(u.value);else break}return o.join(`
112
112
 
113
113
  `)}else if(i instanceof Ee.ASTComment)return i.value;return n}resolveFunctionStatement(e){let n=Te.SignatureDefinitionFunction.parse({type:Te.SignatureDefinitionBaseType.Function,description:this.createFunctionDescription(e),arguments:e.parameters.map(r=>{if(r.type===Ee.ASTType.Identifier)return{label:r.name??"unknown",type:Te.SignatureDefinitionBaseType.Any};let i=r;return{label:i.variable?.name??"unknown",types:Array.from(this.resolveTypeWithDefault(i.init).types)}}),returns:["any"]});return this.factory(we.CompletionItemKind.Function).addType(Te.SignatureDefinitionBaseType.Function).addSignatureType((0,jF.enrichWithMetaInformation)(n)).setLine(e.start.line)}resolveParenthesisExpression(e){return this.resolveTypeWithDefault(e.expression)}resolveBinaryExpression(e){let n=this.factory(we.CompletionItemKind.Expression).setLabel("Binary Expr").setLine(e.start.line),r=this.resolveTypeWithDefault(e.left),i=this.resolveTypeWithDefault(e.right);return n.extend(r),n.extend(i),n}resolveLogicalExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Logical Expr").addType(Te.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveComparisonGroupExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Comparison Group Expr").addType(Te.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveIsaExpression(e){return this.factory(we.CompletionItemKind.Expression).setLabel("Isa Expr").addType(Te.SignatureDefinitionBaseType.Number).setLine(e.start.line)}resolveCallStatement(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveCallExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveUnaryExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line):n}resolveMapConstructorExpression(e){let n=this.factory(we.CompletionItemKind.MapConstructor).addType(Te.SignatureDefinitionBaseType.Map);for(let r=0;r<e.fields.length;r++){let i=e.fields[r],s=this.resolveTypeWithDefault(i.value).setLine(i.start.line);if(i.key.type===Ee.ASTType.StringLiteral){let o=i.key.value.toString();n.setProperty(o,s),n.values.get(`${eC.PropertyType.Identifier}:${o}`)?.definitions.push({source:this._document.source,node:i})}else{let o=this.resolveTypeWithDefault(i.key).setLine(i.start.line);n.setProperty(o,s)}}return this.createCustomTypeFromMap(e,n),n.setLabel("{}").setLine(e.start.line)}resolveListConstructorExpression(e){let n=this.factory(we.CompletionItemKind.ListConstructor).addType(Te.SignatureDefinitionBaseType.List);for(let r=0;r<e.fields.length;r++){let i=e.fields[r],s=this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Number).setLine(i.start.line),o=this.resolveTypeWithDefault(i.value).setLine(i.start.line);n.setProperty(s,o)}return n.setLabel("[]").setLine(e.start.line)}resolveSliceExpression(e){let n=this.resolveNamespace(e);return n===null?this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line):n.setLine(e.start.line)}resolveIndexExpression(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line):r}resolveMemberExpression(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Property).addType(Te.SignatureDefinitionBaseType.Any).setLabel(e.identifier.name).setLine(e.start.line):r}resolveIdentifier(e,n=!1){let r=this.resolveNamespace(e,n);return r===null?this.factory(we.CompletionItemKind.Property).addType(Te.SignatureDefinitionBaseType.Any).setLabel(e.name).setLine(e.start.line):r}resolveType(e,n=!1){if(e==null)return null;switch(e.type){case Ee.ASTType.ParenthesisExpression:return this.resolveParenthesisExpression(e);case Ee.ASTType.CallStatement:return this.resolveCallStatement(e);case Ee.ASTType.CallExpression:return this.resolveCallExpression(e);case Ee.ASTType.BinaryExpression:return this.resolveBinaryExpression(e);case Ee.ASTType.LogicalExpression:return this.resolveLogicalExpression(e);case Ee.ASTType.IsaExpression:return this.resolveIsaExpression(e);case Ee.ASTType.ComparisonGroupExpression:return this.resolveComparisonGroupExpression(e);case Ee.ASTType.FunctionDeclaration:return this.resolveFunctionStatement(e);case Ee.ASTType.SliceExpression:return this.resolveSliceExpression(e);case Ee.ASTType.IndexExpression:return this.resolveIndexExpression(e,n);case Ee.ASTType.MemberExpression:return this.resolveMemberExpression(e,n);case Ee.ASTType.Identifier:return this.resolveIdentifier(e,n);case Ee.ASTType.MapConstructorExpression:return this.resolveMapConstructorExpression(e);case Ee.ASTType.ListConstructorExpression:return this.resolveListConstructorExpression(e);case Ee.ASTType.NegationExpression:case Ee.ASTType.BinaryNegatedExpression:case Ee.ASTType.UnaryExpression:return this.resolveUnaryExpression(e);case Ee.ASTType.NilLiteral:return this.factory(we.CompletionItemKind.Literal).addType("null").setLabel("null").setLine(e.start.line);case Ee.ASTType.StringLiteral:{let r=e.value.toString();return this.factory(we.CompletionItemKind.Literal).addType(Te.SignatureDefinitionBaseType.String).setLabel(`"${r.length>20?r.substr(0,20)+"...":r}"`).setLine(e.start.line)}case Ee.ASTType.NumericLiteral:case Ee.ASTType.BooleanLiteral:{let r=e.value.toString();return this.factory(we.CompletionItemKind.Literal).addType(Te.SignatureDefinitionBaseType.Number).setLabel(r).setLine(e.start.line)}case Fu.ASTType.FeatureFileExpression:return this.factory(we.CompletionItemKind.Expression).addType(Te.SignatureDefinitionBaseType.String).setLabel("File Expr").setLine(e.start.line);case Fu.ASTType.FeatureLineExpression:return this.factory(we.CompletionItemKind.Expression).addType(Te.SignatureDefinitionBaseType.Number).setLabel("Line Expr").setLine(e.start.line);case Fu.ASTType.FeatureEnvarExpression:return this.factory(we.CompletionItemKind.Expression).addType(Te.SignatureDefinitionBaseType.String).setLabel("Envar Expr").setLine(e.start.line);case Fu.ASTType.FeatureInjectExpression:return this.factory(we.CompletionItemKind.Expression).addType(Te.SignatureDefinitionBaseType.String).setLabel("Inject Expr").setLine(e.start.line);default:return null}}resolveTypeWithDefault(e=null,n=!1){let r=this.resolveType(e,n);if(r==null){let i=this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any);return e!=null&&i.setLine(e.start.line),i}return r}resolveChain(e,n=!1,r=!1){if(e.length===0)return null;let i=new Pd(this,e,n,r),s=null,o=i.next();for(;!o.done;)s=o.value,o=i.next();return s}setEntityInPath(e,n,r){let i=e;for(let s=0;s<n.length-1;s++){let o=n[s],a=i.resolveProperty(o);if(a==null){let u=this.factory(we.CompletionItemKind.Property).addType(Te.SignatureDefinitionBaseType.Map).setLabel(o);i.setProperty(o,u),a=u}i=a}return i.setProperty(n[n.length-1],r)}getEntityInPath(e,n){let r=e;for(let i=0;i<n.length;i++){let s=n[i],o=r.resolveProperty(s);if(o==null)return null;r=o}return r}resolveNamespace(e,n=!1){let r=(0,nC.createResolveChain)(e);return this.resolveChain(r,n)}defineProperty(e,n,r){let i=e.setProperty(n,r);return this._lastModifiedProperty=e.resolveProperty(n,!0),i}defineNamespace(e,n){let r=(0,nC.createResolveChain)(e),i=r.pop();if(this._lastModifiedProperty=null,r.length>0){let o=this.resolveChain(r,!1,!0);if(o===null)return!1;if((0,Bs.isResolveChainItemWithMember)(i))return this.defineProperty(o,i.getter.name,n);if((0,Bs.isResolveChainItemWithIndex)(i)){if((0,iC.isValidIdentifierLiteral)(i.getter))return this.defineProperty(o,i.getter.value.toString(),n);{let a=this.resolveTypeWithDefault(i.getter);return this.defineProperty(o,a,n)}}return!1}let s=this._scope;return(0,Bs.isResolveChainItemWithIdentifier)(i)?this.defineProperty(s,i.getter.name,n):!1}addDefinition(e,n){this._lastModifiedProperty?.definitions.push({source:this._document.source,node:e});let r=(0,tC.createExpressionId)(n),i=this._definitions;r.startsWith("globals.")?(i=this._document.getRootScopeContext().aggregator.definitions,r=r.slice(8)):r.startsWith("locals.")?(i=this._definitions,r=r.slice(7)):r.startsWith("outer.")&&(i=this.parent.definitions,r=r.slice(6));let s=i.get(r);s?s.push({source:this._document.source,node:e}):i.set(r,[{source:this._document.source,node:e}])}resolveAvailableAssignmentsWithQuery(e){let n=[];return new Set([this,this._parent,this._document.getRootScopeContext().aggregator]).forEach(i=>{let s=i.definitions;s.forEach((o,a)=>{if(a.includes(e)){let u=s.get(a);(0,rC.merge)(n,u)}})}),n}resolveAvailableAssignments(e){let n=(0,tC.createExpressionId)(e),r=this;n.startsWith("globals.")?(r=this._document.getRootScopeContext().aggregator,n=n.slice(8)):n.startsWith("locals.")?(r=this,n=n.slice(7)):n.startsWith("outer.")&&(r=this.parent,n=n.slice(6));let i=[];return new Set([r,r._parent,r._document.getRootScopeContext().aggregator]).forEach(o=>{if(o==null)return;let a=o.resolveNamespace(e,!0);a!=null&&(0,rC.merge)(i,a.definitions)}),i}analyzeAssignmentDefinition(e){let n=this.resolveType(e.init)?.copy({source:this._document.source}).setLine(e.start.line)??this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line);this.defineNamespace(e.variable,n),this.addDefinition(e,e.variable)}analyzeForDefinition(e){let n=this.resolveType(e.iterator)?.copy({source:this._document.source}).setLine(e.start.line)??this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line),r=this.factory(we.CompletionItemKind.Variable).setLine(e.start.line);if(n.types.has(Te.SignatureDefinitionBaseType.List)){let o=n.values.get(`${eC.PropertyType.Type}:number`);o!=null&&r.extend(o)}if(n.types.has(Te.SignatureDefinitionBaseType.String)&&r.addType(Te.SignatureDefinitionBaseType.String),n.types.has(Te.SignatureDefinitionBaseType.Map)){let o=this.factory(we.CompletionItemKind.Variable).addTypes(n.getPropertyTypes()).setLine(e.start.line),a=this.factory(we.CompletionItemKind.Property).addTypes(n.getValueTypes()).setLine(e.start.line);r.addType(Te.SignatureDefinitionBaseType.Map),r.setProperty("key",o),r.setProperty("value",a)}r.types.size===0&&r.addType(Te.SignatureDefinitionBaseType.Any),this.defineNamespace(e.variable,r),this.addDefinition(e,e.variable);let i=this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Number).setLine(e.start.line),s=new Ee.ASTIdentifier({name:`__${e.variable.name}_idx`,kind:Ee.ASTIdentifierKind.Variable,range:e.range,start:e.start,end:e.end});this.defineNamespace(s,i),this.addDefinition(e,s)}analyzeImportDefinition(e){let n=e.name,r=this.scope.resolveProperty(n.name,!0);if(r!=null){this._lastModifiedProperty=r,this.addDefinition(e,e.name);return}let i=this.factory(we.CompletionItemKind.Variable).addType(Te.SignatureDefinitionBaseType.Any).setLine(e.start.line);this.defineNamespace(e.name,i),this.addDefinition(e,e.name)}analyze(){for(let e=0;e<this._root.definitions.length;e++){let n=this._root.definitions[e];switch(n.type){case Ee.ASTType.AssignmentStatement:{this.analyzeAssignmentDefinition(n);break}case Ee.ASTType.ForGenericStatement:{this.analyzeForDefinition(n);break}case Fu.ASTType.FeatureImportExpression:{this.analyzeImportDefinition(n);break}}}}extend(e){e.definitions.forEach((n,r)=>{let i=this.definitions.get(r);i?(0,FF.mergeUnique)(i,n):this.definitions.set(r,n)})}};Xo.Aggregator=tv});var iv=m(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});Dd.Document=void 0;var vi=jn(),WF=ke(),sC=Ls(),UF=ev(),oC=nv(),aC=zo(),uC=I_(),rv=class t{get source(){return this._source}get root(){return this._root}get container(){return this._container}get intrinsics(){return this._intrinscis}get globals(){return this._globals}get api(){return this._api}constructor(e){this._source=e.source,this._root=e.root,this._container=e.container,this._scopeMapping=e.scopeMapping??new WeakMap,this._intrinscis=e.intrinsics??this.createIntrinscis(),this._api=e.api??this.initApi(),this._globals=e.globals??this.initGlobals()}createIntrinscis(){return{map:this._container.primitives.get(vi.SignatureDefinitionBaseType.Map),funcRef:this._container.primitives.get(vi.SignatureDefinitionBaseType.Function),number:this._container.primitives.get(vi.SignatureDefinitionBaseType.Number),string:this._container.primitives.get(vi.SignatureDefinitionBaseType.String),list:this._container.primitives.get(vi.SignatureDefinitionBaseType.List)}}initApi(){let e=this._container.primitives.get(vi.SignatureDefinitionBaseType.General);return e.resolveProperty("map",!0).setReturnEntity(this._intrinscis.map),e.resolveProperty("funcRef",!0).setReturnEntity(this._intrinscis.funcRef),e.resolveProperty("number",!0).setReturnEntity(this._intrinscis.number),e.resolveProperty("string",!0).setReturnEntity(this._intrinscis.string),e.resolveProperty("list",!0).setReturnEntity(this._intrinscis.list),e}initGlobals(){return new aC.Entity({source:this._source,kind:sC.CompletionItemKind.Constant,container:this._container,label:"globals"}).addType(vi.SignatureDefinitionBaseType.Map)}analyzeScope(e){let n=this._scopeMapping.get(e.scope),r=new uC.Scope({source:this._source,container:this._container,parent:n?.scope,globals:this._globals}),i=new oC.Aggregator({scope:r,root:e,document:this,parent:n?.aggregator});this._scopeMapping.set(e,{scope:r,aggregator:i});let s=e.assignment instanceof WF.ASTAssignmentStatement?this.resolveNamespace(e.assignment.variable,!0):null;if(s!==null){let o=s?.context;o!=null&&o.types.has(vi.SignatureDefinitionBaseType.Map)&&o!==this._globals&&r.setContext(o)}if(i.analyze(),s!==null){let o=s.signatureDefinitions.last();if(o!=null){let a=o.getArguments();for(let u=0;u<a.length;u++){let c=a[u],l=r.resolveProperty(c.getLabel(),!0),h=c.getTypes();l===null?r.setProperty(c.getLabel(),new aC.Entity({source:this._source,kind:sC.CompletionItemKind.Variable,container:this._container}).addTypesWithMeta(h)):(l.types.delete(vi.SignatureDefinitionBaseType.Any),l.addTypesWithMeta(h))}}}}analyze(){let e=new uC.Scope({source:this._source,container:this._container,globals:this._globals,locals:this._globals}),n=new oC.Aggregator({scope:e,root:this._root,document:this});this._scopeMapping.set(this._root,{scope:e,aggregator:n}),n.analyze();for(let r=0;r<this._root.scopes.length;r++){let i=this._root.scopes[r];this.analyzeScope(i)}}getRootScopeContext(){return this._scopeMapping.get(this._root)}getAllScopeContexts(){return[this._root,...this._root.scopes].map(e=>this._scopeMapping.get(e))}getScopeContext(e){return this._scopeMapping.get(e)??null}getLastASTItemOfLine(e){let n=this._root.lines[e];if(!n||n.length===0)return null;let r=n[0];for(let i=1;i<n.length;i++){let s=n[i];(s.start.line>r.start.line||s.start.line===r.start.line&&s.start.character>r.start.character)&&(r=s)}return r}findASTItemInLine(e,n){let r=this._root.lines[e];if(r&&r.length>0){let i=r.find(s=>s.type===n);if(i)return i}return null}resolveAllAssignmentsWithQuery(e){let n=[],r=[this._root,...this._root.scopes];for(let i=0;i<r.length;i++){let o=this._scopeMapping.get(r[i]).aggregator.definitions;o.forEach((a,u)=>{if(u.includes(e)){let c=o.get(u);(0,UF.merge)(n,c)}})}return n}resolveAvailableAssignments(e){return this._scopeMapping.get(e.scope)?.aggregator.resolveAvailableAssignments(e)??[]}resolveType(e,n){return this._scopeMapping.get(e.scope)?.aggregator.resolveType(e,n)??null}resolveTypeWithDefault(e,n){return this._scopeMapping.get(e.scope)?.aggregator.resolveTypeWithDefault(e,n)}resolveNamespace(e,n=!1){return this._scopeMapping.get(e.scope)?.aggregator.resolveNamespace(e,n)??null}merge(...e){let n=new t({source:this._source,root:this._root,container:this._container.copy()});for(let r=0;r<e.length;r++){let i=e[r];n._globals.extend(i._globals,!0,!0),n._intrinscis.map.extend(i._intrinscis.map,!0,!0),n._intrinscis.funcRef.extend(i._intrinscis.funcRef,!0,!0),n._intrinscis.number.extend(i._intrinscis.number,!0,!0),n._intrinscis.string.extend(i._intrinscis.string,!0,!0),n._intrinscis.list.extend(i._intrinscis.list,!0,!0),n._container.mergeCustomTypes(i._container)}n.analyze();for(let r=0;r<e.length;r++){let i=e[r];n.getRootScopeContext().aggregator.extend(i.getRootScopeContext().aggregator)}return n}};Dd.Document=rv});var uv=m(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});Id.ContainerProxy=void 0;var Ar=jn(),sv=Ns(),Si=zo(),cC=Ls(),lC=xu(),ov=bd(),av=class t{get primitives(){return this._primitives}get types(){return this._types}constructor(e){this._container=e.container,this._primitives=e.primitives??this.createPrimitives(),this._types=e.types??this.createTypes(),this._customTypes=new Set}createPrimitives(){let e=new Map;return this._container.getPrimitives().forEach((n,r)=>{let i=new Si.Entity({source:"internal",kind:cC.CompletionItemKind.Internal,container:this,isAPI:r===Ar.SignatureDefinitionBaseType.General}).addType(Ar.SignatureDefinitionBaseType.Map).insertSignature(n);e.set(r,i)}),e}createTypes(){let e=new Map;return this._container.getTypes().forEach((n,r)=>{let i=new Si.Entity({source:"internal",kind:cC.CompletionItemKind.Internal,container:this}).addType(Ar.SignatureDefinitionBaseType.Map).insertSignature(n);e.set(r,i)}),e}setCustomType(e,n){this._types.has(e)||(this._types.set(e,n),this._customTypes.add(e))}mergeCustomTypes(e){e._customTypes.forEach(n=>{let r=e._types.get(n);r!=null&&this.setCustomType(n,r.copy({deepCopy:!0}))})}getTypeSignature(e){return this._primitives.get(e)??this._types.get(e)??null}searchDefinitionMatches(e,n){if(typeof e=="string")return this.searchDefinitionMatches([e],n);let r=e.includes(Ar.SignatureDefinitionBaseType.Any)?new Set(this._container.getAllVisibleTypes()):new Set(e),i=new Map;return r.forEach(s=>{let o=this.getTypeSignature(s);if(o===null)return;let a=(0,ov.lookupProperty)(sv.PropertyType.Identifier,o,n);a!==null&&i.set(s,a)}),i}getDefinition(e,n,r=!1){if(typeof e=="string")return this.getDefinition([e],n);let i=(0,ov.lookupProperty)(sv.PropertyType.Identifier,this._primitives.get(Ar.SignatureDefinitionBaseType.Any),n);if(e.includes(Ar.SignatureDefinitionBaseType.Any)&&i)return Si.Entity.resolveEntity(this,i,r);let s=this.searchDefinitionMatches(e,n);if(s.size===0)return null;if(s.size===1)return Si.Entity.resolveEntity(this,s.values().next().value,r);if(s.has(Ar.SignatureDefinitionBaseType.Any))return Si.Entity.resolveEntity(this,s.get(Ar.SignatureDefinitionBaseType.Any),r);if(i!==null)return Si.Entity.resolveEntity(this,i,r);let o=s.values().next().value,a=new Si.Entity({source:"internal",label:n,kind:o.kind,container:this});return s.forEach(u=>{let c=Si.Entity.resolveEntity(this,u,r);a.extend(c,!0,!0)}),a}getGeneralDefinition(e,n=!1){let r=(0,ov.lookupProperty)(sv.PropertyType.Identifier,this._primitives.get(Ar.SignatureDefinitionBaseType.General),e);return r==null?null:Si.Entity.resolveEntity(this,r,n)}injectTypeIdentifiers(e,n){let r=this.getTypeSignature(n);if(r!=null&&((0,lC.injectIdentifers)(e,r),this._types.has(n))){let i=this._primitives.get(Ar.SignatureDefinitionBaseType.Map);(0,lC.injectIdentifers)(e,i)}}getAvailableIdentifier(e){let n=new Map;if(e===Ar.SignatureDefinitionBaseType.Any){let r=this._container.getAllVisibleTypes();for(let i=0;i<r.length;i++)this.injectTypeIdentifiers(n,r[i]);return n}return this.injectTypeIdentifiers(n,e),n}copy(){return new t({container:this._container})}};Id.ContainerProxy=av});var hC=m(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});Md.TypeManager=void 0;var HF=iv(),GF=uv(),cv=class{constructor(e){this._container=new GF.ContainerProxy({container:e.container}),this._types=new Map}analyze(e,n){let r=new HF.Document({source:e,container:this._container.copy(),root:n});try{r.analyze()}catch(i){console.error(i)}return this._types.set(e,r),r}get(e){return this._types.get(e)??null}};Md.TypeManager=cv});var Yo=m(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.TypeManager=ee.ContainerProxy=ee.Document=ee.Aggregator=ee.Scope=ee.Entity=ee.aggregateEntity=ee.lookupProperty=ee.isEligibleForProperties=ee.injectIdentifers=ee.isSignatureDefinitionFunction=ee.isResolveChainItemWithValue=ee.isResolveChainItemWithMember=ee.isResolveChainItemWithIndex=ee.isResolveChainItemWithIdentifier=ee.IsaPropertyPattern=ee.IdentifierPropertyPattern=ee.PropertyType=ee.CompletionItemKind=ee.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION=ee.ObjectSetIterator=ee.ObjectSet=ee.rotateBits=ee.getStringHashCode=ee.getHashCode=ee.createResolveChain=ee.enrichWithMetaInformation=ee.createExpressionId=ee.createExpressionHash=ee.isValidIdentifierLiteral=void 0;var zF=iu();Object.defineProperty(ee,"isValidIdentifierLiteral",{enumerable:!0,get:function(){return zF.isValidIdentifierLiteral}});var KF=yk();Object.defineProperty(ee,"createExpressionHash",{enumerable:!0,get:function(){return KF.createExpressionHash}});var VF=cb();Object.defineProperty(ee,"createExpressionId",{enumerable:!0,get:function(){return VF.createExpressionId}});var XF=b_();Object.defineProperty(ee,"enrichWithMetaInformation",{enumerable:!0,get:function(){return XF.enrichWithMetaInformation}});var YF=__();Object.defineProperty(ee,"createResolveChain",{enumerable:!0,get:function(){return YF.createResolveChain}});var lv=ub();Object.defineProperty(ee,"getHashCode",{enumerable:!0,get:function(){return lv.getHashCode}});Object.defineProperty(ee,"getStringHashCode",{enumerable:!0,get:function(){return lv.getStringHashCode}});Object.defineProperty(ee,"rotateBits",{enumerable:!0,get:function(){return lv.rotateBits}});var dC=T_();Object.defineProperty(ee,"ObjectSet",{enumerable:!0,get:function(){return dC.ObjectSet}});Object.defineProperty(ee,"ObjectSetIterator",{enumerable:!0,get:function(){return dC.ObjectSetIterator}});var JF=E_();Object.defineProperty(ee,"DEFAULT_CUSTOM_FUNCTION_DESCRIPTION",{enumerable:!0,get:function(){return JF.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION}});var QF=Ls();Object.defineProperty(ee,"CompletionItemKind",{enumerable:!0,get:function(){return QF.CompletionItemKind}});var hv=Ns();Object.defineProperty(ee,"PropertyType",{enumerable:!0,get:function(){return hv.PropertyType}});Object.defineProperty(ee,"IdentifierPropertyPattern",{enumerable:!0,get:function(){return hv.IdentifierPropertyPattern}});Object.defineProperty(ee,"IsaPropertyPattern",{enumerable:!0,get:function(){return hv.IsaPropertyPattern}});var Ld=k_();Object.defineProperty(ee,"isResolveChainItemWithIdentifier",{enumerable:!0,get:function(){return Ld.isResolveChainItemWithIdentifier}});Object.defineProperty(ee,"isResolveChainItemWithIndex",{enumerable:!0,get:function(){return Ld.isResolveChainItemWithIndex}});Object.defineProperty(ee,"isResolveChainItemWithMember",{enumerable:!0,get:function(){return Ld.isResolveChainItemWithMember}});Object.defineProperty(ee,"isResolveChainItemWithValue",{enumerable:!0,get:function(){return Ld.isResolveChainItemWithValue}});var ZF=A_();Object.defineProperty(ee,"isSignatureDefinitionFunction",{enumerable:!0,get:function(){return ZF.isSignatureDefinitionFunction}});var e$=xu();Object.defineProperty(ee,"injectIdentifers",{enumerable:!0,get:function(){return e$.injectIdentifers}});var t$=md();Object.defineProperty(ee,"isEligibleForProperties",{enumerable:!0,get:function(){return t$.isEligibleForProperties}});var n$=bd();Object.defineProperty(ee,"lookupProperty",{enumerable:!0,get:function(){return n$.lookupProperty}});var r$=C_();Object.defineProperty(ee,"aggregateEntity",{enumerable:!0,get:function(){return r$.aggregateEntity}});var i$=zo();Object.defineProperty(ee,"Entity",{enumerable:!0,get:function(){return i$.Entity}});var s$=I_();Object.defineProperty(ee,"Scope",{enumerable:!0,get:function(){return s$.Scope}});var o$=nv();Object.defineProperty(ee,"Aggregator",{enumerable:!0,get:function(){return o$.Aggregator}});var a$=iv();Object.defineProperty(ee,"Document",{enumerable:!0,get:function(){return a$.Document}});var u$=uv();Object.defineProperty(ee,"ContainerProxy",{enumerable:!0,get:function(){return u$.ContainerProxy}});var c$=hC();Object.defineProperty(ee,"TypeManager",{enumerable:!0,get:function(){return c$.TypeManager}})});var dv=m(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.getSymbolItemKind=Jo.getCompletionItemKind=void 0;var at=Yo(),l$={[at.CompletionItemKind.Constant]:21,[at.CompletionItemKind.Internal]:21,[at.CompletionItemKind.InternalFunction]:21,[at.CompletionItemKind.InternalProperty]:21,[at.CompletionItemKind.Property]:6,[at.CompletionItemKind.Variable]:6,[at.CompletionItemKind.Expression]:6,[at.CompletionItemKind.Function]:3,[at.CompletionItemKind.ListConstructor]:12,[at.CompletionItemKind.MapConstructor]:12,[at.CompletionItemKind.Literal]:12,[at.CompletionItemKind.Unknown]:12},h$=t=>l$[t]??6;Jo.getCompletionItemKind=h$;var d$={[at.CompletionItemKind.Constant]:14,[at.CompletionItemKind.Internal]:14,[at.CompletionItemKind.InternalFunction]:14,[at.CompletionItemKind.InternalProperty]:14,[at.CompletionItemKind.Variable]:13,[at.CompletionItemKind.Property]:13,[at.CompletionItemKind.Expression]:13,[at.CompletionItemKind.Function]:12,[at.CompletionItemKind.ListConstructor]:18,[at.CompletionItemKind.MapConstructor]:19,[at.CompletionItemKind.Literal]:13,[at.CompletionItemKind.Unknown]:13},f$=t=>d$[t]??13;Jo.getSymbolItemKind=f$});var fC=m(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});Nd.CompletionListBuilder=void 0;var p$=dv(),fv=class{constructor(){this.collection=new Map,this.default=[]}setDefault(e){this.default=e}addCollection(e){e!=null&&(this.collection=new Map([...this.collection,...e]))}build(){let e=[];for(let[n,r]of this.collection)e.push({label:n,kind:(0,p$.getCompletionItemKind)(r.kind)});return[...e,...this.default]}};Nd.CompletionListBuilder=fv});var jd=m(Qo=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});Qo.findEx=Qo.ScraperWalker=void 0;var g$=ke(),m$=function(t){return{ParenthesisExpression:(e,n)=>{t(e.expression,n)},AssignmentStatement:function(e,n){t(e.init,n),t(e.variable,n)},MemberExpression:function(e,n){t(e.base,n),t(e.identifier,n)},FunctionDeclaration:function(e,n){for(let r=0;r<e.parameters.length;r++)t(e.parameters[r],n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},MapConstructorExpression:function(e,n){for(let r=0;r<e.fields.length;r++)t(e.fields[r],n)},ReturnStatement:function(e,n){e.argument&&t(e.argument,n)},WhileStatement:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},IndexExpression:function(e,n){t(e.base,n),t(e.index,n)},SliceExpression:function(e,n){t(e.base,n),t(e.left,n),t(e.right,n)},ListValue:function(e,n){t(e.value,n)},MapKeyString:function(e,n){t(e.key,n),t(e.value,n)},IfShortcutStatement:function(e,n){for(let r=0;r<e.clauses.length;r++)t(e.clauses[r],n)},IfShortcutClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseifShortcutClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseShortcutClause:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ForGenericStatement:function(e,n){t(e.variable,n),t(e.iterator,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},IfStatement:function(e,n){for(let r=0;r<e.clauses.length;r++)t(e.clauses[r],n)},IfClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseifClause:function(e,n){t(e.condition,n);for(let r=0;r<e.body.length;r++)t(e.body[r],n)},ElseClause:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},NegationExpression:function(e,n){t(e.argument,n)},CallExpression:function(e,n){t(e.base,n);for(let r=0;r<e.arguments.length;r++)t(e.arguments[r],n)},CallStatement:function(e,n){t(e.expression,n)},ListConstructorExpression:function(e,n){for(let r=0;r<e.fields.length;r++)t(e.fields[r],n)},BinaryExpression:function(e,n){t(e.left,n),t(e.right,n)},BinaryNegatedExpression:function(e,n){t(e.argument,n)},IsaExpression:function(e,n){t(e.left,n),t(e.right,n)},LogicalExpression:function(e,n){t(e.left,n),t(e.right,n)},ComparisonGroupExpression:function(e,n){for(let r=0;r<e.expressions.length;r++)t(e.expressions[r],n)},UnaryExpression:function(e,n){t(e.argument,n)},Chunk:function(e,n){for(let r=0;r<e.body.length;r++)t(e.body[r],n)},InvalidCodeExpression:()=>{}}},qd=class{constructor(e,n={}){this.map=Object.assign(m$(this.visit.bind(this)),n),this.callback=e,this.state={exit:!1,skip:!1}}visit(e,n=0){if(e==null)return;if(e.type==null)throw console.error("Error ast type:",e),new Error("Unexpected as type");let r=this.callback(e,n);if(r!=null&&Object.assign(this.state,r),this.state.exit||this.state.skip){this.state.skip=!1;return}let i=this.map[e.type];i?.call(this,e,n+1)}};Qo.ScraperWalker=qd;function y$(t,e){let n=[];return new qd((i,s)=>{let o=t(i,s)||{};return o.valid&&i.type!==g$.ASTType.InvalidCodeExpression&&n.push(i),{exit:!!o.exit,skip:!!o.skip}}).visit(e),n}Qo.findEx=y$});var pv=m(mn=>{"use strict";Object.defineProperty(mn,"__esModule",{value:!0});mn.lookupBase=mn.lookupIdentifier=mn.lookupScopes=mn.lookupRootScope=void 0;var wi=ke(),b$=t=>{let e=t;for(;e.scope;)e=e.scope;return e};mn.lookupRootScope=b$;var _$=t=>{if(!t.scope)return[t];let e=(0,mn.lookupRootScope)(t);return e===t.scope?[t,e]:[t,t.scope,e]};mn.lookupScopes=_$;var v$=t=>{switch(t.type){case wi.ASTType.CallStatement:return(0,mn.lookupIdentifier)(t.expression);case wi.ASTType.CallExpression:return(0,mn.lookupIdentifier)(t.base);case wi.ASTType.Identifier:return t;case wi.ASTType.MemberExpression:return(0,mn.lookupIdentifier)(t.identifier);case wi.ASTType.IndexExpression:return(0,mn.lookupIdentifier)(t.index);default:return null}};mn.lookupIdentifier=v$;var S$=(t=null)=>{switch(t?.type){case wi.ASTType.MemberExpression:return t.base;case wi.ASTType.IndexExpression:return t.base;case wi.ASTType.CallExpression:return t.base;case wi.ASTType.SliceExpression:return t.base;default:return null}};mn.lookupBase=S$});var ea=m(Jr=>{"use strict";var w$=Jr&&Jr.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),T$=Jr&&Jr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),E$=Jr&&Jr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)n!=="default"&&Object.prototype.hasOwnProperty.call(t,n)&&w$(e,t,n);return T$(e,t),e};Object.defineProperty(Jr,"__esModule",{value:!0});Jr.LookupHelper=void 0;var x$=jn(),pC=ke(),Zo=Yo(),k$=E$(jd()),A$=pv(),gv=class{constructor(e,n){this.document=e,this.context=n,this.mergedTypeMap=null}async getTypeMap(){return this.mergedTypeMap==null&&(this.mergedTypeMap=await this.context.documentMerger.build(this.document,this.context)),this.mergedTypeMap}async findAllAssignmentsOfIdentifier(e,n){let r=await this.getTypeMap();if(r==null)return[];let i=r.getScopeContext(n);return i==null?[]:i.aggregator.resolveAvailableAssignmentsWithQuery(e)}async findAllAssignmentsOfItem(e,n){let r=await this.getTypeMap();if(r==null)return[];let i=r.getScopeContext(n);return i==null?[]:i.aggregator.resolveAvailableAssignments(e)}async findAllAvailableIdentifierInRoot(){let e=await this.getTypeMap();return e==null?new Map:e.getRootScopeContext().scope.getAvailableIdentifier()}async findAllAvailableIdentifier(e){let n=await this.getTypeMap();if(n==null)return new Map;let r=n.getScopeContext(e);return r==null?new Map:r.scope.getAvailableIdentifier()}async findAllAvailableIdentifierRelatedToPosition(e){let n=await this.getTypeMap(),r=new Map;if(n==null)return r;for(let a of n.container.getAvailableIdentifier(x$.SignatureDefinitionBaseType.General))r.set(...a);let i=n.getScopeContext(e.scope);if(i==null)return r;i.scope.isSelfAvailable()&&r.set("self",{kind:Zo.CompletionItemKind.Constant,line:-1}),i.scope.isSuperAvailable()&&r.set("super",{kind:Zo.CompletionItemKind.Constant,line:-1});let s=new Map;(0,Zo.injectIdentifers)(s,i.scope);let o=Array.from(s.entries()).map(([a,u])=>({identifier:a,...u})).sort((a,u)=>a.line-u.line);for(let a=0;a<o.length;a++){let u=o[a];if(u.line>=e.end.line)break;r.set(u.identifier,{kind:u.kind,line:u.line})}return i.scope.locals!==i.scope.globals&&(0,Zo.injectIdentifers)(r,i.scope.globals),i.scope.outer&&(0,Zo.injectIdentifers)(r,i.scope.outer),r}lookupAST(e){let n=this,i=this.context.documentManager.get(n.document).document.lines[e.line+1];if(!i)return null;for(let s=0;s<i.length;s++){let o=i[s],a=k$.findEx((c,l)=>{let h=c.start.line-1,d=c.start.character-1,g=c.end.line-1,y=c.end.character-1;return h>e.line?{exit:!0}:h<g?{valid:e.line>h&&e.line<g||e.line===h&&d<=e.character||e.line===g&&y>=e.character}:{valid:h<=e.line&&d<=e.character&&g>=e.line&&y>=e.character}},o),u=a.pop();if(u)return{closest:u,outer:a}}return null}async lookupBasePath(e){let n=await this.getTypeMap();if(n===null)return null;let r=(0,A$.lookupBase)(e);return r?n.resolveNamespace(r):null}async lookupTypeInfo({closest:e,outer:n}){let r=await this.getTypeMap();if(r===null)return null;let i=n.length>0?n[n.length-1]:void 0;return i?.type===pC.ASTType.MemberExpression&&e===i.identifier||i?.type===pC.ASTType.IndexExpression&&e===i.index&&(0,Zo.isValidIdentifierLiteral)(e)?r.resolveType(i,!0):r.resolveType(e,!0)}lookupType(e){let n=this,r=n.lookupAST(e);return r?n.lookupTypeInfo(r):null}};Jr.LookupHelper=gv});var gC=m(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});Fd.AVAILABLE_CONSTANTS=void 0;Fd.AVAILABLE_CONSTANTS=["true","false","null","params","globals","locals","outer"].map(t=>({label:t,kind:21}))});var mC=m($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.AVAILABLE_KEYWORDS=void 0;var ta=Yr(),un=ke();$d.AVAILABLE_KEYWORDS=[un.Keyword.If,un.Keyword.In,un.Keyword.Or,un.Keyword.And,un.Keyword.Isa,un.Keyword.For,un.Keyword.New,un.Keyword.Not,un.Keyword.End,un.Keyword.Then,un.Keyword.Else,un.Keyword.Break,un.Keyword.While,un.Keyword.Return,un.Keyword.Function,un.Keyword.Continue,ta.GreybelKeyword.Envar,ta.GreybelKeyword.Import,ta.GreybelKeyword.Include,ta.GreybelKeyword.Debugger,ta.GreybelKeyword.Line,ta.GreybelKeyword.File].map(t=>({label:t,kind:14}))});var yC=m(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});Bd.AVAILABLE_OPERATORS=void 0;var $u=Vo(),Ut=ke();Bd.AVAILABLE_OPERATORS=[Ut.Operator.Plus,Ut.Operator.Asterik,Ut.Operator.Minus,Ut.Operator.Slash,Ut.Operator.Power,Ut.Operator.Modulo,Ut.Operator.LessThan,Ut.Operator.GreaterThan,Ut.Operator.LessThanOrEqual,Ut.Operator.GreaterThanOrEqual,Ut.Operator.NotEqual,Ut.Operator.Equal,Ut.Operator.AddShorthand,Ut.Operator.SubtractShorthand,Ut.Operator.MultiplyShorthand,Ut.Operator.DivideShorthand,$u.Operator.BitwiseAnd,$u.Operator.BitwiseOr,$u.Operator.LeftShift,$u.Operator.RightShift,$u.Operator.UnsignedRightShift,Ut.Operator.Assign,Ut.Operator.Reference].map(t=>({label:t,kind:24}))});var _C=m(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.activate=ar.getDefaultCompletionList=ar.getPropertyCompletionList=void 0;var bC=ke(),C$=fC(),O$=ea(),R$=gC(),P$=mC(),D$=yC(),I$=async(t,e)=>{let n=await t.lookupBasePath(e);return n===null?null:n.getAvailableIdentifier()};ar.getPropertyCompletionList=I$;var M$=()=>[...P$.AVAILABLE_KEYWORDS,...D$.AVAILABLE_OPERATORS,...R$.AVAILABLE_CONSTANTS];ar.getDefaultCompletionList=M$;function L$(t){t.connection.onCompletion(async e=>{if(!t.getConfiguration().autocomplete)return;let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=await t.documentManager.getLatest(n),i=new O$.LookupHelper(r.textDocument,t),s=i.lookupAST(e.position),o=new C$.CompletionListBuilder;if(s){let{closest:a}=s;a instanceof bC.ASTMemberExpression?o.addCollection(await(0,ar.getPropertyCompletionList)(i,a)):a instanceof bC.ASTIndexExpression?o.addCollection(await(0,ar.getPropertyCompletionList)(i,a)):(o.setDefault((0,ar.getDefaultCompletionList)()),o.addCollection(await i.findAllAvailableIdentifierRelatedToPosition(s.closest)))}else o.setDefault((0,ar.getDefaultCompletionList)()),o.addCollection(await i.findAllAvailableIdentifierInRoot());return o.build()}),t.connection.onCompletionResolve(e=>e)}ar.activate=L$});var SC=m((FK,vC)=>{"use strict";vC.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var mv=m(($K,TC)=>{var Bu=SC(),wC={};for(let t of Object.keys(Bu))wC[Bu[t]]=t;var re={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};TC.exports=re;for(let t of Object.keys(re)){if(!("channels"in re[t]))throw new Error("missing channels property: "+t);if(!("labels"in re[t]))throw new Error("missing channel labels property: "+t);if(re[t].labels.length!==re[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:n}=re[t];delete re[t].channels,delete re[t].labels,Object.defineProperty(re[t],"channels",{value:e}),Object.defineProperty(re[t],"labels",{value:n})}re.rgb.hsl=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.min(e,n,r),s=Math.max(e,n,r),o=s-i,a,u;s===i?a=0:e===s?a=(n-r)/o:n===s?a=2+(r-e)/o:r===s&&(a=4+(e-n)/o),a=Math.min(a*60,360),a<0&&(a+=360);let c=(i+s)/2;return s===i?u=0:c<=.5?u=o/(s+i):u=o/(2-s-i),[a,u*100,c*100]};re.rgb.hsv=function(t){let e,n,r,i,s,o=t[0]/255,a=t[1]/255,u=t[2]/255,c=Math.max(o,a,u),l=c-Math.min(o,a,u),h=function(d){return(c-d)/6/l+1/2};return l===0?(i=0,s=0):(s=l/c,e=h(o),n=h(a),r=h(u),o===c?i=r-n:a===c?i=1/3+e-r:u===c&&(i=2/3+n-e),i<0?i+=1:i>1&&(i-=1)),[i*360,s*100,c*100]};re.rgb.hwb=function(t){let e=t[0],n=t[1],r=t[2],i=re.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(n,r));return r=1-1/255*Math.max(e,Math.max(n,r)),[i,s*100,r*100]};re.rgb.cmyk=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.min(1-e,1-n,1-r),s=(1-e-i)/(1-i)||0,o=(1-n-i)/(1-i)||0,a=(1-r-i)/(1-i)||0;return[s*100,o*100,a*100,i*100]};function N$(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}re.rgb.keyword=function(t){let e=wC[t];if(e)return e;let n=1/0,r;for(let i of Object.keys(Bu)){let s=Bu[i],o=N$(t,s);o<n&&(n=o,r=i)}return r};re.keyword.rgb=function(t){return Bu[t]};re.rgb.xyz=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255;e=e>.04045?((e+.055)/1.055)**2.4:e/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;let i=e*.4124+n*.3576+r*.1805,s=e*.2126+n*.7152+r*.0722,o=e*.0193+n*.1192+r*.9505;return[i*100,s*100,o*100]};re.rgb.lab=function(t){let e=re.rgb.xyz(t),n=e[0],r=e[1],i=e[2];n/=95.047,r/=100,i/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;let s=116*r-16,o=500*(n-r),a=200*(r-i);return[s,o,a]};re.hsl.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100,i,s,o;if(n===0)return o=r*255,[o,o,o];r<.5?i=r*(1+n):i=r+n-r*n;let a=2*r-i,u=[0,0,0];for(let c=0;c<3;c++)s=e+1/3*-(c-1),s<0&&s++,s>1&&s--,6*s<1?o=a+(i-a)*6*s:2*s<1?o=i:3*s<2?o=a+(i-a)*(2/3-s)*6:o=a,u[c]=o*255;return u};re.hsl.hsv=function(t){let e=t[0],n=t[1]/100,r=t[2]/100,i=n,s=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,i*=s<=1?s:2-s;let o=(r+n)/2,a=r===0?2*i/(s+i):2*n/(r+n);return[e,a*100,o*100]};re.hsv.rgb=function(t){let e=t[0]/60,n=t[1]/100,r=t[2]/100,i=Math.floor(e)%6,s=e-Math.floor(e),o=255*r*(1-n),a=255*r*(1-n*s),u=255*r*(1-n*(1-s));switch(r*=255,i){case 0:return[r,u,o];case 1:return[a,r,o];case 2:return[o,r,u];case 3:return[o,a,r];case 4:return[u,o,r];case 5:return[r,o,a]}};re.hsv.hsl=function(t){let e=t[0],n=t[1]/100,r=t[2]/100,i=Math.max(r,.01),s,o;o=(2-n)*r;let a=(2-n)*i;return s=n*i,s/=a<=1?a:2-a,s=s||0,o/=2,[e,s*100,o*100]};re.hwb.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100,i=n+r,s;i>1&&(n/=i,r/=i);let o=Math.floor(6*e),a=1-r;s=6*e-o,o&1&&(s=1-s);let u=n+s*(a-n),c,l,h;switch(o){default:case 6:case 0:c=a,l=u,h=n;break;case 1:c=u,l=a,h=n;break;case 2:c=n,l=a,h=u;break;case 3:c=n,l=u,h=a;break;case 4:c=u,l=n,h=a;break;case 5:c=a,l=n,h=u;break}return[c*255,l*255,h*255]};re.cmyk.rgb=function(t){let e=t[0]/100,n=t[1]/100,r=t[2]/100,i=t[3]/100,s=1-Math.min(1,e*(1-i)+i),o=1-Math.min(1,n*(1-i)+i),a=1-Math.min(1,r*(1-i)+i);return[s*255,o*255,a*255]};re.xyz.rgb=function(t){let e=t[0]/100,n=t[1]/100,r=t[2]/100,i,s,o;return i=e*3.2406+n*-1.5372+r*-.4986,s=e*-.9689+n*1.8758+r*.0415,o=e*.0557+n*-.204+r*1.057,i=i>.0031308?1.055*i**(1/2.4)-.055:i*12.92,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,i=Math.min(Math.max(0,i),1),s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),[i*255,s*255,o*255]};re.xyz.lab=function(t){let e=t[0],n=t[1],r=t[2];e/=95.047,n/=100,r/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;let i=116*n-16,s=500*(e-n),o=200*(n-r);return[i,s,o]};re.lab.xyz=function(t){let e=t[0],n=t[1],r=t[2],i,s,o;s=(e+16)/116,i=n/500+s,o=s-r/200;let a=s**3,u=i**3,c=o**3;return s=a>.008856?a:(s-16/116)/7.787,i=u>.008856?u:(i-16/116)/7.787,o=c>.008856?c:(o-16/116)/7.787,i*=95.047,s*=100,o*=108.883,[i,s,o]};re.lab.lch=function(t){let e=t[0],n=t[1],r=t[2],i;i=Math.atan2(r,n)*360/2/Math.PI,i<0&&(i+=360);let o=Math.sqrt(n*n+r*r);return[e,o,i]};re.lch.lab=function(t){let e=t[0],n=t[1],i=t[2]/360*2*Math.PI,s=n*Math.cos(i),o=n*Math.sin(i);return[e,s,o]};re.rgb.ansi16=function(t,e=null){let[n,r,i]=t,s=e===null?re.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),s===0)return 30;let o=30+(Math.round(i/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return s===2&&(o+=60),o};re.hsv.ansi16=function(t){return re.rgb.ansi16(re.hsv.rgb(t),t[2])};re.rgb.ansi256=function(t){let e=t[0],n=t[1],r=t[2];return e===n&&n===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)};re.ansi16.rgb=function(t){let e=t%10;if(e===0||e===7)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];let n=(~~(t>50)+1)*.5,r=(e&1)*n*255,i=(e>>1&1)*n*255,s=(e>>2&1)*n*255;return[r,i,s]};re.ansi256.rgb=function(t){if(t>=232){let s=(t-232)*10+8;return[s,s,s]}t-=16;let e,n=Math.floor(t/36)/5*255,r=Math.floor((e=t%36)/6)/5*255,i=e%6/5*255;return[n,r,i]};re.rgb.hex=function(t){let n=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(n.length)+n};re.hex.rgb=function(t){let e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let n=e[0];e[0].length===3&&(n=n.split("").map(a=>a+a).join(""));let r=parseInt(n,16),i=r>>16&255,s=r>>8&255,o=r&255;return[i,s,o]};re.rgb.hcg=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255,i=Math.max(Math.max(e,n),r),s=Math.min(Math.min(e,n),r),o=i-s,a,u;return o<1?a=s/(1-o):a=0,o<=0?u=0:i===e?u=(n-r)/o%6:i===n?u=2+(r-e)/o:u=4+(e-n)/o,u/=6,u%=1,[u*360,o*100,a*100]};re.hsl.hcg=function(t){let e=t[1]/100,n=t[2]/100,r=n<.5?2*e*n:2*e*(1-n),i=0;return r<1&&(i=(n-.5*r)/(1-r)),[t[0],r*100,i*100]};re.hsv.hcg=function(t){let e=t[1]/100,n=t[2]/100,r=e*n,i=0;return r<1&&(i=(n-r)/(1-r)),[t[0],r*100,i*100]};re.hcg.rgb=function(t){let e=t[0]/360,n=t[1]/100,r=t[2]/100;if(n===0)return[r*255,r*255,r*255];let i=[0,0,0],s=e%1*6,o=s%1,a=1-o,u=0;switch(Math.floor(s)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=a,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=a,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=a}return u=(1-n)*r,[(n*i[0]+u)*255,(n*i[1]+u)*255,(n*i[2]+u)*255]};re.hcg.hsv=function(t){let e=t[1]/100,n=t[2]/100,r=e+n*(1-e),i=0;return r>0&&(i=e/r),[t[0],i*100,r*100]};re.hcg.hsl=function(t){let e=t[1]/100,r=t[2]/100*(1-e)+.5*e,i=0;return r>0&&r<.5?i=e/(2*r):r>=.5&&r<1&&(i=e/(2*(1-r))),[t[0],i*100,r*100]};re.hcg.hwb=function(t){let e=t[1]/100,n=t[2]/100,r=e+n*(1-e);return[t[0],(r-e)*100,(1-r)*100]};re.hwb.hcg=function(t){let e=t[1]/100,r=1-t[2]/100,i=r-e,s=0;return i<1&&(s=(r-i)/(1-i)),[t[0],i*100,s*100]};re.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};re.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};re.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};re.gray.hsl=function(t){return[0,0,t[0]]};re.gray.hsv=re.gray.hsl;re.gray.hwb=function(t){return[0,100,t[0]]};re.gray.cmyk=function(t){return[0,0,0,t[0]]};re.gray.lab=function(t){return[t[0],0,0]};re.gray.hex=function(t){let e=Math.round(t[0]/100*255)&255,r=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(r.length)+r};re.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var xC=m((BK,EC)=>{var Wd=mv();function q$(){let t={},e=Object.keys(Wd);for(let n=e.length,r=0;r<n;r++)t[e[r]]={distance:-1,parent:null};return t}function j$(t){let e=q$(),n=[t];for(e[t].distance=0;n.length;){let r=n.pop(),i=Object.keys(Wd[r]);for(let s=i.length,o=0;o<s;o++){let a=i[o],u=e[a];u.distance===-1&&(u.distance=e[r].distance+1,u.parent=r,n.unshift(a))}}return e}function F$(t,e){return function(n){return e(t(n))}}function $$(t,e){let n=[e[t].parent,t],r=Wd[e[t].parent][t],i=e[t].parent;for(;e[i].parent;)n.unshift(e[i].parent),r=F$(Wd[e[i].parent][i],r),i=e[i].parent;return r.conversion=n,r}EC.exports=function(t){let e=j$(t),n={},r=Object.keys(e);for(let i=r.length,s=0;s<i;s++){let o=r[s];e[o].parent!==null&&(n[o]=$$(o,e))}return n}});var AC=m((WK,kC)=>{var yv=mv(),B$=xC(),na={},W$=Object.keys(yv);function U$(t){let e=function(...n){let r=n[0];return r==null?r:(r.length>1&&(n=r),t(n))};return"conversion"in t&&(e.conversion=t.conversion),e}function H$(t){let e=function(...n){let r=n[0];if(r==null)return r;r.length>1&&(n=r);let i=t(n);if(typeof i=="object")for(let s=i.length,o=0;o<s;o++)i[o]=Math.round(i[o]);return i};return"conversion"in t&&(e.conversion=t.conversion),e}W$.forEach(t=>{na[t]={},Object.defineProperty(na[t],"channels",{value:yv[t].channels}),Object.defineProperty(na[t],"labels",{value:yv[t].labels});let e=B$(t);Object.keys(e).forEach(r=>{let i=e[r];na[t][r]=H$(i),na[t][r].raw=U$(i)})});kC.exports=na});var OC=m(ra=>{"use strict";var G$=ra&&ra.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ra,"__esModule",{value:!0});ra.activate=void 0;var bv=G$(AC()),z$=ke(),CC;(function(t){t.Black="black",t.Blue="blue",t.Green="green",t.Orange="orange",t.Purple="purple",t.Red="red",t.White="white",t.Yellow="yellow"})(CC||(CC={}));var _v={black:"#000000",blue:"#0000FF",green:"#00FF00",orange:"#FF8800",purple:"#CC8899",red:"#FF0000",white:"#FFFFFF",yellow:"#FFFF00"},K$=()=>new RegExp(`(?:mark|color)=(${Object.keys(_v).join("|")}|(?:#[0-9a-f]{6}|#[0-9a-f]{3}))`,"ig"),V$=Object.prototype.hasOwnProperty;function X$(t){t.connection.onColorPresentation(e=>[{label:`#${bv.default.rgb.hex(e.color.red*255,e.color.green*255,e.color.blue*255)}`}]),t.connection.onDocumentColor(async e=>{let n=await t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let s=(await t.documentManager.getLatest(n)).document.literals.filter(u=>u.type===z$.ASTType.StringLiteral),o=[],a=({match:u,markup:c,value:l,astPosition:h,lineIndex:d})=>{let g=u.index+c.indexOf("=")+1,y=g+l.length,_=h.line-1+d,C=g,k=y;return d===0&&(C+=h.character,k+=h.character),{start:{line:_,character:C},end:{line:_,character:k}}};for(let u=0;u<s.length;u++){let c=s[u];if(!c.start)continue;let l=c.start,h=c.value.toString().split(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "miniscript-languageserver",
3
- "version": "1.9.1",
3
+ "version": "1.9.2",
4
4
  "description": "Language server for MiniScript",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -72,6 +72,6 @@
72
72
  "greybel-transpiler": "~3.6.1",
73
73
  "miniscript-languageserver-core": "^1.8.0",
74
74
  "miniscript-meta": "~1.3.1",
75
- "miniscript-type-analyzer": "~0.20.1"
75
+ "miniscript-type-analyzer": "~0.20.2"
76
76
  }
77
77
  }