@tslite/core 0.5.0 → 0.7.0
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.
- package/dist/builders.cjs +1 -1
- package/dist/builders.d.cts +1 -1
- package/dist/builders.d.ts +1 -1
- package/dist/builders.js +1 -1
- package/dist/chunk-I6B6IL4S.js +1 -0
- package/dist/{index-CFG9pxqO.d.cts → index-BIjY0ZP4.d.cts} +29 -38
- package/dist/{index-CFG9pxqO.d.ts → index-BIjY0ZP4.d.ts} +29 -38
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +6 -11
- package/dist/index.d.ts +6 -11
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-ZEL34C7U.js +0 -1
package/dist/builders.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var o=class extends Error{constructor(t,n,i){super(n),this.name="TSLiteError",this.code=t,this.details=i;}};var a=["Identifier","MemberExpression","CallExpression","ArrowFunctionExpression","FunctionExpression","BinaryExpression","LogicalExpression","UnaryExpression","UpdateExpression","ConditionalExpression","AssignmentExpression","
|
|
1
|
+
'use strict';var o=class extends Error{constructor(t,n,i){super(n),this.name="TSLiteError",this.code=t,this.details=i;}};var a=["Identifier","MemberExpression","CallExpression","ArrowFunctionExpression","FunctionExpression","BinaryExpression","LogicalExpression","UnaryExpression","UpdateExpression","ConditionalExpression","AssignmentExpression","ArrayExpression","ObjectExpression","AwaitExpression","TemplateLiteral","TaggedTemplateExpression","SequenceExpression","ChainExpression","JSXElement","JSXFragment","Program"];function p(e){return a.includes(e)}function l(e){return new o("invalid-expression-entry",`Invalid #expr entry type: "${e}". The #expr marker is used to embed executable logic inside JSON. Only expression types that can be used as VALUES are allowed: ${a.join(", ")}. "${e}" is not a valid entry point because it cannot be used as a value in JSON.`,{type:e,validTypes:a})}var J=e=>{let{type:t,...n}=e;if(!t||typeof t!="string")throw new o("missing-node-type","expr() requires a node with a valid type property");if(!p(t))throw l(t);return {"#expr":t,...n}},X=e=>{if(!e||typeof e!="object"||!("#expr"in e))return e;let{"#expr":t,...n}=e;return {type:t,...n}},C=e=>({type:"Identifier",name:e}),A=()=>({type:"Placeholder"});function m(e){return e instanceof RegExp?{type:"Literal",value:e,regex:{pattern:e.source,flags:e.flags}}:typeof e=="bigint"?{type:"Literal",value:e,bigint:String(e)}:typeof e=="number"&&Number.isFinite(e)&&(e<0||Object.is(e,-0))?x("-",m(-e)):{type:"Literal",value:e}}var h=e=>({type:"ArrayExpression",elements:e}),I=e=>({type:"ObjectExpression",properties:e}),D=(e,t,n=false,i=false)=>({type:"Property",shorthand:n,computed:i,key:e,value:t,kind:"init"}),P=e=>({type:"SpreadElement",argument:e}),T=(e,t,n=false)=>({type:"CallExpression",callee:e,arguments:t,optional:n}),w=(e,t,n=false,i=false)=>({type:"MemberExpression",object:e,property:t,computed:n,optional:i}),F=e=>({type:"ChainExpression",expression:e}),O=(e,t,n)=>({type:"BinaryExpression",left:t,right:n,operator:e}),L=(e,t,n)=>({type:"LogicalExpression",operator:e,left:t,right:n}),x=(e,t)=>({type:"UnaryExpression",operator:e,argument:t,prefix:true}),N=(e,t,n=false)=>({type:"UpdateExpression",operator:e,argument:t,prefix:n}),B=(e,t,n)=>({type:"AssignmentExpression",operator:e,left:t,right:n}),k=(e,t,n)=>({type:"ConditionalExpression",test:e,consequent:t,alternate:n}),R=e=>({type:"AwaitExpression",argument:e}),j=(e,t=false)=>({type:"TemplateElement",value:e,tail:t}),M=(e,t)=>({type:"TemplateLiteral",quasis:e,expressions:t}),V=(e,t,n=false,i=false)=>({type:"ArrowFunctionExpression",expression:t.type!="BlockStatement",generator:i,async:n,params:e,body:t}),U=(e=null,t,n,i=false,s=false)=>({type:"FunctionExpression",id:e,params:t,body:n,async:i,generator:s}),v=(e,t,n,i=false,s=false)=>({type:"FunctionDeclaration",id:e,params:t,body:n,generator:i,async:s}),q=e=>({type:"BlockStatement",body:e}),W=e=>({type:"ExpressionStatement",expression:e}),_=e=>({type:"ReturnStatement",argument:e}),Y=(e,t,n=null)=>({type:"IfStatement",test:e,consequent:t,alternate:n}),H=(e,t)=>({type:"SwitchStatement",cases:t,discriminant:e}),$=(e,t)=>({type:"SwitchCase",consequent:t,test:e}),z=e=>({type:"ThrowStatement",argument:e}),K=(e,t,n=null)=>({type:"TryStatement",block:e,handler:t,finalizer:n}),Z=(e,t)=>({type:"CatchClause",param:e,body:t}),G=(e=null)=>({type:"BreakStatement",label:e}),Q=(e=null)=>({type:"ContinueStatement",label:e}),ee=()=>({type:"EmptyStatement"}),te=(e,t,n,i)=>({type:"ForStatement",init:e,test:t,update:n,body:i}),ne=(e,t,n)=>({type:"ForInStatement",body:n,left:e,right:t}),re=(e,t,n,i=false)=>({type:"ForOfStatement",body:n,left:e,right:t,await:i}),ie=(e,t)=>({type:"WhileStatement",test:e,body:t}),oe=(e,t)=>({type:"DoWhileStatement",body:e,test:t}),se=(e,t)=>({type:"VariableDeclaration",declarations:t,kind:e}),ae=(e,t=null)=>({type:"VariableDeclarator",id:e,init:t}),pe=e=>({type:"ObjectPattern",properties:e}),le=e=>({type:"ArrayPattern",elements:e}),me=(e,t=e,n=false,i=false)=>({type:"Property",key:e,kind:"init",value:t,shorthand:n,computed:i}),xe=e=>({type:"RestElement",argument:e}),ce=(e,t)=>({type:"AssignmentPattern",left:e,right:t}),Ee=(e,t="script")=>({type:"Program",body:e,sourceType:t}),c=e=>({type:"JsonExpression",body:e}),Se=(e,t)=>({type:"ImportDeclaration",specifiers:e,source:t}),ye=(e,t)=>({type:"ImportSpecifier",imported:e,local:t}),de=e=>({type:"ImportDefaultSpecifier",local:e}),ue=e=>({type:"ImportNamespaceSpecifier",local:e}),ge=(e=null,t=[],n=null)=>({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n}),fe=e=>({type:"ExportDefaultDeclaration",declaration:e}),be=(e,t=e)=>({type:"ExportSpecifier",local:e,exported:t}),Je=e=>({type:"JSXIdentifier",name:e}),Xe=(e,t)=>({type:"JSXMemberExpression",object:e,property:t}),Ce=(e,t)=>({type:"JSXNamespacedName",namespace:e,name:t}),Ae=()=>({type:"JSXEmptyExpression"}),he=e=>({type:"JSXExpressionContainer",expression:e}),Ie=e=>({type:"JSXSpreadAttribute",argument:e}),De=(e,t=null)=>({type:"JSXAttribute",name:e,value:t}),Pe=(e,t=[],n=false)=>({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n}),Te=e=>({type:"JSXClosingElement",name:e}),E=()=>({type:"JSXOpeningFragment"}),S=()=>({type:"JSXClosingFragment"}),we=(e,t=e)=>({type:"JSXText",value:e,raw:t}),Fe=(e,t=[],n=null)=>({type:"JSXElement",openingElement:e,children:t,closingElement:n}),Oe=(e=[],t=E(),n=S())=>({type:"JSXFragment",openingFragment:t,children:e,closingFragment:n}),Le=c;exports.arrayExpression=h;exports.arrayPattern=le;exports.arrowFunctionExpression=V;exports.assignmentExpression=B;exports.assignmentPattern=ce;exports.assignmentProperty=me;exports.awaitExpression=R;exports.binaryExpression=O;exports.blockStatement=q;exports.breakStatement=G;exports.callExpression=T;exports.catchClause=Z;exports.chainExpression=F;exports.conditionalExpression=k;exports.continueStatement=Q;exports.doWhileStatement=oe;exports.emptyStatement=ee;exports.exportDefaultDeclaration=fe;exports.exportNamedDeclaration=ge;exports.exportSpecifier=be;exports.expr=J;exports.expressionStatement=W;exports.forInStatement=ne;exports.forOfStatement=re;exports.forStatement=te;exports.fromExprMarker=X;exports.functionDeclaration=v;exports.functionExpression=U;exports.identifier=C;exports.ifStatement=Y;exports.importDeclaration=Se;exports.importDefaultSpecifier=de;exports.importNamespaceSpecifier=ue;exports.importSpecifier=ye;exports.json=Le;exports.jsonExpression=c;exports.jsxAttribute=De;exports.jsxClosingElement=Te;exports.jsxClosingFragment=S;exports.jsxElement=Fe;exports.jsxEmptyExpression=Ae;exports.jsxExpressionContainer=he;exports.jsxFragment=Oe;exports.jsxIdentifier=Je;exports.jsxMemberExpression=Xe;exports.jsxNamespacedName=Ce;exports.jsxOpeningElement=Pe;exports.jsxOpeningFragment=E;exports.jsxSpreadAttribute=Ie;exports.jsxText=we;exports.literal=m;exports.logicalExpression=L;exports.memberExpression=w;exports.objectExpression=I;exports.objectPattern=pe;exports.placeholder=A;exports.program=Ee;exports.property=D;exports.restElement=xe;exports.returnStatement=_;exports.spreadElement=P;exports.switchCase=$;exports.switchStatement=H;exports.templateElement=j;exports.templateLiteral=M;exports.throwStatement=z;exports.tryStatement=K;exports.unaryExpression=x;exports.updateExpression=N;exports.variableDeclaration=se;exports.variableDeclarator=ae;exports.whileStatement=ie;
|
package/dist/builders.d.cts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { co as arrayExpression, cp as arrayPattern, cq as arrowFunctionExpression, cr as assignmentExpression, cs as assignmentPattern, ct as assignmentProperty, cu as awaitExpression, cv as binaryExpression, cw as blockStatement, cx as breakStatement, cy as callExpression, cz as catchClause, cA as chainExpression, cB as conditionalExpression, cC as continueStatement, cD as doWhileStatement, cE as emptyStatement, cF as exportDefaultDeclaration, cG as exportNamedDeclaration, cH as exportSpecifier, cj as expr, cI as expressionStatement, cJ as forInStatement, cK as forOfStatement, cL as forStatement, ck as fromExprMarker, cM as functionDeclaration, cN as functionExpression, cO as identifier, cP as ifStatement, cQ as importDeclaration, cR as importDefaultSpecifier, cS as importNamespaceSpecifier, cT as importSpecifier, cl as json, cm as jsonExpression, cU as jsxAttribute, cV as jsxClosingElement, cW as jsxClosingFragment, cX as jsxElement, cY as jsxEmptyExpression, cZ as jsxExpressionContainer, c_ as jsxFragment, c$ as jsxIdentifier, d0 as jsxMemberExpression, d1 as jsxNamespacedName, d2 as jsxOpeningElement, d3 as jsxOpeningFragment, d4 as jsxSpreadAttribute, d5 as jsxText, d6 as literal, d7 as logicalExpression, d8 as memberExpression, d9 as objectExpression, da as objectPattern, db as placeholder, dc as program, dd as property, de as restElement, df as returnStatement, dg as spreadElement, dh as switchCase, di as switchStatement, dj as templateElement, dk as templateLiteral, dl as throwStatement, dm as tryStatement, dn as unaryExpression, dp as updateExpression, dq as variableDeclaration, dr as variableDeclarator, ds as whileStatement } from './index-BIjY0ZP4.cjs';
|
package/dist/builders.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { co as arrayExpression, cp as arrayPattern, cq as arrowFunctionExpression, cr as assignmentExpression, cs as assignmentPattern, ct as assignmentProperty, cu as awaitExpression, cv as binaryExpression, cw as blockStatement, cx as breakStatement, cy as callExpression, cz as catchClause, cA as chainExpression, cB as conditionalExpression, cC as continueStatement, cD as doWhileStatement, cE as emptyStatement, cF as exportDefaultDeclaration, cG as exportNamedDeclaration, cH as exportSpecifier, cj as expr, cI as expressionStatement, cJ as forInStatement, cK as forOfStatement, cL as forStatement, ck as fromExprMarker, cM as functionDeclaration, cN as functionExpression, cO as identifier, cP as ifStatement, cQ as importDeclaration, cR as importDefaultSpecifier, cS as importNamespaceSpecifier, cT as importSpecifier, cl as json, cm as jsonExpression, cU as jsxAttribute, cV as jsxClosingElement, cW as jsxClosingFragment, cX as jsxElement, cY as jsxEmptyExpression, cZ as jsxExpressionContainer, c_ as jsxFragment, c$ as jsxIdentifier, d0 as jsxMemberExpression, d1 as jsxNamespacedName, d2 as jsxOpeningElement, d3 as jsxOpeningFragment, d4 as jsxSpreadAttribute, d5 as jsxText, d6 as literal, d7 as logicalExpression, d8 as memberExpression, d9 as objectExpression, da as objectPattern, db as placeholder, dc as program, dd as property, de as restElement, df as returnStatement, dg as spreadElement, dh as switchCase, di as switchStatement, dj as templateElement, dk as templateLiteral, dl as throwStatement, dm as tryStatement, dn as unaryExpression, dp as updateExpression, dq as variableDeclaration, dr as variableDeclarator, ds as whileStatement } from './index-BIjY0ZP4.js';
|
package/dist/builders.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{o as arrayExpression,$ as arrayPattern,E as arrowFunctionExpression,z as assignmentExpression,ca as assignmentPattern,aa as assignmentProperty,B as awaitExpression,v as binaryExpression,H as blockStatement,Q as breakStatement,s as callExpression,P as catchClause,u as chainExpression,A as conditionalExpression,R as continueStatement,X as doWhileStatement,S as emptyStatement,ka as exportDefaultDeclaration,ja as exportNamedDeclaration,la as exportSpecifier,j as expr,I as expressionStatement,U as forInStatement,V as forOfStatement,T as forStatement,k as fromExprMarker,G as functionDeclaration,F as functionExpression,l as identifier,K as ifStatement,fa as importDeclaration,ha as importDefaultSpecifier,ia as importNamespaceSpecifier,ga as importSpecifier,Aa as json,ea as jsonExpression,sa as jsxAttribute,ua as jsxClosingElement,wa as jsxClosingFragment,ya as jsxElement,pa as jsxEmptyExpression,qa as jsxExpressionContainer,za as jsxFragment,ma as jsxIdentifier,na as jsxMemberExpression,oa as jsxNamespacedName,ta as jsxOpeningElement,va as jsxOpeningFragment,ra as jsxSpreadAttribute,xa as jsxText,n as literal,w as logicalExpression,t as memberExpression,p as objectExpression,_ as objectPattern,m as placeholder,da as program,q as property,ba as restElement,J as returnStatement,r as spreadElement,M as switchCase,L as switchStatement,C as templateElement,D as templateLiteral,N as throwStatement,O as tryStatement,x as unaryExpression,y as updateExpression,Y as variableDeclaration,Z as variableDeclarator,W as whileStatement}from'./chunk-I6B6IL4S.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var y=Object.defineProperty;var d=(e,t)=>{for(var n in t)y(e,n,{get:t[n],enumerable:true});};var we={};d(we,{arrayExpression:()=>J,arrayPattern:()=>oe,arrowFunctionExpression:()=>k,assignmentExpression:()=>F,assignmentPattern:()=>pe,assignmentProperty:()=>se,awaitExpression:()=>L,binaryExpression:()=>P,blockStatement:()=>M,breakStatement:()=>$,callExpression:()=>h,catchClause:()=>H,chainExpression:()=>D,conditionalExpression:()=>O,continueStatement:()=>z,doWhileStatement:()=>te,emptyStatement:()=>K,exportDefaultDeclaration:()=>ye,exportNamedDeclaration:()=>Se,exportSpecifier:()=>de,expr:()=>u,expressionStatement:()=>V,forInStatement:()=>G,forOfStatement:()=>Q,forStatement:()=>Z,fromExprMarker:()=>g,functionDeclaration:()=>j,functionExpression:()=>R,identifier:()=>f,ifStatement:()=>v,importDeclaration:()=>me,importDefaultSpecifier:()=>ce,importNamespaceSpecifier:()=>Ee,importSpecifier:()=>xe,json:()=>Te,jsonExpression:()=>c,jsxAttribute:()=>Ce,jsxClosingElement:()=>he,jsxClosingFragment:()=>S,jsxElement:()=>De,jsxEmptyExpression:()=>be,jsxExpressionContainer:()=>Je,jsxFragment:()=>Pe,jsxIdentifier:()=>ue,jsxMemberExpression:()=>ge,jsxNamespacedName:()=>fe,jsxOpeningElement:()=>Ae,jsxOpeningFragment:()=>E,jsxSpreadAttribute:()=>Xe,jsxText:()=>Ie,literal:()=>m,logicalExpression:()=>T,memberExpression:()=>I,objectExpression:()=>X,objectPattern:()=>ie,placeholder:()=>b,program:()=>le,property:()=>C,restElement:()=>ae,returnStatement:()=>U,spreadElement:()=>A,switchCase:()=>W,switchStatement:()=>q,templateElement:()=>N,templateLiteral:()=>B,throwStatement:()=>_,tryStatement:()=>Y,unaryExpression:()=>x,updateExpression:()=>w,variableDeclaration:()=>ne,variableDeclarator:()=>re,whileStatement:()=>ee});var o=class extends Error{constructor(t,n,i){super(n),this.name="TSLiteError",this.code=t,this.details=i;}};var Ne=/^[a-zA-Z_][a-zA-Z_0-9]*$/,a=["Identifier","MemberExpression","CallExpression","ArrowFunctionExpression","FunctionExpression","BinaryExpression","LogicalExpression","UnaryExpression","UpdateExpression","ConditionalExpression","AssignmentExpression","ArrayExpression","ObjectExpression","AwaitExpression","TemplateLiteral","TaggedTemplateExpression","SequenceExpression","ChainExpression","JSXElement","JSXFragment","Program"];function p(e){return a.includes(e)}function l(e){return new o("invalid-expression-entry",`Invalid #expr entry type: "${e}". The #expr marker is used to embed executable logic inside JSON. Only expression types that can be used as VALUES are allowed: ${a.join(", ")}. "${e}" is not a valid entry point because it cannot be used as a value in JSON.`,{type:e,validTypes:a})}var Be={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportExpression:["source"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],JsonExpression:[],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],Placeholder:[],ModuleSpecifier:[],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],JSXElement:["openingElement","children","closingElement"],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningElement:["name","attributes"],JSXClosingElement:["name"],JSXOpeningFragment:[],JSXClosingFragment:[],JSXAttribute:["name","value"],JSXSpreadAttribute:["argument"],JSXExpressionContainer:["expression"],JSXEmptyExpression:[],JSXText:[],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],TSAsExpression:["expression"],TSTypeAliasDeclaration:["id"]},r={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,Coalesce:3,LogicalOR:4,LogicalAND:5,BitwiseOR:6,BitwiseXOR:7,BitwiseAND:8,Equality:9,Relational:10,BitwiseSHIFT:11,Additive:12,Multiplicative:13,Exponentiation:14,Await:15,Unary:15,Postfix:16,OptionalChaining:17,Call:18,New:19,TaggedTemplate:20,Member:21,Primary:22},ke={"??":r.Coalesce,"||":r.LogicalOR,"&&":r.LogicalAND,"|":r.BitwiseOR,"^":r.BitwiseXOR,"&":r.BitwiseAND,"==":r.Equality,"!=":r.Equality,"===":r.Equality,"!==":r.Equality,is:r.Equality,isnt:r.Equality,"<":r.Relational,">":r.Relational,"<=":r.Relational,">=":r.Relational,in:r.Relational,instanceof:r.Relational,"<<":r.BitwiseSHIFT,">>":r.BitwiseSHIFT,">>>":r.BitwiseSHIFT,"+":r.Additive,"-":r.Additive,"*":r.Multiplicative,"%":r.Multiplicative,"/":r.Multiplicative,"**":r.Exponentiation};var u=e=>{let{type:t,...n}=e;if(!t||typeof t!="string")throw new o("missing-node-type","expr() requires a node with a valid type property");if(!p(t))throw l(t);return {"#expr":t,...n}},g=e=>{if(!e||typeof e!="object"||!("#expr"in e))return e;let{"#expr":t,...n}=e;return {type:t,...n}},f=e=>({type:"Identifier",name:e}),b=()=>({type:"Placeholder"});function m(e){return e instanceof RegExp?{type:"Literal",value:e,regex:{pattern:e.source,flags:e.flags}}:typeof e=="bigint"?{type:"Literal",value:e,bigint:String(e)}:typeof e=="number"&&Number.isFinite(e)&&(e<0||Object.is(e,-0))?x("-",m(-e)):{type:"Literal",value:e}}var J=e=>({type:"ArrayExpression",elements:e}),X=e=>({type:"ObjectExpression",properties:e}),C=(e,t,n=false,i=false)=>({type:"Property",shorthand:n,computed:i,key:e,value:t,kind:"init"}),A=e=>({type:"SpreadElement",argument:e}),h=(e,t,n=false)=>({type:"CallExpression",callee:e,arguments:t,optional:n}),I=(e,t,n=false,i=false)=>({type:"MemberExpression",object:e,property:t,computed:n,optional:i}),D=e=>({type:"ChainExpression",expression:e}),P=(e,t,n)=>({type:"BinaryExpression",left:t,right:n,operator:e}),T=(e,t,n)=>({type:"LogicalExpression",operator:e,left:t,right:n}),x=(e,t)=>({type:"UnaryExpression",operator:e,argument:t,prefix:true}),w=(e,t,n=false)=>({type:"UpdateExpression",operator:e,argument:t,prefix:n}),F=(e,t,n)=>({type:"AssignmentExpression",operator:e,left:t,right:n}),O=(e,t,n)=>({type:"ConditionalExpression",test:e,consequent:t,alternate:n}),L=e=>({type:"AwaitExpression",argument:e}),N=(e,t=false)=>({type:"TemplateElement",value:e,tail:t}),B=(e,t)=>({type:"TemplateLiteral",quasis:e,expressions:t}),k=(e,t,n=false,i=false)=>({type:"ArrowFunctionExpression",expression:t.type!="BlockStatement",generator:i,async:n,params:e,body:t}),R=(e=null,t,n,i=false,s=false)=>({type:"FunctionExpression",id:e,params:t,body:n,async:i,generator:s}),j=(e,t,n,i=false,s=false)=>({type:"FunctionDeclaration",id:e,params:t,body:n,generator:i,async:s}),M=e=>({type:"BlockStatement",body:e}),V=e=>({type:"ExpressionStatement",expression:e}),U=e=>({type:"ReturnStatement",argument:e}),v=(e,t,n=null)=>({type:"IfStatement",test:e,consequent:t,alternate:n}),q=(e,t)=>({type:"SwitchStatement",cases:t,discriminant:e}),W=(e,t)=>({type:"SwitchCase",consequent:t,test:e}),_=e=>({type:"ThrowStatement",argument:e}),Y=(e,t,n=null)=>({type:"TryStatement",block:e,handler:t,finalizer:n}),H=(e,t)=>({type:"CatchClause",param:e,body:t}),$=(e=null)=>({type:"BreakStatement",label:e}),z=(e=null)=>({type:"ContinueStatement",label:e}),K=()=>({type:"EmptyStatement"}),Z=(e,t,n,i)=>({type:"ForStatement",init:e,test:t,update:n,body:i}),G=(e,t,n)=>({type:"ForInStatement",body:n,left:e,right:t}),Q=(e,t,n,i=false)=>({type:"ForOfStatement",body:n,left:e,right:t,await:i}),ee=(e,t)=>({type:"WhileStatement",test:e,body:t}),te=(e,t)=>({type:"DoWhileStatement",body:e,test:t}),ne=(e,t)=>({type:"VariableDeclaration",declarations:t,kind:e}),re=(e,t=null)=>({type:"VariableDeclarator",id:e,init:t}),ie=e=>({type:"ObjectPattern",properties:e}),oe=e=>({type:"ArrayPattern",elements:e}),se=(e,t=e,n=false,i=false)=>({type:"Property",key:e,kind:"init",value:t,shorthand:n,computed:i}),ae=e=>({type:"RestElement",argument:e}),pe=(e,t)=>({type:"AssignmentPattern",left:e,right:t}),le=(e,t="script")=>({type:"Program",body:e,sourceType:t}),c=e=>({type:"JsonExpression",body:e}),me=(e,t)=>({type:"ImportDeclaration",specifiers:e,source:t}),xe=(e,t)=>({type:"ImportSpecifier",imported:e,local:t}),ce=e=>({type:"ImportDefaultSpecifier",local:e}),Ee=e=>({type:"ImportNamespaceSpecifier",local:e}),Se=(e=null,t=[],n=null)=>({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n}),ye=e=>({type:"ExportDefaultDeclaration",declaration:e}),de=(e,t=e)=>({type:"ExportSpecifier",local:e,exported:t}),ue=e=>({type:"JSXIdentifier",name:e}),ge=(e,t)=>({type:"JSXMemberExpression",object:e,property:t}),fe=(e,t)=>({type:"JSXNamespacedName",namespace:e,name:t}),be=()=>({type:"JSXEmptyExpression"}),Je=e=>({type:"JSXExpressionContainer",expression:e}),Xe=e=>({type:"JSXSpreadAttribute",argument:e}),Ce=(e,t=null)=>({type:"JSXAttribute",name:e,value:t}),Ae=(e,t=[],n=false)=>({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n}),he=e=>({type:"JSXClosingElement",name:e}),E=()=>({type:"JSXOpeningFragment"}),S=()=>({type:"JSXClosingFragment"}),Ie=(e,t=e)=>({type:"JSXText",value:e,raw:t}),De=(e,t=[],n=null)=>({type:"JSXElement",openingElement:e,children:t,closingElement:n}),Pe=(e=[],t=E(),n=S())=>({type:"JSXFragment",openingFragment:t,children:e,closingFragment:n}),Te=c;export{oe as $,O as A,Te as Aa,L as B,we as Ba,N as C,B as D,k as E,R as F,j as G,M as H,V as I,U as J,v as K,q as L,W as M,_ as N,Y as O,H as P,$ as Q,z as R,K as S,Z as T,G as U,Q as V,ee as W,te as X,ne as Y,re as Z,ie as _,d as a,se as aa,o as b,ae as ba,Ne as c,pe as ca,a as d,le as da,p as e,c as ea,l as f,me as fa,Be as g,xe as ga,r as h,ce as ha,ke as i,Ee as ia,u as j,Se as ja,g as k,ye as ka,f as l,de as la,b as m,ue as ma,m as n,ge as na,J as o,fe as oa,X as p,be as pa,C as q,Je as qa,A as r,Xe as ra,h as s,Ce as sa,I as t,Ae as ta,D as u,he as ua,P as v,E as va,T as w,S as wa,x,Ie as xa,w as y,De as ya,F as z,Pe as za};
|
|
@@ -18,8 +18,8 @@ interface ExpressionMap {
|
|
|
18
18
|
LogicalExpression: LogicalExpression;
|
|
19
19
|
MemberExpression: MemberExpression;
|
|
20
20
|
MetaProperty: MetaProperty;
|
|
21
|
-
NewExpression: NewExpression;
|
|
22
21
|
ObjectExpression: ObjectExpression;
|
|
22
|
+
Placeholder: Placeholder;
|
|
23
23
|
SequenceExpression: SequenceExpression;
|
|
24
24
|
TaggedTemplateExpression: TaggedTemplateExpression;
|
|
25
25
|
TemplateLiteral: TemplateLiteral;
|
|
@@ -34,11 +34,9 @@ interface NodeMap {
|
|
|
34
34
|
Function: Function;
|
|
35
35
|
Identifier: Identifier;
|
|
36
36
|
Literal: Literal;
|
|
37
|
-
MethodDefinition: MethodDefinition;
|
|
38
37
|
Pattern: Pattern;
|
|
39
38
|
Program: Program;
|
|
40
39
|
Property: Property;
|
|
41
|
-
PropertyDefinition: PropertyDefinition;
|
|
42
40
|
SpreadElement: SpreadElement;
|
|
43
41
|
Statement: Statement;
|
|
44
42
|
SwitchCase: SwitchCase;
|
|
@@ -130,7 +128,7 @@ interface JSXFragment extends BaseExpression {
|
|
|
130
128
|
}
|
|
131
129
|
type Expression = ExpressionMap[keyof ExpressionMap];
|
|
132
130
|
type Statement = ExpressionStatement | BlockStatement | EmptyStatement | DebuggerStatement | ReturnStatement | LabeledStatement | BreakStatement | ContinueStatement | IfStatement | SwitchStatement | ThrowStatement | TryStatement | WhileStatement | DoWhileStatement | ForStatement | ForInStatement | ForOfStatement | Declaration;
|
|
133
|
-
type CallExpression = SimpleCallExpression
|
|
131
|
+
type CallExpression = SimpleCallExpression;
|
|
134
132
|
type ChainElement = SimpleCallExpression | MemberExpression;
|
|
135
133
|
type Declaration = FunctionDeclaration | VariableDeclaration;
|
|
136
134
|
type Function = ArrowFunctionExpression | FunctionDeclaration | FunctionExpression;
|
|
@@ -193,7 +191,6 @@ interface AssignmentPattern extends BasePattern {
|
|
|
193
191
|
interface AssignmentProperty extends Property {
|
|
194
192
|
value: Pattern;
|
|
195
193
|
kind: "init";
|
|
196
|
-
method: boolean;
|
|
197
194
|
}
|
|
198
195
|
interface AwaitExpression extends BaseExpression {
|
|
199
196
|
type: "AwaitExpression";
|
|
@@ -383,17 +380,6 @@ interface ExportSpecifier extends BaseModuleSpecifier {
|
|
|
383
380
|
type: "ExportSpecifier";
|
|
384
381
|
exported: Identifier;
|
|
385
382
|
}
|
|
386
|
-
interface MethodDefinition extends BaseNode {
|
|
387
|
-
type: "MethodDefinition";
|
|
388
|
-
key: Expression;
|
|
389
|
-
value: FunctionExpression;
|
|
390
|
-
kind: "constructor" | "method" | "get" | "set";
|
|
391
|
-
computed?: boolean;
|
|
392
|
-
static: boolean;
|
|
393
|
-
}
|
|
394
|
-
interface NewExpression extends BaseCallExpression {
|
|
395
|
-
type: "NewExpression";
|
|
396
|
-
}
|
|
397
383
|
interface ObjectExpression extends BaseExpression {
|
|
398
384
|
type: "ObjectExpression";
|
|
399
385
|
properties: Array<Property | SpreadElement>;
|
|
@@ -416,18 +402,10 @@ interface Property extends BaseNode {
|
|
|
416
402
|
type: "Property";
|
|
417
403
|
key: Expression;
|
|
418
404
|
value: Expression | Pattern | AssignmentProperty;
|
|
419
|
-
kind: "init"
|
|
420
|
-
method?: boolean;
|
|
405
|
+
kind: "init";
|
|
421
406
|
shorthand?: boolean;
|
|
422
407
|
computed?: boolean;
|
|
423
408
|
}
|
|
424
|
-
interface PropertyDefinition extends BaseNode {
|
|
425
|
-
type: "PropertyDefinition";
|
|
426
|
-
key: Expression;
|
|
427
|
-
value?: Expression | null | undefined;
|
|
428
|
-
computed?: boolean;
|
|
429
|
-
static: boolean;
|
|
430
|
-
}
|
|
431
409
|
interface RegExpLiteral extends BaseNode, BaseExpression {
|
|
432
410
|
type: "Literal";
|
|
433
411
|
value?: RegExp | null | undefined;
|
|
@@ -495,6 +473,20 @@ interface TemplateLiteral extends BaseExpression {
|
|
|
495
473
|
quasis: TemplateElement[];
|
|
496
474
|
expressions: Expression[];
|
|
497
475
|
}
|
|
476
|
+
/**
|
|
477
|
+
* Um **buraco de autoria**: um slot vazio numa árvore em construção (editor
|
|
478
|
+
* nocode). Não é um nó de runtime — é o marcador "a preencher". Categoria
|
|
479
|
+
* authoring/incompleto (como os nós apagáveis `TSAs*` não são runtime puro):
|
|
480
|
+
* - o **checker** o tipa como `any` (assignável a tudo → não cascateia erro;
|
|
481
|
+
* é o `errorType` do tsc). O tipo ESPERADO no slot vem do `contextualType`;
|
|
482
|
+
* - **interpret/printer** o **recusam** (`incomplete-tree`: não se executa nem
|
|
483
|
+
* imprime uma árvore incompleta — preencha os buracos antes);
|
|
484
|
+
* - **codec** faz **round-trip lossless** (serializar/reabrir rascunho com buraco
|
|
485
|
+
* é válido; quem recusa é a execução, não a serialização). Ver `@tslite/nocode`.
|
|
486
|
+
*/
|
|
487
|
+
interface Placeholder extends BaseExpression {
|
|
488
|
+
type: "Placeholder";
|
|
489
|
+
}
|
|
498
490
|
interface ThisExpression extends BaseExpression {
|
|
499
491
|
type: "ThisExpression";
|
|
500
492
|
}
|
|
@@ -712,14 +704,11 @@ type SimpleJsonExpression = Partial<JsonExpression>;
|
|
|
712
704
|
type SimpleLabeledStatement = Partial<LabeledStatement>;
|
|
713
705
|
type SimpleLogicalExpression = Partial<LogicalExpression>;
|
|
714
706
|
type SimpleMemberExpression = Partial<MemberExpression>;
|
|
715
|
-
type SimpleMethodDefinition = Partial<MethodDefinition>;
|
|
716
|
-
type SimpleNewExpression = Partial<NewExpression>;
|
|
717
707
|
type SimpleObjectExpression = Partial<ObjectExpression>;
|
|
718
708
|
type SimpleObjectPattern = Partial<ObjectPattern>;
|
|
719
709
|
type SimplePosition = Partial<Position>;
|
|
720
710
|
type SimpleProgram = Partial<Program>;
|
|
721
711
|
type SimpleProperty = Partial<Property>;
|
|
722
|
-
type SimplePropertyDefinition = Partial<PropertyDefinition>;
|
|
723
712
|
type SimpleRegExpLiteral = Partial<RegExpLiteral>;
|
|
724
713
|
type SimpleRestElement = Partial<RestElement>;
|
|
725
714
|
type SimpleReturnStatement = Partial<ReturnStatement>;
|
|
@@ -819,19 +808,17 @@ type types_LogicalOperator = LogicalOperator;
|
|
|
819
808
|
type types_MaybeNamedFunctionDeclaration = MaybeNamedFunctionDeclaration;
|
|
820
809
|
type types_MemberExpression = MemberExpression;
|
|
821
810
|
type types_MetaProperty = MetaProperty;
|
|
822
|
-
type types_MethodDefinition = MethodDefinition;
|
|
823
811
|
type types_ModuleDeclaration = ModuleDeclaration;
|
|
824
812
|
type types_ModuleSpecifier = ModuleSpecifier;
|
|
825
|
-
type types_NewExpression = NewExpression;
|
|
826
813
|
type types_Node = Node;
|
|
827
814
|
type types_NodeMap = NodeMap;
|
|
828
815
|
type types_ObjectExpression = ObjectExpression;
|
|
829
816
|
type types_ObjectPattern = ObjectPattern;
|
|
830
817
|
type types_Pattern = Pattern;
|
|
818
|
+
type types_Placeholder = Placeholder;
|
|
831
819
|
type types_Position = Position;
|
|
832
820
|
type types_Program = Program;
|
|
833
821
|
type types_Property = Property;
|
|
834
|
-
type types_PropertyDefinition = PropertyDefinition;
|
|
835
822
|
type types_RegExpLiteral = RegExpLiteral;
|
|
836
823
|
type types_RestElement = RestElement;
|
|
837
824
|
type types_ReturnStatement = ReturnStatement;
|
|
@@ -877,15 +864,12 @@ type types_SimpleLabeledStatement = SimpleLabeledStatement;
|
|
|
877
864
|
type types_SimpleLiteral = SimpleLiteral;
|
|
878
865
|
type types_SimpleLogicalExpression = SimpleLogicalExpression;
|
|
879
866
|
type types_SimpleMemberExpression = SimpleMemberExpression;
|
|
880
|
-
type types_SimpleMethodDefinition = SimpleMethodDefinition;
|
|
881
|
-
type types_SimpleNewExpression = SimpleNewExpression;
|
|
882
867
|
type types_SimpleNode = SimpleNode;
|
|
883
868
|
type types_SimpleObjectExpression = SimpleObjectExpression;
|
|
884
869
|
type types_SimpleObjectPattern = SimpleObjectPattern;
|
|
885
870
|
type types_SimplePosition = SimplePosition;
|
|
886
871
|
type types_SimpleProgram = SimpleProgram;
|
|
887
872
|
type types_SimpleProperty = SimpleProperty;
|
|
888
|
-
type types_SimplePropertyDefinition = SimplePropertyDefinition;
|
|
889
873
|
type types_SimpleRegExpLiteral = SimpleRegExpLiteral;
|
|
890
874
|
type types_SimpleRestElement = SimpleRestElement;
|
|
891
875
|
type types_SimpleReturnStatement = SimpleReturnStatement;
|
|
@@ -948,7 +932,7 @@ type types_VariableDeclaration = VariableDeclaration;
|
|
|
948
932
|
type types_VariableDeclarator = VariableDeclarator;
|
|
949
933
|
type types_WhileStatement = WhileStatement;
|
|
950
934
|
declare namespace types {
|
|
951
|
-
export type { types_ArrayExpression as ArrayExpression, types_ArrayPattern as ArrayPattern, types_ArrowFunctionExpression as ArrowFunctionExpression, types_AssignmentExpression as AssignmentExpression, types_AssignmentOperator as AssignmentOperator, types_AssignmentPattern as AssignmentPattern, types_AssignmentProperty as AssignmentProperty, types_AwaitExpression as AwaitExpression, types_BaseCallExpression as BaseCallExpression, types_BaseDeclaration as BaseDeclaration, types_BaseExpression as BaseExpression, types_BaseForXStatement as BaseForXStatement, types_BaseFunction as BaseFunction, types_BaseModuleDeclaration as BaseModuleDeclaration, types_BaseModuleSpecifier as BaseModuleSpecifier, types_BaseNode as BaseNode, types_BaseNodeWithoutComments as BaseNodeWithoutComments, types_BasePattern as BasePattern, types_BaseStatement as BaseStatement, types_BigIntLiteral as BigIntLiteral, types_BinaryExpression as BinaryExpression, types_BinaryOperator as BinaryOperator, types_BlockStatement as BlockStatement, types_BreakStatement as BreakStatement, types_CallExpression as CallExpression, types_CatchClause as CatchClause, types_ChainElement as ChainElement, types_ChainExpression as ChainExpression, types_Comment as Comment, types_ConditionalExpression as ConditionalExpression, types_ContinueStatement as ContinueStatement, types_DebuggerStatement as DebuggerStatement, types_Declaration as Declaration, types_Directive as Directive, types_DoWhileStatement as DoWhileStatement, types_EmptyStatement as EmptyStatement, types_ExportDefaultDeclaration as ExportDefaultDeclaration, types_ExportNamedDeclaration as ExportNamedDeclaration, types_ExportSpecifier as ExportSpecifier, types_Expression as Expression, types_ExpressionStatement as ExpressionStatement, types_ForInStatement as ForInStatement, types_ForOfStatement as ForOfStatement, types_ForStatement as ForStatement, types_Function as Function, types_FunctionDeclaration as FunctionDeclaration, types_FunctionExpression as FunctionExpression, types_Identifier as Identifier, types_IfStatement as IfStatement, types_ImportDeclaration as ImportDeclaration, types_ImportDefaultSpecifier as ImportDefaultSpecifier, types_ImportExpression as ImportExpression, types_ImportNamespaceSpecifier as ImportNamespaceSpecifier, types_ImportSpecifier as ImportSpecifier, types_JSXAttribute as JSXAttribute, types_JSXChild as JSXChild, types_JSXClosingElement as JSXClosingElement, types_JSXClosingFragment as JSXClosingFragment, types_JSXElement as JSXElement, types_JSXEmptyExpression as JSXEmptyExpression, types_JSXExpressionContainer as JSXExpressionContainer, types_JSXFragment as JSXFragment, types_JSXIdentifier as JSXIdentifier, types_JSXMemberExpression as JSXMemberExpression, types_JSXNamespacedName as JSXNamespacedName, types_JSXOpeningElement as JSXOpeningElement, types_JSXOpeningFragment as JSXOpeningFragment, types_JSXSpreadAttribute as JSXSpreadAttribute, types_JSXTagName as JSXTagName, types_JSXText as JSXText, types_JsonExpression as JsonExpression, types_LabeledStatement as LabeledStatement, types_Literal as Literal, types_LogicalExpression as LogicalExpression, types_LogicalOperator as LogicalOperator, types_MaybeNamedFunctionDeclaration as MaybeNamedFunctionDeclaration, types_MemberExpression as MemberExpression, types_MetaProperty as MetaProperty,
|
|
935
|
+
export type { types_ArrayExpression as ArrayExpression, types_ArrayPattern as ArrayPattern, types_ArrowFunctionExpression as ArrowFunctionExpression, types_AssignmentExpression as AssignmentExpression, types_AssignmentOperator as AssignmentOperator, types_AssignmentPattern as AssignmentPattern, types_AssignmentProperty as AssignmentProperty, types_AwaitExpression as AwaitExpression, types_BaseCallExpression as BaseCallExpression, types_BaseDeclaration as BaseDeclaration, types_BaseExpression as BaseExpression, types_BaseForXStatement as BaseForXStatement, types_BaseFunction as BaseFunction, types_BaseModuleDeclaration as BaseModuleDeclaration, types_BaseModuleSpecifier as BaseModuleSpecifier, types_BaseNode as BaseNode, types_BaseNodeWithoutComments as BaseNodeWithoutComments, types_BasePattern as BasePattern, types_BaseStatement as BaseStatement, types_BigIntLiteral as BigIntLiteral, types_BinaryExpression as BinaryExpression, types_BinaryOperator as BinaryOperator, types_BlockStatement as BlockStatement, types_BreakStatement as BreakStatement, types_CallExpression as CallExpression, types_CatchClause as CatchClause, types_ChainElement as ChainElement, types_ChainExpression as ChainExpression, types_Comment as Comment, types_ConditionalExpression as ConditionalExpression, types_ContinueStatement as ContinueStatement, types_DebuggerStatement as DebuggerStatement, types_Declaration as Declaration, types_Directive as Directive, types_DoWhileStatement as DoWhileStatement, types_EmptyStatement as EmptyStatement, types_ExportDefaultDeclaration as ExportDefaultDeclaration, types_ExportNamedDeclaration as ExportNamedDeclaration, types_ExportSpecifier as ExportSpecifier, types_Expression as Expression, types_ExpressionStatement as ExpressionStatement, types_ForInStatement as ForInStatement, types_ForOfStatement as ForOfStatement, types_ForStatement as ForStatement, types_Function as Function, types_FunctionDeclaration as FunctionDeclaration, types_FunctionExpression as FunctionExpression, types_Identifier as Identifier, types_IfStatement as IfStatement, types_ImportDeclaration as ImportDeclaration, types_ImportDefaultSpecifier as ImportDefaultSpecifier, types_ImportExpression as ImportExpression, types_ImportNamespaceSpecifier as ImportNamespaceSpecifier, types_ImportSpecifier as ImportSpecifier, types_JSXAttribute as JSXAttribute, types_JSXChild as JSXChild, types_JSXClosingElement as JSXClosingElement, types_JSXClosingFragment as JSXClosingFragment, types_JSXElement as JSXElement, types_JSXEmptyExpression as JSXEmptyExpression, types_JSXExpressionContainer as JSXExpressionContainer, types_JSXFragment as JSXFragment, types_JSXIdentifier as JSXIdentifier, types_JSXMemberExpression as JSXMemberExpression, types_JSXNamespacedName as JSXNamespacedName, types_JSXOpeningElement as JSXOpeningElement, types_JSXOpeningFragment as JSXOpeningFragment, types_JSXSpreadAttribute as JSXSpreadAttribute, types_JSXTagName as JSXTagName, types_JSXText as JSXText, types_JsonExpression as JsonExpression, types_LabeledStatement as LabeledStatement, types_Literal as Literal, types_LogicalExpression as LogicalExpression, types_LogicalOperator as LogicalOperator, types_MaybeNamedFunctionDeclaration as MaybeNamedFunctionDeclaration, types_MemberExpression as MemberExpression, types_MetaProperty as MetaProperty, types_ModuleDeclaration as ModuleDeclaration, types_ModuleSpecifier as ModuleSpecifier, types_Node as Node, types_NodeMap as NodeMap, types_ObjectExpression as ObjectExpression, types_ObjectPattern as ObjectPattern, types_Pattern as Pattern, types_Placeholder as Placeholder, types_Position as Position, types_Program as Program, types_Property as Property, types_RegExpLiteral as RegExpLiteral, types_RestElement as RestElement, types_ReturnStatement as ReturnStatement, types_SequenceExpression as SequenceExpression, types_SimpleArrayExpression as SimpleArrayExpression, types_SimpleArrayPattern as SimpleArrayPattern, types_SimpleArrowFunctionExpression as SimpleArrowFunctionExpression, types_SimpleAssignmentExpression as SimpleAssignmentExpression, types_SimpleAssignmentPattern as SimpleAssignmentPattern, types_SimpleAssignmentProperty as SimpleAssignmentProperty, types_SimpleAwaitExpression as SimpleAwaitExpression, types_SimpleBaseCallExpression as SimpleBaseCallExpression, types_SimpleBaseDeclaration as SimpleBaseDeclaration, types_SimpleBaseExpression as SimpleBaseExpression, types_SimpleBaseForXStatement as SimpleBaseForXStatement, types_SimpleBaseFunction as SimpleBaseFunction, types_SimpleBaseNode as SimpleBaseNode, types_SimpleBaseNodeWithoutComments as SimpleBaseNodeWithoutComments, types_SimpleBasePattern as SimpleBasePattern, types_SimpleBaseStatement as SimpleBaseStatement, types_SimpleBigIntLiteral as SimpleBigIntLiteral, types_SimpleBinaryExpression as SimpleBinaryExpression, types_SimpleBlockStatement as SimpleBlockStatement, types_SimpleBreakStatement as SimpleBreakStatement, types_SimpleCallExpression as SimpleCallExpression, types_SimpleCatchClause as SimpleCatchClause, types_SimpleChainExpression as SimpleChainExpression, types_SimpleComment as SimpleComment, types_SimpleConditionalExpression as SimpleConditionalExpression, types_SimpleContinueStatement as SimpleContinueStatement, types_SimpleDoWhileStatement as SimpleDoWhileStatement, types_SimpleEmptyStatement as SimpleEmptyStatement, types_SimpleExpressionStatement as SimpleExpressionStatement, types_SimpleForInStatement as SimpleForInStatement, types_SimpleForOfStatement as SimpleForOfStatement, types_SimpleForStatement as SimpleForStatement, types_SimpleFunctionDeclaration as SimpleFunctionDeclaration, types_SimpleFunctionExpression as SimpleFunctionExpression, types_SimpleIdentifier as SimpleIdentifier, types_SimpleIfStatement as SimpleIfStatement, types_SimpleJsonExpression as SimpleJsonExpression, types_SimpleLabeledStatement as SimpleLabeledStatement, types_SimpleLiteral as SimpleLiteral, types_SimpleLogicalExpression as SimpleLogicalExpression, types_SimpleMemberExpression as SimpleMemberExpression, types_SimpleNode as SimpleNode, types_SimpleObjectExpression as SimpleObjectExpression, types_SimpleObjectPattern as SimpleObjectPattern, types_SimplePosition as SimplePosition, types_SimpleProgram as SimpleProgram, types_SimpleProperty as SimpleProperty, types_SimpleRegExpLiteral as SimpleRegExpLiteral, types_SimpleRestElement as SimpleRestElement, types_SimpleReturnStatement as SimpleReturnStatement, types_SimpleSequenceExpression as SimpleSequenceExpression, types_SimpleSimpleCallExpression as SimpleSimpleCallExpression, types_SimpleSimpleLiteral as SimpleSimpleLiteral, types_SimpleSourceLocation as SimpleSourceLocation, types_SimpleSpreadElement as SimpleSpreadElement, types_SimpleSwitchCase as SimpleSwitchCase, types_SimpleSwitchStatement as SimpleSwitchStatement, types_SimpleTemplateElement as SimpleTemplateElement, types_SimpleTemplateLiteral as SimpleTemplateLiteral, types_SimpleThisExpression as SimpleThisExpression, types_SimpleThrowStatement as SimpleThrowStatement, types_SimpleTryStatement as SimpleTryStatement, types_SimpleUnaryExpression as SimpleUnaryExpression, types_SimpleUpdateExpression as SimpleUpdateExpression, types_SimpleVariableDeclaration as SimpleVariableDeclaration, types_SimpleVariableDeclarator as SimpleVariableDeclarator, types_SimpleWhileStatement as SimpleWhileStatement, types_SourceLocation as SourceLocation, types_SpreadElement as SpreadElement, types_Statement as Statement, types_SwitchCase as SwitchCase, types_SwitchStatement as SwitchStatement, types_TSArrayType as TSArrayType, types_TSCallSignatureDeclaration as TSCallSignatureDeclaration, types_TSConditionalType as TSConditionalType, types_TSFunctionType as TSFunctionType, types_TSIndexSignature as TSIndexSignature, types_TSIndexedAccessType as TSIndexedAccessType, types_TSInferType as TSInferType, types_TSIntersectionType as TSIntersectionType, types_TSKeywordType as TSKeywordType, types_TSLite as TSLite, types_TSLiteMarker as TSLiteMarker, types_TSLiteralType as TSLiteralType, types_TSMappedType as TSMappedType, types_TSPropertySignature as TSPropertySignature, types_TSTupleType as TSTupleType, types_TSType as TSType, types_TSTypeLiteral as TSTypeLiteral, types_TSTypeMember as TSTypeMember, types_TSTypeOperator as TSTypeOperator, types_TSTypeParameter as TSTypeParameter, types_TSTypeQuery as TSTypeQuery, types_TSTypeReference as TSTypeReference, types_TSUnionType as TSUnionType, types_TaggedTemplateExpression as TaggedTemplateExpression, types_TemplateElement as TemplateElement, types_TemplateLiteral as TemplateLiteral, types_ThisExpression as ThisExpression, types_ThrowStatement as ThrowStatement, types_TryStatement as TryStatement, types_UnaryExpression as UnaryExpression, types_UnaryOperator as UnaryOperator, types_UpdateExpression as UpdateExpression, types_UpdateOperator as UpdateOperator, types_VariableDeclaration as VariableDeclaration, types_VariableDeclarator as VariableDeclarator, types_WhileStatement as WhileStatement };
|
|
952
936
|
}
|
|
953
937
|
|
|
954
938
|
/**
|
|
@@ -982,13 +966,20 @@ declare const expr: (node: Node) => TSLiteMarker;
|
|
|
982
966
|
*/
|
|
983
967
|
declare const fromExprMarker: (obj: unknown) => unknown;
|
|
984
968
|
declare const identifier: (name: string) => Identifier;
|
|
985
|
-
|
|
969
|
+
/**
|
|
970
|
+
* Um **buraco de autoria** — um slot vazio numa árvore em construção (editor
|
|
971
|
+
* nocode). O checker o tipa como `any` (não cascateia); runtime recusa (árvore
|
|
972
|
+
* incompleta). Ver {@link Placeholder}.
|
|
973
|
+
*/
|
|
974
|
+
declare const placeholder: () => Placeholder;
|
|
975
|
+
declare function literal(value: string | boolean | null | RegExp | bigint | undefined): Literal;
|
|
976
|
+
declare function literal(value: number): Literal | UnaryExpression;
|
|
977
|
+
declare function literal(value: string | boolean | number | null | RegExp | bigint | undefined): Literal | UnaryExpression;
|
|
986
978
|
declare const arrayExpression: (elements: Array<Expression | SpreadElement | null>) => ArrayExpression;
|
|
987
979
|
declare const objectExpression: (properties: Array<Property | SpreadElement>) => ObjectExpression;
|
|
988
980
|
declare const property: (key: Expression, value: Expression | Pattern | AssignmentProperty, shorthand?: boolean, computed?: boolean) => Property;
|
|
989
981
|
declare const spreadElement: (argument: Expression) => SpreadElement;
|
|
990
982
|
declare const callExpression: (callee: Expression, args: Array<Expression | SpreadElement>, optional?: boolean) => SimpleCallExpression;
|
|
991
|
-
declare const newExpression: (callee: Expression, args: Array<Expression | SpreadElement>) => NewExpression;
|
|
992
983
|
declare const memberExpression: (object: Expression, property: Expression, computed?: boolean, optional?: boolean) => MemberExpression;
|
|
993
984
|
declare const chainExpression: (expression: ChainElement) => ChainExpression;
|
|
994
985
|
declare const binaryExpression: (operator: BinaryOperator, left: Expression, right: Expression) => BinaryExpression;
|
|
@@ -1055,4 +1046,4 @@ declare const jsxElement: (openingElement: JSXOpeningElement, children?: JSXChil
|
|
|
1055
1046
|
declare const jsxFragment: (children?: JSXChild[], openingFragment?: JSXOpeningFragment, closingFragment?: JSXClosingFragment) => JSXFragment;
|
|
1056
1047
|
declare const json: (body: TSLite) => JsonExpression;
|
|
1057
1048
|
|
|
1058
|
-
export { type
|
|
1049
|
+
export { type ModuleDeclaration as $, type ArrayExpression as A, type BaseNode as B, type CatchClause as C, type DoWhileStatement as D, type EmptyStatement as E, type ForInStatement as F, type TemplateLiteral as G, type ThrowStatement as H, type Identifier as I, type JsonExpression as J, type TryStatement as K, type Literal as L, type MemberExpression as M, type Node as N, type ObjectExpression as O, type Program as P, type UpdateExpression as Q, type ReturnStatement as R, type SimpleCallExpression as S, type TemplateElement as T, type UnaryExpression as U, type VariableDeclaration as V, type VariableDeclarator as W, type WhileStatement as X, type SpreadElement as Y, type RestElement as Z, type Directive as _, type ArrayPattern as a, type SimpleBaseFunction as a$, type JSXElement as a0, type JSXFragment as a1, type CallExpression as a2, type AssignmentOperator as a3, type AssignmentPattern as a4, type BaseCallExpression as a5, type BaseDeclaration as a6, type BaseExpression as a7, type BaseForXStatement as a8, type BaseFunction as a9, type JSXOpeningElement as aA, type JSXOpeningFragment as aB, type JSXSpreadAttribute as aC, type JSXTagName as aD, type JSXText as aE, type LabeledStatement as aF, type LogicalOperator as aG, type MaybeNamedFunctionDeclaration as aH, type MetaProperty as aI, type ModuleSpecifier as aJ, type NodeMap as aK, type Pattern as aL, type Placeholder as aM, type Position as aN, type RegExpLiteral as aO, type SequenceExpression as aP, type SimpleArrayExpression as aQ, type SimpleArrayPattern as aR, type SimpleArrowFunctionExpression as aS, type SimpleAssignmentExpression as aT, type SimpleAssignmentPattern as aU, type SimpleAssignmentProperty as aV, type SimpleAwaitExpression as aW, type SimpleBaseCallExpression as aX, type SimpleBaseDeclaration as aY, type SimpleBaseExpression as aZ, type SimpleBaseForXStatement as a_, type BaseModuleDeclaration as aa, type BaseModuleSpecifier as ab, type BaseNodeWithoutComments as ac, type BasePattern as ad, type BaseStatement as ae, type BigIntLiteral as af, type BinaryOperator as ag, type ChainElement as ah, type Comment as ai, type DebuggerStatement as aj, type Declaration as ak, type ExportDefaultDeclaration as al, type ExportNamedDeclaration as am, type ExportSpecifier as an, type Expression as ao, type Function as ap, type ImportExpression as aq, type JSXAttribute as ar, type JSXChild as as, type JSXClosingElement as at, type JSXClosingFragment as au, type JSXEmptyExpression as av, type JSXExpressionContainer as aw, type JSXIdentifier as ax, type JSXMemberExpression as ay, type JSXNamespacedName as az, type ArrowFunctionExpression as b, type TSIntersectionType as b$, type SimpleBaseNode as b0, type SimpleBaseNodeWithoutComments as b1, type SimpleBasePattern as b2, type SimpleBaseStatement as b3, type SimpleBigIntLiteral as b4, type SimpleBinaryExpression as b5, type SimpleBlockStatement as b6, type SimpleBreakStatement as b7, type SimpleCatchClause as b8, type SimpleChainExpression as b9, type SimpleReturnStatement as bA, type SimpleSequenceExpression as bB, type SimpleSimpleCallExpression as bC, type SimpleSimpleLiteral as bD, type SimpleSourceLocation as bE, type SimpleSpreadElement as bF, type SimpleSwitchCase as bG, type SimpleSwitchStatement as bH, type SimpleTemplateElement as bI, type SimpleTemplateLiteral as bJ, type SimpleThisExpression as bK, type SimpleThrowStatement as bL, type SimpleTryStatement as bM, type SimpleUnaryExpression as bN, type SimpleUpdateExpression as bO, type SimpleVariableDeclaration as bP, type SimpleVariableDeclarator as bQ, type SimpleWhileStatement as bR, type SourceLocation as bS, type Statement as bT, type TSArrayType as bU, type TSCallSignatureDeclaration as bV, type TSConditionalType as bW, type TSFunctionType as bX, type TSIndexSignature as bY, type TSIndexedAccessType as bZ, type TSInferType as b_, type SimpleComment as ba, type SimpleConditionalExpression as bb, type SimpleContinueStatement as bc, type SimpleDoWhileStatement as bd, type SimpleEmptyStatement as be, type SimpleExpressionStatement as bf, type SimpleForInStatement as bg, type SimpleForOfStatement as bh, type SimpleForStatement as bi, type SimpleFunctionDeclaration as bj, type SimpleFunctionExpression as bk, type SimpleIdentifier as bl, type SimpleIfStatement as bm, type SimpleJsonExpression as bn, type SimpleLabeledStatement as bo, type SimpleLiteral as bp, type SimpleLogicalExpression as bq, type SimpleMemberExpression as br, type SimpleNode as bs, type SimpleObjectExpression as bt, type SimpleObjectPattern as bu, type SimplePosition as bv, type SimpleProgram as bw, type SimpleProperty as bx, type SimpleRegExpLiteral as by, type SimpleRestElement as bz, type AssignmentExpression as c, jsxIdentifier as c$, type TSKeywordType as c0, type TSLite as c1, type TSLiteMarker as c2, type TSLiteralType as c3, type TSMappedType as c4, type TSPropertySignature as c5, type TSTupleType as c6, type TSType as c7, type TSTypeLiteral as c8, type TSTypeMember as c9, chainExpression as cA, conditionalExpression as cB, continueStatement as cC, doWhileStatement as cD, emptyStatement as cE, exportDefaultDeclaration as cF, exportNamedDeclaration as cG, exportSpecifier as cH, expressionStatement as cI, forInStatement as cJ, forOfStatement as cK, forStatement as cL, functionDeclaration as cM, functionExpression as cN, identifier as cO, ifStatement as cP, importDeclaration as cQ, importDefaultSpecifier as cR, importNamespaceSpecifier as cS, importSpecifier as cT, jsxAttribute as cU, jsxClosingElement as cV, jsxClosingFragment as cW, jsxElement as cX, jsxEmptyExpression as cY, jsxExpressionContainer as cZ, jsxFragment as c_, type TSTypeOperator as ca, type TSTypeParameter as cb, type TSTypeQuery as cc, type TSTypeReference as cd, type TSUnionType as ce, type TaggedTemplateExpression as cf, type ThisExpression as cg, type UnaryOperator as ch, type UpdateOperator as ci, expr as cj, fromExprMarker as ck, json as cl, jsonExpression as cm, types as cn, arrayExpression as co, arrayPattern as cp, arrowFunctionExpression as cq, assignmentExpression as cr, assignmentPattern as cs, assignmentProperty as ct, awaitExpression as cu, binaryExpression as cv, blockStatement as cw, breakStatement as cx, callExpression as cy, catchClause as cz, type AssignmentProperty as d, jsxMemberExpression as d0, jsxNamespacedName as d1, jsxOpeningElement as d2, jsxOpeningFragment as d3, jsxSpreadAttribute as d4, jsxText as d5, literal as d6, logicalExpression as d7, memberExpression as d8, objectExpression as d9, objectPattern as da, placeholder as db, program as dc, property as dd, restElement as de, returnStatement as df, spreadElement as dg, switchCase as dh, switchStatement as di, templateElement as dj, templateLiteral as dk, throwStatement as dl, tryStatement as dm, unaryExpression as dn, updateExpression as dp, variableDeclaration as dq, variableDeclarator as dr, whileStatement as ds, type AwaitExpression as e, type BinaryExpression as f, type BlockStatement as g, type BreakStatement as h, type ChainExpression as i, type ConditionalExpression as j, type ContinueStatement as k, type ExpressionStatement as l, type ForOfStatement as m, type ForStatement as n, type FunctionDeclaration as o, type FunctionExpression as p, type IfStatement as q, type ImportDeclaration as r, type ImportDefaultSpecifier as s, type ImportNamespaceSpecifier as t, type ImportSpecifier as u, type LogicalExpression as v, type ObjectPattern as w, type Property as x, type SwitchCase as y, type SwitchStatement as z };
|
|
@@ -18,8 +18,8 @@ interface ExpressionMap {
|
|
|
18
18
|
LogicalExpression: LogicalExpression;
|
|
19
19
|
MemberExpression: MemberExpression;
|
|
20
20
|
MetaProperty: MetaProperty;
|
|
21
|
-
NewExpression: NewExpression;
|
|
22
21
|
ObjectExpression: ObjectExpression;
|
|
22
|
+
Placeholder: Placeholder;
|
|
23
23
|
SequenceExpression: SequenceExpression;
|
|
24
24
|
TaggedTemplateExpression: TaggedTemplateExpression;
|
|
25
25
|
TemplateLiteral: TemplateLiteral;
|
|
@@ -34,11 +34,9 @@ interface NodeMap {
|
|
|
34
34
|
Function: Function;
|
|
35
35
|
Identifier: Identifier;
|
|
36
36
|
Literal: Literal;
|
|
37
|
-
MethodDefinition: MethodDefinition;
|
|
38
37
|
Pattern: Pattern;
|
|
39
38
|
Program: Program;
|
|
40
39
|
Property: Property;
|
|
41
|
-
PropertyDefinition: PropertyDefinition;
|
|
42
40
|
SpreadElement: SpreadElement;
|
|
43
41
|
Statement: Statement;
|
|
44
42
|
SwitchCase: SwitchCase;
|
|
@@ -130,7 +128,7 @@ interface JSXFragment extends BaseExpression {
|
|
|
130
128
|
}
|
|
131
129
|
type Expression = ExpressionMap[keyof ExpressionMap];
|
|
132
130
|
type Statement = ExpressionStatement | BlockStatement | EmptyStatement | DebuggerStatement | ReturnStatement | LabeledStatement | BreakStatement | ContinueStatement | IfStatement | SwitchStatement | ThrowStatement | TryStatement | WhileStatement | DoWhileStatement | ForStatement | ForInStatement | ForOfStatement | Declaration;
|
|
133
|
-
type CallExpression = SimpleCallExpression
|
|
131
|
+
type CallExpression = SimpleCallExpression;
|
|
134
132
|
type ChainElement = SimpleCallExpression | MemberExpression;
|
|
135
133
|
type Declaration = FunctionDeclaration | VariableDeclaration;
|
|
136
134
|
type Function = ArrowFunctionExpression | FunctionDeclaration | FunctionExpression;
|
|
@@ -193,7 +191,6 @@ interface AssignmentPattern extends BasePattern {
|
|
|
193
191
|
interface AssignmentProperty extends Property {
|
|
194
192
|
value: Pattern;
|
|
195
193
|
kind: "init";
|
|
196
|
-
method: boolean;
|
|
197
194
|
}
|
|
198
195
|
interface AwaitExpression extends BaseExpression {
|
|
199
196
|
type: "AwaitExpression";
|
|
@@ -383,17 +380,6 @@ interface ExportSpecifier extends BaseModuleSpecifier {
|
|
|
383
380
|
type: "ExportSpecifier";
|
|
384
381
|
exported: Identifier;
|
|
385
382
|
}
|
|
386
|
-
interface MethodDefinition extends BaseNode {
|
|
387
|
-
type: "MethodDefinition";
|
|
388
|
-
key: Expression;
|
|
389
|
-
value: FunctionExpression;
|
|
390
|
-
kind: "constructor" | "method" | "get" | "set";
|
|
391
|
-
computed?: boolean;
|
|
392
|
-
static: boolean;
|
|
393
|
-
}
|
|
394
|
-
interface NewExpression extends BaseCallExpression {
|
|
395
|
-
type: "NewExpression";
|
|
396
|
-
}
|
|
397
383
|
interface ObjectExpression extends BaseExpression {
|
|
398
384
|
type: "ObjectExpression";
|
|
399
385
|
properties: Array<Property | SpreadElement>;
|
|
@@ -416,18 +402,10 @@ interface Property extends BaseNode {
|
|
|
416
402
|
type: "Property";
|
|
417
403
|
key: Expression;
|
|
418
404
|
value: Expression | Pattern | AssignmentProperty;
|
|
419
|
-
kind: "init"
|
|
420
|
-
method?: boolean;
|
|
405
|
+
kind: "init";
|
|
421
406
|
shorthand?: boolean;
|
|
422
407
|
computed?: boolean;
|
|
423
408
|
}
|
|
424
|
-
interface PropertyDefinition extends BaseNode {
|
|
425
|
-
type: "PropertyDefinition";
|
|
426
|
-
key: Expression;
|
|
427
|
-
value?: Expression | null | undefined;
|
|
428
|
-
computed?: boolean;
|
|
429
|
-
static: boolean;
|
|
430
|
-
}
|
|
431
409
|
interface RegExpLiteral extends BaseNode, BaseExpression {
|
|
432
410
|
type: "Literal";
|
|
433
411
|
value?: RegExp | null | undefined;
|
|
@@ -495,6 +473,20 @@ interface TemplateLiteral extends BaseExpression {
|
|
|
495
473
|
quasis: TemplateElement[];
|
|
496
474
|
expressions: Expression[];
|
|
497
475
|
}
|
|
476
|
+
/**
|
|
477
|
+
* Um **buraco de autoria**: um slot vazio numa árvore em construção (editor
|
|
478
|
+
* nocode). Não é um nó de runtime — é o marcador "a preencher". Categoria
|
|
479
|
+
* authoring/incompleto (como os nós apagáveis `TSAs*` não são runtime puro):
|
|
480
|
+
* - o **checker** o tipa como `any` (assignável a tudo → não cascateia erro;
|
|
481
|
+
* é o `errorType` do tsc). O tipo ESPERADO no slot vem do `contextualType`;
|
|
482
|
+
* - **interpret/printer** o **recusam** (`incomplete-tree`: não se executa nem
|
|
483
|
+
* imprime uma árvore incompleta — preencha os buracos antes);
|
|
484
|
+
* - **codec** faz **round-trip lossless** (serializar/reabrir rascunho com buraco
|
|
485
|
+
* é válido; quem recusa é a execução, não a serialização). Ver `@tslite/nocode`.
|
|
486
|
+
*/
|
|
487
|
+
interface Placeholder extends BaseExpression {
|
|
488
|
+
type: "Placeholder";
|
|
489
|
+
}
|
|
498
490
|
interface ThisExpression extends BaseExpression {
|
|
499
491
|
type: "ThisExpression";
|
|
500
492
|
}
|
|
@@ -712,14 +704,11 @@ type SimpleJsonExpression = Partial<JsonExpression>;
|
|
|
712
704
|
type SimpleLabeledStatement = Partial<LabeledStatement>;
|
|
713
705
|
type SimpleLogicalExpression = Partial<LogicalExpression>;
|
|
714
706
|
type SimpleMemberExpression = Partial<MemberExpression>;
|
|
715
|
-
type SimpleMethodDefinition = Partial<MethodDefinition>;
|
|
716
|
-
type SimpleNewExpression = Partial<NewExpression>;
|
|
717
707
|
type SimpleObjectExpression = Partial<ObjectExpression>;
|
|
718
708
|
type SimpleObjectPattern = Partial<ObjectPattern>;
|
|
719
709
|
type SimplePosition = Partial<Position>;
|
|
720
710
|
type SimpleProgram = Partial<Program>;
|
|
721
711
|
type SimpleProperty = Partial<Property>;
|
|
722
|
-
type SimplePropertyDefinition = Partial<PropertyDefinition>;
|
|
723
712
|
type SimpleRegExpLiteral = Partial<RegExpLiteral>;
|
|
724
713
|
type SimpleRestElement = Partial<RestElement>;
|
|
725
714
|
type SimpleReturnStatement = Partial<ReturnStatement>;
|
|
@@ -819,19 +808,17 @@ type types_LogicalOperator = LogicalOperator;
|
|
|
819
808
|
type types_MaybeNamedFunctionDeclaration = MaybeNamedFunctionDeclaration;
|
|
820
809
|
type types_MemberExpression = MemberExpression;
|
|
821
810
|
type types_MetaProperty = MetaProperty;
|
|
822
|
-
type types_MethodDefinition = MethodDefinition;
|
|
823
811
|
type types_ModuleDeclaration = ModuleDeclaration;
|
|
824
812
|
type types_ModuleSpecifier = ModuleSpecifier;
|
|
825
|
-
type types_NewExpression = NewExpression;
|
|
826
813
|
type types_Node = Node;
|
|
827
814
|
type types_NodeMap = NodeMap;
|
|
828
815
|
type types_ObjectExpression = ObjectExpression;
|
|
829
816
|
type types_ObjectPattern = ObjectPattern;
|
|
830
817
|
type types_Pattern = Pattern;
|
|
818
|
+
type types_Placeholder = Placeholder;
|
|
831
819
|
type types_Position = Position;
|
|
832
820
|
type types_Program = Program;
|
|
833
821
|
type types_Property = Property;
|
|
834
|
-
type types_PropertyDefinition = PropertyDefinition;
|
|
835
822
|
type types_RegExpLiteral = RegExpLiteral;
|
|
836
823
|
type types_RestElement = RestElement;
|
|
837
824
|
type types_ReturnStatement = ReturnStatement;
|
|
@@ -877,15 +864,12 @@ type types_SimpleLabeledStatement = SimpleLabeledStatement;
|
|
|
877
864
|
type types_SimpleLiteral = SimpleLiteral;
|
|
878
865
|
type types_SimpleLogicalExpression = SimpleLogicalExpression;
|
|
879
866
|
type types_SimpleMemberExpression = SimpleMemberExpression;
|
|
880
|
-
type types_SimpleMethodDefinition = SimpleMethodDefinition;
|
|
881
|
-
type types_SimpleNewExpression = SimpleNewExpression;
|
|
882
867
|
type types_SimpleNode = SimpleNode;
|
|
883
868
|
type types_SimpleObjectExpression = SimpleObjectExpression;
|
|
884
869
|
type types_SimpleObjectPattern = SimpleObjectPattern;
|
|
885
870
|
type types_SimplePosition = SimplePosition;
|
|
886
871
|
type types_SimpleProgram = SimpleProgram;
|
|
887
872
|
type types_SimpleProperty = SimpleProperty;
|
|
888
|
-
type types_SimplePropertyDefinition = SimplePropertyDefinition;
|
|
889
873
|
type types_SimpleRegExpLiteral = SimpleRegExpLiteral;
|
|
890
874
|
type types_SimpleRestElement = SimpleRestElement;
|
|
891
875
|
type types_SimpleReturnStatement = SimpleReturnStatement;
|
|
@@ -948,7 +932,7 @@ type types_VariableDeclaration = VariableDeclaration;
|
|
|
948
932
|
type types_VariableDeclarator = VariableDeclarator;
|
|
949
933
|
type types_WhileStatement = WhileStatement;
|
|
950
934
|
declare namespace types {
|
|
951
|
-
export type { types_ArrayExpression as ArrayExpression, types_ArrayPattern as ArrayPattern, types_ArrowFunctionExpression as ArrowFunctionExpression, types_AssignmentExpression as AssignmentExpression, types_AssignmentOperator as AssignmentOperator, types_AssignmentPattern as AssignmentPattern, types_AssignmentProperty as AssignmentProperty, types_AwaitExpression as AwaitExpression, types_BaseCallExpression as BaseCallExpression, types_BaseDeclaration as BaseDeclaration, types_BaseExpression as BaseExpression, types_BaseForXStatement as BaseForXStatement, types_BaseFunction as BaseFunction, types_BaseModuleDeclaration as BaseModuleDeclaration, types_BaseModuleSpecifier as BaseModuleSpecifier, types_BaseNode as BaseNode, types_BaseNodeWithoutComments as BaseNodeWithoutComments, types_BasePattern as BasePattern, types_BaseStatement as BaseStatement, types_BigIntLiteral as BigIntLiteral, types_BinaryExpression as BinaryExpression, types_BinaryOperator as BinaryOperator, types_BlockStatement as BlockStatement, types_BreakStatement as BreakStatement, types_CallExpression as CallExpression, types_CatchClause as CatchClause, types_ChainElement as ChainElement, types_ChainExpression as ChainExpression, types_Comment as Comment, types_ConditionalExpression as ConditionalExpression, types_ContinueStatement as ContinueStatement, types_DebuggerStatement as DebuggerStatement, types_Declaration as Declaration, types_Directive as Directive, types_DoWhileStatement as DoWhileStatement, types_EmptyStatement as EmptyStatement, types_ExportDefaultDeclaration as ExportDefaultDeclaration, types_ExportNamedDeclaration as ExportNamedDeclaration, types_ExportSpecifier as ExportSpecifier, types_Expression as Expression, types_ExpressionStatement as ExpressionStatement, types_ForInStatement as ForInStatement, types_ForOfStatement as ForOfStatement, types_ForStatement as ForStatement, types_Function as Function, types_FunctionDeclaration as FunctionDeclaration, types_FunctionExpression as FunctionExpression, types_Identifier as Identifier, types_IfStatement as IfStatement, types_ImportDeclaration as ImportDeclaration, types_ImportDefaultSpecifier as ImportDefaultSpecifier, types_ImportExpression as ImportExpression, types_ImportNamespaceSpecifier as ImportNamespaceSpecifier, types_ImportSpecifier as ImportSpecifier, types_JSXAttribute as JSXAttribute, types_JSXChild as JSXChild, types_JSXClosingElement as JSXClosingElement, types_JSXClosingFragment as JSXClosingFragment, types_JSXElement as JSXElement, types_JSXEmptyExpression as JSXEmptyExpression, types_JSXExpressionContainer as JSXExpressionContainer, types_JSXFragment as JSXFragment, types_JSXIdentifier as JSXIdentifier, types_JSXMemberExpression as JSXMemberExpression, types_JSXNamespacedName as JSXNamespacedName, types_JSXOpeningElement as JSXOpeningElement, types_JSXOpeningFragment as JSXOpeningFragment, types_JSXSpreadAttribute as JSXSpreadAttribute, types_JSXTagName as JSXTagName, types_JSXText as JSXText, types_JsonExpression as JsonExpression, types_LabeledStatement as LabeledStatement, types_Literal as Literal, types_LogicalExpression as LogicalExpression, types_LogicalOperator as LogicalOperator, types_MaybeNamedFunctionDeclaration as MaybeNamedFunctionDeclaration, types_MemberExpression as MemberExpression, types_MetaProperty as MetaProperty,
|
|
935
|
+
export type { types_ArrayExpression as ArrayExpression, types_ArrayPattern as ArrayPattern, types_ArrowFunctionExpression as ArrowFunctionExpression, types_AssignmentExpression as AssignmentExpression, types_AssignmentOperator as AssignmentOperator, types_AssignmentPattern as AssignmentPattern, types_AssignmentProperty as AssignmentProperty, types_AwaitExpression as AwaitExpression, types_BaseCallExpression as BaseCallExpression, types_BaseDeclaration as BaseDeclaration, types_BaseExpression as BaseExpression, types_BaseForXStatement as BaseForXStatement, types_BaseFunction as BaseFunction, types_BaseModuleDeclaration as BaseModuleDeclaration, types_BaseModuleSpecifier as BaseModuleSpecifier, types_BaseNode as BaseNode, types_BaseNodeWithoutComments as BaseNodeWithoutComments, types_BasePattern as BasePattern, types_BaseStatement as BaseStatement, types_BigIntLiteral as BigIntLiteral, types_BinaryExpression as BinaryExpression, types_BinaryOperator as BinaryOperator, types_BlockStatement as BlockStatement, types_BreakStatement as BreakStatement, types_CallExpression as CallExpression, types_CatchClause as CatchClause, types_ChainElement as ChainElement, types_ChainExpression as ChainExpression, types_Comment as Comment, types_ConditionalExpression as ConditionalExpression, types_ContinueStatement as ContinueStatement, types_DebuggerStatement as DebuggerStatement, types_Declaration as Declaration, types_Directive as Directive, types_DoWhileStatement as DoWhileStatement, types_EmptyStatement as EmptyStatement, types_ExportDefaultDeclaration as ExportDefaultDeclaration, types_ExportNamedDeclaration as ExportNamedDeclaration, types_ExportSpecifier as ExportSpecifier, types_Expression as Expression, types_ExpressionStatement as ExpressionStatement, types_ForInStatement as ForInStatement, types_ForOfStatement as ForOfStatement, types_ForStatement as ForStatement, types_Function as Function, types_FunctionDeclaration as FunctionDeclaration, types_FunctionExpression as FunctionExpression, types_Identifier as Identifier, types_IfStatement as IfStatement, types_ImportDeclaration as ImportDeclaration, types_ImportDefaultSpecifier as ImportDefaultSpecifier, types_ImportExpression as ImportExpression, types_ImportNamespaceSpecifier as ImportNamespaceSpecifier, types_ImportSpecifier as ImportSpecifier, types_JSXAttribute as JSXAttribute, types_JSXChild as JSXChild, types_JSXClosingElement as JSXClosingElement, types_JSXClosingFragment as JSXClosingFragment, types_JSXElement as JSXElement, types_JSXEmptyExpression as JSXEmptyExpression, types_JSXExpressionContainer as JSXExpressionContainer, types_JSXFragment as JSXFragment, types_JSXIdentifier as JSXIdentifier, types_JSXMemberExpression as JSXMemberExpression, types_JSXNamespacedName as JSXNamespacedName, types_JSXOpeningElement as JSXOpeningElement, types_JSXOpeningFragment as JSXOpeningFragment, types_JSXSpreadAttribute as JSXSpreadAttribute, types_JSXTagName as JSXTagName, types_JSXText as JSXText, types_JsonExpression as JsonExpression, types_LabeledStatement as LabeledStatement, types_Literal as Literal, types_LogicalExpression as LogicalExpression, types_LogicalOperator as LogicalOperator, types_MaybeNamedFunctionDeclaration as MaybeNamedFunctionDeclaration, types_MemberExpression as MemberExpression, types_MetaProperty as MetaProperty, types_ModuleDeclaration as ModuleDeclaration, types_ModuleSpecifier as ModuleSpecifier, types_Node as Node, types_NodeMap as NodeMap, types_ObjectExpression as ObjectExpression, types_ObjectPattern as ObjectPattern, types_Pattern as Pattern, types_Placeholder as Placeholder, types_Position as Position, types_Program as Program, types_Property as Property, types_RegExpLiteral as RegExpLiteral, types_RestElement as RestElement, types_ReturnStatement as ReturnStatement, types_SequenceExpression as SequenceExpression, types_SimpleArrayExpression as SimpleArrayExpression, types_SimpleArrayPattern as SimpleArrayPattern, types_SimpleArrowFunctionExpression as SimpleArrowFunctionExpression, types_SimpleAssignmentExpression as SimpleAssignmentExpression, types_SimpleAssignmentPattern as SimpleAssignmentPattern, types_SimpleAssignmentProperty as SimpleAssignmentProperty, types_SimpleAwaitExpression as SimpleAwaitExpression, types_SimpleBaseCallExpression as SimpleBaseCallExpression, types_SimpleBaseDeclaration as SimpleBaseDeclaration, types_SimpleBaseExpression as SimpleBaseExpression, types_SimpleBaseForXStatement as SimpleBaseForXStatement, types_SimpleBaseFunction as SimpleBaseFunction, types_SimpleBaseNode as SimpleBaseNode, types_SimpleBaseNodeWithoutComments as SimpleBaseNodeWithoutComments, types_SimpleBasePattern as SimpleBasePattern, types_SimpleBaseStatement as SimpleBaseStatement, types_SimpleBigIntLiteral as SimpleBigIntLiteral, types_SimpleBinaryExpression as SimpleBinaryExpression, types_SimpleBlockStatement as SimpleBlockStatement, types_SimpleBreakStatement as SimpleBreakStatement, types_SimpleCallExpression as SimpleCallExpression, types_SimpleCatchClause as SimpleCatchClause, types_SimpleChainExpression as SimpleChainExpression, types_SimpleComment as SimpleComment, types_SimpleConditionalExpression as SimpleConditionalExpression, types_SimpleContinueStatement as SimpleContinueStatement, types_SimpleDoWhileStatement as SimpleDoWhileStatement, types_SimpleEmptyStatement as SimpleEmptyStatement, types_SimpleExpressionStatement as SimpleExpressionStatement, types_SimpleForInStatement as SimpleForInStatement, types_SimpleForOfStatement as SimpleForOfStatement, types_SimpleForStatement as SimpleForStatement, types_SimpleFunctionDeclaration as SimpleFunctionDeclaration, types_SimpleFunctionExpression as SimpleFunctionExpression, types_SimpleIdentifier as SimpleIdentifier, types_SimpleIfStatement as SimpleIfStatement, types_SimpleJsonExpression as SimpleJsonExpression, types_SimpleLabeledStatement as SimpleLabeledStatement, types_SimpleLiteral as SimpleLiteral, types_SimpleLogicalExpression as SimpleLogicalExpression, types_SimpleMemberExpression as SimpleMemberExpression, types_SimpleNode as SimpleNode, types_SimpleObjectExpression as SimpleObjectExpression, types_SimpleObjectPattern as SimpleObjectPattern, types_SimplePosition as SimplePosition, types_SimpleProgram as SimpleProgram, types_SimpleProperty as SimpleProperty, types_SimpleRegExpLiteral as SimpleRegExpLiteral, types_SimpleRestElement as SimpleRestElement, types_SimpleReturnStatement as SimpleReturnStatement, types_SimpleSequenceExpression as SimpleSequenceExpression, types_SimpleSimpleCallExpression as SimpleSimpleCallExpression, types_SimpleSimpleLiteral as SimpleSimpleLiteral, types_SimpleSourceLocation as SimpleSourceLocation, types_SimpleSpreadElement as SimpleSpreadElement, types_SimpleSwitchCase as SimpleSwitchCase, types_SimpleSwitchStatement as SimpleSwitchStatement, types_SimpleTemplateElement as SimpleTemplateElement, types_SimpleTemplateLiteral as SimpleTemplateLiteral, types_SimpleThisExpression as SimpleThisExpression, types_SimpleThrowStatement as SimpleThrowStatement, types_SimpleTryStatement as SimpleTryStatement, types_SimpleUnaryExpression as SimpleUnaryExpression, types_SimpleUpdateExpression as SimpleUpdateExpression, types_SimpleVariableDeclaration as SimpleVariableDeclaration, types_SimpleVariableDeclarator as SimpleVariableDeclarator, types_SimpleWhileStatement as SimpleWhileStatement, types_SourceLocation as SourceLocation, types_SpreadElement as SpreadElement, types_Statement as Statement, types_SwitchCase as SwitchCase, types_SwitchStatement as SwitchStatement, types_TSArrayType as TSArrayType, types_TSCallSignatureDeclaration as TSCallSignatureDeclaration, types_TSConditionalType as TSConditionalType, types_TSFunctionType as TSFunctionType, types_TSIndexSignature as TSIndexSignature, types_TSIndexedAccessType as TSIndexedAccessType, types_TSInferType as TSInferType, types_TSIntersectionType as TSIntersectionType, types_TSKeywordType as TSKeywordType, types_TSLite as TSLite, types_TSLiteMarker as TSLiteMarker, types_TSLiteralType as TSLiteralType, types_TSMappedType as TSMappedType, types_TSPropertySignature as TSPropertySignature, types_TSTupleType as TSTupleType, types_TSType as TSType, types_TSTypeLiteral as TSTypeLiteral, types_TSTypeMember as TSTypeMember, types_TSTypeOperator as TSTypeOperator, types_TSTypeParameter as TSTypeParameter, types_TSTypeQuery as TSTypeQuery, types_TSTypeReference as TSTypeReference, types_TSUnionType as TSUnionType, types_TaggedTemplateExpression as TaggedTemplateExpression, types_TemplateElement as TemplateElement, types_TemplateLiteral as TemplateLiteral, types_ThisExpression as ThisExpression, types_ThrowStatement as ThrowStatement, types_TryStatement as TryStatement, types_UnaryExpression as UnaryExpression, types_UnaryOperator as UnaryOperator, types_UpdateExpression as UpdateExpression, types_UpdateOperator as UpdateOperator, types_VariableDeclaration as VariableDeclaration, types_VariableDeclarator as VariableDeclarator, types_WhileStatement as WhileStatement };
|
|
952
936
|
}
|
|
953
937
|
|
|
954
938
|
/**
|
|
@@ -982,13 +966,20 @@ declare const expr: (node: Node) => TSLiteMarker;
|
|
|
982
966
|
*/
|
|
983
967
|
declare const fromExprMarker: (obj: unknown) => unknown;
|
|
984
968
|
declare const identifier: (name: string) => Identifier;
|
|
985
|
-
|
|
969
|
+
/**
|
|
970
|
+
* Um **buraco de autoria** — um slot vazio numa árvore em construção (editor
|
|
971
|
+
* nocode). O checker o tipa como `any` (não cascateia); runtime recusa (árvore
|
|
972
|
+
* incompleta). Ver {@link Placeholder}.
|
|
973
|
+
*/
|
|
974
|
+
declare const placeholder: () => Placeholder;
|
|
975
|
+
declare function literal(value: string | boolean | null | RegExp | bigint | undefined): Literal;
|
|
976
|
+
declare function literal(value: number): Literal | UnaryExpression;
|
|
977
|
+
declare function literal(value: string | boolean | number | null | RegExp | bigint | undefined): Literal | UnaryExpression;
|
|
986
978
|
declare const arrayExpression: (elements: Array<Expression | SpreadElement | null>) => ArrayExpression;
|
|
987
979
|
declare const objectExpression: (properties: Array<Property | SpreadElement>) => ObjectExpression;
|
|
988
980
|
declare const property: (key: Expression, value: Expression | Pattern | AssignmentProperty, shorthand?: boolean, computed?: boolean) => Property;
|
|
989
981
|
declare const spreadElement: (argument: Expression) => SpreadElement;
|
|
990
982
|
declare const callExpression: (callee: Expression, args: Array<Expression | SpreadElement>, optional?: boolean) => SimpleCallExpression;
|
|
991
|
-
declare const newExpression: (callee: Expression, args: Array<Expression | SpreadElement>) => NewExpression;
|
|
992
983
|
declare const memberExpression: (object: Expression, property: Expression, computed?: boolean, optional?: boolean) => MemberExpression;
|
|
993
984
|
declare const chainExpression: (expression: ChainElement) => ChainExpression;
|
|
994
985
|
declare const binaryExpression: (operator: BinaryOperator, left: Expression, right: Expression) => BinaryExpression;
|
|
@@ -1055,4 +1046,4 @@ declare const jsxElement: (openingElement: JSXOpeningElement, children?: JSXChil
|
|
|
1055
1046
|
declare const jsxFragment: (children?: JSXChild[], openingFragment?: JSXOpeningFragment, closingFragment?: JSXClosingFragment) => JSXFragment;
|
|
1056
1047
|
declare const json: (body: TSLite) => JsonExpression;
|
|
1057
1048
|
|
|
1058
|
-
export { type
|
|
1049
|
+
export { type ModuleDeclaration as $, type ArrayExpression as A, type BaseNode as B, type CatchClause as C, type DoWhileStatement as D, type EmptyStatement as E, type ForInStatement as F, type TemplateLiteral as G, type ThrowStatement as H, type Identifier as I, type JsonExpression as J, type TryStatement as K, type Literal as L, type MemberExpression as M, type Node as N, type ObjectExpression as O, type Program as P, type UpdateExpression as Q, type ReturnStatement as R, type SimpleCallExpression as S, type TemplateElement as T, type UnaryExpression as U, type VariableDeclaration as V, type VariableDeclarator as W, type WhileStatement as X, type SpreadElement as Y, type RestElement as Z, type Directive as _, type ArrayPattern as a, type SimpleBaseFunction as a$, type JSXElement as a0, type JSXFragment as a1, type CallExpression as a2, type AssignmentOperator as a3, type AssignmentPattern as a4, type BaseCallExpression as a5, type BaseDeclaration as a6, type BaseExpression as a7, type BaseForXStatement as a8, type BaseFunction as a9, type JSXOpeningElement as aA, type JSXOpeningFragment as aB, type JSXSpreadAttribute as aC, type JSXTagName as aD, type JSXText as aE, type LabeledStatement as aF, type LogicalOperator as aG, type MaybeNamedFunctionDeclaration as aH, type MetaProperty as aI, type ModuleSpecifier as aJ, type NodeMap as aK, type Pattern as aL, type Placeholder as aM, type Position as aN, type RegExpLiteral as aO, type SequenceExpression as aP, type SimpleArrayExpression as aQ, type SimpleArrayPattern as aR, type SimpleArrowFunctionExpression as aS, type SimpleAssignmentExpression as aT, type SimpleAssignmentPattern as aU, type SimpleAssignmentProperty as aV, type SimpleAwaitExpression as aW, type SimpleBaseCallExpression as aX, type SimpleBaseDeclaration as aY, type SimpleBaseExpression as aZ, type SimpleBaseForXStatement as a_, type BaseModuleDeclaration as aa, type BaseModuleSpecifier as ab, type BaseNodeWithoutComments as ac, type BasePattern as ad, type BaseStatement as ae, type BigIntLiteral as af, type BinaryOperator as ag, type ChainElement as ah, type Comment as ai, type DebuggerStatement as aj, type Declaration as ak, type ExportDefaultDeclaration as al, type ExportNamedDeclaration as am, type ExportSpecifier as an, type Expression as ao, type Function as ap, type ImportExpression as aq, type JSXAttribute as ar, type JSXChild as as, type JSXClosingElement as at, type JSXClosingFragment as au, type JSXEmptyExpression as av, type JSXExpressionContainer as aw, type JSXIdentifier as ax, type JSXMemberExpression as ay, type JSXNamespacedName as az, type ArrowFunctionExpression as b, type TSIntersectionType as b$, type SimpleBaseNode as b0, type SimpleBaseNodeWithoutComments as b1, type SimpleBasePattern as b2, type SimpleBaseStatement as b3, type SimpleBigIntLiteral as b4, type SimpleBinaryExpression as b5, type SimpleBlockStatement as b6, type SimpleBreakStatement as b7, type SimpleCatchClause as b8, type SimpleChainExpression as b9, type SimpleReturnStatement as bA, type SimpleSequenceExpression as bB, type SimpleSimpleCallExpression as bC, type SimpleSimpleLiteral as bD, type SimpleSourceLocation as bE, type SimpleSpreadElement as bF, type SimpleSwitchCase as bG, type SimpleSwitchStatement as bH, type SimpleTemplateElement as bI, type SimpleTemplateLiteral as bJ, type SimpleThisExpression as bK, type SimpleThrowStatement as bL, type SimpleTryStatement as bM, type SimpleUnaryExpression as bN, type SimpleUpdateExpression as bO, type SimpleVariableDeclaration as bP, type SimpleVariableDeclarator as bQ, type SimpleWhileStatement as bR, type SourceLocation as bS, type Statement as bT, type TSArrayType as bU, type TSCallSignatureDeclaration as bV, type TSConditionalType as bW, type TSFunctionType as bX, type TSIndexSignature as bY, type TSIndexedAccessType as bZ, type TSInferType as b_, type SimpleComment as ba, type SimpleConditionalExpression as bb, type SimpleContinueStatement as bc, type SimpleDoWhileStatement as bd, type SimpleEmptyStatement as be, type SimpleExpressionStatement as bf, type SimpleForInStatement as bg, type SimpleForOfStatement as bh, type SimpleForStatement as bi, type SimpleFunctionDeclaration as bj, type SimpleFunctionExpression as bk, type SimpleIdentifier as bl, type SimpleIfStatement as bm, type SimpleJsonExpression as bn, type SimpleLabeledStatement as bo, type SimpleLiteral as bp, type SimpleLogicalExpression as bq, type SimpleMemberExpression as br, type SimpleNode as bs, type SimpleObjectExpression as bt, type SimpleObjectPattern as bu, type SimplePosition as bv, type SimpleProgram as bw, type SimpleProperty as bx, type SimpleRegExpLiteral as by, type SimpleRestElement as bz, type AssignmentExpression as c, jsxIdentifier as c$, type TSKeywordType as c0, type TSLite as c1, type TSLiteMarker as c2, type TSLiteralType as c3, type TSMappedType as c4, type TSPropertySignature as c5, type TSTupleType as c6, type TSType as c7, type TSTypeLiteral as c8, type TSTypeMember as c9, chainExpression as cA, conditionalExpression as cB, continueStatement as cC, doWhileStatement as cD, emptyStatement as cE, exportDefaultDeclaration as cF, exportNamedDeclaration as cG, exportSpecifier as cH, expressionStatement as cI, forInStatement as cJ, forOfStatement as cK, forStatement as cL, functionDeclaration as cM, functionExpression as cN, identifier as cO, ifStatement as cP, importDeclaration as cQ, importDefaultSpecifier as cR, importNamespaceSpecifier as cS, importSpecifier as cT, jsxAttribute as cU, jsxClosingElement as cV, jsxClosingFragment as cW, jsxElement as cX, jsxEmptyExpression as cY, jsxExpressionContainer as cZ, jsxFragment as c_, type TSTypeOperator as ca, type TSTypeParameter as cb, type TSTypeQuery as cc, type TSTypeReference as cd, type TSUnionType as ce, type TaggedTemplateExpression as cf, type ThisExpression as cg, type UnaryOperator as ch, type UpdateOperator as ci, expr as cj, fromExprMarker as ck, json as cl, jsonExpression as cm, types as cn, arrayExpression as co, arrayPattern as cp, arrowFunctionExpression as cq, assignmentExpression as cr, assignmentPattern as cs, assignmentProperty as ct, awaitExpression as cu, binaryExpression as cv, blockStatement as cw, breakStatement as cx, callExpression as cy, catchClause as cz, type AssignmentProperty as d, jsxMemberExpression as d0, jsxNamespacedName as d1, jsxOpeningElement as d2, jsxOpeningFragment as d3, jsxSpreadAttribute as d4, jsxText as d5, literal as d6, logicalExpression as d7, memberExpression as d8, objectExpression as d9, objectPattern as da, placeholder as db, program as dc, property as dd, restElement as de, returnStatement as df, spreadElement as dg, switchCase as dh, switchStatement as di, templateElement as dj, templateLiteral as dk, throwStatement as dl, tryStatement as dm, unaryExpression as dn, updateExpression as dp, variableDeclaration as dq, variableDeclarator as dr, whileStatement as ds, type AwaitExpression as e, type BinaryExpression as f, type BlockStatement as g, type BreakStatement as h, type ChainExpression as i, type ConditionalExpression as j, type ContinueStatement as k, type ExpressionStatement as l, type ForOfStatement as m, type ForStatement as n, type FunctionDeclaration as o, type FunctionExpression as p, type IfStatement as q, type ImportDeclaration as r, type ImportDefaultSpecifier as s, type ImportNamespaceSpecifier as t, type ImportSpecifier as u, type LogicalExpression as v, type ObjectPattern as w, type Property as x, type SwitchCase as y, type SwitchStatement as z };
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var Z=Object.defineProperty;var F=(e,r)=>{for(var n in r)Z(e,n,{get:r[n],enumerable:true});};var y=class extends Error{constructor(r,n,i){super(n),this.name="TSLiteError",this.code=r,this.details=i;}};var G=/^[a-zA-Z_][a-zA-Z_0-9]*$/,d=["Identifier","MemberExpression","CallExpression","ArrowFunctionExpression","FunctionExpression","BinaryExpression","LogicalExpression","UnaryExpression","UpdateExpression","ConditionalExpression","AssignmentExpression","NewExpression","ArrayExpression","ObjectExpression","AwaitExpression","TemplateLiteral","TaggedTemplateExpression","SequenceExpression","ChainExpression","JSXElement","JSXFragment","Program"];function T(e){return d.includes(e)}function h(e){return new y("invalid-expression-entry",`Invalid #expr entry type: "${e}". The #expr marker is used to embed executable logic inside JSON. Only expression types that can be used as VALUES are allowed: ${d.join(", ")}. "${e}" is not a valid entry point because it cannot be used as a value in JSON.`,{type:e,validTypes:d})}var N={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportExpression:["source"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],JsonExpression:[],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],JSXElement:["openingElement","children","closingElement"],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningElement:["name","attributes"],JSXClosingElement:["name"],JSXOpeningFragment:[],JSXClosingFragment:[],JSXAttribute:["name","value"],JSXSpreadAttribute:["argument"],JSXExpressionContainer:["expression"],JSXEmptyExpression:[],JSXText:[],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],TSAsExpression:["expression"],TSTypeAliasDeclaration:["id"]},l={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,Coalesce:3,LogicalOR:4,LogicalAND:5,BitwiseOR:6,BitwiseXOR:7,BitwiseAND:8,Equality:9,Relational:10,BitwiseSHIFT:11,Additive:12,Multiplicative:13,Exponentiation:14,Await:15,Unary:15,Postfix:16,OptionalChaining:17,Call:18,New:19,TaggedTemplate:20,Member:21,Primary:22},Q={"??":l.Coalesce,"||":l.LogicalOR,"&&":l.LogicalAND,"|":l.BitwiseOR,"^":l.BitwiseXOR,"&":l.BitwiseAND,"==":l.Equality,"!=":l.Equality,"===":l.Equality,"!==":l.Equality,is:l.Equality,isnt:l.Equality,"<":l.Relational,">":l.Relational,"<=":l.Relational,">=":l.Relational,in:l.Relational,instanceof:l.Relational,"<<":l.BitwiseSHIFT,">>":l.BitwiseSHIFT,">>>":l.BitwiseSHIFT,"+":l.Additive,"-":l.Additive,"*":l.Multiplicative,"%":l.Multiplicative,"/":l.Multiplicative,"**":l.Exponentiation};var g={};F(g,{arrayExpression:()=>ee,arrayPattern:()=>Be,arrowFunctionExpression:()=>ye,assignmentExpression:()=>ae,assignmentPattern:()=>_e,assignmentProperty:()=>Le,awaitExpression:()=>le,binaryExpression:()=>ne,blockStatement:()=>Se,breakStatement:()=>Ne,callExpression:()=>J,catchClause:()=>he,chainExpression:()=>re,conditionalExpression:()=>pe,continueStatement:()=>we,doWhileStatement:()=>Xe,emptyStatement:()=>Ce,exportDefaultDeclaration:()=>qe,exportNamedDeclaration:()=>We,exportSpecifier:()=>$e,expr:()=>O,expressionStatement:()=>ue,forInStatement:()=>De,forOfStatement:()=>Ie,forStatement:()=>Je,fromExprMarker:()=>k,functionDeclaration:()=>Ee,functionExpression:()=>xe,identifier:()=>E,ifStatement:()=>fe,importDeclaration:()=>Ve,importDefaultSpecifier:()=>ve,importNamespaceSpecifier:()=>Ue,importSpecifier:()=>Me,json:()=>j,jsonExpression:()=>I,jsxAttribute:()=>Qe,jsxClosingElement:()=>tt,jsxClosingFragment:()=>L,jsxElement:()=>nt,jsxEmptyExpression:()=>He,jsxExpressionContainer:()=>Ze,jsxFragment:()=>st,jsxIdentifier:()=>Ke,jsxMemberExpression:()=>Ye,jsxNamespacedName:()=>ze,jsxOpeningElement:()=>et,jsxOpeningFragment:()=>B,jsxSpreadAttribute:()=>Ge,jsxText:()=>rt,literal:()=>x,logicalExpression:()=>se,memberExpression:()=>D,newExpression:()=>te,objectExpression:()=>f,objectPattern:()=>ke,program:()=>Re,property:()=>w,restElement:()=>je,returnStatement:()=>de,spreadElement:()=>C,switchCase:()=>be,switchStatement:()=>ge,templateElement:()=>ce,templateLiteral:()=>me,throwStatement:()=>Ae,tryStatement:()=>Te,unaryExpression:()=>oe,updateExpression:()=>ie,variableDeclaration:()=>Fe,variableDeclarator:()=>Oe,whileStatement:()=>Pe});var O=e=>{let{type:r,...n}=e;if(!r||typeof r!="string")throw new y("missing-node-type","expr() requires a node with a valid type property");if(!T(r))throw h(r);return {"#expr":r,...n}},k=e=>{if(!e||typeof e!="object"||!("#expr"in e))return e;let{"#expr":r,...n}=e;return {type:r,...n}},E=e=>({type:"Identifier",name:e}),x=e=>e instanceof RegExp?{type:"Literal",value:e,regex:{pattern:e.source,flags:e.flags}}:typeof e=="bigint"?{type:"Literal",value:e,bigint:String(e)}:{type:"Literal",value:e},ee=e=>({type:"ArrayExpression",elements:e}),f=e=>({type:"ObjectExpression",properties:e}),w=(e,r,n=false,i=false)=>({type:"Property",shorthand:n,computed:i,key:e,value:r,kind:"init"}),C=e=>({type:"SpreadElement",argument:e}),J=(e,r,n=false)=>({type:"CallExpression",callee:e,arguments:r,optional:n}),te=(e,r)=>({type:"NewExpression",callee:e,arguments:r}),D=(e,r,n=false,i=false)=>({type:"MemberExpression",object:e,property:r,computed:n,optional:i}),re=e=>({type:"ChainExpression",expression:e}),ne=(e,r,n)=>({type:"BinaryExpression",left:r,right:n,operator:e}),se=(e,r,n)=>({type:"LogicalExpression",operator:e,left:r,right:n}),oe=(e,r)=>({type:"UnaryExpression",operator:e,argument:r,prefix:true}),ie=(e,r,n=false)=>({type:"UpdateExpression",operator:e,argument:r,prefix:n}),ae=(e,r,n)=>({type:"AssignmentExpression",operator:e,left:r,right:n}),pe=(e,r,n)=>({type:"ConditionalExpression",test:e,consequent:r,alternate:n}),le=e=>({type:"AwaitExpression",argument:e}),ce=(e,r=false)=>({type:"TemplateElement",value:e,tail:r}),me=(e,r)=>({type:"TemplateLiteral",quasis:e,expressions:r}),ye=(e,r,n=false,i=false)=>({type:"ArrowFunctionExpression",expression:r.type!="BlockStatement",generator:i,async:n,params:e,body:r}),xe=(e=null,r,n,i=false,p=false)=>({type:"FunctionExpression",id:e,params:r,body:n,async:i,generator:p}),Ee=(e,r,n,i=false,p=false)=>({type:"FunctionDeclaration",id:e,params:r,body:n,generator:i,async:p}),Se=e=>({type:"BlockStatement",body:e}),ue=e=>({type:"ExpressionStatement",expression:e}),de=e=>({type:"ReturnStatement",argument:e}),fe=(e,r,n=null)=>({type:"IfStatement",test:e,consequent:r,alternate:n}),ge=(e,r)=>({type:"SwitchStatement",cases:r,discriminant:e}),be=(e,r)=>({type:"SwitchCase",consequent:r,test:e}),Ae=e=>({type:"ThrowStatement",argument:e}),Te=(e,r,n=null)=>({type:"TryStatement",block:e,handler:r,finalizer:n}),he=(e,r)=>({type:"CatchClause",param:e,body:r}),Ne=(e=null)=>({type:"BreakStatement",label:e}),we=(e=null)=>({type:"ContinueStatement",label:e}),Ce=()=>({type:"EmptyStatement"}),Je=(e,r,n,i)=>({type:"ForStatement",init:e,test:r,update:n,body:i}),De=(e,r,n)=>({type:"ForInStatement",body:n,left:e,right:r}),Ie=(e,r,n,i=false)=>({type:"ForOfStatement",body:n,left:e,right:r,await:i}),Pe=(e,r)=>({type:"WhileStatement",test:e,body:r}),Xe=(e,r)=>({type:"DoWhileStatement",body:e,test:r}),Fe=(e,r)=>({type:"VariableDeclaration",declarations:r,kind:e}),Oe=(e,r=null)=>({type:"VariableDeclarator",id:e,init:r}),ke=e=>({type:"ObjectPattern",properties:e}),Be=e=>({type:"ArrayPattern",elements:e}),Le=(e,r=e,n=false,i=false)=>({type:"Property",key:e,kind:"init",value:r,shorthand:n,computed:i,method:false}),je=e=>({type:"RestElement",argument:e}),_e=(e,r)=>({type:"AssignmentPattern",left:e,right:r}),Re=(e,r="script")=>({type:"Program",body:e,sourceType:r}),I=e=>({type:"JsonExpression",body:e}),Ve=(e,r)=>({type:"ImportDeclaration",specifiers:e,source:r}),Me=(e,r)=>({type:"ImportSpecifier",imported:e,local:r}),ve=e=>({type:"ImportDefaultSpecifier",local:e}),Ue=e=>({type:"ImportNamespaceSpecifier",local:e}),We=(e=null,r=[],n=null)=>({type:"ExportNamedDeclaration",declaration:e,specifiers:r,source:n}),qe=e=>({type:"ExportDefaultDeclaration",declaration:e}),$e=(e,r=e)=>({type:"ExportSpecifier",local:e,exported:r}),Ke=e=>({type:"JSXIdentifier",name:e}),Ye=(e,r)=>({type:"JSXMemberExpression",object:e,property:r}),ze=(e,r)=>({type:"JSXNamespacedName",namespace:e,name:r}),He=()=>({type:"JSXEmptyExpression"}),Ze=e=>({type:"JSXExpressionContainer",expression:e}),Ge=e=>({type:"JSXSpreadAttribute",argument:e}),Qe=(e,r=null)=>({type:"JSXAttribute",name:e,value:r}),et=(e,r=[],n=false)=>({type:"JSXOpeningElement",name:e,attributes:r,selfClosing:n}),tt=e=>({type:"JSXClosingElement",name:e}),B=()=>({type:"JSXOpeningFragment"}),L=()=>({type:"JSXClosingFragment"}),rt=(e,r=e)=>({type:"JSXText",value:e,raw:r}),nt=(e,r=[],n=null)=>({type:"JSXElement",openingElement:e,children:r,closingElement:n}),st=(e=[],r=B(),n=L())=>({type:"JSXFragment",openingFragment:r,children:e,closingFragment:n}),j=I;var ot=(e="b")=>{class r{constructor(o){this.text=o;}}let n=(t,o)=>{if(typeof t!="object")return typeof t=="string"?`"${t}"`:typeof t=="bigint"?`${t}n`:String(t);if(!t)return "null";if(t instanceof RegExp)return t;if(Array.isArray(t))return `[${t.map(S=>n(S,o)).join(", ")}]`;if(!t.type)return t instanceof r?t.text:`${e}.jsonExpression(${JSON.stringify(t)})`;if(t.type in m)return m[t.type](t,o);throw new y("unknown-node-type","Unknown type: "+t.type,{type:t.type})},i=t=>`(${e}) => ${n(t)}`,p=t=>new Function("b",`return ${t}`)(g),s=(t,o,...S)=>{let A=[],P=false;return S.reverse().forEach(X=>{X===void 0?P&&A.push("false"):(A.push(n(X,t)),P=true);}),`${e}.${o}(${A.reverse().join(", ")})`},m={ArrayExpression:(t,o)=>s(t,"arrayExpression",t.elements),ArrayPattern:(t,o)=>s(t,"arrayPattern",t.elements),ArrowFunctionExpression:(t,o)=>s(t,"arrowFunctionExpression",t.params,t.body,t.async||void 0),AssignmentExpression:(t,o)=>s(t,"assignmentExpression",t.operator,t.left,t.right),AssignmentProperty:(t,o)=>s(t,"assignmentProperty",t.key,t.value||void 0,t.shorthand||void 0),AwaitExpression:(t,o)=>s(t,"awaitExpression",t.argument),BinaryExpression:(t,o)=>s(t,"binaryExpression",t.operator,t.left,t.right),BlockStatement:(t,o)=>s(t,"blockStatement",t.body),BreakStatement:(t,o)=>t.label?s(t,"breakStatement",t.label):s(t,"breakStatement"),CallExpression:(t,o)=>s(t,"callExpression",t.callee,t.arguments,t.optional||void 0),CatchClause:(t,o)=>s(t,"catchClause",t.param,t.body),ChainExpression:(t,o)=>s(t,"chainExpression",t.expression),ConditionalExpression:(t,o)=>s(t,"conditionalExpression",t.test,t.consequent,t.alternate),ContinueStatement:(t,o)=>s(t,"continueStatement",t.label),DoWhileStatement:(t,o)=>s(t,"doWhileStatement",t.body,t.test),EmptyStatement:(t,o)=>s(t,"emptyStatement"),ExpressionStatement:(t,o)=>s(t,"expressionStatement",t.expression),ForInStatement:(t,o)=>s(t,"forInStatement",t.left,t.right,t.body),ForOfStatement:(t,o)=>s(t,"forOfStatement",t.left,t.right,t.body),ForStatement:(t,o)=>s(t,"forStatement",t.init,t.test,t.update,t.body),FunctionDeclaration:(t,o)=>s(t,"functionDeclaration",t.id,t.params,t.body,t.generator||void 0,t.async||void 0),FunctionExpression:(t,o)=>s(t,"functionExpression",t.id||null,t.params,t.body,t.generator||void 0,t.async||void 0),Identifier:(t,o)=>s(t,"identifier",t.name),IfStatement:(t,o)=>s(t,"ifStatement",t.test,t.consequent,t.alternate),ImportDeclaration:(t,o)=>s(t,"importDeclaration",t.specifiers,t.source),ImportDefaultSpecifier:(t,o)=>s(t,"importDefaultSpecifier",t.local),ImportNamespaceSpecifier:(t,o)=>s(t,"importNamespaceSpecifier",t.local),ImportSpecifier:(t,o)=>s(t,"importSpecifier",t.imported,t.local),JsonExpression:(t,o)=>s(t,"jsonExpression",JSON.stringify(t.body)),Literal:(t,o)=>s(t,"literal",t.value),LogicalExpression:(t,o)=>s(t,"logicalExpression",t.operator,t.left,t.right),MemberExpression:(t,o)=>s(t,"memberExpression",t.object,t.property,t.computed||void 0,t.optional||void 0),NewExpression:(t,o)=>s(t,"newExpression",t.callee,t.arguments),ObjectExpression:(t,o)=>s(t,"objectExpression",t.properties),ObjectPattern:(t,o)=>s(t,"objectPattern",t.properties),Program:(t,o)=>s(t,"program",t.body),Property:(t,o)=>{if(o.type==="ObjectPattern")return s(t,"assignmentProperty",t.key,t.value,t.shorthand||void 0);if(o.type==="ObjectExpression")return s(t,"property",t.key,t.value,t.shorthand||void 0,t.computed||void 0)},ReturnStatement:(t,o)=>s(t,"returnStatement",t.argument),SwitchCase:(t,o)=>s(t,"switchCase",t.test,t.consequent),SwitchStatement:(t,o)=>s(t,"switchStatement",t.discriminant,t.cases),TemplateElement:(t,o)=>t.tail?s(t,"templateElement",new r(JSON.stringify(t.value)),true):s(t,"templateElement",new r(JSON.stringify(t.value))),TemplateLiteral:(t,o)=>s(t,"templateLiteral",t.quasis,t.expressions),ThrowStatement:(t,o)=>s(t,"throwStatement",t.argument),TryStatement:(t,o)=>s(t,"tryStatement",t.block,t.handler,t.finalizer),UnaryExpression:(t,o)=>s(t,"unaryExpression",t.operator,t.argument),UpdateExpression:(t,o)=>t.prefix==true?s(t,"updateExpression",t.operator,t.argument,true):s(t,"updateExpression",t.operator,t.argument),VariableDeclaration:(t,o)=>s(t,"variableDeclaration",t.kind,t.declarations),VariableDeclarator:(t,o)=>s(t,"variableDeclarator",t.id,t.init||void 0),WhileStatement:(t,o)=>s(t,"whileStatement",t.test,t.body),SpreadElement:(t,o)=>s(t,"spreadElement",t.argument),RestElement:(t,o)=>s(t,"restElement",t.argument)};return {build:n,buildFunction:i,safeEval:p,builders:m}};var U={};F(U,{isArrayExpression:()=>ut,isArrayPattern:()=>Lt,isArrowFunctionExpression:()=>yt,isAssignmentExpression:()=>Tt,isAssignmentProperty:()=>nr,isAwaitExpression:()=>ht,isBinaryExpression:()=>mt,isBlockStatement:()=>Jt,isBreakStatement:()=>Pt,isCallExpression:()=>Et,isCatchClause:()=>Kt,isConditionalExpression:()=>dt,isContinueStatement:()=>Xt,isDirective:()=>rr,isDoWhileStatement:()=>qt,isEmptyStatement:()=>Ft,isExpressionStatement:()=>Ct,isForInStatement:()=>Ut,isForOfStatement:()=>Wt,isForStatement:()=>vt,isFunctionDeclaration:()=>jt,isFunctionExpression:()=>xt,isIdentifier:()=>ct,isIfStatement:()=>It,isImportDeclaration:()=>Zt,isImportDefaultSpecifier:()=>Qt,isImportNamespaceSpecifier:()=>er,isImportSpecifier:()=>Gt,isJsonExpression:()=>wt,isLiteral:()=>lt,isLogicalExpression:()=>ft,isMemberExpression:()=>At,isModuleDeclaration:()=>tr,isNewExpression:()=>Nt,isNode:()=>sr,isObjectExpression:()=>St,isObjectPattern:()=>Bt,isProgram:()=>_t,isProperty:()=>v,isReturnStatement:()=>Dt,isSwitchCase:()=>Vt,isSwitchStatement:()=>Rt,isTemplateElement:()=>zt,isTemplateLiteral:()=>Ht,isThrowStatement:()=>Yt,isTryStatement:()=>$t,isUnaryExpression:()=>gt,isUpdateExpression:()=>bt,isVariableDeclaration:()=>kt,isVariableDeclarator:()=>Ot,isWhileStatement:()=>Mt});var _=e=>typeof e=="object"&&e!==null&&typeof e.type=="string",it=N;function u(e,r){let n=it[e.type],i=e,p=(s,m)=>{if(s!=null)if(Array.isArray(s))for(let t=0;t<s.length;t++)_(s[t])&&r(s[t],m,t);else _(s)&&r(s,m,null);};if(n){for(let s of n)p(i[s],s);return}for(let s in i)Object.prototype.hasOwnProperty.call(i,s)&&p(i[s],s);}function R(e){let r=[];return u(e,n=>r.push(n)),r}function b(e,r){let n=false;function i(p,s){if(!p||n)return;let m=r[p.type]??r["*"],t=false;if(m){let o=m(p,s);if(o===false&&(t=true),o==="break"){n=true;return}}t||u(p,o=>{n||i(o,p);});}i(e,null);}var at=new Proxy({fn:{}},{get(e,r){return {type:"Identifier",name:r}}}),a=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function V(e,r){let n;return b(e,{"*":i=>{if(r(i))return n=i,"break"}}),n}function M(e,r,n){let i=p=>{if(r(p))return n(p);if(Array.isArray(p)){let s=false,m=p.map(t=>{let o=i(t);return o!==t&&(s=true),o});return s?m:p}if(a(p)){let s=false,m={};for(let t in p){let o=p[t],S=i(o);m[t]=S,S!==o&&(s=true);}return s?m:p}return p};return i(e)}function pt(e,r){let n={};return r.forEach(i=>{i in e&&(n[i]=e[i]);}),n}var lt=e=>e?.type==="Literal"&&"value"in e,ct=e=>e?.type==="Identifier"&&typeof e.name=="string",mt=e=>e?.type==="BinaryExpression"&&a(e.left)&&a(e.right)&&typeof e.operator=="string",yt=e=>e?.type==="ArrowFunctionExpression"&&a(e.body),xt=e=>e?.type==="FunctionExpression"&&a(e.body),Et=e=>e?.type==="CallExpression"&&a(e.callee)&&Array.isArray(e.arguments),St=e=>e?.type==="ObjectExpression"&&Array.isArray(e.properties),ut=e=>e?.type==="ArrayExpression"&&Array.isArray(e.elements),dt=e=>e?.type==="ConditionalExpression"&&a(e.test)&&a(e.consequent)&&a(e.alternate),ft=e=>e?.type==="LogicalExpression"&&a(e.left)&&a(e.right)&&typeof e.operator=="string",gt=e=>e?.type==="UnaryExpression"&&typeof e.operator=="string"&&a(e.argument),bt=e=>e?.type==="UpdateExpression"&&typeof e.operator=="string"&&a(e.argument),At=e=>e?.type==="MemberExpression"&&a(e.object)&&a(e.property),Tt=e=>e?.type==="AssignmentExpression"&&a(e.left)&&a(e.right)&&typeof e.operator=="string",ht=e=>e?.type==="AwaitExpression"&&"argument"in e,Nt=e=>e?.type==="NewExpression"&&a(e.callee)&&Array.isArray(e.arguments),wt=e=>e?.type==="JsonExpression"&&a(e.body),Ct=e=>e?.type==="ExpressionStatement"&&a(e.expression),Jt=e=>e?.type==="BlockStatement"&&Array.isArray(e.body),Dt=e=>e?.type==="ReturnStatement",It=e=>e?.type==="IfStatement"&&a(e.test)&&a(e.consequent),Pt=e=>e?.type==="BreakStatement",Xt=e=>e?.type==="ContinueStatement",Ft=e=>e?.type==="EmptyStatement",Ot=e=>e?.type==="VariableDeclarator"&&a(e.id),kt=e=>e?.type==="VariableDeclaration"&&Array.isArray(e.declarations),Bt=e=>e?.type==="ObjectPattern"&&Array.isArray(e.properties),Lt=e=>e?.type==="ArrayPattern"&&Array.isArray(e.elements),jt=e=>e?.type==="FunctionDeclaration"&&a(e.id)&&a(e.body),_t=e=>e?.type==="Program"&&Array.isArray(e.body),Rt=e=>e?.type==="SwitchStatement"&&a(e.discriminant)&&Array.isArray(e.cases),Vt=e=>e?.type==="SwitchCase"&&Array.isArray(e.consequent),Mt=e=>e?.type==="WhileStatement"&&a(e.test)&&a(e.body),vt=e=>e?.type==="ForStatement"&&"body"in e,Ut=e=>e?.type==="ForInStatement"&&a(e.left)&&a(e.right)&&a(e.body),Wt=e=>e?.type==="ForOfStatement"&&a(e.left)&&a(e.right)&&a(e.body),qt=e=>e?.type==="DoWhileStatement"&&a(e.body)&&a(e.test),$t=e=>e?.type==="TryStatement"&&a(e.block),Kt=e=>e?.type==="CatchClause"&&a(e.body),Yt=e=>e?.type==="ThrowStatement"&&a(e.argument),zt=e=>e?.type==="TemplateElement"&&a(e.value),Ht=e=>e?.type==="TemplateLiteral"&&Array.isArray(e.quasis)&&Array.isArray(e.expressions),Zt=e=>e?.type==="ImportDeclaration"&&Array.isArray(e.specifiers)&&a(e.source),Gt=e=>e?.type==="ImportSpecifier"&&a(e.imported)&&a(e.local),Qt=e=>e?.type==="ImportDefaultSpecifier"&&a(e.local),er=e=>e?.type==="ImportNamespaceSpecifier"&&a(e.local),tr=e=>e?.type==="ModuleDeclaration",rr=e=>e?.type==="Directive",v=e=>e?.type==="Property"&&a(e.key)&&a(e.value),nr=e=>v(e),sr=e=>typeof e?.type=="string";var or="createElement",ir="Fragment";function c(e,r){return r.start!==void 0&&(e.start=r.start),r.end!==void 0&&(e.end=r.end),r.loc!==void 0&&(e.loc=r.loc),r.range!==void 0&&(e.range=r.range),e}var ar=e=>/^[a-zA-Z_$][\w$]*$/.test(e);function W(e){return e.type==="JSXIdentifier"?c(/^[a-z]/.test(e.name)||e.name.includes("-")?x(e.name):E(e.name),e):e.type==="JSXNamespacedName"?c(x(`${e.namespace.name}:${e.name.name}`),e):c(D(W(e.object),c(E(e.property.name),e.property)),e)}function pr(e){return e.type==="JSXNamespacedName"?c(x(`${e.namespace.name}:${e.name.name}`),e):c(ar(e.name)?E(e.name):x(e.name),e)}function lr(e,r){return e===null?c(x(true),r):e.type==="JSXExpressionContainer"?e.expression:e}var q=(e,r)=>c(r.emptyPropsAsObject?f([]):x(null),e);function cr(e,r,n){if(e.length===0)return q(r,n);let i=e.map(p=>p.type==="JSXSpreadAttribute"?c(C(p.argument),p):c(w(pr(p.name),lr(p.value,p)),p));return c(f(i),r)}function mr(e){let r=e.split(/\r\n|\n|\r/),n=-1;for(let p=0;p<r.length;p++)/[^ \t]/.test(r[p])&&(n=p);let i="";for(let p=0;p<r.length;p++){let s=r[p].replace(/\t/g," ");p!==0&&(s=s.replace(/^ +/,"")),p!==r.length-1&&(s=s.replace(/ +$/,"")),s&&(p!==n&&(s+=" "),i+=s);}return i===""?null:i}function yr(e){if(e.type==="JSXText"){let r=mr(e.value);return r===null?null:c(x(r),e)}return e.type==="JSXExpressionContainer"?e.expression.type==="JSXEmptyExpression"?null:e.expression:e}function $(e,r={}){let n=e.type==="JSXFragment"?c(E(ir),e.openingFragment):W(e.openingElement.name),i=e.type==="JSXFragment"?q(e.openingFragment,r):cr(e.openingElement.attributes,e.openingElement,r),p=e.children.map(yr).filter(s=>s!==null);return c(J(c(E(or),e),[n,i,...p]),e)}var K=(e={})=>({vars:e,parent:null}),Y=(e,r)=>({vars:r,parent:e});function z(e,r){for(let n=e;n;n=n.parent)if(Object.prototype.hasOwnProperty.call(n.vars,r))return n.vars[r]}function H(e){let r=new Map;for(let n=e;n;n=n.parent)for(let i of Object.keys(n.vars))r.has(i)||r.set(i,n.vars[i]);return r}exports.BinaryPrecedence=Q;exports.Mock=at;exports.Precedence=l;exports.TSLiteError=y;exports.VALID_EXPRESSION_ENTRY_TYPES=d;exports.VALID_OBJECT_KEY=G;exports.VisitorKeys=N;exports.childScope=Y;exports.childrenOf=R;exports.desugarJSX=$;exports.expr=O;exports.find=V;exports.forEachChild=u;exports.fromExprMarker=k;exports.generateBuilders=ot;exports.guards=U;exports.invalidExpressionEntryError=h;exports.isObject=a;exports.isValidExpressionEntryType=T;exports.json=j;exports.jsonExpression=I;exports.lookup=z;exports.mutate=M;exports.pick=pt;exports.rootScope=K;exports.visibleNames=H;exports.walk=b;
|
|
1
|
+
'use strict';var G=Object.defineProperty;var F=(e,r)=>{for(var n in r)G(e,n,{get:r[n],enumerable:true});};var x=class extends Error{constructor(r,n,i){super(n),this.name="TSLiteError",this.code=r,this.details=i;}};var Q=/^[a-zA-Z_][a-zA-Z_0-9]*$/,d=["Identifier","MemberExpression","CallExpression","ArrowFunctionExpression","FunctionExpression","BinaryExpression","LogicalExpression","UnaryExpression","UpdateExpression","ConditionalExpression","AssignmentExpression","ArrayExpression","ObjectExpression","AwaitExpression","TemplateLiteral","TaggedTemplateExpression","SequenceExpression","ChainExpression","JSXElement","JSXFragment","Program"];function T(e){return d.includes(e)}function h(e){return new x("invalid-expression-entry",`Invalid #expr entry type: "${e}". The #expr marker is used to embed executable logic inside JSON. Only expression types that can be used as VALUES are allowed: ${d.join(", ")}. "${e}" is not a valid entry point because it cannot be used as a value in JSON.`,{type:e,validTypes:d})}var N={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportExpression:["source"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],JsonExpression:[],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],Placeholder:[],ModuleSpecifier:[],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],JSXElement:["openingElement","children","closingElement"],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningElement:["name","attributes"],JSXClosingElement:["name"],JSXOpeningFragment:[],JSXClosingFragment:[],JSXAttribute:["name","value"],JSXSpreadAttribute:["argument"],JSXExpressionContainer:["expression"],JSXEmptyExpression:[],JSXText:[],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],TSAsExpression:["expression"],TSTypeAliasDeclaration:["id"]},l={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,Coalesce:3,LogicalOR:4,LogicalAND:5,BitwiseOR:6,BitwiseXOR:7,BitwiseAND:8,Equality:9,Relational:10,BitwiseSHIFT:11,Additive:12,Multiplicative:13,Exponentiation:14,Await:15,Unary:15,Postfix:16,OptionalChaining:17,Call:18,New:19,TaggedTemplate:20,Member:21,Primary:22},ee={"??":l.Coalesce,"||":l.LogicalOR,"&&":l.LogicalAND,"|":l.BitwiseOR,"^":l.BitwiseXOR,"&":l.BitwiseAND,"==":l.Equality,"!=":l.Equality,"===":l.Equality,"!==":l.Equality,is:l.Equality,isnt:l.Equality,"<":l.Relational,">":l.Relational,"<=":l.Relational,">=":l.Relational,in:l.Relational,instanceof:l.Relational,"<<":l.BitwiseSHIFT,">>":l.BitwiseSHIFT,">>>":l.BitwiseSHIFT,"+":l.Additive,"-":l.Additive,"*":l.Multiplicative,"%":l.Multiplicative,"/":l.Multiplicative,"**":l.Exponentiation};var g={};F(g,{arrayExpression:()=>re,arrayPattern:()=>Be,arrowFunctionExpression:()=>ye,assignmentExpression:()=>ae,assignmentPattern:()=>_e,assignmentProperty:()=>Le,awaitExpression:()=>le,binaryExpression:()=>oe,blockStatement:()=>Se,breakStatement:()=>Ne,callExpression:()=>D,catchClause:()=>he,chainExpression:()=>ne,conditionalExpression:()=>pe,continueStatement:()=>Ce,doWhileStatement:()=>Xe,emptyStatement:()=>Je,exportDefaultDeclaration:()=>qe,exportNamedDeclaration:()=>We,exportSpecifier:()=>$e,expr:()=>O,expressionStatement:()=>ue,forInStatement:()=>we,forOfStatement:()=>Ie,forStatement:()=>De,fromExprMarker:()=>k,functionDeclaration:()=>Ee,functionExpression:()=>xe,identifier:()=>E,ifStatement:()=>fe,importDeclaration:()=>Ve,importDefaultSpecifier:()=>ve,importNamespaceSpecifier:()=>Ue,importSpecifier:()=>Me,json:()=>_,jsonExpression:()=>I,jsxAttribute:()=>Qe,jsxClosingElement:()=>tt,jsxClosingFragment:()=>j,jsxElement:()=>nt,jsxEmptyExpression:()=>He,jsxExpressionContainer:()=>Ze,jsxFragment:()=>ot,jsxIdentifier:()=>Ke,jsxMemberExpression:()=>Ye,jsxNamespacedName:()=>ze,jsxOpeningElement:()=>et,jsxOpeningFragment:()=>L,jsxSpreadAttribute:()=>Ge,jsxText:()=>rt,literal:()=>y,logicalExpression:()=>se,memberExpression:()=>w,objectExpression:()=>f,objectPattern:()=>ke,placeholder:()=>te,program:()=>Re,property:()=>C,restElement:()=>je,returnStatement:()=>de,spreadElement:()=>J,switchCase:()=>be,switchStatement:()=>ge,templateElement:()=>ce,templateLiteral:()=>me,throwStatement:()=>Ae,tryStatement:()=>Te,unaryExpression:()=>B,updateExpression:()=>ie,variableDeclaration:()=>Fe,variableDeclarator:()=>Oe,whileStatement:()=>Pe});var O=e=>{let{type:r,...n}=e;if(!r||typeof r!="string")throw new x("missing-node-type","expr() requires a node with a valid type property");if(!T(r))throw h(r);return {"#expr":r,...n}},k=e=>{if(!e||typeof e!="object"||!("#expr"in e))return e;let{"#expr":r,...n}=e;return {type:r,...n}},E=e=>({type:"Identifier",name:e}),te=()=>({type:"Placeholder"});function y(e){return e instanceof RegExp?{type:"Literal",value:e,regex:{pattern:e.source,flags:e.flags}}:typeof e=="bigint"?{type:"Literal",value:e,bigint:String(e)}:typeof e=="number"&&Number.isFinite(e)&&(e<0||Object.is(e,-0))?B("-",y(-e)):{type:"Literal",value:e}}var re=e=>({type:"ArrayExpression",elements:e}),f=e=>({type:"ObjectExpression",properties:e}),C=(e,r,n=false,i=false)=>({type:"Property",shorthand:n,computed:i,key:e,value:r,kind:"init"}),J=e=>({type:"SpreadElement",argument:e}),D=(e,r,n=false)=>({type:"CallExpression",callee:e,arguments:r,optional:n}),w=(e,r,n=false,i=false)=>({type:"MemberExpression",object:e,property:r,computed:n,optional:i}),ne=e=>({type:"ChainExpression",expression:e}),oe=(e,r,n)=>({type:"BinaryExpression",left:r,right:n,operator:e}),se=(e,r,n)=>({type:"LogicalExpression",operator:e,left:r,right:n}),B=(e,r)=>({type:"UnaryExpression",operator:e,argument:r,prefix:true}),ie=(e,r,n=false)=>({type:"UpdateExpression",operator:e,argument:r,prefix:n}),ae=(e,r,n)=>({type:"AssignmentExpression",operator:e,left:r,right:n}),pe=(e,r,n)=>({type:"ConditionalExpression",test:e,consequent:r,alternate:n}),le=e=>({type:"AwaitExpression",argument:e}),ce=(e,r=false)=>({type:"TemplateElement",value:e,tail:r}),me=(e,r)=>({type:"TemplateLiteral",quasis:e,expressions:r}),ye=(e,r,n=false,i=false)=>({type:"ArrowFunctionExpression",expression:r.type!="BlockStatement",generator:i,async:n,params:e,body:r}),xe=(e=null,r,n,i=false,p=false)=>({type:"FunctionExpression",id:e,params:r,body:n,async:i,generator:p}),Ee=(e,r,n,i=false,p=false)=>({type:"FunctionDeclaration",id:e,params:r,body:n,generator:i,async:p}),Se=e=>({type:"BlockStatement",body:e}),ue=e=>({type:"ExpressionStatement",expression:e}),de=e=>({type:"ReturnStatement",argument:e}),fe=(e,r,n=null)=>({type:"IfStatement",test:e,consequent:r,alternate:n}),ge=(e,r)=>({type:"SwitchStatement",cases:r,discriminant:e}),be=(e,r)=>({type:"SwitchCase",consequent:r,test:e}),Ae=e=>({type:"ThrowStatement",argument:e}),Te=(e,r,n=null)=>({type:"TryStatement",block:e,handler:r,finalizer:n}),he=(e,r)=>({type:"CatchClause",param:e,body:r}),Ne=(e=null)=>({type:"BreakStatement",label:e}),Ce=(e=null)=>({type:"ContinueStatement",label:e}),Je=()=>({type:"EmptyStatement"}),De=(e,r,n,i)=>({type:"ForStatement",init:e,test:r,update:n,body:i}),we=(e,r,n)=>({type:"ForInStatement",body:n,left:e,right:r}),Ie=(e,r,n,i=false)=>({type:"ForOfStatement",body:n,left:e,right:r,await:i}),Pe=(e,r)=>({type:"WhileStatement",test:e,body:r}),Xe=(e,r)=>({type:"DoWhileStatement",body:e,test:r}),Fe=(e,r)=>({type:"VariableDeclaration",declarations:r,kind:e}),Oe=(e,r=null)=>({type:"VariableDeclarator",id:e,init:r}),ke=e=>({type:"ObjectPattern",properties:e}),Be=e=>({type:"ArrayPattern",elements:e}),Le=(e,r=e,n=false,i=false)=>({type:"Property",key:e,kind:"init",value:r,shorthand:n,computed:i}),je=e=>({type:"RestElement",argument:e}),_e=(e,r)=>({type:"AssignmentPattern",left:e,right:r}),Re=(e,r="script")=>({type:"Program",body:e,sourceType:r}),I=e=>({type:"JsonExpression",body:e}),Ve=(e,r)=>({type:"ImportDeclaration",specifiers:e,source:r}),Me=(e,r)=>({type:"ImportSpecifier",imported:e,local:r}),ve=e=>({type:"ImportDefaultSpecifier",local:e}),Ue=e=>({type:"ImportNamespaceSpecifier",local:e}),We=(e=null,r=[],n=null)=>({type:"ExportNamedDeclaration",declaration:e,specifiers:r,source:n}),qe=e=>({type:"ExportDefaultDeclaration",declaration:e}),$e=(e,r=e)=>({type:"ExportSpecifier",local:e,exported:r}),Ke=e=>({type:"JSXIdentifier",name:e}),Ye=(e,r)=>({type:"JSXMemberExpression",object:e,property:r}),ze=(e,r)=>({type:"JSXNamespacedName",namespace:e,name:r}),He=()=>({type:"JSXEmptyExpression"}),Ze=e=>({type:"JSXExpressionContainer",expression:e}),Ge=e=>({type:"JSXSpreadAttribute",argument:e}),Qe=(e,r=null)=>({type:"JSXAttribute",name:e,value:r}),et=(e,r=[],n=false)=>({type:"JSXOpeningElement",name:e,attributes:r,selfClosing:n}),tt=e=>({type:"JSXClosingElement",name:e}),L=()=>({type:"JSXOpeningFragment"}),j=()=>({type:"JSXClosingFragment"}),rt=(e,r=e)=>({type:"JSXText",value:e,raw:r}),nt=(e,r=[],n=null)=>({type:"JSXElement",openingElement:e,children:r,closingElement:n}),ot=(e=[],r=L(),n=j())=>({type:"JSXFragment",openingFragment:r,children:e,closingFragment:n}),_=I;var st=(e="b")=>{class r{constructor(s){this.text=s;}}let n=(t,s)=>{if(typeof t!="object")return typeof t=="string"?`"${t}"`:typeof t=="bigint"?`${t}n`:String(t);if(!t)return "null";if(t instanceof RegExp)return t;if(Array.isArray(t))return `[${t.map(S=>n(S,s)).join(", ")}]`;if(!t.type)return t instanceof r?t.text:`${e}.jsonExpression(${JSON.stringify(t)})`;if(t.type in m)return m[t.type](t,s);throw new x("unknown-node-type","Unknown type: "+t.type,{type:t.type})},i=t=>`(${e}) => ${n(t)}`,p=t=>new Function("b",`return ${t}`)(g),o=(t,s,...S)=>{let A=[],P=false;return S.reverse().forEach(X=>{X===void 0?P&&A.push("false"):(A.push(n(X,t)),P=true);}),`${e}.${s}(${A.reverse().join(", ")})`},m={ArrayExpression:(t,s)=>o(t,"arrayExpression",t.elements),ArrayPattern:(t,s)=>o(t,"arrayPattern",t.elements),ArrowFunctionExpression:(t,s)=>o(t,"arrowFunctionExpression",t.params,t.body,t.async||void 0),AssignmentExpression:(t,s)=>o(t,"assignmentExpression",t.operator,t.left,t.right),AssignmentProperty:(t,s)=>o(t,"assignmentProperty",t.key,t.value||void 0,t.shorthand||void 0),AwaitExpression:(t,s)=>o(t,"awaitExpression",t.argument),BinaryExpression:(t,s)=>o(t,"binaryExpression",t.operator,t.left,t.right),BlockStatement:(t,s)=>o(t,"blockStatement",t.body),BreakStatement:(t,s)=>t.label?o(t,"breakStatement",t.label):o(t,"breakStatement"),CallExpression:(t,s)=>o(t,"callExpression",t.callee,t.arguments,t.optional||void 0),CatchClause:(t,s)=>o(t,"catchClause",t.param,t.body),ChainExpression:(t,s)=>o(t,"chainExpression",t.expression),ConditionalExpression:(t,s)=>o(t,"conditionalExpression",t.test,t.consequent,t.alternate),ContinueStatement:(t,s)=>o(t,"continueStatement",t.label),DoWhileStatement:(t,s)=>o(t,"doWhileStatement",t.body,t.test),EmptyStatement:(t,s)=>o(t,"emptyStatement"),ExpressionStatement:(t,s)=>o(t,"expressionStatement",t.expression),ForInStatement:(t,s)=>o(t,"forInStatement",t.left,t.right,t.body),ForOfStatement:(t,s)=>o(t,"forOfStatement",t.left,t.right,t.body),ForStatement:(t,s)=>o(t,"forStatement",t.init,t.test,t.update,t.body),FunctionDeclaration:(t,s)=>o(t,"functionDeclaration",t.id,t.params,t.body,t.generator||void 0,t.async||void 0),FunctionExpression:(t,s)=>o(t,"functionExpression",t.id||null,t.params,t.body,t.generator||void 0,t.async||void 0),Identifier:(t,s)=>o(t,"identifier",t.name),IfStatement:(t,s)=>o(t,"ifStatement",t.test,t.consequent,t.alternate),ImportDeclaration:(t,s)=>o(t,"importDeclaration",t.specifiers,t.source),ImportDefaultSpecifier:(t,s)=>o(t,"importDefaultSpecifier",t.local),ImportNamespaceSpecifier:(t,s)=>o(t,"importNamespaceSpecifier",t.local),ImportSpecifier:(t,s)=>o(t,"importSpecifier",t.imported,t.local),JsonExpression:(t,s)=>o(t,"jsonExpression",JSON.stringify(t.body)),Literal:(t,s)=>o(t,"literal",t.value),LogicalExpression:(t,s)=>o(t,"logicalExpression",t.operator,t.left,t.right),MemberExpression:(t,s)=>o(t,"memberExpression",t.object,t.property,t.computed||void 0,t.optional||void 0),ObjectExpression:(t,s)=>o(t,"objectExpression",t.properties),ObjectPattern:(t,s)=>o(t,"objectPattern",t.properties),Program:(t,s)=>o(t,"program",t.body),Property:(t,s)=>{if(s.type==="ObjectPattern")return o(t,"assignmentProperty",t.key,t.value,t.shorthand||void 0);if(s.type==="ObjectExpression")return o(t,"property",t.key,t.value,t.shorthand||void 0,t.computed||void 0)},ReturnStatement:(t,s)=>o(t,"returnStatement",t.argument),SwitchCase:(t,s)=>o(t,"switchCase",t.test,t.consequent),SwitchStatement:(t,s)=>o(t,"switchStatement",t.discriminant,t.cases),TemplateElement:(t,s)=>t.tail?o(t,"templateElement",new r(JSON.stringify(t.value)),true):o(t,"templateElement",new r(JSON.stringify(t.value))),TemplateLiteral:(t,s)=>o(t,"templateLiteral",t.quasis,t.expressions),ThrowStatement:(t,s)=>o(t,"throwStatement",t.argument),TryStatement:(t,s)=>o(t,"tryStatement",t.block,t.handler,t.finalizer),UnaryExpression:(t,s)=>o(t,"unaryExpression",t.operator,t.argument),UpdateExpression:(t,s)=>t.prefix==true?o(t,"updateExpression",t.operator,t.argument,true):o(t,"updateExpression",t.operator,t.argument),VariableDeclaration:(t,s)=>o(t,"variableDeclaration",t.kind,t.declarations),VariableDeclarator:(t,s)=>o(t,"variableDeclarator",t.id,t.init||void 0),WhileStatement:(t,s)=>o(t,"whileStatement",t.test,t.body),SpreadElement:(t,s)=>o(t,"spreadElement",t.argument),RestElement:(t,s)=>o(t,"restElement",t.argument)};return {build:n,buildFunction:i,safeEval:p,builders:m}};var W={};F(W,{isArrayExpression:()=>ut,isArrayPattern:()=>Bt,isArrowFunctionExpression:()=>yt,isAssignmentExpression:()=>Tt,isAssignmentProperty:()=>rr,isAwaitExpression:()=>ht,isBinaryExpression:()=>mt,isBlockStatement:()=>Jt,isBreakStatement:()=>It,isCallExpression:()=>Et,isCatchClause:()=>$t,isConditionalExpression:()=>dt,isContinueStatement:()=>Pt,isDirective:()=>tr,isDoWhileStatement:()=>Wt,isEmptyStatement:()=>Xt,isExpressionStatement:()=>Ct,isForInStatement:()=>vt,isForOfStatement:()=>Ut,isForStatement:()=>Mt,isFunctionDeclaration:()=>Lt,isFunctionExpression:()=>xt,isIdentifier:()=>ct,isIfStatement:()=>wt,isImportDeclaration:()=>Ht,isImportDefaultSpecifier:()=>Gt,isImportNamespaceSpecifier:()=>Qt,isImportSpecifier:()=>Zt,isJsonExpression:()=>Nt,isLiteral:()=>lt,isLogicalExpression:()=>ft,isMemberExpression:()=>At,isModuleDeclaration:()=>er,isNode:()=>nr,isObjectExpression:()=>St,isObjectPattern:()=>kt,isProgram:()=>jt,isProperty:()=>U,isReturnStatement:()=>Dt,isSwitchCase:()=>Rt,isSwitchStatement:()=>_t,isTemplateElement:()=>Yt,isTemplateLiteral:()=>zt,isThrowStatement:()=>Kt,isTryStatement:()=>qt,isUnaryExpression:()=>gt,isUpdateExpression:()=>bt,isVariableDeclaration:()=>Ot,isVariableDeclarator:()=>Ft,isWhileStatement:()=>Vt});var R=e=>typeof e=="object"&&e!==null&&typeof e.type=="string",it=N;function u(e,r){let n=it[e.type],i=e,p=(o,m)=>{if(o!=null)if(Array.isArray(o))for(let t=0;t<o.length;t++)R(o[t])&&r(o[t],m,t);else R(o)&&r(o,m,null);};if(n){for(let o of n)p(i[o],o);return}for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&p(i[o],o);}function V(e){let r=[];return u(e,n=>r.push(n)),r}function b(e,r){let n=false;function i(p,o){if(!p||n)return;let m=r[p.type]??r["*"],t=false;if(m){let s=m(p,o);if(s===false&&(t=true),s==="break"){n=true;return}}t||u(p,s=>{n||i(s,p);});}i(e,null);}var at=new Proxy({fn:{}},{get(e,r){return {type:"Identifier",name:r}}}),a=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function M(e,r){let n;return b(e,{"*":i=>{if(r(i))return n=i,"break"}}),n}function v(e,r,n){let i=p=>{if(r(p))return n(p);if(Array.isArray(p)){let o=false,m=p.map(t=>{let s=i(t);return s!==t&&(o=true),s});return o?m:p}if(a(p)){let o=false,m={};for(let t in p){let s=p[t],S=i(s);m[t]=S,S!==s&&(o=true);}return o?m:p}return p};return i(e)}function pt(e,r){let n={};return r.forEach(i=>{i in e&&(n[i]=e[i]);}),n}var lt=e=>e?.type==="Literal"&&"value"in e,ct=e=>e?.type==="Identifier"&&typeof e.name=="string",mt=e=>e?.type==="BinaryExpression"&&a(e.left)&&a(e.right)&&typeof e.operator=="string",yt=e=>e?.type==="ArrowFunctionExpression"&&a(e.body),xt=e=>e?.type==="FunctionExpression"&&a(e.body),Et=e=>e?.type==="CallExpression"&&a(e.callee)&&Array.isArray(e.arguments),St=e=>e?.type==="ObjectExpression"&&Array.isArray(e.properties),ut=e=>e?.type==="ArrayExpression"&&Array.isArray(e.elements),dt=e=>e?.type==="ConditionalExpression"&&a(e.test)&&a(e.consequent)&&a(e.alternate),ft=e=>e?.type==="LogicalExpression"&&a(e.left)&&a(e.right)&&typeof e.operator=="string",gt=e=>e?.type==="UnaryExpression"&&typeof e.operator=="string"&&a(e.argument),bt=e=>e?.type==="UpdateExpression"&&typeof e.operator=="string"&&a(e.argument),At=e=>e?.type==="MemberExpression"&&a(e.object)&&a(e.property),Tt=e=>e?.type==="AssignmentExpression"&&a(e.left)&&a(e.right)&&typeof e.operator=="string",ht=e=>e?.type==="AwaitExpression"&&"argument"in e,Nt=e=>e?.type==="JsonExpression"&&a(e.body),Ct=e=>e?.type==="ExpressionStatement"&&a(e.expression),Jt=e=>e?.type==="BlockStatement"&&Array.isArray(e.body),Dt=e=>e?.type==="ReturnStatement",wt=e=>e?.type==="IfStatement"&&a(e.test)&&a(e.consequent),It=e=>e?.type==="BreakStatement",Pt=e=>e?.type==="ContinueStatement",Xt=e=>e?.type==="EmptyStatement",Ft=e=>e?.type==="VariableDeclarator"&&a(e.id),Ot=e=>e?.type==="VariableDeclaration"&&Array.isArray(e.declarations),kt=e=>e?.type==="ObjectPattern"&&Array.isArray(e.properties),Bt=e=>e?.type==="ArrayPattern"&&Array.isArray(e.elements),Lt=e=>e?.type==="FunctionDeclaration"&&a(e.id)&&a(e.body),jt=e=>e?.type==="Program"&&Array.isArray(e.body),_t=e=>e?.type==="SwitchStatement"&&a(e.discriminant)&&Array.isArray(e.cases),Rt=e=>e?.type==="SwitchCase"&&Array.isArray(e.consequent),Vt=e=>e?.type==="WhileStatement"&&a(e.test)&&a(e.body),Mt=e=>e?.type==="ForStatement"&&"body"in e,vt=e=>e?.type==="ForInStatement"&&a(e.left)&&a(e.right)&&a(e.body),Ut=e=>e?.type==="ForOfStatement"&&a(e.left)&&a(e.right)&&a(e.body),Wt=e=>e?.type==="DoWhileStatement"&&a(e.body)&&a(e.test),qt=e=>e?.type==="TryStatement"&&a(e.block),$t=e=>e?.type==="CatchClause"&&a(e.body),Kt=e=>e?.type==="ThrowStatement"&&a(e.argument),Yt=e=>e?.type==="TemplateElement"&&a(e.value),zt=e=>e?.type==="TemplateLiteral"&&Array.isArray(e.quasis)&&Array.isArray(e.expressions),Ht=e=>e?.type==="ImportDeclaration"&&Array.isArray(e.specifiers)&&a(e.source),Zt=e=>e?.type==="ImportSpecifier"&&a(e.imported)&&a(e.local),Gt=e=>e?.type==="ImportDefaultSpecifier"&&a(e.local),Qt=e=>e?.type==="ImportNamespaceSpecifier"&&a(e.local),er=e=>e?.type==="ModuleDeclaration",tr=e=>e?.type==="Directive",U=e=>e?.type==="Property"&&a(e.key)&&a(e.value),rr=e=>U(e),nr=e=>typeof e?.type=="string";var or="createElement",sr="Fragment";function c(e,r){return r.start!==void 0&&(e.start=r.start),r.end!==void 0&&(e.end=r.end),r.loc!==void 0&&(e.loc=r.loc),r.range!==void 0&&(e.range=r.range),e}var ir=e=>/^[a-zA-Z_$][\w$]*$/.test(e);function q(e){return e.type==="JSXIdentifier"?c(/^[a-z]/.test(e.name)||e.name.includes("-")?y(e.name):E(e.name),e):e.type==="JSXNamespacedName"?c(y(`${e.namespace.name}:${e.name.name}`),e):c(w(q(e.object),c(E(e.property.name),e.property)),e)}function ar(e){return e.type==="JSXNamespacedName"?c(y(`${e.namespace.name}:${e.name.name}`),e):c(ir(e.name)?E(e.name):y(e.name),e)}function pr(e,r){return e===null?c(y(true),r):e.type==="JSXExpressionContainer"?e.expression:e}var $=(e,r)=>c(r.emptyPropsAsObject?f([]):y(null),e);function lr(e,r,n){if(e.length===0)return $(r,n);let i=e.map(p=>p.type==="JSXSpreadAttribute"?c(J(p.argument),p):c(C(ar(p.name),pr(p.value,p)),p));return c(f(i),r)}function cr(e){let r=e.split(/\r\n|\n|\r/),n=-1;for(let p=0;p<r.length;p++)/[^ \t]/.test(r[p])&&(n=p);let i="";for(let p=0;p<r.length;p++){let o=r[p].replace(/\t/g," ");p!==0&&(o=o.replace(/^ +/,"")),p!==r.length-1&&(o=o.replace(/ +$/,"")),o&&(p!==n&&(o+=" "),i+=o);}return i===""?null:i}function mr(e){if(e.type==="JSXText"){let r=cr(e.value);return r===null?null:c(y(r),e)}return e.type==="JSXExpressionContainer"?e.expression.type==="JSXEmptyExpression"?null:e.expression:e}function K(e,r={}){let n=e.type==="JSXFragment"?c(E(sr),e.openingFragment):q(e.openingElement.name),i=e.type==="JSXFragment"?$(e.openingFragment,r):lr(e.openingElement.attributes,e.openingElement,r),p=e.children.map(mr).filter(o=>o!==null);return c(D(c(E(or),e),[n,i,...p]),e)}var Y=(e={})=>({vars:e,parent:null}),z=(e,r)=>({vars:r,parent:e});function H(e,r){for(let n=e;n;n=n.parent)if(Object.prototype.hasOwnProperty.call(n.vars,r))return n.vars[r]}function Z(e){let r=new Map;for(let n=e;n;n=n.parent)for(let i of Object.keys(n.vars))r.has(i)||r.set(i,n.vars[i]);return r}exports.BinaryPrecedence=ee;exports.Mock=at;exports.Precedence=l;exports.TSLiteError=x;exports.VALID_EXPRESSION_ENTRY_TYPES=d;exports.VALID_OBJECT_KEY=Q;exports.VisitorKeys=N;exports.childScope=z;exports.childrenOf=V;exports.desugarJSX=K;exports.expr=O;exports.find=M;exports.forEachChild=u;exports.fromExprMarker=k;exports.generateBuilders=st;exports.guards=W;exports.invalidExpressionEntryError=h;exports.isObject=a;exports.isValidExpressionEntryType=T;exports.json=_;exports.jsonExpression=I;exports.lookup=H;exports.mutate=v;exports.pick=pt;exports.rootScope=Y;exports.visibleNames=Z;exports.walk=b;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { B as BaseNode, A as ArrayExpression, N as Node, a as ArrayPattern, b as ArrowFunctionExpression, c as AssignmentExpression, d as AssignmentProperty, e as AwaitExpression, f as BinaryExpression, g as BlockStatement, h as BreakStatement, S as SimpleCallExpression, C as CatchClause, i as ChainExpression, j as ConditionalExpression, k as ContinueStatement, D as DoWhileStatement, E as EmptyStatement, l as ExpressionStatement, F as ForInStatement, m as ForOfStatement, n as ForStatement, o as FunctionDeclaration, p as FunctionExpression, I as Identifier, q as IfStatement, r as ImportDeclaration, s as ImportDefaultSpecifier, t as ImportNamespaceSpecifier, u as ImportSpecifier, J as JsonExpression, L as Literal, v as LogicalExpression, M as MemberExpression,
|
|
2
|
-
export {
|
|
1
|
+
import { B as BaseNode, A as ArrayExpression, N as Node, a as ArrayPattern, b as ArrowFunctionExpression, c as AssignmentExpression, d as AssignmentProperty, e as AwaitExpression, f as BinaryExpression, g as BlockStatement, h as BreakStatement, S as SimpleCallExpression, C as CatchClause, i as ChainExpression, j as ConditionalExpression, k as ContinueStatement, D as DoWhileStatement, E as EmptyStatement, l as ExpressionStatement, F as ForInStatement, m as ForOfStatement, n as ForStatement, o as FunctionDeclaration, p as FunctionExpression, I as Identifier, q as IfStatement, r as ImportDeclaration, s as ImportDefaultSpecifier, t as ImportNamespaceSpecifier, u as ImportSpecifier, J as JsonExpression, L as Literal, v as LogicalExpression, M as MemberExpression, O as ObjectExpression, w as ObjectPattern, P as Program, x as Property, R as ReturnStatement, y as SwitchCase, z as SwitchStatement, T as TemplateElement, G as TemplateLiteral, H as ThrowStatement, K as TryStatement, U as UnaryExpression, Q as UpdateExpression, V as VariableDeclaration, W as VariableDeclarator, X as WhileStatement, Y as SpreadElement, Z as RestElement, _ as Directive, $ as ModuleDeclaration, a0 as JSXElement, a1 as JSXFragment, a2 as CallExpression } from './index-BIjY0ZP4.cjs';
|
|
2
|
+
export { a3 as AssignmentOperator, a4 as AssignmentPattern, a5 as BaseCallExpression, a6 as BaseDeclaration, a7 as BaseExpression, a8 as BaseForXStatement, a9 as BaseFunction, aa as BaseModuleDeclaration, ab as BaseModuleSpecifier, ac as BaseNodeWithoutComments, ad as BasePattern, ae as BaseStatement, af as BigIntLiteral, ag as BinaryOperator, ah as ChainElement, ai as Comment, aj as DebuggerStatement, ak as Declaration, al as ExportDefaultDeclaration, am as ExportNamedDeclaration, an as ExportSpecifier, ao as Expression, ap as Function, aq as ImportExpression, ar as JSXAttribute, as as JSXChild, at as JSXClosingElement, au as JSXClosingFragment, av as JSXEmptyExpression, aw as JSXExpressionContainer, ax as JSXIdentifier, ay as JSXMemberExpression, az as JSXNamespacedName, aA as JSXOpeningElement, aB as JSXOpeningFragment, aC as JSXSpreadAttribute, aD as JSXTagName, aE as JSXText, aF as LabeledStatement, aG as LogicalOperator, aH as MaybeNamedFunctionDeclaration, aI as MetaProperty, aJ as ModuleSpecifier, aK as NodeMap, aL as Pattern, aM as Placeholder, aN as Position, aO as RegExpLiteral, aP as SequenceExpression, aQ as SimpleArrayExpression, aR as SimpleArrayPattern, aS as SimpleArrowFunctionExpression, aT as SimpleAssignmentExpression, aU as SimpleAssignmentPattern, aV as SimpleAssignmentProperty, aW as SimpleAwaitExpression, aX as SimpleBaseCallExpression, aY as SimpleBaseDeclaration, aZ as SimpleBaseExpression, a_ as SimpleBaseForXStatement, a$ as SimpleBaseFunction, b0 as SimpleBaseNode, b1 as SimpleBaseNodeWithoutComments, b2 as SimpleBasePattern, b3 as SimpleBaseStatement, b4 as SimpleBigIntLiteral, b5 as SimpleBinaryExpression, b6 as SimpleBlockStatement, b7 as SimpleBreakStatement, b8 as SimpleCatchClause, b9 as SimpleChainExpression, ba as SimpleComment, bb as SimpleConditionalExpression, bc as SimpleContinueStatement, bd as SimpleDoWhileStatement, be as SimpleEmptyStatement, bf as SimpleExpressionStatement, bg as SimpleForInStatement, bh as SimpleForOfStatement, bi as SimpleForStatement, bj as SimpleFunctionDeclaration, bk as SimpleFunctionExpression, bl as SimpleIdentifier, bm as SimpleIfStatement, bn as SimpleJsonExpression, bo as SimpleLabeledStatement, bp as SimpleLiteral, bq as SimpleLogicalExpression, br as SimpleMemberExpression, bs as SimpleNode, bt as SimpleObjectExpression, bu as SimpleObjectPattern, bv as SimplePosition, bw as SimpleProgram, bx as SimpleProperty, by as SimpleRegExpLiteral, bz as SimpleRestElement, bA as SimpleReturnStatement, bB as SimpleSequenceExpression, bC as SimpleSimpleCallExpression, bD as SimpleSimpleLiteral, bE as SimpleSourceLocation, bF as SimpleSpreadElement, bG as SimpleSwitchCase, bH as SimpleSwitchStatement, bI as SimpleTemplateElement, bJ as SimpleTemplateLiteral, bK as SimpleThisExpression, bL as SimpleThrowStatement, bM as SimpleTryStatement, bN as SimpleUnaryExpression, bO as SimpleUpdateExpression, bP as SimpleVariableDeclaration, bQ as SimpleVariableDeclarator, bR as SimpleWhileStatement, bS as SourceLocation, bT as Statement, bU as TSArrayType, bV as TSCallSignatureDeclaration, bW as TSConditionalType, bX as TSFunctionType, bY as TSIndexSignature, bZ as TSIndexedAccessType, b_ as TSInferType, b$ as TSIntersectionType, c0 as TSKeywordType, c1 as TSLite, c2 as TSLiteMarker, c3 as TSLiteralType, c4 as TSMappedType, c5 as TSPropertySignature, c6 as TSTupleType, c7 as TSType, c8 as TSTypeLiteral, c9 as TSTypeMember, ca as TSTypeOperator, cb as TSTypeParameter, cc as TSTypeQuery, cd as TSTypeReference, ce as TSUnionType, cf as TaggedTemplateExpression, cg as ThisExpression, ch as UnaryOperator, ci as UpdateOperator, cj as expr, ck as fromExprMarker, cl as json, cm as jsonExpression, cn as types } from './index-BIjY0ZP4.cjs';
|
|
3
3
|
|
|
4
4
|
/** Erro lançado pelo `@tslite/core`. */
|
|
5
5
|
type CoreErrorCode = "invalid-expression-entry" | "missing-node-type" | "unknown-node-type";
|
|
@@ -25,7 +25,7 @@ declare const VALID_OBJECT_KEY: RegExp;
|
|
|
25
25
|
*
|
|
26
26
|
* Basicamente: Expressions + Program (para AST completo)
|
|
27
27
|
*/
|
|
28
|
-
declare const VALID_EXPRESSION_ENTRY_TYPES: readonly ["Identifier", "MemberExpression", "CallExpression", "ArrowFunctionExpression", "FunctionExpression", "BinaryExpression", "LogicalExpression", "UnaryExpression", "UpdateExpression", "ConditionalExpression", "AssignmentExpression", "
|
|
28
|
+
declare const VALID_EXPRESSION_ENTRY_TYPES: readonly ["Identifier", "MemberExpression", "CallExpression", "ArrowFunctionExpression", "FunctionExpression", "BinaryExpression", "LogicalExpression", "UnaryExpression", "UpdateExpression", "ConditionalExpression", "AssignmentExpression", "ArrayExpression", "ObjectExpression", "AwaitExpression", "TemplateLiteral", "TaggedTemplateExpression", "SequenceExpression", "ChainExpression", "JSXElement", "JSXFragment", "Program"];
|
|
29
29
|
type ValidExpressionEntryType = (typeof VALID_EXPRESSION_ENTRY_TYPES)[number];
|
|
30
30
|
/**
|
|
31
31
|
* Verifica se um tipo é válido como ponto de entrada #expr
|
|
@@ -79,15 +79,13 @@ declare const VisitorKeys: {
|
|
|
79
79
|
LogicalExpression: string[];
|
|
80
80
|
MemberExpression: string[];
|
|
81
81
|
MetaProperty: string[];
|
|
82
|
-
|
|
82
|
+
Placeholder: never[];
|
|
83
83
|
ModuleSpecifier: never[];
|
|
84
|
-
NewExpression: string[];
|
|
85
84
|
ObjectExpression: string[];
|
|
86
85
|
ObjectPattern: string[];
|
|
87
86
|
PrivateIdentifier: never[];
|
|
88
87
|
Program: string[];
|
|
89
88
|
Property: string[];
|
|
90
|
-
PropertyDefinition: string[];
|
|
91
89
|
RestElement: string[];
|
|
92
90
|
ReturnStatement: string[];
|
|
93
91
|
SequenceExpression: string[];
|
|
@@ -218,7 +216,6 @@ declare const generateBuilders: (prefix?: string) => {
|
|
|
218
216
|
Literal: (n: Literal, _parent: Node) => string;
|
|
219
217
|
LogicalExpression: (n: LogicalExpression, _parent: Node) => string;
|
|
220
218
|
MemberExpression: (n: MemberExpression, _parent: Node) => string;
|
|
221
|
-
NewExpression: (n: NewExpression, _parent: Node) => string;
|
|
222
219
|
ObjectExpression: (n: ObjectExpression, _parent: Node) => string;
|
|
223
220
|
ObjectPattern: (n: ObjectPattern, _parent: Node) => string;
|
|
224
221
|
Program: (n: Program, _parent: Node) => string;
|
|
@@ -255,7 +252,6 @@ declare const isUpdateExpression: (n: any) => n is UpdateExpression;
|
|
|
255
252
|
declare const isMemberExpression: (n: any) => n is MemberExpression;
|
|
256
253
|
declare const isAssignmentExpression: (n: any) => n is AssignmentExpression;
|
|
257
254
|
declare const isAwaitExpression: (n: any) => n is AwaitExpression;
|
|
258
|
-
declare const isNewExpression: (n: any) => n is NewExpression;
|
|
259
255
|
declare const isJsonExpression: (n: any) => n is JsonExpression;
|
|
260
256
|
declare const isExpressionStatement: (n: any) => n is ExpressionStatement;
|
|
261
257
|
declare const isBlockStatement: (n: any) => n is BlockStatement;
|
|
@@ -325,7 +321,6 @@ declare const index_isLiteral: typeof isLiteral;
|
|
|
325
321
|
declare const index_isLogicalExpression: typeof isLogicalExpression;
|
|
326
322
|
declare const index_isMemberExpression: typeof isMemberExpression;
|
|
327
323
|
declare const index_isModuleDeclaration: typeof isModuleDeclaration;
|
|
328
|
-
declare const index_isNewExpression: typeof isNewExpression;
|
|
329
324
|
declare const index_isNode: typeof isNode;
|
|
330
325
|
declare const index_isObjectExpression: typeof isObjectExpression;
|
|
331
326
|
declare const index_isObjectPattern: typeof isObjectPattern;
|
|
@@ -344,7 +339,7 @@ declare const index_isVariableDeclaration: typeof isVariableDeclaration;
|
|
|
344
339
|
declare const index_isVariableDeclarator: typeof isVariableDeclarator;
|
|
345
340
|
declare const index_isWhileStatement: typeof isWhileStatement;
|
|
346
341
|
declare namespace index {
|
|
347
|
-
export { index_isArrayExpression as isArrayExpression, index_isArrayPattern as isArrayPattern, index_isArrowFunctionExpression as isArrowFunctionExpression, index_isAssignmentExpression as isAssignmentExpression, index_isAssignmentProperty as isAssignmentProperty, index_isAwaitExpression as isAwaitExpression, index_isBinaryExpression as isBinaryExpression, index_isBlockStatement as isBlockStatement, index_isBreakStatement as isBreakStatement, index_isCallExpression as isCallExpression, index_isCatchClause as isCatchClause, index_isConditionalExpression as isConditionalExpression, index_isContinueStatement as isContinueStatement, index_isDirective as isDirective, index_isDoWhileStatement as isDoWhileStatement, index_isEmptyStatement as isEmptyStatement, index_isExpressionStatement as isExpressionStatement, index_isForInStatement as isForInStatement, index_isForOfStatement as isForOfStatement, index_isForStatement as isForStatement, index_isFunctionDeclaration as isFunctionDeclaration, index_isFunctionExpression as isFunctionExpression, index_isIdentifier as isIdentifier, index_isIfStatement as isIfStatement, index_isImportDeclaration as isImportDeclaration, index_isImportDefaultSpecifier as isImportDefaultSpecifier, index_isImportNamespaceSpecifier as isImportNamespaceSpecifier, index_isImportSpecifier as isImportSpecifier, index_isJsonExpression as isJsonExpression, index_isLiteral as isLiteral, index_isLogicalExpression as isLogicalExpression, index_isMemberExpression as isMemberExpression, index_isModuleDeclaration as isModuleDeclaration,
|
|
342
|
+
export { index_isArrayExpression as isArrayExpression, index_isArrayPattern as isArrayPattern, index_isArrowFunctionExpression as isArrowFunctionExpression, index_isAssignmentExpression as isAssignmentExpression, index_isAssignmentProperty as isAssignmentProperty, index_isAwaitExpression as isAwaitExpression, index_isBinaryExpression as isBinaryExpression, index_isBlockStatement as isBlockStatement, index_isBreakStatement as isBreakStatement, index_isCallExpression as isCallExpression, index_isCatchClause as isCatchClause, index_isConditionalExpression as isConditionalExpression, index_isContinueStatement as isContinueStatement, index_isDirective as isDirective, index_isDoWhileStatement as isDoWhileStatement, index_isEmptyStatement as isEmptyStatement, index_isExpressionStatement as isExpressionStatement, index_isForInStatement as isForInStatement, index_isForOfStatement as isForOfStatement, index_isForStatement as isForStatement, index_isFunctionDeclaration as isFunctionDeclaration, index_isFunctionExpression as isFunctionExpression, index_isIdentifier as isIdentifier, index_isIfStatement as isIfStatement, index_isImportDeclaration as isImportDeclaration, index_isImportDefaultSpecifier as isImportDefaultSpecifier, index_isImportNamespaceSpecifier as isImportNamespaceSpecifier, index_isImportSpecifier as isImportSpecifier, index_isJsonExpression as isJsonExpression, index_isLiteral as isLiteral, index_isLogicalExpression as isLogicalExpression, index_isMemberExpression as isMemberExpression, index_isModuleDeclaration as isModuleDeclaration, index_isNode as isNode, index_isObjectExpression as isObjectExpression, index_isObjectPattern as isObjectPattern, index_isProgram as isProgram, index_isProperty as isProperty, index_isReturnStatement as isReturnStatement, index_isSwitchCase as isSwitchCase, index_isSwitchStatement as isSwitchStatement, index_isTemplateElement as isTemplateElement, index_isTemplateLiteral as isTemplateLiteral, index_isThrowStatement as isThrowStatement, index_isTryStatement as isTryStatement, index_isUnaryExpression as isUnaryExpression, index_isUpdateExpression as isUpdateExpression, index_isVariableDeclaration as isVariableDeclaration, index_isVariableDeclarator as isVariableDeclarator, index_isWhileStatement as isWhileStatement };
|
|
348
343
|
}
|
|
349
344
|
|
|
350
345
|
type VisitorFunction = (node: BaseNode & {
|
|
@@ -404,4 +399,4 @@ declare function find<T = BaseNode>(node: any, match: (n: any) => boolean): T |
|
|
|
404
399
|
declare function mutate<T = any>(node: T, match: (value: any) => boolean, modifier: (value: any) => any): T;
|
|
405
400
|
declare function pick<T extends object, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>;
|
|
406
401
|
|
|
407
|
-
export { ArrayExpression, ArrayPattern, ArrowFunctionExpression, AssignmentExpression, AssignmentProperty, AwaitExpression, BaseNode, BinaryExpression, BinaryPrecedence, BlockStatement, BreakStatement, CallExpression, CatchClause, ChainExpression, ConditionalExpression, ContinueStatement, type CoreErrorCode, Directive, DoWhileStatement, EmptyStatement, ExpressionStatement, ForInStatement, ForOfStatement, ForStatement, FunctionDeclaration, FunctionExpression, Identifier, IfStatement, ImportDeclaration, ImportDefaultSpecifier, ImportNamespaceSpecifier, ImportSpecifier, JSXElement, JSXFragment, JsonExpression, Literal, LogicalExpression, MemberExpression, Mock, ModuleDeclaration,
|
|
402
|
+
export { ArrayExpression, ArrayPattern, ArrowFunctionExpression, AssignmentExpression, AssignmentProperty, AwaitExpression, BaseNode, BinaryExpression, BinaryPrecedence, BlockStatement, BreakStatement, CallExpression, CatchClause, ChainExpression, ConditionalExpression, ContinueStatement, type CoreErrorCode, Directive, DoWhileStatement, EmptyStatement, ExpressionStatement, ForInStatement, ForOfStatement, ForStatement, FunctionDeclaration, FunctionExpression, Identifier, IfStatement, ImportDeclaration, ImportDefaultSpecifier, ImportNamespaceSpecifier, ImportSpecifier, JSXElement, JSXFragment, JsonExpression, Literal, LogicalExpression, MemberExpression, Mock, ModuleDeclaration, Node, ObjectExpression, ObjectPattern, Precedence, Program, Property, RestElement, ReturnStatement, type Scope, SimpleCallExpression, SpreadElement, SwitchCase, SwitchStatement, TSLiteError, TemplateElement, TemplateLiteral, ThrowStatement, TryStatement, UnaryExpression, UpdateExpression, VALID_EXPRESSION_ENTRY_TYPES, VALID_OBJECT_KEY, type ValidExpressionEntryType, VariableDeclaration, VariableDeclarator, VisitorKeys, WhileStatement, childScope, childrenOf, desugarJSX, find, forEachChild, generateBuilders, index as guards, invalidExpressionEntryError, isObject, isValidExpressionEntryType, lookup, mutate, pick, rootScope, visibleNames, walk };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { B as BaseNode, A as ArrayExpression, N as Node, a as ArrayPattern, b as ArrowFunctionExpression, c as AssignmentExpression, d as AssignmentProperty, e as AwaitExpression, f as BinaryExpression, g as BlockStatement, h as BreakStatement, S as SimpleCallExpression, C as CatchClause, i as ChainExpression, j as ConditionalExpression, k as ContinueStatement, D as DoWhileStatement, E as EmptyStatement, l as ExpressionStatement, F as ForInStatement, m as ForOfStatement, n as ForStatement, o as FunctionDeclaration, p as FunctionExpression, I as Identifier, q as IfStatement, r as ImportDeclaration, s as ImportDefaultSpecifier, t as ImportNamespaceSpecifier, u as ImportSpecifier, J as JsonExpression, L as Literal, v as LogicalExpression, M as MemberExpression,
|
|
2
|
-
export {
|
|
1
|
+
import { B as BaseNode, A as ArrayExpression, N as Node, a as ArrayPattern, b as ArrowFunctionExpression, c as AssignmentExpression, d as AssignmentProperty, e as AwaitExpression, f as BinaryExpression, g as BlockStatement, h as BreakStatement, S as SimpleCallExpression, C as CatchClause, i as ChainExpression, j as ConditionalExpression, k as ContinueStatement, D as DoWhileStatement, E as EmptyStatement, l as ExpressionStatement, F as ForInStatement, m as ForOfStatement, n as ForStatement, o as FunctionDeclaration, p as FunctionExpression, I as Identifier, q as IfStatement, r as ImportDeclaration, s as ImportDefaultSpecifier, t as ImportNamespaceSpecifier, u as ImportSpecifier, J as JsonExpression, L as Literal, v as LogicalExpression, M as MemberExpression, O as ObjectExpression, w as ObjectPattern, P as Program, x as Property, R as ReturnStatement, y as SwitchCase, z as SwitchStatement, T as TemplateElement, G as TemplateLiteral, H as ThrowStatement, K as TryStatement, U as UnaryExpression, Q as UpdateExpression, V as VariableDeclaration, W as VariableDeclarator, X as WhileStatement, Y as SpreadElement, Z as RestElement, _ as Directive, $ as ModuleDeclaration, a0 as JSXElement, a1 as JSXFragment, a2 as CallExpression } from './index-BIjY0ZP4.js';
|
|
2
|
+
export { a3 as AssignmentOperator, a4 as AssignmentPattern, a5 as BaseCallExpression, a6 as BaseDeclaration, a7 as BaseExpression, a8 as BaseForXStatement, a9 as BaseFunction, aa as BaseModuleDeclaration, ab as BaseModuleSpecifier, ac as BaseNodeWithoutComments, ad as BasePattern, ae as BaseStatement, af as BigIntLiteral, ag as BinaryOperator, ah as ChainElement, ai as Comment, aj as DebuggerStatement, ak as Declaration, al as ExportDefaultDeclaration, am as ExportNamedDeclaration, an as ExportSpecifier, ao as Expression, ap as Function, aq as ImportExpression, ar as JSXAttribute, as as JSXChild, at as JSXClosingElement, au as JSXClosingFragment, av as JSXEmptyExpression, aw as JSXExpressionContainer, ax as JSXIdentifier, ay as JSXMemberExpression, az as JSXNamespacedName, aA as JSXOpeningElement, aB as JSXOpeningFragment, aC as JSXSpreadAttribute, aD as JSXTagName, aE as JSXText, aF as LabeledStatement, aG as LogicalOperator, aH as MaybeNamedFunctionDeclaration, aI as MetaProperty, aJ as ModuleSpecifier, aK as NodeMap, aL as Pattern, aM as Placeholder, aN as Position, aO as RegExpLiteral, aP as SequenceExpression, aQ as SimpleArrayExpression, aR as SimpleArrayPattern, aS as SimpleArrowFunctionExpression, aT as SimpleAssignmentExpression, aU as SimpleAssignmentPattern, aV as SimpleAssignmentProperty, aW as SimpleAwaitExpression, aX as SimpleBaseCallExpression, aY as SimpleBaseDeclaration, aZ as SimpleBaseExpression, a_ as SimpleBaseForXStatement, a$ as SimpleBaseFunction, b0 as SimpleBaseNode, b1 as SimpleBaseNodeWithoutComments, b2 as SimpleBasePattern, b3 as SimpleBaseStatement, b4 as SimpleBigIntLiteral, b5 as SimpleBinaryExpression, b6 as SimpleBlockStatement, b7 as SimpleBreakStatement, b8 as SimpleCatchClause, b9 as SimpleChainExpression, ba as SimpleComment, bb as SimpleConditionalExpression, bc as SimpleContinueStatement, bd as SimpleDoWhileStatement, be as SimpleEmptyStatement, bf as SimpleExpressionStatement, bg as SimpleForInStatement, bh as SimpleForOfStatement, bi as SimpleForStatement, bj as SimpleFunctionDeclaration, bk as SimpleFunctionExpression, bl as SimpleIdentifier, bm as SimpleIfStatement, bn as SimpleJsonExpression, bo as SimpleLabeledStatement, bp as SimpleLiteral, bq as SimpleLogicalExpression, br as SimpleMemberExpression, bs as SimpleNode, bt as SimpleObjectExpression, bu as SimpleObjectPattern, bv as SimplePosition, bw as SimpleProgram, bx as SimpleProperty, by as SimpleRegExpLiteral, bz as SimpleRestElement, bA as SimpleReturnStatement, bB as SimpleSequenceExpression, bC as SimpleSimpleCallExpression, bD as SimpleSimpleLiteral, bE as SimpleSourceLocation, bF as SimpleSpreadElement, bG as SimpleSwitchCase, bH as SimpleSwitchStatement, bI as SimpleTemplateElement, bJ as SimpleTemplateLiteral, bK as SimpleThisExpression, bL as SimpleThrowStatement, bM as SimpleTryStatement, bN as SimpleUnaryExpression, bO as SimpleUpdateExpression, bP as SimpleVariableDeclaration, bQ as SimpleVariableDeclarator, bR as SimpleWhileStatement, bS as SourceLocation, bT as Statement, bU as TSArrayType, bV as TSCallSignatureDeclaration, bW as TSConditionalType, bX as TSFunctionType, bY as TSIndexSignature, bZ as TSIndexedAccessType, b_ as TSInferType, b$ as TSIntersectionType, c0 as TSKeywordType, c1 as TSLite, c2 as TSLiteMarker, c3 as TSLiteralType, c4 as TSMappedType, c5 as TSPropertySignature, c6 as TSTupleType, c7 as TSType, c8 as TSTypeLiteral, c9 as TSTypeMember, ca as TSTypeOperator, cb as TSTypeParameter, cc as TSTypeQuery, cd as TSTypeReference, ce as TSUnionType, cf as TaggedTemplateExpression, cg as ThisExpression, ch as UnaryOperator, ci as UpdateOperator, cj as expr, ck as fromExprMarker, cl as json, cm as jsonExpression, cn as types } from './index-BIjY0ZP4.js';
|
|
3
3
|
|
|
4
4
|
/** Erro lançado pelo `@tslite/core`. */
|
|
5
5
|
type CoreErrorCode = "invalid-expression-entry" | "missing-node-type" | "unknown-node-type";
|
|
@@ -25,7 +25,7 @@ declare const VALID_OBJECT_KEY: RegExp;
|
|
|
25
25
|
*
|
|
26
26
|
* Basicamente: Expressions + Program (para AST completo)
|
|
27
27
|
*/
|
|
28
|
-
declare const VALID_EXPRESSION_ENTRY_TYPES: readonly ["Identifier", "MemberExpression", "CallExpression", "ArrowFunctionExpression", "FunctionExpression", "BinaryExpression", "LogicalExpression", "UnaryExpression", "UpdateExpression", "ConditionalExpression", "AssignmentExpression", "
|
|
28
|
+
declare const VALID_EXPRESSION_ENTRY_TYPES: readonly ["Identifier", "MemberExpression", "CallExpression", "ArrowFunctionExpression", "FunctionExpression", "BinaryExpression", "LogicalExpression", "UnaryExpression", "UpdateExpression", "ConditionalExpression", "AssignmentExpression", "ArrayExpression", "ObjectExpression", "AwaitExpression", "TemplateLiteral", "TaggedTemplateExpression", "SequenceExpression", "ChainExpression", "JSXElement", "JSXFragment", "Program"];
|
|
29
29
|
type ValidExpressionEntryType = (typeof VALID_EXPRESSION_ENTRY_TYPES)[number];
|
|
30
30
|
/**
|
|
31
31
|
* Verifica se um tipo é válido como ponto de entrada #expr
|
|
@@ -79,15 +79,13 @@ declare const VisitorKeys: {
|
|
|
79
79
|
LogicalExpression: string[];
|
|
80
80
|
MemberExpression: string[];
|
|
81
81
|
MetaProperty: string[];
|
|
82
|
-
|
|
82
|
+
Placeholder: never[];
|
|
83
83
|
ModuleSpecifier: never[];
|
|
84
|
-
NewExpression: string[];
|
|
85
84
|
ObjectExpression: string[];
|
|
86
85
|
ObjectPattern: string[];
|
|
87
86
|
PrivateIdentifier: never[];
|
|
88
87
|
Program: string[];
|
|
89
88
|
Property: string[];
|
|
90
|
-
PropertyDefinition: string[];
|
|
91
89
|
RestElement: string[];
|
|
92
90
|
ReturnStatement: string[];
|
|
93
91
|
SequenceExpression: string[];
|
|
@@ -218,7 +216,6 @@ declare const generateBuilders: (prefix?: string) => {
|
|
|
218
216
|
Literal: (n: Literal, _parent: Node) => string;
|
|
219
217
|
LogicalExpression: (n: LogicalExpression, _parent: Node) => string;
|
|
220
218
|
MemberExpression: (n: MemberExpression, _parent: Node) => string;
|
|
221
|
-
NewExpression: (n: NewExpression, _parent: Node) => string;
|
|
222
219
|
ObjectExpression: (n: ObjectExpression, _parent: Node) => string;
|
|
223
220
|
ObjectPattern: (n: ObjectPattern, _parent: Node) => string;
|
|
224
221
|
Program: (n: Program, _parent: Node) => string;
|
|
@@ -255,7 +252,6 @@ declare const isUpdateExpression: (n: any) => n is UpdateExpression;
|
|
|
255
252
|
declare const isMemberExpression: (n: any) => n is MemberExpression;
|
|
256
253
|
declare const isAssignmentExpression: (n: any) => n is AssignmentExpression;
|
|
257
254
|
declare const isAwaitExpression: (n: any) => n is AwaitExpression;
|
|
258
|
-
declare const isNewExpression: (n: any) => n is NewExpression;
|
|
259
255
|
declare const isJsonExpression: (n: any) => n is JsonExpression;
|
|
260
256
|
declare const isExpressionStatement: (n: any) => n is ExpressionStatement;
|
|
261
257
|
declare const isBlockStatement: (n: any) => n is BlockStatement;
|
|
@@ -325,7 +321,6 @@ declare const index_isLiteral: typeof isLiteral;
|
|
|
325
321
|
declare const index_isLogicalExpression: typeof isLogicalExpression;
|
|
326
322
|
declare const index_isMemberExpression: typeof isMemberExpression;
|
|
327
323
|
declare const index_isModuleDeclaration: typeof isModuleDeclaration;
|
|
328
|
-
declare const index_isNewExpression: typeof isNewExpression;
|
|
329
324
|
declare const index_isNode: typeof isNode;
|
|
330
325
|
declare const index_isObjectExpression: typeof isObjectExpression;
|
|
331
326
|
declare const index_isObjectPattern: typeof isObjectPattern;
|
|
@@ -344,7 +339,7 @@ declare const index_isVariableDeclaration: typeof isVariableDeclaration;
|
|
|
344
339
|
declare const index_isVariableDeclarator: typeof isVariableDeclarator;
|
|
345
340
|
declare const index_isWhileStatement: typeof isWhileStatement;
|
|
346
341
|
declare namespace index {
|
|
347
|
-
export { index_isArrayExpression as isArrayExpression, index_isArrayPattern as isArrayPattern, index_isArrowFunctionExpression as isArrowFunctionExpression, index_isAssignmentExpression as isAssignmentExpression, index_isAssignmentProperty as isAssignmentProperty, index_isAwaitExpression as isAwaitExpression, index_isBinaryExpression as isBinaryExpression, index_isBlockStatement as isBlockStatement, index_isBreakStatement as isBreakStatement, index_isCallExpression as isCallExpression, index_isCatchClause as isCatchClause, index_isConditionalExpression as isConditionalExpression, index_isContinueStatement as isContinueStatement, index_isDirective as isDirective, index_isDoWhileStatement as isDoWhileStatement, index_isEmptyStatement as isEmptyStatement, index_isExpressionStatement as isExpressionStatement, index_isForInStatement as isForInStatement, index_isForOfStatement as isForOfStatement, index_isForStatement as isForStatement, index_isFunctionDeclaration as isFunctionDeclaration, index_isFunctionExpression as isFunctionExpression, index_isIdentifier as isIdentifier, index_isIfStatement as isIfStatement, index_isImportDeclaration as isImportDeclaration, index_isImportDefaultSpecifier as isImportDefaultSpecifier, index_isImportNamespaceSpecifier as isImportNamespaceSpecifier, index_isImportSpecifier as isImportSpecifier, index_isJsonExpression as isJsonExpression, index_isLiteral as isLiteral, index_isLogicalExpression as isLogicalExpression, index_isMemberExpression as isMemberExpression, index_isModuleDeclaration as isModuleDeclaration,
|
|
342
|
+
export { index_isArrayExpression as isArrayExpression, index_isArrayPattern as isArrayPattern, index_isArrowFunctionExpression as isArrowFunctionExpression, index_isAssignmentExpression as isAssignmentExpression, index_isAssignmentProperty as isAssignmentProperty, index_isAwaitExpression as isAwaitExpression, index_isBinaryExpression as isBinaryExpression, index_isBlockStatement as isBlockStatement, index_isBreakStatement as isBreakStatement, index_isCallExpression as isCallExpression, index_isCatchClause as isCatchClause, index_isConditionalExpression as isConditionalExpression, index_isContinueStatement as isContinueStatement, index_isDirective as isDirective, index_isDoWhileStatement as isDoWhileStatement, index_isEmptyStatement as isEmptyStatement, index_isExpressionStatement as isExpressionStatement, index_isForInStatement as isForInStatement, index_isForOfStatement as isForOfStatement, index_isForStatement as isForStatement, index_isFunctionDeclaration as isFunctionDeclaration, index_isFunctionExpression as isFunctionExpression, index_isIdentifier as isIdentifier, index_isIfStatement as isIfStatement, index_isImportDeclaration as isImportDeclaration, index_isImportDefaultSpecifier as isImportDefaultSpecifier, index_isImportNamespaceSpecifier as isImportNamespaceSpecifier, index_isImportSpecifier as isImportSpecifier, index_isJsonExpression as isJsonExpression, index_isLiteral as isLiteral, index_isLogicalExpression as isLogicalExpression, index_isMemberExpression as isMemberExpression, index_isModuleDeclaration as isModuleDeclaration, index_isNode as isNode, index_isObjectExpression as isObjectExpression, index_isObjectPattern as isObjectPattern, index_isProgram as isProgram, index_isProperty as isProperty, index_isReturnStatement as isReturnStatement, index_isSwitchCase as isSwitchCase, index_isSwitchStatement as isSwitchStatement, index_isTemplateElement as isTemplateElement, index_isTemplateLiteral as isTemplateLiteral, index_isThrowStatement as isThrowStatement, index_isTryStatement as isTryStatement, index_isUnaryExpression as isUnaryExpression, index_isUpdateExpression as isUpdateExpression, index_isVariableDeclaration as isVariableDeclaration, index_isVariableDeclarator as isVariableDeclarator, index_isWhileStatement as isWhileStatement };
|
|
348
343
|
}
|
|
349
344
|
|
|
350
345
|
type VisitorFunction = (node: BaseNode & {
|
|
@@ -404,4 +399,4 @@ declare function find<T = BaseNode>(node: any, match: (n: any) => boolean): T |
|
|
|
404
399
|
declare function mutate<T = any>(node: T, match: (value: any) => boolean, modifier: (value: any) => any): T;
|
|
405
400
|
declare function pick<T extends object, K extends keyof T>(obj: T, keys: K[]): Pick<T, K>;
|
|
406
401
|
|
|
407
|
-
export { ArrayExpression, ArrayPattern, ArrowFunctionExpression, AssignmentExpression, AssignmentProperty, AwaitExpression, BaseNode, BinaryExpression, BinaryPrecedence, BlockStatement, BreakStatement, CallExpression, CatchClause, ChainExpression, ConditionalExpression, ContinueStatement, type CoreErrorCode, Directive, DoWhileStatement, EmptyStatement, ExpressionStatement, ForInStatement, ForOfStatement, ForStatement, FunctionDeclaration, FunctionExpression, Identifier, IfStatement, ImportDeclaration, ImportDefaultSpecifier, ImportNamespaceSpecifier, ImportSpecifier, JSXElement, JSXFragment, JsonExpression, Literal, LogicalExpression, MemberExpression, Mock, ModuleDeclaration,
|
|
402
|
+
export { ArrayExpression, ArrayPattern, ArrowFunctionExpression, AssignmentExpression, AssignmentProperty, AwaitExpression, BaseNode, BinaryExpression, BinaryPrecedence, BlockStatement, BreakStatement, CallExpression, CatchClause, ChainExpression, ConditionalExpression, ContinueStatement, type CoreErrorCode, Directive, DoWhileStatement, EmptyStatement, ExpressionStatement, ForInStatement, ForOfStatement, ForStatement, FunctionDeclaration, FunctionExpression, Identifier, IfStatement, ImportDeclaration, ImportDefaultSpecifier, ImportNamespaceSpecifier, ImportSpecifier, JSXElement, JSXFragment, JsonExpression, Literal, LogicalExpression, MemberExpression, Mock, ModuleDeclaration, Node, ObjectExpression, ObjectPattern, Precedence, Program, Property, RestElement, ReturnStatement, type Scope, SimpleCallExpression, SpreadElement, SwitchCase, SwitchStatement, TSLiteError, TemplateElement, TemplateLiteral, ThrowStatement, TryStatement, UnaryExpression, UpdateExpression, VALID_EXPRESSION_ENTRY_TYPES, VALID_OBJECT_KEY, type ValidExpressionEntryType, VariableDeclaration, VariableDeclarator, VisitorKeys, WhileStatement, childScope, childrenOf, desugarJSX, find, forEachChild, generateBuilders, index as guards, invalidExpressionEntryError, isObject, isValidExpressionEntryType, lookup, mutate, pick, rootScope, visibleNames, walk };
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import {a,g,l,r,b,Ba,m,t,o as o$1,q,p}from'./chunk-ZEL34C7U.js';export{i as BinaryPrecedence,h as Precedence,b as TSLiteError,d as VALID_EXPRESSION_ENTRY_TYPES,c as VALID_OBJECT_KEY,g as VisitorKeys,j as expr,k as fromExprMarker,f as invalidExpressionEntryError,e as isValidExpressionEntryType,Aa as json,ea as jsonExpression}from'./chunk-ZEL34C7U.js';var Z=(e="b")=>{class s{constructor(n){this.text=n;}}let a=(t,n)=>{if(typeof t!="object")return typeof t=="string"?`"${t}"`:typeof t=="bigint"?`${t}n`:String(t);if(!t)return "null";if(t instanceof RegExp)return t;if(Array.isArray(t))return `[${t.map(m=>a(m,n)).join(", ")}]`;if(!t.type)return t instanceof s?t.text:`${e}.jsonExpression(${JSON.stringify(t)})`;if(t.type in l)return l[t.type](t,n);throw new b("unknown-node-type","Unknown type: "+t.type,{type:t.type})},p=t=>`(${e}) => ${a(t)}`,i=t=>new Function("b",`return ${t}`)(Ba),r=(t,n,...m)=>{let d=[],A=false;return m.reverse().forEach(T=>{T===void 0?A&&d.push("false"):(d.push(a(T,t)),A=true);}),`${e}.${n}(${d.reverse().join(", ")})`},l={ArrayExpression:(t,n)=>r(t,"arrayExpression",t.elements),ArrayPattern:(t,n)=>r(t,"arrayPattern",t.elements),ArrowFunctionExpression:(t,n)=>r(t,"arrowFunctionExpression",t.params,t.body,t.async||void 0),AssignmentExpression:(t,n)=>r(t,"assignmentExpression",t.operator,t.left,t.right),AssignmentProperty:(t,n)=>r(t,"assignmentProperty",t.key,t.value||void 0,t.shorthand||void 0),AwaitExpression:(t,n)=>r(t,"awaitExpression",t.argument),BinaryExpression:(t,n)=>r(t,"binaryExpression",t.operator,t.left,t.right),BlockStatement:(t,n)=>r(t,"blockStatement",t.body),BreakStatement:(t,n)=>t.label?r(t,"breakStatement",t.label):r(t,"breakStatement"),CallExpression:(t,n)=>r(t,"callExpression",t.callee,t.arguments,t.optional||void 0),CatchClause:(t,n)=>r(t,"catchClause",t.param,t.body),ChainExpression:(t,n)=>r(t,"chainExpression",t.expression),ConditionalExpression:(t,n)=>r(t,"conditionalExpression",t.test,t.consequent,t.alternate),ContinueStatement:(t,n)=>r(t,"continueStatement",t.label),DoWhileStatement:(t,n)=>r(t,"doWhileStatement",t.body,t.test),EmptyStatement:(t,n)=>r(t,"emptyStatement"),ExpressionStatement:(t,n)=>r(t,"expressionStatement",t.expression),ForInStatement:(t,n)=>r(t,"forInStatement",t.left,t.right,t.body),ForOfStatement:(t,n)=>r(t,"forOfStatement",t.left,t.right,t.body),ForStatement:(t,n)=>r(t,"forStatement",t.init,t.test,t.update,t.body),FunctionDeclaration:(t,n)=>r(t,"functionDeclaration",t.id,t.params,t.body,t.generator||void 0,t.async||void 0),FunctionExpression:(t,n)=>r(t,"functionExpression",t.id||null,t.params,t.body,t.generator||void 0,t.async||void 0),Identifier:(t,n)=>r(t,"identifier",t.name),IfStatement:(t,n)=>r(t,"ifStatement",t.test,t.consequent,t.alternate),ImportDeclaration:(t,n)=>r(t,"importDeclaration",t.specifiers,t.source),ImportDefaultSpecifier:(t,n)=>r(t,"importDefaultSpecifier",t.local),ImportNamespaceSpecifier:(t,n)=>r(t,"importNamespaceSpecifier",t.local),ImportSpecifier:(t,n)=>r(t,"importSpecifier",t.imported,t.local),JsonExpression:(t,n)=>r(t,"jsonExpression",JSON.stringify(t.body)),Literal:(t,n)=>r(t,"literal",t.value),LogicalExpression:(t,n)=>r(t,"logicalExpression",t.operator,t.left,t.right),MemberExpression:(t,n)=>r(t,"memberExpression",t.object,t.property,t.computed||void 0,t.optional||void 0),NewExpression:(t,n)=>r(t,"newExpression",t.callee,t.arguments),ObjectExpression:(t,n)=>r(t,"objectExpression",t.properties),ObjectPattern:(t,n)=>r(t,"objectPattern",t.properties),Program:(t,n)=>r(t,"program",t.body),Property:(t,n)=>{if(n.type==="ObjectPattern")return r(t,"assignmentProperty",t.key,t.value,t.shorthand||void 0);if(n.type==="ObjectExpression")return r(t,"property",t.key,t.value,t.shorthand||void 0,t.computed||void 0)},ReturnStatement:(t,n)=>r(t,"returnStatement",t.argument),SwitchCase:(t,n)=>r(t,"switchCase",t.test,t.consequent),SwitchStatement:(t,n)=>r(t,"switchStatement",t.discriminant,t.cases),TemplateElement:(t,n)=>t.tail?r(t,"templateElement",new s(JSON.stringify(t.value)),true):r(t,"templateElement",new s(JSON.stringify(t.value))),TemplateLiteral:(t,n)=>r(t,"templateLiteral",t.quasis,t.expressions),ThrowStatement:(t,n)=>r(t,"throwStatement",t.argument),TryStatement:(t,n)=>r(t,"tryStatement",t.block,t.handler,t.finalizer),UnaryExpression:(t,n)=>r(t,"unaryExpression",t.operator,t.argument),UpdateExpression:(t,n)=>t.prefix==true?r(t,"updateExpression",t.operator,t.argument,true):r(t,"updateExpression",t.operator,t.argument),VariableDeclaration:(t,n)=>r(t,"variableDeclaration",t.kind,t.declarations),VariableDeclarator:(t,n)=>r(t,"variableDeclarator",t.id,t.init||void 0),WhileStatement:(t,n)=>r(t,"whileStatement",t.test,t.body),SpreadElement:(t,n)=>r(t,"spreadElement",t.argument),RestElement:(t,n)=>r(t,"restElement",t.argument)};return {build:a,buildFunction:p,safeEval:i,builders:l}};var I={};a(I,{isArrayExpression:()=>pe,isArrayPattern:()=>De,isArrowFunctionExpression:()=>se,isAssignmentExpression:()=>fe,isAssignmentProperty:()=>ze,isAwaitExpression:()=>xe,isBinaryExpression:()=>ne,isBlockStatement:()=>be,isBreakStatement:()=>Te,isCallExpression:()=>ie,isCatchClause:()=>Ve,isConditionalExpression:()=>ce,isContinueStatement:()=>Ne,isDirective:()=>Ye,isDoWhileStatement:()=>Le,isEmptyStatement:()=>he,isExpressionStatement:()=>Ee,isForInStatement:()=>Be,isForOfStatement:()=>Je,isForStatement:()=>je,isFunctionDeclaration:()=>Ce,isFunctionExpression:()=>oe,isIdentifier:()=>re,isIfStatement:()=>Ae,isImportDeclaration:()=>Me,isImportDefaultSpecifier:()=>Ue,isImportNamespaceSpecifier:()=>Ke,isImportSpecifier:()=>We,isJsonExpression:()=>Se,isLiteral:()=>te,isLogicalExpression:()=>le,isMemberExpression:()=>ue,isModuleDeclaration:()=>qe,isNewExpression:()=>de,isNode:()=>Ge,isObjectExpression:()=>ae,isObjectPattern:()=>_e,isProgram:()=>Pe,isProperty:()=>F,isReturnStatement:()=>ge,isSwitchCase:()=>Ie,isSwitchStatement:()=>Fe,isTemplateElement:()=>$e,isTemplateLiteral:()=>ve,isThrowStatement:()=>Re,isTryStatement:()=>Xe,isUnaryExpression:()=>ye,isUpdateExpression:()=>me,isVariableDeclaration:()=>ke,isVariableDeclarator:()=>we,isWhileStatement:()=>Oe});var _=e=>typeof e=="object"&&e!==null&&typeof e.type=="string",H=g;function f(e,s){let a=H[e.type],p=e,i=(r,l)=>{if(r!=null)if(Array.isArray(r))for(let t=0;t<r.length;t++)_(r[t])&&s(r[t],l,t);else _(r)&&s(r,l,null);};if(a){for(let r of a)i(p[r],r);return}for(let r in p)Object.prototype.hasOwnProperty.call(p,r)&&i(p[r],r);}function D(e){let s=[];return f(e,a=>s.push(a)),s}function x(e,s){let a=false;function p(i,r){if(!i||a)return;let l=s[i.type]??s["*"],t=false;if(l){let n=l(i,r);if(n===false&&(t=true),n==="break"){a=true;return}}t||f(i,n=>{a||p(n,i);});}p(e,null);}var Q=new Proxy({fn:{}},{get(e,s){return {type:"Identifier",name:s}}}),o=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function C(e,s){let a;return x(e,{"*":p=>{if(s(p))return a=p,"break"}}),a}function P(e,s,a){let p=i=>{if(s(i))return a(i);if(Array.isArray(i)){let r=false,l=i.map(t=>{let n=p(t);return n!==t&&(r=true),n});return r?l:i}if(o(i)){let r=false,l={};for(let t in i){let n=i[t],m=p(n);l[t]=m,m!==n&&(r=true);}return r?l:i}return i};return p(e)}function ee(e,s){let a={};return s.forEach(p=>{p in e&&(a[p]=e[p]);}),a}var te=e=>e?.type==="Literal"&&"value"in e,re=e=>e?.type==="Identifier"&&typeof e.name=="string",ne=e=>e?.type==="BinaryExpression"&&o(e.left)&&o(e.right)&&typeof e.operator=="string",se=e=>e?.type==="ArrowFunctionExpression"&&o(e.body),oe=e=>e?.type==="FunctionExpression"&&o(e.body),ie=e=>e?.type==="CallExpression"&&o(e.callee)&&Array.isArray(e.arguments),ae=e=>e?.type==="ObjectExpression"&&Array.isArray(e.properties),pe=e=>e?.type==="ArrayExpression"&&Array.isArray(e.elements),ce=e=>e?.type==="ConditionalExpression"&&o(e.test)&&o(e.consequent)&&o(e.alternate),le=e=>e?.type==="LogicalExpression"&&o(e.left)&&o(e.right)&&typeof e.operator=="string",ye=e=>e?.type==="UnaryExpression"&&typeof e.operator=="string"&&o(e.argument),me=e=>e?.type==="UpdateExpression"&&typeof e.operator=="string"&&o(e.argument),ue=e=>e?.type==="MemberExpression"&&o(e.object)&&o(e.property),fe=e=>e?.type==="AssignmentExpression"&&o(e.left)&&o(e.right)&&typeof e.operator=="string",xe=e=>e?.type==="AwaitExpression"&&"argument"in e,de=e=>e?.type==="NewExpression"&&o(e.callee)&&Array.isArray(e.arguments),Se=e=>e?.type==="JsonExpression"&&o(e.body),Ee=e=>e?.type==="ExpressionStatement"&&o(e.expression),be=e=>e?.type==="BlockStatement"&&Array.isArray(e.body),ge=e=>e?.type==="ReturnStatement",Ae=e=>e?.type==="IfStatement"&&o(e.test)&&o(e.consequent),Te=e=>e?.type==="BreakStatement",Ne=e=>e?.type==="ContinueStatement",he=e=>e?.type==="EmptyStatement",we=e=>e?.type==="VariableDeclarator"&&o(e.id),ke=e=>e?.type==="VariableDeclaration"&&Array.isArray(e.declarations),_e=e=>e?.type==="ObjectPattern"&&Array.isArray(e.properties),De=e=>e?.type==="ArrayPattern"&&Array.isArray(e.elements),Ce=e=>e?.type==="FunctionDeclaration"&&o(e.id)&&o(e.body),Pe=e=>e?.type==="Program"&&Array.isArray(e.body),Fe=e=>e?.type==="SwitchStatement"&&o(e.discriminant)&&Array.isArray(e.cases),Ie=e=>e?.type==="SwitchCase"&&Array.isArray(e.consequent),Oe=e=>e?.type==="WhileStatement"&&o(e.test)&&o(e.body),je=e=>e?.type==="ForStatement"&&"body"in e,Be=e=>e?.type==="ForInStatement"&&o(e.left)&&o(e.right)&&o(e.body),Je=e=>e?.type==="ForOfStatement"&&o(e.left)&&o(e.right)&&o(e.body),Le=e=>e?.type==="DoWhileStatement"&&o(e.body)&&o(e.test),Xe=e=>e?.type==="TryStatement"&&o(e.block),Ve=e=>e?.type==="CatchClause"&&o(e.body),Re=e=>e?.type==="ThrowStatement"&&o(e.argument),$e=e=>e?.type==="TemplateElement"&&o(e.value),ve=e=>e?.type==="TemplateLiteral"&&Array.isArray(e.quasis)&&Array.isArray(e.expressions),Me=e=>e?.type==="ImportDeclaration"&&Array.isArray(e.specifiers)&&o(e.source),We=e=>e?.type==="ImportSpecifier"&&o(e.imported)&&o(e.local),Ue=e=>e?.type==="ImportDefaultSpecifier"&&o(e.local),Ke=e=>e?.type==="ImportNamespaceSpecifier"&&o(e.local),qe=e=>e?.type==="ModuleDeclaration",Ye=e=>e?.type==="Directive",F=e=>e?.type==="Property"&&o(e.key)&&o(e.value),ze=e=>F(e),Ge=e=>typeof e?.type=="string";var Ze="createElement",He="Fragment";function c(e,s){return s.start!==void 0&&(e.start=s.start),s.end!==void 0&&(e.end=s.end),s.loc!==void 0&&(e.loc=s.loc),s.range!==void 0&&(e.range=s.range),e}var Qe=e=>/^[a-zA-Z_$][\w$]*$/.test(e);function O(e){return e.type==="JSXIdentifier"?c(/^[a-z]/.test(e.name)||e.name.includes("-")?m(e.name):l(e.name),e):e.type==="JSXNamespacedName"?c(m(`${e.namespace.name}:${e.name.name}`),e):c(t(O(e.object),c(l(e.property.name),e.property)),e)}function et(e){return e.type==="JSXNamespacedName"?c(m(`${e.namespace.name}:${e.name.name}`),e):c(Qe(e.name)?l(e.name):m(e.name),e)}function tt(e,s){return e===null?c(m(true),s):e.type==="JSXExpressionContainer"?e.expression:e}var j=(e,s)=>c(s.emptyPropsAsObject?o$1([]):m(null),e);function rt(e,s,a){if(e.length===0)return j(s,a);let p$1=e.map(i=>i.type==="JSXSpreadAttribute"?c(q(i.argument),i):c(p(et(i.name),tt(i.value,i)),i));return c(o$1(p$1),s)}function nt(e){let s=e.split(/\r\n|\n|\r/),a=-1;for(let i=0;i<s.length;i++)/[^ \t]/.test(s[i])&&(a=i);let p="";for(let i=0;i<s.length;i++){let r=s[i].replace(/\t/g," ");i!==0&&(r=r.replace(/^ +/,"")),i!==s.length-1&&(r=r.replace(/ +$/,"")),r&&(i!==a&&(r+=" "),p+=r);}return p===""?null:p}function st(e){if(e.type==="JSXText"){let s=nt(e.value);return s===null?null:c(m(s),e)}return e.type==="JSXExpressionContainer"?e.expression.type==="JSXEmptyExpression"?null:e.expression:e}function B(e,s={}){let a=e.type==="JSXFragment"?c(l(He),e.openingFragment):O(e.openingElement.name),p=e.type==="JSXFragment"?j(e.openingFragment,s):rt(e.openingElement.attributes,e.openingElement,s),i=e.children.map(st).filter(r=>r!==null);return c(r(c(l(Ze),e),[a,p,...i]),e)}var J=(e={})=>({vars:e,parent:null}),L=(e,s)=>({vars:s,parent:e});function X(e,s){for(let a=e;a;a=a.parent)if(Object.prototype.hasOwnProperty.call(a.vars,s))return a.vars[s]}function V(e){let s=new Map;for(let a=e;a;a=a.parent)for(let p of Object.keys(a.vars))s.has(p)||s.set(p,a.vars[p]);return s}export{Q as Mock,L as childScope,D as childrenOf,B as desugarJSX,C as find,f as forEachChild,Z as generateBuilders,I as guards,o as isObject,X as lookup,P as mutate,ee as pick,J as rootScope,V as visibleNames,x as walk};
|
|
1
|
+
import {a,g,l,s,b,Ba,n,t,p,r,q}from'./chunk-I6B6IL4S.js';export{i as BinaryPrecedence,h as Precedence,b as TSLiteError,d as VALID_EXPRESSION_ENTRY_TYPES,c as VALID_OBJECT_KEY,g as VisitorKeys,j as expr,k as fromExprMarker,f as invalidExpressionEntryError,e as isValidExpressionEntryType,Aa as json,ea as jsonExpression}from'./chunk-I6B6IL4S.js';var Z=(e="b")=>{class s{constructor(n){this.text=n;}}let a=(t,n)=>{if(typeof t!="object")return typeof t=="string"?`"${t}"`:typeof t=="bigint"?`${t}n`:String(t);if(!t)return "null";if(t instanceof RegExp)return t;if(Array.isArray(t))return `[${t.map(m=>a(m,n)).join(", ")}]`;if(!t.type)return t instanceof s?t.text:`${e}.jsonExpression(${JSON.stringify(t)})`;if(t.type in l)return l[t.type](t,n);throw new b("unknown-node-type","Unknown type: "+t.type,{type:t.type})},p=t=>`(${e}) => ${a(t)}`,i=t=>new Function("b",`return ${t}`)(Ba),r=(t,n,...m)=>{let d=[],A=false;return m.reverse().forEach(T=>{T===void 0?A&&d.push("false"):(d.push(a(T,t)),A=true);}),`${e}.${n}(${d.reverse().join(", ")})`},l={ArrayExpression:(t,n)=>r(t,"arrayExpression",t.elements),ArrayPattern:(t,n)=>r(t,"arrayPattern",t.elements),ArrowFunctionExpression:(t,n)=>r(t,"arrowFunctionExpression",t.params,t.body,t.async||void 0),AssignmentExpression:(t,n)=>r(t,"assignmentExpression",t.operator,t.left,t.right),AssignmentProperty:(t,n)=>r(t,"assignmentProperty",t.key,t.value||void 0,t.shorthand||void 0),AwaitExpression:(t,n)=>r(t,"awaitExpression",t.argument),BinaryExpression:(t,n)=>r(t,"binaryExpression",t.operator,t.left,t.right),BlockStatement:(t,n)=>r(t,"blockStatement",t.body),BreakStatement:(t,n)=>t.label?r(t,"breakStatement",t.label):r(t,"breakStatement"),CallExpression:(t,n)=>r(t,"callExpression",t.callee,t.arguments,t.optional||void 0),CatchClause:(t,n)=>r(t,"catchClause",t.param,t.body),ChainExpression:(t,n)=>r(t,"chainExpression",t.expression),ConditionalExpression:(t,n)=>r(t,"conditionalExpression",t.test,t.consequent,t.alternate),ContinueStatement:(t,n)=>r(t,"continueStatement",t.label),DoWhileStatement:(t,n)=>r(t,"doWhileStatement",t.body,t.test),EmptyStatement:(t,n)=>r(t,"emptyStatement"),ExpressionStatement:(t,n)=>r(t,"expressionStatement",t.expression),ForInStatement:(t,n)=>r(t,"forInStatement",t.left,t.right,t.body),ForOfStatement:(t,n)=>r(t,"forOfStatement",t.left,t.right,t.body),ForStatement:(t,n)=>r(t,"forStatement",t.init,t.test,t.update,t.body),FunctionDeclaration:(t,n)=>r(t,"functionDeclaration",t.id,t.params,t.body,t.generator||void 0,t.async||void 0),FunctionExpression:(t,n)=>r(t,"functionExpression",t.id||null,t.params,t.body,t.generator||void 0,t.async||void 0),Identifier:(t,n)=>r(t,"identifier",t.name),IfStatement:(t,n)=>r(t,"ifStatement",t.test,t.consequent,t.alternate),ImportDeclaration:(t,n)=>r(t,"importDeclaration",t.specifiers,t.source),ImportDefaultSpecifier:(t,n)=>r(t,"importDefaultSpecifier",t.local),ImportNamespaceSpecifier:(t,n)=>r(t,"importNamespaceSpecifier",t.local),ImportSpecifier:(t,n)=>r(t,"importSpecifier",t.imported,t.local),JsonExpression:(t,n)=>r(t,"jsonExpression",JSON.stringify(t.body)),Literal:(t,n)=>r(t,"literal",t.value),LogicalExpression:(t,n)=>r(t,"logicalExpression",t.operator,t.left,t.right),MemberExpression:(t,n)=>r(t,"memberExpression",t.object,t.property,t.computed||void 0,t.optional||void 0),ObjectExpression:(t,n)=>r(t,"objectExpression",t.properties),ObjectPattern:(t,n)=>r(t,"objectPattern",t.properties),Program:(t,n)=>r(t,"program",t.body),Property:(t,n)=>{if(n.type==="ObjectPattern")return r(t,"assignmentProperty",t.key,t.value,t.shorthand||void 0);if(n.type==="ObjectExpression")return r(t,"property",t.key,t.value,t.shorthand||void 0,t.computed||void 0)},ReturnStatement:(t,n)=>r(t,"returnStatement",t.argument),SwitchCase:(t,n)=>r(t,"switchCase",t.test,t.consequent),SwitchStatement:(t,n)=>r(t,"switchStatement",t.discriminant,t.cases),TemplateElement:(t,n)=>t.tail?r(t,"templateElement",new s(JSON.stringify(t.value)),true):r(t,"templateElement",new s(JSON.stringify(t.value))),TemplateLiteral:(t,n)=>r(t,"templateLiteral",t.quasis,t.expressions),ThrowStatement:(t,n)=>r(t,"throwStatement",t.argument),TryStatement:(t,n)=>r(t,"tryStatement",t.block,t.handler,t.finalizer),UnaryExpression:(t,n)=>r(t,"unaryExpression",t.operator,t.argument),UpdateExpression:(t,n)=>t.prefix==true?r(t,"updateExpression",t.operator,t.argument,true):r(t,"updateExpression",t.operator,t.argument),VariableDeclaration:(t,n)=>r(t,"variableDeclaration",t.kind,t.declarations),VariableDeclarator:(t,n)=>r(t,"variableDeclarator",t.id,t.init||void 0),WhileStatement:(t,n)=>r(t,"whileStatement",t.test,t.body),SpreadElement:(t,n)=>r(t,"spreadElement",t.argument),RestElement:(t,n)=>r(t,"restElement",t.argument)};return {build:a,buildFunction:p,safeEval:i,builders:l}};var I={};a(I,{isArrayExpression:()=>pe,isArrayPattern:()=>_e,isArrowFunctionExpression:()=>se,isAssignmentExpression:()=>fe,isAssignmentProperty:()=>Ye,isAwaitExpression:()=>xe,isBinaryExpression:()=>ne,isBlockStatement:()=>Ee,isBreakStatement:()=>Ae,isCallExpression:()=>ie,isCatchClause:()=>Xe,isConditionalExpression:()=>ce,isContinueStatement:()=>Te,isDirective:()=>qe,isDoWhileStatement:()=>Je,isEmptyStatement:()=>Ne,isExpressionStatement:()=>Se,isForInStatement:()=>je,isForOfStatement:()=>Be,isForStatement:()=>Oe,isFunctionDeclaration:()=>De,isFunctionExpression:()=>oe,isIdentifier:()=>re,isIfStatement:()=>ge,isImportDeclaration:()=>ve,isImportDefaultSpecifier:()=>We,isImportNamespaceSpecifier:()=>Ue,isImportSpecifier:()=>Me,isJsonExpression:()=>de,isLiteral:()=>te,isLogicalExpression:()=>le,isMemberExpression:()=>ue,isModuleDeclaration:()=>Ke,isNode:()=>ze,isObjectExpression:()=>ae,isObjectPattern:()=>ke,isProgram:()=>Ce,isProperty:()=>F,isReturnStatement:()=>be,isSwitchCase:()=>Fe,isSwitchStatement:()=>Pe,isTemplateElement:()=>Re,isTemplateLiteral:()=>$e,isThrowStatement:()=>Ve,isTryStatement:()=>Le,isUnaryExpression:()=>ye,isUpdateExpression:()=>me,isVariableDeclaration:()=>we,isVariableDeclarator:()=>he,isWhileStatement:()=>Ie});var _=e=>typeof e=="object"&&e!==null&&typeof e.type=="string",H=g;function f(e,s){let a=H[e.type],p=e,i=(r,l)=>{if(r!=null)if(Array.isArray(r))for(let t=0;t<r.length;t++)_(r[t])&&s(r[t],l,t);else _(r)&&s(r,l,null);};if(a){for(let r of a)i(p[r],r);return}for(let r in p)Object.prototype.hasOwnProperty.call(p,r)&&i(p[r],r);}function D(e){let s=[];return f(e,a=>s.push(a)),s}function x(e,s){let a=false;function p(i,r){if(!i||a)return;let l=s[i.type]??s["*"],t=false;if(l){let n=l(i,r);if(n===false&&(t=true),n==="break"){a=true;return}}t||f(i,n=>{a||p(n,i);});}p(e,null);}var Q=new Proxy({fn:{}},{get(e,s){return {type:"Identifier",name:s}}}),o=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function C(e,s){let a;return x(e,{"*":p=>{if(s(p))return a=p,"break"}}),a}function P(e,s,a){let p=i=>{if(s(i))return a(i);if(Array.isArray(i)){let r=false,l=i.map(t=>{let n=p(t);return n!==t&&(r=true),n});return r?l:i}if(o(i)){let r=false,l={};for(let t in i){let n=i[t],m=p(n);l[t]=m,m!==n&&(r=true);}return r?l:i}return i};return p(e)}function ee(e,s){let a={};return s.forEach(p=>{p in e&&(a[p]=e[p]);}),a}var te=e=>e?.type==="Literal"&&"value"in e,re=e=>e?.type==="Identifier"&&typeof e.name=="string",ne=e=>e?.type==="BinaryExpression"&&o(e.left)&&o(e.right)&&typeof e.operator=="string",se=e=>e?.type==="ArrowFunctionExpression"&&o(e.body),oe=e=>e?.type==="FunctionExpression"&&o(e.body),ie=e=>e?.type==="CallExpression"&&o(e.callee)&&Array.isArray(e.arguments),ae=e=>e?.type==="ObjectExpression"&&Array.isArray(e.properties),pe=e=>e?.type==="ArrayExpression"&&Array.isArray(e.elements),ce=e=>e?.type==="ConditionalExpression"&&o(e.test)&&o(e.consequent)&&o(e.alternate),le=e=>e?.type==="LogicalExpression"&&o(e.left)&&o(e.right)&&typeof e.operator=="string",ye=e=>e?.type==="UnaryExpression"&&typeof e.operator=="string"&&o(e.argument),me=e=>e?.type==="UpdateExpression"&&typeof e.operator=="string"&&o(e.argument),ue=e=>e?.type==="MemberExpression"&&o(e.object)&&o(e.property),fe=e=>e?.type==="AssignmentExpression"&&o(e.left)&&o(e.right)&&typeof e.operator=="string",xe=e=>e?.type==="AwaitExpression"&&"argument"in e,de=e=>e?.type==="JsonExpression"&&o(e.body),Se=e=>e?.type==="ExpressionStatement"&&o(e.expression),Ee=e=>e?.type==="BlockStatement"&&Array.isArray(e.body),be=e=>e?.type==="ReturnStatement",ge=e=>e?.type==="IfStatement"&&o(e.test)&&o(e.consequent),Ae=e=>e?.type==="BreakStatement",Te=e=>e?.type==="ContinueStatement",Ne=e=>e?.type==="EmptyStatement",he=e=>e?.type==="VariableDeclarator"&&o(e.id),we=e=>e?.type==="VariableDeclaration"&&Array.isArray(e.declarations),ke=e=>e?.type==="ObjectPattern"&&Array.isArray(e.properties),_e=e=>e?.type==="ArrayPattern"&&Array.isArray(e.elements),De=e=>e?.type==="FunctionDeclaration"&&o(e.id)&&o(e.body),Ce=e=>e?.type==="Program"&&Array.isArray(e.body),Pe=e=>e?.type==="SwitchStatement"&&o(e.discriminant)&&Array.isArray(e.cases),Fe=e=>e?.type==="SwitchCase"&&Array.isArray(e.consequent),Ie=e=>e?.type==="WhileStatement"&&o(e.test)&&o(e.body),Oe=e=>e?.type==="ForStatement"&&"body"in e,je=e=>e?.type==="ForInStatement"&&o(e.left)&&o(e.right)&&o(e.body),Be=e=>e?.type==="ForOfStatement"&&o(e.left)&&o(e.right)&&o(e.body),Je=e=>e?.type==="DoWhileStatement"&&o(e.body)&&o(e.test),Le=e=>e?.type==="TryStatement"&&o(e.block),Xe=e=>e?.type==="CatchClause"&&o(e.body),Ve=e=>e?.type==="ThrowStatement"&&o(e.argument),Re=e=>e?.type==="TemplateElement"&&o(e.value),$e=e=>e?.type==="TemplateLiteral"&&Array.isArray(e.quasis)&&Array.isArray(e.expressions),ve=e=>e?.type==="ImportDeclaration"&&Array.isArray(e.specifiers)&&o(e.source),Me=e=>e?.type==="ImportSpecifier"&&o(e.imported)&&o(e.local),We=e=>e?.type==="ImportDefaultSpecifier"&&o(e.local),Ue=e=>e?.type==="ImportNamespaceSpecifier"&&o(e.local),Ke=e=>e?.type==="ModuleDeclaration",qe=e=>e?.type==="Directive",F=e=>e?.type==="Property"&&o(e.key)&&o(e.value),Ye=e=>F(e),ze=e=>typeof e?.type=="string";var Ge="createElement",Ze="Fragment";function c(e,s){return s.start!==void 0&&(e.start=s.start),s.end!==void 0&&(e.end=s.end),s.loc!==void 0&&(e.loc=s.loc),s.range!==void 0&&(e.range=s.range),e}var He=e=>/^[a-zA-Z_$][\w$]*$/.test(e);function O(e){return e.type==="JSXIdentifier"?c(/^[a-z]/.test(e.name)||e.name.includes("-")?n(e.name):l(e.name),e):e.type==="JSXNamespacedName"?c(n(`${e.namespace.name}:${e.name.name}`),e):c(t(O(e.object),c(l(e.property.name),e.property)),e)}function Qe(e){return e.type==="JSXNamespacedName"?c(n(`${e.namespace.name}:${e.name.name}`),e):c(He(e.name)?l(e.name):n(e.name),e)}function et(e,s){return e===null?c(n(true),s):e.type==="JSXExpressionContainer"?e.expression:e}var j=(e,s)=>c(s.emptyPropsAsObject?p([]):n(null),e);function tt(e,s,a){if(e.length===0)return j(s,a);let p$1=e.map(i=>i.type==="JSXSpreadAttribute"?c(r(i.argument),i):c(q(Qe(i.name),et(i.value,i)),i));return c(p(p$1),s)}function rt(e){let s=e.split(/\r\n|\n|\r/),a=-1;for(let i=0;i<s.length;i++)/[^ \t]/.test(s[i])&&(a=i);let p="";for(let i=0;i<s.length;i++){let r=s[i].replace(/\t/g," ");i!==0&&(r=r.replace(/^ +/,"")),i!==s.length-1&&(r=r.replace(/ +$/,"")),r&&(i!==a&&(r+=" "),p+=r);}return p===""?null:p}function nt(e){if(e.type==="JSXText"){let s=rt(e.value);return s===null?null:c(n(s),e)}return e.type==="JSXExpressionContainer"?e.expression.type==="JSXEmptyExpression"?null:e.expression:e}function B(e,s$1={}){let a=e.type==="JSXFragment"?c(l(Ze),e.openingFragment):O(e.openingElement.name),p=e.type==="JSXFragment"?j(e.openingFragment,s$1):tt(e.openingElement.attributes,e.openingElement,s$1),i=e.children.map(nt).filter(r=>r!==null);return c(s(c(l(Ge),e),[a,p,...i]),e)}var J=(e={})=>({vars:e,parent:null}),L=(e,s)=>({vars:s,parent:e});function X(e,s){for(let a=e;a;a=a.parent)if(Object.prototype.hasOwnProperty.call(a.vars,s))return a.vars[s]}function V(e){let s=new Map;for(let a=e;a;a=a.parent)for(let p of Object.keys(a.vars))s.has(p)||s.set(p,a.vars[p]);return s}export{Q as Mock,L as childScope,D as childrenOf,B as desugarJSX,C as find,f as forEachChild,Z as generateBuilders,I as guards,o as isObject,X as lookup,P as mutate,ee as pick,J as rootScope,V as visibleNames,x as walk};
|
package/package.json
CHANGED
package/dist/chunk-ZEL34C7U.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var E=Object.defineProperty;var S=(e,t)=>{for(var n in t)E(e,n,{get:t[n],enumerable:true});};var Pe={};S(Pe,{arrayExpression:()=>f,arrayPattern:()=>oe,arrowFunctionExpression:()=>B,assignmentExpression:()=>F,assignmentPattern:()=>pe,assignmentProperty:()=>se,awaitExpression:()=>N,binaryExpression:()=>I,blockStatement:()=>M,breakStatement:()=>$,callExpression:()=>A,catchClause:()=>H,chainExpression:()=>h,conditionalExpression:()=>O,continueStatement:()=>z,doWhileStatement:()=>te,emptyStatement:()=>K,exportDefaultDeclaration:()=>ye,exportNamedDeclaration:()=>Se,exportSpecifier:()=>de,expr:()=>y,expressionStatement:()=>V,forInStatement:()=>G,forOfStatement:()=>Q,forStatement:()=>Z,fromExprMarker:()=>d,functionDeclaration:()=>j,functionExpression:()=>R,identifier:()=>u,ifStatement:()=>q,importDeclaration:()=>me,importDefaultSpecifier:()=>ce,importNamespaceSpecifier:()=>Ee,importSpecifier:()=>xe,json:()=>Te,jsonExpression:()=>m,jsxAttribute:()=>Ae,jsxClosingElement:()=>De,jsxClosingFragment:()=>c,jsxElement:()=>Ie,jsxEmptyExpression:()=>be,jsxExpressionContainer:()=>Je,jsxFragment:()=>we,jsxIdentifier:()=>ue,jsxMemberExpression:()=>ge,jsxNamespacedName:()=>fe,jsxOpeningElement:()=>Ce,jsxOpeningFragment:()=>x,jsxSpreadAttribute:()=>Xe,jsxText:()=>he,literal:()=>g,logicalExpression:()=>w,memberExpression:()=>D,newExpression:()=>C,objectExpression:()=>b,objectPattern:()=>ie,program:()=>le,property:()=>J,restElement:()=>ae,returnStatement:()=>v,spreadElement:()=>X,switchCase:()=>W,switchStatement:()=>U,templateElement:()=>L,templateLiteral:()=>k,throwStatement:()=>_,tryStatement:()=>Y,unaryExpression:()=>T,updateExpression:()=>P,variableDeclaration:()=>ne,variableDeclarator:()=>re,whileStatement:()=>ee});var o=class extends Error{constructor(t,n,i){super(n),this.name="TSLiteError",this.code=t,this.details=i;}};var Le=/^[a-zA-Z_][a-zA-Z_0-9]*$/,a=["Identifier","MemberExpression","CallExpression","ArrowFunctionExpression","FunctionExpression","BinaryExpression","LogicalExpression","UnaryExpression","UpdateExpression","ConditionalExpression","AssignmentExpression","NewExpression","ArrayExpression","ObjectExpression","AwaitExpression","TemplateLiteral","TaggedTemplateExpression","SequenceExpression","ChainExpression","JSXElement","JSXFragment","Program"];function p(e){return a.includes(e)}function l(e){return new o("invalid-expression-entry",`Invalid #expr entry type: "${e}". The #expr marker is used to embed executable logic inside JSON. Only expression types that can be used as VALUES are allowed: ${a.join(", ")}. "${e}" is not a valid entry point because it cannot be used as a value in JSON.`,{type:e,validTypes:a})}var ke={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ChainExpression:["expression"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportExpression:["source"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],JsonExpression:[],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],PrivateIdentifier:[],Program:["body"],Property:["key","value"],PropertyDefinition:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],JSXElement:["openingElement","children","closingElement"],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningElement:["name","attributes"],JSXClosingElement:["name"],JSXOpeningFragment:[],JSXClosingFragment:[],JSXAttribute:["name","value"],JSXSpreadAttribute:["argument"],JSXExpressionContainer:["expression"],JSXEmptyExpression:[],JSXText:[],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],TSAsExpression:["expression"],TSTypeAliasDeclaration:["id"]},r={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,Coalesce:3,LogicalOR:4,LogicalAND:5,BitwiseOR:6,BitwiseXOR:7,BitwiseAND:8,Equality:9,Relational:10,BitwiseSHIFT:11,Additive:12,Multiplicative:13,Exponentiation:14,Await:15,Unary:15,Postfix:16,OptionalChaining:17,Call:18,New:19,TaggedTemplate:20,Member:21,Primary:22},Be={"??":r.Coalesce,"||":r.LogicalOR,"&&":r.LogicalAND,"|":r.BitwiseOR,"^":r.BitwiseXOR,"&":r.BitwiseAND,"==":r.Equality,"!=":r.Equality,"===":r.Equality,"!==":r.Equality,is:r.Equality,isnt:r.Equality,"<":r.Relational,">":r.Relational,"<=":r.Relational,">=":r.Relational,in:r.Relational,instanceof:r.Relational,"<<":r.BitwiseSHIFT,">>":r.BitwiseSHIFT,">>>":r.BitwiseSHIFT,"+":r.Additive,"-":r.Additive,"*":r.Multiplicative,"%":r.Multiplicative,"/":r.Multiplicative,"**":r.Exponentiation};var y=e=>{let{type:t,...n}=e;if(!t||typeof t!="string")throw new o("missing-node-type","expr() requires a node with a valid type property");if(!p(t))throw l(t);return {"#expr":t,...n}},d=e=>{if(!e||typeof e!="object"||!("#expr"in e))return e;let{"#expr":t,...n}=e;return {type:t,...n}},u=e=>({type:"Identifier",name:e}),g=e=>e instanceof RegExp?{type:"Literal",value:e,regex:{pattern:e.source,flags:e.flags}}:typeof e=="bigint"?{type:"Literal",value:e,bigint:String(e)}:{type:"Literal",value:e},f=e=>({type:"ArrayExpression",elements:e}),b=e=>({type:"ObjectExpression",properties:e}),J=(e,t,n=false,i=false)=>({type:"Property",shorthand:n,computed:i,key:e,value:t,kind:"init"}),X=e=>({type:"SpreadElement",argument:e}),A=(e,t,n=false)=>({type:"CallExpression",callee:e,arguments:t,optional:n}),C=(e,t)=>({type:"NewExpression",callee:e,arguments:t}),D=(e,t,n=false,i=false)=>({type:"MemberExpression",object:e,property:t,computed:n,optional:i}),h=e=>({type:"ChainExpression",expression:e}),I=(e,t,n)=>({type:"BinaryExpression",left:t,right:n,operator:e}),w=(e,t,n)=>({type:"LogicalExpression",operator:e,left:t,right:n}),T=(e,t)=>({type:"UnaryExpression",operator:e,argument:t,prefix:true}),P=(e,t,n=false)=>({type:"UpdateExpression",operator:e,argument:t,prefix:n}),F=(e,t,n)=>({type:"AssignmentExpression",operator:e,left:t,right:n}),O=(e,t,n)=>({type:"ConditionalExpression",test:e,consequent:t,alternate:n}),N=e=>({type:"AwaitExpression",argument:e}),L=(e,t=false)=>({type:"TemplateElement",value:e,tail:t}),k=(e,t)=>({type:"TemplateLiteral",quasis:e,expressions:t}),B=(e,t,n=false,i=false)=>({type:"ArrowFunctionExpression",expression:t.type!="BlockStatement",generator:i,async:n,params:e,body:t}),R=(e=null,t,n,i=false,s=false)=>({type:"FunctionExpression",id:e,params:t,body:n,async:i,generator:s}),j=(e,t,n,i=false,s=false)=>({type:"FunctionDeclaration",id:e,params:t,body:n,generator:i,async:s}),M=e=>({type:"BlockStatement",body:e}),V=e=>({type:"ExpressionStatement",expression:e}),v=e=>({type:"ReturnStatement",argument:e}),q=(e,t,n=null)=>({type:"IfStatement",test:e,consequent:t,alternate:n}),U=(e,t)=>({type:"SwitchStatement",cases:t,discriminant:e}),W=(e,t)=>({type:"SwitchCase",consequent:t,test:e}),_=e=>({type:"ThrowStatement",argument:e}),Y=(e,t,n=null)=>({type:"TryStatement",block:e,handler:t,finalizer:n}),H=(e,t)=>({type:"CatchClause",param:e,body:t}),$=(e=null)=>({type:"BreakStatement",label:e}),z=(e=null)=>({type:"ContinueStatement",label:e}),K=()=>({type:"EmptyStatement"}),Z=(e,t,n,i)=>({type:"ForStatement",init:e,test:t,update:n,body:i}),G=(e,t,n)=>({type:"ForInStatement",body:n,left:e,right:t}),Q=(e,t,n,i=false)=>({type:"ForOfStatement",body:n,left:e,right:t,await:i}),ee=(e,t)=>({type:"WhileStatement",test:e,body:t}),te=(e,t)=>({type:"DoWhileStatement",body:e,test:t}),ne=(e,t)=>({type:"VariableDeclaration",declarations:t,kind:e}),re=(e,t=null)=>({type:"VariableDeclarator",id:e,init:t}),ie=e=>({type:"ObjectPattern",properties:e}),oe=e=>({type:"ArrayPattern",elements:e}),se=(e,t=e,n=false,i=false)=>({type:"Property",key:e,kind:"init",value:t,shorthand:n,computed:i,method:false}),ae=e=>({type:"RestElement",argument:e}),pe=(e,t)=>({type:"AssignmentPattern",left:e,right:t}),le=(e,t="script")=>({type:"Program",body:e,sourceType:t}),m=e=>({type:"JsonExpression",body:e}),me=(e,t)=>({type:"ImportDeclaration",specifiers:e,source:t}),xe=(e,t)=>({type:"ImportSpecifier",imported:e,local:t}),ce=e=>({type:"ImportDefaultSpecifier",local:e}),Ee=e=>({type:"ImportNamespaceSpecifier",local:e}),Se=(e=null,t=[],n=null)=>({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n}),ye=e=>({type:"ExportDefaultDeclaration",declaration:e}),de=(e,t=e)=>({type:"ExportSpecifier",local:e,exported:t}),ue=e=>({type:"JSXIdentifier",name:e}),ge=(e,t)=>({type:"JSXMemberExpression",object:e,property:t}),fe=(e,t)=>({type:"JSXNamespacedName",namespace:e,name:t}),be=()=>({type:"JSXEmptyExpression"}),Je=e=>({type:"JSXExpressionContainer",expression:e}),Xe=e=>({type:"JSXSpreadAttribute",argument:e}),Ae=(e,t=null)=>({type:"JSXAttribute",name:e,value:t}),Ce=(e,t=[],n=false)=>({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n}),De=e=>({type:"JSXClosingElement",name:e}),x=()=>({type:"JSXOpeningFragment"}),c=()=>({type:"JSXClosingFragment"}),he=(e,t=e)=>({type:"JSXText",value:e,raw:t}),Ie=(e,t=[],n=null)=>({type:"JSXElement",openingElement:e,children:t,closingElement:n}),we=(e=[],t=x(),n=c())=>({type:"JSXFragment",openingFragment:t,children:e,closingFragment:n}),Te=m;export{oe as $,O as A,Te as Aa,N as B,Pe as Ba,L as C,k as D,B as E,R as F,j as G,M as H,V as I,v as J,q as K,U as L,W as M,_ as N,Y as O,H as P,$ as Q,z as R,K as S,Z as T,G as U,Q as V,ee as W,te as X,ne as Y,re as Z,ie as _,S as a,se as aa,o as b,ae as ba,Le as c,pe as ca,a as d,le as da,p as e,m as ea,l as f,me as fa,ke as g,xe as ga,r as h,ce as ha,Be as i,Ee as ia,y as j,Se as ja,d as k,ye as ka,u as l,de as la,g as m,ue as ma,f as n,ge as na,b as o,fe as oa,J as p,be as pa,X as q,Je as qa,A as r,Xe as ra,C as s,Ae as sa,D as t,Ce as ta,h as u,De as ua,I as v,x as va,w,c as wa,T as x,he as xa,P as y,Ie as ya,F as z,we as za};
|