@knapsack/app
Version:
Build Design Systems with Knapsack
63 lines • 3.01 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildMetaFileHelper = exports.getTemplateInspectFileHelper = exports.getRendererDiscoveryFileHelper = exports.discoveryFileHelper = exports.appClientDataFileHelper = exports.emptyTemplateInspectCache = exports.emptyKsCacheDir = exports.ksCacheDir = void 0;
exports.writePortFile = writePortFile;
const file_utils_1 = require("@knapsack/file-utils");
const types_1 = require("@knapsack/types");
const find_cache_dir_1 = __importDefault(require("find-cache-dir"));
const os_1 = __importDefault(require("os"));
const tempDir = os_1.default.tmpdir();
/**
* Cache directory. Likely will be `node_modules/.cache/@knapsack/app/` but falls back to the `/tmp` directory if it has problems.
*/
exports.ksCacheDir = ((0, find_cache_dir_1.default)({
name: '@knapsack/app',
create: true,
}) || tempDir);
const ksTempDir = (0, file_utils_1.join)(tempDir, '@knapsack/app');
const templateInspectDir = (0, file_utils_1.join)(ksTempDir, 'template-inspect');
/** Deletes contents of cache directory – directory itself remains */
const emptyKsCacheDir = () => (0, file_utils_1.emptyDir)(exports.ksCacheDir);
exports.emptyKsCacheDir = emptyKsCacheDir;
/** Deletes template inspect cache to prevent stale cache when components change */
const emptyTemplateInspectCache = () => (0, file_utils_1.emptyDir)(templateInspectDir);
exports.emptyTemplateInspectCache = emptyTemplateInspectCache;
exports.appClientDataFileHelper = (0, file_utils_1.createJsonFileHelper)({
dir: exports.ksCacheDir,
fileName: 'app-client-data.json',
});
exports.discoveryFileHelper = (0, file_utils_1.createJsonFileHelper)({
dir: exports.ksCacheDir,
fileName: 'discovery.json',
});
const getRendererDiscoveryFileHelper = (rendererId) => {
return (0, file_utils_1.createJsonFileHelper)({
dir: exports.ksCacheDir,
fileName: `renderer-discovery-${rendererId}.json`,
});
};
exports.getRendererDiscoveryFileHelper = getRendererDiscoveryFileHelper;
const getTemplateInspectFileHelper = (templateInfo) => {
const id = (0, types_1.createTemplateInfoId)(templateInfo).replace(/[/\\]/g, '_');
return (0, file_utils_1.createJsonFileHelper)({
dir: (0, file_utils_1.join)(templateInspectDir, templateInfo.rendererId),
fileName: `${id}.json`,
});
};
exports.getTemplateInspectFileHelper = getTemplateInspectFileHelper;
const portFilePath = (0, file_utils_1.join)(exports.ksCacheDir, 'port.txt');
(0, file_utils_1.removeSync)(portFilePath);
async function writePortFile(port) {
return (0, file_utils_1.writeFile)({
path: portFilePath,
contents: port.toString(),
});
}
exports.buildMetaFileHelper = (0, file_utils_1.createJsonFileHelper)({
dir: exports.ksCacheDir,
fileName: 'build-meta.json',
});
//# sourceMappingURL=cache-dir.js.map