igir
Version:
🕹 A zero-setup ROM collection manager that sorts, filters, extracts or archives, patches, and reports on collections of any size on any OS.
32 lines (31 loc) • 868 B
JavaScript
import crypto from "node:crypto";
import os from "node:os";
import path from "node:path";
import DateUtil from "../utils/dateUtil.js";
import FsUtil from "../utils/fsUtil.js";
import Package from "./package.js";
class Temp {
// Note: this default path is explicitly not created immediately in case it gets changed by CLI
// options
static globalTempDir = path.join(
os.tmpdir(),
Package.NAME,
DateUtil.format("YYYYMMDD-HHmmss") + (process.env.NODE_ENV === "test" ? `.${crypto.randomBytes(4).readUInt32LE().toString(36)}` : "")
);
static getTempDir() {
return this.globalTempDir;
}
static setTempDir(globalTempDir) {
this.globalTempDir = globalTempDir;
}
}
process.once("exit", () => {
FsUtil.rmSync(Temp.getTempDir(), {
force: true,
recursive: true
});
});
export {
Temp as default
};
//# sourceMappingURL=temp.js.map