feat: complete Git Repo Manager MVP implementation
Backend (Phase 1-6): - Pydantic schemas for request/response validation - Service layer (SSH Key, Server, Repo, Sync) - API routes with authentication - FastAPI main application with lifespan management - ORM models (SshKey, Server, Repo, SyncLog) Frontend (Phase 7): - Vue 3 + Element Plus + Pinia + Vue Router - API client with Axios and interceptors - State management stores - All page components (Dashboard, Servers, Repos, SyncLogs, SshKeys, Settings) Deployment (Phase 8): - README with quick start guide - Startup script (start.sh) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
33
frontend/src/api/syncLogs.js
Normal file
33
frontend/src/api/syncLogs.js
Normal file
@@ -0,0 +1,33 @@
|
||||
import api from './index'
|
||||
|
||||
export const syncLogsApi = {
|
||||
// Get all sync logs with pagination
|
||||
getAll(params) {
|
||||
return api.get('/sync-logs', { params })
|
||||
},
|
||||
|
||||
// Get sync log by ID
|
||||
getById(id) {
|
||||
return api.get(`/sync-logs/${id}`)
|
||||
},
|
||||
|
||||
// Get logs by server ID
|
||||
getByServerId(serverId, params) {
|
||||
return api.get(`/sync-logs/server/${serverId}`, { params })
|
||||
},
|
||||
|
||||
// Get logs by repository ID
|
||||
getByRepoId(repoId, params) {
|
||||
return api.get(`/sync-logs/repo/${repoId}`, { params })
|
||||
},
|
||||
|
||||
// Get logs by status
|
||||
getByStatus(status, params) {
|
||||
return api.get(`/sync-logs/status/${status}`, { params })
|
||||
},
|
||||
|
||||
// Delete old logs
|
||||
deleteOld(days) {
|
||||
return api.delete('/sync-logs/old', { params: { days } })
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user