openreader/src/lib/server/compute/index.ts
2026-05-26 18:43:05 -06:00

18 lines
577 B
TypeScript

import type { ComputeBackend } from '@/lib/server/compute/types';
import { isWorkerClientConfigAvailable, WorkerComputeBackend } from '@/lib/server/compute/worker';
let backendPromise: Promise<ComputeBackend> | null = null;
export async function getCompute(): Promise<ComputeBackend> {
if (!backendPromise) {
backendPromise = Promise.resolve(new WorkerComputeBackend()).catch((error) => {
backendPromise = null;
throw error;
});
}
return backendPromise;
}
export function isComputeAvailable(): boolean {
return isWorkerClientConfigAvailable();
}