diff --git a/http-client/index.ts b/http-client/index.ts index bd83a75c9..1806f6207 100644 --- a/http-client/index.ts +++ b/http-client/index.ts @@ -10,7 +10,6 @@ import type { } from "./lib/project.js"; import type { Config, - SuccessResponse, CodeLocation, Range, SeedingPolicy, @@ -47,13 +46,11 @@ import { z, array, literal, number, object, string, union } from "zod"; import * as project from "./lib/project.js"; import * as profile from "./lib/profile.js"; -import * as session from "./lib/session.js"; import { Fetcher } from "./lib/fetcher.js"; import { nodeConfigSchema, scopeSchema, seedingPolicySchema, - successResponseSchema, } from "./lib/shared.js"; export type { @@ -154,7 +151,6 @@ export class HttpdClient { public baseUrl: BaseUrl; public project: project.Client; public profile: profile.Client; - public session: session.Client; public constructor(baseUrl: BaseUrl) { this.baseUrl = baseUrl; @@ -162,7 +158,6 @@ export class HttpdClient { this.project = new project.Client(this.#fetcher); this.profile = new profile.Client(this.#fetcher); - this.session = new session.Client(this.#fetcher); } public changePort(port: number): void { @@ -227,38 +222,6 @@ export class HttpdClient { ); } - public async seedById( - id: string, - authToken: string, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "PUT", - path: `node/policies/repos/${id}`, - headers: { Authorization: `Bearer ${authToken}` }, - options, - }, - successResponseSchema, - ); - } - - public async stopSeedingById( - id: string, - authToken: string, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "DELETE", - path: `node/policies/repos/${id}`, - headers: { Authorization: `Bearer ${authToken}` }, - options, - }, - successResponseSchema, - ); - } - public async getNode(options?: RequestOptions): Promise { return this.#fetcher.fetchOk( { diff --git a/http-client/lib/project.ts b/http-client/lib/project.ts index 061b14a9f..8a571573c 100644 --- a/http-client/lib/project.ts +++ b/http-client/lib/project.ts @@ -1,19 +1,8 @@ import type { ZodSchema } from "zod"; import type { Fetcher, RequestOptions } from "./fetcher.js"; -import type { Embed } from "./project/comment.js"; import type { Commit, Commits } from "./project/commit.js"; -import type { - Issue, - IssueCreated, - IssueUpdateAction, -} from "./project/issue.js"; -import type { - Patch, - PatchCreate, - PatchCreated, - PatchUpdateAction, -} from "./project/patch.js"; -import type { SuccessResponse } from "./shared.js"; +import type { Issue } from "./project/issue.js"; +import type { Patch } from "./project/patch.js"; import { array, @@ -27,7 +16,6 @@ import { union, z, } from "zod"; -import { successResponseSchema } from "./shared.js"; import { commitHeaderSchema, @@ -36,18 +24,8 @@ import { diffBlobSchema, diffSchema, } from "./project/commit.js"; - -import { - issueCreatedSchema, - issueSchema, - issuesSchema, -} from "./project/issue.js"; - -import { - patchCreatedSchema, - patchSchema, - patchesSchema, -} from "./project/patch.js"; +import { issueSchema, issuesSchema } from "./project/issue.js"; +import { patchSchema, patchesSchema } from "./project/patch.js"; const projectSchema = object({ id: string(), @@ -386,49 +364,6 @@ export class Client { ); } - public async createIssue( - id: string, - body: { - title: string; - description: string; - assignees: string[]; - embeds: Embed[]; - labels: string[]; - }, - authToken: string, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "POST", - path: `projects/${id}/issues`, - headers: { Authorization: `Bearer ${authToken}` }, - body, - options, - }, - issueCreatedSchema, - ); - } - - public async updateIssue( - id: string, - issueId: string, - body: IssueUpdateAction, - authToken: string, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "PATCH", - path: `projects/${id}/issues/${issueId}`, - headers: { Authorization: `Bearer ${authToken}` }, - body, - options, - }, - successResponseSchema, - ); - } - public async getPatchById( id: string, patchId: string, @@ -463,41 +398,4 @@ export class Client { patchesSchema, ); } - - public async createPatch( - id: string, - body: PatchCreate, - authToken: string, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "POST", - path: `projects/${id}/patches`, - headers: { Authorization: `Bearer ${authToken}` }, - body, - options, - }, - patchCreatedSchema, - ); - } - - public async updatePatch( - id: string, - patchId: string, - body: PatchUpdateAction, - authToken: string, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "PATCH", - path: `projects/${id}/patches/${patchId}`, - headers: { Authorization: `Bearer ${authToken}` }, - body, - options, - }, - successResponseSchema, - ); - } } diff --git a/http-client/lib/session.ts b/http-client/lib/session.ts deleted file mode 100644 index 2da59ec6f..000000000 --- a/http-client/lib/session.ts +++ /dev/null @@ -1,90 +0,0 @@ -import type { Fetcher, RequestOptions } from "./fetcher.js"; -import type { SuccessResponse } from "./shared.js"; -import type { z } from "zod"; - -import { number, object, string } from "zod"; - -import { successResponseSchema } from "./shared.js"; - -export const sessionPayloadSchema = object({ - sessionId: string(), - signature: string(), - publicKey: string(), -}); - -export type SessionPayload = z.infer; - -const sessionSchema = object({ - sessionId: string(), - status: string(), - publicKey: string(), - alias: string(), - issuedAt: number(), - expiresAt: number(), -}); - -export type Session = z.infer; - -export class Client { - #fetcher: Fetcher; - - public constructor(fetcher: Fetcher) { - this.#fetcher = fetcher; - } - - public async getById(id: string, options?: RequestOptions): Promise { - return this.#fetcher.fetchOk( - { - method: "GET", - path: `sessions/${id}`, - options, - }, - sessionSchema, - ); - } - - public async create(options?: RequestOptions): Promise { - return this.#fetcher.fetchOk( - { - method: "POST", - path: "sessions", - options, - }, - sessionSchema, - ); - } - - public async update( - id: string, - body: { - sig: string; - pk: string; - }, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "PUT", - path: `sessions/${id}`, - body, - options, - }, - successResponseSchema, - ); - } - - public async delete( - id: string, - options?: RequestOptions, - ): Promise { - return this.#fetcher.fetchOk( - { - method: "DELETE", - path: `sessions/${id}`, - headers: { Authorization: `Bearer ${id}` }, - options, - }, - successResponseSchema, - ); - } -} diff --git a/http-client/lib/shared.ts b/http-client/lib/shared.ts index a83e723eb..67ff67e20 100644 --- a/http-client/lib/shared.ts +++ b/http-client/lib/shared.ts @@ -1,4 +1,4 @@ -import type { ZodSchema, z } from "zod"; +import type { z } from "zod"; import { array, boolean, literal, number, object, string, union } from "zod"; @@ -6,10 +6,6 @@ export interface SuccessResponse { success: true; } -export const successResponseSchema = object({ - success: literal(true), -}) satisfies ZodSchema; - export const scopeSchema = union([literal("followed"), literal("all")]); export const seedingPolicySchema = union([