UNPKG

funnycode

Version:

obfuscation {js,ts,cjs,mjs} code

36 lines (30 loc) 1.13 kB
'use strict'; const fs = require('fs'); const node_process = require('node:process'); const path = require('path'); const CryptoJS = require('crypto-js'); const utils = require('./utils.cjs'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; } const path__default = /*#__PURE__*/_interopDefaultLegacy(path); const CryptoJS__default = /*#__PURE__*/_interopDefaultLegacy(CryptoJS); async function decode(key) { const cache = utils.loadCache(); if (!cache || Object.keys(cache).length === 0) utils.error(3); const cacheArray = Object.entries(cache); for (const c of cacheArray) { const [file, code] = c; const decryptCode = crypto(code, key); await fs.promises.writeFile(utils.winPath(path__default.join(utils.cwd, file)), decryptCode); console.log(`done ${file}`); } await save(); } function crypto(code, key) { return CryptoJS__default.AES.decrypt(code, key).toString(CryptoJS__default.enc.Utf8); } async function save() { await fs.promises.writeFile(utils.CACHE_PATH, "{}"); node_process.exit(0); } module.exports = decode;