From 39e88dd365e441eea7fac11169db66a632a5dd0a Mon Sep 17 00:00:00 2001 From: Amruth Pillai Date: Thu, 21 May 2026 09:56:26 +0200 Subject: [PATCH] chore: lint using react-doctor, update translations, dynamic imports --- .env.example | 10 +- .gitignore | 1 + apps/server/package.json | 7 +- apps/server/src/http/auth.ts | 4 +- apps/web/locales/af-ZA.po | 112 +- apps/web/locales/am-ET.po | 112 +- apps/web/locales/ar-SA.po | 108 +- apps/web/locales/az-AZ.po | 112 +- apps/web/locales/bg-BG.po | 112 +- apps/web/locales/bn-BD.po | 112 +- apps/web/locales/ca-ES.po | 110 +- apps/web/locales/cs-CZ.po | 100 +- apps/web/locales/da-DK.po | 112 +- apps/web/locales/de-DE.po | 110 +- apps/web/locales/el-GR.po | 108 +- apps/web/locales/en-GB.po | 112 +- apps/web/locales/en-US.po | 110 +- apps/web/locales/es-ES.po | 112 +- apps/web/locales/fa-IR.po | 112 +- apps/web/locales/fi-FI.po | 108 +- apps/web/locales/fr-FR.po | 112 +- apps/web/locales/he-IL.po | 110 +- apps/web/locales/hi-IN.po | 110 +- apps/web/locales/hu-HU.po | 108 +- apps/web/locales/id-ID.po | 112 +- apps/web/locales/it-IT.po | 110 +- apps/web/locales/ja-JP.po | 112 +- apps/web/locales/km-KH.po | 112 +- apps/web/locales/kn-IN.po | 112 +- apps/web/locales/ko-KR.po | 110 +- apps/web/locales/lt-LT.po | 110 +- apps/web/locales/lv-LV.po | 110 +- apps/web/locales/ml-IN.po | 112 +- apps/web/locales/mr-IN.po | 112 +- apps/web/locales/ms-MY.po | 112 +- apps/web/locales/ne-NP.po | 112 +- apps/web/locales/nl-NL.po | 110 +- apps/web/locales/no-NO.po | 112 +- apps/web/locales/or-IN.po | 112 +- apps/web/locales/pl-PL.po | 110 +- apps/web/locales/pt-BR.po | 110 +- apps/web/locales/pt-PT.po | 110 +- apps/web/locales/ro-RO.po | 110 +- apps/web/locales/ru-RU.po | 112 +- apps/web/locales/sk-SK.po | 112 +- apps/web/locales/sl-SI.po | 112 +- apps/web/locales/sq-AL.po | 108 +- apps/web/locales/sr-SP.po | 108 +- apps/web/locales/sv-SE.po | 110 +- apps/web/locales/ta-IN.po | 112 +- apps/web/locales/te-IN.po | 112 +- apps/web/locales/th-TH.po | 112 +- apps/web/locales/tr-TR.po | 110 +- apps/web/locales/uk-UA.po | 112 +- apps/web/locales/uz-UZ.po | 112 +- apps/web/locales/vi-VN.po | 112 +- apps/web/locales/zh-CN.po | 102 +- apps/web/locales/zh-TW.po | 102 +- apps/web/locales/zu-ZA.po | 70 +- apps/web/package.json | 11 +- .../src/components/animation/comet-card.tsx | 8 +- .../web/src/components/animation/count-up.tsx | 24 +- .../src/components/animation/spotlight.tsx | 14 +- .../src/components/animation/text-mask.tsx | 30 +- apps/web/src/components/input/chip-input.tsx | 37 +- apps/web/src/components/input/rich-input.tsx | 14 +- .../components/layout/loading-screen.test.tsx | 2 +- .../src/components/layout/loading-screen.tsx | 2 +- apps/web/src/components/level/display.tsx | 10 +- .../src/components/typography/combobox.tsx | 8 +- apps/web/src/components/ui/combobox.tsx | 7 +- apps/web/src/components/ui/donation-toast.tsx | 4 +- .../src/dialogs/auth/enable-two-factor.tsx | 56 +- apps/web/src/dialogs/renderers.tsx | 12 +- apps/web/src/dialogs/resume/import.tsx | 12 +- apps/web/src/dialogs/resume/index.tsx | 8 +- .../web/src/dialogs/resume/sections/award.tsx | 2 +- .../dialogs/resume/sections/certification.tsx | 2 +- .../src/dialogs/resume/sections/custom.tsx | 4 +- .../src/dialogs/resume/sections/education.tsx | 2 +- .../dialogs/resume/sections/experience.tsx | 4 +- .../src/dialogs/resume/sections/interest.tsx | 2 +- .../src/dialogs/resume/sections/profile.tsx | 2 +- .../src/dialogs/resume/sections/project.tsx | 2 +- .../dialogs/resume/sections/publication.tsx | 2 +- .../src/dialogs/resume/sections/reference.tsx | 2 +- .../web/src/dialogs/resume/sections/skill.tsx | 2 +- .../src/dialogs/resume/sections/volunteer.tsx | 2 +- .../src/dialogs/resume/template/gallery.tsx | 2 +- apps/web/src/features/auth/layout.tsx | 2 +- .../features/auth/pages/forgot-password.tsx | 4 +- apps/web/src/features/auth/pages/login.tsx | 2 +- apps/web/src/features/auth/pages/register.tsx | 4 +- .../features/auth/pages/reset-password.tsx | 2 +- .../features/auth/pages/resume-password.tsx | 2 +- .../features/auth/pages/verify-2fa-backup.tsx | 2 +- .../src/features/auth/pages/verify-2fa.tsx | 2 +- .../src/features/command-palette/index.tsx | 6 +- .../features/command-palette/pages/base.tsx | 6 +- .../command-palette/pages/navigation.tsx | 2 +- .../pages/preferences/index.test.tsx | 10 +- .../pages/preferences/index.tsx | 4 +- .../command-palette/pages/resumes.tsx | 4 +- apps/web/src/features/resume/builder/draft.ts | 6 +- .../features/resume/preview/pdf-canvas.tsx | 26 +- .../resume/preview/preview.browser.tsx | 17 +- .../src/features/resume/public/pdf-viewer.tsx | 138 ++- .../authentication/components/passkeys.tsx | 6 +- .../authentication/components/password.tsx | 14 +- .../components/social-provider.tsx | 14 +- .../authentication/components/two-factor.tsx | 14 +- .../settings/authentication/index.tsx | 6 +- .../integrations/components/ai-section.tsx | 2 +- .../features/settings/integrations/index.tsx | 6 +- .../src/features/settings/pages/api-keys.tsx | 14 +- .../features/settings/pages/danger-zone.tsx | 10 +- .../features/settings/pages/preferences.tsx | 6 +- .../src/features/settings/pages/profile.tsx | 10 +- apps/web/src/features/theme/toggle-button.tsx | 52 +- apps/web/src/hooks/use-confirm.tsx | 2 +- apps/web/src/hooks/use-prompt.tsx | 6 +- apps/web/src/libs/resume/move-item.ts | 3 +- .../libs/resume/section-title-locale.test.tsx | 6 +- .../src/libs/resume/section-title-locale.ts | 13 +- apps/web/src/routeTree.gen.ts | 1056 ++++++++--------- apps/web/src/routes/__root.tsx | 48 +- .../web/src/routes/_home/-sections/donate.tsx | 46 +- apps/web/src/routes/_home/-sections/faq.tsx | 14 +- .../src/routes/_home/-sections/features.tsx | 10 +- .../web/src/routes/_home/-sections/footer.tsx | 10 +- .../web/src/routes/_home/-sections/header.tsx | 6 +- apps/web/src/routes/_home/-sections/hero.tsx | 36 +- .../src/routes/_home/-sections/prefooter.tsx | 8 +- .../src/routes/_home/-sections/statistics.tsx | 14 +- .../src/routes/_home/-sections/templates.tsx | 42 +- .../routes/_home/-sections/testimonials.tsx | 44 +- apps/web/src/routes/agent/$threadId.tsx | 635 ++++++---- .../agent/-components/new-thread-setup.tsx | 25 +- .../agent/-components/thread-sidebar.tsx | 37 +- .../builder/$resumeId/-components/dock.tsx | 10 +- .../-sidebar/left/sections/picture.tsx | 654 +++++----- .../-sidebar/left/shared/section-base.tsx | 2 +- .../-sidebar/right/sections/design.tsx | 12 +- .../-sidebar/right/sections/layout/pages.tsx | 61 +- .../right/sections/resume-analysis.tsx | 16 +- .../-sidebar/right/sections/statistics.tsx | 2 +- .../-sidebar/right/sections/template.tsx | 2 +- .../-sidebar/right/sections/typography.tsx | 27 +- .../-sidebar/right/shared/section-base.tsx | 2 +- .../builder/$resumeId/-store/sidebar.ts | 14 +- .../routes/dashboard/-components/sidebar.tsx | 6 +- .../resumes/-components/cards/base-card.tsx | 2 +- .../resumes/-components/cards/resume-card.tsx | 10 +- .../-components/cards/resume-thumbnail.tsx | 95 +- .../resumes/-components/grid-view.tsx | 14 +- .../resumes/-components/list-view.tsx | 14 +- apps/web/src/routes/templates/$.tsx | 15 +- apps/web/vite.config.ts | 6 +- compose.yml | 10 +- packages/api/package.json | 4 +- .../api/src/features/agent/service.test.ts | 30 +- packages/api/src/features/agent/service.ts | 116 +- .../api/src/features/agent/streams.test.ts | 18 +- packages/api/src/features/resume/events.ts | 21 +- .../api/src/features/statistics/service.ts | 10 +- packages/api/src/features/storage/service.ts | 3 +- packages/auth/src/config.ts | 16 +- packages/pdf/package.json | 3 + packages/pdf/src/browser.tsx | 2 +- packages/pdf/src/context.tsx | 4 +- packages/pdf/src/document.tsx | 10 +- .../pdf/src/hooks/use-register-fonts.test.ts | 2 +- packages/pdf/src/hooks/use-register-fonts.ts | 10 +- packages/pdf/src/renderer.ts | 12 + packages/pdf/src/server.tsx | 2 +- .../pdf/src/templates/azurill/AzurillPage.tsx | 10 +- .../pdf/src/templates/bronzor/BronzorPage.tsx | 17 +- .../src/templates/chikorita/ChikoritaPage.tsx | 10 +- .../pdf/src/templates/ditgar/DitgarPage.tsx | 10 +- .../pdf/src/templates/ditto/DittoPage.tsx | 10 +- .../pdf/src/templates/gengar/GengarPage.tsx | 10 +- .../pdf/src/templates/glalie/GlaliePage.tsx | 10 +- .../pdf/src/templates/kakuna/KakunaPage.tsx | 10 +- .../pdf/src/templates/lapras/LaprasPage.tsx | 10 +- .../pdf/src/templates/leafish/LeafishPage.tsx | 10 +- .../pdf/src/templates/meowth/MeowthPage.tsx | 10 +- packages/pdf/src/templates/onyx/OnyxPage.tsx | 10 +- .../pdf/src/templates/pikachu/PikachuPage.tsx | 10 +- .../pdf/src/templates/rhyhorn/RhyhornPage.tsx | 92 +- .../pdf/src/templates/scizor/ScizorPage.tsx | 2 +- .../pdf/src/templates/shared/contact-item.tsx | 2 +- packages/pdf/src/templates/shared/context.tsx | 13 +- .../pdf/src/templates/shared/filtering.ts | 11 +- .../src/templates/shared/level-display.tsx | 12 +- .../pdf/src/templates/shared/primitives.tsx | 2 +- .../templates/shared/rich-text-html.test.ts | 2 +- .../src/templates/shared/rich-text-html.ts | 19 +- .../src/templates/shared/rich-text-spacing.ts | 28 +- .../pdf/src/templates/shared/rich-text.tsx | 2 +- .../pdf/src/templates/shared/sections.tsx | 29 +- packages/ui/src/components/form.tsx | 2 +- packages/ui/src/components/label.tsx | 3 +- packages/ui/src/components/sidebar.tsx | 4 +- packages/ui/src/components/slider.tsx | 12 +- packages/ui/src/hooks/use-confirm.tsx | 2 +- packages/ui/src/hooks/use-cookie.tsx | 17 +- packages/ui/src/hooks/use-prompt.tsx | 6 +- pnpm-lock.yaml | 225 ++-- 208 files changed, 5876 insertions(+), 4778 deletions(-) create mode 100644 packages/pdf/src/renderer.ts diff --git a/.env.example b/.env.example index 093587636..ab18e3be7 100644 --- a/.env.example +++ b/.env.example @@ -12,7 +12,7 @@ APP_URL="http://localhost:3000" # --- Database (PostgreSQL) --- # PostgreSQL connection URL. In Docker Compose, the hostname is usually `postgres`; # when running directly on your machine, `localhost` is typical. -DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres" +DATABASE_URL="postgresql://postgres:postgres@postgres:5432/postgres" # --- Authentication --- # Generated using `openssl rand -hex 32` @@ -54,8 +54,8 @@ OAUTH_SCOPES="openid profile email" # --- Email (optional) --- # If SMTP_HOST, SMTP_USER, SMTP_PASS, or SMTP_FROM is missing, the app logs the # email to the console instead. -SMTP_HOST="localhost" -SMTP_PORT="1025" +SMTP_HOST="" +SMTP_PORT="" SMTP_USER="" SMTP_PASS="" SMTP_FROM="Reactive Resume " @@ -72,13 +72,13 @@ SMTP_SECURE="false" S3_ACCESS_KEY_ID="seaweedfs" S3_SECRET_ACCESS_KEY="seaweedfs" S3_REGION="us-east-1" -S3_ENDPOINT="http://localhost:8333" +S3_ENDPOINT="http://seaweedfs:8333" S3_BUCKET="reactive-resume" S3_FORCE_PATH_STYLE="true" # --- AI Agent Workspace (optional) --- # Required only for the authenticated /agent workspace and saved AI providers. -REDIS_URL="redis://localhost:6379" +REDIS_URL="redis://redis:6379" ENCRYPTION_SECRET="change-me-to-a-secure-agent-secret-in-production" # --- Feature Flags --- diff --git a/.gitignore b/.gitignore index 850200f8b..6390b17f8 100644 --- a/.gitignore +++ b/.gitignore @@ -44,6 +44,7 @@ temp # AI .codex +.agents .claude .cursor .codegraph diff --git a/apps/server/package.json b/apps/server/package.json index c7fe31cee..613bc54cc 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -13,9 +13,12 @@ "test:ci": "vitest run --coverage --reporter=default --reporter=github-actions --reporter=json --reporter=junit --outputFile.json=reports/vitest-results.json --outputFile.junit=reports/vitest-junit.xml --passWithNoTests", "test:agent": "vitest run --reporter=agent --reporter=json --outputFile.json=reports/vitest-results.json --passWithNoTests" }, + "imports": { + "#react-pdf-renderer": "@react-pdf/renderer" + }, "dependencies": { "@ai-sdk/anthropic": "^3.0.78", - "@ai-sdk/google": "^3.0.75", + "@ai-sdk/google": "^3.0.77", "@ai-sdk/openai": "^3.0.64", "@ai-sdk/openai-compatible": "^2.0.47", "@aws-sdk/client-s3": "^3.1051.0", @@ -43,7 +46,7 @@ "@sindresorhus/slugify": "^3.0.0", "@t3-oss/env-core": "^0.13.11", "@uiw/color-convert": "^2.10.1", - "ai": "^6.0.185", + "ai": "^6.0.187", "bcrypt": "^6.0.0", "better-auth": "1.6.11", "cjk-regex": "^3.4.0", diff --git a/apps/server/src/http/auth.ts b/apps/server/src/http/auth.ts index 7621433ee..ea2736e51 100644 --- a/apps/server/src/http/auth.ts +++ b/apps/server/src/http/auth.ts @@ -19,6 +19,8 @@ const oauthAuthorizeSanitizedParams = [ "resource", ] as const; +const oauthCallbackPassthroughExcludedParams = new Set(["exp", "sig"]); + function sanitizeOAuthAuthorizeRequest(request: Request): Request { if (request.method !== "GET") return request; @@ -199,7 +201,7 @@ export async function handleOAuth(request: Request) { const loginUrl = new URL("/auth/login", env.APP_URL); const oauthParams = new URLSearchParams(); for (const [key, value] of url.searchParams) { - if (!["exp", "sig"].includes(key)) { + if (!oauthCallbackPassthroughExcludedParams.has(key)) { oauthParams.set(key, value); } } diff --git a/apps/web/locales/af-ZA.po b/apps/web/locales/af-ZA.po index 58dbb9163..2459b201f 100644 --- a/apps/web/locales/af-ZA.po +++ b/apps/web/locales/af-ZA.po @@ -8,7 +8,7 @@ msgstr "" "Language: af\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:14\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Afrikaans\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analyseer CV" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analisering..." +msgid "Analyzing…" +msgstr "Analiseer…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Kanselleer" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Kan nie terugdraai nie; die CV het verander sedert hierdie wysiging toegepas is." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Kan nie herstel nie; die CV het verander sedert hierdie wysiging toegepas is." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Verander taal" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Verander taal na..." +msgid "Change language to…" +msgstr "Verander taal na…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Verander tema na..." +msgid "Change theme to…" +msgstr "Verander tema na…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Konn nie die KI-verskaffer bereik nie. Probeer asseblief weer." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Kon nie hierdie opdatering terugstel nie." +msgid "Could not restore this patch." +msgstr "Kon nie hierdie pleister herstel nie." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Besig om wagwoordbeskerming te aktiveer..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Besig om twee-faktor-magtiging te aktiveer..." +msgid "Enabling two-factor authentication…" +msgstr "Aktiveer tweefaktor-verifikasie…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Gaan na die CV-dashboard" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Gaan na..." +msgid "Go to…" +msgstr "Gaan na…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Besig om jou CV in te voer..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Voer in..." +msgid "Importing…" +msgstr "Voer tans… in" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Taal" msgid "Languages" msgstr "Tale" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Laaste keer ontleed op {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Laas geanaliseer op {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litaus" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Laai agentwerkruimte..." +msgid "Loading agent workspace…" +msgstr "Laai agent se werkspasie…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Laai tans KI-verskaffers. Probeer asseblief weer oor 'n oomblik." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Laai verskaffers..." +msgid "Loading providers…" +msgstr "Laai verskaffers…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Laai tans CV's..." +msgid "Loading resumes…" +msgstr "Laai CV's…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Laai drade..." +msgid "Loading threads…" +msgstr "Laai drade…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Laai tans..." +msgid "Loading…" +msgstr "Laai…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Pleister hangende" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Pleister teruggedraai" +msgid "Patch rolled back" +msgstr "Pleister teruggerol" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Pleister teruggekeer." +msgid "Patch rolled back." +msgstr "Pleister teruggerol." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Ondersteun asseblief die projek" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Wag asseblief terwyl jou PDF gegenereer word..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Wag asseblief terwyl jou PDF gegenereer word…" + #: src/libs/locale.ts msgid "Polish" msgstr "Pools" @@ -2724,6 +2726,14 @@ msgstr "Besig om jou wagwoord te herstel..." msgid "Resources" msgstr "Hulpbronne" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Herstel" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Herstel die CV na voor hierdie opdatering? Dit sal hierdie opdatering en enige opdaterings wat daarna toegepas is, terugrol." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "CV" @@ -2752,10 +2762,6 @@ msgstr "CV's" msgid "Retry" msgstr "Probeer weer" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Terugkeer" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Hersien die CV teenoor 'n posbeskrywing en vra my vrae voordat jy onsekere afdelings verander." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Soek na 'n ikoon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Soek na..." +msgid "Search for…" +msgstr "Soek vir…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Soek..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Soek…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Geheim na knipbord gekopieer." @@ -3558,8 +3567,8 @@ msgstr "Tik \"{CONFIRMATION_TEXT}\" om te bevestig" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Tik 'n opdrag of soek..." +msgid "Type a command or search…" +msgstr "Tik 'n opdrag of soek…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Laai prent op" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Laai tans prent op..." +msgid "Uploading picture…" +msgstr "Laai tans prent op…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifieer met 'n rugsteunkode" msgid "Verifying backup code..." msgstr "Besig om rugsteunkode te verifieer..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Besig om kode te verifieer..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verifieer kode…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Besig om wagwoord te verifieer..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Werk OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Werk..." +msgid "Working…" +msgstr "Werk…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/am-ET.po b/apps/web/locales/am-ET.po index 4c398832d..b7a56d751 100644 --- a/apps/web/locales/am-ET.po +++ b/apps/web/locales/am-ET.po @@ -8,7 +8,7 @@ msgstr "" "Language: am\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Amharic\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "የሥራ ማመልከቻ ሰነድን ተንትን" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "በመተንተን ላይ..." +msgid "Analyzing…" +msgstr "መተንተን…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "ሰርዝ" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "መመለስ አይቻልም፤ ይህ ማስተካከያ ከተተገበረበት ጊዜ ጀምሮ የስራ መግለጫው ተቀይሯል።" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "ወደነበረበት መመለስ አይቻልም፤ ይህ ማስተካከያ ከተተገበረበት ጊዜ ጀምሮ የስራ መግለጫው ተቀይሯል።" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "ቋንቋ ቀይር" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "ቋንቋን ወደ ... ቀይር" +msgid "Change language to…" +msgstr "ቋንቋውን ወደ… ቀይር" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "ገጽታን ወደ ... ቀይር" +msgid "Change theme to…" +msgstr "ገጽታውን ወደ… ቀይር" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "ወደ AI አቅራቢው መድረስ አልተቻለም። እባክዎ እንደገና ይሞክሩ።" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "ይህንን ፓች መመለስ አልተቻለም።" +msgid "Could not restore this patch." +msgstr "ይህንን ፓች ወደነበረበት መመለስ አልተቻለም።" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "የይለፍ ቃል ጥበቃን በመነቃቃት ላይ…" #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "ሁለት-ደረጃ ማረጋገጫን በመነቃቃት ላይ…" +msgid "Enabling two-factor authentication…" +msgstr "ባለ ሁለት ደረጃ ማረጋገጫን ማንቃት…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "ወደ የሥራ ማመልከቻ ሰነዶች ዳሽቦርድ ሂድ" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "ወደ ... ሂድ" +msgid "Go to…" +msgstr "ወደ… ይሂዱ" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "የየታሪክዎን በመጫን ላይ…" #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "በመጫን ላይ…" +msgid "Importing…" +msgstr "በማስመጣት ላይ…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "ቋንቋ" msgid "Languages" msgstr "ቋንቋዎች" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "መጨረሻ የተተነተነው በ{0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "ለመጨረሻ ጊዜ የተተነተነው በ {updatedAtLabel} ላይ" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "ሊቱዌንያንኛ" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "የወኪል የስራ ቦታን በመጫን ላይ..." +msgid "Loading agent workspace…" +msgstr "የወኪል የስራ ቦታን በመጫን ላይ…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "የAI አቅራቢዎችን በመጫን ላይ። እባክዎ ከአ #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "አቅራቢዎችን በመጫን ላይ..." +msgid "Loading providers…" +msgstr "አቅራቢዎችን በመጫን ላይ…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "የየታሪክ ማቅረቢያዎችን በመጫን ላይ…" +msgid "Loading resumes…" +msgstr "የስራ ልምድ ማስረጃዎችን በመጫን ላይ…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "ክሮችን በመጫን ላይ..." +msgid "Loading threads…" +msgstr "ክሮች በመጫን ላይ…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "በመጫን ላይ…" +msgid "Loading…" +msgstr "… በመጫን ላይ" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "ጥገና በመጠባበቅ ላይ" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "ጥገናው ተመልሷል" +msgid "Patch rolled back" +msgstr "ፓች ወደኋላ ተመልሷል" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "ፓች ተመልሷል።" +msgid "Patch rolled back." +msgstr "ፓች ወደኋላ ተንከባለለ።" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "እባክዎን ፕሮጀክቱን ይደግፉ" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "እባክዎ የ PDF ፋይልዎ እየተመነጨ ሲሆን ይጠብቁ…" +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "እባክዎ የእርስዎ ፒዲኤፍ እስኪፈጠር ድረስ ይጠብቁ…" + #: src/libs/locale.ts msgid "Polish" msgstr "ፖላንድኛ" @@ -2724,6 +2726,14 @@ msgstr "የይለፍ ቃልዎን በመዳግም ላይ…" msgid "Resources" msgstr "ሀብቶች" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "ወደነበረበት መልስ" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "ከዚህ ፓች በፊት የነበረውን የስራ ልምድ (ሲቪ) ወደነበረበት ይመልሱ? ይህ ይህንን ፓች እና ከእሱ በኋላ የተተገበሩትን ፓችዎች ይመልሳል።" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "የስራ ልምድ ማስረጃ" @@ -2752,10 +2762,6 @@ msgstr "የየታሪክ ማቅረቢያዎች" msgid "Retry" msgstr "እንደገና ሞክር" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "መልስ" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "የሥራ መግለጫውን ከስራ መግለጫ ጋር በማነፃፀር ይገምግሙ እና እርግጠኛ ያልሆኑ ክፍሎችን ከመቀየርዎ በፊት ጥያቄዎችን ይጠይቁኝ።" @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "አዶ ፈልግ" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "…ን ይፈልጉ" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "ፈልግ..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "ፈልግ..." +msgid "Search…" +msgstr "ፈልግ…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "\"{CONFIRMATION_TEXT}\" በመተየብ ያረጋግጡ" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "ትእዛዝ ወይም ፍለጋ ይተይቡ..." +msgid "Type a command or search…" +msgstr "ትዕዛዝ ይተይቡ ወይም ይፈልጉ…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "ምስል ስቀል" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "ፎቶ በመጫን ላይ…" +msgid "Uploading picture…" +msgstr "ፎቶ በመስቀል ላይ…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "በመከላከያ ኮድ አረጋግጥ" msgid "Verifying backup code..." msgstr "መከላከያ ኮድ በማረጋገጥ ላይ…" -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "ኮድ በማረጋገጥ ላይ…" +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "የማረጋገጫ ኮድ…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "የይለፍ ቃል በማረጋገጥ ላይ…" @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ክፍት የአይአይ ስራ" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "በመስራት ላይ..." +msgid "Working…" +msgstr "በመስራት ላይ…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ar-SA.po b/apps/web/locales/ar-SA.po index 663aa47c9..b3dd3041f 100644 --- a/apps/web/locales/ar-SA.po +++ b/apps/web/locales/ar-SA.po @@ -8,7 +8,7 @@ msgstr "" "Language: ar\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Arabic\n" "Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "تحليل السيرة الذاتية" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "تحليل..." +msgid "Analyzing…" +msgstr "تحليل…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "إلغاء" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "لا يمكن التراجع؛ فقد تغيرت السيرة الذاتية منذ تطبيق هذا التعديل." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "لا يمكن الاستعادة؛ فقد تغيرت السيرة الذاتية منذ تطبيق هذا التعديل." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "تغيير اللغة" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "تغيير اللغة إلى..." +msgid "Change language to…" +msgstr "غيّر اللغة إلى…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "تغيير السمة إلى..." +msgid "Change theme to…" +msgstr "غيّر المظهر إلى…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "تعذر الوصول إلى موفر الذكاء الاصطناعي. يرجى المحاولة مرة أخرى." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "لم يكن بالإمكان التراجع عن هذا التحديث." +msgid "Could not restore this patch." +msgstr "تعذر استعادة هذا التحديث." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "جاري تمكين حماية كلمة المرور..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "جاري تمكين المصادقة الثنائية..." +msgid "Enabling two-factor authentication…" +msgstr "تفعيل المصادقة الثنائية…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "الانتقال إلى لوحة معلومات السير الذاتية" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "انتقل إلى..." +msgid "Go to…" +msgstr "انتقل إلى…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "جاري استيراد سيرتك الذاتية..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "استيراد..." +msgid "Importing…" +msgstr "جارٍ الاستيراد…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "اللّغة" msgid "Languages" msgstr "اللغات" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "آخر تحليل على {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "آخر تحليل بتاريخ {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "اللتوانية" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "مساحة عمل وكيل التحميل..." +msgid "Loading agent workspace…" +msgstr "جارٍ تحميل مساحة عمل الوكيل…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "جارٍ تحميل مزودي خدمات الذكاء الاصطناع #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "جارٍ تحميل مزودي الخدمة..." +msgid "Loading providers…" +msgstr "جارٍ تحميل مزودي الخدمة…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "جاري تحميل السير الذاتية..." +msgid "Loading resumes…" +msgstr "استئناف التحميل…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "جارٍ تحميل المواضيع..." +msgid "Loading threads…" +msgstr "جارٍ تحميل الخيوط…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "جارٍ التحميل..." +msgid "Loading…" +msgstr "جارٍ التحميل…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "التحديث قيد الانتظار" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "تم التراجع عن التحديث" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "تم التراجع عن التحديث." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "يرجى دعم المشروع" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "يُرجى الانتظار أثناء إنشاء ملف PDF الخاص بك..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "يرجى الانتظار ريثما يتم إنشاء ملف PDF الخاص بك…" + #: src/libs/locale.ts msgid "Polish" msgstr "البولندية" @@ -2724,6 +2726,14 @@ msgstr "جاري إعادة تعيين كلمة المرور..." msgid "Resources" msgstr "الموارد" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "يعيد" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "هل تريد استعادة النظام إلى ما قبل هذا التحديث؟ سيؤدي هذا إلى التراجع عن هذا التحديث وأي تحديثات أخرى تم تطبيقها بعده." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "سيرة ذاتية" @@ -2752,10 +2762,6 @@ msgstr "السير الذاتية" msgid "Retry" msgstr "إعادة المحاولة" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "يرجع" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "راجع السيرة الذاتية مع وصف الوظيفة واطرح عليّ أسئلة قبل تغيير الأقسام غير الواضحة." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "ابحث عن أيقونة" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "ابحث عن..." +msgid "Search for…" +msgstr "ابحث عن…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "بحث..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "ابحث…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "تم نسخ السر إلى الحافظة." @@ -3558,8 +3567,8 @@ msgstr "اكتب \"{CONFIRMATION_TEXT}\" للتأكيد" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "اكتب أمرًا أو ابحث..." +msgid "Type a command or search…" +msgstr "اكتب أمرًا أو ابحث عن…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "تحميل الصورة" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "جاري رفع الصورة..." +msgid "Uploading picture…" +msgstr "جارٍ تحميل الصورة…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "التحقق باستخدام رمز نسخ احتياطي" msgid "Verifying backup code..." msgstr "جاري التحقق من رمز النسخ الاحتياطي..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "جاري التحقق من الرمز..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "التحقق من الرمز…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "جاري التحقق من كلمة المرور..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "العمل مع OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "عمل..." +msgid "Working…" +msgstr "جارٍ العمل…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/az-AZ.po b/apps/web/locales/az-AZ.po index 6abf4e04a..42bfbfcfc 100644 --- a/apps/web/locales/az-AZ.po +++ b/apps/web/locales/az-AZ.po @@ -8,7 +8,7 @@ msgstr "" "Language: az\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Azerbaijani\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Təcrübəni təhlil et" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Təhlil edilir..." +msgid "Analyzing…" +msgstr "… təhlil edilir" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Ləğv et" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Geri qaytarmaq mümkün deyil; bu düzəliş tətbiq edildikdən bəri CV dəyişib." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Bərpa etmək mümkün deyil; bu düzəliş tətbiq edildikdən bəri CV dəyişib." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Dili dəyiş" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Dili dəyiş..." +msgid "Change language to…" +msgstr "Dili… olaraq dəyişdirin" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Mövzunu dəyiş..." +msgid "Change theme to…" +msgstr "Temanı… olaraq dəyişdirin" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI provayderinə qoşula bilmədi. Zəhmət olmasa yenidən cəhd edin." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Bu yamağı geri qaytarmaq mümkün olmadı." +msgid "Could not restore this patch." +msgstr "Bu yamağı bərpa etmək mümkün olmadı." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Parol qorunması aktivləşdirilir..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "İki mərhələli autentifikasiyanı aktivləşdirmə prosesi gedir..." +msgid "Enabling two-factor authentication…" +msgstr "İki faktorlu identifikasiyanın aktivləşdirilməsi…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Təqdimatların idarəetmə panelinə keçin" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Keç..." +msgid "Go to…" +msgstr "… bölməsinə keçin" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Özgeçmişiniz idxal olunur..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "İdxal edilir..." +msgid "Importing…" +msgstr "… idxal edilir" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Dil" msgid "Languages" msgstr "Dillər" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Sonuncu dəfə təhlil edilib {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Sonuncu dəfə {updatedAtLabel} tarixində təhlil edilib" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litva" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Agent iş sahəsi yüklənir..." +msgid "Loading agent workspace…" +msgstr "Agent iş sahəsi yüklənir…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Süni intellekt provayderləri yüklənir. Zəhmət olmasa, bir az sonra #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Provayderlər yüklənir..." +msgid "Loading providers…" +msgstr "Provayderlər yüklənir…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Özgeçmişlər yüklənir..." +msgid "Loading resumes…" +msgstr "CV-lər yüklənir…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Mövzular yüklənir..." +msgid "Loading threads…" +msgstr "Mövzular yüklənir…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Yüklənir..." +msgid "Loading…" +msgstr "… yüklənir" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Yamaq gözlənilir" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Yamaq geri qaytarıldı" +msgid "Patch rolled back" +msgstr "Yamaq geri çəkildi" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Yamaq geri qaytarıldı." +msgid "Patch rolled back." +msgstr "Yamaq geri çəkildi." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Layihəni dəstəkləyin" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "PDF‑iniz yaradılarkən, zəhmət olmasa, gözləyin..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "PDF faylınız yaradılana qədər gözləyin…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polyak" @@ -2724,6 +2726,14 @@ msgstr "Parolunuz sıfırlanır..." msgid "Resources" msgstr "Resurslar" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Bərpa et" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "CV-ni bu yamadan əvvəlki vəziyyətinə bərpa etsinlər? Bu, bu yamanı və ondan sonra tətbiq olunan bütün yamaları geri qaytaracaq." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "CV" @@ -2752,10 +2762,6 @@ msgstr "Özgeçmişlər" msgid "Retry" msgstr "Təkrar cəhd edin" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Geri qaytarın" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "CV-ni iş təsviri ilə müqayisə edin və qeyri-müəyyən bölmələri dəyişdirməzdən əvvəl mənə suallar verin." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "İkon axtarın" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… üçün axtarış" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Axtar..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Axtar..." +msgid "Search…" +msgstr "… axtarın" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Təsdiqləmək üçün \"{CONFIRMATION_TEXT}\" yazın" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Əmr yazın və ya axtarın..." +msgid "Type a command or search…" +msgstr "Əmr yazın və ya… axtarışını edin" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Şəkil yüklə" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Şəkil yüklənir..." +msgid "Uploading picture…" +msgstr "Şəkil yüklənir…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Ehtiyat Kod ilə Təsdiqlə" msgid "Verifying backup code..." msgstr "Ehtiyat kod yoxlanılır..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Kod yoxlanılır..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Kod təsdiqlənir…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Parol yoxlanılır..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI ilə işləyin" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "İşləyir..." +msgid "Working…" +msgstr "… işləyir" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/bg-BG.po b/apps/web/locales/bg-BG.po index 8eaf74ab6..0c2c1a98b 100644 --- a/apps/web/locales/bg-BG.po +++ b/apps/web/locales/bg-BG.po @@ -8,7 +8,7 @@ msgstr "" "Language: bg\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Bulgarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Анализиране на автобиографията" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Анализ на..." +msgid "Analyzing…" +msgstr "Анализиране…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Отказ" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Не може да се върне; автобиографията се е променила, откакто е приложена тази редакция." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Не може да се възстанови; автобиографията се е променила, след като тази редакция е била приложена." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Промяна на езика" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Промяна на езика на..." +msgid "Change language to…" +msgstr "Промяна на езика на…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Промяна на темата на..." +msgid "Change theme to…" +msgstr "Промяна на темата на…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Не може да се свърже с доставчика на AI. Моля, опитайте отново." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Не можах да върна този пач." +msgid "Could not restore this patch." +msgstr "Не можа да се възстанови този пач." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Активиране на защита с парола..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Активиране на двуфакторно удостоверяване..." +msgid "Enabling two-factor authentication…" +msgstr "Активиране на двуфакторно удостоверяване…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Отидете на таблото с автобиографии" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Отидете на..." +msgid "Go to…" +msgstr "Отидете на…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Вашата автобиография се импортира..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Импортиране..." +msgid "Importing…" +msgstr "Импортиране…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Език" msgid "Languages" msgstr "Езици" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Последен анализ на {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Последен анализ на {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Литовски" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Зареждане на работното пространство на агента..." +msgid "Loading agent workspace…" +msgstr "Зареждане на работното пространство на агента…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Зареждане на доставчици на ИИ. Моля, опи #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Зареждане на доставчици..." +msgid "Loading providers…" +msgstr "Зареждане на доставчици…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Зареждане на автобиографии..." +msgid "Loading resumes…" +msgstr "Зареждане на автобиографии…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Зареждане на теми..." +msgid "Loading threads…" +msgstr "Зареждане на теми…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Зареждане..." +msgid "Loading…" +msgstr "Зареждане…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Чакаща се корекция" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Пачът е върнат" +msgid "Patch rolled back" +msgstr "Кръпката е върната назад" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Пачът е върнат." +msgid "Patch rolled back." +msgstr "Кръпката е отменена." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Моля, подкрепете проекта" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Моля, изчакайте, докато вашият PDF се генерира..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Моля, изчакайте, докато вашият PDF файл се генерира…" + #: src/libs/locale.ts msgid "Polish" msgstr "Полски" @@ -2724,6 +2726,14 @@ msgstr "Нулиране на паролата ви..." msgid "Resources" msgstr "Ресурси" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Възстановяване" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Да се възстанови ли автобиографията до състоянието преди този пач? Това ще отмени този пач и всички пачове, приложени след него." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Автобиография" @@ -2752,10 +2762,6 @@ msgstr "Автобиографии" msgid "Retry" msgstr "Опитай отново" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Връщане" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Прегледайте автобиографията си спрямо описанието на длъжността и ми задайте въпроси, преди да променяте неясните части." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Търсене на икона" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Търсене на..." +msgid "Search for…" +msgstr "Търсене за…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Търсене..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Търсене…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Тайната е копирана в клипборда." @@ -3558,8 +3567,8 @@ msgstr "Въведете „{CONFIRMATION_TEXT}“, за да потвърдит #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Въведете команда или търсете..." +msgid "Type a command or search…" +msgstr "Въведете команда или потърсете…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Качване на снимка" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Качване на снимка..." +msgid "Uploading picture…" +msgstr "Качване на снимка…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Потвърждаване с резервен код" msgid "Verifying backup code..." msgstr "Потвърждаване на резервния код..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Потвърждаване на кода..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Код за проверка…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Потвърждаване на паролата..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Работа с OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Работа..." +msgid "Working…" +msgstr "Работи…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/bn-BD.po b/apps/web/locales/bn-BD.po index 26a9e9245..e1fc9cba7 100644 --- a/apps/web/locales/bn-BD.po +++ b/apps/web/locales/bn-BD.po @@ -8,7 +8,7 @@ msgstr "" "Language: bn\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Bengali\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "রিজিউম বিশ্লেষণ করুন" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "বিশ্লেষণ করা হচ্ছে..." +msgid "Analyzing…" +msgstr "… বিশ্লেষণ করা হচ্ছে" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "বাতিল করুন" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "পূর্বাবস্থায় ফেরানো সম্ভব নয়; এই সম্পাদনাটি প্রয়োগ করার পর জীবনবৃত্তান্তটি পরিবর্তিত হয়ে গেছে।" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "পুনরুদ্ধার করা সম্ভব নয়; এই সম্পাদনাটি প্রয়োগ করার পর জীবনবৃত্তান্তটি পরিবর্তিত হয়েছে।" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "ভাষা পরিবর্তন করুন" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "ভাষা পরিবর্তন করুন..." +msgid "Change language to…" +msgstr "ভাষা পরিবর্তন করুন…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "থিম পরিবর্তন করুন..." +msgid "Change theme to…" +msgstr "থিম পরিবর্তন করে… করুন" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "এআই প্রদানকারীর সাথে সংযোগ স্থাপন করা যায়নি। অনুগ্রহ করে আবার চেষ্টা করুন।" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "এই প্যাচটি পূর্বাবস্থায় ফেরানো সম্ভব হয়নি।" +msgid "Could not restore this patch." +msgstr "এই প্যাচটি পুনরুদ্ধার করা সম্ভব হয়নি।" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "পাসওয়ার্ড সুরক্ষা সক্রিয় করা হচ্ছে..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "টু‑ফ্যাক্টর প্রমাণীকরণ সক্রিয় করা হচ্ছে..." +msgid "Enabling two-factor authentication…" +msgstr "দ্বি-স্তর প্রমাণীকরণ সক্রিয় করা হচ্ছে…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "রিজিউমে ড্যাশবোর্ডে যান" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "যান..." +msgid "Go to…" +msgstr "… এ যান" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "আপনার জীবনবৃত্তান্ত ইমপোর্ট করা হচ্ছে..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "ইমপোর্ট হচ্ছে..." +msgid "Importing…" +msgstr "… আমদানি করা হচ্ছে" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "ভাষা" msgid "Languages" msgstr "ভাষাসমূহ" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "শেষবার বিশ্লেষণ করা হয়েছে {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "সর্বশেষ বিশ্লেষণ করা হয়েছে {updatedAtLabel} তারিখে।" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "লিথুয়ানিয়ান" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "এজেন্ট ওয়ার্কস্পেস লোড হচ্ছে..." +msgid "Loading agent workspace…" +msgstr "এজেন্ট ওয়ার্কস্পেস লোড হচ্ছে…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "এআই প্রোভাইডার লোড করা হচ্ #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "প্রোভাইডার লোড হচ্ছে..." +msgid "Loading providers…" +msgstr "প্রোভাইডার লোড হচ্ছে…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "জীবনবৃত্তান্তগুলো লোড করা হচ্ছে..." +msgid "Loading resumes…" +msgstr "পুনরায় শুরু হচ্ছে…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "থ্রেড লোড হচ্ছে..." +msgid "Loading threads…" +msgstr "থ্রেড লোড হচ্ছে…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "লোড হচ্ছে..." +msgid "Loading…" +msgstr "লোড হচ্ছে…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "প্যাচ প্রক্রিয়াধীন" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "প্যাচটি পূর্বাবস্থায় ফেরানো হয়েছে" +msgid "Patch rolled back" +msgstr "প্যাচটি ফিরিয়ে নেওয়া হয়েছে" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "প্যাচটি পূর্বাবস্থায় ফিরিয়ে আনা হয়েছে।" +msgid "Patch rolled back." +msgstr "প্যাচটি ফিরিয়ে নেওয়া হয়েছে।" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "প্রকল্পটি সমর্থন করুন।" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "অনুগ্রহ করে অপেক্ষা করুন, আপনার PDF তৈরি করা হচ্ছে..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "আপনার পিডিএফ তৈরি হওয়া পর্যন্ত অনুগ্রহ করে অপেক্ষা করুন…" + #: src/libs/locale.ts msgid "Polish" msgstr "পোলিশ" @@ -2724,6 +2726,14 @@ msgstr "আপনার পাসওয়ার্ড রিসেট করা msgid "Resources" msgstr "রিসোর্সসমূহ" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "পুনরুদ্ধার করুন" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "এই প্যাচের আগের অবস্থায় রেজিউমটি পুনরুদ্ধার করবেন? এটি এই প্যাচ এবং এর পরে প্রয়োগ করা যেকোনো প্যাচকে রোল ব্যাক করবে।" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "জীবনবৃত্তান্ত" @@ -2752,10 +2762,6 @@ msgstr "জীবনবৃত্তান্তসমূহ" msgid "Retry" msgstr "পুনরায় চেষ্টা করুন" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "প্রত্যাবর্তন করুন" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "চাকরির বিবরণের সাথে জীবনবৃত্তান্তটি মিলিয়ে পর্যালোচনা করুন এবং কোনো অস্পষ্ট অংশ পরিবর্তন করার আগে আমাকে প্রশ্ন করুন।" @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "একটি আইকন খুঁজুন" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "খুঁজুন..." +msgid "Search for…" +msgstr "… অনুসন্ধান করুন" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "অনুসন্ধান..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "অনুসন্ধান…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "সিক্রেটটি ক্লিপবোর্ডে কপি করা হয়েছে।" @@ -3558,8 +3567,8 @@ msgstr "নিশ্চিত করতে \"{CONFIRMATION_TEXT}\" টাইপ #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "একটি কমান্ড টাইপ করুন বা অনুসন্ধান করুন..." +msgid "Type a command or search…" +msgstr "কমান্ড টাইপ করুন অথবা অনুসন্ধান করুন…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "ছবি আপলোড করুন" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "ছবি আপলোড করা হচ্ছে..." +msgid "Uploading picture…" +msgstr "ছবি আপলোড করা হচ্ছে…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ব্যাকআপ কোড দিয়ে যাচাই কর msgid "Verifying backup code..." msgstr "ব্যাকআপ কোড যাচাই করা হচ্ছে..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "কোড যাচাই করা হচ্ছে..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "কোড যাচাই করা হচ্ছে…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "পাসওয়ার্ড যাচাই করা হচ্ছে..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ওপেনএআই-এর কাজ" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "কাজ চলছে..." +msgid "Working…" +msgstr "কাজ চলছে…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ca-ES.po b/apps/web/locales/ca-ES.po index 7361e2d77..0bbbe4760 100644 --- a/apps/web/locales/ca-ES.po +++ b/apps/web/locales/ca-ES.po @@ -8,7 +8,7 @@ msgstr "" "Language: ca\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Catalan\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analitzar currículum" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analitzant..." +msgid "Analyzing…" +msgstr "Analitzant…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Cancel·la" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "No es pot revertir; el currículum ha canviat des que es va aplicar aquesta edició." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "No es pot restaurar; el currículum ha canviat des que s'ha aplicat aquesta edició." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Canvia l'idioma" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Canvia l’idioma a..." +msgid "Change language to…" +msgstr "Canvia l'idioma a…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Canvia el tema a..." +msgid "Change theme to…" +msgstr "Canvia el tema a…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "No s'ha pogut contactar amb el proveïdor d'IA. Torni a provar." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "No s'ha pogut revertir aquest pegat." +msgid "Could not restore this patch." +msgstr "No s'ha pogut restaurar aquest pegat." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "S’està activant la protecció amb contrasenya..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "S’està activant l’autenticació en dos passos..." +msgid "Enabling two-factor authentication…" +msgstr "Habilitació de l'autenticació de dos factors…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Ves al tauler de control de currículums" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Ves a..." +msgid "Go to…" +msgstr "Ves a…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "S’està important el currículum..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "S’està important..." +msgid "Importing…" +msgstr "Important…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Idioma" msgid "Languages" msgstr "Idiomes" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Darrera anàlisi el {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Darrera anàlisi el {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituà" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "S'està carregant l'espai de treball de l'agent..." +msgid "Loading agent workspace…" +msgstr "Espai de treball de l'agent de càrrega…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "S'estan carregant els proveïdors d'IA. Si us plau, torneu-ho a provar d #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "S'estan carregant els proveïdors..." +msgid "Loading providers…" +msgstr "S'estan carregant els proveïdors…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "S’estan carregant els currículums..." +msgid "Loading resumes…" +msgstr "Carregant currículums…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "S'estan carregant els fils..." +msgid "Loading threads…" +msgstr "S'estan carregant els fils…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "S’està carregant..." +msgid "Loading…" +msgstr "S'està carregant…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Pegat pendent" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "Pegat revertit" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Pegat revertit." +msgid "Patch rolled back." +msgstr "Pegat enrere." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Si us plau, doneu suport al projecte" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Espera mentre es genera el PDF..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Si us plau, espereu mentre es genera el vostre PDF…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polonès" @@ -2724,6 +2726,14 @@ msgstr "S’està restablint la contrasenya..." msgid "Resources" msgstr "Recursos" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restaurar" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Voleu restaurar el currículum anterior a aquest pegat? Això reverteix aquest pegat i qualsevol pegat aplicat després." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Currículum vitae" @@ -2752,10 +2762,6 @@ msgstr "Currículums" msgid "Retry" msgstr "Torna-ho a intentar" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Revertir" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Revisa el currículum en relació amb la descripció del lloc de treball i fes-me preguntes abans de canviar les seccions incertes." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Cerca una icona" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Cerca…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Cerca..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Cerca..." +msgid "Search…" +msgstr "Cerca…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Escriu \"{CONFIRMATION_TEXT}\" per confirmar" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Escriu una ordre o cerca..." +msgid "Type a command or search…" +msgstr "Escriviu una ordre o cerqueu…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Pujar foto" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "S’està pujant la fotografia..." +msgid "Uploading picture…" +msgstr "S'està pujant la imatge…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifica amb un codi de reserva" msgid "Verifying backup code..." msgstr "S’està verificant el codi de reserva..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "S’està verificant el codi..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verificació del codi…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "S’està verificant la contrasenya..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Treballar amb OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Treballant..." +msgid "Working…" +msgstr "Treballant…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/cs-CZ.po b/apps/web/locales/cs-CZ.po index 51443d145..ba51d566f 100644 --- a/apps/web/locales/cs-CZ.po +++ b/apps/web/locales/cs-CZ.po @@ -8,7 +8,7 @@ msgstr "" "Language: cs\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Czech\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analýza životopisu" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analýza..." +msgid "Analyzing…" +msgstr "Analýza…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Zrušit" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Nelze vrátit zpět; životopis se od provedení této úpravy změnil." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Nelze obnovit; životopis se od provedení této úpravy změnil." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Změnit jazyk" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." +msgid "Change language to…" msgstr "Změnit jazyk na…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Změnit motiv na…" +msgid "Change theme to…" +msgstr "Změnit téma na…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nepodařilo se spojit s poskytovatelem UI. Zkuste to prosím znovu." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Tuto záplatu se nepodařilo vrátit zpět." +msgid "Could not restore this patch." +msgstr "Tuto záplatu se nepodařilo obnovit." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Aktivace ochrany heslem…" #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Aktivace dvoufázového ověření…" +msgid "Enabling two-factor authentication…" +msgstr "Povolení dvoufaktorového ověřování…" #: src/libs/locale.ts msgid "English" @@ -1633,7 +1633,7 @@ msgid "Go to resumes dashboard" msgstr "Přejít na palubní desku s životopisy" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." +msgid "Go to…" msgstr "Přejít na…" #. Authentication provider display name in account settings @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importování životopisu…" #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importování…" +msgid "Importing…" +msgstr "Import…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Jazyk" msgid "Languages" msgstr "Jazyky" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Naposledy analyzováno na {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Naposledy analyzováno {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litevština" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Načítání pracovního prostoru agenta..." +msgid "Loading agent workspace…" +msgstr "Načítání pracovního prostoru agenta…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,20 +2069,20 @@ msgstr "Načítání poskytovatelů umělé inteligence. Zkuste to prosím znovu #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Načítání poskytovatelů..." +msgid "Loading providers…" +msgstr "Načítání poskytovatelů…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." +msgid "Loading resumes…" msgstr "Načítání životopisů…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Načítání vláken..." +msgid "Loading threads…" +msgstr "Načítání vláken…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." +msgid "Loading…" msgstr "Načítání…" #: src/dialogs/resume/sections/education.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "Oprava čeká na vyřízení" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Oprava vrácena zpět" +msgid "Patch rolled back" +msgstr "Patch vrácen zpět" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "Patch vrácen zpět." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Prosím, podpořte projekt" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Počkejte prosím, než se vaše PDF vygeneruje…" +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Počkejte prosím, než se váš PDF vygeneruje…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polština" @@ -2724,6 +2726,14 @@ msgstr "Obnovování hesla…" msgid "Resources" msgstr "Zdroje" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Obnovit" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Obnovit životopis do stavu před touto opravou? Tato akce vrátí zpět tuto opravu a všechny opravy použité po ní." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Resumé" @@ -2752,10 +2762,6 @@ msgstr "Životopisy" msgid "Retry" msgstr "Zkusit znovu" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Vrátit zpět" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Projděte si životopis s ohledem na popis práce a před změnou nejasných částí se mě zeptejte na otázky." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Hledat ikonu" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" msgstr "Hledat…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Hledat..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Hledat…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Tajný kód zkopírován do schránky." @@ -3558,8 +3567,8 @@ msgstr "Zadejte „{CONFIRMATION_TEXT}“ pro potvrzení" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Zadejte příkaz nebo hledaný výraz…" +msgid "Type a command or search…" +msgstr "Zadejte příkaz nebo vyhledejte…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Nahrát obrázek" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Nahrávání fotografie…" +msgid "Uploading picture…" +msgstr "Nahrávání obrázku…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Ověřit pomocí záložního kódu" msgid "Verifying backup code..." msgstr "Ověřování záložního kódu…" -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Ověřování kódu…" +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Ověřovací kód…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Ověřování hesla…" @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Práce s OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Pracovní..." +msgid "Working…" +msgstr "Funguje…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/da-DK.po b/apps/web/locales/da-DK.po index 5435f3d26..def07da1b 100644 --- a/apps/web/locales/da-DK.po +++ b/apps/web/locales/da-DK.po @@ -8,7 +8,7 @@ msgstr "" "Language: da\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Danish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analyser CV'et" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analyserer..." +msgid "Analyzing…" +msgstr "Analyserer…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Annuller" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Kan ikke fortrydes; CV'et er ændret, siden denne redigering blev anvendt." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Kan ikke gendannes; CV'et er ændret, siden denne redigering blev anvendt." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Skift sprog" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Skift sprog til..." +msgid "Change language to…" +msgstr "Skift sprog til…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Skift tema til..." +msgid "Change theme to…" +msgstr "Skift tema til…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Kunne ikke nå AI-udbyderen. Prøv venligst igen." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Kunne ikke fortryde denne patch." +msgid "Could not restore this patch." +msgstr "Kunne ikke gendanne denne programrettelse." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Aktiverer adgangskodebeskyttelse..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Aktiverer to-faktor-godkendelse..." +msgid "Enabling two-factor authentication…" +msgstr "Aktivering af tofaktorgodkendelse…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Gå til dashboardet for CV'er" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Gå til..." +msgid "Go to…" +msgstr "Gå til…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importerer dit CV..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importerer..." +msgid "Importing…" +msgstr "Importerer…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Sprog" msgid "Languages" msgstr "Sprog" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Sidst analyseret på {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Sidst analyseret den {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litauisk" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Indlæser agentens arbejdsområde..." +msgid "Loading agent workspace…" +msgstr "Indlæser agentens arbejdsområde…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Indlæser AI-udbydere. Prøv igen om et øjeblik." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Indlæser udbydere..." +msgid "Loading providers…" +msgstr "Indlæser udbydere…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Indlæser CV'er..." +msgid "Loading resumes…" +msgstr "Indlæser CV'er…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Indlæser tråde..." +msgid "Loading threads…" +msgstr "Indlæser tråde…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Indlæser..." +msgid "Loading…" +msgstr "Indlæser…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Afventer programrettelse" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Programrettelse tilbageført" +msgid "Patch rolled back" +msgstr "Programrettelsen er rullet tilbage" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Programrettelsen er tilbageført." +msgid "Patch rolled back." +msgstr "Programrettelsen er rullet tilbage." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Støt venligst projektet" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Vent venligst, mens din PDF bliver genereret..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Vent venligst mens din PDF genereres…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polsk" @@ -2724,6 +2726,14 @@ msgstr "Nulstiller din adgangskode..." msgid "Resources" msgstr "Ressourcer" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Gendan" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Vil du gendanne cv'et til før denne patch? Dette vil rulle denne patch og eventuelle patches, der blev anvendt efter den, tilbage." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Genoptage" @@ -2752,10 +2762,6 @@ msgstr "CV'er" msgid "Retry" msgstr "Prøv igen" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Vende tilbage" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Gennemgå CV'et i forhold til en jobbeskrivelse, og stil mig spørgsmål, før du ændrer usikre afsnit." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Søg efter et ikon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Søg efter..." +msgid "Search for…" +msgstr "Søg efter…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Søg..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Søg…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Hemmelighed kopieret til udklipsholderen." @@ -3558,8 +3567,8 @@ msgstr "Skriv \"{CONFIRMATION_TEXT}\" for at bekræfte" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Skriv en kommando, eller søg..." +msgid "Type a command or search…" +msgstr "Skriv en kommando eller søg…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Upload billede" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Uploader billede..." +msgid "Uploading picture…" +msgstr "Uploader billede…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verificér med en backup-kode" msgid "Verifying backup code..." msgstr "Verificerer backup-kode..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verificerer kode..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Bekræfter kode…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verificerer adgangskode..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Arbejd med OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Arbejder..." +msgid "Working…" +msgstr "Arbejder…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/de-DE.po b/apps/web/locales/de-DE.po index 44f74195f..5af5cf286 100644 --- a/apps/web/locales/de-DE.po +++ b/apps/web/locales/de-DE.po @@ -8,7 +8,7 @@ msgstr "" "Language: de\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: German\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Lebenslauf analysieren" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analysieren..." +msgid "Analyzing…" +msgstr "Analyse…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Abbrechen" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Die Änderung kann nicht rückgängig gemacht werden; der Lebenslauf hat sich seit der letzten Bearbeitung geändert." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Wiederherstellung nicht möglich; der Lebenslauf hat sich seit der letzten Bearbeitung geändert." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Sprache ändern" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Sprache ändern zu..." +msgid "Change language to…" +msgstr "Sprache ändern zu…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Design ändern zu..." +msgid "Change theme to…" +msgstr "Ändern Sie das Design auf…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Der KI-Anbieter konnte nicht erreicht werden. Bitte versuchen Sie es erneut." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Dieser Patch konnte nicht rückgängig gemacht werden." +msgid "Could not restore this patch." +msgstr "Dieser Patch konnte nicht wiederhergestellt werden." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Passwortschutz wird aktiviert..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Die Zwei-Faktor-Authentifizierung wird aktiviert..." +msgid "Enabling two-factor authentication…" +msgstr "Zwei-Faktor-Authentifizierung aktivieren…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Zum Dashboard Lebensläufe gehen" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Gehe zu..." +msgid "Go to…" +msgstr "Gehe zu…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Dein Lebenslauf wird importiert ..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importieren ..." +msgid "Importing…" +msgstr "Importieren…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Sprache" msgid "Languages" msgstr "Sprachen" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Zuletzt analysiert auf {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Zuletzt analysiert am {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litauisch" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Agentenarbeitsbereich wird geladen..." +msgid "Loading agent workspace…" +msgstr "Agentenarbeitsbereich wird geladen…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "KI-Anbieter werden geladen. Bitte versuchen Sie es in einem Moment erneu #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Anbieter werden geladen..." +msgid "Loading providers…" +msgstr "Anbieter werden geladen…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Lebensläufe werden geladen..." +msgid "Loading resumes…" +msgstr "Ladevorgänge werden fortgesetzt…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Threads werden geladen..." +msgid "Loading threads…" +msgstr "Threads werden geladen…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Wird geladen..." +msgid "Loading…" +msgstr "Wird geladen…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Patch ausstehend" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "Patch rückgängig gemacht" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Patch wurde rückgängig gemacht." +msgid "Patch rolled back." +msgstr "Der Patch wurde zurückgezogen." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Bitte unterstützen Sie das Projekt." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Bitte warte, während dein PDF erzeugt wird ..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Bitte warten Sie, während Ihre PDF-Datei generiert wird…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polnisch" @@ -2724,6 +2726,14 @@ msgstr "Ihr Passwort wird zurückgesetzt..." msgid "Resources" msgstr "Ressourcen" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Wiederherstellen" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Soll der Spielstand auf den Stand vor diesem Patch wiederhergestellt werden? Dadurch werden dieser Patch und alle nachfolgend angewendeten Patches rückgängig gemacht." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Wieder aufnehmen" @@ -2752,10 +2762,6 @@ msgstr "Lebensläufe" msgid "Retry" msgstr "Wiederholen" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Zurücksetzen" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Prüfen Sie Ihren Lebenslauf anhand der Stellenbeschreibung und stellen Sie mir Fragen, bevor Sie unklare Abschnitte ändern." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Nach einem Symbol suchen" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Suchen nach..." +msgid "Search for…" +msgstr "Suche nach…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Suchen..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Suche…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Geheimnis wurde in die Zwischenablage kopiert." @@ -3558,8 +3567,8 @@ msgstr "Geben Sie \"{CONFIRMATION_TEXT}\" ein, um zu bestätigen" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Geben Sie einen Befehl ein oder suchen Sie..." +msgid "Type a command or search…" +msgstr "Geben Sie einen Befehl ein oder suchen Sie…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Bild hochladen" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Bild wird hochgeladen..." +msgid "Uploading picture…" +msgstr "Bild wird hochgeladen…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Mit Backup-Code verifizieren" msgid "Verifying backup code..." msgstr "Backup-Code wird verifiziert..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Code wird verifiziert..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Code wird verifiziert…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Passwort wird verifiziert..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI-Arbeit" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Arbeiten..." +msgid "Working…" +msgstr "Arbeitet…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/el-GR.po b/apps/web/locales/el-GR.po index b8ae19cef..18012077f 100644 --- a/apps/web/locales/el-GR.po +++ b/apps/web/locales/el-GR.po @@ -8,7 +8,7 @@ msgstr "" "Language: el\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Greek\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Αναλύστε το βιογραφικό σας" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Αναλύοντας..." +msgid "Analyzing…" +msgstr "Ανάλυση…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,7 +584,7 @@ msgid "Cancel" msgstr "Ακύρωση" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." +msgid "Cannot restore; the resume has changed since this edit was applied." msgstr "Δεν είναι δυνατή η επαναφορά. Το βιογραφικό έχει αλλάξει από τότε που εφαρμόστηκε αυτή η επεξεργασία." #: src/libs/locale.ts @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Αλλαγή γλώσσας" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Αλλαγή γλώσσας σε..." +msgid "Change language to…" +msgstr "Αλλαγή γλώσσας σε…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Αλλαγή θέματος σε..." +msgid "Change theme to…" +msgstr "Αλλαγή θέματος σε…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,7 +793,7 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Δεν ήταν δυνατή η επικοινωνία με τον πάροχο AI. Προσπαθήστε ξανά." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." +msgid "Could not restore this patch." msgstr "Δεν ήταν δυνατή η επαναφορά αυτής της ενημέρωσης κώδικα." #: src/features/settings/integrations/components/ai-section.tsx @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Ενεργοποίηση προστασίας με κωδικό πρόσβασης..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Ενεργοποίηση ελέγχου ταυτότητας δύο παραγόντων..." +msgid "Enabling two-factor authentication…" +msgstr "Ενεργοποίηση ελέγχου ταυτότητας δύο παραγόντων…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Μεταβείτε στο ταμπλό βιογραφικών σημειωμάτων" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Μετάβαση σε..." +msgid "Go to…" +msgstr "Μεταβείτε στο…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Εισαγωγή του βιογραφικού σας σημειώματος..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Γίνεται εισαγωγή..." +msgid "Importing…" +msgstr "Εισαγωγή…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Γλώσσα" msgid "Languages" msgstr "Γλώσσες" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Τελευταία ανάλυση στο {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Τελευταία ανάλυση στις {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Λιθουανικά" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Φόρτωση χώρου εργασίας εκπροσώπου..." +msgid "Loading agent workspace…" +msgstr "Φόρτωση χώρου εργασίας παράγοντα…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Φόρτωση παρόχων τεχνητής νοημοσύνης. Δ #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Φόρτωση παρόχων..." +msgid "Loading providers…" +msgstr "Φόρτωση παρόχων…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Φόρτωση βιογραφικών σημειωμάτων..." +msgid "Loading resumes…" +msgstr "Φόρτωση βιογραφικών…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Φόρτωση νημάτων..." +msgid "Loading threads…" +msgstr "Φόρτωση νημάτων…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Φόρτωση..." +msgid "Loading…" +msgstr "Φόρτωση…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Εκκρεμεί ενημέρωση κώδικα" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Η ενημέρωση κώδικα επαναφέρθηκε" +msgid "Patch rolled back" +msgstr "Η ενημέρωση κώδικα ακυρώθηκε" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Η ενημέρωση κώδικα επανήλθε." +msgid "Patch rolled back." +msgstr "Η ενημέρωση κώδικα επαναφέρθηκε." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Παρακαλώ υποστηρίξτε το έργο" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Περιμένετε όσο δημιουργείται το PDF σας..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Παρακαλώ περιμένετε όσο δημιουργείται το PDF σας…" + #: src/libs/locale.ts msgid "Polish" msgstr "Πολωνικά" @@ -2724,6 +2726,14 @@ msgstr "Επαναφορά κωδικού πρόσβασης..." msgid "Resources" msgstr "Πόροι" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Επαναφέρω" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Επαναφορά του βιογραφικού σημειώματος πριν από αυτήν την ενημέρωση κώδικα; Αυτό θα ακυρώσει αυτήν την ενημέρωση κώδικα και τυχόν ενημερώσεις κώδικα που εφαρμόστηκαν μετά από αυτήν." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Περίληψη" @@ -2752,10 +2762,6 @@ msgstr "Βιογραφικά σημειώματα" msgid "Retry" msgstr "Δοκιμάζω πάλι" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Επαναστρέφω" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Ελέγξτε το βιογραφικό σημείωμα με βάση την περιγραφή της θέσης εργασίας και κάντε μου ερωτήσεις πριν αλλάξετε αβέβαια σημεία." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Αναζήτηση για εικονίδιο" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Αναζήτηση για..." +msgid "Search for…" +msgstr "Αναζήτηση για…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Αναζήτηση..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Αναζήτηση…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Το μυστικό αντιγράφηκε στο πρόχειρο." @@ -3558,8 +3567,8 @@ msgstr "Πληκτρολογήστε \"{CONFIRMATION_TEXT}\" για επιβεβ #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Πληκτρολογήστε μια εντολή ή αναζητήστε..." +msgid "Type a command or search…" +msgstr "Πληκτρολογήστε μια εντολή ή αναζητήστε…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Ανέβασμα εικόνας" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Μεταφόρτωση φωτογραφίας..." +msgid "Uploading picture…" +msgstr "Μεταφόρτωση εικόνας…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Επαλήθευση με εφεδρικό κωδικό" msgid "Verifying backup code..." msgstr "Γίνεται επαλήθευση εφεδρικού κωδικού..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Γίνεται επαλήθευση κωδικού..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Επαλήθευση κωδικού…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Γίνεται επαλήθευση κωδικού πρόσβασης..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Εργασία OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Εργαζόμενος..." +msgid "Working…" +msgstr "Εργασία…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/en-GB.po b/apps/web/locales/en-GB.po index b4602e63f..62f64416c 100644 --- a/apps/web/locales/en-GB.po +++ b/apps/web/locales/en-GB.po @@ -8,7 +8,7 @@ msgstr "" "Language: en_GB\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: English, United Kingdom\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analyze Resume" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analyzing..." +msgid "Analyzing…" +msgstr "Analyzing…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Cancel" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Cannot revert; the resume has changed since this edit was applied." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Cannot restore; the resume has changed since this edit was applied." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Change language" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Change language to..." +msgid "Change language to…" +msgstr "Change language to…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Change theme to..." +msgid "Change theme to…" +msgstr "Change theme to…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Could not reach the AI provider. Please try again." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Could not revert this patch." +msgid "Could not restore this patch." +msgstr "Could not restore this patch." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Enabling password protection..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Enabling two-factor authentication..." +msgid "Enabling two-factor authentication…" +msgstr "Enabling two-factor authentication…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Go to resumes dashboard" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Go to..." +msgid "Go to…" +msgstr "Go to…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importing your resume..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importing..." +msgid "Importing…" +msgstr "Importing…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Language" msgid "Languages" msgstr "Languages" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Last analyzed on {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Last analyzed on {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lithuanian" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Loading agent workspace..." +msgid "Loading agent workspace…" +msgstr "Loading agent workspace…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Loading AI providers. Please try again in a moment." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Loading providers..." +msgid "Loading providers…" +msgstr "Loading providers…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Loading resumes..." +msgid "Loading resumes…" +msgstr "Loading resumes…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Loading threads..." +msgid "Loading threads…" +msgstr "Loading threads…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Loading..." +msgid "Loading…" +msgstr "Loading…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Patch pending" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patch reverted" +msgid "Patch rolled back" +msgstr "Patch rolled back" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Patch reverted." +msgid "Patch rolled back." +msgstr "Patch rolled back." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Please support the project" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Please wait while your PDF is being generated..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Please wait while your PDF is being generated…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polish" @@ -2724,6 +2726,14 @@ msgstr "Resetting your password..." msgid "Resources" msgstr "Resources" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restore" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Resume" @@ -2752,10 +2762,6 @@ msgstr "Resumes" msgid "Retry" msgstr "Retry" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Revert" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Review the resume against a job description and ask me questions before changing uncertain sections." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Search for an icon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Search for..." +msgid "Search for…" +msgstr "Search for…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Search..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Search…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Type \"{CONFIRMATION_TEXT}\" to confirm" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Type a command or search..." +msgid "Type a command or search…" +msgstr "Type a command or search…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Upload picture" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Uploading picture..." +msgid "Uploading picture…" +msgstr "Uploading picture…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verify with a Backup Code" msgid "Verifying backup code..." msgstr "Verifying backup code..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verifying code..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verifying code…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verifying password..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Work OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Working..." +msgid "Working…" +msgstr "Working…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/en-US.po b/apps/web/locales/en-US.po index dbb5068b9..44356755c 100644 --- a/apps/web/locales/en-US.po +++ b/apps/web/locales/en-US.po @@ -315,8 +315,8 @@ msgid "Analyze Resume" msgstr "Analyze Resume" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analyzing..." +msgid "Analyzing…" +msgstr "Analyzing…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -579,8 +579,8 @@ msgid "Cancel" msgstr "Cancel" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Cannot revert; the resume has changed since this edit was applied." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Cannot restore; the resume has changed since this edit was applied." #: src/libs/locale.ts msgid "Catalan" @@ -605,12 +605,12 @@ msgid "Change language" msgstr "Change language" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Change language to..." +msgid "Change language to…" +msgstr "Change language to…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Change theme to..." +msgid "Change theme to…" +msgstr "Change theme to…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -788,8 +788,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Could not reach the AI provider. Please try again." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Could not revert this patch." +msgid "Could not restore this patch." +msgstr "Could not restore this patch." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1243,8 +1243,8 @@ msgid "Enabling password protection..." msgstr "Enabling password protection..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Enabling two-factor authentication..." +msgid "Enabling two-factor authentication…" +msgstr "Enabling two-factor authentication…" #: src/libs/locale.ts msgid "English" @@ -1628,8 +1628,8 @@ msgid "Go to resumes dashboard" msgstr "Go to resumes dashboard" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Go to..." +msgid "Go to…" +msgstr "Go to…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1810,8 +1810,8 @@ msgid "Importing your resume..." msgstr "Importing your resume..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importing..." +msgid "Importing…" +msgstr "Importing…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1958,10 +1958,9 @@ msgstr "Language" msgid "Languages" msgstr "Languages" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Last analyzed on {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Last analyzed on {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2056,8 +2055,8 @@ msgid "Lithuanian" msgstr "Lithuanian" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Loading agent workspace..." +msgid "Loading agent workspace…" +msgstr "Loading agent workspace…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2065,21 +2064,21 @@ msgstr "Loading AI providers. Please try again in a moment." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Loading providers..." +msgid "Loading providers…" +msgstr "Loading providers…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Loading resumes..." +msgid "Loading resumes…" +msgstr "Loading resumes…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Loading threads..." +msgid "Loading threads…" +msgstr "Loading threads…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Loading..." +msgid "Loading…" +msgstr "Loading…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2426,12 +2425,12 @@ msgid "Patch pending" msgstr "Patch pending" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patch reverted" +msgid "Patch rolled back" +msgstr "Patch rolled back" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Patch reverted." +msgid "Patch rolled back." +msgstr "Patch rolled back." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2479,12 +2478,15 @@ msgid "Please support the project" msgstr "Please support the project" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Please wait while your PDF is being generated..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Please wait while your PDF is being generated…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polish" @@ -2719,6 +2721,14 @@ msgstr "Resetting your password..." msgid "Resources" msgstr "Resources" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restore" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Resume" @@ -2747,10 +2757,6 @@ msgstr "Resumes" msgid "Retry" msgstr "Retry" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Revert" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Review the resume against a job description and ask me questions before changing uncertain sections." @@ -2840,15 +2846,18 @@ msgid "Search for an icon" msgstr "Search for an icon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Search for..." +msgid "Search for…" +msgstr "Search for…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Search..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Search…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Secret copied to clipboard." @@ -3553,8 +3562,8 @@ msgstr "Type \"{CONFIRMATION_TEXT}\" to confirm" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Type a command or search..." +msgid "Type a command or search…" +msgstr "Type a command or search…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3699,8 +3708,8 @@ msgid "Upload picture" msgstr "Upload picture" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Uploading picture..." +msgid "Uploading picture…" +msgstr "Uploading picture…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3758,11 +3767,14 @@ msgstr "Verify with a Backup Code" msgid "Verifying backup code..." msgstr "Verifying backup code..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verifying code..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verifying code…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verifying password..." @@ -3825,8 +3837,8 @@ msgid "Work OpenAI" msgstr "Work OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Working..." +msgid "Working…" +msgstr "Working…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/es-ES.po b/apps/web/locales/es-ES.po index 222c1786c..96046d8f3 100644 --- a/apps/web/locales/es-ES.po +++ b/apps/web/locales/es-ES.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analizar el currículum" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analizar..." +msgid "Analyzing…" +msgstr "Analizando…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Cancelar" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "No se puede revertir; el currículum ha cambiado desde que se aplicó esta edición." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "No se puede restaurar; el currículum ha cambiado desde que se aplicó esta edición." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Cambiar idioma" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Cambiar idioma a..." +msgid "Change language to…" +msgstr "Cambiar idioma a…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Cambiar tema a..." +msgid "Change theme to…" +msgstr "Cambiar tema a…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "No se ha podido contactar con el proveedor de AI. Por favor, inténtelo de nuevo." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "No se pudo revertir este parche." +msgid "Could not restore this patch." +msgstr "No se pudo restaurar este parche." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Habilitando la protección con contraseña..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Habilitando la autenticación de doble factor..." +msgid "Enabling two-factor authentication…" +msgstr "Habilitar la autenticación de dos factores…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Ir al panel de currículos" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Ir a..." +msgid "Go to…" +msgstr "Ir a…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importando tu currículum..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importando..." +msgid "Importing…" +msgstr "Importando…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Idioma" msgid "Languages" msgstr "Idiomas" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Último análisis en {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Analizado por última vez el {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituano" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Cargando el espacio de trabajo del agente..." +msgid "Loading agent workspace…" +msgstr "Cargando el espacio de trabajo del agente…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Cargando proveedores de IA. Inténtelo de nuevo en un momento." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Cargando proveedores..." +msgid "Loading providers…" +msgstr "Cargando proveedores…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Cargando currículums..." +msgid "Loading resumes…" +msgstr "Cargando reanudaciones…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Cargando hilos..." +msgid "Loading threads…" +msgstr "Cargando hilos…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Cargando..." +msgid "Loading…" +msgstr "Cargando…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Parche pendiente" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Parche revertido" +msgid "Patch rolled back" +msgstr "El parche fue revertido." #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Parche revertido." +msgid "Patch rolled back." +msgstr "El parche fue revertido." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Por favor, apoyen el proyecto." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Espera mientras se genera tu PDF..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Por favor, espere mientras se genera su PDF…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polaco" @@ -2724,6 +2726,14 @@ msgstr "Restableciendo tu contraseña..." msgid "Resources" msgstr "Recursos" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restaurar" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "¿Restaurar el estado anterior a este parche? Esto revertirá este parche y cualquier parche aplicado posteriormente." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Reanudar" @@ -2752,10 +2762,6 @@ msgstr "Currículums" msgid "Retry" msgstr "Rever" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Revertir" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Revisa el currículum comparándolo con la descripción del puesto y hazme preguntas antes de modificar las secciones que te generen dudas." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Buscar un icono" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Buscar…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Buscar..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Buscar..." +msgid "Search…" +msgstr "Buscar…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Escribe \"{CONFIRMATION_TEXT}\" para confirmar" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Escribe un comando o busca..." +msgid "Type a command or search…" +msgstr "Escribe un comando o busca…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Subir foto" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Subiendo imagen..." +msgid "Uploading picture…" +msgstr "Subiendo imagen…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verificar con un código de respaldo" msgid "Verifying backup code..." msgstr "Verificando código de respaldo..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verificando código..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Código de verificación…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verificando contraseña..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Trabajo con OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Laboral..." +msgid "Working…" +msgstr "Trabajando…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/fa-IR.po b/apps/web/locales/fa-IR.po index 511851594..09c1f1657 100644 --- a/apps/web/locales/fa-IR.po +++ b/apps/web/locales/fa-IR.po @@ -8,7 +8,7 @@ msgstr "" "Language: fa\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Persian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "تحلیل رزومه" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "در حال تجزیه و تحلیل..." +msgid "Analyzing…" +msgstr "در حال تجزیه و تحلیل…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "انصراف" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "قابل بازگشت نیست؛ رزومه از زمان اعمال این ویرایش تغییر کرده است." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "بازیابی امکان‌پذیر نیست؛ رزومه از زمان اعمال این ویرایش تغییر کرده است." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "تغییر زبان" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "تغییر زبان به..." +msgid "Change language to…" +msgstr "زبان را به… تغییر دهید" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "تغییر تم به..." +msgid "Change theme to…" +msgstr "تغییر تم به…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "امکان دسترسی به ارائه‌دهنده هوش مصنوعی وجود ندارد. لطفاً دوباره تلاش کنید." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "نتوانستم این پچ را به حالت قبل برگردانم." +msgid "Could not restore this patch." +msgstr "نتوانستم این پچ را بازیابی کنم." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "در حال فعال‌کردن حفاظت با گذرواژه..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "در حال فعال‌کردن احراز هویت دو مرحله‌ای..." +msgid "Enabling two-factor authentication…" +msgstr "فعال کردن احراز هویت دو مرحله‌ای…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "به داشبورد رزومه‌ها بروید" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "رفتن به..." +msgid "Go to…" +msgstr "به… بروید" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "در حال وارد کردن رزومه شما..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "در حال وارد کردن..." +msgid "Importing…" +msgstr "در حال وارد کردن…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "زبان" msgid "Languages" msgstr "زبان‌ها" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "آخرین تحلیل در {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "آخرین تحلیل در {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "لیتوانیایی" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "در حال بارگیری فضای کاری عامل..." +msgid "Loading agent workspace…" +msgstr "در حال بارگیری فضای کاری عامل…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "در حال بارگذاری ارائه دهندگان هوش مصنوع #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "در حال بارگذاری ارائه دهندگان..." +msgid "Loading providers…" +msgstr "در حال بارگیری ارائه دهندگان…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "در حال بارگذاری رزومه‌ها..." +msgid "Loading resumes…" +msgstr "در حال بارگذاری رزومه‌ها…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "در حال بارگذاری تاپیک‌ها..." +msgid "Loading threads…" +msgstr "در حال بارگذاری موضوعات…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "در حال بارگذاری..." +msgid "Loading…" +msgstr "در حال بارگذاری…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "وصله در انتظار" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "پچ برگردانده شد" +msgid "Patch rolled back" +msgstr "پچ به حالت قبل برگشت" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "پچ برگردانده شد." +msgid "Patch rolled back." +msgstr "پچ به عقب برگشت." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "لطفا از پروژه حمایت کنید" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "لطفاً منتظر بمانید تا PDF شما تولید شود..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "لطفا منتظر بمانید تا PDF شما تولید شود…" + #: src/libs/locale.ts msgid "Polish" msgstr "لهستانی" @@ -2724,6 +2726,14 @@ msgstr "در حال تنظیم مجدد گذرواژه شما..." msgid "Resources" msgstr "منابع" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "بازیابی" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "بازگرداندن از سرگیری به قبل از این وصله؟ این کار این وصله و هر وصله‌ای که بعد از آن اعمال شده را به حالت قبل برمی‌گرداند." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "رزومه" @@ -2752,10 +2762,6 @@ msgstr "رزومه‌ها" msgid "Retry" msgstr "دوباره امتحان کنید" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "برگرداندن" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "رزومه را با شرح شغل مقایسه کنید و قبل از تغییر بخش‌های نامشخص، از من سوال بپرسید." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "جستجو برای یک آیکون" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "جستجو برای..." +msgid "Search for…" +msgstr "جستجو برای…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "جستجو..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "جستجو…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "کلید مخفی در کلیپ‌بورد کپی شد." @@ -3558,8 +3567,8 @@ msgstr "برای تأیید، \"{CONFIRMATION_TEXT}\" را تایپ کنید" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "یک دستور تایپ کنید یا جستجو کنید..." +msgid "Type a command or search…" +msgstr "یک دستور تایپ کنید یا… را جستجو کنید" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "بارگذاری تصویر" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "در حال آپلود تصویر..." +msgid "Uploading picture…" +msgstr "در حال آپلود تصویر…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "تأیید با کد پشتیبان" msgid "Verifying backup code..." msgstr "در حال تأیید کد پشتیبان..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "در حال تأیید کد..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "کد تایید…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "در حال تأیید گذرواژه..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "کار OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "کار کردن..." +msgid "Working…" +msgstr "کار می‌کند…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/fi-FI.po b/apps/web/locales/fi-FI.po index 3e988e8ee..bd82704a0 100644 --- a/apps/web/locales/fi-FI.po +++ b/apps/web/locales/fi-FI.po @@ -8,7 +8,7 @@ msgstr "" "Language: fi\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Finnish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analysoi ansioluettelo" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analysoimalla..." +msgid "Analyzing…" +msgstr "Analysoidaan…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,7 +584,7 @@ msgid "Cancel" msgstr "Peruuta" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." +msgid "Cannot restore; the resume has changed since this edit was applied." msgstr "Ei voida palauttaa; ansioluettelo on muuttunut tämän muokkauksen jälkeen." #: src/libs/locale.ts @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Vaihda kieli" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Vaihda kieli..." +msgid "Change language to…" +msgstr "Vaihda kieli muotoon…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Vaihda teema..." +msgid "Change theme to…" +msgstr "Vaihda teema muotoon…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,7 +793,7 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Tekoälypalvelun tarjoajaa ei tavoitettu. Yritä uudelleen." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." +msgid "Could not restore this patch." msgstr "Tätä korjaustiedostoa ei voitu palauttaa." #: src/features/settings/integrations/components/ai-section.tsx @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Otetaan salasanasuojaus käyttöön..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Otetaan kaksivaiheista todennusta käyttöön..." +msgid "Enabling two-factor authentication…" +msgstr "Kaksivaiheisen todennuksen käyttöönotto…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Siirry ansioluetteloiden kojelautaan" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Siirry..." +msgid "Go to…" +msgstr "Siirry kohtaan…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Tuodaan ansioluetteloasi..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Tuodaan..." +msgid "Importing…" +msgstr "Tuodaan…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Kieli" msgid "Languages" msgstr "Kielet" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Viimeksi analysoitu osoitteessa {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Viimeksi analysoitu {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "liettua" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Ladataan agentin työtilaa..." +msgid "Loading agent workspace…" +msgstr "Ladataan agentin työtilaa…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Ladataan tekoälypalveluntarjoajia. Yritä uudelleen hetken kuluttua." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Ladataan palveluntarjoajia..." +msgid "Loading providers…" +msgstr "Ladataan palveluntarjoajia…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Ladataan ansioluetteloita..." +msgid "Loading resumes…" +msgstr "Ladataan ansioluetteloita…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Ladataan ketjuja..." +msgid "Loading threads…" +msgstr "Ladataan ketjuja…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Ladataan..." +msgid "Loading…" +msgstr "Ladataan…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Korjaus odottaa" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Korjaus palautettu" +msgid "Patch rolled back" +msgstr "Korjaustiedosto palautettu" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Korjaus peruttu." +msgid "Patch rolled back." +msgstr "Patch rullasi takaisin." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Tue projektia" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Odota, kunnes PDF-tiedosto on luotu..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Odota hetki, PDF-tiedostoasi luodaan…" + #: src/libs/locale.ts msgid "Polish" msgstr "puola" @@ -2724,6 +2726,14 @@ msgstr "Palautetaan salasanaasi..." msgid "Resources" msgstr "Resurssit" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Palauttaa" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Palautetaanko ansioluettelo tätä korjausta edeltävään tilaan? Tämä palauttaa tämän korjauksen ja kaikki sen jälkeen asennetut korjaukset vanhaan tilaan." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Jatkaa" @@ -2752,10 +2762,6 @@ msgstr "Ansioluettelot" msgid "Retry" msgstr "Yritä uudelleen" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Palauta" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Tarkista ansioluettelo työpaikkailmoitusta vasten ja kysy minulta kysymyksiä ennen kuin muutat epävarmoja kohtia." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Etsi ikonia" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Hae…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Etsi..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Etsi..." +msgid "Search…" +msgstr "Hae…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Kirjoita \"{CONFIRMATION_TEXT}\" vahvistaaksesi" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Kirjoita komento tai hae..." +msgid "Type a command or search…" +msgstr "Kirjoita komento tai hae…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Lataa kuva" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Ladataan kuvaa..." +msgid "Uploading picture…" +msgstr "Kuvan lataaminen…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Vahvista varmuuskoodilla" msgid "Verifying backup code..." msgstr "Vahvistetaan varmuuskoodia..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Vahvistetaan koodia..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Vahvistuskoodi…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Vahvistetaan salasanaa..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Työskentele OpenAI:lla" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Työskentely..." +msgid "Working…" +msgstr "Työskentely…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/fr-FR.po b/apps/web/locales/fr-FR.po index 731205270..fa6015dbd 100644 --- a/apps/web/locales/fr-FR.po +++ b/apps/web/locales/fr-FR.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analyser le CV" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analyser..." +msgid "Analyzing…" +msgstr "Analyse de…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Annuler" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Impossible d'annuler la modification ; le CV a été modifié depuis." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Impossible de restaurer le CV ; il a été modifié depuis cette modification." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Changer la langue" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Changer la langue en..." +msgid "Change language to…" +msgstr "Changer la langue en…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Changez de thème pour..." +msgid "Change theme to…" +msgstr "Changer le thème en…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Impossible de joindre le fournisseur d'IA. Veuillez réessayer." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Impossible d'annuler ce correctif." +msgid "Could not restore this patch." +msgstr "Impossible de restaurer ce correctif." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Activation de la protection par mot de passe..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Activation de l'authentification à deux facteurs..." +msgid "Enabling two-factor authentication…" +msgstr "Activation de l'authentification à deux facteurs…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Accéder au tableau de bord des CV" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Aller vers..." +msgid "Go to…" +msgstr "Allez à…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importation de votre CV en cours..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importation en cours..." +msgid "Importing…" +msgstr "Importer…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Langue" msgid "Languages" msgstr "Langues" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Dernière analyse sur {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Dernière analyse le {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lithuanien" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Chargement de l'espace de travail de l'agent..." +msgid "Loading agent workspace…" +msgstr "Chargement de l'espace de travail de l'agent…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Chargement des fournisseurs d'IA. Veuillez réessayer dans un instant." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Chargement des fournisseurs..." +msgid "Loading providers…" +msgstr "Chargement des fournisseurs…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Chargement des CV..." +msgid "Loading resumes…" +msgstr "Le chargement reprend…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Chargement des threads..." +msgid "Loading threads…" +msgstr "Chargement des threads…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Chargement..." +msgid "Loading…" +msgstr "Chargement…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Correctif en attente" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Correctif rétabli" +msgid "Patch rolled back" +msgstr "Patch annulé" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Correctif rétabli." +msgid "Patch rolled back." +msgstr "Patch annulé." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Veuillez soutenir le projet" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Veuillez patienter pendant que votre PDF est en cours de génération..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Veuillez patienter pendant la génération de votre PDF…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polonais" @@ -2724,6 +2726,14 @@ msgstr "Réinitialisation de votre mot de passe..." msgid "Resources" msgstr "Ressources" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restaurer" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Restaurer la reprise à un état antérieur à ce correctif ? Cette action annulera ce correctif ainsi que tous les correctifs appliqués ultérieurement." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "CV" @@ -2752,10 +2762,6 @@ msgstr "CVs" msgid "Retry" msgstr "Réessayer" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Revenir" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Veuillez vérifier votre CV en le comparant à la description du poste et posez-moi des questions avant de modifier les sections qui vous semblent incertaines." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Rechercher une icône" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Rechercher…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Rechercher..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Rechercher..." +msgid "Search…" +msgstr "Rechercher…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Tapez \"{CONFIRMATION_TEXT}\" pour confirmer" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Tapez une commande ou recherchez..." +msgid "Type a command or search…" +msgstr "Saisissez une commande ou effectuez une recherche…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Télécharger l'image" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Téléchargement de la photo..." +msgid "Uploading picture…" +msgstr "Téléchargement de l'image…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Vérifier avec un code de secours" msgid "Verifying backup code..." msgstr "Vérification du code de secours..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Vérification du code..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Code de vérification…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Vérification du mot de passe..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Travaillez avec OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Fonctionnement..." +msgid "Working…" +msgstr "Travail…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/he-IL.po b/apps/web/locales/he-IL.po index f839fa3aa..8fd26107d 100644 --- a/apps/web/locales/he-IL.po +++ b/apps/web/locales/he-IL.po @@ -8,7 +8,7 @@ msgstr "" "Language: he\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "ניתוח קורות חיים" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "מנתח..." +msgid "Analyzing…" +msgstr "ניתוח…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "ביטול" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "לא ניתן לבטל את הפעולה; קורות החיים השתנו מאז שהעריכה הזו הוחלה." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "לא ניתן לשחזר; קורות החיים השתנו מאז שהעריכה הזו הוחלה." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "שינוי שפה" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "שינוי השפה אל..." +msgid "Change language to…" +msgstr "שנה שפה ל-…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "שינוי ערכת עיצוב אל..." +msgid "Change theme to…" +msgstr "שנה את התבנית ל-…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "לא ניתן היה ליצור קשר עם ספק ה-AI. אנא נסה שוב." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "לא ניתן היה לבטל את התיקון הזה." +msgid "Could not restore this patch." +msgstr "לא ניתן היה לשחזר את התיקון הזה." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "הפעלת ההגנה באמצעות סיסמה..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "הגנה עם אימות דו־שלבי..." +msgid "Enabling two-factor authentication…" +msgstr "הפעלת אימות דו-שלבי…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "עבור למרכז השליטה בקורות החיים" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "מעבר אל..." +msgid "Go to…" +msgstr "עבור אל…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "מייבא את קורות החיים שלך..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "ייבוא..." +msgid "Importing…" +msgstr "ייבוא…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "שפה" msgid "Languages" msgstr "שפות" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "נבדק לאחרונה ב- {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "ניתוח אחרון בתאריך {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "ליטאית" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "טוען את סביבת העבודה של הסוכן..." +msgid "Loading agent workspace…" +msgstr "טוען את סביבת העבודה של הסוכן…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "טוען ספקי בינה מלאכותית. אנא נסה שוב בעו #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "טוען ספקים..." +msgid "Loading providers…" +msgstr "טוען ספקים…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "טוען קורות חיים..." +msgid "Loading resumes…" +msgstr "טוען קורות חיים…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "טוען שרשורים..." +msgid "Loading threads…" +msgstr "טוען שרשורים…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "טוען..." +msgid "Loading…" +msgstr "טוען…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "תיקון ממתין" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "התיקון בוטל" +msgid "Patch rolled back" +msgstr "התיקון מוחזר" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "התיקון בוטל." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "אנא תמכו בפרויקט" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "נא להמתין בזמן שקובץ ה־PDF שלך נוצר..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "אנא המתן בזמן יצירת קובץ ה-PDF שלך…" + #: src/libs/locale.ts msgid "Polish" msgstr "פולנית" @@ -2724,6 +2726,14 @@ msgstr "איפוס הסיסמה שלך..." msgid "Resources" msgstr "משאבים" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "לְשַׁחְזֵר" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "לשחזר את קורות החיים למצב שלפני תיקון זה? פעולה זו תחזיר את התיקון הזה וכל תיקון שהוחל לאחריו." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "קוֹרוֹת חַיִים" @@ -2752,10 +2762,6 @@ msgstr "מסמכי קורות חיים" msgid "Retry" msgstr "נסה שוב" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "לַחֲזוֹר" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "בדוק את קורות החיים מול תיאור התפקיד ושאל אותי שאלות לפני שינוי חלקים לא ודאיים." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "חיפוש סמל" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "חפש…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "חיפוש..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "חיפוש..." +msgid "Search…" +msgstr "חיפוש…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "הקלד \"{CONFIRMATION_TEXT}\" כדי לאשר" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "הקלד פקודה או חפש..." +msgid "Type a command or search…" +msgstr "הקלד פקודה או חפש…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "העלה תמונה" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "מעלה תמונה..." +msgid "Uploading picture…" +msgstr "מעלה תמונה…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "אימות עם קוד גיבוי" msgid "Verifying backup code..." msgstr "מאמת קוד גיבוי..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "מאמת את הקוד..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "מאמת קוד…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "מאמת סיסמה..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "עבודה ב-OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "עובד..." +msgid "Working…" +msgstr "עובד…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/hi-IN.po b/apps/web/locales/hi-IN.po index b58a110f2..25d58b06c 100644 --- a/apps/web/locales/hi-IN.po +++ b/apps/web/locales/hi-IN.po @@ -8,7 +8,7 @@ msgstr "" "Language: hi\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Hindi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "रिज़्यूमे का विश्लेषण करें" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "विश्लेषण..." +msgid "Analyzing…" +msgstr "… का विश्लेषण करना" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "रद्द करें" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "इसे वापस नहीं किया जा सकता; इस बदलाव के बाद से रिज्यूमे में परिवर्तन हो चुका है।" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "इसे पुनर्स्थापित नहीं किया जा सकता; इस संपादन के बाद से रिज्यूमे में बदलाव हो गया है।" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "भाषा बदलें" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "भाषा बदलें..." +msgid "Change language to…" +msgstr "भाषा बदलें…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "थीम बदलें..." +msgid "Change theme to…" +msgstr "थीम को… में बदलें" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "एआई प्रदाता तक नहीं पहुँच पाया। कृपया फिर से प्रयास करें।" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "इस पैच को वापस नहीं लिया जा सका।" +msgid "Could not restore this patch." +msgstr "इस पैच को पुनर्स्थापित नहीं किया जा सका।" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "पासवर्ड सुरक्षा सक्षम की जा रही है..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "दो‑कारक प्रमाणीकरण सक्षम किया जा रहा है..." +msgid "Enabling two-factor authentication…" +msgstr "दो-कारक प्रमाणीकरण सक्षम करना…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "रिज़्यूमे डैशबोर्ड पर जाएँ" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "जाएँ..." +msgid "Go to…" +msgstr "… पर जाएं" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "आपका रेज़्यूमे आयात किया जा रहा है..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "आयात..." +msgid "Importing…" +msgstr "आयात करना…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "भाषा" msgid "Languages" msgstr "भाषाएँ" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "अंतिम विश्लेषण किया गया {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "अंतिम विश्लेषण तिथि {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "लिथुआनियाई" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "एजेंट वर्कस्पेस लोड हो रहा है..." +msgid "Loading agent workspace…" +msgstr "एजेंट वर्कस्पेस लोड हो रहा है…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "एआई प्रदाताओं को लोड किया ज #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "प्रदाता लोड हो रहे हैं..." +msgid "Loading providers…" +msgstr "प्रदाता लोड हो रहे हैं…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "रेज़्यूमे लोड हो रहे हैं..." +msgid "Loading resumes…" +msgstr "लोडिंग फिर से शुरू होती है…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "थ्रेड लोड हो रहे हैं..." +msgid "Loading threads…" +msgstr "थ्रेड लोड हो रहे हैं…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "लोड हो रहा है..." +msgid "Loading…" +msgstr "लोडिंग…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "पैच लंबित है" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "पैच वापस ले लिया गया" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "पैच वापस ले लिया गया।" +msgid "Patch rolled back." +msgstr "पैच को वापस ले लिया गया।" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "कृपया इस परियोजना का समर्थन करें।" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "कृपया प्रतीक्षा करें, आपका PDF जेनरेट किया जा रहा है..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "कृपया प्रतीक्षा करें, आपकी पीडीएफ जनरेट हो रही है…" + #: src/libs/locale.ts msgid "Polish" msgstr "पोलिश" @@ -2724,6 +2726,14 @@ msgstr "आपका पासवर्ड रीसेट किया जा msgid "Resources" msgstr "संसाधन" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "पुनर्स्थापित करना" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "क्या हम रिज्यूम को इस पैच से पहले की स्थिति में रीस्टोर करना चाहते हैं? इससे यह पैच और इसके बाद लागू किए गए सभी पैच वापस ले लिए जाएंगे।" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "फिर शुरू करना" @@ -2752,10 +2762,6 @@ msgstr "रेज़्यूमे" msgid "Retry" msgstr "पुन: प्रयास करें" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "फिर लौट आना" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "नौकरी के विवरण के आधार पर रिज्यूमे की समीक्षा करें और अनिश्चित अनुभागों में बदलाव करने से पहले मुझसे प्रश्न पूछें।" @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "किसी आइकॉन के लिए खोजें" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… खोजें" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "खोजें..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "खोजें..." +msgid "Search…" +msgstr "खोजें…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "पुष्टि करने के लिए \"{CONFIRMATION_TEXT}\" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "कोई कमांड टाइप करें या खोजें..." +msgid "Type a command or search…" +msgstr "कोई कमांड टाइप करें या खोजें…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "तस्वीर अपलोड करें" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "चित्र अपलोड किया जा रहा है..." +msgid "Uploading picture…" +msgstr "चित्र अपलोड हो रहा है…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "बैकअप कोड से सत्यापित करें" msgid "Verifying backup code..." msgstr "बैकअप कोड सत्यापित किया जा रहा है..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "कोड सत्यापित किया जा रहा है..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "सत्यापन कोड…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "पासवर्ड सत्यापित किया जा रहा है..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ओपनएआई पर काम करें" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "कार्यरत..." +msgid "Working…" +msgstr "कार्य कर रहा है…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/hu-HU.po b/apps/web/locales/hu-HU.po index 9cec62e4b..90a4e7ef9 100644 --- a/apps/web/locales/hu-HU.po +++ b/apps/web/locales/hu-HU.po @@ -8,7 +8,7 @@ msgstr "" "Language: hu\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Életrajz elemzése" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Elemzés..." +msgid "Analyzing…" +msgstr "Elemzés…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Mégsem" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Nem vonható vissza; az önéletrajz megváltozott a szerkesztés alkalmazása óta." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Nem lehet visszaállítani; az önéletrajz megváltozott a szerkesztés alkalmazása óta." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Nyelv módosítása" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Nyelv módosítása erre:..." +msgid "Change language to…" +msgstr "Nyelv módosítása erre:…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Téma módosítása erre..." +msgid "Change theme to…" +msgstr "Téma módosítása erre:…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,7 +793,7 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nem sikerült elérni az AI szolgáltatót. Kérjük, próbálja meg újra." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." +msgid "Could not restore this patch." msgstr "Nem sikerült visszaállítani ezt a javítást." #: src/features/settings/integrations/components/ai-section.tsx @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Jelszóvédelem engedélyezése..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Kétlépcsős hitelesítés engedélyezése..." +msgid "Enabling two-factor authentication…" +msgstr "Kétfaktoros hitelesítés engedélyezése…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Menjen az önéletrajzok műszerfalára" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Ugrás ide..." +msgid "Go to…" +msgstr "Menj ide:…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Önéletrajz importálása..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importálás..." +msgid "Importing…" +msgstr "… importálása" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Nyelv" msgid "Languages" msgstr "Nyelvek" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Utoljára a {0} oldalon elemezték." +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Utolsó elemzés dátuma: {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "litván" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Ügynök munkaterületének betöltése..." +msgid "Loading agent workspace…" +msgstr "Ügynök munkaterületének betöltése…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "MI-szolgáltatók betöltése folyamatban. Kérjük, próbálja újra eg #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Szolgáltatók betöltése..." +msgid "Loading providers…" +msgstr "Szolgáltatók betöltése…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Önéletrajzok betöltése..." +msgid "Loading resumes…" +msgstr "Önéletrajzok betöltése…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Témák betöltése..." +msgid "Loading threads…" +msgstr "Szálak betöltése…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Betöltés..." +msgid "Loading…" +msgstr "… betöltése" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Javítás függőben" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "Javítás visszaállítva" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Javítás visszaállítva." +msgid "Patch rolled back." +msgstr "A folt visszahúzódott." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Kérjük, támogassa a projektet" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Kérjük, várj, amíg a PDF elkészül..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Kérjük, várjon, amíg a PDF-fájl generálása folyamatban van…" + #: src/libs/locale.ts msgid "Polish" msgstr "lengyel" @@ -2724,6 +2726,14 @@ msgstr "Jelszó visszaállítása..." msgid "Resources" msgstr "Erőforrások" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Visszaállítás" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Visszaállítja az önéletrajzot a javítás előtti állapotra? Ez visszaállítja a jelenlegi javítást és az utána telepített javításokat." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Önéletrajz" @@ -2752,10 +2762,6 @@ msgstr "Önéletrajzok" msgid "Retry" msgstr "Újrapróbálkozás" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Visszaállítás" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Ellenőrizd az önéletrajzot a munkaköri leírás alapján, és tegyél fel kérdéseket, mielőtt megváltoztatod a bizonytalan részeket." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Ikon keresése" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Keresés önéletrajzra..." +msgid "Search for…" +msgstr "Keresés:…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Keresés..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Keresés…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "A titkos kód a vágólapra másolva." @@ -3558,8 +3567,8 @@ msgstr "Írd be a(z) \"{CONFIRMATION_TEXT}\" szöveget a megerősítéshez" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Írj be egy parancsot vagy keress..." +msgid "Type a command or search…" +msgstr "Írjon be egy parancsot, vagy keressen rá…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Kép feltöltése" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Kép feltöltése..." +msgid "Uploading picture…" +msgstr "Kép feltöltése…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Hitelesítés biztonsági kóddal" msgid "Verifying backup code..." msgstr "Biztonsági kód ellenőrzése..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Kód ellenőrzése..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Ellenőrző kód…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Jelszó ellenőrzése..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Munka OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Dolgozó..." +msgid "Working…" +msgstr "Működik…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/id-ID.po b/apps/web/locales/id-ID.po index ff73f56bc..608dc6f2a 100644 --- a/apps/web/locales/id-ID.po +++ b/apps/web/locales/id-ID.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Menganalisis Lanjutkan" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Menganalisis..." +msgid "Analyzing…" +msgstr "Menganalisis…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Batalkan" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Tidak dapat dikembalikan; resume telah berubah sejak perubahan ini diterapkan." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Tidak dapat dipulihkan; resume telah berubah sejak perubahan ini diterapkan." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Ubah bahasa" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Ubah bahasa ke..." +msgid "Change language to…" +msgstr "Ubah bahasa menjadi…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Ubah tema ke..." +msgid "Change theme to…" +msgstr "Ubah tema menjadi…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Tidak dapat menghubungi penyedia AI. Silakan coba lagi." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Patch ini tidak dapat dikembalikan." +msgid "Could not restore this patch." +msgstr "Patch ini tidak dapat dipulihkan." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Mengaktifkan perlindungan kata sandi..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Mengaktifkan autentikasi dua faktor..." +msgid "Enabling two-factor authentication…" +msgstr "Mengaktifkan otentikasi dua faktor…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Buka dasbor resume" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Pergi ke..." +msgid "Go to…" +msgstr "Pergi ke…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Mengimpor resume Anda..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Mengimpor..." +msgid "Importing…" +msgstr "Mengimpor…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Bahasa" msgid "Languages" msgstr "Bahasa" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Terakhir dianalisis di {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Terakhir dianalisis pada {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituania" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Memuat ruang kerja agen..." +msgid "Loading agent workspace…" +msgstr "Memuat ruang kerja agen…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Sedang memuat penyedia AI. Silakan coba lagi sebentar lagi." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Sedang memuat penyedia..." +msgid "Loading providers…" +msgstr "Memuat penyedia…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Memuat resume..." +msgid "Loading resumes…" +msgstr "Proses pemuatan dilanjutkan…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Memuat thread..." +msgid "Loading threads…" +msgstr "Memuat thread…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Memuat..." +msgid "Loading…" +msgstr "Memuat…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Patch sedang diproses" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patch dikembalikan." +msgid "Patch rolled back" +msgstr "Patch tersebut dibatalkan." #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Patch dikembalikan." +msgid "Patch rolled back." +msgstr "Patch tersebut dikembalikan." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Mohon dukung proyek ini." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Harap tunggu sementara PDF Anda sedang dibuat..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Mohon tunggu sementara PDF Anda sedang dibuat…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polandia" @@ -2724,6 +2726,14 @@ msgstr "Mengatur ulang kata sandi Anda..." msgid "Resources" msgstr "Sumber Daya" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Memulihkan" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Pulihkan resume ke sebelum patch ini? Ini akan mengembalikan patch ini dan semua patch yang diterapkan setelahnya." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Melanjutkan" @@ -2752,10 +2762,6 @@ msgstr "Resume" msgid "Retry" msgstr "Mencoba kembali" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Kembali" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Tinjau resume Anda dan bandingkan dengan deskripsi pekerjaan, serta ajukan pertanyaan kepada saya sebelum mengubah bagian-bagian yang kurang jelas." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Cari ikon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Cari…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Cari..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Cari..." +msgid "Search…" +msgstr "Cari…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Ketik \"{CONFIRMATION_TEXT}\" untuk mengonfirmasi" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Ketik perintah atau cari..." +msgid "Type a command or search…" +msgstr "Ketik perintah atau cari…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Unggah gambar" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Mengunggah gambar..." +msgid "Uploading picture…" +msgstr "Mengunggah gambar…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifikasi dengan Kode Cadangan" msgid "Verifying backup code..." msgstr "Memverifikasi kode cadangan..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Memverifikasi kode..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Memverifikasi kode…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Memverifikasi kata sandi..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Kerja OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Bekerja..." +msgid "Working…" +msgstr "Sedang bekerja…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/it-IT.po b/apps/web/locales/it-IT.po index d1df39155..a55ec70fc 100644 --- a/apps/web/locales/it-IT.po +++ b/apps/web/locales/it-IT.po @@ -8,7 +8,7 @@ msgstr "" "Language: it\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Italian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analizzare il curriculum" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analizzare..." +msgid "Analyzing…" +msgstr "Analisi di…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Annulla" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Impossibile annullare l'operazione; il curriculum è stato modificato dopo l'applicazione di questa modifica." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Impossibile ripristinare; il curriculum è stato modificato dopo l'applicazione di questa modifica." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Cambia lingua" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Cambia lingua in..." +msgid "Change language to…" +msgstr "Cambia lingua in…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Cambia tema in..." +msgid "Change theme to…" +msgstr "Cambia il tema in…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Impossibile raggiungere il provider AI. La preghiamo di riprovare." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Impossibile annullare questa patch." +msgid "Could not restore this patch." +msgstr "Impossibile ripristinare questa patch." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Attivazione della protezione tramite password..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Attivazione dell'autenticazione a due fattori..." +msgid "Enabling two-factor authentication…" +msgstr "Abilitazione dell'autenticazione a due fattori…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Vada al cruscotto dei curriculum" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Vai a..." +msgid "Go to…" +msgstr "Vai a…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importazione del tuo curriculum in corso..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importazione..." +msgid "Importing…" +msgstr "Importazione…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Lingua" msgid "Languages" msgstr "Lingue" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Ultima analisi su {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Ultima analisi il {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituano" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Caricamento dell'area di lavoro dell'agente..." +msgid "Loading agent workspace…" +msgstr "Caricamento dello spazio di lavoro dell'agente…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Caricamento dei provider di intelligenza artificiale. Riprova tra un att #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Caricamento dei provider in corso..." +msgid "Loading providers…" +msgstr "Caricamento dei provider…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Caricamento dei curriculum in corso..." +msgid "Loading resumes…" +msgstr "Caricamento riprese…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Caricamento delle discussioni..." +msgid "Loading threads…" +msgstr "Caricamento thread…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Caricamento..." +msgid "Loading…" +msgstr "Caricamento…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "Patch in arrivo" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patch ripristinata" +msgid "Patch rolled back" +msgstr "Patch ripiegato" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "La patch è stata ripristinata." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Per favore, sostenete il progetto." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Attendi mentre il tuo PDF viene generato..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Attendi mentre il tuo PDF viene generato…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polacco" @@ -2724,6 +2726,14 @@ msgstr "Reimpostazione della tua password in corso..." msgid "Resources" msgstr "Risorse" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Ripristinare" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Ripristinare il ripristino a prima di questa patch? Questa opzione annullerà questa patch e tutte le patch applicate successivamente." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Riprendere" @@ -2752,10 +2762,6 @@ msgstr "Curriculum" msgid "Retry" msgstr "Riprova" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Ripristina" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Esamina il curriculum confrontandolo con la descrizione del lavoro e fammi delle domande prima di modificare le sezioni in cui hai dei dubbi." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Cerca un'icona" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Cerca…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Cerca..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Cerca..." +msgid "Search…" +msgstr "Cerca…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Digita \"{CONFIRMATION_TEXT}\" per confermare" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Digita un comando o cerca..." +msgid "Type a command or search…" +msgstr "Digita un comando o cerca…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Carica l'immagine" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Caricamento dell'immagine in corso..." +msgid "Uploading picture…" +msgstr "Caricamento dell'immagine…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifica con un codice di backup" msgid "Verifying backup code..." msgstr "Verifica del codice di backup in corso..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verifica del codice in corso..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verifica del codice…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verifica della password in corso..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Lavora con OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Lavorando..." +msgid "Working…" +msgstr "Lavoro in corso…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ja-JP.po b/apps/web/locales/ja-JP.po index 3ae79c6ea..cc52353f6 100644 --- a/apps/web/locales/ja-JP.po +++ b/apps/web/locales/ja-JP.po @@ -8,7 +8,7 @@ msgstr "" "Language: ja\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "履歴書の分析" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "分析..." +msgid "Analyzing…" +msgstr "…を分析中" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "キャンセル" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "元に戻すことはできません。この編集が適用されてから履歴書の内容が変更されています。" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "復元できません。この編集が適用されてから、履歴書の内容が変更されています。" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "言語を変更" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "言語を変更..." +msgid "Change language to…" +msgstr "言語を…に変更します" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "テーマを変更..." +msgid "Change theme to…" +msgstr "テーマを…に変更します" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AIプロバイダーに接続できませんでした。もう一度お試しください。" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "このパッチを元に戻すことができませんでした。" +msgid "Could not restore this patch." +msgstr "このパッチを復元できませんでした。" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "パスワード保護を有効にしています..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "二要素認証を有効にしています..." +msgid "Enabling two-factor authentication…" +msgstr "二段階認証を有効にする…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "履歴書ダッシュボードへ" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "移動..." +msgid "Go to…" +msgstr "… へ移動" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "履歴書をインポートしています..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "インポート中..." +msgid "Importing…" +msgstr "… をインポートしています" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "言語" msgid "Languages" msgstr "言語" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "最終分析日: {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "最終分析日時: {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "リトアニア語" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "エージェントワークスペースを読み込んでいます..." +msgid "Loading agent workspace…" +msgstr "エージェントワークスペースをロード中…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AIプロバイダーを読み込んでいます。しばらくしてか #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "プロバイダーを読み込んでいます..." +msgid "Loading providers…" +msgstr "プロバイダーを読み込んでいます…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "履歴書を読み込んでいます..." +msgid "Loading resumes…" +msgstr "読み込みが再開されます…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "スレッドを読み込んでいます..." +msgid "Loading threads…" +msgstr "スレッドを読み込んでいます…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "読み込み中..." +msgid "Loading…" +msgstr "… を読み込み中" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "パッチ適用待ち" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "パッチが元に戻されました" +msgid "Patch rolled back" +msgstr "パッチがロールバックされました" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "パッチが元に戻されました。" +msgid "Patch rolled back." +msgstr "パッチがロールバックされました。" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "プロジェクトへのご支援をお願いいたします" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "PDF を生成しています。しばらくお待ちください..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "PDFが生成されるまでしばらくお待ちください…" + #: src/libs/locale.ts msgid "Polish" msgstr "ポーランド語" @@ -2724,6 +2726,14 @@ msgstr "パスワードをリセットしています..." msgid "Resources" msgstr "リソース" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "復元する" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "このパッチ適用前の状態に復元しますか?これにより、このパッチと、その後に適用されたすべてのパッチがロールバックされます。" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "再開する" @@ -2752,10 +2762,6 @@ msgstr "履歴書" msgid "Retry" msgstr "リトライ" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "元に戻す" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "履歴書を求人内容と照らし合わせて確認し、不明な点があれば変更する前に私に質問してください。" @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "アイコンを検索" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… を検索" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "検索..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "検索..." +msgid "Search…" +msgstr "検索…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "確認のために「{CONFIRMATION_TEXT}」と入力してください" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "コマンドを入力するか検索してください..." +msgid "Type a command or search…" +msgstr "コマンドまたは検索を入力…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "画像のアップロード" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "写真をアップロードしています..." +msgid "Uploading picture…" +msgstr "画像をアップロード中…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "バックアップコードで確認" msgid "Verifying backup code..." msgstr "バックアップコードを確認しています..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "コードを確認しています..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "検証コード…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "パスワードを確認しています..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAIでの活動" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "働く..." +msgid "Working…" +msgstr "作業中…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/km-KH.po b/apps/web/locales/km-KH.po index dcd1008f3..7e5f10b2c 100644 --- a/apps/web/locales/km-KH.po +++ b/apps/web/locales/km-KH.po @@ -8,7 +8,7 @@ msgstr "" "Language: km\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Khmer\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "វិភាគប្រវត្តិរូប" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "កំពុងវិភាគ..." +msgid "Analyzing…" +msgstr "កំពុងវិភាគ…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "បោះបង់" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "មិនអាចត្រឡប់វិញបានទេ ប្រវត្តិរូបសង្ខេបបានផ្លាស់ប្តូរចាប់តាំងពីការកែសម្រួលនេះត្រូវបានអនុវត្ត។" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "មិនអាចស្ដារឡើងវិញបានទេ ប្រវត្តិរូបសង្ខេបបានផ្លាស់ប្តូរចាប់តាំងពីការកែសម្រួលនេះត្រូវបានអនុវត្ត។" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "ប្តូរភាសា" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "ប្តូរ​ភាសា​ទៅ..." +msgid "Change language to…" +msgstr "ប្តូរភាសាទៅ…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "ប្តូរ​ស្បែក​ទៅ..." +msgid "Change theme to…" +msgstr "ប្ដូរ​ស្បែក​ទៅ…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "មិនអាចភ្ជាប់ទៅអ្នកផ្តល់សេវា AI បានទេ។ សូមព្យាយាមម្ដងទៀត។" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "មិនអាចត្រឡប់បំណះនេះវិញបានទេ។" +msgid "Could not restore this patch." +msgstr "មិនអាចស្ដារបំណះនេះឡើងវិញបានទេ។" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "កំពុង​បើក​ការ​ការពារ​ដោយ​ពាក្យសម្ងាត់..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "កំពុង​បើក​ការ​ផ្ទៀងផ្ទាត់​ពីរ​ជាន់..." +msgid "Enabling two-factor authentication…" +msgstr "កំពុងបើកដំណើរការការផ្ទៀងផ្ទាត់ពីរកត្តា…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "ទៅកាន់ផ្ទាំងគ្រប់គ្រងប្រវត្តិរូប" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "ទៅកាន់..." +msgid "Go to…" +msgstr "ចូលទៅកាន់…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "កំពុង​នាំចូល​ប្រវត្តិរូប​របស់​អ្នក..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "កំពុង​នាំចូល..." +msgid "Importing…" +msgstr "កំពុងនាំចូល…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "ភាសា" msgid "Languages" msgstr "ភាសា" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "បានវិភាគចុងក្រោយនៅ {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "វិភាគចុងក្រោយនៅថ្ងៃទី {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lithuanian" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "កំពុងផ្ទុកកន្លែងធ្វើការរបស់ភ្នាក់ងារ..." +msgid "Loading agent workspace…" +msgstr "កំពុងផ្ទុកកន្លែងធ្វើការរបស់ភ្នាក់ងារ…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "កំពុងផ្ទុកអ្នកផ្តល់សេវា AI #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "កំពុងផ្ទុកអ្នកផ្តល់សេវា..." +msgid "Loading providers…" +msgstr "កំពុងផ្ទុកអ្នកផ្តល់សេវា…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "កំពុង​ផ្ទុក​ប្រវត្តិរូប..." +msgid "Loading resumes…" +msgstr "កំពុងផ្ទុកប្រវត្តិរូបសង្ខេប…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "កំពុងផ្ទុកខ្សែស្រឡាយ..." +msgid "Loading threads…" +msgstr "កំពុងផ្ទុកខ្សែស្រឡាយ…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "កំពុង​ផ្ទុក..." +msgid "Loading…" +msgstr "កំពុងផ្ទុក…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "ការជួសជុលកំពុងរង់ចាំ" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "បំណះត្រូវបានត្រឡប់វិញ" +msgid "Patch rolled back" +msgstr "បំណះបានរំកិលថយក្រោយ" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "បំណះត្រូវបានត្រឡប់។" +msgid "Patch rolled back." +msgstr "ប៉ាចបានរំកិលថយក្រោយ។" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "សូមជួយគាំទ្រគម្រោងនេះផង" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "សូម​រង់ចាំ ខណៈពេល​កំពុង​បង្កើត PDF របស់​អ្នក..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "សូមរង់ចាំខណៈពេលដែល PDF របស់អ្នកកំពុងត្រូវបានបង្កើត…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polish" @@ -2724,6 +2726,14 @@ msgstr "កំពុង​កំណត់​ពាក្យសម្ងាត់ msgid "Resources" msgstr "ធនធាន" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "ស្ដារឡើងវិញ" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "ស្ដារប្រវត្តិរូបសង្ខេបទៅមុនបំណះនេះ? វានឹងរំកិលបំណះនេះ និងបំណះណាមួយដែលបានអនុវត្តបន្ទាប់ពីវា។" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "ប្រវត្តិរូបសង្ខេប" @@ -2752,10 +2762,6 @@ msgstr "ប្រវត្តិរូប" msgid "Retry" msgstr "សាកល្បងម្តងទៀត" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "ត្រឡប់" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "សូមពិនិត្យមើលប្រវត្តិរូបសង្ខេបជាមួយនឹងការពិពណ៌នាការងារ ហើយសួរខ្ញុំនូវសំណួរមុនពេលផ្លាស់ប្តូរផ្នែកដែលមិនច្បាស់លាស់។" @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "ស្វែងរក​រូបតំណាង" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "ស្វែងរក​ប្រវត្តិរូប..." +msgid "Search for…" +msgstr "ស្វែងរក…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "ស្វែងរក..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "ស្វែងរក…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "កូនសោ​សម្ងាត់​ត្រូវ​បាន​ចម្លង​ទៅ​ក្ដារ​តម្រៀប។" @@ -3558,8 +3567,8 @@ msgstr "វាយ \"{CONFIRMATION_TEXT}\" ដើម្បី​បញ្ជា #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "វាយ​ពាក្យ​បញ្ជា​មួយ ឬ​ស្វែងរក..." +msgid "Type a command or search…" +msgstr "វាយបញ្ចូលពាក្យបញ្ជា ឬស្វែងរក…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "អាប់ឡូដរូបភាព" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "កំពុង​អាប់ឡូដ​រូបភាព..." +msgid "Uploading picture…" +msgstr "កំពុងផ្ទុកឡើងរូបភាព…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ផ្ទៀងផ្ទាត់​ដោយ​ប្រើ​កូដ msgid "Verifying backup code..." msgstr "កំពុង​ផ្ទៀងផ្ទាត់​កូដ​បម្រុងទុក..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "កំពុង​ផ្ទៀងផ្ទាត់​កូដ..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "កំពុងផ្ទៀងផ្ទាត់លេខកូដ…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "កំពុង​ផ្ទៀងផ្ទាត់​ពាក្យសម្ងាត់..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ធ្វើការ OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "កំពុងធ្វើការ..." +msgid "Working…" +msgstr "កំពុងដំណើរការ…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/kn-IN.po b/apps/web/locales/kn-IN.po index ab0f936c2..0fe574de4 100644 --- a/apps/web/locales/kn-IN.po +++ b/apps/web/locales/kn-IN.po @@ -8,7 +8,7 @@ msgstr "" "Language: kn\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Kannada\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "ರೆಸ್ಯೂಮ್ ವಿಶ್ಲೇಷಿಸಿ" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "ವಿಶ್ಲೇಷಿಸಲಾಗುತ್ತಿದೆ..." +msgid "Analyzing…" +msgstr "… ಅನ್ನು ವಿಶ್ಲೇಷಿಸಲಾಗುತ್ತಿದೆ" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "ರದ್ದುಮಾಡಿ" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "ಹಿಂತಿರುಗಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ; ಈ ಸಂಪಾದನೆಯನ್ನು ಅನ್ವಯಿಸಿದಾಗಿನಿಂದ ರೆಸ್ಯೂಮ್ ಬದಲಾಗಿದೆ." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "ಪುನಃಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ; ಈ ಸಂಪಾದನೆಯನ್ನು ಅನ್ವಯಿಸಿದಾಗಿನಿಂದ ರೆಸ್ಯೂಮ್ ಬದಲಾಗಿದೆ." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "ಭಾಷೆ ಬದಲಿಸಿ" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "ಭಾಷೆಯನ್ನು ಈ ಕೆಳಗಿನದಕ್ಕೆ ಬದಲಾಯಿಸಿ..." +msgid "Change language to…" +msgstr "ಭಾಷೆಯನ್ನು… ಗೆ ಬದಲಾಯಿಸಿ" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "ಥೀಮ್ ಅನ್ನು ಈ ಕೆಳಗಿನದಕ್ಕೆ ಬದಲಾಯಿಸಿ..." +msgid "Change theme to…" +msgstr "ಥೀಮ್ ಅನ್ನು… ಗೆ ಬದಲಾಯಿಸಿ" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI ಪ್ರೊವೈಡರ್‌ನ್ನು ತಲುಪಲಾಗಲಿಲ್ಲ. ದಯವಿಟ್ಟು ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "ಈ ಪ್ಯಾಚ್ ಅನ್ನು ಹಿಂತಿರುಗಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ." +msgid "Could not restore this patch." +msgstr "ಈ ಪ್ಯಾಚ್ ಅನ್ನು ಪುನಃಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "ಪಾಸ್‌ವರ್ಡ್ ರಕ್ಷಣೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತಿದೆ..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "ಎರಡು ಅಂಶದ ದೃಢೀಕರಣವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತಿದೆ..." +msgid "Enabling two-factor authentication…" +msgstr "ಎರಡು-ಅಂಶದ ದೃಢೀಕರಣವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತಿದೆ…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "ರೆಸ್ಯೂಮ್‌ಗಳ ಡ್ಯಾಶ್‌ಬೋರ್ಡ್‌ಗೆ ಹೋಗಿ" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "ಇದ್ದಕ್ಕಿದ್ದಂತೆ ಹೋಗಿ..." +msgid "Go to…" +msgstr "… ಗೆ ಹೋಗಿ" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "ನಿಮ್ಮ ರೆಸ್ಯೂಮ್ ಅನ್ನು ಆಮದು ಮಾಡಲಾಗುತ್ತಿದೆ..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "ಆಮದು ಮಾಡಲಾಗುತ್ತಿದೆ..." +msgid "Importing…" +msgstr "… ಆಮದು ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "ಭಾಷೆ" msgid "Languages" msgstr "ಭಾಷೆಗಳು" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "ಕೊನೆಯದಾಗಿ {0} ರಂದು ವಿಶ್ಲೇಷಿಸಲಾಗಿದೆ" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "ಕೊನೆಯದಾಗಿ ವಿಶ್ಲೇಷಿಸಿದ್ದು {updatedAtLabel} ನಲ್ಲಿ" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "ಲಿಥುವೇನಿಯನ್" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "ಏಜೆಂಟ್ ಕಾರ್ಯಸ್ಥಳವನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ..." +msgid "Loading agent workspace…" +msgstr "ಏಜೆಂಟ್ ಕಾರ್ಯಸ್ಥಳವನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AI ಪೂರೈಕೆದಾರರನ್ನು ಲೋಡ್ ಮಾಡಲ #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "ಪೂರೈಕೆದಾರರನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ..." +msgid "Loading providers…" +msgstr "ಪೂರೈಕೆದಾರರನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "ರೆಸ್ಯೂಮ್‌ಗಳನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ..." +msgid "Loading resumes…" +msgstr "ರೆಸ್ಯೂಮ್‌ಗಳನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "ಥ್ರೆಡ್‌ಗಳನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ..." +msgid "Loading threads…" +msgstr "ಥ್ರೆಡ್‌ಗಳನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ..." +msgid "Loading…" +msgstr "… ಲೋಡ್ ಆಗುತ್ತಿದೆ" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "ಪ್ಯಾಚ್ ಬಾಕಿ ಇದೆ" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "ಪ್ಯಾಚ್ ಹಿಂತಿರುಗಿಸಲಾಗಿದೆ" +msgid "Patch rolled back" +msgstr "ಪ್ಯಾಚ್ ಹಿಂದಕ್ಕೆ ಉರುಳಿದೆ" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "ಪ್ಯಾಚ್ ಹಿಂತಿರುಗಿಸಲಾಗಿದೆ." +msgid "Patch rolled back." +msgstr "ಪ್ಯಾಚ್ ಹಿಂದಕ್ಕೆ ಉರುಳಿದೆ." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "ದಯವಿಟ್ಟು ಯೋಜನೆಯನ್ನು ಬೆಂಬಲಿಸಿ" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "ದಯವಿಟ್ಟು ನಿಮ್ಮ PDF ರಚಿಸಲಾಗುವವರೆಗೆ ನಿರೀಕ್ಷಿಸಿ..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "ನಿಮ್ಮ PDF ರಚನೆಯಾಗುವವರೆಗೆ ಕಾಯಿರಿ…" + #: src/libs/locale.ts msgid "Polish" msgstr "ಪೋಲಿಷ್" @@ -2724,6 +2726,14 @@ msgstr "ನಿಮ್ಮ ಪಾಸ್‌ವರ್ಡ್ ಅನ್ನು ಮರು msgid "Resources" msgstr "ಸಂಪನ್ಮೂಲಗಳು" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "ಮರುಸ್ಥಾಪಿಸಿ" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "ಈ ಪ್ಯಾಚ್‌ಗಿಂತ ಮೊದಲಿನ ಸ್ಥಿತಿಗೆ ರೆಸ್ಯೂಮ್ ಅನ್ನು ಮರುಸ್ಥಾಪಿಸುವುದೇ? ಇದು ಈ ಪ್ಯಾಚ್ ಮತ್ತು ಅದರ ನಂತರ ಅನ್ವಯಿಸಲಾದ ಯಾವುದೇ ಪ್ಯಾಚ್‌ಗಳನ್ನು ಹಿಂದಕ್ಕೆ ತಿರುಗಿಸುತ್ತದೆ." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "ಪುನರಾರಂಭ" @@ -2752,10 +2762,6 @@ msgstr "ರೆಸ್ಯೂಮೇ" msgid "Retry" msgstr "ಮರುಪ್ರಯತ್ನಿಸಿ" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "ಹಿಂತಿರುಗಿಸು" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "ಅನಿಶ್ಚಿತ ವಿಭಾಗಗಳನ್ನು ಬದಲಾಯಿಸುವ ಮೊದಲು, ಕೆಲಸದ ವಿವರಣೆಯೊಂದಿಗೆ ರೆಸ್ಯೂಮ್ ಅನ್ನು ಪರಿಶೀಲಿಸಿ ಮತ್ತು ನನಗೆ ಪ್ರಶ್ನೆಗಳನ್ನು ಕೇಳಿ." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "ಐಕಾನ್‌ಗಾಗಿ ಹುಡುಕಿ" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… ಗಾಗಿ ಹುಡುಕಿ" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "ಹುಡುಕಿ..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "ಹುಡುಕಿ..." +msgid "Search…" +msgstr "… ಹುಡುಕಿ" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "ದೃಢೀಕರಿಸಲು \"{CONFIRMATION_TEXT}\" ಟೈಪ್ ಮ #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "ಕಮಾಂಡ್ ಅನ್ನು ಟೈಪ್ ಮಾಡಿ ಅಥವಾ ಹುಡುಕಿ..." +msgid "Type a command or search…" +msgstr "ಆಜ್ಞೆಯನ್ನು ಟೈಪ್ ಮಾಡಿ ಅಥವಾ ಹುಡುಕಿ…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "ಚಿತ್ರವನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಿ" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "ಚಿತ್ರವನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ..." +msgid "Uploading picture…" +msgstr "… ಚಿತ್ರವನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ಬ್ಯಾಕಪ್ ಕೋಡ್‌ನೊಂದಿಗೆ ಪರಿಶ msgid "Verifying backup code..." msgstr "ಬ್ಯಾಕಪ್ ಕೋಡ್ ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "ಕೋಡ್ ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "ಕೋಡ್ ಅನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "ಪಾಸ್‌ವರ್ಡ್ ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ಕೆಲಸ ಓಪನ್‌ಎಐ" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "ಕೆಲಸ ಮಾಡುತ್ತಿದೆ..." +msgid "Working…" +msgstr "ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆ…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ko-KR.po b/apps/web/locales/ko-KR.po index 09d6aaea4..395a08d4d 100644 --- a/apps/web/locales/ko-KR.po +++ b/apps/web/locales/ko-KR.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "이력서 분석" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "분석 중..." +msgid "Analyzing…" +msgstr "… 분석 중" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "취소" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "되돌릴 수 없습니다. 이 수정 사항이 적용된 이후 이력서가 변경되었습니다." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "복원할 수 없습니다. 이 수정 사항이 적용된 이후 이력서가 변경되었습니다." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "언어 변경" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "언어를 변경..." +msgid "Change language to…" +msgstr "언어를…로 변경하세요" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "테마를 변경..." +msgid "Change theme to…" +msgstr "테마를…로 변경하세요" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI 제공업체에 연결할 수 없습니다. 다시 시도하세요." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "이 패치를 되돌릴 수 없습니다." +msgid "Could not restore this patch." +msgstr "이 패치를 복원할 수 없습니다." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "비밀번호 보호를 활성화하는 중입니다..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "2단계 인증을 활성화하는 중입니다..." +msgid "Enabling two-factor authentication…" +msgstr "2단계 인증 활성화…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "이력서 대시보드로 이동" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "이동..." +msgid "Go to…" +msgstr "…로 이동하세요" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "이력서를 가져오는 중입니다..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "가져오는 중..." +msgid "Importing…" +msgstr "… 가져오기" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "언어" msgid "Languages" msgstr "언어" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "마지막 분석: {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "마지막 분석일: {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "리투아니아어" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "에이전트 작업 공간을 불러오는 중..." +msgid "Loading agent workspace…" +msgstr "에이전트 작업 공간…을 로드합니다." #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AI 제공업체를 불러오는 중입니다. 잠시 후 다시 시도 #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "공급업체를 불러오는 중..." +msgid "Loading providers…" +msgstr "공급자 로딩 중…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "이력서를 불러오는 중입니다..." +msgid "Loading resumes…" +msgstr "이력서 로딩 중…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "스레드를 불러오는 중..." +msgid "Loading threads…" +msgstr "스레드 로딩 중…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "로딩 중..." +msgid "Loading…" +msgstr "… 로딩 중" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "패치 예정" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "패치가 되돌려졌습니다" +msgid "Patch rolled back" +msgstr "패치가 뒤로 말려 올라갔습니다." #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "패치가 되돌려졌습니다." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "이 프로젝트를 지원해 주세요." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "PDF를 생성하는 동안 잠시만 기다려 주세요..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "PDF 파일이 생성되는 동안 잠시 기다려 주세요…" + #: src/libs/locale.ts msgid "Polish" msgstr "폴란드어" @@ -2724,6 +2726,14 @@ msgstr "비밀번호를 재설정하는 중입니다..." msgid "Resources" msgstr "리소스" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "복원하다" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "이 패치 이전 상태로 복원하시겠습니까? 이렇게 하면 이 패치와 그 이후에 적용된 모든 패치가 롤백됩니다." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "재개하다" @@ -2752,10 +2762,6 @@ msgstr "이력서" msgid "Retry" msgstr "다시 해 보다" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "돌아가는 것" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "이력서를 직무 설명과 대조해 보고, 불확실한 부분을 수정하기 전에 저에게 질문해 주세요." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "아이콘 검색" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "…을 검색하세요" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "검색..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "검색..." +msgid "Search…" +msgstr "검색…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "확인하려면 \"{CONFIRMATION_TEXT}\"를 입력하세요" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "명령을 입력하거나 검색하세요..." +msgid "Type a command or search…" +msgstr "명령어를 입력하거나…를 검색하세요." #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "사진 업로드" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "사진을 업로드하는 중입니다..." +msgid "Uploading picture…" +msgstr "사진 업로드 중…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "백업 코드로 인증" msgid "Verifying backup code..." msgstr "백업 코드를 확인하는 중입니다..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "코드를 확인하는 중입니다..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "코드… 확인 중" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "비밀번호를 확인하는 중입니다..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI에서 근무" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "일하고 있는..." +msgid "Working…" +msgstr "작업 중…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/lt-LT.po b/apps/web/locales/lt-LT.po index 5f674b5e0..7b4bbee2c 100644 --- a/apps/web/locales/lt-LT.po +++ b/apps/web/locales/lt-LT.po @@ -8,7 +8,7 @@ msgstr "" "Language: lt\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Lithuanian\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && (n%100>19 || n%100<11) ? 0 : (n%10>=2 && n%10<=9) && (n%100>19 || n%100<11) ? 1 : n%1!=0 ? 2: 3);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analizuoti CV" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analizuojant..." +msgid "Analyzing…" +msgstr "Analizuojama…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Atšaukti" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Grąžinti negalima; gyvenimo aprašymas pasikeitė nuo tada, kai buvo pritaikytas šis redagavimas." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Nepavyksta atkurti; gyvenimo aprašymas pasikeitė nuo tada, kai buvo pritaikytas šis redagavimas." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Keisti kalbą" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Pakeisti kalbą į..." +msgid "Change language to…" +msgstr "Pakeisti kalbą į…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Keisti temą į..." +msgid "Change theme to…" +msgstr "Pakeisti temą į…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nepavyko susisiekti su AI teikėju. Bandykite dar kartą." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Nepavyko grąžinti šio pataisymo." +msgid "Could not restore this patch." +msgstr "Nepavyko atkurti šio pataisymo." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Įjungiama apsauga slaptažodžiu..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Įjungiamas dviejų veiksnių tapatumo patvirtinimas..." +msgid "Enabling two-factor authentication…" +msgstr "Dviejų veiksnių autentifikavimo įjungimas…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Eikite į CV prietaisų skydelį" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Eiti į..." +msgid "Go to…" +msgstr "Eikite į…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importuojamas jūsų gyvenimo aprašymas..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importuojama..." +msgid "Importing…" +msgstr "Importuojama…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Kalba" msgid "Languages" msgstr "Kalbos" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Paskutinį kartą analizuota {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Paskutinį kartą analizuota {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lietuvių" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Kraunama agento darbo sritis..." +msgid "Loading agent workspace…" +msgstr "Kraunama agento darbo vieta…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Įkeliami dirbtinio intelekto teikėjai. Bandykite dar kartą po akimirk #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Įkeliami paslaugų teikėjai..." +msgid "Loading providers…" +msgstr "Įkeliami paslaugų teikėjai…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Įkeliami gyvenimo aprašymai..." +msgid "Loading resumes…" +msgstr "Kraunami gyvenimo aprašymai…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Įkeliamos temos..." +msgid "Loading threads…" +msgstr "Įkeliamos gijos…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Įkeliama..." +msgid "Loading…" +msgstr "Kraunama…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Laukiama pataisos" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "Pataisa atšaukta" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Pataisa grąžinta." +msgid "Patch rolled back." +msgstr "Lopas atsuktas atgal." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Prašome paremti projektą" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Palaukite, kol bus sugeneruotas jūsų PDF..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Palaukite, kol generuojamas jūsų PDF failas…" + #: src/libs/locale.ts msgid "Polish" msgstr "Lenkų" @@ -2724,6 +2726,14 @@ msgstr "Atstatomas slaptažodis..." msgid "Resources" msgstr "Ištekliai" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Atkurti" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Atkurti gyvenimo aprašymą į ankstesnę būseną? Tai anuliuos šį ir visus po jo pritaikytus pataisymus." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Gyvenimo aprašymas" @@ -2752,10 +2762,6 @@ msgstr "Gyvenimo aprašymai" msgid "Retry" msgstr "Bandyti dar kartą" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Grąžinti" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Peržiūrėkite gyvenimo aprašymą pagal pareigybės aprašymą ir užduokite man klausimus prieš keisdami neaiškias dalis." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Ieškoti ikonos" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Ieškoti…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Ieškoti..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Ieškoti..." +msgid "Search…" +msgstr "Paieška…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Įveskite „{CONFIRMATION_TEXT}“, kad patvirtintumėte" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Įveskite komandą arba paieškos užklausą..." +msgid "Type a command or search…" +msgstr "Įveskite komandą arba paieškos laukelį…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Įkelti nuotrauką" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Įkeliamas paveikslėlis..." +msgid "Uploading picture…" +msgstr "Įkeliama nuotrauka…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Patvirtinti atsarginiu kodu" msgid "Verifying backup code..." msgstr "Tikrinamas atsarginis kodas..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Tikrinamas kodas..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Patvirtinimo kodas…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Tikrinamas slaptažodis..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Darbas OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Dirbame..." +msgid "Working…" +msgstr "Dirba…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/lv-LV.po b/apps/web/locales/lv-LV.po index 39d4374f2..9b44ccedd 100644 --- a/apps/web/locales/lv-LV.po +++ b/apps/web/locales/lv-LV.po @@ -8,7 +8,7 @@ msgstr "" "Language: lv\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Latvian\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analizēt CV" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analizējot..." +msgid "Analyzing…" +msgstr "Analizējot…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Atcelt" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Nevar atsaukt; CV ir mainījies kopš šī labojuma piemērošanas." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Nevar atjaunot; CV ir mainījies kopš šī labojuma piemērošanas." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Mainīt valodu" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Mainīt valodu uz..." +msgid "Change language to…" +msgstr "Mainīt valodu uz…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Mainīt tēmu uz..." +msgid "Change theme to…" +msgstr "Mainīt tēmu uz…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,7 +793,7 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nevarēja sazināties ar AI pakalpojumu sniedzēju. Lūdzu, mēģiniet vēlreiz." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." +msgid "Could not restore this patch." msgstr "Nevarēja atjaunot šo ielāpu." #: src/features/settings/integrations/components/ai-section.tsx @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Tiek ieslēgta paroles aizsardzība..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Tiek ieslēgta divu faktoru autentifikācija..." +msgid "Enabling two-factor authentication…" +msgstr "Divfaktoru autentifikācijas iespējošana…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Dodieties uz CV paneli" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Doties uz..." +msgid "Go to…" +msgstr "Dodieties uz…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Tiek importēts jūsu CV..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Notiek importēšana..." +msgid "Importing…" +msgstr "Importē…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Valoda" msgid "Languages" msgstr "Valodas" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Pēdējo reizi analizēts vietnē {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Pēdējo reizi analizēts {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lietuviešu" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Notiek aģenta darba vietas ielāde..." +msgid "Loading agent workspace…" +msgstr "Notiek aģenta darbvietas ielāde…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Notiek mākslīgā intelekta pakalpojumu sniedzēju ielāde. Lūdzu, mē #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Notiek pakalpojumu sniedzēju ielāde..." +msgid "Loading providers…" +msgstr "Notiek pakalpojumu sniedzēju ielāde…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Ielādē CV..." +msgid "Loading resumes…" +msgstr "Notiek CV ielāde…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Notiek pavedienu ielāde..." +msgid "Loading threads…" +msgstr "Notiek pavedienu ielāde…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Ielādē..." +msgid "Loading…" +msgstr "Notiek ielāde…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Ielāps gaida" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Ielāps atsaukts" +msgid "Patch rolled back" +msgstr "Ielāps ir atsaukts" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Ielāps ir atsaukts." +msgid "Patch rolled back." +msgstr "Ielāps atritināts." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Lūdzu, atbalstiet projektu" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Lūdzu, uzgaidiet, kamēr tiek ģenerēts jūsu PDF..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Lūdzu, uzgaidiet, kamēr tiek ģenerēts jūsu PDF fails…" + #: src/libs/locale.ts msgid "Polish" msgstr "Poļu" @@ -2724,6 +2726,14 @@ msgstr "Tiek atiestatīta jūsu parole..." msgid "Resources" msgstr "Resursi" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Atjaunot" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Vai atjaunot CV versiju pirms šī ielāpa? Tādējādi tiks atiestatīts gan šis ielāps, gan visi pēc tā lietotie ielāpi." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "CV" @@ -2752,10 +2762,6 @@ msgstr "CV" msgid "Retry" msgstr "Mēģināt vēlreiz" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Atjaunot" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Salīdzini CV ar amata aprakstu un uzdod man jautājumus, pirms maināt neskaidrās sadaļas." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Meklēt ikonu" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Meklēt…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Meklēt..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Meklēt..." +msgid "Search…" +msgstr "Meklēt…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Ierakstiet \"{CONFIRMATION_TEXT}\", lai apstiprinātu" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Ierakstiet komandu vai meklējiet..." +msgid "Type a command or search…" +msgstr "Ievadiet komandu vai meklējiet…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Augšupielādēt attēlu" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Augšupielādē attēlu..." +msgid "Uploading picture…" +msgstr "Augšupielādē attēlu…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verificēt ar rezerves kodu" msgid "Verifying backup code..." msgstr "Verificē rezerves kodu..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verificē kodu..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Pārbaudes kods…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verificē paroli..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Darbs OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Strādājam..." +msgid "Working…" +msgstr "Darbs…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ml-IN.po b/apps/web/locales/ml-IN.po index 6cc5e322f..b482b6448 100644 --- a/apps/web/locales/ml-IN.po +++ b/apps/web/locales/ml-IN.po @@ -8,7 +8,7 @@ msgstr "" "Language: ml\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Malayalam\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "റെസ്യൂമെ വിശകലനം ചെയ്യുക" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "വിശകലനം ചെയ്യുന്നു..." +msgid "Analyzing…" +msgstr "… വിശകലനം ചെയ്യുന്നു" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "റദ്ദാക്കുക" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "പഴയപടിയാക്കാൻ കഴിയില്ല; ഈ എഡിറ്റ് പ്രയോഗിച്ചതിനുശേഷം റെസ്യൂമെ മാറി." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "പുനഃസ്ഥാപിക്കാൻ കഴിയില്ല; ഈ എഡിറ്റ് പ്രയോഗിച്ചതിനുശേഷം റെസ്യൂമെ മാറി." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "ഭാഷ മാറ്റുക" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "ഭാഷ മാറ്റുക..." +msgid "Change language to…" +msgstr "ഭാഷ… ആക്കുക" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "തീം മാറ്റുക..." +msgid "Change theme to…" +msgstr "തീം… ആക്കുക" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "എഐ ദാതാവിനെ ബന്ധപ്പെടാൻ കഴിഞ്ഞില്ല. ദയവായി വീണ്ടും ശ്രമിക്കുക." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "ഈ പാച്ച് പഴയപടിയാക്കാൻ കഴിഞ്ഞില്ല." +msgid "Could not restore this patch." +msgstr "ഈ പാച്ച് പുനഃസ്ഥാപിക്കാൻ കഴിഞ്ഞില്ല." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "പാസ്‌വേഡ് സംരക്ഷണം പ്രാപ്തമാക്കുന്നു..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "ടു‑ഫാക്ടർ ഓത്‌ന്റിക്കേഷൻ പ്രാപ്തമാക്കുന്നു..." +msgid "Enabling two-factor authentication…" +msgstr "ടു-ഫാക്ടർ പ്രാമാണീകരണം പ്രവർത്തനക്ഷമമാക്കുന്നു…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "റെസ്യൂമെ ഡാഷ്‌ബോർഡിലേക്ക് പോകുക" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "ഇതിലേക്കു പോകുക..." +msgid "Go to…" +msgstr "… എന്നതിലേക്ക് പോകുക" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "നിങ്ങളുടെ റിസ്യൂം ഇംപോർട്ട് ചെയ്യുന്നു..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "ഇംപോർട്ട് ചെയ്യുന്നു..." +msgid "Importing…" +msgstr "… ഇറക്കുമതി ചെയ്യുന്നു" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "ഭാഷ" msgid "Languages" msgstr "ഭാഷകൾ" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "അവസാനമായി വിശകലനം ചെയ്തത് {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "അവസാനം വിശകലനം ചെയ്തത് {updatedAtLabel}-ൽ" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "ലിത്വാനിയൻ" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "ഏജന്റ് വർക്ക്‌സ്‌പെയ്‌സ് ലോഡ് ചെയ്യുന്നു..." +msgid "Loading agent workspace…" +msgstr "ഏജന്റ് വർക്ക്‌സ്‌പെയ്‌സ് ലോഡ് ചെയ്യുന്നു…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AI ദാതാക്കളെ ലോഡ് ചെയ്യുന്ന #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "ദാതാക്കളെ ലോഡ് ചെയ്യുന്നു..." +msgid "Loading providers…" +msgstr "ദാതാക്കളെ ലോഡ് ചെയ്യുന്നു…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "റിസ്യൂങ്ങൾ ലോഡ് ചെയ്യുന്നു..." +msgid "Loading resumes…" +msgstr "റെസ്യൂമെകൾ ലോഡ് ചെയ്യുന്നു…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "ത്രെഡുകൾ ലോഡ് ചെയ്യുന്നു..." +msgid "Loading threads…" +msgstr "ത്രെഡുകൾ ലോഡ് ചെയ്യുന്നു…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "ലോഡ് ചെയ്യുന്നു..." +msgid "Loading…" +msgstr "… ലോഡ് ചെയ്യുന്നു" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "പാച്ച് തീർച്ചപ്പെടുത്തിയിട്ടില്ല" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "പാച്ച് പഴയപടിയാക്കി" +msgid "Patch rolled back" +msgstr "പാച്ച് തിരികെ റോൾ ചെയ്തു" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "പാച്ച് പഴയപടിയാക്കി." +msgid "Patch rolled back." +msgstr "പാച്ച് തിരികെ ചുരുട്ടി." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "ദയവായി പദ്ധതിയെ പിന്തുണയ്ക്കുക." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "നിങ്ങളുടെ PDF നിർമ്മിക്കുന്നതിനിടെയാണ്, ദയവായി കാത്തിരിക്കുക..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "നിങ്ങളുടെ PDF ജനറേറ്റ് ചെയ്യുന്നത് വരെ കാത്തിരിക്കുക…" + #: src/libs/locale.ts msgid "Polish" msgstr "പോളിഷ്" @@ -2724,6 +2726,14 @@ msgstr "നിങ്ങളുടെ പാസ്‌വേഡ് റീസെറ msgid "Resources" msgstr "റിസോഴ്സുകൾ" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "പുനഃസ്ഥാപിക്കുക" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "ഈ പാച്ചിന് മുമ്പുള്ളതിലേക്ക് റെസ്യൂമെ പുനഃസ്ഥാപിക്കണോ? ഇത് ഈ പാച്ചും അതിനു ശേഷം പ്രയോഗിക്കുന്ന ഏതെങ്കിലും പാച്ചുകളും പഴയപടിയാക്കും." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "പുനരാരംഭിക്കുക" @@ -2752,10 +2762,6 @@ msgstr "റിസ്യൂങ്ങൾ" msgid "Retry" msgstr "വീണ്ടും ശ്രമിക്കുക" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "പഴയപടിയാക്കുക" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "ജോലി വിവരണവുമായി പൊരുത്തപ്പെടുന്ന വിധത്തിൽ റെസ്യൂമെ പരിശോധിച്ച്, അനിശ്ചിതമായ വിഭാഗങ്ങൾ മാറ്റുന്നതിനുമുമ്പ് എന്നോട് ചോദ്യങ്ങൾ ചോദിക്കുക." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "ഒരു ഐക്കൺ തിരയുക" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… തിരയുക" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "തിരയുക..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "തിരയുക..." +msgid "Search…" +msgstr "… തിരയുക" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "സ്ഥിരീകരിക്കാൻ \"{CONFIRMATION_TEXT}\" ട #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "ഒരു കമാൻഡ് ടൈപ്പ് ചെയ്യുകയോ തിരയുകയോ ചെയ്യൂ..." +msgid "Type a command or search…" +msgstr "ഒരു കമാൻഡ് ടൈപ്പ് ചെയ്യുക അല്ലെങ്കിൽ തിരയുക…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "ചിത്രം അപ്‌ലോഡ് ചെയ്യുക" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "ചിത്രം അപ്‌ലോഡ് ചെയ്യുന്നു..." +msgid "Uploading picture…" +msgstr "… ചിത്രം അപ്‌ലോഡ് ചെയ്യുന്നു" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ഒരു ബാക്കപ്പ് കോഡ് ഉപയോഗിച msgid "Verifying backup code..." msgstr "ബാക്കപ്പ് കോഡ് പരിശോദിക്കുന്നു..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "കോഡ് പരിശോദിക്കുന്നു..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "കോഡ് പരിശോധിക്കുന്നു…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "പാസ്‌വേഡ് പരിശോദിക്കുന്നു..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "വർക്ക് ഓപ്പൺഎഐ" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "പ്രവർത്തിക്കുന്നു..." +msgid "Working…" +msgstr "പ്രവർത്തിക്കുന്നു…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/mr-IN.po b/apps/web/locales/mr-IN.po index c1b4291c9..b2eaf8d28 100644 --- a/apps/web/locales/mr-IN.po +++ b/apps/web/locales/mr-IN.po @@ -8,7 +8,7 @@ msgstr "" "Language: mr\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Marathi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "रेझ्युमेचे विश्लेषण करा" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "विश्लेषण करत आहे..." +msgid "Analyzing…" +msgstr "… चे विश्लेषण करत आहे" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "रद्द करा" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "बदल पूर्ववत करता येणार नाही; हा बदल लागू केल्यापासून रिझ्युमे बदलला आहे." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "पुनर्स्थापित करता येणार नाही; हे संपादन लागू केल्यापासून रिझ्युमे बदलला आहे." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "भाषा बदला" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "भाषा बदला..." +msgid "Change language to…" +msgstr "भाषा… मध्ये बदला" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "थीम बदला..." +msgid "Change theme to…" +msgstr "… वर थीम बदला" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI प्रदात्याशी संपर्क साधता आला नाही. कृपया पुन्हा प्रयत्न करा." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "हा पॅच पूर्ववत करता आला नाही." +msgid "Could not restore this patch." +msgstr "हा पॅच पुनर्स्थापित करता आला नाही." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "पासवर्ड संरक्षण सक्षम केले जात आहे..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "दुहेरी घटक ओथेंटिकेशन सक्षम केले जात आहे..." +msgid "Enabling two-factor authentication…" +msgstr "द्वि-घटक प्रमाणीकरण सक्षम करणे…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "रिझ्युमे डॅशबोर्डवर जा" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "इथे जा..." +msgid "Go to…" +msgstr "… वर जा" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "तुमचा रेझ्युमे इम्पोर्ट केला जात आहे..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "इम्पोर्ट करत आहे..." +msgid "Importing…" +msgstr "… आयात करत आहे" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "भाषा" msgid "Languages" msgstr "भाषा" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "शेवटचे विश्लेषण केले गेले {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "शेवटचे विश्लेषण {updatedAtLabel} रोजी केले गेले." #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "लिथुआनियन" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "एजंट वर्कस्पेस लोड होत आहे..." +msgid "Loading agent workspace…" +msgstr "एजंट वर्कस्पेस लोड करत आहे…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "एआय प्रोव्हायडर्स लोड होत #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "प्रोव्हायडर्स लोड होत आहेत..." +msgid "Loading providers…" +msgstr "प्रदाते लोड होत आहेत…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "रेझ्युमे लोड केले जात आहेत..." +msgid "Loading resumes…" +msgstr "पुन्हा सुरू होत आहे…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "थ्रेड्स लोड होत आहेत..." +msgid "Loading threads…" +msgstr "थ्रेड्स लोड होत आहेत…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "लोड करत आहे..." +msgid "Loading…" +msgstr "… लोड होत आहे" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "पॅच प्रलंबित आहे" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "पॅच पूर्ववत केला" +msgid "Patch rolled back" +msgstr "पॅच मागे घेण्यात आला" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "पॅच पूर्ववत करण्यात आला." +msgid "Patch rolled back." +msgstr "पॅच पूर्ववत झाला." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "कृपया प्रकल्पाला पाठिंबा द्या" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "कृपया तुमचा PDF तयार होईपर्यंत थांबा..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "तुमची PDF तयार होत असताना कृपया प्रतीक्षा करा…" + #: src/libs/locale.ts msgid "Polish" msgstr "पोलिश" @@ -2724,6 +2726,14 @@ msgstr "तुमचा पासवर्ड रीसेट केला ज msgid "Resources" msgstr "साधने" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "पुनर्संचयित करा" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "या पॅचच्या आधीची स्थिती पुन्हा सुरू करायची आहे का? असे केल्यास हा पॅच आणि त्यानंतर लागू केलेले कोणतेही पॅचेस पूर्ववत होतील." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "सारांश" @@ -2752,10 +2762,6 @@ msgstr "रेझ्युमे" msgid "Retry" msgstr "पुन्हा प्रयत्न करा" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "परत" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "नोकरीच्या वर्णनानुसार रेझ्युमे तपासा आणि शंकास्पद भाग बदलण्यापूर्वी मला प्रश्न विचारा." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "आयकन शोधा" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… शोधा" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "शोधा..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "शोधा..." +msgid "Search…" +msgstr "शोध…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "पुष्टी करण्यासाठी \"{CONFIRMATION_TEXT}\ #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "कमान्ड टाइप करा किंवा शोधा..." +msgid "Type a command or search…" +msgstr "कमांड टाईप करा किंवा शोधा…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "चित्र अपलोड करा" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "चित्र अपलोड केले जात आहे..." +msgid "Uploading picture…" +msgstr "चित्र अपलोड करत आहे…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "बॅकअप कोडने पडताळा करा" msgid "Verifying backup code..." msgstr "बॅकअप कोड पडताळला जात आहे..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "कोड पडताळला जात आहे..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "कोडची पडताळणी करत आहे…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "पासवर्ड पडताळला जात आहे..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ओपनएआयचे कार्य" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "काम चालू आहे..." +msgid "Working…" +msgstr "कार्यरत…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ms-MY.po b/apps/web/locales/ms-MY.po index a59457616..c89aca105 100644 --- a/apps/web/locales/ms-MY.po +++ b/apps/web/locales/ms-MY.po @@ -8,7 +8,7 @@ msgstr "" "Language: ms\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Malay\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analisis Resume" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Menganalisis..." +msgid "Analyzing…" +msgstr "Menganalisis…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Batal" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Tidak boleh berbalik; resume telah berubah sejak suntingan ini digunakan." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Tidak dapat memulihkan; resume telah berubah sejak suntingan ini digunakan." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Tukar bahasa" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Tukar bahasa kepada..." +msgid "Change language to…" +msgstr "Tukar bahasa kepada…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Tukar tema kepada..." +msgid "Change theme to…" +msgstr "Tukar tema kepada…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Tidak dapat mencapai penyedia AI. Sila cuba lagi." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Tidak dapat membalikkan tampalan ini." +msgid "Could not restore this patch." +msgstr "Tidak dapat memulihkan tampalan ini." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Mengaktifkan perlindungan kata laluan..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Mengaktifkan pengesahan dua faktor..." +msgid "Enabling two-factor authentication…" +msgstr "Mendayakan pengesahan dua faktor…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Pergi ke papan pemuka resume" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Pergi ke..." +msgid "Go to…" +msgstr "Pergi ke…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Mengimport resume anda..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Mengimport..." +msgid "Importing…" +msgstr "Mengimport…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Bahasa" msgid "Languages" msgstr "Bahasa" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Terakhir dianalisis pada {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Analisis terakhir pada {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lithuania" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Memuatkan ruang kerja ejen..." +msgid "Loading agent workspace…" +msgstr "Memuatkan ruang kerja ejen…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Memuatkan penyedia AI. Sila cuba lagi sebentar lagi." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Memuatkan pembekal..." +msgid "Loading providers…" +msgstr "Memuatkan pembekal…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Memuatkan resume..." +msgid "Loading resumes…" +msgstr "Memuatkan resume…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Memuatkan thread..." +msgid "Loading threads…" +msgstr "Memuatkan thread…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Memuatkan..." +msgid "Loading…" +msgstr "Memuatkan…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Tampalan sedang menunggu" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Tampalan dibalikkan" +msgid "Patch rolled back" +msgstr "Tampalan digulung ke belakang" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Tampalan dibalikkan." +msgid "Patch rolled back." +msgstr "Tampalan digulung ke belakang." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Sila sokong projek ini" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Sila tunggu sementara PDF anda dijana..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Sila tunggu sementara PDF anda dijana…" + #: src/libs/locale.ts msgid "Polish" msgstr "Poland" @@ -2724,6 +2726,14 @@ msgstr "Menetapkan semula kata laluan anda..." msgid "Resources" msgstr "Sumber" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Pulihkan" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Pulihkan resume ke tahap sebelum tampalan ini? Ini akan mengembalikan tampalan ini dan sebarang tampalan yang digunakan selepasnya." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Resume" @@ -2752,10 +2762,6 @@ msgstr "Resume" msgid "Retry" msgstr "Cuba semula" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Kembalikan" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Semak resume berdasarkan huraian kerja dan ajukan soalan kepada saya sebelum menukar bahagian yang tidak pasti." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Cari ikon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Cari…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Cari..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Cari..." +msgid "Search…" +msgstr "Cari…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Taip \"{CONFIRMATION_TEXT}\" untuk mengesahkan" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Taip perintah atau cari..." +msgid "Type a command or search…" +msgstr "Taip arahan atau cari…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Muat naik gambar" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Memuat naik gambar..." +msgid "Uploading picture…" +msgstr "Memuat naik gambar…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Sahkan dengan Kod Sandaran" msgid "Verifying backup code..." msgstr "Mengesahkan kod sandaran..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Mengesahkan kod..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Mengesahkan kod…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Mengesahkan kata laluan..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Kerja OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Bekerja..." +msgid "Working…" +msgstr "Bekerja…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ne-NP.po b/apps/web/locales/ne-NP.po index 7c33eec65..fb5158189 100644 --- a/apps/web/locales/ne-NP.po +++ b/apps/web/locales/ne-NP.po @@ -8,7 +8,7 @@ msgstr "" "Language: ne\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Nepali\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "बायोडाटा विश्लेषण गर्नुहोस्" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "विश्लेषण गर्दै..." +msgid "Analyzing…" +msgstr "विश्लेषण गर्दै…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "रद्द गर्नुहोस्" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "उल्टाउन सकिँदैन; यो सम्पादन लागू भएदेखि रिजुमे परिवर्तन भएको छ।" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "पुनर्स्थापना गर्न सकिँदैन; यो सम्पादन लागू भएदेखि रिजुमे परिवर्तन भएको छ।" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "भाषा बदल्नुहोस्" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "भाषा यसमा परिवर्तन गर्नुहोस्..." +msgid "Change language to…" +msgstr "भाषा परिवर्तन गर्नुहोस्…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "थिम यसमा परिवर्तन गर्नुहोस्..." +msgid "Change theme to…" +msgstr "विषयवस्तुलाई… मा परिवर्तन गर्नुहोस्" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI प्रदायकमा पहुँच गर्न सकिएन। कृपया फेरि प्रयास गर्नुहोस्।" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "यो प्याच उल्टाउन सकिएन।" +msgid "Could not restore this patch." +msgstr "यो प्याच पुनर्स्थापित गर्न सकिएन।" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "पासवर्ड सुरक्षा सक्रिय पारिँदै..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "दुई-कारक प्रमाणीकरण सक्रिय पारिँदै..." +msgid "Enabling two-factor authentication…" +msgstr "दुई-कारक प्रमाणीकरण सक्षम पार्दै…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "रिजुमे ड्यासबोर्डमा जानुहोस्" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "यसमा जानुहोस्..." +msgid "Go to…" +msgstr "… मा जानुहोस्" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "तपाईंको बायोडाटा आयात हुँदैछ..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "आयात हुँदैछ..." +msgid "Importing…" +msgstr "आयात गर्दै…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "भाषा" msgid "Languages" msgstr "भाषाहरू" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "अन्तिम विश्लेषण गरिएको मिति {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "अन्तिम पटक विश्लेषण गरिएको {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "लिथुआनियन" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "एजेन्ट कार्यस्थान लोड हुँदैछ..." +msgid "Loading agent workspace…" +msgstr "एजेन्ट कार्यस्थान लोड गर्दै…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AI प्रदायकहरू लोड गर्दै। कृप #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "प्रदायकहरू लोड गर्दै..." +msgid "Loading providers…" +msgstr "प्रदायकहरू लोड गर्दै…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "बायोडाटा लोड गर्दै..." +msgid "Loading resumes…" +msgstr "रिजुमेहरू लोड गर्दै…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "थ्रेडहरू लोड गर्दै..." +msgid "Loading threads…" +msgstr "थ्रेडहरू लोड गर्दै…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "लोड हुँदैछ..." +msgid "Loading…" +msgstr "लोड हुँदै…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "प्याच विचाराधीन छ" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "प्याच उल्टाइयो" +msgid "Patch rolled back" +msgstr "प्याच फिर्ता गरियो" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "प्याच उल्टाइयो।" +msgid "Patch rolled back." +msgstr "प्याच फिर्ता गरियो।" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "कृपया परियोजनालाई समर्थन गर्नुहोस्।" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "कृपया प्रतीक्षा गर्नुहोस्, तपाईंको PDF बनाइँदैछ..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "कृपया तपाईंको PDF उत्पन्न हुँदासम्म पर्खनुहोस्…" + #: src/libs/locale.ts msgid "Polish" msgstr "पोलिस" @@ -2724,6 +2726,14 @@ msgstr "तपाईंको पासवर्ड रिसेट हुँद msgid "Resources" msgstr "स्रोतहरू" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "पुनर्स्थापना गर्नुहोस्" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "यो प्याचभन्दा पहिलेको रिजुमे पुनर्स्थापित गर्ने हो? यसले यो प्याच र त्यसपछि लागू गरिएका कुनै पनि प्याचहरूलाई रोलब्याक गर्नेछ।" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "पुनःसुरु गर्नुहोस्" @@ -2752,10 +2762,6 @@ msgstr "बायोडाटाहरू" msgid "Retry" msgstr "पुन: प्रयास गर्नुहोस्" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "उल्टाउनुहोस्" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "जागिरको विवरणसँग बायोडाटा समीक्षा गर्नुहोस् र अनिश्चित खण्डहरू परिवर्तन गर्नु अघि मलाई प्रश्नहरू सोध्नुहोस्।" @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "आइकन खोज्नुहोस्" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "यसको लागि खोज्नुहोस्..." +msgid "Search for…" +msgstr "… खोज्नुहोस्" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "खोज्नुहोस्..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "खोज्नुहोस्…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "गोप्य कोड क्लिपबोर्डमा प्रतिलिपि गरियो।" @@ -3558,8 +3567,8 @@ msgstr "\"{CONFIRMATION_TEXT}\" टाइप गरेर यकिन गर् #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "कमान्ड टाइप गर्नुहोस् वा खोज्नुहोस्..." +msgid "Type a command or search…" +msgstr "आदेश टाइप गर्नुहोस् वा… खोज्नुहोस्" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "तस्बिर अपलोड गर्नुहोस्" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "तस्बिर अपलोड हुँदैछ..." +msgid "Uploading picture…" +msgstr "तस्वीर अपलोड गर्दै…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ब्याकअप कोडबाट यकिन गर्नुह msgid "Verifying backup code..." msgstr "ब्याकअप कोड यकिन हुँदैछ..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "कोड यकिन हुँदैछ..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "कोड प्रमाणित गर्दै…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "पासवर्ड यकिन हुँदैछ..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI मा काम गर्नुहोस्" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "काम गर्दै..." +msgid "Working…" +msgstr "काम गर्दै…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/nl-NL.po b/apps/web/locales/nl-NL.po index 19cbb13f1..adcfd3e0b 100644 --- a/apps/web/locales/nl-NL.po +++ b/apps/web/locales/nl-NL.po @@ -8,7 +8,7 @@ msgstr "" "Language: nl\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "C.V. analyseren" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analyseren..." +msgid "Analyzing…" +msgstr "Analyseren…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Annuleren" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Kan niet ongedaan gemaakt worden; het cv is gewijzigd sinds deze bewerking is uitgevoerd." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Herstellen is niet mogelijk; het cv is gewijzigd sinds deze bewerking is uitgevoerd." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Taal wijzigen" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Taal wijzigen naar..." +msgid "Change language to…" +msgstr "Wijzig de taal naar…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Thema wijzigen naar..." +msgid "Change theme to…" +msgstr "Wijzig het thema naar…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Kon de AI-provider niet bereiken. Probeer het opnieuw." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Deze patch kon niet ongedaan gemaakt worden." +msgid "Could not restore this patch." +msgstr "Deze patch kon niet worden hersteld." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Wachtwoordbeveiliging wordt ingeschakeld..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Tweestapsverificatie wordt ingeschakeld..." +msgid "Enabling two-factor authentication…" +msgstr "Tweefactorauthenticatie inschakelen…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Ga naar het cv-dashboard" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Ga naar..." +msgid "Go to…" +msgstr "Ga naar…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Uw cv wordt geïmporteerd..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importeren..." +msgid "Importing…" +msgstr "Importeren…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Taal" msgid "Languages" msgstr "Talen" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Laatst geanalyseerd op {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Laatst geanalyseerd op {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litouws" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "De agentwerkruimte wordt geladen..." +msgid "Loading agent workspace…" +msgstr "Laadagentwerkruimte…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AI-providers worden geladen. Probeer het over een moment opnieuw." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Aanbieders laden..." +msgid "Loading providers…" +msgstr "Aanbieders laden…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Cv's worden geladen..." +msgid "Loading resumes…" +msgstr "Het laden van cv's…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Threads worden geladen..." +msgid "Loading threads…" +msgstr "Threads laden…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Laden..." +msgid "Loading…" +msgstr "Laden…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Patch in afwachting" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "Patch teruggedraaid" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Patch teruggedraaid." +msgid "Patch rolled back." +msgstr "Patch is teruggedraaid." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Steun dit project alstublieft." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Wacht alstublieft terwijl uw PDF wordt gegenereerd..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Even geduld alstublieft terwijl uw PDF wordt gegenereerd…" + #: src/libs/locale.ts msgid "Polish" msgstr "Pools" @@ -2724,6 +2726,14 @@ msgstr "Uw wachtwoord wordt gereset..." msgid "Resources" msgstr "Bronnen" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Herstellen" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Wil je het systeem terugzetten naar de situatie van vóór deze patch? Hiermee worden deze patch en alle patches die erna zijn toegepast, teruggedraaid." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Cv" @@ -2752,10 +2762,6 @@ msgstr "Cv's" msgid "Retry" msgstr "Opnieuw proberen" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Terugdraaien" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Vergelijk je cv met de functieomschrijving en stel me vragen voordat je onderdelen wijzigt waar je nog niet zeker van bent." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Zoek naar een pictogram" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Zoeken naar..." +msgid "Search for…" +msgstr "Zoeken naar…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Zoeken..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Zoeken…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Geheim gekopieerd naar klembord." @@ -3558,8 +3567,8 @@ msgstr "Typ \"{CONFIRMATION_TEXT}\" om te bevestigen" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Typ een opdracht of zoek..." +msgid "Type a command or search…" +msgstr "Typ een commando of zoek…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Afbeelding uploaden" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Foto wordt geüpload..." +msgid "Uploading picture…" +msgstr "Afbeelding uploaden…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifiëren met een back-upcode" msgid "Verifying backup code..." msgstr "Back-upcode wordt geverifieerd..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Code wordt geverifieerd..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Code controleren…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Wachtwoord wordt geverifieerd..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Werkzaamheden bij OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Bezig met verwerken..." +msgid "Working…" +msgstr "Bezig met…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/no-NO.po b/apps/web/locales/no-NO.po index dd1e56db5..a0df59ec4 100644 --- a/apps/web/locales/no-NO.po +++ b/apps/web/locales/no-NO.po @@ -8,7 +8,7 @@ msgstr "" "Language: no\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analyser CV" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analyserer..." +msgid "Analyzing…" +msgstr "Analyserer…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Avbryt" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Kan ikke angre; CV-en har endret seg siden denne redigeringen ble brukt." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Kan ikke gjenopprette; CV-en har endret seg siden denne redigeringen ble brukt." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Endre språk" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Endre språk til..." +msgid "Change language to…" +msgstr "Endre språk til…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Endre tema til..." +msgid "Change theme to…" +msgstr "Endre tema til…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Kunne ikke nå KI-leverandøren. Prøv igjen." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Kunne ikke tilbakestille denne oppdateringen." +msgid "Could not restore this patch." +msgstr "Kunne ikke gjenopprette denne oppdateringen." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Aktiverer passordbeskyttelse..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Aktiverer tofaktorautentisering..." +msgid "Enabling two-factor authentication…" +msgstr "Aktivering av tofaktorautentisering…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Gå til CV-oversikten" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Gå til..." +msgid "Go to…" +msgstr "Gå til…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importerer CV-en din..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importerer..." +msgid "Importing…" +msgstr "Importerer…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Språk" msgid "Languages" msgstr "Språk" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Sist analysert {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Sist analysert {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litauisk" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Laster inn agentens arbeidsområde ..." +msgid "Loading agent workspace…" +msgstr "Laster inn agentens arbeidsområde…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Laster inn AI-leverandører. Prøv igjen om et øyeblikk." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Laster inn leverandører ..." +msgid "Loading providers…" +msgstr "Laster inn leverandører…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Laster inn CV-er..." +msgid "Loading resumes…" +msgstr "Laster inn CV-er…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Laster inn tråder ..." +msgid "Loading threads…" +msgstr "Laster inn tråder…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Laster..." +msgid "Loading…" +msgstr "Laster…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Oppdatering venter" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Oppdateringen er tilbakestilt" +msgid "Patch rolled back" +msgstr "Oppdateringen ble rullet tilbake" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Oppdateringen er tilbakestilt." +msgid "Patch rolled back." +msgstr "Oppdateringen ble rullet tilbake." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Vennligst støtt prosjektet" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Vent mens PDF-en din genereres..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Vent mens PDF-filen din genereres…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polsk" @@ -2724,6 +2726,14 @@ msgstr "Tilbakestiller passordet ditt..." msgid "Resources" msgstr "Ressurser" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restaurere" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Vil du gjenopprette CV-en til før denne oppdateringen? Dette vil tilbakestille denne oppdateringen og eventuelle oppdateringer som ble brukt etter den." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Gjenoppta" @@ -2752,10 +2762,6 @@ msgstr "CV-er" msgid "Retry" msgstr "Prøv på nytt" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Tilbakestill" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Gjennomgå CV-en mot en stillingsbeskrivelse og still meg spørsmål før du endrer usikre deler." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Søk etter et ikon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Søk etter..." +msgid "Search for…" +msgstr "Søk etter…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Søk..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Søk…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Hemmelighet kopiert til utklippstavlen." @@ -3558,8 +3567,8 @@ msgstr "Skriv \"{CONFIRMATION_TEXT}\" for å bekrefte" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Skriv en kommando eller søk..." +msgid "Type a command or search…" +msgstr "Skriv inn en kommando eller søk…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Last opp bilde" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Laster opp bilde..." +msgid "Uploading picture…" +msgstr "Laster opp bilde…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifiser med en sikkerhetskopikode" msgid "Verifying backup code..." msgstr "Verifiserer sikkerhetskopikode..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verifiserer kode..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verifiserer kode…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verifiserer passord..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Arbeid med OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Arbeider..." +msgid "Working…" +msgstr "Arbeider…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/or-IN.po b/apps/web/locales/or-IN.po index 1e27b4f89..ebabca71b 100644 --- a/apps/web/locales/or-IN.po +++ b/apps/web/locales/or-IN.po @@ -8,7 +8,7 @@ msgstr "" "Language: or\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Odia\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "ରେଜ୍ୟୁମେ ବିଶ୍ଳେଷଣ କରନ୍ତୁ" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "ବିଶ୍ଳେଷଣ ହେଉଛି..." +msgid "Analyzing…" +msgstr "… ବିଶ୍ଳେଷଣ କରୁଛି" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "ବାତିଲ୍ କରନ୍ତୁ" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "ପୂର୍ବାବସ୍ଥାକୁ ଫେରାଇ ପାରିବେ ନାହିଁ; ଏହି ସମ୍ପାଦନା ପ୍ରୟୋଗ ହେବା ପରଠାରୁ ରିଜ୍ୟୁମ୍ ପରିବର୍ତ୍ତନ ହୋଇଛି।" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "ପୁନଃସ୍ଥାପନ କରାଯାଇପାରିବ ନାହିଁ; ଏହି ସମ୍ପାଦନ ପ୍ରୟୋଗ ହେବା ପରଠାରୁ ରିଜ୍ୟୁମ୍ ପରିବର୍ତ୍ତନ ହୋଇଛି।" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "ଭାଷା ବଦଳାନ୍ତୁ" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "ଭାଷାକୁ ପରିବର୍ତ୍ତନ କରନ୍ତୁ..." +msgid "Change language to…" +msgstr "ଭାଷାକୁ… ରେ ବଦଳାନ୍ତୁ" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "ଥିମ୍ ପରିବର୍ତ୍ତନ କରନ୍ତୁ..." +msgid "Change theme to…" +msgstr "ଥିମ୍‌କୁ… ରେ ପରିବର୍ତ୍ତନ କରନ୍ତୁ" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI ପ୍ରଦାନକାରୀ ସହ ସଂଯୋଗ ସ୍ଥାପନ କରାଯାଇପାରିଲା ନାହିଁ। ଦୟାକରି ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "ଏହି ପ୍ୟାଚ୍ କୁ ଫେରାଇ ପାରିଲା ନାହିଁ।" +msgid "Could not restore this patch." +msgstr "ଏହି ପ୍ୟାଚ୍ ପୁନଃସ୍ଥାପନ କରିପାରିଲା ନାହିଁ।" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "ପାସୱାର୍ଡ ସୁରକ୍ଷା ସକ୍ରିୟ କରାଯାଉଛି..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "ଦ୍ୱି-ଘଟକ ପରିଚୟ ପ୍ରମାଣିକରଣ ସକ୍ରିୟ କରାଯାଉଛି..." +msgid "Enabling two-factor authentication…" +msgstr "ଦୁଇ-ସ୍ତରୀୟ ପ୍ରମାଣୀକରଣ ସକ୍ଷମ କରିବା…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "ରେଜ୍ୟୁମେ ଡ୍ୟାଶବୋର୍ଡକୁ ଯାଆନ୍ତୁ" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "ଯାଆନ୍ତୁ..." +msgid "Go to…" +msgstr "… କୁ ଯାଆନ୍ତୁ" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "ଆପଣଙ୍କ ରେଜ୍ୟୁମେ ଆୟାତ ହେଉଛି..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "ଆୟାତ ହେଉଛି..." +msgid "Importing…" +msgstr "ଆମଦାନି କରାଯାଉଛି…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "ଭାଷା" msgid "Languages" msgstr "ଭାଷାଗୁଡିକ" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "ଶେଷ ଥର {0} ରେ ବିଶ୍ଳେଷଣ କରାଯାଇଥିଲା" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "ଶେଷ ଥର ପାଇଁ {updatedAtLabel} ରେ ବିଶ୍ଳେଷଣ କରାଯାଇଥିଲା" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "ଲିଥୁଆନିଆନ୍" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "ଏଜେଣ୍ଟ ୱର୍କସ୍ପେସ୍ ଲୋଡ୍ ହେଉଛି..." +msgid "Loading agent workspace…" +msgstr "ଏଜେଣ୍ଟ ୱାର୍କସ୍ପେସ୍ ଲୋଡ୍ ହେଉଛି…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AI ପ୍ରଦାନକାରୀଙ୍କୁ ଲୋଡ୍ କରାଯ #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "ପ୍ରଦାନକାରୀମାନଙ୍କୁ ଲୋଡ୍ କରାଯାଉଛି..." +msgid "Loading providers…" +msgstr "ପ୍ରଦାନକାରୀମାନଙ୍କୁ ଲୋଡ୍ କରାଯାଉଛି…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "ରେଜ୍ୟୁମେଗୁଡିକ ଲୋଡ୍ ହେଉଛି..." +msgid "Loading resumes…" +msgstr "ରିଜ୍ୟୁମ୍ ଲୋଡ୍ ହେଉଛି…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "ଥ୍ରେଡ୍‍ଗୁଡ଼ିକ ଲୋଡ୍ ହେଉଛି..." +msgid "Loading threads…" +msgstr "ଥ୍ରେଡ୍ ଲୋଡ୍ ହେଉଛି…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "ଲୋଡ୍ ହେଉଛି..." +msgid "Loading…" +msgstr "ଲୋଡ୍ ହେଉଛି…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "ପ୍ୟାଚ୍ ବାକି ଅଛି" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "ପ୍ୟାଚ୍ ଫେରାଇ ନିଆଗଲା" +msgid "Patch rolled back" +msgstr "ପ୍ୟାଚ୍ ପଛକୁ ଘୁଞ୍ଚାଗଲା" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "ପ୍ୟାଚ୍ ଫେରାଇ ନିଆଗଲା।" +msgid "Patch rolled back." +msgstr "ପ୍ୟାଚ୍ ପଛକୁ ଘୁଞ୍ଚିଗଲା।" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "ଦୟାକରି ପ୍ରୋଜେକ୍ଟକୁ ସମର୍ଥନ କରନ୍ତୁ।" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "ଦୟାକରି ଅପେକ୍ଷା କରନ୍ତୁ, ଆପଣଙ୍କ PDF ସୃଷ୍ଟି ହେଉଛି..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "ଆପଣଙ୍କର PDF ଜେନେରେଟ୍ ହେବା ପର୍ଯ୍ୟନ୍ତ ଦୟାକରି ଅପେକ୍ଷା କରନ୍ତୁ…" + #: src/libs/locale.ts msgid "Polish" msgstr "ପୋଲିଶ୍" @@ -2724,6 +2726,14 @@ msgstr "ଆପଣଙ୍କ ପାସୱାର୍ଡ ରିସେଟ୍ ହେଉ msgid "Resources" msgstr "ସମ୍ପଦ" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "ପୁନଃସ୍ଥାପନ କରନ୍ତୁ" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "ଏହି ପ୍ୟାଚ୍ ପୂର୍ବରୁ ଥିବା ରିଜ୍ୟୁମ୍ ପୁନଃସ୍ଥାପିତ କରିବେ କି? ଏହା ଏହି ପ୍ୟାଚ୍ ଏବଂ ଏହା ପରେ ଲାଗୁ ହୋଇଥିବା ଯେକୌଣସି ପ୍ୟାଚ୍‌କୁ ରୋଲ୍‌ବ୍ୟାକ୍ କରିବ।" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "ପୁନରାବୃତ୍ତି" @@ -2752,10 +2762,6 @@ msgstr "ରେଜ୍ୟୁମେଗୁଡିକ" msgid "Retry" msgstr "ପୁନଃଚେଷ୍ଟା କରନ୍ତୁ" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "ପୂର୍ବାବସ୍ଥାକୁ ଆଣନ୍ତୁ" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "ଚାକିରି ବର୍ଣ୍ଣନା ସହିତ ଜୀବନ ଜୀବିକା ସମୀକ୍ଷା କରନ୍ତୁ ଏବଂ ଅନିଶ୍ଚିତ ବିଭାଗ ପରିବର୍ତ୍ତନ କରିବା ପୂର୍ବରୁ ମୋତେ ପ୍ରଶ୍ନ ପଚାରନ୍ତୁ।" @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "ଏକ ଆଇକନ୍ ଖୋଜନ୍ତୁ" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… ଖୋଜନ୍ତୁ" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "ଖୋଜନ୍ତୁ..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "ଖୋଜନ୍ତୁ..." +msgid "Search…" +msgstr "ଖୋଜନ୍ତୁ…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "ନିଶ୍ଚିତିକରଣ ପାଇଁ \"{CONFIRMATION_TEXT}\" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "ଗୋଟିଏ କମାଣ୍ଡ ଟାଇପ୍ କରନ୍ତୁ କିମ୍ବା ଖୋଜନ୍ତୁ..." +msgid "Type a command or search…" +msgstr "ଏକ କମାଣ୍ଡ ଟାଇପ୍ କରନ୍ତୁ କିମ୍ବା… ଖୋଜନ୍ତୁ" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "ଛବି ଅପଲୋଡ୍ କରନ୍ତୁ" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "ଛବି ଅପଲୋଡ୍ ହେଉଛି..." +msgid "Uploading picture…" +msgstr "ଫଟୋ ଅପଲୋଡ୍ ହେଉଛି…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ବ୍ୟାକଅପ୍ କୋଡ୍ ସହ ସତ୍ୟାପନ କ msgid "Verifying backup code..." msgstr "ବ୍ୟାକଅପ୍ କୋଡ୍ ସତ୍ୟାପନ ହେଉଛି..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "କୋଡ୍ ସତ୍ୟାପନ ହେଉଛି..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "କୋଡ୍ ଯାଞ୍ଚ କରାଯାଉଛି…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "ପାସୱାର୍ଡ ସତ୍ୟାପନ ହେଉଛି..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI କାମ କରନ୍ତୁ" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "କାମ କରୁଛି..." +msgid "Working…" +msgstr "କାମ କରୁଛି…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/pl-PL.po b/apps/web/locales/pl-PL.po index 0c0788090..7e2be036f 100644 --- a/apps/web/locales/pl-PL.po +++ b/apps/web/locales/pl-PL.po @@ -8,7 +8,7 @@ msgstr "" "Language: pl\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Polish\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Proszę przeanalizować CV" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analiza..." +msgid "Analyzing…" +msgstr "Analiza…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Anuluj" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Nie można cofnąć, ponieważ CV uległo zmianie od momentu wprowadzenia tej edycji." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Nie można przywrócić. CV uległo zmianie od momentu wprowadzenia tej edycji." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Zmień język" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Zmień język na..." +msgid "Change language to…" +msgstr "Zmień język na…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Zmień motyw na..." +msgid "Change theme to…" +msgstr "Zmień motyw na…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nie udało się połączyć z dostawcą AI. Proszę spróbować ponownie." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Nie można cofnąć tej poprawki." +msgid "Could not restore this patch." +msgstr "Nie udało się przywrócić tej poprawki." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Włączanie ochrony hasłem..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Włączanie uwierzytelniania dwuskładnikowego..." +msgid "Enabling two-factor authentication…" +msgstr "Włączanie uwierzytelniania dwuskładnikowego…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Proszę przejść do pulpitu CV" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Przejdź do..." +msgid "Go to…" +msgstr "Przejdź do…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importowanie CV..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importowanie..." +msgid "Importing…" +msgstr "Importowanie…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Język" msgid "Languages" msgstr "Języki" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Ostatnio analizowano {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Ostatnia analiza: {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litewski" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Ładowanie obszaru roboczego agenta..." +msgid "Loading agent workspace…" +msgstr "Ładowanie obszaru roboczego agenta…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Ładowanie dostawców sztucznej inteligencji. Spróbuj ponownie za chwil #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Ładowanie dostawców..." +msgid "Loading providers…" +msgstr "Ładowanie dostawców…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Wczytywanie CV..." +msgid "Loading resumes…" +msgstr "Ładowanie wznowień…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Ładowanie wątków..." +msgid "Loading threads…" +msgstr "Ładowanie wątków…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Ładowanie..." +msgid "Loading…" +msgstr "Ładowanie…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "Oczekująca poprawka" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Poprawka cofnięta" +msgid "Patch rolled back" +msgstr "Poprawka wycofana" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "Poprawka wycofana." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Proszę wesprzeć projekt" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Poczekaj, aż Twój plik PDF zostanie wygenerowany..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Proszę czekać, trwa generowanie pliku PDF…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polski" @@ -2724,6 +2726,14 @@ msgstr "Resetowanie hasła..." msgid "Resources" msgstr "Zasoby" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Przywrócić" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Przywrócić stan sprzed tej poprawki? Spowoduje to wycofanie tej poprawki i wszystkich poprawek zastosowanych po niej." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Wznawiać" @@ -2752,10 +2762,6 @@ msgstr "CV" msgid "Retry" msgstr "Spróbować ponownie" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Odwracać" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Porównaj CV z opisem stanowiska pracy i zadaj mi pytania, zanim zmienisz niejasne sekcje." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Wyszukaj ikonę" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Szukaj CV..." +msgid "Search for…" +msgstr "Wyszukaj…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Szukaj..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Szukaj…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Sekret skopiowany do schowka." @@ -3558,8 +3567,8 @@ msgstr "Wpisz \"{CONFIRMATION_TEXT}\", aby potwierdzić" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Wpisz polecenie lub wyszukaj..." +msgid "Type a command or search…" +msgstr "Wpisz polecenie lub wyszukaj…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Proszę przesłać zdjęcie" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Wysyłanie zdjęcia..." +msgid "Uploading picture…" +msgstr "Przesyłanie obrazu…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Zweryfikuj za pomocą kodu zapasowego" msgid "Verifying backup code..." msgstr "Weryfikowanie kodu zapasowego..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Weryfikowanie kodu..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Kod weryfikacyjny…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Weryfikowanie hasła..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Praca OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Pracujący..." +msgid "Working…" +msgstr "Praca…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/pt-BR.po b/apps/web/locales/pt-BR.po index d30a63a45..bfdb3483c 100644 --- a/apps/web/locales/pt-BR.po +++ b/apps/web/locales/pt-BR.po @@ -8,7 +8,7 @@ msgstr "" "Language: pt\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analisar o currículo" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analisando..." +msgid "Analyzing…" +msgstr "Analisando…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Cancelar" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Não é possível reverter; o currículo foi alterado desde que esta edição foi aplicada." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Não é possível restaurar; o currículo foi alterado desde que esta edição foi aplicada." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Mudar idioma" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Mudar idioma para..." +msgid "Change language to…" +msgstr "Alterar idioma para…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Mudar tema para..." +msgid "Change theme to…" +msgstr "Alterar tema para…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Não foi possível acessar o provedor de IA. Por favor, tente novamente." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Não foi possível reverter esta alteração." +msgid "Could not restore this patch." +msgstr "Não foi possível restaurar este patch." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Ativando proteção por senha..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Ativando a autenticação de dois fatores..." +msgid "Enabling two-factor authentication…" +msgstr "Habilitar a autenticação de dois fatores…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Ir para o painel de currículos" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Ir para..." +msgid "Go to…" +msgstr "Acesse…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importando seu currículo..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importando..." +msgid "Importing…" +msgstr "Importando…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Idioma" msgid "Languages" msgstr "Idiomas" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Última análise em {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Última análise em {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituano" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Carregando o espaço de trabalho do agente..." +msgid "Loading agent workspace…" +msgstr "Carregando espaço de trabalho do agente…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Carregando provedores de IA. Tente novamente em instantes." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Carregando provedores..." +msgid "Loading providers…" +msgstr "Carregando provedores…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Carregando currículos..." +msgid "Loading resumes…" +msgstr "Carregando retomadas…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Carregando tópicos..." +msgid "Loading threads…" +msgstr "Carregando threads…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Carregando..." +msgid "Loading…" +msgstr "Carregando…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "Atualização pendente" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patch revertido" +msgid "Patch rolled back" +msgstr "Remendo revertido" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "A atualização foi revertida." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Por favor, apoie o projeto." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Aguarde enquanto seu PDF está sendo gerado..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Aguarde enquanto seu PDF é gerado…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polonês" @@ -2724,6 +2726,14 @@ msgstr "Redefinindo a sua senha..." msgid "Resources" msgstr "Recursos" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restaurar" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Restaurar o progresso para antes desta atualização? Isso reverterá esta atualização e quaisquer atualizações aplicadas posteriormente." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Retomar" @@ -2752,10 +2762,6 @@ msgstr "Currículos" msgid "Retry" msgstr "Tentar novamente" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Reverter" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Analise o currículo comparando-o com a descrição da vaga e tire suas dúvidas antes de alterar qualquer informação que você não tenha certeza." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Pesquisar um ícone" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Pesquisar por…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Pesquisar..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Pesquisar..." +msgid "Search…" +msgstr "Pesquisar…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Digite \"{CONFIRMATION_TEXT}\" para confirmar" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Digite um comando ou pesquise..." +msgid "Type a command or search…" +msgstr "Digite um comando ou pesquise…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Carregar imagem" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Enviando foto..." +msgid "Uploading picture…" +msgstr "Carregando imagem…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verificar com um código de backup" msgid "Verifying backup code..." msgstr "Verificando código de backup..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verificando código..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verificando código…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verificando senha..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Trabalho OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Trabalhando..." +msgid "Working…" +msgstr "Trabalhando…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/pt-PT.po b/apps/web/locales/pt-PT.po index ac77a57c5..dd17bfc4f 100644 --- a/apps/web/locales/pt-PT.po +++ b/apps/web/locales/pt-PT.po @@ -8,7 +8,7 @@ msgstr "" "Language: pt\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Portuguese\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analisar o currículo" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analisar..." +msgid "Analyzing…" +msgstr "Analisando…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Cancelar" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Não é possível reverter; o currículo foi alterado desde que esta edição foi aplicada." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Não é possível restaurar; o currículo foi alterado desde que esta edição foi aplicada." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Mudar idioma" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Mudar idioma para..." +msgid "Change language to…" +msgstr "Alterar idioma para…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Mudar tema para..." +msgid "Change theme to…" +msgstr "Alterar tema para…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Não foi possível contactar o fornecedor de IA. Por favor, tente novamente." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Não foi possível reverter esta alteração." +msgid "Could not restore this patch." +msgstr "Não foi possível restaurar este patch." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "A ativar a proteção por senha..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "A ativar a autenticação de dois factores..." +msgid "Enabling two-factor authentication…" +msgstr "Ativar a autenticação de dois fatores…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Aceda ao painel de controlo dos currículos" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Ir para..." +msgid "Go to…" +msgstr "Aceda a…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "A importar o seu currículo..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "A importar..." +msgid "Importing…" +msgstr "Importando…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Idioma" msgid "Languages" msgstr "Idiomas" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Última análise em {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Última análise em {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituano" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Carregamento do espaço de trabalho do agente..." +msgid "Loading agent workspace…" +msgstr "Carregando espaço de trabalho do agente…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Carregando fornecedores de IA. Tente novamente dentro de instantes." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Fornecedores de carregamento..." +msgid "Loading providers…" +msgstr "Carregando fornecedores…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "A carregar currículos..." +msgid "Loading resumes…" +msgstr "A carregar retomas…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "A carregar tópicos..." +msgid "Loading threads…" +msgstr "A carregar threads…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "A carregar..." +msgid "Loading…" +msgstr "Carregando…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "Atualização pendente" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patch revertido" +msgid "Patch rolled back" +msgstr "Remendo revertido" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "A atualização foi revertida." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Por favor, apoie o projeto." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Aguarde enquanto o seu PDF está a ser gerado..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Aguarde enquanto o seu PDF é gerado…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polaco" @@ -2724,6 +2726,14 @@ msgstr "A repor a sua senha..." msgid "Resources" msgstr "Recursos" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restaurar" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Restaurar o progresso para antes desta atualização? Isto reverterá esta atualização e quaisquer atualizações aplicadas posteriormente." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Retomar" @@ -2752,10 +2762,6 @@ msgstr "Currículos" msgid "Retry" msgstr "Tentar novamente" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Reverter" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Analise o currículo comparando-o com a descrição da função e tire as suas dúvidas antes de alterar qualquer informação que não tenha a certeza." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Pesquise por um ícone" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Procurar..." +msgid "Search for…" +msgstr "Pesquisar por…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Pesquisar..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Pesquisar…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Segredo copiado para a área de transferência." @@ -3558,8 +3567,8 @@ msgstr "Escreva \"{CONFIRMATION_TEXT}\" para confirmar" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Escreva um comando ou pesquise..." +msgid "Type a command or search…" +msgstr "Introduza um comando ou pesquise…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Carregar imagem" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "A carregar foto..." +msgid "Uploading picture…" +msgstr "A carregar imagem…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verificar com um código de backup" msgid "Verifying backup code..." msgstr "A verificar código de backup..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "A verificar código..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "A verificar código…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "A verificar senha..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Trabalho OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Trabalho..." +msgid "Working…" +msgstr "Trabalhar…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ro-RO.po b/apps/web/locales/ro-RO.po index d873c3c82..1ee529d46 100644 --- a/apps/web/locales/ro-RO.po +++ b/apps/web/locales/ro-RO.po @@ -8,7 +8,7 @@ msgstr "" "Language: ro\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analizați CV-ul" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analizând..." +msgid "Analyzing…" +msgstr "Analizând…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Anulează" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Nu se poate reveni la versiunea inițială; CV-ul s-a modificat de când a fost aplicată această modificare." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Nu se poate restaura; CV-ul s-a modificat de când a fost aplicată această modificare." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Schimbă limba" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Schimbați limba în..." +msgid "Change language to…" +msgstr "Schimbați limba la…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Schimbați tema în..." +msgid "Change theme to…" +msgstr "Schimbă tema la…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nu s-a putut ajunge la furnizorul AI. Vă rugăm să încercați din nou." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Nu s-a putut reveni la această modificare." +msgid "Could not restore this patch." +msgstr "Nu s-a putut restaura acest patch." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Se activează protecția prin parolă..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Se activează autentificarea cu doi factori..." +msgid "Enabling two-factor authentication…" +msgstr "Activarea autentificării cu doi factori…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Mergeți la tabloul de bord al CV-urilor" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Mergi la..." +msgid "Go to…" +msgstr "Accesați…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Se importă CV-ul..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Se importă..." +msgid "Importing…" +msgstr "Importarea…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Limbă" msgid "Languages" msgstr "Limbi" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Ultima analiză pe {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Ultima analiză efectuată pe {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituaniană" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Se încarcă spațiul de lucru al agentului..." +msgid "Loading agent workspace…" +msgstr "Încărcarea spațiului de lucru al agentului…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Se încarcă furnizorii de inteligență artificială. Vă rugăm să î #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Se încarcă furnizorii..." +msgid "Loading providers…" +msgstr "Se încarcă furnizorii…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Se încarcă CV-urile..." +msgid "Loading resumes…" +msgstr "Se încarcă CV-urile…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Se încarcă firele de discuție..." +msgid "Loading threads…" +msgstr "Se încarcă firele de discuție…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Se încarcă..." +msgid "Loading…" +msgstr "Se încarcă…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Patch în așteptare" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "Patch-ul a fost anulat" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Patch-ul a fost anulat." +msgid "Patch rolled back." +msgstr "Patch-ul a fost retras." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Vă rugăm să susțineți proiectul" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Vă rugăm să așteptați în timp ce se generează PDF-ul..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Vă rugăm să așteptați în timp ce se generează PDF-ul…" + #: src/libs/locale.ts msgid "Polish" msgstr "Poloneză" @@ -2724,6 +2726,14 @@ msgstr "Se resetează parola..." msgid "Resources" msgstr "Resurse" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Restabili" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Restaurați CV-ul la starea anterioară acestui patch? Această acțiune va anula acest patch și orice patch-uri aplicate după acesta." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Relua" @@ -2752,10 +2762,6 @@ msgstr "CV-uri" msgid "Retry" msgstr "Reîncercați" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Reveni" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Verifică CV-ul în raport cu fișa postului și pune-mi întrebări înainte de a modifica secțiunile incerte." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Căutați o iconiță" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Căutați..." +msgid "Search for…" +msgstr "Căutați…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Caută..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Căutare…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Secret copiat în clipboard." @@ -3558,8 +3567,8 @@ msgstr "Tastați \"{CONFIRMATION_TEXT}\" pentru a confirma" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Tastați o comandă sau căutați..." +msgid "Type a command or search…" +msgstr "Tastați o comandă sau căutați…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Încărcați imaginea" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Se încarcă imaginea..." +msgid "Uploading picture…" +msgstr "Se încarcă imaginea…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verificare cu un cod de rezervă" msgid "Verifying backup code..." msgstr "Se verifică codul de rezervă..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Se verifică codul..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verificarea codului…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Se verifică parola..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Lucrează cu OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Lucru..." +msgid "Working…" +msgstr "Lucrând…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ru-RU.po b/apps/web/locales/ru-RU.po index 73f74df15..7f8440c7a 100644 --- a/apps/web/locales/ru-RU.po +++ b/apps/web/locales/ru-RU.po @@ -8,7 +8,7 @@ msgstr "" "Language: ru\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Russian\n" "Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Проанализируйте резюме" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Анализируйте..." +msgid "Analyzing…" +msgstr "Анализ…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Отмена" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Отменить изменения невозможно; резюме изменилось с момента внесения этих правок." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Восстановить невозможно; резюме изменилось с момента внесения этих изменений." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Изменить язык" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Изменить язык на..." +msgid "Change language to…" +msgstr "Изменить язык на…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Изменить тему на..." +msgid "Change theme to…" +msgstr "Изменить тему на…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Не удалось связаться с провайдером AI. Пожалуйста, попробуйте еще раз." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Не удалось отменить это обновление." +msgid "Could not restore this patch." +msgstr "Восстановить этот патч не удалось." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Включение защиты паролем..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Включение двухфакторной аутентификации..." +msgid "Enabling two-factor authentication…" +msgstr "Включение двухфакторной аутентификации…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Перейдите на панель резюме" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Перейти к..." +msgid "Go to…" +msgstr "Перейти к…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Импорт вашего резюме..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Импорт..." +msgid "Importing…" +msgstr "Импорт…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Язык" msgid "Languages" msgstr "Языки" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Последний анализ на {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Последний анализ был проведен {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Литовский" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Рабочая область агента загрузки..." +msgid "Loading agent workspace…" +msgstr "Рабочая область агента загрузки…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Загрузка поставщиков ИИ. Пожалуйста, по #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Загрузка поставщиков..." +msgid "Loading providers…" +msgstr "Загрузка поставщиков…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Загрузка резюме..." +msgid "Loading resumes…" +msgstr "Загрузка возобновляется…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Загрузка тем..." +msgid "Loading threads…" +msgstr "Загрузка потоков…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Загрузка..." +msgid "Loading…" +msgstr "Загрузка…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Ожидается обновление." #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Патч отменен" +msgid "Patch rolled back" +msgstr "Обновление отменено" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Патч отменен." +msgid "Patch rolled back." +msgstr "Обновление откачано." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Пожалуйста, поддержите проект." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Подождите, пока создается ваш PDF..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Пожалуйста, подождите, пока генерируется ваш PDF-файл…" + #: src/libs/locale.ts msgid "Polish" msgstr "Польский" @@ -2724,6 +2726,14 @@ msgstr "Сброс пароля..." msgid "Resources" msgstr "Ресурсы" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Восстановить" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Восстановить состояние до установки этого обновления? Это отменит данное обновление и все обновления, установленные после него." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Резюме" @@ -2752,10 +2762,6 @@ msgstr "Резюме" msgid "Retry" msgstr "Повторить попытку" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Возвращаться" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Сравните резюме с описанием вакансии и задайте мне вопросы, прежде чем вносить изменения в непонятные разделы." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Поиск иконки" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Поиск…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Поиск..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Поиск..." +msgid "Search…" +msgstr "Поиск…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Введите «{CONFIRMATION_TEXT}» для подтверждения #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Введите команду или запрос..." +msgid "Type a command or search…" +msgstr "Введите команду или выполните поиск…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Загрузите картинку" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Загрузка фотографии..." +msgid "Uploading picture…" +msgstr "Загрузка изображения…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Подтвердить с помощью резервного кода" msgid "Verifying backup code..." msgstr "Проверка резервного кода..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Проверка кода..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Проверка кода…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Проверка пароля..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Работа в OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Работающий..." +msgid "Working…" +msgstr "Работает…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/sk-SK.po b/apps/web/locales/sk-SK.po index df963c29f..d7055749f 100644 --- a/apps/web/locales/sk-SK.po +++ b/apps/web/locales/sk-SK.po @@ -8,7 +8,7 @@ msgstr "" "Language: sk\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Slovak\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analyzovať životopis" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analýza..." +msgid "Analyzing…" +msgstr "Analýza…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Zrušiť" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Nedá sa vrátiť späť; životopis sa od použitia tejto úpravy zmenil." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Nedá sa obnoviť; životopis sa od vykonania tejto úpravy zmenil." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Zmeniť jazyk" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Zmeniť jazyk na..." +msgid "Change language to…" +msgstr "Zmeniť jazyk na…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Zmeniť tému na..." +msgid "Change theme to…" +msgstr "Zmeniť tému na…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nepodarilo sa spojiť s poskytovateľom AI. Skúste to prosím znova." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Túto opravu sa nepodarilo vrátiť späť." +msgid "Could not restore this patch." +msgstr "Túto záplatu sa nepodarilo obnoviť." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Zapínam ochranu heslom..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Zapínam dvojfaktorové overenie..." +msgid "Enabling two-factor authentication…" +msgstr "Povolenie dvojfaktorového overenia…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Prejsť na ovládací panel životopisov" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Prejsť na..." +msgid "Go to…" +msgstr "Prejsť na…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importujem tvoj životopis..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importujem..." +msgid "Importing…" +msgstr "Importuje sa…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Jazyk" msgid "Languages" msgstr "Jazyky" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Naposledy analyzované na {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Naposledy analyzované dňa {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litovčina" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Načítava sa pracovný priestor agenta..." +msgid "Loading agent workspace…" +msgstr "Načítava sa pracovný priestor agenta…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Načítavajú sa poskytovatelia umelej inteligencie. Skúste to znova o #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Načítavajú sa poskytovatelia..." +msgid "Loading providers…" +msgstr "Načítavajú sa poskytovatelia…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Načítavam životopisy..." +msgid "Loading resumes…" +msgstr "Načítavajú sa životopisy…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Načítavajú sa vlákna..." +msgid "Loading threads…" +msgstr "Načítavajú sa vlákna…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Načítava sa..." +msgid "Loading…" +msgstr "Načítava sa…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Čaká sa na opravu" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Oprava vrátená späť" +msgid "Patch rolled back" +msgstr "Záplata vrátená späť" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Oprava vrátená späť." +msgid "Patch rolled back." +msgstr "Záplata bola vrátená späť." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Prosím, podporte projekt" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Počkaj, prosím, kým sa tvoje PDF vygeneruje..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Počkajte, prosím, kým sa vygeneruje váš PDF súbor…" + #: src/libs/locale.ts msgid "Polish" msgstr "Poľština" @@ -2724,6 +2726,14 @@ msgstr "Obnovujem tvoje heslo..." msgid "Resources" msgstr "Zdroje" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Obnoviť" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Obnoviť životopis do stavu pred touto opravou? Táto akcia vráti späť túto opravu a všetky opravy použité po nej." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Životopis" @@ -2752,10 +2762,6 @@ msgstr "Životopisy" msgid "Retry" msgstr "Skúsiť znova" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Vrátiť späť" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Pred zmenou nejasných častí si skontrolujte životopis v porovnaní s popisom práce a položte mi otázky." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Hľadať ikonu" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Hľadať…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Hľadať..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Hľadať..." +msgid "Search…" +msgstr "Hľadať…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Napíš \"{CONFIRMATION_TEXT}\" na potvrdenie" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Napíš príkaz alebo hľadaj..." +msgid "Type a command or search…" +msgstr "Zadajte príkaz alebo vyhľadajte…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Nahrať obrázok" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Nahrávam fotografiu..." +msgid "Uploading picture…" +msgstr "Nahráva sa obrázok…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Overiť pomocou záložného kódu" msgid "Verifying backup code..." msgstr "Overujem záložný kód..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Overujem kód..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Overovací kód…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Overujem heslo..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Práca s OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Pracuje sa..." +msgid "Working…" +msgstr "Funguje…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/sl-SI.po b/apps/web/locales/sl-SI.po index 30c8f7694..050113c39 100644 --- a/apps/web/locales/sl-SI.po +++ b/apps/web/locales/sl-SI.po @@ -8,7 +8,7 @@ msgstr "" "Language: sl\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analizirajte življenjepis" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analiza..." +msgid "Analyzing…" +msgstr "Analiziranje…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Prekliči" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Ni mogoče razveljaviti; življenjepis se je od uveljavitve te spremembe spremenil." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Ni mogoče obnoviti; življenjepis se je od uveljavitve te spremembe spremenil." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Spremeni jezik" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Spremeni jezik v..." +msgid "Change language to…" +msgstr "Spremeni jezik v…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Spremeni temo v..." +msgid "Change theme to…" +msgstr "Spremeni temo v…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Ponudnika AI ni bilo mogoče doseči. Poskusite znova." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Tega popravka ni bilo mogoče razveljaviti." +msgid "Could not restore this patch." +msgstr "Tega popravka ni bilo mogoče obnoviti." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Omogočanje zaščite z geslom..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Omogočanje dvostopenjskega preverjanja pristnosti..." +msgid "Enabling two-factor authentication…" +msgstr "Omogočanje dvofaktorske avtentikacije…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Pojdite na nadzorno ploščo z življenjepisi" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Pojdi na..." +msgid "Go to…" +msgstr "Pojdi na…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Uvažanje vašega življenjepisa..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Uvažanje..." +msgid "Importing…" +msgstr "Uvažanje…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Jezik" msgid "Languages" msgstr "Jeziki" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Nazadnje analizirano na {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Nazadnje analizirano dne {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litovščina" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Nalaganje delovnega prostora agenta ..." +msgid "Loading agent workspace…" +msgstr "Nalaganje delovnega prostora agenta…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Nalaganje ponudnikov umetne inteligence. Poskusite znova čez trenutek." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Nalaganje ponudnikov ..." +msgid "Loading providers…" +msgstr "Nalaganje ponudnikov…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Nalaganje življenjepisov..." +msgid "Loading resumes…" +msgstr "Nalaganje življenjepisov…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Nalaganje niti ..." +msgid "Loading threads…" +msgstr "Nalaganje niti…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Nalaganje..." +msgid "Loading…" +msgstr "Nalaganje…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Popravek čaka na posodobitev" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Popravek je bil razveljavljen" +msgid "Patch rolled back" +msgstr "Popravek je bil povrnjen" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Popravek je bil razveljavljen." +msgid "Patch rolled back." +msgstr "Popravek je bil odpravljen." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Prosim, podprite projekt" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Prosimo, počakajte, medtem ko se vaš PDF generira ..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Počakajte, medtem ko se vaš PDF ustvarja…" + #: src/libs/locale.ts msgid "Polish" msgstr "poljščina" @@ -2724,6 +2726,14 @@ msgstr "Ponastavljanje gesla..." msgid "Resources" msgstr "Viri" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Obnovi" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Želite obnoviti življenjepis na stanje pred tem popravkom? S tem boste povrnili ta popravek in vse popravke, ki so bili uporabljeni po njem." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Življenjepis" @@ -2752,10 +2762,6 @@ msgstr "Življenjepisi" msgid "Retry" msgstr "Poskusi znova" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Razveljavi" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Preden spremenite negotove dele, preglejte življenjepis glede na opis delovnega mesta in mi postavite vprašanja." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Poišči ikono" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Išči…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Iskanje ..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Iskanje ..." +msgid "Search…" +msgstr "Iskanje…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Vnesite \"{CONFIRMATION_TEXT}\" za potrditev" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Vnesite ukaz ali iskanje..." +msgid "Type a command or search…" +msgstr "Vnesite ukaz ali poiščite…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Naloži sliko" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Nalaganje slike..." +msgid "Uploading picture…" +msgstr "Nalaganje slike…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Preveri z rezervno kodo" msgid "Verifying backup code..." msgstr "Preverjanje rezervne kode..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Preverjanje kode..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Potrditvena koda…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Preverjanje gesla..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Delo na OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Delo ..." +msgid "Working…" +msgstr "Deluje…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/sq-AL.po b/apps/web/locales/sq-AL.po index 9001acf55..89c9d0e4e 100644 --- a/apps/web/locales/sq-AL.po +++ b/apps/web/locales/sq-AL.po @@ -8,7 +8,7 @@ msgstr "" "Language: sq\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Albanian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analizo CV-në" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Po analizon..." +msgid "Analyzing…" +msgstr "Duke analizuar…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,7 +584,7 @@ msgid "Cancel" msgstr "Anulo" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." +msgid "Cannot restore; the resume has changed since this edit was applied." msgstr "Nuk mund të rikthehet; CV-ja ka ndryshuar që kur është aplikuar ky ndryshim." #: src/libs/locale.ts @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Ndrysho gjuhën" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Ndrysho gjuhën në..." +msgid "Change language to…" +msgstr "Ndrysho gjuhën në…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Ndrysho temën në..." +msgid "Change theme to…" +msgstr "Ndrysho temën në…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Nuk mund të lidhemi me ofruesin e inteligjencës artificiale. Ju lutemi provoni përsëri." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Nuk mund ta riktheja këtë patch." +msgid "Could not restore this patch." +msgstr "Nuk mundi ta rikthente këtë patch." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Po aktivizohet mbrojtja me fjalëkalim..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Po aktivizohet vërtetimi me dy faktorë..." +msgid "Enabling two-factor authentication…" +msgstr "Aktivizimi i vërtetimit me dy faktorë…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Shko te paneli i rezumëve" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Shko te..." +msgid "Go to…" +msgstr "Shko te…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Po importohet CV-ja juaj..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Po importohet..." +msgid "Importing…" +msgstr "Duke importuar…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Gjuha" msgid "Languages" msgstr "Gjuhët" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Analizuar së fundmi më {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Analizuar për herë të fundit më {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Lituanisht" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Duke ngarkuar hapësirën e punës së agjentit..." +msgid "Loading agent workspace…" +msgstr "Duke ngarkuar hapësirën e punës së agjentit…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Duke ngarkuar ofruesit e inteligjencës artificiale. Ju lutemi provoni p #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Duke ngarkuar ofruesit..." +msgid "Loading providers…" +msgstr "Duke ngarkuar ofruesit…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Po ngarkohen CV-të..." +msgid "Loading resumes…" +msgstr "Duke ngarkuar CV-të…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Duke ngarkuar fijet..." +msgid "Loading threads…" +msgstr "Duke ngarkuar fijet…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Po ngarkohet..." +msgid "Loading…" +msgstr "Duke u ngarkuar…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "Patch në pritje" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patch u rikthye" +msgid "Patch rolled back" +msgstr "Patch u hoq përsëri" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "Patch u rikthye." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Ju lutemi mbështesni projektin" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Ju lutemi prisni ndërkohë që po gjenerohet PDF-ja juaj..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Ju lutemi prisni ndërsa PDF-ja juaj po gjenerohet…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polonisht" @@ -2724,6 +2726,14 @@ msgstr "Po rivendoset fjalëkalimi juaj..." msgid "Resources" msgstr "Burime" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Rivendos" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Të rikthehet CV-ja në gjendjen para këtij përditësimi? Kjo do ta anulojë këtë përditësim dhe çdo përditësim të aplikuar pas tij." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Rezyme" @@ -2752,10 +2762,6 @@ msgstr "CV-të" msgid "Retry" msgstr "Riprovo" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Rikthe" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Rishikoni CV-në tuaj me një përshkrim pune dhe më bëni pyetje përpara se të ndryshoni seksionet e pasigurta." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Kërkoni një ikonë" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Kërko për..." +msgid "Search for…" +msgstr "Kërko për…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Kërko..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Kërko…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Sekreti u kopjua në clipboard." @@ -3558,8 +3567,8 @@ msgstr "Shkruani \"{CONFIRMATION_TEXT}\" për të konfirmuar" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Shkruani një komandë ose kërkoni..." +msgid "Type a command or search…" +msgstr "Shkruani një komandë ose kërkoni…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Ngarko foton" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Po ngarkohet foto..." +msgid "Uploading picture…" +msgstr "Duke ngarkuar foton…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifiko me një kod rezervë" msgid "Verifying backup code..." msgstr "Po verifikohet kodi rezervë..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Po verifikohet kodi..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Duke verifikuar kodin…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Po verifikohet fjalëkalimi..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Punoni OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Duke punuar..." +msgid "Working…" +msgstr "Duke punuar…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/sr-SP.po b/apps/web/locales/sr-SP.po index 966701123..08901a438 100644 --- a/apps/web/locales/sr-SP.po +++ b/apps/web/locales/sr-SP.po @@ -8,7 +8,7 @@ msgstr "" "Language: sr\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Serbian (Cyrillic)\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Анализирај резиме" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Анализирање..." +msgid "Analyzing…" +msgstr "Анализирање…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Откажи" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Не може се вратити; резиме се променио откако је ова измена примењена." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Није могуће вратити; резиме се променио откако је ова измена примењена." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Промени језик" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Промени језик у..." +msgid "Change language to…" +msgstr "Промени језик у…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Промени тему у..." +msgid "Change theme to…" +msgstr "Промени тему у…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,7 +793,7 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Није могуће успоставити везу са пружаоцем АИ услуга. Молимо покушајте поново." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." +msgid "Could not restore this patch." msgstr "Није могуће вратити ову закрпу." #: src/features/settings/integrations/components/ai-section.tsx @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Омогућавање заштите лозинком..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Омогућавање двофакторске аутентификације..." +msgid "Enabling two-factor authentication…" +msgstr "Омогућавање двофакторске аутентификације…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Идите на контролну таблу резимеа" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Иди на..." +msgid "Go to…" +msgstr "Иди на…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Увоз вашег резимеа..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Увоз..." +msgid "Importing…" +msgstr "Увоз…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Језик" msgid "Languages" msgstr "Језици" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Последњи пут анализирано {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Последња анализа {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Литвански" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Учитавање радног простора агента..." +msgid "Loading agent workspace…" +msgstr "Учитавање радног простора агента…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Учитавање добављача вештачке интелиге #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Учитавање добављача..." +msgid "Loading providers…" +msgstr "Учитавање добављача…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Учитавање резимеа..." +msgid "Loading resumes…" +msgstr "Учитавање биографија…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Учитавање тема..." +msgid "Loading threads…" +msgstr "Учитавање тема…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Учитавање..." +msgid "Loading…" +msgstr "Учитавање…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Закрпа је на чекању" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "Закрпа враћена" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Закрпа је враћена." +msgid "Patch rolled back." +msgstr "Закрпа је враћена уназад." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Молимо вас да подржите пројекат" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Сачекајте док се ваш PDF генерише..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Молимо сачекајте док се ваш PDF генерише…" + #: src/libs/locale.ts msgid "Polish" msgstr "Пољски" @@ -2724,6 +2726,14 @@ msgstr "Ресетовање ваше лозинке..." msgid "Resources" msgstr "Ресурси" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Врати" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Врати животопис на стање пре ове закрпе? Ово ће вратити ову закрпу и све закрпе примењене након ње." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Резиме" @@ -2752,10 +2762,6 @@ msgstr "Резимеи" msgid "Retry" msgstr "Покушај поново" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Врати" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Упоредите биографију са описом посла и поставите ми питања пре него што измените несигурне делове." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Претражите иконицу" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Претражи резимее..." +msgid "Search for…" +msgstr "Претражи…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Претрага..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Претрага…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Тајна је копирана у привремену меморију." @@ -3558,8 +3567,8 @@ msgstr "Укуцајте \"{CONFIRMATION_TEXT}\" да потврдите" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Укуцајте команду или претражујте..." +msgid "Type a command or search…" +msgstr "Унесите команду или претражите…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Отпреми фотографију" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Отпремање слике..." +msgid "Uploading picture…" +msgstr "Отпремање слике…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Верификуј резервним кôдом" msgid "Verifying backup code..." msgstr "Верификовање резервног кôда..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Верификовање кôда..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Верификациони код…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Провера лозинке..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Радите на OpenAI-у" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Ради се..." +msgid "Working…" +msgstr "Ради…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/sv-SE.po b/apps/web/locales/sv-SE.po index dee8ed275..a3d06f78e 100644 --- a/apps/web/locales/sv-SE.po +++ b/apps/web/locales/sv-SE.po @@ -8,7 +8,7 @@ msgstr "" "Language: sv\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Analysera meritförteckningen" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analyserar..." +msgid "Analyzing…" +msgstr "Analyserar…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Avbryt" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Kan inte återställas; CV:t har ändrats sedan den här redigeringen gjordes." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Det går inte att återställa; CV:t har ändrats sedan den här redigeringen gjordes." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Byt språk" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Ändra språk till..." +msgid "Change language to…" +msgstr "Ändra språk till…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Ändra tema till..." +msgid "Change theme to…" +msgstr "Ändra tema till…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,7 +793,7 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Det gick inte att nå AI-leverantören. Vänligen försök igen." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." +msgid "Could not restore this patch." msgstr "Kunde inte återställa den här patchen." #: src/features/settings/integrations/components/ai-section.tsx @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Aktiverar lösenordsskydd..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Aktiverar tvåfaktorsautentisering..." +msgid "Enabling two-factor authentication…" +msgstr "Aktivera tvåfaktorsautentisering…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Gå till kontrollpanelen för CV" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Gå till..." +msgid "Go to…" +msgstr "Gå till…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Importerar ditt CV..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Importerar..." +msgid "Importing…" +msgstr "Importerar…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Språk" msgid "Languages" msgstr "Språk" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Senast analyserad på {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Senast analyserad {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litauiska" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Laddar agentens arbetsyta..." +msgid "Loading agent workspace…" +msgstr "Laddar agentarbetsyta…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Laddar AI-leverantörer. Försök igen om en stund." #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Laddar leverantörer..." +msgid "Loading providers…" +msgstr "Laddar leverantörer…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Laddar CV:n..." +msgid "Loading resumes…" +msgstr "Läser in CV…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Laddar trådar..." +msgid "Loading threads…" +msgstr "Laddar trådar…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Laddar..." +msgid "Loading…" +msgstr "Laddar…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Väntar på patch" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Patchen återställd" +msgid "Patch rolled back" +msgstr "Patchen rullades tillbaka" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Patchen återställd." +msgid "Patch rolled back." +msgstr "Patchen har rullats tillbaka." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Stöd projektet" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Vänta medan din PDF genereras..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Vänta medan din PDF genereras…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polska" @@ -2724,6 +2726,14 @@ msgstr "Återställer ditt lösenord..." msgid "Resources" msgstr "Resurser" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Återställa" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Återställa CV:t till före den här patchen? Detta kommer att återställa den här patchen och alla patchar som installerats efter den." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Resume" @@ -2752,10 +2762,6 @@ msgstr "CV" msgid "Retry" msgstr "Försöka igen" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Återgå" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Granska CV:t mot en arbetsbeskrivning och ställ frågor till mig innan du ändrar osäkra avsnitt." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Sök efter en ikon" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Sök efter..." +msgid "Search for…" +msgstr "Sök efter…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Sök..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "Sök…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Hemligheten kopierades till urklipp." @@ -3558,8 +3567,8 @@ msgstr "Skriv \"{CONFIRMATION_TEXT}\" för att bekräfta" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Skriv ett kommando eller sök..." +msgid "Type a command or search…" +msgstr "Skriv ett kommando eller sök…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Ladda upp bild" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Laddar upp bild..." +msgid "Uploading picture…" +msgstr "Laddar upp bild…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Verifiera med en reservkod" msgid "Verifying backup code..." msgstr "Verifierar reservkod..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Verifierar kod..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Verifierar kod…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Verifierar lösenord..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Arbeta med OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Arbetssätt..." +msgid "Working…" +msgstr "Arbetar…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/ta-IN.po b/apps/web/locales/ta-IN.po index 6d0c8656f..6a185dea3 100644 --- a/apps/web/locales/ta-IN.po +++ b/apps/web/locales/ta-IN.po @@ -8,7 +8,7 @@ msgstr "" "Language: ta\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Tamil\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "வாழ்க்கை வரலாற்றைப் பகுப்பாய்வு செய்யுங்கள்" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "பகுப்பாய்வு..." +msgid "Analyzing…" +msgstr "பகுப்பாய்வு…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "ரத்து செய்" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "பழைய நிலைக்குத் திரும்ப முடியாது; இந்தத் திருத்தம் செய்யப்பட்டதிலிருந்து சுயவிவரம் மாறிவிட்டது." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "மீட்டெடுக்க முடியாது; இந்தத் திருத்தம் செய்யப்பட்டதிலிருந்து சுயவிவரம் மாறிவிட்டது." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "மொழியை மாற்று" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "மொழியை மாற்ற..." +msgid "Change language to…" +msgstr "மொழியை… க்கு மாற்றவும்" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "தீமையை மாற்ற..." +msgid "Change theme to…" +msgstr "தீம்மை… க்கு மாற்றவும்" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI வழங்குநரை அடைய முடியவில்லை. மீண்டும் முயற்சிக்கவும்." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "இந்தத் திருத்தத்தை மீளப்பெற முடியவில்லை." +msgid "Could not restore this patch." +msgstr "இந்தத் திருத்தத்தை மீட்டெடுக்க முடியவில்லை." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "கடவுச்சொல் பாதுகாப்பை இயக்கிக் கொண்டிருக்கிறது..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "இரண்டு நிலை அங்கீகாரத்தை இயக்கிக் கொண்டிருக்கிறது..." +msgid "Enabling two-factor authentication…" +msgstr "இரு காரணி அங்கீகாரத்தை இயக்குதல்…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "விண்ணப்பங்கள் டாஷ்போர்டுக்குச் செல்லவும்" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "இதற்கு செல்லவும்..." +msgid "Go to…" +msgstr "… க்குச் செல்லவும்" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "உங்கள் ரெஸ்யூமியை இறக்குமதி செய்து கொண்டிருக்கிறது..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "இறக்குமதி செய்து கொண்டிருக்கிறது..." +msgid "Importing…" +msgstr "… இறக்குமதி செய்கிறது" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "மொழி" msgid "Languages" msgstr "மொழிகள்" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "கடைசியாகப் பகுப்பாய்வு செய்யப்பட்ட நாள் {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "{updatedAtLabel} இல் கடைசியாகப் பகுப்பாய்வு செய்யப்பட்டது" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "லிதுவேனியன்" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "முகவர் பணித்தளம் ஏற்றப்படுகிறது..." +msgid "Loading agent workspace…" +msgstr "முகவர் பணிவெளி… ஏற்றப்படுகிறது" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "செயற்கை நுண்ணறிவு வழங்குந #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "வழங்குநர்கள் ஏற்றப்படுகின்றனர்..." +msgid "Loading providers…" +msgstr "வழங்குநர்களை ஏற்றுகிறது…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "ரெஸ்யூமிகளை ஏற்றிக் கொண்டிருக்கிறது..." +msgid "Loading resumes…" +msgstr "ஏற்றுதல் மீண்டும் தொடங்குகிறது…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "இழைகள் ஏற்றப்படுகின்றன..." +msgid "Loading threads…" +msgstr "இழைகள் ஏற்றப்படுகின்றன…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "ஏற்றுகிறது..." +msgid "Loading…" +msgstr "ஏற்றப்படுகிறது…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "பேட்ச் நிலுவையில் உள்ளது" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "பேட்ச் மீட்கப்பட்டது" +msgid "Patch rolled back" +msgstr "பேட்ச் திரும்பப் பெறப்பட்டது" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "திருத்தம் மீட்கப்பட்டது." +msgid "Patch rolled back." +msgstr "பேட்ச் திரும்பப் பெறப்பட்டது." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "திட்டத்திற்கு ஆதரவளிக்கவும்" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "உங்கள் PDF உருவாக்கப்படும் வரை காத்திருக்கவும்..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "உங்கள் PDF உருவாக்கப்படும் வரை காத்திருக்கவும்…" + #: src/libs/locale.ts msgid "Polish" msgstr "போலிஷ்" @@ -2724,6 +2726,14 @@ msgstr "உங்கள் கடவுச்சொல்லை மீட்ட msgid "Resources" msgstr "வளங்கள்" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "மீட்டெடு" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "இந்தப் பேட்ச்சிற்கு முந்தைய நிலைக்கு மீட்டமைப்பதா? இது இந்தப் பேட்ச்சையும், இதற்குப் பிறகு செயல்படுத்தப்பட்ட பேட்ச்கள் அனைத்தையும் பின்னோக்கிச் செலுத்தும்." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "சுயவிவரம்" @@ -2752,10 +2762,6 @@ msgstr "ரெஸ்யூமிகள்" msgid "Retry" msgstr "மீண்டும் முயற்சிக்கவும்" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "பழைய நிலைக்குத் திரும்பு" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "பணி விவரத்துடன் சுயவிவரத்தை ஒப்பிட்டுப் பார்த்து, உறுதியற்ற பகுதிகளை மாற்றுவதற்கு முன் என்னிடம் கேள்விகளைக் கேளுங்கள்." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "ஒரு ஐகானைத் தேடுங்கள்" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "தேடுங்கள்..." +msgid "Search for…" +msgstr "… ஐத் தேடு" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "தேடு..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "தேடு…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "ரகசியம் கிளிப்போர்டுக்கு நகலெடுக்கப்பட்டுள்ளது." @@ -3558,8 +3567,8 @@ msgstr "\"{CONFIRMATION_TEXT}\" என்று தட்டச்சு செ #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "ஒரு கட்டளையை தட்டச்சு செய்யவும் அல்லது தேடவும்..." +msgid "Type a command or search…" +msgstr "ஒரு கட்டளையை உள்ளிடவும் அல்லது தேடவும்…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "படத்தைப் பதிவேற்றவும்" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "படத்தை பதிவேற்றிக் கொண்டிருக்கிறது..." +msgid "Uploading picture…" +msgstr "படம் பதிவேற்றப்படுகிறது…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ஒரு காப்பு குறியீட்டால் சர msgid "Verifying backup code..." msgstr "காப்பு குறியீட்டை சரிபார்த்து கொண்டிருக்கிறது..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "குறியீட்டை சரிபார்த்து கொண்டிருக்கிறது..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "சரிபார்க்கும் குறியீடு…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "கடவுச்சொல்லை சரிபார்த்து கொண்டிருக்கிறது..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI வேலை" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "வேலை நடக்கிறது..." +msgid "Working…" +msgstr "இயங்குகிறது…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/te-IN.po b/apps/web/locales/te-IN.po index f70c1a66e..8225239ab 100644 --- a/apps/web/locales/te-IN.po +++ b/apps/web/locales/te-IN.po @@ -8,7 +8,7 @@ msgstr "" "Language: te\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Telugu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "రిజ్యూమ్‌ను విశ్లేషించండి" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "విశ్లేషిస్తున్నాను..." +msgid "Analyzing…" +msgstr "…ను విశ్లేషించడం" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "రద్దు చేయండి" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "ఈ సవరణను వర్తింపజేసినప్పటి నుండి పునఃప్రారంభం మారిపోయింది కాబట్టి, వెనక్కి మార్చడం సాధ్యపడదు." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "పునరుద్ధరించడం సాధ్యం కాదు; ఈ సవరణను వర్తింపజేసినప్పటి నుండి పునఃప్రారంభం మారిపోయింది." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "భాషను మార్చు" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "భాష మార్చండి..." +msgid "Change language to…" +msgstr "భాషను… కు మార్చండి" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "థీమ్ మార్చండి..." +msgid "Change theme to…" +msgstr "థీమ్‌ను… కు మార్చండి" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI ప్రొవైడర్‌ను చేరుకోవడం సాధ్యపడలేదు. దయచేసి మళ్లీ ప్రయత్నించండి." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "ఈ ప్యాచ్‌ను వెనక్కి మార్చలేకపోయాను." +msgid "Could not restore this patch." +msgstr "ఈ ప్యాచ్‌ను పునరుద్ధరించలేకపోయాము." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "పాస్‌వర్డ్ రక్షణను ప్రారంభిస్తోంది..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "రెండు దశల ధృవీకరణను ప్రారంభిస్తోంది..." +msgid "Enabling two-factor authentication…" +msgstr "రెండు-కారకాల ప్రమాణీకరణను ప్రారంభించడం…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "రిజ్యూమ్స్ డాష్‌బోర్డ్‌కు వెళ్ళండి" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "కి వెళ్ళండి..." +msgid "Go to…" +msgstr "…కు వెళ్ళండి" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "మీ రిజ్యూమ్‌ను ఇంపోర్ట్ చేస్తూ..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "ఇంపోర్ట్ చేస్తోంది..." +msgid "Importing…" +msgstr "… దిగుమతి అవుతోంది" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "భాష" msgid "Languages" msgstr "భాషలు" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "చివరిగా విశ్లేషించినది {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "{updatedAtLabel} న చివరిగా విశ్లేషించబడింది" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "లిథువేనియన్" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "ఏజెంట్ వర్క్‌స్పేస్ లోడ్ అవుతోంది..." +msgid "Loading agent workspace…" +msgstr "ఏజెంట్ వర్క్‌స్పేస్ లోడ్ అవుతోంది…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "AI ప్రొవైడర్లు లోడ్ అవుతున్ #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "ప్రొవైడర్లను లోడ్ చేస్తోంది..." +msgid "Loading providers…" +msgstr "ప్రొవైడర్లను లోడ్ చేస్తోంది…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "రిజ్యూమ్‌లు లోడ్ అవుతున్నాయి..." +msgid "Loading resumes…" +msgstr "పునఃప్రారంభాలను లోడ్ చేస్తోంది…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "థ్రెడ్‌లు లోడ్ అవుతున్నాయి..." +msgid "Loading threads…" +msgstr "థ్రెడ్‌లు లోడ్ అవుతున్నాయి…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "లోడ్ అవుతోంది..." +msgid "Loading…" +msgstr "లోడ్ అవుతోంది…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "ప్యాచ్ పెండింగ్‌లో ఉంది" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "ప్యాచ్ రద్దు చేయబడింది" +msgid "Patch rolled back" +msgstr "ప్యాచ్ వెనక్కి తీసుకోబడింది" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "ప్యాచ్ రద్దు చేయబడింది." +msgid "Patch rolled back." +msgstr "ప్యాచ్ వెనక్కి తీసుకోబడింది." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "దయచేసి ప్రాజెక్ట్‌కు మద్దతు ఇవ్వండి" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "మీ PDF రూపొందించబడుతోంది, దయచేసి వేచి ఉండండి..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "మీ PDF రూపొందించబడుతున్నంత వరకు దయచేసి వేచి ఉండండి…" + #: src/libs/locale.ts msgid "Polish" msgstr "పోలిష్" @@ -2724,6 +2726,14 @@ msgstr "మీ పాస్‌వర్డ్‌ను రీసెట్ చే msgid "Resources" msgstr "వనరులు" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "పునరుద్ధరించండి" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "ఈ ప్యాచ్‌కు ముందు స్థితికి రెస్యూమ్‌ను పునరుద్ధరించాలా? ఇది ఈ ప్యాచ్‌ను మరియు దాని తర్వాత వర్తింపజేసిన ఏవైనా ప్యాచ్‌లను వెనక్కి తీసుకుంటుంది." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "పునఃప్రారంభం" @@ -2752,10 +2762,6 @@ msgstr "రిజ్యూమ్స్" msgid "Retry" msgstr "మళ్ళీ ప్రయత్నించండి" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "తిరిగి" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "ఉద్యోగ వివరణతో రెజ్యూమెను సరిపోల్చి చూసుకోండి మరియు సందేహాస్పదమైన విభాగాలలో మార్పులు చేసే ముందు నన్ను ప్రశ్నలు అడగండి." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "ఒక ఐకాన్ కోసం శోధించండి" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "శోధించండి..." +msgid "Search for…" +msgstr "… కోసం శోధించండి" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "వెతుకు..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "శోధన…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "రహస్యాన్ని క్లిప్‌బోర్డ్‌కు కాపీ చేశాం." @@ -3558,8 +3567,8 @@ msgstr "నిర్ధారించడానికి \"{CONFIRMATION_TEXT}\" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "కమాండ్ టైప్ చేయండి లేదా వెతకండి..." +msgid "Type a command or search…" +msgstr "కమాండ్ టైప్ చేయండి లేదా…లో వెతకండి" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "చిత్రాన్ని అప్‌లోడ్ చేయండి" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "చిత్రాన్ని అప్‌లోడ్ చేస్తోంది..." +msgid "Uploading picture…" +msgstr "చిత్రం అప్‌లోడ్ అవుతోంది…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "బ్యాకప్ కోడ్‌తో ధ్రువీకరి msgid "Verifying backup code..." msgstr "బ్యాకప్ కోడ్‌ను ధ్రువీకరిస్తోంది..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "కోడ్‌ను ధ్రువీకరిస్తోంది..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "ధృవీకరణ కోడ్…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "పాస్‌వర్డ్‌ను ధ్రువీకరిస్తోంది..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ఓపెన్ఏఐతో పని" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "పనిచేస్తోంది..." +msgid "Working…" +msgstr "పని చేస్తోంది…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/th-TH.po b/apps/web/locales/th-TH.po index 59c4528f6..1089cf33d 100644 --- a/apps/web/locales/th-TH.po +++ b/apps/web/locales/th-TH.po @@ -8,7 +8,7 @@ msgstr "" "Language: th\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Thai\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "วิเคราะห์ประวัติย่อ" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "กำลังวิเคราะห์..." +msgid "Analyzing…" +msgstr "กำลังวิเคราะห์…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "ยกเลิก" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "ไม่สามารถย้อนกลับได้ เนื่องจากประวัติการทำงานได้เปลี่ยนแปลงไปแล้วหลังจากทำการแก้ไขนี้" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "ไม่สามารถกู้คืนได้ เนื่องจากประวัติการทำงานได้เปลี่ยนแปลงไปหลังจากทำการแก้ไขนี้" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "เปลี่ยนภาษา" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "เปลี่ยนภาษาเป็น..." +msgid "Change language to…" +msgstr "เปลี่ยนภาษาเป็น…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "เปลี่ยนธีมเป็น..." +msgid "Change theme to…" +msgstr "เปลี่ยนธีมเป็น…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "ไม่สามารถติดต่อผู้ให้บริการ AI ได้ กรุณาลองอีกครั้ง" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "ไม่สามารถย้อนกลับการแก้ไขนี้ได้" +msgid "Could not restore this patch." +msgstr "ไม่สามารถกู้คืนแพทช์นี้ได้" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "กำลังเปิดใช้งานการป้องกันด้วยรหัสผ่าน..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "กำลังเปิดใช้งานการยืนยันตัวตนสองขั้นตอน..." +msgid "Enabling two-factor authentication…" +msgstr "การเปิดใช้งานการตรวจสอบสิทธิ์แบบสองขั้นตอน…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "ไปที่แดชบอร์ดประวัติย่อ" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "ไปที่..." +msgid "Go to…" +msgstr "ไปที่…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "กำลังนำเข้าเรซูเม่ของคุณ..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "กำลังนำเข้า..." +msgid "Importing…" +msgstr "กำลังนำเข้า…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "ภาษา" msgid "Languages" msgstr "ภาษา" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "วิเคราะห์ล่าสุดเมื่อ {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "วิเคราะห์ครั้งล่าสุดเมื่อ {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "ลิทัวเนีย" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "กำลังโหลดพื้นที่ทำงานของเอเจนต์..." +msgid "Loading agent workspace…" +msgstr "กำลังโหลดพื้นที่ทำงานของเอเจนต์…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "กำลังโหลดผู้ให้บริการ AI โ #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "กำลังโหลดผู้ให้บริการ..." +msgid "Loading providers…" +msgstr "กำลังโหลดผู้ให้บริการ…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "กำลังโหลดเรซูเม่..." +msgid "Loading resumes…" +msgstr "กำลังโหลดต่อ…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "กำลังโหลดเธรด..." +msgid "Loading threads…" +msgstr "กำลังโหลดเธรด…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "กำลังโหลด..." +msgid "Loading…" +msgstr "กำลังโหลด…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "กำลังรอแพทช์" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "แพทช์ถูกยกเลิก" +msgid "Patch rolled back" +msgstr "แพทช์ถูกยกเลิกแล้ว" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "ยกเลิกแพทช์แล้ว" +msgid "Patch rolled back." +msgstr "ยกเลิกการอัปเดตแล้ว" #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "โปรดให้การสนับสนุนโครงการนี้" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "กรุณารอสักครู่ ขณะกำลังสร้าง PDF ของคุณ..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "โปรดรอสักครู่ในระหว่างที่กำลังสร้างไฟล์ PDF ของคุณ…" + #: src/libs/locale.ts msgid "Polish" msgstr "โปแลนด์" @@ -2724,6 +2726,14 @@ msgstr "กำลังรีเซ็ตรหัสผ่านของคุ msgid "Resources" msgstr "ทรัพยากร" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "คืนค่า" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "กู้คืนสถานะก่อนการติดตั้งแพทช์นี้หรือไม่? การดำเนินการนี้จะย้อนกลับแพทช์นี้และแพทช์ใดๆ ที่ติดตั้งหลังจากนั้น" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "ประวัติย่อ" @@ -2752,10 +2762,6 @@ msgstr "เรซูเม่" msgid "Retry" msgstr "ลองใหม่อีกครั้ง" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "ย้อนกลับ" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "โปรดตรวจสอบประวัติการทำงานของคุณเทียบกับรายละเอียดงาน และสอบถามฉันได้ก่อนที่จะแก้ไขส่วนใดส่วนหนึ่งที่ไม่แน่ใจ" @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "ค้นหาไอคอน" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "ค้นหา…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "ค้นหา..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "ค้นหา..." +msgid "Search…" +msgstr "ค้นหา…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "พิมพ์ \"{CONFIRMATION_TEXT}\" เพื่อยืนยั #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "พิมพ์คำสั่งหรือค้นหา..." +msgid "Type a command or search…" +msgstr "พิมพ์คำสั่งหรือค้นหา…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "อัปโหลดรูปภาพ" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "กำลังอัปโหลดรูปภาพ..." +msgid "Uploading picture…" +msgstr "กำลังอัปโหลดรูปภาพ…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "ยืนยันด้วยรหัสสำรอง" msgid "Verifying backup code..." msgstr "กำลังตรวจสอบรหัสสำรอง..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "กำลังตรวจสอบรหัส..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "กำลังตรวจสอบรหัส…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "กำลังตรวจสอบรหัสผ่าน..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "ทำงานกับ OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "การทำงาน..." +msgid "Working…" +msgstr "กำลังทำงาน…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/tr-TR.po b/apps/web/locales/tr-TR.po index aad30d887..206b5efe9 100644 --- a/apps/web/locales/tr-TR.po +++ b/apps/web/locales/tr-TR.po @@ -8,7 +8,7 @@ msgstr "" "Language: tr\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Özgeçmişi Analiz Et" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Analiz ediliyor..." +msgid "Analyzing…" +msgstr "… analiz ediliyor" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "İptal Et" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Geri alınamaz; bu düzenleme uygulandıktan sonra özgeçmiş değişti." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Geri yüklenemiyor; bu düzenleme uygulandıktan sonra özgeçmiş değişti." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Dili değiştir" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Dili şuna değiştir..." +msgid "Change language to…" +msgstr "Dili… olarak değiştir" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Temayı şuna değiştir..." +msgid "Change theme to…" +msgstr "Temayı… olarak değiştir" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI sağlayıcısına ulaşılamadı. Lütfen tekrar deneyin." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Bu yama geri alınamadı." +msgid "Could not restore this patch." +msgstr "Bu yama geri yüklenemedi." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Şifre koruması etkinleştiriliyor..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "İki faktörlü kimlik doğrulama etkinleştiriliyor..." +msgid "Enabling two-factor authentication…" +msgstr "İki faktörlü kimlik doğrulamayı etkinleştirme…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Özgeçmişler kontrol paneline git" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Git..." +msgid "Go to…" +msgstr "… adresine gidin." #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Özgeçmişiniz içe aktarılıyor..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "İçe Aktar..." +msgid "Importing…" +msgstr "… İçe Aktarılıyor" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Dil" msgid "Languages" msgstr "Diller" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "En son {0} adresinde analiz edilmiştir" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Son analiz tarihi {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litvanca" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Aracı çalışma alanı yükleniyor..." +msgid "Loading agent workspace…" +msgstr "Aracı çalışma alanı yükleniyor…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Yapay zeka sağlayıcıları yükleniyor. Lütfen bir süre sonra tekrar #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Sağlayıcılar yükleniyor..." +msgid "Loading providers…" +msgstr "Sağlayıcılar yükleniyor…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Özgeçmişler yükleniyor..." +msgid "Loading resumes…" +msgstr "Özgeçmişler yükleniyor…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Konular yükleniyor..." +msgid "Loading threads…" +msgstr "İş parçacıkları yükleniyor…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Yükleniyor..." +msgid "Loading…" +msgstr "Yükleniyor…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "Yama bekleniyor" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Yama geri alındı" +msgid "Patch rolled back" +msgstr "Yama geri alındı." #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "Yama geri alındı." #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Lütfen projeyi destekleyin." #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "PDF'niz oluşturulurken lütfen bekleyin..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "PDF dosyanız oluşturulurken lütfen bekleyin…" + #: src/libs/locale.ts msgid "Polish" msgstr "Lehçe" @@ -2724,6 +2726,14 @@ msgstr "Şifreniz sıfırlanıyor..." msgid "Resources" msgstr "Kaynaklar" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Eski haline getirmek" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Bu yamadan önceki haline geri döndür? Bu işlem, bu yamayı ve sonrasında uygulanan tüm yamaları geri alacaktır." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Sürdürmek" @@ -2752,10 +2762,6 @@ msgstr "Özgeçmişler" msgid "Retry" msgstr "Tekrar dene" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Geri al" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Özgeçmişinizi iş tanımıyla karşılaştırın ve emin olmadığınız bölümleri değiştirmeden önce bana sorular sorun." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Bir simge arayın" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "… için arama yapın" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Ara..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Ara..." +msgid "Search…" +msgstr "Arama…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Onaylamak için \"{CONFIRMATION_TEXT}\" yazın" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Bir komut yazın veya arayın..." +msgid "Type a command or search…" +msgstr "Bir komut yazın veya arama yapın…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Resim yükle" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Resim yükleniyor..." +msgid "Uploading picture…" +msgstr "Resim yükleniyor…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Yedek Kod ile Doğrula" msgid "Verifying backup code..." msgstr "Yedek kod doğrulanıyor..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Kod doğrulanıyor..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Kodun doğrulanması…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Şifre doğrulanıyor..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI ile çalışın" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Çalışma..." +msgid "Working…" +msgstr "Çalışmakta…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/uk-UA.po b/apps/web/locales/uk-UA.po index 07b1077e5..9bfe91072 100644 --- a/apps/web/locales/uk-UA.po +++ b/apps/web/locales/uk-UA.po @@ -8,7 +8,7 @@ msgstr "" "Language: uk\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Проаналізуйте резюме" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Аналізуючи..." +msgid "Analyzing…" +msgstr "Аналіз…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Скасувати" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Неможливо повернути; резюме змінилося з моменту застосування цієї редагування." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Неможливо відновити; резюме змінилося з моменту застосування цієї редагування." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Змінити мову" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Змінити мову на..." +msgid "Change language to…" +msgstr "Змінити мову на…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Змінити тему на..." +msgid "Change theme to…" +msgstr "Змінити тему на…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Не вдалося зв'язатися з постачальником ШІ. Спробуйте ще раз." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Не вдалося скасувати цей патч." +msgid "Could not restore this patch." +msgstr "Не вдалося відновити цей патч." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Увімкнення захисту паролем..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Увімкнення двофакторної автентифікації..." +msgid "Enabling two-factor authentication…" +msgstr "Увімкнення двофакторної автентифікації…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Перейти до панелі резюме" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Перейти до..." +msgid "Go to…" +msgstr "Перейти до…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Імпортуємо ваше резюме..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Імпорт..." +msgid "Importing…" +msgstr "Імпорт…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Мова" msgid "Languages" msgstr "Мови" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Останній аналіз на {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Останній аналіз {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Литовська" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Завантаження робочої області агента..." +msgid "Loading agent workspace…" +msgstr "Завантаження робочої області агента…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Завантаження постачальників ШІ. Будь л #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Завантаження постачальників..." +msgid "Loading providers…" +msgstr "Завантаження постачальників…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Завантаження резюме..." +msgid "Loading resumes…" +msgstr "Завантаження резюме…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Завантаження тем..." +msgid "Loading threads…" +msgstr "Завантаження тем…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Завантаження..." +msgid "Loading…" +msgstr "Завантаження…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Очікується оновлення" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Патч скасовано" +msgid "Patch rolled back" +msgstr "Патч відкочено" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Патч скасовано." +msgid "Patch rolled back." +msgstr "Патч відкочено." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Будь ласка, підтримайте проєкт" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Будь ласка, зачекайте, поки створюється ваш PDF..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Будь ласка, зачекайте, поки генерується ваш PDF-файл…" + #: src/libs/locale.ts msgid "Polish" msgstr "Польська" @@ -2724,6 +2726,14 @@ msgstr "Скидання пароля..." msgid "Resources" msgstr "Ресурси" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Відновити" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Відновити резюме до стану до цього патчу? Це призведе до скасування цього патчу та будь-яких патчів, застосованих після нього." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Резюме" @@ -2752,10 +2762,6 @@ msgstr "Резюме" msgid "Retry" msgstr "Повторити спробу" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Повернути" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Перегляньте резюме на відповідність опису вакансії та поставте мені запитання, перш ніж вносити зміни до невизначених розділів." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Пошук іконки" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Пошук за запитом…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Пошук..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Пошук..." +msgid "Search…" +msgstr "Пошук…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Введіть \"{CONFIRMATION_TEXT}\" для підтвердження #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Введіть команду або шукайте..." +msgid "Type a command or search…" +msgstr "Введіть команду або здійсніть пошук…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Завантажити зображення" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Завантаження зображення..." +msgid "Uploading picture…" +msgstr "Завантаження зображення…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Підтвердити за допомогою резервного ко msgid "Verifying backup code..." msgstr "Перевірка резервного коду..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Перевірка коду..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Перевірка коду…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Перевірка пароля..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Робота з OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Працюємо..." +msgid "Working…" +msgstr "Працює…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/uz-UZ.po b/apps/web/locales/uz-UZ.po index 672c6ebe8..e4163e082 100644 --- a/apps/web/locales/uz-UZ.po +++ b/apps/web/locales/uz-UZ.po @@ -8,7 +8,7 @@ msgstr "" "Language: uz\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Uzbek\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Rezyumeni tahlil qiling" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Tahlil qilinmoqda..." +msgid "Analyzing…" +msgstr "… tahlil qilinmoqda" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Bekor qilish" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Qaytarib bo'lmaydi; ushbu tahrir qo'llanilganidan beri rezyume o'zgardi." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Qayta tiklab bo'lmadi; ushbu tahrir qo'llanilganidan beri rezyume o'zgardi." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Tilni oʻzgartirish" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Tilni oʻzgartirish..." +msgid "Change language to…" +msgstr "Tilni… ga o'zgartiring" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Mavzuni oʻzgartirish..." +msgid "Change theme to…" +msgstr "Mavzuni… ga o'zgartiring" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "AI provayderiga ulanib bo'lmadi. Iltimos, yana urinib ko'ring." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Ushbu yamoqni qaytarib bo'lmadi." +msgid "Could not restore this patch." +msgstr "Ushbu yamoqni tiklab bo'lmadi." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Parol bilan himoyalash yoqilmoqda..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Ikki bosqichli autentifikatsiya yoqilmoqda..." +msgid "Enabling two-factor authentication…" +msgstr "Ikki faktorli autentifikatsiyani yoqish…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Rezyumelar boshqaruv paneliga o'ting" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "O‘tish..." +msgid "Go to…" +msgstr "… ga o'ting" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Rezyumengiz import qilinmoqda..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Import..." +msgid "Importing…" +msgstr "… import qilinmoqda" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Til" msgid "Languages" msgstr "Tillar" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Oxirgi marta tahlil qilingan {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Oxirgi marta {updatedAtLabel} da tahlil qilingan" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Litva tili" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Agent ish maydoni yuklanmoqda..." +msgid "Loading agent workspace…" +msgstr "Agent ish maydoni yuklanmoqda…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Sun'iy intellekt provayderlari yuklanmoqda. Iltimos, bir zumda qayta uri #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Provayderlar yuklanmoqda..." +msgid "Loading providers…" +msgstr "Provayderlar yuklanmoqda…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Rezyumelar yuklanmoqda..." +msgid "Loading resumes…" +msgstr "Rezyumelar yuklanmoqda…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Mavzular yuklanmoqda..." +msgid "Loading threads…" +msgstr "Mavzular yuklanmoqda…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Yuklanmoqda..." +msgid "Loading…" +msgstr "… yuklanmoqda" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Yamoq kutilmoqda" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Yamoq qaytarildi" +msgid "Patch rolled back" +msgstr "Yamoq orqaga surildi" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Yamoq qaytarildi." +msgid "Patch rolled back." +msgstr "Yamoq orqaga surildi." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Iltimos, loyihani qo'llab-quvvatlang" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Iltimos, PDF generatsiya qilinayotganini kuting..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "PDF faylingiz yaratilguncha kuting…" + #: src/libs/locale.ts msgid "Polish" msgstr "Polyak tili" @@ -2724,6 +2726,14 @@ msgstr "Parolingiz tiklanmoqda..." msgid "Resources" msgstr "Resurslar" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Qayta tiklash" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Rezyume ushbu yamoqni avvalgi holatiga qaytarilsinmi? Bu ushbu yamoqni va undan keyin qo'llanilgan barcha yamoqlarni orqaga qaytaradi." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Rezyume; qayta boshlash" @@ -2752,10 +2762,6 @@ msgstr "Rezyumelar" msgid "Retry" msgstr "Qayta urinish" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Qaytarish" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Rezyumeni ish tavsifi bilan taqqoslang va noaniq bo'limlarni o'zgartirishdan oldin menga savollar bering." @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "Ikon qidiring" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "Qidiruv..." +msgid "Search for…" +msgstr "… ni qidiring" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "Qidirish..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "… ni qidiring" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "Maxfiy kod buferga nusxalandi." @@ -3558,8 +3567,8 @@ msgstr "Tasdiqlash uchun \"{CONFIRMATION_TEXT}\" deb yozing" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Buyruq yoki izlash uchun yozing..." +msgid "Type a command or search…" +msgstr "Buyruqni kiriting yoki… deb qidiring" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Rasmni yuklang" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Rasm yuklanmoqda..." +msgid "Uploading picture…" +msgstr "Rasm yuklanmoqda…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Zaxira kod bilan tasdiqlash" msgid "Verifying backup code..." msgstr "Zaxira kod tekshirilmoqda..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Kod tekshirilmoqda..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Kodni tasdiqlash…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Parol tekshirilmoqda..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI bilan ishlang" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Ishlamoqda..." +msgid "Working…" +msgstr "… ishlayapti" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/vi-VN.po b/apps/web/locales/vi-VN.po index 84e92812d..51f8a1788 100644 --- a/apps/web/locales/vi-VN.po +++ b/apps/web/locales/vi-VN.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "Phân tích sơ yếu lý lịch" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "Đang phân tích..." +msgid "Analyzing…" +msgstr "Phân tích…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "Hủy" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "Không thể hoàn tác; sơ yếu lý lịch đã thay đổi kể từ khi chỉnh sửa này được áp dụng." +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "Không thể khôi phục; sơ yếu lý lịch đã thay đổi kể từ khi chỉnh sửa này được áp dụng." #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "Đổi ngôn ngữ" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "Đổi ngôn ngữ sang..." +msgid "Change language to…" +msgstr "Thay đổi ngôn ngữ thành…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "Thay đổi giao diện sang..." +msgid "Change theme to…" +msgstr "Thay đổi chủ đề thành…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "Không thể kết nối với nhà cung cấp AI. Vui lòng thử lại." #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "Không thể hoàn tác bản vá này." +msgid "Could not restore this patch." +msgstr "Không thể khôi phục bản vá này." #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "Đang bật bảo vệ bằng mật khẩu..." #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "Đang bật xác thực hai yếu tố..." +msgid "Enabling two-factor authentication…" +msgstr "Kích hoạt xác thực hai yếu tố…" #: src/libs/locale.ts msgid "English" @@ -1633,8 +1633,8 @@ msgid "Go to resumes dashboard" msgstr "Truy cập trang tổng quan hồ sơ" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." -msgstr "Đi đến..." +msgid "Go to…" +msgstr "Đi đến…" #. Authentication provider display name in account settings #. Brand name label for Google social sign-in button @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "Đang nhập sơ yếu lý lịch của bạn..." #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "Nhập..." +msgid "Importing…" +msgstr "Đang nhập…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "Ngôn ngữ" msgid "Languages" msgstr "Ngôn ngữ" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "Lần phân tích gần nhất vào ngày {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "Lần phân tích cuối cùng vào {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "Tiếng Litva" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "Đang tải không gian làm việc của tác nhân..." +msgid "Loading agent workspace…" +msgstr "Đang tải không gian làm việc của tác nhân…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "Đang tải các nhà cung cấp AI. Vui lòng thử lại sau một lá #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "Đang tải các nhà cung cấp..." +msgid "Loading providers…" +msgstr "Đang tải nhà cung cấp…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "Đang tải sơ yếu lý lịch..." +msgid "Loading resumes…" +msgstr "Đang tải tiếp tục…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "Đang tải các luồng..." +msgid "Loading threads…" +msgstr "Đang tải luồng…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "Đang tải..." +msgid "Loading…" +msgstr "Đang tải…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,12 +2430,12 @@ msgid "Patch pending" msgstr "Bản vá đang chờ xử lý" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "Bản vá đã được hoàn nguyên" +msgid "Patch rolled back" +msgstr "Bản vá đã được khôi phục." #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." -msgstr "Bản vá đã bị hoàn tác." +msgid "Patch rolled back." +msgstr "Bản vá đã được hoàn tác." #. File format label in import source selector #: src/dialogs/resume/import.tsx @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "Hãy ủng hộ dự án!" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "Vui lòng đợi trong khi PDF của bạn đang được tạo..." +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "Vui lòng chờ trong khi tệp PDF của bạn đang được tạo…" + #: src/libs/locale.ts msgid "Polish" msgstr "Ba Lan" @@ -2724,6 +2726,14 @@ msgstr "Đang đặt lại mật khẩu..." msgid "Resources" msgstr "Tài nguyên" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "Khôi phục" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "Khôi phục trạng thái trước khi cập nhật bản vá này? Thao tác này sẽ hoàn tác bản vá này và bất kỳ bản vá nào được áp dụng sau đó." + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "Bản tóm tắt" @@ -2752,10 +2762,6 @@ msgstr "Sơ yếu lý lịch" msgid "Retry" msgstr "Thử lại" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "Hoàn tác" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "Hãy xem lại sơ yếu lý lịch so với mô tả công việc và đặt câu hỏi cho tôi trước khi thay đổi những phần không chắc chắn." @@ -2845,14 +2851,17 @@ msgid "Search for an icon" msgstr "Tìm kiếm biểu tượng" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "Tìm kiếm…" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "Tìm kiếm..." #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." -msgstr "Tìm kiếm..." +msgid "Search…" +msgstr "Tìm kiếm…" #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." @@ -3558,8 +3567,8 @@ msgstr "Nhập \"{CONFIRMATION_TEXT}\" để xác nhận" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "Nhập lệnh hoặc tìm kiếm..." +msgid "Type a command or search…" +msgstr "Nhập lệnh hoặc tìm kiếm…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,8 +3713,8 @@ msgid "Upload picture" msgstr "Tải ảnh lên" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." -msgstr "Đang tải lên hình ảnh..." +msgid "Uploading picture…" +msgstr "Đang tải ảnh lên…" #. Form field label for the generated public resume link in sharing settings #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx @@ -3763,11 +3772,14 @@ msgstr "Xác minh với Mã dự phòng" msgid "Verifying backup code..." msgstr "Đang xác minh mã dự phòng..." -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "Đang xác minh mã..." +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "Mã xác minh…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "Đang xác minh mật khẩu..." @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "Làm việc tại OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "Đang làm việc..." +msgid "Working…" +msgstr "Đang xử lý…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/zh-CN.po b/apps/web/locales/zh-CN.po index 5e8551290..aeee2d227 100644 --- a/apps/web/locales/zh-CN.po +++ b/apps/web/locales/zh-CN.po @@ -8,7 +8,7 @@ msgstr "" "Language: zh\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "分析简历" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "分析..." +msgid "Analyzing…" +msgstr "分析…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "取消" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "无法撤销;简历自此编辑应用后已发生更改。" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "无法恢复;简历自此编辑后已发生更改。" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "更改语言" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." +msgid "Change language to…" msgstr "将语言更改为…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "将主题更改为…" +msgid "Change theme to…" +msgstr "更改主题为…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "无法联系人工智能提供商。请重试。" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "无法撤销此补丁。" +msgid "Could not restore this patch." +msgstr "无法恢复此补丁。" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "正在启用密码保护…" #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "正在使用双重身份验证保护…" +msgid "Enabling two-factor authentication…" +msgstr "启用双因素身份验证…" #: src/libs/locale.ts msgid "English" @@ -1633,7 +1633,7 @@ msgid "Go to resumes dashboard" msgstr "转到简历仪表板" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." +msgid "Go to…" msgstr "前往…" #. Authentication provider display name in account settings @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "正在导入你的简历…" #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "导入…" +msgid "Importing…" +msgstr "正在导入…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "语言" msgid "Languages" msgstr "语言" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "最后分析结果见 {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "最后分析于 {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "立陶宛语" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "正在加载代理工作区..." +msgid "Loading agent workspace…" +msgstr "正在加载代理工作区…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,21 +2069,21 @@ msgstr "正在加载人工智能提供商。请稍后再试。" #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "正在加载提供商..." +msgid "Loading providers…" +msgstr "正在加载提供商…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "正在加载简历…" +msgid "Loading resumes…" +msgstr "正在恢复加载…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "正在加载线程..." +msgid "Loading threads…" +msgstr "正在加载线程…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." -msgstr "正在加载…" +msgid "Loading…" +msgstr "加载中…" #: src/dialogs/resume/sections/education.tsx #: src/dialogs/resume/sections/experience.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "补丁待定" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "补丁已撤销" +msgid "Patch rolled back" +msgstr "补丁已回滚" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "补丁已回滚。" #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "请支持这个项目" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "正在生成 PDF,请稍候…" +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "请稍候,您的PDF文件正在生成中…" + #: src/libs/locale.ts msgid "Polish" msgstr "波兰语" @@ -2724,6 +2726,14 @@ msgstr "正在重置你的密码…" msgid "Resources" msgstr "资源" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "恢复" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "恢复到此补丁之前的状态?这将回滚此补丁以及其后应用的所有补丁。" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "恢复" @@ -2752,10 +2762,6 @@ msgstr "简历" msgid "Retry" msgstr "重试" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "恢复" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "请对照职位描述仔细检查简历,如有疑问请随时向我咨询,然后再修改不确定的部分。" @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "搜索图标" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" msgstr "搜索…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "搜索..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "搜索…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "密钥已复制到剪贴板。" @@ -3558,8 +3567,8 @@ msgstr "输入“{CONFIRMATION_TEXT}”以确认" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." -msgstr "输入命令或进行搜索…" +msgid "Type a command or search…" +msgstr "输入命令或搜索…" #: src/libs/resume/section.tsx msgid "Typography" @@ -3704,7 +3713,7 @@ msgid "Upload picture" msgstr "上传图片" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." +msgid "Uploading picture…" msgstr "正在上传图片…" #. Form field label for the generated public resume link in sharing settings @@ -3763,11 +3772,14 @@ msgstr "使用备份码验证" msgid "Verifying backup code..." msgstr "正在验证备份码…" -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "正在验证验证码…" +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "验证码…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "正在验证密码…" @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "在职的..." +msgid "Working…" +msgstr "正在运行…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/zh-TW.po b/apps/web/locales/zh-TW.po index b9fd28262..3a45c040d 100644 --- a/apps/web/locales/zh-TW.po +++ b/apps/web/locales/zh-TW.po @@ -8,7 +8,7 @@ msgstr "" "Language: zh\n" "Project-Id-Version: reactive-resume\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-05-19 11:15\n" +"PO-Revision-Date: 2026-05-21 07:54\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -320,8 +320,8 @@ msgid "Analyze Resume" msgstr "分析履歷" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." -msgstr "分析..." +msgid "Analyzing…" +msgstr "分析…" #: src/routes/_home/-sections/features.tsx msgid "And many more..." @@ -584,8 +584,8 @@ msgid "Cancel" msgstr "取消" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." -msgstr "無法撤銷;履歷自此編輯應用程式後已發生變更。" +msgid "Cannot restore; the resume has changed since this edit was applied." +msgstr "無法恢復;簡歷自此編輯後已發生更改。" #: src/libs/locale.ts msgid "Catalan" @@ -610,12 +610,12 @@ msgid "Change language" msgstr "變更語言" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." -msgstr "變更語言為…" +msgid "Change language to…" +msgstr "將語言改為…" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." -msgstr "變更主題為…" +msgid "Change theme to…" +msgstr "改主題為…" #: src/dialogs/resume/index.tsx msgid "Changed your mind? Rename your resume to something more descriptive." @@ -793,8 +793,8 @@ msgid "Could not reach the AI provider. Please try again." msgstr "無法連絡 AI 提供者。請再試一次。" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." -msgstr "無法撤銷此補丁。" +msgid "Could not restore this patch." +msgstr "無法恢復此補丁。" #: src/features/settings/integrations/components/ai-section.tsx msgid "Could not verify provider connection." @@ -1248,8 +1248,8 @@ msgid "Enabling password protection..." msgstr "正在啟用密碼保護…" #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." -msgstr "正在啟用雙因子驗證…" +msgid "Enabling two-factor authentication…" +msgstr "啟用雙重認證…" #: src/libs/locale.ts msgid "English" @@ -1633,7 +1633,7 @@ msgid "Go to resumes dashboard" msgstr "前往履歷儀表板" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." +msgid "Go to…" msgstr "前往…" #. Authentication provider display name in account settings @@ -1815,8 +1815,8 @@ msgid "Importing your resume..." msgstr "正在匯入您的履歷…" #: src/dialogs/resume/import.tsx -msgid "Importing..." -msgstr "正在匯入…" +msgid "Importing…" +msgstr "正在導入…" #: src/routes/agent/$threadId.tsx msgid "Increase zoom" @@ -1963,10 +1963,9 @@ msgstr "語言" msgid "Languages" msgstr "語言" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" -msgstr "最後分析於 {0}" +msgid "Last analyzed on {updatedAtLabel}" +msgstr "最後分析於 {updatedAtLabel}" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() #: src/routes/builder/$resumeId/-sidebar/right/sections/statistics.tsx @@ -2061,8 +2060,8 @@ msgid "Lithuanian" msgstr "立陶宛語" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." -msgstr "正在載入代理工作區..." +msgid "Loading agent workspace…" +msgstr "正在載入代理工作區…" #: src/dialogs/resume/import.tsx msgid "Loading AI providers. Please try again in a moment." @@ -2070,20 +2069,20 @@ msgstr "正在加載人工智慧提供者。請稍後再試。" #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." -msgstr "正在加載提供者..." +msgid "Loading providers…" +msgstr "正在載入提供者…" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." -msgstr "正在載入履歷…" +msgid "Loading resumes…" +msgstr "正在恢復載入…" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." -msgstr "正在加載線程..." +msgid "Loading threads…" +msgstr "正在載入線程…" #: src/components/layout/loading-screen.tsx -msgid "Loading..." +msgid "Loading…" msgstr "載入中…" #: src/dialogs/resume/sections/education.tsx @@ -2431,11 +2430,11 @@ msgid "Patch pending" msgstr "補丁待定" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" -msgstr "補丁已撤銷" +msgid "Patch rolled back" +msgstr "補丁已回滾" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "補丁已回滾。" #. File format label in import source selector @@ -2484,12 +2483,15 @@ msgid "Please support the project" msgstr "請支持這個項目" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "正在產生您的 PDF,請稍候…" +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "請稍候,您的PDF檔案正在產生中…" + #: src/libs/locale.ts msgid "Polish" msgstr "波蘭語" @@ -2724,6 +2726,14 @@ msgstr "正在重設您的密碼…" msgid "Resources" msgstr "資源" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "恢復" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "恢復到此補丁之前的狀態?這將回滾此補丁以及其後套用的所有補丁。" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "恢復" @@ -2752,10 +2762,6 @@ msgstr "履歷" msgid "Retry" msgstr "重試" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "恢復" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "請對照職位描述仔細檢查履歷,如有疑問請隨時向我諮詢,然後再修改不確定的部分。" @@ -2845,15 +2851,18 @@ msgid "Search for an icon" msgstr "搜尋圖示" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." -msgstr "搜尋履歷…" +msgid "Search for…" +msgstr "搜尋…" -#. Placeholder in command palette input on nested pages #: src/components/ui/combobox.tsx -#: src/features/command-palette/index.tsx msgid "Search..." msgstr "搜尋..." +#. Placeholder in command palette input on nested pages +#: src/features/command-palette/index.tsx +msgid "Search…" +msgstr "搜尋…" + #: src/dialogs/auth/enable-two-factor.tsx msgid "Secret copied to clipboard." msgstr "私密金鑰已複製到剪貼簿。" @@ -3558,7 +3567,7 @@ msgstr "輸入「{CONFIRMATION_TEXT}」以確認" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." +msgid "Type a command or search…" msgstr "輸入指令或搜尋…" #: src/libs/resume/section.tsx @@ -3704,7 +3713,7 @@ msgid "Upload picture" msgstr "上傳圖片" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." +msgid "Uploading picture…" msgstr "正在上傳圖片…" #. Form field label for the generated public resume link in sharing settings @@ -3763,11 +3772,14 @@ msgstr "使用備份代碼驗證" msgid "Verifying backup code..." msgstr "正在驗證備份代碼…" -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "正在驗證代碼…" +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "驗證碼…" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "正在驗證密碼…" @@ -3830,8 +3842,8 @@ msgid "Work OpenAI" msgstr "OpenAI" #: src/routes/agent/$threadId.tsx -msgid "Working..." -msgstr "在職的..." +msgid "Working…" +msgstr "正在運作…" #: src/routes/_home/-sections/footer.tsx msgid "X (Twitter)" diff --git a/apps/web/locales/zu-ZA.po b/apps/web/locales/zu-ZA.po index 1088a959a..8dccc99ca 100644 --- a/apps/web/locales/zu-ZA.po +++ b/apps/web/locales/zu-ZA.po @@ -315,7 +315,7 @@ msgid "Analyze Resume" msgstr "" #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Analyzing..." +msgid "Analyzing…" msgstr "" #: src/routes/_home/-sections/features.tsx @@ -579,7 +579,7 @@ msgid "Cancel" msgstr "" #: src/routes/agent/$threadId.tsx -msgid "Cannot revert; the resume has changed since this edit was applied." +msgid "Cannot restore; the resume has changed since this edit was applied." msgstr "" #: src/libs/locale.ts @@ -605,11 +605,11 @@ msgid "Change language" msgstr "" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change language to..." +msgid "Change language to…" msgstr "" #: src/features/command-palette/pages/preferences/index.tsx -msgid "Change theme to..." +msgid "Change theme to…" msgstr "" #: src/dialogs/resume/index.tsx @@ -788,7 +788,7 @@ msgid "Could not reach the AI provider. Please try again." msgstr "" #: src/routes/agent/$threadId.tsx -msgid "Could not revert this patch." +msgid "Could not restore this patch." msgstr "" #: src/features/settings/integrations/components/ai-section.tsx @@ -1243,7 +1243,7 @@ msgid "Enabling password protection..." msgstr "" #: src/dialogs/auth/enable-two-factor.tsx -msgid "Enabling two-factor authentication..." +msgid "Enabling two-factor authentication…" msgstr "" #: src/libs/locale.ts @@ -1628,7 +1628,7 @@ msgid "Go to resumes dashboard" msgstr "" #: src/features/command-palette/pages/navigation.tsx -msgid "Go to..." +msgid "Go to…" msgstr "" #. Authentication provider display name in account settings @@ -1810,7 +1810,7 @@ msgid "Importing your resume..." msgstr "" #: src/dialogs/resume/import.tsx -msgid "Importing..." +msgid "Importing…" msgstr "" #: src/routes/agent/$threadId.tsx @@ -1958,9 +1958,8 @@ msgstr "" msgid "Languages" msgstr "" -#. placeholder {0}: new Date(analysis.updatedAt).toLocaleString() #: src/routes/builder/$resumeId/-sidebar/right/sections/resume-analysis.tsx -msgid "Last analyzed on {0}" +msgid "Last analyzed on {updatedAtLabel}" msgstr "" #. placeholder {0}: statistics.lastDownloadedAt.toDateString() @@ -2056,7 +2055,7 @@ msgid "Lithuanian" msgstr "" #: src/routes/agent/$threadId.tsx -msgid "Loading agent workspace..." +msgid "Loading agent workspace…" msgstr "" #: src/dialogs/resume/import.tsx @@ -2065,20 +2064,20 @@ msgstr "" #: src/features/settings/integrations/components/ai-section.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading providers..." +msgid "Loading providers…" msgstr "" #: src/features/command-palette/pages/resumes.tsx #: src/routes/agent/-components/new-thread-setup.tsx -msgid "Loading resumes..." +msgid "Loading resumes…" msgstr "" #: src/routes/agent/-components/thread-sidebar.tsx -msgid "Loading threads..." +msgid "Loading threads…" msgstr "" #: src/components/layout/loading-screen.tsx -msgid "Loading..." +msgid "Loading…" msgstr "" #: src/dialogs/resume/sections/education.tsx @@ -2426,11 +2425,11 @@ msgid "Patch pending" msgstr "" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted" +msgid "Patch rolled back" msgstr "" #: src/routes/agent/$threadId.tsx -msgid "Patch reverted." +msgid "Patch rolled back." msgstr "" #. File format label in import source selector @@ -2479,12 +2478,15 @@ msgid "Please support the project" msgstr "" #: src/features/resume/public/public-resume.tsx -#: src/routes/agent/$threadId.tsx #: src/routes/builder/$resumeId/-components/dock.tsx #: src/routes/builder/$resumeId/-sidebar/right/sections/export.tsx msgid "Please wait while your PDF is being generated..." msgstr "" +#: src/routes/agent/$threadId.tsx +msgid "Please wait while your PDF is being generated…" +msgstr "" + #: src/libs/locale.ts msgid "Polish" msgstr "" @@ -2719,6 +2721,14 @@ msgstr "" msgid "Resources" msgstr "" +#: src/routes/agent/$threadId.tsx +msgid "Restore" +msgstr "" + +#: src/routes/agent/$threadId.tsx +msgid "Restore the resume to before this patch? This will roll back this patch and any patches applied after it." +msgstr "" + #: src/routes/agent/$threadId.tsx msgid "Resume" msgstr "" @@ -2747,10 +2757,6 @@ msgstr "" msgid "Retry" msgstr "" -#: src/routes/agent/$threadId.tsx -msgid "Revert" -msgstr "" - #: src/routes/agent/$threadId.tsx msgid "Review the resume against a job description and ask me questions before changing uncertain sections." msgstr "" @@ -2840,13 +2846,16 @@ msgid "Search for an icon" msgstr "" #: src/features/command-palette/pages/resumes.tsx -msgid "Search for..." +msgid "Search for…" +msgstr "" + +#: src/components/ui/combobox.tsx +msgid "Search..." msgstr "" #. Placeholder in command palette input on nested pages -#: src/components/ui/combobox.tsx #: src/features/command-palette/index.tsx -msgid "Search..." +msgid "Search…" msgstr "" #: src/dialogs/auth/enable-two-factor.tsx @@ -3553,7 +3562,7 @@ msgstr "" #. Placeholder in command palette input on root page #. Screen-reader dialog description instructing users how to use the command palette #: src/features/command-palette/index.tsx -msgid "Type a command or search..." +msgid "Type a command or search…" msgstr "" #: src/libs/resume/section.tsx @@ -3699,7 +3708,7 @@ msgid "Upload picture" msgstr "" #: src/routes/builder/$resumeId/-sidebar/left/sections/picture.tsx -msgid "Uploading picture..." +msgid "Uploading picture…" msgstr "" #. Form field label for the generated public resume link in sharing settings @@ -3758,11 +3767,14 @@ msgstr "" msgid "Verifying backup code..." msgstr "" -#: src/dialogs/auth/enable-two-factor.tsx #: src/features/auth/pages/verify-2fa.tsx msgid "Verifying code..." msgstr "" +#: src/dialogs/auth/enable-two-factor.tsx +msgid "Verifying code…" +msgstr "" + #: src/features/auth/pages/resume-password.tsx msgid "Verifying password..." msgstr "" @@ -3825,7 +3837,7 @@ msgid "Work OpenAI" msgstr "" #: src/routes/agent/$threadId.tsx -msgid "Working..." +msgid "Working…" msgstr "" #: src/routes/_home/-sections/footer.tsx diff --git a/apps/web/package.json b/apps/web/package.json index 5551c57f4..68e9f3882 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -16,7 +16,7 @@ "lingui:extract": "lingui extract --clean --overwrite" }, "dependencies": { - "@ai-sdk/react": "^3.0.187", + "@ai-sdk/react": "^3.0.189", "@base-ui/react": "^1.5.0", "@better-auth/api-key": "^1.6.11", "@better-auth/infra": "^0.2.8", @@ -47,7 +47,7 @@ "@tanstack/react-form": "^1.32.0", "@tanstack/react-hotkeys": "^0.10.0", "@tanstack/react-query": "^5.100.11", - "@tanstack/react-router": "^1.170.5", + "@tanstack/react-router": "^1.170.6", "@tiptap/extension-color": "^3.23.5", "@tiptap/extension-highlight": "^3.23.5", "@tiptap/extension-table": "^3.23.5", @@ -59,7 +59,7 @@ "@types/js-cookie": "^3.0.6", "@uiw/color-convert": "^2.10.1", "@uiw/react-color-colorful": "^2.10.1", - "ai": "^6.0.185", + "ai": "^6.0.187", "better-auth": "1.6.11", "cmdk": "^1.1.1", "drizzle-orm": "1.0.0-rc.3", @@ -84,19 +84,22 @@ "zustand": "^5.0.13" }, "devDependencies": { + "@babel/core": "^7.29.0", "@lingui/babel-plugin-lingui-macro": "^6.0.1", "@lingui/cli": "^6.0.1", "@lingui/format-po": "^6.0.1", "@lingui/vite-plugin": "^6.0.1", "@reactive-resume/config": "workspace:*", "@rolldown/plugin-babel": "^0.2.3", - "@tanstack/router-plugin": "^1.168.7", + "@tanstack/router-plugin": "^1.168.9", + "@types/babel__core": "^7.20.5", "@types/pg": "^8.20.0", "@types/react": "^19.2.15", "@types/react-dom": "^19.2.3", "@typescript/native-preview": "7.0.0-dev.20260519.1", "@vitejs/plugin-react": "^6.0.2", "babel-plugin-macros": "^3.1.0", + "babel-plugin-react-compiler": "^1.0.0", "typescript": "^6.0.3", "vite": "^8.0.13" } diff --git a/apps/web/src/components/animation/comet-card.tsx b/apps/web/src/components/animation/comet-card.tsx index 0c8755172..5a0e844c3 100644 --- a/apps/web/src/components/animation/comet-card.tsx +++ b/apps/web/src/components/animation/comet-card.tsx @@ -1,5 +1,5 @@ import type React from "react"; -import { motion, useMotionTemplate, useMotionValue, useSpring, useTransform } from "motion/react"; +import { m, useMotionTemplate, useMotionValue, useSpring, useTransform } from "motion/react"; import { useRef } from "react"; import { cn } from "@reactive-resume/utils/style"; @@ -64,7 +64,7 @@ export const CometCard = ({ return (
- {children} - - +
); }; diff --git a/apps/web/src/components/animation/count-up.tsx b/apps/web/src/components/animation/count-up.tsx index 58b0d0661..51d50fdb7 100644 --- a/apps/web/src/components/animation/count-up.tsx +++ b/apps/web/src/components/animation/count-up.tsx @@ -1,5 +1,5 @@ import { useInView, useMotionValue, useSpring } from "motion/react"; -import { useCallback, useEffect, useRef } from "react"; +import { useCallback, useEffect, useEffectEvent, useRef } from "react"; type CountUpProps = { to: number; @@ -75,26 +75,26 @@ export function CountUp({ [maxDecimals, separator], ); + const formatCurrentValue = useEffectEvent((latest: number) => formatValue(latest)); + const notifyStart = useEffectEvent(() => onStart?.()); + const notifyEnd = useEffectEvent(() => onEnd?.()); + useEffect(() => { if (ref.current) { - ref.current.textContent = formatValue(direction === "down" ? to : from); + ref.current.textContent = formatCurrentValue(direction === "down" ? to : from); } - }, [from, to, direction, formatValue]); + }, [from, to, direction]); useEffect(() => { if (isInView && startWhen) { - if (typeof onStart === "function") { - onStart(); - } + notifyStart(); const timeoutId = setTimeout(() => { motionValue.set(direction === "down" ? from : to); }, delay * 1000); const durationTimeoutId = setTimeout( () => { - if (typeof onEnd === "function") { - onEnd(); - } + notifyEnd(); }, delay * 1000 + duration * 1000, ); @@ -104,17 +104,17 @@ export function CountUp({ clearTimeout(durationTimeoutId); }; } - }, [isInView, startWhen, motionValue, direction, from, to, delay, onStart, onEnd, duration]); + }, [isInView, startWhen, motionValue, direction, from, to, delay, duration]); useEffect(() => { const unsubscribe = springValue.on("change", (latest: number) => { if (ref.current) { - ref.current.textContent = formatValue(latest); + ref.current.textContent = formatCurrentValue(latest); } }); return () => unsubscribe(); - }, [springValue, formatValue]); + }, [springValue]); return ( { return ( - - - + - - - + + ); }; diff --git a/apps/web/src/components/animation/text-mask.tsx b/apps/web/src/components/animation/text-mask.tsx index 13c261a89..dfcdc6449 100644 --- a/apps/web/src/components/animation/text-mask.tsx +++ b/apps/web/src/components/animation/text-mask.tsx @@ -1,5 +1,5 @@ -import { motion } from "motion/react"; -import { useEffect, useRef, useState } from "react"; +import { m } from "motion/react"; +import { useRef, useState } from "react"; import { cn } from "@reactive-resume/utils/style"; const textClassName = cn("fill-transparent font-bold text-3xl leading-none tracking-tight"); @@ -13,20 +13,9 @@ type TextMaskEffectProps = { export const TextMaskEffect = ({ text, duration = 6, className, "aria-hidden": ariaHidden }: TextMaskEffectProps) => { const svgRef = useRef(null); - const [cursor, setCursor] = useState({ x: 0, y: 0 }); const [hovered, setHovered] = useState(false); const [maskPosition, setMaskPosition] = useState({ cx: "50%", cy: "50%" }); - useEffect(() => { - if (svgRef.current && cursor.x !== null && cursor.y !== null) { - const svgRect = svgRef.current.getBoundingClientRect(); - const cxPercentage = ((cursor.x - svgRect.left) / svgRect.width) * 100; - const cyPercentage = ((cursor.y - svgRect.top) / svgRect.height) * 100; - - setMaskPosition({ cx: `${cxPercentage}%`, cy: `${cyPercentage}%` }); - } - }, [cursor]); - return ( setHovered(true)} onMouseLeave={() => setHovered(false)} onMouseMove={(e) => { - setCursor({ x: e.clientX, y: e.clientY }); + if (!svgRef.current) return; + const svgRect = svgRef.current.getBoundingClientRect(); + const cxPercentage = ((e.clientX - svgRect.left) / svgRect.width) * 100; + const cyPercentage = ((e.clientY - svgRect.top) / svgRect.height) * 100; + + setMaskPosition({ cx: `${cxPercentage}%`, cy: `${cyPercentage}%` }); }} > @@ -56,7 +50,7 @@ export const TextMaskEffect = ({ text, duration = 6, className, "aria-hidden": a )} - - + @@ -85,7 +79,7 @@ export const TextMaskEffect = ({ text, duration = 6, className, "aria-hidden": a {text} - {text} - + {chip} - - + - + ); } @@ -137,7 +138,14 @@ type Props = Omit, "value" | "onChange"> & { hideDescription?: boolean; }; -export function ChipInput({ value, defaultValue = [], onChange, className, hideDescription = false, ...props }: Props) { +export function ChipInput({ + value, + defaultValue = EMPTY_CHIPS, + onChange, + className, + hideDescription = false, + ...props +}: Props) { const [chips, setChips] = useControlledState({ value, defaultValue, @@ -154,7 +162,10 @@ export function ChipInput({ value, defaultValue = [], onChange, className, hideD const addChips = React.useCallback( (values: string[]) => { - const nextValues = values.map((chip) => chip.trim()).filter(Boolean); + const nextValues = values.flatMap((chip) => { + const trimmed = chip.trim(); + return trimmed ? [trimmed] : []; + }); if (nextValues.length === 0) return; const newChips = Array.from(new Set([...chips, ...nextValues])); @@ -195,7 +206,7 @@ export function ChipInput({ value, defaultValue = [], onChange, className, hideD setEditingIndex(null); setInput(""); } else if (editingIndex !== null && editingIndex > index) { - setEditingIndex(editingIndex - 1); + setEditingIndex((current) => (current !== null && current > index ? current - 1 : current)); } }, [chips, setChips, editingIndex], @@ -328,7 +339,7 @@ export function ChipInput({ value, defaultValue = [], onChange, className, hideD className={cn("max-h-24 overflow-y-auto px-2 py-1.5", hasChips ? "border-border/70 border-b" : "hidden")} > - + {chips.map((chip, idx) => ( ))} - +
@@ -355,11 +366,11 @@ export function ChipInput({ value, defaultValue = [], onChange, className, hideD placeholder={isEditingKeyword ? t`Editing keyword...` : t`Add a keyword...`} onKeyDown={handleKeyDown} onChange={handleInputChange} - className="h-9 flex-1 border-none px-0 py-0 focus-visible:border-none focus-visible:ring-0 dark:bg-transparent" + className="h-9 flex-1 border-none p-0 focus-visible:border-none focus-visible:ring-0 dark:bg-transparent" /> {chips.length > 0 && ( - {isEditingKeyword ? Edit : chips.length} - + )}
diff --git a/apps/web/src/components/input/rich-input.tsx b/apps/web/src/components/input/rich-input.tsx index 38090f332..6f6c2ba22 100644 --- a/apps/web/src/components/input/rich-input.tsx +++ b/apps/web/src/components/input/rich-input.tsx @@ -196,7 +196,7 @@ export function RichInput({ value, onChange, style, className, editorClassName, ); } -function EditorToolbar({ editor, isFullscreen }: { editor: Editor; isFullscreen: boolean }) { +function useEditorToolbarState(editor: Editor) { const prompt = usePrompt(); const state = useEditorState({ @@ -367,6 +367,18 @@ function EditorToolbar({ editor, isFullscreen }: { editor: Editor; isFullscreen: }, }); + return state; +} + +type EditorToolbarState = ReturnType; + +function EditorToolbar({ editor, isFullscreen }: { editor: Editor; isFullscreen: boolean }) { + const state = useEditorToolbarState(editor); + + return renderEditorToolbar(state, isFullscreen); +} + +function renderEditorToolbar(state: EditorToolbarState, isFullscreen: boolean) { return (
{ , ); - expect(screen.getByText("Loading...")).toBeInTheDocument(); + expect(screen.getByText("Loading…")).toBeInTheDocument(); }); it("fills the viewport (fixed inset-0)", () => { diff --git a/apps/web/src/components/layout/loading-screen.tsx b/apps/web/src/components/layout/loading-screen.tsx index f0dd5f875..0b1293dd5 100644 --- a/apps/web/src/components/layout/loading-screen.tsx +++ b/apps/web/src/components/layout/loading-screen.tsx @@ -6,7 +6,7 @@ export function LoadingScreen() {

- Loading... + Loading…

); diff --git a/apps/web/src/components/level/display.tsx b/apps/web/src/components/level/display.tsx index 1e322bece..774fb9396 100644 --- a/apps/web/src/components/level/display.tsx +++ b/apps/web/src/components/level/display.tsx @@ -5,6 +5,8 @@ import { cn } from "@reactive-resume/utils/style"; type Props = z.infer & React.ComponentProps<"div"> & { level: number }; +const LEVEL_ITEM_KEYS = ["level-1", "level-2", "level-3", "level-4", "level-5"] as const; + export function LevelDisplay({ icon, type, level, className, ...props }: Props) { if (level === 0) return null; if (type === "hidden" || icon === "") return null; @@ -19,13 +21,13 @@ export function LevelDisplay({ icon, type, level, className, ...props }: Props) className={cn("flex items-center gap-x-2", type === "progress-bar" && "gap-x-0", className)} {...props} > - {Array.from({ length: 5 }).map((_, index) => { + {LEVEL_ITEM_KEYS.map((itemKey, index) => { const isActive = index < level; if (type === "progress-bar") { return (
); @@ -46,7 +48,7 @@ export function LevelDisplay({ icon, type, level, className, ...props }: Props) return (
0) { // candidateIndex: 0 (first), 1 (last) const lastIndex = uniqueWeights.length - 1; const candidate = weights.length === 0 ? uniqueWeights[0] : uniqueWeights[lastIndex]; - if (!weights.includes(candidate)) weights.push(candidate); - else break; + if (!selectedWeights.has(candidate)) { + weights.push(candidate); + selectedWeights.add(candidate); + } else break; } return weights.length > 0 ? weights : null; diff --git a/apps/web/src/components/ui/combobox.tsx b/apps/web/src/components/ui/combobox.tsx index e1e50d963..506614a55 100644 --- a/apps/web/src/components/ui/combobox.tsx +++ b/apps/web/src/components/ui/combobox.tsx @@ -85,9 +85,10 @@ function Combobox(props: ComboboxProps< (v: TValue | TValue[] | null | undefined) => { if (multiple) { if (!v || !Array.isArray(v)) return []; - return (v as TValue[]) - .map((item) => optionMap.get(String(item)) ?? null) - .filter(Boolean) as ComboboxOption[]; + return (v as TValue[]).flatMap((item) => { + const option = optionMap.get(String(item)); + return option ? [option] : []; + }); } if (v == null) return null; return optionMap.get(String(v)) ?? null; diff --git a/apps/web/src/components/ui/donation-toast.tsx b/apps/web/src/components/ui/donation-toast.tsx index d59437b1e..debef1de4 100644 --- a/apps/web/src/components/ui/donation-toast.tsx +++ b/apps/web/src/components/ui/donation-toast.tsx @@ -52,7 +52,7 @@ function DonationToastCard({ onDismiss, onDonate }: DonationToastCardProps) { return (
-
+
@@ -70,7 +70,7 @@ function DonationToastCard({ onDismiss, onDonate }: DonationToastCardProps) { -
diff --git a/apps/web/src/dialogs/auth/enable-two-factor.tsx b/apps/web/src/dialogs/auth/enable-two-factor.tsx index 8dac78315..7b15a962d 100644 --- a/apps/web/src/dialogs/auth/enable-two-factor.tsx +++ b/apps/web/src/dialogs/auth/enable-two-factor.tsx @@ -34,12 +34,14 @@ const verifyFormSchema = z.object({ code: z.string().length(6, "Code must be 6 digits"), }); +type TwoFactorSetupStep = "backup" | "enable" | "verify"; + export function EnableTwoFactorDialog(_: DialogProps<"auth.two-factor.enable">) { const router = useRouter(); const [totpUri, setTotpUri] = useState(null); const [backupCodes, setBackupCodes] = useState(null); - const [step, setStep] = useState<"enable" | "verify" | "backup">("enable"); + const [step, setStep] = useState("enable"); const [showPassword, toggleShowPassword] = useToggle(false); const closeDialog = useDialogStore((state) => state.closeDialog); @@ -48,7 +50,7 @@ export function EnableTwoFactorDialog(_: DialogProps<"auth.two-factor.enable">) defaultValues: { password: "" }, validators: { onSubmit: enableFormSchema }, onSubmit: async ({ value }) => { - const toastId = toast.loading(t`Enabling two-factor authentication...`); + const toastId = toast.loading(t`Enabling two-factor authentication…`); const { data, error } = await authClient.twoFactor.enable({ password: value.password, @@ -84,7 +86,7 @@ export function EnableTwoFactorDialog(_: DialogProps<"auth.two-factor.enable">) defaultValues: { code: "" }, validators: { onSubmit: verifyFormSchema }, onSubmit: async ({ value }) => { - const toastId = toast.loading(t`Verifying code...`); + const toastId = toast.loading(t`Verifying code…`); const { error } = await authClient.twoFactor.verifyTotp({ code: value.code }); @@ -167,28 +169,10 @@ export function EnableTwoFactorDialog(_: DialogProps<"auth.two-factor.enable">) - {match(step) - .with("enable", () => Enable Two-Factor Authentication) - .with("verify", () => Setup Authenticator App) - .with("backup", () => Copy Backup Codes) - .exhaustive()} + - {match(step) - .with("enable", () => ( - - Enter your password to confirm setting up two-factor authentication. When enabled, you'll need to enter - a code from your authenticator app every time you log in. - - )) - .with("verify", () => ( - - Scan the QR code below with your preferred authenticator app. You can also copy the secret below and - paste it into your app. - - )) - .with("backup", () => Copy and store these backup codes in case you lose your device.) - .exhaustive()} + @@ -361,6 +345,32 @@ function extractSecretFromTotpUri(totpUri: string): string | null { } } +function TwoFactorDialogTitle({ step }: { step: TwoFactorSetupStep }) { + return match(step) + .with("enable", () => Enable Two-Factor Authentication) + .with("verify", () => Setup Authenticator App) + .with("backup", () => Copy Backup Codes) + .exhaustive(); +} + +function TwoFactorDialogDescription({ step }: { step: TwoFactorSetupStep }) { + return match(step) + .with("enable", () => ( + + Enter your password to confirm setting up two-factor authentication. When enabled, you'll need to enter a code + from your authenticator app every time you log in. + + )) + .with("verify", () => ( + + Scan the QR code below with your preferred authenticator app. You can also copy the secret below and paste it + into your app. + + )) + .with("backup", () => Copy and store these backup codes in case you lose your device.) + .exhaustive(); +} + function TwoFactorQRCode({ totpUri }: { totpUri: string }) { return ( + registry.renderers.map((renderer) => [renderer.type, renderer] as const), + ), +); + export const renderDialog = (dialog: DialogSchema | null) => { if (!dialog) return null; - for (const registry of dialogRendererRegistries) { - const renderer = registry.renderers.find((entry) => entry.type === dialog.type); - if (renderer) return renderer.render(dialog as never); - } + const renderer = dialogRendererByType.get(dialog.type); + if (renderer) return renderer.render(dialog as never); return null; }; diff --git a/apps/web/src/dialogs/resume/import.tsx b/apps/web/src/dialogs/resume/import.tsx index c39f28d92..6e9d1da74 100644 --- a/apps/web/src/dialogs/resume/import.tsx +++ b/apps/web/src/dialogs/resume/import.tsx @@ -94,7 +94,7 @@ export function ImportResumeDialog(_: DialogProps<"resume.import">) { const prevTypeRef = useRef(""); const inputRef = useRef(null); - const [isLoading, setIsLoading] = useState(false); + const [isImporting, setIsImporting] = useState(false); const { mutateAsync: importResume } = useMutation(orpc.resume.import.mutationOptions()); const { data: aiProviders, isLoading: isLoadingAiProviders } = useQuery(orpc.aiProviders.list.queryOptions()); @@ -109,7 +109,7 @@ export function ImportResumeDialog(_: DialogProps<"resume.import">) { onSubmit: async ({ value }) => { if (value.type === "" || !value.file) return; - setIsLoading(true); + setIsImporting(true); const toastId = toast.loading(t`Importing your resume...`, { description: t`This may take a few minutes, depending on the response of the AI provider. Please do not close the window or refresh the page.`, @@ -200,7 +200,7 @@ export function ImportResumeDialog(_: DialogProps<"resume.import">) { { id: toastId, description: null }, ); } finally { - setIsLoading(false); + setIsImporting(false); } }, }); @@ -351,9 +351,9 @@ export function ImportResumeDialog(_: DialogProps<"resume.import">) { - diff --git a/apps/web/src/dialogs/resume/index.tsx b/apps/web/src/dialogs/resume/index.tsx index 67b7ef530..d96d67e38 100644 --- a/apps/web/src/dialogs/resume/index.tsx +++ b/apps/web/src/dialogs/resume/index.tsx @@ -6,7 +6,7 @@ import { CaretDownIcon, MagicWandIcon, PencilSimpleLineIcon, PlusIcon, TestTubeI import { useStore } from "@tanstack/react-form"; import { useMutation } from "@tanstack/react-query"; import { useNavigate, useParams } from "@tanstack/react-router"; -import { useEffect, useMemo } from "react"; +import { useEffect } from "react"; import { toast } from "sonner"; import z from "zod"; import { Button } from "@reactive-resume/ui/components/button"; @@ -332,12 +332,10 @@ export function DuplicateResumeDialog({ data }: DialogProps<"resume.duplicate">) const ResumeForm = withForm({ defaultValues, - render: ({ form }) => { + render: function ResumeFormRenderer({ form }) { const { data: session } = authClient.useSession(); - const slugPrefix = useMemo(() => { - return `${window.location.origin}/${session?.user.username ?? ""}/`; - }, [session]); + const slugPrefix = `${window.location.origin}/${session?.user.username ?? ""}/`; const onGenerateName = () => { form.setFieldValue("name", generateRandomName()); diff --git a/apps/web/src/dialogs/resume/sections/award.tsx b/apps/web/src/dialogs/resume/sections/award.tsx index 02d4097dd..7adc4190a 100644 --- a/apps/web/src/dialogs/resume/sections/award.tsx +++ b/apps/web/src/dialogs/resume/sections/award.tsx @@ -144,7 +144,7 @@ export function UpdateAwardDialog({ data }: DialogProps<"resume.sections.awards. const AwardForm = withForm({ defaultValues, - render: ({ form }) => { + render: function AwardFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); return ( diff --git a/apps/web/src/dialogs/resume/sections/certification.tsx b/apps/web/src/dialogs/resume/sections/certification.tsx index dc296f145..1e8a15c9f 100644 --- a/apps/web/src/dialogs/resume/sections/certification.tsx +++ b/apps/web/src/dialogs/resume/sections/certification.tsx @@ -143,7 +143,7 @@ export function UpdateCertificationDialog({ data }: DialogProps<"resume.sections const CertificationForm = withForm({ defaultValues, - render: ({ form }) => { + render: function CertificationFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); return ( diff --git a/apps/web/src/dialogs/resume/sections/custom.tsx b/apps/web/src/dialogs/resume/sections/custom.tsx index b8751dcab..f4be4ae12 100644 --- a/apps/web/src/dialogs/resume/sections/custom.tsx +++ b/apps/web/src/dialogs/resume/sections/custom.tsx @@ -177,7 +177,7 @@ export function UpdateCustomSectionDialog({ data }: DialogProps<"resume.sections const CreateCustomSectionForm = withForm({ defaultValues, - render: ({ form }) => { + render: function CreateCustomSectionFormRenderer({ form }) { const { i18n } = useLingui(); return ( @@ -242,7 +242,7 @@ const CreateCustomSectionForm = withForm({ const UpdateCustomSectionForm = withForm({ defaultValues, - render: ({ form }) => { + render: function UpdateCustomSectionFormRenderer({ form }) { const { i18n } = useLingui(); return ( diff --git a/apps/web/src/dialogs/resume/sections/education.tsx b/apps/web/src/dialogs/resume/sections/education.tsx index f118e8cc9..33c8fd5ef 100644 --- a/apps/web/src/dialogs/resume/sections/education.tsx +++ b/apps/web/src/dialogs/resume/sections/education.tsx @@ -146,7 +146,7 @@ export function UpdateEducationDialog({ data }: DialogProps<"resume.sections.edu const EducationForm = withForm({ defaultValues, - render: ({ form }) => { + render: function EducationFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); return ( diff --git a/apps/web/src/dialogs/resume/sections/experience.tsx b/apps/web/src/dialogs/resume/sections/experience.tsx index 68fc2626d..6c8aa6f78 100644 --- a/apps/web/src/dialogs/resume/sections/experience.tsx +++ b/apps/web/src/dialogs/resume/sections/experience.tsx @@ -149,7 +149,7 @@ export function UpdateExperienceDialog({ data }: DialogProps<"resume.sections.ex const ExperienceForm = withForm({ defaultValues, - render: ({ form }) => { + render: function ExperienceFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); const roles = useStore(form.store, (s) => s.values.roles); const hasRoles = roles.length > 0; @@ -297,7 +297,7 @@ const RoleFields = withForm({ index: 0, onRemove: () => undefined, }, - render: ({ form, role, index, onRemove }) => { + render: function RoleFieldsRenderer({ form, role, index, onRemove }) { const controls = useDragControls(); return ( diff --git a/apps/web/src/dialogs/resume/sections/interest.tsx b/apps/web/src/dialogs/resume/sections/interest.tsx index 00e3dc690..3b39bc286 100644 --- a/apps/web/src/dialogs/resume/sections/interest.tsx +++ b/apps/web/src/dialogs/resume/sections/interest.tsx @@ -145,7 +145,7 @@ export function UpdateInterestDialog({ data }: DialogProps<"resume.sections.inte const InterestForm = withForm({ defaultValues, - render: ({ form }) => { + render: function InterestFormRenderer({ form }) { const nameMeta = useStore(form.store, (s) => s.fieldMeta?.name); const isNameInvalid = (nameMeta?.isTouched ?? false) && (nameMeta?.errors?.length ?? 0) > 0; diff --git a/apps/web/src/dialogs/resume/sections/profile.tsx b/apps/web/src/dialogs/resume/sections/profile.tsx index a4d2214ad..580019745 100644 --- a/apps/web/src/dialogs/resume/sections/profile.tsx +++ b/apps/web/src/dialogs/resume/sections/profile.tsx @@ -153,7 +153,7 @@ export function UpdateProfileDialog({ data }: DialogProps<"resume.sections.profi const ProfileForm = withForm({ defaultValues, - render: ({ form }) => { + render: function ProfileFormRenderer({ form }) { const networkMeta = useStore(form.store, (s) => s.fieldMeta?.network); const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); diff --git a/apps/web/src/dialogs/resume/sections/project.tsx b/apps/web/src/dialogs/resume/sections/project.tsx index 0b8e81553..113c99577 100644 --- a/apps/web/src/dialogs/resume/sections/project.tsx +++ b/apps/web/src/dialogs/resume/sections/project.tsx @@ -142,7 +142,7 @@ export function UpdateProjectDialog({ data }: DialogProps<"resume.sections.proje const ProjectForm = withForm({ defaultValues, - render: ({ form }) => { + render: function ProjectFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); return ( diff --git a/apps/web/src/dialogs/resume/sections/publication.tsx b/apps/web/src/dialogs/resume/sections/publication.tsx index 79fba8bf9..9648b8d3d 100644 --- a/apps/web/src/dialogs/resume/sections/publication.tsx +++ b/apps/web/src/dialogs/resume/sections/publication.tsx @@ -143,7 +143,7 @@ export function UpdatePublicationDialog({ data }: DialogProps<"resume.sections.p const PublicationForm = withForm({ defaultValues, - render: ({ form }) => { + render: function PublicationFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); return ( diff --git a/apps/web/src/dialogs/resume/sections/reference.tsx b/apps/web/src/dialogs/resume/sections/reference.tsx index 2aec043dd..0bd10f049 100644 --- a/apps/web/src/dialogs/resume/sections/reference.tsx +++ b/apps/web/src/dialogs/resume/sections/reference.tsx @@ -143,7 +143,7 @@ export function UpdateReferenceDialog({ data }: DialogProps<"resume.sections.ref const ReferenceForm = withForm({ defaultValues, - render: ({ form }) => { + render: function ReferenceFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); return ( diff --git a/apps/web/src/dialogs/resume/sections/skill.tsx b/apps/web/src/dialogs/resume/sections/skill.tsx index 5fa74c7e7..c59c47f89 100644 --- a/apps/web/src/dialogs/resume/sections/skill.tsx +++ b/apps/web/src/dialogs/resume/sections/skill.tsx @@ -149,7 +149,7 @@ export function UpdateSkillDialog({ data }: DialogProps<"resume.sections.skills. const SkillForm = withForm({ defaultValues, - render: ({ form }) => { + render: function SkillFormRenderer({ form }) { const nameMeta = useStore(form.store, (s) => s.fieldMeta?.name); const isNameInvalid = (nameMeta?.isTouched ?? false) && (nameMeta?.errors?.length ?? 0) > 0; diff --git a/apps/web/src/dialogs/resume/sections/volunteer.tsx b/apps/web/src/dialogs/resume/sections/volunteer.tsx index c41822a02..bfc96a88b 100644 --- a/apps/web/src/dialogs/resume/sections/volunteer.tsx +++ b/apps/web/src/dialogs/resume/sections/volunteer.tsx @@ -143,7 +143,7 @@ export function UpdateVolunteerDialog({ data }: DialogProps<"resume.sections.vol const VolunteerForm = withForm({ defaultValues, - render: ({ form }) => { + render: function VolunteerFormRenderer({ form }) { const inlineLink = useStore(form.store, (s) => s.values.website.inlineLink); return ( diff --git a/apps/web/src/dialogs/resume/template/gallery.tsx b/apps/web/src/dialogs/resume/template/gallery.tsx index 8ae4c03c0..81d04ad72 100644 --- a/apps/web/src/dialogs/resume/template/gallery.tsx +++ b/apps/web/src/dialogs/resume/template/gallery.tsx @@ -99,7 +99,7 @@ function TemplateCard({ id, metadata, isActive, onSelect }: TemplateCardProps) { sideOffset={-32} align="start" alignOffset={32} - className="pointer-events-none! flex w-80 flex-col justify-between space-y-6 rounded-md bg-background/80 p-4 pb-6" + className="pointer-events-none! flex w-80 flex-col justify-between gap-y-6 rounded-md bg-background/80 p-4 pb-6" >

{metadata.name}

diff --git a/apps/web/src/features/auth/layout.tsx b/apps/web/src/features/auth/layout.tsx index ed99140b2..5bcfbdb7b 100644 --- a/apps/web/src/features/auth/layout.tsx +++ b/apps/web/src/features/auth/layout.tsx @@ -3,7 +3,7 @@ import { BrandIcon } from "@reactive-resume/ui/components/brand-icon"; export function AuthLayout() { return ( -
+
diff --git a/apps/web/src/features/auth/pages/forgot-password.tsx b/apps/web/src/features/auth/pages/forgot-password.tsx index d610f9503..3c1f99e6a 100644 --- a/apps/web/src/features/auth/pages/forgot-password.tsx +++ b/apps/web/src/features/auth/pages/forgot-password.tsx @@ -51,7 +51,7 @@ export function ForgotPasswordPage() { return ( <>
-

+

Forgot your password?

@@ -120,7 +120,7 @@ function PostForgotPasswordScreen() { return ( <>
-

+

You've got mail!

diff --git a/apps/web/src/features/auth/pages/login.tsx b/apps/web/src/features/auth/pages/login.tsx index 9b42fde19..e71ecc96c 100644 --- a/apps/web/src/features/auth/pages/login.tsx +++ b/apps/web/src/features/auth/pages/login.tsx @@ -102,7 +102,7 @@ export function LoginPage({ disableEmailAuth, disableSignups }: Props) { return ( <>

-

+

Sign in to your account

diff --git a/apps/web/src/features/auth/pages/register.tsx b/apps/web/src/features/auth/pages/register.tsx index d09889b6e..b6339473e 100644 --- a/apps/web/src/features/auth/pages/register.tsx +++ b/apps/web/src/features/auth/pages/register.tsx @@ -74,7 +74,7 @@ export function RegisterPage({ disableEmailAuth }: Props) { return ( <>
-

+

Create a new account

@@ -251,7 +251,7 @@ function PostSignupScreen() { return ( <>
-

+

You've got mail!

diff --git a/apps/web/src/features/auth/pages/reset-password.tsx b/apps/web/src/features/auth/pages/reset-password.tsx index 3bd8fecff..8eff586f2 100644 --- a/apps/web/src/features/auth/pages/reset-password.tsx +++ b/apps/web/src/features/auth/pages/reset-password.tsx @@ -54,7 +54,7 @@ export function ResetPasswordPage({ token }: Props) { return ( <>

-

+

Reset your password

diff --git a/apps/web/src/features/auth/pages/resume-password.tsx b/apps/web/src/features/auth/pages/resume-password.tsx index ca4a27ed0..dafe5b071 100644 --- a/apps/web/src/features/auth/pages/resume-password.tsx +++ b/apps/web/src/features/auth/pages/resume-password.tsx @@ -81,7 +81,7 @@ export function ResumePasswordPage({ redirectPath }: Props) { return ( <>
-

+

The resume you are trying to access is password protected

diff --git a/apps/web/src/features/auth/pages/verify-2fa-backup.tsx b/apps/web/src/features/auth/pages/verify-2fa-backup.tsx index 54eae0ffb..397efa902 100644 --- a/apps/web/src/features/auth/pages/verify-2fa-backup.tsx +++ b/apps/web/src/features/auth/pages/verify-2fa-backup.tsx @@ -48,7 +48,7 @@ export function VerifyTwoFactorBackupPage() { return ( <>
-

+

Verify with a Backup Code

diff --git a/apps/web/src/features/auth/pages/verify-2fa.tsx b/apps/web/src/features/auth/pages/verify-2fa.tsx index de962adc0..be96688a6 100644 --- a/apps/web/src/features/auth/pages/verify-2fa.tsx +++ b/apps/web/src/features/auth/pages/verify-2fa.tsx @@ -49,7 +49,7 @@ export function VerifyTwoFactorPage() { return ( <>
-

+

Two-Factor Authentication

diff --git a/apps/web/src/features/command-palette/index.tsx b/apps/web/src/features/command-palette/index.tsx index 642a44c4c..81d680b33 100644 --- a/apps/web/src/features/command-palette/index.tsx +++ b/apps/web/src/features/command-palette/index.tsx @@ -77,7 +77,7 @@ export function CommandPalette() { - Type a command or search... + Type a command or search… @@ -112,11 +112,11 @@ export function CommandPalette() { isFirstPage ? t({ comment: "Placeholder in command palette input on root page", - message: "Type a command or search...", + message: "Type a command or search…", }) : t({ comment: "Placeholder in command palette input on nested pages", - message: "Search...", + message: "Search…", }) } aria-label={t({ diff --git a/apps/web/src/features/command-palette/pages/base.tsx b/apps/web/src/features/command-palette/pages/base.tsx index 444472bf7..459ecf0fb 100644 --- a/apps/web/src/features/command-palette/pages/base.tsx +++ b/apps/web/src/features/command-palette/pages/base.tsx @@ -1,4 +1,3 @@ -import { useMemo } from "react"; import { CommandGroup } from "@reactive-resume/ui/components/command"; import { useCommandPaletteStore } from "../store"; @@ -11,10 +10,7 @@ type Props = { export const BaseCommandGroup = ({ page, heading, children }: Props) => { const pages = useCommandPaletteStore((state) => state.pages); const currentPage = pages[pages.length - 1]; - - const isEnabled = useMemo(() => { - return currentPage === page; - }, [currentPage, page]); + const isEnabled = currentPage === page; if (!isEnabled) return null; diff --git a/apps/web/src/features/command-palette/pages/navigation.tsx b/apps/web/src/features/command-palette/pages/navigation.tsx index c31b3b04b..1805ce84b 100644 --- a/apps/web/src/features/command-palette/pages/navigation.tsx +++ b/apps/web/src/features/command-palette/pages/navigation.tsx @@ -29,7 +29,7 @@ export function NavigationCommandGroup() { return ( <> - Go to...}> + Go to…}> onNavigate("/")}> Home diff --git a/apps/web/src/features/command-palette/pages/preferences/index.test.tsx b/apps/web/src/features/command-palette/pages/preferences/index.test.tsx index 7c7b93c77..b454365a9 100644 --- a/apps/web/src/features/command-palette/pages/preferences/index.test.tsx +++ b/apps/web/src/features/command-palette/pages/preferences/index.test.tsx @@ -31,22 +31,22 @@ const renderGroup = () => ); describe("PreferencesCommandGroup", () => { - it("renders 'Change theme to...' and 'Change language to...' at the root", () => { + it("renders 'Change theme to…' and 'Change language to…' at the root", () => { renderGroup(); - expect(screen.getByText("Change theme to...")).toBeInTheDocument(); - expect(screen.getByText("Change language to...")).toBeInTheDocument(); + expect(screen.getByText("Change theme to…")).toBeInTheDocument(); + expect(screen.getByText("Change language to…")).toBeInTheDocument(); }); it("pushes 'theme' onto the page stack when the theme item is selected", () => { renderGroup(); - const item = screen.getByText("Change theme to..."); + const item = screen.getByText("Change theme to…"); fireEvent.click(item); expect(useCommandPaletteStore.getState().pages).toContain("theme"); }); it("pushes 'language' onto the page stack when the language item is selected", () => { renderGroup(); - fireEvent.click(screen.getByText("Change language to...")); + fireEvent.click(screen.getByText("Change language to…")); expect(useCommandPaletteStore.getState().pages).toContain("language"); }); }); diff --git a/apps/web/src/features/command-palette/pages/preferences/index.tsx b/apps/web/src/features/command-palette/pages/preferences/index.tsx index cbc5ddac7..14b36dee6 100644 --- a/apps/web/src/features/command-palette/pages/preferences/index.tsx +++ b/apps/web/src/features/command-palette/pages/preferences/index.tsx @@ -14,12 +14,12 @@ export function PreferencesCommandGroup() { Preferences}> pushPage("theme")}> - Change theme to... + Change theme to… pushPage("language")}> - Change language to... + Change language to… diff --git a/apps/web/src/features/command-palette/pages/resumes.tsx b/apps/web/src/features/command-palette/pages/resumes.tsx index b74db8235..d9de7a5b4 100644 --- a/apps/web/src/features/command-palette/pages/resumes.tsx +++ b/apps/web/src/features/command-palette/pages/resumes.tsx @@ -42,7 +42,7 @@ export function ResumesCommandGroup() { return ( <> - Search for...}> + Search for…}> pushPage("resumes")}> Resumes @@ -57,7 +57,7 @@ export function ResumesCommandGroup() { {isLoading ? ( - Loading resumes... + Loading resumes… ) : ( resumes?.map((resume) => ( diff --git a/apps/web/src/features/resume/builder/draft.ts b/apps/web/src/features/resume/builder/draft.ts index fa3ca69a7..016bf198b 100644 --- a/apps/web/src/features/resume/builder/draft.ts +++ b/apps/web/src/features/resume/builder/draft.ts @@ -66,6 +66,10 @@ function cloneResumeData(data: ResumeData): ResumeData { return structuredClone(data); } +function createResumeUpdateEventIterator(resumeId: string) { + return streamClient.resume.updates.subscribe({ id: resumeId }); +} + function setRuntimeBaseline(resume: Resume) { const runtime = getRuntime(resume.id); runtime.baselineData = cloneResumeData(resume.data); @@ -340,7 +344,7 @@ export function useResumeUpdateSubscription() { let didCancel = false; let retryTimer: number | undefined; - const cancel = consumeEventIterator(streamClient.resume.updates.subscribe({ id: resumeId }), { + const cancel = consumeEventIterator(createResumeUpdateEventIterator(resumeId), { onEvent: async () => { try { const resume = (await orpc.resume.getById.call({ id: resumeId })) as Resume; diff --git a/apps/web/src/features/resume/preview/pdf-canvas.tsx b/apps/web/src/features/resume/preview/pdf-canvas.tsx index c09277fb8..350bc8752 100644 --- a/apps/web/src/features/resume/preview/pdf-canvas.tsx +++ b/apps/web/src/features/resume/preview/pdf-canvas.tsx @@ -50,21 +50,22 @@ export function PdfCanvasDocument({ children, file, onLoadSuccess }: PdfCanvasDo const loadDocument = async () => { setDocument(null); - - const arrayBuffer = await file.arrayBuffer(); if (isCancelled) return; - loadingTask = getDocument({ data: new Uint8Array(arrayBuffer) }); - const pdfDocument = await loadingTask.promise; + const arrayBuffer = await file.arrayBuffer(); - if (isCancelled) { - void pdfDocument.destroy(); - return; + if (!isCancelled) { + loadingTask = getDocument({ data: new Uint8Array(arrayBuffer) }); + const pdfDocument = await loadingTask.promise; + + if (isCancelled) { + void pdfDocument.destroy(); + } else { + loadedDocument = pdfDocument; + setDocument(pdfDocument); + onLoadSuccessRef.current(pdfDocument); + } } - - loadedDocument = pdfDocument; - setDocument(pdfDocument); - onLoadSuccessRef.current(pdfDocument); }; void loadDocument().catch((error: unknown) => { @@ -138,8 +139,7 @@ export function PdfCanvasPage({ if (!canvasContext) return; - canvas.style.width = `${width}px`; - canvas.style.height = `${height}px`; + canvas.style.cssText = `width: ${width}px; height: ${height}px;`; canvas.width = Math.floor(width * renderScale); canvas.height = Math.floor(height * renderScale); diff --git a/apps/web/src/features/resume/preview/preview.browser.tsx b/apps/web/src/features/resume/preview/preview.browser.tsx index 8af15aa60..10403ed1c 100644 --- a/apps/web/src/features/resume/preview/preview.browser.tsx +++ b/apps/web/src/features/resume/preview/preview.browser.tsx @@ -1,6 +1,6 @@ import type { CSSProperties } from "react"; import type { PreviewPageSize, ResolvedResumePreviewProps } from "./preview.shared"; -import { AnimatePresence, motion } from "motion/react"; +import { AnimatePresence, m } from "motion/react"; import { useEffect, useRef, useState } from "react"; import { cn } from "@reactive-resume/utils/style"; import { createResumePdfBlob } from "@/features/resume/export/pdf-document"; @@ -108,14 +108,15 @@ export function ResumePreviewClient({ const generatePdfPreview = async () => { try { + if (cancelled || requestId !== requestIdRef.current) return; const blob = await createResumePdfBlob(resumeData); - if (cancelled || requestId !== requestIdRef.current) return; + if (!cancelled && requestId === requestIdRef.current) { + const nextPdf = createPreviewPdf(blob, pdfIdRef.current++, hasPreviewRef.current); - const nextPdf = createPreviewPdf(blob, pdfIdRef.current++, hasPreviewRef.current); - - hasPreviewRef.current = true; - setPreviewLayers((current) => addPreviewLayer(current, nextPdf)); + hasPreviewRef.current = true; + setPreviewLayers((current) => addPreviewLayer(current, nextPdf)); + } } catch {} }; @@ -151,7 +152,7 @@ export function ResumePreviewClient({
{previewLayers.map((visiblePdf) => ( - )} - + ))}
diff --git a/apps/web/src/features/resume/public/pdf-viewer.tsx b/apps/web/src/features/resume/public/pdf-viewer.tsx index 9fc14f0eb..736479d1c 100644 --- a/apps/web/src/features/resume/public/pdf-viewer.tsx +++ b/apps/web/src/features/resume/public/pdf-viewer.tsx @@ -2,7 +2,7 @@ import type { ResumeData } from "@reactive-resume/schema/resume/data"; import type { PDFDocumentLoadingTask, PDFDocumentProxy } from "pdfjs-dist/legacy/build/pdf.mjs"; import { AnnotationMode, GlobalWorkerOptions, getDocument } from "pdfjs-dist/legacy/build/pdf.mjs"; import { EventBus, LinkTarget, PDFLinkService, PDFViewer } from "pdfjs-dist/legacy/web/pdf_viewer.mjs"; -import { useEffect, useRef, useState } from "react"; +import { useEffect, useReducer, useRef } from "react"; import { Spinner } from "@reactive-resume/ui/components/spinner"; import { cn } from "@reactive-resume/utils/style"; import { createResumePdfBlob } from "@/features/resume/export/pdf-document"; @@ -20,35 +20,80 @@ type PdfViewerOptions = ConstructorParameters[0] & { abortSignal: AbortSignal; }; +type PdfViewerState = { + error: boolean; + fileVersion: number; + isReady: boolean; + viewerHeight: number | null; +}; + +type PdfViewerAction = + | { type: "error" } + | { type: "fileLoaded" } + | { type: "height"; height: number } + | { type: "ready" } + | { type: "resetForData" } + | { type: "viewerLoading" }; + +const INITIAL_PDF_VIEWER_STATE: PdfViewerState = { + error: false, + fileVersion: 0, + isReady: false, + viewerHeight: null, +}; + const clearPdfViewerDocument = (pdfViewer: PDFViewer) => { (pdfViewer.setDocument as (document: PDFDocumentProxy | null) => void)(null); }; +function pdfViewerReducer(state: PdfViewerState, action: PdfViewerAction): PdfViewerState { + switch (action.type) { + case "resetForData": + case "fileLoaded": + return { + ...INITIAL_PDF_VIEWER_STATE, + fileVersion: state.fileVersion + 1, + }; + case "viewerLoading": + return { ...state, error: false, isReady: false, viewerHeight: null }; + case "height": + return action.height > 0 && action.height !== state.viewerHeight + ? { ...state, viewerHeight: action.height } + : state; + case "ready": + return { ...state, isReady: true }; + case "error": + return { ...state, error: true, isReady: false }; + } +} + export function PdfViewer({ className, data }: PdfViewerProps) { const rootRef = useRef(null); const containerRef = useRef(null); const viewerRef = useRef(null); - const [file, setFile] = useState(null); - const [error, setError] = useState(false); - const [isReady, setIsReady] = useState(false); - const [viewerHeight, setViewerHeight] = useState(null); + const fileRef = useRef(null); + const [{ error, fileVersion, isReady, viewerHeight }, dispatch] = useReducer( + pdfViewerReducer, + INITIAL_PDF_VIEWER_STATE, + ); useEffect(() => { let isCancelled = false; - setError(false); - setFile(null); - setIsReady(false); - setViewerHeight(null); + fileRef.current = null; + dispatch({ type: "resetForData" }); void createResumePdfBlob(data) .then((blob) => { - if (!isCancelled) setFile(blob); + if (isCancelled) return; + + fileRef.current = blob; + dispatch({ type: "fileLoaded" }); }) .catch((error: unknown) => { if (!isCancelled) { console.error("Failed to generate public resume PDF", error); - setError(true); + dispatch({ type: "error" }); } }); @@ -58,9 +103,12 @@ export function PdfViewer({ className, data }: PdfViewerProps) { }, [data]); useEffect(() => { + void fileVersion; + const root = rootRef.current; const container = containerRef.current; const viewer = viewerRef.current; + const file = fileRef.current; if (!file || !root || !container || !viewer) return; @@ -87,7 +135,7 @@ export function PdfViewer({ className, data }: PdfViewerProps) { if (isCancelled) return; const nextHeight = Math.ceil(viewer.scrollHeight); - if (nextHeight > 0) setViewerHeight(nextHeight); + dispatch({ type: "height", height: nextHeight }); pdfViewer?.update(); }); }; @@ -103,51 +151,51 @@ export function PdfViewer({ className, data }: PdfViewerProps) { eventBus.on("pagesloaded", syncViewerHeight); eventBus.on("pagerendered", syncViewerHeight); viewer.replaceChildren(); - setError(false); - setIsReady(false); - setViewerHeight(null); + dispatch({ type: "viewerLoading" }); resizeObserver = new ResizeObserver(syncViewerHeight); resizeObserver.observe(viewer); const loadDocument = async () => { - const arrayBuffer = await file.arrayBuffer(); if (isCancelled) return; + const arrayBuffer = await file.arrayBuffer(); - loadingTask = getDocument({ - data: new Uint8Array(arrayBuffer), - docBaseUrl: window.location.href, - }); + if (!isCancelled) { + loadingTask = getDocument({ + data: new Uint8Array(arrayBuffer), + docBaseUrl: window.location.href, + }); - const nextDocument = await loadingTask.promise; - if (isCancelled) { - void nextDocument.destroy(); - return; + const nextDocument = await loadingTask.promise; + + if (isCancelled) { + void nextDocument.destroy(); + } else { + pdfDocument = nextDocument; + const pdfViewerOptions = { + annotationMode: AnnotationMode.ENABLE_FORMS, + container, + eventBus, + linkService, + removePageBorders: true, + abortSignal: abortController.signal, + viewer, + } satisfies PdfViewerOptions; + + pdfViewer = new PDFViewer(pdfViewerOptions); + + linkService.setViewer(pdfViewer); + pdfViewer.setDocument(pdfDocument); + linkService.setDocument(pdfDocument); + syncViewerHeight(); + dispatch({ type: "ready" }); + } } - - pdfDocument = nextDocument; - const pdfViewerOptions = { - annotationMode: AnnotationMode.ENABLE_FORMS, - container, - eventBus, - linkService, - removePageBorders: true, - abortSignal: abortController.signal, - viewer, - } satisfies PdfViewerOptions; - - pdfViewer = new PDFViewer(pdfViewerOptions); - - linkService.setViewer(pdfViewer); - pdfViewer.setDocument(pdfDocument); - linkService.setDocument(pdfDocument); - syncViewerHeight(); - setIsReady(true); }; void loadDocument().catch((error: unknown) => { if (!isCancelled) { console.error("Failed to render public resume PDF with PDF.js", error); - setError(true); + dispatch({ type: "error" }); } }); @@ -164,7 +212,7 @@ export function PdfViewer({ className, data }: PdfViewerProps) { void loadingTask?.destroy(); viewer.replaceChildren(); }; - }, [file]); + }, [fileVersion]); return (
)}
- + ); } diff --git a/apps/web/src/features/settings/authentication/components/password.tsx b/apps/web/src/features/settings/authentication/components/password.tsx index 5acd9f402..17374225d 100644 --- a/apps/web/src/features/settings/authentication/components/password.tsx +++ b/apps/web/src/features/settings/authentication/components/password.tsx @@ -1,7 +1,7 @@ import { Trans } from "@lingui/react/macro"; import { PasswordIcon, PencilSimpleLineIcon } from "@phosphor-icons/react"; import { Link, useNavigate } from "@tanstack/react-router"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useCallback, useMemo } from "react"; import { match } from "ts-pattern"; import { Button } from "@reactive-resume/ui/components/button"; @@ -24,7 +24,7 @@ export function PasswordSection() { }, [hasPassword, navigate, openDialog]); return ( - ( - Update Password - + )) .with(false, () => ( - } /> - + )) .exhaustive()} - + ); } diff --git a/apps/web/src/features/settings/authentication/components/social-provider.tsx b/apps/web/src/features/settings/authentication/components/social-provider.tsx index c30ab7830..6c8df288c 100644 --- a/apps/web/src/features/settings/authentication/components/social-provider.tsx +++ b/apps/web/src/features/settings/authentication/components/social-provider.tsx @@ -1,7 +1,7 @@ import type { AuthProvider } from "@reactive-resume/auth/types"; import { Trans } from "@lingui/react/macro"; import { LinkBreakIcon, LinkIcon } from "@phosphor-icons/react"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useCallback, useMemo } from "react"; import { match } from "ts-pattern"; import { Button } from "@reactive-resume/ui/components/button"; @@ -34,7 +34,7 @@ export function SocialProviderSection({ provider, name, animationDelay = 0 }: So }, [account, unlink, provider]); return ( - ( - - + )) .with(false, () => ( - Connect - + )) .exhaustive()}
- + ); } diff --git a/apps/web/src/features/settings/authentication/components/two-factor.tsx b/apps/web/src/features/settings/authentication/components/two-factor.tsx index 0870b4b85..7eca8a633 100644 --- a/apps/web/src/features/settings/authentication/components/two-factor.tsx +++ b/apps/web/src/features/settings/authentication/components/two-factor.tsx @@ -1,6 +1,6 @@ import { Trans } from "@lingui/react/macro"; import { KeyIcon, LockOpenIcon, ToggleLeftIcon, ToggleRightIcon } from "@phosphor-icons/react"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useCallback, useMemo } from "react"; import { match } from "ts-pattern"; import { Button } from "@reactive-resume/ui/components/button"; @@ -28,7 +28,7 @@ export function TwoFactorSection() { if (!hasPassword) return null; return ( - ( - Disable 2FA - + )) .with(false, () => ( - Enable 2FA - + )) .exhaustive()}
- + ); } diff --git a/apps/web/src/features/settings/authentication/index.tsx b/apps/web/src/features/settings/authentication/index.tsx index 6156c297d..a8ecf5dad 100644 --- a/apps/web/src/features/settings/authentication/index.tsx +++ b/apps/web/src/features/settings/authentication/index.tsx @@ -1,4 +1,4 @@ -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useEnabledProviders } from "./components/hooks"; import { PasskeysSection } from "./components/passkeys"; import { PasswordSection } from "./components/password"; @@ -9,7 +9,7 @@ export function AuthenticationSettingsPage() { const { enabledProviders } = useEnabledProviders(); return ( - )} - + ); } diff --git a/apps/web/src/features/settings/integrations/components/ai-section.tsx b/apps/web/src/features/settings/integrations/components/ai-section.tsx index d9404c771..679e99cb3 100644 --- a/apps/web/src/features/settings/integrations/components/ai-section.tsx +++ b/apps/web/src/features/settings/integrations/components/ai-section.tsx @@ -408,7 +408,7 @@ export function AISettingsSection() { {isLoading ? (
- Loading providers... + Loading providers…
) : null} diff --git a/apps/web/src/features/settings/integrations/index.tsx b/apps/web/src/features/settings/integrations/index.tsx index a7d36ca89..c11419ef2 100644 --- a/apps/web/src/features/settings/integrations/index.tsx +++ b/apps/web/src/features/settings/integrations/index.tsx @@ -1,4 +1,4 @@ -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useIsClient } from "usehooks-ts"; import { AISettingsSection } from "./components/ai-section"; @@ -8,13 +8,13 @@ export function IntegrationsSettingsPage() { if (!isClient) return null; return ( - - + ); } diff --git a/apps/web/src/features/settings/pages/api-keys.tsx b/apps/web/src/features/settings/pages/api-keys.tsx index 93dca6ee1..e13573b77 100644 --- a/apps/web/src/features/settings/pages/api-keys.tsx +++ b/apps/web/src/features/settings/pages/api-keys.tsx @@ -2,7 +2,7 @@ import { t } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; import { BookOpenIcon, KeyIcon, LinkSimpleIcon, PlusIcon, TrashSimpleIcon } from "@phosphor-icons/react"; import { useQuery, useQueryClient } from "@tanstack/react-query"; -import { AnimatePresence, motion } from "motion/react"; +import { AnimatePresence, m } from "motion/react"; import { toast } from "sonner"; import { Button } from "@reactive-resume/ui/components/button"; import { Separator } from "@reactive-resume/ui/components/separator"; @@ -66,7 +66,7 @@ export function ApiKeysSettingsPage() { }; return ( - {apiKeys.map((key, index) => ( -
- onDelete(key.id)}> - - + + ))}
- + ); } diff --git a/apps/web/src/features/settings/pages/danger-zone.tsx b/apps/web/src/features/settings/pages/danger-zone.tsx index ef47ffe21..6881e2535 100644 --- a/apps/web/src/features/settings/pages/danger-zone.tsx +++ b/apps/web/src/features/settings/pages/danger-zone.tsx @@ -3,7 +3,7 @@ import { Trans } from "@lingui/react/macro"; import { TrashSimpleIcon } from "@phosphor-icons/react"; import { useMutation } from "@tanstack/react-query"; import { useNavigate } from "@tanstack/react-router"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useState } from "react"; import { toast } from "sonner"; import { Button } from "@reactive-resume/ui/components/button"; @@ -62,7 +62,7 @@ export function DangerZoneSettingsPage() { }; return ( - - Delete Account - - + + ); } diff --git a/apps/web/src/features/settings/pages/preferences.tsx b/apps/web/src/features/settings/pages/preferences.tsx index ce35d907c..1cb4c6d32 100644 --- a/apps/web/src/features/settings/pages/preferences.tsx +++ b/apps/web/src/features/settings/pages/preferences.tsx @@ -1,6 +1,6 @@ import { Trans } from "@lingui/react/macro"; import { ArrowRightIcon } from "@phosphor-icons/react"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { Button } from "@reactive-resume/ui/components/button"; import { Label } from "@reactive-resume/ui/components/label"; import { LocaleCombobox } from "@/features/locale/combobox"; @@ -8,7 +8,7 @@ import { ThemeCombobox } from "@/features/theme/combobox"; export function PreferencesSettingsPage() { return ( -
- + ); } diff --git a/apps/web/src/features/settings/pages/profile.tsx b/apps/web/src/features/settings/pages/profile.tsx index 865c9df61..dc632f6fe 100644 --- a/apps/web/src/features/settings/pages/profile.tsx +++ b/apps/web/src/features/settings/pages/profile.tsx @@ -4,7 +4,7 @@ import { Trans } from "@lingui/react/macro"; import { CheckIcon, WarningIcon } from "@phosphor-icons/react"; import { useStore } from "@tanstack/react-form"; import { useRouter } from "@tanstack/react-router"; -import { AnimatePresence, motion } from "motion/react"; +import { AnimatePresence, m } from "motion/react"; import { toast } from "sonner"; import z from "zod"; import { Button } from "@reactive-resume/ui/components/button"; @@ -129,7 +129,7 @@ export function ProfileSettingsPage({ session }: Props) { }; return ( - {isDirty && ( - Save Changes - + )} - + ); } diff --git a/apps/web/src/features/theme/toggle-button.tsx b/apps/web/src/features/theme/toggle-button.tsx index cc13de4db..5fa28762b 100644 --- a/apps/web/src/features/theme/toggle-button.tsx +++ b/apps/web/src/features/theme/toggle-button.tsx @@ -1,64 +1,22 @@ import { t } from "@lingui/core/macro"; import { MoonIcon, SunIcon } from "@phosphor-icons/react"; -import { useCallback, useRef } from "react"; -import { flushSync } from "react-dom"; +import { startTransition, useCallback } from "react"; import { Button } from "@reactive-resume/ui/components/button"; import { useTheme } from "./provider"; export function ThemeToggleButton(props: React.ComponentProps) { const { theme, toggleTheme } = useTheme(); - const buttonRef = useRef(null); - const onToggleTheme = useCallback(async () => { - if ( - !buttonRef.current || - !document.startViewTransition || - window.matchMedia("(prefers-reduced-motion: reduce)").matches - ) { + const onToggleTheme = useCallback(() => { + startTransition(() => { toggleTheme(); - return; - } - - let timeout: NodeJS.Timeout; - const style = document.createElement("style"); - - style.textContent = ` - ::view-transition-old(root), ::view-transition-new(root) { - mix-blend-mode: normal !important; - animation: none !important; - } - `; - - function transitionCallback() { - flushSync(() => { - toggleTheme(); - timeout = setTimeout(() => { - clearTimeout(timeout); - document.head.removeChild(style); - }, 1000); - }); - } - - document.head.appendChild(style); - await document.startViewTransition(transitionCallback).ready; - - const { top, left, width, height } = buttonRef.current.getBoundingClientRect(); - const x = left + width / 2; - const y = top + height / 2; - const right = window.innerWidth - left; - const bottom = window.innerHeight - top; - const maxRadius = Math.hypot(Math.max(left, right), Math.max(top, bottom)); - - document.documentElement.animate( - { clipPath: [`circle(0px at ${x}px ${y}px)`, `circle(${maxRadius}px at ${x}px ${y}px)`] }, - { duration: 500, easing: "ease-in-out", pseudoElement: "::view-transition-new(root)" }, - ); + }); }, [toggleTheme]); const ariaLabel = theme === "dark" ? t`Switch to light theme` : t`Switch to dark theme`; return ( - ); diff --git a/apps/web/src/hooks/use-confirm.tsx b/apps/web/src/hooks/use-confirm.tsx index 87901f809..25360e08c 100644 --- a/apps/web/src/hooks/use-confirm.tsx +++ b/apps/web/src/hooks/use-confirm.tsx @@ -88,7 +88,7 @@ export function ConfirmDialogProvider({ children }: { children: React.ReactNode } export function useConfirm() { - const context = React.useContext(ConfirmContext); + const context = React.use(ConfirmContext); if (!context) { throw new Error("useConfirm must be used within a ."); diff --git a/apps/web/src/hooks/use-prompt.tsx b/apps/web/src/hooks/use-prompt.tsx index 99161a54a..6dd85b885 100644 --- a/apps/web/src/hooks/use-prompt.tsx +++ b/apps/web/src/hooks/use-prompt.tsx @@ -55,10 +55,12 @@ export function PromptDialogProvider({ children }: { children: React.ReactNode } React.useEffect(() => { if (!state.open) return; - setTimeout(() => { + const timeoutId = window.setTimeout(() => { if (!inputRef.current) return; inputRef.current.focus(); }, 0); + + return () => window.clearTimeout(timeoutId); }, [state.open]); const prompt = React.useCallback(async (title: string, options?: PromptOptions): Promise => { @@ -132,7 +134,7 @@ export function PromptDialogProvider({ children }: { children: React.ReactNode } } export function usePrompt() { - const context = React.useContext(PromptContext); + const context = React.use(PromptContext); if (!context) { throw new Error("usePrompt must be used within a ."); diff --git a/apps/web/src/libs/resume/move-item.ts b/apps/web/src/libs/resume/move-item.ts index aecdb45cc..26543da76 100644 --- a/apps/web/src/libs/resume/move-item.ts +++ b/apps/web/src/libs/resume/move-item.ts @@ -96,6 +96,7 @@ export function getCompatibleMoveTargets( sourceSectionId: string | undefined, ): MoveTargetPage[] { const { pages } = resumeData.metadata.layout; + const customSectionById = new Map(resumeData.customSections.map((section) => [section.id, section])); const result: MoveTargetPage[] = []; for (let pageIndex = 0; pageIndex < pages.length; pageIndex++) { @@ -120,7 +121,7 @@ export function getCompatibleMoveTargets( } // Check if it's a custom section with matching type - const customSection = resumeData.customSections.find((s) => s.id === sectionId); + const customSection = customSectionById.get(sectionId); if (customSection && customSection.type === sourceType) { compatibleSections.push({ sectionId: customSection.id, diff --git a/apps/web/src/libs/resume/section-title-locale.test.tsx b/apps/web/src/libs/resume/section-title-locale.test.tsx index ba592d85e..36079e58c 100644 --- a/apps/web/src/libs/resume/section-title-locale.test.tsx +++ b/apps/web/src/libs/resume/section-title-locale.test.tsx @@ -36,8 +36,10 @@ describe("createSectionTitleResolverForLocale", () => { it("caches resolvers per requested locale", async () => { const { createSectionTitleResolverForLocale } = await import("./section-title-locale"); - const a = await createSectionTitleResolverForLocale("en-US"); - const b = await createSectionTitleResolverForLocale("en-US"); + const [a, b] = await Promise.all([ + createSectionTitleResolverForLocale("en-US"), + createSectionTitleResolverForLocale("en-US"), + ]); expect(a).toBe(b); }); diff --git a/apps/web/src/libs/resume/section-title-locale.ts b/apps/web/src/libs/resume/section-title-locale.ts index f9f3355ce..a27b2b523 100644 --- a/apps/web/src/libs/resume/section-title-locale.ts +++ b/apps/web/src/libs/resume/section-title-locale.ts @@ -1,6 +1,6 @@ import type { SectionTitleResolver } from "@reactive-resume/pdf/section-title"; import { setupI18n } from "@lingui/core"; -import { useEffect, useState } from "react"; +import { useEffect, useReducer } from "react"; import { getLocaleMessages, resolveLocale } from "@/libs/locale"; import { createSectionTitleResolver } from "./section-title"; @@ -25,19 +25,22 @@ export const createSectionTitleResolverForLocale = async (localeParam: string) = }; export const useSectionTitleResolver = (locale?: string) => { - const [resolver, setResolver] = useState(null); + const [resolver, dispatchResolver] = useReducer( + (_state: SectionTitleResolver | null, nextResolver: SectionTitleResolver | null) => nextResolver, + null, + ); useEffect(() => { if (!locale) { - setResolver(null); + dispatchResolver(null); return; } let cancelled = false; - setResolver(null); + dispatchResolver(null); void createSectionTitleResolverForLocale(locale).then((nextResolver) => { - if (!cancelled) setResolver(() => nextResolver); + if (!cancelled) dispatchResolver(nextResolver); }); return () => { diff --git a/apps/web/src/routeTree.gen.ts b/apps/web/src/routeTree.gen.ts index 010403220..291ae5be4 100644 --- a/apps/web/src/routeTree.gen.ts +++ b/apps/web/src/routeTree.gen.ts @@ -8,622 +8,622 @@ // You should NOT make any changes in this file as it will be overwritten. // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified. -import { Route as rootRouteImport } from './routes/__root' -import { Route as DashboardRouteRouteImport } from './routes/dashboard/route' -import { Route as AuthRouteRouteImport } from './routes/auth/route' -import { Route as AgentRouteRouteImport } from './routes/agent/route' -import { Route as HomeRouteRouteImport } from './routes/_home/route' -import { Route as DashboardIndexRouteImport } from './routes/dashboard/index' -import { Route as AuthIndexRouteImport } from './routes/auth/index' -import { Route as AgentIndexRouteImport } from './routes/agent/index' -import { Route as HomeIndexRouteImport } from './routes/_home/index' -import { Route as TemplatesSplatRouteImport } from './routes/templates/$' -import { Route as AuthVerify2faBackupRouteImport } from './routes/auth/verify-2fa-backup' -import { Route as AuthVerify2faRouteImport } from './routes/auth/verify-2fa' -import { Route as AuthResumePasswordRouteImport } from './routes/auth/resume-password' -import { Route as AuthResetPasswordRouteImport } from './routes/auth/reset-password' -import { Route as AuthRegisterRouteImport } from './routes/auth/register' -import { Route as AuthLoginRouteImport } from './routes/auth/login' -import { Route as AuthForgotPasswordRouteImport } from './routes/auth/forgot-password' -import { Route as AgentNewRouteImport } from './routes/agent/new' -import { Route as AgentThreadIdRouteImport } from './routes/agent/$threadId' -import { Route as UsernameSlugRouteImport } from './routes/$username/$slug' -import { Route as BuilderResumeIdRouteRouteImport } from './routes/builder/$resumeId/route' -import { Route as DashboardResumesIndexRouteImport } from './routes/dashboard/resumes/index' -import { Route as BuilderResumeIdIndexRouteImport } from './routes/builder/$resumeId/index' -import { Route as DashboardSettingsProfileRouteImport } from './routes/dashboard/settings/profile' -import { Route as DashboardSettingsPreferencesRouteImport } from './routes/dashboard/settings/preferences' -import { Route as DashboardSettingsJobSearchRouteImport } from './routes/dashboard/settings/job-search' -import { Route as DashboardSettingsDangerZoneRouteImport } from './routes/dashboard/settings/danger-zone' -import { Route as DashboardSettingsApiKeysRouteImport } from './routes/dashboard/settings/api-keys' -import { Route as DashboardSettingsIntegrationsRouteRouteImport } from './routes/dashboard/settings/integrations/route' -import { Route as DashboardSettingsAuthenticationIndexRouteImport } from './routes/dashboard/settings/authentication/index' +import { Route as rootRouteImport } from "./routes/__root"; +import { Route as DashboardRouteRouteImport } from "./routes/dashboard/route"; +import { Route as AuthRouteRouteImport } from "./routes/auth/route"; +import { Route as AgentRouteRouteImport } from "./routes/agent/route"; +import { Route as HomeRouteRouteImport } from "./routes/_home/route"; +import { Route as DashboardIndexRouteImport } from "./routes/dashboard/index"; +import { Route as AuthIndexRouteImport } from "./routes/auth/index"; +import { Route as AgentIndexRouteImport } from "./routes/agent/index"; +import { Route as HomeIndexRouteImport } from "./routes/_home/index"; +import { Route as TemplatesSplatRouteImport } from "./routes/templates/$"; +import { Route as AuthVerify2faBackupRouteImport } from "./routes/auth/verify-2fa-backup"; +import { Route as AuthVerify2faRouteImport } from "./routes/auth/verify-2fa"; +import { Route as AuthResumePasswordRouteImport } from "./routes/auth/resume-password"; +import { Route as AuthResetPasswordRouteImport } from "./routes/auth/reset-password"; +import { Route as AuthRegisterRouteImport } from "./routes/auth/register"; +import { Route as AuthLoginRouteImport } from "./routes/auth/login"; +import { Route as AuthForgotPasswordRouteImport } from "./routes/auth/forgot-password"; +import { Route as AgentNewRouteImport } from "./routes/agent/new"; +import { Route as AgentThreadIdRouteImport } from "./routes/agent/$threadId"; +import { Route as UsernameSlugRouteImport } from "./routes/$username/$slug"; +import { Route as BuilderResumeIdRouteRouteImport } from "./routes/builder/$resumeId/route"; +import { Route as DashboardResumesIndexRouteImport } from "./routes/dashboard/resumes/index"; +import { Route as BuilderResumeIdIndexRouteImport } from "./routes/builder/$resumeId/index"; +import { Route as DashboardSettingsProfileRouteImport } from "./routes/dashboard/settings/profile"; +import { Route as DashboardSettingsPreferencesRouteImport } from "./routes/dashboard/settings/preferences"; +import { Route as DashboardSettingsJobSearchRouteImport } from "./routes/dashboard/settings/job-search"; +import { Route as DashboardSettingsDangerZoneRouteImport } from "./routes/dashboard/settings/danger-zone"; +import { Route as DashboardSettingsApiKeysRouteImport } from "./routes/dashboard/settings/api-keys"; +import { Route as DashboardSettingsIntegrationsRouteRouteImport } from "./routes/dashboard/settings/integrations/route"; +import { Route as DashboardSettingsAuthenticationIndexRouteImport } from "./routes/dashboard/settings/authentication/index"; const DashboardRouteRoute = DashboardRouteRouteImport.update({ - id: '/dashboard', - path: '/dashboard', + id: "/dashboard", + path: "/dashboard", getParentRoute: () => rootRouteImport, -} as any) +} as any); const AuthRouteRoute = AuthRouteRouteImport.update({ - id: '/auth', - path: '/auth', + id: "/auth", + path: "/auth", getParentRoute: () => rootRouteImport, -} as any) +} as any); const AgentRouteRoute = AgentRouteRouteImport.update({ - id: '/agent', - path: '/agent', + id: "/agent", + path: "/agent", getParentRoute: () => rootRouteImport, -} as any) +} as any); const HomeRouteRoute = HomeRouteRouteImport.update({ - id: '/_home', + id: "/_home", getParentRoute: () => rootRouteImport, -} as any) +} as any); const DashboardIndexRoute = DashboardIndexRouteImport.update({ - id: '/', - path: '/', + id: "/", + path: "/", getParentRoute: () => DashboardRouteRoute, -} as any) +} as any); const AuthIndexRoute = AuthIndexRouteImport.update({ - id: '/', - path: '/', + id: "/", + path: "/", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AgentIndexRoute = AgentIndexRouteImport.update({ - id: '/', - path: '/', + id: "/", + path: "/", getParentRoute: () => AgentRouteRoute, -} as any) +} as any); const HomeIndexRoute = HomeIndexRouteImport.update({ - id: '/', - path: '/', + id: "/", + path: "/", getParentRoute: () => HomeRouteRoute, -} as any) +} as any); const TemplatesSplatRoute = TemplatesSplatRouteImport.update({ - id: '/templates/$', - path: '/templates/$', + id: "/templates/$", + path: "/templates/$", getParentRoute: () => rootRouteImport, -} as any) +} as any); const AuthVerify2faBackupRoute = AuthVerify2faBackupRouteImport.update({ - id: '/verify-2fa-backup', - path: '/verify-2fa-backup', + id: "/verify-2fa-backup", + path: "/verify-2fa-backup", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AuthVerify2faRoute = AuthVerify2faRouteImport.update({ - id: '/verify-2fa', - path: '/verify-2fa', + id: "/verify-2fa", + path: "/verify-2fa", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AuthResumePasswordRoute = AuthResumePasswordRouteImport.update({ - id: '/resume-password', - path: '/resume-password', + id: "/resume-password", + path: "/resume-password", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AuthResetPasswordRoute = AuthResetPasswordRouteImport.update({ - id: '/reset-password', - path: '/reset-password', + id: "/reset-password", + path: "/reset-password", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AuthRegisterRoute = AuthRegisterRouteImport.update({ - id: '/register', - path: '/register', + id: "/register", + path: "/register", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AuthLoginRoute = AuthLoginRouteImport.update({ - id: '/login', - path: '/login', + id: "/login", + path: "/login", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AuthForgotPasswordRoute = AuthForgotPasswordRouteImport.update({ - id: '/forgot-password', - path: '/forgot-password', + id: "/forgot-password", + path: "/forgot-password", getParentRoute: () => AuthRouteRoute, -} as any) +} as any); const AgentNewRoute = AgentNewRouteImport.update({ - id: '/new', - path: '/new', + id: "/new", + path: "/new", getParentRoute: () => AgentRouteRoute, -} as any) +} as any); const AgentThreadIdRoute = AgentThreadIdRouteImport.update({ - id: '/$threadId', - path: '/$threadId', + id: "/$threadId", + path: "/$threadId", getParentRoute: () => AgentRouteRoute, -} as any) +} as any); const UsernameSlugRoute = UsernameSlugRouteImport.update({ - id: '/$username/$slug', - path: '/$username/$slug', + id: "/$username/$slug", + path: "/$username/$slug", getParentRoute: () => rootRouteImport, -} as any) +} as any); const BuilderResumeIdRouteRoute = BuilderResumeIdRouteRouteImport.update({ - id: '/builder/$resumeId', - path: '/builder/$resumeId', + id: "/builder/$resumeId", + path: "/builder/$resumeId", getParentRoute: () => rootRouteImport, -} as any) +} as any); const DashboardResumesIndexRoute = DashboardResumesIndexRouteImport.update({ - id: '/resumes/', - path: '/resumes/', + id: "/resumes/", + path: "/resumes/", getParentRoute: () => DashboardRouteRoute, -} as any) +} as any); const BuilderResumeIdIndexRoute = BuilderResumeIdIndexRouteImport.update({ - id: '/', - path: '/', + id: "/", + path: "/", getParentRoute: () => BuilderResumeIdRouteRoute, -} as any) +} as any); const DashboardSettingsProfileRoute = DashboardSettingsProfileRouteImport.update({ - id: '/settings/profile', - path: '/settings/profile', + id: "/settings/profile", + path: "/settings/profile", getParentRoute: () => DashboardRouteRoute, - } as any) + } as any); const DashboardSettingsPreferencesRoute = DashboardSettingsPreferencesRouteImport.update({ - id: '/settings/preferences', - path: '/settings/preferences', + id: "/settings/preferences", + path: "/settings/preferences", getParentRoute: () => DashboardRouteRoute, - } as any) + } as any); const DashboardSettingsJobSearchRoute = DashboardSettingsJobSearchRouteImport.update({ - id: '/settings/job-search', - path: '/settings/job-search', + id: "/settings/job-search", + path: "/settings/job-search", getParentRoute: () => DashboardRouteRoute, - } as any) + } as any); const DashboardSettingsDangerZoneRoute = DashboardSettingsDangerZoneRouteImport.update({ - id: '/settings/danger-zone', - path: '/settings/danger-zone', + id: "/settings/danger-zone", + path: "/settings/danger-zone", getParentRoute: () => DashboardRouteRoute, - } as any) + } as any); const DashboardSettingsApiKeysRoute = DashboardSettingsApiKeysRouteImport.update({ - id: '/settings/api-keys', - path: '/settings/api-keys', + id: "/settings/api-keys", + path: "/settings/api-keys", getParentRoute: () => DashboardRouteRoute, - } as any) + } as any); const DashboardSettingsIntegrationsRouteRoute = DashboardSettingsIntegrationsRouteRouteImport.update({ - id: '/settings/integrations', - path: '/settings/integrations', + id: "/settings/integrations", + path: "/settings/integrations", getParentRoute: () => DashboardRouteRoute, - } as any) + } as any); const DashboardSettingsAuthenticationIndexRoute = DashboardSettingsAuthenticationIndexRouteImport.update({ - id: '/settings/authentication/', - path: '/settings/authentication/', + id: "/settings/authentication/", + path: "/settings/authentication/", getParentRoute: () => DashboardRouteRoute, - } as any) + } as any); export interface FileRoutesByFullPath { - '/': typeof HomeIndexRoute - '/agent': typeof AgentRouteRouteWithChildren - '/auth': typeof AuthRouteRouteWithChildren - '/dashboard': typeof DashboardRouteRouteWithChildren - '/builder/$resumeId': typeof BuilderResumeIdRouteRouteWithChildren - '/$username/$slug': typeof UsernameSlugRoute - '/agent/$threadId': typeof AgentThreadIdRoute - '/agent/new': typeof AgentNewRoute - '/auth/forgot-password': typeof AuthForgotPasswordRoute - '/auth/login': typeof AuthLoginRoute - '/auth/register': typeof AuthRegisterRoute - '/auth/reset-password': typeof AuthResetPasswordRoute - '/auth/resume-password': typeof AuthResumePasswordRoute - '/auth/verify-2fa': typeof AuthVerify2faRoute - '/auth/verify-2fa-backup': typeof AuthVerify2faBackupRoute - '/templates/$': typeof TemplatesSplatRoute - '/agent/': typeof AgentIndexRoute - '/auth/': typeof AuthIndexRoute - '/dashboard/': typeof DashboardIndexRoute - '/dashboard/settings/integrations': typeof DashboardSettingsIntegrationsRouteRoute - '/dashboard/settings/api-keys': typeof DashboardSettingsApiKeysRoute - '/dashboard/settings/danger-zone': typeof DashboardSettingsDangerZoneRoute - '/dashboard/settings/job-search': typeof DashboardSettingsJobSearchRoute - '/dashboard/settings/preferences': typeof DashboardSettingsPreferencesRoute - '/dashboard/settings/profile': typeof DashboardSettingsProfileRoute - '/builder/$resumeId/': typeof BuilderResumeIdIndexRoute - '/dashboard/resumes/': typeof DashboardResumesIndexRoute - '/dashboard/settings/authentication/': typeof DashboardSettingsAuthenticationIndexRoute + "/": typeof HomeIndexRoute; + "/agent": typeof AgentRouteRouteWithChildren; + "/auth": typeof AuthRouteRouteWithChildren; + "/dashboard": typeof DashboardRouteRouteWithChildren; + "/builder/$resumeId": typeof BuilderResumeIdRouteRouteWithChildren; + "/$username/$slug": typeof UsernameSlugRoute; + "/agent/$threadId": typeof AgentThreadIdRoute; + "/agent/new": typeof AgentNewRoute; + "/auth/forgot-password": typeof AuthForgotPasswordRoute; + "/auth/login": typeof AuthLoginRoute; + "/auth/register": typeof AuthRegisterRoute; + "/auth/reset-password": typeof AuthResetPasswordRoute; + "/auth/resume-password": typeof AuthResumePasswordRoute; + "/auth/verify-2fa": typeof AuthVerify2faRoute; + "/auth/verify-2fa-backup": typeof AuthVerify2faBackupRoute; + "/templates/$": typeof TemplatesSplatRoute; + "/agent/": typeof AgentIndexRoute; + "/auth/": typeof AuthIndexRoute; + "/dashboard/": typeof DashboardIndexRoute; + "/dashboard/settings/integrations": typeof DashboardSettingsIntegrationsRouteRoute; + "/dashboard/settings/api-keys": typeof DashboardSettingsApiKeysRoute; + "/dashboard/settings/danger-zone": typeof DashboardSettingsDangerZoneRoute; + "/dashboard/settings/job-search": typeof DashboardSettingsJobSearchRoute; + "/dashboard/settings/preferences": typeof DashboardSettingsPreferencesRoute; + "/dashboard/settings/profile": typeof DashboardSettingsProfileRoute; + "/builder/$resumeId/": typeof BuilderResumeIdIndexRoute; + "/dashboard/resumes/": typeof DashboardResumesIndexRoute; + "/dashboard/settings/authentication/": typeof DashboardSettingsAuthenticationIndexRoute; } export interface FileRoutesByTo { - '/$username/$slug': typeof UsernameSlugRoute - '/agent/$threadId': typeof AgentThreadIdRoute - '/agent/new': typeof AgentNewRoute - '/auth/forgot-password': typeof AuthForgotPasswordRoute - '/auth/login': typeof AuthLoginRoute - '/auth/register': typeof AuthRegisterRoute - '/auth/reset-password': typeof AuthResetPasswordRoute - '/auth/resume-password': typeof AuthResumePasswordRoute - '/auth/verify-2fa': typeof AuthVerify2faRoute - '/auth/verify-2fa-backup': typeof AuthVerify2faBackupRoute - '/templates/$': typeof TemplatesSplatRoute - '/': typeof HomeIndexRoute - '/agent': typeof AgentIndexRoute - '/auth': typeof AuthIndexRoute - '/dashboard': typeof DashboardIndexRoute - '/dashboard/settings/integrations': typeof DashboardSettingsIntegrationsRouteRoute - '/dashboard/settings/api-keys': typeof DashboardSettingsApiKeysRoute - '/dashboard/settings/danger-zone': typeof DashboardSettingsDangerZoneRoute - '/dashboard/settings/job-search': typeof DashboardSettingsJobSearchRoute - '/dashboard/settings/preferences': typeof DashboardSettingsPreferencesRoute - '/dashboard/settings/profile': typeof DashboardSettingsProfileRoute - '/builder/$resumeId': typeof BuilderResumeIdIndexRoute - '/dashboard/resumes': typeof DashboardResumesIndexRoute - '/dashboard/settings/authentication': typeof DashboardSettingsAuthenticationIndexRoute + "/$username/$slug": typeof UsernameSlugRoute; + "/agent/$threadId": typeof AgentThreadIdRoute; + "/agent/new": typeof AgentNewRoute; + "/auth/forgot-password": typeof AuthForgotPasswordRoute; + "/auth/login": typeof AuthLoginRoute; + "/auth/register": typeof AuthRegisterRoute; + "/auth/reset-password": typeof AuthResetPasswordRoute; + "/auth/resume-password": typeof AuthResumePasswordRoute; + "/auth/verify-2fa": typeof AuthVerify2faRoute; + "/auth/verify-2fa-backup": typeof AuthVerify2faBackupRoute; + "/templates/$": typeof TemplatesSplatRoute; + "/": typeof HomeIndexRoute; + "/agent": typeof AgentIndexRoute; + "/auth": typeof AuthIndexRoute; + "/dashboard": typeof DashboardIndexRoute; + "/dashboard/settings/integrations": typeof DashboardSettingsIntegrationsRouteRoute; + "/dashboard/settings/api-keys": typeof DashboardSettingsApiKeysRoute; + "/dashboard/settings/danger-zone": typeof DashboardSettingsDangerZoneRoute; + "/dashboard/settings/job-search": typeof DashboardSettingsJobSearchRoute; + "/dashboard/settings/preferences": typeof DashboardSettingsPreferencesRoute; + "/dashboard/settings/profile": typeof DashboardSettingsProfileRoute; + "/builder/$resumeId": typeof BuilderResumeIdIndexRoute; + "/dashboard/resumes": typeof DashboardResumesIndexRoute; + "/dashboard/settings/authentication": typeof DashboardSettingsAuthenticationIndexRoute; } export interface FileRoutesById { - __root__: typeof rootRouteImport - '/_home': typeof HomeRouteRouteWithChildren - '/agent': typeof AgentRouteRouteWithChildren - '/auth': typeof AuthRouteRouteWithChildren - '/dashboard': typeof DashboardRouteRouteWithChildren - '/builder/$resumeId': typeof BuilderResumeIdRouteRouteWithChildren - '/$username/$slug': typeof UsernameSlugRoute - '/agent/$threadId': typeof AgentThreadIdRoute - '/agent/new': typeof AgentNewRoute - '/auth/forgot-password': typeof AuthForgotPasswordRoute - '/auth/login': typeof AuthLoginRoute - '/auth/register': typeof AuthRegisterRoute - '/auth/reset-password': typeof AuthResetPasswordRoute - '/auth/resume-password': typeof AuthResumePasswordRoute - '/auth/verify-2fa': typeof AuthVerify2faRoute - '/auth/verify-2fa-backup': typeof AuthVerify2faBackupRoute - '/templates/$': typeof TemplatesSplatRoute - '/_home/': typeof HomeIndexRoute - '/agent/': typeof AgentIndexRoute - '/auth/': typeof AuthIndexRoute - '/dashboard/': typeof DashboardIndexRoute - '/dashboard/settings/integrations': typeof DashboardSettingsIntegrationsRouteRoute - '/dashboard/settings/api-keys': typeof DashboardSettingsApiKeysRoute - '/dashboard/settings/danger-zone': typeof DashboardSettingsDangerZoneRoute - '/dashboard/settings/job-search': typeof DashboardSettingsJobSearchRoute - '/dashboard/settings/preferences': typeof DashboardSettingsPreferencesRoute - '/dashboard/settings/profile': typeof DashboardSettingsProfileRoute - '/builder/$resumeId/': typeof BuilderResumeIdIndexRoute - '/dashboard/resumes/': typeof DashboardResumesIndexRoute - '/dashboard/settings/authentication/': typeof DashboardSettingsAuthenticationIndexRoute + __root__: typeof rootRouteImport; + "/_home": typeof HomeRouteRouteWithChildren; + "/agent": typeof AgentRouteRouteWithChildren; + "/auth": typeof AuthRouteRouteWithChildren; + "/dashboard": typeof DashboardRouteRouteWithChildren; + "/builder/$resumeId": typeof BuilderResumeIdRouteRouteWithChildren; + "/$username/$slug": typeof UsernameSlugRoute; + "/agent/$threadId": typeof AgentThreadIdRoute; + "/agent/new": typeof AgentNewRoute; + "/auth/forgot-password": typeof AuthForgotPasswordRoute; + "/auth/login": typeof AuthLoginRoute; + "/auth/register": typeof AuthRegisterRoute; + "/auth/reset-password": typeof AuthResetPasswordRoute; + "/auth/resume-password": typeof AuthResumePasswordRoute; + "/auth/verify-2fa": typeof AuthVerify2faRoute; + "/auth/verify-2fa-backup": typeof AuthVerify2faBackupRoute; + "/templates/$": typeof TemplatesSplatRoute; + "/_home/": typeof HomeIndexRoute; + "/agent/": typeof AgentIndexRoute; + "/auth/": typeof AuthIndexRoute; + "/dashboard/": typeof DashboardIndexRoute; + "/dashboard/settings/integrations": typeof DashboardSettingsIntegrationsRouteRoute; + "/dashboard/settings/api-keys": typeof DashboardSettingsApiKeysRoute; + "/dashboard/settings/danger-zone": typeof DashboardSettingsDangerZoneRoute; + "/dashboard/settings/job-search": typeof DashboardSettingsJobSearchRoute; + "/dashboard/settings/preferences": typeof DashboardSettingsPreferencesRoute; + "/dashboard/settings/profile": typeof DashboardSettingsProfileRoute; + "/builder/$resumeId/": typeof BuilderResumeIdIndexRoute; + "/dashboard/resumes/": typeof DashboardResumesIndexRoute; + "/dashboard/settings/authentication/": typeof DashboardSettingsAuthenticationIndexRoute; } export interface FileRouteTypes { - fileRoutesByFullPath: FileRoutesByFullPath + fileRoutesByFullPath: FileRoutesByFullPath; fullPaths: - | '/' - | '/agent' - | '/auth' - | '/dashboard' - | '/builder/$resumeId' - | '/$username/$slug' - | '/agent/$threadId' - | '/agent/new' - | '/auth/forgot-password' - | '/auth/login' - | '/auth/register' - | '/auth/reset-password' - | '/auth/resume-password' - | '/auth/verify-2fa' - | '/auth/verify-2fa-backup' - | '/templates/$' - | '/agent/' - | '/auth/' - | '/dashboard/' - | '/dashboard/settings/integrations' - | '/dashboard/settings/api-keys' - | '/dashboard/settings/danger-zone' - | '/dashboard/settings/job-search' - | '/dashboard/settings/preferences' - | '/dashboard/settings/profile' - | '/builder/$resumeId/' - | '/dashboard/resumes/' - | '/dashboard/settings/authentication/' - fileRoutesByTo: FileRoutesByTo + | "/" + | "/agent" + | "/auth" + | "/dashboard" + | "/builder/$resumeId" + | "/$username/$slug" + | "/agent/$threadId" + | "/agent/new" + | "/auth/forgot-password" + | "/auth/login" + | "/auth/register" + | "/auth/reset-password" + | "/auth/resume-password" + | "/auth/verify-2fa" + | "/auth/verify-2fa-backup" + | "/templates/$" + | "/agent/" + | "/auth/" + | "/dashboard/" + | "/dashboard/settings/integrations" + | "/dashboard/settings/api-keys" + | "/dashboard/settings/danger-zone" + | "/dashboard/settings/job-search" + | "/dashboard/settings/preferences" + | "/dashboard/settings/profile" + | "/builder/$resumeId/" + | "/dashboard/resumes/" + | "/dashboard/settings/authentication/"; + fileRoutesByTo: FileRoutesByTo; to: - | '/$username/$slug' - | '/agent/$threadId' - | '/agent/new' - | '/auth/forgot-password' - | '/auth/login' - | '/auth/register' - | '/auth/reset-password' - | '/auth/resume-password' - | '/auth/verify-2fa' - | '/auth/verify-2fa-backup' - | '/templates/$' - | '/' - | '/agent' - | '/auth' - | '/dashboard' - | '/dashboard/settings/integrations' - | '/dashboard/settings/api-keys' - | '/dashboard/settings/danger-zone' - | '/dashboard/settings/job-search' - | '/dashboard/settings/preferences' - | '/dashboard/settings/profile' - | '/builder/$resumeId' - | '/dashboard/resumes' - | '/dashboard/settings/authentication' + | "/$username/$slug" + | "/agent/$threadId" + | "/agent/new" + | "/auth/forgot-password" + | "/auth/login" + | "/auth/register" + | "/auth/reset-password" + | "/auth/resume-password" + | "/auth/verify-2fa" + | "/auth/verify-2fa-backup" + | "/templates/$" + | "/" + | "/agent" + | "/auth" + | "/dashboard" + | "/dashboard/settings/integrations" + | "/dashboard/settings/api-keys" + | "/dashboard/settings/danger-zone" + | "/dashboard/settings/job-search" + | "/dashboard/settings/preferences" + | "/dashboard/settings/profile" + | "/builder/$resumeId" + | "/dashboard/resumes" + | "/dashboard/settings/authentication"; id: - | '__root__' - | '/_home' - | '/agent' - | '/auth' - | '/dashboard' - | '/builder/$resumeId' - | '/$username/$slug' - | '/agent/$threadId' - | '/agent/new' - | '/auth/forgot-password' - | '/auth/login' - | '/auth/register' - | '/auth/reset-password' - | '/auth/resume-password' - | '/auth/verify-2fa' - | '/auth/verify-2fa-backup' - | '/templates/$' - | '/_home/' - | '/agent/' - | '/auth/' - | '/dashboard/' - | '/dashboard/settings/integrations' - | '/dashboard/settings/api-keys' - | '/dashboard/settings/danger-zone' - | '/dashboard/settings/job-search' - | '/dashboard/settings/preferences' - | '/dashboard/settings/profile' - | '/builder/$resumeId/' - | '/dashboard/resumes/' - | '/dashboard/settings/authentication/' - fileRoutesById: FileRoutesById + | "__root__" + | "/_home" + | "/agent" + | "/auth" + | "/dashboard" + | "/builder/$resumeId" + | "/$username/$slug" + | "/agent/$threadId" + | "/agent/new" + | "/auth/forgot-password" + | "/auth/login" + | "/auth/register" + | "/auth/reset-password" + | "/auth/resume-password" + | "/auth/verify-2fa" + | "/auth/verify-2fa-backup" + | "/templates/$" + | "/_home/" + | "/agent/" + | "/auth/" + | "/dashboard/" + | "/dashboard/settings/integrations" + | "/dashboard/settings/api-keys" + | "/dashboard/settings/danger-zone" + | "/dashboard/settings/job-search" + | "/dashboard/settings/preferences" + | "/dashboard/settings/profile" + | "/builder/$resumeId/" + | "/dashboard/resumes/" + | "/dashboard/settings/authentication/"; + fileRoutesById: FileRoutesById; } export interface RootRouteChildren { - HomeRouteRoute: typeof HomeRouteRouteWithChildren - AgentRouteRoute: typeof AgentRouteRouteWithChildren - AuthRouteRoute: typeof AuthRouteRouteWithChildren - DashboardRouteRoute: typeof DashboardRouteRouteWithChildren - BuilderResumeIdRouteRoute: typeof BuilderResumeIdRouteRouteWithChildren - UsernameSlugRoute: typeof UsernameSlugRoute - TemplatesSplatRoute: typeof TemplatesSplatRoute + HomeRouteRoute: typeof HomeRouteRouteWithChildren; + AgentRouteRoute: typeof AgentRouteRouteWithChildren; + AuthRouteRoute: typeof AuthRouteRouteWithChildren; + DashboardRouteRoute: typeof DashboardRouteRouteWithChildren; + BuilderResumeIdRouteRoute: typeof BuilderResumeIdRouteRouteWithChildren; + UsernameSlugRoute: typeof UsernameSlugRoute; + TemplatesSplatRoute: typeof TemplatesSplatRoute; } -declare module '@tanstack/react-router' { +declare module "@tanstack/react-router" { interface FileRoutesByPath { - '/dashboard': { - id: '/dashboard' - path: '/dashboard' - fullPath: '/dashboard' - preLoaderRoute: typeof DashboardRouteRouteImport - parentRoute: typeof rootRouteImport - } - '/auth': { - id: '/auth' - path: '/auth' - fullPath: '/auth' - preLoaderRoute: typeof AuthRouteRouteImport - parentRoute: typeof rootRouteImport - } - '/agent': { - id: '/agent' - path: '/agent' - fullPath: '/agent' - preLoaderRoute: typeof AgentRouteRouteImport - parentRoute: typeof rootRouteImport - } - '/_home': { - id: '/_home' - path: '' - fullPath: '/' - preLoaderRoute: typeof HomeRouteRouteImport - parentRoute: typeof rootRouteImport - } - '/dashboard/': { - id: '/dashboard/' - path: '/' - fullPath: '/dashboard/' - preLoaderRoute: typeof DashboardIndexRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/auth/': { - id: '/auth/' - path: '/' - fullPath: '/auth/' - preLoaderRoute: typeof AuthIndexRouteImport - parentRoute: typeof AuthRouteRoute - } - '/agent/': { - id: '/agent/' - path: '/' - fullPath: '/agent/' - preLoaderRoute: typeof AgentIndexRouteImport - parentRoute: typeof AgentRouteRoute - } - '/_home/': { - id: '/_home/' - path: '/' - fullPath: '/' - preLoaderRoute: typeof HomeIndexRouteImport - parentRoute: typeof HomeRouteRoute - } - '/templates/$': { - id: '/templates/$' - path: '/templates/$' - fullPath: '/templates/$' - preLoaderRoute: typeof TemplatesSplatRouteImport - parentRoute: typeof rootRouteImport - } - '/auth/verify-2fa-backup': { - id: '/auth/verify-2fa-backup' - path: '/verify-2fa-backup' - fullPath: '/auth/verify-2fa-backup' - preLoaderRoute: typeof AuthVerify2faBackupRouteImport - parentRoute: typeof AuthRouteRoute - } - '/auth/verify-2fa': { - id: '/auth/verify-2fa' - path: '/verify-2fa' - fullPath: '/auth/verify-2fa' - preLoaderRoute: typeof AuthVerify2faRouteImport - parentRoute: typeof AuthRouteRoute - } - '/auth/resume-password': { - id: '/auth/resume-password' - path: '/resume-password' - fullPath: '/auth/resume-password' - preLoaderRoute: typeof AuthResumePasswordRouteImport - parentRoute: typeof AuthRouteRoute - } - '/auth/reset-password': { - id: '/auth/reset-password' - path: '/reset-password' - fullPath: '/auth/reset-password' - preLoaderRoute: typeof AuthResetPasswordRouteImport - parentRoute: typeof AuthRouteRoute - } - '/auth/register': { - id: '/auth/register' - path: '/register' - fullPath: '/auth/register' - preLoaderRoute: typeof AuthRegisterRouteImport - parentRoute: typeof AuthRouteRoute - } - '/auth/login': { - id: '/auth/login' - path: '/login' - fullPath: '/auth/login' - preLoaderRoute: typeof AuthLoginRouteImport - parentRoute: typeof AuthRouteRoute - } - '/auth/forgot-password': { - id: '/auth/forgot-password' - path: '/forgot-password' - fullPath: '/auth/forgot-password' - preLoaderRoute: typeof AuthForgotPasswordRouteImport - parentRoute: typeof AuthRouteRoute - } - '/agent/new': { - id: '/agent/new' - path: '/new' - fullPath: '/agent/new' - preLoaderRoute: typeof AgentNewRouteImport - parentRoute: typeof AgentRouteRoute - } - '/agent/$threadId': { - id: '/agent/$threadId' - path: '/$threadId' - fullPath: '/agent/$threadId' - preLoaderRoute: typeof AgentThreadIdRouteImport - parentRoute: typeof AgentRouteRoute - } - '/$username/$slug': { - id: '/$username/$slug' - path: '/$username/$slug' - fullPath: '/$username/$slug' - preLoaderRoute: typeof UsernameSlugRouteImport - parentRoute: typeof rootRouteImport - } - '/builder/$resumeId': { - id: '/builder/$resumeId' - path: '/builder/$resumeId' - fullPath: '/builder/$resumeId' - preLoaderRoute: typeof BuilderResumeIdRouteRouteImport - parentRoute: typeof rootRouteImport - } - '/dashboard/resumes/': { - id: '/dashboard/resumes/' - path: '/resumes' - fullPath: '/dashboard/resumes/' - preLoaderRoute: typeof DashboardResumesIndexRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/builder/$resumeId/': { - id: '/builder/$resumeId/' - path: '/' - fullPath: '/builder/$resumeId/' - preLoaderRoute: typeof BuilderResumeIdIndexRouteImport - parentRoute: typeof BuilderResumeIdRouteRoute - } - '/dashboard/settings/profile': { - id: '/dashboard/settings/profile' - path: '/settings/profile' - fullPath: '/dashboard/settings/profile' - preLoaderRoute: typeof DashboardSettingsProfileRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/dashboard/settings/preferences': { - id: '/dashboard/settings/preferences' - path: '/settings/preferences' - fullPath: '/dashboard/settings/preferences' - preLoaderRoute: typeof DashboardSettingsPreferencesRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/dashboard/settings/job-search': { - id: '/dashboard/settings/job-search' - path: '/settings/job-search' - fullPath: '/dashboard/settings/job-search' - preLoaderRoute: typeof DashboardSettingsJobSearchRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/dashboard/settings/danger-zone': { - id: '/dashboard/settings/danger-zone' - path: '/settings/danger-zone' - fullPath: '/dashboard/settings/danger-zone' - preLoaderRoute: typeof DashboardSettingsDangerZoneRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/dashboard/settings/api-keys': { - id: '/dashboard/settings/api-keys' - path: '/settings/api-keys' - fullPath: '/dashboard/settings/api-keys' - preLoaderRoute: typeof DashboardSettingsApiKeysRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/dashboard/settings/integrations': { - id: '/dashboard/settings/integrations' - path: '/settings/integrations' - fullPath: '/dashboard/settings/integrations' - preLoaderRoute: typeof DashboardSettingsIntegrationsRouteRouteImport - parentRoute: typeof DashboardRouteRoute - } - '/dashboard/settings/authentication/': { - id: '/dashboard/settings/authentication/' - path: '/settings/authentication' - fullPath: '/dashboard/settings/authentication/' - preLoaderRoute: typeof DashboardSettingsAuthenticationIndexRouteImport - parentRoute: typeof DashboardRouteRoute - } + "/dashboard": { + id: "/dashboard"; + path: "/dashboard"; + fullPath: "/dashboard"; + preLoaderRoute: typeof DashboardRouteRouteImport; + parentRoute: typeof rootRouteImport; + }; + "/auth": { + id: "/auth"; + path: "/auth"; + fullPath: "/auth"; + preLoaderRoute: typeof AuthRouteRouteImport; + parentRoute: typeof rootRouteImport; + }; + "/agent": { + id: "/agent"; + path: "/agent"; + fullPath: "/agent"; + preLoaderRoute: typeof AgentRouteRouteImport; + parentRoute: typeof rootRouteImport; + }; + "/_home": { + id: "/_home"; + path: ""; + fullPath: "/"; + preLoaderRoute: typeof HomeRouteRouteImport; + parentRoute: typeof rootRouteImport; + }; + "/dashboard/": { + id: "/dashboard/"; + path: "/"; + fullPath: "/dashboard/"; + preLoaderRoute: typeof DashboardIndexRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/auth/": { + id: "/auth/"; + path: "/"; + fullPath: "/auth/"; + preLoaderRoute: typeof AuthIndexRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/agent/": { + id: "/agent/"; + path: "/"; + fullPath: "/agent/"; + preLoaderRoute: typeof AgentIndexRouteImport; + parentRoute: typeof AgentRouteRoute; + }; + "/_home/": { + id: "/_home/"; + path: "/"; + fullPath: "/"; + preLoaderRoute: typeof HomeIndexRouteImport; + parentRoute: typeof HomeRouteRoute; + }; + "/templates/$": { + id: "/templates/$"; + path: "/templates/$"; + fullPath: "/templates/$"; + preLoaderRoute: typeof TemplatesSplatRouteImport; + parentRoute: typeof rootRouteImport; + }; + "/auth/verify-2fa-backup": { + id: "/auth/verify-2fa-backup"; + path: "/verify-2fa-backup"; + fullPath: "/auth/verify-2fa-backup"; + preLoaderRoute: typeof AuthVerify2faBackupRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/auth/verify-2fa": { + id: "/auth/verify-2fa"; + path: "/verify-2fa"; + fullPath: "/auth/verify-2fa"; + preLoaderRoute: typeof AuthVerify2faRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/auth/resume-password": { + id: "/auth/resume-password"; + path: "/resume-password"; + fullPath: "/auth/resume-password"; + preLoaderRoute: typeof AuthResumePasswordRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/auth/reset-password": { + id: "/auth/reset-password"; + path: "/reset-password"; + fullPath: "/auth/reset-password"; + preLoaderRoute: typeof AuthResetPasswordRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/auth/register": { + id: "/auth/register"; + path: "/register"; + fullPath: "/auth/register"; + preLoaderRoute: typeof AuthRegisterRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/auth/login": { + id: "/auth/login"; + path: "/login"; + fullPath: "/auth/login"; + preLoaderRoute: typeof AuthLoginRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/auth/forgot-password": { + id: "/auth/forgot-password"; + path: "/forgot-password"; + fullPath: "/auth/forgot-password"; + preLoaderRoute: typeof AuthForgotPasswordRouteImport; + parentRoute: typeof AuthRouteRoute; + }; + "/agent/new": { + id: "/agent/new"; + path: "/new"; + fullPath: "/agent/new"; + preLoaderRoute: typeof AgentNewRouteImport; + parentRoute: typeof AgentRouteRoute; + }; + "/agent/$threadId": { + id: "/agent/$threadId"; + path: "/$threadId"; + fullPath: "/agent/$threadId"; + preLoaderRoute: typeof AgentThreadIdRouteImport; + parentRoute: typeof AgentRouteRoute; + }; + "/$username/$slug": { + id: "/$username/$slug"; + path: "/$username/$slug"; + fullPath: "/$username/$slug"; + preLoaderRoute: typeof UsernameSlugRouteImport; + parentRoute: typeof rootRouteImport; + }; + "/builder/$resumeId": { + id: "/builder/$resumeId"; + path: "/builder/$resumeId"; + fullPath: "/builder/$resumeId"; + preLoaderRoute: typeof BuilderResumeIdRouteRouteImport; + parentRoute: typeof rootRouteImport; + }; + "/dashboard/resumes/": { + id: "/dashboard/resumes/"; + path: "/resumes"; + fullPath: "/dashboard/resumes/"; + preLoaderRoute: typeof DashboardResumesIndexRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/builder/$resumeId/": { + id: "/builder/$resumeId/"; + path: "/"; + fullPath: "/builder/$resumeId/"; + preLoaderRoute: typeof BuilderResumeIdIndexRouteImport; + parentRoute: typeof BuilderResumeIdRouteRoute; + }; + "/dashboard/settings/profile": { + id: "/dashboard/settings/profile"; + path: "/settings/profile"; + fullPath: "/dashboard/settings/profile"; + preLoaderRoute: typeof DashboardSettingsProfileRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/dashboard/settings/preferences": { + id: "/dashboard/settings/preferences"; + path: "/settings/preferences"; + fullPath: "/dashboard/settings/preferences"; + preLoaderRoute: typeof DashboardSettingsPreferencesRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/dashboard/settings/job-search": { + id: "/dashboard/settings/job-search"; + path: "/settings/job-search"; + fullPath: "/dashboard/settings/job-search"; + preLoaderRoute: typeof DashboardSettingsJobSearchRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/dashboard/settings/danger-zone": { + id: "/dashboard/settings/danger-zone"; + path: "/settings/danger-zone"; + fullPath: "/dashboard/settings/danger-zone"; + preLoaderRoute: typeof DashboardSettingsDangerZoneRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/dashboard/settings/api-keys": { + id: "/dashboard/settings/api-keys"; + path: "/settings/api-keys"; + fullPath: "/dashboard/settings/api-keys"; + preLoaderRoute: typeof DashboardSettingsApiKeysRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/dashboard/settings/integrations": { + id: "/dashboard/settings/integrations"; + path: "/settings/integrations"; + fullPath: "/dashboard/settings/integrations"; + preLoaderRoute: typeof DashboardSettingsIntegrationsRouteRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; + "/dashboard/settings/authentication/": { + id: "/dashboard/settings/authentication/"; + path: "/settings/authentication"; + fullPath: "/dashboard/settings/authentication/"; + preLoaderRoute: typeof DashboardSettingsAuthenticationIndexRouteImport; + parentRoute: typeof DashboardRouteRoute; + }; } } interface HomeRouteRouteChildren { - HomeIndexRoute: typeof HomeIndexRoute + HomeIndexRoute: typeof HomeIndexRoute; } const HomeRouteRouteChildren: HomeRouteRouteChildren = { HomeIndexRoute: HomeIndexRoute, -} +}; const HomeRouteRouteWithChildren = HomeRouteRoute._addFileChildren( HomeRouteRouteChildren, -) +); interface AgentRouteRouteChildren { - AgentThreadIdRoute: typeof AgentThreadIdRoute - AgentNewRoute: typeof AgentNewRoute - AgentIndexRoute: typeof AgentIndexRoute + AgentThreadIdRoute: typeof AgentThreadIdRoute; + AgentNewRoute: typeof AgentNewRoute; + AgentIndexRoute: typeof AgentIndexRoute; } const AgentRouteRouteChildren: AgentRouteRouteChildren = { AgentThreadIdRoute: AgentThreadIdRoute, AgentNewRoute: AgentNewRoute, AgentIndexRoute: AgentIndexRoute, -} +}; const AgentRouteRouteWithChildren = AgentRouteRoute._addFileChildren( AgentRouteRouteChildren, -) +); interface AuthRouteRouteChildren { - AuthForgotPasswordRoute: typeof AuthForgotPasswordRoute - AuthLoginRoute: typeof AuthLoginRoute - AuthRegisterRoute: typeof AuthRegisterRoute - AuthResetPasswordRoute: typeof AuthResetPasswordRoute - AuthResumePasswordRoute: typeof AuthResumePasswordRoute - AuthVerify2faRoute: typeof AuthVerify2faRoute - AuthVerify2faBackupRoute: typeof AuthVerify2faBackupRoute - AuthIndexRoute: typeof AuthIndexRoute + AuthForgotPasswordRoute: typeof AuthForgotPasswordRoute; + AuthLoginRoute: typeof AuthLoginRoute; + AuthRegisterRoute: typeof AuthRegisterRoute; + AuthResetPasswordRoute: typeof AuthResetPasswordRoute; + AuthResumePasswordRoute: typeof AuthResumePasswordRoute; + AuthVerify2faRoute: typeof AuthVerify2faRoute; + AuthVerify2faBackupRoute: typeof AuthVerify2faBackupRoute; + AuthIndexRoute: typeof AuthIndexRoute; } const AuthRouteRouteChildren: AuthRouteRouteChildren = { @@ -635,22 +635,22 @@ const AuthRouteRouteChildren: AuthRouteRouteChildren = { AuthVerify2faRoute: AuthVerify2faRoute, AuthVerify2faBackupRoute: AuthVerify2faBackupRoute, AuthIndexRoute: AuthIndexRoute, -} +}; const AuthRouteRouteWithChildren = AuthRouteRoute._addFileChildren( AuthRouteRouteChildren, -) +); interface DashboardRouteRouteChildren { - DashboardIndexRoute: typeof DashboardIndexRoute - DashboardSettingsIntegrationsRouteRoute: typeof DashboardSettingsIntegrationsRouteRoute - DashboardSettingsApiKeysRoute: typeof DashboardSettingsApiKeysRoute - DashboardSettingsDangerZoneRoute: typeof DashboardSettingsDangerZoneRoute - DashboardSettingsJobSearchRoute: typeof DashboardSettingsJobSearchRoute - DashboardSettingsPreferencesRoute: typeof DashboardSettingsPreferencesRoute - DashboardSettingsProfileRoute: typeof DashboardSettingsProfileRoute - DashboardResumesIndexRoute: typeof DashboardResumesIndexRoute - DashboardSettingsAuthenticationIndexRoute: typeof DashboardSettingsAuthenticationIndexRoute + DashboardIndexRoute: typeof DashboardIndexRoute; + DashboardSettingsIntegrationsRouteRoute: typeof DashboardSettingsIntegrationsRouteRoute; + DashboardSettingsApiKeysRoute: typeof DashboardSettingsApiKeysRoute; + DashboardSettingsDangerZoneRoute: typeof DashboardSettingsDangerZoneRoute; + DashboardSettingsJobSearchRoute: typeof DashboardSettingsJobSearchRoute; + DashboardSettingsPreferencesRoute: typeof DashboardSettingsPreferencesRoute; + DashboardSettingsProfileRoute: typeof DashboardSettingsProfileRoute; + DashboardResumesIndexRoute: typeof DashboardResumesIndexRoute; + DashboardSettingsAuthenticationIndexRoute: typeof DashboardSettingsAuthenticationIndexRoute; } const DashboardRouteRouteChildren: DashboardRouteRouteChildren = { @@ -665,22 +665,22 @@ const DashboardRouteRouteChildren: DashboardRouteRouteChildren = { DashboardResumesIndexRoute: DashboardResumesIndexRoute, DashboardSettingsAuthenticationIndexRoute: DashboardSettingsAuthenticationIndexRoute, -} +}; const DashboardRouteRouteWithChildren = DashboardRouteRoute._addFileChildren( DashboardRouteRouteChildren, -) +); interface BuilderResumeIdRouteRouteChildren { - BuilderResumeIdIndexRoute: typeof BuilderResumeIdIndexRoute + BuilderResumeIdIndexRoute: typeof BuilderResumeIdIndexRoute; } const BuilderResumeIdRouteRouteChildren: BuilderResumeIdRouteRouteChildren = { BuilderResumeIdIndexRoute: BuilderResumeIdIndexRoute, -} +}; const BuilderResumeIdRouteRouteWithChildren = - BuilderResumeIdRouteRoute._addFileChildren(BuilderResumeIdRouteRouteChildren) + BuilderResumeIdRouteRoute._addFileChildren(BuilderResumeIdRouteRouteChildren); const rootRouteChildren: RootRouteChildren = { HomeRouteRoute: HomeRouteRouteWithChildren, @@ -690,7 +690,7 @@ const rootRouteChildren: RootRouteChildren = { BuilderResumeIdRouteRoute: BuilderResumeIdRouteRouteWithChildren, UsernameSlugRoute: UsernameSlugRoute, TemplatesSplatRoute: TemplatesSplatRoute, -} +}; export const routeTree = rootRouteImport ._addFileChildren(rootRouteChildren) - ._addFileTypes() + ._addFileTypes(); diff --git a/apps/web/src/routes/__root.tsx b/apps/web/src/routes/__root.tsx index e27f24773..9fc4eb327 100644 --- a/apps/web/src/routes/__root.tsx +++ b/apps/web/src/routes/__root.tsx @@ -11,7 +11,7 @@ import { IconContext } from "@phosphor-icons/react"; import { HotkeysProvider } from "@tanstack/react-hotkeys"; import { QueryClientProvider } from "@tanstack/react-query"; import { createRootRouteWithContext, HeadContent, Outlet } from "@tanstack/react-router"; -import { MotionConfig } from "motion/react"; +import { domAnimation, LazyMotion, MotionConfig } from "motion/react"; import { useEffect, useMemo } from "react"; import { DirectionProvider } from "@reactive-resume/ui/components/direction"; import { Toaster } from "@reactive-resume/ui/components/sonner"; @@ -115,30 +115,32 @@ function RootComponent() { - - - - - - - - - + + + + + + + + + + - - - - + + + + - {import.meta.env.DEV && } - - - - - - - - + {import.meta.env.DEV && } + + + + + + + + + diff --git a/apps/web/src/routes/_home/-sections/donate.tsx b/apps/web/src/routes/_home/-sections/donate.tsx index b5511700b..2ed818385 100644 --- a/apps/web/src/routes/_home/-sections/donate.tsx +++ b/apps/web/src/routes/_home/-sections/donate.tsx @@ -2,7 +2,7 @@ import type { IconProps } from "@phosphor-icons/react"; import { t } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; import { GithubLogoIcon, HeartIcon, RocketIcon, SparkleIcon, UsersIcon, WrenchIcon } from "@phosphor-icons/react"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { Button } from "@reactive-resume/ui/components/button"; import { cn } from "@reactive-resume/utils/style"; @@ -13,7 +13,7 @@ type FloatingIconProps = { }; const FloatingIcon = ({ icon: Icon, className, delay = 0 }: FloatingIconProps) => ( - - + ); const PulsingHeart = () => ( - ( }} > - ( }} > - - + + ); type SparkleEffectProps = { @@ -66,7 +66,7 @@ type SparkleEffectProps = { }; const SparkleEffect = ({ className }: SparkleEffectProps) => ( - ( }} > - + ); type FeatureCardProps = { @@ -91,7 +91,7 @@ type FeatureCardProps = { }; const FeatureCard = ({ icon: Icon, title, description, delay }: FeatureCardProps) => ( - - +

{title}

{description}

-
+ ); export const DonationBanner = () => ( @@ -130,7 +130,7 @@ export const DonationBanner = () => (
{/* Header */} - (
- ( transition={{ duration: 0.6, delay: 0.1 }} > Support Reactive Resume - + - ( Reactive Resume is a free and open-source project, built with love and maintained by me and a community of contributors. Your donations help keep the lights on and the code flowing. - - + + {/* Feature cards */}
@@ -190,7 +190,7 @@ export const DonationBanner = () => (
{/* CTA Buttons */} - ( } /> - + {/* Footer note */} - (
Thank you for your support! -
+
); diff --git a/apps/web/src/routes/_home/-sections/faq.tsx b/apps/web/src/routes/_home/-sections/faq.tsx index 9a6cf882e..2f2e25996 100644 --- a/apps/web/src/routes/_home/-sections/faq.tsx +++ b/apps/web/src/routes/_home/-sections/faq.tsx @@ -1,6 +1,6 @@ import { t } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from "@reactive-resume/ui/components/accordion"; import { buttonVariants } from "@reactive-resume/ui/components/button"; import { cn } from "@reactive-resume/utils/style"; @@ -68,7 +68,7 @@ export function FAQ() { id="frequently-asked-questions" className="flex flex-col gap-x-16 gap-y-6 p-4 md:p-8 lg:flex-row lg:gap-x-18 xl:py-16" > - Asked Questions - + - ))} - + ); } @@ -109,7 +109,7 @@ type FAQItemComponentProps = { function FAQItemComponent({ item, index }: FAQItemComponentProps) { return ( - {item.question} {item.answer} - + ); } diff --git a/apps/web/src/routes/_home/-sections/features.tsx b/apps/web/src/routes/_home/-sections/features.tsx index 51a0af1e8..afa623791 100644 --- a/apps/web/src/routes/_home/-sections/features.tsx +++ b/apps/web/src/routes/_home/-sections/features.tsx @@ -19,7 +19,7 @@ import { ShieldCheckIcon, TranslateIcon, } from "@phosphor-icons/react"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useMemo } from "react"; import { cn } from "@reactive-resume/utils/style"; @@ -133,7 +133,7 @@ const getFeatures = (): Feature[] => [ function FeatureCard({ icon: Icon, title, description }: FeatureCardProps) { return ( - {title}

{description}

- + ); } @@ -172,7 +172,7 @@ export function Features() { return (
{/* Header */} -

-
+ {/* Features Grid */}
diff --git a/apps/web/src/routes/_home/-sections/footer.tsx b/apps/web/src/routes/_home/-sections/footer.tsx index b56975da1..9391b68b7 100644 --- a/apps/web/src/routes/_home/-sections/footer.tsx +++ b/apps/web/src/routes/_home/-sections/footer.tsx @@ -2,7 +2,7 @@ import type { Icon } from "@phosphor-icons/react"; import { t } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; import { GithubLogoIcon, LinkedinLogoIcon, XLogoIcon } from "@phosphor-icons/react"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useState } from "react"; import { BrandIcon } from "@reactive-resume/ui/components/brand-icon"; import { Button } from "@reactive-resume/ui/components/button"; @@ -46,7 +46,7 @@ const socialLinks: SocialLink[] = [ export function Footer() { return ( -
-

Reactive Resume

+

Reactive Resume

A free and open-source resume builder that simplifies the process of creating, updating, and sharing @@ -103,7 +103,7 @@ export function Footer() {

- + ); } @@ -140,7 +140,7 @@ function FooterLink({ url, label }: FooterLinkItem) { (opens in new tab) -
- + ); } diff --git a/apps/web/src/routes/_home/-sections/hero.tsx b/apps/web/src/routes/_home/-sections/hero.tsx index 83cbecd64..af9ac0ace 100644 --- a/apps/web/src/routes/_home/-sections/hero.tsx +++ b/apps/web/src/routes/_home/-sections/hero.tsx @@ -2,7 +2,7 @@ import { t } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; import { ArrowRightIcon, BookIcon, SparkleIcon } from "@phosphor-icons/react"; import { Link } from "@tanstack/react-router"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { Badge } from "@reactive-resume/ui/components/badge"; import { Button } from "@reactive-resume/ui/components/button"; import { CometCard } from "@/components/animation/comet-card"; @@ -16,7 +16,7 @@ export function Hero() { > - - +
{/* Badge */} - + {/* Headline */} -

Finally,

-

+

A free and open-source resume builder

-
+ {/* Description */} - - + {/* CTA Buttons */} - } /> - +
{/* Scroll indicator - decorative */} -
- + ); } type MarqueeRowProps = { - templates: Array<[string, TemplateMetadata]>; - rowId: string; + templates: TemplateMarqueeItem[]; direction: "left" | "right"; duration?: number; }; -function MarqueeRow({ templates, rowId, direction, duration = 40 }: MarqueeRowProps) { +function MarqueeRow({ templates, direction, duration = 40 }: MarqueeRowProps) { const animateX = direction === "left" ? ["0%", "-50%"] : ["-50%", "0%"]; return ( - - {templates.map(([template, metadata], index) => ( - + {templates.map(({ id, metadata }) => ( + ))} - + ); } +const createMarqueeItems = (entries: Array<[string, TemplateMetadata]>, rowId: string): TemplateMarqueeItem[] => + entries.flatMap(([template, metadata]) => [ + { id: `${rowId}-${template}-primary`, metadata }, + { id: `${rowId}-${template}-repeat`, metadata }, + ]); + export function Templates() { // Split templates into two rows and duplicate for seamless infinite scroll const { row1, row2 } = useMemo(() => { @@ -75,14 +85,14 @@ export function Templates() { // Duplicate each row for seamless scrolling return { - row1: [...firstHalf, ...firstHalf], - row2: [...secondHalf, ...secondHalf], + row1: createMarqueeItems(firstHalf, "row1"), + row2: createMarqueeItems(secondHalf, "row2"), }; }, []); return (
-

-
+
{/* Marquee container with minimum height */}
{/* First row - moves left to right */} - + {/* Second row - moves right to left (opposite direction) */} - +
diff --git a/apps/web/src/routes/_home/-sections/testimonials.tsx b/apps/web/src/routes/_home/-sections/testimonials.tsx index 509591c77..366fba241 100644 --- a/apps/web/src/routes/_home/-sections/testimonials.tsx +++ b/apps/web/src/routes/_home/-sections/testimonials.tsx @@ -1,6 +1,6 @@ import { Trans } from "@lingui/react/macro"; import { QuotesIcon } from "@phosphor-icons/react"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useMemo } from "react"; const email = "hello@amruthpillai.com"; @@ -35,7 +35,7 @@ type TestimonialCardProps = { function TestimonialCard({ testimonial }: TestimonialCardProps) { return ( -

{testimonial}

-
+ ); } type TestimonialColumnProps = { - columnId: string; + id: string; testimonials: string[]; }; -function TestimonialColumn({ columnId, testimonials }: TestimonialColumnProps) { +function TestimonialColumn({ id, testimonials }: TestimonialColumnProps) { return (
- {testimonials.map((testimonial, index) => ( - + {testimonials.map((testimonial) => ( + ))}
); } +type TestimonialColumnData = { + id: string; + testimonials: string[]; +}; + type MarqueeMasonryProps = { - columns: string[][]; + columns: TestimonialColumnData[]; direction: "left" | "right"; duration?: number; }; function MarqueeMasonry({ columns, direction, duration = 30 }: MarqueeMasonryProps) { const animateX = direction === "left" ? ["0%", "-50%"] : ["-50%", "0%"]; - const marqueeColumns = [...columns, ...columns]; + const marqueeColumns = columns.flatMap((column) => [ + { ...column, id: `${column.id}-primary` }, + { ...column, id: `${column.id}-repeat` }, + ]); return ( - - {marqueeColumns.map((column, index) => ( - + {marqueeColumns.map((column) => ( + ))} - + ); } export function Testimonials() { const columns = useMemo(() => { - const columns: string[][] = []; + const columns: TestimonialColumnData[] = []; for (let index = 0; index < testimonials.length; index += 2) { - columns.push(testimonials.slice(index, index + 2)); + columns.push({ id: `column-${index / 2}`, testimonials: testimonials.slice(index, index + 2) }); } return columns; @@ -101,8 +109,8 @@ export function Testimonials() { return (
-

-
+
{/* Left fade */} diff --git a/apps/web/src/routes/agent/$threadId.tsx b/apps/web/src/routes/agent/$threadId.tsx index 1eed7d038..200116937 100644 --- a/apps/web/src/routes/agent/$threadId.tsx +++ b/apps/web/src/routes/agent/$threadId.tsx @@ -30,7 +30,7 @@ import { import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; import { createFileRoute, Link, useNavigate } from "@tanstack/react-router"; import { lastAssistantMessageIsCompleteWithToolCalls } from "ai"; -import { motion } from "motion/react"; +import { m } from "motion/react"; import { useCallback, useEffect, useMemo, useRef, useState } from "react"; import ReactMarkdown from "react-markdown"; import { toast } from "sonner"; @@ -176,10 +176,13 @@ function fileToBase64(file: File): Promise { } function textFromMessage(message: UIMessage) { - return message.parts - .filter((part) => part.type === "text") - .map((part) => part.text) - .join("\n"); + const textParts: string[] = []; + + for (const part of message.parts) { + if (part.type === "text") textParts.push(part.text); + } + + return textParts.join("\n"); } function parseAgentSseStream(stream: ReadableStream) { @@ -218,7 +221,7 @@ function parseAgentSseStream(stream: ReadableStream) { function promptPreview(prompt: string) { const words = prompt.split(/\s+/).filter(Boolean); - return `${words.slice(0, 7).join(" ")}${words.length > 7 ? "..." : ""}`; + return `${words.slice(0, 7).join(" ")}${words.length > 7 ? "…" : ""}`; } function chunkPrompts(prompts: string[], columns: number) { @@ -252,20 +255,24 @@ function StarterPromptMarquee({ onSelect }: { onSelect: (prompt: string) => void return (
{promptRows.map((row, rowIndex) => { - const marqueePrompts = [...row, ...row, ...row]; + const marqueePrompts = row.flatMap((prompt) => [ + { id: `${prompt}-primary`, prompt }, + { id: `${prompt}-repeat-a`, prompt }, + { id: `${prompt}-repeat-b`, prompt }, + ]); const duration = 135 + rowIndex * 22; const animate = rowIndex % 2 === 0 ? { x: ["0%", "-33.333%"] } : { x: ["-33.333%", "0%"] }; return ( - - {marqueePrompts.map((prompt, index) => ( + {marqueePrompts.map(({ id, prompt }) => ( ))} - + ); })}
); } +function getMessagePartKey(messageId: string, part: UIMessage["parts"][number]) { + if ("toolCallId" in part && typeof part.toolCallId === "string") + return `${messageId}-${part.type}-${part.toolCallId}`; + if (part.type === "text") return `${messageId}-text-${part.text}`; + if (part.type === "file") return `${messageId}-file-${part.url ?? part.filename}`; + return `${messageId}-${part.type}-${JSON.stringify(part)}`; +} + function AssistantMarkdown({ text }: { text: string }) { return ( - {message.parts.map((part, index) => ( + {message.parts.map((part) => ( [ - ...current, - { id: attachment.id, filename: attachment.filename, mediaType: attachment.mediaType }, - ]); - } + const attachments = await Promise.all( + Array.from(files).map(async (file) => { + const attachment = await client.agent.attachments.create({ + threadId, + filename: file.name, + mediaType: file.type || "application/octet-stream", + data: await fileToBase64(file), + }); + return { id: attachment.id, filename: attachment.filename, mediaType: attachment.mediaType }; + }), + ); + + setPendingAttachments((current) => [...current, ...attachments]); toast.success(t`Attachment uploaded.`); } catch (error) { toast.error(getOrpcErrorMessage(error, { fallback: t`Failed to upload attachment.` })); @@ -669,245 +685,358 @@ function AgentChat({ toast.success(t`Conversation JSON copied.`); }; + const copyConversationText = () => { + void navigator.clipboard.writeText(messages.map(textFromMessage).join("\n\n")); + toast.success(t`Conversation copied.`); + }; + + const answerToolCall = (toolCallId: string, answer: string) => { + addToolOutput({ tool: "ask_user_question", toolCallId, output: answer }); + }; + + const revertAction = (actionId: string) => { + const confirmation = window.confirm( + t`Restore the resume to before this patch? This will roll back this patch and any patches applied after it.`, + ); + if (!confirmation) return; + + revertMutation.mutate( + { id: actionId }, + { + onSuccess: (action) => { + if (action.status === "conflicted") { + toast.error(action.revertMessage ?? t`Cannot restore; the resume has changed since this edit was applied.`); + } else if (action.status === "rolled_back" || action.status === "reverted") { + toast.success(t`Patch rolled back.`); + } + void refreshThread(); + }, + onError: (error) => toast.error(getOrpcErrorMessage(error, { fallback: t`Could not restore this patch.` })), + }, + ); + }; + + const retryLastMessage = () => { + clearError(); + void regenerate(); + }; + return (
-
-
- {onToggleThreads ? ( - - ) : null} + void handleDelete()} + onToggleResume={onToggleResume} + onToggleThreads={onToggleThreads} + /> -
- Chat + + + + + void stopRun()} + onUploadFiles={(files) => void uploadFiles(files)} + /> +
+ ); +} + +function AgentChatReadOnlyBanner({ + isReadOnly, + readOnlyReason, +}: { + isReadOnly: boolean; + readOnlyReason: "archived" | "missing" | null; +}) { + if (!isReadOnly) return null; + + return ( +
+ {readOnlyReason === "archived" ? ( + This thread is archived. New messages cannot be sent. + ) : ( + This thread is read-only because the working resume or AI provider is unavailable. + )} +
+ ); +} + +function AgentChatMessages({ + actionsById, + error, + isReadOnly, + isReverting, + isStreaming, + messages, + onAnswer, + onRevert, + onRetry, + onStarterSelect, +}: { + actionsById: Map; + error: Error | undefined; + isReadOnly: boolean; + isReverting: boolean; + isStreaming: boolean; + messages: UIMessage[]; + onAnswer: (toolCallId: string, answer: string) => void; + onRevert: (actionId: string) => void; + onRetry: () => void; + onStarterSelect: (prompt: string) => void; +}) { + return ( + +
+ {messages.length === 0 ? ( +
+ +

+ What do you want to do? +

+
-
-
- {onToggleResume ? ( - - ) : null} - - - - - Thread actions - - - } - /> + ) : null} - - { - void navigator.clipboard.writeText(messages.map(textFromMessage).join("\n\n")); - toast.success(t`Conversation copied.`); - }} - > - - Copy - - - - Copy JSON - + {messages.map((message) => ( + + ))} - + {isStreaming ? ( +
+
+ Working… +
+
+ ) : null} - {!isArchived ? ( - - - Archive - - ) : null} + {error ? ( +
+ {error.message} + {!isReadOnly ? ( + + ) : null} +
+ ) : null} +
+
+ ); +} - void handleDelete()} - > - - Delete - - - +function AgentChatHeader({ + isArchived, + isArchivePending, + isDeletePending, + onArchive, + onCopyConversation, + onCopyConversationJson, + onDelete, + onToggleResume, + onToggleThreads, +}: { + isArchived: boolean; + isArchivePending: boolean; + isDeletePending: boolean; + onArchive: () => void; + onCopyConversation: () => void; + onCopyConversationJson: () => void; + onDelete: () => void; + onToggleResume?: () => void; + onToggleThreads?: () => void; +}) { + return ( +
+
+ {onToggleThreads ? ( + + ) : null} + +
+ Chat
+
+ {onToggleResume ? ( + + ) : null} + + + + + Thread actions + + + } + /> - {isReadOnly ? ( -
- {readOnlyReason === "archived" ? ( - This thread is archived. New messages cannot be sent. + + + + Copy + + + + Copy JSON + + + + + {!isArchived ? ( + + + Archive + + ) : null} + + + + Delete + + + +
+
+ ); +} + +function AgentChatComposer({ + fileInputRef, + input, + isReadOnly, + isStreaming, + isUploading, + pendingAttachments, + onInputChange, + onSend, + onStopRun, + onUploadFiles, +}: { + fileInputRef: React.RefObject; + input: string; + isReadOnly: boolean; + isStreaming: boolean; + isUploading: boolean; + pendingAttachments: Array>; + onInputChange: (value: string) => void; + onSend: () => void; + onStopRun: () => void; + onUploadFiles: (files: FileList | null) => void; +}) { + return ( +
{ + event.preventDefault(); + onSend(); + }} + > +
+ {pendingAttachments.length > 0 ? ( +
+ {pendingAttachments.map((attachment) => ( + + + {attachment.filename} + + ))} +
+ ) : null} + +
+ onUploadFiles(event.target.files)} + /> + +