From 43484766e4eff23dd289cd94b443035dca9b327c Mon Sep 17 00:00:00 2001 From: Rizky Date: Fri, 16 Aug 2024 10:30:03 +0700 Subject: [PATCH] fix --- app/srv/ws/sync/code/parts/init/frontend.ts | 13 +++++++------ app/srv/ws/sync/code/parts/internal.ts | 2 +- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/app/srv/ws/sync/code/parts/init/frontend.ts b/app/srv/ws/sync/code/parts/init/frontend.ts index a0b2f162..8961582f 100644 --- a/app/srv/ws/sync/code/parts/init/frontend.ts +++ b/app/srv/ws/sync/code/parts/init/frontend.ts @@ -31,9 +31,7 @@ export const initFrontEnd = async ( } else { if (force) { try { - existing.watch.close(); await existing.ctx.dispose(); - delete code.internal.frontend[id_site]; } catch (e) {} } else { if (existing.ctx) { @@ -71,10 +69,14 @@ export const initFrontEnd = async ( }; code.internal.frontend[id_site] = { + ...(code.internal.frontend[id_site] || {}), ctx: await initBuildCtx({ id_site, root }), timeout: null, rebuilding: false, - watch: watch( + }; + + if (!code.internal.frontend[id_site].watch) { + code.internal.frontend[id_site].watch = watch( dir.data(root), { recursive: true, @@ -120,8 +122,8 @@ export const initFrontEnd = async ( } } } - ), - }; + ); + } const fe = code.internal.frontend[id_site]; fe.rebuilding = true; try { @@ -133,7 +135,6 @@ export const initFrontEnd = async ( fe.rebuilding = false; } catch (e: any) { console.error("Error building front end", id_site); - delete code.internal.frontend[id_site]; } }; diff --git a/app/srv/ws/sync/code/parts/internal.ts b/app/srv/ws/sync/code/parts/internal.ts index 9a560af5..1d313a31 100644 --- a/app/srv/ws/sync/code/parts/internal.ts +++ b/app/srv/ws/sync/code/parts/internal.ts @@ -24,7 +24,7 @@ export const codeInternal = { { ctx: BuildContext; timeout: any; - watch: FSWatcher; + watch?: FSWatcher; rebuilding: boolean; npm?: Promise; }