greybel-languageserver-browser 2.2.4 → 2.2.5

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}
107
107
  `),i=(0,UN.parseAssignDescription)(r);if(i!=null)return i.type.length>1?new zP.UnionType(this.context.typeStorage.generateId(an.TypeKind.UnionType,e),i.type.map(s=>(0,GP.determineTypeFromMeta)(s,this.context.typeStorage,this.context.document,this.context.scope)),this.context.typeStorage,this.context.document,this.context.scope,e):(0,GP.determineTypeFromMeta)(i.type[0],this.context.typeStorage,this.context.document,this.context.scope,e)}return null}createFunctionDescription(e,n=Kt.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION){let r=this.resolveRelatedCommentLines(e);return r==null?n:r.join(`
108
108
 
109
109
  `)}inferLogicalExpression(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.Number,this.completionItemKind=Ln.CompletionItemKind.Expression,this.value=null,n}inferIsaExpression(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.Number,this.completionItemKind=Ln.CompletionItemKind.Expression,this.value=null,n}inferComparisonGroupExpression(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.Number,this.completionItemKind=Ln.CompletionItemKind.Expression,this.value=null,n}inferSliceExpression(e){let n=this.infer(e.base);return this.path+=Kt.PathType.Slice,this.completionItemKind=Ln.CompletionItemKind.Expression,this.value=null,n}inferConstantIdentifier(e){let n=this.context.scope;switch(this.completionItemKind=Ln.CompletionItemKind.Constant,e.name){case Kt.ConstantIdentifier.Self:return n.getSelf();case Kt.ConstantIdentifier.Globals:return n.getGlobals();case Kt.ConstantIdentifier.Outer:return n.getOuter();case Kt.ConstantIdentifier.Locals:return n.getLocals();case Kt.ConstantIdentifier.Super:return n.getSuper();default:throw new Error(`Unknown constant identifier: ${e.name}`)}}inferUnaryExpression(e){if(e.operator===Kt.UnaryType.Not)return ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);e.operator===Zo.Operator.Reference&&(this.skipNextInvoke=!0);let n=this.infer(e.argument);if(n==null)return ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.operator===Zo.Operator.New&&(0,an.isMapType)(n)){let r=new NN.MapType(this.context.typeStorage.generateId(an.TypeKind.MapType,e),null,null,this.context.typeStorage,this.context.document,this.context.scope,null);return r.setProperty(an.ISA_PROPERTY,new FN.EntityInfo(an.ISA_PROPERTY,n)),r}return n}inferNilLiteral(e){let n=ut.Type.createBaseType(an.NIL_TYPE_ID,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.Nil,this.completionItemKind=Ln.CompletionItemKind.Literal,this.value="null",n}inferStringLiteral(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.String,this.context.typeStorage,this.context.document,this.context.scope,null),r=e.value.length>an.MAX_STRING_LENGTH?`"${e.value.slice(0,an.MAX_STRING_LENGTH)}..."`:`"${e.value}"`;return this.path+=r,this.completionItemKind=Ln.CompletionItemKind.Literal,this.value=r,n}inferNumericLiteral(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=e.value.toString(),this.completionItemKind=Ln.CompletionItemKind.Literal,this.value=e.value.toString(),n}inferBooleanLiteral(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.Number,this.completionItemKind=Ln.CompletionItemKind.Literal,this.value=e.value.toString(),n}inferFeatureFileExpression(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.String,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.String,this.completionItemKind=Ln.CompletionItemKind.Literal,this.value=null,n}inferFeatureLineExpression(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.Number,this.completionItemKind=Ln.CompletionItemKind.Literal,this.value=null,n}inferFeatureEnvarExpression(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.String,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.String,this.completionItemKind=Ln.CompletionItemKind.Literal,this.value=null,n}inferFeatureInjectExpression(e){let n=ut.Type.createBaseType(Me.SignatureDefinitionBaseType.String,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Kt.PathType.String,this.completionItemKind=Ln.CompletionItemKind.Literal,this.value=null,n}handleBinaryAddOperation(e,n){let r=e.getKeyType(),i=n.getKeyType();return(r==null?void 0:r.id)===(i==null?void 0:i.id)?(0,an.isMapType)(e)?(0,YP.shallowMergeMap)(e,n):(0,an.isListType)(e)?(0,YP.shallowMergeList)(e,n):(0,an.isUnionType)(e)?new zP.UnionType(this.context.typeStorage.generateId(an.TypeKind.UnionType),[e,n],this.context.typeStorage,this.context.document,this.context.scope,null):ut.Type.createBaseType(e.id,this.context.typeStorage,this.context.document,this.context.scope,null):e.id===Me.SignatureDefinitionBaseType.String||n.id===Me.SignatureDefinitionBaseType.String?ut.Type.createBaseType(Me.SignatureDefinitionBaseType.String,this.context.typeStorage,this.context.document,this.context.scope,null):e.id===Me.SignatureDefinitionBaseType.Number||n.id===Me.SignatureDefinitionBaseType.Number?ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null):ut.Type.createBaseType(an.NIL_TYPE_ID,this.context.typeStorage,this.context.document,this.context.scope,null)}handleBinaryMultiplyOperation(e,n){return e.id===Me.SignatureDefinitionBaseType.String&&n.id===Me.SignatureDefinitionBaseType.Number?ut.Type.createBaseType(Me.SignatureDefinitionBaseType.String,this.context.typeStorage,this.context.document,this.context.scope,null):e.id===Me.SignatureDefinitionBaseType.Number||n.id===Me.SignatureDefinitionBaseType.Number?ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null):ut.Type.createBaseType(an.NIL_TYPE_ID,this.context.typeStorage,this.context.document,this.context.scope,null)}handleDefaultMathOperation(e,n){return e.id===Me.SignatureDefinitionBaseType.Number||n.id===Me.SignatureDefinitionBaseType.Number?ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null):ut.Type.createBaseType(Me.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null)}inferParenthesisExpression(e){return this.infer(e.expression)}};Ad.InferBase=Wv});var Gl=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});qd.InferLightExpression=void 0;var jd=Zt(),ln=Re(),Ge=fe(),Kv=Mn(),BN=Ho(),vn=on(),VN=Jn(),Ld=kl(),Lt=gr(),Is=Vi(),ea=st(),WN=Md(),Hv=class t extends WN.InferBase{inferCallExpression(e){this.checkSkipNextInvoke();let n=this.infer(e.base);return n==null?vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null):this.invoke(n)}inferBinaryExpression(e){if(Is.SIMPLE_BINARY_OPERATORS_SET.has(e.operator))return this.path+=Is.PathType.Expression,this.completionItemKind=Lt.CompletionItemKind.Expression,this.value=null,vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);let n=new t(this.context).infer(e.left)||vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null),r=new t(this.context).infer(e.right)||vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);switch(this.path+=Is.PathType.Expression,this.completionItemKind=Lt.CompletionItemKind.Expression,this.value=null,e.operator){case Ge.Operator.Plus:return this.handleBinaryAddOperation(n,r);case Ge.Operator.Asterik:return this.handleBinaryMultiplyOperation(n,r);default:return this.handleDefaultMathOperation(n,r)}}inferIndexExpression(e){this.checkSkipNextInvoke();let n=this.infer(e.base);if(n==null)return vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.index.type===Ge.ASTType.InvalidCodeExpression)return vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope);if(e.index.type===Ge.ASTType.StringLiteral){let c=e.index.value,a=n.getProperty(c);if(this.path+=`.${c}`,this.value=null,a!=null)return this.completionItemKind=(0,ea.isFunctionType)(a.type)?Lt.CompletionItemKind.Function:Lt.CompletionItemKind.Property,a.type;this.completionItemKind=Lt.CompletionItemKind.Property;let u=new Ld.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return n.setProperty(c,new Kv.EntityInfo(c,u)),u}let r=new t(this.context).infer(e.index)||vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if((0,ea.isUnionType)(r)){let l=r.variants.map(c=>{var a;return(a=n.getProperty(c.getKeyType()))==null?void 0:a.type}).filter(c=>c!=null);return this.completionItemKind=Lt.CompletionItemKind.Property,l.length===0?vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null):l.length===1?r.firstVariant():new VN.UnionType(this.context.typeStorage.generateId(ea.TypeKind.UnionType,e),l,this.context.typeStorage,this.context.document,this.context.scope,null)}let i=r.getKeyType()||new BN.KeyType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope),s=n.getProperty(i);if(this.path+=`[${r.id}]`,this.value=null,s!=null)return this.completionItemKind=(0,ea.isFunctionType)(s.type)?Lt.CompletionItemKind.Function:Lt.CompletionItemKind.Property,s.type;this.completionItemKind=Lt.CompletionItemKind.Property;let o=new Ld.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return n.setProperty(i,new Kv.EntityInfo(i.id,o)),o}inferFunctionStatement(e){let n=vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Function,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Is.PathType.Function,this.completionItemKind=Lt.CompletionItemKind.Function,this.value=null,n}inferIdentifier(e){let n=this.checkSkipNextInvoke();if(this.path+=e.name,this.value=null,Is.ConstantIdentifierSet.has(e.name)&&!this.context.scope.hasProperty(e.name))return this.inferConstantIdentifier(e)||vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);let r=e.name,i=this.context.scope.getProperty(r);if(i!=null)return this.completionItemKind=(0,ea.isFunctionType)(i.type)?Lt.CompletionItemKind.Function:Lt.CompletionItemKind.Variable,n?i.type:this.invoke(i.type);this.completionItemKind=Lt.CompletionItemKind.Variable;let s=new Ld.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return this.context.scope.setProperty(r,s),s}inferMemberExpression(e){let n=this.checkSkipNextInvoke(),r=this.infer(e.base);if(r==null)return vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.identifier.type===Ge.ASTType.InvalidCodeExpression)return vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope);let i=e.identifier.name,s=r.getProperty(i);if(this.path+=`.${i}`,this.value=null,s!=null)return this.completionItemKind=(0,ea.isFunctionType)(s.type)?Lt.CompletionItemKind.Function:Lt.CompletionItemKind.Property,n?s.type:this.invoke(s.type);this.completionItemKind=Lt.CompletionItemKind.Property;let o=new Ld.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return r.setProperty(i,new Kv.EntityInfo(i,o)),o}inferMapConstructorExpression(e){let n=vn.Type.createBaseType(ln.SignatureDefinitionBaseType.Map,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Is.PathType.Map,this.completionItemKind=Lt.CompletionItemKind.MapConstructor,this.value=null,n}inferListConstructorExpression(e){let n=vn.Type.createBaseType(ln.SignatureDefinitionBaseType.List,this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Is.PathType.List,this.completionItemKind=Lt.CompletionItemKind.ListConstructor,this.value=null,n}infer(e){if(e==null)return null;switch(e.type){case Ge.ASTType.ParenthesisExpression:return this.inferParenthesisExpression(e);case Ge.ASTType.CallExpression:return this.inferCallExpression(e);case Ge.ASTType.BinaryExpression:return this.inferBinaryExpression(e);case Ge.ASTType.LogicalExpression:return this.inferLogicalExpression(e);case Ge.ASTType.IsaExpression:return this.inferIsaExpression(e);case Ge.ASTType.ComparisonGroupExpression:return this.inferComparisonGroupExpression(e);case Ge.ASTType.FunctionDeclaration:return this.inferFunctionStatement(e);case Ge.ASTType.SliceExpression:return this.inferSliceExpression(e);case Ge.ASTType.IndexExpression:return this.inferIndexExpression(e);case Ge.ASTType.MemberExpression:return this.inferMemberExpression(e);case Ge.ASTType.Identifier:return this.inferIdentifier(e);case Ge.ASTType.MapConstructorExpression:return this.inferMapConstructorExpression(e);case Ge.ASTType.ListConstructorExpression:return this.inferListConstructorExpression(e);case Ge.ASTType.NegationExpression:case Ge.ASTType.BinaryNegatedExpression:case Ge.ASTType.UnaryExpression:return this.inferUnaryExpression(e);case Ge.ASTType.NilLiteral:return this.inferNilLiteral(e);case Ge.ASTType.StringLiteral:return this.inferStringLiteral(e);case Ge.ASTType.NumericLiteral:return this.inferNumericLiteral(e);case Ge.ASTType.BooleanLiteral:return this.inferBooleanLiteral(e);case jd.ASTType.FeatureFileExpression:return this.inferFeatureFileExpression(e);case jd.ASTType.FeatureLineExpression:return this.inferFeatureLineExpression(e);case jd.ASTType.FeatureEnvarExpression:return this.inferFeatureEnvarExpression(e);case jd.ASTType.FeatureInjectExpression:return this.inferFeatureInjectExpression(e);default:return null}}};qd.InferLightExpression=Hv});var Ud=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.InferFullExpression=void 0;var Fd=Zt(),pt=Re(),De=fe(),KN=Uo(),Wi=Mn(),HN=Il(),QP=Ho(),XP=ms(),zv=$r(),cn=on(),ZP=Jn(),Nd=kl(),qt=gr(),Ki=Vi(),St=st(),eE=Wo(),zN=$v(),GN=Uv(),YN=Md(),tE=Gl(),Gv=class t extends YN.InferBase{createCustomTypeFromMap(e,n){let r=this.resolveRelatedCommentLines(e);if(r==null)return;let i=r.join(`
