feat(server): expose location paths
This commit is contained in:
parent
6e8aefcfa0
commit
a7855aa169
7 changed files with 65 additions and 1 deletions
|
|
@ -30,6 +30,7 @@ import { CredentialGroup } from "./groups/credential.js"
|
|||
import { ProjectGroup } from "./groups/project.js"
|
||||
import { ProjectCopyGroup } from "./groups/project-copy.js"
|
||||
import { VcsGroup } from "./groups/vcs.js"
|
||||
import { PathGroup } from "./groups/path.js"
|
||||
|
||||
type LocationGroups<LocationId extends HttpApiMiddleware.AnyId> =
|
||||
| HttpApiGroup.AddMiddleware<typeof LocationGroup, LocationId>
|
||||
|
|
@ -50,6 +51,7 @@ type LocationGroups<LocationId extends HttpApiMiddleware.AnyId> =
|
|||
| HttpApiGroup.AddMiddleware<typeof ReferenceGroup, LocationId>
|
||||
| HttpApiGroup.AddMiddleware<typeof ProjectCopyGroup, LocationId>
|
||||
| HttpApiGroup.AddMiddleware<typeof VcsGroup, LocationId>
|
||||
| HttpApiGroup.AddMiddleware<typeof PathGroup, LocationId>
|
||||
|
||||
type SessionGroups<SessionLocationId extends HttpApiMiddleware.AnyId, SessionLocationService> =
|
||||
| ReturnType<typeof makeSessionGroup<SessionLocationId, SessionLocationService>>
|
||||
|
|
@ -168,6 +170,7 @@ const makeApiFromGroup = <
|
|||
.add(ReferenceGroup.middleware(locationMiddleware))
|
||||
.add(ProjectCopyGroup.middleware(locationMiddleware))
|
||||
.add(VcsGroup.middleware(locationMiddleware))
|
||||
.add(PathGroup.middleware(locationMiddleware))
|
||||
.add(DebugGroup)
|
||||
.annotateMerge(
|
||||
OpenApi.annotations({
|
||||
|
|
|
|||
20
packages/protocol/src/groups/path.ts
Normal file
20
packages/protocol/src/groups/path.ts
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
import { Path } from "@opencode-ai/schema/path"
|
||||
import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi"
|
||||
import { LocationQuery, locationQueryOpenApi } from "./location.js"
|
||||
|
||||
export const PathGroup = HttpApiGroup.make("server.path")
|
||||
.add(
|
||||
HttpApiEndpoint.get("path.get", "/api/path", {
|
||||
query: LocationQuery,
|
||||
success: Path.Info,
|
||||
})
|
||||
.annotateMerge(locationQueryOpenApi)
|
||||
.annotateMerge(
|
||||
OpenApi.annotations({
|
||||
identifier: "v2.path.get",
|
||||
summary: "Get paths",
|
||||
description: "Get process and location paths.",
|
||||
}),
|
||||
),
|
||||
)
|
||||
.annotateMerge(OpenApi.annotations({ title: "path", description: "Location and process paths." }))
|
||||
Loading…
Add table
Add a link
Reference in a new issue