mirror of
https://github.com/k1tbyte/Wand-Enhancer.git
synced 2026-08-28 17:01:04 +00:00
13759b1db6
- reduce ASAR IO overhead with streamed archive reads, buffered copies, faster relative-path handling and placeholder integrity records - fix in-place app.asar.unpacked packing/extraction self-copy cases that caused locked-file failures - tighten JS patch discovery with candidate bundle filters and search hints - require prebuilt remote-panel dist artifacts and clean up embedded bridge/script packaging - add unified build entrypoints for PowerShell, cmd and bash and move native CMake output under .tmp - add release metadata validation, changelog section extraction, pre-commit hook and GitHub Actions validation/release pipelines - make CHANGELOG the source of truth for release notes and document the tag-driven release flow - add updater release notes UI with latest/full changelog loading and localize the new update strings - modularize bridge renderer scripts, add installed apps and game status sync, and support remote launch/stop commands - centralize bridge protocol, IPC and WebSocket constants and improve LAN IP selection for QR pairing - refactor remote panel controls/state enums, persist accent color, polish library/session UI and refresh assets
36 lines
1.1 KiB
JavaScript
36 lines
1.1 KiB
JavaScript
const fs = require('node:fs');
|
|
const os = require('node:os');
|
|
const path = require('node:path');
|
|
|
|
const { BRIDGE_LOG_FILE_NAME } = require('./constants.cjs');
|
|
|
|
function writeLogLine(logFile, level, message, error) {
|
|
const method = level === 'error' ? 'error' : level === 'warn' ? 'warn' : 'info';
|
|
const tag = `[wand-remote-bridge] ${message}`;
|
|
|
|
try {
|
|
console[method](tag, error || '');
|
|
} catch { }
|
|
|
|
try {
|
|
const detail = error ? ` :: ${error && error.stack ? error.stack : String(error)}` : '';
|
|
fs.appendFileSync(logFile, `[${new Date().toISOString()}] [${level}] ${message}${detail}\n`);
|
|
} catch { }
|
|
}
|
|
|
|
function createBridgeLogger(options = {}) {
|
|
const logFile = options.logFile || path.join(os.tmpdir(), BRIDGE_LOG_FILE_NAME);
|
|
const log = (level, message, error) => writeLogLine(logFile, level, message, error);
|
|
log.file = logFile;
|
|
return log;
|
|
}
|
|
|
|
function writeInstallLog(level, message, error) {
|
|
writeLogLine(path.join(os.tmpdir(), BRIDGE_LOG_FILE_NAME), level, message, error);
|
|
}
|
|
|
|
module.exports = {
|
|
createBridgeLogger,
|
|
writeInstallLog,
|
|
};
|