@@ -45,7 +45,7 @@ export async function processScript(script: string) {
4545 }
4646 }
4747
48- let detectedSeclevel : number | undefined
48+ let detectedSeclevel = 4
4949
5050 if ( script . match ( / [ # $ ] [ n 0 ] s \. [ a - z _ ] [ a - z _ 0 - 9 ] { 0 , 24 } \. [ a - z _ ] [ a - z _ 0 - 9 ] { 0 , 24 } \( / ) )
5151 detectedSeclevel = 0
@@ -55,15 +55,13 @@ export async function processScript(script: string) {
5555 detectedSeclevel = 2
5656 else if ( script . match ( / [ # $ ] [ h 3 ] s \. [ a - z _ ] [ a - z _ 0 - 9 ] { 0 , 24 } \. [ a - z _ ] [ a - z _ 0 - 9 ] { 0 , 24 } \( / ) )
5757 detectedSeclevel = 3
58- else if ( script . match ( / [ # $ ] [ f 4 ] s \. [ a - z _ ] [ a - z _ 0 - 9 ] { 0 , 24 } \. [ a - z _ ] [ a - z _ 0 - 9 ] { 0 , 24 } \( / ) )
59- detectedSeclevel = 4
6058
6159 const seclevelNames = [ "NULLSEC" , "LOWSEC" , "MIDSEC" , "HIGHSEC" , "FULLSEC" ]
6260
6361 if ( seclevel == undefined )
64- seclevel = seclevel ?? detectedSeclevel ?? 4
65- else if ( detectedSeclevel != undefined && seclevel > detectedSeclevel )
66- throw new Error ( `detected seclevel of ${ seclevelNames [ detectedSeclevel ] } is lower than the provided seclevel of ${ seclevelNames [ seclevel ] } ` )
62+ seclevel = detectedSeclevel
63+ else if ( detectedSeclevel < seclevel )
64+ throw new Error ( `detected seclevel ${ seclevelNames [ detectedSeclevel ] } is lower than stated seclevel ${ seclevelNames [ seclevel ] } ` )
6765
6866 const semicolons = script . match ( / ; / g) ?. length ?? 0
6967
@@ -95,15 +93,13 @@ export async function processScript(script: string) {
9593 for ( const node of query ( ast , "ClassBody > MethodDefinition[kind=constructor] > FunctionExpression > BlockStatement" ) as ASTNodes . BlockStatement [ ] ) {
9694 node . body . unshift ( {
9795 type : "VariableDeclaration" ,
98- declarations : [
99- {
100- type : "VariableDeclarator" ,
101- id : {
102- type : "Identifier" ,
103- name : "__THIS__"
104- }
96+ declarations : [ {
97+ type : "VariableDeclarator" ,
98+ id : {
99+ type : "Identifier" ,
100+ name : "__THIS__"
105101 }
106- ] ,
102+ } ] ,
107103 kind : "let"
108104 } )
109105 }
@@ -145,9 +141,7 @@ export async function processScript(script: string) {
145141 callee : {
146142 type : "MemberExpression" ,
147143 computed : false ,
148- object : {
149- type : "Super"
150- } ,
144+ object : { type : "Super" } ,
151145 property : {
152146 type : "Identifier" ,
153147 name : "valueOf"
@@ -176,7 +170,11 @@ export async function processScript(script: string) {
176170 script = ( await minify ( script , {
177171 ecma : 2015 ,
178172 parse : { bare_returns : true } ,
179- compress : { booleans : false }
173+ compress : {
174+ passes : Infinity ,
175+ unsafe : true ,
176+ booleans : false
177+ }
180178 } ) ) . code || ""
181179
182180 let blockStatementIndex : number
0 commit comments