project-nomad/admin/inertia/lib/api.ts
2025-06-30 01:44:42 -07:00

37 lines
975 B
TypeScript

import axios from "axios";
class API {
private client;
constructor() {
this.client = axios.create({
baseURL: "/api",
headers: {
"Content-Type": "application/json",
},
});
}
async listDocs() {
try {
const response = await this.client.get<{ articles: Array<{ title: string; slug: string }> }>("/docs/list");
return response.data.articles;
} catch (error) {
console.error("Error listing docs:", error);
throw error;
}
}
async installService(service_name: string) {
try {
const response = await this.client.post<{ success: boolean; message: string }>("/system/services/install", { service_name });
return response.data;
} catch (error) {
console.error("Error installing service:", error);
throw error;
}
}
}
export default new API();