summaryrefslogtreecommitdiffhomepage
path: root/packages/ui/src/context
diff options
context:
space:
mode:
Diffstat (limited to 'packages/ui/src/context')
-rw-r--r--packages/ui/src/context/worker-pool.tsx16
1 files changed, 13 insertions, 3 deletions
diff --git a/packages/ui/src/context/worker-pool.tsx b/packages/ui/src/context/worker-pool.tsx
index fc2eecc03..5f788f786 100644
--- a/packages/ui/src/context/worker-pool.tsx
+++ b/packages/ui/src/context/worker-pool.tsx
@@ -1,10 +1,20 @@
import type { WorkerPoolManager } from "@pierre/diffs/worker"
import { createSimpleContext } from "./helper"
-const ctx = createSimpleContext<WorkerPoolManager | undefined, { pool: WorkerPoolManager | undefined }>({
+export type WorkerPools = {
+ unified: WorkerPoolManager | undefined
+ split: WorkerPoolManager | undefined
+}
+
+const ctx = createSimpleContext<WorkerPools, { pools: WorkerPools }>({
name: "WorkerPool",
- init: (props) => props.pool,
+ init: (props) => props.pools,
})
export const WorkerPoolProvider = ctx.provider
-export const useWorkerPool = ctx.use
+
+export function useWorkerPool(diffStyle: "unified" | "split" | undefined) {
+ const pools = ctx.use()
+ if (diffStyle === "split") return pools.split
+ return pools.unified
+}