(q)
| 5103 | `).replaceAll("\\(",_.ESCAPED_OPEN_PAREN).replaceAll("\\)",_.ESCAPED_CLOSE_PAREN),(j)=>`$${j}`);if(!O.success)return[A];let w=O.tokens;if(w.length===0)return[];try{for(let J of w){if(typeof J==="string"){if(K.length>0&&typeof K[K.length-1]==="string"){if(J===_.NEW_LINE)K.push(null);else K[K.length-1]+=" "+J;continue}}else if("op"in J&&J.op==="glob"){if(K.length>0&&typeof K[K.length-1]==="string"){K[K.length-1]+=" "+J.pattern;continue}}K.push(J)}let H=K.map((J)=>{if(J===null)return null;if(typeof J==="string")return J;if("comment"in J)return"#"+J.comment.replaceAll(`"${_.DOUBLE_QUOTE}`,_.DOUBLE_QUOTE).replaceAll(`'${_.SINGLE_QUOTE}`,_.SINGLE_QUOTE);if("op"in J&&J.op==="glob")return J.pattern;if("op"in J)return J.op;return null}).filter((J)=>J!==null).map((J)=>{return J.replaceAll(`${_.SINGLE_QUOTE}`,"'").replaceAll(`${_.DOUBLE_QUOTE}`,'"').replaceAll(` |
| 5104 | ${_.NEW_LINE} |
| 5105 | `,` |
| 5106 | `).replaceAll(_.ESCAPED_OPEN_PAREN,"\\(").replaceAll(_.ESCAPED_CLOSE_PAREN,"\\)")});return Qm1(H,Y)}catch(j){return[A]}}function W$Y(q){return q.filter((K)=>!Z$Y.has(K))}function F2(q){let K=LV6(q);for(let z=0;z<K.length;z++){let Y=K[z];if(Y===void 0)continue;if(Y===">&"||Y===">"||Y===">>"){let $=K[z-1]?.trim(),A=K[z+1]?.trim(),O=K[z+2]?.trim();if(A===void 0)continue;let w=!1,j=!1,H=A;if((Y===">"||Y===">>")&&A.length>=3&&A.charAt(A.length-2)===" "&&Zh6.has(A.charAt(A.length-1))&&(O===">"||O===">>"||O===">&"))H=A.slice(0,-2);if(Y===">&"&&Zh6.has(A))w=!0;else if(Y===">"&&A==="&"&&O!==void 0&&Zh6.has(O))w=!0,j=!0;else if(Y===">"&&A.startsWith("&")&&A.length>1&&Zh6.has(A.slice(1)))w=!0;else if((Y===">"||Y===">>")&&P$Y(H))w=!0;if(w){if($&&$.length>=3&&Zh6.has($.charAt($.length-1))&&$.charAt($.length-2)===" ")K[z-1]=$.slice(0,-2);if(K[z]=void 0,K[z+1]=void 0,j)K[z+2]=void 0}}}let _=K.filter((z)=>z!==void 0&&z!=="");return W$Y(_)}function D$Y(q){let K=q.trim();if(!K.endsWith("--help"))return!1;if(K.includes('"')||K.includes("'"))return!1;let _=o$(K);if(!_.success)return!1;let z=_.tokens,Y=!1,$=/^[a-zA-Z0-9]+$/;for(let A of z)if(typeof A==="string"){if(A.startsWith("-"))if(A==="--help")Y=!0;else return!1;else if(!$.test(A))return!1}return Y}function DZK(){WZK.cache.clear(),e88.cache.clear()}function G$Y(q){let K=PZK(),{processedCommand:_}=Dq6(q),z=o$(_.replaceAll('"',`"${K.DOUBLE_QUOTE}`).replaceAll("'",`'${K.SINGLE_QUOTE}`),($)=>`$${$}`);if(!z.success)return!1;let Y=z.tokens;for(let $=0;$<Y.length;$++){let A=Y[$],O=Y[$+1];if(A===void 0)continue;if(typeof A==="string")continue;if("comment"in A)return!1;if("op"in A){if(A.op==="glob")continue;else if(fZK.has(A.op))continue;else if(A.op===">&"){if(O!==void 0&&typeof O==="string"&&Zh6.has(O.trim()))continue}else if(A.op===">")continue;else if(A.op===">>")continue;return!1}}return!0}function yPK(q){let{processedCommand:K}=Dq6(q);if(!o$(K,(z)=>`$${z}`).success)return!0;return F2(q).length>1&&!G$Y(q)}function SL(q){let K=[],_=!1,{processedCommand:z,heredocs:Y}=Dq6(q),$=z.replace(/\\+\n/g,(M)=>{let X=M.length-1;if(X%2===1)return"\\".repeat(X-1);return M}),A=o$($,(M)=>`$${M}`);if(!A.success)return{commandWithoutRedirections:q,redirections:[],hasDangerousRedirection:!0};let O=A.tokens,w=new Set,j=[];O.forEach((M,X)=>{if(dH(M,"(")){let P=O[X-1],W=X===0||P&&typeof P==="object"&&"op"in P&&["&&","||",";","|"].includes(P.op);j.push({index:X,isStart:!!W})}else if(dH(M,")")&&j.length>0){let P=j.pop(),W=O[X+1];if(P.isStart&&(dH(W,">")||dH(W,">>")))w.add(P.index).add(X)}});let H=[],J=0;for(let M=0;M<O.length;M++){let X=O[M];if(!X)continue;let[P,W]=[O[M-1],O[M+1]];if((dH(X,"(")||dH(X,")"))&&w.has(M))continue;if(dH(X,"(")&&P&&typeof P==="string"&&P.endsWith("$"))J++;else if(dH(X,")")&&J>0)J--;if(J===0){let{skip:D,dangerous:f}=T$Y(X,P,W,O[M+2],O[M+3],K,H);if(f)_=!0;if(D>0){M+=D;continue}}H.push(X)}return{commandWithoutRedirections:Qm1([k$Y(H,$)],Y)[0],redirections:K,hasDangerousRedirection:_}}function dH(q,K){return typeof q==="object"&&q!==null&&"op"in q&&q.op===K}function bb(q){if(typeof q!=="string"||q.length===0)return!1;return!q.startsWith("!")&&!q.startsWith("=")&&!q.startsWith("~")&&!q.includes("$")&&!q.includes("`")&&!q.includes("*")&&!q.includes("?")&&!q.includes("[")&&!q.includes("{")}function My(q){if(typeof q==="object"&&q!==null&&"op"in q){if(q.op==="glob")return!0;return!1}if(typeof q!=="string")return!1;if(q.length===0)return!1;return q.includes("$")||q.includes("%")||q.includes("`")||q.includes("*")||q.includes("?")||q.includes("[")||q.includes("{")||q.startsWith("!")||q.startsWith("=")||q.startsWith("~")}function T$Y(q,K,_,z,Y,$,A){let O=(w)=>typeof w==="string"&&/^\d+$/.test(w.trim());if(dH(q,">")||dH(q,">>")){let w=q.op;if(O(K)){if(_==="!"&&bb(z))return xB8(K.trim(),w,z,$,A,2);if(_==="!"&&My(z))return{skip:0,dangerous:!0};if(dH(_,"|")&&bb(z))return xB8(K.trim(),w,z,$,A,2);if(dH(_,"|")&&My(z))return{skip:0,dangerous:!0};if(typeof _==="string"&&_.startsWith("!")&&_.length>1&&_[1]!=="!"&&_[1]!=="-"&&_[1]!=="?"&&!/^!\d/.test(_)){let j=_.substring(1);if(My(j))return{skip:0,dangerous:!0};return xB8(K.trim(),w,j,$,A,1)}return xB8(K.trim(),w,_,$,A,1)}if(dH(_,"|")&&bb(z))return $.push({target:z,operator:w}),{skip:2,dangerous:!1};if(dH(_,"|")&&My(z))return{skip:0,dangerous:!0};if(_==="!"&&bb(z))return $.push({target:z,operator:w}),{skip:2,dangerous:!1};if(_==="!"&&My(z))return{skip:0,dangerous:!0};if(typeof _==="string"&&_.startsWith("!")&&_.length>1&&_[1]!=="!"&&_[1]!=="-"&&_[1]!=="?"&&!/^!\d/.test(_)){let j=_.substring(1);if(My(j))return{skip:0,dangerous:!0};return $.push({target:j,operator:w}),{skip:1,dangerous:!1}}if(dH(_,"&")){if(z==="!"&&bb(Y))return $.push({target:Y,operator:w}),{skip:3,dangerous:!1};if(z==="!"&&My(Y))return{skip:0,dangerous:!0};if(dH(z,"|")&&bb(Y))return $.push({target:Y,operator:w}),{skip:3,dangerous:!1};if(dH(z,"|")&&My(Y))return{skip:0,dangerous:!0};if(bb(z))return $.push({target:z,operator:w}),{skip:2,dangerous:!1};if(My(z))return{skip:0,dangerous:!0}}if(bb(_))return $.push({target:_,operator:w}),{skip:1,dangerous:!1};if(My(_))return{skip:0,dangerous:!0}}if(dH(q,">&")){if(O(K)&&O(_))return{skip:0,dangerous:!1};if(dH(_,"|")&&bb(z))return $.push({target:z,operator:">"}),{skip:2,dangerous:!1};if(dH(_,"|")&&My(z))return{skip:0,dangerous:!0};if(_==="!"&&bb(z))return $.push({target:z,operator:">"}),{skip:2,dangerous:!1};if(_==="!"&&My(z))return{skip:0,dangerous:!0};if(bb(_)&&!O(_))return $.push({target:_,operator:">"}),{skip:1,dangerous:!1};if(!O(_)&&My(_))return{skip:0,dangerous:!0}}return{skip:0,dangerous:!1}}function xB8(q,K,_,z,Y,$=1){let A=q==="1",O=_&&bb(_)&&typeof _==="string"&&!/^\d+$/.test(_),w=typeof _==="string"&&/^\d+$/.test(_.trim());if(Y.length>0)Y.pop();if(!w&&My(_))return{skip:0,dangerous:!0};if(O){if(z.push({target:_,operator:K}),!A)Y.push(q+K,_);return{skip:$,dangerous:!1}}if(!A){if(Y.push(q+K),_)return Y.push(_),{skip:1,dangerous:!1}}return{skip:0,dangerous:!1}}function XZK(q,K,_){if(!q||typeof q!=="string")return!1;if(q==="$")return!0;if(q.endsWith("$")){if(q.includes("=")&&q.endsWith("=$"))return!0;let z=1;for(let Y=_+1;Y<K.length&&z>0;Y++){if(dH(K[Y],"("))z++;if(dH(K[Y],")")&&--z===0){let $=K[Y+1];return!!($&&typeof $==="string"&&!$.startsWith(" "))}}}return!1}function v$Y(q){if(/^\d+>>?$/.test(q))return!1;if(/\s/.test(q))return!0;if(q.length===1&&"><|&;()".includes(q))return!0;return!1}function Y56(q,K,_=!1){if(!q||_)return q+K;return q+" "+K}function k$Y(q,K){if(!q.length)return K;let _="",z=0,Y=!1;for(let $=0;$<q.length;$++){let A=q[$],O=q[$-1],w=q[$+1];if(typeof A==="string"){let J=/[|&;]/.test(A)?`"${A}"`:v$Y(A)?E4([A]):A,M=J.endsWith("$"),X=w&&typeof w==="object"&&"op"in w&&w.op==="(",P=_.endsWith("(")||O==="$"||typeof O==="object"&&O&&"op"in O&&O.op===")";if(_.endsWith("<("))_+=" "+J;else _=Y56(_,J,P);continue}if(typeof A!=="object"||!A||!("op"in A))continue;let j=A.op;if(j==="glob"&&"pattern"in A){_=Y56(_,A.pattern);continue}if(j===">&"&&typeof O==="string"&&/^\d+$/.test(O)&&typeof w==="string"&&/^\d+$/.test(w)){let H=_.lastIndexOf(O);_=_.slice(0,H)+O+j+w,$++;continue}if(j==="<"&&dH(w,"<")){let H=q[$+2];if(H&&typeof H==="string"){_=Y56(_,H),$+=2;continue}}if(j==="<<<"){_=Y56(_,j);continue}if(j==="("){if(XZK(O,q,$)||z>0){if(z++,_.endsWith(" "))_=_.slice(0,-1);_+="("}else if(_.endsWith("$"))if(XZK(O,q,$))z++,_+="(";else _=Y56(_,"(");else{let J=_.endsWith("<(")||_.endsWith("(");_=Y56(_,"(",J)}continue}if(j===")"){if(Y){Y=!1,_+=")";continue}if(z>0)z--;_+=")";continue}if(j==="<("){Y=!0,_=Y56(_,j);continue}if(["&&","||","|",";",">",">>","<"].includes(j))_=Y56(_,j)}return _.trim()||K}var Zh6,f$Y=`<policy_spec> |
| 5107 | # Claude Code Code Bash command prefix detection |
| 5108 |
no test coverage detected