( url: string, method: "GET" | "POST" | "DELETE" | "PUT" = "GET", body?: unknown )
| 14 | } from "./api-type"; |
| 15 | |
| 16 | export async function requestOuterbase<T = unknown>( |
| 17 | url: string, |
| 18 | method: "GET" | "POST" | "DELETE" | "PUT" = "GET", |
| 19 | body?: unknown |
| 20 | ) { |
| 21 | const raw = await fetch(url, { |
| 22 | method, |
| 23 | headers: { |
| 24 | "Content-Type": "application/json", |
| 25 | "x-auth-token": localStorage.getItem("ob-token") || "", |
| 26 | }, |
| 27 | body: body ? JSON.stringify(body) : undefined, |
| 28 | }); |
| 29 | |
| 30 | const json = (await raw.json()) as OuterbaseAPIResponse<T>; |
| 31 | |
| 32 | if (json.error) { |
| 33 | throw new OuterbaseAPIError(json.error); |
| 34 | } |
| 35 | |
| 36 | return json.response; |
| 37 | } |
| 38 | |
| 39 | export function getOuterbaseWorkspace() { |
| 40 | return requestOuterbase<OuterbaseAPIWorkspaceResponse>("/api/v1/workspace"); |
no outgoing calls
no test coverage detected
searching dependent graphs…