feat: create network, and manage members, invitations (#74)

This commit was merged in pull request #74.
This commit is contained in:
Arjun Patel
2026-03-24 19:50:06 -07:00
committed by GitHub
parent bf0147d542
commit 3d52fa6ccc
14 changed files with 655 additions and 39 deletions
+29
View File
@@ -3,16 +3,19 @@ import type { z } from "zod";
import {
DepotObjectSchema,
HumanSchema,
ListInvitationsResponseSchema,
ListNetworksResponseSchema,
NetworkSchema,
PrepareUploadResponseSchema,
SignInResponseSchema,
} from "./types";
import type {
AcceptInvitationRequest,
AddMembersRequest,
CreateNetworkRequest,
PrepareUploadRequest,
RequestCodeRequest,
RevokeInvitationRequest,
SignInRequest,
} from "./types";
@@ -173,6 +176,32 @@ class ApiClient {
`/networks/${networkId}/members/${email}`,
);
}
// --- Invitations ---
async listNetworkInvitations(networkId: string) {
return this.request(
ListInvitationsResponseSchema,
"GET",
`/networks/${networkId}/invitations`,
);
}
async listMyInvitations() {
return this.request(
ListInvitationsResponseSchema,
"GET",
"/invitations",
);
}
async acceptInvitation(data: AcceptInvitationRequest): Promise<void> {
await this.requestVoid("POST", "/invitations/accept", data);
}
async revokeInvitation(networkId: string, data: RevokeInvitationRequest): Promise<void> {
await this.requestVoid("DELETE", `/networks/${networkId}/invitations`, data);
}
}
export const apiClient = new ApiClient({