core/persistence/journal.persistence.ts
core/persistence/journal.persistence.ts is a file in Bane's Lab Build Scripts. 14 lines of code and 2 definitions.
import { EMPTY_JOURNAL, parseJournal } from "#core/converters/journal.converter";
import { existsSync, readFileSync } from "node:fs";
import type { Journal } from "#types/journal.types";
import { absolutePath } from "@ssot/paths";
import { writeCanonicalJson } from "@govlab/canonical-write";
export const readJournal = function readJournal(file = absolutePath("app.journal")): Journal {
return existsSync(file) ? parseJournal(readFileSync(file, "utf8")) : EMPTY_JOURNAL;
};
export const persistJournal = async function persistJournal(
journal: Journal,
file = absolutePath("app.journal"),
): Promise<void> {
await writeCanonicalJson(file, journal);
};