@guihz/trading-vue-editor-tes 0.0.267 → 0.0.269
Sign up to get free protection for your applications and to get access to all the features.
@@ -37,25 +37,27 @@ x0.version="2.30.1",G3(Re),x0.fn=W0,x0.min=kA,x0.max=wA,x0.now=PA,x0.utc=Xn,x0.u
|
|
37
37
|
/****/
|
38
38
|
`);let q="";const m=(n==null?void 0:n.ruleType)==="VarMultiple";z.length>1?q=`${z[0]}
|
39
39
|
let ${i} = ${m?`(${z[1]}) || []`:z[1]}
|
40
|
-
`:q=`let ${i} = ${m?`(${b}) || []`:b}`;const g={code:q,varNames:i.replace(/[\[\]]/g,"").split(", "),depends:this._getDepends(s)};return this._codesCol[this._blockCount].push(g),q}_getDepends(e){const n=[];for(const[r,i]of this._dependsObj[e])(i.scope||0)>this._blockCount||n.push(i);return delete this._dependsObj[e],n}_parserForToStatement(e,n=!1){let{numerical:r,block:i,name:s,type:b}=e;const[z,q,m]=r,g=this._isInLoop;this._isInLoop=!0;const y=`$start${this._count+1}`;g||(this._count+=1);const E=`$$count${this._count}`,k=`$forTo${this._blockCount}`;n||(this._dependsObj[k]=new Map);const
|
40
|
+
`:q=`let ${i} = ${m?`(${b}) || []`:b}`;const g={code:q,varNames:i.replace(/[\[\]]/g,"").split(", "),depends:this._getDepends(s)};return this._codesCol[this._blockCount].push(g),q}_getDepends(e){const n=[];for(const[r,i]of this._dependsObj[e])(i.scope||0)>this._blockCount||n.push(i);return delete this._dependsObj[e],n}_parserForToStatement(e,n=!1){let{numerical:r,block:i,name:s,type:b}=e;const[z,q,m]=r,g=this._isInLoop;this._isInLoop=!0;const y=`$start${this._count+1}`;g||(this._count+=1);const E=`$$count${this._count}`,k=`$forTo${this._blockCount}`,D=`$$toCount${this._count}`;n||(this._dependsObj[k]=new Map);const h=this._parserSingleExpression(z),A=this._parserSingleExpression(q),d=m?this._parserSingleExpression(m):"",v=this._parserBlockLine(i,n,!1,!0);We.includes(s)&&(s=`$${s}`);const L=`var ${y} = Date.now()
|
41
|
+
let ${D} = ${A}
|
42
|
+
`,S=`for (let ${s}=${h}; ${s}>=${D}; ${s}-=(${d||"1"})){
|
41
43
|
if (Date.now() - ${y} > 500) {
|
42
44
|
throw new Error('${O0.loopRuntimeErr}')
|
43
45
|
}
|
44
46
|
${E}++
|
45
|
-
${
|
46
|
-
}`,
|
47
|
+
${v}
|
48
|
+
}`,I=`for (let ${s}=${h};${s}<=${D}; ${s}+=(${d||"1"})){
|
47
49
|
if (Date.now() - ${y} > 500) {
|
48
50
|
throw new Error('${O0.loopRuntimeErr}')
|
49
51
|
}
|
50
52
|
${E}++
|
51
|
-
${
|
52
|
-
}`;let
|
53
|
-
${L}
|
54
|
-
} else {
|
53
|
+
${v}
|
54
|
+
}`;let K="";return(z==null?void 0:z.ruleType)==="Literal"&&(q==null?void 0:q.ruleType)==="Literal"?K=Number(z.value)>Number(q.value)?S:I:K=`if ((${h})>${D}) {
|
55
55
|
${S}
|
56
|
-
}
|
56
|
+
} else {
|
57
|
+
${I}
|
58
|
+
}`,K=`${L};
|
57
59
|
${g?"":`var ${E} = 0`}
|
58
|
-
${
|
60
|
+
${K}`,n||this._codesCol[this._blockCount].push({code:K,depends:this._getDepends(k)}),this._isInLoop=g,n?this._functionalProcess(K,b):K}_parserForInStatement(e,n=!1){const{names:r,block:i,array:s,type:b}=e,z=this._isInLoop;this._isInLoop=!0;const q=`$start${this._count+1}`;z||(this._count+=1);const m=`$$count${this._count}`,g=this._parserBlockLine(i,n,!1,!0);let y="",[E,k]=r;We.includes(E)&&(E=`$${E}`);const D=`var ${q} = Date.now()`;return r.length===1?y=`for (const ${E} of ${this._parserSingleExpression(s)}._value) {
|
59
61
|
if (Date.now() - ${q} > 500) {
|
60
62
|
throw new Error('${O0.loopRuntimeErr}')
|
61
63
|
}
|
@@ -129,7 +131,7 @@ ${this._prefixNameVar}.setVarValue("${q}", ${A}, ${q}, "${b}")`}n==="-="?k=`${q}
|
|
129
131
|
})
|
130
132
|
`}return this._isInFunc=!1,this._currentFuncName="",this._codesCol[this._blockCount].push({funcName:n,depends:this._getDepends(n),hasRequest:e.hasRequest,code:z}),z}_parserArrowFunction(e){let n=`$_${e.name}`;this._nameMap.set(e.name,n);const r=[...e.params];n=`${n}${e.index?`$${e.index}`:""}`,this._currentFuncName=n,this._dependsObj[n]=new Map;const i=e.hasRequest?", $paramsExpr":"",s=`function ${n} (${this._parserParameters(r)}$posStr${i}) {
|
131
133
|
${this._parserBlock(e.block,!0,!0)}
|
132
|
-
}`;return this._isInFunc=!1,this._currentFuncName="",this._codesCol[this._blockCount].push({funcName:n,depends:this._getDepends(n),hasRequest:e.hasRequest,code:s}),s}_parserParameters(e){return e.length?`{${e.map(n=>{const{name:r,defaultValue:i}=n;let s=r;if(We.includes(s)&&(s=`$${s}`),i){const b=this._parserSingleExpression(i);s=`${s} = ${b}`}return s}).join(", ")}},`:""}_parserBlock(e,n=!1,r=!1){return r&&(this._isInFunc=!0),this._parserBlockLine(Array.isArray(e)?e:[e],n,r)}_addVarList(e){var r,i;const n=this._varlist[this._blockCount]||{};if(e.names){const s=e.posList;for(const[b,z]of e.names.entries()){const q=((r=s[b])==null?void 0:r.reName)||z;n[q]=s[b]}}else{const s=((i=e.pos)==null?void 0:i.reName)||e.name;n[s]=e.pos}this._varlist[this._blockCount]=n}_parserDeclareAssign(e){var m;const{nameList:n,value:r}=e,i=this._parserDeclareAssignNames(n);this._addVarList(n);const s={code:"",varNames:i.replace(/[\[\]]/g,"").split(", "),depends:[]},b=`$${i}_${this._blockCount}`;this._dependsObj[b]=new Map;let z=this._parserSingleExpression(r);(n==null?void 0:n.ruleType)==="VarMultiple"&&(z=`(${z}) || []`);let q=`let ${i} = ${z}`;if(n.declare){const g=`${n.pos.column}_${n.pos.lineNumber}`,y=this._isInFunc?`$posStr + "_${g}"`:`"${g}"`;q=`let ${i} = ${this._prefixNameVar}.verifyVarAndVarip("${i}", ${y}, "${n.declare}") ? ${this._prefixNameVar}.getVarValue("${i}", ${y}, "${n.declare}") : ${this._prefixNameVar}.setVarValue("${i}", ${y}, ${z}, "${n.declare}")`}return s.code=q,s.depends=this._getDepends(b),(m=this._codesCol[this._blockCount])==null||m.push(s),q}_parserDeclareAssignNames(e){var n,r;switch(e==null?void 0:e.ruleType){case"VarMultiple":const i=e.posList;return`[${e.names.map((s,b)=>{var z,q;return s==="_"?(this.__count++,`_$$${this.__count}`):(z=i[b])!=null&&z.reName?(q=i[b])==null?void 0:q.reName:We.includes(s)?`$${s}`:s}).join(", ")}]`;case"VarSingle":return e.name==="_"?(this.__count++,`_$$${this.__count}`):(n=e.pos)!=null&&n.reName?(r=e.pos)==null?void 0:r.reName:We.includes(e.name)?`$${e.name}`:e.name}return""}_parserSingleExpression(e){if(!e)return"";const{exprs:n,operator:r}=e;let i="",s=this._isInConditionalStmt;switch(e.ruleType){case p0.MemberIndexExpression:return this._parserMemberIndexExpression(e);case p0.MethodExpression:return this._parserMethodExpression(e);case p0.UnaryExpression:return`${r}${this._parserSingleExpression(n[0])}`;case p0.NotExpression:return`!${this._parserSingleExpression(n[0])}`;case p0.AdditiveExpression:return this._parserAdditiveExpression(e);case p0.MultiplicativeExpression:case p0.RelationalExpression:case p0.EqualityExpression:return this._parserEqualityExpression(e);case p0.LogicalAndExpression:return this._isInConditionalStmt=!0,i=`${this._parserSingleExpression(n[0])} && ${this._parserSingleExpression(n[1])}`,this._isInConditionalStmt=s,i;case p0.LogicalOrExpression:return this._isInConditionalStmt=!0,i=`${this._parserSingleExpression(n[0])} || ${this._parserSingleExpression(n[1])}`,this._isInConditionalStmt=s,i;case p0.TernaryExpression:return i=`${this._parserSingleExpression(n[0])} ? ${this._parserSingleExpression(n[1])} : ${this._parserSingleExpression(n[2])}`,i;case p0.Name:return this._parserName(e);case p0.Literal:return this._parseLiteral(e);case p0.ParenthesizedExpression:return`(${this._parserSingleExpression(e.exprs)})`;default:return e.name||""}}_parserEqualityExpression(e){var q,m;const{exprs:n,operator:r}=e;let i=this._parserSingleExpression(n[0]),s=this._parserSingleExpression(n[1]);if(r==="/")return`${this._prefixNameVar}.div(${i}, ${s})`;if(["*","%"].includes(r)||(i=`${this._prefixNameVar}.compareDataHandle(${i})`,s=`${this._prefixNameVar}.compareDataHandle(${s})`),r!=="==")return`${i} ${r} ${s}`;const b=(q=n[0])==null?void 0:q.type,z=(m=n[1])==null?void 0:m.type;return`${this._prefixNameVar}.equal(${i}, ${s}, "${b}", "${z}")`}_parserAdditiveExpression(e){const{exprs:n,operator:r}=e,i=this._parserSingleExpression(n[0]),s=this._parserSingleExpression(n[1]);return r==="-"?`${this._prefixNameVar}.sub(${i}, ${s})`:`${this._prefixNameVar}.add(${i}, ${s})`}_parserMemberIndexExpression(e){var g;const{exprs:n,isInFunc:r,ctx:i}=e,s=n[0],b=this._parserSingleExpression(n[1]);let z=this._parserSingleExpression(s);const q=i.start.tokenIndex,m=r?"$posStr":q;if(s.ruleType===p0.Name&&!s.hasMethod){let y=this._blockCount;const E=((g=s.varPos)==null?void 0:g.reName)||s.name;for(;y>=0;){const k=this._varlist[y]||{},D=k[E];if(D)return this._getUserVarMemberIndexs(D,E,y,b,r);if(s.isBuiltIn){const h=this._memberIndexList[0]||{};return h[E]=`${this._prefixNameVar}.setCacheData("${E}", ${z})
|
134
|
+
}`;return this._isInFunc=!1,this._currentFuncName="",this._codesCol[this._blockCount].push({funcName:n,depends:this._getDepends(n),hasRequest:e.hasRequest,code:s}),s}_parserParameters(e){return e.length?`{${e.map(n=>{const{name:r,defaultValue:i}=n;let s=r;if(We.includes(s)&&(s=`$${s}`),i){const b=this._parserSingleExpression(i);s=`${s} = ${b}`}return s}).join(", ")}},`:""}_parserBlock(e,n=!1,r=!1){return r&&(this._isInFunc=!0),this._parserBlockLine(Array.isArray(e)?e:[e],n,r)}_addVarList(e){var r,i;const n=this._varlist[this._blockCount]||{};if(e.names){const s=e.posList;for(const[b,z]of e.names.entries()){const q=((r=s[b])==null?void 0:r.reName)||z;n[q]=s[b]}}else{const s=((i=e.pos)==null?void 0:i.reName)||e.name;n[s]=e.pos}this._varlist[this._blockCount]=n}_parserDeclareAssign(e){var m;const{nameList:n,value:r}=e,i=this._parserDeclareAssignNames(n);this._addVarList(n);const s={code:"",varNames:i.replace(/[\[\]]/g,"").split(", "),depends:[]},b=`$${i}_${this._blockCount}`;this._dependsObj[b]=new Map;let z=this._parserSingleExpression(r);(n==null?void 0:n.ruleType)==="VarMultiple"&&(z=`(${z}) || []`);let q=`let ${i} = ${z}`;if(n.declare){const g=`${n.pos.column}_${n.pos.lineNumber}`,y=this._isInFunc?`$posStr + "_${g}"`:`"${g}"`;q=`let ${i} = ${this._prefixNameVar}.verifyVarAndVarip("${i}", ${y}, "${n.declare}") ? ${this._prefixNameVar}.getVarValue("${i}", ${y}, "${n.declare}") : ${this._prefixNameVar}.setVarValue("${i}", ${y}, ${z}, "${n.declare}")`}return s.code=q,s.depends=this._getDepends(b),(m=this._codesCol[this._blockCount])==null||m.push(s),q}_parserDeclareAssignNames(e){var n,r;switch(e==null?void 0:e.ruleType){case"VarMultiple":const i=e.posList;return`[${e.names.map((s,b)=>{var z,q;return s==="_"?(this.__count++,`_$$${this.__count}`):(z=i[b])!=null&&z.reName?(q=i[b])==null?void 0:q.reName:We.includes(s)?`$${s}`:s}).join(", ")}]`;case"VarSingle":return e.name==="_"?(this.__count++,`_$$${this.__count}`):(n=e.pos)!=null&&n.reName?(r=e.pos)==null?void 0:r.reName:We.includes(e.name)?`$${e.name}`:e.name}return""}_parserSingleExpression(e){if(!e)return"";const{exprs:n,operator:r}=e;let i="",s=this._isInConditionalStmt;switch(e.ruleType){case p0.MemberIndexExpression:return this._parserMemberIndexExpression(e);case p0.MethodExpression:return this._parserMethodExpression(e);case p0.UnaryExpression:return`${r}${this._parserSingleExpression(n[0])}`;case p0.NotExpression:return`!${this._parserSingleExpression(n[0])}`;case p0.AdditiveExpression:return this._parserAdditiveExpression(e);case p0.MultiplicativeExpression:case p0.RelationalExpression:case p0.EqualityExpression:return this._parserEqualityExpression(e);case p0.LogicalAndExpression:return this._isInConditionalStmt=!0,i=`${this._parserSingleExpression(n[0])} && ${this._parserSingleExpression(n[1])}`,this._isInConditionalStmt=s,i;case p0.LogicalOrExpression:return this._isInConditionalStmt=!0,i=`${this._parserSingleExpression(n[0])} || ${this._parserSingleExpression(n[1])}`,this._isInConditionalStmt=s,i;case p0.TernaryExpression:return i=`${this._parserSingleExpression(n[0])} ? ${this._parserSingleExpression(n[1])} : ${this._parserSingleExpression(n[2])}`,i;case p0.Name:return this._parserName(e);case p0.Literal:return this._parseLiteral(e);case p0.ParenthesizedExpression:return`(${this._parserSingleExpression(e.exprs)})`;default:return e.name||""}}_parserEqualityExpression(e){var q,m;const{exprs:n,operator:r}=e;let i=this._parserSingleExpression(n[0]),s=this._parserSingleExpression(n[1]);if(r==="/")return`${this._prefixNameVar}.div(${i}, ${s})`;if(["*","%"].includes(r)||(i=`${this._prefixNameVar}.compareDataHandle(${i})`,s=`${this._prefixNameVar}.compareDataHandle(${s})`),r!=="==")return`${i} ${r} ${s}`;const b=(q=n[0])==null?void 0:q.type,z=(m=n[1])==null?void 0:m.type;return`${this._prefixNameVar}.equal(${i}, ${s}, "${b}", "${z}")`}_parserAdditiveExpression(e){const{exprs:n,operator:r}=e,i=this._parserSingleExpression(n[0]),s=this._parserSingleExpression(n[1]);return r==="-"?`${this._prefixNameVar}.sub(${i}, ${s})`:`${this._prefixNameVar}.add(${i}, ${s})`}_parserMemberIndexExpression(e){var g;const{exprs:n,isInFunc:r,ctx:i}=e,s=n[0],b=this._parserSingleExpression(n[1]);let z=this._parserSingleExpression(s);const q=i.start.tokenIndex,m=r?"$posStr":q;if(s.ruleType===p0.Name&&!s.hasMethod){let y=this._blockCount;const E=((g=s.varPos)==null?void 0:g.reName)||s.name;for(;y>=0;){const k=this._varlist[y]||{},D=k[E];if(D)return this._getUserVarMemberIndexs(D,E,y,b,r);if(s.isBuiltIn){const h=this._memberIndexList[0]||{};return h[E]=`${this._prefixNameVar}.setCacheData("${E}", ${z})`,this._memberIndexList[0]=h,`${this._prefixNameVar}.getCacheData("${E}", ${b}, ${z})`}if(E.includes(".")){const h=E.split(".")[0],A=k[h];if(A)return this._getUserVarMemberIndexs(A,E,y,b,r)}y--}return this._getOtherVarMemberIndexs(`${E}_${s.varScope||s.scope}`,E,s.varScope||s.scope,b,r)}else{const y=this._preRunMembers[this._blockCount]||[],E=`$$m${q}_${m}`;y.push(`const ${E} = ${z};
|
133
135
|
${this._prefixNameVar}.setCacheData("m${q}_" + ${m}, ${E})
|
134
136
|
`),this._preRunMembers[this._blockCount]=y}return`${this._prefixNameVar}.getCacheData("m${q}_" + ${m}, ${b}, ${z})`}_getOtherVarMemberIndexs(e,n,r,i,s){const b=this._memberIndexList[r]||{};e=s&&r!==0?`"${e}_" + $posStr`:`"${e}"`;const z=`${this._prefixNameVar}.setCacheData(${e}, ${n})`;return b[e]=z,this._memberIndexList[r]=b,this._setDepend({name:n,scope:r,memberCode:z}),`${this._prefixNameVar}.getCacheData(${e}, ${i}, ${n})`}_getUserVarMemberIndexs(e,n,r,i,s){return this._getOtherVarMemberIndexs(`${n}_${e.lineNumber}_${e.column}`,n,r,i,s)}_parseLiteral(e){return e.type.endsWith(P.COLOR)?`"${this._colorToRgba(e.value)}"`:e.value}_colorToRgba(e){if(e.startsWith("#")){let n;const r=parseInt(e.substring(1,3),16),i=parseInt(e.substring(3,5),16),s=parseInt(e.substring(5,7),16),b=e.substring(7);return b?n=parseInt(b,16)/255:n=1,`rgba(${Math.round(r)}, ${Math.round(i)}, ${Math.round(s)}, ${n.toFixed(2)})`}return e}_parserName(e,n=!1){var m;const{exprs:r,varScope:i,hasMethod:s,arg:b,varPos:z}=e;let q=[];for(const g of r){if(typeof g=="string"){q.push((z==null?void 0:z.reName)||g);continue}let y="";const{column:E,line:k}=((m=g==null?void 0:g.ctx)==null?void 0:m.start)||{},D=`${k}_${E}`;g.selfArg?(y=this._parserMethodElement(g,D,q.join(".")),q=[]):y=this._parserMethodElement(g,D,""),q.push(y)}if(e.expr&&q.unshift(`(${this._parserSingleExpression(e.expr)})`),e.isBuiltIn){const g=q.join(".");g==="strategy.opentrades"?q.push("opentrades"):g==="chart.left_visible_bar_time"?this._hasLeftVisibleBarTime=!0:g==="chart.right_visible_bar_time"&&(this._hasRightVisibleBarTime=!0),q.unshift(e.isConst?this._prefixNameConst:this._prefixNameVar)}else if(We.includes(q[0])&&(q[0]=`$${q[0]}`),!s){const g={name:q[0],scope:i||(b==null?void 0:b.varScope)||0,isAgainAssign:n,isArg:b==null?void 0:b.isArg,functionName:this._currentFuncName};this._setDepend(g)}return q.join(".")}_setDepend(e){e.name.endsWith("?")&&(e.name=e.name.replace("?",""));const n=e.name;for(const r of Object.values(this._dependsObj)){const i=r.get(n)||{},s={...e,...i};r.set(n,s)}}_parserMethodExpression(e){const{exprs:n,ctx:r}=e,{column:i,line:s}=r.start,b=`${s}_${i}`;let z=this._isInFunc?`$posStr + "__${b}"`:`"${b}"`;z=this._isInLoop?`$$count${this._count} + "_" + ${z}`:z,i===0&&(this._dependsObj[z]=new Map);let q=!1,m=[];for(const y of n){y.hasMemberIndex&&(q=!0);let E="";y.selfArg?(E=this._parserMethodElement(y,z,m.join(".")),m=[]):E=this._parserMethodElement(y,z,""),m.push(E)}const g=m.join(".");if(i===0&&this._codesCol[this._blockCount].push({code:g,isStmtFunc:!0,depends:this._getDepends(z)}),this._isInConditionalStmt&&q){const y=`$$result_${this._preRunMemberFuncsCount}`;this._preRunMemberFuncsCount++;const E=this._preRunMembersFuncs[this._blockCount]||[];return E.push(`const ${y} = ${g}`),this._preRunMembersFuncs[this._blockCount]=E,y}return g}_parserMethodElement(e,n,r){let i="",s="";const b={...e.args};e.expr&&(i=`(${this._parserSingleExpression(e.expr)})`),i=i?`${i}.${e.name}`:this._nameMap.get(e.name)||e.name,e.hasVarPrefix&&(i=`${this._prefixNameVar}.${i}`);let z=!1;if(e.isBuiltIn){if(Vu.includes(i))i=`${i}.${i}`;else if(i==="max_bars_back"){const{name:m,varPos:g}=b.var||b.params[0];s=`var_name: "${g?`${m}_${g.lineNumber}_${g.column}`:m}"`}i.startsWith(P.INPUT)?(s=`index: ${this._inputCount}`,this._inputCount++):i.startsWith("request.")&&(z=!0),i=`${this._prefixNameFunc}.${i}`}else{const m=i.split(".");let g=m[0];We.includes(g)&&(m[0]=`$${g}`,i=m.join("."))}if(e.selfArg){const m=i.split("."),g=m.length,y=m.slice(0,g-1);r&&y.unshift(r),Object.assign(b,{[e.selfArg.name]:{name:y.join(".")}}),i=m[g-1],i=this._nameMap.get(i)||i,this._setDepend({name:m[0],scope:e.varScope||0})}i=`${i}${e.index?`$${e.index}`:""}`;const q=this._parserArguments(b,s,n,z,e.hasRequest,i);if(!e.isBuiltIn){const m=i.split(".");if(m.length>1?this._setDepend({name:m[0],scope:e.varScope||0}):this._setDepend({name:i,scope:0,hasRequest:e.hasRequest,isFunc:!0}),e.funcName){const g=this._nameMap.get(e.funcName)||e.funcName;this._setDepend({name:g,originName:i,scope:0,hasRequest:e.hasRequest,isFunc:!0})}}return i+q}_parserArguments(e,n,r,i=!1,s=!1,b){const z=e.params||[];delete e.params;const q=[],m=[];let g=[],y;const E=(D,h)=>{s&&(this._dependsObj[r]=new Map),i&&h==="expression"&&(this._dependsObj[`$arg_${h}${r}`]=new Map);let A=D.ruleType===p0.Brackethesized?this._parserBrackethesized(D):this._parserSingleExpression(D);if(h&&!["arg0, arg1, ...","number0, number1, ..."].includes(h)){D.isSourceType?q.push(`sourceTypeName: "${D.name}"`):h==="defval"&&b===`${this._prefixNameFunc}.input.enum`&&(y=this._enums.get(D.enumName));const d=this._requestParamsHandle(i,h,r,s,A,b);A=(d==null?void 0:d.code)||A,d!=null&&d.paramsExpr&&g.push(d==null?void 0:d.paramsExpr),We.includes(h)&&(h=`$${h}`),q.push(`${h}: ${A}`)}else m.push(A)};for(const D of z)E(D,D.originName);for(const D of Object.keys(e))E(e[D],D);i&&this._isInFunc&&q.push("paramsExpr: $paramsExpr"),n&&q.push(n),y&&q.unshift(`options: [${y.join(", ")}]`);const k=g.length?`, [${this._isInFunc?"...$paramsExpr, ":""}${g.join(", ")}]`:"";return m.length?`({${q.join(", ")}}, [${m.join(", ")}], ${r}${k})`:q.length?`({${q.join(", ")}}, ${r}${k})`:`(${r}${k})`}_requestParamsHandle(e,n,r,i,s,b){const z=this._memberIndexList[0],q={};for(const m of Object.keys(z))m!=="_"&&(q[m]=z[m]);if(e&&n==="expression"){const m=this._getDepends(`$arg_${n}${r}`),g=this._getExpressionContext(m);return g.push({scope:1,depends:m.map(y=>(y.isArg&&(y.functionName=this._currentFuncName),y)),code:s,memberCodes:q}),{code:`'${Va(JSON.stringify(g))}'`}}else if(i){const m=this._getDepends(r),g=this._getExpressionContext(m);return g.push({scope:2,varNames:n,methodName:b,depends:m,dependSelf:m.some(y=>y.name===n),code:`${n} = ${s}`,memberCodes:q}),{paramsExpr:`'${Va(JSON.stringify(g))}'`}}}_getExpressionContext(e){const n=[],r=[];return this._getDependsCode(e,n,r),n}_getDependsCode(e,n,r){var b,z;const i=[];for(const q of e)if(!q.isArg){const m=this._codesCol[q.scope||0],g=m.find(E=>{var k;return((k=E.varNames)==null?void 0:k.includes(q.name))||E.funcName===q.name});g&&(r.includes(g)||(g.funcName&&i.push(g),r.push(g),g.depends.length&&this._getDependsCode(g.depends,n,r),n.push({scope:q.scope||0,code:g.code,depends:g.depends,funcName:g.funcName,varNames:(b=g.varNames)==null?void 0:b.join(", ")})));const y=m.filter(E=>E.depends.some(k=>k.name===q.name&&k.scope===q.scope&&k.isAgainAssign!==!1&&!k.isFunc));for(const E of y)r.includes(E)||(E.funcName&&i.push(E),r.push(E),E.depends.length&&this._getDependsCode(E.depends,n,r),n.push({scope:q.scope||0,code:E.code,depends:E.depends,funcName:E.funcName,varNames:(z=E.varNames)==null?void 0:z.join(", ")}))}const s=this._codesCol[0];for(const q of i){const m=s.filter(g=>g.isStmtFunc&&g.depends.some(y=>y.isFunc&&y.name===q.funcName));for(const g of m)if(!r.includes(g)){r.push(g);const y=g.depends;y.length&&this._getDependsCode(y,n,r),n.push({scope:0,code:g.code,depends:y,isStmtFunc:!0,funcName:g.funcName})}}}_parserBrackethesized(e){return`[${e.exprs.map(r=>this._parserSingleExpression(r)).join(", ")}]`}_functionalProcess(e,n){return`(function () {
|
135
137
|
let $$_result=${n&&typeof n=="string"&&n.endsWith("string")?'""':"undefined"};
|