Spaces:
Sleeping
Sleeping
Download frontend/src/services/api.js from haisyam/PlatDetect: direct link, hf CLI and curl.
- Browser
- Download file 1.85 kB
-
https://huggingface.co/spaces/haisyam/PlatDetect/resolve/main/frontend/src/services/api.js
- Command line
-
hf download hf://spaces/haisyam/PlatDetect/frontend/src/services/api.js
-
curl -L -o api.js https://huggingface.co/spaces/haisyam/PlatDetect/resolve/main/frontend/src/services/api.js
1.85 kB
| import axios from "axios"; | |
| const API_BASE_URL = import.meta.env.VITE_API_BASE_URL || ""; | |
| export const api = axios.create({ | |
| baseURL: API_BASE_URL, | |
| }); | |
| export async function detectPlate(file) { | |
| const formData = new FormData(); | |
| formData.append("file", file); | |
| const response = await api.post("/api/detect", formData, { | |
| headers: { | |
| "Content-Type": "multipart/form-data", | |
| }, | |
| }); | |
| return response.data; | |
| } | |
| export async function getVehicles() { | |
| const response = await api.get("/api/vehicles"); | |
| return response.data; | |
| } | |
| export async function addVehicle(data, photoFile) { | |
| const formData = new FormData(); | |
| formData.append("plat", data.plat); | |
| formData.append("nama_pemilik", data.nama_pemilik); | |
| formData.append("jenis_kendaraan", data.jenis_kendaraan || "-"); | |
| formData.append("keterangan", data.keterangan || "-"); | |
| if (photoFile) { | |
| formData.append("foto", photoFile); | |
| } | |
| const response = await api.post("/api/vehicles", formData, { | |
| headers: { "Content-Type": "multipart/form-data" }, | |
| }); | |
| return response.data; | |
| } | |
| export async function updateVehicle(plat, data) { | |
| const response = await api.put(`/api/vehicles/${plat}`, data); | |
| return response.data; | |
| } | |
| export async function deleteVehicle(plat) { | |
| const response = await api.delete(`/api/vehicles/${plat}`); | |
| return response.data; | |
| } | |
| export async function getHistory() { | |
| const response = await api.get("/api/history"); | |
| return response.data; | |
| } | |
| export async function deleteHistoryRecord(index) { | |
| const response = await api.delete(`/api/history/${index}`); | |
| return response.data; | |
| } | |
| export async function clearAllHistory() { | |
| const response = await api.delete("/api/history"); | |
| return response.data; | |
| } | |
| export function getMediaUrl(path) { | |
| if (!path) return ""; | |
| if (path.startsWith("http")) return path; | |
| return `${API_BASE_URL}${path}`; | |
| } | |