Skip to content

Commit

Permalink
to esm
Browse files Browse the repository at this point in the history
  • Loading branch information
echo094 committed Jan 31, 2025
1 parent cbed4aa commit 215e6d6
Show file tree
Hide file tree
Showing 13 changed files with 74 additions and 64 deletions.
32 changes: 17 additions & 15 deletions src/plugin/jsconfuser.js
Original file line number Diff line number Diff line change
@@ -1,20 +1,22 @@
const { parse } = require('@babel/parser')
const generator = require('@babel/generator').default
const traverse = require('@babel/traverse').default
import { parse } from '@babel/parser'
import _generate from '@babel/generator'
const generator = _generate.default
import _traverse from '@babel/traverse'
const traverse = _traverse.default

const calculateConstantExp = require('../visitor/calculate-constant-exp')
const pruneIfBranch = require('../visitor/prune-if-branch')
const jcAntiTooling = require('../visitor/jsconfuser/anti-tooling')
const jcControlFlow = require('../visitor/jsconfuser/control-flow')
const jcDuplicateLiteral = require('../visitor/jsconfuser/duplicate-literal')
const jcGlobalConcealing = require('../visitor/jsconfuser/global-concealing')
const jcMinifyInit = require('../visitor/jsconfuser/minify')
const jcOpaquePredicates = require('../visitor/jsconfuser/opaque-predicates')
const jcStackInit = require('../visitor/jsconfuser/stack')
const jcStringCompression = require('../visitor/jsconfuser/string-compression')
const jcStringConceal = require('../visitor/jsconfuser/string-concealing')
import calculateConstantExp from '../visitor/calculate-constant-exp.js'
import pruneIfBranch from '../visitor/prune-if-branch.js'
import jcAntiTooling from '../visitor/jsconfuser/anti-tooling.js'
import jcControlFlow from '../visitor/jsconfuser/control-flow.js'
import jcDuplicateLiteral from '../visitor/jsconfuser/duplicate-literal.js'
import jcGlobalConcealing from '../visitor/jsconfuser/global-concealing.js'
import jcMinifyInit from '../visitor/jsconfuser/minify.js'
import jcOpaquePredicates from '../visitor/jsconfuser/opaque-predicates.js'
import jcStackInit from '../visitor/jsconfuser/stack.js'
import jcStringCompression from '../visitor/jsconfuser/string-compression.js'
import jcStringConceal from '../visitor/jsconfuser/string-concealing.js'

