aboutsummaryrefslogtreecommitdiff
path: root/src/cdp/event-queue.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/cdp/event-queue.ts')
-rw-r--r--src/cdp/event-queue.ts47
1 files changed, 0 insertions, 47 deletions
diff --git a/src/cdp/event-queue.ts b/src/cdp/event-queue.ts
index 330bdb8..08024b0 100644
--- a/src/cdp/event-queue.ts
+++ b/src/cdp/event-queue.ts
@@ -1,9 +1,5 @@
-import { type Result, err } from "../util/result";
-import { type CdpError, cdpError } from "./errors";
import type { CdpEvent } from "./types";
-export type CdpResult = Result<unknown, CdpError>;
-
export type EventQueue = {
readonly push: (e: CdpEvent) => void;
readonly end: () => void;
@@ -40,46 +36,3 @@ export const makeEventQueue = (): EventQueue => {
},
};
};
-
-export type Pending = {
- readonly resolve: (v: Result<unknown, CdpError>) => void;
- readonly timer: ReturnType<typeof setTimeout>;
- readonly method: string;
-};
-
-export const rejectAllPending = (pending: Map<number, Pending>, reason: string): void => {
- for (const [, p] of pending) {
- clearTimeout(p.timer);
- p.resolve(err(cdpError("transport_closed", reason, p.method)));
- }
- pending.clear();
-};
-
-export const sendWithTimeout = (
- pending: Map<number, Pending>,
- id: number,
- method: string,
- timeoutMs: number,
- timeoutLabel: string,
- send: () => void,
-): Promise<CdpResult> =>
- new Promise((resolve) => {
- const timer = setTimeout(() => {
- pending.delete(id);
- resolve(err(cdpError("timeout", `${timeoutLabel} timeout after ${timeoutMs}ms: ${method}`, method)));
- }, timeoutMs);
- pending.set(id, { resolve, timer, method });
- try {
- send();
- } catch (e) {
- clearTimeout(timer);
- pending.delete(id);
- resolve(err(cdpError("transport_closed", e instanceof Error ? e.message : String(e), method)));
- }
- });
-
-export const makeOnClose = (closeListeners: Set<() => void>) =>
- (cb: () => void): (() => void) => {
- closeListeners.add(cb);
- return () => closeListeners.delete(cb);
- };