contract.ts 740 B

12345678910111213141516171819
  1. import { makeDefaultApi } from "@opencode-ai/protocol/api"
  2. import { InvalidRequestError, SessionNotFoundError } from "@opencode-ai/protocol/errors"
  3. import { HttpApiMiddleware } from "effect/unstable/httpapi"
  4. class LocationMiddleware extends HttpApiMiddleware.Service<LocationMiddleware>()(
  5. "@opencode-ai/client/LocationMiddleware",
  6. ) {}
  7. class SessionLocationMiddleware extends HttpApiMiddleware.Service<SessionLocationMiddleware>()(
  8. "@opencode-ai/client/SessionLocationMiddleware",
  9. { error: [InvalidRequestError, SessionNotFoundError] },
  10. ) {}
  11. const Api = makeDefaultApi({
  12. locationMiddleware: LocationMiddleware,
  13. sessionLocationMiddleware: SessionLocationMiddleware,
  14. })
  15. export const SessionGroup = Api.groups["server.session"]