This commit is contained in:
Rizky 2024-07-02 13:52:00 +07:00
parent 4ecc332717
commit e6dac3d767
1 changed files with 38 additions and 40 deletions

View File

@ -91,51 +91,49 @@ export const _ = {
const codepath = arr.join("/"); const codepath = arr.join("/");
const build_path = code.path(site_id, "site", "build", codepath); const build_path = code.path(site_id, "site", "build", codepath);
try {
let file = Bun.file(build_path);
const ts = file.lastModified;
if ( if (
g.code_index_cache && g.code_index_cache &&
g.code_index_cache[site_id] && g.code_index_cache[site_id] &&
g.code_index_cache[site_id][build_path] && g.code_index_cache[site_id][build_path] &&
g.code_index_cache[site_id][build_path].content g.code_index_cache[site_id][build_path].content &&
g.code_index_cache[site_id][build_path] &&
g.code_index_cache[site_id][build_path].ts === ts
) { ) {
return new Response( return new Response(
g.code_index_cache[site_id][build_path].content, g.code_index_cache[site_id][build_path].content,
{ {
headers: { headers: {
"content-encoding": "br", "content-encoding": "br",
"content-type": g.code_index_cache[site_id][build_path].type, "content-type":
g.code_index_cache[site_id][build_path].type,
}, },
} }
); );
} }
try { // if (!(await file.exists())) {
let file = Bun.file(build_path); // const root = `/code/${site_id}/site/src`;
// await ensureLib(root, site_id);
// await ensureFiles(root, site_id);
// await initFrontEnd(root, site_id);
// await new Promise<void>((resolve) => {
// const ival = setInterval(async () => {
// file = Bun.file(build_path);
// const exists = await file.exists();
// if (exists) {
// clearInterval(ival);
// resolve();
// }
// }, 100);
// });
// }
if (!(await file.exists())) {
const root = `/code/${site_id}/site/src`;
await ensureLib(root, site_id);
await ensureFiles(root, site_id);
await initFrontEnd(root, site_id);
await new Promise<void>((resolve) => {
const ival = setInterval(async () => {
file = Bun.file(build_path);
const exists = await file.exists();
if (exists) {
clearInterval(ival);
resolve();
}
}, 100);
});
}
const ts = file.lastModified;
if (!g.code_index_cache) g.code_index_cache = {}; if (!g.code_index_cache) g.code_index_cache = {};
if (!g.code_index_cache[site_id]) g.code_index_cache[site_id] = {}; if (!g.code_index_cache[site_id]) g.code_index_cache[site_id] = {};
if ( if (!g.code_index_cache[site_id][build_path]) {
!g.code_index_cache[site_id][build_path] ||
(g.code_index_cache[site_id][build_path] &&
g.code_index_cache[site_id][build_path].ts !== ts)
) {
if (!g.code_index_compressing) if (!g.code_index_compressing)
g.code_index_compressing = new Set(); g.code_index_compressing = new Set();