mirror of
https://github.com/anomalyco/opencode.git
synced 2026-11-15 12:41:37 +03:00
13 lines
481 B
TypeScript
13 lines
481 B
TypeScript
import { Permission } from "@opencode/core/permission"
|
|
import { Effect, Layer } from "effect"
|
|
|
|
export const permissionLayer = (overrides: Partial<Permission.Interface> = {}) =>
|
|
Layer.mock(Permission.Service, { close: Effect.void, ...overrides })
|
|
|
|
export const permissionService = (overrides: Partial<Permission.Interface> = {}) =>
|
|
Effect.runSync(
|
|
Effect.gen(function* () {
|
|
return yield* Permission.Service
|
|
}).pipe(Effect.provide(permissionLayer(overrides))),
|
|
)
|