Bläddra i källkod

feat: unwrap LocalContext namespace to flat exports + barrel

Kit Langton 1 dag sedan
förälder
incheckning
0f618408fa

+ 1 - 1
packages/opencode/src/control-plane/workspace-context.ts

@@ -1,4 +1,4 @@
-import { LocalContext } from "../util/local-context"
+import { LocalContext } from "../util"
 import type { WorkspaceID } from "../control-plane/schema"
 
 export interface WorkspaceContext {

+ 1 - 1
packages/opencode/src/effect/bridge.ts

@@ -1,7 +1,7 @@
 import { Effect, Fiber } from "effect"
 import { WorkspaceContext } from "@/control-plane/workspace-context"
 import { Instance, type InstanceContext } from "@/project/instance"
-import { LocalContext } from "@/util/local-context"
+import { LocalContext } from "@/util"
 import { InstanceRef, WorkspaceRef } from "./instance-ref"
 import { attachWith } from "./run-service"
 

+ 1 - 1
packages/opencode/src/effect/instance-state.ts

@@ -1,7 +1,7 @@
 import { Effect, Fiber, ScopedCache, Scope, Context } from "effect"
 import { EffectLogger } from "@/effect/logger"
 import { Instance, type InstanceContext } from "@/project/instance"
-import { LocalContext } from "@/util/local-context"
+import { LocalContext } from "@/util"
 import { InstanceRef, WorkspaceRef } from "./instance-ref"
 import { registerDisposer } from "./instance-registry"
 import { WorkspaceContext } from "@/control-plane/workspace-context"

+ 1 - 1
packages/opencode/src/effect/run-service.ts

@@ -1,7 +1,7 @@
 import { Effect, Layer, ManagedRuntime } from "effect"
 import * as Context from "effect/Context"
 import { Instance } from "@/project/instance"
-import { LocalContext } from "@/util/local-context"
+import { LocalContext } from "@/util"
 import { InstanceRef, WorkspaceRef } from "./instance-ref"
 import { Observability } from "./observability"
 import { WorkspaceContext } from "@/control-plane/workspace-context"

+ 1 - 1
packages/opencode/src/project/instance.ts

@@ -4,7 +4,7 @@ import { makeRuntime } from "@/effect/run-service"
 import { AppFileSystem } from "@opencode-ai/shared/filesystem"
 import { iife } from "@/util/iife"
 import { Log } from "@/util/log"
-import { LocalContext } from "../util/local-context"
+import { LocalContext } from "../util"
 import { Project } from "./project"
 import { WorkspaceContext } from "@/control-plane/workspace-context"
 

+ 1 - 1
packages/opencode/src/storage/db.ts

@@ -2,7 +2,7 @@ import { type SQLiteBunDatabase } from "drizzle-orm/bun-sqlite"
 import { migrate } from "drizzle-orm/bun-sqlite/migrator"
 import { type SQLiteTransaction } from "drizzle-orm/sqlite-core"
 export * from "drizzle-orm"
-import { LocalContext } from "../util/local-context"
+import { LocalContext } from "../util"
 import { lazy } from "../util/lazy"
 import { Global } from "../global"
 import { Log } from "../util/log"

+ 1 - 0
packages/opencode/src/util/index.ts

@@ -0,0 +1 @@
+export * as LocalContext from "./local-context"

+ 17 - 19
packages/opencode/src/util/local-context.ts

@@ -1,25 +1,23 @@
 import { AsyncLocalStorage } from "async_hooks"
 
-export namespace LocalContext {
-  export class NotFound extends Error {
-    constructor(public override readonly name: string) {
-      super(`No context found for ${name}`)
-    }
+export class NotFound extends Error {
+  constructor(public override readonly name: string) {
+    super(`No context found for ${name}`)
   }
+}
 
-  export function create<T>(name: string) {
-    const storage = new AsyncLocalStorage<T>()
-    return {
-      use() {
-        const result = storage.getStore()
-        if (!result) {
-          throw new NotFound(name)
-        }
-        return result
-      },
-      provide<R>(value: T, fn: () => R) {
-        return storage.run(value, fn)
-      },
-    }
+export function create<T>(name: string) {
+  const storage = new AsyncLocalStorage<T>()
+  return {
+    use() {
+      const result = storage.getStore()
+      if (!result) {
+        throw new NotFound(name)
+      }
+      return result
+    },
+    provide<R>(value: T, fn: () => R) {
+      return storage.run(value, fn)
+    },
   }
 }