UNPKG

file-cms

Version:

File based Content Management System, easy to use with content stored in native file system

22 lines (21 loc) 790 B
import { __awaiter, __generator } from "tslib"; import { readdir } from "fs/promises"; import path from "path"; var cache = {}; export var listDirCached = function (dir) { return __awaiter(void 0, void 0, void 0, function () { var normalizedDir, _a, _b; return __generator(this, function (_c) { switch (_c.label) { case 0: normalizedDir = path.normalize(dir); if (!(cache[normalizedDir] === undefined)) return [3 /*break*/, 2]; _a = cache; _b = normalizedDir; return [4 /*yield*/, readdir(normalizedDir)]; case 1: _a[_b] = _c.sent(); _c.label = 2; case 2: return [2 /*return*/, cache[normalizedDir]]; } }); }); };