UNPKG

vanzy-protect

Version:

Epic Obfuscator Yeahhh

58 lines (57 loc) 2.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.loadConfig = exports.__cfg = void 0; const fs = require("fs"); const YAML = require("yaml"); const createRandomSeed_1 = require("../random/createRandomSeed"); function tlvl(o, d) { if (o === 0) return 0; if (o === 1) return 1; if (o === 2) return 2; if (o === 3) return 3; return d; } const numer = (a, n) => typeof a === 'number' ? a : n; const arr = (a, v) => Array.isArray(a) ? a : v; function loadConfig(f) { const string = String(fs.readFileSync(f)); const obj = YAML.parse(string) ?? {}; const data = { transforms: { obfuscateNames: obj.transforms?.obfuscateNames ?? true, obfuscateBooleans: obj.transforms?.obfuscateBooleans ?? true, keyObfuscationLevel: tlvl(obj.transforms?.keyObfuscationLevel, 2), stringObfLevel: tlvl(obj.transforms?.stringObfLevel, 3), numberObfLevel: tlvl(obj.transforms?.numberObfLevel, 3), extractStringsToArray: obj.transforms?.extractStringsToArray ?? false, addFakeStringsToArray: obj.transforms?.addFakeStringsToArray ?? true, ignore: arr(obj.transforms?.ignore, []), webMode: obj.transforms?.webMode ?? false, noES2021Syntax: obj.transforms?.noES2021Syntax ?? false }, format: { amogus: { start: obj.format?.amogus?.start ?? true, end: obj.format?.amogus?.end ?? false, }, epicEndArt: obj.format?.epicEndArt ?? true, lineStart: obj.format?.lineStart ?? true, lineEnd: obj.format?.lineEnd ?? false, removeEmptyLines: obj.format?.removeEmptyLines ?? false, shrink: obj.format?.shrink ?? false, commentFrequency: tlvl(obj.format?.commentFrequency, 2), comments: obj.format?.comments || false }, input: { esVersion: numer(obj.input?.esVersion, 6), seed: obj.input?.seed || (0, createRandomSeed_1.createRandomSeed)() } }; exports.__cfg = data; return data; } exports.loadConfig = loadConfig;