110
- `),s=(0,GN.parseMapDescription)(i);s!=null&&(s.properties.forEach(o=>{if(o.path===St.ISA_PROPERTY)return;let l=o.path.split("."),c=o.type.length>1?new ZP.UnionType(this.context.typeStorage.generateId(St.TypeKind.UnionType,e),o.type.map(a=>(0,eE.determineTypeFromMeta)(a,this.context.typeStorage,this.context.document,this.context.scope)),this.context.typeStorage,this.context.document,this.context.scope):(0,eE.determineTypeFromMeta)(o.type[0],this.context.typeStorage,this.context.document,this.context.scope);n.setPropertyInPath(l,new Wi.EntityInfo(l[l.length-1],c))}),this.context.typeStorage.addType(new KN.ClassType(s.type,n,s.extends||pt.SignatureDefinitionBaseType.Map,this.context.typeStorage,this.context.document,this.context.scope,new Map)),this.context.typeStorage.addKeyType(new QP.KeyType(s.type,this.context.typeStorage,this.context.document,this.context.scope,!0)))}inferCallExpression(e){this.checkSkipNextInvoke();let n=this.infer(e.base);return n==null?cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null):this.invoke(n)}inferBinaryExpression(e){if(Ki.SIMPLE_BINARY_OPERATORS_SET.has(e.operator))return this.path+=Ki.PathType.Expression,this.completionItemKind=qt.CompletionItemKind.Expression,this.value=null,cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);let n=new t(this.context).infer(e.left)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null),r=new t(this.context).infer(e.right)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);switch(this.path+=Ki.PathType.Expression,this.completionItemKind=qt.CompletionItemKind.Expression,this.value=null,e.operator){case De.Operator.Plus:return this.handleBinaryAddOperation(n,r);case De.Operator.Asterik:return this.handleBinaryMultiplyOperation(n,r);default:return this.handleDefaultMathOperation(n,r)}}inferIndexExpression(e){this.checkSkipNextInvoke();let n=this.infer(e.base);if(n==null)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.index.type===De.ASTType.InvalidCodeExpression)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope);if(e.index.type===De.ASTType.StringLiteral){let c=e.index.value,a=n.getProperty(c);if(this.path+=`.${c}`,this.value=null,a!=null)return this.completionItemKind=(0,St.isFunctionType)(a.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Property,a.type;this.completionItemKind=qt.CompletionItemKind.Property;let u=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return n.setProperty(c,new Wi.EntityInfo(c,u)),u}let r=new tE.InferLightExpression(this.context).infer(e.index)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(this.path+=`[${r.id}]`,this.value=null,(0,St.isUnionType)(r)){let l=r.variants.map(c=>{var a;return(a=n.getProperty(c.getKeyType()))==null?void 0:a.type}).filter(c=>c!=null);return this.completionItemKind=qt.CompletionItemKind.Property,l.length===0?cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null):l.length===1?r.firstVariant():new ZP.UnionType(this.context.typeStorage.generateId(St.TypeKind.UnionType,e),l,this.context.typeStorage,this.context.document,this.context.scope,null)}let i=r.getKeyType()||new QP.KeyType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope),s=n.getProperty(i);if(s!=null)return this.completionItemKind=(0,St.isFunctionType)(s.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Property,s.type;this.completionItemKind=qt.CompletionItemKind.Property;let o=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return n.setProperty(i,new Wi.EntityInfo(i.id,o)),o}inferFunctionStatement(e){let n=this.createFunctionDescription(e),r=pt.SignatureDefinitionFunction.parse(St.DEFAULT_SIGNATURE_ORIGIN,{id:this.context.typeStorage.generateId(St.TypeKind.FunctionType,e),type:pt.SignatureDefinitionBaseType.Function,description:n,arguments:e.parameters.map(s=>{var c,a,u,p;if(s.type===De.ASTType.Identifier)return{label:(c=s.name)!=null?c:"unknown",type:pt.SignatureDefinitionBaseType.Any};let o=s,l=new t(this.context).infer(o.init)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);return{label:(u=(a=o.variable)==null?void 0:a.name)!=null?u:"unknown",types:[((p=l.getKeyType())==null?void 0:p.id)||pt.SignatureDefinitionBaseType.Any]}}),returns:[St.UNKNOWN_TYPE_ID]}),i=new HN.FunctionType(pt.SignatureDefinitionBaseType.Function,(0,zN.enrichWithMetaInformation)(this.context.typeStorage,r),this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Ki.PathType.Function,this.completionItemKind=qt.CompletionItemKind.Function,this.value=null,i}inferIdentifier(e){let n=this.checkSkipNextInvoke();if(this.path+=e.name,this.value=null,Ki.ConstantIdentifierSet.has(e.name)&&!this.context.scope.hasProperty(e.name))return this.inferConstantIdentifier(e)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);let r=e.name,i=this.context.scope.getProperty(r);if(i!=null)return this.completionItemKind=(0,St.isFunctionType)(i.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Variable,n?i.type:this.invoke(i.type);this.completionItemKind=qt.CompletionItemKind.Variable;let s=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return this.context.scope.setProperty(r,s),s}inferMemberExpression(e){let n=this.checkSkipNextInvoke(),r=this.infer(e.base);if(r==null)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.identifier.type===De.ASTType.InvalidCodeExpression)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope);let i=e.identifier.name,s=r.getProperty(i);if(this.path+=`.${i}`,this.value=null,s!=null)return this.completionItemKind=(0,St.isFunctionType)(s.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Property,n?s.type:this.invoke(s.type);this.completionItemKind=qt.CompletionItemKind.Property;let o=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return r.setProperty(i,new Wi.EntityInfo(i,o)),o}inferMapConstructorExpression(e){var r;if(this.path+=Ki.PathType.Map,this.completionItemKind=qt.CompletionItemKind.MapConstructor,this.value="{}",e.fields.length===0)return new zv.MapType(this.context.typeStorage.generateId(St.TypeKind.MapType,e),null,null,this.context.typeStorage,this.context.document,this.context.scope,null);let n=new zv.MapType(this.context.typeStorage.generateId(St.TypeKind.MapType,e),null,null,this.context.typeStorage,this.context.document,this.context.scope,null);for(let i=0;i<e.fields.length;i++){let s=e.fields[i],o=(r=new t(this.context).infer(s.value))==null?void 0:r.copy(!1,!0,this.context.typeStorage,this.context.document,this.context.scope,s.value);if(o!=null)if(s.key.type===De.ASTType.StringLiteral){let l=s.key;n.setProperty(l.value,new Wi.EntityInfo(l.value,o))}else{let l=new tE.InferLightExpression(this.context).infer(s.key);if(l==null)continue;if((0,St.isUnionType)(l))l.variants.forEach(c=>{let a=c.getKeyType();a!=null&&n.setProperty(a,new Wi.EntityInfo(a.id,o))});else{let c=l.getKeyType();if(c==null)continue;n.setProperty(c,new Wi.EntityInfo(c.id,o))}}}return n}inferListConstructorExpression(e){var r;if(this.path+=Ki.PathType.List,this.completionItemKind=qt.CompletionItemKind.ListConstructor,this.value="[]",e.fields.length===0)return new XP.ListType(this.context.typeStorage.generateId(St.TypeKind.ListType,e),cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope),this.context.typeStorage,this.context.document,this.context.scope);let n=new XP.ListType(this.context.typeStorage.generateId(St.TypeKind.ListType,e),null,this.context.typeStorage,this.context.document,this.context.scope);for(let i=0;i<e.fields.length;i++){let s=e.fields[i],o=(r=new t(this.context).infer(s.value))==null?void 0:r.copy(!1,!0,this.context.typeStorage,this.context.document,this.context.scope,s.value);o!=null&&n.addElementType(o)}return n}inferUnaryExpression(e){if(e.operator===Ki.UnaryType.Not)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);e.operator===De.Operator.Reference&&(this.skipNextInvoke=!0);let n=this.infer(e.argument);if(n==null)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.operator===De.Operator.New&&(0,St.isMapType)(n)){let r=new zv.MapType(this.context.typeStorage.generateId(St.TypeKind.MapType,e),null,null,this.context.typeStorage,this.context.document,this.context.scope,null);return r.setProperty(St.ISA_PROPERTY,new Wi.EntityInfo(St.ISA_PROPERTY,n)),r}return n}infer(e){if(e==null)return null;switch(e.type){case De.ASTType.ParenthesisExpression:return this.inferParenthesisExpression(e);case De.ASTType.CallExpression:return this.inferCallExpression(e);case De.ASTType.BinaryExpression:return this.inferBinaryExpression(e);case De.ASTType.LogicalExpression:return this.inferLogicalExpression(e);case De.ASTType.IsaExpression:return this.inferIsaExpression(e);case De.ASTType.ComparisonGroupExpression:return this.inferComparisonGroupExpression(e);case De.ASTType.FunctionDeclaration:return this.inferFunctionStatement(e);case De.ASTType.SliceExpression:return this.inferSliceExpression(e);case De.ASTType.IndexExpression:return this.inferIndexExpression(e);case De.ASTType.MemberExpression:return this.inferMemberExpression(e);case De.ASTType.Identifier:return this.inferIdentifier(e);case De.ASTType.MapConstructorExpression:return this.inferMapConstructorExpression(e);case De.ASTType.ListConstructorExpression:return this.inferListConstructorExpression(e);case De.ASTType.NegationExpression:case De.ASTType.BinaryNegatedExpression:case De.ASTType.UnaryExpression:return this.inferUnaryExpression(e);case De.ASTType.NilLiteral:return this.inferNilLiteral(e);case De.ASTType.StringLiteral:return this.inferStringLiteral(e);case De.ASTType.NumericLiteral:return this.inferNumericLiteral(e);case De.ASTType.BooleanLiteral:return this.inferBooleanLiteral(e);case Fd.ASTType.FeatureFileExpression:return this.inferFeatureFileExpression(e);case Fd.ASTType.FeatureLineExpression:return this.inferFeatureLineExpression(e);case Fd.ASTType.FeatureEnvarExpression:return this.inferFeatureEnvarExpression(e);case Fd.ASTType.FeatureInjectExpression:return this.inferFeatureInjectExpression(e);default:return null}}};$d.InferFullExpression=Gv});var Yv=T(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.isVariableSetterContextIndex=_r.isVariableSetterContextProperty=_r.isVariableSetterContextVariable=_r.VariableSetterContextComponentKind=void 0;var Bd;(function(t){t.Variable="variable",t.Property="property",t.Type="type"})(Bd=_r.VariableSetterContextComponentKind||(_r.VariableSetterContextComponentKind={}));function JN(t){return t.kind===Bd.Variable}_r.isVariableSetterContextVariable=JN;function QN(t){return t.kind===Bd.Property}_r.isVariableSetterContextProperty=QN;function XN(t){return t.kind===Bd.Type}_r.isVariableSetterContextIndex=XN});var ew=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});Kd.ASTDefinitionAggregator=void 0;var ZN=Zt(),Jv=Re(),Yl=fe(),ci=Mn(),Jl=$r(),Qv=on(),e2=Jn(),Vd=kl(),nE=Id(),rE=Ud(),ta=Gl(),Wd=Yv(),Xv=gr(),un=st(),Zv=class{constructor(e,n,r,i,s){this.typeStorage=e,this.document=n,this.scope=r,this.block=i,this.onRequestScope=s}makeTypeCompatibleWithProperties(e,n){let r=this.document.chunkHelper.findAssignmentVariableSetterContext(e);if(r==null)return;if((0,Wd.isVariableSetterContextVariable)(r)){this.scope.setProperty(r.property,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope));return}let i=new ta.InferLightExpression(n).infer(r.resolvePath);if(i.containsOwnProperties()||(this.makeTypeCompatibleWithProperties(r.resolvePath,n),i=new ta.InferLightExpression(n).infer(r.resolvePath)),(0,Wd.isVariableSetterContextProperty)(r)){i.setProperty(r.lastProperty,new ci.EntityInfo(r.lastProperty,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope)));return}let s=new ta.InferLightExpression(n).infer(r.lastComponent);if((0,un.isUnionType)(s)){s.variants.forEach(l=>{let c=l.getKeyType();c!=null&&i.setProperty(c,new ci.EntityInfo(c.id,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope)))});return}let o=s.getKeyType();o!=null&&i.setProperty(o,new ci.EntityInfo(o.id,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope)))}aggregateAssignmentStatement(e){var u;let n=this.document.chunkHelper.findAssignmentVariableSetterContext(e.variable);if(n==null)return;let r=new nE.InferContext(this.typeStorage,this.document,this.scope,this.onRequestScope),i=new rE.InferFullExpression(r),s=i.inferCommentDefinition(e)||((u=i.infer(e.init))==null?void 0:u.copy(!1,!1,this.typeStorage,this.document,this.scope,e.init))||new Vd.UnknownType(this.typeStorage,this.document,this.scope,e);if((0,un.isFunctionType)(s)&&this.document.attachFunctionTypeToScope(s.astRef,s),(0,un.isMapType)(s)&&i.createCustomTypeFromMap(e.init,s),(0,Wd.isVariableSetterContextVariable)(n)){let p=n.property;this.scope.symbols.push({name:p,path:p,kind:i.getCompletionItemKind(),source:s.getSource(),assignmentRef:e});let d=this.scope.getProperty(p);if(d!=null&&e.init.type===Yl.ASTType.Unknown)return;if(d!=null&&(0,un.isUnknownType)(d.type)){d.type.mergeIntoType(s),this.scope.setProperty(p,s);return}else if(d!=null&&(0,un.isUnknownType)(s)){s.mergeIntoType(d.type);return}this.scope.setProperty(p,s);return}let o=new ta.InferLightExpression(r),l=o.infer(n.resolvePath);if(l==null)throw new Error("Cannot assign property to null origin");if(l.containsOwnProperties()||(this.makeTypeCompatibleWithProperties(n.resolvePath,r),o=new ta.InferLightExpression(r),l=o.infer(n.resolvePath)),(0,un.isFunctionType)(s)&&(s.context=l),(0,Wd.isVariableSetterContextProperty)(n)){let p=n.lastProperty;this.scope.symbols.push({name:p,path:`${o.getPath()}.${p}`,kind:i.getCompletionItemKind(),source:s.getSource(),assignmentRef:e});let d=l.getProperty(p);if(d!=null&&e.init.type===Yl.ASTType.Unknown)return;if(d!=null&&(0,un.isUnknownType)(d.type)){d.type.mergeIntoType(s),l.setProperty(p,new ci.EntityInfo(p,s));return}l.setProperty(p,new ci.EntityInfo(p,s));return}let c=new ta.InferLightExpression(r).infer(n.lastComponent);if((0,un.isUnionType)(c)){c.variants.forEach(p=>{let d=p.getKeyType();d!=null&&l.setProperty(d,new ci.EntityInfo(d.id,s))});return}let a=c.getKeyType();a!=null&&l.setProperty(a,new ci.EntityInfo(a.id,s))}getVariableTypeFromIterator(e,n){if((0,un.isMapType)(e)){let r=new Jl.MapType(this.typeStorage.generateId(un.TypeKind.MapType,n),e.keyType.copy(!1,!0,this.typeStorage,this.document,this.scope),e.valueType.copy(!1,!0,this.typeStorage,this.document,this.scope),this.typeStorage,this.document,this.scope,null,n);return r.setProperty("key",new ci.EntityInfo("key",e.keyType.copy(!1,!0,this.typeStorage,this.document,this.scope))),r.setProperty("value",new ci.EntityInfo("value",e.valueType.copy(!1,!0,this.typeStorage,this.document,this.scope))),r}else{if((0,un.isListType)(e))return e.elementType.copy(!1,!0,this.typeStorage,this.document,this.scope);if((0,un.isUnionType)(e))return new e2.UnionType(this.typeStorage.generateId(un.TypeKind.UnionType,n),e.variants.map(r=>this.getVariableTypeFromIterator(r,n)),this.typeStorage,this.document,this.scope,n);if(e.id===Jv.SignatureDefinitionBaseType.String)return Qv.Type.createBaseType(Jv.SignatureDefinitionBaseType.String,this.typeStorage,this.document,this.scope,n);if(e.id===un.NIL_TYPE_ID)return Qv.Type.createBaseType(un.NIL_TYPE_ID,this.typeStorage,this.document,this.scope,n)}return new Vd.UnknownType(this.typeStorage,this.document,this.scope)}aggregateForGenericStatement(e){let n=new nE.InferContext(this.typeStorage,this.document,this.scope,this.onRequestScope),i=new rE.InferFullExpression(n).infer(e.iterator)||new Vd.UnknownType(this.typeStorage,this.document,this.scope),s=this.getVariableTypeFromIterator(i,e);if(e.variable.type!==Yl.ASTType.Identifier)return;let o=e.variable.name;this.scope.setProperty(o,s),this.scope.setProperty(`__${o}_idx`,Qv.Type.createBaseType(Jv.SignatureDefinitionBaseType.Number,this.typeStorage,this.document,this.scope,e.variable)),this.scope.symbols.push({name:o,path:o,kind:Xv.CompletionItemKind.Variable,source:s.getSource(),assignmentRef:e},{name:`__${o}_idx`,path:`__${o}_idx`,kind:Xv.CompletionItemKind.Variable,source:s.getSource(),assignmentRef:e})}aggregateImportDefinition(e){let n=e.name,r=this.scope.getProperty(n.name);if(this.scope.symbols.push({name:n.name,path:n.name,kind:Xv.CompletionItemKind.Variable,source:[{document:this.document.name,astRef:e,start:n.start,end:n.end}],assignmentRef:e}),r!=null){r.type.sourceMap.add(this.document,e);return}this.scope.setProperty(n.name,new Vd.UnknownType(this.typeStorage,this.document,this.scope,e))}aggregate(){for(let e=0;e<this.block.definitions.length;e++){let n=this.block.definitions[e];switch(n.type){case Yl.ASTType.AssignmentStatement:{this.aggregateAssignmentStatement(n);break}case Yl.ASTType.ForGenericStatement:{this.aggregateForGenericStatement(n);break}case ZN.ASTType.FeatureImportExpression:{this.aggregateImportDefinition(n);break}}}}};Kd.ASTDefinitionAggregator=Zv});var sE=T(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.parseVirtualType=Zn.VIRTUAL_TYPE_MAIN_TAG_REGEX=Zn.VIRTUAL_TYPE_MAIN_TAG=Zn.VirtualTypeTag=void 0;var t2=Hl(),Hi=Re(),n2=Qo(),dt;(function(t){t.Main="vtype",t.Extends="extends",t.Function="function",t.Param="param",t.Params="params",t.Return="return",t.Returns="returns",t.Description="description",t.Example="example",t.Property="property"})(dt=Zn.VirtualTypeTag||(Zn.VirtualTypeTag={}));var r2=new Set(Object.values(dt));Zn.VIRTUAL_TYPE_MAIN_TAG="@"+dt.Main;Zn.VIRTUAL_TYPE_MAIN_TAG_REGEX=new RegExp(`^${Zn.VIRTUAL_TYPE_MAIN_TAG}\\s+([a-zA-Z0-9_]+)`);function i2(t){return r2.has(t.tag)}function iE(t){return[t.name,t.description].filter(e=>e!==void 0).join(" ")}var tw=class{constructor(e){this.pointer=1,this.block=e,this.virtualType=this.createInitialVirtualType()}createInitialVirtualType(){let e=this.block.tags[0];return e.tag!==dt.Main?null:{type:e.name,extends:null,definitions:{}}}parseFunction(e){let n=e.name,r={id:`${this.virtualType.type}:${n}`,type:Hi.SignatureDefinitionBaseType.Function,arguments:[],returns:[],example:[],description:""};for(;this.pointer<this.block.tags.length;){let i=this.block.tags[this.pointer];if(i.tag===dt.Function||i.tag===dt.Property||i.tag===dt.Extends)break;switch(i.tag){case dt.Description:r.description+=iE(i)+`
110
+ `),s=(0,GN.parseMapDescription)(i);s!=null&&(s.properties.forEach(o=>{if(o.path===St.ISA_PROPERTY)return;let l=o.path.split("."),c=o.type.length>1?new ZP.UnionType(this.context.typeStorage.generateId(St.TypeKind.UnionType,e),o.type.map(a=>(0,eE.determineTypeFromMeta)(a,this.context.typeStorage,this.context.document,this.context.scope)),this.context.typeStorage,this.context.document,this.context.scope):(0,eE.determineTypeFromMeta)(o.type[0],this.context.typeStorage,this.context.document,this.context.scope);n.setPropertyInPath(l,new Wi.EntityInfo(l[l.length-1],c))}),this.context.typeStorage.addType(new KN.ClassType(s.type,n,s.extends||pt.SignatureDefinitionBaseType.Map,this.context.typeStorage,this.context.document,this.context.scope,new Map)),this.context.typeStorage.addKeyType(new QP.KeyType(s.type,this.context.typeStorage,this.context.document,this.context.scope,!0)))}inferCallExpression(e){this.checkSkipNextInvoke();let n=this.infer(e.base);return n==null?cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null):this.invoke(n)}inferBinaryExpression(e){if(Ki.SIMPLE_BINARY_OPERATORS_SET.has(e.operator))return this.path+=Ki.PathType.Expression,this.completionItemKind=qt.CompletionItemKind.Expression,this.value=null,cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);let n=new t(this.context).infer(e.left)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null),r=new t(this.context).infer(e.right)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);switch(this.path+=Ki.PathType.Expression,this.completionItemKind=qt.CompletionItemKind.Expression,this.value=null,e.operator){case De.Operator.Plus:return this.handleBinaryAddOperation(n,r);case De.Operator.Asterik:return this.handleBinaryMultiplyOperation(n,r);default:return this.handleDefaultMathOperation(n,r)}}inferIndexExpression(e){this.checkSkipNextInvoke();let n=this.infer(e.base);if(n==null)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.index.type===De.ASTType.InvalidCodeExpression)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope);if(e.index.type===De.ASTType.StringLiteral){let c=e.index.value,a=n.getProperty(c);if(this.path+=`.${c}`,this.value=null,a!=null)return this.completionItemKind=(0,St.isFunctionType)(a.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Property,a.type;this.completionItemKind=qt.CompletionItemKind.Property;let u=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return n.setProperty(c,new Wi.EntityInfo(c,u)),u}let r=new tE.InferLightExpression(this.context).infer(e.index)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(this.path+=`[${r.id}]`,this.value=null,(0,St.isUnionType)(r)){let l=r.variants.map(c=>{var a;return(a=n.getProperty(c.getKeyType()))==null?void 0:a.type}).filter(c=>c!=null);return this.completionItemKind=qt.CompletionItemKind.Property,l.length===0?cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null):l.length===1?l[0]:new ZP.UnionType(this.context.typeStorage.generateId(St.TypeKind.UnionType,e),l,this.context.typeStorage,this.context.document,this.context.scope,null)}let i=r.getKeyType()||new QP.KeyType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope),s=n.getProperty(i);if(s!=null)return this.completionItemKind=(0,St.isFunctionType)(s.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Property,s.type;this.completionItemKind=qt.CompletionItemKind.Property;let o=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return n.setProperty(i,new Wi.EntityInfo(i.id,o)),o}inferFunctionStatement(e){let n=this.createFunctionDescription(e),r=pt.SignatureDefinitionFunction.parse(St.DEFAULT_SIGNATURE_ORIGIN,{id:this.context.typeStorage.generateId(St.TypeKind.FunctionType,e),type:pt.SignatureDefinitionBaseType.Function,description:n,arguments:e.parameters.map(s=>{var c,a,u,p;if(s.type===De.ASTType.Identifier)return{label:(c=s.name)!=null?c:"unknown",type:pt.SignatureDefinitionBaseType.Any};let o=s,l=new t(this.context).infer(o.init)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);return{label:(u=(a=o.variable)==null?void 0:a.name)!=null?u:"unknown",types:[((p=l.getKeyType())==null?void 0:p.id)||pt.SignatureDefinitionBaseType.Any]}}),returns:[St.UNKNOWN_TYPE_ID]}),i=new HN.FunctionType(pt.SignatureDefinitionBaseType.Function,(0,zN.enrichWithMetaInformation)(this.context.typeStorage,r),this.context.typeStorage,this.context.document,this.context.scope,null);return this.path+=Ki.PathType.Function,this.completionItemKind=qt.CompletionItemKind.Function,this.value=null,i}inferIdentifier(e){let n=this.checkSkipNextInvoke();if(this.path+=e.name,this.value=null,Ki.ConstantIdentifierSet.has(e.name)&&!this.context.scope.hasProperty(e.name))return this.inferConstantIdentifier(e)||cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);let r=e.name,i=this.context.scope.getProperty(r);if(i!=null)return this.completionItemKind=(0,St.isFunctionType)(i.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Variable,n?i.type:this.invoke(i.type);this.completionItemKind=qt.CompletionItemKind.Variable;let s=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return this.context.scope.setProperty(r,s),s}inferMemberExpression(e){let n=this.checkSkipNextInvoke(),r=this.infer(e.base);if(r==null)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.identifier.type===De.ASTType.InvalidCodeExpression)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope);let i=e.identifier.name,s=r.getProperty(i);if(this.path+=`.${i}`,this.value=null,s!=null)return this.completionItemKind=(0,St.isFunctionType)(s.type)?qt.CompletionItemKind.Function:qt.CompletionItemKind.Property,n?s.type:this.invoke(s.type);this.completionItemKind=qt.CompletionItemKind.Property;let o=new Nd.UnknownType(this.context.typeStorage,this.context.document,this.context.scope);return r.setProperty(i,new Wi.EntityInfo(i,o)),o}inferMapConstructorExpression(e){var r;if(this.path+=Ki.PathType.Map,this.completionItemKind=qt.CompletionItemKind.MapConstructor,this.value="{}",e.fields.length===0)return new zv.MapType(this.context.typeStorage.generateId(St.TypeKind.MapType,e),null,null,this.context.typeStorage,this.context.document,this.context.scope,null);let n=new zv.MapType(this.context.typeStorage.generateId(St.TypeKind.MapType,e),null,null,this.context.typeStorage,this.context.document,this.context.scope,null);for(let i=0;i<e.fields.length;i++){let s=e.fields[i],o=(r=new t(this.context).infer(s.value))==null?void 0:r.copy(!1,!0,this.context.typeStorage,this.context.document,this.context.scope,s.value);if(o!=null)if(s.key.type===De.ASTType.StringLiteral){let l=s.key;n.setProperty(l.value,new Wi.EntityInfo(l.value,o))}else{let l=new tE.InferLightExpression(this.context).infer(s.key);if(l==null)continue;if((0,St.isUnionType)(l))l.variants.forEach(c=>{let a=c.getKeyType();a!=null&&n.setProperty(a,new Wi.EntityInfo(a.id,o))});else{let c=l.getKeyType();if(c==null)continue;n.setProperty(c,new Wi.EntityInfo(c.id,o))}}}return n}inferListConstructorExpression(e){var r;if(this.path+=Ki.PathType.List,this.completionItemKind=qt.CompletionItemKind.ListConstructor,this.value="[]",e.fields.length===0)return new XP.ListType(this.context.typeStorage.generateId(St.TypeKind.ListType,e),cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope),this.context.typeStorage,this.context.document,this.context.scope);let n=new XP.ListType(this.context.typeStorage.generateId(St.TypeKind.ListType,e),null,this.context.typeStorage,this.context.document,this.context.scope);for(let i=0;i<e.fields.length;i++){let s=e.fields[i],o=(r=new t(this.context).infer(s.value))==null?void 0:r.copy(!1,!0,this.context.typeStorage,this.context.document,this.context.scope,s.value);o!=null&&n.addElementType(o)}return n}inferUnaryExpression(e){if(e.operator===Ki.UnaryType.Not)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Number,this.context.typeStorage,this.context.document,this.context.scope,null);e.operator===De.Operator.Reference&&(this.skipNextInvoke=!0);let n=this.infer(e.argument);if(n==null)return cn.Type.createBaseType(pt.SignatureDefinitionBaseType.Any,this.context.typeStorage,this.context.document,this.context.scope,null);if(e.operator===De.Operator.New&&(0,St.isMapType)(n)){let r=new zv.MapType(this.context.typeStorage.generateId(St.TypeKind.MapType,e),null,null,this.context.typeStorage,this.context.document,this.context.scope,null);return r.setProperty(St.ISA_PROPERTY,new Wi.EntityInfo(St.ISA_PROPERTY,n)),r}return n}infer(e){if(e==null)return null;switch(e.type){case De.ASTType.ParenthesisExpression:return this.inferParenthesisExpression(e);case De.ASTType.CallExpression:return this.inferCallExpression(e);case De.ASTType.BinaryExpression:return this.inferBinaryExpression(e);case De.ASTType.LogicalExpression:return this.inferLogicalExpression(e);case De.ASTType.IsaExpression:return this.inferIsaExpression(e);case De.ASTType.ComparisonGroupExpression:return this.inferComparisonGroupExpression(e);case De.ASTType.FunctionDeclaration:return this.inferFunctionStatement(e);case De.ASTType.SliceExpression:return this.inferSliceExpression(e);case De.ASTType.IndexExpression:return this.inferIndexExpression(e);case De.ASTType.MemberExpression:return this.inferMemberExpression(e);case De.ASTType.Identifier:return this.inferIdentifier(e);case De.ASTType.MapConstructorExpression:return this.inferMapConstructorExpression(e);case De.ASTType.ListConstructorExpression:return this.inferListConstructorExpression(e);case De.ASTType.NegationExpression:case De.ASTType.BinaryNegatedExpression:case De.ASTType.UnaryExpression:return this.inferUnaryExpression(e);case De.ASTType.NilLiteral:return this.inferNilLiteral(e);case De.ASTType.StringLiteral:return this.inferStringLiteral(e);case De.ASTType.NumericLiteral:return this.inferNumericLiteral(e);case De.ASTType.BooleanLiteral:return this.inferBooleanLiteral(e);case Fd.ASTType.FeatureFileExpression:return this.inferFeatureFileExpression(e);case Fd.ASTType.FeatureLineExpression:return this.inferFeatureLineExpression(e);case Fd.ASTType.FeatureEnvarExpression:return this.inferFeatureEnvarExpression(e);case Fd.ASTType.FeatureInjectExpression:return this.inferFeatureInjectExpression(e);default:return null}}};$d.InferFullExpression=Gv});var Yv=T(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.isVariableSetterContextIndex=_r.isVariableSetterContextProperty=_r.isVariableSetterContextVariable=_r.VariableSetterContextComponentKind=void 0;var Bd;(function(t){t.Variable="variable",t.Property="property",t.Type="type"})(Bd=_r.VariableSetterContextComponentKind||(_r.VariableSetterContextComponentKind={}));function JN(t){return t.kind===Bd.Variable}_r.isVariableSetterContextVariable=JN;function QN(t){return t.kind===Bd.Property}_r.isVariableSetterContextProperty=QN;function XN(t){return t.kind===Bd.Type}_r.isVariableSetterContextIndex=XN});var ew=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});Kd.ASTDefinitionAggregator=void 0;var ZN=Zt(),Jv=Re(),Yl=fe(),ci=Mn(),Jl=$r(),Qv=on(),e2=Jn(),Vd=kl(),nE=Id(),rE=Ud(),ta=Gl(),Wd=Yv(),Xv=gr(),un=st(),Zv=class{constructor(e,n,r,i,s){this.typeStorage=e,this.document=n,this.scope=r,this.block=i,this.onRequestScope=s}makeTypeCompatibleWithProperties(e,n){let r=this.document.chunkHelper.findAssignmentVariableSetterContext(e);if(r==null)return;if((0,Wd.isVariableSetterContextVariable)(r)){this.scope.setProperty(r.property,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope));return}let i=new ta.InferLightExpression(n).infer(r.resolvePath);if(i.containsOwnProperties()||(this.makeTypeCompatibleWithProperties(r.resolvePath,n),i=new ta.InferLightExpression(n).infer(r.resolvePath)),(0,Wd.isVariableSetterContextProperty)(r)){i.setProperty(r.lastProperty,new ci.EntityInfo(r.lastProperty,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope)));return}let s=new ta.InferLightExpression(n).infer(r.lastComponent);if((0,un.isUnionType)(s)){s.variants.forEach(l=>{let c=l.getKeyType();c!=null&&i.setProperty(c,new ci.EntityInfo(c.id,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope)))});return}let o=s.getKeyType();o!=null&&i.setProperty(o,new ci.EntityInfo(o.id,Jl.MapType.createDefault(this.typeStorage,this.document,this.scope)))}aggregateAssignmentStatement(e){var u;let n=this.document.chunkHelper.findAssignmentVariableSetterContext(e.variable);if(n==null)return;let r=new nE.InferContext(this.typeStorage,this.document,this.scope,this.onRequestScope),i=new rE.InferFullExpression(r),s=i.inferCommentDefinition(e)||((u=i.infer(e.init))==null?void 0:u.copy(!1,!1,this.typeStorage,this.document,this.scope,e.init))||new Vd.UnknownType(this.typeStorage,this.document,this.scope,e);if((0,un.isFunctionType)(s)&&this.document.attachFunctionTypeToScope(s.astRef,s),(0,un.isMapType)(s)&&i.createCustomTypeFromMap(e.init,s),(0,Wd.isVariableSetterContextVariable)(n)){let p=n.property;this.scope.symbols.push({name:p,path:p,kind:i.getCompletionItemKind(),source:s.getSource(),assignmentRef:e});let d=this.scope.getProperty(p);if(d!=null&&e.init.type===Yl.ASTType.Unknown)return;if(d!=null&&(0,un.isUnknownType)(d.type)){d.type.mergeIntoType(s),this.scope.setProperty(p,s);return}else if(d!=null&&(0,un.isUnknownType)(s)){s.mergeIntoType(d.type);return}this.scope.setProperty(p,s);return}let o=new ta.InferLightExpression(r),l=o.infer(n.resolvePath);if(l==null)throw new Error("Cannot assign property to null origin");if(l.containsOwnProperties()||(this.makeTypeCompatibleWithProperties(n.resolvePath,r),o=new ta.InferLightExpression(r),l=o.infer(n.resolvePath)),(0,un.isFunctionType)(s)&&(s.context=l),(0,Wd.isVariableSetterContextProperty)(n)){let p=n.lastProperty;this.scope.symbols.push({name:p,path:`${o.getPath()}.${p}`,kind:i.getCompletionItemKind(),source:s.getSource(),assignmentRef:e});let d=l.getProperty(p);if(d!=null&&e.init.type===Yl.ASTType.Unknown)return;if(d!=null&&(0,un.isUnknownType)(d.type)){d.type.mergeIntoType(s),l.setProperty(p,new ci.EntityInfo(p,s));return}l.setProperty(p,new ci.EntityInfo(p,s));return}let c=new ta.InferLightExpression(r).infer(n.lastComponent);if((0,un.isUnionType)(c)){c.variants.forEach(p=>{let d=p.getKeyType();d!=null&&l.setProperty(d,new ci.EntityInfo(d.id,s))});return}let a=c.getKeyType();a!=null&&l.setProperty(a,new ci.EntityInfo(a.id,s))}getVariableTypeFromIterator(e,n){if((0,un.isMapType)(e)){let r=new Jl.MapType(this.typeStorage.generateId(un.TypeKind.MapType,n),e.keyType.copy(!1,!0,this.typeStorage,this.document,this.scope),e.valueType.copy(!1,!0,this.typeStorage,this.document,this.scope),this.typeStorage,this.document,this.scope,null,n);return r.setProperty("key",new ci.EntityInfo("key",e.keyType.copy(!1,!0,this.typeStorage,this.document,this.scope))),r.setProperty("value",new ci.EntityInfo("value",e.valueType.copy(!1,!0,this.typeStorage,this.document,this.scope))),r}else{if((0,un.isListType)(e))return e.elementType.copy(!1,!0,this.typeStorage,this.document,this.scope);if((0,un.isUnionType)(e))return new e2.UnionType(this.typeStorage.generateId(un.TypeKind.UnionType,n),e.variants.map(r=>this.getVariableTypeFromIterator(r,n)),this.typeStorage,this.document,this.scope,n);if(e.id===Jv.SignatureDefinitionBaseType.String)return Qv.Type.createBaseType(Jv.SignatureDefinitionBaseType.String,this.typeStorage,this.document,this.scope,n);if(e.id===un.NIL_TYPE_ID)return Qv.Type.createBaseType(un.NIL_TYPE_ID,this.typeStorage,this.document,this.scope,n)}return new Vd.UnknownType(this.typeStorage,this.document,this.scope)}aggregateForGenericStatement(e){let n=new nE.InferContext(this.typeStorage,this.document,this.scope,this.onRequestScope),i=new rE.InferFullExpression(n).infer(e.iterator)||new Vd.UnknownType(this.typeStorage,this.document,this.scope),s=this.getVariableTypeFromIterator(i,e);if(e.variable.type!==Yl.ASTType.Identifier)return;let o=e.variable.name;this.scope.setProperty(o,s),this.scope.setProperty(`__${o}_idx`,Qv.Type.createBaseType(Jv.SignatureDefinitionBaseType.Number,this.typeStorage,this.document,this.scope,e.variable)),this.scope.symbols.push({name:o,path:o,kind:Xv.CompletionItemKind.Variable,source:s.getSource(),assignmentRef:e},{name:`__${o}_idx`,path:`__${o}_idx`,kind:Xv.CompletionItemKind.Variable,source:s.getSource(),assignmentRef:e})}aggregateImportDefinition(e){let n=e.name,r=this.scope.getProperty(n.name);if(this.scope.symbols.push({name:n.name,path:n.name,kind:Xv.CompletionItemKind.Variable,source:[{document:this.document.name,astRef:e,start:n.start,end:n.end}],assignmentRef:e}),r!=null){r.type.sourceMap.add(this.document,e);return}this.scope.setProperty(n.name,new Vd.UnknownType(this.typeStorage,this.document,this.scope,e))}aggregate(){for(let e=0;e<this.block.definitions.length;e++){let n=this.block.definitions[e];switch(n.type){case Yl.ASTType.AssignmentStatement:{this.aggregateAssignmentStatement(n);break}case Yl.ASTType.ForGenericStatement:{this.aggregateForGenericStatement(n);break}case ZN.ASTType.FeatureImportExpression:{this.aggregateImportDefinition(n);break}}}}};Kd.ASTDefinitionAggregator=Zv});var sE=T(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.parseVirtualType=Zn.VIRTUAL_TYPE_MAIN_TAG_REGEX=Zn.VIRTUAL_TYPE_MAIN_TAG=Zn.VirtualTypeTag=void 0;var t2=Hl(),Hi=Re(),n2=Qo(),dt;(function(t){t.Main="vtype",t.Extends="extends",t.Function="function",t.Param="param",t.Params="params",t.Return="return",t.Returns="returns",t.Description="description",t.Example="example",t.Property="property"})(dt=Zn.VirtualTypeTag||(Zn.VirtualTypeTag={}));var r2=new Set(Object.values(dt));Zn.VIRTUAL_TYPE_MAIN_TAG="@"+dt.Main;Zn.VIRTUAL_TYPE_MAIN_TAG_REGEX=new RegExp(`^${Zn.VIRTUAL_TYPE_MAIN_TAG}\\s+([a-zA-Z0-9_]+)`);function i2(t){return r2.has(t.tag)}function iE(t){return[t.name,t.description].filter(e=>e!==void 0).join(" ")}var tw=class{constructor(e){this.pointer=1,this.block=e,this.virtualType=this.createInitialVirtualType()}createInitialVirtualType(){let e=this.block.tags[0];return e.tag!==dt.Main?null:{type:e.name,extends:null,definitions:{}}}parseFunction(e){let n=e.name,r={id:`${this.virtualType.type}:${n}`,type:Hi.SignatureDefinitionBaseType.Function,arguments:[],returns:[],example:[],description:""};for(;this.pointer<this.block.tags.length;){let i=this.block.tags[this.pointer];if(i.tag===dt.Function||i.tag===dt.Property||i.tag===dt.Extends)break;switch(i.tag){case dt.Description:r.description+=iE(i)+`
111
111
  `;break;case dt.Example:r.example.push(iE(i));break;case dt.Param:case dt.Params:r.arguments.push({label:i.name,type:i.type?new Hi.TypeParser(i.type).parse():Hi.SignatureDefinitionBaseType.Any});break;case dt.Return:case dt.Returns:r.returns.push(i.type?new Hi.TypeParser(i.type).parse():Hi.SignatureDefinitionBaseType.Any);break}this.pointer++}r.example.length===0&&(r.example=null),r.description.length===0&&(r.description=null),r.returns.length===0&&r.returns.push(Hi.SignatureDefinitionBaseType.Any),this.virtualType.definitions[n]=r}parseProperty(e){let n=e.name;this.virtualType.definitions[n]={type:e.type?new Hi.TypeParser(e.type).parse():Hi.SignatureDefinitionBaseType.Any}}process(){if(!this.virtualType)return null;for(;this.pointer<this.block.tags.length;){let e=this.block.tags[this.pointer++];switch(e.tag){case dt.Extends:this.virtualType.extends=e.name;break;case dt.Function:this.parseFunction(e);break;case dt.Property:this.parseProperty(e);break;case dt.Description:case dt.Example:case dt.Param:case dt.Params:case dt.Return:case dt.Returns:break;default:break}}return this.virtualType}};function s2(t){return new tw(t).process()}function o2(t){let e=(0,t2.parse)((0,n2.createCommentBlock)(t)),[n]=e;return n.tags.filter(i2).length>0?s2(n):null}Zn.parseVirtualType=o2});var sw=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});Hd.ASTSignatureAggregator=void 0;var nw=Re(),a2=Uo(),l2=Ho(),rw=sE(),iw=class{constructor(e,n,r,i){this.typeStorage=e,this.document=n,this.scope=r,this.pointer=0,this.chunk=i,this.registry=new Map}aggregateNextPayload(e){let n=e.value,r=this.pointer+1,i=e.end.line+1;for(;r<this.chunk.comments.length;r++){let s=this.chunk.comments[r];if(i<s.start.line)break;n+=`
