Files
2026-07-15 23:19:00 +01:00

20 lines
444 B
TypeScript

const listeners = new Set<() => void>();
let pending = false;
export function requestNewTaskCreation(): void {
if (listeners.size === 0) {
pending = true;
return;
}
for (const listener of listeners) listener();
}
export function subscribeNewTaskCreationRequests(listener: () => void): () => void {
listeners.add(listener);
if (pending) {
pending = false;
listener();
}
return () => listeners.delete(listener);
}