feat(applications): preserve submitted packages
This commit is contained in:
@@ -246,6 +246,35 @@ export type CoverLetter = {
|
||||
aiSuggestionCount: number;
|
||||
};
|
||||
|
||||
export type SubmittedPackageAttachment = {
|
||||
id: number;
|
||||
fileName: string;
|
||||
fileType: string;
|
||||
purpose: string | null;
|
||||
fileSize: number;
|
||||
sha256: string;
|
||||
};
|
||||
|
||||
export type SubmittedPackage = {
|
||||
id: number;
|
||||
version: number;
|
||||
cvVariantId: number | null;
|
||||
cvVariantName: string | null;
|
||||
cvVariantVersion: number | null;
|
||||
cvThemeId: string | null;
|
||||
hasCv: boolean;
|
||||
hasCoverLetter: boolean;
|
||||
createdAtUtc: string;
|
||||
attachments: SubmittedPackageAttachment[];
|
||||
};
|
||||
|
||||
export type SubmittedPackageDetail = {
|
||||
summary: SubmittedPackage;
|
||||
renderedCvHtml: string | null;
|
||||
coverLetterText: string | null;
|
||||
applicationMaterialJson: string;
|
||||
};
|
||||
|
||||
export const applicationAssetsApi = {
|
||||
cv: (jobId: number) => api.get<ApplicationCv>(`/jobapplications/${jobId}/cv`).then((r) => r.data),
|
||||
attachVariant: (jobId: number, variantId: number | null) =>
|
||||
@@ -258,6 +287,14 @@ export const applicationAssetsApi = {
|
||||
api.put<CoverLetter>(`/jobapplications/${jobId}/cover-letter`, { text, source, aiAction }).then((r) => r.data),
|
||||
restoreCoverLetter: (jobId: number, version: number) =>
|
||||
api.post<CoverLetter>(`/jobapplications/${jobId}/cover-letter/versions/${version}/restore`).then((r) => r.data),
|
||||
submittedPackages: (jobId: number) =>
|
||||
api.get<SubmittedPackage[]>(`/jobapplications/${jobId}/submitted-packages`).then((r) => r.data),
|
||||
captureSubmittedPackage: (jobId: number) =>
|
||||
api.post<SubmittedPackage>(`/jobapplications/${jobId}/submitted-packages`).then((r) => r.data),
|
||||
submittedPackage: (jobId: number, packageId: number) =>
|
||||
api.get<SubmittedPackageDetail>(`/jobapplications/${jobId}/submitted-packages/${packageId}`).then((r) => r.data),
|
||||
downloadSubmittedAttachment: (jobId: number, packageId: number, attachmentId: number) =>
|
||||
api.get<Blob>(`/jobapplications/${jobId}/submitted-packages/${packageId}/attachments/${attachmentId}`, { responseType: "blob" }).then((r) => r.data),
|
||||
saveApplicationDrafts: (jobId: number, applicationAnswerDraft: string, recruiterMessageDraft: string) =>
|
||||
api.put(`/jobapplications/${jobId}/application-drafts`, { applicationAnswerDraft, recruiterMessageDraft }).then(() => undefined),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user