112
112
  `+s.value,i=s.end.line+1}return this.pointer=r-1,n}aggregateVirtualTypeFromComment(e){let n=e.value.trimLeft();if(!n.startsWith(rw.VIRTUAL_TYPE_MAIN_TAG))return;let r=n.match(rw.VIRTUAL_TYPE_MAIN_TAG_REGEX);if(!r||r.length<2)return;let i=r[1];if(this.registry.has(i))return;let s=this.aggregateNextPayload(e),o=(0,rw.parseVirtualType)(s),l=new a2.ClassType(i,null,o.extends,this.typeStorage,this.document,this.scope);this.registry.set(i,{classRef:l,virtualTypeDef:o}),this.typeStorage.addType(l),this.typeStorage.addKeyType(new l2.KeyType(i,this.typeStorage,this.document,this.scope,!0))}aggregate(){for(;this.pointer<this.chunk.comments.length;this.pointer++){let e=this.chunk.comments[this.pointer];e.scope===this.chunk&&this.aggregateVirtualTypeFromComment(e)}}evaluate(){this.registry.forEach(e=>{let n=e.classRef,r=e.virtualTypeDef;Object.entries(r.definitions).forEach(([i,s])=>{let o=s.type===nw.SignatureDefinitionBaseType.Function?nw.SignatureDefinitionFunction.parse(this.document.name,s):nw.SignatureDefinition.parse(this.document.name,s);n.insertDefinition(i,o)})})}};Hd.ASTSignatureAggregator=iw});var aw=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});zd.DocumentTypeStorage=void 0;var qn=Re(),Ql=Mn(),er=$o(),c2=bd(),ow=class extends c2.TypeStorage{constructor(e,n){super(n),this.document=e}insertDefault(){let e=this.parent;if(!e)throw new Error("Global type storage is not defined.");let n=(0,er.createProxyForNativeType)(qn.SignatureDefinitionBaseType.General,this.document),r=(0,er.createProxyForNativeType)(qn.SignatureDefinitionBaseType.Function,this.document),i=(0,er.createProxyForNativeType)(qn.SignatureDefinitionBaseType.Map,this.document),s=(0,er.createProxyForNativeType)(qn.SignatureDefinitionBaseType.List,this.document),o=(0,er.createProxyForNativeType)(qn.SignatureDefinitionBaseType.Number,this.document),l=(0,er.createProxyForNativeType)(qn.SignatureDefinitionBaseType.String,this.document),c=(0,er.createProxyForNativeType)(qn.SignatureDefinitionBaseType.Any,this.document),a=(0,er.persistTypeInNativeFunction)(qn.SignatureDefinitionBaseType.General,"funcRef",r,this.document,e),u=(0,er.persistTypeInNativeFunction)(qn.SignatureDefinitionBaseType.General,"map",i,this.document,e),p=(0,er.persistTypeInNativeFunction)(qn.SignatureDefinitionBaseType.General,"list",s,this.document,e),d=(0,er.persistTypeInNativeFunction)(qn.SignatureDefinitionBaseType.General,"number",o,this.document,e),h=(0,er.persistTypeInNativeFunction)(qn.SignatureDefinitionBaseType.General,"string",l,this.document,e);n.setProperty("funcRef",new Ql.EntityInfo("funcRef",a)),n.setProperty("map",new Ql.EntityInfo("map",u)),n.setProperty("list",new Ql.EntityInfo("list",p)),n.setProperty("number",new Ql.EntityInfo("number",d)),n.setProperty("string",new Ql.EntityInfo("string",h)),this.addType(n),this.addType(r),this.addType(i),this.addType(s),this.addType(o),this.addType(l),this.addType(c)}addToAny(e,n){if(typeof e!="string")return;let r=this.typeInterfaces.get(qn.SignatureDefinitionBaseType.Any);r!=null&&r.properties.set(e,n)}generateId(e,n){let r=n?`<${n.type}:${n.start.toString()}-${n.end.toString()}>`:"<virtual>";return`${e}-${this.document.name}-${this.__internalHandleCounter++}-${r}`}};zd.DocumentTypeStorage=ow});var lw=T(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});Xl.ScopeState=void 0;var u2;(function(t){t[t.Inititialized=0]="Inititialized",t[t.Pending=1]="Pending",t[t.Resolved=2]="Resolved"})(u2=Xl.ScopeState||(Xl.ScopeState={}))});var uw=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});Yd.ChunkHelper=void 0;var Zl=fe(),Gd=Yv(),cw=class{constructor(e){this._root=e}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}findAssignmentVariableSetterContext(e){switch(e.type){case Zl.ASTType.MemberExpression:{let n=e;return n.identifier.type!==Zl.ASTType.Identifier?null:{resolvePath:n.base,lastProperty:n.identifier.name,kind:Gd.VariableSetterContextComponentKind.Property}}case Zl.ASTType.Identifier:return{property:e.name,kind:Gd.VariableSetterContextComponentKind.Variable};case Zl.ASTType.IndexExpression:{let n=e;return n.index.type===Zl.ASTType.StringLiteral?{resolvePath:n.base,lastProperty:n.index.value,kind:Gd.VariableSetterContextComponentKind.Property}:{resolvePath:n.base,lastComponent:n.index,kind:Gd.VariableSetterContextComponentKind.Type}}}return null}};Yd.ChunkHelper=cw});var dw=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});Jd.Scope=void 0;var oE=Re(),Ps=gr(),pn=Vi(),ec=st(),p2=Mn(),d2=$r(),pw=class{constructor(e,n){this.document=e,this.outer=n,this.locals=new d2.MapType(e.typeStorage.generateId(ec.TypeKind.MapType),null,null,e.typeStorage,e,this,null,null,!0),this.globals=e.globals||this,this.symbols=[]}getSelf(){var e;return(e=this.associatedFunction)==null?void 0:e.context}getSuper(){var n;let e=this.getSelf();if(!(e==null||!(0,ec.isMapType)(e)))return(n=e.getProperty(ec.ISA_PROPERTY))==null?void 0:n.type}getOuter(){var e;return(e=this.outer)==null?void 0:e.getLocals()}getLocals(){return this.locals}getGlobals(){return this.globals.getLocals()}setProperty(e,n){typeof e=="string"&&this.locals.setProperty(e,new p2.EntityInfo(e,n))}getProperty(e){var n;return this.locals.hasProperty(e)?this.locals.getProperty(e):(n=this.outer)!=null&&n.hasProperty(e)?this.outer.locals.getProperty(e):this.globals.hasProperty(e)?this.globals.locals.getProperty(e):this.document.typeStorage.getTypePropertyById(oE.SignatureDefinitionBaseType.General,e)}getAllProperties(e=1){var i;if(e>ec.MAX_ALL_PROPERTIES_DEPTH)return[];let n=new Map;for(let[s,o]of this.locals.properties)typeof s=="string"&&(n.has(s)||n.set(s,{type:o.type,name:o.name,kind:(0,ec.isFunctionType)(o.type)?Ps.CompletionItemKind.Function:Ps.CompletionItemKind.Variable}));let r=[...this.globals!==this?this.globals.getAllProperties(e+1):[],...((i=this.outer)==null?void 0:i.getAllProperties(e+1))||[],...this.document.typeStorage.getTypeById(oE.SignatureDefinitionBaseType.General).getAllProperties(e+1)];for(let s of r)n.has(s.name)||n.set(s.name,s);return!n.has(pn.ConstantIdentifier.Globals)&&this.getGlobals()!=null&&n.set(pn.ConstantIdentifier.Globals,{type:this.getGlobals(),name:pn.ConstantIdentifier.Globals,kind:Ps.CompletionItemKind.Constant}),!n.has(pn.ConstantIdentifier.Locals)&&this.getLocals()!=null&&n.set(pn.ConstantIdentifier.Locals,{type:this.getLocals(),name:pn.ConstantIdentifier.Locals,kind:Ps.CompletionItemKind.Constant}),!n.has(pn.ConstantIdentifier.Outer)&&this.getOuter()!=null&&n.set(pn.ConstantIdentifier.Outer,{type:this.getOuter(),name:pn.ConstantIdentifier.Outer,kind:Ps.CompletionItemKind.Constant}),!n.has(pn.ConstantIdentifier.Self)&&this.getSelf()!=null&&n.set(pn.ConstantIdentifier.Self,{type:this.getSelf(),name:pn.ConstantIdentifier.Self,kind:Ps.CompletionItemKind.Constant}),!n.has(pn.ConstantIdentifier.Super)&&this.getSuper()!=null&&n.set(pn.ConstantIdentifier.Super,{type:this.getSelf(),name:pn.ConstantIdentifier.Super,kind:Ps.CompletionItemKind.Constant}),Array.from(n.values())}resolveAllAvailableWithQuery(e){let n=[this];return this.outer&&n.push(this.outer),this!==this.globals&&n.push(this.globals),n.flatMap(r=>r.symbols.filter(i=>i.path.includes(e)))}hasProperty(e){return this.locals.hasProperty(e)}};Jd.Scope=pw});var mw=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});Xd.Document=void 0;var aE=Re(),h2=fe(),lE=ew(),f2=sw(),hw=Id(),cE=Ud(),m2=Gl(),g2=aw(),y2=Vi(),na=lw(),Qd=st(),b2=uw(),_2=Wo(),v2=Pl(),uE=dw(),pE=on(),dE=Jn(),fw=class t{constructor(e,n,r,i){var s;this.scopes=[],this.name=e,this.chunk=n,this.typeManager=r,this.typeStorage=new g2.DocumentTypeStorage(this,i),this.globals=new uE.Scope(this),this.scopeRefMapping=new WeakMap,this.scopeFnMapping=new WeakMap,this.chunkHelper=new b2.ChunkHelper(n),this.typeStorage.insertDefault(),(s=r.modifyTypeStorage)==null||s.call(r,this,i)}createScope(e){if(this.scopeRefMapping.has(e))return;let n=this.scopeRefMapping.get(e.scope),i={scope:new uE.Scope(this,n.scope),astRef:e,state:na.ScopeState.Inititialized};this.scopes.push(i),this.scopeRefMapping.set(e,i)}aggregateScopes(){let e=this.chunk;if(this.scopeRefMapping.has(e))return;let n={scope:this.globals,astRef:e,state:na.ScopeState.Inititialized};this.scopes.push(n),this.scopeRefMapping.set(e,n);for(let r=0;r<e.scopes.length;r++){let i=e.scopes[r];this.createScope(i)}}attachFunctionTypeToScope(e,n){let r=this.scopeRefMapping.get(e);r!=null&&(r.scope.associatedFunction=n,this.scopeFnMapping.set(n,r))}assumeArgumentTypes(e,n,r){let i=r.getArguments(),s=n.scope.getSelf();for(let o=0;o<i.length;o++){let l=i[o],c=l.getLabel();if(c===y2.ConstantIdentifier.Self&&s!=null){n.scope.setProperty(c,s);continue}let a=l.getTypes(),u=e.parameters[o],p=a.map(d=>(0,_2.determineTypeFromMeta)(d,this.typeStorage,this,n.scope,u.type===h2.ASTType.AssignmentStatement?u.init:u));n.scope.setProperty(c,dE.UnionType.createSmartly(p,this.typeStorage,this,n.scope))}}assumeReturnType(e,n,r){if(e.returns.length===0){let o=pE.Type.createBaseType(Qd.NIL_TYPE_ID,this.typeStorage,this,n.scope);n.scope.associatedFunction.returnType=o,r._returns=o.toMeta().map(aE.SignatureDefinitionTypeMeta.parse);return}let i=new dE.UnionType(this.typeStorage.generateId(Qd.TypeKind.UnionType),[],this.typeStorage,this,n.scope);for(let o=0;o<e.returns.length;o++){let l=e.returns[o];if(l.argument==null){i.addVariant(pE.Type.createBaseType(Qd.NIL_TYPE_ID,this.typeStorage,this,n.scope));continue}let c=new cE.InferFullExpression(new hw.InferContext(this.typeStorage,this,n.scope)).infer(l.argument);c&&i.addVariant(c)}let s=i.variants.length===1?i.firstVariant():i;n.scope.associatedFunction.returnType=s,r._returns=s.toMeta().map(aE.SignatureDefinitionTypeMeta.parse)}aggregateDefinition(e){let n=this.scopeRefMapping.get(e);if(n.state!==na.ScopeState.Inititialized)return;if(n.state=na.ScopeState.Pending,n.scope.associatedFunction==null){new lE.ASTDefinitionAggregator(this.typeStorage,this,n.scope,e,l=>this.aggregateDefinition(l)).aggregate(),n.state=na.ScopeState.Resolved;return}let r=n.scope.associatedFunction.signature;this.assumeArgumentTypes(e,n,r),new lE.ASTDefinitionAggregator(this.typeStorage,this,n.scope,e,o=>this.aggregateDefinition(o)).aggregate();let s=r.getReturns();s.length===1&&s[0].type===Qd.UNKNOWN_TYPE_ID&&this.assumeReturnType(e,n,r),n.state=na.ScopeState.Resolved}aggregateVirtualSignatures(){let e=this.chunk,n=new f2.ASTSignatureAggregator(this.typeStorage,this,this.globals,e);n.aggregate(),n.evaluate()}aggregateDefinitions(){let e=this.chunk;this.aggregateDefinition(e);for(let n=0;n<e.scopes.length;n++){let r=e.scopes[n];this.aggregateDefinition(r)}}resolveAllAssignmentsWithQuery(e){return[...this.scopes.flatMap(n=>n.scope.symbols.filter(r=>r.path.includes(e)))]}resolveAvailableAssignments(e){let n=new hw.InferContext(this.typeStorage,this,this.globals),r=new m2.InferLightExpression(n);r.infer(e);let i=this.scopeRefMapping.get(e.scope),s=[i.scope];i.scope.outer&&s.push(i.scope.outer),i.scope!==i.scope.globals&&s.push(i.scope.globals);let o=r.getPath();return s.flatMap(l=>l.symbols.filter(c=>c.path.includes(o)))}resolvePath(e){return this.globals.locals.getPropertyInPath(e)}resolveNamespace(e,n){let r=this.scopeRefMapping.get(e.scope);if(!r)return null;let i=new hw.InferContext(this.typeStorage,this,r.scope),s=new cE.InferFullExpression(i,n),o=s.infer(e);return o==null?null:{item:o,path:s.getPath(),value:s.getValue(),completionItemKind:s.getCompletionItemKind(),sources:o.getSource()}}merge(...e){var r,i;let n=new t(this.name,this.chunk,this.typeManager,this.typeStorage.parent);n.aggregateScopes();for(let s=0;s<e.length;s++){let o=e[s];o.document!=null&&(n.typeStorage.merge(o.document.typeStorage),(i=(r=this.typeManager).modifyTypeStorageMerge)==null||i.call(r,n,o.document,this.typeStorage.parent))}for(let s=0;s<e.length;s++){let o=e[s];o.document!=null&&(0,v2.mergeScope)(n.typeStorage,n.globals,o.document.globals,o.namespaces)}return n.aggregateVirtualSignatures(),n.aggregateDefinitions(),n}};Xd.Document=fw});var hE=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});Zd.TypeManager=void 0;var w2=tv(),S2=mw(),gw=class{constructor(e){this.documents=new Map,this.container=e.container,this.typeStorage=new w2.GlobalTypeStorage,this.modifyTypeStorage=e.modifyTypeStorage,this.modifyTypeStorageMerge=e.modifyTypeStorageMerge,this.initializeTypeStorage()}initializeTypeStorage(){this.typeStorage.insertPrimitives(this.container),this.typeStorage.insertNonPrimitives(this.container),this.typeStorage.insertAllAnyTypeMembers(this.container)}analyze(e,n){let r=new S2.Document(e,n,this,this.typeStorage);return r.aggregateVirtualSignatures(),r.aggregateScopes(),r.aggregateDefinitions(),this.documents.set(e,r),r}get(e){return this.documents.get(e)}};Zd.TypeManager=gw});var mE=T(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.isSignatureDefinitionEqual=ra.isTypeMetaEqual=void 0;function fE(t,e){return t.isEqual(e)}ra.isTypeMetaEqual=fE;function x2(t,e){return t===e||t.getOrigin()===e.getOrigin()&&fE(t.getType(),e.getType())&&t.isProtected()===e.isProtected()&&t.getDescription()===e.getDescription()}ra.isSignatureDefinitionEqual=x2});var ia=T(q=>{"use strict";Object.defineProperty(q,"__esModule",{value:!0});q.mergeScope=q.enrichWithMetaInformation=q.determineTypeFromMeta=q.createCommentBlock=q.ChunkHelper=q.CompletionItemKind=q.PathType=q.UnaryType=q.ConstantIdentifierSet=q.ConstantIdentifier=q.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION=q.MAX_DEPTH=q.ScopeState=q.isUnknownType=q.isUnionType=q.isListType=q.isFunctionType=q.isClassType=q.isMapType=q.isValidKeyValue=q.isKeyType=q.BASE_TYPE_SET=q.META_DOCS_SIGNATURE_ORIGIN=q.DEFAULT_SOURCE_DOCUMENT_ID=q.DEFAULT_SIGNATURE_ORIGIN=q.ISA_PROPERTY=q.UNKNOWN_TYPE_ID=q.NIL_TYPE_ID=q.MAX_ALL_PROPERTIES_DEPTH=q.TypeKind=q.ASTSignatureAggregator=q.ASTDefinitionAggregator=q.InferLightExpression=q.InferFullExpression=q.InferContext=q.InferBase=q.DocumentTypeStorage=q.GlobalTypeStorage=q.TypeStorage=q.Scope=q.Document=q.KeyType=q.EntityInfo=q.UnionType=q.MapType=q.ListType=q.FunctionType=q.ClassType=q.Type=q.TypeManager=void 0;q.parseMapDescription=q.parseAssignDescription=q.normalizeText=q.persistTypeInNativeFunction=q.createProxyForNativeType=q.isSignatureDefinitionEqual=q.isTypeMetaEqual=q.SourceMap=q.shallowMergeMap=q.shallowMergeList=q.deepMerge=void 0;var T2=hE();Object.defineProperty(q,"TypeManager",{enumerable:!0,get:function(){return T2.TypeManager}});var k2=on();Object.defineProperty(q,"Type",{enumerable:!0,get:function(){return k2.Type}});var I2=Uo();Object.defineProperty(q,"ClassType",{enumerable:!0,get:function(){return I2.ClassType}});var P2=Il();Object.defineProperty(q,"FunctionType",{enumerable:!0,get:function(){return P2.FunctionType}});var E2=ms();Object.defineProperty(q,"ListType",{enumerable:!0,get:function(){return E2.ListType}});var R2=$r();Object.defineProperty(q,"MapType",{enumerable:!0,get:function(){return R2.MapType}});var C2=Jn();Object.defineProperty(q,"UnionType",{enumerable:!0,get:function(){return C2.UnionType}});var D2=Mn();Object.defineProperty(q,"EntityInfo",{enumerable:!0,get:function(){return D2.EntityInfo}});var O2=Ho();Object.defineProperty(q,"KeyType",{enumerable:!0,get:function(){return O2.KeyType}});var A2=mw();Object.defineProperty(q,"Document",{enumerable:!0,get:function(){return A2.Document}});var M2=dw();Object.defineProperty(q,"Scope",{enumerable:!0,get:function(){return M2.Scope}});var j2=bd();Object.defineProperty(q,"TypeStorage",{enumerable:!0,get:function(){return j2.TypeStorage}});var L2=tv();Object.defineProperty(q,"GlobalTypeStorage",{enumerable:!0,get:function(){return L2.GlobalTypeStorage}});var q2=aw();Object.defineProperty(q,"DocumentTypeStorage",{enumerable:!0,get:function(){return q2.DocumentTypeStorage}});var F2=Md();Object.defineProperty(q,"InferBase",{enumerable:!0,get:function(){return F2.InferBase}});var N2=Id();Object.defineProperty(q,"InferContext",{enumerable:!0,get:function(){return N2.InferContext}});var $2=Ud();Object.defineProperty(q,"InferFullExpression",{enumerable:!0,get:function(){return $2.InferFullExpression}});var U2=Gl();Object.defineProperty(q,"InferLightExpression",{enumerable:!0,get:function(){return U2.InferLightExpression}});var B2=ew();Object.defineProperty(q,"ASTDefinitionAggregator",{enumerable:!0,get:function(){return B2.ASTDefinitionAggregator}});var V2=sw();Object.defineProperty(q,"ASTSignatureAggregator",{enumerable:!0,get:function(){return V2.ASTSignatureAggregator}});var Ht=st();Object.defineProperty(q,"TypeKind",{enumerable:!0,get:function(){return Ht.TypeKind}});Object.defineProperty(q,"MAX_ALL_PROPERTIES_DEPTH",{enumerable:!0,get:function(){return Ht.MAX_ALL_PROPERTIES_DEPTH}});Object.defineProperty(q,"NIL_TYPE_ID",{enumerable:!0,get:function(){return Ht.NIL_TYPE_ID}});Object.defineProperty(q,"UNKNOWN_TYPE_ID",{enumerable:!0,get:function(){return Ht.UNKNOWN_TYPE_ID}});Object.defineProperty(q,"ISA_PROPERTY",{enumerable:!0,get:function(){return Ht.ISA_PROPERTY}});Object.defineProperty(q,"DEFAULT_SIGNATURE_ORIGIN",{enumerable:!0,get:function(){return Ht.DEFAULT_SIGNATURE_ORIGIN}});Object.defineProperty(q,"DEFAULT_SOURCE_DOCUMENT_ID",{enumerable:!0,get:function(){return Ht.DEFAULT_SOURCE_DOCUMENT_ID}});Object.defineProperty(q,"META_DOCS_SIGNATURE_ORIGIN",{enumerable:!0,get:function(){return Ht.META_DOCS_SIGNATURE_ORIGIN}});Object.defineProperty(q,"BASE_TYPE_SET",{enumerable:!0,get:function(){return Ht.BASE_TYPE_SET}});Object.defineProperty(q,"isKeyType",{enumerable:!0,get:function(){return Ht.isKeyType}});Object.defineProperty(q,"isValidKeyValue",{enumerable:!0,get:function(){return Ht.isValidKeyValue}});Object.defineProperty(q,"isMapType",{enumerable:!0,get:function(){return Ht.isMapType}});Object.defineProperty(q,"isClassType",{enumerable:!0,get:function(){return Ht.isClassType}});Object.defineProperty(q,"isFunctionType",{enumerable:!0,get:function(){return Ht.isFunctionType}});Object.defineProperty(q,"isListType",{enumerable:!0,get:function(){return Ht.isListType}});Object.defineProperty(q,"isUnionType",{enumerable:!0,get:function(){return Ht.isUnionType}});Object.defineProperty(q,"isUnknownType",{enumerable:!0,get:function(){return Ht.isUnknownType}});var W2=lw();Object.defineProperty(q,"ScopeState",{enumerable:!0,get:function(){return W2.ScopeState}});var K2=No();Object.defineProperty(q,"MAX_DEPTH",{enumerable:!0,get:function(){return K2.MAX_DEPTH}});var tc=Vi();Object.defineProperty(q,"DEFAULT_CUSTOM_FUNCTION_DESCRIPTION",{enumerable:!0,get:function(){return tc.DEFAULT_CUSTOM_FUNCTION_DESCRIPTION}});Object.defineProperty(q,"ConstantIdentifier",{enumerable:!0,get:function(){return tc.ConstantIdentifier}});Object.defineProperty(q,"ConstantIdentifierSet",{enumerable:!0,get:function(){return tc.ConstantIdentifierSet}});Object.defineProperty(q,"UnaryType",{enumerable:!0,get:function(){return tc.UnaryType}});Object.defineProperty(q,"PathType",{enumerable:!0,get:function(){return tc.PathType}});var H2=gr();Object.defineProperty(q,"CompletionItemKind",{enumerable:!0,get:function(){return H2.CompletionItemKind}});var z2=uw();Object.defineProperty(q,"ChunkHelper",{enumerable:!0,get:function(){return z2.ChunkHelper}});var G2=Qo();Object.defineProperty(q,"createCommentBlock",{enumerable:!0,get:function(){return G2.createCommentBlock}});var Y2=Wo();Object.defineProperty(q,"determineTypeFromMeta",{enumerable:!0,get:function(){return Y2.determineTypeFromMeta}});var J2=$v();Object.defineProperty(q,"enrichWithMetaInformation",{enumerable:!0,get:function(){return J2.enrichWithMetaInformation}});var eh=Pl();Object.defineProperty(q,"mergeScope",{enumerable:!0,get:function(){return eh.mergeScope}});Object.defineProperty(q,"deepMerge",{enumerable:!0,get:function(){return eh.deepMerge}});Object.defineProperty(q,"shallowMergeList",{enumerable:!0,get:function(){return eh.shallowMergeList}});Object.defineProperty(q,"shallowMergeMap",{enumerable:!0,get:function(){return eh.shallowMergeMap}});var Q2=rd();Object.defineProperty(q,"SourceMap",{enumerable:!0,get:function(){return Q2.SourceMap}});var gE=mE();Object.defineProperty(q,"isTypeMetaEqual",{enumerable:!0,get:function(){return gE.isTypeMetaEqual}});Object.defineProperty(q,"isSignatureDefinitionEqual",{enumerable:!0,get:function(){return gE.isSignatureDefinitionEqual}});var yE=$o();Object.defineProperty(q,"createProxyForNativeType",{enumerable:!0,get:function(){return yE.createProxyForNativeType}});Object.defineProperty(q,"persistTypeInNativeFunction",{enumerable:!0,get:function(){return yE.persistTypeInNativeFunction}});var X2=Cd();Object.defineProperty(q,"normalizeText",{enumerable:!0,get:function(){return X2.normalizeText}});var Z2=Vv();Object.defineProperty(q,"parseAssignDescription",{enumerable:!0,get:function(){return Z2.parseAssignDescription}});var e$=Uv();Object.defineProperty(q,"parseMapDescription",{enumerable:!0,get:function(){return e$.parseMapDescription}})});var yw=T(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.getSymbolItemKind=sa.getCompletionItemKind=void 0;var tt=ia(),t$={[tt.CompletionItemKind.Constant]:21,[tt.CompletionItemKind.Internal]:21,[tt.CompletionItemKind.InternalFunction]:21,[tt.CompletionItemKind.InternalProperty]:21,[tt.CompletionItemKind.Property]:6,[tt.CompletionItemKind.Variable]:6,[tt.CompletionItemKind.Expression]:6,[tt.CompletionItemKind.Function]:3,[tt.CompletionItemKind.ListConstructor]:12,[tt.CompletionItemKind.MapConstructor]:12,[tt.CompletionItemKind.Literal]:12,[tt.CompletionItemKind.Unknown]:12},n$=t=>{var e;return(e=t$[t])!=null?e:6};sa.getCompletionItemKind=n$;var r$={[tt.CompletionItemKind.Constant]:14,[tt.CompletionItemKind.Internal]:14,[tt.CompletionItemKind.InternalFunction]:14,[tt.CompletionItemKind.InternalProperty]:14,[tt.CompletionItemKind.Variable]:13,[tt.CompletionItemKind.Property]:13,[tt.CompletionItemKind.Expression]:13,[tt.CompletionItemKind.Function]:12,[tt.CompletionItemKind.ListConstructor]:18,[tt.CompletionItemKind.MapConstructor]:19,[tt.CompletionItemKind.Literal]:13,[tt.CompletionItemKind.Unknown]:13},i$=t=>{var e;return(e=r$[t])!=null?e:13};sa.getSymbolItemKind=i$});var bE=T(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});th.CompletionListBuilder=void 0;var s$=yw(),bw=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,s$.getCompletionItemKind)(r.kind)});return[...e,...this.default]}};th.CompletionListBuilder=bw});var rh=T(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.findEx=oa.ScraperWalker=void 0;var o$=fe(),a$=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:()=>{}}},nh=class{constructor(e,n={}){this.map=Object.assign(a$(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!=null&&i.call(this,e,n+1)}};oa.ScraperWalker=nh;function l$(t,e){let n=[];return new nh((i,s)=>{let o=t(i,s)||{};return o.valid&&i.type!==o$.ASTType.InvalidCodeExpression&&n.push(i),{exit:!!o.exit,skip:!!o.skip}}).visit(e),n}oa.findEx=l$});var _w=T(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.lookupBase=dn.lookupIdentifier=dn.lookupScopes=dn.lookupRootScope=void 0;var ui=fe(),c$=t=>{let e=t;for(;e.scope;)e=e.scope;return e};dn.lookupRootScope=c$;var u$=t=>{if(!t.scope)return[t];let e=(0,dn.lookupRootScope)(t);return e===t.scope?[t,e]:[t,t.scope,e]};dn.lookupScopes=u$;var p$=t=>{switch(t.type){case ui.ASTType.CallStatement:return(0,dn.lookupIdentifier)(t.expression);case ui.ASTType.CallExpression:return(0,dn.lookupIdentifier)(t.base);case ui.ASTType.Identifier:return t;case ui.ASTType.MemberExpression:return(0,dn.lookupIdentifier)(t.identifier);case ui.ASTType.IndexExpression:return(0,dn.lookupIdentifier)(t.index);default:return null}};dn.lookupIdentifier=p$;var d$=(t=null)=>{switch(t==null?void 0:t.type){case ui.ASTType.MemberExpression:return t.base;case ui.ASTType.IndexExpression:return t.base;case ui.ASTType.CallExpression:return t.base;case ui.ASTType.SliceExpression:return t.base;default:return null}};dn.lookupBase=d$});var _E=T(ih=>{"use strict";Object.defineProperty(ih,"__esModule",{value:!0});ih.isValidIdentifierLiteral=void 0;var h$=fe(),f$=t=>{if(t.type!==h$.ASTType.StringLiteral)return!1;let e=t.value.toString();return/^[_a-z][_a-z0-9]*$/i.test(e)};ih.isValidIdentifierLiteral=f$});var aa=T(Wr=>{"use strict";var m$=Wr&&Wr.__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]}),g$=Wr&&Wr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),y$=Wr&&Wr.__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)&&m$(e,t,n);return g$(e,t),e};Object.defineProperty(Wr,"__esModule",{value:!0});Wr.LookupHelper=void 0;var vE=fe(),b$=y$(rh()),_$=_w(),v$=_E(),vw=class{constructor(e,n){this.document=e,this.context=n,this.mergedTypeMap=null}getTypeMap(){return N(this,null,function*(){return this.mergedTypeMap==null&&(this.mergedTypeMap=yield this.context.documentMerger.build(this.document,this.context)),this.mergedTypeMap})}findAllAssignmentsOfIdentifier(e,n){return N(this,null,function*(){let r=yield this.getTypeMap();if(r==null)return[];let i=r.scopeRefMapping.get(n);return i==null?[]:i.scope.resolveAllAvailableWithQuery(e)})}findAllAssignmentsOfItem(e){return N(this,null,function*(){let n=yield this.getTypeMap();if(n==null)return null;let r=n.resolveNamespace(e,!1);return r==null?null:r.item})}findAllAvailableIdentifierInRoot(){return N(this,null,function*(){let e=yield this.getTypeMap();return e==null?new Map:e.globals.getAllProperties().reduce((n,r)=>{let i=r.type.getSource();return n.set(r.name,{kind:r.kind,line:i&&i.length>0?i[0].start.line-1:-1}),n},new Map)})}findAllAvailableIdentifier(e){return N(this,null,function*(){let n=yield this.getTypeMap();if(n==null)return new Map;let r=n.scopeRefMapping.get(e);return r==null?new Map:r.scope.getAllProperties().reduce((i,s)=>{let o=s.type.getSource();return i.set(s.name,{kind:s.kind,line:o&&o.length>0?o[0].start.line-1:-1}),i},new Map)})}findAllAvailableIdentifierRelatedToPosition(e){return N(this,null,function*(){let n=yield this.getTypeMap(),r=new Map;if(n==null)return r;let s=n.scopeRefMapping.get(e.scope).scope.getAllProperties(),o=[],l=[];for(let c=0;c<s.length;c++){let a=s[c],u=a.type.getSource();a.type.document!=null&&a.type.document.name===n.name&&u!=null&&u.length>0?l.push(a):o.push(a)}for(let c=0;c<o.length;c++){let a=o[c];r.set(a.name,{kind:a.kind,line:-1})}l.sort((c,a)=>c.type.getSource()[0].start.line-a.type.getSource()[0].start.line);for(let c=0;c<l.length;c++){let a=l[c],u=a.type.getSource()[0];if(u.start.line>=e.end.line)break;r.set(a.name,{kind:a.kind,line:u.start.line-1})}return r})}lookupAST(e){return N(this,null,function*(){let i=this.document.parsedPayload.lines[e.line+1];if(!i)return null;for(let s=0;s<i.length;s++){let o=i[s],l=b$.findEx((a,u)=>{let p=a.start.line-1,d=a.start.character-1,h=a.end.line-1,g=a.end.character-1;return p>e.line?{exit:!0}:p<h?{valid:e.line>p&&e.line<h||e.line===p&&d<=e.character||e.line===h&&g>=e.character}:{valid:p<=e.line&&d<=e.character&&h>=e.line&&g>=e.character}},o),c=l.pop();if(c)return{closest:c,outer:l}}return null})}lookupBasePath(e){return N(this,null,function*(){let n=yield this.getTypeMap();if(n===null)return null;let r=(0,_$.lookupBase)(e);return r?n.resolveNamespace(r,!0):null})}lookupTypeInfo(r){return N(this,arguments,function*({closest:e,outer:n}){let i=yield this.getTypeMap();if(i===null)return null;let s=n.length>0?n[n.length-1]:void 0;return(s==null?void 0:s.type)===vE.ASTType.MemberExpression&&e===s.identifier||(s==null?void 0:s.type)===vE.ASTType.IndexExpression&&e===s.index&&(0,v$.isValidIdentifierLiteral)(e)?i.resolveNamespace(s,!1):i.resolveNamespace(e,!1)})}lookupType(e){return N(this,null,function*(){let n=this,r=yield n.lookupAST(e);return r?n.lookupTypeInfo(r):null})}};Wr.LookupHelper=vw});var wE=T(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.AVAILABLE_CONSTANTS=void 0;sh.AVAILABLE_CONSTANTS=["true","false","null"].map(t=>({label:t,kind:21}))});var oh=T(nc=>{"use strict";Object.defineProperty(nc,"__esModule",{value:!0});nc.GreyScriptKeyword=void 0;var w$;(function(t){t.ImportCode="import_code"})(w$=nc.GreyScriptKeyword||(nc.GreyScriptKeyword={}))});var xw=T(Sw=>{"use strict";Object.defineProperty(Sw,"__esModule",{value:!0});var SE=Zt(),S$=fe(),x$=oh(),ww=class extends SE.LexerValidator{constructor(){super(...arguments),this.isKeyword=Set.prototype.has.bind(new Set([...Object.values(S$.Keyword),...Object.values(SE.GreybelKeyword),...Object.values(x$.GreyScriptKeyword)]))}};Sw.default=ww});var kw=T(rc=>{"use strict";var T$=rc&&rc.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(rc,"__esModule",{value:!0});var k$=Zt(),I$=T$(xw()),Tw=class extends k$.Lexer{constructor(e,n={}){n.validator=n.validator||new I$.default,super(e,n)}};rc.default=Tw});var Pw=T(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});ah.ASTChunkGreyScript=void 0;var P$=Zt(),Iw=class t extends P$.ASTChunkGreybel{constructor(e){super(e),this.nativeImports=e.nativeImports||[]}clone(){return new t({nativeImports:this.nativeImports.map(e=>e.clone()),imports:this.imports.map(e=>e.clone()),includes:this.includes.map(e=>e.clone()),literals:this.literals.map(e=>e.clone()),scopes:this.scopes.map(e=>e.clone()),lines:this.lines,start:this.start,end:this.end,range:this.range,scope:this.scope})}};ah.ASTChunkGreyScript=Iw});var Ew=T(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.ASTType=void 0;var E$;(function(t){t.ImportCodeExpression="ImportCodeExpression"})(E$=ic.ASTType||(ic.ASTType={}))});var Cw=T(lh=>{"use strict";Object.defineProperty(lh,"__esModule",{value:!0});lh.ASTImportCodeExpression=void 0;var R$=fe(),C$=Ew(),Rw=class t extends R$.ASTBase{constructor(e){super(C$.ASTType.ImportCodeExpression,e),this.originalDirectory=e.originalDirectory,this.directory=e.directory,this.eval=e.eval,this.emit=e.emit}static parseMetaOptions(e){let r=e.split(";").reduce((s,o)=>{let[l,c]=o.trim().split("=");return c==null?s[l]=!0:s[l]=c,s},{}),i={eval:r["no-eval"]==null,emit:r["no-emit"]==null};return r.override!=null&&(i.directory=r.override),i}toString(){return`ImportCode[${this.start}-${this.end}][${this.directory};${this.eval};${this.emit}]`}clone(){return new t({originalDirectory:this.originalDirectory,directory:this.directory,eval:this.eval,emit:this.emit,start:this.start,end:this.end,range:this.range,scope:this.scope})}};lh.ASTImportCodeExpression=Rw});var Ow=T(Kr=>{"use strict";Object.defineProperty(Kr,"__esModule",{value:!0});Kr.ASTImportCodeExpression=Kr.ASTChunkGreyScript=Kr.ASTType=Kr.ASTProvider=void 0;var D$=Zt(),O$=Pw(),A$=Cw(),Dw=class extends D$.ASTProvider{chunk(e){return new O$.ASTChunkGreyScript(e)}importCodeExpression(e){return new A$.ASTImportCodeExpression(e)}};Kr.ASTProvider=Dw;var M$=Ew();Object.defineProperty(Kr,"ASTType",{enumerable:!0,get:function(){return M$.ASTType}});var j$=Pw();Object.defineProperty(Kr,"ASTChunkGreyScript",{enumerable:!0,get:function(){return j$.ASTChunkGreyScript}});var L$=Cw();Object.defineProperty(Kr,"ASTImportCodeExpression",{enumerable:!0,get:function(){return L$.ASTImportCodeExpression}})});var TE=T(sc=>{"use strict";var q$=sc&&sc.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(sc,"__esModule",{value:!0});var zi=fe(),hn=Zt(),ch=Po(),la=Do(),xE=Ow(),F$=q$(kw()),N$=oh(),Aw=class extends hn.Parser{constructor(e,n={}){n.lexer=n.lexer||new F$.default(e,{unsafe:n.unsafe,tabWidth:n.tabWidth}),n.astProvider=n.astProvider||new xE.ASTProvider,super(e,n);let r=this;r.nativeImports=[]}parseStatement(){let e=this;if(e.isType(zi.TokenType.Keyword))switch(e.token.value){case N$.GreyScriptKeyword.ImportCode:e.next();let r=e.parseNativeImportCodeStatement();e.lineRegistry.addItemToLines(r),e.backpatches.peek().body.push(r);return;default:break}return super.parseStatement()}parseFunctionDeclaration(e,n=!1,r=!1){let i=this;if(!hn.Selectors.Function(i.token))return i.parseOr(n,r);i.next();let s=i.previousToken,o=i.astProvider.functionStatement({start:s.start,end:null,range:[s.range[0],null],scope:i.currentScope,parent:i.outerScopes[i.outerScopes.length-1],assignment:i.currentAssignment}),l=[];if(i.pushScope(o),!hn.SelectorGroups.BlockEndOfLine(i.token)){for(i.requireToken(hn.Selectors.LParenthesis,s.start);!hn.SelectorGroups.FunctionDeclarationArgEnd(i.token);){let a=i.parseIdentifier(zi.ASTIdentifierKind.Argument),u=a;if(i.consume(hn.Selectors.Assign)){let p=i.parseExpr(null),d=i.astProvider.assignmentStatement({variable:a,init:p,start:u.start,end:i.previousToken.end,range:[u.range[0],i.previousToken.range[1]],scope:i.currentScope});i.currentScope.definitions.push(d),l.push(d)}else{let p=i.astProvider.assignmentStatement({variable:a,init:i.astProvider.unknown({start:u.start,end:i.previousToken.end,range:[u.range[0],i.previousToken.range[1]],scope:i.currentScope}),start:u.start,end:i.previousToken.end,range:[u.range[0],i.previousToken.range[1]],scope:i.currentScope});i.currentScope.definitions.push(p),l.push(a)}if(hn.Selectors.RParenthesis(i.token))break;if(i.requireToken(hn.Selectors.ArgumentSeperator,s.start),hn.Selectors.RParenthesis(i.token)){i.raise("expected argument instead received right parenthesis",new la.Range(i.previousToken.end,i.previousToken.end));break}}i.requireToken(hn.Selectors.RParenthesis,s.start)}o.parameters=l;let c=new zi.PendingFunction(o,e,i.lineRegistry);return i.backpatches.push(c),o}parseNativeImportCodeStatement(){var e,n,r,i;let s=this,o=s.previousToken;if(!s.consume(hn.Selectors.LParenthesis))return s.raise("expected import_code to have opening parenthesis",new la.Range(o.start,new ch.Position((e=s.token.lastLine)!==null&&e!==void 0?e:s.token.line,s.token.end.character))),s.parseInvalidCode();let l;if(s.isType(zi.TokenType.StringLiteral))l=s.token.value,s.next();else return s.raise("expected import_code argument to be string literal",new la.Range(o.start,new ch.Position((n=s.token.lastLine)!==null&&n!==void 0?n:s.token.line,s.token.end.character))),s.parseInvalidCode();if(s.consume(hn.Selectors.ImportCodeSeperator)){if(!s.isType(zi.TokenType.StringLiteral))return s.raise("expected import_code argument to be string literal",new la.Range(o.start,new ch.Position((r=s.token.lastLine)!==null&&r!==void 0?r:s.token.line,s.token.end.character))),s.parseInvalidCode();l=s.token.value,console.warn("Warning: Second import_code argument is deprecated. Use the first argument for the file system path instead."),s.next()}if(!s.consume(hn.Selectors.RParenthesis))return s.raise("expected import_code to have closing parenthesis",new la.Range(o.start,new ch.Position((i=s.token.lastLine)!==null&&i!==void 0?i:s.token.line,s.token.end.character))),s.parseInvalidCode();let c=s.previousToken,a=l,u=!0,p=!0;if(s.isType(zi.TokenType.Comment)){let h=xE.ASTImportCodeExpression.parseMetaOptions(s.token.value);u=h.emit,p=h.eval,h.directory&&(a=h.directory)}let d=s.astProvider.importCodeExpression({originalDirectory:l,directory:a,emit:u,eval:p,start:o.start,end:c.end,range:[o.range[0],c.range[1]],scope:s.currentScope});return s.nativeImports.push(d),d}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 zi.PendingChunk(r,e.lineRegistry);for(e.backpatches.setDefault(i),e.pushScope(r);!hn.Selectors.EndOfFile(e.token)&&(e.skipNewlines(),!hn.Selectors.EndOfFile(e.token));)e.lexer.recordSnapshot(),e.statementErrors=[],e.parseStatement(),e.statementErrors.length>0&&e.tryToRecover();let s=e.backpatches.pop();for(;!(0,zi.isPendingChunk)(s);){let o=e.raise(`found open block ${s.block.type}`,new la.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.comments=e.comments,r.scopes=e.scopes,r.lines=e.lineRegistry.lines,r.nativeImports=e.nativeImports,r.imports=e.imports,r.includes=e.includes,r.injects=e.injects,r}};sc.default=Aw});var Es=T(en=>{"use strict";var $$=en&&en.__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]}),kE=en&&en.__exportStar||function(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&$$(e,t,n)},Mw=en&&en.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(en,"__esModule",{value:!0});en.Parser=en.LexerValidator=en.Lexer=void 0;var U$=kw();Object.defineProperty(en,"Lexer",{enumerable:!0,get:function(){return Mw(U$).default}});var B$=xw();Object.defineProperty(en,"LexerValidator",{enumerable:!0,get:function(){return Mw(B$).default}});var V$=TE();Object.defineProperty(en,"Parser",{enumerable:!0,get:function(){return Mw(V$).default}});kE(Ow(),en);kE(oh(),en)});var IE=T(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});uh.AVAILABLE_KEYWORDS=void 0;var ca=Zt(),W$=Es(),tn=fe();uh.AVAILABLE_KEYWORDS=[tn.Keyword.If,tn.Keyword.In,tn.Keyword.Or,tn.Keyword.And,tn.Keyword.Isa,tn.Keyword.For,tn.Keyword.New,tn.Keyword.Not,tn.Keyword.End,tn.Keyword.Then,tn.Keyword.Else,tn.Keyword.Break,tn.Keyword.While,tn.Keyword.Return,tn.Keyword.Function,tn.Keyword.Continue,W$.GreyScriptKeyword.ImportCode,ca.GreybelKeyword.Envar,ca.GreybelKeyword.Import,ca.GreybelKeyword.Include,ca.GreybelKeyword.Debugger,ca.GreybelKeyword.Line,ca.GreybelKeyword.File].map(t=>({label:t,kind:14}))});var PE=T(ph=>{"use strict";Object.defineProperty(ph,"__esModule",{value:!0});ph.AVAILABLE_OPERATORS=void 0;var oc=Yo(),Ft=fe();ph.AVAILABLE_OPERATORS=[Ft.Operator.Plus,Ft.Operator.Asterik,Ft.Operator.Minus,Ft.Operator.Slash,Ft.Operator.Power,Ft.Operator.Modulo,Ft.Operator.LessThan,Ft.Operator.GreaterThan,Ft.Operator.LessThanOrEqual,Ft.Operator.GreaterThanOrEqual,Ft.Operator.NotEqual,Ft.Operator.Equal,Ft.Operator.AddShorthand,Ft.Operator.SubtractShorthand,Ft.Operator.MultiplyShorthand,Ft.Operator.DivideShorthand,oc.Operator.BitwiseAnd,oc.Operator.BitwiseOr,oc.Operator.LeftShift,oc.Operator.RightShift,oc.Operator.UnsignedRightShift,Ft.Operator.Assign,Ft.Operator.Reference].map(t=>({label:t,kind:24}))});var RE=T(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.activate=Fn.getDefaultCompletionList=Fn.getPropertyCompletionList=void 0;var EE=fe(),K$=bE(),H$=aa(),z$=wE(),G$=IE(),Y$=PE(),J$=(t,e)=>N(Fn,null,function*(){let n=yield t.lookupBasePath(e);return n===null?null:n.item.getAllProperties().reduce((r,i)=>{let s=i.type.getSource();return r.set(i.name,{kind:i.kind,line:s&&s.length>0?s[0].start.line-1:-1}),r},new Map)});Fn.getPropertyCompletionList=J$;var Q$=()=>[...G$.AVAILABLE_KEYWORDS,...Y$.AVAILABLE_OPERATORS,...z$.AVAILABLE_CONSTANTS];Fn.getDefaultCompletionList=Q$;function X$(t){t.connection.onCompletion(e=>N(this,null,function*(){if(!t.getConfiguration().autocomplete)return;let n=yield t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=yield t.documentManager.getLatest(n),i=new H$.LookupHelper(r,t),s=yield i.lookupAST(e.position),o=new K$.CompletionListBuilder;if(s){let{closest:l}=s;l instanceof EE.ASTMemberExpression?o.addCollection(yield(0,Fn.getPropertyCompletionList)(i,l)):l instanceof EE.ASTIndexExpression?o.addCollection(yield(0,Fn.getPropertyCompletionList)(i,l)):(o.setDefault((0,Fn.getDefaultCompletionList)()),o.addCollection(yield i.findAllAvailableIdentifierRelatedToPosition(s.closest)))}else o.setDefault((0,Fn.getDefaultCompletionList)()),o.addCollection(yield i.findAllAvailableIdentifierInRoot());return o.build()})),t.connection.onCompletionResolve(e=>e)}Fn.activate=X$});var DE=T((V7,CE)=>{"use strict";CE.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 jw=T((W7,AE)=>{var ac=DE(),OE={};for(let t of Object.keys(ac))OE[ac[t]]=t;var Q={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"]}};AE.exports=Q;for(let t of Object.keys(Q)){if(!("channels"in Q[t]))throw new Error("missing channels property: "+t);if(!("labels"in Q[t]))throw new Error("missing channel labels property: "+t);if(Q[t].labels.length!==Q[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:e,labels:n}=Q[t];delete Q[t].channels,delete Q[t].labels,Object.defineProperty(Q[t],"channels",{value:e}),Object.defineProperty(Q[t],"labels",{value:n})}Q.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,l,c;s===i?l=0:e===s?l=(n-r)/o:n===s?l=2+(r-e)/o:r===s&&(l=4+(e-n)/o),l=Math.min(l*60,360),l<0&&(l+=360);let a=(i+s)/2;return s===i?c=0:a<=.5?c=o/(s+i):c=o/(2-s-i),[l,c*100,a*100]};Q.rgb.hsv=function(t){let e,n,r,i,s,o=t[0]/255,l=t[1]/255,c=t[2]/255,a=Math.max(o,l,c),u=a-Math.min(o,l,c),p=function(d){return(a-d)/6/u+1/2};return u===0?(i=0,s=0):(s=u/a,e=p(o),n=p(l),r=p(c),o===a?i=r-n:l===a?i=1/3+e-r:c===a&&(i=2/3+n-e),i<0?i+=1:i>1&&(i-=1)),[i*360,s*100,a*100]};Q.rgb.hwb=function(t){let e=t[0],n=t[1],r=t[2],i=Q.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]};Q.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,l=(1-r-i)/(1-i)||0;return[s*100,o*100,l*100,i*100]};function Z$(t,e){return xt(t[0]-e[0],2)+xt(t[1]-e[1],2)+xt(t[2]-e[2],2)}Q.rgb.keyword=function(t){let e=OE[t];if(e)return e;let n=1/0,r;for(let i of Object.keys(ac)){let s=ac[i],o=Z$(t,s);o<n&&(n=o,r=i)}return r};Q.keyword.rgb=function(t){return ac[t]};Q.rgb.xyz=function(t){let e=t[0]/255,n=t[1]/255,r=t[2]/255;e=e>.04045?xt((e+.055)/1.055,2.4):e/12.92,n=n>.04045?xt((n+.055)/1.055,2.4):n/12.92,r=r>.04045?xt((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]};Q.rgb.lab=function(t){let e=Q.rgb.xyz(t),n=e[0],r=e[1],i=e[2];n/=95.047,r/=100,i/=108.883,n=n>.008856?xt(n,1/3):7.787*n+16/116,r=r>.008856?xt(r,1/3):7.787*r+16/116,i=i>.008856?xt(i,1/3):7.787*i+16/116;let s=116*r-16,o=500*(n-r),l=200*(r-i);return[s,o,l]};Q.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 l=2*r-i,c=[0,0,0];for(let a=0;a<3;a++)s=e+1/3*-(a-1),s<0&&s++,s>1&&s--,6*s<1?o=l+(i-l)*6*s:2*s<1?o=i:3*s<2?o=l+(i-l)*(2/3-s)*6:o=l,c[a]=o*255;return c};Q.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,l=r===0?2*i/(s+i):2*n/(r+n);return[e,l*100,o*100]};Q.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),l=255*r*(1-n*s),c=255*r*(1-n*(1-s));switch(r*=255,i){case 0:return[r,c,o];case 1:return[l,r,o];case 2:return[o,r,c];case 3:return[o,l,r];case 4:return[c,o,r];case 5:return[r,o,l]}};Q.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 l=(2-n)*i;return s=n*i,s/=l<=1?l:2-l,s=s||0,o/=2,[e,s*100,o*100]};Q.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),l=1-r;s=6*e-o,o&1&&(s=1-s);let c=n+s*(l-n),a,u,p;switch(o){default:case 6:case 0:a=l,u=c,p=n;break;case 1:a=c,u=l,p=n;break;case 2:a=n,u=l,p=c;break;case 3:a=n,u=c,p=l;break;case 4:a=c,u=n,p=l;break;case 5:a=l,u=n,p=c;break}return[a*255,u*255,p*255]};Q.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),l=1-Math.min(1,r*(1-i)+i);return[s*255,o*255,l*255]};Q.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*xt(i,1/2.4)-.055:i*12.92,s=s>.0031308?1.055*xt(s,1/2.4)-.055:s*12.92,o=o>.0031308?1.055*xt(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]};Q.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?xt(e,1/3):7.787*e+16/116,n=n>.008856?xt(n,1/3):7.787*n+16/116,r=r>.008856?xt(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]};Q.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 l=xt(s,3),c=xt(i,3),a=xt(o,3);return s=l>.008856?l:(s-16/116)/7.787,i=c>.008856?c:(i-16/116)/7.787,o=a>.008856?a:(o-16/116)/7.787,i*=95.047,s*=100,o*=108.883,[i,s,o]};Q.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]};Q.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]};Q.rgb.ansi16=function(t,e=null){let[n,r,i]=t,s=e===null?Q.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};Q.hsv.ansi16=function(t){return Q.rgb.ansi16(Q.hsv.rgb(t),t[2])};Q.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)};Q.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]};Q.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]};Q.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};Q.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(l=>l+l).join(""));let r=parseInt(n,16),i=r>>16&255,s=r>>8&255,o=r&255;return[i,s,o]};Q.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,l,c;return o<1?l=s/(1-o):l=0,o<=0?c=0:i===e?c=(n-r)/o%6:i===n?c=2+(r-e)/o:c=4+(e-n)/o,c/=6,c%=1,[c*360,o*100,l*100]};Q.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]};Q.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]};Q.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,l=1-o,c=0;switch(Math.floor(s)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=l,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]=l,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]=l}return c=(1-n)*r,[(n*i[0]+c)*255,(n*i[1]+c)*255,(n*i[2]+c)*255]};Q.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]};Q.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]};Q.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]};Q.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]};Q.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]};Q.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]};Q.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]};Q.gray.hsl=function(t){return[0,0,t[0]]};Q.gray.hsv=Q.gray.hsl;Q.gray.hwb=function(t){return[0,100,t[0]]};Q.gray.cmyk=function(t){return[0,0,0,t[0]]};Q.gray.lab=function(t){return[t[0],0,0]};Q.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};Q.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}});var jE=T((H7,ME)=>{var dh=jw();function eU(){let t={},e=Object.keys(dh);for(let n=e.length,r=0;r<n;r++)t[e[r]]={distance:-1,parent:null};return t}function tU(t){let e=eU(),n=[t];for(e[t].distance=0;n.length;){let r=n.pop(),i=Object.keys(dh[r]);for(let s=i.length,o=0;o<s;o++){let l=i[o],c=e[l];c.distance===-1&&(c.distance=e[r].distance+1,c.parent=r,n.unshift(l))}}return e}function nU(t,e){return function(n){return e(t(n))}}function rU(t,e){let n=[e[t].parent,t],r=dh[e[t].parent][t],i=e[t].parent;for(;e[i].parent;)n.unshift(e[i].parent),r=nU(dh[e[i].parent][i],r),i=e[i].parent;return r.conversion=n,r}ME.exports=function(t){let e=tU(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]=rU(o,e))}return n}});var qE=T((z7,LE)=>{var Lw=jw(),iU=jE(),ua={},sU=Object.keys(Lw);function oU(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 aU(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}sU.forEach(t=>{ua[t]={},Object.defineProperty(ua[t],"channels",{value:Lw[t].channels}),Object.defineProperty(ua[t],"labels",{value:Lw[t].labels});let e=iU(t);Object.keys(e).forEach(r=>{let i=e[r];ua[t][r]=aU(i),ua[t][r].raw=oU(i)})});LE.exports=ua});var NE=T(pa=>{"use strict";var lU=pa&&pa.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pa,"__esModule",{value:!0});pa.activate=void 0;var qw=lU(qE()),cU=fe(),FE;(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"})(FE||(FE={}));var Fw={black:"#000000",blue:"#0000FF",green:"#00FF00",orange:"#FF8800",purple:"#CC8899",red:"#FF0000",white:"#FFFFFF",yellow:"#FFFF00"},uU=()=>new RegExp(`(?:mark|color)=(${Object.keys(Fw).join("|")}|(?:#[0-9a-f]{6}|#[0-9a-f]{3}))`,"ig"),pU=Object.prototype.hasOwnProperty;function dU(t){t.connection.onColorPresentation(e=>[{label:`#${qw.default.rgb.hex(e.color.red*255,e.color.green*255,e.color.blue*255)}`}]),t.connection.onDocumentColor(e=>N(this,null,function*(){let n=yield t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let s=(yield t.documentManager.getLatest(n)).parsedPayload.literals.filter(c=>c.type===cU.ASTType.StringLiteral),o=[],l=({match:c,markup:a,value:u,astPosition:p,lineIndex:d})=>{let h=c.index+a.indexOf("=")+1,g=h+u.length,f=p.line-1+d,m=h,b=g;return d===0&&(m+=p.character,b+=p.character),{start:{line:f,character:m},end:{line:f,character:b}}};for(let c=0;c<s.length;c++){let a=s[c];if(!a.start)continue;let u=a.start,p=a.value.toString().split(`
113
113
  `);for(let d=0;d<p.length;d++){let h=p[d],g=uU(),f;for(;f=g.exec(h);){let[m,b]=f,_=l({match:f,markup:m,value:b,astPosition:u,lineIndex:d});if(b.startsWith("#")){let[v,w,x]=qw.default.hex.rgb(b.slice(1));o.push({range:_,color:{red:v/255,green:w/255,blue:x/255,alpha:1}})}else if(pU.call(Fw,b)){let[v,w,x]=qw.default.hex.rgb(Fw[b].slice(1));o.push({range:_,color:{red:v/255,green:w/255,blue:x/255,alpha:1}})}else o.push({range:_,color:{red:0,green:0,blue:0,alpha:1}})}}}return o}))}pa.activate=dU});var UE=T(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.activate=void 0;var $E=fe(),hU=aa(),fU=t=>`${t.uri}:${t.range.start.line}:${t.range.start.character}-${t.range.end.line}:${t.range.end.character}`,mU=t=>{let e=t.astRef,n,r;switch(e.type){case $E.ASTType.ForGenericStatement:{let i=e;n={line:i.variable.start.line-1,character:i.variable.start.character-1},r={line:i.variable.end.line-1,character:i.variable.end.character-1};break}default:n={line:e.start.line-1,character:e.start.character-1},r={line:e.end.line-1,character:e.end.character-1}}return{uri:t.document,range:{start:n,end:r}}},gU=(t,e)=>N(lc,null,function*(){let n=yield t.findAllAssignmentsOfItem(e),r=n==null?void 0:n.getSource();if(r==null||r.length===0)return[];let i=[],s=new Set;for(let o of r){let l=o.astRef;if(l==null||!l.start||!l.end)continue;let c=mU(o),a=fU(c);s.has(a)||(s.add(a),i.push(c))}return i});function yU(t){t.connection.onDefinition(e=>N(this,null,function*(){let n=yield t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=yield t.documentManager.getLatest(n),i=new hU.LookupHelper(r,t),s=yield i.lookupAST(e.position);if(!s)return;let{outer:o,closest:l}=s,c=o.length>0?o[o.length-1]:void 0,a=l;return c&&c instanceof $E.ASTMemberExpression&&c.identifier===l&&(a=c),yield gU(i,a)}))}lc.activate=yU});var BE=T(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});hh.activate=void 0;function bU(t,e){return N(this,null,function*(){let n=yield e.documentManager.getLatest(t);return n.errors.map(r=>{if(r!=null&&r.range){let i=r.range;return{range:{start:{line:i.start.line-1,character:i.start.character-1},end:{line:i.end.line-1,character:i.end.character-1}},message:r.message,severity:1}}return{range:{start:n.parsedPayload.start,end:n.parsedPayload.end},message:r.message,severity:1}})})}function _U(t){t.connection.languages.diagnostics.on(e=>N(this,null,function*(){if(!t.getConfiguration().diagnostic)return;let n=yield t.fs.getTextDocument(e.textDocument.uri);if(n==null)return;let r=yield bU(n,t);return r.length===0?{kind:"full",items:[]}:{kind:"full",items:r}}))}hh.activate=_U});function vU(){if(VE)return Nw;VE=!0;var t=Nw={},e,n;function r(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?e=setTimeout:e=r}catch(f){e=r}try{typeof clearTimeout=="function"?n=clearTimeout:n=i}catch(f){n=i}})();function s(f){if(e===setTimeout)return setTimeout(f,0);if((e===r||!e)&&setTimeout)return e=setTimeout,setTimeout(f,0);try{return e(f,0)}catch(m){try{return e.call(null,f,0)}catch(b){return e.call(this||da,f,0)}}}function o(f){if(n===clearTimeout)return clearTimeout(f);if((n===i||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(f);try{return n(f)}catch(m){try{return n.call(null,f)}catch(b){return n.call(this||da,f)}}}var l=[],c=!1,a,u=-1;function p(){!c||!a||(c=!1,a.length?l=a.concat(l):u=-1,l.length&&d())}function d(){if(!c){var f=s(p);c=!0;for(var m=l.length;m;){for(a=l,l=[];++u<m;)a&&a[u].run();u=-1,m=l.length}a=null,c=!1,o(f)}}t.nextTick=function(f){var m=new Array(arguments.length-1);if(arguments.length>1)for(var b=1;b<arguments.length;b++)m[b-1]=arguments[b];l.push(new h(f,m)),l.length===1&&!c&&s(d)};function h(f,m){(this||da).fun=f,(this||da).array=m}h.prototype.run=function(){(this||da).fun.apply(null,(this||da).array)},t.title="browser",t.browser=!0,t.env={},t.argv=[],t.version="",t.versions={};function g(){}return t.on=g,t.addListener=g,t.once=g,t.off=g,t.removeListener=g,t.removeAllListeners=g,t.emit=g,t.prependListener=g,t.prependOnceListener=g,t.listeners=function(f){return[]},t.binding=function(f){throw new Error("process.binding is not supported")},t.cwd=function(){return"/"},t.chdir=function(f){throw new Error("process.chdir is not supported")},t.umask=function(){return 0},Nw}var Nw,VE,da,nt,$w=Ir(()=>{Nw={},VE=!1,da=typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:global;nt=vU();nt.platform="browser";nt.addListener;nt.argv;nt.binding;nt.browser;nt.chdir;nt.cwd;nt.emit;nt.env;nt.listeners;nt.nextTick;nt.off;nt.on;nt.once;nt.prependListener;nt.prependOnceListener;nt.removeAllListeners;nt.removeListener;nt.title;nt.umask;nt.version;nt.versions});function wU(){if(WE)return Uw;WE=!0;var t=nt;function e(s){if(typeof s!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(s))}function n(s,o){for(var l="",c=0,a=-1,u=0,p,d=0;d<=s.length;++d){if(d<s.length)p=s.charCodeAt(d);else{if(p===47)break;p=47}if(p===47){if(!(a===d-1||u===1))if(a!==d-1&&u===2){if(l.length<2||c!==2||l.charCodeAt(l.length-1)!==46||l.charCodeAt(l.length-2)!==46){if(l.length>2){var h=l.lastIndexOf("/");if(h!==l.length-1){h===-1?(l="",c=0):(l=l.slice(0,h),c=l.length-1-l.lastIndexOf("/")),a=d,u=0;continue}}else if(l.length===2||l.length===1){l="",c=0,a=d,u=0;continue}}o&&(l.length>0?l+="/..":l="..",c=2)}else l.length>0?l+="/"+s.slice(a+1,d):l=s.slice(a+1,d),c=d-a-1;a=d,u=0}else p===46&&u!==-1?++u:u=-1}return l}function r(s,o){var l=o.dir||o.root,c=o.base||(o.name||"")+(o.ext||"");return l?l===o.root?l+c:l+s+c:c}var i={resolve:function(){for(var o="",l=!1,c,a=arguments.length-1;a>=-1&&!l;a--){var u;a>=0?u=arguments[a]:(c===void 0&&(c=t.cwd()),u=c),e(u),u.length!==0&&(o=u+"/"+o,l=u.charCodeAt(0)===47)}return o=n(o,!l),l?o.length>0?"/"+o:"/":o.length>0?o:"."},normalize:function(o){if(e(o),o.length===0)return".";var l=o.charCodeAt(0)===47,c=o.charCodeAt(o.length-1)===47;return o=n(o,!l),o.length===0&&!l&&(o="."),o.length>0&&c&&(o+="/"),l?"/"+o:o},isAbsolute:function(o){return e(o),o.length>0&&o.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var o,l=0;l<arguments.length;++l){var c=arguments[l];e(c),c.length>0&&(o===void 0?o=c:o+="/"+c)}return o===void 0?".":i.normalize(o)},relative:function(o,l){if(e(o),e(l),o===l||(o=i.resolve(o),l=i.resolve(l),o===l))return"";for(var c=1;c<o.length&&o.charCodeAt(c)===47;++c);for(var a=o.length,u=a-c,p=1;p<l.length&&l.charCodeAt(p)===47;++p);for(var d=l.length,h=d-p,g=u<h?u:h,f=-1,m=0;m<=g;++m){if(m===g){if(h>g){if(l.charCodeAt(p+m)===47)return l.slice(p+m+1);if(m===0)return l.slice(p+m)}else u>g&&(o.charCodeAt(c+m)===47?f=m:m===0&&(f=0));break}var b=o.charCodeAt(c+m),_=l.charCodeAt(p+m);if(b!==_)break;b===47&&(f=m)}var v="";for(m=c+f+1;m<=a;++m)(m===a||o.charCodeAt(m)===47)&&(v.length===0?v+="..":v+="/..");return v.length>0?v+l.slice(p+f):(p+=f,l.charCodeAt(p)===47&&++p,l.slice(p))},_makeLong:function(o){return o},dirname:function(o){if(e(o),o.length===0)return".";for(var l=o.charCodeAt(0),c=l===47,a=-1,u=!0,p=o.length-1;p>=1;--p)if(l=o.charCodeAt(p),l===47){if(!u){a=p;break}}else u=!1;return a===-1?c?"/":".":c&&a===1?"//":o.slice(0,a)},basename:function(o,l){if(l!==void 0&&typeof l!="string")throw new TypeError('"ext" argument must be a string');e(o);var c=0,a=-1,u=!0,p;if(l!==void 0&&l.length>0&&l.length<=o.length){if(l.length===o.length&&l===o)return"";var d=l.length-1,h=-1;for(p=o.length-1;p>=0;--p){var g=o.charCodeAt(p);if(g===47){if(!u){c=p+1;break}}else h===-1&&(u=!1,h=p+1),d>=0&&(g===l.charCodeAt(d)?--d===-1&&(a=p):(d=-1,a=h))}return c===a?a=h:a===-1&&(a=o.length),o.slice(c,a)}else{for(p=o.length-1;p>=0;--p)if(o.charCodeAt(p)===47){if(!u){c=p+1;break}}else a===-1&&(u=!1,a=p+1);return a===-1?"":o.slice(c,a)}},extname:function(o){e(o);for(var l=-1,c=0,a=-1,u=!0,p=0,d=o.length-1;d>=0;--d){var h=o.charCodeAt(d);if(h===47){if(!u){c=d+1;break}continue}a===-1&&(u=!1,a=d+1),h===46?l===-1?l=d:p!==1&&(p=1):l!==-1&&(p=-1)}return l===-1||a===-1||p===0||p===1&&l===a-1&&l===c+1?"":o.slice(l,a)},format:function(o){if(o===null||typeof o!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof o);return r("/",o)},parse:function(o){e(o);var l={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return l;var c=o.charCodeAt(0),a=c===47,u;a?(l.root="/",u=1):u=0;for(var p=-1,d=0,h=-1,g=!0,f=o.length-1,m=0;f>=u;--f){if(c=o.charCodeAt(f),c===47){if(!g){d=f+1;break}continue}h===-1&&(g=!1,h=f+1),c===46?p===-1?p=f:m!==1&&(m=1):p!==-1&&(m=-1)}return p===-1||h===-1||m===0||m===1&&p===h-1&&p===d+1?h!==-1&&(d===0&&a?l.base=l.name=o.slice(1,h):l.base=l.name=o.slice(d,h)):(d===0&&a?(l.name=o.slice(1,p),l.base=o.slice(1,h)):(l.name=o.slice(d,p),l.base=o.slice(d,h)),l.ext=o.slice(p,h)),d>0?l.dir=o.slice(0,d-1):a&&(l.dir="/"),l},sep:"/",delimiter:":",win32:null,posix:null};return i.posix=i,Uw=i,Uw}var Uw,WE,Nt,Bw=Ir(()=>{$w();Uw={},WE=!1;Nt=wU()});var ha={};Ks(ha,{_makeLong:()=>SU,basename:()=>xU,default:()=>Nt,delimiter:()=>TU,dirname:()=>kU,extname:()=>IU,format:()=>PU,isAbsolute:()=>EU,join:()=>RU,normalize:()=>CU,parse:()=>DU,posix:()=>OU,relative:()=>AU,resolve:()=>MU,sep:()=>jU,win32:()=>LU});var SU,xU,TU,kU,IU,PU,EU,RU,CU,DU,OU,AU,MU,jU,LU,fa=Ir(()=>{Bw();Bw();$w();SU=Nt._makeLong,xU=Nt.basename,TU=Nt.delimiter,kU=Nt.dirname,IU=Nt.extname,PU=Nt.format,EU=Nt.isAbsolute,RU=Nt.join,CU=Nt.normalize,DU=Nt.parse,OU=Nt.posix,AU=Nt.relative,MU=Nt.resolve,jU=Nt.sep,LU=Nt.win32});var mh=T((KE,fh)=>{(function(t){"use strict";function e(w,x){var y=(w&65535)+(x&65535),S=(w>>16)+(x>>16)+(y>>16);return S<<16|y&65535}function n(w,x){return w<<x|w>>>32-x}function r(w,x,y,S,k,C){return e(n(e(e(x,w),e(S,C)),k),y)}function i(w,x,y,S,k,C,A){return r(x&y|~x&S,w,x,k,C,A)}function s(w,x,y,S,k,C,A){return r(x&S|y&~S,w,x,k,C,A)}function o(w,x,y,S,k,C,A){return r(x^y^S,w,x,k,C,A)}function l(w,x,y,S,k,C,A){return r(y^(x|~S),w,x,k,C,A)}function c(w,x){w[x>>5]|=128<<x%32,w[(x+64>>>9<<4)+14]=x;var y,S,k,C,A,I=1732584193,D=-271733879,O=-1732584194,j=271733878;for(y=0;y<w.length;y+=16)S=I,k=D,C=O,A=j,I=i(I,D,O,j,w[y],7,-680876936),j=i(j,I,D,O,w[y+1],12,-389564586),O=i(O,j,I,D,w[y+2],17,606105819),D=i(D,O,j,I,w[y+3],22,-1044525330),I=i(I,D,O,j,w[y+4],7,-176418897),j=i(j,I,D,O,w[y+5],12,1200080426),O=i(O,j,I,D,w[y+6],17,-1473231341),D=i(D,O,j,I,w[y+7],22,-45705983),I=i(I,D,O,j,w[y+8],7,1770035416),j=i(j,I,D,O,w[y+9],12,-1958414417),O=i(O,j,I,D,w[y+10],17,-42063),D=i(D,O,j,I,w[y+11],22,-1990404162),I=i(I,D,O,j,w[y+12],7,1804603682),j=i(j,I,D,O,w[y+13],12,-40341101),O=i(O,j,I,D,w[y+14],17,-1502002290),D=i(D,O,j,I,w[y+15],22,1236535329),I=s(I,D,O,j,w[y+1],5,-165796510),j=s(j,I,D,O,w[y+6],9,-1069501632),O=s(O,j,I,D,w[y+11],14,643717713),D=s(D,O,j,I,w[y],20,-373897302),I=s(I,D,O,j,w[y+5],5,-701558691),j=s(j,I,D,O,w[y+10],9,38016083),O=s(O,j,I,D,w[y+15],14,-660478335),D=s(D,O,j,I,w[y+4],20,-405537848),I=s(I,D,O,j,w[y+9],5,568446438),j=s(j,I,D,O,w[y+14],9,-1019803690),O=s(O,j,I,D,w[y+3],14,-187363961),D=s(D,O,j,I,w[y+8],20,1163531501),I=s(I,D,O,j,w[y+13],5,-1444681467),j=s(j,I,D,O,w[y+2],9,-51403784),O=s(O,j,I,D,w[y+7],14,1735328473),D=s(D,O,j,I,w[y+12],20,-1926607734),I=o(I,D,O,j,w[y+5],4,-378558),j=o(j,I,D,O,w[y+8],11,-2022574463),O=o(O,j,I,D,w[y+11],16,1839030562),D=o(D,O,j,I,w[y+14],23,-35309556),I=o(I,D,O,j,w[y+1],4,-1530992060),j=o(j,I,D,O,w[y+4],11,1272893353),O=o(O,j,I,D,w[y+7],16,-155497632),D=o(D,O,j,I,w[y+10],23,-1094730640),I=o(I,D,O,j,w[y+13],4,681279174),j=o(j,I,D,O,w[y],11,-358537222),O=o(O,j,I,D,w[y+3],16,-722521979),D=o(D,O,j,I,w[y+6],23,76029189),I=o(I,D,O,j,w[y+9],4,-640364487),j=o(j,I,D,O,w[y+12],11,-421815835),O=o(O,j,I,D,w[y+15],16,530742520),D=o(D,O,j,I,w[y+2],23,-995338651),I=l(I,D,O,j,w[y],6,-198630844),j=l(j,I,D,O,w[y+7],10,1126891415),O=l(O,j,I,D,w[y+14],15,-1416354905),D=l(D,O,j,I,w[y+5],21,-57434055),I=l(I,D,O,j,w[y+12],6,1700485571),j=l(j,I,D,O,w[y+3],10,-1894986606),O=l(O,j,I,D,w[y+10],15,-1051523),D=l(D,O,j,I,w[y+1],21,-2054922799),I=l(I,D,O,j,w[y+8],6,1873313359),j=l(j,I,D,O,w[y+15],10,-30611744),O=l(O,j,I,D,w[y+6],15,-1560198380),D=l(D,O,j,I,w[y+13],21,1309151649),I=l(I,D,O,j,w[y+4],6,-145523070),j=l(j,I,D,O,w[y+11],10,-1120210379),O=l(O,j,I,D,w[y+2],15,718787259),D=l(D,O,j,I,w[y+9],21,-343485551),I=e(I,S),D=e(D,k),O=e(O,C),j=e(j,A);return[I,D,O,j]}function a(w){var x,y="",S=w.length*32;for(x=0;x<S;x+=8)y+=String.fromCharCode(w[x>>5]>>>x%32&255);return y}function u(w){var x,y=[];for(y[(w.length>>2)-1]=void 0,x=0;x<y.length;x+=1)y[x]=0;var S=w.length*8;for(x=0;x<S;x+=8)y[x>>5]|=(w.charCodeAt(x/8)&255)<<x%32;return y}function p(w){return a(c(u(w),w.length*8))}function d(w,x){var y,S=u(w),k=[],C=[],A;for(k[15]=C[15]=void 0,S.length>16&&(S=c(S,w.length*8)),y=0;y<16;y+=1)k[y]=S[y]^909522486,C[y]=S[y]^1549556828;return A=c(k.concat(u(x)),512+x.length*8),a(c(C.concat(A),640))}function h(w){var x="0123456789abcdef",y="",S,k;for(k=0;k<w.length;k+=1)S=w.charCodeAt(k),y+=x.charAt(S>>>4&15)+x.charAt(S&15);return y}function g(w){return unescape(encodeURIComponent(w))}function f(w){return p(g(w))}function m(w){return h(f(w))}function b(w,x){return d(g(w),g(x))}function _(w,x){return h(b(w,x))}function v(w,x,y){return x?y?b(x,w):_(x,w):y?f(w):m(w)}typeof define=="function"&&define.amd?define(function(){return v}):typeof fh=="object"&&fh.exports?fh.exports=v:t.md5=v})(KE)});var ya=T(ga=>{"use strict";Object.defineProperty(ga,"__esModule",{value:!0});ga.getLiteralValue=ga.getLiteralRawValue=void 0;var ma=fe(),qU=(t,e=!1)=>{switch(t.type){case ma.ASTType.NilLiteral:return"null";case ma.ASTType.NumericLiteral:{let n=t;return`${n.negated?"-":""}${n.raw}`}case ma.ASTType.BooleanLiteral:{let n=t,r=e?n.raw==="true"?"1":"0":n.raw;return`${n.negated?"-":""}${r}`}default:return t.raw.toString()}};ga.getLiteralRawValue=qU;var FU=t=>{switch(t.type){case ma.ASTType.NilLiteral:return"null";case ma.ASTType.NumericLiteral:{let e=t;return`${e.negated?"-":""}${e.value}`}case ma.ASTType.BooleanLiteral:{let e=t;return`${e.negated?"-":""}${e.value}`}default:return t.value.toString()}};ga.getLiteralValue=FU});var Ww=T(ba=>{"use strict";var NU=ba&&ba.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ba,"__esModule",{value:!0});ba.LiteralsMapper=void 0;var $U=NU(mh()),HE=ya(),Vw=class{constructor(e){let n=this;n.mapping=new Map,n.variableNamespacesGenerator=e}reset(){let e=this;return e.mapping=new Map,e}add(e){let n=this,r=(0,HE.getLiteralRawValue)(e,!0);if(r.length<2)return n;if(!n.mapping.has(r))n.mapping.set(r,{literal:e,amount:1,length:r.length,namespace:null});else{let i=n.mapping.get(r),s=i.amount+1,o=i.length+r.length;i.amount=s,i.length=o,o>10&&s>2&&i.namespace==null&&(i.namespace=n.variableNamespacesGenerator.createNamespace((0,$U.default)(r)))}return n}get(e){let n=this,r=(0,HE.getLiteralRawValue)(e,!0);return n.mapping.has(r)?n.mapping.get(r):null}getMapping(){return this.mapping}};ba.LiteralsMapper=Vw});var Hw=T(gh=>{"use strict";Object.defineProperty(gh,"__esModule",{value:!0});gh.NamespaceGenerator=void 0;var Kw=class{constructor(e){let n=this;n.buffer=[0],n.mapping=new Map,n.rmapping=new Map,n.forbidden=e.forbidden||[],n.characters=e.characters||null,n.defaultNamespaces=e.defaultNamespaces||[];for(let r of n.defaultNamespaces)n.createNamespace(r)}exclude(e){let n=this;return Array.isArray(e)?n.forbidden=n.forbidden.concat(e):n.forbidden.push(e),n}setCharset(e){let n=this;return n.characters=e,n}reset(){let e=this;return e.buffer=[0],e.mapping=new Map,e.rmapping=new Map,e}get(e){let n=this.mapping;return n.has(e)?n.get(e):null}increaseBuffer(e){let n=this,r=n.buffer,i=n.characters.length;e==null&&(e=r.length-1);let s=r[e];return s=s+1,r[e]=s,s===i&&(r[e]=0,e===0?r.push(0):n.increaseBuffer(e-1)),n}generateNamespace(){let e=this,n=e.buffer,r=e.characters,i=e.forbidden,s="",o=0,l;for(;o<n.length;)l=n[o],s=s+r[l],o===n.length-1&&e.increaseBuffer(),o=o+1;return i.indexOf(s)!==-1||e.mapping.has(s)?e.generateNamespace():s}createNamespace(e,n=!1){let r=this,i=r.mapping,s=r.rmapping;if(r.forbidden.indexOf(e)!==-1)return e;if(i.has(e)&&!n)return i.get(e);let l=r.generateNamespace();if(i.set(e,l),s.set(l,e),s.has(e)){let c=s.get(e);s.delete(e),l=r.createNamespace(c,!0)}return l}};gh.NamespaceGenerator=Kw});var cc=T(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});Rs.Context=Rs.ContextDataProperty=void 0;var UU=fe(),BU=Ww(),zE=Hw(),VU;(function(t){t.ResourceDependencyMap="resourceDependencyMap",t.DependencyCallStack="dependencyCallStack"})(VU=Rs.ContextDataProperty||(Rs.ContextDataProperty={}));var zw=class{constructor(e){let n=this;n.modules=new zE.NamespaceGenerator({characters:e.modulesCharset}),n.variables=new zE.NamespaceGenerator({characters:e.variablesCharset,defaultNamespaces:["BACKSLASH_CODE","NEW_LINE_OPERATOR","MODULES","EXPORTED","__REQUIRE","__REQUIRE_EVAL","MAIN","module","globals"],forbidden:["locals","outer","self","super","string","list","map","number","funcRef",...Object.values(UU.Keyword),...e.variablesExcluded||[]]}),n.literals=new BU.LiteralsMapper(n.variables),n.data=new Map}createModuleNamespace(e){return this.modules.createNamespace(e)}getOrCreateData(e,n){let r=this;if(r.data.has(e))return r.data.get(e);let i=n();return r.data.set(e,i),i}set(e,n){return this.data.set(e,n),this}get(e){return this.data.get(e)}};Rs.Context=zw});var Cs=T(uc=>{"use strict";Object.defineProperty(uc,"__esModule",{value:!0});uc.DependencyType=void 0;var WU;(function(t){t[t.Main=0]="Main",t[t.Import=1]="Import",t[t.Include=2]="Include"})(WU=uc.DependencyType||(uc.DependencyType={}))});var pc=T(yh=>{"use strict";Object.defineProperty(yh,"__esModule",{value:!0});yh.BuildError=void 0;var Gw=class extends Error{constructor(e,n){super(e),this.target=n.target,this.range=n.range}};yh.BuildError=Gw});var _h=T(bh=>{"use strict";Object.defineProperty(bh,"__esModule",{value:!0});bh.fetchNamespaces=void 0;var Yw=fe();function GE(t){if(t.type===Yw.ASTType.MemberExpression){let e=t;return e.identifier.type===Yw.ASTType.Identifier?e.identifier.name:null}else if(t.type===Yw.ASTType.Identifier)return t.name;return null}function KU(t){let e=new Set(t.namespaces.map(GE).filter(n=>n!==null));return t.scopes.reduce((n,r)=>(r.namespaces.map(GE).filter(s=>s!==null).forEach(s=>e.add(s)),n),e),Array.from(e)}bh.fetchNamespaces=KU});var dc=T(vh=>{"use strict";Object.defineProperty(vh,"__esModule",{value:!0});vh.merge=void 0;function HU(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))}vh.merge=HU});var va=T(_a=>{"use strict";var zU=_a&&_a.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_a,"__esModule",{value:!0});_a.Dependency=void 0;var YE=zU(mh()),JE=Zt(),hc=cc(),fc=Cs(),GU=pc(),YU=_h(),QE=dc(),Jw=class t{static generateDependencyMappingKey(e,n){return`${n}:${e}`}constructor(e){let n=this;n.target=e.target,n.id=(0,YE.default)(e.target),n.chunk=e.chunk,n.resourceManager=e.resourceManager,n.dependencies=new Map,n.injections=new Map,n.type=e.type||fc.DependencyType.Main,n.context=e.context;let r=n.context.createModuleNamespace(n.id);n.context.getOrCreateData(hc.ContextDataProperty.ResourceDependencyMap,()=>new Map).set(r,n),n.context.getOrCreateData(hc.ContextDataProperty.DependencyCallStack,()=>[])}getId(){return this.id}getNamespace(){let e=this;return e.context.modules.get(e.id)}resolve(e,n){let r=this,i=r.context,{modules:s}=i,o=i.get(hc.ContextDataProperty.ResourceDependencyMap),l=r.resourceManager,c=l.getRelativePathMapping(r.target,e),a=(0,YE.default)(c),u=s.get(a);if(o.has(u))return o.get(u);try{let p=this.resourceManager.getResource(c).chunk;return new t({target:c,resourceManager:l,chunk:p,type:n,context:i})}catch(p){throw new GU.BuildError(p.message,{target:c,range:p.range})}}findInjections(){let e=this,{injects:n}=e.chunk,r=new Map;for(let i of n){let s=e.resourceManager.getRelativePathMapping(e.target,i.path),o=e.resourceManager.getInjection(s);r.set(i.path,o)}return e.injections=r,r}findDependencies(){let e=this,{imports:n,includes:r}=e.chunk,i=e.getNamespace(),s=e.context.get(hc.ContextDataProperty.DependencyCallStack),o=new Map;s.push(i);let l=[...n,...r];for(let c of l){let a=c instanceof JE.ASTFeatureIncludeExpression?fc.DependencyType.Include:fc.DependencyType.Import,u=e.resolve(c.path,a),p=u.getNamespace();if(s.includes(p))throw new Error(`Circular dependency from ${e.target} to ${u.target} detected.`);u.findDependencies(),o.set(t.generateDependencyMappingKey(c.path,a),u)}return this.findInjections(),e.dependencies=o,s.pop(),{dependencies:o}}findDependenciesWithMetadata(){let e=this,{imports:n,includes:r}=e.chunk,i=e.getNamespace(),s=e.context.get(hc.ContextDataProperty.DependencyCallStack),o=[...(0,YU.fetchNamespaces)(e.chunk)],l=[...e.chunk.literals],c=new Map;s.push(i);let a=[...n,...r];for(let u of a){let p=u instanceof JE.ASTFeatureIncludeExpression?fc.DependencyType.Include:fc.DependencyType.Import,d=e.resolve(u.path,p),h=d.getNamespace();if(s.includes(h))throw new Error(`Circular dependency from ${e.target} to ${d.target} detected.`);let g=d.findDependenciesWithMetadata();(0,QE.merge)(o,g.namespaces),(0,QE.merge)(l,g.literals),c.set(t.generateDependencyMappingKey(u.path,p),d)}return this.findInjections(),e.dependencies=c,s.pop(),{dependencies:c,namespaces:o,literals:l}}};_a.Dependency=Jw});var XE=T(wh=>{"use strict";Object.defineProperty(wh,"__esModule",{value:!0});wh.getStringHashCode=void 0;wh.getStringHashCode=function(){let t=new Map,e=n=>{let r,i;for(r=0,i=0;r<n.length;r++)i=Math.imul(31,i)+n.charCodeAt(r)|0;return i};return n=>{if(n.length===0)return 0;let r=t.get(n);if(r!==void 0)return r;let i=e(n);return t.set(n,i),i}}()});var Qw=T(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});Th.createExpressionHash=void 0;var Sh=fe(),ZE=XE(),xh=(t,e)=>t.$$hash=e,JU=t=>{var e;return(e=t.$$hash)!==null&&e!==void 0?e:null};function wa(t){let e=JU(t);if(e!==null)return e;let n=(0,ZE.getStringHashCode)(t.type);switch(t.type){case Sh.ASTType.ParenthesisExpression:return wa(t.expression);case Sh.ASTType.MemberExpression:{let r=t;return n^=wa(r.base),n^=wa(r.identifier),xh(t,n)}case Sh.ASTType.IndexExpression:{let r=t;return n^=wa(r.base),n^=wa(r.index),xh(t,n)}case Sh.ASTType.Identifier:{let r=t;return n^=(0,ZE.getStringHashCode)(r.name),xh(t,n)}}return xh(t,n)}function QU(t){return wa(t)}Th.createExpressionHash=QU});var Zw=T(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});Os.BeautifyBodyIterator=Os.FILLER_TYPE=void 0;var Ds=fe();Os.FILLER_TYPE="FILLER";var Xw=class{constructor(e,n){this._base=e,this._items=n.sort((r,i)=>r.range[0]-i.range[0]),this._index=0,this._freeSpaceIndex=0,this._freeSpace=0,this._lastEndLine=0,this._checkedIndexes=new Set,this._previous=null}getBlockOpenerEndLine(e){switch(e.type){case Ds.ASTType.IfClause:return e.condition.end.line;case Ds.ASTType.WhileStatement:return e.condition.end.line;case Ds.ASTType.ForGenericStatement:return e.iterator.end.line;case Ds.ASTType.Chunk:return e.start.line-1}return e.start.line}getBlockCloseEndLine(e){switch(e.type){case Ds.ASTType.Chunk:return e.end.line+1}return e.end.line}getPreviousEndLine(e){if(e==null)return 0;if(e.type===Ds.ASTType.IfShortcutStatement){let n=e;return n.clauses[n.clauses.length-1].body[0].end.line}return e.end.line}getFreeSpaceItem(){let e={line:this._lastEndLine+this._freeSpaceIndex+1,character:0};return this._freeSpaceIndex++,this._freeSpace===this._freeSpaceIndex&&(this._lastEndLine=0,this._freeSpaceIndex=0,this._freeSpace=0),new Ds.ASTBase(Os.FILLER_TYPE,{start:e,end:e,range:[0,0],scope:this._base.scope})}next(){if(this._freeSpace>this._freeSpaceIndex)return{value:this.getFreeSpaceItem(),done:!1};if(this._index>=this._items.length){if(!this._checkedIndexes.has(this._items.length)){let n=this._previous?this.getPreviousEndLine(this._previous):this.getBlockOpenerEndLine(this._base),r=Math.max(this.getBlockCloseEndLine(this._base)-n-1,0);if(r>0)return this._checkedIndexes.add(this._items.length),this._lastEndLine=n,this._freeSpace=r,{value:this.getFreeSpaceItem(),done:!1}}return{value:null,done:!0}}let e=this._items[this._index];if(!this._checkedIndexes.has(this._index)){let n=this._previous?this.getPreviousEndLine(this._previous):this.getBlockOpenerEndLine(this._base),r=Math.max(e.start.line-n-1,0);if(r>0)return this._checkedIndexes.add(this._index),this._lastEndLine=n,this._freeSpace=r,{value:this.getFreeSpaceItem(),done:!1}}return this._index++,this._previous=e,{value:e,done:!1}}};Os.BeautifyBodyIterator=Xw});var tS=T(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});Ms.BeautifyContext=Ms.IndentationType=void 0;var As=fe(),eR=Zw(),tR;(function(t){t[t.Tab=0]="Tab",t[t.Whitespace=1]="Whitespace"})(tR=Ms.IndentationType||(Ms.IndentationType={}));var eS=class{get indent(){return this._indent}get isMultilineAllowed(){return this._isMultilineAllowed}constructor(e,n){this.factory=e,this.options=n,this._indent=0,this._stack=[],this._contexts=new Map,this._isMultilineAllowed=!0,this.getIndent=n.indentation===tR.Tab?(r=0)=>" ".repeat(this._indent+r):(r=0)=>" ".repeat(n.indentationSpaces).repeat(this._indent+r)}buildChunkContext(e){let n=new Map,r=Object.keys(e.lines),i=new Set;for(let s=0;s<r.length;s++){let o=Number(r[s]),c=e.lines[o].filter(a=>a.type===As.ASTType.Comment);for(let a=0;a<c.length;a++){let u=c[a];if(!i.has(u))if(i.add(u),u.isMultiline){let p=u.value.split(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "greybel-languageserver-browser",
3
- "version": "2.2.4",
3
+ "version": "2.2.5",
4
4
  "description": "Language server for GreyScript",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -73,7 +73,7 @@
73
73
  "greyscript-core": "~2.6.0",
74
74
  "greyscript-meta": "~4.4.7",
75
75
  "greyscript-transpiler": "~1.9.2",
76
- "greybel-type-analyzer": "~1.1.2",
76
+ "greybel-type-analyzer": "~1.1.3",
77
77
  "greybel-languageserver-core": "~2.2.0"
78
78
  }
79
79
  }