@graphteon/juricode
Version:
We are forging the future with lines of digital steel
39 lines • 1.41 kB
JavaScript
import axios from 'axios';
export class GitService {
constructor() {
this.baseUrl = process.env.BACKEND_URL || 'http://localhost:4000';
}
async getGitUser() {
const response = await axios.get(`${this.baseUrl}/api/user/info`);
return response.data;
}
async searchRepositories(query, perPage = 5) {
const response = await axios.get(`${this.baseUrl}/api/user/search/repositories`, {
params: { query, per_page: perPage }
});
return response.data;
}
async getUserRepositories() {
const response = await axios.get(`${this.baseUrl}/api/user/repositories`, {
params: { sort: 'pushed' }
});
return response.data;
}
async getRepositoryBranches(repository) {
const response = await axios.get(`${this.baseUrl}/api/user/repository/branches`, {
params: { repository }
});
return response.data;
}
async getGitChanges(conversationId) {
const response = await axios.get(`${this.baseUrl}/api/conversations/${conversationId}/git/changes`);
return response.data;
}
async getGitChangeDiff(conversationId, path) {
const response = await axios.get(`${this.baseUrl}/api/conversations/${conversationId}/git/diff`, {
params: { path }
});
return response.data;
}
}
//# sourceMappingURL=git.js.map