UNPKG

everything-dev

Version:

A consolidated product package for building Module Federation apps with oRPC APIs.

30 lines (28 loc) • 1.19 kB
const require_merge = require('../merge.cjs'); const require_config = require('../config.cjs'); const require_serialize = require('../descriptor/serialize.cjs'); let node_fs = require("node:fs"); let node_path = require("node:path"); //#region src/utils/save-config.ts /** * Persists config changes onto the project's authored surface: the authored * `bos.app.ts` descriptor when present (the serializer drops pipeline state — * production URLs and integrity), else the legacy `bos.config.json` as-is. */ async function saveBosConfig(configDir, config) { const entryPath = require_config.localConfigEntryPath(configDir); if (entryPath?.endsWith(".app.ts")) { (0, node_fs.writeFileSync)(entryPath, require_serialize.serializeAppDescriptorSource(config)); return; } const filePath = (0, node_path.join)(configDir, "bos.config.json"); const ordered = require_merge.rebuildOrderedConfig(config); const next = `${JSON.stringify(ordered, null, 2)}\n`; try { if ((0, node_fs.readFileSync)(filePath, "utf8") === next) return; } catch {} (0, node_fs.writeFileSync)(filePath, next); } //#endregion exports.saveBosConfig = saveBosConfig; //# sourceMappingURL=save-config.cjs.map