Translate job details and saved views flows

This commit is contained in:
cesnimda
2026-03-23 20:56:33 +01:00
parent 7f59a46cc6
commit 9661a321da
5 changed files with 435 additions and 137 deletions
+284
View File
@@ -524,6 +524,148 @@ export const translations = {
jobTableNoJobsFound: "No jobs found.",
jobTableSetStatus: "Set {status}",
editJobTitle: "Edit job",
editJobIntro: "Update job details, timeline status, documents, and notes from one editing workspace.",
editJobApplicationDetails: "Application details",
editJobJobTitle: "Job title",
editJobAppliedOn: "Applied on",
editJobStatusUpdate: "Status update",
editJobCurrentStatus: "Current status",
editJobStatusChangedOn: "Status changed on",
editJobStatusChangedHelpIdle: "Only used when you change the status.",
editJobStatusChangedHelpActive: "This date will be recorded in the timeline.",
editJobReplyReceived: "Reply received",
editJobReplyReceivedOn: "Reply received on",
editJobNextAction: "Next action",
editJobFollowUpOn: "Follow up on",
editJobRoleDetails: "Role details",
editJobDeadline: "Deadline",
editJobDescriptionLanguage: "Description language",
editJobNotes: "Notes",
editJobDescriptionOriginal: "Description (original)",
editJobTranslatedDescription: "Translated description",
editJobCoverLetter: "Cover letter",
editJobAttachmentsChecklist: "Attachments checklist",
editJobResumeReady: "Resume ready",
editJobResumeMissing: "Resume missing",
editJobCoverLetterReady: "Cover letter ready",
editJobCoverLetterMissing: "Cover letter missing",
editJobPortfolioReady: "Portfolio ready",
editJobPortfolioOptional: "Portfolio optional",
editJobResume: "Resume",
editJobPortfolio: "Portfolio",
editJobOtherAttachment: "Other attachment",
editJobSaveFailed: "Save failed.",
savedViewsTooltip: "Saved views",
savedViewsTitle: "Saved views",
savedViewsSubtitle: "Save the current filters as a 1-click view.",
savedViewsName: "Name",
savedViewsSaveCurrent: "Save current",
savedViewsEmpty: "No saved views yet.",
savedViewsStatusLabel: "Status: {value}",
savedViewsLocationLabel: "Location: {value}",
savedViewsNeedsFollowUp: "Needs follow-up",
savedViewsNoFilters: "No filters",
jobDetailsTabCorrespondence: "Correspondence",
jobDetailsTabAttachments: "Attachments",
jobDetailsTabTailoredCv: "Tailored CV",
jobDetailsTabCandidateFit: "Candidate fit",
jobDetailsTabInterviewPrep: "Interview prep",
jobDetailsTabHistory: "History",
jobDetailsTailoredCvMode: "Generation mode",
jobDetailsGenerationDefault: "Balanced",
jobDetailsGenerationConcise: "Concise",
jobDetailsGenerationAts: "ATS focused",
jobDetailsGenerationAchievement: "Achievement focused",
jobDetailsGenerationInterview: "Interview focused",
jobDetailsResume: "Resume",
jobDetailsCoverLetter: "Cover letter",
jobDetailsPortfolio: "Portfolio",
jobDetailsOther: "Other",
jobDetailsNotAvailable: "—",
jobDetailsDateApplied: "Date applied",
jobDetailsDaysSince: "Days since",
jobDetailsSalary: "Salary",
jobDetailsNextAction: "Next action",
jobDetailsFollowUp: "Follow up",
jobDetailsDeadline: "Deadline",
jobDetailsTags: "Tags",
jobDetailsAttachmentTypes: "Attachment types",
jobDetailsJobUrl: "Job URL",
jobDetailsSummaryAndSkills: "Summary and skills",
jobDetailsRefreshAiTitle: "Refresh AI summary",
jobDetailsRefreshAiConfirm: "Overwrite the current summary and skills with a freshly generated version?",
jobDetailsRefreshAi: "Refresh summary and skills",
jobDetailsRefreshing: "Refreshing...",
jobDetailsSummaryRefreshed: "Summary and skills refreshed.",
jobDetailsSummaryRefreshFailed: "Failed to refresh summary and skills.",
jobDetailsTranslatedRoleText: "Translated role text",
jobDetailsOriginalRoleText: "Original role text",
jobDetailsStartFromMasterCv: "Start from master CV",
jobDetailsLoadedMasterCv: "Loaded your master CV into the tailored editor.",
jobDetailsLoadMasterCvFailed: "Failed to load your master CV.",
jobDetailsGeneratePackage: "Generate application package",
jobDetailsGeneratingPackage: "Generating...",
jobDetailsPackageGenerated: "Application package generated.",
jobDetailsPackageGenerationFailed: "Failed to generate application package.",
jobDetailsClear: "Clear",
jobDetailsCopy: "Copy",
jobDetailsSaveTailoredCv: "Save tailored CV",
jobDetailsSaving: "Saving...",
jobDetailsTailoredCvSaved: "Tailored CV saved.",
jobDetailsTailoredCvSaveFailed: "Failed to save tailored CV.",
jobDetailsTailoredCvIntro: "Generate a full application package, then edit and save the tailored resume you actually want to use for this role.",
jobDetailsTailoredCvPlaceholder: "Paste or rewrite the version of your CV you want to use for this role.",
jobDetailsLastUpdated: "Last updated: {value}",
jobDetailsNotSavedYet: "Not saved yet",
jobDetailsCoverLetterDraft: "Cover letter draft",
jobDetailsShortApplicationAnswer: "Short application answer",
jobDetailsRecruiterMessageDraft: "Recruiter message draft",
jobDetailsNoDraftAvailable: "No draft available.",
jobDetailsCoverLetterSaved: "Cover letter saved to this job.",
jobDetailsCoverLetterSaveFailed: "Failed to save cover letter.",
jobDetailsApplicationAnswerSaved: "Application answer saved to notes.",
jobDetailsApplicationAnswerSaveFailed: "Failed to save application answer.",
jobDetailsRecruiterMessageSaved: "Recruiter message saved to this job.",
jobDetailsRecruiterMessageSaveFailed: "Failed to save recruiter message.",
jobDetailsKeyPoints: "Key points to emphasize",
jobDetailsReason: "Reason",
jobDetailsSuggestedSendDate: "Suggested send date",
jobDetailsRecipient: "Recipient",
jobDetailsRecipientHelp: "Defaults to the company recruiter email when available.",
jobDetailsSubject: "Subject",
jobDetailsDraft: "Draft",
jobDetailsCopyDraft: "Copy draft",
jobDetailsSendAndLogEmail: "Send and log email",
jobDetailsSending: "Sending...",
jobDetailsFollowUpSent: "Follow-up sent and logged.",
jobDetailsFollowUpSendFailed: "Failed to send follow-up.",
jobDetailsHowYouMatch: "How you match",
jobDetailsMatchPercent: "{count}% match",
jobDetailsTailoredPitch: "Tailored pitch",
jobDetailsStrongMatches: "Strong matches",
jobDetailsPossibleGaps: "Possible gaps",
jobDetailsWhatToMention: "What to mention",
jobDetailsWhatNotToOverstate: "What not to overstate",
jobDetailsImproveCv: "Improve your CV for this role",
jobDetailsMissingKeywords: "Missing keywords to consider",
jobDetailsCvGuidance: "CV guidance",
jobDetailsCoverLetterGuidance: "Cover letter guidance",
jobDetailsRecruiterMessageGuidance: "Recruiter message guidance",
jobDetailsNoDraftAvailableYet: "No draft available yet.",
jobDetailsCandidateFitEmpty: "Add your profile CV text on the Profile page to generate a candidate fit analysis for this role.",
jobDetailsInterviewPrepBrief: "Interview prep brief",
jobDetailsTalkingPoints: "Talking points",
jobDetailsLikelyQuestions: "Likely questions",
jobDetailsWeakSpots: "Weak spots to prepare for",
jobDetailsNoInterviewPrep: "No interview prep available yet.",
jobDetailsApplicationReadiness: "Application readiness",
jobDetailsReadyPercent: "{count}% ready",
jobDetailsCompleted: "Completed",
jobDetailsStillMissing: "Still missing",
jobDetailsSmartReminders: "Smart reminders",
jobDetailsNoReadiness: "No readiness analysis available yet.",
jobDetailsNoHistory: "No history yet.",
jobDetailsNothingHighlighted: "Nothing highlighted yet.",
rulesTitle: "Follow-up + Ghosting Rules",
rulesBody: "Jobs get a “Follow up” flag based on these thresholds. Ghosting is automatic.",
rulesAppliedFollowUpDays: "Applied: follow-up days",
@@ -1058,6 +1200,148 @@ export const translations = {
jobTableNoJobsFound: "Ingen jobber funnet.",
jobTableSetStatus: "Sett {status}",
editJobTitle: "Rediger jobb",
editJobIntro: "Oppdater jobbdetaljer, status i tidslinjen, dokumenter og notater fra ett redigeringsområde.",
editJobApplicationDetails: "Søknadsdetaljer",
editJobJobTitle: "Stillingstittel",
editJobAppliedOn: "Søkt dato",
editJobStatusUpdate: "Statusoppdatering",
editJobCurrentStatus: "Gjeldende status",
editJobStatusChangedOn: "Status endret",
editJobStatusChangedHelpIdle: "Brukes bare når du endrer statusen.",
editJobStatusChangedHelpActive: "Denne datoen blir lagret i tidslinjen.",
editJobReplyReceived: "Svar mottatt",
editJobReplyReceivedOn: "Svar mottatt dato",
editJobNextAction: "Neste handling",
editJobFollowUpOn: "Følg opp den",
editJobRoleDetails: "Rolledetaljer",
editJobDeadline: "Frist",
editJobDescriptionLanguage: "Språk i beskrivelse",
editJobNotes: "Notater",
editJobDescriptionOriginal: "Beskrivelse (original)",
editJobTranslatedDescription: "Oversatt beskrivelse",
editJobCoverLetter: "Søknadsbrev",
editJobAttachmentsChecklist: "Vedleggssjekkliste",
editJobResumeReady: "CV klar",
editJobResumeMissing: "CV mangler",
editJobCoverLetterReady: "Søknadsbrev klart",
editJobCoverLetterMissing: "Søknadsbrev mangler",
editJobPortfolioReady: "Portefølje klar",
editJobPortfolioOptional: "Portefølje valgfri",
editJobResume: "CV",
editJobPortfolio: "Portefølje",
editJobOtherAttachment: "Annet vedlegg",
editJobSaveFailed: "Lagring mislyktes.",
savedViewsTooltip: "Lagrede visninger",
savedViewsTitle: "Lagrede visninger",
savedViewsSubtitle: "Lagre gjeldende filtre som en visning med ett klikk.",
savedViewsName: "Navn",
savedViewsSaveCurrent: "Lagre gjeldende",
savedViewsEmpty: "Ingen lagrede visninger ennå.",
savedViewsStatusLabel: "Status: {value}",
savedViewsLocationLabel: "Sted: {value}",
savedViewsNeedsFollowUp: "Trenger oppfølging",
savedViewsNoFilters: "Ingen filtre",
jobDetailsTabCorrespondence: "Korrespondanse",
jobDetailsTabAttachments: "Vedlegg",
jobDetailsTabTailoredCv: "Tilpasset CV",
jobDetailsTabCandidateFit: "Kandidatmatch",
jobDetailsTabInterviewPrep: "Intervjuforberedelse",
jobDetailsTabHistory: "Historikk",
jobDetailsTailoredCvMode: "Genereringsmodus",
jobDetailsGenerationDefault: "Balansert",
jobDetailsGenerationConcise: "Kortfattet",
jobDetailsGenerationAts: "ATS-fokusert",
jobDetailsGenerationAchievement: "Prestasjonfokusert",
jobDetailsGenerationInterview: "Intervjufokusert",
jobDetailsResume: "CV",
jobDetailsCoverLetter: "Søknadsbrev",
jobDetailsPortfolio: "Portefølje",
jobDetailsOther: "Annet",
jobDetailsNotAvailable: "—",
jobDetailsDateApplied: "Søkt dato",
jobDetailsDaysSince: "Dager siden",
jobDetailsSalary: "Lønn",
jobDetailsNextAction: "Neste handling",
jobDetailsFollowUp: "Oppfølging",
jobDetailsDeadline: "Frist",
jobDetailsTags: "Tagger",
jobDetailsAttachmentTypes: "Vedleggstyper",
jobDetailsJobUrl: "Jobb-URL",
jobDetailsSummaryAndSkills: "Oppsummering og ferdigheter",
jobDetailsRefreshAiTitle: "Oppdater AI-oppsummering",
jobDetailsRefreshAiConfirm: "Overskrive gjeldende oppsummering og ferdigheter med en ny generert versjon?",
jobDetailsRefreshAi: "Oppdater oppsummering og ferdigheter",
jobDetailsRefreshing: "Oppdaterer...",
jobDetailsSummaryRefreshed: "Oppsummering og ferdigheter oppdatert.",
jobDetailsSummaryRefreshFailed: "Kunne ikke oppdatere oppsummering og ferdigheter.",
jobDetailsTranslatedRoleText: "Oversatt rolletekst",
jobDetailsOriginalRoleText: "Original rolletekst",
jobDetailsStartFromMasterCv: "Start med hoved-CV",
jobDetailsLoadedMasterCv: "Lastet inn hoved-CV-en din i editoren.",
jobDetailsLoadMasterCvFailed: "Kunne ikke laste inn hoved-CV-en din.",
jobDetailsGeneratePackage: "Generer søknadspakke",
jobDetailsGeneratingPackage: "Genererer...",
jobDetailsPackageGenerated: "Søknadspakke generert.",
jobDetailsPackageGenerationFailed: "Kunne ikke generere søknadspakke.",
jobDetailsClear: "Tøm",
jobDetailsCopy: "Kopier",
jobDetailsSaveTailoredCv: "Lagre tilpasset CV",
jobDetailsSaving: "Lagrer...",
jobDetailsTailoredCvSaved: "Tilpasset CV lagret.",
jobDetailsTailoredCvSaveFailed: "Kunne ikke lagre tilpasset CV.",
jobDetailsTailoredCvIntro: "Generer en full søknadspakke, og rediger og lagre deretter den tilpassede CV-en du faktisk vil bruke for denne rollen.",
jobDetailsTailoredCvPlaceholder: "Lim inn eller skriv om versjonen av CV-en du vil bruke for denne rollen.",
jobDetailsLastUpdated: "Sist oppdatert: {value}",
jobDetailsNotSavedYet: "Ikke lagret ennå",
jobDetailsCoverLetterDraft: "Utkast til søknadsbrev",
jobDetailsShortApplicationAnswer: "Kort søknadssvar",
jobDetailsRecruiterMessageDraft: "Utkast til melding til rekrutterer",
jobDetailsNoDraftAvailable: "Ingen utkast tilgjengelig.",
jobDetailsCoverLetterSaved: "Søknadsbrev lagret på denne jobben.",
jobDetailsCoverLetterSaveFailed: "Kunne ikke lagre søknadsbrev.",
jobDetailsApplicationAnswerSaved: "Søknadssvar lagret i notater.",
jobDetailsApplicationAnswerSaveFailed: "Kunne ikke lagre søknadssvar.",
jobDetailsRecruiterMessageSaved: "Melding til rekrutterer lagret på denne jobben.",
jobDetailsRecruiterMessageSaveFailed: "Kunne ikke lagre melding til rekrutterer.",
jobDetailsKeyPoints: "Nøkkelpunkter å fremheve",
jobDetailsReason: "Årsak",
jobDetailsSuggestedSendDate: "Foreslått sendingsdato",
jobDetailsRecipient: "Mottaker",
jobDetailsRecipientHelp: "Bruker selskapets rekrutterer-e-post som standard når den finnes.",
jobDetailsSubject: "Emne",
jobDetailsDraft: "Utkast",
jobDetailsCopyDraft: "Kopier utkast",
jobDetailsSendAndLogEmail: "Send og loggfør e-post",
jobDetailsSending: "Sender...",
jobDetailsFollowUpSent: "Oppfølging sendt og loggført.",
jobDetailsFollowUpSendFailed: "Kunne ikke sende oppfølging.",
jobDetailsHowYouMatch: "Slik matcher du",
jobDetailsMatchPercent: "{count}% match",
jobDetailsTailoredPitch: "Tilpasset pitch",
jobDetailsStrongMatches: "Sterke matcher",
jobDetailsPossibleGaps: "Mulige hull",
jobDetailsWhatToMention: "Dette bør nevnes",
jobDetailsWhatNotToOverstate: "Dette bør ikke overdrives",
jobDetailsImproveCv: "Forbedre CV-en din for denne rollen",
jobDetailsMissingKeywords: "Manglende nøkkelord å vurdere",
jobDetailsCvGuidance: "CV-veiledning",
jobDetailsCoverLetterGuidance: "Veiledning for søknadsbrev",
jobDetailsRecruiterMessageGuidance: "Veiledning for rekrutterermelding",
jobDetailsNoDraftAvailableYet: "Ingen utkast tilgjengelig ennå.",
jobDetailsCandidateFitEmpty: "Legg til CV-teksten din på profilsiden for å generere en kandidatmatchanalyse for denne rollen.",
jobDetailsInterviewPrepBrief: "Kort intervjuforberedelse",
jobDetailsTalkingPoints: "Samtalepunkter",
jobDetailsLikelyQuestions: "Sannsynlige spørsmål",
jobDetailsWeakSpots: "Svake punkter å forberede seg på",
jobDetailsNoInterviewPrep: "Ingen intervjuforberedelse tilgjengelig ennå.",
jobDetailsApplicationReadiness: "Søknadsberedskap",
jobDetailsReadyPercent: "{count}% klar",
jobDetailsCompleted: "Fullført",
jobDetailsStillMissing: "Mangler fortsatt",
jobDetailsSmartReminders: "Smarte påminnelser",
jobDetailsNoReadiness: "Ingen beredskapsanalyse tilgjengelig ennå.",
jobDetailsNoHistory: "Ingen historikk ennå.",
jobDetailsNothingHighlighted: "Ingenting fremhevet ennå.",
rulesTitle: "Regler for oppfølging og ghosting",
rulesBody: "Jobber får et «Følg opp»-flagg basert på disse tersklene. Ghosting skjer automatisk.",
rulesAppliedFollowUpDays: "Søkt: oppfølgingsdager",