import axios from '@/utils/axios'; import { CODEREVIEW_PREFIX, COMMENT_PREFIX, FILEREVIEW_PREFIX } from './prefix'; interface CodeReviewPayload { projectId: number; sourceBranch: string; targetBranch: string; creatorId: number; reviewerId: number; title: string; description: string; deleteSourceBranch: boolean; } interface FileReviewPayload { projectId: number; creatorId: number; reviewerList: Array; fileList: Array; branch: string; title: string; } interface CommentPayload { codeReviewId: number; creatorId: number; content: string; commentType: string; replyId: number; } export const getProjectBranches = (projectId: number) => axios.get(`${CODEREVIEW_PREFIX}/branches/${projectId}`); export const createCodeReview = (codeReview: CodeReviewPayload) => axios.post(`${CODEREVIEW_PREFIX}/create`, codeReview); export const getCodeReviewList = (projectId: number) => axios.get(`${CODEREVIEW_PREFIX}/${projectId}`); export const compareBranch = (projectId: number, fromBash: string, toBash: string) => axios.get(`${CODEREVIEW_PREFIX}/compare?projectId=${projectId}&fromBash=${fromBash}&toBash=${toBash}`); export const getCodeReviewDetail = (codeReviewId: number) => axios.get(`${CODEREVIEW_PREFIX}/get/${codeReviewId}`); export const createComment = (comment: CommentPayload) => axios.post(`${COMMENT_PREFIX}/create`, comment); export const getComment = (codeReviewId: number) => axios.get(`${COMMENT_PREFIX}/${codeReviewId}`); export const getRepositoryTree = (projectId: number, branch: string) => axios.get(`${FILEREVIEW_PREFIX}/repository_tree?projectId=${projectId}&branch=${branch}`); export const getSubTree = (projectId: number, branch: string, path: string) => axios.get(`${FILEREVIEW_PREFIX}/repository_tree?projectId=${projectId}&branch=${branch}&path=${path}`); export const inviteUser = (phoneNumber: string) => axios.get(`${FILEREVIEW_PREFIX}/invite?phoneNumber=${phoneNumber}`); export const createFileReview = (fileReview: FileReviewPayload) => axios.post(`${FILEREVIEW_PREFIX}/create`, fileReview); export const getFileReviewDetail = (fileReviewId: number) => axios.get(`${FILEREVIEW_PREFIX}/${fileReviewId}`);