module.exports = function (code) {
export default function (code) {
let ast
try {
ast = parse(code, { errorRecovery: true })
Expand Down
2 changes: 1 addition & 1 deletion src/utility/check-func.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@ function checkPattern(code, pattern) {
return j == pattern.length
}

module.exports = {
export default {
checkPattern,
}
4 changes: 2 additions & 2 deletions src/utility/safe-func.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const t = require('@babel/types')
import * as t from '@babel/types'

function safeDeleteNode(name, path) {
let binding
Expand Down Expand Up @@ -64,7 +64,7 @@ function safeReplace(path, value) {
path.replaceWithSourceString(value)
}

module.exports = {
export default {
safeDeleteNode,
safeGetLiteral,
safeGetName,
Expand Down
4 changes: 2 additions & 2 deletions src/visitor/jsconfuser/anti-tooling.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const t = require('@babel/types')
import * as t from '@babel/types'

function deAntiToolingCheckFunc(path) {
if (path.node.params.length) {
Expand Down Expand Up @@ -50,4 +50,4 @@ const deAntiTooling = {
},
}

module.exports = deAntiTooling
export default deAntiTooling
4 changes: 2 additions & 2 deletions src/visitor/jsconfuser/control-flow.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const safeFunc = require('../../utility/safe-func')
import safeFunc from '../../utility/safe-func.js'
const safeGetLiteral = safeFunc.safeGetLiteral
const safeGetName = safeFunc.safeGetName
const safeReplace = safeFunc.safeReplace
Expand Down Expand Up @@ -176,7 +176,7 @@ const deControlFlowFlatteningState = {
},
}

module.exports = {
export default {
deControlFlowFlatteningStateless,
deControlFlowFlatteningState,
}
11 changes: 6 additions & 5 deletions src/visitor/jsconfuser/duplicate-literal.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
const generator = require('@babel/generator').default
const t = require('@babel/types')
import _generate from '@babel/generator'
const generator = _generate.default
import * as t from '@babel/types'

const ivm = require('isolated-vm')
import ivm from 'isolated-vm'
const isolate = new ivm.Isolate()

const safeFunc = require('../../utility/safe-func')
import safeFunc from '../../utility/safe-func.js'
const safeReplace = safeFunc.safeReplace

function checkArrayName(path) {
Expand Down Expand Up @@ -117,4 +118,4 @@ const deDuplicateLiteral = {
},
}

module.exports = deDuplicateLiteral
export default deDuplicateLiteral
13 changes: 7 additions & 6 deletions src/visitor/jsconfuser/global-concealing.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
const generator = require('@babel/generator').default
const t = require('@babel/types')
import _generate from '@babel/generator'
const generator = _generate.default
import * as t from '@babel/types'

const findGlobalFn = require('./global')
const safeFunc = require('../../utility/safe-func')
import findGlobalFn from './global.js'
import safeFunc from '../../utility/safe-func.js'
const safeDeleteNode = safeFunc.safeDeleteNode
const checkFunc = require('../../utility/check-func')
import checkFunc from '../../utility/check-func.js'
const checkPattern = checkFunc.checkPattern

function findGlobalVar(glo_name, glo_path) {
Expand Down Expand Up @@ -126,4 +127,4 @@ const deGlobalConcealing = {
},
}

module.exports = deGlobalConcealing
export default deGlobalConcealing
11 changes: 6 additions & 5 deletions src/visitor/jsconfuser/global.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
const generator = require('@babel/generator').default
const t = require('@babel/types')
import _generate from '@babel/generator'
const generator = _generate.default
import * as t from '@babel/types'

const safeFunc = require('../../utility/safe-func')
import safeFunc from '../../utility/safe-func.js'
const safeGetName = safeFunc.safeGetName
const checkFunc = require('../../utility/check-func')
import checkFunc from '../../utility/check-func.js'
const checkPattern = checkFunc.checkPattern

/**
Expand Down Expand Up @@ -80,4 +81,4 @@ function findGlobalFn(path) {
}
}

module.exports = findGlobalFn
export default findGlobalFn
5 changes: 3 additions & 2 deletions src/visitor/jsconfuser/minify.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
const generator = require('@babel/generator').default
import _generate from '@babel/generator'
const generator = _generate.default

function checkArrowWrap(path) {
if (path.node?.name !== 'arguments') {
Expand Down Expand Up @@ -59,7 +60,7 @@ function checkArrowWrap(path) {
* }
* ```
*/
module.exports = function () {
export default function () {
let arrowFunc = null
const deMinifyArrow = {
Identifier(path) {
Expand Down
13 changes: 7 additions & 6 deletions src/visitor/jsconfuser/opaque-predicates.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
const generator = require('@babel/generator').default
const t = require('@babel/types')
import _generate from '@babel/generator'
const generator = _generate.default
import * as t from '@babel/types'

const ivm = require('isolated-vm')
import ivm from 'isolated-vm'
const isolate = new ivm.Isolate()

const safeFunc = require('../../utility/safe-func')
import safeFunc from '../../utility/safe-func.js'
const safeDeleteNode = safeFunc.safeDeleteNode
const safeGetName = safeFunc.safeGetName
const safeReplace = safeFunc.safeReplace
const checkFunc = require('../../utility/check-func')
import checkFunc from '../../utility/check-func.js'
const checkPattern = checkFunc.checkPattern

function checkOpaqueObject(path) {
Expand Down Expand Up @@ -152,4 +153,4 @@ const deOpaquePredicates = {
},
}

module.exports = deOpaquePredicates
export default deOpaquePredicates
15 changes: 8 additions & 7 deletions src/visitor/jsconfuser/stack.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
const { parse } = require('@babel/parser')
const generator = require('@babel/generator').default
const t = require('@babel/types')
import { parse } from '@babel/parser'
import _generate from '@babel/generator'
const generator = _generate.default
import * as t from '@babel/types'

const ivm = require('isolated-vm')
import ivm from 'isolated-vm'
const isolate = new ivm.Isolate()

const calculateConstantExp = require('../calculate-constant-exp')
import calculateConstantExp from '../calculate-constant-exp.js'

const safeFunc = require('../../utility/safe-func')
import safeFunc from '../../utility/safe-func.js'
const safeGetName = safeFunc.safeGetName
const safeReplace = safeFunc.safeReplace

Expand Down Expand Up @@ -350,7 +351,7 @@ const deStackFuncOther = {
},
}

module.exports = function (func) {
export default function (func) {
arrowFunc = func
return {
deStackFuncLen,
Expand Down
11 changes: 6 additions & 5 deletions src/visitor/jsconfuser/string-compression.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
const generator = require('@babel/generator').default
import _generate from '@babel/generator'
const generator = _generate.default

const ivm = require('isolated-vm')
import ivm from 'isolated-vm'
const isolate = new ivm.Isolate()

const safeFunc = require('../../utility/safe-func')
import safeFunc from '../../utility/safe-func.js'
const safeReplace = safeFunc.safeReplace
const checkFunc = require('../../utility/check-func')
import checkFunc from '../../utility/check-func.js'
const checkPattern = checkFunc.checkPattern

function findStringDecoder(path) {
Expand Down Expand Up @@ -179,4 +180,4 @@ const deStringCompression = {
},
}

module.exports = deStringCompression
export default deStringCompression
13 changes: 7 additions & 6 deletions src/visitor/jsconfuser/string-concealing.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
const generator = require('@babel/generator').default
const t = require('@babel/types')
import _generate from '@babel/generator'
const generator = _generate.default
import * as t from '@babel/types'

const ivm = require('isolated-vm')
import ivm from 'isolated-vm'
const isolate = new ivm.Isolate()

const findGlobalFn = require('./global')
const safeFunc = require('../../utility/safe-func')
import findGlobalFn from './global.js'
import safeFunc from '../../utility/safe-func.js'
const safeDeleteNode = safeFunc.safeDeleteNode
const safeGetName = safeFunc.safeGetName
const safeReplace = safeFunc.safeReplace
Expand Down Expand Up @@ -446,7 +447,7 @@ const deStringConcealingPlace = {
},
}

module.exports = {
export default {
deStringConcealing,
deStringConcealingPlace,
}

0 comments on commit 215e6d6

Please sign in to comment.