/opt/canhelp/node_modules/next/dist/server/lib
Edit: /opt/canhelp/node_modules/next/dist/server/lib/disk-lru-cache.external.js.map (3146B)
{"version":3,"sources":["../../../src/server/lib/disk-lru-cache.external.ts"],"sourcesContent":["import { promises } from 'fs'\nimport { LRUCache } from './lru-cache'\n\n/**\n * Module-level LRU singleton for disk cache eviction.\n * Initialized once on first `set()`, shared across all consumers.\n * Once resolved, the promise stays resolved — subsequent calls just await the cached result.\n */\nlet _diskLRUPromise: Promise
> | null = null\n\n/**\n * Initialize or return the module-level LRU for disk cache eviction.\n * Concurrent calls are deduplicated via the shared promise.\n *\n * @param cacheDir - The directory where cached files are stored\n * @param maxDiskSize - Maximum disk cache size in bytes\n * @param readEntries - Callback to scan existing cache entries (format-agnostic)\n */\nexport async function getOrInitDiskLRU(\n cacheDir: string,\n maxDiskSize: number | undefined,\n readEntries: (\n cacheDir: string\n ) => Promise>,\n evictEntry: (cacheDir: string, cacheKey: string) => Promise\n): Promise> {\n if (!_diskLRUPromise) {\n _diskLRUPromise = (async () => {\n let maxSize = maxDiskSize\n if (typeof maxSize === 'undefined') {\n // Ensure cacheDir exists before checking disk space\n await promises.mkdir(cacheDir, { recursive: true })\n // Since config was not provided, default to 50% of available disk space\n const { bavail, bsize } = await promises.statfs(cacheDir)\n maxSize = Math.floor((bavail * bsize) / 2)\n }\n\n const lru = new LRUCache(\n maxSize,\n (size) => size,\n (cacheKey) => evictEntry(cacheDir, cacheKey)\n )\n\n const entries = await readEntries(cacheDir)\n for (const entry of entries) {\n lru.set(entry.key, entry.size)\n }\n\n return lru\n })()\n }\n return _diskLRUPromise\n}\n\n/**\n * Reset the module-level LRU singleton. Exported for testing only.\n */\nexport function resetDiskLRU(): void {\n _diskLRUPromise = null\n}\n"],"names":["getOrInitDiskLRU","resetDiskLRU","_diskLRUPromise","cacheDir","maxDiskSize","readEntries","evictEntry","maxSize","promises","mkdir","recursive","bavail","bsize","statfs","Math","floor","lru","LRUCache","size","cacheKey","entries","entry","set","key"],"mappings":";;;;;;;;;;;;;;;IAkBsBA,gBAAgB;eAAhBA;;IAuCNC,YAAY;eAAZA;;;oBAzDS;0BACA;AAEzB;;;;CAIC,GACD,IAAIC,kBAAoD;AAUjD,eAAeF,iBACpBG,QAAgB,EAChBC,WAA+B,EAC/BC,WAEoE,EACpEC,UAAiE;IAEjE,IAAI,CAACJ,iBAAiB;QACpBA,kBAAkB,AAAC,CAAA;YACjB,IAAIK,UAAUH;YACd,IAAI,OAAOG,YAAY,aAAa;gBAClC,oDAAoD;gBACpD,MAAMC,YAAQ,CAACC,KAAK,CAACN,UAAU;oBAAEO,WAAW;gBAAK;gBACjD,wEAAwE;gBACxE,MAAM,EAAEC,MAAM,EAAEC,KAAK,EAAE,GAAG,MAAMJ,YAAQ,CAACK,MAAM,CAACV;gBAChDI,UAAUO,KAAKC,KAAK,CAAC,AAACJ,SAASC,QAAS;YAC1C;YAEA,MAAMI,MAAM,IAAIC,kBAAQ,CACtBV,SACA,CAACW,OAASA,MACV,CAACC,WAAab,WAAWH,UAAUgB;YAGrC,MAAMC,UAAU,MAAMf,YAAYF;YAClC,KAAK,MAAMkB,SAASD,QAAS;gBAC3BJ,IAAIM,GAAG,CAACD,MAAME,GAAG,EAAEF,MAAMH,IAAI;YAC/B;YAEA,OAAOF;QACT,CAAA;IACF;IACA,OAAOd;AACT;AAKO,SAASD;IACdC,kBAAkB;AACpB","ignoreList":[0]}