feat(cv): redesign document editing with revision-safe letters and writing tools
This commit is contained in:
@@ -258,6 +258,16 @@ export type CoverLetter = {
|
||||
currentVersion: number;
|
||||
versions: CoverLetterVersion[];
|
||||
aiSuggestionCount: number;
|
||||
documentSettings?: CoverLetterDocumentSettings;
|
||||
};
|
||||
|
||||
export type CoverLetterDocumentSettings = {
|
||||
schemaVersion: 1;
|
||||
senderName: string; senderTitle: string; senderEmail: string; senderPhone: string; senderLocation: string;
|
||||
recipient: string; subject: string; date: string;
|
||||
themeId: string; accentColor: string; bodyFont: string;
|
||||
baseFontSizePt: number; lineHeight: number; pageMarginMm: number; pageSize: string;
|
||||
sourceCvId?: number | null;
|
||||
};
|
||||
|
||||
export type SubmittedPackageAttachment = {
|
||||
@@ -297,8 +307,12 @@ export const applicationAssetsApi = {
|
||||
api.get<TailoringPlan>(`/jobapplications/${jobId}/tailoring`).then((r) => r.data),
|
||||
coverLetter: (jobId: number) =>
|
||||
api.get<CoverLetter>(`/jobapplications/${jobId}/cover-letter`).then((r) => r.data),
|
||||
saveCoverLetter: (jobId: number, text: string, expectedVersion: number, source = "manual", aiAction?: string) =>
|
||||
api.put<CoverLetter>(`/jobapplications/${jobId}/cover-letter`, { text, source, aiAction, expectedVersion }).then((r) => r.data),
|
||||
saveCoverLetter: (jobId: number, text: string, expectedVersion: number, source = "manual", aiAction?: string, documentSettings?: CoverLetterDocumentSettings) =>
|
||||
api.put<CoverLetter>(`/jobapplications/${jobId}/cover-letter`, { text, source, aiAction, expectedVersion, ...(documentSettings ? { documentSettings } : {}) }).then((r) => r.data),
|
||||
previewCoverLetter: (jobId: number, text: string, documentSettings: CoverLetterDocumentSettings) =>
|
||||
api.post<{ html: string; themeId: string; suggestedFileName: string }>(`/jobapplications/${jobId}/cover-letter/preview`, { text, documentSettings }).then(r => r.data),
|
||||
exportCoverLetter: (jobId: number, expectedVersion: number) =>
|
||||
api.post<Blob>(`/jobapplications/${jobId}/cover-letter/export-pdf?expectedVersion=${expectedVersion}`, undefined, { responseType: "blob" }).then(r => r.data),
|
||||
restoreCoverLetter: (jobId: number, version: number, expectedVersion: number) =>
|
||||
api.post<CoverLetter>(`/jobapplications/${jobId}/cover-letter/versions/${version}/restore`, { expectedVersion }).then((r) => r.data),
|
||||
submittedPackages: (jobId: number) =>
|
||||
|
||||
Reference in New Issue
Block a user