Files
erika/lib/admin-form-save-bridge.ts
T

17 lines
348 B
TypeScript

"use client";
type FlushSave = () => Promise<void>;
const pendingSaves = new Set<FlushSave>();
export function registerPendingSave(flush: FlushSave) {
pendingSaves.add(flush);
return () => {
pendingSaves.delete(flush);
};
}
export async function flushPendingSaves() {
await Promise.all([...pendingSaves].map((flush) => flush()));
}