diff --git a/server/lib/fragments.ts b/server/lib/fragments.ts index ce96907..7808d80 100644 --- a/server/lib/fragments.ts +++ b/server/lib/fragments.ts @@ -35,24 +35,24 @@ export async function loadFragments(db: D1Database): Promise { export async function saveFragments(db: D1Database, fragments: NamedFragment[]): Promise { const now = Date.now(); - + // Load existing fragments to determine what to delete const existing = await loadFragments(db); const existingKeys = new Set(existing.map((f) => `${f.id}:${f.groupId ?? ""}`)); const newKeys = new Set(fragments.map((f) => `${f.id}:${f.groupId ?? ""}`)); - + const statements: D1PreparedStatement[] = []; - + // Delete fragments that are no longer present for (const key of existingKeys) { if (!newKeys.has(key)) { const [id, groupId] = key.split(":"); statements.push( - db.prepare("DELETE FROM d1_fragments WHERE id = ? AND group_id = ?").bind(id, groupId) + db.prepare("DELETE FROM d1_fragments WHERE id = ? AND group_id = ?").bind(id, groupId), ); } } - + // Upsert all fragments for (const f of fragments) { statements.push( @@ -68,6 +68,6 @@ export async function saveFragments(db: D1Database, fragments: NamedFragment[]): .bind(f.id, f.groupId ?? "", f.name, JSON.stringify(f.node), now, now), ); } - + await db.batch(statements); } diff --git a/server/lib/storage/config-store.ts b/server/lib/storage/config-store.ts index 6dcd63c..309a0f2 100644 --- a/server/lib/storage/config-store.ts +++ b/server/lib/storage/config-store.ts @@ -88,10 +88,13 @@ export function d1ConfigStore(db: D1Database, kv: KVNamespace): ConfigStore { return []; } - function routeStatements(routes: Route[], existingRouteKeys?: Set): D1PreparedStatement[] { + function routeStatements( + routes: Route[], + existingRouteKeys?: Set, + ): D1PreparedStatement[] { const now = Date.now(); const statements: D1PreparedStatement[] = []; - + // If we have existing routes, delete those not in the new set if (existingRouteKeys) { const newKeys = new Set(routes.map((r) => `${r.id}:${r.groupId ?? ""}`)); @@ -99,7 +102,7 @@ export function d1ConfigStore(db: D1Database, kv: KVNamespace): ConfigStore { if (!newKeys.has(key)) { const [id, groupId] = key.split(":"); statements.push( - db.prepare("DELETE FROM d1_routes WHERE id = ? AND group_id = ?").bind(id, groupId) + db.prepare("DELETE FROM d1_routes WHERE id = ? AND group_id = ?").bind(id, groupId), ); } } @@ -107,7 +110,7 @@ export function d1ConfigStore(db: D1Database, kv: KVNamespace): ConfigStore { // Backward compatibility: delete all routes if no existing set provided statements.push(db.prepare("DELETE FROM d1_routes")); } - + // Upsert all routes for (const r of routes) { statements.push( @@ -142,7 +145,7 @@ export function d1ConfigStore(db: D1Database, kv: KVNamespace): ConfigStore { ), ); } - + return statements; }