Files
upstream-mirror 135ffdb085
Some checks failed
Admin | Playwright Tests / Admin | Playwright Tests | Shard 1 Of 6 (push) Failing after 37s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 2 Of 6 (push) Failing after 7s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 4 Of 6 (push) Failing after 7s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 6 Of 6 (push) Failing after 6s
Linting Tests / PHP 8.3 test on ubuntu-latest (push) Failing after 5s
CI / PHP 8.3 test on ubuntu-latest (push) Failing after 6s
Skills Consistency / validate-skills (push) Successful in 10s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 3 Of 6 (push) Failing after 7s
Admin | Playwright Tests / Admin | Playwright Tests | Shard 5 Of 6 (push) Failing after 6s
snapshot of https://github.com/krayin/laravel-crm.git (2.2, 2026-09-18; blobs > 131072B omitted)
2026-09-18 04:37:41 +05:00

50 lines
1023 B
TypeScript

import fs from "fs";
import path from "path";
import { fileURLToPath } from "url";
const __dirname = path.dirname(fileURLToPath(import.meta.url));
const dataFile = path.resolve(
__dirname,
"../test-data/runtime.json"
);
function readJson(): Record<string, any> {
if (!fs.existsSync(dataFile)) {
return {};
}
try {
return JSON.parse(fs.readFileSync(dataFile, "utf-8"));
} catch {
// Corrupt or partial write protection
return {};
}
}
function writeJson(data: Record<string, any>) {
const dir = path.dirname(dataFile);
if (!fs.existsSync(dir)) {
fs.mkdirSync(dir, { recursive: true });
}
fs.writeFileSync(dataFile, JSON.stringify(data, null, 2));
}
export function saveData(key: string, value: unknown): void {
const data = readJson();
data[key] = value;
writeJson(data);
}
export function getData<T>(key: string): T {
const data = readJson();
if (!(key in data)) {
throw new Error(`❌ Runtime data key not found: "${key}"`);
}
return data[key] as T;
}