From 7b0c07ad3cd11127628f8155f3f589f8a9ae8956 Mon Sep 17 00:00:00 2001 From: Jake Jarvis Date: Wed, 18 Mar 2026 20:42:01 -0400 Subject: [PATCH] =?UTF-8?q?chore(i18n):=20add=20Claude-powered=20translati?= =?UTF-8?q?on=20script=20and=20fill=20missing=20PO=20translations=20-=20Ad?= =?UTF-8?q?d=20`packages/i18n/scripts/claude.ts`=20=E2=80=94=20a=20Bun=20s?= =?UTF-8?q?cript=20that=20translates=20empty=20PO=20entries=20via=20the=20?= =?UTF-8?q?Claude=20Code=20CLI,=20supporting=20batch=20mode,=20dry-run,=20?= =?UTF-8?q?optional=20AI=20context=20from=20`crowdin-context.jsonl`,=20and?= =?UTF-8?q?=20structured=20JSON=20output=20validation=20-=20Add=20`i18n:cl?= =?UTF-8?q?aude`=20root=20script=20(`bun=20packages/i18n/scripts/claude.ts?= =?UTF-8?q?`)=20as=20a=20convenience=20alias=20-=20Fill=20all=20previously?= =?UTF-8?q?=20empty=20msgstr=20entries=20across=20de,=20es,=20fr,=20it,=20?= =?UTF-8?q?pt=20PO=20catalogs=20and=20recompile=20`.ts`=20catalogs=20-=20P?= =?UTF-8?q?olish=20README=20with=20badges=20(license,=20CI=20status,=20rel?= =?UTF-8?q?ease,=20language,=20Crowdin=20localization)=20and=20minor=20for?= =?UTF-8?q?matting=20fixes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 14 +- apps/web/package.json | 4 +- bun.lock | 46 +- crowdin.yml | 2 - docs/bun.lock | 39 +- docs/content/docs/meta.json | 3 +- docs/content/docs/translations.mdx | 76 + docs/package.json | 17 +- docs/public/openapi.json | 114 +- docs/src/app/(home)/privacy/page.tsx | 11 +- package.json | 9 +- packages/i18n/scripts/claude.ts | 519 ++++++ packages/i18n/src/po/de.po | 2504 ++++++++++++------------- packages/i18n/src/po/de.ts | 2 +- packages/i18n/src/po/en.po | 1475 ++++++++------- packages/i18n/src/po/es.po | 2514 ++++++++++++------------- packages/i18n/src/po/es.ts | 2 +- packages/i18n/src/po/fr.po | 2518 +++++++++++++------------- packages/i18n/src/po/fr.ts | 2 +- packages/i18n/src/po/it.po | 2494 ++++++++++++------------- packages/i18n/src/po/it.ts | 2 +- packages/i18n/src/po/pt.po | 2516 ++++++++++++------------- packages/i18n/src/po/pt.ts | 2 +- 23 files changed, 7775 insertions(+), 7110 deletions(-) create mode 100644 docs/content/docs/translations.mdx create mode 100644 packages/i18n/scripts/claude.ts diff --git a/README.md b/README.md index c76950f..3dc1f14 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,16 @@

-Sofa -
-Sofa — Self-hosted movie & TV tracker + Sofa
+ Sofa — Self-hosted movie & TV tracker +

+

+ GitHub License + GitHub Actions Workflow Status + GitHub Release + GitHub top language + Crowdin

-Sofa is a self-hosted movie and TV tracker for nerds. Track what you've watched, discover what's next, and plug your data into your existing home media stack. +[Sofa](https://sofa.watch) is a self-hosted movie and TV tracker for nerds. Track what you've watched, discover what's next, and plug your data into your existing home media stack. All without anything leaving your homelab. 🍿 ![Title page screenshot](screenshot.png) diff --git a/apps/web/package.json b/apps/web/package.json index 4d8cdb0..ddad2ed 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -28,7 +28,7 @@ "@tabler/icons-react": "3.40.0", "@tanstack/react-hotkeys": "0.4.1", "@tanstack/react-query": "catalog:", - "@tanstack/react-router": "1.167.4", + "@tanstack/react-router": "1.167.5", "better-auth": "catalog:", "class-variance-authority": "0.7.1", "clsx": "2.1.1", @@ -54,7 +54,7 @@ "@tanstack/react-devtools": "0.10.0", "@tanstack/react-query-devtools": "5.91.3", "@tanstack/react-router-devtools": "1.166.9", - "@tanstack/router-plugin": "1.166.13", + "@tanstack/router-plugin": "1.166.14", "@types/bun": "catalog:", "@types/node": "catalog:", "@types/react": "catalog:", diff --git a/bun.lock b/bun.lock index 6f07845..d655e02 100644 --- a/bun.lock +++ b/bun.lock @@ -10,7 +10,7 @@ "@lingui/format-po": "catalog:", "oxfmt": "0.41.0", "oxlint": "1.56.0", - "turbo": "2.8.18", + "turbo": "2.8.19", "typescript": "catalog:", }, }, @@ -156,7 +156,7 @@ "@tabler/icons-react": "3.40.0", "@tanstack/react-hotkeys": "0.4.1", "@tanstack/react-query": "catalog:", - "@tanstack/react-router": "1.167.4", + "@tanstack/react-router": "1.167.5", "better-auth": "catalog:", "class-variance-authority": "0.7.1", "clsx": "2.1.1", @@ -182,7 +182,7 @@ "@tanstack/react-devtools": "0.10.0", "@tanstack/react-query-devtools": "5.91.3", "@tanstack/react-router-devtools": "1.166.9", - "@tanstack/router-plugin": "1.166.13", + "@tanstack/router-plugin": "1.166.14", "@types/bun": "catalog:", "@types/node": "catalog:", "@types/react": "catalog:", @@ -318,7 +318,7 @@ "@orpc/contract": "1.13.8", "@orpc/tanstack-query": "1.13.8", "@tanstack/react-query": "5.91.0", - "@types/bun": "1.3.10", + "@types/bun": "1.3.11", "@types/node": "25.5.0", "@types/react": "19.2.14", "better-auth": "1.5.5", @@ -359,11 +359,11 @@ "@azure/logger": ["@azure/logger@1.3.0", "", { "dependencies": { "@typespec/ts-http-runtime": "^0.3.0", "tslib": "^2.6.2" } }, "sha512-fCqPIfOcLE+CGqGPd66c8bZpwAji98tZ4JI9i/mlTNTlsIWslCfpg48s/ypyLxZTump5sypjrKn2/kY7q8oAbA=="], - "@azure/msal-browser": ["@azure/msal-browser@4.29.1", "", { "dependencies": { "@azure/msal-common": "15.16.1" } }, "sha512-1Vrt27du1cl4QHkzLc6L4aeXqliPIDIs5l/1I4hWWMXkXccY/EznJT1+pBdoVze0azTAI8sCyq5B4cBVYG1t9w=="], + "@azure/msal-browser": ["@azure/msal-browser@4.30.0", "", { "dependencies": { "@azure/msal-common": "15.17.0" } }, "sha512-HBBKfbZkMVzzF5bofvS1cXuNHFVc+gt4/HOnCmG/0hsHuZRJvJvDg/+7nTwIpoqvJc8BQp5o23rBUfisOLxR+w=="], - "@azure/msal-common": ["@azure/msal-common@15.16.1", "", {}, "sha512-qxUG9TCl+TVSSX58onVDHDWrvT5CE0+NeeUAbkQqaESpSm79u5IePLnPWMMjCUnUR2zJd4+Bt9vioVRzLmJb2g=="], + "@azure/msal-common": ["@azure/msal-common@15.17.0", "", {}, "sha512-VQ5/gTLFADkwue+FohVuCqlzFPUq4xSrX8jeZe+iwZuY6moliNC8xt86qPVNYdtbQfELDf2Nu6LI+demFPHGgw=="], - "@azure/msal-node": ["@azure/msal-node@3.8.9", "", { "dependencies": { "@azure/msal-common": "15.16.1", "jsonwebtoken": "^9.0.0", "uuid": "^8.3.0" } }, "sha512-jZ0pw/BbdEUWGhomCaAiVDfXRI/9K56m5hTNqB/CzcbZEYhXm5qpK1cDngN1iXfwSfmUMorOUQ2FC0dyuQ9uRg=="], + "@azure/msal-node": ["@azure/msal-node@3.8.10", "", { "dependencies": { "@azure/msal-common": "15.17.0", "jsonwebtoken": "^9.0.0", "uuid": "^8.3.0" } }, "sha512-0Hz7Kx4hs70KZWep/Rd7aw/qOLUF92wUOhn7ZsOuB5xNR/06NL1E2RAI9+UKH1FtvN8nD6mFjH7UKSjv6vOWvQ=="], "@babel/code-frame": ["@babel/code-frame@7.29.0", "", { "dependencies": { "@babel/helper-validator-identifier": "^7.28.5", "js-tokens": "^4.0.0", "picocolors": "^1.1.1" } }, "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw=="], @@ -1287,19 +1287,19 @@ "@tanstack/react-query-persist-client": ["@tanstack/react-query-persist-client@5.90.25", "", { "dependencies": { "@tanstack/query-persist-client-core": "5.92.2" }, "peerDependencies": { "@tanstack/react-query": "^5.91.0", "react": "^18 || ^19" } }, "sha512-ZQElYJSIOS7fq7jv4VYhTZpY4ZLkmur9tSyeE+MW+kWxkWyzAE/h4FOODKP6Ii9N3+4IsGIrUgsMRJuSgRJBeQ=="], - "@tanstack/react-router": ["@tanstack/react-router@1.167.4", "", { "dependencies": { "@tanstack/history": "1.161.6", "@tanstack/react-store": "^0.9.1", "@tanstack/router-core": "1.167.4", "isbot": "^5.1.22", "tiny-invariant": "^1.3.3", "tiny-warning": "^1.0.3" }, "peerDependencies": { "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0" } }, "sha512-VpbZh382zX3WF4+X2Z+EUyd8eJhJyjg9C6ByYwrVZiWbhgbMK4+zQQIG2+lCAlIlDi7SV8fDcGL09NA8Z2kpGQ=="], + "@tanstack/react-router": ["@tanstack/react-router@1.167.5", "", { "dependencies": { "@tanstack/history": "1.161.6", "@tanstack/react-store": "^0.9.1", "@tanstack/router-core": "1.167.5", "isbot": "^5.1.22", "tiny-invariant": "^1.3.3", "tiny-warning": "^1.0.3" }, "peerDependencies": { "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0" } }, "sha512-s1nP6l/7BYZfSwhoNbB7/rUmZ07q/AvkmhBoiDQl3tgy5dpb9Q1qjtIapYdvCOrao1aA/QCaWqxcbGc2Ct1bvQ=="], "@tanstack/react-router-devtools": ["@tanstack/react-router-devtools@1.166.9", "", { "dependencies": { "@tanstack/router-devtools-core": "1.166.9" }, "peerDependencies": { "@tanstack/react-router": "^1.167.2", "@tanstack/router-core": "^1.167.2", "react": ">=18.0.0 || >=19.0.0", "react-dom": ">=18.0.0 || >=19.0.0" }, "optionalPeers": ["@tanstack/router-core"] }, "sha512-O49eZmaeEKB5YnKH/qd61AbxV/lW8ICm4stfZ4GNQNpzQQ6rhPIB0p3PMZDIgX+6DoMivdNvLRmXAOOpzpIpDg=="], "@tanstack/react-store": ["@tanstack/react-store@0.9.2", "", { "dependencies": { "@tanstack/store": "0.9.2", "use-sync-external-store": "^1.6.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-Vt5usJE5sHG/cMechQfmwvwne6ktGCELe89Lmvoxe3LKRoFrhPa8OCKWs0NliG8HTJElEIj7PLtaBQIcux5pAQ=="], - "@tanstack/router-core": ["@tanstack/router-core@1.167.4", "", { "dependencies": { "@tanstack/history": "1.161.6", "@tanstack/store": "^0.9.1", "cookie-es": "^2.0.0", "seroval": "^1.4.2", "seroval-plugins": "^1.4.2", "tiny-invariant": "^1.3.3", "tiny-warning": "^1.0.3" }, "bin": { "intent": "bin/intent.js" } }, "sha512-Gk5V9Zr5JFJ4SbLyCheQLJ3MnXddccENPA+DJRz+9g3QxtN8DJB8w8KCUCgDeYlWp4LvmO4nX3fy3tupqVP2Pw=="], + "@tanstack/router-core": ["@tanstack/router-core@1.167.5", "", { "dependencies": { "@tanstack/history": "1.161.6", "@tanstack/store": "^0.9.1", "cookie-es": "^2.0.0", "seroval": "^1.4.2", "seroval-plugins": "^1.4.2", "tiny-invariant": "^1.3.3", "tiny-warning": "^1.0.3" }, "bin": { "intent": "bin/intent.js" } }, "sha512-8fRgJ0zNJf77R4grCaJQ5Imatjyc4YT5v8rlsPkYYYeUlcFNLbuFRhLlAMdND9gRUMznpnbRDXngpTPgx2K7HQ=="], "@tanstack/router-devtools-core": ["@tanstack/router-devtools-core@1.166.9", "", { "dependencies": { "clsx": "^2.1.1", "goober": "^2.1.16", "tiny-invariant": "^1.3.3" }, "peerDependencies": { "@tanstack/router-core": "^1.167.2", "csstype": "^3.0.10" }, "optionalPeers": ["csstype"] }, "sha512-PNlA7GmOUX9wY7LUG709Pk3Lg33dfHBztQwzjzrOiOsuf4ggp2R6bwarF8nYGNjG79z/MaB5PN+5yvkCVk8jGw=="], - "@tanstack/router-generator": ["@tanstack/router-generator@1.166.12", "", { "dependencies": { "@tanstack/router-core": "1.167.4", "@tanstack/router-utils": "1.161.6", "@tanstack/virtual-file-routes": "1.161.7", "prettier": "^3.5.0", "recast": "^0.23.11", "source-map": "^0.7.4", "tsx": "^4.19.2", "zod": "^3.24.2" } }, "sha512-2HdxSTbCkbU9JeYogKVigIlXoLtIJE1x5rbEov+ZLTPjGCO9kicNQuljqg9Js+u2/ahtWewNrE5u1QCAyxmpIg=="], + "@tanstack/router-generator": ["@tanstack/router-generator@1.166.13", "", { "dependencies": { "@tanstack/router-core": "1.167.5", "@tanstack/router-utils": "1.161.6", "@tanstack/virtual-file-routes": "1.161.7", "prettier": "^3.5.0", "recast": "^0.23.11", "source-map": "^0.7.4", "tsx": "^4.19.2", "zod": "^3.24.2" } }, "sha512-ALxSs6OzimiSgpOuIm+AXmc7eUx/oGPwSPpdQbpZ/kX7WHRh6qM7lv8DAN0K3jWcBpzF8eeOIdryWryX8gH+Yg=="], - "@tanstack/router-plugin": ["@tanstack/router-plugin@1.166.13", "", { "dependencies": { "@babel/core": "^7.28.5", "@babel/plugin-syntax-jsx": "^7.27.1", "@babel/plugin-syntax-typescript": "^7.27.1", "@babel/template": "^7.27.2", "@babel/traverse": "^7.28.5", "@babel/types": "^7.28.5", "@tanstack/router-core": "1.167.4", "@tanstack/router-generator": "1.166.12", "@tanstack/router-utils": "1.161.6", "@tanstack/virtual-file-routes": "1.161.7", "chokidar": "^3.6.0", "unplugin": "^2.1.2", "zod": "^3.24.2" }, "peerDependencies": { "@rsbuild/core": ">=1.0.2", "@tanstack/react-router": "^1.167.4", "vite": ">=5.0.0 || >=6.0.0 || >=7.0.0", "vite-plugin-solid": "^2.11.10", "webpack": ">=5.92.0" }, "optionalPeers": ["@rsbuild/core", "@tanstack/react-router", "vite", "vite-plugin-solid", "webpack"], "bin": { "intent": "bin/intent.js" } }, "sha512-xG3ND3AlMe6DN9PihJAYUbQJevqJvVdzN1QpZbfU1/jkHurL97ynP2yXfmMTh8Qgi1K+SWRko4bi7iZlYP9SUw=="], + "@tanstack/router-plugin": ["@tanstack/router-plugin@1.166.14", "", { "dependencies": { "@babel/core": "^7.28.5", "@babel/plugin-syntax-jsx": "^7.27.1", "@babel/plugin-syntax-typescript": "^7.27.1", "@babel/template": "^7.27.2", "@babel/traverse": "^7.28.5", "@babel/types": "^7.28.5", "@tanstack/router-core": "1.167.5", "@tanstack/router-generator": "1.166.13", "@tanstack/router-utils": "1.161.6", "@tanstack/virtual-file-routes": "1.161.7", "chokidar": "^3.6.0", "unplugin": "^2.1.2", "zod": "^3.24.2" }, "peerDependencies": { "@rsbuild/core": ">=1.0.2", "@tanstack/react-router": "^1.167.5", "vite": ">=5.0.0 || >=6.0.0 || >=7.0.0", "vite-plugin-solid": "^2.11.10", "webpack": ">=5.92.0" }, "optionalPeers": ["@rsbuild/core", "@tanstack/react-router", "vite", "vite-plugin-solid", "webpack"], "bin": { "intent": "bin/intent.js" } }, "sha512-hypyj0qlsAbJf60/glmVYqSVwnRB4hKRrMCUsSXjrPdO2g6gs3z6xHmcWsHQ831C4G9+bSFEK9Uy5EjO3A4THQ=="], "@tanstack/router-utils": ["@tanstack/router-utils@1.161.6", "", { "dependencies": { "@babel/core": "^7.28.5", "@babel/generator": "^7.28.5", "@babel/parser": "^7.28.5", "@babel/types": "^7.28.5", "ansis": "^4.1.0", "babel-dead-code-elimination": "^1.0.12", "diff": "^8.0.2", "pathe": "^2.0.3", "tinyglobby": "^0.2.15" } }, "sha512-nRcYw+w2OEgK6VfjirYvGyPLOK+tZQz1jkYcmH5AjMamQ9PycnlxZF2aEZtPpNoUsaceX2bHptn6Ub5hGXqNvw=="], @@ -1313,17 +1313,17 @@ "@ts-morph/common": ["@ts-morph/common@0.27.0", "", { "dependencies": { "fast-glob": "^3.3.3", "minimatch": "^10.0.1", "path-browserify": "^1.0.1" } }, "sha512-Wf29UqxWDpc+i61k3oIOzcUfQt79PIT9y/MWfAGlrkjg6lBC1hwDECLXPVJAhWjiGbfBCxZd65F/LIZF3+jeJQ=="], - "@turbo/darwin-64": ["@turbo/darwin-64@2.8.18", "", { "os": "darwin", "cpu": "x64" }, "sha512-3QNJ8VR2y1+AZX1HRB2uAvBWHWYpyWMYuDPAPHwhmpC74YweQmPh41dQZ9fkNcgT1eZNgYKf6Q3Hq7i0XK3Ybg=="], + "@turbo/darwin-64": ["@turbo/darwin-64@2.8.19", "", { "os": "darwin", "cpu": "x64" }, "sha512-WNzpqJV7rO/oKmsxjtSFXuV87fZb/qxzeGWXJng4oHFz7iPOFSWrPb2gTazJgoTvXUfe1kOH2o0F+zFrerwzRw=="], - "@turbo/darwin-arm64": ["@turbo/darwin-arm64@2.8.18", "", { "os": "darwin", "cpu": "arm64" }, "sha512-kiFEHQ+l64yzRtFcBSdHG9s/EF3aEzzmkuR8e1ygv7ol1YnWwz5EQEbZz6Ajt1sNYYRlo0GXw/d1YanVS9KWPA=="], + "@turbo/darwin-arm64": ["@turbo/darwin-arm64@2.8.19", "", { "os": "darwin", "cpu": "arm64" }, "sha512-KTq8/PH0/ml9bNFomZ2VjmOqW6RYPRqBqV5CfNeD5ekJMuNwJUdeQz0qXguxCzW4OkHCnTdPeKIehR0cdQObPg=="], - "@turbo/linux-64": ["@turbo/linux-64@2.8.18", "", { "os": "linux", "cpu": "x64" }, "sha512-GlMHBGfob6pOQv7t6imx11O0WJapVVNcJxw+HkliIr1ez8vr8SskM7njqOtqKBTaooCmGA71BFInNRZNYO9qlg=="], + "@turbo/linux-64": ["@turbo/linux-64@2.8.19", "", { "os": "linux", "cpu": "x64" }, "sha512-d0xcXiGUt1Q/HzMfgkqai5KyXrassLRuUZhxmUs4ZX99tQFbqRL2/CkSKCnMqyDv7c0K5eugLerVUY+DYr1DQg=="], - "@turbo/linux-arm64": ["@turbo/linux-arm64@2.8.18", "", { "os": "linux", "cpu": "arm64" }, "sha512-ogWEZ8K/NznjnJU1idHYOA62Y7xYyMnt+kKTZzRNJ9Ye2japtjDkixC31yHaA9QJayb+yS5V8gNDjVfh2yGrIw=="], + "@turbo/linux-arm64": ["@turbo/linux-arm64@2.8.19", "", { "os": "linux", "cpu": "arm64" }, "sha512-UX3r1iwqsOK8dMgKFtZpDqZk7feqHXZJ/EQAknh0SVQrnc4vkm6mZqjX4j2j3DVoSo4Ho8xGITYlor9Xxsyomw=="], - "@turbo/windows-64": ["@turbo/windows-64@2.8.18", "", { "os": "win32", "cpu": "x64" }, "sha512-29g6qryc18ls7BKUmVsjjHAbx2eDgab5CUSPhbCKZYCBfzaW+i79wCzyVoC0NJ8IRNwbLch2QEzgGEoRC6uGOQ=="], + "@turbo/windows-64": ["@turbo/windows-64@2.8.19", "", { "os": "win32", "cpu": "x64" }, "sha512-3MrvD/gMYWfQKZVZOeilKm1629zPG0+KlErZbI0n9Nr3L32+5qrZOF/cgWErukLnOSR38whgf8t2WaPJQALqxg=="], - "@turbo/windows-arm64": ["@turbo/windows-arm64@2.8.18", "", { "os": "win32", "cpu": "arm64" }, "sha512-hLsgNDzDDO+Tq2YJ9uvmB2PFTYCgeNj6cyAOOBZP9rsOx0kxNBo4/OvDIgYl/cfo7wsoRBxNQ9giYR+rZMcAjA=="], + "@turbo/windows-arm64": ["@turbo/windows-arm64@2.8.19", "", { "os": "win32", "cpu": "arm64" }, "sha512-j+8mi7kyEgT7cUTPOtPJS8KbTWxu4+OQBiDIo+zklz/RKV4hoN+k4+J8iCM9Nj+o+SVnzc01xSI+s3eBG0MDSA=="], "@tybys/wasm-util": ["@tybys/wasm-util@0.10.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg=="], @@ -1337,7 +1337,7 @@ "@types/babel__traverse": ["@types/babel__traverse@7.28.0", "", { "dependencies": { "@babel/types": "^7.28.2" } }, "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q=="], - "@types/bun": ["@types/bun@1.3.10", "", { "dependencies": { "bun-types": "1.3.10" } }, "sha512-0+rlrUrOrTSskibryHbvQkDOWRJwJZqZlxrUs1u4oOoTln8+WIXBPmAuCF35SWB2z4Zl3E84Nl/D0P7803nigQ=="], + "@types/bun": ["@types/bun@1.3.11", "", { "dependencies": { "bun-types": "1.3.11" } }, "sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg=="], "@types/d3-array": ["@types/d3-array@3.2.2", "", {}, "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw=="], @@ -1537,7 +1537,7 @@ "buffer-from": ["buffer-from@1.1.2", "", {}, "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="], - "bun-types": ["bun-types@1.3.10", "", { "dependencies": { "@types/node": "*" } }, "sha512-tcpfCCl6XWo6nCVnpcVrxQ+9AYN1iqMIzgrSKYMB/fjLtV2eyAVEg7AxQJuCq/26R6HpKWykQXuSOq/21RYcbg=="], + "bun-types": ["bun-types@1.3.11", "", { "dependencies": { "@types/node": "*" } }, "sha512-1KGPpoxQWl9f6wcZh57LvrPIInQMn2TQ7jsgxqpRzg+l0QPOFvJVH7HmvHo/AiPgwXy+/Thf6Ov3EdVn1vOabg=="], "bundle-name": ["bundle-name@4.1.0", "", { "dependencies": { "run-applescript": "^7.0.0" } }, "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q=="], @@ -1737,6 +1737,8 @@ "encodeurl": ["encodeurl@2.0.0", "", {}, "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg=="], + "encoding": ["encoding@0.1.13", "", { "dependencies": { "iconv-lite": "^0.6.2" } }, "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A=="], + "end-of-stream": ["end-of-stream@1.4.5", "", { "dependencies": { "once": "^1.4.0" } }, "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg=="], "enhanced-resolve": ["enhanced-resolve@5.20.1", "", { "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.3.0" } }, "sha512-Qohcme7V1inbAfvjItgw0EaxVX5q2rdVEZHRBrEQdRZTssLDGsL8Lwrznl8oQ/6kuTJONLaDcGjkNP247XEhcA=="], @@ -2091,7 +2093,7 @@ "jiti": ["jiti@2.6.1", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ=="], - "jose": ["jose@6.2.1", "", {}, "sha512-jUaKr1yrbfaImV7R2TN/b3IcZzsw38/chqMpo2XJ7i2F8AfM/lA4G1goC3JVEwg0H7UldTmSt3P68nt31W7/mw=="], + "jose": ["jose@6.2.2", "", {}, "sha512-d7kPDd34KO/YnzaDOlikGpOurfF0ByC2sEV4cANCtdqLlTfBlw2p14O/5d/zv40gJPbIQxfES3nSx1/oYNyuZQ=="], "jotai": ["jotai@2.18.1", "", { "peerDependencies": { "@babel/core": ">=7.0.0", "@babel/template": ">=7.0.0", "@types/react": ">=17.0.0", "react": ">=17.0.0" }, "optionalPeers": ["@babel/core", "@babel/template", "@types/react", "react"] }, "sha512-e0NOzK+yRFwHo7DOp0DS0Ycq74KMEAObDWFGmfEL28PD9nLqBTt3/Ug7jf9ca72x0gC9LQZG9zH+0ISICmy3iA=="], @@ -2131,7 +2133,7 @@ "kleur": ["kleur@4.1.5", "", {}, "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ=="], - "kysely": ["kysely@0.28.12", "", {}, "sha512-kWiueDWXhbCchgiotwXkwdxZE/6h56IHAeFWg4euUfW0YsmO9sxbAxzx1KLLv2lox15EfuuxHQvgJ1qIfZuHGw=="], + "kysely": ["kysely@0.28.13", "", {}, "sha512-jCkYDvlfzOyHaVsrvR4vnNZxG30oNv2jbbFBjTQAUG8n0h07HW0sZJHk4KAQIRyu9ay+Rg+L8qGa3lwt8Gve9w=="], "lan-network": ["lan-network@0.2.0", "", { "bin": { "lan-network": "dist/lan-network-cli.js" } }, "sha512-EZgbsXMrGS+oK+Ta12mCjzBFse+SIewGdwrSTr5g+MSymnjpox2x05ceI20PQejJOFvOgzcXrfDk/SdY7dSCtw=="], @@ -2775,7 +2777,7 @@ "tsx": ["tsx@4.21.0", "", { "dependencies": { "esbuild": "~0.27.0", "get-tsconfig": "^4.7.5" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "bin": { "tsx": "dist/cli.mjs" } }, "sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw=="], - "turbo": ["turbo@2.8.18", "", { "optionalDependencies": { "@turbo/darwin-64": "2.8.18", "@turbo/darwin-arm64": "2.8.18", "@turbo/linux-64": "2.8.18", "@turbo/linux-arm64": "2.8.18", "@turbo/windows-64": "2.8.18", "@turbo/windows-arm64": "2.8.18" }, "bin": { "turbo": "bin/turbo" } }, "sha512-ZO5aYR8wXIcZ+KRL8W7RFWbqIRDyYHtesF/g9zPMndmq+KkX34qrZgG9M+YswJ6BGX4jlYC1FlJjleKENagJdw=="], + "turbo": ["turbo@2.8.19", "", { "optionalDependencies": { "@turbo/darwin-64": "2.8.19", "@turbo/darwin-arm64": "2.8.19", "@turbo/linux-64": "2.8.19", "@turbo/linux-arm64": "2.8.19", "@turbo/windows-64": "2.8.19", "@turbo/windows-arm64": "2.8.19" }, "bin": { "turbo": "bin/turbo" } }, "sha512-9NTKvQZ/02XnJCSU4mF5gvAPK+nuLbvCtft/NE8dJeOwaup0bJ14rYx7TxmSXp8JJuAN8nAjqfXWFsWwoQSFHg=="], "tw-animate-css": ["tw-animate-css@1.4.0", "", {}, "sha512-7bziOlRqH0hJx80h/3mbicLW7o8qLsH5+RaLR2t+OHM3D0JlWGODQKQ4cxbK7WlvmUxpcj6Kgu6EKqjrGFe3QQ=="], diff --git a/crowdin.yml b/crowdin.yml index a782717..2c90ef4 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -1,8 +1,6 @@ project_id: "881052" api_token_env: CROWDIN_PERSONAL_TOKEN -preserve_hierarchy: true - files: - source: /packages/i18n/src/po/en.po translation: /packages/i18n/src/po/%two_letters_code%.po diff --git a/docs/bun.lock b/docs/bun.lock index d144662..54181e5 100644 --- a/docs/bun.lock +++ b/docs/bun.lock @@ -12,18 +12,19 @@ "fumadocs-openapi": "^10.3.18", "fumadocs-ui": "^16.6.17", "lucide-react": "^0.577.0", - "next": "16.1.7", - "react": "^19.2.4", - "react-dom": "^19.2.4", + "next": "16.2.0", + "react": "19.2.4", + "react-dom": "19.2.4", "shiki": "^4.0.2", "tailwind-merge": "^3.5.0", }, "devDependencies": { "@tailwindcss/postcss": "^4.2.2", + "@types/bun": "1.3.11", "@types/mdx": "^2.0.13", "@types/node": "^25.5.0", - "@types/react": "^19.2.14", - "@types/react-dom": "^19.2.3", + "@types/react": "19.2.14", + "@types/react-dom": "19.2.3", "oxfmt": "0.41.0", "oxlint": "1.56.0", "postcss": "^8.5.8", @@ -32,6 +33,10 @@ }, }, }, + "overrides": { + "@types/react": "19.2.14", + "@types/react-dom": "19.2.3", + }, "packages": { "@alloc/quick-lru": ["@alloc/quick-lru@5.2.0", "", {}, "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw=="], @@ -169,23 +174,23 @@ "@mdx-js/mdx": ["@mdx-js/mdx@3.1.1", "", { "dependencies": { "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", "@types/mdx": "^2.0.0", "acorn": "^8.0.0", "collapse-white-space": "^2.0.0", "devlop": "^1.0.0", "estree-util-is-identifier-name": "^3.0.0", "estree-util-scope": "^1.0.0", "estree-walker": "^3.0.0", "hast-util-to-jsx-runtime": "^2.0.0", "markdown-extensions": "^2.0.0", "recma-build-jsx": "^1.0.0", "recma-jsx": "^1.0.0", "recma-stringify": "^1.0.0", "rehype-recma": "^1.0.0", "remark-mdx": "^3.0.0", "remark-parse": "^11.0.0", "remark-rehype": "^11.0.0", "source-map": "^0.7.0", "unified": "^11.0.0", "unist-util-position-from-estree": "^2.0.0", "unist-util-stringify-position": "^4.0.0", "unist-util-visit": "^5.0.0", "vfile": "^6.0.0" } }, "sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ=="], - "@next/env": ["@next/env@16.1.7", "", {}, "sha512-rJJbIdJB/RQr2F1nylZr/PJzamvNNhfr3brdKP6s/GW850jbtR70QlSfFselvIBbcPUOlQwBakexjFzqLzF6pg=="], + "@next/env": ["@next/env@16.2.0", "", {}, "sha512-OZIbODWWAi0epQRCRjNe1VO45LOFBzgiyqmTLzIqWq6u1wrxKnAyz1HH6tgY/Mc81YzIjRPoYsPAEr4QV4l9TA=="], - "@next/swc-darwin-arm64": ["@next/swc-darwin-arm64@16.1.7", "", { "os": "darwin", "cpu": "arm64" }, "sha512-b2wWIE8sABdyafc4IM8r5Y/dS6kD80JRtOGrUiKTsACFQfWWgUQ2NwoUX1yjFMXVsAwcQeNpnucF2ZrujsBBPg=="], + "@next/swc-darwin-arm64": ["@next/swc-darwin-arm64@16.2.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-/JZsqKzKt01IFoiLLAzlNqys7qk2F3JkcUhj50zuRhKDQkZNOz9E5N6wAQWprXdsvjRP4lTFj+/+36NSv5AwhQ=="], - "@next/swc-darwin-x64": ["@next/swc-darwin-x64@16.1.7", "", { "os": "darwin", "cpu": "x64" }, "sha512-zcnVaaZulS1WL0Ss38R5Q6D2gz7MtBu8GZLPfK+73D/hp4GFMrC2sudLky1QibfV7h6RJBJs/gOFvYP0X7UVlQ=="], + "@next/swc-darwin-x64": ["@next/swc-darwin-x64@16.2.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-/hV8erWq4SNlVgglUiW5UmQ5Hwy5EW/AbbXlJCn6zkfKxTy/E/U3V8U1Ocm2YCTUoFgQdoMxRyRMOW5jYy4ygg=="], - "@next/swc-linux-arm64-gnu": ["@next/swc-linux-arm64-gnu@16.1.7", "", { "os": "linux", "cpu": "arm64" }, "sha512-2ant89Lux/Q3VyC8vNVg7uBaFVP9SwoK2jJOOR0L8TQnX8CAYnh4uctAScy2Hwj2dgjVHqHLORQZJ2wH6VxhSQ=="], + "@next/swc-linux-arm64-gnu": ["@next/swc-linux-arm64-gnu@16.2.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-GkjL/Q7MWOwqWR9zoxu1TIHzkOI2l2BHCf7FzeQG87zPgs+6WDh+oC9Sw9ARuuL/FUk6JNCgKRkA6rEQYadUaw=="], - "@next/swc-linux-arm64-musl": ["@next/swc-linux-arm64-musl@16.1.7", "", { "os": "linux", "cpu": "arm64" }, "sha512-uufcze7LYv0FQg9GnNeZ3/whYfo+1Q3HnQpm16o6Uyi0OVzLlk2ZWoY7j07KADZFY8qwDbsmFnMQP3p3+Ftprw=="], + "@next/swc-linux-arm64-musl": ["@next/swc-linux-arm64-musl@16.2.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-1ffhC6KY5qWLg5miMlKJp3dZbXelEfjuXt1qcp5WzSCQy36CV3y+JT7OC1WSFKizGQCDOcQbfkH/IjZP3cdRNA=="], - "@next/swc-linux-x64-gnu": ["@next/swc-linux-x64-gnu@16.1.7", "", { "os": "linux", "cpu": "x64" }, "sha512-KWVf2gxYvHtvuT+c4MBOGxuse5TD7DsMFYSxVxRBnOzok/xryNeQSjXgxSv9QpIVlaGzEn/pIuI6Koosx8CGWA=="], + "@next/swc-linux-x64-gnu": ["@next/swc-linux-x64-gnu@16.2.0", "", { "os": "linux", "cpu": "x64" }, "sha512-FmbDcZQ8yJRq93EJSL6xaE0KK/Rslraf8fj1uViGxg7K4CKBCRYSubILJPEhjSgZurpcPQq12QNOJQ0DRJl6Hg=="], - "@next/swc-linux-x64-musl": ["@next/swc-linux-x64-musl@16.1.7", "", { "os": "linux", "cpu": "x64" }, "sha512-HguhaGwsGr1YAGs68uRKc4aGWxLET+NevJskOcCAwXbwj0fYX0RgZW2gsOCzr9S11CSQPIkxmoSbuVaBp4Z3dA=="], + "@next/swc-linux-x64-musl": ["@next/swc-linux-x64-musl@16.2.0", "", { "os": "linux", "cpu": "x64" }, "sha512-HzjIHVkmGAwRbh/vzvoBWWEbb8BBZPxBvVbDQDvzHSf3D8RP/4vjw7MNLDXFF9Q1WEzeQyEj2zdxBtVAHu5Oyw=="], - "@next/swc-win32-arm64-msvc": ["@next/swc-win32-arm64-msvc@16.1.7", "", { "os": "win32", "cpu": "arm64" }, "sha512-S0n3KrDJokKTeFyM/vGGGR8+pCmXYrjNTk2ZozOL1C/JFdfUIL9O1ATaJOl5r2POe56iRChbsszrjMAdWSv7kQ=="], + "@next/swc-win32-arm64-msvc": ["@next/swc-win32-arm64-msvc@16.2.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-UMiFNQf5H7+1ZsZPxEsA064WEuFbRNq/kEXyepbCnSErp4f5iut75dBA8UeerFIG3vDaQNOfCpevnERPp2V+nA=="], - "@next/swc-win32-x64-msvc": ["@next/swc-win32-x64-msvc@16.1.7", "", { "os": "win32", "cpu": "x64" }, "sha512-mwgtg8CNZGYm06LeEd+bNnOUfwOyNem/rOiP14Lsz+AnUY92Zq/LXwtebtUiaeVkhbroRCQ0c8GlR4UT1U+0yg=="], + "@next/swc-win32-x64-msvc": ["@next/swc-win32-x64-msvc@16.2.0", "", { "os": "win32", "cpu": "x64" }, "sha512-DRrNJKW+/eimrZgdhVN1uvkN1OI4j6Lpefwr44jKQ0YQzztlmOBUUzHuV5GxOMPK3nmodAYElUVCY8ZXo/IWeA=="], "@orama/orama": ["@orama/orama@3.1.18", "", {}, "sha512-a61ljmRVVyG5MC/698C8/FfFDw5a8LOIvyOLW5fztgUXqUpc1jOfQzOitSCbge657OgXXThmY3Tk8fpiDb4UcA=="], @@ -421,6 +426,8 @@ "@takumi-rs/wasm": ["@takumi-rs/wasm@0.73.1", "", { "dependencies": { "@takumi-rs/helpers": "0.73.1" } }, "sha512-WDrstyQettPQSmYDyj7lrJMKlm3E5dg0ZC+PFvKTdfP4aMTZgWBchIL3MfdUwpRIRf96sdL+pAdrwI42X9iRXg=="], + "@types/bun": ["@types/bun@1.3.11", "", { "dependencies": { "bun-types": "1.3.11" } }, "sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg=="], + "@types/debug": ["@types/debug@4.1.12", "", { "dependencies": { "@types/ms": "*" } }, "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ=="], "@types/estree": ["@types/estree@1.0.8", "", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="], @@ -467,6 +474,8 @@ "baseline-browser-mapping": ["baseline-browser-mapping@2.10.8", "", { "bin": { "baseline-browser-mapping": "dist/cli.cjs" } }, "sha512-PCLz/LXGBsNTErbtB6i5u4eLpHeMfi93aUv5duMmj6caNu6IphS4q6UevDnL36sZQv9lrP11dbPKGMaXPwMKfQ=="], + "bun-types": ["bun-types@1.3.11", "", { "dependencies": { "@types/node": "*" } }, "sha512-1KGPpoxQWl9f6wcZh57LvrPIInQMn2TQ7jsgxqpRzg+l0QPOFvJVH7HmvHo/AiPgwXy+/Thf6Ov3EdVn1vOabg=="], + "caniuse-lite": ["caniuse-lite@1.0.30001780", "", {}, "sha512-llngX0E7nQci5BPJDqoZSbuZ5Bcs9F5db7EtgfwBerX9XGtkkiO4NwfDDIRzHTTwcYC8vC7bmeUEPGrKlR/TkQ=="], "ccount": ["ccount@2.0.1", "", {}, "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg=="], @@ -763,7 +772,7 @@ "negotiator": ["negotiator@1.0.0", "", {}, "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg=="], - "next": ["next@16.1.7", "", { "dependencies": { "@next/env": "16.1.7", "@swc/helpers": "0.5.15", "baseline-browser-mapping": "^2.9.19", "caniuse-lite": "^1.0.30001579", "postcss": "8.4.31", "styled-jsx": "5.1.6" }, "optionalDependencies": { "@next/swc-darwin-arm64": "16.1.7", "@next/swc-darwin-x64": "16.1.7", "@next/swc-linux-arm64-gnu": "16.1.7", "@next/swc-linux-arm64-musl": "16.1.7", "@next/swc-linux-x64-gnu": "16.1.7", "@next/swc-linux-x64-musl": "16.1.7", "@next/swc-win32-arm64-msvc": "16.1.7", "@next/swc-win32-x64-msvc": "16.1.7", "sharp": "^0.34.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", "@playwright/test": "^1.51.1", "babel-plugin-react-compiler": "*", "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "sass": "^1.3.0" }, "optionalPeers": ["@opentelemetry/api", "@playwright/test", "babel-plugin-react-compiler", "sass"], "bin": { "next": "dist/bin/next" } }, "sha512-WM0L7WrSvKwoLegLYr6V+mz+RIofqQgVAfHhMp9a88ms0cFX8iX9ew+snpWlSBwpkURJOUdvCEt3uLl3NNzvWg=="], + "next": ["next@16.2.0", "", { "dependencies": { "@next/env": "16.2.0", "@swc/helpers": "0.5.15", "baseline-browser-mapping": "^2.9.19", "caniuse-lite": "^1.0.30001579", "postcss": "8.4.31", "styled-jsx": "5.1.6" }, "optionalDependencies": { "@next/swc-darwin-arm64": "16.2.0", "@next/swc-darwin-x64": "16.2.0", "@next/swc-linux-arm64-gnu": "16.2.0", "@next/swc-linux-arm64-musl": "16.2.0", "@next/swc-linux-x64-gnu": "16.2.0", "@next/swc-linux-x64-musl": "16.2.0", "@next/swc-win32-arm64-msvc": "16.2.0", "@next/swc-win32-x64-msvc": "16.2.0", "sharp": "^0.34.5" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", "@playwright/test": "^1.51.1", "babel-plugin-react-compiler": "*", "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "sass": "^1.3.0" }, "optionalPeers": ["@opentelemetry/api", "@playwright/test", "babel-plugin-react-compiler", "sass"], "bin": { "next": "dist/bin/next" } }, "sha512-NLBVrJy1pbV1Yn00L5sU4vFyAHt5XuSjzrNyFnxo6Com0M0KrL6hHM5B99dbqXb2bE9pm4Ow3Zl1xp6HVY9edQ=="], "next-themes": ["next-themes@0.4.6", "", { "peerDependencies": { "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc", "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc" } }, "sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA=="], diff --git a/docs/content/docs/meta.json b/docs/content/docs/meta.json index 944bce5..4b0c10c 100644 --- a/docs/content/docs/meta.json +++ b/docs/content/docs/meta.json @@ -3,11 +3,12 @@ "---Documentation---", "index", "using-sofa", - "admin", "configuration", "integrations", + "admin", "troubleshooting", "mobile-app", + "translations", "telemetry", "---API Reference---", "...api", diff --git a/docs/content/docs/translations.mdx b/docs/content/docs/translations.mdx new file mode 100644 index 0000000..0b3a853 --- /dev/null +++ b/docs/content/docs/translations.mdx @@ -0,0 +1,76 @@ +--- +title: Translations +description: Language support and how to contribute translations. +icon: Languages +--- + +Sofa supports multiple languages for the web and mobile apps. The current supported locales are: + +- English (source) +- French +- German +- Spanish +- Italian +- Portuguese + +You can switch languages in **Settings > Language** on web or the mobile app. Sofa detects your browser or device language on first launch and defaults to it if supported. This setting is **not** saved to the server — it is only persisted to the current browser or device. + +## How translations work + +Sofa uses [Lingui](https://lingui.dev) for internationalization. All translatable strings are extracted from the source code into PO files (an industry-standard format), which live in [`packages/i18n/src/po/`](https://github.com/jakejarvis/sofa/tree/main/packages/i18n/src/po). + +The translation pipeline: + +1. React (web) and React Native (mobile) apps wrap UI strings in `` components or `` msg`...` `` macros +2. `bun run i18n:extract` scans the codebase and updates `en.po` with new strings +3. Translations are added to each locale's `.po` file (e.g. `fr.po`, `de.po`) +4. `bun run i18n:compile` compiles `.po` files into TypeScript for use at runtime +5. Non-English locales are lazy-loaded on demand + +## Contributing via Crowdin + +The easiest way to contribute translations is through [Crowdin](https://crowdin.com/project/sofa), a community translation platform. No development setup required — just sign up and start translating in the browser! + +When source strings change on `main`, they are automatically uploaded to Crowdin [via GitHub Actions](https://github.com/jakejarvis/sofa/blob/main/.github/workflows/crowdin.yml). To pull completed translations back into the repo, a maintainer triggers the download workflow which creates a PR with the updated `.po` files. + +## AI translation with Claude + +For maintainers, Sofa includes a script, [`claude.ts`](https://github.com/jakejarvis/sofa/blob/main/packages/i18n/scripts/claude.ts), that uses [Claude Code](https://docs.anthropic.com/en/docs/claude-code) to roughly translate any yet-to-be-translated strings. + +```bash +# Translate a single locale +bun packages/i18n/scripts/claude.ts fr + +# Translate all locales (runs in parallel) +bun packages/i18n/scripts/claude.ts all + +# Preview without translating +bun packages/i18n/scripts/claude.ts all --dry-run + +# Use a specific model +bun packages/i18n/scripts/claude.ts all --model opus +``` + +The script only translates strings with empty `msgstr` — existing translations are never overwritten. It reads the locale list from [`lingui.config.ts`](https://github.com/jakejarvis/sofa/blob/main/lingui.config.ts) automatically and compiles catalogs after translating. + + + Using this script really only makes sense if you have a [Claude Max + subscription](https://claude.ai/upgrade) with Anthropic's cash to burn. + + +## Adding a new language + +1. Add the locale code to the `locales` array in [`lingui.config.ts`](https://github.com/jakejarvis/sofa/blob/main/lingui.config.ts) +2. Run `bun run i18n:extract` — this creates a new `.po` file for the locale +3. Translate the strings (via Crowdin, manually, or with `bun packages/i18n/scripts/claude.ts `) +4. Add the locale to the `LOCALE_INFO` array in [`packages/i18n/src/locales.ts`](https://github.com/jakejarvis/sofa/blob/main/packages/i18n/src/locales.ts) with its native name +5. Run `bun run i18n:compile` + +## Translation guidelines + +Whether translating via Crowdin, AI, or manually, these rules apply: + +- **Keep it concise** — these are UI labels, buttons, and short messages +- **Preserve placeholders** — `{0}`, `{name}`, `{count, plural, ...}`, `<0>text` must appear in the translation exactly as in the source +- **Adapt plurals** — ICU plural blocks should use the correct plural categories for your language (e.g. French needs `one`/`other`, Czech needs `one`/`few`/`many`/`other`) +- **Don't translate brand names** — Sofa, TMDB, Plex, Jellyfin, etc. stay as-is diff --git a/docs/package.json b/docs/package.json index ce0d678..34de166 100644 --- a/docs/package.json +++ b/docs/package.json @@ -21,23 +21,28 @@ "fumadocs-openapi": "^10.3.18", "fumadocs-ui": "^16.6.17", "lucide-react": "^0.577.0", - "next": "16.1.7", - "react": "^19.2.4", - "react-dom": "^19.2.4", + "next": "16.2.0", + "react": "19.2.4", + "react-dom": "19.2.4", "shiki": "^4.0.2", "tailwind-merge": "^3.5.0" }, "devDependencies": { "@tailwindcss/postcss": "^4.2.2", + "@types/bun": "1.3.11", "@types/mdx": "^2.0.13", "@types/node": "^25.5.0", - "@types/react": "^19.2.14", - "@types/react-dom": "^19.2.3", + "@types/react": "19.2.14", + "@types/react-dom": "19.2.3", "oxfmt": "0.41.0", "oxlint": "1.56.0", "postcss": "^8.5.8", "tailwindcss": "^4.2.2", "typescript": "^5.9.3" }, - "packageManager": "bun@1.3.10" + "overrides": { + "@types/react": "19.2.14", + "@types/react-dom": "19.2.3" + }, + "packageManager": "bun@1.3.11" } diff --git a/docs/public/openapi.json b/docs/public/openapi.json index 73e3f81..ee498b8 100644 --- a/docs/public/openapi.json +++ b/docs/public/openapi.json @@ -99,6 +99,7 @@ "movie", "tv" ], + "type": "string", "description": "Media type" }, "title": { @@ -555,6 +556,7 @@ "movie", "tv" ], + "type": "string", "description": "Media type" }, "title": { @@ -901,6 +903,7 @@ "movie", "tv" ], + "type": "string", "description": "Media type" }, "title": { @@ -992,6 +995,7 @@ "movie", "tv" ], + "type": "string", "description": "Media type" }, "title": { @@ -1083,6 +1087,7 @@ "webhook", "list" ], + "type": "string", "description": "Integration type: webhook (Plex/Jellyfin/Emby) or list (Sonarr/Radarr)" }, "token": { @@ -1166,6 +1171,7 @@ "ignored", "error" ], + "type": "string", "description": "Event processing outcome" }, "receivedAt": { @@ -1204,6 +1210,7 @@ "scheduled", "pre-restore" ], + "type": "string", "description": "How the backup was created: manual, scheduled, or automatic pre-restore" } }, @@ -1273,7 +1280,8 @@ "running", "success", "error" - ] + ], + "type": "string" }, { "type": "null" @@ -1781,7 +1789,8 @@ "enum": [ "in_progress", "completed" - ] + ], + "type": "string" }, { "type": "null" @@ -1983,7 +1992,8 @@ "watchlist", "in_progress", "completed" - ] + ], + "type": "string" }, { "type": "null" @@ -2072,7 +2082,8 @@ "watchlist", "in_progress", "completed" - ] + ], + "type": "string" }, "description": "Map of title ID to the user's tracking status" } @@ -2517,7 +2528,8 @@ "watchlist", "in_progress", "completed" - ] + ], + "type": "string" }, "description": "Map of title ID to the user's tracking status" }, @@ -2898,6 +2910,7 @@ "movie", "tv" ], + "type": "string", "description": "Media type" }, "title": { @@ -2966,7 +2979,8 @@ "watchlist", "in_progress", "completed" - ] + ], + "type": "string" }, { "type": "null" @@ -3079,10 +3093,9 @@ "movie", "episode" ], + "type": "string", "description": "What to count: movie watches or episode watches" }, - "style": "deepObject", - "explode": true, "allowEmptyValue": true, "allowReserved": true }, @@ -3097,10 +3110,9 @@ "this_month", "this_year" ], + "type": "string", "description": "Time range for the histogram" }, - "style": "deepObject", - "explode": true, "allowEmptyValue": true, "allowReserved": true } @@ -3176,10 +3188,9 @@ "movie", "tv" ], + "type": "string", "description": "Trending category: all, movie, or tv" }, - "style": "deepObject", - "explode": true, "allowEmptyValue": true, "allowReserved": true }, @@ -3231,6 +3242,7 @@ "movie", "tv" ], + "type": "string", "description": "Media type" }, "title": { @@ -3283,7 +3295,8 @@ "watchlist", "in_progress", "completed" - ] + ], + "type": "string" }, "description": "Map of title ID to the user's tracking status" }, @@ -3433,10 +3446,9 @@ "movie", "tv" ], + "type": "string", "description": "Media type filter" }, - "style": "deepObject", - "explode": true, "allowEmptyValue": true, "allowReserved": true }, @@ -3479,7 +3491,8 @@ "watchlist", "in_progress", "completed" - ] + ], + "type": "string" }, "description": "Map of title ID to the user's tracking status" }, @@ -3628,10 +3641,9 @@ "movie", "tv" ], + "type": "string", "description": "Media type filter" }, - "style": "deepObject", - "explode": true, "allowEmptyValue": true, "allowReserved": true } @@ -3784,10 +3796,9 @@ "tv", "person" ], + "type": "string", "description": "Optional type filter to narrow results" }, - "style": "deepObject", - "explode": true, "allowEmptyValue": true, "allowReserved": true }, @@ -3833,6 +3844,7 @@ "tv", "person" ], + "type": "string", "description": "Result type" }, "title": { @@ -4057,10 +4069,9 @@ "movie", "tv" ], + "type": "string", "description": "Media type to discover" }, - "style": "deepObject", - "explode": true, "allowEmptyValue": true, "allowReserved": true }, @@ -4116,7 +4127,8 @@ "watchlist", "in_progress", "completed" - ] + ], + "type": "string" }, "description": "Map of title ID to the user's tracking status" }, @@ -4432,6 +4444,7 @@ "webhook", "list" ], + "type": "string", "description": "Integration type: webhook (Plex/Jellyfin/Emby) or list (Sonarr/Radarr)" }, "token": { @@ -4515,6 +4528,7 @@ "sonarr", "radarr" ], + "type": "string", "description": "Media server provider to integrate" }, "enabled": { @@ -4570,6 +4584,7 @@ "sonarr", "radarr" ], + "type": "string", "description": "Media server provider type" } } @@ -4617,6 +4632,7 @@ "sonarr", "radarr" ], + "type": "string", "description": "Media server provider type" } } @@ -5110,6 +5126,7 @@ "1d", "7d" ], + "type": "string", "description": "Backup interval" }, "time": { @@ -5165,6 +5182,7 @@ "1d", "7d" ], + "type": "string", "description": "Backup interval" }, "time": { @@ -5526,6 +5544,7 @@ "updateCheck", "telemetryReport" ], + "type": "string", "description": "Cron job to trigger" } }, @@ -5881,6 +5900,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "file": { @@ -5904,6 +5924,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "file": { @@ -5936,6 +5957,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "movies": { @@ -6043,7 +6065,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" } }, "required": [ @@ -6077,7 +6100,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" }, "rating": { "type": "integer", @@ -6273,6 +6297,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "movies": { @@ -6380,7 +6405,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" } }, "required": [ @@ -6414,7 +6440,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" }, "rating": { "type": "integer", @@ -6472,6 +6499,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "movies": { @@ -6579,7 +6607,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" } }, "required": [ @@ -6613,7 +6642,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" }, "rating": { "type": "integer", @@ -6738,6 +6768,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "movies": { @@ -6845,7 +6876,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" } }, "required": [ @@ -6879,7 +6911,8 @@ "enum": [ "movie", "tv" - ] + ], + "type": "string" }, "rating": { "type": "integer", @@ -6960,6 +6993,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "status": { @@ -6969,7 +7003,8 @@ "success", "error", "cancelled" - ] + ], + "type": "string" }, "totalItems": { "type": "number" @@ -7239,6 +7274,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "status": { @@ -7248,7 +7284,8 @@ "success", "error", "cancelled" - ] + ], + "type": "string" }, "totalItems": { "type": "number" @@ -7386,6 +7423,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "status": { @@ -7395,7 +7433,8 @@ "success", "error", "cancelled" - ] + ], + "type": "string" }, "totalItems": { "type": "number" @@ -7598,7 +7637,8 @@ "progress", "complete", "timeout" - ] + ], + "type": "string" }, "job": { "type": "object", @@ -7612,6 +7652,7 @@ "simkl", "letterboxd" ], + "type": "string", "description": "External service to import from" }, "status": { @@ -7621,7 +7662,8 @@ "success", "error", "cancelled" - ] + ], + "type": "string" }, "totalItems": { "type": "number" diff --git a/docs/src/app/(home)/privacy/page.tsx b/docs/src/app/(home)/privacy/page.tsx index bafcf7b..dff6c13 100644 --- a/docs/src/app/(home)/privacy/page.tsx +++ b/docs/src/app/(home)/privacy/page.tsx @@ -8,8 +8,8 @@ export const metadata: Metadata = { export default function PrivacyPolicyPage() { return ( -
-

Privacy Policy

+
+

Privacy Policy

Last updated: March 16, 2026

@@ -95,6 +95,13 @@ export default function PrivacyPolicyPage() { disabled by default and must be explicitly enabled by an admin. See the{" "} telemetry documentation for full details. +

  • + Import helper — when importing watch history from Trakt or Simkl, + your server proxies OAuth device-code authorization through{" "} + public-api.sofa.watch so that a single OAuth client ID can be shared across + all instances. Only the provider’s device code and token responses are relayed; no + personal data, watch history, or instance identifiers are included in the requests. +
  • PostHog (Mobile App Only)

    diff --git a/package.json b/package.json index 21c9275..d4f72e5 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@orpc/contract": "1.13.8", "@orpc/tanstack-query": "1.13.8", "@tanstack/react-query": "5.91.0", - "@types/bun": "1.3.10", + "@types/bun": "1.3.11", "@types/node": "25.5.0", "@types/react": "19.2.14", "better-auth": "1.5.5", @@ -45,7 +45,8 @@ "test": "turbo run test", "generate:openapi": "bun scripts/generate-openapi-spec.ts && cd docs && bun run generate:api-docs", "i18n:extract": "lingui extract", - "i18n:compile": "lingui compile --typescript" + "i18n:compile": "lingui compile --typescript", + "i18n:claude": "bun packages/i18n/scripts/claude.ts" }, "devDependencies": { "@lingui/cli": "catalog:", @@ -53,8 +54,8 @@ "@lingui/format-po": "catalog:", "oxfmt": "0.41.0", "oxlint": "1.56.0", - "turbo": "2.8.18", + "turbo": "2.8.19", "typescript": "catalog:" }, - "packageManager": "bun@1.3.10" + "packageManager": "bun@1.3.11" } diff --git a/packages/i18n/scripts/claude.ts b/packages/i18n/scripts/claude.ts new file mode 100644 index 0000000..cadd32b --- /dev/null +++ b/packages/i18n/scripts/claude.ts @@ -0,0 +1,519 @@ +#!/usr/bin/env bun +/** + * Translates empty PO file entries using Claude Code CLI. + * + * Usage: + * bun scripts/translate.ts [--model ] [--batch-size ] [--dry-run] + * + * Examples: + * bun scripts/translate.ts fr + * bun scripts/translate.ts all --model sonnet + * bun scripts/translate.ts de --dry-run + */ + +import { resolve } from "node:path"; + +import type { CatalogType } from "@lingui/conf"; +import { formatter } from "@lingui/format-po"; + +import linguiConfig from "../../../lingui.config"; + +const poFormat = formatter(); + +// ─── Config ────────────────────────────────────────────── + +const SOURCE_LOCALE = linguiConfig.sourceLocale ?? "en"; +const LOCALES = (linguiConfig.locales as string[]).filter((l) => l !== SOURCE_LOCALE); + +const DEFAULT_MODEL = "sonnet"; +const DEFAULT_BATCH_SIZE = 100; +const MAX_RETRIES = 3; + +const PO_DIR = resolve(import.meta.dir, "../src/po"); +const CONTEXT_FILE = resolve(import.meta.dir, "../../../crowdin-context.jsonl"); + +/** Resolve a locale code to its English display name via Intl */ +function localeName(code: string): string { + return new Intl.DisplayNames(["en"], { type: "language" }).of(code) ?? code; +} + +function usage(): never { + console.log( + "Usage: bun scripts/translate.ts [--model ] [--batch-size ] [--dry-run]", + ); + console.log(` Locales: ${LOCALES.join(", ")}`); + process.exit(1); +} + +function fail(message: string): never { + console.error(message); + process.exit(1); +} + +// ─── AI Context ────────────────────────────────────────── + +interface ContextEntry { + text: string; + ai_context: string; +} + +async function loadContext(): Promise> { + const contextMap = new Map(); + const file = Bun.file(CONTEXT_FILE); + + if (!(await file.exists())) { + console.log(" (no crowdin-context.jsonl found, translating without AI context)\n"); + return contextMap; + } + + const text = await file.text(); + const lines = text.split("\n"); + + for (const [index, line] of lines.entries()) { + if (!line.trim()) continue; + + try { + const entry: ContextEntry = JSON.parse(line); + + if (typeof entry.text !== "string" || typeof entry.ai_context !== "string") { + throw new Error("expected { text: string, ai_context: string }"); + } + + contextMap.set(entry.text, entry.ai_context); + } catch (error) { + // oxlint-disable-next-line preserve-caught-error + throw new Error( + `Invalid JSONL entry in ${CONTEXT_FILE} at line ${index + 1}: ${ + error instanceof Error ? error.message : String(error) + }`, + ); + } + } + + console.log(` Loaded ${contextMap.size} AI context entries from crowdin-context.jsonl\n`); + return contextMap; +} + +// ─── CLI Args ──────────────────────────────────────────── + +function parseArgs() { + const args = process.argv.slice(2); + let locale: string | undefined; + let model = DEFAULT_MODEL; + let batchSize = DEFAULT_BATCH_SIZE; + let dryRun = false; + + for (let i = 0; i < args.length; i++) { + const arg = args[i]; + + if (arg === "--model") { + const value = args[++i]; + if (!value || value.startsWith("--")) { + fail("Missing value for --model"); + } + model = value; + continue; + } + + if (arg === "--batch-size") { + const value = args[++i]; + if (!value || value.startsWith("--")) { + fail("Missing value for --batch-size"); + } + + const parsed = Number.parseInt(value, 10); + if (!Number.isFinite(parsed) || parsed <= 0) { + fail(`Invalid --batch-size: ${value}`); + } + + batchSize = parsed; + continue; + } + + if (arg === "--dry-run") { + dryRun = true; + continue; + } + + if (arg.startsWith("--")) { + fail(`Unknown flag: ${arg}`); + } + + if (locale) { + fail(`Unexpected extra positional argument: ${arg}`); + } + + locale = arg; + } + + if (!locale) { + usage(); + } + + if (locale !== "all" && !LOCALES.includes(locale)) { + fail(`Unknown locale: ${locale}. Valid: ${LOCALES.join(", ")}, all`); + } + + const locales: string[] = locale === "all" ? [...LOCALES] : [locale]; + return { locales, model, batchSize, dryRun }; +} + +// ─── PO Helpers ────────────────────────────────────────── + +interface UntranslatedEntry { + /** Lingui catalog key (may be a hashed ID like "nJw77c") */ + key: string; + /** The actual English source text to translate */ + message: string; +} + +function getUntranslatedEntries(catalog: CatalogType): UntranslatedEntry[] { + return Object.entries(catalog) + .filter(([, entry]) => entry && !entry.translation) + .map(([key, entry]) => ({ + key, + // entry.message is the source text; fall back to key for explicit-id catalogs + message: entry.message || key, + })); +} + +// ─── Basic Structural Validation ───────────────────────── +// Catches common placeholder/tag damage. NOT a full ICU MessageFormat validator — +// does not detect argument type changes, malformed plural/select, or nested corruption. + +function extractSimplePlaceholders(text: string): string[] { + // Intentionally conservative. This catches the common placeholder cases: + // {0}, {name}, {count} + return [...text.matchAll(/\{[a-zA-Z0-9_]+\}/g)].map((m) => m[0]).sort(); +} + +function extractNumberedTags(text: string): string[] { + // Matches <0>, , <0/>, <12>, , <12/> + return [...text.matchAll(/<\/?\d+\/?>/g)].map((m) => m[0]).sort(); +} + +function leadingWhitespace(text: string): string { + return text.match(/^\s*/)?.[0] ?? ""; +} + +function trailingWhitespace(text: string): string { + return text.match(/\s*$/)?.[0] ?? ""; +} + +function validateTranslation(source: string, translated: string): string[] { + const issues: string[] = []; + + if (translated.length === 0 && source.length > 0) { + issues.push("empty translation"); + } + + const srcPlaceholders = extractSimplePlaceholders(source); + const dstPlaceholders = extractSimplePlaceholders(translated); + if (JSON.stringify(srcPlaceholders) !== JSON.stringify(dstPlaceholders)) { + issues.push("placeholder mismatch"); + } + + const srcTags = extractNumberedTags(source); + const dstTags = extractNumberedTags(translated); + if (JSON.stringify(srcTags) !== JSON.stringify(dstTags)) { + issues.push("tag mismatch"); + } + + // Only enforce whitespace when the source has meaningful edge whitespace + if (/^\s|\s$/.test(source)) { + if (leadingWhitespace(source) !== leadingWhitespace(translated)) { + issues.push("leading whitespace mismatch"); + } + + if (trailingWhitespace(source) !== trailingWhitespace(translated)) { + issues.push("trailing whitespace mismatch"); + } + } + + return issues; +} + +// ─── Consistency Hints ─────────────────────────────────── + +function buildConsistencyHints(accepted: Map, limit = 50): string | undefined { + if (accepted.size === 0) return undefined; + + const pairs = [...accepted.entries()] + .slice(-limit) + .map(([source, translated]) => `- ${JSON.stringify(source)} => ${JSON.stringify(translated)}`) + .join("\n"); + + return [ + "Previously used translations for consistency:", + pairs, + "Reuse these choices where appropriate.", + ].join("\n"); +} + +// ─── Translation via Claude CLI ────────────────────────── + +async function translateBatchRaw( + strings: string[], + locale: string, + model: string, + contextMap: Map, + consistencyHints?: string, +): Promise { + const language = localeName(locale); + + const input = strings.map((s, i) => { + const ctx = contextMap.get(s); + return ctx ? { index: i, text: s, context: ctx } : { index: i, text: s }; + }); + + const systemPrompt = [ + "You are a professional translator for a self-hosted movie & TV tracking app called Sofa.", + `Translate UI strings from English to ${language}.`, + "", + "Rules:", + "- Return translations in the SAME ORDER as the input array, one per input string.", + "- Return ONLY the structured output required by the schema.", + "- Preserve leading and trailing whitespace exactly.", + "- Preserve line breaks exactly unless the source meaning requires otherwise.", + "- Placeholder rules (critical):", + " - Every placeholder in the source ({0}, {name}, {count}, etc.) MUST appear in the translation. Do NOT add, remove, or rename placeholders.", + " - Do NOT change placeholder types: a simple placeholder like {0} CANNOT become a complex argument like {0, plural, ...}. Keep the same structural skeleton.", + ' - You MAY reorder placeholders to fit target language grammar (e.g. "{0} {1}" → "{1} {0}").', + ' - For ICU plural/select blocks that ALREADY EXIST in the source: you MUST adapt plural categories to the target language\'s CLDR rules. E.g. English "one/other" may need "one/few/many/other" in some languages. Add or remove categories as needed.', + " - Do NOT translate ICU keywords (one, other, few, many, zero, two) or the # symbol inside plurals.", + "- Preserve JSX-like component tags EXACTLY: <0/>, <0>text, <1>… — translate text between tags, keep the tags. You may reorder tags.", + "- When adjectives/participles need to agree in number with a dynamic count, move them INSIDE the plural block so each category can have correct agreement.", + "- Keep translations concise — these are UI labels, buttons, toasts, and short messages.", + "- Do NOT translate brand/product names: Sofa, TMDB, Plex, Jellyfin, Emby, Trakt, Simkl, Overseerr, Jellyseerr.", + "- Use natural, idiomatic phrasing for the target language.", + "- Consistency: translate the same English term the same way every time.", + '- Each input has a "text" field to translate. Some also have a "context" field explaining where/how the string is used — use this to produce more accurate translations.', + "- If a string is already a brand name, code token, identifier, or path, keep it unchanged.", + ...(consistencyHints ? ["", consistencyHints] : []), + ].join("\n"); + + const prompt = JSON.stringify(input); + + const schema = JSON.stringify({ + type: "object", + additionalProperties: false, + properties: { + translations: { + type: "array", + items: { type: "string" }, + minItems: strings.length, + maxItems: strings.length, + }, + }, + required: ["translations"], + }); + + const proc = Bun.spawn( + [ + "claude", + "-p", + "--output-format", + "json", + "--json-schema", + schema, + "--model", + model, + "--no-session-persistence", + "--system-prompt", + systemPrompt, + "--tools", + "", + ], + { stdout: "pipe", stderr: "pipe", stdin: new Response(prompt) }, + ); + + const [stdout, stderr] = await Promise.all([ + new Response(proc.stdout).text(), + new Response(proc.stderr).text(), + ]); + const exitCode = await proc.exited; + + if (exitCode !== 0) { + throw new Error(`Claude CLI failed (exit ${exitCode}): ${stderr || stdout}`); + } + + let result: { translations: string[] }; + try { + const parsed = JSON.parse(stdout); + const structured = parsed.structured_output ?? parsed.result ?? parsed; + result = typeof structured === "string" ? JSON.parse(structured) : structured; + } catch { + throw new Error(`Failed to parse Claude response. Raw output:\n${stdout.slice(0, 1000)}`); + } + + if (!Array.isArray(result.translations) || result.translations.length !== strings.length) { + throw new Error( + `Expected ${strings.length} translations, got ${result.translations?.length ?? 0}.\nRaw: ${stdout.slice(0, 1000)}`, + ); + } + + return result.translations; +} + +async function translateBatch( + strings: string[], + locale: string, + model: string, + contextMap: Map, + consistencyHints?: string, +): Promise { + let lastError: unknown; + + for (let attempt = 1; attempt <= MAX_RETRIES; attempt++) { + try { + const translations = await translateBatchRaw( + strings, + locale, + model, + contextMap, + consistencyHints, + ); + + const validationErrors: string[] = []; + for (let i = 0; i < strings.length; i++) { + const issues = validateTranslation(strings[i], translations[i]); + if (issues.length > 0) { + validationErrors.push( + `index ${i}: ${issues.join(", ")}\nsource: ${JSON.stringify(strings[i])}\ntranslation: ${JSON.stringify(translations[i])}`, + ); + } + } + + if (validationErrors.length > 0) { + throw new Error( + `Translation validation failed:\n${validationErrors.slice(0, 10).join("\n\n")}${ + validationErrors.length > 10 + ? `\n\n...and ${validationErrors.length - 10} more validation errors` + : "" + }`, + ); + } + + return translations; + } catch (error) { + lastError = error; + + if (attempt < MAX_RETRIES) { + const delayMs = 500 * attempt; + console.warn( + ` attempt ${attempt}/${MAX_RETRIES} failed; retrying in ${delayMs}ms\n ${ + error instanceof Error ? error.message : String(error) + }`, + ); + await Bun.sleep(delayMs); + } + } + } + + throw lastError instanceof Error ? lastError : new Error(String(lastError)); +} + +// ─── Main ──────────────────────────────────────────────── + +async function translateLocale( + locale: string, + model: string, + batchSize: number, + dryRun: boolean, + contextMap: Map, +) { + const filePath = resolve(PO_DIR, `${locale}.po`); + const file = Bun.file(filePath); + + if (!(await file.exists())) { + throw new Error(`PO file not found for locale "${locale}": ${filePath}`); + } + + const content = await file.text(); + const ctx = { locale, sourceLocale: SOURCE_LOCALE, filename: filePath }; + const catalog = await poFormat.parse(content, ctx); + + const untranslated = getUntranslatedEntries(catalog); + + if (untranslated.length === 0) { + console.log(` ${locale}: all strings already translated`); + return; + } + + console.log(` ${locale}: ${untranslated.length} strings to translate`); + + if (dryRun) { + console.log(` ${locale}: dry run — skipping`); + return; + } + + // Map of catalog key → translated string + const translations = new Map(); + // Map of source message → translated string (for consistency hints + validation) + const messageTranslations = new Map(); + const totalBatches = Math.ceil(untranslated.length / batchSize); + + for (let i = 0; i < totalBatches; i++) { + const batch = untranslated.slice(i * batchSize, (i + 1) * batchSize); + const messages = batch.map((e) => e.message); + + console.log(` batch ${i + 1}/${totalBatches} (${batch.length} strings)...`); + + const hints = buildConsistencyHints(messageTranslations); + const translated = await translateBatch(messages, locale, model, contextMap, hints); + + for (let j = 0; j < batch.length; j++) { + translations.set(batch[j].key, translated[j]); + messageTranslations.set(batch[j].message, translated[j]); + } + } + + // Write translations back to catalog using keys + for (const [key, msgstr] of translations) { + if (catalog[key]) { + catalog[key].translation = msgstr; + } + } + const serialized = await poFormat.serialize(catalog, { ...ctx, existing: content }); + await Bun.write(filePath, serialized); + console.log(` ${locale}: wrote ${translations.size} translations`); +} + +const { locales, model, batchSize, dryRun } = parseArgs(); + +console.log( + `Translating PO files via Claude (model: ${model}, batch size: ${batchSize})${dryRun ? " [DRY RUN]" : ""}\n`, +); + +const contextMap = await loadContext(); + +// Process locales sequentially to reduce CLI/rate-limit pressure and keep logs readable. +for (const locale of locales) { + await translateLocale(locale, model, batchSize, dryRun, contextMap); +} + +if (!dryRun) { + // Re-extract to restore #. placeholder comments that @lingui/format-po's + // serialize() strips during the round-trip. + console.log("Re-extracting to restore comments..."); + const extract = Bun.spawn(["bun", "run", "i18n:extract"], { + stdout: "inherit", + stderr: "inherit", + }); + if ((await extract.exited) !== 0) { + console.error("Extraction failed"); + process.exit(1); + } + + console.log("Compiling catalogs..."); + const compile = Bun.spawn(["bun", "run", "i18n:compile"], { + stdout: "inherit", + stderr: "inherit", + }); + if ((await compile.exited) !== 0) { + console.error("Catalog compilation failed"); + process.exit(1); + } +} + +console.log("Done!"); diff --git a/packages/i18n/src/po/de.po b/packages/i18n/src/po/de.po index d0af23e..fd8cf7c 100644 --- a/packages/i18n/src/po/de.po +++ b/packages/i18n/src/po/de.po @@ -8,307 +8,307 @@ msgstr "" "Language: de\n" "Project-Id-Version: sofa\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-03-18 16:04\n" +"PO-Revision-Date: 2026-03-19 00:35\n" "Last-Translator: \n" "Language-Team: German\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Crowdin-Project: sofa\n" "X-Crowdin-Project-ID: 881052\n" "X-Crowdin-Language: de\n" -"X-Crowdin-File: /packages/i18n/src/po/en.po\n" -"X-Crowdin-File-ID: 12\n" +"X-Crowdin-File: en.po\n" +"X-Crowdin-File-ID: 14\n" #. placeholder {0}: result.errors.length - 50 -#: apps/web/src/components/settings/imports-section.tsx:938 +#: apps/web/src/components/settings/imports-section.tsx:895 msgid "...and {0} more" -msgstr "" +msgstr "...und {0} weitere" #. placeholder {0}: systemHealth.data.imageCache.imageCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:482 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:456 msgid "{0, plural, one {# image} other {# images}}" -msgstr "" +msgstr "{0, plural, one {# Bild} other {# Bilder}}" #. placeholder {0}: systemHealth.data.database.titleCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:466 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:442 msgid "{0, plural, one {# title} other {# titles}}" -msgstr "" +msgstr "{0, plural, one {# Titel} other {# Titel}}" #. placeholder {0}: displayBackups.length #. placeholder {1}: displayBackups.length -#: apps/web/src/components/settings/backup-section.tsx:109 +#: apps/web/src/components/settings/backup-section.tsx:98 msgid "{0} {1, plural, one {backup} other {backups}} stored" -msgstr "" +msgstr "{0} {1, plural, one {Backup} other {Backups}} gespeichert" #: apps/web/src/components/settings/backup-section.tsx:105 #~ msgid "{0} backup{1} stored" #~ msgstr "{0} backup{1} stored" #. placeholder {0}: backups.backupCount -#: apps/web/src/components/settings/system-health-section.tsx:654 +#: apps/web/src/components/settings/system-health-section.tsx:599 msgid "{0} backups · last <0/>" -msgstr "" +msgstr "{0} Backups · zuletzt <0/>" #. placeholder {0}: imageCache.imageCount.toLocaleString() -#: apps/web/src/components/settings/system-health-section.tsx:621 +#: apps/web/src/components/settings/system-health-section.tsx:569 msgid "{0} cached images" -msgstr "" +msgstr "{0} gecachte Bilder" #. placeholder {0}: member.episodeCount #. placeholder {1}: member.episodeCount !== 1 ? "s" : "" -#: apps/web/src/components/titles/cast-carousel.tsx:80 +#: apps/web/src/components/titles/cast-carousel.tsx:78 msgid "{0} ep{1}" -msgstr "" +msgstr "{0} Ep{1}" #: apps/native/src/app/(tabs)/(settings)/index.tsx:472 #~ msgid "{0} images" #~ msgstr "{0} images" #. placeholder {0}: stats.watchlist -#: apps/web/src/components/settings/imports-section.tsx:808 +#: apps/web/src/components/settings/imports-section.tsx:770 msgid "{0} items" -msgstr "" +msgstr "{0} Einträge" #. placeholder {0}: preview.diagnostics.unresolved -#: apps/web/src/components/settings/imports-section.tsx:788 +#: apps/web/src/components/settings/imports-section.tsx:750 msgid "{0} items have no external IDs and will be resolved by title search, which may be less accurate." -msgstr "" +msgstr "{0} Einträge haben keine externen IDs und werden über die Titelsuche gefunden, was weniger genau sein kann." #. placeholder {0}: stats.movies #. placeholder {1}: stats.episodes -#: apps/web/src/components/settings/imports-section.tsx:802 +#: apps/web/src/components/settings/imports-section.tsx:764 msgid "{0} movies, {1} episodes" -msgstr "" +msgstr "{0} Filme, {1} Episoden" #. placeholder {0}: stats.ratings -#: apps/web/src/components/settings/imports-section.tsx:814 +#: apps/web/src/components/settings/imports-section.tsx:776 msgid "{0} ratings" -msgstr "" +msgstr "{0} Bewertungen" #: apps/native/src/app/(tabs)/(settings)/index.tsx:456 #~ msgid "{0} titles" #~ msgstr "{0} titles" #. placeholder {0}: JOB_LABELS[name] ?? name -#: apps/web/src/components/settings/system-health-section.tsx:343 +#: apps/web/src/components/settings/system-health-section.tsx:316 msgid "{0} triggered" -msgstr "" +msgstr "{0} ausgelöst" #. placeholder {0}: item.watchedEpisodes #. placeholder {1}: item.totalEpisodes #. placeholder {2}: item.totalEpisodes -#: apps/web/src/components/dashboard/continue-watching-card.tsx:93 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:78 msgid "{0}/{1} {2, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{0}/{1} {2, plural, one {Episode} other {Episoden}}" #: apps/web/src/components/dashboard/continue-watching-card.tsx:92 #~ msgid "{0}/{1} episodes" #~ msgstr "{0}/{1} episodes" -#: apps/web/src/components/titles/use-title-actions.ts:221 -#: apps/web/src/components/titles/use-title-actions.ts:299 +#: apps/web/src/components/titles/use-title-actions.ts:200 +#: apps/web/src/components/titles/use-title-actions.ts:278 msgid "{count} earlier {count, plural, one {episode} other {episodes}} unwatched" -msgstr "" +msgstr "{count} {count, plural, one {frühere Episode} other {frühere Episoden}} noch ungesehen" #. placeholder {0}: activeJobs.length -#: apps/web/src/components/settings/system-health-section.tsx:385 +#: apps/web/src/components/settings/system-health-section.tsx:351 msgid "{healthyCount} of {0} jobs healthy" -msgstr "" +msgstr "{healthyCount} von {0} Jobs fehlerfrei" -#: apps/native/src/components/settings/integration-card.tsx:96 -#: apps/web/src/components/settings/integration-card.tsx:106 +#: apps/native/src/components/settings/integration-card.tsx:84 +#: apps/web/src/components/settings/integration-card.tsx:89 msgid "{label} connected" -msgstr "" +msgstr "{label} verbunden" -#: apps/native/src/components/settings/integration-card.tsx:106 -#: apps/web/src/components/settings/integration-card.tsx:122 +#: apps/native/src/components/settings/integration-card.tsx:94 +#: apps/web/src/components/settings/integration-card.tsx:105 msgid "{label} disconnected" -msgstr "" +msgstr "{label} getrennt" -#: apps/native/src/components/settings/integration-card.tsx:116 -#: apps/web/src/components/settings/integration-card.tsx:138 +#: apps/native/src/components/settings/integration-card.tsx:104 +#: apps/web/src/components/settings/integration-card.tsx:119 msgid "{label} URL regenerated" -msgstr "" +msgstr "{label}-URL neu generiert" -#: apps/web/src/components/title-card.tsx:166 +#: apps/web/src/components/title-card.tsx:152 msgid "{watched}/{total} episodes" -msgstr "" +msgstr "{watched}/{total} Episoden" #. placeholder {0}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:122 +#: apps/native/src/components/titles/season-accordion.tsx:113 msgid "{watchedCount} of {0} episodes watched" -msgstr "" +msgstr "{watchedCount} von {0} Episoden gesehen" #. placeholder {0}: episodes.length #. placeholder {1}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:131 +#: apps/native/src/components/titles/season-accordion.tsx:122 msgid "{watchedCount}/{0} {1, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{watchedCount}/{0} {1, plural, one {Episode} other {Episoden}}" #: apps/native/src/components/titles/season-accordion.tsx:130 #~ msgid "{watchedCount}/{0} episodes" #~ msgstr "{watchedCount}/{0} episodes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:231 -#: apps/web/src/components/settings/account-section.tsx:175 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:224 +#: apps/web/src/components/settings/account-section.tsx:166 msgid "Account" -msgstr "" +msgstr "Konto" -#: apps/web/src/components/settings/system-health-section.tsx:412 +#: apps/web/src/components/settings/system-health-section.tsx:378 msgid "Actions" -msgstr "" +msgstr "Aktionen" -#: apps/web/src/components/people/person-hero.tsx:71 +#: apps/web/src/components/people/person-hero.tsx:69 msgid "Actor" -msgstr "" +msgstr "Schauspieler" -#: apps/native/src/components/settings/integration-configs.ts:72 +#: apps/native/src/components/settings/integration-configs.ts:71 msgid "Add a \"Generic Destination\" and paste the URL above" -msgstr "" +msgstr "Füge ein \"Generic Destination\" hinzu und füge die URL oben ein" -#: apps/web/src/components/settings/integration-configs.tsx:131 +#: apps/web/src/components/settings/integration-configs.tsx:121 msgid "Add a <0>Generic Destination and paste the URL above" -msgstr "" +msgstr "Füge ein <0>Generic Destination hinzu und füge die URL oben ein" -#: apps/native/src/components/settings/integration-configs.ts:92 -#: apps/web/src/components/settings/integration-configs.tsx:198 +#: apps/native/src/components/settings/integration-configs.ts:89 +#: apps/web/src/components/settings/integration-configs.tsx:178 msgid "Add a new webhook and paste the URL above" -msgstr "" +msgstr "Füge einen neuen Webhook hinzu und füge die URL oben ein" -#: apps/web/src/components/explore/hero-banner.tsx:99 +#: apps/web/src/components/explore/hero-banner.tsx:87 msgid "Add to Library" -msgstr "" +msgstr "Zur Bibliothek hinzufügen" -#: apps/native/src/components/titles/status-action-button.tsx:72 +#: apps/native/src/components/titles/status-action-button.tsx:73 msgid "Add to watchlist" -msgstr "" +msgstr "Zur Merkliste hinzufügen" -#: apps/native/src/components/explore/hero-banner.tsx:157 -#: apps/native/src/components/ui/poster-card.tsx:238 -#: apps/web/src/components/title-card.tsx:146 +#: apps/native/src/components/explore/hero-banner.tsx:132 +#: apps/native/src/components/ui/poster-card.tsx:212 +#: apps/web/src/components/title-card.tsx:133 msgid "Add to Watchlist" -msgstr "" +msgstr "Zur Merkliste hinzufügen" -#: apps/native/src/lib/title-actions.ts:23 +#: apps/native/src/lib/title-actions.ts:24 msgid "Added \"{titleName}\" to watchlist" -msgstr "" +msgstr "\"{titleName}\" zur Merkliste hinzugefügt" #: apps/native/src/hooks/use-title-actions.ts:44 -#: apps/native/src/hooks/use-title-actions.ts:60 -#: apps/native/src/lib/title-actions.ts:24 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:59 +#: apps/native/src/lib/title-actions.ts:25 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Added to watchlist" -msgstr "" +msgstr "Zur Merkliste hinzugefügt" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:353 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:454 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:499 -#: apps/web/src/components/nav-bar.tsx:235 -#: apps/web/src/components/settings/account-section.tsx:335 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:342 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/components/nav-bar.tsx:223 +#: apps/web/src/components/settings/account-section.tsx:309 msgid "Admin" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:124 +#: apps/web/src/routes/_app/settings.tsx:118 msgid "Admin only" -msgstr "" +msgstr "Nur für Admins" -#: apps/native/src/app/person/[id].tsx:308 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "age {age}" -msgstr "" +msgstr "Alter {age}" -#: apps/native/src/components/explore/filterable-title-row.tsx:119 -#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/native/src/components/explore/filterable-title-row.tsx:117 +#: apps/web/src/components/people/filmography-grid.tsx:56 msgid "All" -msgstr "" +msgstr "Alle" -#: apps/web/src/components/settings/registration-section.tsx:61 +#: apps/web/src/components/settings/registration-section.tsx:54 msgid "Allow new users to create accounts" -msgstr "" +msgstr "Neuen Benutzern die Registrierung erlauben" -#: apps/web/src/components/auth-form.tsx:278 +#: apps/web/src/components/auth-form.tsx:259 msgid "Already have an account?" -msgstr "" +msgstr "Bereits ein Konto?" -#: apps/native/src/app/(auth)/register.tsx:239 +#: apps/native/src/app/(auth)/register.tsx:211 msgid "Already have an account? Sign in" -msgstr "" +msgstr "Bereits ein Konto? Anmelden" -#: apps/web/src/routes/__root.tsx:146 +#: apps/web/src/routes/__root.tsx:143 msgid "An unexpected error occurred while loading this page. You can try again or head back to the dashboard." -msgstr "" +msgstr "Beim Laden dieser Seite ist ein unerwarteter Fehler aufgetreten. Du kannst es erneut versuchen oder zum Dashboard zurückkehren." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:427 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:407 msgid "Anonymous usage reporting" -msgstr "" +msgstr "Anonyme Nutzungsberichte" -#: apps/web/src/routes/_app/settings.tsx:102 +#: apps/web/src/routes/_app/settings.tsx:99 msgid "App Settings" -msgstr "" +msgstr "App-Einstellungen" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:378 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:362 msgid "Application" -msgstr "" +msgstr "Anwendung" -#: apps/native/src/components/settings/integration-card.tsx:151 +#: apps/native/src/components/settings/integration-card.tsx:139 msgid "Are you sure you want to disconnect {label}? The current URL will stop working." -msgstr "" +msgstr "Möchtest du {label} wirklich trennen? Die aktuelle URL wird nicht mehr funktionieren." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/components/header-avatar.tsx:70 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/components/header-avatar.tsx:62 msgid "Are you sure you want to sign out?" -msgstr "" +msgstr "Möchtest du dich wirklich abmelden?" -#: apps/web/src/components/settings/imports-section.tsx:450 +#: apps/web/src/components/settings/imports-section.tsx:429 msgid "Authorization succeeded but failed to fetch your library. Please try again." -msgstr "" +msgstr "Autorisierung erfolgreich, aber die Bibliothek konnte nicht abgerufen werden. Bitte versuche es erneut." -#: apps/web/src/components/settings/imports-section.tsx:440 +#: apps/web/src/components/settings/imports-section.tsx:419 msgid "Authorization was denied. Please try again." -msgstr "" +msgstr "Autorisierung wurde verweigert. Bitte versuche es erneut." #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:580 msgid "Authorize Sofa to read your {0} library. No password shared." -msgstr "" +msgstr "Sofa autorisieren, deine {0}-Bibliothek zu lesen. Kein Passwort wird geteilt." -#: apps/web/src/components/settings/update-check-section.tsx:60 +#: apps/web/src/components/settings/update-check-section.tsx:51 msgid "Automatic update checks" -msgstr "" +msgstr "Automatische Update-Prüfung" -#: apps/web/src/components/settings/backup-schedule-section.tsx:279 +#: apps/web/src/components/settings/backup-schedule-section.tsx:248 msgid "Automatically back up your database on a schedule" -msgstr "" +msgstr "Datenbank automatisch nach Zeitplan sichern" -#: apps/web/src/components/settings/system-health-section.tsx:332 +#: apps/web/src/components/settings/system-health-section.tsx:305 msgid "Availability" -msgstr "" +msgstr "Verfügbarkeit" -#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:94 msgid "Back to Login" -msgstr "" +msgstr "Zurück zur Anmeldung" -#: apps/web/src/components/settings/system-health-section.tsx:382 +#: apps/web/src/components/settings/system-health-section.tsx:348 msgid "Background jobs" -msgstr "" +msgstr "Hintergrundaufgaben" -#: apps/web/src/components/settings/system-health-section.tsx:336 +#: apps/web/src/components/settings/system-health-section.tsx:309 msgid "Backup" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:69 +#: apps/web/src/components/settings/backup-section.tsx:62 msgid "Backup created" -msgstr "" +msgstr "Backup erstellt" -#: apps/web/src/components/settings/backup-section.tsx:94 +#: apps/web/src/components/settings/backup-section.tsx:85 msgid "Backup deleted" -msgstr "" +msgstr "Backup gelöscht" -#: apps/web/src/components/settings/backup-schedule-section.tsx:234 +#: apps/web/src/components/settings/backup-schedule-section.tsx:216 msgid "Backup schedule" -msgstr "" +msgstr "Backup-Zeitplan" -#: apps/web/src/components/settings/system-health-section.tsx:641 -#: apps/web/src/routes/_app/settings.tsx:166 +#: apps/web/src/components/settings/system-health-section.tsx:589 +#: apps/web/src/routes/_app/settings.tsx:154 msgid "Backups" msgstr "" @@ -316,811 +316,811 @@ msgstr "" #~ msgid "backups." #~ msgstr "backups." -#: apps/web/src/components/titles/title-availability.tsx:139 +#: apps/web/src/components/titles/title-availability.tsx:115 msgid "Buy" -msgstr "" +msgstr "Kaufen" -#: apps/web/src/components/settings/danger-section.tsx:89 +#: apps/web/src/components/settings/danger-section.tsx:85 msgid "Cache management" -msgstr "" +msgstr "Cache-Verwaltung" -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:66 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:74 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:67 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:75 msgid "Can't reach server" -msgstr "" +msgstr "Server nicht erreichbar" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:207 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:332 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:388 -#: apps/native/src/components/header-avatar.tsx:71 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:63 -#: apps/native/src/components/search/recently-viewed-list.tsx:37 -#: apps/native/src/components/settings/integration-card.tsx:138 -#: apps/native/src/components/settings/integration-card.tsx:153 -#: apps/web/src/components/settings/account-section.tsx:505 -#: apps/web/src/components/settings/backup-restore-section.tsx:107 -#: apps/web/src/components/settings/backup-section.tsx:270 -#: apps/web/src/components/settings/danger-section.tsx:129 -#: apps/web/src/components/settings/danger-section.tsx:171 -#: apps/web/src/components/settings/danger-section.tsx:214 -#: apps/web/src/components/settings/imports-section.tsx:645 -#: apps/web/src/components/settings/imports-section.tsx:710 -#: apps/web/src/components/settings/imports-section.tsx:837 -#: apps/web/src/components/titles/title-seasons.tsx:133 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:202 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:321 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:369 +#: apps/native/src/components/header-avatar.tsx:63 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:58 +#: apps/native/src/components/search/recently-viewed-list.tsx:32 +#: apps/native/src/components/settings/integration-card.tsx:126 +#: apps/native/src/components/settings/integration-card.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/web/src/components/settings/backup-restore-section.tsx:101 +#: apps/web/src/components/settings/backup-section.tsx:240 +#: apps/web/src/components/settings/danger-section.tsx:121 +#: apps/web/src/components/settings/danger-section.tsx:154 +#: apps/web/src/components/settings/danger-section.tsx:187 +#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:674 +#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/titles/title-seasons.tsx:127 msgid "Cancel" -msgstr "" +msgstr "Abbrechen" -#: apps/web/src/components/settings/account-section.tsx:307 +#: apps/web/src/components/settings/account-section.tsx:281 msgid "Cancel editing" -msgstr "" +msgstr "Bearbeitung abbrechen" -#: apps/native/src/app/title/[id].tsx:559 +#: apps/native/src/app/title/[id].tsx:489 #: apps/web/src/components/titles/cast-carousel.tsx:21 msgid "Cast" -msgstr "" +msgstr "Besetzung" -#: apps/web/src/components/titles/use-title-actions.ts:223 -#: apps/web/src/components/titles/use-title-actions.ts:301 +#: apps/web/src/components/titles/use-title-actions.ts:202 +#: apps/web/src/components/titles/use-title-actions.ts:280 msgid "Catch up" -msgstr "" +msgstr "Aufholen" #. placeholder {0}: episodeIds.length #. placeholder {1}: episodeIds.length -#: apps/web/src/components/titles/use-title-actions.ts:82 +#: apps/web/src/components/titles/use-title-actions.ts:72 msgid "Caught up — marked {0} {1, plural, one {episode} other {episodes}} as watched" -msgstr "" +msgstr "Aufgeholt - {0} {1, plural, one {Episode} other {Episoden}} als gesehen markiert" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 -#: apps/web/src/components/settings/account-section.tsx:427 -#: apps/web/src/components/settings/account-section.tsx:432 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 +#: apps/web/src/components/settings/account-section.tsx:401 +#: apps/web/src/components/settings/account-section.tsx:406 msgid "Change password" -msgstr "" +msgstr "Passwort ändern" -#: apps/native/src/app/change-password.tsx:98 +#: apps/native/src/app/change-password.tsx:94 msgid "Change Password" -msgstr "" +msgstr "Passwort ändern" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:267 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:258 msgid "Change Photo" -msgstr "" +msgstr "Foto ändern" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:385 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "Change Server" -msgstr "" +msgstr "Server wechseln" -#: apps/web/src/components/setup/refresh-button.tsx:30 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Check configuration" -msgstr "" +msgstr "Konfiguration prüfen" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:483 msgid "Check for updates" -msgstr "" +msgstr "Nach Updates suchen" -#: apps/web/src/components/settings/system-health-section.tsx:215 +#: apps/web/src/components/settings/system-health-section.tsx:196 msgid "Checked <0/>" -msgstr "" +msgstr "Geprüft <0/>" -#: apps/web/src/components/setup/refresh-button.tsx:28 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Checking…" -msgstr "" +msgstr "Prüfe..." #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:587 +#: apps/web/src/components/settings/imports-section.tsx:556 msgid "Choose how to import your {0} data." -msgstr "" +msgstr "Wähle aus, wie du deine {0}-Daten importieren möchtest." #: apps/web/src/components/settings/language-section.tsx:29 #~ msgid "Choose your preferred display language" #~ msgstr "Choose your preferred display language" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:65 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:115 -#: apps/native/src/components/search/recently-viewed-list.tsx:39 -#: apps/native/src/components/search/recently-viewed-list.tsx:95 -msgid "Clear" -msgstr "" - -#: apps/web/src/components/command-palette.tsx:322 -msgid "Clear all" -msgstr "" - #: apps/native/src/components/search/recently-viewed-list.ios.tsx:60 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:104 #: apps/native/src/components/search/recently-viewed-list.tsx:34 +#: apps/native/src/components/search/recently-viewed-list.tsx:86 +msgid "Clear" +msgstr "Löschen" + +#: apps/web/src/components/command-palette.tsx:302 +msgid "Clear all" +msgstr "Alle löschen" + +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "Clear Recently Viewed?" -msgstr "" +msgstr "Zuletzt angesehen löschen?" -#: apps/native/src/components/settings/integration-configs.ts:109 -#: apps/native/src/components/settings/integration-configs.ts:127 +#: apps/native/src/components/settings/integration-configs.ts:104 +#: apps/native/src/components/settings/integration-configs.ts:122 msgid "Click \"+\" and select \"Custom Lists\"" -msgstr "" +msgstr "Klicke auf \"+\" und wähle \"Custom Lists\"" -#: apps/native/src/components/settings/integration-configs.ts:55 +#: apps/native/src/components/settings/integration-configs.ts:56 msgid "Click \"Add Webhook\" and paste the URL above" -msgstr "" +msgstr "Klicke auf \"Add Webhook\" und füge die URL oben ein" -#: apps/web/src/components/settings/integration-configs.tsx:237 -#: apps/web/src/components/settings/integration-configs.tsx:277 +#: apps/web/src/components/settings/integration-configs.tsx:212 +#: apps/web/src/components/settings/integration-configs.tsx:249 msgid "Click <0>+ and select <1>Custom Lists" -msgstr "" +msgstr "Klicke auf <0>+ und wähle <1>Custom Lists" -#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:73 msgid "Click <0>Add Webhook and paste the URL above" -msgstr "" +msgstr "Klicke auf <0>Add Webhook und füge die URL oben ein" #: apps/native/src/components/navigation/modal-stack-header.tsx:14 msgid "Close" -msgstr "" +msgstr "Schließen" -#: apps/native/src/app/(tabs)/(home)/index.tsx:63 -#: apps/native/src/components/titles/status-action-button.tsx:44 -#: apps/web/src/components/dashboard/stats-display.tsx:238 -#: apps/web/src/components/title-card.tsx:77 -#: apps/web/src/components/titles/status-button.tsx:30 +#: apps/native/src/app/(tabs)/(home)/index.tsx:54 +#: apps/native/src/components/titles/status-action-button.tsx:45 +#: apps/web/src/components/dashboard/stats-display.tsx:219 +#: apps/web/src/components/title-card.tsx:74 +#: apps/web/src/components/titles/status-button.tsx:25 msgid "Completed" -msgstr "" +msgstr "Abgeschlossen" -#: apps/native/src/app/change-password.tsx:173 -#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/native/src/app/change-password.tsx:167 +#: apps/web/src/components/settings/account-section.tsx:451 msgid "Confirm new password" -msgstr "" +msgstr "Neues Passwort bestätigen" -#: apps/native/src/app/(auth)/server-url.tsx:207 -#: apps/web/src/components/settings/imports-section.tsx:499 +#: apps/native/src/app/(auth)/server-url.tsx:182 +#: apps/web/src/components/settings/imports-section.tsx:478 msgid "Connect" -msgstr "" +msgstr "Verbinden" #. placeholder {0}: config.label -#: apps/web/src/components/settings/integration-card.tsx:203 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connect {0}" -msgstr "" +msgstr "{0} verbinden" -#: apps/native/src/components/settings/integration-card.tsx:238 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connect {label}" -msgstr "" +msgstr "{label} verbinden" -#: apps/web/src/components/settings/imports-section.tsx:665 +#: apps/web/src/components/settings/imports-section.tsx:631 msgid "Connect to {source}" -msgstr "" +msgstr "Mit {source} verbinden" -#: apps/web/src/routes/setup.tsx:101 +#: apps/web/src/routes/setup.tsx:98 msgid "Connect to TMDB" -msgstr "" +msgstr "Mit TMDB verbinden" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:608 +#: apps/web/src/components/settings/imports-section.tsx:577 msgid "Connect with {0}" -msgstr "" +msgstr "Mit {0} verbinden" -#: apps/native/src/app/(auth)/server-url.tsx:197 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:474 -#: apps/web/src/components/settings/system-health-section.tsx:256 +#: apps/native/src/app/(auth)/server-url.tsx:176 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:449 +#: apps/web/src/components/settings/system-health-section.tsx:236 msgid "Connected" -msgstr "" +msgstr "Verbunden" -#: apps/web/src/components/settings/imports-section.tsx:722 +#: apps/web/src/components/settings/imports-section.tsx:686 msgid "Connected to {source}" -msgstr "" +msgstr "Verbunden mit {source}" -#: apps/native/src/app/(auth)/login.tsx:240 +#: apps/native/src/app/(auth)/login.tsx:211 msgid "Connected to <0>{serverHost}. Tap to change." -msgstr "" +msgstr "Verbunden mit <0>{serverHost}. Tippe zum Ändern." -#: apps/native/src/app/(auth)/server-url.tsx:186 +#: apps/native/src/app/(auth)/server-url.tsx:169 msgid "Connecting to server..." -msgstr "" +msgstr "Verbinde mit Server..." -#: apps/web/src/components/settings/integration-card.tsx:201 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connecting..." -msgstr "" +msgstr "Verbinde..." -#: apps/native/src/components/settings/integration-card.tsx:237 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connecting…" -msgstr "" +msgstr "Verbinde..." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:390 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:371 msgid "Continue" -msgstr "" +msgstr "Weiter" -#: apps/native/src/app/(tabs)/(home)/index.tsx:113 -#: apps/web/src/components/dashboard/continue-watching-section.tsx:25 +#: apps/native/src/app/(tabs)/(home)/index.tsx:99 +#: apps/web/src/components/dashboard/continue-watching-section.tsx:22 msgid "Continue Watching" -msgstr "" +msgstr "Weiterschauen" -#: apps/web/src/components/setup/copy-button.tsx:25 +#: apps/web/src/components/setup/copy-button.tsx:26 msgid "Copied" -msgstr "" +msgstr "Kopiert" -#: apps/web/src/components/setup/copy-button.tsx:30 +#: apps/web/src/components/setup/copy-button.tsx:31 msgid "Copy" -msgstr "" +msgstr "Kopieren" -#: apps/web/src/components/settings/integration-card.tsx:246 +#: apps/web/src/components/settings/integration-card.tsx:208 msgid "Copy URL" -msgstr "" +msgstr "URL kopieren" -#: apps/native/src/components/settings/integrations-section.tsx:29 +#: apps/native/src/components/settings/integrations-section.tsx:30 msgid "Could not load integrations" -msgstr "" +msgstr "Integrationen konnten nicht geladen werden" -#: apps/native/src/app/person/[id].tsx:216 +#: apps/native/src/app/person/[id].tsx:185 msgid "Could not load person details" -msgstr "" +msgstr "Personendetails konnten nicht geladen werden" -#: apps/web/src/components/auth-form.tsx:247 +#: apps/web/src/components/auth-form.tsx:231 msgid "Create account" -msgstr "" +msgstr "Konto erstellen" -#: apps/native/src/app/(auth)/register.tsx:115 -#: apps/native/src/app/(auth)/register.tsx:225 +#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:200 msgid "Create Account" -msgstr "" +msgstr "Konto erstellen" -#: apps/native/src/app/(auth)/login.tsx:216 +#: apps/native/src/app/(auth)/login.tsx:194 msgid "Create an account" -msgstr "" +msgstr "Konto erstellen" #: apps/web/src/components/auth-form.tsx:110 msgid "Create your account" -msgstr "" +msgstr "Erstelle dein Konto" -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "Creating…" -msgstr "" +msgstr "Erstelle..." -#: apps/native/src/app/change-password.tsx:120 -#: apps/web/src/components/settings/account-section.tsx:449 +#: apps/native/src/app/change-password.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:423 msgid "Current password" -msgstr "" +msgstr "Aktuelles Passwort" -#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/components/settings/account-section.tsx:365 msgid "Current password is required" -msgstr "" +msgstr "Aktuelles Passwort ist erforderlich" -#: apps/web/src/routes/_app/settings.tsx:195 +#: apps/web/src/routes/_app/settings.tsx:180 msgid "Danger Zone" -msgstr "" +msgstr "Gefahrenzone" -#: apps/web/src/routes/__root.tsx:167 -#: apps/web/src/routes/_app/people.$id.tsx:78 -#: apps/web/src/routes/_app/titles.$id.tsx:126 -#: apps/web/src/routes/_app/titles.$id.tsx:172 +#: apps/web/src/routes/__root.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:76 +#: apps/web/src/routes/_app/titles.$id.tsx:119 +#: apps/web/src/routes/_app/titles.$id.tsx:165 msgid "Dashboard" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:463 -#: apps/web/src/components/settings/system-health-section.tsx:229 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:439 +#: apps/web/src/components/settings/system-health-section.tsx:210 msgid "Database" -msgstr "" +msgstr "Datenbank" -#: apps/web/src/components/settings/backup-section.tsx:126 +#: apps/web/src/components/settings/backup-section.tsx:112 msgid "Database backups" -msgstr "" +msgstr "Datenbank-Backups" -#: apps/web/src/components/settings/backup-restore-section.tsx:31 +#: apps/web/src/components/settings/backup-restore-section.tsx:32 msgid "Database restored. Reloading..." -msgstr "" +msgstr "Datenbank wiederhergestellt. Lade neu..." -#: apps/web/src/components/settings/backup-schedule-section.tsx:342 +#: apps/web/src/components/settings/backup-schedule-section.tsx:309 msgid "Day:" -msgstr "" +msgstr "Tag:" +#: apps/web/src/components/settings/backup-section.tsx:222 #: apps/web/src/components/settings/backup-section.tsx:250 -#: apps/web/src/components/settings/backup-section.tsx:280 msgid "Delete" -msgstr "" +msgstr "Löschen" -#: apps/web/src/components/settings/backup-section.tsx:235 +#: apps/web/src/components/settings/backup-section.tsx:211 msgid "Delete backup" -msgstr "" +msgstr "Backup löschen" -#: apps/web/src/components/settings/backup-section.tsx:256 +#: apps/web/src/components/settings/backup-section.tsx:228 msgid "Delete backup?" -msgstr "" +msgstr "Backup löschen?" #. placeholder {0}: data.deletedFiles #: apps/web/src/components/settings/danger-section.tsx:54 msgid "Deleted {0, plural, one {# file} other {# files}}, freed {freed}" -msgstr "" +msgstr "{0, plural, one {# Datei} other {# Dateien}} gelöscht, {freed} freigegeben" -#: apps/web/src/components/settings/imports-section.tsx:412 -#: apps/web/src/components/settings/imports-section.tsx:444 +#: apps/web/src/components/settings/imports-section.tsx:394 +#: apps/web/src/components/settings/imports-section.tsx:423 msgid "Device code expired. Please try again." -msgstr "" +msgstr "Gerätecode abgelaufen. Bitte versuche es erneut." -#: apps/native/src/app/person/[id].tsx:307 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "died at {age}" -msgstr "" +msgstr "gestorben mit {age}" -#: apps/web/src/components/people/person-hero.tsx:73 +#: apps/web/src/components/people/person-hero.tsx:71 msgid "Director" -msgstr "" +msgstr "Regisseur" -#: apps/web/src/components/settings/system-health-section.tsx:431 -#: apps/web/src/components/settings/system-health-section.tsx:632 +#: apps/web/src/components/settings/system-health-section.tsx:394 +#: apps/web/src/components/settings/system-health-section.tsx:580 msgid "Disabled" -msgstr "" +msgstr "Deaktiviert" -#: apps/native/src/components/settings/integration-card.tsx:155 -#: apps/native/src/components/settings/integration-card.tsx:298 -#: apps/web/src/components/settings/integration-card.tsx:274 +#: apps/native/src/components/settings/integration-card.tsx:143 +#: apps/native/src/components/settings/integration-card.tsx:257 +#: apps/web/src/components/settings/integration-card.tsx:234 msgid "Disconnect" -msgstr "" +msgstr "Trennen" -#: apps/native/src/components/settings/integration-card.tsx:150 +#: apps/native/src/components/settings/integration-card.tsx:138 msgid "Disconnect {label}" -msgstr "" +msgstr "{label} trennen" -#: apps/native/src/app/(auth)/server-url.tsx:242 +#: apps/native/src/app/(auth)/server-url.tsx:217 msgid "Don't have a server?" -msgstr "" +msgstr "Noch keinen Server?" -#: apps/web/src/components/auth-form.tsx:288 +#: apps/web/src/components/auth-form.tsx:269 msgid "Don't have an account?" -msgstr "" +msgstr "Noch kein Konto?" -#: apps/web/src/components/settings/imports-section.tsx:962 +#: apps/web/src/components/settings/imports-section.tsx:918 msgid "Done" -msgstr "" +msgstr "Fertig" #: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to clear this filter" -msgstr "" +msgstr "Doppeltippen zum Entfernen dieses Filters" -#: apps/native/src/components/explore/genre-chip.tsx:28 +#: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to filter by {label}" -msgstr "" +msgstr "Doppeltippen zum Filtern nach {label}" -#: apps/web/src/components/settings/backup-section.tsx:71 -#: apps/web/src/components/settings/backup-section.tsx:223 +#: apps/web/src/components/settings/backup-section.tsx:64 +#: apps/web/src/components/settings/backup-section.tsx:199 msgid "Download" -msgstr "" +msgstr "Herunterladen" -#: apps/web/src/components/settings/backup-section.tsx:214 +#: apps/web/src/components/settings/backup-section.tsx:190 msgid "Download backup" -msgstr "" +msgstr "Backup herunterladen" -#: apps/web/src/components/people/person-hero.tsx:79 +#: apps/web/src/components/people/person-hero.tsx:77 msgid "Editor" -msgstr "" +msgstr "Cutter" -#: apps/native/src/app/(auth)/login.tsx:133 -#: apps/native/src/app/(auth)/register.tsx:154 -#: apps/web/src/components/auth-form.tsx:201 +#: apps/native/src/app/(auth)/login.tsx:123 +#: apps/native/src/app/(auth)/register.tsx:139 +#: apps/web/src/components/auth-form.tsx:190 msgid "Email" -msgstr "" +msgstr "E-Mail" -#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:72 msgid "Enable the \"Playback Stop\" notification type" -msgstr "" +msgstr "Benachrichtigungstyp \"Playback Stop\" aktivieren" -#: apps/native/src/components/settings/integration-configs.ts:93 +#: apps/native/src/components/settings/integration-configs.ts:90 msgid "Enable the \"Playback\" event category" -msgstr "" +msgstr "Ereigniskategorie \"Playback\" aktivieren" -#: apps/web/src/components/settings/integration-configs.tsx:140 +#: apps/web/src/components/settings/integration-configs.tsx:127 msgid "Enable the <0>Playback Stop notification type" -msgstr "" +msgstr "Benachrichtigungstyp <0>Playback Stop aktivieren" -#: apps/web/src/components/settings/integration-configs.tsx:201 +#: apps/web/src/components/settings/integration-configs.tsx:181 msgid "Enable the <0>Playback event category" -msgstr "" +msgstr "Ereigniskategorie <0>Playback aktivieren" -#: apps/web/src/components/settings/imports-section.tsx:668 +#: apps/web/src/components/settings/imports-section.tsx:634 msgid "Enter the code below on {source}'s website to authorize Sofa." -msgstr "" +msgstr "Gib den untenstehenden Code auf der Website von {source} ein, um Sofa zu autorisieren." -#: apps/web/src/components/settings/account-section.tsx:435 +#: apps/web/src/components/settings/account-section.tsx:409 msgid "Enter your current password and choose a new one." -msgstr "" +msgstr "Gib dein aktuelles Passwort ein und wähle ein neues." -#: apps/native/src/app/(auth)/server-url.tsx:151 +#: apps/native/src/app/(auth)/server-url.tsx:140 msgid "Enter your Sofa server URL to get started" -msgstr "" +msgstr "Gib deine Sofa-Server-URL ein, um loszulegen" -#: apps/web/src/components/settings/system-health-section.tsx:289 +#: apps/web/src/components/settings/system-health-section.tsx:267 msgid "Environment" -msgstr "" +msgstr "Umgebung" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:29 -#: apps/native/src/components/titles/episode-row.tsx:55 +#: apps/native/src/components/titles/episode-row.tsx:27 +#: apps/native/src/components/titles/episode-row.tsx:48 msgid "Episode {0}" msgstr "" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:36 +#: apps/native/src/components/titles/episode-row.tsx:34 msgid "Episode {0}, {episodeLabel}" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:123 -#: apps/native/src/lib/title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:111 +#: apps/native/src/lib/title-actions.ts:108 msgid "Episode unwatched" -msgstr "" +msgstr "Episode als ungesehen markiert" -#: apps/native/src/hooks/use-title-actions.ts:109 -#: apps/native/src/lib/title-actions.ts:101 +#: apps/native/src/hooks/use-title-actions.ts:101 +#: apps/native/src/lib/title-actions.ts:98 msgid "Episode watched" -msgstr "" +msgstr "Episode als gesehen markiert" -#: apps/web/src/components/settings/imports-section.tsx:780 -#: apps/web/src/components/titles/title-seasons.tsx:102 +#: apps/web/src/components/settings/imports-section.tsx:742 +#: apps/web/src/components/titles/title-seasons.tsx:96 msgid "Episodes" -msgstr "" +msgstr "Episoden" #: apps/web/src/components/dashboard/stats-display.tsx:162 #~ msgid "Episodes {periodSelect}" #~ msgstr "Episodes {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:164 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Episodes {select}" -msgstr "" +msgstr "Episoden {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:61 +#: apps/native/src/app/(tabs)/(home)/index.tsx:52 msgid "Episodes this week" -msgstr "" +msgstr "Episoden diese Woche" -#: apps/native/src/app/change-password.tsx:71 -#: apps/native/src/app/change-password.tsx:81 +#: apps/native/src/app/change-password.tsx:67 +#: apps/native/src/app/change-password.tsx:77 msgid "Error" -msgstr "" +msgstr "Fehler" #. placeholder {0}: result.errors.length -#: apps/web/src/components/settings/imports-section.tsx:929 +#: apps/web/src/components/settings/imports-section.tsx:887 msgid "Errors ({0})" -msgstr "" +msgstr "Fehler ({0})" -#: apps/native/src/app/(tabs)/(home)/index.tsx:143 -#: apps/web/src/components/nav-bar.tsx:126 -#: apps/web/src/components/nav-bar.tsx:291 +#: apps/native/src/app/(tabs)/(home)/index.tsx:127 +#: apps/web/src/components/nav-bar.tsx:116 +#: apps/web/src/components/nav-bar.tsx:277 msgid "Explore" -msgstr "" +msgstr "Entdecken" -#: apps/web/src/routes/_app/people.$id.tsx:70 -#: apps/web/src/routes/_app/titles.$id.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:68 +#: apps/web/src/routes/_app/titles.$id.tsx:157 msgid "Explore titles" -msgstr "" +msgstr "Titel entdecken" -#: apps/web/src/components/settings/imports-section.tsx:923 +#: apps/web/src/components/settings/imports-section.tsx:881 msgid "Failed" -msgstr "" +msgstr "Fehlgeschlagen" -#: apps/native/src/hooks/use-title-actions.ts:49 -#: apps/native/src/lib/title-actions.ts:28 +#: apps/native/src/hooks/use-title-actions.ts:48 +#: apps/native/src/lib/title-actions.ts:29 msgid "Failed to add to watchlist" -msgstr "" +msgstr "Konnte nicht zur Merkliste hinzugefügt werden" -#: apps/web/src/components/titles/use-title-actions.ts:90 +#: apps/web/src/components/titles/use-title-actions.ts:80 msgid "Failed to catch up" -msgstr "" +msgstr "Aufholen fehlgeschlagen" -#: apps/native/src/app/change-password.tsx:71 -#: apps/web/src/components/settings/account-section.tsx:411 +#: apps/native/src/app/change-password.tsx:67 +#: apps/web/src/components/settings/account-section.tsx:385 msgid "Failed to change password" -msgstr "" +msgstr "Passwort konnte nicht geändert werden" -#: apps/web/src/components/settings/imports-section.tsx:398 +#: apps/web/src/components/settings/imports-section.tsx:380 msgid "Failed to connect" -msgstr "" +msgstr "Verbindung fehlgeschlagen" -#: apps/native/src/components/settings/integration-card.tsx:99 -#: apps/web/src/components/settings/integration-card.tsx:108 +#: apps/native/src/components/settings/integration-card.tsx:87 +#: apps/web/src/components/settings/integration-card.tsx:91 msgid "Failed to connect {label}" -msgstr "" +msgstr "{label} konnte nicht verbunden werden" -#: apps/native/src/app/(auth)/register.tsx:67 +#: apps/native/src/app/(auth)/register.tsx:57 msgid "Failed to create account" -msgstr "" +msgstr "Konto konnte nicht erstellt werden" -#: apps/web/src/components/settings/backup-section.tsx:81 +#: apps/web/src/components/settings/backup-section.tsx:74 msgid "Failed to create backup" -msgstr "" +msgstr "Backup konnte nicht erstellt werden" -#: apps/web/src/components/settings/backup-section.tsx:97 +#: apps/web/src/components/settings/backup-section.tsx:88 msgid "Failed to delete backup" -msgstr "" +msgstr "Backup konnte nicht gelöscht werden" -#: apps/native/src/components/settings/integration-card.tsx:109 -#: apps/web/src/components/settings/integration-card.tsx:125 +#: apps/native/src/components/settings/integration-card.tsx:97 +#: apps/web/src/components/settings/integration-card.tsx:108 msgid "Failed to disconnect {label}" -msgstr "" +msgstr "{label} konnte nicht getrennt werden" -#: apps/web/src/components/settings/backup-schedule-section.tsx:215 +#: apps/web/src/components/settings/backup-schedule-section.tsx:200 msgid "Failed to load backup schedule settings." -msgstr "" +msgstr "Backup-Zeitplaneinstellungen konnten nicht geladen werden." -#: apps/web/src/routes/_app/titles.$id.tsx:115 +#: apps/web/src/routes/_app/titles.$id.tsx:110 msgid "Failed to load title" -msgstr "" +msgstr "Titel konnte nicht geladen werden" -#: apps/web/src/components/titles/use-title-actions.ts:367 +#: apps/web/src/components/titles/use-title-actions.ts:344 msgid "Failed to mark all episodes as watched" -msgstr "" +msgstr "Nicht alle Episoden konnten als gesehen markiert werden" -#: apps/native/src/hooks/use-title-actions.ts:84 -#: apps/native/src/lib/title-actions.ts:68 -#: apps/web/src/components/titles/use-title-actions.ts:150 +#: apps/native/src/hooks/use-title-actions.ts:79 +#: apps/native/src/lib/title-actions.ts:67 +#: apps/web/src/components/titles/use-title-actions.ts:137 msgid "Failed to mark as watched" -msgstr "" +msgstr "Konnte nicht als gesehen markiert werden" -#: apps/native/src/hooks/use-title-actions.ts:113 -#: apps/native/src/lib/title-actions.ts:104 -#: apps/web/src/components/titles/use-title-actions.ts:237 +#: apps/native/src/hooks/use-title-actions.ts:104 +#: apps/native/src/lib/title-actions.ts:101 +#: apps/web/src/components/titles/use-title-actions.ts:216 msgid "Failed to mark episode" -msgstr "" +msgstr "Episode konnte nicht markiert werden" -#: apps/native/src/hooks/use-title-actions.ts:141 -#: apps/native/src/lib/title-actions.ts:128 -#: apps/web/src/components/titles/use-title-actions.ts:315 +#: apps/native/src/hooks/use-title-actions.ts:124 +#: apps/native/src/lib/title-actions.ts:123 +#: apps/web/src/components/titles/use-title-actions.ts:294 msgid "Failed to mark some episodes" -msgstr "" +msgstr "Einige Episoden konnten nicht markiert werden" -#: apps/web/src/components/settings/imports-section.tsx:225 +#: apps/web/src/components/settings/imports-section.tsx:218 msgid "Failed to parse file" -msgstr "" +msgstr "Datei konnte nicht verarbeitet werden" -#: apps/web/src/components/settings/imports-section.tsx:240 +#: apps/web/src/components/settings/imports-section.tsx:233 msgid "Failed to parse import data" -msgstr "" +msgstr "Importdaten konnten nicht verarbeitet werden" -#: apps/web/src/components/settings/danger-section.tsx:75 +#: apps/web/src/components/settings/danger-section.tsx:72 msgid "Failed to purge caches" -msgstr "" +msgstr "Cache konnte nicht geleert werden" #: apps/web/src/components/settings/danger-section.tsx:58 msgid "Failed to purge image cache" -msgstr "" +msgstr "Bild-Cache konnte nicht geleert werden" #: apps/web/src/components/settings/danger-section.tsx:45 msgid "Failed to purge metadata cache" -msgstr "" +msgstr "Metadaten-Cache konnte nicht geleert werden" -#: apps/native/src/components/settings/integration-card.tsx:119 -#: apps/web/src/components/settings/integration-card.tsx:140 +#: apps/native/src/components/settings/integration-card.tsx:107 +#: apps/web/src/components/settings/integration-card.tsx:121 msgid "Failed to regenerate {label} URL" -msgstr "" +msgstr "{label}-URL konnte nicht neu generiert werden" -#: apps/native/src/lib/title-actions.ts:78 +#: apps/native/src/lib/title-actions.ts:77 msgid "Failed to remove from library" -msgstr "" +msgstr "Konnte nicht aus der Bibliothek entfernt werden" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:134 -#: apps/web/src/components/settings/account-section.tsx:134 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:131 +#: apps/web/src/components/settings/account-section.tsx:126 msgid "Failed to remove profile picture" -msgstr "" +msgstr "Profilbild konnte nicht entfernt werden" -#: apps/native/src/app/(auth)/login.tsx:56 +#: apps/native/src/app/(auth)/login.tsx:53 msgid "Failed to sign in" -msgstr "" +msgstr "Anmeldung fehlgeschlagen" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:388 +#: apps/web/src/components/settings/imports-section.tsx:370 msgid "Failed to start {0} connection" -msgstr "" +msgstr "{0}-Verbindung konnte nicht gestartet werden" -#: apps/web/src/components/settings/system-health-section.tsx:348 +#: apps/web/src/components/settings/system-health-section.tsx:320 msgid "Failed to trigger job" -msgstr "" +msgstr "Aufgabe konnte nicht ausgelöst werden" -#: apps/native/src/hooks/use-title-actions.ts:129 -#: apps/native/src/lib/title-actions.ts:114 -#: apps/web/src/components/titles/use-title-actions.ts:181 +#: apps/native/src/hooks/use-title-actions.ts:114 +#: apps/native/src/lib/title-actions.ts:111 +#: apps/web/src/components/titles/use-title-actions.ts:163 msgid "Failed to unmark episode" -msgstr "" +msgstr "Episode konnte nicht als ungesehen markiert werden" -#: apps/web/src/components/titles/use-title-actions.ts:343 +#: apps/web/src/components/titles/use-title-actions.ts:320 msgid "Failed to unmark some episodes" -msgstr "" +msgstr "Einige Episoden konnten nicht als ungesehen markiert werden" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:112 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:109 msgid "Failed to update name" -msgstr "" +msgstr "Name konnte nicht aktualisiert werden" -#: apps/native/src/hooks/use-title-actions.ts:101 -#: apps/native/src/lib/title-actions.ts:94 -#: apps/web/src/components/titles/use-title-actions.ts:136 +#: apps/native/src/hooks/use-title-actions.ts:94 +#: apps/native/src/lib/title-actions.ts:91 +#: apps/web/src/components/titles/use-title-actions.ts:123 msgid "Failed to update rating" -msgstr "" +msgstr "Bewertung konnte nicht aktualisiert werden" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:172 -#: apps/web/src/components/settings/registration-section.tsx:44 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:169 +#: apps/web/src/components/settings/registration-section.tsx:37 msgid "Failed to update registration setting" -msgstr "" +msgstr "Registrierungseinstellung konnte nicht aktualisiert werden" -#: apps/web/src/components/settings/backup-schedule-section.tsx:154 +#: apps/web/src/components/settings/backup-schedule-section.tsx:145 msgid "Failed to update retention setting" -msgstr "" +msgstr "Aufbewahrungseinstellung konnte nicht aktualisiert werden" -#: apps/web/src/components/settings/backup-schedule-section.tsx:156 +#: apps/web/src/components/settings/backup-schedule-section.tsx:147 msgid "Failed to update schedule" -msgstr "" +msgstr "Zeitplan konnte nicht aktualisiert werden" -#: apps/web/src/components/settings/backup-schedule-section.tsx:152 +#: apps/web/src/components/settings/backup-schedule-section.tsx:143 msgid "Failed to update scheduled backup setting" -msgstr "" +msgstr "Einstellung für geplante Backups konnte nicht aktualisiert werden" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:191 -#: apps/web/src/components/settings/update-check-section.tsx:43 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:186 +#: apps/web/src/components/settings/update-check-section.tsx:37 msgid "Failed to update setting" -msgstr "" +msgstr "Einstellung konnte nicht aktualisiert werden" -#: apps/native/src/hooks/use-title-actions.ts:72 -#: apps/native/src/lib/title-actions.ts:40 -#: apps/native/src/lib/title-actions.ts:54 -#: apps/web/src/components/titles/use-title-actions.ts:114 +#: apps/native/src/hooks/use-title-actions.ts:69 +#: apps/native/src/lib/title-actions.ts:41 +#: apps/native/src/lib/title-actions.ts:55 +#: apps/web/src/components/titles/use-title-actions.ts:101 msgid "Failed to update status" -msgstr "" +msgstr "Status konnte nicht aktualisiert werden" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:123 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:120 msgid "Failed to upload avatar" -msgstr "" +msgstr "Profilbild konnte nicht hochgeladen werden" -#: apps/web/src/components/settings/imports-section.tsx:725 +#: apps/web/src/components/settings/imports-section.tsx:689 msgid "Fetching your library data from {source}..." -msgstr "" +msgstr "Bibliotheksdaten werden von {source} abgerufen..." -#: apps/native/src/app/person/[id].tsx:340 -#: apps/web/src/components/people/filmography-grid.tsx:69 +#: apps/native/src/app/person/[id].tsx:296 +#: apps/web/src/components/people/filmography-grid.tsx:67 msgid "Filmography" -msgstr "" +msgstr "Filmografie" -#: apps/web/src/components/settings/imports-section.tsx:915 +#: apps/web/src/components/settings/imports-section.tsx:873 msgid "Finished importing from {source}." -msgstr "" +msgstr "Import von {source} abgeschlossen." -#: apps/web/src/components/titles/title-availability.tsx:140 +#: apps/web/src/components/titles/title-availability.tsx:116 msgid "Free" -msgstr "" +msgstr "Kostenlos" -#: apps/web/src/components/settings/danger-section.tsx:92 +#: apps/web/src/components/settings/danger-section.tsx:88 msgid "Free up disk space by clearing cached metadata and images" -msgstr "" +msgstr "Speicherplatz freigeben, indem gecachte Metadaten und Bilder gelöscht werden" -#: apps/web/src/components/settings/backup-schedule-section.tsx:309 +#: apps/web/src/components/settings/backup-schedule-section.tsx:276 msgid "Frequency" -msgstr "" +msgstr "Häufigkeit" -#: apps/web/src/components/settings/backup-schedule-section.tsx:101 +#: apps/web/src/components/settings/backup-schedule-section.tsx:98 msgid "Friday" -msgstr "" +msgstr "Freitag" -#: apps/web/src/components/landing-page.tsx:156 +#: apps/web/src/components/landing-page.tsx:157 msgid "Get Started" -msgstr "" +msgstr "Loslegen" -#: apps/native/src/app/person/[id].tsx:220 -#: apps/native/src/app/person/[id].tsx:247 -#: apps/native/src/app/title/[id].tsx:255 +#: apps/native/src/app/person/[id].tsx:189 +#: apps/native/src/app/person/[id].tsx:213 +#: apps/native/src/app/title/[id].tsx:239 msgid "Go back" -msgstr "" +msgstr "Zurück" -#: apps/native/src/app/+not-found.tsx:37 +#: apps/native/src/app/+not-found.tsx:35 msgid "Go Home" -msgstr "" +msgstr "Zur Startseite" -#: apps/web/src/components/settings/integration-configs.tsx:123 +#: apps/web/src/components/settings/integration-configs.tsx:115 msgid "Go to <0>Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Gehe zu <0>Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:368 +#: apps/web/src/components/command-palette.tsx:345 msgid "Go to Dashboard" -msgstr "" +msgstr "Zum Dashboard" -#: apps/native/src/components/settings/integration-configs.ts:71 +#: apps/native/src/components/settings/integration-configs.ts:70 msgid "Go to Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Gehe zu Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:379 +#: apps/web/src/components/command-palette.tsx:356 msgid "Go to Explore" -msgstr "" +msgstr "Zum Entdecken" -#: apps/web/src/components/settings/system-health-section.tsx:212 +#: apps/web/src/components/settings/system-health-section.tsx:193 msgid "Health status" -msgstr "" +msgstr "Systemstatus" -#: apps/web/src/components/dashboard/welcome-header.tsx:14 +#: apps/web/src/components/dashboard/welcome-header.tsx:10 msgid "Here's what's happening with your library" -msgstr "" +msgstr "Das passiert in deiner Bibliothek" -#: apps/web/src/components/nav-bar.tsx:125 -#: apps/web/src/components/nav-bar.tsx:290 +#: apps/web/src/components/nav-bar.tsx:115 +#: apps/web/src/components/nav-bar.tsx:276 msgid "Home" -msgstr "" +msgstr "Startseite" -#: apps/web/src/components/settings/system-health-section.tsx:335 -#: apps/web/src/components/settings/system-health-section.tsx:610 +#: apps/web/src/components/settings/system-health-section.tsx:308 +#: apps/web/src/components/settings/system-health-section.tsx:558 msgid "Image cache" -msgstr "" +msgstr "Bild-Cache" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:479 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:453 msgid "Image Cache" -msgstr "" +msgstr "Bild-Cache" -#: apps/web/src/components/settings/system-health-section.tsx:598 +#: apps/web/src/components/settings/system-health-section.tsx:546 msgid "Image cache and backup disk usage" -msgstr "" +msgstr "Speichernutzung für Bild-Cache und Backups" -#: apps/web/src/components/settings/imports-section.tsx:179 +#: apps/web/src/components/settings/imports-section.tsx:175 msgid "Import" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:840 +#: apps/web/src/components/settings/imports-section.tsx:801 msgid "Import {totalItems} items" -msgstr "" +msgstr "{totalItems} Einträge importieren" -#: apps/web/src/components/settings/imports-section.tsx:912 +#: apps/web/src/components/settings/imports-section.tsx:870 msgid "Import complete" -msgstr "" +msgstr "Import abgeschlossen" -#: apps/web/src/components/settings/imports-section.tsx:340 +#: apps/web/src/components/settings/imports-section.tsx:324 msgid "Import failed" -msgstr "" +msgstr "Import fehlgeschlagen" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:584 +#: apps/web/src/components/settings/imports-section.tsx:553 msgid "Import from {0}" -msgstr "" +msgstr "Von {0} importieren" -#: apps/web/src/components/settings/imports-section.tsx:770 +#: apps/web/src/components/settings/imports-section.tsx:732 msgid "Import from {source}" -msgstr "" +msgstr "Von {source} importieren" -#: apps/web/src/components/settings/imports-section.tsx:298 -#: apps/web/src/components/settings/imports-section.tsx:329 +#: apps/web/src/components/settings/imports-section.tsx:285 +#: apps/web/src/components/settings/imports-section.tsx:314 msgid "Import is still running in the background. Check back later." -msgstr "" +msgstr "Import läuft noch im Hintergrund. Komm später wieder." -#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/settings/imports-section.tsx:760 msgid "Import options" -msgstr "" +msgstr "Importoptionen" -#: apps/web/src/components/settings/imports-section.tsx:921 +#: apps/web/src/components/settings/imports-section.tsx:879 msgid "Imported" -msgstr "" +msgstr "Importiert" #. placeholder {0}: event.job.importedCount #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:292 +#: apps/web/src/components/settings/imports-section.tsx:281 msgid "Imported {0} items from {1}" -msgstr "" +msgstr "{0} Einträge von {1} importiert" -#: apps/web/src/components/settings/imports-section.tsx:863 +#: apps/web/src/components/settings/imports-section.tsx:822 msgid "Importing from {source}" -msgstr "" +msgstr "Importiere von {source}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:62 +#: apps/native/src/app/(tabs)/(home)/index.tsx:53 msgid "In library" -msgstr "" +msgstr "In Bibliothek" -#: apps/web/src/components/dashboard/stats-display.tsx:230 +#: apps/web/src/components/dashboard/stats-display.tsx:211 msgid "In Library" -msgstr "" +msgstr "In Bibliothek" -#: apps/native/src/app/(tabs)/(home)/index.tsx:133 +#: apps/native/src/app/(tabs)/(home)/index.tsx:117 #: apps/web/src/components/dashboard/library-section.tsx:35 msgid "In Your Library" -msgstr "" +msgstr "In deiner Bibliothek" -#: apps/web/src/components/settings/integration-configs.tsx:105 +#: apps/web/src/components/settings/integration-configs.tsx:97 msgid "Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog" -msgstr "" +msgstr "<0>Webhook-Plugin<1/> aus dem Jellyfin-Plugin-Katalog installieren" -#: apps/native/src/components/settings/integration-configs.ts:70 +#: apps/native/src/components/settings/integration-configs.ts:69 msgid "Install the Webhook plugin from Jellyfin's plugin catalog" -msgstr "" +msgstr "Webhook-Plugin aus dem Jellyfin-Plugin-Katalog installieren" -#: apps/native/src/components/settings/integrations-section.tsx:20 -#: apps/web/src/components/settings/integrations-section.tsx:41 +#: apps/native/src/components/settings/integrations-section.tsx:21 +#: apps/web/src/components/settings/integrations-section.tsx:33 msgid "Integrations" -msgstr "" +msgstr "Integrationen" -#: apps/web/src/components/settings/system-health-section.tsx:266 +#: apps/web/src/components/settings/system-health-section.tsx:246 msgid "Invalid token" -msgstr "" +msgstr "Ungültiger Token" -#: apps/web/src/components/settings/system-health-section.tsx:399 +#: apps/web/src/components/settings/system-health-section.tsx:365 msgid "Job" -msgstr "" +msgstr "Aufgabe" #: apps/web/src/components/settings/backup-schedule-section.tsx:243 #~ msgid "Keeping" @@ -1128,1306 +1128,1306 @@ msgstr "" #. placeholder {0}: (value: string | null) => value === "0" ? t`unlimited` : value ? t`last ${value}` : null #. placeholder {1}: [3, 5, 7, 14, 30, 0].map((n) => ( {n === 0 ? t`unlimited` : t`last ${n}`} )) -#: apps/web/src/components/settings/backup-schedule-section.tsx:243 +#: apps/web/src/components/settings/backup-schedule-section.tsx:222 msgid "Keeping <0><1><2>{0}<3>{1} backups." -msgstr "" +msgstr "<0><1><2>{0}<3>{1} Backups werden aufbewahrt." -#: apps/web/src/components/command-palette.tsx:389 -#: apps/web/src/components/command-palette.tsx:404 +#: apps/web/src/components/command-palette.tsx:366 +#: apps/web/src/components/command-palette.tsx:381 msgid "Keyboard Shortcuts" -msgstr "" +msgstr "Tastaturkürzel" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:403 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:411 -#: apps/web/src/components/settings/language-section.tsx:42 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:383 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:391 +#: apps/web/src/components/settings/language-section.tsx:34 msgid "Language" -msgstr "" +msgstr "Sprache" -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "last {n}" -msgstr "" +msgstr "letzte {n}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:258 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 msgid "last {value}" -msgstr "" +msgstr "letzte {value}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:331 +#: apps/web/src/components/settings/integration-card.tsx:289 msgid "Last event {0}" -msgstr "" +msgstr "Letztes Ereignis {0}" -#: apps/native/src/components/settings/integration-configs.ts:29 +#: apps/native/src/components/settings/integration-configs.ts:30 msgid "Last event {timeAgo}" -msgstr "" +msgstr "Letztes Ereignis {timeAgo}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:338 +#: apps/web/src/components/settings/integration-card.tsx:296 msgid "Last polled {0}" -msgstr "" +msgstr "Zuletzt abgefragt {0}" -#: apps/native/src/components/settings/integration-configs.ts:37 +#: apps/native/src/components/settings/integration-configs.ts:38 msgid "Last polled {timeAgo}" -msgstr "" +msgstr "Zuletzt abgefragt {timeAgo}" -#: apps/web/src/components/settings/system-health-section.tsx:405 +#: apps/web/src/components/settings/system-health-section.tsx:371 msgid "Last run" -msgstr "" +msgstr "Letzter Lauf" -#: apps/web/src/components/settings/system-health-section.tsx:441 +#: apps/web/src/components/settings/system-health-section.tsx:402 msgid "Last run failed" -msgstr "" +msgstr "Letzter Lauf fehlgeschlagen" -#: apps/web/src/components/settings/system-health-section.tsx:437 +#: apps/web/src/components/settings/system-health-section.tsx:400 msgid "Last run succeeded" -msgstr "" +msgstr "Letzter Lauf erfolgreich" -#: apps/web/src/components/settings/system-health-section.tsx:331 +#: apps/web/src/components/settings/system-health-section.tsx:304 msgid "Library refresh" -msgstr "" +msgstr "Bibliothek aktualisieren" -#: apps/web/src/components/auth-form.tsx:245 +#: apps/web/src/components/auth-form.tsx:229 msgid "Loading…" -msgstr "" +msgstr "Lade..." -#: apps/web/src/components/settings/imports-section.tsx:334 +#: apps/web/src/components/settings/imports-section.tsx:318 msgid "Lost connection to import. Check status in settings." -msgstr "" +msgstr "Verbindung zum Import verloren. Status in den Einstellungen prüfen." -#: apps/web/src/components/settings/settings-shell.tsx:40 +#: apps/web/src/components/settings/settings-shell.tsx:34 msgid "Manage your account and preferences" -msgstr "" +msgstr "Konto und Einstellungen verwalten" -#: apps/web/src/components/settings/backup-section.tsx:182 +#: apps/web/src/components/settings/backup-section.tsx:158 msgid "Manual backup" -msgstr "" +msgstr "Manuelles Backup" -#: apps/web/src/components/titles/title-seasons.tsx:122 +#: apps/web/src/components/titles/title-seasons.tsx:116 msgid "Mark all episodes as watched?" -msgstr "" +msgstr "Alle Episoden als gesehen markieren?" -#: apps/native/src/components/titles/season-accordion.tsx:164 -#: apps/web/src/components/titles/title-seasons.tsx:115 -#: apps/web/src/components/titles/title-seasons.tsx:141 +#: apps/native/src/components/titles/season-accordion.tsx:152 +#: apps/web/src/components/titles/title-seasons.tsx:109 +#: apps/web/src/components/titles/title-seasons.tsx:135 msgid "Mark All Watched" -msgstr "" +msgstr "Alle als gesehen markieren" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:122 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:103 msgid "Mark as Completed" -msgstr "" +msgstr "Als abgeschlossen markieren" -#: apps/native/src/components/ui/poster-card.tsx:252 +#: apps/native/src/components/ui/poster-card.tsx:226 msgid "Mark as Watched" -msgstr "" +msgstr "Als gesehen markieren" -#: apps/native/src/components/ui/poster-card.tsx:245 +#: apps/native/src/components/ui/poster-card.tsx:219 msgid "Mark as Watching" -msgstr "" +msgstr "Als am Schauen markieren" -#: apps/native/src/app/title/[id].tsx:449 -#: apps/web/src/components/titles/title-actions.tsx:29 +#: apps/native/src/app/title/[id].tsx:400 +#: apps/web/src/components/titles/title-actions.tsx:27 msgid "Mark Watched" -msgstr "" +msgstr "Als gesehen markieren" -#: apps/native/src/lib/title-actions.ts:49 +#: apps/native/src/lib/title-actions.ts:50 msgid "Marked \"{titleName}\" as completed" -msgstr "" +msgstr "\"{titleName}\" als abgeschlossen markiert" #: apps/native/src/lib/title-actions.ts:63 -#: apps/web/src/components/titles/use-title-actions.ts:147 +#: apps/web/src/components/titles/use-title-actions.ts:134 msgid "Marked \"{titleName}\" as watched" -msgstr "" +msgstr "\"{titleName}\" als gesehen markiert" -#: apps/web/src/components/titles/use-title-actions.ts:360 +#: apps/web/src/components/titles/use-title-actions.ts:337 msgid "Marked all episodes as watched" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:62 -#: apps/native/src/lib/title-actions.ts:50 -msgid "Marked as completed" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:80 -#: apps/native/src/lib/title-actions.ts:64 -msgid "Marked as watched" -msgstr "" +msgstr "Alle Episoden als gesehen markiert" #: apps/native/src/hooks/use-title-actions.ts:61 -#: apps/native/src/lib/title-actions.ts:37 +#: apps/native/src/lib/title-actions.ts:51 +msgid "Marked as completed" +msgstr "Als abgeschlossen markiert" + +#: apps/native/src/hooks/use-title-actions.ts:76 +#: apps/native/src/lib/title-actions.ts:63 +msgid "Marked as watched" +msgstr "Als gesehen markiert" + +#: apps/native/src/hooks/use-title-actions.ts:60 +#: apps/native/src/lib/title-actions.ts:38 msgid "Marked as watching" -msgstr "" +msgstr "Als am Schauen markiert" -#: apps/web/src/components/settings/account-section.tsx:340 +#: apps/web/src/components/settings/account-section.tsx:314 msgid "Member since {memberSince}" -msgstr "" +msgstr "Mitglied seit {memberSince}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:97 +#: apps/web/src/components/settings/backup-schedule-section.tsx:94 msgid "Monday" -msgstr "" +msgstr "Montag" -#: apps/native/src/app/title/[id].tsx:585 +#: apps/native/src/app/title/[id].tsx:508 msgid "More Like This" -msgstr "" +msgstr "Ähnliche Titel" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:541 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:506 msgid "More Settings" -msgstr "" +msgstr "Weitere Einstellungen" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:35 -#: apps/native/src/components/search/search-result-row.tsx:96 -#: apps/web/src/components/explore/hero-banner.tsx:59 -#: apps/web/src/components/titles/title-hero.tsx:143 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:54 +#: apps/web/src/components/titles/title-hero.tsx:141 msgid "Movie" -msgstr "" +msgstr "Film" -#: apps/web/src/components/people/filmography-grid.tsx:59 -#: apps/web/src/components/settings/imports-section.tsx:779 +#: apps/web/src/components/people/filmography-grid.tsx:57 +#: apps/web/src/components/settings/imports-section.tsx:741 msgid "Movies" -msgstr "" +msgstr "Filme" #: apps/web/src/components/dashboard/stats-display.tsx:161 #~ msgid "Movies {periodSelect}" #~ msgstr "Movies {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:162 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Movies {select}" -msgstr "" +msgstr "Filme {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:60 +#: apps/native/src/app/(tabs)/(home)/index.tsx:51 msgid "Movies this month" -msgstr "" +msgstr "Filme diesen Monat" -#: apps/native/src/app/(auth)/register.tsx:124 -#: apps/web/src/components/auth-form.tsx:181 +#: apps/native/src/app/(auth)/register.tsx:111 +#: apps/web/src/components/auth-form.tsx:173 msgid "Name" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:107 -#: apps/web/src/components/settings/account-section.tsx:80 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:104 +#: apps/web/src/components/settings/account-section.tsx:72 msgid "Name updated" -msgstr "" +msgstr "Name aktualisiert" -#: apps/web/src/components/settings/integration-card.tsx:301 +#: apps/web/src/components/settings/integration-card.tsx:259 msgid "Need more help?" -msgstr "" +msgstr "Brauchst du mehr Hilfe?" -#: apps/web/src/components/settings/system-health-section.tsx:501 +#: apps/web/src/components/settings/system-health-section.tsx:456 msgid "Never" -msgstr "" +msgstr "Nie" -#: apps/web/src/components/settings/system-health-section.tsx:435 +#: apps/web/src/components/settings/system-health-section.tsx:398 msgid "Never run" -msgstr "" +msgstr "Noch nie ausgeführt" -#: apps/native/src/app/(auth)/register.tsx:98 +#: apps/native/src/app/(auth)/register.tsx:88 msgid "New account creation is currently disabled." -msgstr "" +msgstr "Das Erstellen neuer Konten ist derzeit deaktiviert." -#: apps/web/src/routes/_auth/register.tsx:35 +#: apps/web/src/routes/_auth/register.tsx:36 msgid "New accounts are not being accepted right now. Contact the admin if you need access." -msgstr "" +msgstr "Neue Konten werden derzeit nicht akzeptiert. Kontaktiere den Admin, wenn du Zugang benötigst." -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "New backup" -msgstr "" +msgstr "Neues Backup" -#: apps/native/src/app/change-password.tsx:145 -#: apps/web/src/components/settings/account-section.tsx:463 +#: apps/native/src/app/change-password.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:437 msgid "New password" -msgstr "" +msgstr "Neues Passwort" -#: apps/web/src/components/settings/account-section.tsx:395 +#: apps/web/src/components/settings/account-section.tsx:369 msgid "New password must be at least 8 characters" -msgstr "" +msgstr "Das neue Passwort muss mindestens 8 Zeichen lang sein" -#: apps/web/src/components/people/filmography-grid.tsx:86 -#: apps/web/src/components/people/filmography-grid.tsx:99 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:87 msgid "Newest" -msgstr "" +msgstr "Neueste" -#: apps/web/src/components/settings/backup-schedule-section.tsx:131 +#: apps/web/src/components/settings/backup-schedule-section.tsx:124 msgid "Next backup {distance}" -msgstr "" +msgstr "Nächstes Backup {distance}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:46 +#: apps/native/src/components/titles/continue-watching-banner.tsx:42 msgid "Next Episode" -msgstr "" +msgstr "Nächste Episode" -#: apps/web/src/components/settings/system-health-section.tsx:408 +#: apps/web/src/components/settings/system-health-section.tsx:374 msgid "Next run" -msgstr "" +msgstr "Nächster Lauf" -#: apps/web/src/components/settings/backup-section.tsx:110 -#: apps/web/src/components/settings/system-health-section.tsx:662 +#: apps/web/src/components/settings/backup-section.tsx:99 +#: apps/web/src/components/settings/system-health-section.tsx:607 msgid "No backups yet" -msgstr "" +msgstr "Noch keine Backups" -#: apps/native/src/components/ui/offline-banner.ios.tsx:74 -#: apps/native/src/components/ui/offline-banner.ios.tsx:81 -#: apps/native/src/components/ui/offline-banner.tsx:59 +#: apps/native/src/components/ui/offline-banner.ios.tsx:75 +#: apps/native/src/components/ui/offline-banner.ios.tsx:82 +#: apps/native/src/components/ui/offline-banner.tsx:60 msgid "No internet connection" -msgstr "" +msgstr "Keine Internetverbindung" -#: apps/native/src/app/(tabs)/(search)/index.tsx:113 +#: apps/native/src/app/(tabs)/(search)/index.tsx:100 msgid "No results for \"{debouncedQuery}\"" -msgstr "" +msgstr "Keine Ergebnisse für \"{debouncedQuery}\"" -#: apps/web/src/components/command-palette.tsx:217 +#: apps/web/src/components/command-palette.tsx:212 msgid "No results found." -msgstr "" +msgstr "Keine Ergebnisse gefunden." -#: apps/native/src/components/explore/filterable-title-row.tsx:139 -#: apps/web/src/components/explore/filterable-title-row.tsx:151 +#: apps/native/src/components/explore/filterable-title-row.tsx:135 +#: apps/web/src/components/explore/filterable-title-row.tsx:144 msgid "No titles found for this genre." -msgstr "" +msgstr "Keine Titel für dieses Genre gefunden." -#: apps/native/src/components/settings/integration-card.tsx:194 -#: apps/web/src/components/settings/integration-card.tsx:176 -#: apps/web/src/components/settings/system-health-section.tsx:249 +#: apps/native/src/components/settings/integration-card.tsx:174 +#: apps/web/src/components/settings/integration-card.tsx:153 +#: apps/web/src/components/settings/system-health-section.tsx:229 msgid "Not configured" -msgstr "" +msgstr "Nicht konfiguriert" -#: apps/native/src/app/+not-found.tsx:17 +#: apps/native/src/app/+not-found.tsx:18 msgid "Not Found" -msgstr "" +msgstr "Nicht gefunden" -#: apps/web/src/components/title-card.tsx:67 +#: apps/web/src/components/title-card.tsx:64 msgid "On Watchlist" -msgstr "" +msgstr "Auf der Merkliste" -#: apps/web/src/components/settings/imports-section.tsx:693 +#: apps/web/src/components/settings/imports-section.tsx:657 msgid "Open {source} to enter code" -msgstr "" +msgstr "{source} öffnen, um Code einzugeben" -#: apps/web/src/components/settings/integration-card.tsx:308 +#: apps/web/src/components/settings/integration-card.tsx:266 msgid "Open docs" -msgstr "" +msgstr "Dokumentation öffnen" -#: apps/web/src/components/settings/integration-configs.tsx:190 +#: apps/web/src/components/settings/integration-configs.tsx:172 msgid "Open Emby, go to <0>Settings > Webhooks" -msgstr "" +msgstr "Öffne Emby, gehe zu <0>Settings > Webhooks" -#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/native/src/components/settings/integration-configs.ts:88 msgid "Open Emby, go to Settings > Webhooks" -msgstr "" +msgstr "Öffne Emby, gehe zu Settings > Webhooks" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:548 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 msgid "Open in browser…" -msgstr "" +msgstr "Im Browser öffnen..." -#: apps/web/src/components/settings/integration-configs.tsx:62 +#: apps/web/src/components/settings/integration-configs.tsx:56 msgid "Open Plex, go to <0>Settings > Webhooks<1/>" -msgstr "" +msgstr "Öffne Plex, gehe zu <0>Settings > Webhooks<1/>" -#: apps/native/src/components/settings/integration-configs.ts:54 +#: apps/native/src/components/settings/integration-configs.ts:55 msgid "Open Plex, go to Settings > Webhooks" -msgstr "" +msgstr "Öffne Plex, gehe zu Settings > Webhooks" -#: apps/web/src/components/settings/integration-configs.tsx:269 +#: apps/web/src/components/settings/integration-configs.tsx:243 msgid "Open Radarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Öffne Radarr, gehe zu <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/native/src/components/settings/integration-configs.ts:121 msgid "Open Radarr, go to Settings > Import Lists" -msgstr "" +msgstr "Öffne Radarr, gehe zu Settings > Import Lists" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:502 -#: apps/web/src/components/settings/registration-section.tsx:58 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:472 +#: apps/web/src/components/settings/registration-section.tsx:51 msgid "Open registration" -msgstr "" +msgstr "Offene Registrierung" -#: apps/web/src/components/settings/integration-configs.tsx:229 +#: apps/web/src/components/settings/integration-configs.tsx:206 msgid "Open Sonarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Öffne Sonarr, gehe zu <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/native/src/components/settings/integration-configs.ts:103 msgid "Open Sonarr, go to Settings > Import Lists" -msgstr "" +msgstr "Öffne Sonarr, gehe zu Settings > Import Lists" -#: apps/web/src/components/auth-form.tsx:158 +#: apps/web/src/components/auth-form.tsx:153 msgid "or" -msgstr "" +msgstr "oder" -#: apps/native/src/app/(auth)/login.tsx:118 +#: apps/native/src/app/(auth)/login.tsx:108 msgid "OR" -msgstr "" +msgstr "ODER" -#: apps/native/src/app/+not-found.tsx:27 +#: apps/native/src/app/+not-found.tsx:25 msgid "Page Not Found" -msgstr "" +msgstr "Seite nicht gefunden" -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Parsing..." -msgstr "" +msgstr "Verarbeite..." -#: apps/native/src/app/(auth)/login.tsx:167 -#: apps/native/src/app/(auth)/register.tsx:187 -#: apps/web/src/components/auth-form.tsx:221 +#: apps/native/src/app/(auth)/login.tsx:153 +#: apps/native/src/app/(auth)/register.tsx:170 +#: apps/web/src/components/auth-form.tsx:207 msgid "Password" -msgstr "" +msgstr "Passwort" -#: apps/native/src/app/change-password.tsx:76 -#: apps/web/src/components/settings/account-section.tsx:414 +#: apps/native/src/app/change-password.tsx:72 +#: apps/web/src/components/settings/account-section.tsx:388 msgid "Password updated" -msgstr "" +msgstr "Passwort aktualisiert" -#: apps/web/src/components/settings/account-section.tsx:399 +#: apps/web/src/components/settings/account-section.tsx:373 msgid "Passwords do not match" -msgstr "" +msgstr "Passwörter stimmen nicht überein" -#: apps/native/src/components/settings/integration-configs.ts:128 -#: apps/web/src/components/settings/integration-configs.tsx:284 +#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/web/src/components/settings/integration-configs.tsx:255 msgid "Paste the Radarr URL above into the List URL field" -msgstr "" +msgstr "Füge die obige Radarr-URL in das Feld \"List URL\" ein" -#: apps/native/src/components/settings/integration-configs.ts:110 -#: apps/web/src/components/settings/integration-configs.tsx:244 +#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/web/src/components/settings/integration-configs.tsx:218 msgid "Paste the Sonarr URL above into the List URL field" -msgstr "" +msgstr "Füge die obige Sonarr-URL in das Feld \"List URL\" ein" -#: apps/web/src/components/settings/update-check-section.tsx:63 +#: apps/web/src/components/settings/update-check-section.tsx:54 msgid "Periodically check GitHub for new Sofa releases" -msgstr "" +msgstr "GitHub regelmäßig auf neue Sofa-Versionen prüfen" -#: apps/native/src/components/search/search-result-row.tsx:38 -#: apps/native/src/components/search/search-result-row.tsx:99 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 msgid "Person" msgstr "" -#: apps/native/src/app/person/[id].tsx:243 -#: apps/web/src/routes/_app/people.$id.tsx:52 +#: apps/native/src/app/person/[id].tsx:209 +#: apps/web/src/routes/_app/people.$id.tsx:50 msgid "Person not found" -msgstr "" +msgstr "Person nicht gefunden" -#: apps/web/src/components/titles/trailer-dialog.tsx:24 +#: apps/web/src/components/titles/trailer-dialog.tsx:25 msgid "Play trailer" -msgstr "" +msgstr "Trailer abspielen" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:107 -#: apps/web/src/components/explore/explore-client.tsx:126 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:89 +#: apps/web/src/components/explore/explore-client.tsx:120 msgid "Popular Movies" -msgstr "" +msgstr "Beliebte Filme" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:120 -#: apps/web/src/components/explore/explore-client.tsx:136 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:102 +#: apps/web/src/components/explore/explore-client.tsx:130 msgid "Popular TV Shows" -msgstr "" +msgstr "Beliebte Serien" -#: apps/web/src/components/settings/backup-section.tsx:181 +#: apps/web/src/components/settings/backup-section.tsx:157 msgid "Pre-restore backup" -msgstr "" +msgstr "Backup vor Wiederherstellung" -#: apps/web/src/components/people/person-hero.tsx:77 +#: apps/web/src/components/people/person-hero.tsx:75 msgid "Producer" -msgstr "" +msgstr "Produzent" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:130 -#: apps/web/src/components/settings/account-section.tsx:130 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:127 +#: apps/web/src/components/settings/account-section.tsx:122 msgid "Profile picture removed" -msgstr "" +msgstr "Profilbild entfernt" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:119 -#: apps/web/src/components/settings/account-section.tsx:108 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:100 msgid "Profile picture updated" -msgstr "" +msgstr "Profilbild aktualisiert" -#: apps/web/src/components/settings/danger-section.tsx:196 -#: apps/web/src/components/settings/danger-section.tsx:220 +#: apps/web/src/components/settings/danger-section.tsx:171 +#: apps/web/src/components/settings/danger-section.tsx:190 msgid "Purge all" -msgstr "" +msgstr "Alles leeren" -#: apps/web/src/components/settings/danger-section.tsx:202 +#: apps/web/src/components/settings/danger-section.tsx:176 msgid "Purge all caches?" -msgstr "" +msgstr "Alle Caches leeren?" -#: apps/web/src/components/settings/danger-section.tsx:160 +#: apps/web/src/components/settings/danger-section.tsx:143 msgid "Purge image cache?" -msgstr "" +msgstr "Bild-Cache leeren?" -#: apps/web/src/components/settings/danger-section.tsx:154 -#: apps/web/src/components/settings/danger-section.tsx:177 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:157 msgid "Purge images" -msgstr "" +msgstr "Bilder leeren" -#: apps/web/src/components/settings/danger-section.tsx:111 -#: apps/web/src/components/settings/danger-section.tsx:135 +#: apps/web/src/components/settings/danger-section.tsx:103 +#: apps/web/src/components/settings/danger-section.tsx:124 msgid "Purge metadata" -msgstr "" +msgstr "Metadaten leeren" -#: apps/web/src/components/settings/danger-section.tsx:117 +#: apps/web/src/components/settings/danger-section.tsx:109 msgid "Purge metadata cache?" -msgstr "" +msgstr "Metadaten-Cache leeren?" #. placeholder {0}: data.deletedTitles #. placeholder {1}: data.deletedPersons #: apps/web/src/components/settings/danger-section.tsx:41 msgid "Purged {0, plural, one {# stale title} other {# stale titles}} and {1, plural, one {# orphaned person} other {# orphaned persons}}" -msgstr "" +msgstr "{0, plural, one {# veralteter Titel} other {# veraltete Titel}} und {1, plural, one {# verwaiste Person} other {# verwaiste Personen}} bereinigt" #. placeholder {0}: metaResult.deletedTitles #. placeholder {1}: metaResult.deletedPersons #. placeholder {2}: imageResult.deletedFiles -#: apps/web/src/components/settings/danger-section.tsx:71 +#: apps/web/src/components/settings/danger-section.tsx:68 msgid "Purged {0, plural, one {# title} other {# titles}}, {1, plural, one {# person} other {# persons}}, {2, plural, one {# file} other {# files}} ({freed} freed)" -msgstr "" +msgstr "{0, plural, one {# Titel} other {# Titel}}, {1, plural, one {# Person} other {# Personen}}, {2, plural, one {# Datei} other {# Dateien}} bereinigt ({freed} freigegeben)" -#: apps/web/src/components/settings/danger-section.tsx:109 -#: apps/web/src/components/settings/danger-section.tsx:152 -#: apps/web/src/components/settings/danger-section.tsx:194 +#: apps/web/src/components/settings/danger-section.tsx:101 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:171 msgid "Purging..." -msgstr "" +msgstr "Leere..." -#: apps/web/src/components/command-palette.tsx:359 +#: apps/web/src/components/command-palette.tsx:336 msgid "Quick Actions" -msgstr "" +msgstr "Schnellaktionen" -#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/native/src/components/settings/integration-configs.ts:118 msgid "Radarr List URL" -msgstr "" +msgstr "Radarr-Listen-URL" #. placeholder {0}: input.stars #. placeholder {1}: input.stars -#: apps/native/src/hooks/use-title-actions.ts:93 +#: apps/native/src/hooks/use-title-actions.ts:88 msgid "Rated {0} {1, plural, one {star} other {stars}}" -msgstr "" +msgstr "{0} {1, plural, one {Stern} other {Sterne}} bewertet" #: apps/native/src/hooks/use-title-actions.ts:92 #~ msgid "Rated {0} star{1}" #~ msgstr "Rated {0} star{1}" -#: apps/web/src/components/titles/use-title-actions.ts:131 +#: apps/web/src/components/titles/use-title-actions.ts:118 msgid "Rated {ratingStars} {ratingStars, plural, one {star} other {stars}}" -msgstr "" +msgstr "{ratingStars} {ratingStars, plural, one {Stern} other {Sterne}} bewertet" -#: apps/native/src/lib/title-actions.ts:88 +#: apps/native/src/lib/title-actions.ts:86 msgid "Rated {stars, plural, one {# star} other {# stars}}" -msgstr "" +msgstr "{stars, plural, one {# Stern} other {# Sterne}} vergeben" -#: apps/web/src/components/people/filmography-grid.tsx:88 -#: apps/web/src/components/people/filmography-grid.tsx:102 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:90 msgid "Rating" -msgstr "" +msgstr "Bewertung" -#: apps/native/src/hooks/use-title-actions.ts:94 -#: apps/native/src/lib/title-actions.ts:90 -#: apps/web/src/components/titles/use-title-actions.ts:132 +#: apps/native/src/hooks/use-title-actions.ts:89 +#: apps/native/src/lib/title-actions.ts:87 +#: apps/web/src/components/titles/use-title-actions.ts:119 msgid "Rating removed" -msgstr "" +msgstr "Bewertung entfernt" -#: apps/web/src/components/settings/imports-section.tsx:782 -#: apps/web/src/components/settings/imports-section.tsx:813 +#: apps/web/src/components/settings/imports-section.tsx:744 +#: apps/web/src/components/settings/imports-section.tsx:775 msgid "Ratings" -msgstr "" +msgstr "Bewertungen" -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Read more" -msgstr "" +msgstr "Mehr lesen" -#: apps/native/src/components/settings/integration-configs.ts:39 -#: apps/web/src/components/settings/integration-card.tsx:339 +#: apps/native/src/components/settings/integration-configs.ts:40 +#: apps/web/src/components/settings/integration-card.tsx:297 msgid "Ready — not polled yet" -msgstr "" +msgstr "Bereit - noch nicht abgefragt" -#: apps/native/src/components/settings/integration-configs.ts:31 -#: apps/web/src/components/settings/integration-card.tsx:332 +#: apps/native/src/components/settings/integration-configs.ts:32 +#: apps/web/src/components/settings/integration-card.tsx:290 msgid "Ready — nothing received yet" -msgstr "" +msgstr "Bereit - noch nichts empfangen" -#: apps/web/src/components/command-palette.tsx:315 +#: apps/web/src/components/command-palette.tsx:295 msgid "Recent Searches" -msgstr "" +msgstr "Letzte Suchen" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:106 -#: apps/native/src/components/search/recently-viewed-list.tsx:86 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:95 +#: apps/native/src/components/search/recently-viewed-list.tsx:77 msgid "Recently Viewed" -msgstr "" +msgstr "Zuletzt angesehen" -#: apps/web/src/components/settings/system-health-section.tsx:333 +#: apps/web/src/components/settings/system-health-section.tsx:306 msgid "Recommendations" -msgstr "" +msgstr "Empfehlungen" -#: apps/web/src/components/titles/title-recommendations.tsx:40 +#: apps/web/src/components/titles/title-recommendations.tsx:41 msgid "Recommended" -msgstr "" +msgstr "Empfohlen" -#: apps/native/src/app/(tabs)/(home)/index.tsx:154 +#: apps/native/src/app/(tabs)/(home)/index.tsx:137 #: apps/web/src/components/dashboard/recommendations-section.tsx:22 msgid "Recommended for You" -msgstr "" +msgstr "Für dich empfohlen" -#: apps/web/src/components/auth-form.tsx:143 +#: apps/web/src/components/auth-form.tsx:140 msgid "Redirecting…" -msgstr "" +msgstr "Weiterleiten..." -#: apps/web/src/components/settings/system-health-section.tsx:182 +#: apps/web/src/components/settings/system-health-section.tsx:166 msgid "Refresh" -msgstr "" +msgstr "Aktualisieren" -#: apps/web/src/components/settings/system-health-section.tsx:172 +#: apps/web/src/components/settings/system-health-section.tsx:156 msgid "Refresh system health" -msgstr "" +msgstr "Systemstatus aktualisieren" -#: apps/native/src/components/settings/integration-card.tsx:140 -#: apps/native/src/components/settings/integration-card.tsx:289 +#: apps/native/src/components/settings/integration-card.tsx:128 +#: apps/native/src/components/settings/integration-card.tsx:248 msgid "Regenerate" -msgstr "" +msgstr "Neu generieren" -#: apps/native/src/components/settings/integration-card.tsx:135 -#: apps/web/src/components/settings/integration-card.tsx:264 +#: apps/native/src/components/settings/integration-card.tsx:123 +#: apps/web/src/components/settings/integration-card.tsx:226 msgid "Regenerate URL" -msgstr "" +msgstr "URL neu generieren" -#: apps/web/src/components/auth-form.tsx:293 -#: apps/web/src/components/landing-page.tsx:176 +#: apps/web/src/components/auth-form.tsx:274 +#: apps/web/src/components/landing-page.tsx:177 msgid "Register" -msgstr "" +msgstr "Registrieren" -#: apps/native/src/app/(auth)/register.tsx:116 +#: apps/native/src/app/(auth)/register.tsx:104 msgid "Registering on {serverHost}" -msgstr "" +msgstr "Registrierung auf {serverHost}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration closed" -msgstr "" +msgstr "Registrierung geschlossen" -#: apps/native/src/app/(auth)/register.tsx:97 -#: apps/web/src/routes/_auth/register.tsx:32 +#: apps/native/src/app/(auth)/register.tsx:87 +#: apps/web/src/routes/_auth/register.tsx:33 msgid "Registration Closed" -msgstr "" +msgstr "Registrierung geschlossen" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration opened" -msgstr "" +msgstr "Registrierung geöffnet" -#: apps/web/src/components/titles/status-button.tsx:84 +#: apps/web/src/components/titles/status-button.tsx:76 msgid "Remove" -msgstr "" +msgstr "Entfernen" -#: apps/native/src/components/titles/status-action-button.tsx:101 -#: apps/web/src/components/titles/status-button.tsx:66 +#: apps/native/src/components/titles/status-action-button.tsx:96 +#: apps/web/src/components/titles/status-button.tsx:60 msgid "Remove from library" -msgstr "" +msgstr "Aus Bibliothek entfernen" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:129 -#: apps/native/src/components/ui/poster-card.tsx:259 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:108 +#: apps/native/src/components/ui/poster-card.tsx:233 msgid "Remove from Library" -msgstr "" +msgstr "Aus Bibliothek entfernen" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:277 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:268 msgid "Remove Photo" -msgstr "" +msgstr "Foto entfernen" -#: apps/web/src/components/settings/account-section.tsx:239 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Remove picture" -msgstr "" +msgstr "Bild entfernen" -#: apps/web/src/components/settings/account-section.tsx:199 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Remove profile picture" -msgstr "" +msgstr "Profilbild entfernen" -#: apps/native/src/hooks/use-title-actions.ts:66 -#: apps/native/src/lib/title-actions.ts:75 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/lib/title-actions.ts:74 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Removed from library" -msgstr "" +msgstr "Aus Bibliothek entfernt" -#: apps/web/src/components/titles/title-availability.tsx:138 +#: apps/web/src/components/titles/title-availability.tsx:114 msgid "Rent" -msgstr "" +msgstr "Leihen" -#: apps/web/src/components/settings/integration-configs.tsx:165 +#: apps/web/src/components/settings/integration-configs.tsx:150 msgid "Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license." -msgstr "" +msgstr "Erfordert <0>Emby Server 4.7.9+ und eine aktive <1>Emby Premiere<2/>-Lizenz." -#: apps/web/src/components/settings/integration-configs.tsx:41 +#: apps/web/src/components/settings/integration-configs.tsx:35 msgid "Requires an active <0>Plex Pass<1/> subscription." -msgstr "" +msgstr "Erfordert ein aktives <0>Plex Pass<1/>-Abonnement." -#: apps/native/src/components/settings/integration-configs.ts:52 +#: apps/native/src/components/settings/integration-configs.ts:53 msgid "Requires an active Plex Pass subscription." -msgstr "" +msgstr "Erfordert ein aktives Plex Pass-Abonnement." -#: apps/native/src/components/settings/integration-configs.ts:88 +#: apps/native/src/components/settings/integration-configs.ts:85 msgid "Requires Emby Server 4.7.9+ and an active Emby Premiere license." -msgstr "" +msgstr "Erfordert Emby Server 4.7.9+ und eine aktive Emby Premiere-Lizenz." -#: apps/web/src/components/settings/backup-restore-section.tsx:59 -#: apps/web/src/components/settings/backup-restore-section.tsx:116 +#: apps/web/src/components/settings/backup-restore-section.tsx:57 +#: apps/web/src/components/settings/backup-restore-section.tsx:110 msgid "Restore" -msgstr "" +msgstr "Wiederherstellen" -#: apps/web/src/components/settings/backup-restore-section.tsx:89 +#: apps/web/src/components/settings/backup-restore-section.tsx:83 msgid "Restore database?" -msgstr "" +msgstr "Datenbank wiederherstellen?" -#: apps/web/src/components/settings/backup-restore-section.tsx:35 +#: apps/web/src/components/settings/backup-restore-section.tsx:36 msgid "Restore failed" -msgstr "" +msgstr "Wiederherstellung fehlgeschlagen" -#: apps/web/src/components/settings/backup-restore-section.tsx:132 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 msgid "Restoring…" -msgstr "" +msgstr "Stelle wieder her..." -#: apps/web/src/components/command-palette.tsx:222 +#: apps/web/src/components/command-palette.tsx:217 msgid "Results" -msgstr "" +msgstr "Ergebnisse" -#: apps/web/src/components/settings/imports-section.tsx:731 +#: apps/web/src/components/settings/imports-section.tsx:695 msgid "Retrieving your watch history, watchlist, and ratings..." -msgstr "" +msgstr "Verlauf, Merkliste und Bewertungen werden abgerufen..." -#: apps/native/src/components/settings/integrations-section.tsx:42 -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:73 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:81 -#: apps/web/src/lib/orpc/client.ts:16 +#: apps/native/src/components/settings/integrations-section.tsx:39 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:71 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:79 +#: apps/web/src/lib/orpc/client.ts:17 msgid "Retry" -msgstr "" +msgstr "Erneut versuchen" -#: apps/web/src/routes/__root.tsx:119 +#: apps/web/src/routes/__root.tsx:116 msgid "Return home" -msgstr "" +msgstr "Zur Startseite" -#: apps/web/src/components/settings/imports-section.tsx:773 +#: apps/web/src/components/settings/imports-section.tsx:735 msgid "Review what was found and choose what to import." -msgstr "" +msgstr "Überprüfe die gefundenen Einträge und wähle aus, was importiert werden soll." -#: apps/web/src/components/settings/system-health-section.tsx:558 +#: apps/web/src/components/settings/system-health-section.tsx:509 msgid "Run now" -msgstr "" +msgstr "Jetzt ausführen" -#: apps/web/src/components/settings/backup-schedule-section.tsx:102 +#: apps/web/src/components/settings/backup-schedule-section.tsx:99 msgid "Saturday" -msgstr "" +msgstr "Samstag" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:322 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:311 msgid "Save" -msgstr "" +msgstr "Speichern" -#: apps/web/src/components/settings/account-section.tsx:296 +#: apps/web/src/components/settings/account-section.tsx:270 msgid "Save name" -msgstr "" +msgstr "Namen speichern" -#: apps/web/src/routes/__root.tsx:101 +#: apps/web/src/routes/__root.tsx:98 msgid "Scene not found" -msgstr "" +msgstr "Szene nicht gefunden" -#: apps/web/src/components/settings/system-health-section.tsx:402 +#: apps/web/src/components/settings/system-health-section.tsx:368 msgid "Schedule" -msgstr "" +msgstr "Zeitplan" -#: apps/web/src/components/settings/backup-schedule-section.tsx:201 +#: apps/web/src/components/settings/backup-schedule-section.tsx:186 msgid "Schedule updated" -msgstr "" +msgstr "Zeitplan aktualisiert" -#: apps/web/src/components/settings/backup-section.tsx:179 +#: apps/web/src/components/settings/backup-section.tsx:155 msgid "Scheduled backup" -msgstr "" +msgstr "Geplantes Backup" -#: apps/web/src/components/settings/backup-schedule-section.tsx:178 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups disabled" -msgstr "" +msgstr "Geplante Backups deaktiviert" -#: apps/web/src/components/settings/backup-schedule-section.tsx:177 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups enabled" -msgstr "" +msgstr "Geplante Backups aktiviert" #: apps/web/src/components/dashboard/stats-section.tsx:35 msgid "Search for movies and TV shows to start tracking" -msgstr "" +msgstr "Suche nach Filmen und Serien, um mit dem Tracken zu beginnen" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:81 -#: apps/native/src/components/search/recently-viewed-list.tsx:64 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:72 +#: apps/native/src/components/search/recently-viewed-list.tsx:55 msgid "Search for movies, shows, or people" -msgstr "" +msgstr "Suche nach Filmen, Serien oder Personen" -#: apps/web/src/components/command-palette.tsx:186 +#: apps/web/src/components/command-palette.tsx:182 msgid "Search for movies, TV shows, or run commands" -msgstr "" +msgstr "Nach Filmen, Serien suchen oder Befehle ausführen" -#: apps/web/src/components/command-palette.tsx:195 +#: apps/web/src/components/command-palette.tsx:191 msgid "Search movies & TV shows…" -msgstr "" +msgstr "Filme & Serien suchen..." -#: apps/native/src/app/(tabs)/(search)/index.tsx:90 +#: apps/native/src/app/(tabs)/(search)/index.tsx:79 msgid "Search movies, shows, people..." -msgstr "" +msgstr "Filme, Serien, Personen suchen..." -#: apps/web/src/components/nav-bar.tsx:193 -#: apps/web/src/components/nav-bar.tsx:202 +#: apps/web/src/components/nav-bar.tsx:181 +#: apps/web/src/components/nav-bar.tsx:190 msgid "Search…" -msgstr "" +msgstr "Suchen..." #. placeholder {0}: season.seasonNumber -#: apps/native/src/components/titles/season-accordion.tsx:122 -#: apps/native/src/components/titles/season-accordion.tsx:128 -#: apps/web/src/components/titles/use-title-actions.ts:295 -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/native/src/components/titles/season-accordion.tsx:113 +#: apps/native/src/components/titles/season-accordion.tsx:119 +#: apps/web/src/components/titles/use-title-actions.ts:274 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Season {0}" -msgstr "" +msgstr "Staffel {0}" -#: apps/native/src/hooks/use-title-actions.ts:137 -#: apps/native/src/lib/title-actions.ts:124 +#: apps/native/src/hooks/use-title-actions.ts:121 +#: apps/native/src/lib/title-actions.ts:119 msgid "Season watched" -msgstr "" +msgstr "Staffel als gesehen markiert" -#: apps/native/src/app/title/[id].tsx:536 +#: apps/native/src/app/title/[id].tsx:473 msgid "Seasons" -msgstr "" +msgstr "Staffeln" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:497 -#: apps/web/src/routes/_app/settings.tsx:140 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/routes/_app/settings.tsx:131 msgid "Security" -msgstr "" +msgstr "Sicherheit" -#: apps/web/src/components/landing-page.tsx:105 +#: apps/web/src/components/landing-page.tsx:106 msgid "Self-hosted movie & TV tracker" -msgstr "" +msgstr "Selbstgehosteter Film- & Serien-Tracker" -#: apps/web/src/routes/_app/settings.tsx:121 +#: apps/web/src/routes/_app/settings.tsx:115 msgid "Server" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:452 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 msgid "Server Health" -msgstr "" +msgstr "Server-Status" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:380 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:364 msgid "Server URL" -msgstr "" +msgstr "Server-URL" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 msgid "Set password" -msgstr "" +msgstr "Passwort festlegen" -#: apps/native/src/components/settings/integration-configs.ts:111 -#: apps/native/src/components/settings/integration-configs.ts:129 -#: apps/web/src/components/settings/integration-configs.tsx:247 -#: apps/web/src/components/settings/integration-configs.tsx:287 +#: apps/native/src/components/settings/integration-configs.ts:106 +#: apps/native/src/components/settings/integration-configs.ts:124 +#: apps/web/src/components/settings/integration-configs.tsx:221 +#: apps/web/src/components/settings/integration-configs.tsx:258 msgid "Set your preferred quality profile and root folder" -msgstr "" +msgstr "Bevorzugtes Qualitätsprofil und Stammordner festlegen" -#: apps/native/src/components/header-avatar.tsx:63 -#: apps/web/src/components/nav-bar.tsx:250 -#: apps/web/src/components/nav-bar.tsx:292 -#: apps/web/src/components/settings/settings-shell.tsx:36 +#: apps/native/src/components/header-avatar.tsx:55 +#: apps/web/src/components/nav-bar.tsx:236 +#: apps/web/src/components/nav-bar.tsx:278 +#: apps/web/src/components/settings/settings-shell.tsx:30 msgid "Settings" -msgstr "" +msgstr "Einstellungen" -#: apps/native/src/components/settings/integration-card.tsx:319 -#: apps/web/src/components/settings/integration-card.tsx:288 +#: apps/native/src/components/settings/integration-card.tsx:271 +#: apps/web/src/components/settings/integration-card.tsx:248 msgid "Setup instructions" -msgstr "" +msgstr "Einrichtungsanleitung" -#: apps/web/src/routes/setup.tsx:98 +#: apps/web/src/routes/setup.tsx:95 msgid "Setup required" -msgstr "" +msgstr "Einrichtung erforderlich" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Show less" -msgstr "" +msgstr "Weniger anzeigen" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 msgid "Show more" -msgstr "" +msgstr "Mehr anzeigen" -#: apps/web/src/components/auth-form.tsx:249 -#: apps/web/src/components/auth-form.tsx:283 +#: apps/web/src/components/auth-form.tsx:233 +#: apps/web/src/components/auth-form.tsx:264 msgid "Sign in" -msgstr "" +msgstr "Anmelden" -#: apps/native/src/app/(auth)/login.tsx:205 -#: apps/web/src/components/landing-page.tsx:167 +#: apps/native/src/app/(auth)/login.tsx:183 +#: apps/web/src/components/landing-page.tsx:168 msgid "Sign In" -msgstr "" +msgstr "Anmelden" #: apps/web/src/routes/_auth/register.tsx:45 msgid "Sign in instead" -msgstr "" +msgstr "Stattdessen anmelden" -#: apps/native/src/app/(auth)/login.tsx:91 -#: apps/web/src/components/auth-form.tsx:119 +#: apps/native/src/app/(auth)/login.tsx:86 +#: apps/web/src/components/auth-form.tsx:116 msgid "Sign in to continue" -msgstr "" +msgstr "Anmelden, um fortzufahren" #. placeholder {0}: authConfig.data?.oidcProviderName ?? "SSO" #. placeholder {0}: authConfig?.oidcProviderName || "SSO" -#: apps/native/src/app/(auth)/login.tsx:108 -#: apps/web/src/components/auth-form.tsx:145 +#: apps/native/src/app/(auth)/login.tsx:100 +#: apps/web/src/components/auth-form.tsx:142 msgid "Sign in with {0}" -msgstr "" +msgstr "Mit {0} anmelden" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 -#: apps/native/src/components/header-avatar.tsx:87 -#: apps/web/src/components/nav-bar.tsx:262 -#: apps/web/src/components/settings/account-section.tsx:354 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:356 +#: apps/native/src/components/header-avatar.tsx:79 +#: apps/web/src/components/nav-bar.tsx:248 +#: apps/web/src/components/settings/account-section.tsx:328 msgid "Sign out" -msgstr "" +msgstr "Abmelden" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:209 -#: apps/native/src/components/header-avatar.tsx:70 -#: apps/native/src/components/header-avatar.tsx:73 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:204 +#: apps/native/src/components/header-avatar.tsx:62 +#: apps/native/src/components/header-avatar.tsx:65 msgid "Sign Out" -msgstr "" +msgstr "Abmelden" -#: apps/native/src/app/change-password.tsx:199 -#: apps/web/src/components/settings/account-section.tsx:499 +#: apps/native/src/app/change-password.tsx:193 +#: apps/web/src/components/settings/account-section.tsx:471 msgid "Sign out of other sessions" -msgstr "" +msgstr "Von anderen Sitzungen abmelden" -#: apps/web/src/components/settings/imports-section.tsx:922 +#: apps/web/src/components/settings/imports-section.tsx:880 msgid "Skipped" -msgstr "" +msgstr "Übersprungen" #. placeholder {0}: data.latestVersion -#: apps/web/src/components/update-toast.tsx:19 +#: apps/web/src/components/update-toast.tsx:18 msgid "Sofa v{0} is available" -msgstr "" +msgstr "Sofa v{0} ist verfügbar" #: apps/native/src/components/settings/integration-configs.ts:57 -#: apps/native/src/components/settings/integration-configs.ts:75 -#: apps/native/src/components/settings/integration-configs.ts:95 -#: apps/web/src/components/settings/integration-configs.tsx:86 -#: apps/web/src/components/settings/integration-configs.tsx:147 -#: apps/web/src/components/settings/integration-configs.tsx:208 +#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:133 +#: apps/web/src/components/settings/integration-configs.tsx:186 msgid "Sofa will automatically log movies and episodes when you finish watching them" -msgstr "" +msgstr "Sofa protokolliert Filme und Episoden automatisch, wenn du sie zu Ende gesehen hast" -#: apps/native/src/app/change-password.tsx:81 -#: apps/native/src/app/person/[id].tsx:213 -#: apps/web/src/components/settings/account-section.tsx:417 -#: apps/web/src/routes/__root.tsx:143 +#: apps/native/src/app/change-password.tsx:77 +#: apps/native/src/app/person/[id].tsx:182 +#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/routes/__root.tsx:140 msgid "Something went wrong" -msgstr "" +msgstr "Etwas ist schiefgelaufen" -#: apps/web/src/routes/_app/titles.$id.tsx:118 +#: apps/web/src/routes/_app/titles.$id.tsx:113 msgid "Something went wrong while loading this title. Please try again." -msgstr "" +msgstr "Beim Laden dieses Titels ist etwas schiefgelaufen. Bitte versuche es erneut." #: apps/native/src/lib/query-client.ts:33 -#: apps/web/src/lib/orpc/client.ts:14 +#: apps/web/src/lib/orpc/client.ts:15 msgid "Something went wrong…" -msgstr "" +msgstr "Etwas ist schiefgelaufen..." -#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/native/src/components/settings/integration-configs.ts:100 msgid "Sonarr List URL" -msgstr "" +msgstr "Sonarr-Listen-URL" #: apps/web/src/components/dashboard/stats-section.tsx:42 msgid "Start exploring" -msgstr "" +msgstr "Jetzt entdecken" -#: apps/native/src/app/(tabs)/(home)/index.tsx:142 +#: apps/native/src/app/(tabs)/(home)/index.tsx:126 msgid "Start tracking movies and shows" -msgstr "" +msgstr "Filme und Serien tracken" -#: apps/web/src/components/auth-form.tsx:117 +#: apps/web/src/components/auth-form.tsx:114 msgid "Start tracking your watches" -msgstr "" +msgstr "Verfolge deine Sehgewohnheiten" -#: apps/web/src/components/settings/backup-schedule-section.tsx:388 +#: apps/web/src/components/settings/backup-schedule-section.tsx:347 msgid "Starting at" -msgstr "" +msgstr "Startzeit" -#: apps/web/src/components/settings/imports-section.tsx:888 +#: apps/web/src/components/settings/imports-section.tsx:846 msgid "Starting import..." -msgstr "" +msgstr "Import wird gestartet..." -#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/hooks/use-title-actions.ts:64 msgid "Status updated" -msgstr "" +msgstr "Status aktualisiert" -#: apps/web/src/components/settings/system-health-section.tsx:595 +#: apps/web/src/components/settings/system-health-section.tsx:543 msgid "Storage" -msgstr "" +msgstr "Speicher" -#: apps/web/src/components/titles/title-availability.tsx:137 +#: apps/web/src/components/titles/title-availability.tsx:113 msgid "Stream" -msgstr "" +msgstr "Streamen" -#: apps/web/src/components/settings/backup-schedule-section.tsx:96 +#: apps/web/src/components/settings/backup-schedule-section.tsx:93 msgid "Sunday" -msgstr "" +msgstr "Sonntag" #. placeholder {0}: info.name -#: apps/web/src/components/settings/language-section.tsx:69 +#: apps/web/src/components/settings/language-section.tsx:59 msgid "Switch to {0}" -msgstr "" +msgstr "Zu {0} wechseln" -#: apps/native/src/app/+not-found.tsx:30 +#: apps/native/src/app/+not-found.tsx:28 msgid "The page you're looking for doesn't exist." -msgstr "" +msgstr "Die gesuchte Seite existiert nicht." -#: apps/web/src/routes/_app/people.$id.tsx:55 +#: apps/web/src/routes/_app/people.$id.tsx:53 msgid "The person you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "Die gesuchte Person existiert nicht oder wurde möglicherweise aus der Datenbank entfernt." -#: apps/web/src/routes/_app/titles.$id.tsx:149 +#: apps/web/src/routes/_app/titles.$id.tsx:142 msgid "The title you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "Der gesuchte Titel existiert nicht oder wurde möglicherweise aus der Datenbank entfernt." -#: apps/web/src/components/settings/imports-section.tsx:866 +#: apps/web/src/components/settings/imports-section.tsx:825 msgid "This may take a few minutes for large libraries. Please don't close this tab." -msgstr "" +msgstr "Dies kann bei großen Bibliotheken einige Minuten dauern. Bitte schließe diesen Tab nicht." -#: apps/web/src/components/dashboard/stats-display.tsx:146 +#: apps/web/src/components/dashboard/stats-display.tsx:135 msgid "This Month" -msgstr "" +msgstr "Diesen Monat" -#: apps/web/src/routes/__root.tsx:104 +#: apps/web/src/routes/__root.tsx:101 msgid "This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay." -msgstr "" +msgstr "Diese Seite ist auf dem Schneidetisch gelandet. Sie wurde möglicherweise verschoben, entfernt oder hat es nie über das Drehbuch hinaus geschafft." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:606 -#: apps/web/src/routes/_app/settings.tsx:75 -#: apps/web/src/routes/setup.tsx:187 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:557 +#: apps/web/src/routes/_app/settings.tsx:76 +#: apps/web/src/routes/setup.tsx:180 msgid "This product uses the TMDB API but is not endorsed or certified by TMDB." -msgstr "" +msgstr "Dieses Produkt verwendet die TMDB-API, wird jedoch nicht von TMDB unterstützt oder zertifiziert." -#: apps/web/src/components/dashboard/stats-display.tsx:145 +#: apps/web/src/components/dashboard/stats-display.tsx:134 msgid "This Week" -msgstr "" +msgstr "Diese Woche" -#: apps/web/src/components/settings/danger-section.tsx:163 +#: apps/web/src/components/settings/danger-section.tsx:146 msgid "This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed." -msgstr "" +msgstr "Dadurch werden alle gecachten TMDB-Bilder von der Festplatte gelöscht. Bilder werden bei Bedarf automatisch neu heruntergeladen." -#: apps/web/src/components/settings/danger-section.tsx:205 +#: apps/web/src/components/settings/danger-section.tsx:179 msgid "This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed." -msgstr "" +msgstr "Dadurch werden alle nicht angereicherten Platzhaltertitel und gecachten Bilder von der Festplatte gelöscht. Alles wird bei Bedarf erneut importiert und heruntergeladen." -#: apps/web/src/components/settings/danger-section.tsx:120 +#: apps/web/src/components/settings/danger-section.tsx:112 msgid "This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again." -msgstr "" +msgstr "Dadurch werden nicht angereicherte Platzhaltertitel, die in keiner Bibliothek vorhanden sind, und verwaiste Personeneinträge bereinigt. Gelöschte Titel werden bei erneutem Zugriff wieder importiert." -#: apps/native/src/components/settings/integration-card.tsx:136 +#: apps/native/src/components/settings/integration-card.tsx:124 msgid "This will invalidate the current {label} URL. You'll need to update it in {label}." -msgstr "" +msgstr "Dadurch wird die aktuelle {label}-URL ungültig. Du musst sie in {label} aktualisieren." -#: apps/web/src/components/titles/title-seasons.tsx:125 +#: apps/web/src/components/titles/title-seasons.tsx:119 msgid "This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons." -msgstr "" +msgstr "Dadurch werden alle Episoden dieser Serie als gesehen markiert. Du kannst dies später rückgängig machen, indem du einzelne Staffeln abwählst." #. placeholder {0}: formatBackupDate(backup.createdAt) -#: apps/web/src/components/settings/backup-section.tsx:259 +#: apps/web/src/components/settings/backup-section.tsx:231 msgid "This will permanently delete the backup from <0>{0}. This cannot be undone." -msgstr "" +msgstr "Dadurch wird das Backup vom <0>{0} dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden." -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:61 -#: apps/native/src/components/search/recently-viewed-list.tsx:35 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "This will remove all items from your history." -msgstr "" +msgstr "Dadurch werden alle Einträge aus deinem Verlauf entfernt." -#: apps/web/src/components/settings/backup-restore-section.tsx:92 +#: apps/web/src/components/settings/backup-restore-section.tsx:86 msgid "This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore." -msgstr "" +msgstr "Dadurch wird deine gesamte Datenbank durch die hochgeladene Datei ersetzt. Zuerst wird ein Sicherheits-Backup deiner aktuellen Daten erstellt. Aktive Sitzungen müssen nach der Wiederherstellung möglicherweise neu geladen werden." -#: apps/web/src/components/dashboard/stats-display.tsx:147 +#: apps/web/src/components/dashboard/stats-display.tsx:136 msgid "This Year" -msgstr "" +msgstr "Dieses Jahr" -#: apps/web/src/components/settings/backup-schedule-section.tsx:100 +#: apps/web/src/components/settings/backup-schedule-section.tsx:97 msgid "Thursday" -msgstr "" +msgstr "Donnerstag" -#: apps/web/src/components/settings/backup-schedule-section.tsx:390 +#: apps/web/src/components/settings/backup-schedule-section.tsx:349 msgid "Time:" -msgstr "" +msgstr "Uhrzeit:" -#: apps/native/src/app/title/[id].tsx:251 -#: apps/web/src/routes/_app/titles.$id.tsx:146 +#: apps/native/src/app/title/[id].tsx:235 +#: apps/web/src/routes/_app/titles.$id.tsx:139 msgid "Title not found" -msgstr "" +msgstr "Titel nicht gefunden" -#: apps/native/src/components/settings/integration-configs.ts:131 -#: apps/web/src/components/settings/integration-configs.tsx:290 +#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/web/src/components/settings/integration-configs.tsx:261 msgid "Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)" -msgstr "" +msgstr "Titel auf deiner Sofa-Merkliste werden automatisch zum Download hinzugefügt, wenn Radarr diese Liste abruft (standardmäßig alle 12 Stunden)" -#: apps/native/src/components/settings/integration-configs.ts:113 -#: apps/web/src/components/settings/integration-configs.tsx:250 +#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/web/src/components/settings/integration-configs.tsx:224 msgid "Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)" -msgstr "" +msgstr "Titel auf deiner Sofa-Merkliste werden automatisch zum Download hinzugefügt, wenn Sonarr diese Liste abruft (standardmäßig alle 6 Stunden)" -#: apps/web/src/components/dashboard/stats-display.tsx:144 +#: apps/web/src/components/dashboard/stats-display.tsx:133 msgid "Today" -msgstr "" +msgstr "Heute" -#: apps/web/src/components/settings/update-check-section.tsx:71 +#: apps/web/src/components/settings/update-check-section.tsx:62 msgid "Toggle automatic update checks" -msgstr "" +msgstr "Automatische Update-Prüfung umschalten" -#: apps/web/src/components/settings/registration-section.tsx:69 +#: apps/web/src/components/settings/registration-section.tsx:62 msgid "Toggle open registration" -msgstr "" +msgstr "Offene Registrierung umschalten" -#: apps/web/src/components/settings/backup-schedule-section.tsx:290 +#: apps/web/src/components/settings/backup-schedule-section.tsx:257 msgid "Toggle scheduled backups" -msgstr "" +msgstr "Geplante Backups umschalten" -#: apps/web/src/components/landing-page.tsx:131 +#: apps/web/src/components/landing-page.tsx:132 msgid "Track what you watch. Know what's next.<0/>Your library, your data, your rules." -msgstr "" +msgstr "Verfolge, was du schaust. Wisse, was als Nächstes kommt.<0/>Deine Bibliothek, deine Daten, deine Regeln." -#: apps/web/src/components/titles/trailer-dialog.tsx:37 -#: apps/web/src/components/titles/trailer-dialog.tsx:41 +#: apps/web/src/components/titles/trailer-dialog.tsx:38 +#: apps/web/src/components/titles/trailer-dialog.tsx:42 msgid "Trailer" msgstr "" -#: apps/web/src/components/explore/hero-banner.tsx:78 +#: apps/web/src/components/explore/hero-banner.tsx:70 msgid "Trending today" -msgstr "" +msgstr "Heute im Trend" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:95 -#: apps/web/src/components/explore/explore-client.tsx:112 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:77 +#: apps/web/src/components/explore/explore-client.tsx:108 msgid "Trending Today" -msgstr "" +msgstr "Heute im Trend" -#: apps/web/src/components/settings/system-health-section.tsx:537 +#: apps/web/src/components/settings/system-health-section.tsx:488 msgid "Trigger job" -msgstr "" +msgstr "Aufgabe auslösen" -#: apps/web/src/routes/__root.tsx:159 +#: apps/web/src/routes/__root.tsx:156 msgid "Try again" -msgstr "" +msgstr "Erneut versuchen" -#: apps/web/src/components/settings/backup-schedule-section.tsx:98 +#: apps/web/src/components/settings/backup-schedule-section.tsx:95 msgid "Tuesday" -msgstr "" +msgstr "Dienstag" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:98 -#: apps/web/src/components/explore/hero-banner.tsx:64 -#: apps/web/src/components/people/filmography-grid.tsx:60 -#: apps/web/src/components/titles/title-hero.tsx:153 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:59 +#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/web/src/components/titles/title-hero.tsx:148 msgid "TV" -msgstr "" +msgstr "Serie" -#: apps/web/src/components/settings/system-health-section.tsx:334 +#: apps/web/src/components/settings/system-health-section.tsx:307 msgid "TV episodes" -msgstr "" +msgstr "TV-Episoden" -#: apps/native/src/components/search/search-result-row.tsx:37 +#: apps/native/src/components/search/search-result-row.tsx:34 msgid "TV show" -msgstr "" +msgstr "Serie" -#: apps/web/src/components/settings/system-health-section.tsx:656 +#: apps/web/src/components/settings/system-health-section.tsx:601 msgid "unknown" -msgstr "" +msgstr "unbekannt" -#: apps/web/src/components/settings/backup-schedule-section.tsx:256 -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "unlimited" -msgstr "" +msgstr "unbegrenzt" -#: apps/web/src/components/settings/system-health-section.tsx:273 +#: apps/web/src/components/settings/system-health-section.tsx:253 msgid "Unreachable" -msgstr "" +msgstr "Nicht erreichbar" -#: apps/web/src/components/titles/title-seasons.tsx:340 +#: apps/web/src/components/titles/title-seasons.tsx:318 msgid "Untitled" -msgstr "" +msgstr "Ohne Titel" -#: apps/web/src/components/titles/title-seasons.tsx:221 +#: apps/web/src/components/titles/title-seasons.tsx:205 msgid "Unwatch all" -msgstr "" +msgstr "Alle als ungesehen markieren" #. placeholder {0}: season.name ?? t`Season ${season.seasonNumber}` -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Unwatched all of {0}" -msgstr "" +msgstr "Alle Episoden von {0} als ungesehen markiert" -#: apps/web/src/components/titles/use-title-actions.ts:174 +#: apps/web/src/components/titles/use-title-actions.ts:156 msgid "Unwatched S{seasonNum} E{epNum}" -msgstr "" +msgstr "S{seasonNum} E{epNum} als ungesehen markiert" -#: apps/native/src/components/titles/continue-watching-banner.tsx:79 -#: apps/web/src/components/dashboard/continue-watching-card.tsx:77 +#: apps/native/src/components/titles/continue-watching-banner.tsx:72 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:63 msgid "Up next" -msgstr "" +msgstr "Als Nächstes" #. placeholder {0}: updateCheck.data.updateCheck.latestVersion -#: apps/native/src/app/(tabs)/(settings)/index.tsx:528 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:496 msgid "Update available: {0}" -msgstr "" +msgstr "Update verfügbar: {0}" -#: apps/web/src/components/settings/system-health-section.tsx:337 +#: apps/web/src/components/settings/system-health-section.tsx:310 msgid "Update check" -msgstr "" +msgstr "Update-Prüfung" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks disabled" -msgstr "" +msgstr "Update-Prüfung deaktiviert" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks enabled" -msgstr "" +msgstr "Update-Prüfung aktiviert" -#: apps/web/src/components/settings/account-section.tsx:84 +#: apps/web/src/components/settings/account-section.tsx:76 msgid "Update failed" -msgstr "" +msgstr "Aktualisierung fehlgeschlagen" -#: apps/web/src/components/settings/account-section.tsx:509 +#: apps/web/src/components/settings/account-section.tsx:481 msgid "Update password" -msgstr "" +msgstr "Passwort aktualisieren" -#: apps/native/src/app/change-password.tsx:218 +#: apps/native/src/app/change-password.tsx:212 msgid "Update Password" -msgstr "" +msgstr "Passwort aktualisieren" -#: apps/web/src/components/settings/backup-restore-section.tsx:134 -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Upload" -msgstr "" +msgstr "Hochladen" -#: apps/web/src/components/settings/backup-restore-section.tsx:62 +#: apps/web/src/components/settings/backup-restore-section.tsx:60 msgid "Upload a .db file to replace the current database. A safety backup is created first." -msgstr "" +msgstr "Lade eine .db-Datei hoch, um die aktuelle Datenbank zu ersetzen. Zuerst wird ein Sicherheits-Backup erstellt." #. placeholder {0}: config.accept #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:637 +#: apps/web/src/components/settings/imports-section.tsx:603 msgid "Upload a {0} export from your {1} account settings." -msgstr "" +msgstr "Lade einen {0}-Export aus deinen {1}-Kontoeinstellungen hoch." -#: apps/web/src/components/settings/imports-section.tsx:634 +#: apps/web/src/components/settings/imports-section.tsx:600 msgid "Upload export file" -msgstr "" +msgstr "Exportdatei hochladen" -#: apps/web/src/components/settings/account-section.tsx:112 +#: apps/web/src/components/settings/account-section.tsx:104 msgid "Upload failed" -msgstr "" +msgstr "Hochladen fehlgeschlagen" -#: apps/web/src/components/settings/account-section.tsx:241 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Upload picture" -msgstr "" +msgstr "Bild hochladen" -#: apps/web/src/components/settings/account-section.tsx:200 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Upload profile picture" -msgstr "" +msgstr "Profilbild hochladen" -#: apps/native/src/components/settings/integration-card.tsx:129 +#: apps/native/src/components/settings/integration-card.tsx:117 msgid "URL copied to clipboard" -msgstr "" +msgstr "URL in die Zwischenablage kopiert" -#: apps/web/src/components/update-toast.tsx:24 +#: apps/web/src/components/update-toast.tsx:23 msgid "View release" -msgstr "" +msgstr "Version ansehen" -#: apps/web/src/components/settings/imports-section.tsx:699 +#: apps/web/src/components/settings/imports-section.tsx:663 msgid "Waiting for authorization..." -msgstr "" +msgstr "Warte auf Autorisierung..." -#: apps/web/src/components/settings/imports-section.tsx:823 +#: apps/web/src/components/settings/imports-section.tsx:785 msgid "Warnings" -msgstr "" +msgstr "Warnungen" #. placeholder {0}: result.warnings.length -#: apps/web/src/components/settings/imports-section.tsx:948 +#: apps/web/src/components/settings/imports-section.tsx:905 msgid "Warnings ({0})" -msgstr "" +msgstr "Warnungen ({0})" -#: apps/web/src/components/titles/title-seasons.tsx:202 +#: apps/web/src/components/titles/title-seasons.tsx:189 msgid "Watch all" -msgstr "" +msgstr "Alle als gesehen markieren" -#: apps/web/src/components/settings/imports-section.tsx:801 +#: apps/web/src/components/settings/imports-section.tsx:763 msgid "Watch history" -msgstr "" +msgstr "Verlauf" -#: apps/web/src/components/titles/title-availability.tsx:59 +#: apps/web/src/components/titles/title-availability.tsx:46 msgid "Watch on {name}" -msgstr "" +msgstr "Ansehen auf {name}" -#: apps/web/src/components/titles/use-title-actions.ts:298 -#: apps/web/src/components/titles/use-title-actions.ts:307 +#: apps/web/src/components/titles/use-title-actions.ts:277 +#: apps/web/src/components/titles/use-title-actions.ts:286 msgid "Watched all of {seasonLabel}" -msgstr "" +msgstr "Alle Episoden von {seasonLabel} als gesehen markiert" -#: apps/native/src/lib/title-actions.ts:123 +#: apps/native/src/lib/title-actions.ts:119 msgid "Watched all of {seasonName}" -msgstr "" +msgstr "Alle Episoden von {seasonName} als gesehen markiert" -#: apps/web/src/components/titles/use-title-actions.ts:220 -#: apps/web/src/components/titles/use-title-actions.ts:229 +#: apps/web/src/components/titles/use-title-actions.ts:199 +#: apps/web/src/components/titles/use-title-actions.ts:208 msgid "Watched S{seasonNum} E{epNum}" -msgstr "" +msgstr "S{seasonNum} E{epNum} als gesehen markiert" -#: apps/native/src/components/titles/status-action-button.tsx:42 -#: apps/web/src/components/title-card.tsx:72 -#: apps/web/src/components/titles/status-button.tsx:19 +#: apps/native/src/components/titles/status-action-button.tsx:43 +#: apps/web/src/components/title-card.tsx:69 +#: apps/web/src/components/titles/status-button.tsx:14 msgid "Watching" -msgstr "" +msgstr "Am Schauen" -#: apps/native/src/components/titles/status-action-button.tsx:82 -#: apps/web/src/components/settings/imports-section.tsx:781 -#: apps/web/src/components/settings/imports-section.tsx:807 -#: apps/web/src/components/titles/status-button.tsx:55 +#: apps/native/src/components/titles/status-action-button.tsx:78 +#: apps/web/src/components/settings/imports-section.tsx:743 +#: apps/web/src/components/settings/imports-section.tsx:769 +#: apps/web/src/components/titles/status-button.tsx:49 msgid "Watchlist" -msgstr "" +msgstr "Merkliste" -#: apps/native/src/components/titles/status-action-button.tsx:40 +#: apps/native/src/components/titles/status-action-button.tsx:41 msgid "Watchlisted" -msgstr "" +msgstr "Auf Merkliste" -#: apps/native/src/components/settings/integration-configs.ts:50 -#: apps/native/src/components/settings/integration-configs.ts:67 -#: apps/native/src/components/settings/integration-configs.ts:85 +#: apps/native/src/components/settings/integration-configs.ts:51 +#: apps/native/src/components/settings/integration-configs.ts:66 +#: apps/native/src/components/settings/integration-configs.ts:82 msgid "Webhook URL" -msgstr "" +msgstr "Webhook-URL" -#: apps/web/src/components/settings/backup-schedule-section.tsx:99 +#: apps/web/src/components/settings/backup-schedule-section.tsx:96 msgid "Wednesday" -msgstr "" +msgstr "Mittwoch" -#: apps/web/src/components/auth-form.tsx:112 -#: apps/web/src/components/dashboard/welcome-header.tsx:10 +#: apps/web/src/components/auth-form.tsx:110 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back" -msgstr "" +msgstr "Willkommen zurück" -#: apps/web/src/components/dashboard/welcome-header.tsx:8 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back, {name}" -msgstr "" +msgstr "Willkommen zurück, {name}" -#: apps/native/src/app/title/[id].tsx:483 -#: apps/web/src/components/titles/title-availability.tsx:154 +#: apps/native/src/app/title/[id].tsx:430 +#: apps/web/src/components/titles/title-availability.tsx:130 msgid "Where to Watch" -msgstr "" +msgstr "Wo ansehen" -#: apps/web/src/components/titles/title-availability.tsx:141 +#: apps/web/src/components/titles/title-availability.tsx:117 msgid "With Ads" -msgstr "" +msgstr "Mit Werbung" -#: apps/web/src/components/people/person-hero.tsx:75 +#: apps/web/src/components/people/person-hero.tsx:73 msgid "Writer" -msgstr "" +msgstr "Autor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:386 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "You'll be signed out to change the server URL." -msgstr "" +msgstr "Du wirst abgemeldet, um die Server-URL zu ändern." #. placeholder {0}: data.currentVersion -#: apps/web/src/components/update-toast.tsx:20 +#: apps/web/src/components/update-toast.tsx:19 msgid "You're running v{0}." -msgstr "" +msgstr "Du verwendest v{0}." -#: apps/web/src/components/settings/imports-section.tsx:678 +#: apps/web/src/components/settings/imports-section.tsx:642 msgid "Your code:" -msgstr "" +msgstr "Dein Code:" -#: apps/native/src/app/(tabs)/(home)/index.tsx:141 +#: apps/native/src/app/(tabs)/(home)/index.tsx:125 #: apps/web/src/components/dashboard/stats-section.tsx:32 msgid "Your library is empty" -msgstr "" +msgstr "Deine Bibliothek ist leer" -#: apps/native/src/app/(auth)/register.tsx:134 +#: apps/native/src/app/(auth)/register.tsx:121 msgid "Your name" -msgstr "" +msgstr "Dein Name" diff --git a/packages/i18n/src/po/de.ts b/packages/i18n/src/po/de.ts index ef7e47e..60f0c27 100644 --- a/packages/i18n/src/po/de.ts +++ b/packages/i18n/src/po/de.ts @@ -1 +1 @@ -/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Saturday\"],\"+6i0lS\":[\"Retrieving your watch history, watchlist, and ratings...\"],\"+Cv+V9\":[\"Remove from library\"],\"+JkEpu\":[\"This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay.\"],\"+K0AvT\":[\"Disconnect\"],\"+N0l5/\":[\"Connected to <0>\",[\"serverHost\"],\". Tap to change.\"],\"+gLHYi\":[\"Failed to load title\"],\"+j1ex/\":[\"Failed to remove from library\"],\"+nF1ZO\":[\"Remove Photo\"],\"/+6dvC\":[\"Errors (\",[\"0\"],\")\"],\"/BBXeA\":[\"Connecting to server...\"],\"/DwR+n\":[\"Creating…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Watch all\"],\"/gQXGv\":[\"Failed to update status\"],\"/nT6AE\":[\"New password\"],\"/sHc1/\":[\"Update check\"],\"0+dyau\":[\"Failed to update retention setting\"],\"0BFJKK\":[\"Authorization was denied. Please try again.\"],\"0GHb20\":[\"Purge metadata cache?\"],\"0IBW21\":[\"Failed to purge caches\"],\"0gH/sc\":[\"Remove profile picture\"],\"1+P9RR\":[\"Switch to \",[\"0\"]],\"12cc1j\":[\"Watching\"],\"12lVOl\":[\"Self-hosted movie & TV tracker\"],\"1B4z0M\":[\"Filmography\"],\"1J4Ek0\":[\"Automatically back up your database on a schedule\"],\"1JhxXW\":[\"Episode \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Import options\"],\"1Qz4uG\":[\"Enable the \\\"Playback\\\" event category\"],\"1hMWR6\":[\"Create account\"],\"1jHIjh\":[\"Watched all of \",[\"seasonName\"]],\"1vSYsG\":[\"Download backup\"],\"1wL1tj\":[\"TV show\"],\"2FletP\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" person\"],\"other\":[\"#\",\" persons\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\" (\",[\"freed\"],\" freed)\"],\"2Fsd9r\":[\"This Month\"],\"2MPcep\":[\"Import complete\"],\"2Mu33Z\":[\"Cache management\"],\"2POOFK\":[\"Free\"],\"2Pt2NY\":[\"This will remove all items from your history.\"],\"2fCpt5\":[\"Return home\"],\"2pPBp6\":[\"Trending today\"],\"39y5bn\":[\"Friday\"],\"3Blefz\":[\"Ratings\"],\"3JTlG8\":[\"Recent Searches\"],\"3Jy8bM\":[\"Movies \",[\"select\"]],\"3L9OuQ\":[\"Episode \",[\"0\"]],\"3T8ziB\":[\"Create an account\"],\"3hELxX\":[\"Enter your Sofa server URL to get started\"],\"4fxLkp\":[\"Open Sonarr, go to <0>Settings > Import Lists\"],\"4kpBqM\":[\"Last event \",[\"0\"]],\"4uUjVO\":[\"Producer\"],\"4x+A56\":[\"Anonymous usage reporting\"],\"5IShvp\":[\"Import \",[\"totalItems\"],\" items\"],\"5IYJSv\":[\"Explore titles\"],\"5Y4mym\":[\"Import from \",[\"0\"]],\"5ZzgbQ\":[\"Connect \",[\"0\"]],\"5fEnbK\":[\"Failed to update scheduled backup setting\"],\"5lWFkC\":[\"Sign in\"],\"5v9C16\":[\"Connected to \",[\"source\"]],\"623bR4\":[\"Failed to trigger job\"],\"6HN0yh\":[\"Open Plex, go to Settings > Webhooks\"],\"6TNjOJ\":[\"Failed to update rating\"],\"6TfUy6\":[\"last \",[\"value\"]],\"6V3Ea3\":[\"Copied\"],\"6YtxFj\":[\"Name\"],\"6exX+8\":[\"Regenerate\"],\"6gRgw8\":[\"Retry\"],\"6lGV3K\":[\"Show less\"],\"76++pR\":[\"Warnings\"],\"77DIAu\":[\"Go to Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Failed\"],\"7D50KC\":[[\"label\"],\" disconnected\"],\"7GfM5w\":[\"Recently Viewed\"],\"7L01XJ\":[\"Actions\"],\"7eMo+U\":[\"Go Home\"],\"7p5kLi\":[\"Dashboard\"],\"85eoJ1\":[\"Schedule updated\"],\"8B9E2D\":[\"Day:\"],\"8YwF1J\":[\"Go to <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Password\"],\"8tjQCz\":[\"Explore\"],\"8vNtLy\":[\"Paste the Radarr URL above into the List URL field\"],\"8wYDMp\":[\"Already have an account?\"],\"9AE3vb\":[\"Open Plex, go to <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"Import is still running in the background. Check back later.\"],\"9NyAH9\":[\"Skipped\"],\"9Xhrps\":[\"Failed to connect\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Welcome back\"],\"9rG25a\":[\"Server URL\"],\"A+0rLe\":[\"Marked as completed\"],\"AOHgZp\":[\"Episodes\"],\"AOddWK\":[\"Connect \",[\"label\"]],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Environment\"],\"Acf6vF\":[\"Save name\"],\"AdoUfN\":[\"Failed to add to watchlist\"],\"AeXO77\":[\"Account\"],\"AjtYj0\":[\"On Watchlist\"],\"Avee+B\":[\"Failed to update name\"],\"B2R3xD\":[\"Toggle scheduled backups\"],\"BEVzjL\":[\"Import failed\"],\"BQnS5I\":[\"Open \",[\"source\"],\" to enter code\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup\"],\"other\":[\"backups\"]}],\" stored\"],\"BpttUI\":[\"Trending Today\"],\"BrrIs8\":[\"Storage\"],\"BskWMl\":[\"Unreachable\"],\"BzEFor\":[\"or\"],\"CGDHFb\":[\"Add a <0>Generic Destination and paste the URL above\"],\"CGExDN\":[\"Failed to purge image cache\"],\"CHeXFE\":[\"Status updated\"],\"CKyk7Q\":[\"Go back\"],\"CaB/+I\":[\"Welcome back, \",[\"name\"]],\"CodnUh\":[\"Removed from library\"],\"CpzGJY\":[\"This may take a few minutes for large libraries. Please don't close this tab.\"],\"CuPxpd\":[\"Requires an active <0>Plex Pass<1/> subscription.\"],\"CzBN6D\":[\"Start exploring\"],\"D+R2Xs\":[\"Starting import...\"],\"D3C4Yx\":[\"Current password is required\"],\"DBC3t5\":[\"Sunday\"],\"DI4lqs\":[\"Person not found\"],\"DKBbJf\":[\"Added \\\"\",[\"titleName\"],\"\\\" to watchlist\"],\"DPfwMq\":[\"Done\"],\"DZse/o\":[\"Add a \\\"Generic Destination\\\" and paste the URL above\"],\"E/QGRL\":[\"Disabled\"],\"E6nRW7\":[\"Copy URL\"],\"EWQlBH\":[\"Your library is empty\"],\"EWaCfj\":[\"Enter your current password and choose a new one.\"],\"Eeo/Gy\":[\"Failed to update setting\"],\"Efn6WU\":[\"This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed.\"],\"Etp5if\":[\"Finished importing from \",[\"source\"],\".\"],\"F006BN\":[\"Import from \",[\"source\"]],\"FNvDMc\":[\"This Week\"],\"FWSp+7\":[\"Enter the code below on \",[\"source\"],\"'s website to authorize Sofa.\"],\"FXN0ro\":[\"Recommendations\"],\"FaU7Ag\":[\"Enable the \\\"Playback Stop\\\" notification type\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Actor\"],\"FwRqjE\":[\"Image cache and backup disk usage\"],\"G00fgM\":[\"last \",[\"n\"]],\"G3myU+\":[\"Tuesday\"],\"GcCthe\":[\"In Library\"],\"Gf39AA\":[[\"0\"],\" triggered\"],\"GnhfWw\":[\"Toggle automatic update checks\"],\"GptGxg\":[\"Change password\"],\"GqTZ+S\":[\"Rated \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"GrdN/F\":[\"Caught up — marked \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" as watched\"],\"H4B5LG\":[\"This product uses the TMDB API but is not endorsed or certified by TMDB.\"],\"HBRd5n\":[\"Season \",[\"0\"]],\"HD+aQ7\":[\"Database backups\"],\"HG+31u\":[\"Purge all caches?\"],\"Haz+72\":[\"This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed.\"],\"HbReP5\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as completed\"],\"Hg6o8v\":[\"Refresh system health\"],\"HmEjnC\":[\"Last event \",[\"timeAgo\"]],\"HvDfH/\":[\"Imported\"],\"I89uD4\":[\"Restoring…\"],\"IRoxQm\":[\"Registration closed\"],\"IS0nrP\":[\"Create Account\"],\"IY9rQ0\":[\"Free up disk space by clearing cached metadata and images\"],\"IrC12v\":[\"Application\"],\"J28zul\":[\"Connecting...\"],\"J64cFL\":[\"Library refresh\"],\"JKmmmN\":[\"Added to watchlist\"],\"JN0f/Y\":[\"Connect to TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirm new password\"],\"JRadFJ\":[\"Start tracking your watches\"],\"JSwq8t\":[\"New account creation is currently disabled.\"],\"JY5Oyv\":[\"Database\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Connecting…\"],\"JwFbe8\":[\"TV\"],\"KDw4GX\":[\"Try again\"],\"KG6681\":[\"Episode watched\"],\"KIS/Sd\":[\"Sign out of other sessions\"],\"KK0ghs\":[\"Image cache\"],\"KVAoFR\":[\"unlimited\"],\"KcXJuc\":[\"Purging...\"],\"KhtG3o\":[\"Update Password\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}]],\"KmWyx0\":[\"Job\"],\"KoF0x6\":[\"age \",[\"age\"]],\"Ksiej9\":[\"Requires an active Plex Pass subscription.\"],\"Kx9NEt\":[\"Invalid token\"],\"Lk6Jb/\":[\"Last polled \",[\"timeAgo\"]],\"LmEEic\":[\"Waiting for authorization...\"],\"LqKH42\":[\"Connect with \",[\"0\"]],\"Lrpjji\":[\"Disconnect \",[\"label\"]],\"Lu6Udx\":[\"Click \\\"+\\\" and select \\\"Custom Lists\\\"\"],\"MDoX++\":[\"Sonarr List URL\"],\"MRBlCJ\":[\"Failed to unmark some episodes\"],\"MUO7w9\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as watched\"],\"MZbQHL\":[\"No results found.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Authorize Sofa to read your \",[\"0\"],\" library. No password shared.\"],\"N40H+G\":[\"All\"],\"N6SFhC\":[\"Sign in instead\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" is available\"],\"N9RF2M\":[\"Click \\\"Add Webhook\\\" and paste the URL above\"],\"NBo4z0\":[\"Click <0>+ and select <1>Custom Lists\"],\"NICUmW\":[\"Director\"],\"NQzPoO\":[\"New backup\"],\"NSxl1l\":[\"More Settings\"],\"NVF43p\":[\"Time:\"],\"NdPMwS\":[\"In Your Library\"],\"NgaPSG\":[\"Failed to update schedule\"],\"O3oNi5\":[\"Email\"],\"OBcj5W\":[\"This will invalidate the current \",[\"label\"],\" URL. You'll need to update it in \",[\"label\"],\".\"],\"OL8hbM\":[\"New password must be at least 8 characters\"],\"ONWvwQ\":[\"Upload\"],\"OPFjyX\":[\"Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog\"],\"OW/+RD\":[\"Watch history\"],\"OZdaTZ\":[\"Person\"],\"OvO76u\":[\"Back to Login\"],\"OvdFIZ\":[\"Season watched\"],\"P2FLLe\":[\"View release\"],\"PBdLfg\":[\"No titles found for this genre.\"],\"PQ3qDa\":[\"Fetching your library data from \",[\"source\"],\"...\"],\"PjNoxI\":[\"Scheduled backup\"],\"Pn2B7/\":[\"Current password\"],\"PnEbL/\":[\"Rated \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"Pwqkdw\":[\"Loading…\"],\"Py87xY\":[\"Authorization succeeded but failed to fetch your library. Please try again.\"],\"Q3MPWA\":[\"Update password\"],\"QHcLEN\":[\"Connected\"],\"QK4UIx\":[\"Mark Watched\"],\"Qjlym2\":[\"Failed to create account\"],\"Qm1NmK\":[\"OR\"],\"Qoq+GP\":[\"Read more\"],\"QphVZW\":[\"Can't reach server\"],\"QqLJHH\":[\"This Year\"],\"R0yu2l\":[\"Catch up\"],\"R4YBui\":[\"Search for movies and TV shows to start tracking\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"RIR15/\":[\"Radarr List URL\"],\"RLe7Vk\":[\"Checking…\"],\"ROq8cl\":[\"Failed to parse file\"],\"RQq8Si\":[\"Registration opened\"],\"S0soqb\":[\"Failed to remove profile picture\"],\"S1McZh\":[\"Failed to upload avatar\"],\"S2ble5\":[[\"0\"],\" movies, \",[\"1\"],\" episodes\"],\"S2qPRR\":[\"Search movies & TV shows…\"],\"SDND4q\":[\"Not configured\"],\"SFdAk9\":[\"Unwatched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Unwatch all\"],\"SbS+Bm\":[\"Regenerate URL\"],\"SlfejT\":[\"Error\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"Up next\"],\"SyPRjk\":[\"Sofa will automatically log movies and episodes when you finish watching them\"],\"T0/7WG\":[\"Next backup \",[\"distance\"]],\"TEaX6q\":[\"Backup deleted\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Profile picture removed\"],\"TqyQQS\":[\"Enable the <0>Playback event category\"],\"Tz0i8g\":[\"Settings\"],\"U+FxtW\":[\"Track what you watch. Know what's next.<0/>Your library, your data, your rules.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Toggle open registration\"],\"UDMjsP\":[\"Quick Actions\"],\"UmQ6Fe\":[\"Purge image cache?\"],\"UtDm3q\":[\"URL copied to clipboard\"],\"V1Kh9Z\":[\"Episodes \",[\"select\"]],\"V6uzvC\":[\"More Like This\"],\"V9CuQ+\":[\"Connect to \",[\"source\"]],\"VAcXNz\":[\"Wednesday\"],\"VKyhZK\":[\"Title not found\"],\"VQvpro\":[\"Paste the Sonarr URL above into the List URL field\"],\"VhMDMg\":[\"Change Password\"],\"Vx0ayx\":[\"Failed to mark some episodes\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recommended\"],\"WMCwmR\":[\"Check for updates\"],\"WP48q2\":[\"Image Cache\"],\"WT1Ibn\":[\"Last run\"],\"Wb3E4g\":[\"Run now\"],\"WgF2UQ\":[\"You're running v\",[\"0\"],\".\"],\"WtWhSi\":[\"Rating removed\"],\"Wy/3II\":[\"Last polled \",[\"0\"]],\"XFCSYs\":[\"Cast\"],\"XN23JY\":[\"This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again.\"],\"XZwihE\":[\"Ready — nothing received yet\"],\"XjTduw\":[\"Upload picture\"],\"YEGzVq\":[\"Failed to connect \",[\"label\"]],\"YErf89\":[\"Failed to purge metadata cache\"],\"YQ768h\":[\"Scene not found\"],\"YiRsXK\":[\"Clear Recently Viewed?\"],\"Yjp1zf\":[\"Don't have a server?\"],\"YqMfa9\":[\"Review what was found and choose what to import.\"],\"ZGUYm0\":[\"Ready — not polled yet\"],\"ZQKLI1\":[\"Danger Zone\"],\"ZVZUoU\":[[\"0\"],\" cached images\"],\"ZWTQ81\":[\"Watch on \",[\"name\"]],\"a3LDKx\":[\"Security\"],\"aLBUiR\":[\"Keeping <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" backups.\"],\"aM0+kY\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" stale title\"],\"other\":[\"#\",\" stale titles\"]}],\" and \",[\"1\",\"plural\",{\"one\":[\"#\",\" orphaned person\"],\"other\":[\"#\",\" orphaned persons\"]}]],\"aO1AxG\":[\"Episode unwatched\"],\"aV/hDI\":[\"Failed to disconnect \",[\"label\"]],\"acbSg0\":[\"Double tap to filter by \",[\"label\"]],\"agE7k4\":[\"Rated \",[\"stars\",\"plural\",{\"one\":[\"#\",\" star\"],\"other\":[\"#\",\" stars\"]}]],\"alPRaV\":[\"Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)\"],\"aourBv\":[\"Scheduled backups enabled\"],\"apLLSU\":[\"Are you sure you want to sign out?\"],\"atc9MA\":[\"Open Emby, go to <0>Settings > Webhooks\"],\"auVUJO\":[\"Restore database?\"],\"ayqfr4\":[[\"label\"],\" URL regenerated\"],\"b/8KCH\":[\"This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons.\"],\"b3Thhd\":[\"Upload failed\"],\"b5DFtH\":[\"Set password\"],\"bHYIks\":[\"Sign Out\"],\"bITrbE\":[\"Purge all\"],\"bNmdjU\":[\"Watchlist\"],\"bTRwag\":[\"Remove from Library\"],\"bXMotV\":[\"Marked as watched\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Page Not Found\"],\"c1ssjI\":[\"Importing from \",[\"source\"]],\"c3b0B0\":[\"Get Started\"],\"c4b9Dm\":[\"No results for \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Go to Dashboard\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" ratings\"],\"cnGeoo\":[\"Delete\"],\"cpE88+\":[\"Create your account\"],\"d/6MoL\":[\"Manage your account and preferences\"],\"dA7BWh\":[\"Requires Emby Server 4.7.9+ and an active Emby Premiere license.\"],\"dEgA5A\":[\"Cancel\"],\"dTZwve\":[\"Marked all episodes as watched\"],\"dUCJry\":[\"Newest\"],\"ddwpAr\":[\"Warnings (\",[\"0\"],\")\"],\"e/ToF5\":[\"Sign in with \",[\"0\"]],\"e9sZMS\":[\"This will permanently delete the backup from <0>\",[\"0\"],\". This cannot be undone.\"],\"eFRooE\":[\"Last run failed\"],\"eM39Om\":[\"Watched all of \",[\"seasonLabel\"]],\"eZjYb8\":[\"Writer\"],\"ecUA8p\":[\"Today\"],\"evBxZy\":[\"Where to Watch\"],\"ezDa1h\":[\"Open docs\"],\"f+m696\":[\"An unexpected error occurred while loading this page. You can try again or head back to the dashboard.\"],\"f/AKdU\":[\"Are you sure you want to disconnect \",[\"label\"],\"? The current URL will stop working.\"],\"f7ax8J\":[\"Open in browser…\"],\"fMPkxb\":[\"Show more\"],\"fNMqNn\":[\"Popular TV Shows\"],\"fObVvy\":[\"Profile picture updated\"],\"fRettQ\":[[\"0\"],\" items\"],\"fUDRF9\":[\"Watchlisted\"],\"fcWrnU\":[\"Sign out\"],\"fgLNSM\":[\"Register\"],\"fsAEqk\":[\"Continue Watching\"],\"fzAeQI\":[\"Registering on \",[\"serverHost\"]],\"g+gBfk\":[\"Parsing...\"],\"g4JYff\":[\"Imported \",[\"0\"],\" items from \",[\"1\"]],\"gKtb5i\":[\"Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)\"],\"gaIAMq\":[\"Remove picture\"],\"gbEEMp\":[\"Delete backup\"],\"gcNLi0\":[\"Update checks enabled\"],\"gmB6oO\":[\"Schedule\"],\"h/T5Yb\":[\"Open registration\"],\"h4yKYk\":[\"Next run\"],\"h7MgpO\":[\"Keyboard Shortcuts\"],\"hTXYdY\":[\"Failed to create backup\"],\"hXYY5Q\":[\"Unwatched all of \",[\"0\"]],\"he3ygx\":[\"Copy\"],\"hjGupC\":[\"Lost connection to import. Check status in settings.\"],\"hlqjFc\":[\"In library\"],\"hou0tP\":[\"Stream\"],\"hty0d5\":[\"Monday\"],\"i0qMbr\":[\"Home\"],\"i9rcQ/\":[\"Movies\"],\"iGma9e\":[\"Update failed\"],\"iSLIjg\":[\"Connect\"],\"iWv3ck\":[\"Failed to catch up\"],\"iXZ09g\":[\"Mark as Completed\"],\"id08cd\":[\"Watched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Add to Library\"],\"ihn4zD\":[\"Search…\"],\"itDEco\":[\"Already have an account? Sign in\"],\"itheEn\":[\"With Ads\"],\"iwCRIF\":[\"You'll be signed out to change the server URL.\"],\"j5GBIy\":[\"Open Radarr, go to Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" backups · last <0/>\"],\"jB3sfe\":[\"Manual backup\"],\"jFnMJ8\":[\"Double tap to clear this filter\"],\"jQsPwL\":[\"Scheduled backups disabled\"],\"jSjGeu\":[[\"0\"],\" items have no external IDs and will be resolved by title search, which may be less accurate.\"],\"jX6Gzg\":[\"This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore.\"],\"jiHVUy\":[\"Pre-restore backup\"],\"k6c41p\":[\"Background jobs\"],\"kBDOjB\":[\"Backup schedule\"],\"kkDQ8m\":[\"Thursday\"],\"klOeIX\":[\"Failed to change password\"],\"ks3XeZ\":[\"Open Sonarr, go to Settings > Import Lists\"],\"kvuCtu\":[\"Something went wrong while loading this title. Please try again.\"],\"kx0s+n\":[\"Results\"],\"l2wcoS\":[\"Last run succeeded\"],\"l3s5ri\":[\"Import\"],\"lCF0wC\":[\"Refresh\"],\"lJ1yo4\":[\"Failed to sign in\"],\"lVqzRx\":[\"Click <0>Add Webhook and paste the URL above\"],\"lXkUEV\":[\"Availability\"],\"lcLe89\":[\"Search for movies, TV shows, or run commands\"],\"lfVyvz\":[\"Add to Watchlist\"],\"llDXYJ\":[\"Backups\"],\"llkZR0\":[\"Could not load integrations\"],\"ln9/n9\":[\"Don't have an account?\"],\"lpIMne\":[\"Passwords do not match\"],\"lqY3WY\":[\"Change Server\"],\"luoodD\":[\"Setup required\"],\"m5WhJy\":[\"Automatic update checks\"],\"mIx58S\":[\"Purge images\"],\"mYBORk\":[\"Movie\"],\"ml9cU0\":[\"Failed to regenerate \",[\"label\"],\" URL\"],\"mqwkjd\":[\"Health status\"],\"mqxHH7\":[\"Go to Explore\"],\"mzI/c+\":[\"Download\"],\"n1ekoW\":[\"Sign In\"],\"n3Pzd7\":[\"Backup created\"],\"nBHvPL\":[\"Cancel editing\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" image\"],\"other\":[\"#\",\" images\"]}]],\"nO0Qnj\":[\"Your code:\"],\"nRP1xx\":[\"Need more help?\"],\"nV1LjT\":[\"Enable the <0>Playback Stop notification type\"],\"nVsE67\":[\"Mark as Watching\"],\"nZ7lF1\":[\"Device code expired. Please try again.\"],\"nbfdhU\":[\"Integrations\"],\"nbmpf9\":[\"Purge metadata\"],\"nnKJTm\":[\"Failed to mark all episodes as watched\"],\"nszbQG\":[\"No backups yet\"],\"nuh/Wq\":[\"Webhook URL\"],\"nwtY4N\":[\"Something went wrong\"],\"oAIA3w\":[\"Search for movies, shows, or people\"],\"oC8IMh\":[\"Search movies, shows, people...\"],\"oNvZcA\":[\"Episodes this week\"],\"oXq+Wr\":[[\"label\"],\" connected\"],\"ogtYkT\":[\"Password updated\"],\"ojtedN\":[\"Open Radarr, go to <0>Settings > Import Lists\"],\"olMi35\":[\"Recommended for You\"],\"p+PZEl\":[\"Here's what's happening with your library\"],\"pAtylB\":[\"Not Found\"],\"pG9pq1\":[\"Deleted \",[\"0\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\", freed \",[\"freed\"]],\"pWWFjv\":[\"Checked <0/>\"],\"ph76H6\":[\"Allow new users to create accounts\"],\"pjgw0N\":[\"Choose how to import your \",[\"0\"],\" data.\"],\"puo3W3\":[\"Redirecting…\"],\"q3GraM\":[\"...and \",[\"0\"],\" more\"],\"q6nrFE\":[\"died at \",[\"age\"]],\"q6pUQ9\":[\"Upload a .db file to replace the current database. A safety backup is created first.\"],\"q8yluz\":[\"Your name\"],\"qA6VR5\":[\"Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license.\"],\"qF2IBM\":[\"Movies this month\"],\"qHbApt\":[\"Failed to load backup schedule settings.\"],\"qLB1zX\":[\"Upload a \",[\"0\"],\" export from your \",[\"1\"],\" account settings.\"],\"qPNzfu\":[\"Update checks disabled\"],\"qWoML/\":[\"Add a new webhook and paste the URL above\"],\"qiOIiY\":[\"Buy\"],\"qn1X6N\":[\"Failed to update registration setting\"],\"qqWcBV\":[\"Completed\"],\"qqeAJM\":[\"Never\"],\"r9aDAY\":[[\"count\"],\" earlier \",[\"count\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" unwatched\"],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Server Health\"],\"rdymVD\":[\"Trigger job\"],\"rtir7c\":[\"unknown\"],\"s0U4ZZ\":[\"TV episodes\"],\"s4vVUm\":[\"Could not load person details\"],\"s9dVME\":[\"Failed to unmark episode\"],\"sGH11W\":[\"Server\"],\"sl/qWH\":[\"Upload profile picture\"],\"sstysK\":[\"Failed to mark episode\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episodes\"],\"t/Ch8S\":[\"Marked as watching\"],\"t/YqKh\":[\"Remove\"],\"tfDRzk\":[\"Save\"],\"tiymc0\":[\"Something went wrong…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"uBAxNB\":[\"Editor\"],\"uBrbSu\":[\"Failed to start \",[\"0\"],\" connection\"],\"uM6jnS\":[\"Restore failed\"],\"uMrJrX\":[\"Admin only\"],\"uswLvZ\":[\"The title you're looking for doesn't exist or may have been removed from the database.\"],\"uxOntd\":[[\"watchedCount\"],\" of \",[\"0\"],\" episodes watched\"],\"v2CA3w\":[\"Change Photo\"],\"v5ipVu\":[\"Mark all episodes as watched?\"],\"vKfeax\":[\"Open Emby, go to Settings > Webhooks\"],\"vXIe7J\":[\"Language\"],\"vuCCZ7\":[\"Failed to parse import data\"],\"vwKERN\":[\"Failed to delete backup\"],\"w8pqsh\":[\"Mark All Watched\"],\"wA7B2T\":[\"New accounts are not being accepted right now. Contact the admin if you need access.\"],\"wGFX13\":[\"Starting at\"],\"wR1UAy\":[\"Popular Movies\"],\"wRWcdL\":[\"Play trailer\"],\"wThGrS\":[\"App Settings\"],\"wZK4Xg\":[\"Never run\"],\"wdLxgL\":[\"Member since \",[\"memberSince\"]],\"wja8aL\":[\"Untitled\"],\"wtGebH\":[\"The person you're looking for doesn't exist or may have been removed from the database.\"],\"wtsbt5\":[\"Add to watchlist\"],\"wtuVU4\":[\"Frequency\"],\"wx7pwA\":[\"Mark as Watched\"],\"x4ZiTl\":[\"Setup instructions\"],\"xCJdfg\":[\"Clear\"],\"xGVfLh\":[\"Continue\"],\"xLoCm2\":[\"Check configuration\"],\"xSrU2g\":[[\"healthyCount\"],\" of \",[\"0\"],\" jobs healthy\"],\"xazqmy\":[\"Seasons\"],\"xbBXhy\":[\"Periodically check GitHub for new Sofa releases\"],\"xrh2/M\":[\"Failed to mark as watched\"],\"y3e9pF\":[\"Delete backup?\"],\"y6Urel\":[\"Next Episode\"],\"yGvjAo\":[\"Update available: \",[\"0\"]],\"yKu/3Y\":[\"Restore\"],\"yYxB17\":[\"Clear all\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Database restored. Reloading...\"],\"ygo0l/\":[\"Start tracking movies and shows\"],\"yvwIbI\":[\"Upload export file\"],\"yz7wBu\":[\"Close\"],\"z1U/Fh\":[\"Rating\"],\"z5evln\":[\"No internet connection\"],\"zAvS8w\":[\"Sign in to continue\"],\"zEqK2w\":[\"The page you're looking for doesn't exist.\"],\"zFkiTv\":[\"Install the Webhook plugin from Jellyfin's plugin catalog\"],\"zNyR4f\":[\"Set your preferred quality profile and root folder\"],\"za8Le/\":[\"Registration Closed\"],\"zb77GC\":[\"Rent\"],\"ztAdhw\":[\"Name updated\"]}")as Messages; \ No newline at end of file +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Samstag\"],\"+6i0lS\":[\"Verlauf, Merkliste und Bewertungen werden abgerufen...\"],\"+Cv+V9\":[\"Aus Bibliothek entfernen\"],\"+JkEpu\":[\"Diese Seite ist auf dem Schneidetisch gelandet. Sie wurde möglicherweise verschoben, entfernt oder hat es nie über das Drehbuch hinaus geschafft.\"],\"+K0AvT\":[\"Trennen\"],\"+N0l5/\":[\"Verbunden mit <0>\",[\"serverHost\"],\". Tippe zum Ändern.\"],\"+gLHYi\":[\"Titel konnte nicht geladen werden\"],\"+j1ex/\":[\"Konnte nicht aus der Bibliothek entfernt werden\"],\"+nF1ZO\":[\"Foto entfernen\"],\"/+6dvC\":[\"Fehler (\",[\"0\"],\")\"],\"/BBXeA\":[\"Verbinde mit Server...\"],\"/DwR+n\":[\"Erstelle...\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Alle als gesehen markieren\"],\"/gQXGv\":[\"Status konnte nicht aktualisiert werden\"],\"/nT6AE\":[\"Neues Passwort\"],\"/sHc1/\":[\"Update-Prüfung\"],\"0+dyau\":[\"Aufbewahrungseinstellung konnte nicht aktualisiert werden\"],\"0BFJKK\":[\"Autorisierung wurde verweigert. Bitte versuche es erneut.\"],\"0GHb20\":[\"Metadaten-Cache leeren?\"],\"0IBW21\":[\"Cache konnte nicht geleert werden\"],\"0gH/sc\":[\"Profilbild entfernen\"],\"1+P9RR\":[\"Zu \",[\"0\"],\" wechseln\"],\"12cc1j\":[\"Am Schauen\"],\"12lVOl\":[\"Selbstgehosteter Film- & Serien-Tracker\"],\"1B4z0M\":[\"Filmografie\"],\"1J4Ek0\":[\"Datenbank automatisch nach Zeitplan sichern\"],\"1JhxXW\":[\"Episode \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Importoptionen\"],\"1Qz4uG\":[\"Ereigniskategorie \\\"Playback\\\" aktivieren\"],\"1hMWR6\":[\"Konto erstellen\"],\"1jHIjh\":[\"Alle Episoden von \",[\"seasonName\"],\" als gesehen markiert\"],\"1vSYsG\":[\"Backup herunterladen\"],\"1wL1tj\":[\"Serie\"],\"2FletP\":[[\"0\",\"plural\",{\"one\":[\"#\",\" Titel\"],\"other\":[\"#\",\" Titel\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" Person\"],\"other\":[\"#\",\" Personen\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" Datei\"],\"other\":[\"#\",\" Dateien\"]}],\" bereinigt (\",[\"freed\"],\" freigegeben)\"],\"2Fsd9r\":[\"Diesen Monat\"],\"2MPcep\":[\"Import abgeschlossen\"],\"2Mu33Z\":[\"Cache-Verwaltung\"],\"2POOFK\":[\"Kostenlos\"],\"2Pt2NY\":[\"Dadurch werden alle Einträge aus deinem Verlauf entfernt.\"],\"2fCpt5\":[\"Zur Startseite\"],\"2pPBp6\":[\"Heute im Trend\"],\"39y5bn\":[\"Freitag\"],\"3Blefz\":[\"Bewertungen\"],\"3JTlG8\":[\"Letzte Suchen\"],\"3Jy8bM\":[\"Filme \",[\"select\"]],\"3L9OuQ\":[\"Episode \",[\"0\"]],\"3T8ziB\":[\"Konto erstellen\"],\"3hELxX\":[\"Gib deine Sofa-Server-URL ein, um loszulegen\"],\"4fxLkp\":[\"Öffne Sonarr, gehe zu <0>Settings > Import Lists\"],\"4kpBqM\":[\"Letztes Ereignis \",[\"0\"]],\"4uUjVO\":[\"Produzent\"],\"4x+A56\":[\"Anonyme Nutzungsberichte\"],\"5IShvp\":[[\"totalItems\"],\" Einträge importieren\"],\"5IYJSv\":[\"Titel entdecken\"],\"5Y4mym\":[\"Von \",[\"0\"],\" importieren\"],\"5ZzgbQ\":[[\"0\"],\" verbinden\"],\"5fEnbK\":[\"Einstellung für geplante Backups konnte nicht aktualisiert werden\"],\"5lWFkC\":[\"Anmelden\"],\"5v9C16\":[\"Verbunden mit \",[\"source\"]],\"623bR4\":[\"Aufgabe konnte nicht ausgelöst werden\"],\"6HN0yh\":[\"Öffne Plex, gehe zu Settings > Webhooks\"],\"6TNjOJ\":[\"Bewertung konnte nicht aktualisiert werden\"],\"6TfUy6\":[\"letzte \",[\"value\"]],\"6V3Ea3\":[\"Kopiert\"],\"6YtxFj\":[\"Name\"],\"6exX+8\":[\"Neu generieren\"],\"6gRgw8\":[\"Erneut versuchen\"],\"6lGV3K\":[\"Weniger anzeigen\"],\"76++pR\":[\"Warnungen\"],\"77DIAu\":[\"Gehe zu Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Fehlgeschlagen\"],\"7D50KC\":[[\"label\"],\" getrennt\"],\"7GfM5w\":[\"Zuletzt angesehen\"],\"7L01XJ\":[\"Aktionen\"],\"7eMo+U\":[\"Zur Startseite\"],\"7p5kLi\":[\"Dashboard\"],\"85eoJ1\":[\"Zeitplan aktualisiert\"],\"8B9E2D\":[\"Tag:\"],\"8YwF1J\":[\"Gehe zu <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Passwort\"],\"8tjQCz\":[\"Entdecken\"],\"8vNtLy\":[\"Füge die obige Radarr-URL in das Feld \\\"List URL\\\" ein\"],\"8wYDMp\":[\"Bereits ein Konto?\"],\"9AE3vb\":[\"Öffne Plex, gehe zu <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"Import läuft noch im Hintergrund. Komm später wieder.\"],\"9NyAH9\":[\"Übersprungen\"],\"9Xhrps\":[\"Verbindung fehlgeschlagen\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Willkommen zurück\"],\"9rG25a\":[\"Server-URL\"],\"A+0rLe\":[\"Als abgeschlossen markiert\"],\"AOHgZp\":[\"Episoden\"],\"AOddWK\":[[\"label\"],\" verbinden\"],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Umgebung\"],\"Acf6vF\":[\"Namen speichern\"],\"AdoUfN\":[\"Konnte nicht zur Merkliste hinzugefügt werden\"],\"AeXO77\":[\"Konto\"],\"AjtYj0\":[\"Auf der Merkliste\"],\"Avee+B\":[\"Name konnte nicht aktualisiert werden\"],\"B2R3xD\":[\"Geplante Backups umschalten\"],\"BEVzjL\":[\"Import fehlgeschlagen\"],\"BQnS5I\":[[\"source\"],\" öffnen, um Code einzugeben\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"Backup\"],\"other\":[\"Backups\"]}],\" gespeichert\"],\"BpttUI\":[\"Heute im Trend\"],\"BrrIs8\":[\"Speicher\"],\"BskWMl\":[\"Nicht erreichbar\"],\"BzEFor\":[\"oder\"],\"CGDHFb\":[\"Füge ein <0>Generic Destination hinzu und füge die URL oben ein\"],\"CGExDN\":[\"Bild-Cache konnte nicht geleert werden\"],\"CHeXFE\":[\"Status aktualisiert\"],\"CKyk7Q\":[\"Zurück\"],\"CaB/+I\":[\"Willkommen zurück, \",[\"name\"]],\"CodnUh\":[\"Aus Bibliothek entfernt\"],\"CpzGJY\":[\"Dies kann bei großen Bibliotheken einige Minuten dauern. Bitte schließe diesen Tab nicht.\"],\"CuPxpd\":[\"Erfordert ein aktives <0>Plex Pass<1/>-Abonnement.\"],\"CzBN6D\":[\"Jetzt entdecken\"],\"D+R2Xs\":[\"Import wird gestartet...\"],\"D3C4Yx\":[\"Aktuelles Passwort ist erforderlich\"],\"DBC3t5\":[\"Sonntag\"],\"DI4lqs\":[\"Person nicht gefunden\"],\"DKBbJf\":[\"\\\"\",[\"titleName\"],\"\\\" zur Merkliste hinzugefügt\"],\"DPfwMq\":[\"Fertig\"],\"DZse/o\":[\"Füge ein \\\"Generic Destination\\\" hinzu und füge die URL oben ein\"],\"E/QGRL\":[\"Deaktiviert\"],\"E6nRW7\":[\"URL kopieren\"],\"EWQlBH\":[\"Deine Bibliothek ist leer\"],\"EWaCfj\":[\"Gib dein aktuelles Passwort ein und wähle ein neues.\"],\"Eeo/Gy\":[\"Einstellung konnte nicht aktualisiert werden\"],\"Efn6WU\":[\"Dadurch werden alle nicht angereicherten Platzhaltertitel und gecachten Bilder von der Festplatte gelöscht. Alles wird bei Bedarf erneut importiert und heruntergeladen.\"],\"Etp5if\":[\"Import von \",[\"source\"],\" abgeschlossen.\"],\"F006BN\":[\"Von \",[\"source\"],\" importieren\"],\"FNvDMc\":[\"Diese Woche\"],\"FWSp+7\":[\"Gib den untenstehenden Code auf der Website von \",[\"source\"],\" ein, um Sofa zu autorisieren.\"],\"FXN0ro\":[\"Empfehlungen\"],\"FaU7Ag\":[\"Benachrichtigungstyp \\\"Playback Stop\\\" aktivieren\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Schauspieler\"],\"FwRqjE\":[\"Speichernutzung für Bild-Cache und Backups\"],\"G00fgM\":[\"letzte \",[\"n\"]],\"G3myU+\":[\"Dienstag\"],\"GcCthe\":[\"In Bibliothek\"],\"Gf39AA\":[[\"0\"],\" ausgelöst\"],\"GnhfWw\":[\"Automatische Update-Prüfung umschalten\"],\"GptGxg\":[\"Passwort ändern\"],\"GqTZ+S\":[[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"Stern\"],\"other\":[\"Sterne\"]}],\" bewertet\"],\"GrdN/F\":[\"Aufgeholt - \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"Episode\"],\"other\":[\"Episoden\"]}],\" als gesehen markiert\"],\"H4B5LG\":[\"Dieses Produkt verwendet die TMDB-API, wird jedoch nicht von TMDB unterstützt oder zertifiziert.\"],\"HBRd5n\":[\"Staffel \",[\"0\"]],\"HD+aQ7\":[\"Datenbank-Backups\"],\"HG+31u\":[\"Alle Caches leeren?\"],\"Haz+72\":[\"Dadurch werden alle gecachten TMDB-Bilder von der Festplatte gelöscht. Bilder werden bei Bedarf automatisch neu heruntergeladen.\"],\"HbReP5\":[\"\\\"\",[\"titleName\"],\"\\\" als abgeschlossen markiert\"],\"Hg6o8v\":[\"Systemstatus aktualisieren\"],\"HmEjnC\":[\"Letztes Ereignis \",[\"timeAgo\"]],\"HvDfH/\":[\"Importiert\"],\"I89uD4\":[\"Stelle wieder her...\"],\"IRoxQm\":[\"Registrierung geschlossen\"],\"IS0nrP\":[\"Konto erstellen\"],\"IY9rQ0\":[\"Speicherplatz freigeben, indem gecachte Metadaten und Bilder gelöscht werden\"],\"IrC12v\":[\"Anwendung\"],\"J28zul\":[\"Verbinde...\"],\"J64cFL\":[\"Bibliothek aktualisieren\"],\"JKmmmN\":[\"Zur Merkliste hinzugefügt\"],\"JN0f/Y\":[\"Mit TMDB verbinden\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Neues Passwort bestätigen\"],\"JRadFJ\":[\"Verfolge deine Sehgewohnheiten\"],\"JSwq8t\":[\"Das Erstellen neuer Konten ist derzeit deaktiviert.\"],\"JY5Oyv\":[\"Datenbank\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Verbinde...\"],\"JwFbe8\":[\"Serie\"],\"KDw4GX\":[\"Erneut versuchen\"],\"KG6681\":[\"Episode als gesehen markiert\"],\"KIS/Sd\":[\"Von anderen Sitzungen abmelden\"],\"KK0ghs\":[\"Bild-Cache\"],\"KVAoFR\":[\"unbegrenzt\"],\"KcXJuc\":[\"Leere...\"],\"KhtG3o\":[\"Passwort aktualisieren\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" Titel\"],\"other\":[\"#\",\" Titel\"]}]],\"KmWyx0\":[\"Aufgabe\"],\"KoF0x6\":[\"Alter \",[\"age\"]],\"Ksiej9\":[\"Erfordert ein aktives Plex Pass-Abonnement.\"],\"Kx9NEt\":[\"Ungültiger Token\"],\"Lk6Jb/\":[\"Zuletzt abgefragt \",[\"timeAgo\"]],\"LmEEic\":[\"Warte auf Autorisierung...\"],\"LqKH42\":[\"Mit \",[\"0\"],\" verbinden\"],\"Lrpjji\":[[\"label\"],\" trennen\"],\"Lu6Udx\":[\"Klicke auf \\\"+\\\" und wähle \\\"Custom Lists\\\"\"],\"MDoX++\":[\"Sonarr-Listen-URL\"],\"MRBlCJ\":[\"Einige Episoden konnten nicht als ungesehen markiert werden\"],\"MUO7w9\":[\"\\\"\",[\"titleName\"],\"\\\" als gesehen markiert\"],\"MZbQHL\":[\"Keine Ergebnisse gefunden.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Sofa autorisieren, deine \",[\"0\"],\"-Bibliothek zu lesen. Kein Passwort wird geteilt.\"],\"N40H+G\":[\"Alle\"],\"N6SFhC\":[\"Stattdessen anmelden\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" ist verfügbar\"],\"N9RF2M\":[\"Klicke auf \\\"Add Webhook\\\" und füge die URL oben ein\"],\"NBo4z0\":[\"Klicke auf <0>+ und wähle <1>Custom Lists\"],\"NICUmW\":[\"Regisseur\"],\"NQzPoO\":[\"Neues Backup\"],\"NSxl1l\":[\"Weitere Einstellungen\"],\"NVF43p\":[\"Uhrzeit:\"],\"NdPMwS\":[\"In deiner Bibliothek\"],\"NgaPSG\":[\"Zeitplan konnte nicht aktualisiert werden\"],\"O3oNi5\":[\"E-Mail\"],\"OBcj5W\":[\"Dadurch wird die aktuelle \",[\"label\"],\"-URL ungültig. Du musst sie in \",[\"label\"],\" aktualisieren.\"],\"OL8hbM\":[\"Das neue Passwort muss mindestens 8 Zeichen lang sein\"],\"ONWvwQ\":[\"Hochladen\"],\"OPFjyX\":[\"<0>Webhook-Plugin<1/> aus dem Jellyfin-Plugin-Katalog installieren\"],\"OW/+RD\":[\"Verlauf\"],\"OZdaTZ\":[\"Person\"],\"OvO76u\":[\"Zurück zur Anmeldung\"],\"OvdFIZ\":[\"Staffel als gesehen markiert\"],\"P2FLLe\":[\"Version ansehen\"],\"PBdLfg\":[\"Keine Titel für dieses Genre gefunden.\"],\"PQ3qDa\":[\"Bibliotheksdaten werden von \",[\"source\"],\" abgerufen...\"],\"PjNoxI\":[\"Geplantes Backup\"],\"Pn2B7/\":[\"Aktuelles Passwort\"],\"PnEbL/\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"Stern\"],\"other\":[\"Sterne\"]}],\" bewertet\"],\"Pwqkdw\":[\"Lade...\"],\"Py87xY\":[\"Autorisierung erfolgreich, aber die Bibliothek konnte nicht abgerufen werden. Bitte versuche es erneut.\"],\"Q3MPWA\":[\"Passwort aktualisieren\"],\"QHcLEN\":[\"Verbunden\"],\"QK4UIx\":[\"Als gesehen markieren\"],\"Qjlym2\":[\"Konto konnte nicht erstellt werden\"],\"Qm1NmK\":[\"ODER\"],\"Qoq+GP\":[\"Mehr lesen\"],\"QphVZW\":[\"Server nicht erreichbar\"],\"QqLJHH\":[\"Dieses Jahr\"],\"R0yu2l\":[\"Aufholen\"],\"R4YBui\":[\"Suche nach Filmen und Serien, um mit dem Tracken zu beginnen\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"Episode\"],\"other\":[\"Episoden\"]}]],\"RIR15/\":[\"Radarr-Listen-URL\"],\"RLe7Vk\":[\"Prüfe...\"],\"ROq8cl\":[\"Datei konnte nicht verarbeitet werden\"],\"RQq8Si\":[\"Registrierung geöffnet\"],\"S0soqb\":[\"Profilbild konnte nicht entfernt werden\"],\"S1McZh\":[\"Profilbild konnte nicht hochgeladen werden\"],\"S2ble5\":[[\"0\"],\" Filme, \",[\"1\"],\" Episoden\"],\"S2qPRR\":[\"Filme & Serien suchen...\"],\"SDND4q\":[\"Nicht konfiguriert\"],\"SFdAk9\":[\"S\",[\"seasonNum\"],\" E\",[\"epNum\"],\" als ungesehen markiert\"],\"SUIUkB\":[\"Alle als ungesehen markieren\"],\"SbS+Bm\":[\"URL neu generieren\"],\"SlfejT\":[\"Fehler\"],\"Sp86ju\":[[\"0\"],\" Ep\",[\"1\"]],\"SrfROI\":[\"Als Nächstes\"],\"SyPRjk\":[\"Sofa protokolliert Filme und Episoden automatisch, wenn du sie zu Ende gesehen hast\"],\"T0/7WG\":[\"Nächstes Backup \",[\"distance\"]],\"TEaX6q\":[\"Backup gelöscht\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Profilbild entfernt\"],\"TqyQQS\":[\"Ereigniskategorie <0>Playback aktivieren\"],\"Tz0i8g\":[\"Einstellungen\"],\"U+FxtW\":[\"Verfolge, was du schaust. Wisse, was als Nächstes kommt.<0/>Deine Bibliothek, deine Daten, deine Regeln.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Offene Registrierung umschalten\"],\"UDMjsP\":[\"Schnellaktionen\"],\"UmQ6Fe\":[\"Bild-Cache leeren?\"],\"UtDm3q\":[\"URL in die Zwischenablage kopiert\"],\"V1Kh9Z\":[\"Episoden \",[\"select\"]],\"V6uzvC\":[\"Ähnliche Titel\"],\"V9CuQ+\":[\"Mit \",[\"source\"],\" verbinden\"],\"VAcXNz\":[\"Mittwoch\"],\"VKyhZK\":[\"Titel nicht gefunden\"],\"VQvpro\":[\"Füge die obige Sonarr-URL in das Feld \\\"List URL\\\" ein\"],\"VhMDMg\":[\"Passwort ändern\"],\"Vx0ayx\":[\"Einige Episoden konnten nicht markiert werden\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Empfohlen\"],\"WMCwmR\":[\"Nach Updates suchen\"],\"WP48q2\":[\"Bild-Cache\"],\"WT1Ibn\":[\"Letzter Lauf\"],\"Wb3E4g\":[\"Jetzt ausführen\"],\"WgF2UQ\":[\"Du verwendest v\",[\"0\"],\".\"],\"WtWhSi\":[\"Bewertung entfernt\"],\"Wy/3II\":[\"Zuletzt abgefragt \",[\"0\"]],\"XFCSYs\":[\"Besetzung\"],\"XN23JY\":[\"Dadurch werden nicht angereicherte Platzhaltertitel, die in keiner Bibliothek vorhanden sind, und verwaiste Personeneinträge bereinigt. Gelöschte Titel werden bei erneutem Zugriff wieder importiert.\"],\"XZwihE\":[\"Bereit - noch nichts empfangen\"],\"XjTduw\":[\"Bild hochladen\"],\"YEGzVq\":[[\"label\"],\" konnte nicht verbunden werden\"],\"YErf89\":[\"Metadaten-Cache konnte nicht geleert werden\"],\"YQ768h\":[\"Szene nicht gefunden\"],\"YiRsXK\":[\"Zuletzt angesehen löschen?\"],\"Yjp1zf\":[\"Noch keinen Server?\"],\"YqMfa9\":[\"Überprüfe die gefundenen Einträge und wähle aus, was importiert werden soll.\"],\"ZGUYm0\":[\"Bereit - noch nicht abgefragt\"],\"ZQKLI1\":[\"Gefahrenzone\"],\"ZVZUoU\":[[\"0\"],\" gecachte Bilder\"],\"ZWTQ81\":[\"Ansehen auf \",[\"name\"]],\"a3LDKx\":[\"Sicherheit\"],\"aLBUiR\":[\"<0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" Backups werden aufbewahrt.\"],\"aM0+kY\":[[\"0\",\"plural\",{\"one\":[\"#\",\" veralteter Titel\"],\"other\":[\"#\",\" veraltete Titel\"]}],\" und \",[\"1\",\"plural\",{\"one\":[\"#\",\" verwaiste Person\"],\"other\":[\"#\",\" verwaiste Personen\"]}],\" bereinigt\"],\"aO1AxG\":[\"Episode als ungesehen markiert\"],\"aV/hDI\":[[\"label\"],\" konnte nicht getrennt werden\"],\"acbSg0\":[\"Doppeltippen zum Filtern nach \",[\"label\"]],\"agE7k4\":[[\"stars\",\"plural\",{\"one\":[\"#\",\" Stern\"],\"other\":[\"#\",\" Sterne\"]}],\" vergeben\"],\"alPRaV\":[\"Titel auf deiner Sofa-Merkliste werden automatisch zum Download hinzugefügt, wenn Radarr diese Liste abruft (standardmäßig alle 12 Stunden)\"],\"aourBv\":[\"Geplante Backups aktiviert\"],\"apLLSU\":[\"Möchtest du dich wirklich abmelden?\"],\"atc9MA\":[\"Öffne Emby, gehe zu <0>Settings > Webhooks\"],\"auVUJO\":[\"Datenbank wiederherstellen?\"],\"ayqfr4\":[[\"label\"],\"-URL neu generiert\"],\"b/8KCH\":[\"Dadurch werden alle Episoden dieser Serie als gesehen markiert. Du kannst dies später rückgängig machen, indem du einzelne Staffeln abwählst.\"],\"b3Thhd\":[\"Hochladen fehlgeschlagen\"],\"b5DFtH\":[\"Passwort festlegen\"],\"bHYIks\":[\"Abmelden\"],\"bITrbE\":[\"Alles leeren\"],\"bNmdjU\":[\"Merkliste\"],\"bTRwag\":[\"Aus Bibliothek entfernen\"],\"bXMotV\":[\"Als gesehen markiert\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Seite nicht gefunden\"],\"c1ssjI\":[\"Importiere von \",[\"source\"]],\"c3b0B0\":[\"Loslegen\"],\"c4b9Dm\":[\"Keine Ergebnisse für \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Zum Dashboard\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" Bewertungen\"],\"cnGeoo\":[\"Löschen\"],\"cpE88+\":[\"Erstelle dein Konto\"],\"d/6MoL\":[\"Konto und Einstellungen verwalten\"],\"dA7BWh\":[\"Erfordert Emby Server 4.7.9+ und eine aktive Emby Premiere-Lizenz.\"],\"dEgA5A\":[\"Abbrechen\"],\"dTZwve\":[\"Alle Episoden als gesehen markiert\"],\"dUCJry\":[\"Neueste\"],\"ddwpAr\":[\"Warnungen (\",[\"0\"],\")\"],\"e/ToF5\":[\"Mit \",[\"0\"],\" anmelden\"],\"e9sZMS\":[\"Dadurch wird das Backup vom <0>\",[\"0\"],\" dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden.\"],\"eFRooE\":[\"Letzter Lauf fehlgeschlagen\"],\"eM39Om\":[\"Alle Episoden von \",[\"seasonLabel\"],\" als gesehen markiert\"],\"eZjYb8\":[\"Autor\"],\"ecUA8p\":[\"Heute\"],\"evBxZy\":[\"Wo ansehen\"],\"ezDa1h\":[\"Dokumentation öffnen\"],\"f+m696\":[\"Beim Laden dieser Seite ist ein unerwarteter Fehler aufgetreten. Du kannst es erneut versuchen oder zum Dashboard zurückkehren.\"],\"f/AKdU\":[\"Möchtest du \",[\"label\"],\" wirklich trennen? Die aktuelle URL wird nicht mehr funktionieren.\"],\"f7ax8J\":[\"Im Browser öffnen...\"],\"fMPkxb\":[\"Mehr anzeigen\"],\"fNMqNn\":[\"Beliebte Serien\"],\"fObVvy\":[\"Profilbild aktualisiert\"],\"fRettQ\":[[\"0\"],\" Einträge\"],\"fUDRF9\":[\"Auf Merkliste\"],\"fcWrnU\":[\"Abmelden\"],\"fgLNSM\":[\"Registrieren\"],\"fsAEqk\":[\"Weiterschauen\"],\"fzAeQI\":[\"Registrierung auf \",[\"serverHost\"]],\"g+gBfk\":[\"Verarbeite...\"],\"g4JYff\":[[\"0\"],\" Einträge von \",[\"1\"],\" importiert\"],\"gKtb5i\":[\"Titel auf deiner Sofa-Merkliste werden automatisch zum Download hinzugefügt, wenn Sonarr diese Liste abruft (standardmäßig alle 6 Stunden)\"],\"gaIAMq\":[\"Bild entfernen\"],\"gbEEMp\":[\"Backup löschen\"],\"gcNLi0\":[\"Update-Prüfung aktiviert\"],\"gmB6oO\":[\"Zeitplan\"],\"h/T5Yb\":[\"Offene Registrierung\"],\"h4yKYk\":[\"Nächster Lauf\"],\"h7MgpO\":[\"Tastaturkürzel\"],\"hTXYdY\":[\"Backup konnte nicht erstellt werden\"],\"hXYY5Q\":[\"Alle Episoden von \",[\"0\"],\" als ungesehen markiert\"],\"he3ygx\":[\"Kopieren\"],\"hjGupC\":[\"Verbindung zum Import verloren. Status in den Einstellungen prüfen.\"],\"hlqjFc\":[\"In Bibliothek\"],\"hou0tP\":[\"Streamen\"],\"hty0d5\":[\"Montag\"],\"i0qMbr\":[\"Startseite\"],\"i9rcQ/\":[\"Filme\"],\"iGma9e\":[\"Aktualisierung fehlgeschlagen\"],\"iSLIjg\":[\"Verbinden\"],\"iWv3ck\":[\"Aufholen fehlgeschlagen\"],\"iXZ09g\":[\"Als abgeschlossen markieren\"],\"id08cd\":[\"S\",[\"seasonNum\"],\" E\",[\"epNum\"],\" als gesehen markiert\"],\"ih87w/\":[\"Zur Bibliothek hinzufügen\"],\"ihn4zD\":[\"Suchen...\"],\"itDEco\":[\"Bereits ein Konto? Anmelden\"],\"itheEn\":[\"Mit Werbung\"],\"iwCRIF\":[\"Du wirst abgemeldet, um die Server-URL zu ändern.\"],\"j5GBIy\":[\"Öffne Radarr, gehe zu Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" Backups · zuletzt <0/>\"],\"jB3sfe\":[\"Manuelles Backup\"],\"jFnMJ8\":[\"Doppeltippen zum Entfernen dieses Filters\"],\"jQsPwL\":[\"Geplante Backups deaktiviert\"],\"jSjGeu\":[[\"0\"],\" Einträge haben keine externen IDs und werden über die Titelsuche gefunden, was weniger genau sein kann.\"],\"jX6Gzg\":[\"Dadurch wird deine gesamte Datenbank durch die hochgeladene Datei ersetzt. Zuerst wird ein Sicherheits-Backup deiner aktuellen Daten erstellt. Aktive Sitzungen müssen nach der Wiederherstellung möglicherweise neu geladen werden.\"],\"jiHVUy\":[\"Backup vor Wiederherstellung\"],\"k6c41p\":[\"Hintergrundaufgaben\"],\"kBDOjB\":[\"Backup-Zeitplan\"],\"kkDQ8m\":[\"Donnerstag\"],\"klOeIX\":[\"Passwort konnte nicht geändert werden\"],\"ks3XeZ\":[\"Öffne Sonarr, gehe zu Settings > Import Lists\"],\"kvuCtu\":[\"Beim Laden dieses Titels ist etwas schiefgelaufen. Bitte versuche es erneut.\"],\"kx0s+n\":[\"Ergebnisse\"],\"l2wcoS\":[\"Letzter Lauf erfolgreich\"],\"l3s5ri\":[\"Import\"],\"lCF0wC\":[\"Aktualisieren\"],\"lJ1yo4\":[\"Anmeldung fehlgeschlagen\"],\"lVqzRx\":[\"Klicke auf <0>Add Webhook und füge die URL oben ein\"],\"lXkUEV\":[\"Verfügbarkeit\"],\"lcLe89\":[\"Nach Filmen, Serien suchen oder Befehle ausführen\"],\"lfVyvz\":[\"Zur Merkliste hinzufügen\"],\"llDXYJ\":[\"Backups\"],\"llkZR0\":[\"Integrationen konnten nicht geladen werden\"],\"ln9/n9\":[\"Noch kein Konto?\"],\"lpIMne\":[\"Passwörter stimmen nicht überein\"],\"lqY3WY\":[\"Server wechseln\"],\"luoodD\":[\"Einrichtung erforderlich\"],\"m5WhJy\":[\"Automatische Update-Prüfung\"],\"mIx58S\":[\"Bilder leeren\"],\"mYBORk\":[\"Film\"],\"ml9cU0\":[[\"label\"],\"-URL konnte nicht neu generiert werden\"],\"mqwkjd\":[\"Systemstatus\"],\"mqxHH7\":[\"Zum Entdecken\"],\"mzI/c+\":[\"Herunterladen\"],\"n1ekoW\":[\"Anmelden\"],\"n3Pzd7\":[\"Backup erstellt\"],\"nBHvPL\":[\"Bearbeitung abbrechen\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" Bild\"],\"other\":[\"#\",\" Bilder\"]}]],\"nO0Qnj\":[\"Dein Code:\"],\"nRP1xx\":[\"Brauchst du mehr Hilfe?\"],\"nV1LjT\":[\"Benachrichtigungstyp <0>Playback Stop aktivieren\"],\"nVsE67\":[\"Als am Schauen markieren\"],\"nZ7lF1\":[\"Gerätecode abgelaufen. Bitte versuche es erneut.\"],\"nbfdhU\":[\"Integrationen\"],\"nbmpf9\":[\"Metadaten leeren\"],\"nnKJTm\":[\"Nicht alle Episoden konnten als gesehen markiert werden\"],\"nszbQG\":[\"Noch keine Backups\"],\"nuh/Wq\":[\"Webhook-URL\"],\"nwtY4N\":[\"Etwas ist schiefgelaufen\"],\"oAIA3w\":[\"Suche nach Filmen, Serien oder Personen\"],\"oC8IMh\":[\"Filme, Serien, Personen suchen...\"],\"oNvZcA\":[\"Episoden diese Woche\"],\"oXq+Wr\":[[\"label\"],\" verbunden\"],\"ogtYkT\":[\"Passwort aktualisiert\"],\"ojtedN\":[\"Öffne Radarr, gehe zu <0>Settings > Import Lists\"],\"olMi35\":[\"Für dich empfohlen\"],\"p+PZEl\":[\"Das passiert in deiner Bibliothek\"],\"pAtylB\":[\"Nicht gefunden\"],\"pG9pq1\":[[\"0\",\"plural\",{\"one\":[\"#\",\" Datei\"],\"other\":[\"#\",\" Dateien\"]}],\" gelöscht, \",[\"freed\"],\" freigegeben\"],\"pWWFjv\":[\"Geprüft <0/>\"],\"ph76H6\":[\"Neuen Benutzern die Registrierung erlauben\"],\"pjgw0N\":[\"Wähle aus, wie du deine \",[\"0\"],\"-Daten importieren möchtest.\"],\"puo3W3\":[\"Weiterleiten...\"],\"q3GraM\":[\"...und \",[\"0\"],\" weitere\"],\"q6nrFE\":[\"gestorben mit \",[\"age\"]],\"q6pUQ9\":[\"Lade eine .db-Datei hoch, um die aktuelle Datenbank zu ersetzen. Zuerst wird ein Sicherheits-Backup erstellt.\"],\"q8yluz\":[\"Dein Name\"],\"qA6VR5\":[\"Erfordert <0>Emby Server 4.7.9+ und eine aktive <1>Emby Premiere<2/>-Lizenz.\"],\"qF2IBM\":[\"Filme diesen Monat\"],\"qHbApt\":[\"Backup-Zeitplaneinstellungen konnten nicht geladen werden.\"],\"qLB1zX\":[\"Lade einen \",[\"0\"],\"-Export aus deinen \",[\"1\"],\"-Kontoeinstellungen hoch.\"],\"qPNzfu\":[\"Update-Prüfung deaktiviert\"],\"qWoML/\":[\"Füge einen neuen Webhook hinzu und füge die URL oben ein\"],\"qiOIiY\":[\"Kaufen\"],\"qn1X6N\":[\"Registrierungseinstellung konnte nicht aktualisiert werden\"],\"qqWcBV\":[\"Abgeschlossen\"],\"qqeAJM\":[\"Nie\"],\"r9aDAY\":[[\"count\"],\" \",[\"count\",\"plural\",{\"one\":[\"frühere Episode\"],\"other\":[\"frühere Episoden\"]}],\" noch ungesehen\"],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Server-Status\"],\"rdymVD\":[\"Aufgabe auslösen\"],\"rtir7c\":[\"unbekannt\"],\"s0U4ZZ\":[\"TV-Episoden\"],\"s4vVUm\":[\"Personendetails konnten nicht geladen werden\"],\"s9dVME\":[\"Episode konnte nicht als ungesehen markiert werden\"],\"sGH11W\":[\"Server\"],\"sl/qWH\":[\"Profilbild hochladen\"],\"sstysK\":[\"Episode konnte nicht markiert werden\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" Episoden\"],\"t/Ch8S\":[\"Als am Schauen markiert\"],\"t/YqKh\":[\"Entfernen\"],\"tfDRzk\":[\"Speichern\"],\"tiymc0\":[\"Etwas ist schiefgelaufen...\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"Episode\"],\"other\":[\"Episoden\"]}]],\"uBAxNB\":[\"Cutter\"],\"uBrbSu\":[[\"0\"],\"-Verbindung konnte nicht gestartet werden\"],\"uM6jnS\":[\"Wiederherstellung fehlgeschlagen\"],\"uMrJrX\":[\"Nur für Admins\"],\"uswLvZ\":[\"Der gesuchte Titel existiert nicht oder wurde möglicherweise aus der Datenbank entfernt.\"],\"uxOntd\":[[\"watchedCount\"],\" von \",[\"0\"],\" Episoden gesehen\"],\"v2CA3w\":[\"Foto ändern\"],\"v5ipVu\":[\"Alle Episoden als gesehen markieren?\"],\"vKfeax\":[\"Öffne Emby, gehe zu Settings > Webhooks\"],\"vXIe7J\":[\"Sprache\"],\"vuCCZ7\":[\"Importdaten konnten nicht verarbeitet werden\"],\"vwKERN\":[\"Backup konnte nicht gelöscht werden\"],\"w8pqsh\":[\"Alle als gesehen markieren\"],\"wA7B2T\":[\"Neue Konten werden derzeit nicht akzeptiert. Kontaktiere den Admin, wenn du Zugang benötigst.\"],\"wGFX13\":[\"Startzeit\"],\"wR1UAy\":[\"Beliebte Filme\"],\"wRWcdL\":[\"Trailer abspielen\"],\"wThGrS\":[\"App-Einstellungen\"],\"wZK4Xg\":[\"Noch nie ausgeführt\"],\"wdLxgL\":[\"Mitglied seit \",[\"memberSince\"]],\"wja8aL\":[\"Ohne Titel\"],\"wtGebH\":[\"Die gesuchte Person existiert nicht oder wurde möglicherweise aus der Datenbank entfernt.\"],\"wtsbt5\":[\"Zur Merkliste hinzufügen\"],\"wtuVU4\":[\"Häufigkeit\"],\"wx7pwA\":[\"Als gesehen markieren\"],\"x4ZiTl\":[\"Einrichtungsanleitung\"],\"xCJdfg\":[\"Löschen\"],\"xGVfLh\":[\"Weiter\"],\"xLoCm2\":[\"Konfiguration prüfen\"],\"xSrU2g\":[[\"healthyCount\"],\" von \",[\"0\"],\" Jobs fehlerfrei\"],\"xazqmy\":[\"Staffeln\"],\"xbBXhy\":[\"GitHub regelmäßig auf neue Sofa-Versionen prüfen\"],\"xrh2/M\":[\"Konnte nicht als gesehen markiert werden\"],\"y3e9pF\":[\"Backup löschen?\"],\"y6Urel\":[\"Nächste Episode\"],\"yGvjAo\":[\"Update verfügbar: \",[\"0\"]],\"yKu/3Y\":[\"Wiederherstellen\"],\"yYxB17\":[\"Alle löschen\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Datenbank wiederhergestellt. Lade neu...\"],\"ygo0l/\":[\"Filme und Serien tracken\"],\"yvwIbI\":[\"Exportdatei hochladen\"],\"yz7wBu\":[\"Schließen\"],\"z1U/Fh\":[\"Bewertung\"],\"z5evln\":[\"Keine Internetverbindung\"],\"zAvS8w\":[\"Anmelden, um fortzufahren\"],\"zEqK2w\":[\"Die gesuchte Seite existiert nicht.\"],\"zFkiTv\":[\"Webhook-Plugin aus dem Jellyfin-Plugin-Katalog installieren\"],\"zNyR4f\":[\"Bevorzugtes Qualitätsprofil und Stammordner festlegen\"],\"za8Le/\":[\"Registrierung geschlossen\"],\"zb77GC\":[\"Leihen\"],\"ztAdhw\":[\"Name aktualisiert\"]}")as Messages; \ No newline at end of file diff --git a/packages/i18n/src/po/en.po b/packages/i18n/src/po/en.po index 21da7be..015d45d 100644 --- a/packages/i18n/src/po/en.po +++ b/packages/i18n/src/po/en.po @@ -19,23 +19,23 @@ msgstr "" "X-Crowdin-File-ID: 12\n" #. placeholder {0}: result.errors.length - 50 -#: apps/web/src/components/settings/imports-section.tsx:938 +#: apps/web/src/components/settings/imports-section.tsx:895 msgid "...and {0} more" msgstr "" #. placeholder {0}: systemHealth.data.imageCache.imageCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:482 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:456 msgid "{0, plural, one {# image} other {# images}}" msgstr "" #. placeholder {0}: systemHealth.data.database.titleCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:466 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:442 msgid "{0, plural, one {# title} other {# titles}}" msgstr "" #. placeholder {0}: displayBackups.length #. placeholder {1}: displayBackups.length -#: apps/web/src/components/settings/backup-section.tsx:109 +#: apps/web/src/components/settings/backup-section.tsx:98 msgid "{0} {1, plural, one {backup} other {backups}} stored" msgstr "" @@ -44,18 +44,18 @@ msgstr "" #~ msgstr "{0} backup{1} stored" #. placeholder {0}: backups.backupCount -#: apps/web/src/components/settings/system-health-section.tsx:654 +#: apps/web/src/components/settings/system-health-section.tsx:599 msgid "{0} backups · last <0/>" msgstr "" #. placeholder {0}: imageCache.imageCount.toLocaleString() -#: apps/web/src/components/settings/system-health-section.tsx:621 +#: apps/web/src/components/settings/system-health-section.tsx:569 msgid "{0} cached images" msgstr "" #. placeholder {0}: member.episodeCount #. placeholder {1}: member.episodeCount !== 1 ? "s" : "" -#: apps/web/src/components/titles/cast-carousel.tsx:80 +#: apps/web/src/components/titles/cast-carousel.tsx:78 msgid "{0} ep{1}" msgstr "" @@ -64,23 +64,23 @@ msgstr "" #~ msgstr "{0} images" #. placeholder {0}: stats.watchlist -#: apps/web/src/components/settings/imports-section.tsx:808 +#: apps/web/src/components/settings/imports-section.tsx:770 msgid "{0} items" msgstr "" #. placeholder {0}: preview.diagnostics.unresolved -#: apps/web/src/components/settings/imports-section.tsx:788 +#: apps/web/src/components/settings/imports-section.tsx:750 msgid "{0} items have no external IDs and will be resolved by title search, which may be less accurate." msgstr "" #. placeholder {0}: stats.movies #. placeholder {1}: stats.episodes -#: apps/web/src/components/settings/imports-section.tsx:802 +#: apps/web/src/components/settings/imports-section.tsx:764 msgid "{0} movies, {1} episodes" msgstr "" #. placeholder {0}: stats.ratings -#: apps/web/src/components/settings/imports-section.tsx:814 +#: apps/web/src/components/settings/imports-section.tsx:776 msgid "{0} ratings" msgstr "" @@ -89,14 +89,14 @@ msgstr "" #~ msgstr "{0} titles" #. placeholder {0}: JOB_LABELS[name] ?? name -#: apps/web/src/components/settings/system-health-section.tsx:343 +#: apps/web/src/components/settings/system-health-section.tsx:316 msgid "{0} triggered" msgstr "" #. placeholder {0}: item.watchedEpisodes #. placeholder {1}: item.totalEpisodes #. placeholder {2}: item.totalEpisodes -#: apps/web/src/components/dashboard/continue-watching-card.tsx:93 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:78 msgid "{0}/{1} {2, plural, one {episode} other {episodes}}" msgstr "" @@ -104,43 +104,43 @@ msgstr "" #~ msgid "{0}/{1} episodes" #~ msgstr "{0}/{1} episodes" -#: apps/web/src/components/titles/use-title-actions.ts:221 -#: apps/web/src/components/titles/use-title-actions.ts:299 +#: apps/web/src/components/titles/use-title-actions.ts:200 +#: apps/web/src/components/titles/use-title-actions.ts:278 msgid "{count} earlier {count, plural, one {episode} other {episodes}} unwatched" msgstr "" #. placeholder {0}: activeJobs.length -#: apps/web/src/components/settings/system-health-section.tsx:385 +#: apps/web/src/components/settings/system-health-section.tsx:351 msgid "{healthyCount} of {0} jobs healthy" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:96 -#: apps/web/src/components/settings/integration-card.tsx:106 +#: apps/native/src/components/settings/integration-card.tsx:84 +#: apps/web/src/components/settings/integration-card.tsx:89 msgid "{label} connected" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:106 -#: apps/web/src/components/settings/integration-card.tsx:122 +#: apps/native/src/components/settings/integration-card.tsx:94 +#: apps/web/src/components/settings/integration-card.tsx:105 msgid "{label} disconnected" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:116 -#: apps/web/src/components/settings/integration-card.tsx:138 +#: apps/native/src/components/settings/integration-card.tsx:104 +#: apps/web/src/components/settings/integration-card.tsx:119 msgid "{label} URL regenerated" msgstr "" -#: apps/web/src/components/title-card.tsx:166 +#: apps/web/src/components/title-card.tsx:152 msgid "{watched}/{total} episodes" msgstr "" #. placeholder {0}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:122 +#: apps/native/src/components/titles/season-accordion.tsx:113 msgid "{watchedCount} of {0} episodes watched" msgstr "" #. placeholder {0}: episodes.length #. placeholder {1}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:131 +#: apps/native/src/components/titles/season-accordion.tsx:122 msgid "{watchedCount}/{0} {1, plural, one {episode} other {episodes}}" msgstr "" @@ -148,167 +148,167 @@ msgstr "" #~ msgid "{watchedCount}/{0} episodes" #~ msgstr "{watchedCount}/{0} episodes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:231 -#: apps/web/src/components/settings/account-section.tsx:175 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:224 +#: apps/web/src/components/settings/account-section.tsx:166 msgid "Account" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:412 +#: apps/web/src/components/settings/system-health-section.tsx:378 msgid "Actions" msgstr "" -#: apps/web/src/components/people/person-hero.tsx:71 +#: apps/web/src/components/people/person-hero.tsx:69 msgid "Actor" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:72 +#: apps/native/src/components/settings/integration-configs.ts:71 msgid "Add a \"Generic Destination\" and paste the URL above" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:131 +#: apps/web/src/components/settings/integration-configs.tsx:121 msgid "Add a <0>Generic Destination and paste the URL above" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:92 -#: apps/web/src/components/settings/integration-configs.tsx:198 +#: apps/native/src/components/settings/integration-configs.ts:89 +#: apps/web/src/components/settings/integration-configs.tsx:178 msgid "Add a new webhook and paste the URL above" msgstr "" -#: apps/web/src/components/explore/hero-banner.tsx:99 +#: apps/web/src/components/explore/hero-banner.tsx:87 msgid "Add to Library" msgstr "" -#: apps/native/src/components/titles/status-action-button.tsx:72 +#: apps/native/src/components/titles/status-action-button.tsx:73 msgid "Add to watchlist" msgstr "" -#: apps/native/src/components/explore/hero-banner.tsx:157 -#: apps/native/src/components/ui/poster-card.tsx:238 -#: apps/web/src/components/title-card.tsx:146 +#: apps/native/src/components/explore/hero-banner.tsx:132 +#: apps/native/src/components/ui/poster-card.tsx:212 +#: apps/web/src/components/title-card.tsx:133 msgid "Add to Watchlist" msgstr "" -#: apps/native/src/lib/title-actions.ts:23 +#: apps/native/src/lib/title-actions.ts:24 msgid "Added \"{titleName}\" to watchlist" msgstr "" #: apps/native/src/hooks/use-title-actions.ts:44 -#: apps/native/src/hooks/use-title-actions.ts:60 -#: apps/native/src/lib/title-actions.ts:24 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:59 +#: apps/native/src/lib/title-actions.ts:25 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Added to watchlist" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:353 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:454 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:499 -#: apps/web/src/components/nav-bar.tsx:235 -#: apps/web/src/components/settings/account-section.tsx:335 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:342 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/components/nav-bar.tsx:223 +#: apps/web/src/components/settings/account-section.tsx:309 msgid "Admin" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:124 +#: apps/web/src/routes/_app/settings.tsx:118 msgid "Admin only" msgstr "" -#: apps/native/src/app/person/[id].tsx:308 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "age {age}" msgstr "" -#: apps/native/src/components/explore/filterable-title-row.tsx:119 -#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/native/src/components/explore/filterable-title-row.tsx:117 +#: apps/web/src/components/people/filmography-grid.tsx:56 msgid "All" msgstr "" -#: apps/web/src/components/settings/registration-section.tsx:61 +#: apps/web/src/components/settings/registration-section.tsx:54 msgid "Allow new users to create accounts" msgstr "" -#: apps/web/src/components/auth-form.tsx:278 +#: apps/web/src/components/auth-form.tsx:259 msgid "Already have an account?" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:239 +#: apps/native/src/app/(auth)/register.tsx:211 msgid "Already have an account? Sign in" msgstr "" -#: apps/web/src/routes/__root.tsx:146 +#: apps/web/src/routes/__root.tsx:143 msgid "An unexpected error occurred while loading this page. You can try again or head back to the dashboard." msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:427 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:407 msgid "Anonymous usage reporting" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:102 +#: apps/web/src/routes/_app/settings.tsx:99 msgid "App Settings" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:378 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:362 msgid "Application" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:151 +#: apps/native/src/components/settings/integration-card.tsx:139 msgid "Are you sure you want to disconnect {label}? The current URL will stop working." msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/components/header-avatar.tsx:70 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/components/header-avatar.tsx:62 msgid "Are you sure you want to sign out?" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:450 +#: apps/web/src/components/settings/imports-section.tsx:429 msgid "Authorization succeeded but failed to fetch your library. Please try again." msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:440 +#: apps/web/src/components/settings/imports-section.tsx:419 msgid "Authorization was denied. Please try again." msgstr "" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:580 msgid "Authorize Sofa to read your {0} library. No password shared." msgstr "" -#: apps/web/src/components/settings/update-check-section.tsx:60 +#: apps/web/src/components/settings/update-check-section.tsx:51 msgid "Automatic update checks" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:279 +#: apps/web/src/components/settings/backup-schedule-section.tsx:248 msgid "Automatically back up your database on a schedule" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:332 +#: apps/web/src/components/settings/system-health-section.tsx:305 msgid "Availability" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:94 msgid "Back to Login" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:382 +#: apps/web/src/components/settings/system-health-section.tsx:348 msgid "Background jobs" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:336 +#: apps/web/src/components/settings/system-health-section.tsx:309 msgid "Backup" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:69 +#: apps/web/src/components/settings/backup-section.tsx:62 msgid "Backup created" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:94 +#: apps/web/src/components/settings/backup-section.tsx:85 msgid "Backup deleted" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:234 +#: apps/web/src/components/settings/backup-schedule-section.tsx:216 msgid "Backup schedule" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:641 -#: apps/web/src/routes/_app/settings.tsx:166 +#: apps/web/src/components/settings/system-health-section.tsx:589 +#: apps/web/src/routes/_app/settings.tsx:154 msgid "Backups" msgstr "" @@ -316,96 +316,96 @@ msgstr "" #~ msgid "backups." #~ msgstr "backups." -#: apps/web/src/components/titles/title-availability.tsx:139 +#: apps/web/src/components/titles/title-availability.tsx:115 msgid "Buy" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:89 +#: apps/web/src/components/settings/danger-section.tsx:85 msgid "Cache management" msgstr "" -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:66 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:74 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:67 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:75 msgid "Can't reach server" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:207 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:332 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:388 -#: apps/native/src/components/header-avatar.tsx:71 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:63 -#: apps/native/src/components/search/recently-viewed-list.tsx:37 -#: apps/native/src/components/settings/integration-card.tsx:138 -#: apps/native/src/components/settings/integration-card.tsx:153 -#: apps/web/src/components/settings/account-section.tsx:505 -#: apps/web/src/components/settings/backup-restore-section.tsx:107 -#: apps/web/src/components/settings/backup-section.tsx:270 -#: apps/web/src/components/settings/danger-section.tsx:129 -#: apps/web/src/components/settings/danger-section.tsx:171 -#: apps/web/src/components/settings/danger-section.tsx:214 -#: apps/web/src/components/settings/imports-section.tsx:645 -#: apps/web/src/components/settings/imports-section.tsx:710 -#: apps/web/src/components/settings/imports-section.tsx:837 -#: apps/web/src/components/titles/title-seasons.tsx:133 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:202 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:321 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:369 +#: apps/native/src/components/header-avatar.tsx:63 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:58 +#: apps/native/src/components/search/recently-viewed-list.tsx:32 +#: apps/native/src/components/settings/integration-card.tsx:126 +#: apps/native/src/components/settings/integration-card.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/web/src/components/settings/backup-restore-section.tsx:101 +#: apps/web/src/components/settings/backup-section.tsx:240 +#: apps/web/src/components/settings/danger-section.tsx:121 +#: apps/web/src/components/settings/danger-section.tsx:154 +#: apps/web/src/components/settings/danger-section.tsx:187 +#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:674 +#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/titles/title-seasons.tsx:127 msgid "Cancel" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:307 +#: apps/web/src/components/settings/account-section.tsx:281 msgid "Cancel editing" msgstr "" -#: apps/native/src/app/title/[id].tsx:559 +#: apps/native/src/app/title/[id].tsx:489 #: apps/web/src/components/titles/cast-carousel.tsx:21 msgid "Cast" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:223 -#: apps/web/src/components/titles/use-title-actions.ts:301 +#: apps/web/src/components/titles/use-title-actions.ts:202 +#: apps/web/src/components/titles/use-title-actions.ts:280 msgid "Catch up" msgstr "" #. placeholder {0}: episodeIds.length #. placeholder {1}: episodeIds.length -#: apps/web/src/components/titles/use-title-actions.ts:82 +#: apps/web/src/components/titles/use-title-actions.ts:72 msgid "Caught up — marked {0} {1, plural, one {episode} other {episodes}} as watched" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 -#: apps/web/src/components/settings/account-section.tsx:427 -#: apps/web/src/components/settings/account-section.tsx:432 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 +#: apps/web/src/components/settings/account-section.tsx:401 +#: apps/web/src/components/settings/account-section.tsx:406 msgid "Change password" msgstr "" -#: apps/native/src/app/change-password.tsx:98 +#: apps/native/src/app/change-password.tsx:94 msgid "Change Password" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:267 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:258 msgid "Change Photo" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:385 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "Change Server" msgstr "" -#: apps/web/src/components/setup/refresh-button.tsx:30 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Check configuration" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:483 msgid "Check for updates" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:215 +#: apps/web/src/components/settings/system-health-section.tsx:196 msgid "Checked <0/>" msgstr "" -#: apps/web/src/components/setup/refresh-button.tsx:28 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Checking…" msgstr "" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:587 +#: apps/web/src/components/settings/imports-section.tsx:556 msgid "Choose how to import your {0} data." msgstr "" @@ -413,37 +413,37 @@ msgstr "" #~ msgid "Choose your preferred display language" #~ msgstr "Choose your preferred display language" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:65 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:115 -#: apps/native/src/components/search/recently-viewed-list.tsx:39 -#: apps/native/src/components/search/recently-viewed-list.tsx:95 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:60 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:104 +#: apps/native/src/components/search/recently-viewed-list.tsx:34 +#: apps/native/src/components/search/recently-viewed-list.tsx:86 msgid "Clear" msgstr "" -#: apps/web/src/components/command-palette.tsx:322 +#: apps/web/src/components/command-palette.tsx:302 msgid "Clear all" msgstr "" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:60 -#: apps/native/src/components/search/recently-viewed-list.tsx:34 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "Clear Recently Viewed?" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:109 -#: apps/native/src/components/settings/integration-configs.ts:127 +#: apps/native/src/components/settings/integration-configs.ts:104 +#: apps/native/src/components/settings/integration-configs.ts:122 msgid "Click \"+\" and select \"Custom Lists\"" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:55 +#: apps/native/src/components/settings/integration-configs.ts:56 msgid "Click \"Add Webhook\" and paste the URL above" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:237 -#: apps/web/src/components/settings/integration-configs.tsx:277 +#: apps/web/src/components/settings/integration-configs.tsx:212 +#: apps/web/src/components/settings/integration-configs.tsx:249 msgid "Click <0>+ and select <1>Custom Lists" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:73 msgid "Click <0>Add Webhook and paste the URL above" msgstr "" @@ -451,111 +451,111 @@ msgstr "" msgid "Close" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:63 -#: apps/native/src/components/titles/status-action-button.tsx:44 -#: apps/web/src/components/dashboard/stats-display.tsx:238 -#: apps/web/src/components/title-card.tsx:77 -#: apps/web/src/components/titles/status-button.tsx:30 +#: apps/native/src/app/(tabs)/(home)/index.tsx:54 +#: apps/native/src/components/titles/status-action-button.tsx:45 +#: apps/web/src/components/dashboard/stats-display.tsx:219 +#: apps/web/src/components/title-card.tsx:74 +#: apps/web/src/components/titles/status-button.tsx:25 msgid "Completed" msgstr "" -#: apps/native/src/app/change-password.tsx:173 -#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/native/src/app/change-password.tsx:167 +#: apps/web/src/components/settings/account-section.tsx:451 msgid "Confirm new password" msgstr "" -#: apps/native/src/app/(auth)/server-url.tsx:207 -#: apps/web/src/components/settings/imports-section.tsx:499 +#: apps/native/src/app/(auth)/server-url.tsx:182 +#: apps/web/src/components/settings/imports-section.tsx:478 msgid "Connect" msgstr "" #. placeholder {0}: config.label -#: apps/web/src/components/settings/integration-card.tsx:203 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connect {0}" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:238 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connect {label}" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:665 +#: apps/web/src/components/settings/imports-section.tsx:631 msgid "Connect to {source}" msgstr "" -#: apps/web/src/routes/setup.tsx:101 +#: apps/web/src/routes/setup.tsx:98 msgid "Connect to TMDB" msgstr "" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:608 +#: apps/web/src/components/settings/imports-section.tsx:577 msgid "Connect with {0}" msgstr "" -#: apps/native/src/app/(auth)/server-url.tsx:197 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:474 -#: apps/web/src/components/settings/system-health-section.tsx:256 +#: apps/native/src/app/(auth)/server-url.tsx:176 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:449 +#: apps/web/src/components/settings/system-health-section.tsx:236 msgid "Connected" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:722 +#: apps/web/src/components/settings/imports-section.tsx:686 msgid "Connected to {source}" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:240 +#: apps/native/src/app/(auth)/login.tsx:211 msgid "Connected to <0>{serverHost}. Tap to change." msgstr "" -#: apps/native/src/app/(auth)/server-url.tsx:186 +#: apps/native/src/app/(auth)/server-url.tsx:169 msgid "Connecting to server..." msgstr "" -#: apps/web/src/components/settings/integration-card.tsx:201 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connecting..." msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:237 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connecting…" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:390 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:371 msgid "Continue" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:113 -#: apps/web/src/components/dashboard/continue-watching-section.tsx:25 +#: apps/native/src/app/(tabs)/(home)/index.tsx:99 +#: apps/web/src/components/dashboard/continue-watching-section.tsx:22 msgid "Continue Watching" msgstr "" -#: apps/web/src/components/setup/copy-button.tsx:25 +#: apps/web/src/components/setup/copy-button.tsx:26 msgid "Copied" msgstr "" -#: apps/web/src/components/setup/copy-button.tsx:30 +#: apps/web/src/components/setup/copy-button.tsx:31 msgid "Copy" msgstr "" -#: apps/web/src/components/settings/integration-card.tsx:246 +#: apps/web/src/components/settings/integration-card.tsx:208 msgid "Copy URL" msgstr "" -#: apps/native/src/components/settings/integrations-section.tsx:29 +#: apps/native/src/components/settings/integrations-section.tsx:30 msgid "Could not load integrations" msgstr "" -#: apps/native/src/app/person/[id].tsx:216 +#: apps/native/src/app/person/[id].tsx:185 msgid "Could not load person details" msgstr "" -#: apps/web/src/components/auth-form.tsx:247 +#: apps/web/src/components/auth-form.tsx:231 msgid "Create account" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:115 -#: apps/native/src/app/(auth)/register.tsx:225 +#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:200 msgid "Create Account" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:216 +#: apps/native/src/app/(auth)/login.tsx:194 msgid "Create an account" msgstr "" @@ -563,57 +563,57 @@ msgstr "" msgid "Create your account" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "Creating…" msgstr "" -#: apps/native/src/app/change-password.tsx:120 -#: apps/web/src/components/settings/account-section.tsx:449 +#: apps/native/src/app/change-password.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:423 msgid "Current password" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/components/settings/account-section.tsx:365 msgid "Current password is required" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:195 +#: apps/web/src/routes/_app/settings.tsx:180 msgid "Danger Zone" msgstr "" -#: apps/web/src/routes/__root.tsx:167 -#: apps/web/src/routes/_app/people.$id.tsx:78 -#: apps/web/src/routes/_app/titles.$id.tsx:126 -#: apps/web/src/routes/_app/titles.$id.tsx:172 +#: apps/web/src/routes/__root.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:76 +#: apps/web/src/routes/_app/titles.$id.tsx:119 +#: apps/web/src/routes/_app/titles.$id.tsx:165 msgid "Dashboard" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:463 -#: apps/web/src/components/settings/system-health-section.tsx:229 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:439 +#: apps/web/src/components/settings/system-health-section.tsx:210 msgid "Database" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:126 +#: apps/web/src/components/settings/backup-section.tsx:112 msgid "Database backups" msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:31 +#: apps/web/src/components/settings/backup-restore-section.tsx:32 msgid "Database restored. Reloading..." msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:342 +#: apps/web/src/components/settings/backup-schedule-section.tsx:309 msgid "Day:" msgstr "" +#: apps/web/src/components/settings/backup-section.tsx:222 #: apps/web/src/components/settings/backup-section.tsx:250 -#: apps/web/src/components/settings/backup-section.tsx:280 msgid "Delete" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:235 +#: apps/web/src/components/settings/backup-section.tsx:211 msgid "Delete backup" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:256 +#: apps/web/src/components/settings/backup-section.tsx:228 msgid "Delete backup?" msgstr "" @@ -622,44 +622,44 @@ msgstr "" msgid "Deleted {0, plural, one {# file} other {# files}}, freed {freed}" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:412 -#: apps/web/src/components/settings/imports-section.tsx:444 +#: apps/web/src/components/settings/imports-section.tsx:394 +#: apps/web/src/components/settings/imports-section.tsx:423 msgid "Device code expired. Please try again." msgstr "" -#: apps/native/src/app/person/[id].tsx:307 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "died at {age}" msgstr "" -#: apps/web/src/components/people/person-hero.tsx:73 +#: apps/web/src/components/people/person-hero.tsx:71 msgid "Director" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:431 -#: apps/web/src/components/settings/system-health-section.tsx:632 +#: apps/web/src/components/settings/system-health-section.tsx:394 +#: apps/web/src/components/settings/system-health-section.tsx:580 msgid "Disabled" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:155 -#: apps/native/src/components/settings/integration-card.tsx:298 -#: apps/web/src/components/settings/integration-card.tsx:274 +#: apps/native/src/components/settings/integration-card.tsx:143 +#: apps/native/src/components/settings/integration-card.tsx:257 +#: apps/web/src/components/settings/integration-card.tsx:234 msgid "Disconnect" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:150 +#: apps/native/src/components/settings/integration-card.tsx:138 msgid "Disconnect {label}" msgstr "" -#: apps/native/src/app/(auth)/server-url.tsx:242 +#: apps/native/src/app/(auth)/server-url.tsx:217 msgid "Don't have a server?" msgstr "" -#: apps/web/src/components/auth-form.tsx:288 +#: apps/web/src/components/auth-form.tsx:269 msgid "Don't have an account?" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:962 +#: apps/web/src/components/settings/imports-section.tsx:918 msgid "Done" msgstr "" @@ -667,84 +667,84 @@ msgstr "" msgid "Double tap to clear this filter" msgstr "" -#: apps/native/src/components/explore/genre-chip.tsx:28 +#: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to filter by {label}" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:71 -#: apps/web/src/components/settings/backup-section.tsx:223 +#: apps/web/src/components/settings/backup-section.tsx:64 +#: apps/web/src/components/settings/backup-section.tsx:199 msgid "Download" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:214 +#: apps/web/src/components/settings/backup-section.tsx:190 msgid "Download backup" msgstr "" -#: apps/web/src/components/people/person-hero.tsx:79 +#: apps/web/src/components/people/person-hero.tsx:77 msgid "Editor" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:133 -#: apps/native/src/app/(auth)/register.tsx:154 -#: apps/web/src/components/auth-form.tsx:201 +#: apps/native/src/app/(auth)/login.tsx:123 +#: apps/native/src/app/(auth)/register.tsx:139 +#: apps/web/src/components/auth-form.tsx:190 msgid "Email" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:72 msgid "Enable the \"Playback Stop\" notification type" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:93 +#: apps/native/src/components/settings/integration-configs.ts:90 msgid "Enable the \"Playback\" event category" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:140 +#: apps/web/src/components/settings/integration-configs.tsx:127 msgid "Enable the <0>Playback Stop notification type" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:201 +#: apps/web/src/components/settings/integration-configs.tsx:181 msgid "Enable the <0>Playback event category" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:668 +#: apps/web/src/components/settings/imports-section.tsx:634 msgid "Enter the code below on {source}'s website to authorize Sofa." msgstr "" -#: apps/web/src/components/settings/account-section.tsx:435 +#: apps/web/src/components/settings/account-section.tsx:409 msgid "Enter your current password and choose a new one." msgstr "" -#: apps/native/src/app/(auth)/server-url.tsx:151 +#: apps/native/src/app/(auth)/server-url.tsx:140 msgid "Enter your Sofa server URL to get started" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:289 +#: apps/web/src/components/settings/system-health-section.tsx:267 msgid "Environment" msgstr "" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:29 -#: apps/native/src/components/titles/episode-row.tsx:55 +#: apps/native/src/components/titles/episode-row.tsx:27 +#: apps/native/src/components/titles/episode-row.tsx:48 msgid "Episode {0}" msgstr "" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:36 +#: apps/native/src/components/titles/episode-row.tsx:34 msgid "Episode {0}, {episodeLabel}" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:123 -#: apps/native/src/lib/title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:111 +#: apps/native/src/lib/title-actions.ts:108 msgid "Episode unwatched" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:109 -#: apps/native/src/lib/title-actions.ts:101 +#: apps/native/src/hooks/use-title-actions.ts:101 +#: apps/native/src/lib/title-actions.ts:98 msgid "Episode watched" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:780 -#: apps/web/src/components/titles/title-seasons.tsx:102 +#: apps/web/src/components/settings/imports-section.tsx:742 +#: apps/web/src/components/titles/title-seasons.tsx:96 msgid "Episodes" msgstr "" @@ -752,118 +752,118 @@ msgstr "" #~ msgid "Episodes {periodSelect}" #~ msgstr "Episodes {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:164 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Episodes {select}" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:61 +#: apps/native/src/app/(tabs)/(home)/index.tsx:52 msgid "Episodes this week" msgstr "" -#: apps/native/src/app/change-password.tsx:71 -#: apps/native/src/app/change-password.tsx:81 +#: apps/native/src/app/change-password.tsx:67 +#: apps/native/src/app/change-password.tsx:77 msgid "Error" msgstr "" #. placeholder {0}: result.errors.length -#: apps/web/src/components/settings/imports-section.tsx:929 +#: apps/web/src/components/settings/imports-section.tsx:887 msgid "Errors ({0})" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:143 -#: apps/web/src/components/nav-bar.tsx:126 -#: apps/web/src/components/nav-bar.tsx:291 +#: apps/native/src/app/(tabs)/(home)/index.tsx:127 +#: apps/web/src/components/nav-bar.tsx:116 +#: apps/web/src/components/nav-bar.tsx:277 msgid "Explore" msgstr "" -#: apps/web/src/routes/_app/people.$id.tsx:70 -#: apps/web/src/routes/_app/titles.$id.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:68 +#: apps/web/src/routes/_app/titles.$id.tsx:157 msgid "Explore titles" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:923 +#: apps/web/src/components/settings/imports-section.tsx:881 msgid "Failed" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:49 -#: apps/native/src/lib/title-actions.ts:28 +#: apps/native/src/hooks/use-title-actions.ts:48 +#: apps/native/src/lib/title-actions.ts:29 msgid "Failed to add to watchlist" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:90 +#: apps/web/src/components/titles/use-title-actions.ts:80 msgid "Failed to catch up" msgstr "" -#: apps/native/src/app/change-password.tsx:71 -#: apps/web/src/components/settings/account-section.tsx:411 +#: apps/native/src/app/change-password.tsx:67 +#: apps/web/src/components/settings/account-section.tsx:385 msgid "Failed to change password" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:398 +#: apps/web/src/components/settings/imports-section.tsx:380 msgid "Failed to connect" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:99 -#: apps/web/src/components/settings/integration-card.tsx:108 +#: apps/native/src/components/settings/integration-card.tsx:87 +#: apps/web/src/components/settings/integration-card.tsx:91 msgid "Failed to connect {label}" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:67 +#: apps/native/src/app/(auth)/register.tsx:57 msgid "Failed to create account" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:81 +#: apps/web/src/components/settings/backup-section.tsx:74 msgid "Failed to create backup" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:97 +#: apps/web/src/components/settings/backup-section.tsx:88 msgid "Failed to delete backup" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:109 -#: apps/web/src/components/settings/integration-card.tsx:125 +#: apps/native/src/components/settings/integration-card.tsx:97 +#: apps/web/src/components/settings/integration-card.tsx:108 msgid "Failed to disconnect {label}" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:215 +#: apps/web/src/components/settings/backup-schedule-section.tsx:200 msgid "Failed to load backup schedule settings." msgstr "" -#: apps/web/src/routes/_app/titles.$id.tsx:115 +#: apps/web/src/routes/_app/titles.$id.tsx:110 msgid "Failed to load title" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:367 +#: apps/web/src/components/titles/use-title-actions.ts:344 msgid "Failed to mark all episodes as watched" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:84 -#: apps/native/src/lib/title-actions.ts:68 -#: apps/web/src/components/titles/use-title-actions.ts:150 +#: apps/native/src/hooks/use-title-actions.ts:79 +#: apps/native/src/lib/title-actions.ts:67 +#: apps/web/src/components/titles/use-title-actions.ts:137 msgid "Failed to mark as watched" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:113 -#: apps/native/src/lib/title-actions.ts:104 -#: apps/web/src/components/titles/use-title-actions.ts:237 +#: apps/native/src/hooks/use-title-actions.ts:104 +#: apps/native/src/lib/title-actions.ts:101 +#: apps/web/src/components/titles/use-title-actions.ts:216 msgid "Failed to mark episode" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:141 -#: apps/native/src/lib/title-actions.ts:128 -#: apps/web/src/components/titles/use-title-actions.ts:315 +#: apps/native/src/hooks/use-title-actions.ts:124 +#: apps/native/src/lib/title-actions.ts:123 +#: apps/web/src/components/titles/use-title-actions.ts:294 msgid "Failed to mark some episodes" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:225 +#: apps/web/src/components/settings/imports-section.tsx:218 msgid "Failed to parse file" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:240 +#: apps/web/src/components/settings/imports-section.tsx:233 msgid "Failed to parse import data" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:75 +#: apps/web/src/components/settings/danger-section.tsx:72 msgid "Failed to purge caches" msgstr "" @@ -875,250 +875,250 @@ msgstr "" msgid "Failed to purge metadata cache" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:119 -#: apps/web/src/components/settings/integration-card.tsx:140 +#: apps/native/src/components/settings/integration-card.tsx:107 +#: apps/web/src/components/settings/integration-card.tsx:121 msgid "Failed to regenerate {label} URL" msgstr "" -#: apps/native/src/lib/title-actions.ts:78 +#: apps/native/src/lib/title-actions.ts:77 msgid "Failed to remove from library" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:134 -#: apps/web/src/components/settings/account-section.tsx:134 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:131 +#: apps/web/src/components/settings/account-section.tsx:126 msgid "Failed to remove profile picture" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:56 +#: apps/native/src/app/(auth)/login.tsx:53 msgid "Failed to sign in" msgstr "" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:388 +#: apps/web/src/components/settings/imports-section.tsx:370 msgid "Failed to start {0} connection" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:348 +#: apps/web/src/components/settings/system-health-section.tsx:320 msgid "Failed to trigger job" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:129 -#: apps/native/src/lib/title-actions.ts:114 -#: apps/web/src/components/titles/use-title-actions.ts:181 +#: apps/native/src/hooks/use-title-actions.ts:114 +#: apps/native/src/lib/title-actions.ts:111 +#: apps/web/src/components/titles/use-title-actions.ts:163 msgid "Failed to unmark episode" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:343 +#: apps/web/src/components/titles/use-title-actions.ts:320 msgid "Failed to unmark some episodes" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:112 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:109 msgid "Failed to update name" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:101 -#: apps/native/src/lib/title-actions.ts:94 -#: apps/web/src/components/titles/use-title-actions.ts:136 +#: apps/native/src/hooks/use-title-actions.ts:94 +#: apps/native/src/lib/title-actions.ts:91 +#: apps/web/src/components/titles/use-title-actions.ts:123 msgid "Failed to update rating" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:172 -#: apps/web/src/components/settings/registration-section.tsx:44 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:169 +#: apps/web/src/components/settings/registration-section.tsx:37 msgid "Failed to update registration setting" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:154 +#: apps/web/src/components/settings/backup-schedule-section.tsx:145 msgid "Failed to update retention setting" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:156 +#: apps/web/src/components/settings/backup-schedule-section.tsx:147 msgid "Failed to update schedule" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:152 +#: apps/web/src/components/settings/backup-schedule-section.tsx:143 msgid "Failed to update scheduled backup setting" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:191 -#: apps/web/src/components/settings/update-check-section.tsx:43 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:186 +#: apps/web/src/components/settings/update-check-section.tsx:37 msgid "Failed to update setting" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:72 -#: apps/native/src/lib/title-actions.ts:40 -#: apps/native/src/lib/title-actions.ts:54 -#: apps/web/src/components/titles/use-title-actions.ts:114 +#: apps/native/src/hooks/use-title-actions.ts:69 +#: apps/native/src/lib/title-actions.ts:41 +#: apps/native/src/lib/title-actions.ts:55 +#: apps/web/src/components/titles/use-title-actions.ts:101 msgid "Failed to update status" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:123 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:120 msgid "Failed to upload avatar" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:725 +#: apps/web/src/components/settings/imports-section.tsx:689 msgid "Fetching your library data from {source}..." msgstr "" -#: apps/native/src/app/person/[id].tsx:340 -#: apps/web/src/components/people/filmography-grid.tsx:69 +#: apps/native/src/app/person/[id].tsx:296 +#: apps/web/src/components/people/filmography-grid.tsx:67 msgid "Filmography" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:915 +#: apps/web/src/components/settings/imports-section.tsx:873 msgid "Finished importing from {source}." msgstr "" -#: apps/web/src/components/titles/title-availability.tsx:140 +#: apps/web/src/components/titles/title-availability.tsx:116 msgid "Free" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:92 +#: apps/web/src/components/settings/danger-section.tsx:88 msgid "Free up disk space by clearing cached metadata and images" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:309 +#: apps/web/src/components/settings/backup-schedule-section.tsx:276 msgid "Frequency" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:101 +#: apps/web/src/components/settings/backup-schedule-section.tsx:98 msgid "Friday" msgstr "" -#: apps/web/src/components/landing-page.tsx:156 +#: apps/web/src/components/landing-page.tsx:157 msgid "Get Started" msgstr "" -#: apps/native/src/app/person/[id].tsx:220 -#: apps/native/src/app/person/[id].tsx:247 -#: apps/native/src/app/title/[id].tsx:255 +#: apps/native/src/app/person/[id].tsx:189 +#: apps/native/src/app/person/[id].tsx:213 +#: apps/native/src/app/title/[id].tsx:239 msgid "Go back" msgstr "" -#: apps/native/src/app/+not-found.tsx:37 +#: apps/native/src/app/+not-found.tsx:35 msgid "Go Home" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:123 +#: apps/web/src/components/settings/integration-configs.tsx:115 msgid "Go to <0>Dashboard > Plugins > Webhook" msgstr "" -#: apps/web/src/components/command-palette.tsx:368 +#: apps/web/src/components/command-palette.tsx:345 msgid "Go to Dashboard" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:71 +#: apps/native/src/components/settings/integration-configs.ts:70 msgid "Go to Dashboard > Plugins > Webhook" msgstr "" -#: apps/web/src/components/command-palette.tsx:379 +#: apps/web/src/components/command-palette.tsx:356 msgid "Go to Explore" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:212 +#: apps/web/src/components/settings/system-health-section.tsx:193 msgid "Health status" msgstr "" -#: apps/web/src/components/dashboard/welcome-header.tsx:14 +#: apps/web/src/components/dashboard/welcome-header.tsx:10 msgid "Here's what's happening with your library" msgstr "" -#: apps/web/src/components/nav-bar.tsx:125 -#: apps/web/src/components/nav-bar.tsx:290 +#: apps/web/src/components/nav-bar.tsx:115 +#: apps/web/src/components/nav-bar.tsx:276 msgid "Home" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:335 -#: apps/web/src/components/settings/system-health-section.tsx:610 +#: apps/web/src/components/settings/system-health-section.tsx:308 +#: apps/web/src/components/settings/system-health-section.tsx:558 msgid "Image cache" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:479 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:453 msgid "Image Cache" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:598 +#: apps/web/src/components/settings/system-health-section.tsx:546 msgid "Image cache and backup disk usage" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:179 +#: apps/web/src/components/settings/imports-section.tsx:175 msgid "Import" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:840 +#: apps/web/src/components/settings/imports-section.tsx:801 msgid "Import {totalItems} items" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:912 +#: apps/web/src/components/settings/imports-section.tsx:870 msgid "Import complete" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:340 +#: apps/web/src/components/settings/imports-section.tsx:324 msgid "Import failed" msgstr "" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:584 +#: apps/web/src/components/settings/imports-section.tsx:553 msgid "Import from {0}" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:770 +#: apps/web/src/components/settings/imports-section.tsx:732 msgid "Import from {source}" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:298 -#: apps/web/src/components/settings/imports-section.tsx:329 +#: apps/web/src/components/settings/imports-section.tsx:285 +#: apps/web/src/components/settings/imports-section.tsx:314 msgid "Import is still running in the background. Check back later." msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/settings/imports-section.tsx:760 msgid "Import options" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:921 +#: apps/web/src/components/settings/imports-section.tsx:879 msgid "Imported" msgstr "" #. placeholder {0}: event.job.importedCount #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:292 +#: apps/web/src/components/settings/imports-section.tsx:281 msgid "Imported {0} items from {1}" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:863 +#: apps/web/src/components/settings/imports-section.tsx:822 msgid "Importing from {source}" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:62 +#: apps/native/src/app/(tabs)/(home)/index.tsx:53 msgid "In library" msgstr "" -#: apps/web/src/components/dashboard/stats-display.tsx:230 +#: apps/web/src/components/dashboard/stats-display.tsx:211 msgid "In Library" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:133 +#: apps/native/src/app/(tabs)/(home)/index.tsx:117 #: apps/web/src/components/dashboard/library-section.tsx:35 msgid "In Your Library" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:105 +#: apps/web/src/components/settings/integration-configs.tsx:97 msgid "Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:70 +#: apps/native/src/components/settings/integration-configs.ts:69 msgid "Install the Webhook plugin from Jellyfin's plugin catalog" msgstr "" -#: apps/native/src/components/settings/integrations-section.tsx:20 -#: apps/web/src/components/settings/integrations-section.tsx:41 +#: apps/native/src/components/settings/integrations-section.tsx:21 +#: apps/web/src/components/settings/integrations-section.tsx:33 msgid "Integrations" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:266 +#: apps/web/src/components/settings/system-health-section.tsx:246 msgid "Invalid token" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:399 +#: apps/web/src/components/settings/system-health-section.tsx:365 msgid "Job" msgstr "" @@ -1128,160 +1128,160 @@ msgstr "" #. placeholder {0}: (value: string | null) => value === "0" ? t`unlimited` : value ? t`last ${value}` : null #. placeholder {1}: [3, 5, 7, 14, 30, 0].map((n) => ( {n === 0 ? t`unlimited` : t`last ${n}`} )) -#: apps/web/src/components/settings/backup-schedule-section.tsx:243 +#: apps/web/src/components/settings/backup-schedule-section.tsx:222 msgid "Keeping <0><1><2>{0}<3>{1} backups." msgstr "" -#: apps/web/src/components/command-palette.tsx:389 -#: apps/web/src/components/command-palette.tsx:404 +#: apps/web/src/components/command-palette.tsx:366 +#: apps/web/src/components/command-palette.tsx:381 msgid "Keyboard Shortcuts" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:403 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:411 -#: apps/web/src/components/settings/language-section.tsx:42 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:383 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:391 +#: apps/web/src/components/settings/language-section.tsx:34 msgid "Language" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "last {n}" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:258 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 msgid "last {value}" msgstr "" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:331 +#: apps/web/src/components/settings/integration-card.tsx:289 msgid "Last event {0}" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:29 +#: apps/native/src/components/settings/integration-configs.ts:30 msgid "Last event {timeAgo}" msgstr "" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:338 +#: apps/web/src/components/settings/integration-card.tsx:296 msgid "Last polled {0}" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:37 +#: apps/native/src/components/settings/integration-configs.ts:38 msgid "Last polled {timeAgo}" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:405 +#: apps/web/src/components/settings/system-health-section.tsx:371 msgid "Last run" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:441 +#: apps/web/src/components/settings/system-health-section.tsx:402 msgid "Last run failed" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:437 +#: apps/web/src/components/settings/system-health-section.tsx:400 msgid "Last run succeeded" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:331 +#: apps/web/src/components/settings/system-health-section.tsx:304 msgid "Library refresh" msgstr "" -#: apps/web/src/components/auth-form.tsx:245 +#: apps/web/src/components/auth-form.tsx:229 msgid "Loading…" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:334 +#: apps/web/src/components/settings/imports-section.tsx:318 msgid "Lost connection to import. Check status in settings." msgstr "" -#: apps/web/src/components/settings/settings-shell.tsx:40 +#: apps/web/src/components/settings/settings-shell.tsx:34 msgid "Manage your account and preferences" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:182 +#: apps/web/src/components/settings/backup-section.tsx:158 msgid "Manual backup" msgstr "" -#: apps/web/src/components/titles/title-seasons.tsx:122 +#: apps/web/src/components/titles/title-seasons.tsx:116 msgid "Mark all episodes as watched?" msgstr "" -#: apps/native/src/components/titles/season-accordion.tsx:164 -#: apps/web/src/components/titles/title-seasons.tsx:115 -#: apps/web/src/components/titles/title-seasons.tsx:141 +#: apps/native/src/components/titles/season-accordion.tsx:152 +#: apps/web/src/components/titles/title-seasons.tsx:109 +#: apps/web/src/components/titles/title-seasons.tsx:135 msgid "Mark All Watched" msgstr "" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:122 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:103 msgid "Mark as Completed" msgstr "" -#: apps/native/src/components/ui/poster-card.tsx:252 +#: apps/native/src/components/ui/poster-card.tsx:226 msgid "Mark as Watched" msgstr "" -#: apps/native/src/components/ui/poster-card.tsx:245 +#: apps/native/src/components/ui/poster-card.tsx:219 msgid "Mark as Watching" msgstr "" -#: apps/native/src/app/title/[id].tsx:449 -#: apps/web/src/components/titles/title-actions.tsx:29 +#: apps/native/src/app/title/[id].tsx:400 +#: apps/web/src/components/titles/title-actions.tsx:27 msgid "Mark Watched" msgstr "" -#: apps/native/src/lib/title-actions.ts:49 +#: apps/native/src/lib/title-actions.ts:50 msgid "Marked \"{titleName}\" as completed" msgstr "" #: apps/native/src/lib/title-actions.ts:63 -#: apps/web/src/components/titles/use-title-actions.ts:147 +#: apps/web/src/components/titles/use-title-actions.ts:134 msgid "Marked \"{titleName}\" as watched" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:360 +#: apps/web/src/components/titles/use-title-actions.ts:337 msgid "Marked all episodes as watched" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:62 -#: apps/native/src/lib/title-actions.ts:50 +#: apps/native/src/hooks/use-title-actions.ts:61 +#: apps/native/src/lib/title-actions.ts:51 msgid "Marked as completed" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:80 -#: apps/native/src/lib/title-actions.ts:64 +#: apps/native/src/hooks/use-title-actions.ts:76 +#: apps/native/src/lib/title-actions.ts:63 msgid "Marked as watched" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:61 -#: apps/native/src/lib/title-actions.ts:37 +#: apps/native/src/hooks/use-title-actions.ts:60 +#: apps/native/src/lib/title-actions.ts:38 msgid "Marked as watching" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:340 +#: apps/web/src/components/settings/account-section.tsx:314 msgid "Member since {memberSince}" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:97 +#: apps/web/src/components/settings/backup-schedule-section.tsx:94 msgid "Monday" msgstr "" -#: apps/native/src/app/title/[id].tsx:585 +#: apps/native/src/app/title/[id].tsx:508 msgid "More Like This" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:541 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:506 msgid "More Settings" msgstr "" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:35 -#: apps/native/src/components/search/search-result-row.tsx:96 -#: apps/web/src/components/explore/hero-banner.tsx:59 -#: apps/web/src/components/titles/title-hero.tsx:143 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:54 +#: apps/web/src/components/titles/title-hero.tsx:141 msgid "Movie" msgstr "" -#: apps/web/src/components/people/filmography-grid.tsx:59 -#: apps/web/src/components/settings/imports-section.tsx:779 +#: apps/web/src/components/people/filmography-grid.tsx:57 +#: apps/web/src/components/settings/imports-section.tsx:741 msgid "Movies" msgstr "" @@ -1289,272 +1289,272 @@ msgstr "" #~ msgid "Movies {periodSelect}" #~ msgstr "Movies {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:162 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Movies {select}" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:60 +#: apps/native/src/app/(tabs)/(home)/index.tsx:51 msgid "Movies this month" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:124 -#: apps/web/src/components/auth-form.tsx:181 +#: apps/native/src/app/(auth)/register.tsx:111 +#: apps/web/src/components/auth-form.tsx:173 msgid "Name" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:107 -#: apps/web/src/components/settings/account-section.tsx:80 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:104 +#: apps/web/src/components/settings/account-section.tsx:72 msgid "Name updated" msgstr "" -#: apps/web/src/components/settings/integration-card.tsx:301 +#: apps/web/src/components/settings/integration-card.tsx:259 msgid "Need more help?" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:501 +#: apps/web/src/components/settings/system-health-section.tsx:456 msgid "Never" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:435 +#: apps/web/src/components/settings/system-health-section.tsx:398 msgid "Never run" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:98 +#: apps/native/src/app/(auth)/register.tsx:88 msgid "New account creation is currently disabled." msgstr "" -#: apps/web/src/routes/_auth/register.tsx:35 +#: apps/web/src/routes/_auth/register.tsx:36 msgid "New accounts are not being accepted right now. Contact the admin if you need access." msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "New backup" msgstr "" -#: apps/native/src/app/change-password.tsx:145 -#: apps/web/src/components/settings/account-section.tsx:463 +#: apps/native/src/app/change-password.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:437 msgid "New password" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:395 +#: apps/web/src/components/settings/account-section.tsx:369 msgid "New password must be at least 8 characters" msgstr "" -#: apps/web/src/components/people/filmography-grid.tsx:86 -#: apps/web/src/components/people/filmography-grid.tsx:99 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:87 msgid "Newest" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:131 +#: apps/web/src/components/settings/backup-schedule-section.tsx:124 msgid "Next backup {distance}" msgstr "" -#: apps/native/src/components/titles/continue-watching-banner.tsx:46 +#: apps/native/src/components/titles/continue-watching-banner.tsx:42 msgid "Next Episode" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:408 +#: apps/web/src/components/settings/system-health-section.tsx:374 msgid "Next run" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:110 -#: apps/web/src/components/settings/system-health-section.tsx:662 +#: apps/web/src/components/settings/backup-section.tsx:99 +#: apps/web/src/components/settings/system-health-section.tsx:607 msgid "No backups yet" msgstr "" -#: apps/native/src/components/ui/offline-banner.ios.tsx:74 -#: apps/native/src/components/ui/offline-banner.ios.tsx:81 -#: apps/native/src/components/ui/offline-banner.tsx:59 +#: apps/native/src/components/ui/offline-banner.ios.tsx:75 +#: apps/native/src/components/ui/offline-banner.ios.tsx:82 +#: apps/native/src/components/ui/offline-banner.tsx:60 msgid "No internet connection" msgstr "" -#: apps/native/src/app/(tabs)/(search)/index.tsx:113 +#: apps/native/src/app/(tabs)/(search)/index.tsx:100 msgid "No results for \"{debouncedQuery}\"" msgstr "" -#: apps/web/src/components/command-palette.tsx:217 +#: apps/web/src/components/command-palette.tsx:212 msgid "No results found." msgstr "" -#: apps/native/src/components/explore/filterable-title-row.tsx:139 -#: apps/web/src/components/explore/filterable-title-row.tsx:151 +#: apps/native/src/components/explore/filterable-title-row.tsx:135 +#: apps/web/src/components/explore/filterable-title-row.tsx:144 msgid "No titles found for this genre." msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:194 -#: apps/web/src/components/settings/integration-card.tsx:176 -#: apps/web/src/components/settings/system-health-section.tsx:249 +#: apps/native/src/components/settings/integration-card.tsx:174 +#: apps/web/src/components/settings/integration-card.tsx:153 +#: apps/web/src/components/settings/system-health-section.tsx:229 msgid "Not configured" msgstr "" -#: apps/native/src/app/+not-found.tsx:17 +#: apps/native/src/app/+not-found.tsx:18 msgid "Not Found" msgstr "" -#: apps/web/src/components/title-card.tsx:67 +#: apps/web/src/components/title-card.tsx:64 msgid "On Watchlist" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:693 +#: apps/web/src/components/settings/imports-section.tsx:657 msgid "Open {source} to enter code" msgstr "" -#: apps/web/src/components/settings/integration-card.tsx:308 +#: apps/web/src/components/settings/integration-card.tsx:266 msgid "Open docs" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:190 +#: apps/web/src/components/settings/integration-configs.tsx:172 msgid "Open Emby, go to <0>Settings > Webhooks" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/native/src/components/settings/integration-configs.ts:88 msgid "Open Emby, go to Settings > Webhooks" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:548 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 msgid "Open in browser…" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:62 +#: apps/web/src/components/settings/integration-configs.tsx:56 msgid "Open Plex, go to <0>Settings > Webhooks<1/>" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:54 +#: apps/native/src/components/settings/integration-configs.ts:55 msgid "Open Plex, go to Settings > Webhooks" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:269 +#: apps/web/src/components/settings/integration-configs.tsx:243 msgid "Open Radarr, go to <0>Settings > Import Lists" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/native/src/components/settings/integration-configs.ts:121 msgid "Open Radarr, go to Settings > Import Lists" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:502 -#: apps/web/src/components/settings/registration-section.tsx:58 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:472 +#: apps/web/src/components/settings/registration-section.tsx:51 msgid "Open registration" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:229 +#: apps/web/src/components/settings/integration-configs.tsx:206 msgid "Open Sonarr, go to <0>Settings > Import Lists" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/native/src/components/settings/integration-configs.ts:103 msgid "Open Sonarr, go to Settings > Import Lists" msgstr "" -#: apps/web/src/components/auth-form.tsx:158 +#: apps/web/src/components/auth-form.tsx:153 msgid "or" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:118 +#: apps/native/src/app/(auth)/login.tsx:108 msgid "OR" msgstr "" -#: apps/native/src/app/+not-found.tsx:27 +#: apps/native/src/app/+not-found.tsx:25 msgid "Page Not Found" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Parsing..." msgstr "" -#: apps/native/src/app/(auth)/login.tsx:167 -#: apps/native/src/app/(auth)/register.tsx:187 -#: apps/web/src/components/auth-form.tsx:221 +#: apps/native/src/app/(auth)/login.tsx:153 +#: apps/native/src/app/(auth)/register.tsx:170 +#: apps/web/src/components/auth-form.tsx:207 msgid "Password" msgstr "" -#: apps/native/src/app/change-password.tsx:76 -#: apps/web/src/components/settings/account-section.tsx:414 +#: apps/native/src/app/change-password.tsx:72 +#: apps/web/src/components/settings/account-section.tsx:388 msgid "Password updated" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:399 +#: apps/web/src/components/settings/account-section.tsx:373 msgid "Passwords do not match" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:128 -#: apps/web/src/components/settings/integration-configs.tsx:284 +#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/web/src/components/settings/integration-configs.tsx:255 msgid "Paste the Radarr URL above into the List URL field" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:110 -#: apps/web/src/components/settings/integration-configs.tsx:244 +#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/web/src/components/settings/integration-configs.tsx:218 msgid "Paste the Sonarr URL above into the List URL field" msgstr "" -#: apps/web/src/components/settings/update-check-section.tsx:63 +#: apps/web/src/components/settings/update-check-section.tsx:54 msgid "Periodically check GitHub for new Sofa releases" msgstr "" -#: apps/native/src/components/search/search-result-row.tsx:38 -#: apps/native/src/components/search/search-result-row.tsx:99 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 msgid "Person" msgstr "" -#: apps/native/src/app/person/[id].tsx:243 -#: apps/web/src/routes/_app/people.$id.tsx:52 +#: apps/native/src/app/person/[id].tsx:209 +#: apps/web/src/routes/_app/people.$id.tsx:50 msgid "Person not found" msgstr "" -#: apps/web/src/components/titles/trailer-dialog.tsx:24 +#: apps/web/src/components/titles/trailer-dialog.tsx:25 msgid "Play trailer" msgstr "" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:107 -#: apps/web/src/components/explore/explore-client.tsx:126 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:89 +#: apps/web/src/components/explore/explore-client.tsx:120 msgid "Popular Movies" msgstr "" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:120 -#: apps/web/src/components/explore/explore-client.tsx:136 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:102 +#: apps/web/src/components/explore/explore-client.tsx:130 msgid "Popular TV Shows" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:181 +#: apps/web/src/components/settings/backup-section.tsx:157 msgid "Pre-restore backup" msgstr "" -#: apps/web/src/components/people/person-hero.tsx:77 +#: apps/web/src/components/people/person-hero.tsx:75 msgid "Producer" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:130 -#: apps/web/src/components/settings/account-section.tsx:130 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:127 +#: apps/web/src/components/settings/account-section.tsx:122 msgid "Profile picture removed" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:119 -#: apps/web/src/components/settings/account-section.tsx:108 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:100 msgid "Profile picture updated" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:196 -#: apps/web/src/components/settings/danger-section.tsx:220 +#: apps/web/src/components/settings/danger-section.tsx:171 +#: apps/web/src/components/settings/danger-section.tsx:190 msgid "Purge all" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:202 +#: apps/web/src/components/settings/danger-section.tsx:176 msgid "Purge all caches?" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:160 +#: apps/web/src/components/settings/danger-section.tsx:143 msgid "Purge image cache?" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:154 -#: apps/web/src/components/settings/danger-section.tsx:177 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:157 msgid "Purge images" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:111 -#: apps/web/src/components/settings/danger-section.tsx:135 +#: apps/web/src/components/settings/danger-section.tsx:103 +#: apps/web/src/components/settings/danger-section.tsx:124 msgid "Purge metadata" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:117 +#: apps/web/src/components/settings/danger-section.tsx:109 msgid "Purge metadata cache?" msgstr "" @@ -1567,27 +1567,27 @@ msgstr "" #. placeholder {0}: metaResult.deletedTitles #. placeholder {1}: metaResult.deletedPersons #. placeholder {2}: imageResult.deletedFiles -#: apps/web/src/components/settings/danger-section.tsx:71 +#: apps/web/src/components/settings/danger-section.tsx:68 msgid "Purged {0, plural, one {# title} other {# titles}}, {1, plural, one {# person} other {# persons}}, {2, plural, one {# file} other {# files}} ({freed} freed)" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:109 -#: apps/web/src/components/settings/danger-section.tsx:152 -#: apps/web/src/components/settings/danger-section.tsx:194 +#: apps/web/src/components/settings/danger-section.tsx:101 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:171 msgid "Purging..." msgstr "" -#: apps/web/src/components/command-palette.tsx:359 +#: apps/web/src/components/command-palette.tsx:336 msgid "Quick Actions" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/native/src/components/settings/integration-configs.ts:118 msgid "Radarr List URL" msgstr "" #. placeholder {0}: input.stars #. placeholder {1}: input.stars -#: apps/native/src/hooks/use-title-actions.ts:93 +#: apps/native/src/hooks/use-title-actions.ts:88 msgid "Rated {0} {1, plural, one {star} other {stars}}" msgstr "" @@ -1595,241 +1595,241 @@ msgstr "" #~ msgid "Rated {0} star{1}" #~ msgstr "Rated {0} star{1}" -#: apps/web/src/components/titles/use-title-actions.ts:131 +#: apps/web/src/components/titles/use-title-actions.ts:118 msgid "Rated {ratingStars} {ratingStars, plural, one {star} other {stars}}" msgstr "" -#: apps/native/src/lib/title-actions.ts:88 +#: apps/native/src/lib/title-actions.ts:86 msgid "Rated {stars, plural, one {# star} other {# stars}}" msgstr "" -#: apps/web/src/components/people/filmography-grid.tsx:88 -#: apps/web/src/components/people/filmography-grid.tsx:102 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:90 msgid "Rating" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:94 -#: apps/native/src/lib/title-actions.ts:90 -#: apps/web/src/components/titles/use-title-actions.ts:132 +#: apps/native/src/hooks/use-title-actions.ts:89 +#: apps/native/src/lib/title-actions.ts:87 +#: apps/web/src/components/titles/use-title-actions.ts:119 msgid "Rating removed" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:782 -#: apps/web/src/components/settings/imports-section.tsx:813 +#: apps/web/src/components/settings/imports-section.tsx:744 +#: apps/web/src/components/settings/imports-section.tsx:775 msgid "Ratings" msgstr "" -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Read more" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:39 -#: apps/web/src/components/settings/integration-card.tsx:339 +#: apps/native/src/components/settings/integration-configs.ts:40 +#: apps/web/src/components/settings/integration-card.tsx:297 msgid "Ready — not polled yet" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:31 -#: apps/web/src/components/settings/integration-card.tsx:332 +#: apps/native/src/components/settings/integration-configs.ts:32 +#: apps/web/src/components/settings/integration-card.tsx:290 msgid "Ready — nothing received yet" msgstr "" -#: apps/web/src/components/command-palette.tsx:315 +#: apps/web/src/components/command-palette.tsx:295 msgid "Recent Searches" msgstr "" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:106 -#: apps/native/src/components/search/recently-viewed-list.tsx:86 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:95 +#: apps/native/src/components/search/recently-viewed-list.tsx:77 msgid "Recently Viewed" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:333 +#: apps/web/src/components/settings/system-health-section.tsx:306 msgid "Recommendations" msgstr "" -#: apps/web/src/components/titles/title-recommendations.tsx:40 +#: apps/web/src/components/titles/title-recommendations.tsx:41 msgid "Recommended" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:154 +#: apps/native/src/app/(tabs)/(home)/index.tsx:137 #: apps/web/src/components/dashboard/recommendations-section.tsx:22 msgid "Recommended for You" msgstr "" -#: apps/web/src/components/auth-form.tsx:143 +#: apps/web/src/components/auth-form.tsx:140 msgid "Redirecting…" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:182 +#: apps/web/src/components/settings/system-health-section.tsx:166 msgid "Refresh" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:172 +#: apps/web/src/components/settings/system-health-section.tsx:156 msgid "Refresh system health" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:140 -#: apps/native/src/components/settings/integration-card.tsx:289 +#: apps/native/src/components/settings/integration-card.tsx:128 +#: apps/native/src/components/settings/integration-card.tsx:248 msgid "Regenerate" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:135 -#: apps/web/src/components/settings/integration-card.tsx:264 +#: apps/native/src/components/settings/integration-card.tsx:123 +#: apps/web/src/components/settings/integration-card.tsx:226 msgid "Regenerate URL" msgstr "" -#: apps/web/src/components/auth-form.tsx:293 -#: apps/web/src/components/landing-page.tsx:176 +#: apps/web/src/components/auth-form.tsx:274 +#: apps/web/src/components/landing-page.tsx:177 msgid "Register" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:116 +#: apps/native/src/app/(auth)/register.tsx:104 msgid "Registering on {serverHost}" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration closed" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:97 -#: apps/web/src/routes/_auth/register.tsx:32 +#: apps/native/src/app/(auth)/register.tsx:87 +#: apps/web/src/routes/_auth/register.tsx:33 msgid "Registration Closed" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration opened" msgstr "" -#: apps/web/src/components/titles/status-button.tsx:84 +#: apps/web/src/components/titles/status-button.tsx:76 msgid "Remove" msgstr "" -#: apps/native/src/components/titles/status-action-button.tsx:101 -#: apps/web/src/components/titles/status-button.tsx:66 +#: apps/native/src/components/titles/status-action-button.tsx:96 +#: apps/web/src/components/titles/status-button.tsx:60 msgid "Remove from library" msgstr "" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:129 -#: apps/native/src/components/ui/poster-card.tsx:259 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:108 +#: apps/native/src/components/ui/poster-card.tsx:233 msgid "Remove from Library" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:277 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:268 msgid "Remove Photo" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:239 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Remove picture" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:199 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Remove profile picture" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:66 -#: apps/native/src/lib/title-actions.ts:75 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/lib/title-actions.ts:74 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Removed from library" msgstr "" -#: apps/web/src/components/titles/title-availability.tsx:138 +#: apps/web/src/components/titles/title-availability.tsx:114 msgid "Rent" msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:165 +#: apps/web/src/components/settings/integration-configs.tsx:150 msgid "Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license." msgstr "" -#: apps/web/src/components/settings/integration-configs.tsx:41 +#: apps/web/src/components/settings/integration-configs.tsx:35 msgid "Requires an active <0>Plex Pass<1/> subscription." msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:52 +#: apps/native/src/components/settings/integration-configs.ts:53 msgid "Requires an active Plex Pass subscription." msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:88 +#: apps/native/src/components/settings/integration-configs.ts:85 msgid "Requires Emby Server 4.7.9+ and an active Emby Premiere license." msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:59 -#: apps/web/src/components/settings/backup-restore-section.tsx:116 +#: apps/web/src/components/settings/backup-restore-section.tsx:57 +#: apps/web/src/components/settings/backup-restore-section.tsx:110 msgid "Restore" msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:89 +#: apps/web/src/components/settings/backup-restore-section.tsx:83 msgid "Restore database?" msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:35 +#: apps/web/src/components/settings/backup-restore-section.tsx:36 msgid "Restore failed" msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:132 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 msgid "Restoring…" msgstr "" -#: apps/web/src/components/command-palette.tsx:222 +#: apps/web/src/components/command-palette.tsx:217 msgid "Results" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:731 +#: apps/web/src/components/settings/imports-section.tsx:695 msgid "Retrieving your watch history, watchlist, and ratings..." msgstr "" -#: apps/native/src/components/settings/integrations-section.tsx:42 -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:73 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:81 -#: apps/web/src/lib/orpc/client.ts:16 +#: apps/native/src/components/settings/integrations-section.tsx:39 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:71 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:79 +#: apps/web/src/lib/orpc/client.ts:17 msgid "Retry" msgstr "" -#: apps/web/src/routes/__root.tsx:119 +#: apps/web/src/routes/__root.tsx:116 msgid "Return home" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:773 +#: apps/web/src/components/settings/imports-section.tsx:735 msgid "Review what was found and choose what to import." msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:558 +#: apps/web/src/components/settings/system-health-section.tsx:509 msgid "Run now" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:102 +#: apps/web/src/components/settings/backup-schedule-section.tsx:99 msgid "Saturday" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:322 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:311 msgid "Save" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:296 +#: apps/web/src/components/settings/account-section.tsx:270 msgid "Save name" msgstr "" -#: apps/web/src/routes/__root.tsx:101 +#: apps/web/src/routes/__root.tsx:98 msgid "Scene not found" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:402 +#: apps/web/src/components/settings/system-health-section.tsx:368 msgid "Schedule" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:201 +#: apps/web/src/components/settings/backup-schedule-section.tsx:186 msgid "Schedule updated" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:179 +#: apps/web/src/components/settings/backup-section.tsx:155 msgid "Scheduled backup" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:178 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups disabled" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:177 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups enabled" msgstr "" @@ -1837,111 +1837,111 @@ msgstr "" msgid "Search for movies and TV shows to start tracking" msgstr "" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:81 -#: apps/native/src/components/search/recently-viewed-list.tsx:64 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:72 +#: apps/native/src/components/search/recently-viewed-list.tsx:55 msgid "Search for movies, shows, or people" msgstr "" -#: apps/web/src/components/command-palette.tsx:186 +#: apps/web/src/components/command-palette.tsx:182 msgid "Search for movies, TV shows, or run commands" msgstr "" -#: apps/web/src/components/command-palette.tsx:195 +#: apps/web/src/components/command-palette.tsx:191 msgid "Search movies & TV shows…" msgstr "" -#: apps/native/src/app/(tabs)/(search)/index.tsx:90 +#: apps/native/src/app/(tabs)/(search)/index.tsx:79 msgid "Search movies, shows, people..." msgstr "" -#: apps/web/src/components/nav-bar.tsx:193 -#: apps/web/src/components/nav-bar.tsx:202 +#: apps/web/src/components/nav-bar.tsx:181 +#: apps/web/src/components/nav-bar.tsx:190 msgid "Search…" msgstr "" #. placeholder {0}: season.seasonNumber -#: apps/native/src/components/titles/season-accordion.tsx:122 -#: apps/native/src/components/titles/season-accordion.tsx:128 -#: apps/web/src/components/titles/use-title-actions.ts:295 -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/native/src/components/titles/season-accordion.tsx:113 +#: apps/native/src/components/titles/season-accordion.tsx:119 +#: apps/web/src/components/titles/use-title-actions.ts:274 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Season {0}" msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:137 -#: apps/native/src/lib/title-actions.ts:124 +#: apps/native/src/hooks/use-title-actions.ts:121 +#: apps/native/src/lib/title-actions.ts:119 msgid "Season watched" msgstr "" -#: apps/native/src/app/title/[id].tsx:536 +#: apps/native/src/app/title/[id].tsx:473 msgid "Seasons" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:497 -#: apps/web/src/routes/_app/settings.tsx:140 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/routes/_app/settings.tsx:131 msgid "Security" msgstr "" -#: apps/web/src/components/landing-page.tsx:105 +#: apps/web/src/components/landing-page.tsx:106 msgid "Self-hosted movie & TV tracker" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:121 +#: apps/web/src/routes/_app/settings.tsx:115 msgid "Server" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:452 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 msgid "Server Health" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:380 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:364 msgid "Server URL" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 msgid "Set password" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:111 -#: apps/native/src/components/settings/integration-configs.ts:129 -#: apps/web/src/components/settings/integration-configs.tsx:247 -#: apps/web/src/components/settings/integration-configs.tsx:287 +#: apps/native/src/components/settings/integration-configs.ts:106 +#: apps/native/src/components/settings/integration-configs.ts:124 +#: apps/web/src/components/settings/integration-configs.tsx:221 +#: apps/web/src/components/settings/integration-configs.tsx:258 msgid "Set your preferred quality profile and root folder" msgstr "" -#: apps/native/src/components/header-avatar.tsx:63 -#: apps/web/src/components/nav-bar.tsx:250 -#: apps/web/src/components/nav-bar.tsx:292 -#: apps/web/src/components/settings/settings-shell.tsx:36 +#: apps/native/src/components/header-avatar.tsx:55 +#: apps/web/src/components/nav-bar.tsx:236 +#: apps/web/src/components/nav-bar.tsx:278 +#: apps/web/src/components/settings/settings-shell.tsx:30 msgid "Settings" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:319 -#: apps/web/src/components/settings/integration-card.tsx:288 +#: apps/native/src/components/settings/integration-card.tsx:271 +#: apps/web/src/components/settings/integration-card.tsx:248 msgid "Setup instructions" msgstr "" -#: apps/web/src/routes/setup.tsx:98 +#: apps/web/src/routes/setup.tsx:95 msgid "Setup required" msgstr "" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Show less" msgstr "" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 msgid "Show more" msgstr "" -#: apps/web/src/components/auth-form.tsx:249 -#: apps/web/src/components/auth-form.tsx:283 +#: apps/web/src/components/auth-form.tsx:233 +#: apps/web/src/components/auth-form.tsx:264 msgid "Sign in" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:205 -#: apps/web/src/components/landing-page.tsx:167 +#: apps/native/src/app/(auth)/login.tsx:183 +#: apps/web/src/components/landing-page.tsx:168 msgid "Sign In" msgstr "" @@ -1949,72 +1949,72 @@ msgstr "" msgid "Sign in instead" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:91 -#: apps/web/src/components/auth-form.tsx:119 +#: apps/native/src/app/(auth)/login.tsx:86 +#: apps/web/src/components/auth-form.tsx:116 msgid "Sign in to continue" msgstr "" #. placeholder {0}: authConfig.data?.oidcProviderName ?? "SSO" #. placeholder {0}: authConfig?.oidcProviderName || "SSO" -#: apps/native/src/app/(auth)/login.tsx:108 -#: apps/web/src/components/auth-form.tsx:145 +#: apps/native/src/app/(auth)/login.tsx:100 +#: apps/web/src/components/auth-form.tsx:142 msgid "Sign in with {0}" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 -#: apps/native/src/components/header-avatar.tsx:87 -#: apps/web/src/components/nav-bar.tsx:262 -#: apps/web/src/components/settings/account-section.tsx:354 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:356 +#: apps/native/src/components/header-avatar.tsx:79 +#: apps/web/src/components/nav-bar.tsx:248 +#: apps/web/src/components/settings/account-section.tsx:328 msgid "Sign out" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:209 -#: apps/native/src/components/header-avatar.tsx:70 -#: apps/native/src/components/header-avatar.tsx:73 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:204 +#: apps/native/src/components/header-avatar.tsx:62 +#: apps/native/src/components/header-avatar.tsx:65 msgid "Sign Out" msgstr "" -#: apps/native/src/app/change-password.tsx:199 -#: apps/web/src/components/settings/account-section.tsx:499 +#: apps/native/src/app/change-password.tsx:193 +#: apps/web/src/components/settings/account-section.tsx:471 msgid "Sign out of other sessions" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:922 +#: apps/web/src/components/settings/imports-section.tsx:880 msgid "Skipped" msgstr "" #. placeholder {0}: data.latestVersion -#: apps/web/src/components/update-toast.tsx:19 +#: apps/web/src/components/update-toast.tsx:18 msgid "Sofa v{0} is available" msgstr "" #: apps/native/src/components/settings/integration-configs.ts:57 -#: apps/native/src/components/settings/integration-configs.ts:75 -#: apps/native/src/components/settings/integration-configs.ts:95 -#: apps/web/src/components/settings/integration-configs.tsx:86 -#: apps/web/src/components/settings/integration-configs.tsx:147 -#: apps/web/src/components/settings/integration-configs.tsx:208 +#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:133 +#: apps/web/src/components/settings/integration-configs.tsx:186 msgid "Sofa will automatically log movies and episodes when you finish watching them" msgstr "" -#: apps/native/src/app/change-password.tsx:81 -#: apps/native/src/app/person/[id].tsx:213 -#: apps/web/src/components/settings/account-section.tsx:417 -#: apps/web/src/routes/__root.tsx:143 +#: apps/native/src/app/change-password.tsx:77 +#: apps/native/src/app/person/[id].tsx:182 +#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/routes/__root.tsx:140 msgid "Something went wrong" msgstr "" -#: apps/web/src/routes/_app/titles.$id.tsx:118 +#: apps/web/src/routes/_app/titles.$id.tsx:113 msgid "Something went wrong while loading this title. Please try again." msgstr "" #: apps/native/src/lib/query-client.ts:33 -#: apps/web/src/lib/orpc/client.ts:14 +#: apps/web/src/lib/orpc/client.ts:15 msgid "Something went wrong…" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/native/src/components/settings/integration-configs.ts:100 msgid "Sonarr List URL" msgstr "" @@ -2022,412 +2022,411 @@ msgstr "" msgid "Start exploring" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:142 +#: apps/native/src/app/(tabs)/(home)/index.tsx:126 msgid "Start tracking movies and shows" msgstr "" -#: apps/web/src/components/auth-form.tsx:117 +#: apps/web/src/components/auth-form.tsx:114 msgid "Start tracking your watches" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:388 +#: apps/web/src/components/settings/backup-schedule-section.tsx:347 msgid "Starting at" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:888 +#: apps/web/src/components/settings/imports-section.tsx:846 msgid "Starting import..." msgstr "" -#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/hooks/use-title-actions.ts:64 msgid "Status updated" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:595 +#: apps/web/src/components/settings/system-health-section.tsx:543 msgid "Storage" msgstr "" -#: apps/web/src/components/titles/title-availability.tsx:137 +#: apps/web/src/components/titles/title-availability.tsx:113 msgid "Stream" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:96 +#: apps/web/src/components/settings/backup-schedule-section.tsx:93 msgid "Sunday" msgstr "" #. placeholder {0}: info.name -#: apps/web/src/components/settings/language-section.tsx:69 +#: apps/web/src/components/settings/language-section.tsx:59 msgid "Switch to {0}" msgstr "" -#: apps/native/src/app/+not-found.tsx:30 +#: apps/native/src/app/+not-found.tsx:28 msgid "The page you're looking for doesn't exist." msgstr "" -#: apps/web/src/routes/_app/people.$id.tsx:55 +#: apps/web/src/routes/_app/people.$id.tsx:53 msgid "The person you're looking for doesn't exist or may have been removed from the database." msgstr "" -#: apps/web/src/routes/_app/titles.$id.tsx:149 +#: apps/web/src/routes/_app/titles.$id.tsx:142 msgid "The title you're looking for doesn't exist or may have been removed from the database." msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:866 +#: apps/web/src/components/settings/imports-section.tsx:825 msgid "This may take a few minutes for large libraries. Please don't close this tab." msgstr "" -#: apps/web/src/components/dashboard/stats-display.tsx:146 +#: apps/web/src/components/dashboard/stats-display.tsx:135 msgid "This Month" msgstr "" -#: apps/web/src/routes/__root.tsx:104 +#: apps/web/src/routes/__root.tsx:101 msgid "This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay." msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:606 -#: apps/web/src/routes/_app/settings.tsx:75 -#: apps/web/src/routes/setup.tsx:187 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:557 +#: apps/web/src/routes/_app/settings.tsx:76 +#: apps/web/src/routes/setup.tsx:180 msgid "This product uses the TMDB API but is not endorsed or certified by TMDB." msgstr "" -#: apps/web/src/components/dashboard/stats-display.tsx:145 +#: apps/web/src/components/dashboard/stats-display.tsx:134 msgid "This Week" msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:163 +#: apps/web/src/components/settings/danger-section.tsx:146 msgid "This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed." msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:205 +#: apps/web/src/components/settings/danger-section.tsx:179 msgid "This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed." msgstr "" -#: apps/web/src/components/settings/danger-section.tsx:120 +#: apps/web/src/components/settings/danger-section.tsx:112 msgid "This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again." msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:136 +#: apps/native/src/components/settings/integration-card.tsx:124 msgid "This will invalidate the current {label} URL. You'll need to update it in {label}." msgstr "" -#: apps/web/src/components/titles/title-seasons.tsx:125 +#: apps/web/src/components/titles/title-seasons.tsx:119 msgid "This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons." msgstr "" #. placeholder {0}: formatBackupDate(backup.createdAt) -#: apps/web/src/components/settings/backup-section.tsx:259 +#: apps/web/src/components/settings/backup-section.tsx:231 msgid "This will permanently delete the backup from <0>{0}. This cannot be undone." msgstr "" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:61 -#: apps/native/src/components/search/recently-viewed-list.tsx:35 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "This will remove all items from your history." msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:92 +#: apps/web/src/components/settings/backup-restore-section.tsx:86 msgid "This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore." msgstr "" -#: apps/web/src/components/dashboard/stats-display.tsx:147 +#: apps/web/src/components/dashboard/stats-display.tsx:136 msgid "This Year" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:100 +#: apps/web/src/components/settings/backup-schedule-section.tsx:97 msgid "Thursday" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:390 +#: apps/web/src/components/settings/backup-schedule-section.tsx:349 msgid "Time:" msgstr "" -#: apps/native/src/app/title/[id].tsx:251 -#: apps/web/src/routes/_app/titles.$id.tsx:146 +#: apps/native/src/app/title/[id].tsx:235 +#: apps/web/src/routes/_app/titles.$id.tsx:139 msgid "Title not found" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:131 -#: apps/web/src/components/settings/integration-configs.tsx:290 +#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/web/src/components/settings/integration-configs.tsx:261 msgid "Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:113 -#: apps/web/src/components/settings/integration-configs.tsx:250 +#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/web/src/components/settings/integration-configs.tsx:224 msgid "Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)" msgstr "" -#: apps/web/src/components/dashboard/stats-display.tsx:144 +#: apps/web/src/components/dashboard/stats-display.tsx:133 msgid "Today" msgstr "" -#: apps/web/src/components/settings/update-check-section.tsx:71 +#: apps/web/src/components/settings/update-check-section.tsx:62 msgid "Toggle automatic update checks" msgstr "" -#: apps/web/src/components/settings/registration-section.tsx:69 +#: apps/web/src/components/settings/registration-section.tsx:62 msgid "Toggle open registration" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:290 +#: apps/web/src/components/settings/backup-schedule-section.tsx:257 msgid "Toggle scheduled backups" msgstr "" -#: apps/web/src/components/landing-page.tsx:131 +#: apps/web/src/components/landing-page.tsx:132 msgid "Track what you watch. Know what's next.<0/>Your library, your data, your rules." msgstr "" -#: apps/web/src/components/titles/trailer-dialog.tsx:37 -#: apps/web/src/components/titles/trailer-dialog.tsx:41 +#: apps/web/src/components/titles/trailer-dialog.tsx:38 +#: apps/web/src/components/titles/trailer-dialog.tsx:42 msgid "Trailer" msgstr "" -#: apps/web/src/components/explore/hero-banner.tsx:78 +#: apps/web/src/components/explore/hero-banner.tsx:70 msgid "Trending today" msgstr "" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:95 -#: apps/web/src/components/explore/explore-client.tsx:112 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:77 +#: apps/web/src/components/explore/explore-client.tsx:108 msgid "Trending Today" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:537 +#: apps/web/src/components/settings/system-health-section.tsx:488 msgid "Trigger job" msgstr "" -#: apps/web/src/routes/__root.tsx:159 +#: apps/web/src/routes/__root.tsx:156 msgid "Try again" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:98 +#: apps/web/src/components/settings/backup-schedule-section.tsx:95 msgid "Tuesday" msgstr "" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:98 -#: apps/web/src/components/explore/hero-banner.tsx:64 -#: apps/web/src/components/people/filmography-grid.tsx:60 -#: apps/web/src/components/titles/title-hero.tsx:153 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:59 +#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/web/src/components/titles/title-hero.tsx:148 msgid "TV" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:334 +#: apps/web/src/components/settings/system-health-section.tsx:307 msgid "TV episodes" msgstr "" -#: apps/native/src/components/search/search-result-row.tsx:37 +#: apps/native/src/components/search/search-result-row.tsx:34 msgid "TV show" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:656 +#: apps/web/src/components/settings/system-health-section.tsx:601 msgid "unknown" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:256 -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "unlimited" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:273 +#: apps/web/src/components/settings/system-health-section.tsx:253 msgid "Unreachable" msgstr "" -#: apps/web/src/components/titles/title-seasons.tsx:340 +#: apps/web/src/components/titles/title-seasons.tsx:318 msgid "Untitled" msgstr "" -#: apps/web/src/components/titles/title-seasons.tsx:221 +#: apps/web/src/components/titles/title-seasons.tsx:205 msgid "Unwatch all" msgstr "" #. placeholder {0}: season.name ?? t`Season ${season.seasonNumber}` -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Unwatched all of {0}" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:174 +#: apps/web/src/components/titles/use-title-actions.ts:156 msgid "Unwatched S{seasonNum} E{epNum}" msgstr "" -#: apps/native/src/components/titles/continue-watching-banner.tsx:79 -#: apps/web/src/components/dashboard/continue-watching-card.tsx:77 +#: apps/native/src/components/titles/continue-watching-banner.tsx:72 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:63 msgid "Up next" msgstr "" #. placeholder {0}: updateCheck.data.updateCheck.latestVersion -#: apps/native/src/app/(tabs)/(settings)/index.tsx:528 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:496 msgid "Update available: {0}" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:337 +#: apps/web/src/components/settings/system-health-section.tsx:310 msgid "Update check" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks disabled" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks enabled" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:84 +#: apps/web/src/components/settings/account-section.tsx:76 msgid "Update failed" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:509 +#: apps/web/src/components/settings/account-section.tsx:481 msgid "Update password" msgstr "" -#: apps/native/src/app/change-password.tsx:218 +#: apps/native/src/app/change-password.tsx:212 msgid "Update Password" msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:134 -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Upload" msgstr "" -#: apps/web/src/components/settings/backup-restore-section.tsx:62 +#: apps/web/src/components/settings/backup-restore-section.tsx:60 msgid "Upload a .db file to replace the current database. A safety backup is created first." msgstr "" #. placeholder {0}: config.accept #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:637 +#: apps/web/src/components/settings/imports-section.tsx:603 msgid "Upload a {0} export from your {1} account settings." msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:634 +#: apps/web/src/components/settings/imports-section.tsx:600 msgid "Upload export file" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:112 +#: apps/web/src/components/settings/account-section.tsx:104 msgid "Upload failed" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:241 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Upload picture" msgstr "" -#: apps/web/src/components/settings/account-section.tsx:200 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Upload profile picture" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:129 +#: apps/native/src/components/settings/integration-card.tsx:117 msgid "URL copied to clipboard" msgstr "" -#: apps/web/src/components/update-toast.tsx:24 +#: apps/web/src/components/update-toast.tsx:23 msgid "View release" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:699 +#: apps/web/src/components/settings/imports-section.tsx:663 msgid "Waiting for authorization..." msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:823 +#: apps/web/src/components/settings/imports-section.tsx:785 msgid "Warnings" msgstr "" #. placeholder {0}: result.warnings.length -#: apps/web/src/components/settings/imports-section.tsx:948 +#: apps/web/src/components/settings/imports-section.tsx:905 msgid "Warnings ({0})" msgstr "" -#: apps/web/src/components/titles/title-seasons.tsx:202 +#: apps/web/src/components/titles/title-seasons.tsx:189 msgid "Watch all" msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:801 +#: apps/web/src/components/settings/imports-section.tsx:763 msgid "Watch history" msgstr "" -#: apps/web/src/components/titles/title-availability.tsx:59 +#: apps/web/src/components/titles/title-availability.tsx:46 msgid "Watch on {name}" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:298 -#: apps/web/src/components/titles/use-title-actions.ts:307 +#: apps/web/src/components/titles/use-title-actions.ts:277 +#: apps/web/src/components/titles/use-title-actions.ts:286 msgid "Watched all of {seasonLabel}" msgstr "" -#: apps/native/src/lib/title-actions.ts:123 +#: apps/native/src/lib/title-actions.ts:119 msgid "Watched all of {seasonName}" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:220 -#: apps/web/src/components/titles/use-title-actions.ts:229 +#: apps/web/src/components/titles/use-title-actions.ts:199 +#: apps/web/src/components/titles/use-title-actions.ts:208 msgid "Watched S{seasonNum} E{epNum}" msgstr "" -#: apps/native/src/components/titles/status-action-button.tsx:42 -#: apps/web/src/components/title-card.tsx:72 -#: apps/web/src/components/titles/status-button.tsx:19 +#: apps/native/src/components/titles/status-action-button.tsx:43 +#: apps/web/src/components/title-card.tsx:69 +#: apps/web/src/components/titles/status-button.tsx:14 msgid "Watching" msgstr "" -#: apps/native/src/components/titles/status-action-button.tsx:82 -#: apps/web/src/components/settings/imports-section.tsx:781 -#: apps/web/src/components/settings/imports-section.tsx:807 -#: apps/web/src/components/titles/status-button.tsx:55 +#: apps/native/src/components/titles/status-action-button.tsx:78 +#: apps/web/src/components/settings/imports-section.tsx:743 +#: apps/web/src/components/settings/imports-section.tsx:769 +#: apps/web/src/components/titles/status-button.tsx:49 msgid "Watchlist" msgstr "" -#: apps/native/src/components/titles/status-action-button.tsx:40 +#: apps/native/src/components/titles/status-action-button.tsx:41 msgid "Watchlisted" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:50 -#: apps/native/src/components/settings/integration-configs.ts:67 -#: apps/native/src/components/settings/integration-configs.ts:85 +#: apps/native/src/components/settings/integration-configs.ts:51 +#: apps/native/src/components/settings/integration-configs.ts:66 +#: apps/native/src/components/settings/integration-configs.ts:82 msgid "Webhook URL" msgstr "" -#: apps/web/src/components/settings/backup-schedule-section.tsx:99 +#: apps/web/src/components/settings/backup-schedule-section.tsx:96 msgid "Wednesday" msgstr "" -#: apps/web/src/components/auth-form.tsx:112 -#: apps/web/src/components/dashboard/welcome-header.tsx:10 +#: apps/web/src/components/auth-form.tsx:110 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back" msgstr "" -#: apps/web/src/components/dashboard/welcome-header.tsx:8 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back, {name}" msgstr "" -#: apps/native/src/app/title/[id].tsx:483 -#: apps/web/src/components/titles/title-availability.tsx:154 +#: apps/native/src/app/title/[id].tsx:430 +#: apps/web/src/components/titles/title-availability.tsx:130 msgid "Where to Watch" msgstr "" -#: apps/web/src/components/titles/title-availability.tsx:141 +#: apps/web/src/components/titles/title-availability.tsx:117 msgid "With Ads" msgstr "" -#: apps/web/src/components/people/person-hero.tsx:75 +#: apps/web/src/components/people/person-hero.tsx:73 msgid "Writer" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:386 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "You'll be signed out to change the server URL." msgstr "" #. placeholder {0}: data.currentVersion -#: apps/web/src/components/update-toast.tsx:20 +#: apps/web/src/components/update-toast.tsx:19 msgid "You're running v{0}." msgstr "" -#: apps/web/src/components/settings/imports-section.tsx:678 +#: apps/web/src/components/settings/imports-section.tsx:642 msgid "Your code:" msgstr "" -#: apps/native/src/app/(tabs)/(home)/index.tsx:141 +#: apps/native/src/app/(tabs)/(home)/index.tsx:125 #: apps/web/src/components/dashboard/stats-section.tsx:32 msgid "Your library is empty" msgstr "" -#: apps/native/src/app/(auth)/register.tsx:134 +#: apps/native/src/app/(auth)/register.tsx:121 msgid "Your name" msgstr "" - diff --git a/packages/i18n/src/po/es.po b/packages/i18n/src/po/es.po index bcd12d5..fc74900 100644 --- a/packages/i18n/src/po/es.po +++ b/packages/i18n/src/po/es.po @@ -8,54 +8,54 @@ msgstr "" "Language: es\n" "Project-Id-Version: sofa\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-03-18 16:04\n" +"PO-Revision-Date: 2026-03-19 00:35\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Crowdin-Project: sofa\n" "X-Crowdin-Project-ID: 881052\n" "X-Crowdin-Language: es-ES\n" -"X-Crowdin-File: /packages/i18n/src/po/en.po\n" -"X-Crowdin-File-ID: 12\n" +"X-Crowdin-File: en.po\n" +"X-Crowdin-File-ID: 14\n" #. placeholder {0}: result.errors.length - 50 -#: apps/web/src/components/settings/imports-section.tsx:938 +#: apps/web/src/components/settings/imports-section.tsx:895 msgid "...and {0} more" -msgstr "" +msgstr "...y {0} más" #. placeholder {0}: systemHealth.data.imageCache.imageCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:482 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:456 msgid "{0, plural, one {# image} other {# images}}" -msgstr "" +msgstr "{0, plural, one {# imagen} other {# imágenes}}" #. placeholder {0}: systemHealth.data.database.titleCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:466 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:442 msgid "{0, plural, one {# title} other {# titles}}" -msgstr "" +msgstr "{0, plural, one {# título} other {# títulos}}" #. placeholder {0}: displayBackups.length #. placeholder {1}: displayBackups.length -#: apps/web/src/components/settings/backup-section.tsx:109 +#: apps/web/src/components/settings/backup-section.tsx:98 msgid "{0} {1, plural, one {backup} other {backups}} stored" -msgstr "" +msgstr "{0} {1, plural, one {backup almacenado} other {backups almacenados}}" #: apps/web/src/components/settings/backup-section.tsx:105 #~ msgid "{0} backup{1} stored" #~ msgstr "{0} backup{1} stored" #. placeholder {0}: backups.backupCount -#: apps/web/src/components/settings/system-health-section.tsx:654 +#: apps/web/src/components/settings/system-health-section.tsx:599 msgid "{0} backups · last <0/>" -msgstr "" +msgstr "{0} backups · último <0/>" #. placeholder {0}: imageCache.imageCount.toLocaleString() -#: apps/web/src/components/settings/system-health-section.tsx:621 +#: apps/web/src/components/settings/system-health-section.tsx:569 msgid "{0} cached images" -msgstr "" +msgstr "{0} imágenes en caché" #. placeholder {0}: member.episodeCount #. placeholder {1}: member.episodeCount !== 1 ? "s" : "" -#: apps/web/src/components/titles/cast-carousel.tsx:80 +#: apps/web/src/components/titles/cast-carousel.tsx:78 msgid "{0} ep{1}" msgstr "" @@ -64,1063 +64,1063 @@ msgstr "" #~ msgstr "{0} images" #. placeholder {0}: stats.watchlist -#: apps/web/src/components/settings/imports-section.tsx:808 +#: apps/web/src/components/settings/imports-section.tsx:770 msgid "{0} items" -msgstr "" +msgstr "{0} elementos" #. placeholder {0}: preview.diagnostics.unresolved -#: apps/web/src/components/settings/imports-section.tsx:788 +#: apps/web/src/components/settings/imports-section.tsx:750 msgid "{0} items have no external IDs and will be resolved by title search, which may be less accurate." -msgstr "" +msgstr "{0} elementos no tienen IDs externos y se resolverán por búsqueda de título, lo que puede ser menos preciso." #. placeholder {0}: stats.movies #. placeholder {1}: stats.episodes -#: apps/web/src/components/settings/imports-section.tsx:802 +#: apps/web/src/components/settings/imports-section.tsx:764 msgid "{0} movies, {1} episodes" -msgstr "" +msgstr "{0} películas, {1} episodios" #. placeholder {0}: stats.ratings -#: apps/web/src/components/settings/imports-section.tsx:814 +#: apps/web/src/components/settings/imports-section.tsx:776 msgid "{0} ratings" -msgstr "" +msgstr "{0} valoraciones" #: apps/native/src/app/(tabs)/(settings)/index.tsx:456 #~ msgid "{0} titles" #~ msgstr "{0} titles" #. placeholder {0}: JOB_LABELS[name] ?? name -#: apps/web/src/components/settings/system-health-section.tsx:343 +#: apps/web/src/components/settings/system-health-section.tsx:316 msgid "{0} triggered" -msgstr "" +msgstr "{0} iniciado" #. placeholder {0}: item.watchedEpisodes #. placeholder {1}: item.totalEpisodes #. placeholder {2}: item.totalEpisodes -#: apps/web/src/components/dashboard/continue-watching-card.tsx:93 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:78 msgid "{0}/{1} {2, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{0}/{1} {2, plural, one {episodio} other {episodios}}" #: apps/web/src/components/dashboard/continue-watching-card.tsx:92 #~ msgid "{0}/{1} episodes" #~ msgstr "{0}/{1} episodes" -#: apps/web/src/components/titles/use-title-actions.ts:221 -#: apps/web/src/components/titles/use-title-actions.ts:299 +#: apps/web/src/components/titles/use-title-actions.ts:200 +#: apps/web/src/components/titles/use-title-actions.ts:278 msgid "{count} earlier {count, plural, one {episode} other {episodes}} unwatched" -msgstr "" +msgstr "{count} {count, plural, one {episodio anterior sin ver} other {episodios anteriores sin ver}}" #. placeholder {0}: activeJobs.length -#: apps/web/src/components/settings/system-health-section.tsx:385 +#: apps/web/src/components/settings/system-health-section.tsx:351 msgid "{healthyCount} of {0} jobs healthy" -msgstr "" +msgstr "{healthyCount} de {0} tareas en buen estado" -#: apps/native/src/components/settings/integration-card.tsx:96 -#: apps/web/src/components/settings/integration-card.tsx:106 +#: apps/native/src/components/settings/integration-card.tsx:84 +#: apps/web/src/components/settings/integration-card.tsx:89 msgid "{label} connected" -msgstr "" +msgstr "{label} conectado" -#: apps/native/src/components/settings/integration-card.tsx:106 -#: apps/web/src/components/settings/integration-card.tsx:122 +#: apps/native/src/components/settings/integration-card.tsx:94 +#: apps/web/src/components/settings/integration-card.tsx:105 msgid "{label} disconnected" -msgstr "" +msgstr "{label} desconectado" -#: apps/native/src/components/settings/integration-card.tsx:116 -#: apps/web/src/components/settings/integration-card.tsx:138 +#: apps/native/src/components/settings/integration-card.tsx:104 +#: apps/web/src/components/settings/integration-card.tsx:119 msgid "{label} URL regenerated" -msgstr "" +msgstr "URL de {label} regenerada" -#: apps/web/src/components/title-card.tsx:166 +#: apps/web/src/components/title-card.tsx:152 msgid "{watched}/{total} episodes" -msgstr "" +msgstr "{watched}/{total} episodios" #. placeholder {0}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:122 +#: apps/native/src/components/titles/season-accordion.tsx:113 msgid "{watchedCount} of {0} episodes watched" -msgstr "" +msgstr "{watchedCount} de {0} episodios vistos" #. placeholder {0}: episodes.length #. placeholder {1}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:131 +#: apps/native/src/components/titles/season-accordion.tsx:122 msgid "{watchedCount}/{0} {1, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{watchedCount}/{0} {1, plural, one {episodio} other {episodios}}" #: apps/native/src/components/titles/season-accordion.tsx:130 #~ msgid "{watchedCount}/{0} episodes" #~ msgstr "{watchedCount}/{0} episodes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:231 -#: apps/web/src/components/settings/account-section.tsx:175 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:224 +#: apps/web/src/components/settings/account-section.tsx:166 msgid "Account" -msgstr "" +msgstr "Cuenta" -#: apps/web/src/components/settings/system-health-section.tsx:412 +#: apps/web/src/components/settings/system-health-section.tsx:378 msgid "Actions" -msgstr "" +msgstr "Acciones" -#: apps/web/src/components/people/person-hero.tsx:71 +#: apps/web/src/components/people/person-hero.tsx:69 msgid "Actor" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:72 +#: apps/native/src/components/settings/integration-configs.ts:71 msgid "Add a \"Generic Destination\" and paste the URL above" -msgstr "" +msgstr "Añade un \"Generic Destination\" y pega la URL anterior" -#: apps/web/src/components/settings/integration-configs.tsx:131 +#: apps/web/src/components/settings/integration-configs.tsx:121 msgid "Add a <0>Generic Destination and paste the URL above" -msgstr "" +msgstr "Añade un <0>Generic Destination y pega la URL anterior" -#: apps/native/src/components/settings/integration-configs.ts:92 -#: apps/web/src/components/settings/integration-configs.tsx:198 +#: apps/native/src/components/settings/integration-configs.ts:89 +#: apps/web/src/components/settings/integration-configs.tsx:178 msgid "Add a new webhook and paste the URL above" -msgstr "" +msgstr "Añade un nuevo webhook y pega la URL anterior" -#: apps/web/src/components/explore/hero-banner.tsx:99 +#: apps/web/src/components/explore/hero-banner.tsx:87 msgid "Add to Library" -msgstr "" +msgstr "Añadir a la biblioteca" -#: apps/native/src/components/titles/status-action-button.tsx:72 +#: apps/native/src/components/titles/status-action-button.tsx:73 msgid "Add to watchlist" -msgstr "" +msgstr "Añadir a la lista" -#: apps/native/src/components/explore/hero-banner.tsx:157 -#: apps/native/src/components/ui/poster-card.tsx:238 -#: apps/web/src/components/title-card.tsx:146 +#: apps/native/src/components/explore/hero-banner.tsx:132 +#: apps/native/src/components/ui/poster-card.tsx:212 +#: apps/web/src/components/title-card.tsx:133 msgid "Add to Watchlist" -msgstr "" +msgstr "Añadir a la lista" -#: apps/native/src/lib/title-actions.ts:23 +#: apps/native/src/lib/title-actions.ts:24 msgid "Added \"{titleName}\" to watchlist" -msgstr "" +msgstr "\"{titleName}\" añadido a la lista" #: apps/native/src/hooks/use-title-actions.ts:44 -#: apps/native/src/hooks/use-title-actions.ts:60 -#: apps/native/src/lib/title-actions.ts:24 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:59 +#: apps/native/src/lib/title-actions.ts:25 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Added to watchlist" -msgstr "" +msgstr "Añadido a la lista" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:353 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:454 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:499 -#: apps/web/src/components/nav-bar.tsx:235 -#: apps/web/src/components/settings/account-section.tsx:335 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:342 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/components/nav-bar.tsx:223 +#: apps/web/src/components/settings/account-section.tsx:309 msgid "Admin" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:124 +#: apps/web/src/routes/_app/settings.tsx:118 msgid "Admin only" -msgstr "" +msgstr "Solo administradores" -#: apps/native/src/app/person/[id].tsx:308 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "age {age}" -msgstr "" +msgstr "edad {age}" -#: apps/native/src/components/explore/filterable-title-row.tsx:119 -#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/native/src/components/explore/filterable-title-row.tsx:117 +#: apps/web/src/components/people/filmography-grid.tsx:56 msgid "All" -msgstr "" +msgstr "Todo" -#: apps/web/src/components/settings/registration-section.tsx:61 +#: apps/web/src/components/settings/registration-section.tsx:54 msgid "Allow new users to create accounts" -msgstr "" +msgstr "Permitir que nuevos usuarios creen cuentas" -#: apps/web/src/components/auth-form.tsx:278 +#: apps/web/src/components/auth-form.tsx:259 msgid "Already have an account?" -msgstr "" +msgstr "¿Ya tienes una cuenta?" -#: apps/native/src/app/(auth)/register.tsx:239 +#: apps/native/src/app/(auth)/register.tsx:211 msgid "Already have an account? Sign in" -msgstr "" +msgstr "¿Ya tienes una cuenta? Inicia sesión" -#: apps/web/src/routes/__root.tsx:146 +#: apps/web/src/routes/__root.tsx:143 msgid "An unexpected error occurred while loading this page. You can try again or head back to the dashboard." -msgstr "" +msgstr "Ocurrió un error inesperado al cargar esta página. Puedes intentarlo de nuevo o volver al panel." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:427 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:407 msgid "Anonymous usage reporting" -msgstr "" +msgstr "Informe de uso anónimo" -#: apps/web/src/routes/_app/settings.tsx:102 +#: apps/web/src/routes/_app/settings.tsx:99 msgid "App Settings" -msgstr "" +msgstr "Ajustes de la app" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:378 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:362 msgid "Application" -msgstr "" +msgstr "Aplicación" -#: apps/native/src/components/settings/integration-card.tsx:151 +#: apps/native/src/components/settings/integration-card.tsx:139 msgid "Are you sure you want to disconnect {label}? The current URL will stop working." -msgstr "" +msgstr "¿Seguro que quieres desconectar {label}? La URL actual dejará de funcionar." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/components/header-avatar.tsx:70 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/components/header-avatar.tsx:62 msgid "Are you sure you want to sign out?" -msgstr "" +msgstr "¿Seguro que quieres cerrar sesión?" -#: apps/web/src/components/settings/imports-section.tsx:450 +#: apps/web/src/components/settings/imports-section.tsx:429 msgid "Authorization succeeded but failed to fetch your library. Please try again." -msgstr "" +msgstr "La autorización fue exitosa, pero no se pudo obtener tu biblioteca. Por favor, inténtalo de nuevo." -#: apps/web/src/components/settings/imports-section.tsx:440 +#: apps/web/src/components/settings/imports-section.tsx:419 msgid "Authorization was denied. Please try again." -msgstr "" +msgstr "La autorización fue denegada. Por favor, inténtalo de nuevo." #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:580 msgid "Authorize Sofa to read your {0} library. No password shared." -msgstr "" +msgstr "Autoriza a Sofa a leer tu biblioteca de {0}. No se comparte ninguna contraseña." -#: apps/web/src/components/settings/update-check-section.tsx:60 +#: apps/web/src/components/settings/update-check-section.tsx:51 msgid "Automatic update checks" -msgstr "" +msgstr "Comprobaciones automáticas de actualizaciones" -#: apps/web/src/components/settings/backup-schedule-section.tsx:279 +#: apps/web/src/components/settings/backup-schedule-section.tsx:248 msgid "Automatically back up your database on a schedule" -msgstr "" +msgstr "Realiza copias de seguridad automáticas de tu base de datos de forma programada" -#: apps/web/src/components/settings/system-health-section.tsx:332 +#: apps/web/src/components/settings/system-health-section.tsx:305 msgid "Availability" -msgstr "" +msgstr "Disponibilidad" -#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:94 msgid "Back to Login" -msgstr "" +msgstr "Volver al inicio de sesión" -#: apps/web/src/components/settings/system-health-section.tsx:382 +#: apps/web/src/components/settings/system-health-section.tsx:348 msgid "Background jobs" -msgstr "" +msgstr "Tareas en segundo plano" -#: apps/web/src/components/settings/system-health-section.tsx:336 +#: apps/web/src/components/settings/system-health-section.tsx:309 msgid "Backup" -msgstr "" +msgstr "Copia de seguridad" -#: apps/web/src/components/settings/backup-section.tsx:69 +#: apps/web/src/components/settings/backup-section.tsx:62 msgid "Backup created" -msgstr "" +msgstr "Copia de seguridad creada" -#: apps/web/src/components/settings/backup-section.tsx:94 +#: apps/web/src/components/settings/backup-section.tsx:85 msgid "Backup deleted" -msgstr "" +msgstr "Copia de seguridad eliminada" -#: apps/web/src/components/settings/backup-schedule-section.tsx:234 +#: apps/web/src/components/settings/backup-schedule-section.tsx:216 msgid "Backup schedule" -msgstr "" +msgstr "Programación de copias de seguridad" -#: apps/web/src/components/settings/system-health-section.tsx:641 -#: apps/web/src/routes/_app/settings.tsx:166 +#: apps/web/src/components/settings/system-health-section.tsx:589 +#: apps/web/src/routes/_app/settings.tsx:154 msgid "Backups" -msgstr "" +msgstr "Copias de seguridad" #: apps/web/src/components/settings/backup-schedule-section.tsx:272 #~ msgid "backups." #~ msgstr "backups." -#: apps/web/src/components/titles/title-availability.tsx:139 +#: apps/web/src/components/titles/title-availability.tsx:115 msgid "Buy" -msgstr "" +msgstr "Comprar" -#: apps/web/src/components/settings/danger-section.tsx:89 +#: apps/web/src/components/settings/danger-section.tsx:85 msgid "Cache management" -msgstr "" +msgstr "Gestión de caché" -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:66 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:74 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:67 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:75 msgid "Can't reach server" -msgstr "" +msgstr "No se puede contactar con el servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:207 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:332 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:388 -#: apps/native/src/components/header-avatar.tsx:71 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:63 -#: apps/native/src/components/search/recently-viewed-list.tsx:37 -#: apps/native/src/components/settings/integration-card.tsx:138 -#: apps/native/src/components/settings/integration-card.tsx:153 -#: apps/web/src/components/settings/account-section.tsx:505 -#: apps/web/src/components/settings/backup-restore-section.tsx:107 -#: apps/web/src/components/settings/backup-section.tsx:270 -#: apps/web/src/components/settings/danger-section.tsx:129 -#: apps/web/src/components/settings/danger-section.tsx:171 -#: apps/web/src/components/settings/danger-section.tsx:214 -#: apps/web/src/components/settings/imports-section.tsx:645 -#: apps/web/src/components/settings/imports-section.tsx:710 -#: apps/web/src/components/settings/imports-section.tsx:837 -#: apps/web/src/components/titles/title-seasons.tsx:133 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:202 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:321 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:369 +#: apps/native/src/components/header-avatar.tsx:63 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:58 +#: apps/native/src/components/search/recently-viewed-list.tsx:32 +#: apps/native/src/components/settings/integration-card.tsx:126 +#: apps/native/src/components/settings/integration-card.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/web/src/components/settings/backup-restore-section.tsx:101 +#: apps/web/src/components/settings/backup-section.tsx:240 +#: apps/web/src/components/settings/danger-section.tsx:121 +#: apps/web/src/components/settings/danger-section.tsx:154 +#: apps/web/src/components/settings/danger-section.tsx:187 +#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:674 +#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/titles/title-seasons.tsx:127 msgid "Cancel" -msgstr "" +msgstr "Cancelar" -#: apps/web/src/components/settings/account-section.tsx:307 +#: apps/web/src/components/settings/account-section.tsx:281 msgid "Cancel editing" -msgstr "" +msgstr "Cancelar edición" -#: apps/native/src/app/title/[id].tsx:559 +#: apps/native/src/app/title/[id].tsx:489 #: apps/web/src/components/titles/cast-carousel.tsx:21 msgid "Cast" -msgstr "" +msgstr "Reparto" -#: apps/web/src/components/titles/use-title-actions.ts:223 -#: apps/web/src/components/titles/use-title-actions.ts:301 +#: apps/web/src/components/titles/use-title-actions.ts:202 +#: apps/web/src/components/titles/use-title-actions.ts:280 msgid "Catch up" -msgstr "" +msgstr "Ponerse al día" #. placeholder {0}: episodeIds.length #. placeholder {1}: episodeIds.length -#: apps/web/src/components/titles/use-title-actions.ts:82 +#: apps/web/src/components/titles/use-title-actions.ts:72 msgid "Caught up — marked {0} {1, plural, one {episode} other {episodes}} as watched" -msgstr "" +msgstr "Al día — {0} {1, plural, one {episodio marcado como visto} other {episodios marcados como vistos}}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 -#: apps/web/src/components/settings/account-section.tsx:427 -#: apps/web/src/components/settings/account-section.tsx:432 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 +#: apps/web/src/components/settings/account-section.tsx:401 +#: apps/web/src/components/settings/account-section.tsx:406 msgid "Change password" -msgstr "" +msgstr "Cambiar contraseña" -#: apps/native/src/app/change-password.tsx:98 +#: apps/native/src/app/change-password.tsx:94 msgid "Change Password" -msgstr "" +msgstr "Cambiar contraseña" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:267 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:258 msgid "Change Photo" -msgstr "" +msgstr "Cambiar foto" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:385 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "Change Server" -msgstr "" +msgstr "Cambiar servidor" -#: apps/web/src/components/setup/refresh-button.tsx:30 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Check configuration" -msgstr "" +msgstr "Comprobar configuración" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:483 msgid "Check for updates" -msgstr "" +msgstr "Buscar actualizaciones" -#: apps/web/src/components/settings/system-health-section.tsx:215 +#: apps/web/src/components/settings/system-health-section.tsx:196 msgid "Checked <0/>" -msgstr "" +msgstr "Comprobado <0/>" -#: apps/web/src/components/setup/refresh-button.tsx:28 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Checking…" -msgstr "" +msgstr "Comprobando…" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:587 +#: apps/web/src/components/settings/imports-section.tsx:556 msgid "Choose how to import your {0} data." -msgstr "" +msgstr "Elige cómo importar tus datos de {0}." #: apps/web/src/components/settings/language-section.tsx:29 #~ msgid "Choose your preferred display language" #~ msgstr "Choose your preferred display language" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:65 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:115 -#: apps/native/src/components/search/recently-viewed-list.tsx:39 -#: apps/native/src/components/search/recently-viewed-list.tsx:95 -msgid "Clear" -msgstr "" - -#: apps/web/src/components/command-palette.tsx:322 -msgid "Clear all" -msgstr "" - #: apps/native/src/components/search/recently-viewed-list.ios.tsx:60 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:104 #: apps/native/src/components/search/recently-viewed-list.tsx:34 +#: apps/native/src/components/search/recently-viewed-list.tsx:86 +msgid "Clear" +msgstr "Limpiar" + +#: apps/web/src/components/command-palette.tsx:302 +msgid "Clear all" +msgstr "Limpiar todo" + +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "Clear Recently Viewed?" -msgstr "" +msgstr "¿Limpiar vistos recientemente?" -#: apps/native/src/components/settings/integration-configs.ts:109 -#: apps/native/src/components/settings/integration-configs.ts:127 +#: apps/native/src/components/settings/integration-configs.ts:104 +#: apps/native/src/components/settings/integration-configs.ts:122 msgid "Click \"+\" and select \"Custom Lists\"" -msgstr "" +msgstr "Haz clic en \"+\" y selecciona \"Custom Lists\"" -#: apps/native/src/components/settings/integration-configs.ts:55 +#: apps/native/src/components/settings/integration-configs.ts:56 msgid "Click \"Add Webhook\" and paste the URL above" -msgstr "" +msgstr "Haz clic en \"Add Webhook\" y pega la URL anterior" -#: apps/web/src/components/settings/integration-configs.tsx:237 -#: apps/web/src/components/settings/integration-configs.tsx:277 +#: apps/web/src/components/settings/integration-configs.tsx:212 +#: apps/web/src/components/settings/integration-configs.tsx:249 msgid "Click <0>+ and select <1>Custom Lists" -msgstr "" +msgstr "Haz clic en <0>+ y selecciona <1>Custom Lists" -#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:73 msgid "Click <0>Add Webhook and paste the URL above" -msgstr "" +msgstr "Haz clic en <0>Add Webhook y pega la URL anterior" #: apps/native/src/components/navigation/modal-stack-header.tsx:14 msgid "Close" -msgstr "" +msgstr "Cerrar" -#: apps/native/src/app/(tabs)/(home)/index.tsx:63 -#: apps/native/src/components/titles/status-action-button.tsx:44 -#: apps/web/src/components/dashboard/stats-display.tsx:238 -#: apps/web/src/components/title-card.tsx:77 -#: apps/web/src/components/titles/status-button.tsx:30 +#: apps/native/src/app/(tabs)/(home)/index.tsx:54 +#: apps/native/src/components/titles/status-action-button.tsx:45 +#: apps/web/src/components/dashboard/stats-display.tsx:219 +#: apps/web/src/components/title-card.tsx:74 +#: apps/web/src/components/titles/status-button.tsx:25 msgid "Completed" -msgstr "" +msgstr "Completado" -#: apps/native/src/app/change-password.tsx:173 -#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/native/src/app/change-password.tsx:167 +#: apps/web/src/components/settings/account-section.tsx:451 msgid "Confirm new password" -msgstr "" +msgstr "Confirmar nueva contraseña" -#: apps/native/src/app/(auth)/server-url.tsx:207 -#: apps/web/src/components/settings/imports-section.tsx:499 +#: apps/native/src/app/(auth)/server-url.tsx:182 +#: apps/web/src/components/settings/imports-section.tsx:478 msgid "Connect" -msgstr "" +msgstr "Conectar" #. placeholder {0}: config.label -#: apps/web/src/components/settings/integration-card.tsx:203 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connect {0}" -msgstr "" +msgstr "Conectar {0}" -#: apps/native/src/components/settings/integration-card.tsx:238 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connect {label}" -msgstr "" +msgstr "Conectar {label}" -#: apps/web/src/components/settings/imports-section.tsx:665 +#: apps/web/src/components/settings/imports-section.tsx:631 msgid "Connect to {source}" -msgstr "" +msgstr "Conectar con {source}" -#: apps/web/src/routes/setup.tsx:101 +#: apps/web/src/routes/setup.tsx:98 msgid "Connect to TMDB" -msgstr "" +msgstr "Conectar con TMDB" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:608 +#: apps/web/src/components/settings/imports-section.tsx:577 msgid "Connect with {0}" -msgstr "" +msgstr "Conectar con {0}" -#: apps/native/src/app/(auth)/server-url.tsx:197 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:474 -#: apps/web/src/components/settings/system-health-section.tsx:256 +#: apps/native/src/app/(auth)/server-url.tsx:176 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:449 +#: apps/web/src/components/settings/system-health-section.tsx:236 msgid "Connected" -msgstr "" +msgstr "Conectado" -#: apps/web/src/components/settings/imports-section.tsx:722 +#: apps/web/src/components/settings/imports-section.tsx:686 msgid "Connected to {source}" -msgstr "" +msgstr "Conectado a {source}" -#: apps/native/src/app/(auth)/login.tsx:240 +#: apps/native/src/app/(auth)/login.tsx:211 msgid "Connected to <0>{serverHost}. Tap to change." -msgstr "" +msgstr "Conectado a <0>{serverHost}. Toca para cambiar." -#: apps/native/src/app/(auth)/server-url.tsx:186 +#: apps/native/src/app/(auth)/server-url.tsx:169 msgid "Connecting to server..." -msgstr "" +msgstr "Conectando al servidor..." -#: apps/web/src/components/settings/integration-card.tsx:201 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connecting..." -msgstr "" +msgstr "Conectando..." -#: apps/native/src/components/settings/integration-card.tsx:237 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connecting…" -msgstr "" +msgstr "Conectando…" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:390 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:371 msgid "Continue" -msgstr "" +msgstr "Continuar" -#: apps/native/src/app/(tabs)/(home)/index.tsx:113 -#: apps/web/src/components/dashboard/continue-watching-section.tsx:25 +#: apps/native/src/app/(tabs)/(home)/index.tsx:99 +#: apps/web/src/components/dashboard/continue-watching-section.tsx:22 msgid "Continue Watching" -msgstr "" +msgstr "Continuar viendo" -#: apps/web/src/components/setup/copy-button.tsx:25 +#: apps/web/src/components/setup/copy-button.tsx:26 msgid "Copied" -msgstr "" +msgstr "Copiado" -#: apps/web/src/components/setup/copy-button.tsx:30 +#: apps/web/src/components/setup/copy-button.tsx:31 msgid "Copy" -msgstr "" +msgstr "Copiar" -#: apps/web/src/components/settings/integration-card.tsx:246 +#: apps/web/src/components/settings/integration-card.tsx:208 msgid "Copy URL" -msgstr "" +msgstr "Copiar URL" -#: apps/native/src/components/settings/integrations-section.tsx:29 +#: apps/native/src/components/settings/integrations-section.tsx:30 msgid "Could not load integrations" -msgstr "" +msgstr "No se pudieron cargar las integraciones" -#: apps/native/src/app/person/[id].tsx:216 +#: apps/native/src/app/person/[id].tsx:185 msgid "Could not load person details" -msgstr "" +msgstr "No se pudieron cargar los detalles de la persona" -#: apps/web/src/components/auth-form.tsx:247 +#: apps/web/src/components/auth-form.tsx:231 msgid "Create account" -msgstr "" +msgstr "Crear cuenta" -#: apps/native/src/app/(auth)/register.tsx:115 -#: apps/native/src/app/(auth)/register.tsx:225 +#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:200 msgid "Create Account" -msgstr "" +msgstr "Crear cuenta" -#: apps/native/src/app/(auth)/login.tsx:216 +#: apps/native/src/app/(auth)/login.tsx:194 msgid "Create an account" -msgstr "" +msgstr "Crear una cuenta" #: apps/web/src/components/auth-form.tsx:110 msgid "Create your account" -msgstr "" +msgstr "Crea tu cuenta" -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "Creating…" -msgstr "" +msgstr "Creando…" -#: apps/native/src/app/change-password.tsx:120 -#: apps/web/src/components/settings/account-section.tsx:449 +#: apps/native/src/app/change-password.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:423 msgid "Current password" -msgstr "" +msgstr "Contraseña actual" -#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/components/settings/account-section.tsx:365 msgid "Current password is required" -msgstr "" +msgstr "La contraseña actual es obligatoria" -#: apps/web/src/routes/_app/settings.tsx:195 +#: apps/web/src/routes/_app/settings.tsx:180 msgid "Danger Zone" -msgstr "" +msgstr "Zona de peligro" -#: apps/web/src/routes/__root.tsx:167 -#: apps/web/src/routes/_app/people.$id.tsx:78 -#: apps/web/src/routes/_app/titles.$id.tsx:126 -#: apps/web/src/routes/_app/titles.$id.tsx:172 +#: apps/web/src/routes/__root.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:76 +#: apps/web/src/routes/_app/titles.$id.tsx:119 +#: apps/web/src/routes/_app/titles.$id.tsx:165 msgid "Dashboard" -msgstr "" +msgstr "Panel" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:463 -#: apps/web/src/components/settings/system-health-section.tsx:229 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:439 +#: apps/web/src/components/settings/system-health-section.tsx:210 msgid "Database" -msgstr "" +msgstr "Base de datos" -#: apps/web/src/components/settings/backup-section.tsx:126 +#: apps/web/src/components/settings/backup-section.tsx:112 msgid "Database backups" -msgstr "" +msgstr "Copias de seguridad de la base de datos" -#: apps/web/src/components/settings/backup-restore-section.tsx:31 +#: apps/web/src/components/settings/backup-restore-section.tsx:32 msgid "Database restored. Reloading..." -msgstr "" +msgstr "Base de datos restaurada. Recargando..." -#: apps/web/src/components/settings/backup-schedule-section.tsx:342 +#: apps/web/src/components/settings/backup-schedule-section.tsx:309 msgid "Day:" -msgstr "" +msgstr "Día:" +#: apps/web/src/components/settings/backup-section.tsx:222 #: apps/web/src/components/settings/backup-section.tsx:250 -#: apps/web/src/components/settings/backup-section.tsx:280 msgid "Delete" -msgstr "" +msgstr "Eliminar" -#: apps/web/src/components/settings/backup-section.tsx:235 +#: apps/web/src/components/settings/backup-section.tsx:211 msgid "Delete backup" -msgstr "" +msgstr "Eliminar copia de seguridad" -#: apps/web/src/components/settings/backup-section.tsx:256 +#: apps/web/src/components/settings/backup-section.tsx:228 msgid "Delete backup?" -msgstr "" +msgstr "¿Eliminar copia de seguridad?" #. placeholder {0}: data.deletedFiles #: apps/web/src/components/settings/danger-section.tsx:54 msgid "Deleted {0, plural, one {# file} other {# files}}, freed {freed}" -msgstr "" +msgstr "{0, plural, one {# archivo eliminado} other {# archivos eliminados}}, liberado {freed}" -#: apps/web/src/components/settings/imports-section.tsx:412 -#: apps/web/src/components/settings/imports-section.tsx:444 +#: apps/web/src/components/settings/imports-section.tsx:394 +#: apps/web/src/components/settings/imports-section.tsx:423 msgid "Device code expired. Please try again." -msgstr "" +msgstr "El código del dispositivo ha expirado. Por favor, inténtalo de nuevo." -#: apps/native/src/app/person/[id].tsx:307 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "died at {age}" -msgstr "" +msgstr "falleció a los {age}" -#: apps/web/src/components/people/person-hero.tsx:73 +#: apps/web/src/components/people/person-hero.tsx:71 msgid "Director" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:431 -#: apps/web/src/components/settings/system-health-section.tsx:632 +#: apps/web/src/components/settings/system-health-section.tsx:394 +#: apps/web/src/components/settings/system-health-section.tsx:580 msgid "Disabled" -msgstr "" +msgstr "Desactivado" -#: apps/native/src/components/settings/integration-card.tsx:155 -#: apps/native/src/components/settings/integration-card.tsx:298 -#: apps/web/src/components/settings/integration-card.tsx:274 +#: apps/native/src/components/settings/integration-card.tsx:143 +#: apps/native/src/components/settings/integration-card.tsx:257 +#: apps/web/src/components/settings/integration-card.tsx:234 msgid "Disconnect" -msgstr "" +msgstr "Desconectar" -#: apps/native/src/components/settings/integration-card.tsx:150 +#: apps/native/src/components/settings/integration-card.tsx:138 msgid "Disconnect {label}" -msgstr "" +msgstr "Desconectar {label}" -#: apps/native/src/app/(auth)/server-url.tsx:242 +#: apps/native/src/app/(auth)/server-url.tsx:217 msgid "Don't have a server?" -msgstr "" +msgstr "¿No tienes un servidor?" -#: apps/web/src/components/auth-form.tsx:288 +#: apps/web/src/components/auth-form.tsx:269 msgid "Don't have an account?" -msgstr "" +msgstr "¿No tienes una cuenta?" -#: apps/web/src/components/settings/imports-section.tsx:962 +#: apps/web/src/components/settings/imports-section.tsx:918 msgid "Done" -msgstr "" +msgstr "Hecho" #: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to clear this filter" -msgstr "" +msgstr "Doble toque para eliminar este filtro" -#: apps/native/src/components/explore/genre-chip.tsx:28 +#: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to filter by {label}" -msgstr "" +msgstr "Doble toque para filtrar por {label}" -#: apps/web/src/components/settings/backup-section.tsx:71 -#: apps/web/src/components/settings/backup-section.tsx:223 +#: apps/web/src/components/settings/backup-section.tsx:64 +#: apps/web/src/components/settings/backup-section.tsx:199 msgid "Download" -msgstr "" +msgstr "Descargar" -#: apps/web/src/components/settings/backup-section.tsx:214 +#: apps/web/src/components/settings/backup-section.tsx:190 msgid "Download backup" -msgstr "" +msgstr "Descargar copia de seguridad" -#: apps/web/src/components/people/person-hero.tsx:79 +#: apps/web/src/components/people/person-hero.tsx:77 msgid "Editor" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:133 -#: apps/native/src/app/(auth)/register.tsx:154 -#: apps/web/src/components/auth-form.tsx:201 +#: apps/native/src/app/(auth)/login.tsx:123 +#: apps/native/src/app/(auth)/register.tsx:139 +#: apps/web/src/components/auth-form.tsx:190 msgid "Email" -msgstr "" +msgstr "Correo electrónico" -#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:72 msgid "Enable the \"Playback Stop\" notification type" -msgstr "" +msgstr "Activa el tipo de notificación \"Playback Stop\"" -#: apps/native/src/components/settings/integration-configs.ts:93 +#: apps/native/src/components/settings/integration-configs.ts:90 msgid "Enable the \"Playback\" event category" -msgstr "" +msgstr "Activa la categoría de evento \"Playback\"" -#: apps/web/src/components/settings/integration-configs.tsx:140 +#: apps/web/src/components/settings/integration-configs.tsx:127 msgid "Enable the <0>Playback Stop notification type" -msgstr "" +msgstr "Activa el tipo de notificación <0>Playback Stop" -#: apps/web/src/components/settings/integration-configs.tsx:201 +#: apps/web/src/components/settings/integration-configs.tsx:181 msgid "Enable the <0>Playback event category" -msgstr "" +msgstr "Activa la categoría de evento <0>Playback" -#: apps/web/src/components/settings/imports-section.tsx:668 +#: apps/web/src/components/settings/imports-section.tsx:634 msgid "Enter the code below on {source}'s website to authorize Sofa." -msgstr "" +msgstr "Introduce el siguiente código en el sitio web de {source} para autorizar a Sofa." -#: apps/web/src/components/settings/account-section.tsx:435 +#: apps/web/src/components/settings/account-section.tsx:409 msgid "Enter your current password and choose a new one." -msgstr "" +msgstr "Introduce tu contraseña actual y elige una nueva." -#: apps/native/src/app/(auth)/server-url.tsx:151 +#: apps/native/src/app/(auth)/server-url.tsx:140 msgid "Enter your Sofa server URL to get started" -msgstr "" +msgstr "Introduce la URL de tu servidor Sofa para comenzar" -#: apps/web/src/components/settings/system-health-section.tsx:289 +#: apps/web/src/components/settings/system-health-section.tsx:267 msgid "Environment" -msgstr "" +msgstr "Entorno" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:29 -#: apps/native/src/components/titles/episode-row.tsx:55 +#: apps/native/src/components/titles/episode-row.tsx:27 +#: apps/native/src/components/titles/episode-row.tsx:48 msgid "Episode {0}" -msgstr "" +msgstr "Episodio {0}" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:36 +#: apps/native/src/components/titles/episode-row.tsx:34 msgid "Episode {0}, {episodeLabel}" -msgstr "" +msgstr "Episodio {0}, {episodeLabel}" -#: apps/native/src/hooks/use-title-actions.ts:123 -#: apps/native/src/lib/title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:111 +#: apps/native/src/lib/title-actions.ts:108 msgid "Episode unwatched" -msgstr "" +msgstr "Episodio marcado como no visto" -#: apps/native/src/hooks/use-title-actions.ts:109 -#: apps/native/src/lib/title-actions.ts:101 +#: apps/native/src/hooks/use-title-actions.ts:101 +#: apps/native/src/lib/title-actions.ts:98 msgid "Episode watched" -msgstr "" +msgstr "Episodio marcado como visto" -#: apps/web/src/components/settings/imports-section.tsx:780 -#: apps/web/src/components/titles/title-seasons.tsx:102 +#: apps/web/src/components/settings/imports-section.tsx:742 +#: apps/web/src/components/titles/title-seasons.tsx:96 msgid "Episodes" -msgstr "" +msgstr "Episodios" #: apps/web/src/components/dashboard/stats-display.tsx:162 #~ msgid "Episodes {periodSelect}" #~ msgstr "Episodes {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:164 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Episodes {select}" -msgstr "" +msgstr "Episodios {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:61 +#: apps/native/src/app/(tabs)/(home)/index.tsx:52 msgid "Episodes this week" -msgstr "" +msgstr "Episodios esta semana" -#: apps/native/src/app/change-password.tsx:71 -#: apps/native/src/app/change-password.tsx:81 +#: apps/native/src/app/change-password.tsx:67 +#: apps/native/src/app/change-password.tsx:77 msgid "Error" msgstr "" #. placeholder {0}: result.errors.length -#: apps/web/src/components/settings/imports-section.tsx:929 +#: apps/web/src/components/settings/imports-section.tsx:887 msgid "Errors ({0})" -msgstr "" +msgstr "Errores ({0})" -#: apps/native/src/app/(tabs)/(home)/index.tsx:143 -#: apps/web/src/components/nav-bar.tsx:126 -#: apps/web/src/components/nav-bar.tsx:291 +#: apps/native/src/app/(tabs)/(home)/index.tsx:127 +#: apps/web/src/components/nav-bar.tsx:116 +#: apps/web/src/components/nav-bar.tsx:277 msgid "Explore" -msgstr "" +msgstr "Explorar" -#: apps/web/src/routes/_app/people.$id.tsx:70 -#: apps/web/src/routes/_app/titles.$id.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:68 +#: apps/web/src/routes/_app/titles.$id.tsx:157 msgid "Explore titles" -msgstr "" +msgstr "Explorar títulos" -#: apps/web/src/components/settings/imports-section.tsx:923 +#: apps/web/src/components/settings/imports-section.tsx:881 msgid "Failed" -msgstr "" +msgstr "Fallido" -#: apps/native/src/hooks/use-title-actions.ts:49 -#: apps/native/src/lib/title-actions.ts:28 +#: apps/native/src/hooks/use-title-actions.ts:48 +#: apps/native/src/lib/title-actions.ts:29 msgid "Failed to add to watchlist" -msgstr "" +msgstr "Error al añadir a la lista" -#: apps/web/src/components/titles/use-title-actions.ts:90 +#: apps/web/src/components/titles/use-title-actions.ts:80 msgid "Failed to catch up" -msgstr "" +msgstr "Error al ponerse al día" -#: apps/native/src/app/change-password.tsx:71 -#: apps/web/src/components/settings/account-section.tsx:411 +#: apps/native/src/app/change-password.tsx:67 +#: apps/web/src/components/settings/account-section.tsx:385 msgid "Failed to change password" -msgstr "" +msgstr "Error al cambiar la contraseña" -#: apps/web/src/components/settings/imports-section.tsx:398 +#: apps/web/src/components/settings/imports-section.tsx:380 msgid "Failed to connect" -msgstr "" +msgstr "Error al conectar" -#: apps/native/src/components/settings/integration-card.tsx:99 -#: apps/web/src/components/settings/integration-card.tsx:108 +#: apps/native/src/components/settings/integration-card.tsx:87 +#: apps/web/src/components/settings/integration-card.tsx:91 msgid "Failed to connect {label}" -msgstr "" +msgstr "Error al conectar {label}" -#: apps/native/src/app/(auth)/register.tsx:67 +#: apps/native/src/app/(auth)/register.tsx:57 msgid "Failed to create account" -msgstr "" +msgstr "Error al crear la cuenta" -#: apps/web/src/components/settings/backup-section.tsx:81 +#: apps/web/src/components/settings/backup-section.tsx:74 msgid "Failed to create backup" -msgstr "" +msgstr "Error al crear la copia de seguridad" -#: apps/web/src/components/settings/backup-section.tsx:97 +#: apps/web/src/components/settings/backup-section.tsx:88 msgid "Failed to delete backup" -msgstr "" +msgstr "Error al eliminar la copia de seguridad" -#: apps/native/src/components/settings/integration-card.tsx:109 -#: apps/web/src/components/settings/integration-card.tsx:125 +#: apps/native/src/components/settings/integration-card.tsx:97 +#: apps/web/src/components/settings/integration-card.tsx:108 msgid "Failed to disconnect {label}" -msgstr "" +msgstr "Error al desconectar {label}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:215 +#: apps/web/src/components/settings/backup-schedule-section.tsx:200 msgid "Failed to load backup schedule settings." -msgstr "" +msgstr "Error al cargar los ajustes de programación de copias de seguridad." -#: apps/web/src/routes/_app/titles.$id.tsx:115 +#: apps/web/src/routes/_app/titles.$id.tsx:110 msgid "Failed to load title" -msgstr "" +msgstr "Error al cargar el título" -#: apps/web/src/components/titles/use-title-actions.ts:367 +#: apps/web/src/components/titles/use-title-actions.ts:344 msgid "Failed to mark all episodes as watched" -msgstr "" +msgstr "Error al marcar todos los episodios como vistos" -#: apps/native/src/hooks/use-title-actions.ts:84 -#: apps/native/src/lib/title-actions.ts:68 -#: apps/web/src/components/titles/use-title-actions.ts:150 +#: apps/native/src/hooks/use-title-actions.ts:79 +#: apps/native/src/lib/title-actions.ts:67 +#: apps/web/src/components/titles/use-title-actions.ts:137 msgid "Failed to mark as watched" -msgstr "" +msgstr "Error al marcar como visto" -#: apps/native/src/hooks/use-title-actions.ts:113 -#: apps/native/src/lib/title-actions.ts:104 -#: apps/web/src/components/titles/use-title-actions.ts:237 +#: apps/native/src/hooks/use-title-actions.ts:104 +#: apps/native/src/lib/title-actions.ts:101 +#: apps/web/src/components/titles/use-title-actions.ts:216 msgid "Failed to mark episode" -msgstr "" +msgstr "Error al marcar el episodio" -#: apps/native/src/hooks/use-title-actions.ts:141 -#: apps/native/src/lib/title-actions.ts:128 -#: apps/web/src/components/titles/use-title-actions.ts:315 +#: apps/native/src/hooks/use-title-actions.ts:124 +#: apps/native/src/lib/title-actions.ts:123 +#: apps/web/src/components/titles/use-title-actions.ts:294 msgid "Failed to mark some episodes" -msgstr "" +msgstr "Error al marcar algunos episodios" -#: apps/web/src/components/settings/imports-section.tsx:225 +#: apps/web/src/components/settings/imports-section.tsx:218 msgid "Failed to parse file" -msgstr "" +msgstr "Error al analizar el archivo" -#: apps/web/src/components/settings/imports-section.tsx:240 +#: apps/web/src/components/settings/imports-section.tsx:233 msgid "Failed to parse import data" -msgstr "" +msgstr "Error al analizar los datos de importación" -#: apps/web/src/components/settings/danger-section.tsx:75 +#: apps/web/src/components/settings/danger-section.tsx:72 msgid "Failed to purge caches" -msgstr "" +msgstr "Error al purgar las cachés" #: apps/web/src/components/settings/danger-section.tsx:58 msgid "Failed to purge image cache" -msgstr "" +msgstr "Error al purgar la caché de imágenes" #: apps/web/src/components/settings/danger-section.tsx:45 msgid "Failed to purge metadata cache" -msgstr "" +msgstr "Error al purgar la caché de metadatos" -#: apps/native/src/components/settings/integration-card.tsx:119 -#: apps/web/src/components/settings/integration-card.tsx:140 +#: apps/native/src/components/settings/integration-card.tsx:107 +#: apps/web/src/components/settings/integration-card.tsx:121 msgid "Failed to regenerate {label} URL" -msgstr "" +msgstr "Error al regenerar la URL de {label}" -#: apps/native/src/lib/title-actions.ts:78 +#: apps/native/src/lib/title-actions.ts:77 msgid "Failed to remove from library" -msgstr "" +msgstr "Error al eliminar de la biblioteca" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:134 -#: apps/web/src/components/settings/account-section.tsx:134 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:131 +#: apps/web/src/components/settings/account-section.tsx:126 msgid "Failed to remove profile picture" -msgstr "" +msgstr "Error al eliminar la foto de perfil" -#: apps/native/src/app/(auth)/login.tsx:56 +#: apps/native/src/app/(auth)/login.tsx:53 msgid "Failed to sign in" -msgstr "" +msgstr "Error al iniciar sesión" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:388 +#: apps/web/src/components/settings/imports-section.tsx:370 msgid "Failed to start {0} connection" -msgstr "" +msgstr "Error al iniciar la conexión con {0}" -#: apps/web/src/components/settings/system-health-section.tsx:348 +#: apps/web/src/components/settings/system-health-section.tsx:320 msgid "Failed to trigger job" -msgstr "" +msgstr "Error al iniciar la tarea" -#: apps/native/src/hooks/use-title-actions.ts:129 -#: apps/native/src/lib/title-actions.ts:114 -#: apps/web/src/components/titles/use-title-actions.ts:181 +#: apps/native/src/hooks/use-title-actions.ts:114 +#: apps/native/src/lib/title-actions.ts:111 +#: apps/web/src/components/titles/use-title-actions.ts:163 msgid "Failed to unmark episode" -msgstr "" +msgstr "Error al desmarcar el episodio" -#: apps/web/src/components/titles/use-title-actions.ts:343 +#: apps/web/src/components/titles/use-title-actions.ts:320 msgid "Failed to unmark some episodes" -msgstr "" +msgstr "Error al desmarcar algunos episodios" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:112 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:109 msgid "Failed to update name" -msgstr "" +msgstr "Error al actualizar el nombre" -#: apps/native/src/hooks/use-title-actions.ts:101 -#: apps/native/src/lib/title-actions.ts:94 -#: apps/web/src/components/titles/use-title-actions.ts:136 +#: apps/native/src/hooks/use-title-actions.ts:94 +#: apps/native/src/lib/title-actions.ts:91 +#: apps/web/src/components/titles/use-title-actions.ts:123 msgid "Failed to update rating" -msgstr "" +msgstr "Error al actualizar la valoración" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:172 -#: apps/web/src/components/settings/registration-section.tsx:44 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:169 +#: apps/web/src/components/settings/registration-section.tsx:37 msgid "Failed to update registration setting" -msgstr "" +msgstr "Error al actualizar el ajuste de registro" -#: apps/web/src/components/settings/backup-schedule-section.tsx:154 +#: apps/web/src/components/settings/backup-schedule-section.tsx:145 msgid "Failed to update retention setting" -msgstr "" +msgstr "Error al actualizar el ajuste de retención" -#: apps/web/src/components/settings/backup-schedule-section.tsx:156 +#: apps/web/src/components/settings/backup-schedule-section.tsx:147 msgid "Failed to update schedule" -msgstr "" +msgstr "Error al actualizar la programación" -#: apps/web/src/components/settings/backup-schedule-section.tsx:152 +#: apps/web/src/components/settings/backup-schedule-section.tsx:143 msgid "Failed to update scheduled backup setting" -msgstr "" +msgstr "Error al actualizar el ajuste de copia de seguridad programada" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:191 -#: apps/web/src/components/settings/update-check-section.tsx:43 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:186 +#: apps/web/src/components/settings/update-check-section.tsx:37 msgid "Failed to update setting" -msgstr "" +msgstr "Error al actualizar el ajuste" -#: apps/native/src/hooks/use-title-actions.ts:72 -#: apps/native/src/lib/title-actions.ts:40 -#: apps/native/src/lib/title-actions.ts:54 -#: apps/web/src/components/titles/use-title-actions.ts:114 +#: apps/native/src/hooks/use-title-actions.ts:69 +#: apps/native/src/lib/title-actions.ts:41 +#: apps/native/src/lib/title-actions.ts:55 +#: apps/web/src/components/titles/use-title-actions.ts:101 msgid "Failed to update status" -msgstr "" +msgstr "Error al actualizar el estado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:123 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:120 msgid "Failed to upload avatar" -msgstr "" +msgstr "Error al subir el avatar" -#: apps/web/src/components/settings/imports-section.tsx:725 +#: apps/web/src/components/settings/imports-section.tsx:689 msgid "Fetching your library data from {source}..." -msgstr "" +msgstr "Obteniendo datos de tu biblioteca desde {source}..." -#: apps/native/src/app/person/[id].tsx:340 -#: apps/web/src/components/people/filmography-grid.tsx:69 +#: apps/native/src/app/person/[id].tsx:296 +#: apps/web/src/components/people/filmography-grid.tsx:67 msgid "Filmography" -msgstr "" +msgstr "Filmografía" -#: apps/web/src/components/settings/imports-section.tsx:915 +#: apps/web/src/components/settings/imports-section.tsx:873 msgid "Finished importing from {source}." -msgstr "" +msgstr "Importación desde {source} completada." -#: apps/web/src/components/titles/title-availability.tsx:140 +#: apps/web/src/components/titles/title-availability.tsx:116 msgid "Free" -msgstr "" +msgstr "Gratis" -#: apps/web/src/components/settings/danger-section.tsx:92 +#: apps/web/src/components/settings/danger-section.tsx:88 msgid "Free up disk space by clearing cached metadata and images" -msgstr "" +msgstr "Libera espacio en disco eliminando metadatos e imágenes en caché" -#: apps/web/src/components/settings/backup-schedule-section.tsx:309 +#: apps/web/src/components/settings/backup-schedule-section.tsx:276 msgid "Frequency" -msgstr "" +msgstr "Frecuencia" -#: apps/web/src/components/settings/backup-schedule-section.tsx:101 +#: apps/web/src/components/settings/backup-schedule-section.tsx:98 msgid "Friday" -msgstr "" +msgstr "Viernes" -#: apps/web/src/components/landing-page.tsx:156 +#: apps/web/src/components/landing-page.tsx:157 msgid "Get Started" -msgstr "" +msgstr "Comenzar" -#: apps/native/src/app/person/[id].tsx:220 -#: apps/native/src/app/person/[id].tsx:247 -#: apps/native/src/app/title/[id].tsx:255 +#: apps/native/src/app/person/[id].tsx:189 +#: apps/native/src/app/person/[id].tsx:213 +#: apps/native/src/app/title/[id].tsx:239 msgid "Go back" -msgstr "" +msgstr "Volver" -#: apps/native/src/app/+not-found.tsx:37 +#: apps/native/src/app/+not-found.tsx:35 msgid "Go Home" -msgstr "" +msgstr "Ir al inicio" -#: apps/web/src/components/settings/integration-configs.tsx:123 +#: apps/web/src/components/settings/integration-configs.tsx:115 msgid "Go to <0>Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Ve a <0>Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:368 +#: apps/web/src/components/command-palette.tsx:345 msgid "Go to Dashboard" -msgstr "" +msgstr "Ir al panel" -#: apps/native/src/components/settings/integration-configs.ts:71 +#: apps/native/src/components/settings/integration-configs.ts:70 msgid "Go to Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Ve a Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:379 +#: apps/web/src/components/command-palette.tsx:356 msgid "Go to Explore" -msgstr "" +msgstr "Ir a Explorar" -#: apps/web/src/components/settings/system-health-section.tsx:212 +#: apps/web/src/components/settings/system-health-section.tsx:193 msgid "Health status" -msgstr "" +msgstr "Estado del sistema" -#: apps/web/src/components/dashboard/welcome-header.tsx:14 +#: apps/web/src/components/dashboard/welcome-header.tsx:10 msgid "Here's what's happening with your library" -msgstr "" +msgstr "Esto es lo que pasa con tu biblioteca" -#: apps/web/src/components/nav-bar.tsx:125 -#: apps/web/src/components/nav-bar.tsx:290 +#: apps/web/src/components/nav-bar.tsx:115 +#: apps/web/src/components/nav-bar.tsx:276 msgid "Home" -msgstr "" +msgstr "Inicio" -#: apps/web/src/components/settings/system-health-section.tsx:335 -#: apps/web/src/components/settings/system-health-section.tsx:610 +#: apps/web/src/components/settings/system-health-section.tsx:308 +#: apps/web/src/components/settings/system-health-section.tsx:558 msgid "Image cache" -msgstr "" +msgstr "Caché de imágenes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:479 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:453 msgid "Image Cache" -msgstr "" +msgstr "Caché de imágenes" -#: apps/web/src/components/settings/system-health-section.tsx:598 +#: apps/web/src/components/settings/system-health-section.tsx:546 msgid "Image cache and backup disk usage" -msgstr "" +msgstr "Uso del disco de caché de imágenes y copias de seguridad" -#: apps/web/src/components/settings/imports-section.tsx:179 +#: apps/web/src/components/settings/imports-section.tsx:175 msgid "Import" -msgstr "" +msgstr "Importar" -#: apps/web/src/components/settings/imports-section.tsx:840 +#: apps/web/src/components/settings/imports-section.tsx:801 msgid "Import {totalItems} items" -msgstr "" +msgstr "Importar {totalItems} elementos" -#: apps/web/src/components/settings/imports-section.tsx:912 +#: apps/web/src/components/settings/imports-section.tsx:870 msgid "Import complete" -msgstr "" +msgstr "Importación completada" -#: apps/web/src/components/settings/imports-section.tsx:340 +#: apps/web/src/components/settings/imports-section.tsx:324 msgid "Import failed" -msgstr "" +msgstr "Error en la importación" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:584 +#: apps/web/src/components/settings/imports-section.tsx:553 msgid "Import from {0}" -msgstr "" +msgstr "Importar desde {0}" -#: apps/web/src/components/settings/imports-section.tsx:770 +#: apps/web/src/components/settings/imports-section.tsx:732 msgid "Import from {source}" -msgstr "" +msgstr "Importar desde {source}" -#: apps/web/src/components/settings/imports-section.tsx:298 -#: apps/web/src/components/settings/imports-section.tsx:329 +#: apps/web/src/components/settings/imports-section.tsx:285 +#: apps/web/src/components/settings/imports-section.tsx:314 msgid "Import is still running in the background. Check back later." -msgstr "" +msgstr "La importación sigue en curso en segundo plano. Vuelve más tarde." -#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/settings/imports-section.tsx:760 msgid "Import options" -msgstr "" +msgstr "Opciones de importación" -#: apps/web/src/components/settings/imports-section.tsx:921 +#: apps/web/src/components/settings/imports-section.tsx:879 msgid "Imported" -msgstr "" +msgstr "Importado" #. placeholder {0}: event.job.importedCount #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:292 +#: apps/web/src/components/settings/imports-section.tsx:281 msgid "Imported {0} items from {1}" -msgstr "" +msgstr "{0} elementos importados desde {1}" -#: apps/web/src/components/settings/imports-section.tsx:863 +#: apps/web/src/components/settings/imports-section.tsx:822 msgid "Importing from {source}" -msgstr "" +msgstr "Importando desde {source}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:62 +#: apps/native/src/app/(tabs)/(home)/index.tsx:53 msgid "In library" -msgstr "" +msgstr "En la biblioteca" -#: apps/web/src/components/dashboard/stats-display.tsx:230 +#: apps/web/src/components/dashboard/stats-display.tsx:211 msgid "In Library" -msgstr "" +msgstr "En la biblioteca" -#: apps/native/src/app/(tabs)/(home)/index.tsx:133 +#: apps/native/src/app/(tabs)/(home)/index.tsx:117 #: apps/web/src/components/dashboard/library-section.tsx:35 msgid "In Your Library" -msgstr "" +msgstr "En tu biblioteca" -#: apps/web/src/components/settings/integration-configs.tsx:105 +#: apps/web/src/components/settings/integration-configs.tsx:97 msgid "Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog" -msgstr "" +msgstr "Instala el <0>plugin Webhook<1/> del catálogo de plugins de Jellyfin" -#: apps/native/src/components/settings/integration-configs.ts:70 +#: apps/native/src/components/settings/integration-configs.ts:69 msgid "Install the Webhook plugin from Jellyfin's plugin catalog" -msgstr "" +msgstr "Instala el plugin Webhook del catálogo de plugins de Jellyfin" -#: apps/native/src/components/settings/integrations-section.tsx:20 -#: apps/web/src/components/settings/integrations-section.tsx:41 +#: apps/native/src/components/settings/integrations-section.tsx:21 +#: apps/web/src/components/settings/integrations-section.tsx:33 msgid "Integrations" -msgstr "" +msgstr "Integraciones" -#: apps/web/src/components/settings/system-health-section.tsx:266 +#: apps/web/src/components/settings/system-health-section.tsx:246 msgid "Invalid token" -msgstr "" +msgstr "Token inválido" -#: apps/web/src/components/settings/system-health-section.tsx:399 +#: apps/web/src/components/settings/system-health-section.tsx:365 msgid "Job" -msgstr "" +msgstr "Tarea" #: apps/web/src/components/settings/backup-schedule-section.tsx:243 #~ msgid "Keeping" @@ -1128,1306 +1128,1306 @@ msgstr "" #. placeholder {0}: (value: string | null) => value === "0" ? t`unlimited` : value ? t`last ${value}` : null #. placeholder {1}: [3, 5, 7, 14, 30, 0].map((n) => ( {n === 0 ? t`unlimited` : t`last ${n}`} )) -#: apps/web/src/components/settings/backup-schedule-section.tsx:243 +#: apps/web/src/components/settings/backup-schedule-section.tsx:222 msgid "Keeping <0><1><2>{0}<3>{1} backups." -msgstr "" +msgstr "Guardando <0><1><2>{0}<3>{1} copias de seguridad." -#: apps/web/src/components/command-palette.tsx:389 -#: apps/web/src/components/command-palette.tsx:404 +#: apps/web/src/components/command-palette.tsx:366 +#: apps/web/src/components/command-palette.tsx:381 msgid "Keyboard Shortcuts" -msgstr "" +msgstr "Atajos de teclado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:403 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:411 -#: apps/web/src/components/settings/language-section.tsx:42 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:383 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:391 +#: apps/web/src/components/settings/language-section.tsx:34 msgid "Language" -msgstr "" +msgstr "Idioma" -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "last {n}" -msgstr "" +msgstr "últimos {n}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:258 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 msgid "last {value}" -msgstr "" +msgstr "últimos {value}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:331 +#: apps/web/src/components/settings/integration-card.tsx:289 msgid "Last event {0}" -msgstr "" +msgstr "Último evento {0}" -#: apps/native/src/components/settings/integration-configs.ts:29 +#: apps/native/src/components/settings/integration-configs.ts:30 msgid "Last event {timeAgo}" -msgstr "" +msgstr "Último evento {timeAgo}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:338 +#: apps/web/src/components/settings/integration-card.tsx:296 msgid "Last polled {0}" -msgstr "" +msgstr "Última consulta {0}" -#: apps/native/src/components/settings/integration-configs.ts:37 +#: apps/native/src/components/settings/integration-configs.ts:38 msgid "Last polled {timeAgo}" -msgstr "" +msgstr "Última consulta {timeAgo}" -#: apps/web/src/components/settings/system-health-section.tsx:405 +#: apps/web/src/components/settings/system-health-section.tsx:371 msgid "Last run" -msgstr "" +msgstr "Última ejecución" -#: apps/web/src/components/settings/system-health-section.tsx:441 +#: apps/web/src/components/settings/system-health-section.tsx:402 msgid "Last run failed" -msgstr "" +msgstr "Última ejecución fallida" -#: apps/web/src/components/settings/system-health-section.tsx:437 +#: apps/web/src/components/settings/system-health-section.tsx:400 msgid "Last run succeeded" -msgstr "" +msgstr "Última ejecución exitosa" -#: apps/web/src/components/settings/system-health-section.tsx:331 +#: apps/web/src/components/settings/system-health-section.tsx:304 msgid "Library refresh" -msgstr "" +msgstr "Actualización de biblioteca" -#: apps/web/src/components/auth-form.tsx:245 +#: apps/web/src/components/auth-form.tsx:229 msgid "Loading…" -msgstr "" +msgstr "Cargando…" -#: apps/web/src/components/settings/imports-section.tsx:334 +#: apps/web/src/components/settings/imports-section.tsx:318 msgid "Lost connection to import. Check status in settings." -msgstr "" +msgstr "Se perdió la conexión con la importación. Comprueba el estado en ajustes." -#: apps/web/src/components/settings/settings-shell.tsx:40 +#: apps/web/src/components/settings/settings-shell.tsx:34 msgid "Manage your account and preferences" -msgstr "" +msgstr "Gestiona tu cuenta y preferencias" -#: apps/web/src/components/settings/backup-section.tsx:182 +#: apps/web/src/components/settings/backup-section.tsx:158 msgid "Manual backup" -msgstr "" +msgstr "Copia de seguridad manual" -#: apps/web/src/components/titles/title-seasons.tsx:122 +#: apps/web/src/components/titles/title-seasons.tsx:116 msgid "Mark all episodes as watched?" -msgstr "" +msgstr "¿Marcar todos los episodios como vistos?" -#: apps/native/src/components/titles/season-accordion.tsx:164 -#: apps/web/src/components/titles/title-seasons.tsx:115 -#: apps/web/src/components/titles/title-seasons.tsx:141 +#: apps/native/src/components/titles/season-accordion.tsx:152 +#: apps/web/src/components/titles/title-seasons.tsx:109 +#: apps/web/src/components/titles/title-seasons.tsx:135 msgid "Mark All Watched" -msgstr "" +msgstr "Marcar todos como vistos" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:122 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:103 msgid "Mark as Completed" -msgstr "" +msgstr "Marcar como completado" -#: apps/native/src/components/ui/poster-card.tsx:252 +#: apps/native/src/components/ui/poster-card.tsx:226 msgid "Mark as Watched" -msgstr "" +msgstr "Marcar como visto" -#: apps/native/src/components/ui/poster-card.tsx:245 +#: apps/native/src/components/ui/poster-card.tsx:219 msgid "Mark as Watching" -msgstr "" +msgstr "Marcar como en curso" -#: apps/native/src/app/title/[id].tsx:449 -#: apps/web/src/components/titles/title-actions.tsx:29 +#: apps/native/src/app/title/[id].tsx:400 +#: apps/web/src/components/titles/title-actions.tsx:27 msgid "Mark Watched" -msgstr "" +msgstr "Marcar como visto" -#: apps/native/src/lib/title-actions.ts:49 +#: apps/native/src/lib/title-actions.ts:50 msgid "Marked \"{titleName}\" as completed" -msgstr "" +msgstr "\"{titleName}\" marcado como completado" #: apps/native/src/lib/title-actions.ts:63 -#: apps/web/src/components/titles/use-title-actions.ts:147 +#: apps/web/src/components/titles/use-title-actions.ts:134 msgid "Marked \"{titleName}\" as watched" -msgstr "" +msgstr "\"{titleName}\" marcado como visto" -#: apps/web/src/components/titles/use-title-actions.ts:360 +#: apps/web/src/components/titles/use-title-actions.ts:337 msgid "Marked all episodes as watched" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:62 -#: apps/native/src/lib/title-actions.ts:50 -msgid "Marked as completed" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:80 -#: apps/native/src/lib/title-actions.ts:64 -msgid "Marked as watched" -msgstr "" +msgstr "Todos los episodios marcados como vistos" #: apps/native/src/hooks/use-title-actions.ts:61 -#: apps/native/src/lib/title-actions.ts:37 +#: apps/native/src/lib/title-actions.ts:51 +msgid "Marked as completed" +msgstr "Marcado como completado" + +#: apps/native/src/hooks/use-title-actions.ts:76 +#: apps/native/src/lib/title-actions.ts:63 +msgid "Marked as watched" +msgstr "Marcado como visto" + +#: apps/native/src/hooks/use-title-actions.ts:60 +#: apps/native/src/lib/title-actions.ts:38 msgid "Marked as watching" -msgstr "" +msgstr "Marcado como en curso" -#: apps/web/src/components/settings/account-section.tsx:340 +#: apps/web/src/components/settings/account-section.tsx:314 msgid "Member since {memberSince}" -msgstr "" +msgstr "Miembro desde {memberSince}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:97 +#: apps/web/src/components/settings/backup-schedule-section.tsx:94 msgid "Monday" -msgstr "" +msgstr "Lunes" -#: apps/native/src/app/title/[id].tsx:585 +#: apps/native/src/app/title/[id].tsx:508 msgid "More Like This" -msgstr "" +msgstr "Más como este" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:541 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:506 msgid "More Settings" -msgstr "" +msgstr "Más ajustes" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:35 -#: apps/native/src/components/search/search-result-row.tsx:96 -#: apps/web/src/components/explore/hero-banner.tsx:59 -#: apps/web/src/components/titles/title-hero.tsx:143 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:54 +#: apps/web/src/components/titles/title-hero.tsx:141 msgid "Movie" -msgstr "" +msgstr "Película" -#: apps/web/src/components/people/filmography-grid.tsx:59 -#: apps/web/src/components/settings/imports-section.tsx:779 +#: apps/web/src/components/people/filmography-grid.tsx:57 +#: apps/web/src/components/settings/imports-section.tsx:741 msgid "Movies" -msgstr "" +msgstr "Películas" #: apps/web/src/components/dashboard/stats-display.tsx:161 #~ msgid "Movies {periodSelect}" #~ msgstr "Movies {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:162 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Movies {select}" -msgstr "" +msgstr "Películas {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:60 +#: apps/native/src/app/(tabs)/(home)/index.tsx:51 msgid "Movies this month" -msgstr "" +msgstr "Películas este mes" -#: apps/native/src/app/(auth)/register.tsx:124 -#: apps/web/src/components/auth-form.tsx:181 +#: apps/native/src/app/(auth)/register.tsx:111 +#: apps/web/src/components/auth-form.tsx:173 msgid "Name" -msgstr "" +msgstr "Nombre" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:107 -#: apps/web/src/components/settings/account-section.tsx:80 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:104 +#: apps/web/src/components/settings/account-section.tsx:72 msgid "Name updated" -msgstr "" +msgstr "Nombre actualizado" -#: apps/web/src/components/settings/integration-card.tsx:301 +#: apps/web/src/components/settings/integration-card.tsx:259 msgid "Need more help?" -msgstr "" +msgstr "¿Necesitas más ayuda?" -#: apps/web/src/components/settings/system-health-section.tsx:501 +#: apps/web/src/components/settings/system-health-section.tsx:456 msgid "Never" -msgstr "" +msgstr "Nunca" -#: apps/web/src/components/settings/system-health-section.tsx:435 +#: apps/web/src/components/settings/system-health-section.tsx:398 msgid "Never run" -msgstr "" +msgstr "Nunca ejecutado" -#: apps/native/src/app/(auth)/register.tsx:98 +#: apps/native/src/app/(auth)/register.tsx:88 msgid "New account creation is currently disabled." -msgstr "" +msgstr "La creación de nuevas cuentas está desactivada actualmente." -#: apps/web/src/routes/_auth/register.tsx:35 +#: apps/web/src/routes/_auth/register.tsx:36 msgid "New accounts are not being accepted right now. Contact the admin if you need access." -msgstr "" +msgstr "No se aceptan nuevas cuentas en este momento. Contacta al administrador si necesitas acceso." -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "New backup" -msgstr "" +msgstr "Nueva copia de seguridad" -#: apps/native/src/app/change-password.tsx:145 -#: apps/web/src/components/settings/account-section.tsx:463 +#: apps/native/src/app/change-password.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:437 msgid "New password" -msgstr "" +msgstr "Nueva contraseña" -#: apps/web/src/components/settings/account-section.tsx:395 +#: apps/web/src/components/settings/account-section.tsx:369 msgid "New password must be at least 8 characters" -msgstr "" +msgstr "La nueva contraseña debe tener al menos 8 caracteres" -#: apps/web/src/components/people/filmography-grid.tsx:86 -#: apps/web/src/components/people/filmography-grid.tsx:99 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:87 msgid "Newest" -msgstr "" +msgstr "Más reciente" -#: apps/web/src/components/settings/backup-schedule-section.tsx:131 +#: apps/web/src/components/settings/backup-schedule-section.tsx:124 msgid "Next backup {distance}" -msgstr "" +msgstr "Próxima copia de seguridad {distance}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:46 +#: apps/native/src/components/titles/continue-watching-banner.tsx:42 msgid "Next Episode" -msgstr "" +msgstr "Siguiente episodio" -#: apps/web/src/components/settings/system-health-section.tsx:408 +#: apps/web/src/components/settings/system-health-section.tsx:374 msgid "Next run" -msgstr "" +msgstr "Próxima ejecución" -#: apps/web/src/components/settings/backup-section.tsx:110 -#: apps/web/src/components/settings/system-health-section.tsx:662 +#: apps/web/src/components/settings/backup-section.tsx:99 +#: apps/web/src/components/settings/system-health-section.tsx:607 msgid "No backups yet" -msgstr "" +msgstr "Aún no hay copias de seguridad" -#: apps/native/src/components/ui/offline-banner.ios.tsx:74 -#: apps/native/src/components/ui/offline-banner.ios.tsx:81 -#: apps/native/src/components/ui/offline-banner.tsx:59 +#: apps/native/src/components/ui/offline-banner.ios.tsx:75 +#: apps/native/src/components/ui/offline-banner.ios.tsx:82 +#: apps/native/src/components/ui/offline-banner.tsx:60 msgid "No internet connection" -msgstr "" +msgstr "Sin conexión a internet" -#: apps/native/src/app/(tabs)/(search)/index.tsx:113 +#: apps/native/src/app/(tabs)/(search)/index.tsx:100 msgid "No results for \"{debouncedQuery}\"" -msgstr "" +msgstr "Sin resultados para \"{debouncedQuery}\"" -#: apps/web/src/components/command-palette.tsx:217 +#: apps/web/src/components/command-palette.tsx:212 msgid "No results found." -msgstr "" +msgstr "No se encontraron resultados." -#: apps/native/src/components/explore/filterable-title-row.tsx:139 -#: apps/web/src/components/explore/filterable-title-row.tsx:151 +#: apps/native/src/components/explore/filterable-title-row.tsx:135 +#: apps/web/src/components/explore/filterable-title-row.tsx:144 msgid "No titles found for this genre." -msgstr "" +msgstr "No se encontraron títulos para este género." -#: apps/native/src/components/settings/integration-card.tsx:194 -#: apps/web/src/components/settings/integration-card.tsx:176 -#: apps/web/src/components/settings/system-health-section.tsx:249 +#: apps/native/src/components/settings/integration-card.tsx:174 +#: apps/web/src/components/settings/integration-card.tsx:153 +#: apps/web/src/components/settings/system-health-section.tsx:229 msgid "Not configured" -msgstr "" +msgstr "No configurado" -#: apps/native/src/app/+not-found.tsx:17 +#: apps/native/src/app/+not-found.tsx:18 msgid "Not Found" -msgstr "" +msgstr "No encontrado" -#: apps/web/src/components/title-card.tsx:67 +#: apps/web/src/components/title-card.tsx:64 msgid "On Watchlist" -msgstr "" +msgstr "En la lista" -#: apps/web/src/components/settings/imports-section.tsx:693 +#: apps/web/src/components/settings/imports-section.tsx:657 msgid "Open {source} to enter code" -msgstr "" +msgstr "Abre {source} para introducir el código" -#: apps/web/src/components/settings/integration-card.tsx:308 +#: apps/web/src/components/settings/integration-card.tsx:266 msgid "Open docs" -msgstr "" +msgstr "Abrir documentación" -#: apps/web/src/components/settings/integration-configs.tsx:190 +#: apps/web/src/components/settings/integration-configs.tsx:172 msgid "Open Emby, go to <0>Settings > Webhooks" -msgstr "" +msgstr "Abre Emby, ve a <0>Settings > Webhooks" -#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/native/src/components/settings/integration-configs.ts:88 msgid "Open Emby, go to Settings > Webhooks" -msgstr "" +msgstr "Abre Emby, ve a Settings > Webhooks" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:548 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 msgid "Open in browser…" -msgstr "" +msgstr "Abrir en el navegador…" -#: apps/web/src/components/settings/integration-configs.tsx:62 +#: apps/web/src/components/settings/integration-configs.tsx:56 msgid "Open Plex, go to <0>Settings > Webhooks<1/>" -msgstr "" +msgstr "Abre Plex, ve a <0>Settings > Webhooks<1/>" -#: apps/native/src/components/settings/integration-configs.ts:54 +#: apps/native/src/components/settings/integration-configs.ts:55 msgid "Open Plex, go to Settings > Webhooks" -msgstr "" +msgstr "Abre Plex, ve a Settings > Webhooks" -#: apps/web/src/components/settings/integration-configs.tsx:269 +#: apps/web/src/components/settings/integration-configs.tsx:243 msgid "Open Radarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Abre Radarr, ve a <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/native/src/components/settings/integration-configs.ts:121 msgid "Open Radarr, go to Settings > Import Lists" -msgstr "" +msgstr "Abre Radarr, ve a Settings > Import Lists" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:502 -#: apps/web/src/components/settings/registration-section.tsx:58 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:472 +#: apps/web/src/components/settings/registration-section.tsx:51 msgid "Open registration" -msgstr "" +msgstr "Registro abierto" -#: apps/web/src/components/settings/integration-configs.tsx:229 +#: apps/web/src/components/settings/integration-configs.tsx:206 msgid "Open Sonarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Abre Sonarr, ve a <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/native/src/components/settings/integration-configs.ts:103 msgid "Open Sonarr, go to Settings > Import Lists" -msgstr "" +msgstr "Abre Sonarr, ve a Settings > Import Lists" -#: apps/web/src/components/auth-form.tsx:158 +#: apps/web/src/components/auth-form.tsx:153 msgid "or" -msgstr "" +msgstr "o" -#: apps/native/src/app/(auth)/login.tsx:118 +#: apps/native/src/app/(auth)/login.tsx:108 msgid "OR" -msgstr "" +msgstr "O" -#: apps/native/src/app/+not-found.tsx:27 +#: apps/native/src/app/+not-found.tsx:25 msgid "Page Not Found" -msgstr "" +msgstr "Página no encontrada" -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Parsing..." -msgstr "" +msgstr "Analizando..." -#: apps/native/src/app/(auth)/login.tsx:167 -#: apps/native/src/app/(auth)/register.tsx:187 -#: apps/web/src/components/auth-form.tsx:221 +#: apps/native/src/app/(auth)/login.tsx:153 +#: apps/native/src/app/(auth)/register.tsx:170 +#: apps/web/src/components/auth-form.tsx:207 msgid "Password" -msgstr "" +msgstr "Contraseña" -#: apps/native/src/app/change-password.tsx:76 -#: apps/web/src/components/settings/account-section.tsx:414 +#: apps/native/src/app/change-password.tsx:72 +#: apps/web/src/components/settings/account-section.tsx:388 msgid "Password updated" -msgstr "" +msgstr "Contraseña actualizada" -#: apps/web/src/components/settings/account-section.tsx:399 +#: apps/web/src/components/settings/account-section.tsx:373 msgid "Passwords do not match" -msgstr "" +msgstr "Las contraseñas no coinciden" -#: apps/native/src/components/settings/integration-configs.ts:128 -#: apps/web/src/components/settings/integration-configs.tsx:284 +#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/web/src/components/settings/integration-configs.tsx:255 msgid "Paste the Radarr URL above into the List URL field" -msgstr "" +msgstr "Pega la URL de Radarr anterior en el campo URL de lista" -#: apps/native/src/components/settings/integration-configs.ts:110 -#: apps/web/src/components/settings/integration-configs.tsx:244 +#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/web/src/components/settings/integration-configs.tsx:218 msgid "Paste the Sonarr URL above into the List URL field" -msgstr "" +msgstr "Pega la URL de Sonarr anterior en el campo URL de lista" -#: apps/web/src/components/settings/update-check-section.tsx:63 +#: apps/web/src/components/settings/update-check-section.tsx:54 msgid "Periodically check GitHub for new Sofa releases" -msgstr "" +msgstr "Comprobar periódicamente GitHub para nuevas versiones de Sofa" -#: apps/native/src/components/search/search-result-row.tsx:38 -#: apps/native/src/components/search/search-result-row.tsx:99 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 msgid "Person" -msgstr "" +msgstr "Persona" -#: apps/native/src/app/person/[id].tsx:243 -#: apps/web/src/routes/_app/people.$id.tsx:52 +#: apps/native/src/app/person/[id].tsx:209 +#: apps/web/src/routes/_app/people.$id.tsx:50 msgid "Person not found" -msgstr "" +msgstr "Persona no encontrada" -#: apps/web/src/components/titles/trailer-dialog.tsx:24 +#: apps/web/src/components/titles/trailer-dialog.tsx:25 msgid "Play trailer" -msgstr "" +msgstr "Reproducir tráiler" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:107 -#: apps/web/src/components/explore/explore-client.tsx:126 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:89 +#: apps/web/src/components/explore/explore-client.tsx:120 msgid "Popular Movies" -msgstr "" +msgstr "Películas populares" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:120 -#: apps/web/src/components/explore/explore-client.tsx:136 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:102 +#: apps/web/src/components/explore/explore-client.tsx:130 msgid "Popular TV Shows" -msgstr "" +msgstr "Series populares" -#: apps/web/src/components/settings/backup-section.tsx:181 +#: apps/web/src/components/settings/backup-section.tsx:157 msgid "Pre-restore backup" -msgstr "" +msgstr "Copia de seguridad previa a restauración" -#: apps/web/src/components/people/person-hero.tsx:77 +#: apps/web/src/components/people/person-hero.tsx:75 msgid "Producer" -msgstr "" +msgstr "Productor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:130 -#: apps/web/src/components/settings/account-section.tsx:130 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:127 +#: apps/web/src/components/settings/account-section.tsx:122 msgid "Profile picture removed" -msgstr "" +msgstr "Foto de perfil eliminada" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:119 -#: apps/web/src/components/settings/account-section.tsx:108 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:100 msgid "Profile picture updated" -msgstr "" +msgstr "Foto de perfil actualizada" -#: apps/web/src/components/settings/danger-section.tsx:196 -#: apps/web/src/components/settings/danger-section.tsx:220 +#: apps/web/src/components/settings/danger-section.tsx:171 +#: apps/web/src/components/settings/danger-section.tsx:190 msgid "Purge all" -msgstr "" +msgstr "Purgar todo" -#: apps/web/src/components/settings/danger-section.tsx:202 +#: apps/web/src/components/settings/danger-section.tsx:176 msgid "Purge all caches?" -msgstr "" +msgstr "¿Purgar todas las cachés?" -#: apps/web/src/components/settings/danger-section.tsx:160 +#: apps/web/src/components/settings/danger-section.tsx:143 msgid "Purge image cache?" -msgstr "" +msgstr "¿Purgar la caché de imágenes?" -#: apps/web/src/components/settings/danger-section.tsx:154 -#: apps/web/src/components/settings/danger-section.tsx:177 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:157 msgid "Purge images" -msgstr "" +msgstr "Purgar imágenes" -#: apps/web/src/components/settings/danger-section.tsx:111 -#: apps/web/src/components/settings/danger-section.tsx:135 +#: apps/web/src/components/settings/danger-section.tsx:103 +#: apps/web/src/components/settings/danger-section.tsx:124 msgid "Purge metadata" -msgstr "" +msgstr "Purgar metadatos" -#: apps/web/src/components/settings/danger-section.tsx:117 +#: apps/web/src/components/settings/danger-section.tsx:109 msgid "Purge metadata cache?" -msgstr "" +msgstr "¿Purgar la caché de metadatos?" #. placeholder {0}: data.deletedTitles #. placeholder {1}: data.deletedPersons #: apps/web/src/components/settings/danger-section.tsx:41 msgid "Purged {0, plural, one {# stale title} other {# stale titles}} and {1, plural, one {# orphaned person} other {# orphaned persons}}" -msgstr "" +msgstr "Purgados {0, plural, one {# título obsoleto} other {# títulos obsoletos}} y {1, plural, one {# persona huérfana} other {# personas huérfanas}}" #. placeholder {0}: metaResult.deletedTitles #. placeholder {1}: metaResult.deletedPersons #. placeholder {2}: imageResult.deletedFiles -#: apps/web/src/components/settings/danger-section.tsx:71 +#: apps/web/src/components/settings/danger-section.tsx:68 msgid "Purged {0, plural, one {# title} other {# titles}}, {1, plural, one {# person} other {# persons}}, {2, plural, one {# file} other {# files}} ({freed} freed)" -msgstr "" +msgstr "Purgados {0, plural, one {# título} other {# títulos}}, {1, plural, one {# persona} other {# personas}}, {2, plural, one {# archivo} other {# archivos}} ({freed} liberado)" -#: apps/web/src/components/settings/danger-section.tsx:109 -#: apps/web/src/components/settings/danger-section.tsx:152 -#: apps/web/src/components/settings/danger-section.tsx:194 +#: apps/web/src/components/settings/danger-section.tsx:101 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:171 msgid "Purging..." -msgstr "" +msgstr "Purgando..." -#: apps/web/src/components/command-palette.tsx:359 +#: apps/web/src/components/command-palette.tsx:336 msgid "Quick Actions" -msgstr "" +msgstr "Acciones rápidas" -#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/native/src/components/settings/integration-configs.ts:118 msgid "Radarr List URL" -msgstr "" +msgstr "URL de lista de Radarr" #. placeholder {0}: input.stars #. placeholder {1}: input.stars -#: apps/native/src/hooks/use-title-actions.ts:93 +#: apps/native/src/hooks/use-title-actions.ts:88 msgid "Rated {0} {1, plural, one {star} other {stars}}" -msgstr "" +msgstr "Valorado con {0} {1, plural, one {estrella} other {estrellas}}" #: apps/native/src/hooks/use-title-actions.ts:92 #~ msgid "Rated {0} star{1}" #~ msgstr "Rated {0} star{1}" -#: apps/web/src/components/titles/use-title-actions.ts:131 +#: apps/web/src/components/titles/use-title-actions.ts:118 msgid "Rated {ratingStars} {ratingStars, plural, one {star} other {stars}}" -msgstr "" +msgstr "Valorado con {ratingStars} {ratingStars, plural, one {estrella} other {estrellas}}" -#: apps/native/src/lib/title-actions.ts:88 +#: apps/native/src/lib/title-actions.ts:86 msgid "Rated {stars, plural, one {# star} other {# stars}}" -msgstr "" +msgstr "Valorado con {stars, plural, one {# estrella} other {# estrellas}}" -#: apps/web/src/components/people/filmography-grid.tsx:88 -#: apps/web/src/components/people/filmography-grid.tsx:102 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:90 msgid "Rating" -msgstr "" +msgstr "Valoración" -#: apps/native/src/hooks/use-title-actions.ts:94 -#: apps/native/src/lib/title-actions.ts:90 -#: apps/web/src/components/titles/use-title-actions.ts:132 +#: apps/native/src/hooks/use-title-actions.ts:89 +#: apps/native/src/lib/title-actions.ts:87 +#: apps/web/src/components/titles/use-title-actions.ts:119 msgid "Rating removed" -msgstr "" +msgstr "Valoración eliminada" -#: apps/web/src/components/settings/imports-section.tsx:782 -#: apps/web/src/components/settings/imports-section.tsx:813 +#: apps/web/src/components/settings/imports-section.tsx:744 +#: apps/web/src/components/settings/imports-section.tsx:775 msgid "Ratings" -msgstr "" +msgstr "Valoraciones" -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Read more" -msgstr "" +msgstr "Leer más" -#: apps/native/src/components/settings/integration-configs.ts:39 -#: apps/web/src/components/settings/integration-card.tsx:339 +#: apps/native/src/components/settings/integration-configs.ts:40 +#: apps/web/src/components/settings/integration-card.tsx:297 msgid "Ready — not polled yet" -msgstr "" +msgstr "Listo — sin consultas aún" -#: apps/native/src/components/settings/integration-configs.ts:31 -#: apps/web/src/components/settings/integration-card.tsx:332 +#: apps/native/src/components/settings/integration-configs.ts:32 +#: apps/web/src/components/settings/integration-card.tsx:290 msgid "Ready — nothing received yet" -msgstr "" +msgstr "Listo — nada recibido aún" -#: apps/web/src/components/command-palette.tsx:315 +#: apps/web/src/components/command-palette.tsx:295 msgid "Recent Searches" -msgstr "" +msgstr "Búsquedas recientes" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:106 -#: apps/native/src/components/search/recently-viewed-list.tsx:86 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:95 +#: apps/native/src/components/search/recently-viewed-list.tsx:77 msgid "Recently Viewed" -msgstr "" +msgstr "Vistos recientemente" -#: apps/web/src/components/settings/system-health-section.tsx:333 +#: apps/web/src/components/settings/system-health-section.tsx:306 msgid "Recommendations" -msgstr "" +msgstr "Recomendaciones" -#: apps/web/src/components/titles/title-recommendations.tsx:40 +#: apps/web/src/components/titles/title-recommendations.tsx:41 msgid "Recommended" -msgstr "" +msgstr "Recomendado" -#: apps/native/src/app/(tabs)/(home)/index.tsx:154 +#: apps/native/src/app/(tabs)/(home)/index.tsx:137 #: apps/web/src/components/dashboard/recommendations-section.tsx:22 msgid "Recommended for You" -msgstr "" +msgstr "Recomendado para ti" -#: apps/web/src/components/auth-form.tsx:143 +#: apps/web/src/components/auth-form.tsx:140 msgid "Redirecting…" -msgstr "" +msgstr "Redirigiendo…" -#: apps/web/src/components/settings/system-health-section.tsx:182 +#: apps/web/src/components/settings/system-health-section.tsx:166 msgid "Refresh" -msgstr "" +msgstr "Actualizar" -#: apps/web/src/components/settings/system-health-section.tsx:172 +#: apps/web/src/components/settings/system-health-section.tsx:156 msgid "Refresh system health" -msgstr "" +msgstr "Actualizar estado del sistema" -#: apps/native/src/components/settings/integration-card.tsx:140 -#: apps/native/src/components/settings/integration-card.tsx:289 +#: apps/native/src/components/settings/integration-card.tsx:128 +#: apps/native/src/components/settings/integration-card.tsx:248 msgid "Regenerate" -msgstr "" +msgstr "Regenerar" -#: apps/native/src/components/settings/integration-card.tsx:135 -#: apps/web/src/components/settings/integration-card.tsx:264 +#: apps/native/src/components/settings/integration-card.tsx:123 +#: apps/web/src/components/settings/integration-card.tsx:226 msgid "Regenerate URL" -msgstr "" +msgstr "Regenerar URL" -#: apps/web/src/components/auth-form.tsx:293 -#: apps/web/src/components/landing-page.tsx:176 +#: apps/web/src/components/auth-form.tsx:274 +#: apps/web/src/components/landing-page.tsx:177 msgid "Register" -msgstr "" +msgstr "Registrarse" -#: apps/native/src/app/(auth)/register.tsx:116 +#: apps/native/src/app/(auth)/register.tsx:104 msgid "Registering on {serverHost}" -msgstr "" +msgstr "Registrándose en {serverHost}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration closed" -msgstr "" +msgstr "Registro cerrado" -#: apps/native/src/app/(auth)/register.tsx:97 -#: apps/web/src/routes/_auth/register.tsx:32 +#: apps/native/src/app/(auth)/register.tsx:87 +#: apps/web/src/routes/_auth/register.tsx:33 msgid "Registration Closed" -msgstr "" +msgstr "Registro cerrado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration opened" -msgstr "" +msgstr "Registro abierto" -#: apps/web/src/components/titles/status-button.tsx:84 +#: apps/web/src/components/titles/status-button.tsx:76 msgid "Remove" -msgstr "" +msgstr "Eliminar" -#: apps/native/src/components/titles/status-action-button.tsx:101 -#: apps/web/src/components/titles/status-button.tsx:66 +#: apps/native/src/components/titles/status-action-button.tsx:96 +#: apps/web/src/components/titles/status-button.tsx:60 msgid "Remove from library" -msgstr "" +msgstr "Eliminar de la biblioteca" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:129 -#: apps/native/src/components/ui/poster-card.tsx:259 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:108 +#: apps/native/src/components/ui/poster-card.tsx:233 msgid "Remove from Library" -msgstr "" +msgstr "Eliminar de la biblioteca" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:277 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:268 msgid "Remove Photo" -msgstr "" +msgstr "Eliminar foto" -#: apps/web/src/components/settings/account-section.tsx:239 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Remove picture" -msgstr "" +msgstr "Eliminar foto" -#: apps/web/src/components/settings/account-section.tsx:199 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Remove profile picture" -msgstr "" +msgstr "Eliminar foto de perfil" -#: apps/native/src/hooks/use-title-actions.ts:66 -#: apps/native/src/lib/title-actions.ts:75 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/lib/title-actions.ts:74 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Removed from library" -msgstr "" +msgstr "Eliminado de la biblioteca" -#: apps/web/src/components/titles/title-availability.tsx:138 +#: apps/web/src/components/titles/title-availability.tsx:114 msgid "Rent" -msgstr "" +msgstr "Alquilar" -#: apps/web/src/components/settings/integration-configs.tsx:165 +#: apps/web/src/components/settings/integration-configs.tsx:150 msgid "Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license." -msgstr "" +msgstr "Requiere <0>Emby Server 4.7.9+ y una licencia activa de <1>Emby Premiere<2/>." -#: apps/web/src/components/settings/integration-configs.tsx:41 +#: apps/web/src/components/settings/integration-configs.tsx:35 msgid "Requires an active <0>Plex Pass<1/> subscription." -msgstr "" +msgstr "Requiere una suscripción activa de <0>Plex Pass<1/>." -#: apps/native/src/components/settings/integration-configs.ts:52 +#: apps/native/src/components/settings/integration-configs.ts:53 msgid "Requires an active Plex Pass subscription." -msgstr "" +msgstr "Requiere una suscripción activa de Plex Pass." -#: apps/native/src/components/settings/integration-configs.ts:88 +#: apps/native/src/components/settings/integration-configs.ts:85 msgid "Requires Emby Server 4.7.9+ and an active Emby Premiere license." -msgstr "" +msgstr "Requiere Emby Server 4.7.9+ y una licencia activa de Emby Premiere." -#: apps/web/src/components/settings/backup-restore-section.tsx:59 -#: apps/web/src/components/settings/backup-restore-section.tsx:116 +#: apps/web/src/components/settings/backup-restore-section.tsx:57 +#: apps/web/src/components/settings/backup-restore-section.tsx:110 msgid "Restore" -msgstr "" +msgstr "Restaurar" -#: apps/web/src/components/settings/backup-restore-section.tsx:89 +#: apps/web/src/components/settings/backup-restore-section.tsx:83 msgid "Restore database?" -msgstr "" +msgstr "¿Restaurar base de datos?" -#: apps/web/src/components/settings/backup-restore-section.tsx:35 +#: apps/web/src/components/settings/backup-restore-section.tsx:36 msgid "Restore failed" -msgstr "" +msgstr "Error al restaurar" -#: apps/web/src/components/settings/backup-restore-section.tsx:132 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 msgid "Restoring…" -msgstr "" +msgstr "Restaurando…" -#: apps/web/src/components/command-palette.tsx:222 +#: apps/web/src/components/command-palette.tsx:217 msgid "Results" -msgstr "" +msgstr "Resultados" -#: apps/web/src/components/settings/imports-section.tsx:731 +#: apps/web/src/components/settings/imports-section.tsx:695 msgid "Retrieving your watch history, watchlist, and ratings..." -msgstr "" +msgstr "Obteniendo tu historial de visionado, lista y valoraciones..." -#: apps/native/src/components/settings/integrations-section.tsx:42 -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:73 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:81 -#: apps/web/src/lib/orpc/client.ts:16 +#: apps/native/src/components/settings/integrations-section.tsx:39 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:71 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:79 +#: apps/web/src/lib/orpc/client.ts:17 msgid "Retry" -msgstr "" +msgstr "Reintentar" -#: apps/web/src/routes/__root.tsx:119 +#: apps/web/src/routes/__root.tsx:116 msgid "Return home" -msgstr "" +msgstr "Volver al inicio" -#: apps/web/src/components/settings/imports-section.tsx:773 +#: apps/web/src/components/settings/imports-section.tsx:735 msgid "Review what was found and choose what to import." -msgstr "" +msgstr "Revisa lo encontrado y elige qué importar." -#: apps/web/src/components/settings/system-health-section.tsx:558 +#: apps/web/src/components/settings/system-health-section.tsx:509 msgid "Run now" -msgstr "" +msgstr "Ejecutar ahora" -#: apps/web/src/components/settings/backup-schedule-section.tsx:102 +#: apps/web/src/components/settings/backup-schedule-section.tsx:99 msgid "Saturday" -msgstr "" +msgstr "Sábado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:322 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:311 msgid "Save" -msgstr "" +msgstr "Guardar" -#: apps/web/src/components/settings/account-section.tsx:296 +#: apps/web/src/components/settings/account-section.tsx:270 msgid "Save name" -msgstr "" +msgstr "Guardar nombre" -#: apps/web/src/routes/__root.tsx:101 +#: apps/web/src/routes/__root.tsx:98 msgid "Scene not found" -msgstr "" +msgstr "Escena no encontrada" -#: apps/web/src/components/settings/system-health-section.tsx:402 +#: apps/web/src/components/settings/system-health-section.tsx:368 msgid "Schedule" -msgstr "" +msgstr "Programación" -#: apps/web/src/components/settings/backup-schedule-section.tsx:201 +#: apps/web/src/components/settings/backup-schedule-section.tsx:186 msgid "Schedule updated" -msgstr "" +msgstr "Programación actualizada" -#: apps/web/src/components/settings/backup-section.tsx:179 +#: apps/web/src/components/settings/backup-section.tsx:155 msgid "Scheduled backup" -msgstr "" +msgstr "Copia de seguridad programada" -#: apps/web/src/components/settings/backup-schedule-section.tsx:178 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups disabled" -msgstr "" +msgstr "Copias de seguridad programadas desactivadas" -#: apps/web/src/components/settings/backup-schedule-section.tsx:177 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups enabled" -msgstr "" +msgstr "Copias de seguridad programadas activadas" #: apps/web/src/components/dashboard/stats-section.tsx:35 msgid "Search for movies and TV shows to start tracking" -msgstr "" +msgstr "Busca películas y series para empezar a seguirlas" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:81 -#: apps/native/src/components/search/recently-viewed-list.tsx:64 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:72 +#: apps/native/src/components/search/recently-viewed-list.tsx:55 msgid "Search for movies, shows, or people" -msgstr "" +msgstr "Busca películas, series o personas" -#: apps/web/src/components/command-palette.tsx:186 +#: apps/web/src/components/command-palette.tsx:182 msgid "Search for movies, TV shows, or run commands" -msgstr "" +msgstr "Busca películas, series o ejecuta comandos" -#: apps/web/src/components/command-palette.tsx:195 +#: apps/web/src/components/command-palette.tsx:191 msgid "Search movies & TV shows…" -msgstr "" +msgstr "Buscar películas y series…" -#: apps/native/src/app/(tabs)/(search)/index.tsx:90 +#: apps/native/src/app/(tabs)/(search)/index.tsx:79 msgid "Search movies, shows, people..." -msgstr "" +msgstr "Buscar películas, series, personas..." -#: apps/web/src/components/nav-bar.tsx:193 -#: apps/web/src/components/nav-bar.tsx:202 +#: apps/web/src/components/nav-bar.tsx:181 +#: apps/web/src/components/nav-bar.tsx:190 msgid "Search…" -msgstr "" +msgstr "Buscar…" #. placeholder {0}: season.seasonNumber -#: apps/native/src/components/titles/season-accordion.tsx:122 -#: apps/native/src/components/titles/season-accordion.tsx:128 -#: apps/web/src/components/titles/use-title-actions.ts:295 -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/native/src/components/titles/season-accordion.tsx:113 +#: apps/native/src/components/titles/season-accordion.tsx:119 +#: apps/web/src/components/titles/use-title-actions.ts:274 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Season {0}" -msgstr "" +msgstr "Temporada {0}" -#: apps/native/src/hooks/use-title-actions.ts:137 -#: apps/native/src/lib/title-actions.ts:124 +#: apps/native/src/hooks/use-title-actions.ts:121 +#: apps/native/src/lib/title-actions.ts:119 msgid "Season watched" -msgstr "" +msgstr "Temporada marcada como vista" -#: apps/native/src/app/title/[id].tsx:536 +#: apps/native/src/app/title/[id].tsx:473 msgid "Seasons" -msgstr "" +msgstr "Temporadas" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:497 -#: apps/web/src/routes/_app/settings.tsx:140 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/routes/_app/settings.tsx:131 msgid "Security" -msgstr "" +msgstr "Seguridad" -#: apps/web/src/components/landing-page.tsx:105 +#: apps/web/src/components/landing-page.tsx:106 msgid "Self-hosted movie & TV tracker" -msgstr "" +msgstr "Seguimiento de películas y series autoalojado" -#: apps/web/src/routes/_app/settings.tsx:121 +#: apps/web/src/routes/_app/settings.tsx:115 msgid "Server" -msgstr "" +msgstr "Servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:452 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 msgid "Server Health" -msgstr "" +msgstr "Estado del servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:380 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:364 msgid "Server URL" -msgstr "" +msgstr "URL del servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 msgid "Set password" -msgstr "" +msgstr "Establecer contraseña" -#: apps/native/src/components/settings/integration-configs.ts:111 -#: apps/native/src/components/settings/integration-configs.ts:129 -#: apps/web/src/components/settings/integration-configs.tsx:247 -#: apps/web/src/components/settings/integration-configs.tsx:287 +#: apps/native/src/components/settings/integration-configs.ts:106 +#: apps/native/src/components/settings/integration-configs.ts:124 +#: apps/web/src/components/settings/integration-configs.tsx:221 +#: apps/web/src/components/settings/integration-configs.tsx:258 msgid "Set your preferred quality profile and root folder" -msgstr "" +msgstr "Configura tu perfil de calidad y carpeta raíz preferidos" -#: apps/native/src/components/header-avatar.tsx:63 -#: apps/web/src/components/nav-bar.tsx:250 -#: apps/web/src/components/nav-bar.tsx:292 -#: apps/web/src/components/settings/settings-shell.tsx:36 +#: apps/native/src/components/header-avatar.tsx:55 +#: apps/web/src/components/nav-bar.tsx:236 +#: apps/web/src/components/nav-bar.tsx:278 +#: apps/web/src/components/settings/settings-shell.tsx:30 msgid "Settings" -msgstr "" +msgstr "Ajustes" -#: apps/native/src/components/settings/integration-card.tsx:319 -#: apps/web/src/components/settings/integration-card.tsx:288 +#: apps/native/src/components/settings/integration-card.tsx:271 +#: apps/web/src/components/settings/integration-card.tsx:248 msgid "Setup instructions" -msgstr "" +msgstr "Instrucciones de configuración" -#: apps/web/src/routes/setup.tsx:98 +#: apps/web/src/routes/setup.tsx:95 msgid "Setup required" -msgstr "" +msgstr "Configuración requerida" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Show less" -msgstr "" +msgstr "Mostrar menos" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 msgid "Show more" -msgstr "" +msgstr "Mostrar más" -#: apps/web/src/components/auth-form.tsx:249 -#: apps/web/src/components/auth-form.tsx:283 +#: apps/web/src/components/auth-form.tsx:233 +#: apps/web/src/components/auth-form.tsx:264 msgid "Sign in" -msgstr "" +msgstr "Iniciar sesión" -#: apps/native/src/app/(auth)/login.tsx:205 -#: apps/web/src/components/landing-page.tsx:167 +#: apps/native/src/app/(auth)/login.tsx:183 +#: apps/web/src/components/landing-page.tsx:168 msgid "Sign In" -msgstr "" +msgstr "Iniciar sesión" #: apps/web/src/routes/_auth/register.tsx:45 msgid "Sign in instead" -msgstr "" +msgstr "Iniciar sesión" -#: apps/native/src/app/(auth)/login.tsx:91 -#: apps/web/src/components/auth-form.tsx:119 +#: apps/native/src/app/(auth)/login.tsx:86 +#: apps/web/src/components/auth-form.tsx:116 msgid "Sign in to continue" -msgstr "" +msgstr "Inicia sesión para continuar" #. placeholder {0}: authConfig.data?.oidcProviderName ?? "SSO" #. placeholder {0}: authConfig?.oidcProviderName || "SSO" -#: apps/native/src/app/(auth)/login.tsx:108 -#: apps/web/src/components/auth-form.tsx:145 +#: apps/native/src/app/(auth)/login.tsx:100 +#: apps/web/src/components/auth-form.tsx:142 msgid "Sign in with {0}" -msgstr "" +msgstr "Iniciar sesión con {0}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 -#: apps/native/src/components/header-avatar.tsx:87 -#: apps/web/src/components/nav-bar.tsx:262 -#: apps/web/src/components/settings/account-section.tsx:354 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:356 +#: apps/native/src/components/header-avatar.tsx:79 +#: apps/web/src/components/nav-bar.tsx:248 +#: apps/web/src/components/settings/account-section.tsx:328 msgid "Sign out" -msgstr "" +msgstr "Cerrar sesión" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:209 -#: apps/native/src/components/header-avatar.tsx:70 -#: apps/native/src/components/header-avatar.tsx:73 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:204 +#: apps/native/src/components/header-avatar.tsx:62 +#: apps/native/src/components/header-avatar.tsx:65 msgid "Sign Out" -msgstr "" +msgstr "Cerrar sesión" -#: apps/native/src/app/change-password.tsx:199 -#: apps/web/src/components/settings/account-section.tsx:499 +#: apps/native/src/app/change-password.tsx:193 +#: apps/web/src/components/settings/account-section.tsx:471 msgid "Sign out of other sessions" -msgstr "" +msgstr "Cerrar otras sesiones" -#: apps/web/src/components/settings/imports-section.tsx:922 +#: apps/web/src/components/settings/imports-section.tsx:880 msgid "Skipped" -msgstr "" +msgstr "Omitido" #. placeholder {0}: data.latestVersion -#: apps/web/src/components/update-toast.tsx:19 +#: apps/web/src/components/update-toast.tsx:18 msgid "Sofa v{0} is available" -msgstr "" +msgstr "Sofa v{0} disponible" #: apps/native/src/components/settings/integration-configs.ts:57 -#: apps/native/src/components/settings/integration-configs.ts:75 -#: apps/native/src/components/settings/integration-configs.ts:95 -#: apps/web/src/components/settings/integration-configs.tsx:86 -#: apps/web/src/components/settings/integration-configs.tsx:147 -#: apps/web/src/components/settings/integration-configs.tsx:208 +#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:133 +#: apps/web/src/components/settings/integration-configs.tsx:186 msgid "Sofa will automatically log movies and episodes when you finish watching them" -msgstr "" +msgstr "Sofa registrará automáticamente películas y episodios cuando termines de verlos" -#: apps/native/src/app/change-password.tsx:81 -#: apps/native/src/app/person/[id].tsx:213 -#: apps/web/src/components/settings/account-section.tsx:417 -#: apps/web/src/routes/__root.tsx:143 +#: apps/native/src/app/change-password.tsx:77 +#: apps/native/src/app/person/[id].tsx:182 +#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/routes/__root.tsx:140 msgid "Something went wrong" -msgstr "" +msgstr "Algo salió mal" -#: apps/web/src/routes/_app/titles.$id.tsx:118 +#: apps/web/src/routes/_app/titles.$id.tsx:113 msgid "Something went wrong while loading this title. Please try again." -msgstr "" +msgstr "Algo salió mal al cargar este título. Por favor, inténtalo de nuevo." #: apps/native/src/lib/query-client.ts:33 -#: apps/web/src/lib/orpc/client.ts:14 +#: apps/web/src/lib/orpc/client.ts:15 msgid "Something went wrong…" -msgstr "" +msgstr "Algo salió mal…" -#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/native/src/components/settings/integration-configs.ts:100 msgid "Sonarr List URL" -msgstr "" +msgstr "URL de lista de Sonarr" #: apps/web/src/components/dashboard/stats-section.tsx:42 msgid "Start exploring" -msgstr "" +msgstr "Empezar a explorar" -#: apps/native/src/app/(tabs)/(home)/index.tsx:142 +#: apps/native/src/app/(tabs)/(home)/index.tsx:126 msgid "Start tracking movies and shows" -msgstr "" +msgstr "Empieza a seguir películas y series" -#: apps/web/src/components/auth-form.tsx:117 +#: apps/web/src/components/auth-form.tsx:114 msgid "Start tracking your watches" -msgstr "" +msgstr "Empieza a registrar lo que ves" -#: apps/web/src/components/settings/backup-schedule-section.tsx:388 +#: apps/web/src/components/settings/backup-schedule-section.tsx:347 msgid "Starting at" -msgstr "" +msgstr "Comenzando a las" -#: apps/web/src/components/settings/imports-section.tsx:888 +#: apps/web/src/components/settings/imports-section.tsx:846 msgid "Starting import..." -msgstr "" +msgstr "Iniciando importación..." -#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/hooks/use-title-actions.ts:64 msgid "Status updated" -msgstr "" +msgstr "Estado actualizado" -#: apps/web/src/components/settings/system-health-section.tsx:595 +#: apps/web/src/components/settings/system-health-section.tsx:543 msgid "Storage" -msgstr "" +msgstr "Almacenamiento" -#: apps/web/src/components/titles/title-availability.tsx:137 +#: apps/web/src/components/titles/title-availability.tsx:113 msgid "Stream" -msgstr "" +msgstr "Streaming" -#: apps/web/src/components/settings/backup-schedule-section.tsx:96 +#: apps/web/src/components/settings/backup-schedule-section.tsx:93 msgid "Sunday" -msgstr "" +msgstr "Domingo" #. placeholder {0}: info.name -#: apps/web/src/components/settings/language-section.tsx:69 +#: apps/web/src/components/settings/language-section.tsx:59 msgid "Switch to {0}" -msgstr "" +msgstr "Cambiar a {0}" -#: apps/native/src/app/+not-found.tsx:30 +#: apps/native/src/app/+not-found.tsx:28 msgid "The page you're looking for doesn't exist." -msgstr "" +msgstr "La página que buscas no existe." -#: apps/web/src/routes/_app/people.$id.tsx:55 +#: apps/web/src/routes/_app/people.$id.tsx:53 msgid "The person you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "La persona que buscas no existe o puede haber sido eliminada de la base de datos." -#: apps/web/src/routes/_app/titles.$id.tsx:149 +#: apps/web/src/routes/_app/titles.$id.tsx:142 msgid "The title you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "El título que buscas no existe o puede haber sido eliminado de la base de datos." -#: apps/web/src/components/settings/imports-section.tsx:866 +#: apps/web/src/components/settings/imports-section.tsx:825 msgid "This may take a few minutes for large libraries. Please don't close this tab." -msgstr "" +msgstr "Esto puede tardar unos minutos para bibliotecas grandes. Por favor, no cierres esta pestaña." -#: apps/web/src/components/dashboard/stats-display.tsx:146 +#: apps/web/src/components/dashboard/stats-display.tsx:135 msgid "This Month" -msgstr "" +msgstr "Este mes" -#: apps/web/src/routes/__root.tsx:104 +#: apps/web/src/routes/__root.tsx:101 msgid "This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay." -msgstr "" +msgstr "Esta página quedó en la sala de montaje. Puede que haya sido movida, eliminada o que nunca pasara del guion." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:606 -#: apps/web/src/routes/_app/settings.tsx:75 -#: apps/web/src/routes/setup.tsx:187 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:557 +#: apps/web/src/routes/_app/settings.tsx:76 +#: apps/web/src/routes/setup.tsx:180 msgid "This product uses the TMDB API but is not endorsed or certified by TMDB." -msgstr "" +msgstr "Este producto utiliza la API de TMDB pero no está respaldado ni certificado por TMDB." -#: apps/web/src/components/dashboard/stats-display.tsx:145 +#: apps/web/src/components/dashboard/stats-display.tsx:134 msgid "This Week" -msgstr "" +msgstr "Esta semana" -#: apps/web/src/components/settings/danger-section.tsx:163 +#: apps/web/src/components/settings/danger-section.tsx:146 msgid "This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed." -msgstr "" +msgstr "Esto eliminará todas las imágenes de TMDB en caché del disco. Las imágenes se volverán a descargar automáticamente cuando sea necesario." -#: apps/web/src/components/settings/danger-section.tsx:205 +#: apps/web/src/components/settings/danger-section.tsx:179 msgid "This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed." -msgstr "" +msgstr "Esto eliminará todos los títulos parciales sin enriquecer y todas las imágenes en caché del disco. Todo se volverá a importar y descargar según sea necesario." -#: apps/web/src/components/settings/danger-section.tsx:120 +#: apps/web/src/components/settings/danger-section.tsx:112 msgid "This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again." -msgstr "" +msgstr "Esto eliminará los títulos parciales sin enriquecer que no estén en la biblioteca de ningún usuario y limpiará los registros de personas huérfanas. Los títulos eliminados se reimportarán si se accede a ellos de nuevo." -#: apps/native/src/components/settings/integration-card.tsx:136 +#: apps/native/src/components/settings/integration-card.tsx:124 msgid "This will invalidate the current {label} URL. You'll need to update it in {label}." -msgstr "" +msgstr "Esto invalidará la URL actual de {label}. Tendrás que actualizarla en {label}." -#: apps/web/src/components/titles/title-seasons.tsx:125 +#: apps/web/src/components/titles/title-seasons.tsx:119 msgid "This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons." -msgstr "" +msgstr "Esto marcará todos los episodios de esta serie como vistos. Puedes deshacerlo más tarde desmarcando temporadas individuales." #. placeholder {0}: formatBackupDate(backup.createdAt) -#: apps/web/src/components/settings/backup-section.tsx:259 +#: apps/web/src/components/settings/backup-section.tsx:231 msgid "This will permanently delete the backup from <0>{0}. This cannot be undone." -msgstr "" +msgstr "Esto eliminará permanentemente la copia de seguridad del <0>{0}. Esta acción no se puede deshacer." -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:61 -#: apps/native/src/components/search/recently-viewed-list.tsx:35 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "This will remove all items from your history." -msgstr "" +msgstr "Esto eliminará todos los elementos de tu historial." -#: apps/web/src/components/settings/backup-restore-section.tsx:92 +#: apps/web/src/components/settings/backup-restore-section.tsx:86 msgid "This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore." -msgstr "" +msgstr "Esto reemplazará toda tu base de datos con el archivo subido. Primero se creará una copia de seguridad de tus datos actuales. Es posible que las sesiones activas necesiten actualizarse tras la restauración." -#: apps/web/src/components/dashboard/stats-display.tsx:147 +#: apps/web/src/components/dashboard/stats-display.tsx:136 msgid "This Year" -msgstr "" +msgstr "Este año" -#: apps/web/src/components/settings/backup-schedule-section.tsx:100 +#: apps/web/src/components/settings/backup-schedule-section.tsx:97 msgid "Thursday" -msgstr "" +msgstr "Jueves" -#: apps/web/src/components/settings/backup-schedule-section.tsx:390 +#: apps/web/src/components/settings/backup-schedule-section.tsx:349 msgid "Time:" -msgstr "" +msgstr "Hora:" -#: apps/native/src/app/title/[id].tsx:251 -#: apps/web/src/routes/_app/titles.$id.tsx:146 +#: apps/native/src/app/title/[id].tsx:235 +#: apps/web/src/routes/_app/titles.$id.tsx:139 msgid "Title not found" -msgstr "" +msgstr "Título no encontrado" -#: apps/native/src/components/settings/integration-configs.ts:131 -#: apps/web/src/components/settings/integration-configs.tsx:290 +#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/web/src/components/settings/integration-configs.tsx:261 msgid "Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)" -msgstr "" +msgstr "Los títulos de tu lista de Sofa se añadirán automáticamente para descargar cuando Radarr consulte esta lista (cada 12 horas por defecto)" -#: apps/native/src/components/settings/integration-configs.ts:113 -#: apps/web/src/components/settings/integration-configs.tsx:250 +#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/web/src/components/settings/integration-configs.tsx:224 msgid "Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)" -msgstr "" +msgstr "Los títulos de tu lista de Sofa se añadirán automáticamente para descargar cuando Sonarr consulte esta lista (cada 6 horas por defecto)" -#: apps/web/src/components/dashboard/stats-display.tsx:144 +#: apps/web/src/components/dashboard/stats-display.tsx:133 msgid "Today" -msgstr "" +msgstr "Hoy" -#: apps/web/src/components/settings/update-check-section.tsx:71 +#: apps/web/src/components/settings/update-check-section.tsx:62 msgid "Toggle automatic update checks" -msgstr "" +msgstr "Activar/desactivar comprobaciones automáticas de actualizaciones" -#: apps/web/src/components/settings/registration-section.tsx:69 +#: apps/web/src/components/settings/registration-section.tsx:62 msgid "Toggle open registration" -msgstr "" +msgstr "Activar/desactivar registro abierto" -#: apps/web/src/components/settings/backup-schedule-section.tsx:290 +#: apps/web/src/components/settings/backup-schedule-section.tsx:257 msgid "Toggle scheduled backups" -msgstr "" +msgstr "Activar/desactivar copias de seguridad programadas" -#: apps/web/src/components/landing-page.tsx:131 +#: apps/web/src/components/landing-page.tsx:132 msgid "Track what you watch. Know what's next.<0/>Your library, your data, your rules." -msgstr "" +msgstr "Registra lo que ves. Sabe qué viene después.<0/>Tu biblioteca, tus datos, tus reglas." -#: apps/web/src/components/titles/trailer-dialog.tsx:37 -#: apps/web/src/components/titles/trailer-dialog.tsx:41 +#: apps/web/src/components/titles/trailer-dialog.tsx:38 +#: apps/web/src/components/titles/trailer-dialog.tsx:42 msgid "Trailer" -msgstr "" +msgstr "Tráiler" -#: apps/web/src/components/explore/hero-banner.tsx:78 +#: apps/web/src/components/explore/hero-banner.tsx:70 msgid "Trending today" -msgstr "" +msgstr "Tendencia hoy" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:95 -#: apps/web/src/components/explore/explore-client.tsx:112 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:77 +#: apps/web/src/components/explore/explore-client.tsx:108 msgid "Trending Today" -msgstr "" +msgstr "Tendencias hoy" -#: apps/web/src/components/settings/system-health-section.tsx:537 +#: apps/web/src/components/settings/system-health-section.tsx:488 msgid "Trigger job" -msgstr "" +msgstr "Ejecutar tarea" -#: apps/web/src/routes/__root.tsx:159 +#: apps/web/src/routes/__root.tsx:156 msgid "Try again" -msgstr "" +msgstr "Intentar de nuevo" -#: apps/web/src/components/settings/backup-schedule-section.tsx:98 +#: apps/web/src/components/settings/backup-schedule-section.tsx:95 msgid "Tuesday" -msgstr "" +msgstr "Martes" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:98 -#: apps/web/src/components/explore/hero-banner.tsx:64 -#: apps/web/src/components/people/filmography-grid.tsx:60 -#: apps/web/src/components/titles/title-hero.tsx:153 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:59 +#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/web/src/components/titles/title-hero.tsx:148 msgid "TV" -msgstr "" +msgstr "Serie" -#: apps/web/src/components/settings/system-health-section.tsx:334 +#: apps/web/src/components/settings/system-health-section.tsx:307 msgid "TV episodes" -msgstr "" +msgstr "Episodios de series" -#: apps/native/src/components/search/search-result-row.tsx:37 +#: apps/native/src/components/search/search-result-row.tsx:34 msgid "TV show" -msgstr "" +msgstr "Serie" -#: apps/web/src/components/settings/system-health-section.tsx:656 +#: apps/web/src/components/settings/system-health-section.tsx:601 msgid "unknown" -msgstr "" +msgstr "desconocido" -#: apps/web/src/components/settings/backup-schedule-section.tsx:256 -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "unlimited" -msgstr "" +msgstr "ilimitado" -#: apps/web/src/components/settings/system-health-section.tsx:273 +#: apps/web/src/components/settings/system-health-section.tsx:253 msgid "Unreachable" -msgstr "" +msgstr "Inaccesible" -#: apps/web/src/components/titles/title-seasons.tsx:340 +#: apps/web/src/components/titles/title-seasons.tsx:318 msgid "Untitled" -msgstr "" +msgstr "Sin título" -#: apps/web/src/components/titles/title-seasons.tsx:221 +#: apps/web/src/components/titles/title-seasons.tsx:205 msgid "Unwatch all" -msgstr "" +msgstr "Desmarcar todo" #. placeholder {0}: season.name ?? t`Season ${season.seasonNumber}` -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Unwatched all of {0}" -msgstr "" +msgstr "Todo de {0} marcado como no visto" -#: apps/web/src/components/titles/use-title-actions.ts:174 +#: apps/web/src/components/titles/use-title-actions.ts:156 msgid "Unwatched S{seasonNum} E{epNum}" -msgstr "" +msgstr "No visto T{seasonNum} E{epNum}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:79 -#: apps/web/src/components/dashboard/continue-watching-card.tsx:77 +#: apps/native/src/components/titles/continue-watching-banner.tsx:72 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:63 msgid "Up next" -msgstr "" +msgstr "A continuación" #. placeholder {0}: updateCheck.data.updateCheck.latestVersion -#: apps/native/src/app/(tabs)/(settings)/index.tsx:528 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:496 msgid "Update available: {0}" -msgstr "" +msgstr "Actualización disponible: {0}" -#: apps/web/src/components/settings/system-health-section.tsx:337 +#: apps/web/src/components/settings/system-health-section.tsx:310 msgid "Update check" -msgstr "" +msgstr "Comprobación de actualizaciones" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks disabled" -msgstr "" +msgstr "Comprobaciones de actualizaciones desactivadas" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks enabled" -msgstr "" +msgstr "Comprobaciones de actualizaciones activadas" -#: apps/web/src/components/settings/account-section.tsx:84 +#: apps/web/src/components/settings/account-section.tsx:76 msgid "Update failed" -msgstr "" +msgstr "Error al actualizar" -#: apps/web/src/components/settings/account-section.tsx:509 +#: apps/web/src/components/settings/account-section.tsx:481 msgid "Update password" -msgstr "" +msgstr "Actualizar contraseña" -#: apps/native/src/app/change-password.tsx:218 +#: apps/native/src/app/change-password.tsx:212 msgid "Update Password" -msgstr "" +msgstr "Actualizar contraseña" -#: apps/web/src/components/settings/backup-restore-section.tsx:134 -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Upload" -msgstr "" +msgstr "Subir" -#: apps/web/src/components/settings/backup-restore-section.tsx:62 +#: apps/web/src/components/settings/backup-restore-section.tsx:60 msgid "Upload a .db file to replace the current database. A safety backup is created first." -msgstr "" +msgstr "Sube un archivo .db para reemplazar la base de datos actual. Primero se crea una copia de seguridad." #. placeholder {0}: config.accept #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:637 +#: apps/web/src/components/settings/imports-section.tsx:603 msgid "Upload a {0} export from your {1} account settings." -msgstr "" +msgstr "Sube una exportación {0} desde los ajustes de tu cuenta de {1}." -#: apps/web/src/components/settings/imports-section.tsx:634 +#: apps/web/src/components/settings/imports-section.tsx:600 msgid "Upload export file" -msgstr "" +msgstr "Subir archivo de exportación" -#: apps/web/src/components/settings/account-section.tsx:112 +#: apps/web/src/components/settings/account-section.tsx:104 msgid "Upload failed" -msgstr "" +msgstr "Error al subir" -#: apps/web/src/components/settings/account-section.tsx:241 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Upload picture" -msgstr "" +msgstr "Subir foto" -#: apps/web/src/components/settings/account-section.tsx:200 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Upload profile picture" -msgstr "" +msgstr "Subir foto de perfil" -#: apps/native/src/components/settings/integration-card.tsx:129 +#: apps/native/src/components/settings/integration-card.tsx:117 msgid "URL copied to clipboard" -msgstr "" +msgstr "URL copiada al portapapeles" -#: apps/web/src/components/update-toast.tsx:24 +#: apps/web/src/components/update-toast.tsx:23 msgid "View release" -msgstr "" +msgstr "Ver versión" -#: apps/web/src/components/settings/imports-section.tsx:699 +#: apps/web/src/components/settings/imports-section.tsx:663 msgid "Waiting for authorization..." -msgstr "" +msgstr "Esperando autorización..." -#: apps/web/src/components/settings/imports-section.tsx:823 +#: apps/web/src/components/settings/imports-section.tsx:785 msgid "Warnings" -msgstr "" +msgstr "Advertencias" #. placeholder {0}: result.warnings.length -#: apps/web/src/components/settings/imports-section.tsx:948 +#: apps/web/src/components/settings/imports-section.tsx:905 msgid "Warnings ({0})" -msgstr "" +msgstr "Advertencias ({0})" -#: apps/web/src/components/titles/title-seasons.tsx:202 +#: apps/web/src/components/titles/title-seasons.tsx:189 msgid "Watch all" -msgstr "" +msgstr "Marcar todo como visto" -#: apps/web/src/components/settings/imports-section.tsx:801 +#: apps/web/src/components/settings/imports-section.tsx:763 msgid "Watch history" -msgstr "" +msgstr "Historial de visionado" -#: apps/web/src/components/titles/title-availability.tsx:59 +#: apps/web/src/components/titles/title-availability.tsx:46 msgid "Watch on {name}" -msgstr "" +msgstr "Ver en {name}" -#: apps/web/src/components/titles/use-title-actions.ts:298 -#: apps/web/src/components/titles/use-title-actions.ts:307 +#: apps/web/src/components/titles/use-title-actions.ts:277 +#: apps/web/src/components/titles/use-title-actions.ts:286 msgid "Watched all of {seasonLabel}" -msgstr "" +msgstr "Visto todo de {seasonLabel}" -#: apps/native/src/lib/title-actions.ts:123 +#: apps/native/src/lib/title-actions.ts:119 msgid "Watched all of {seasonName}" -msgstr "" +msgstr "Visto todo de {seasonName}" -#: apps/web/src/components/titles/use-title-actions.ts:220 -#: apps/web/src/components/titles/use-title-actions.ts:229 +#: apps/web/src/components/titles/use-title-actions.ts:199 +#: apps/web/src/components/titles/use-title-actions.ts:208 msgid "Watched S{seasonNum} E{epNum}" -msgstr "" +msgstr "Visto T{seasonNum} E{epNum}" -#: apps/native/src/components/titles/status-action-button.tsx:42 -#: apps/web/src/components/title-card.tsx:72 -#: apps/web/src/components/titles/status-button.tsx:19 +#: apps/native/src/components/titles/status-action-button.tsx:43 +#: apps/web/src/components/title-card.tsx:69 +#: apps/web/src/components/titles/status-button.tsx:14 msgid "Watching" -msgstr "" +msgstr "Viendo" -#: apps/native/src/components/titles/status-action-button.tsx:82 -#: apps/web/src/components/settings/imports-section.tsx:781 -#: apps/web/src/components/settings/imports-section.tsx:807 -#: apps/web/src/components/titles/status-button.tsx:55 +#: apps/native/src/components/titles/status-action-button.tsx:78 +#: apps/web/src/components/settings/imports-section.tsx:743 +#: apps/web/src/components/settings/imports-section.tsx:769 +#: apps/web/src/components/titles/status-button.tsx:49 msgid "Watchlist" -msgstr "" +msgstr "Lista" -#: apps/native/src/components/titles/status-action-button.tsx:40 +#: apps/native/src/components/titles/status-action-button.tsx:41 msgid "Watchlisted" -msgstr "" +msgstr "En lista" -#: apps/native/src/components/settings/integration-configs.ts:50 -#: apps/native/src/components/settings/integration-configs.ts:67 -#: apps/native/src/components/settings/integration-configs.ts:85 +#: apps/native/src/components/settings/integration-configs.ts:51 +#: apps/native/src/components/settings/integration-configs.ts:66 +#: apps/native/src/components/settings/integration-configs.ts:82 msgid "Webhook URL" -msgstr "" +msgstr "URL de webhook" -#: apps/web/src/components/settings/backup-schedule-section.tsx:99 +#: apps/web/src/components/settings/backup-schedule-section.tsx:96 msgid "Wednesday" -msgstr "" +msgstr "Miércoles" -#: apps/web/src/components/auth-form.tsx:112 -#: apps/web/src/components/dashboard/welcome-header.tsx:10 +#: apps/web/src/components/auth-form.tsx:110 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back" -msgstr "" +msgstr "Bienvenido de nuevo" -#: apps/web/src/components/dashboard/welcome-header.tsx:8 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back, {name}" -msgstr "" +msgstr "Bienvenido de nuevo, {name}" -#: apps/native/src/app/title/[id].tsx:483 -#: apps/web/src/components/titles/title-availability.tsx:154 +#: apps/native/src/app/title/[id].tsx:430 +#: apps/web/src/components/titles/title-availability.tsx:130 msgid "Where to Watch" -msgstr "" +msgstr "Dónde ver" -#: apps/web/src/components/titles/title-availability.tsx:141 +#: apps/web/src/components/titles/title-availability.tsx:117 msgid "With Ads" -msgstr "" +msgstr "Con anuncios" -#: apps/web/src/components/people/person-hero.tsx:75 +#: apps/web/src/components/people/person-hero.tsx:73 msgid "Writer" -msgstr "" +msgstr "Guionista" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:386 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "You'll be signed out to change the server URL." -msgstr "" +msgstr "Se cerrará tu sesión para cambiar la URL del servidor." #. placeholder {0}: data.currentVersion -#: apps/web/src/components/update-toast.tsx:20 +#: apps/web/src/components/update-toast.tsx:19 msgid "You're running v{0}." -msgstr "" +msgstr "Estás usando la v{0}." -#: apps/web/src/components/settings/imports-section.tsx:678 +#: apps/web/src/components/settings/imports-section.tsx:642 msgid "Your code:" -msgstr "" +msgstr "Tu código:" -#: apps/native/src/app/(tabs)/(home)/index.tsx:141 +#: apps/native/src/app/(tabs)/(home)/index.tsx:125 #: apps/web/src/components/dashboard/stats-section.tsx:32 msgid "Your library is empty" -msgstr "" +msgstr "Tu biblioteca está vacía" -#: apps/native/src/app/(auth)/register.tsx:134 +#: apps/native/src/app/(auth)/register.tsx:121 msgid "Your name" -msgstr "" +msgstr "Tu nombre" diff --git a/packages/i18n/src/po/es.ts b/packages/i18n/src/po/es.ts index ef7e47e..bf962c7 100644 --- a/packages/i18n/src/po/es.ts +++ b/packages/i18n/src/po/es.ts @@ -1 +1 @@ -/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Saturday\"],\"+6i0lS\":[\"Retrieving your watch history, watchlist, and ratings...\"],\"+Cv+V9\":[\"Remove from library\"],\"+JkEpu\":[\"This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay.\"],\"+K0AvT\":[\"Disconnect\"],\"+N0l5/\":[\"Connected to <0>\",[\"serverHost\"],\". Tap to change.\"],\"+gLHYi\":[\"Failed to load title\"],\"+j1ex/\":[\"Failed to remove from library\"],\"+nF1ZO\":[\"Remove Photo\"],\"/+6dvC\":[\"Errors (\",[\"0\"],\")\"],\"/BBXeA\":[\"Connecting to server...\"],\"/DwR+n\":[\"Creating…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Watch all\"],\"/gQXGv\":[\"Failed to update status\"],\"/nT6AE\":[\"New password\"],\"/sHc1/\":[\"Update check\"],\"0+dyau\":[\"Failed to update retention setting\"],\"0BFJKK\":[\"Authorization was denied. Please try again.\"],\"0GHb20\":[\"Purge metadata cache?\"],\"0IBW21\":[\"Failed to purge caches\"],\"0gH/sc\":[\"Remove profile picture\"],\"1+P9RR\":[\"Switch to \",[\"0\"]],\"12cc1j\":[\"Watching\"],\"12lVOl\":[\"Self-hosted movie & TV tracker\"],\"1B4z0M\":[\"Filmography\"],\"1J4Ek0\":[\"Automatically back up your database on a schedule\"],\"1JhxXW\":[\"Episode \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Import options\"],\"1Qz4uG\":[\"Enable the \\\"Playback\\\" event category\"],\"1hMWR6\":[\"Create account\"],\"1jHIjh\":[\"Watched all of \",[\"seasonName\"]],\"1vSYsG\":[\"Download backup\"],\"1wL1tj\":[\"TV show\"],\"2FletP\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" person\"],\"other\":[\"#\",\" persons\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\" (\",[\"freed\"],\" freed)\"],\"2Fsd9r\":[\"This Month\"],\"2MPcep\":[\"Import complete\"],\"2Mu33Z\":[\"Cache management\"],\"2POOFK\":[\"Free\"],\"2Pt2NY\":[\"This will remove all items from your history.\"],\"2fCpt5\":[\"Return home\"],\"2pPBp6\":[\"Trending today\"],\"39y5bn\":[\"Friday\"],\"3Blefz\":[\"Ratings\"],\"3JTlG8\":[\"Recent Searches\"],\"3Jy8bM\":[\"Movies \",[\"select\"]],\"3L9OuQ\":[\"Episode \",[\"0\"]],\"3T8ziB\":[\"Create an account\"],\"3hELxX\":[\"Enter your Sofa server URL to get started\"],\"4fxLkp\":[\"Open Sonarr, go to <0>Settings > Import Lists\"],\"4kpBqM\":[\"Last event \",[\"0\"]],\"4uUjVO\":[\"Producer\"],\"4x+A56\":[\"Anonymous usage reporting\"],\"5IShvp\":[\"Import \",[\"totalItems\"],\" items\"],\"5IYJSv\":[\"Explore titles\"],\"5Y4mym\":[\"Import from \",[\"0\"]],\"5ZzgbQ\":[\"Connect \",[\"0\"]],\"5fEnbK\":[\"Failed to update scheduled backup setting\"],\"5lWFkC\":[\"Sign in\"],\"5v9C16\":[\"Connected to \",[\"source\"]],\"623bR4\":[\"Failed to trigger job\"],\"6HN0yh\":[\"Open Plex, go to Settings > Webhooks\"],\"6TNjOJ\":[\"Failed to update rating\"],\"6TfUy6\":[\"last \",[\"value\"]],\"6V3Ea3\":[\"Copied\"],\"6YtxFj\":[\"Name\"],\"6exX+8\":[\"Regenerate\"],\"6gRgw8\":[\"Retry\"],\"6lGV3K\":[\"Show less\"],\"76++pR\":[\"Warnings\"],\"77DIAu\":[\"Go to Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Failed\"],\"7D50KC\":[[\"label\"],\" disconnected\"],\"7GfM5w\":[\"Recently Viewed\"],\"7L01XJ\":[\"Actions\"],\"7eMo+U\":[\"Go Home\"],\"7p5kLi\":[\"Dashboard\"],\"85eoJ1\":[\"Schedule updated\"],\"8B9E2D\":[\"Day:\"],\"8YwF1J\":[\"Go to <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Password\"],\"8tjQCz\":[\"Explore\"],\"8vNtLy\":[\"Paste the Radarr URL above into the List URL field\"],\"8wYDMp\":[\"Already have an account?\"],\"9AE3vb\":[\"Open Plex, go to <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"Import is still running in the background. Check back later.\"],\"9NyAH9\":[\"Skipped\"],\"9Xhrps\":[\"Failed to connect\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Welcome back\"],\"9rG25a\":[\"Server URL\"],\"A+0rLe\":[\"Marked as completed\"],\"AOHgZp\":[\"Episodes\"],\"AOddWK\":[\"Connect \",[\"label\"]],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Environment\"],\"Acf6vF\":[\"Save name\"],\"AdoUfN\":[\"Failed to add to watchlist\"],\"AeXO77\":[\"Account\"],\"AjtYj0\":[\"On Watchlist\"],\"Avee+B\":[\"Failed to update name\"],\"B2R3xD\":[\"Toggle scheduled backups\"],\"BEVzjL\":[\"Import failed\"],\"BQnS5I\":[\"Open \",[\"source\"],\" to enter code\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup\"],\"other\":[\"backups\"]}],\" stored\"],\"BpttUI\":[\"Trending Today\"],\"BrrIs8\":[\"Storage\"],\"BskWMl\":[\"Unreachable\"],\"BzEFor\":[\"or\"],\"CGDHFb\":[\"Add a <0>Generic Destination and paste the URL above\"],\"CGExDN\":[\"Failed to purge image cache\"],\"CHeXFE\":[\"Status updated\"],\"CKyk7Q\":[\"Go back\"],\"CaB/+I\":[\"Welcome back, \",[\"name\"]],\"CodnUh\":[\"Removed from library\"],\"CpzGJY\":[\"This may take a few minutes for large libraries. Please don't close this tab.\"],\"CuPxpd\":[\"Requires an active <0>Plex Pass<1/> subscription.\"],\"CzBN6D\":[\"Start exploring\"],\"D+R2Xs\":[\"Starting import...\"],\"D3C4Yx\":[\"Current password is required\"],\"DBC3t5\":[\"Sunday\"],\"DI4lqs\":[\"Person not found\"],\"DKBbJf\":[\"Added \\\"\",[\"titleName\"],\"\\\" to watchlist\"],\"DPfwMq\":[\"Done\"],\"DZse/o\":[\"Add a \\\"Generic Destination\\\" and paste the URL above\"],\"E/QGRL\":[\"Disabled\"],\"E6nRW7\":[\"Copy URL\"],\"EWQlBH\":[\"Your library is empty\"],\"EWaCfj\":[\"Enter your current password and choose a new one.\"],\"Eeo/Gy\":[\"Failed to update setting\"],\"Efn6WU\":[\"This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed.\"],\"Etp5if\":[\"Finished importing from \",[\"source\"],\".\"],\"F006BN\":[\"Import from \",[\"source\"]],\"FNvDMc\":[\"This Week\"],\"FWSp+7\":[\"Enter the code below on \",[\"source\"],\"'s website to authorize Sofa.\"],\"FXN0ro\":[\"Recommendations\"],\"FaU7Ag\":[\"Enable the \\\"Playback Stop\\\" notification type\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Actor\"],\"FwRqjE\":[\"Image cache and backup disk usage\"],\"G00fgM\":[\"last \",[\"n\"]],\"G3myU+\":[\"Tuesday\"],\"GcCthe\":[\"In Library\"],\"Gf39AA\":[[\"0\"],\" triggered\"],\"GnhfWw\":[\"Toggle automatic update checks\"],\"GptGxg\":[\"Change password\"],\"GqTZ+S\":[\"Rated \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"GrdN/F\":[\"Caught up — marked \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" as watched\"],\"H4B5LG\":[\"This product uses the TMDB API but is not endorsed or certified by TMDB.\"],\"HBRd5n\":[\"Season \",[\"0\"]],\"HD+aQ7\":[\"Database backups\"],\"HG+31u\":[\"Purge all caches?\"],\"Haz+72\":[\"This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed.\"],\"HbReP5\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as completed\"],\"Hg6o8v\":[\"Refresh system health\"],\"HmEjnC\":[\"Last event \",[\"timeAgo\"]],\"HvDfH/\":[\"Imported\"],\"I89uD4\":[\"Restoring…\"],\"IRoxQm\":[\"Registration closed\"],\"IS0nrP\":[\"Create Account\"],\"IY9rQ0\":[\"Free up disk space by clearing cached metadata and images\"],\"IrC12v\":[\"Application\"],\"J28zul\":[\"Connecting...\"],\"J64cFL\":[\"Library refresh\"],\"JKmmmN\":[\"Added to watchlist\"],\"JN0f/Y\":[\"Connect to TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirm new password\"],\"JRadFJ\":[\"Start tracking your watches\"],\"JSwq8t\":[\"New account creation is currently disabled.\"],\"JY5Oyv\":[\"Database\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Connecting…\"],\"JwFbe8\":[\"TV\"],\"KDw4GX\":[\"Try again\"],\"KG6681\":[\"Episode watched\"],\"KIS/Sd\":[\"Sign out of other sessions\"],\"KK0ghs\":[\"Image cache\"],\"KVAoFR\":[\"unlimited\"],\"KcXJuc\":[\"Purging...\"],\"KhtG3o\":[\"Update Password\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}]],\"KmWyx0\":[\"Job\"],\"KoF0x6\":[\"age \",[\"age\"]],\"Ksiej9\":[\"Requires an active Plex Pass subscription.\"],\"Kx9NEt\":[\"Invalid token\"],\"Lk6Jb/\":[\"Last polled \",[\"timeAgo\"]],\"LmEEic\":[\"Waiting for authorization...\"],\"LqKH42\":[\"Connect with \",[\"0\"]],\"Lrpjji\":[\"Disconnect \",[\"label\"]],\"Lu6Udx\":[\"Click \\\"+\\\" and select \\\"Custom Lists\\\"\"],\"MDoX++\":[\"Sonarr List URL\"],\"MRBlCJ\":[\"Failed to unmark some episodes\"],\"MUO7w9\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as watched\"],\"MZbQHL\":[\"No results found.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Authorize Sofa to read your \",[\"0\"],\" library. No password shared.\"],\"N40H+G\":[\"All\"],\"N6SFhC\":[\"Sign in instead\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" is available\"],\"N9RF2M\":[\"Click \\\"Add Webhook\\\" and paste the URL above\"],\"NBo4z0\":[\"Click <0>+ and select <1>Custom Lists\"],\"NICUmW\":[\"Director\"],\"NQzPoO\":[\"New backup\"],\"NSxl1l\":[\"More Settings\"],\"NVF43p\":[\"Time:\"],\"NdPMwS\":[\"In Your Library\"],\"NgaPSG\":[\"Failed to update schedule\"],\"O3oNi5\":[\"Email\"],\"OBcj5W\":[\"This will invalidate the current \",[\"label\"],\" URL. You'll need to update it in \",[\"label\"],\".\"],\"OL8hbM\":[\"New password must be at least 8 characters\"],\"ONWvwQ\":[\"Upload\"],\"OPFjyX\":[\"Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog\"],\"OW/+RD\":[\"Watch history\"],\"OZdaTZ\":[\"Person\"],\"OvO76u\":[\"Back to Login\"],\"OvdFIZ\":[\"Season watched\"],\"P2FLLe\":[\"View release\"],\"PBdLfg\":[\"No titles found for this genre.\"],\"PQ3qDa\":[\"Fetching your library data from \",[\"source\"],\"...\"],\"PjNoxI\":[\"Scheduled backup\"],\"Pn2B7/\":[\"Current password\"],\"PnEbL/\":[\"Rated \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"Pwqkdw\":[\"Loading…\"],\"Py87xY\":[\"Authorization succeeded but failed to fetch your library. Please try again.\"],\"Q3MPWA\":[\"Update password\"],\"QHcLEN\":[\"Connected\"],\"QK4UIx\":[\"Mark Watched\"],\"Qjlym2\":[\"Failed to create account\"],\"Qm1NmK\":[\"OR\"],\"Qoq+GP\":[\"Read more\"],\"QphVZW\":[\"Can't reach server\"],\"QqLJHH\":[\"This Year\"],\"R0yu2l\":[\"Catch up\"],\"R4YBui\":[\"Search for movies and TV shows to start tracking\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"RIR15/\":[\"Radarr List URL\"],\"RLe7Vk\":[\"Checking…\"],\"ROq8cl\":[\"Failed to parse file\"],\"RQq8Si\":[\"Registration opened\"],\"S0soqb\":[\"Failed to remove profile picture\"],\"S1McZh\":[\"Failed to upload avatar\"],\"S2ble5\":[[\"0\"],\" movies, \",[\"1\"],\" episodes\"],\"S2qPRR\":[\"Search movies & TV shows…\"],\"SDND4q\":[\"Not configured\"],\"SFdAk9\":[\"Unwatched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Unwatch all\"],\"SbS+Bm\":[\"Regenerate URL\"],\"SlfejT\":[\"Error\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"Up next\"],\"SyPRjk\":[\"Sofa will automatically log movies and episodes when you finish watching them\"],\"T0/7WG\":[\"Next backup \",[\"distance\"]],\"TEaX6q\":[\"Backup deleted\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Profile picture removed\"],\"TqyQQS\":[\"Enable the <0>Playback event category\"],\"Tz0i8g\":[\"Settings\"],\"U+FxtW\":[\"Track what you watch. Know what's next.<0/>Your library, your data, your rules.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Toggle open registration\"],\"UDMjsP\":[\"Quick Actions\"],\"UmQ6Fe\":[\"Purge image cache?\"],\"UtDm3q\":[\"URL copied to clipboard\"],\"V1Kh9Z\":[\"Episodes \",[\"select\"]],\"V6uzvC\":[\"More Like This\"],\"V9CuQ+\":[\"Connect to \",[\"source\"]],\"VAcXNz\":[\"Wednesday\"],\"VKyhZK\":[\"Title not found\"],\"VQvpro\":[\"Paste the Sonarr URL above into the List URL field\"],\"VhMDMg\":[\"Change Password\"],\"Vx0ayx\":[\"Failed to mark some episodes\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recommended\"],\"WMCwmR\":[\"Check for updates\"],\"WP48q2\":[\"Image Cache\"],\"WT1Ibn\":[\"Last run\"],\"Wb3E4g\":[\"Run now\"],\"WgF2UQ\":[\"You're running v\",[\"0\"],\".\"],\"WtWhSi\":[\"Rating removed\"],\"Wy/3II\":[\"Last polled \",[\"0\"]],\"XFCSYs\":[\"Cast\"],\"XN23JY\":[\"This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again.\"],\"XZwihE\":[\"Ready — nothing received yet\"],\"XjTduw\":[\"Upload picture\"],\"YEGzVq\":[\"Failed to connect \",[\"label\"]],\"YErf89\":[\"Failed to purge metadata cache\"],\"YQ768h\":[\"Scene not found\"],\"YiRsXK\":[\"Clear Recently Viewed?\"],\"Yjp1zf\":[\"Don't have a server?\"],\"YqMfa9\":[\"Review what was found and choose what to import.\"],\"ZGUYm0\":[\"Ready — not polled yet\"],\"ZQKLI1\":[\"Danger Zone\"],\"ZVZUoU\":[[\"0\"],\" cached images\"],\"ZWTQ81\":[\"Watch on \",[\"name\"]],\"a3LDKx\":[\"Security\"],\"aLBUiR\":[\"Keeping <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" backups.\"],\"aM0+kY\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" stale title\"],\"other\":[\"#\",\" stale titles\"]}],\" and \",[\"1\",\"plural\",{\"one\":[\"#\",\" orphaned person\"],\"other\":[\"#\",\" orphaned persons\"]}]],\"aO1AxG\":[\"Episode unwatched\"],\"aV/hDI\":[\"Failed to disconnect \",[\"label\"]],\"acbSg0\":[\"Double tap to filter by \",[\"label\"]],\"agE7k4\":[\"Rated \",[\"stars\",\"plural\",{\"one\":[\"#\",\" star\"],\"other\":[\"#\",\" stars\"]}]],\"alPRaV\":[\"Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)\"],\"aourBv\":[\"Scheduled backups enabled\"],\"apLLSU\":[\"Are you sure you want to sign out?\"],\"atc9MA\":[\"Open Emby, go to <0>Settings > Webhooks\"],\"auVUJO\":[\"Restore database?\"],\"ayqfr4\":[[\"label\"],\" URL regenerated\"],\"b/8KCH\":[\"This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons.\"],\"b3Thhd\":[\"Upload failed\"],\"b5DFtH\":[\"Set password\"],\"bHYIks\":[\"Sign Out\"],\"bITrbE\":[\"Purge all\"],\"bNmdjU\":[\"Watchlist\"],\"bTRwag\":[\"Remove from Library\"],\"bXMotV\":[\"Marked as watched\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Page Not Found\"],\"c1ssjI\":[\"Importing from \",[\"source\"]],\"c3b0B0\":[\"Get Started\"],\"c4b9Dm\":[\"No results for \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Go to Dashboard\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" ratings\"],\"cnGeoo\":[\"Delete\"],\"cpE88+\":[\"Create your account\"],\"d/6MoL\":[\"Manage your account and preferences\"],\"dA7BWh\":[\"Requires Emby Server 4.7.9+ and an active Emby Premiere license.\"],\"dEgA5A\":[\"Cancel\"],\"dTZwve\":[\"Marked all episodes as watched\"],\"dUCJry\":[\"Newest\"],\"ddwpAr\":[\"Warnings (\",[\"0\"],\")\"],\"e/ToF5\":[\"Sign in with \",[\"0\"]],\"e9sZMS\":[\"This will permanently delete the backup from <0>\",[\"0\"],\". This cannot be undone.\"],\"eFRooE\":[\"Last run failed\"],\"eM39Om\":[\"Watched all of \",[\"seasonLabel\"]],\"eZjYb8\":[\"Writer\"],\"ecUA8p\":[\"Today\"],\"evBxZy\":[\"Where to Watch\"],\"ezDa1h\":[\"Open docs\"],\"f+m696\":[\"An unexpected error occurred while loading this page. You can try again or head back to the dashboard.\"],\"f/AKdU\":[\"Are you sure you want to disconnect \",[\"label\"],\"? The current URL will stop working.\"],\"f7ax8J\":[\"Open in browser…\"],\"fMPkxb\":[\"Show more\"],\"fNMqNn\":[\"Popular TV Shows\"],\"fObVvy\":[\"Profile picture updated\"],\"fRettQ\":[[\"0\"],\" items\"],\"fUDRF9\":[\"Watchlisted\"],\"fcWrnU\":[\"Sign out\"],\"fgLNSM\":[\"Register\"],\"fsAEqk\":[\"Continue Watching\"],\"fzAeQI\":[\"Registering on \",[\"serverHost\"]],\"g+gBfk\":[\"Parsing...\"],\"g4JYff\":[\"Imported \",[\"0\"],\" items from \",[\"1\"]],\"gKtb5i\":[\"Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)\"],\"gaIAMq\":[\"Remove picture\"],\"gbEEMp\":[\"Delete backup\"],\"gcNLi0\":[\"Update checks enabled\"],\"gmB6oO\":[\"Schedule\"],\"h/T5Yb\":[\"Open registration\"],\"h4yKYk\":[\"Next run\"],\"h7MgpO\":[\"Keyboard Shortcuts\"],\"hTXYdY\":[\"Failed to create backup\"],\"hXYY5Q\":[\"Unwatched all of \",[\"0\"]],\"he3ygx\":[\"Copy\"],\"hjGupC\":[\"Lost connection to import. Check status in settings.\"],\"hlqjFc\":[\"In library\"],\"hou0tP\":[\"Stream\"],\"hty0d5\":[\"Monday\"],\"i0qMbr\":[\"Home\"],\"i9rcQ/\":[\"Movies\"],\"iGma9e\":[\"Update failed\"],\"iSLIjg\":[\"Connect\"],\"iWv3ck\":[\"Failed to catch up\"],\"iXZ09g\":[\"Mark as Completed\"],\"id08cd\":[\"Watched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Add to Library\"],\"ihn4zD\":[\"Search…\"],\"itDEco\":[\"Already have an account? Sign in\"],\"itheEn\":[\"With Ads\"],\"iwCRIF\":[\"You'll be signed out to change the server URL.\"],\"j5GBIy\":[\"Open Radarr, go to Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" backups · last <0/>\"],\"jB3sfe\":[\"Manual backup\"],\"jFnMJ8\":[\"Double tap to clear this filter\"],\"jQsPwL\":[\"Scheduled backups disabled\"],\"jSjGeu\":[[\"0\"],\" items have no external IDs and will be resolved by title search, which may be less accurate.\"],\"jX6Gzg\":[\"This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore.\"],\"jiHVUy\":[\"Pre-restore backup\"],\"k6c41p\":[\"Background jobs\"],\"kBDOjB\":[\"Backup schedule\"],\"kkDQ8m\":[\"Thursday\"],\"klOeIX\":[\"Failed to change password\"],\"ks3XeZ\":[\"Open Sonarr, go to Settings > Import Lists\"],\"kvuCtu\":[\"Something went wrong while loading this title. Please try again.\"],\"kx0s+n\":[\"Results\"],\"l2wcoS\":[\"Last run succeeded\"],\"l3s5ri\":[\"Import\"],\"lCF0wC\":[\"Refresh\"],\"lJ1yo4\":[\"Failed to sign in\"],\"lVqzRx\":[\"Click <0>Add Webhook and paste the URL above\"],\"lXkUEV\":[\"Availability\"],\"lcLe89\":[\"Search for movies, TV shows, or run commands\"],\"lfVyvz\":[\"Add to Watchlist\"],\"llDXYJ\":[\"Backups\"],\"llkZR0\":[\"Could not load integrations\"],\"ln9/n9\":[\"Don't have an account?\"],\"lpIMne\":[\"Passwords do not match\"],\"lqY3WY\":[\"Change Server\"],\"luoodD\":[\"Setup required\"],\"m5WhJy\":[\"Automatic update checks\"],\"mIx58S\":[\"Purge images\"],\"mYBORk\":[\"Movie\"],\"ml9cU0\":[\"Failed to regenerate \",[\"label\"],\" URL\"],\"mqwkjd\":[\"Health status\"],\"mqxHH7\":[\"Go to Explore\"],\"mzI/c+\":[\"Download\"],\"n1ekoW\":[\"Sign In\"],\"n3Pzd7\":[\"Backup created\"],\"nBHvPL\":[\"Cancel editing\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" image\"],\"other\":[\"#\",\" images\"]}]],\"nO0Qnj\":[\"Your code:\"],\"nRP1xx\":[\"Need more help?\"],\"nV1LjT\":[\"Enable the <0>Playback Stop notification type\"],\"nVsE67\":[\"Mark as Watching\"],\"nZ7lF1\":[\"Device code expired. Please try again.\"],\"nbfdhU\":[\"Integrations\"],\"nbmpf9\":[\"Purge metadata\"],\"nnKJTm\":[\"Failed to mark all episodes as watched\"],\"nszbQG\":[\"No backups yet\"],\"nuh/Wq\":[\"Webhook URL\"],\"nwtY4N\":[\"Something went wrong\"],\"oAIA3w\":[\"Search for movies, shows, or people\"],\"oC8IMh\":[\"Search movies, shows, people...\"],\"oNvZcA\":[\"Episodes this week\"],\"oXq+Wr\":[[\"label\"],\" connected\"],\"ogtYkT\":[\"Password updated\"],\"ojtedN\":[\"Open Radarr, go to <0>Settings > Import Lists\"],\"olMi35\":[\"Recommended for You\"],\"p+PZEl\":[\"Here's what's happening with your library\"],\"pAtylB\":[\"Not Found\"],\"pG9pq1\":[\"Deleted \",[\"0\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\", freed \",[\"freed\"]],\"pWWFjv\":[\"Checked <0/>\"],\"ph76H6\":[\"Allow new users to create accounts\"],\"pjgw0N\":[\"Choose how to import your \",[\"0\"],\" data.\"],\"puo3W3\":[\"Redirecting…\"],\"q3GraM\":[\"...and \",[\"0\"],\" more\"],\"q6nrFE\":[\"died at \",[\"age\"]],\"q6pUQ9\":[\"Upload a .db file to replace the current database. A safety backup is created first.\"],\"q8yluz\":[\"Your name\"],\"qA6VR5\":[\"Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license.\"],\"qF2IBM\":[\"Movies this month\"],\"qHbApt\":[\"Failed to load backup schedule settings.\"],\"qLB1zX\":[\"Upload a \",[\"0\"],\" export from your \",[\"1\"],\" account settings.\"],\"qPNzfu\":[\"Update checks disabled\"],\"qWoML/\":[\"Add a new webhook and paste the URL above\"],\"qiOIiY\":[\"Buy\"],\"qn1X6N\":[\"Failed to update registration setting\"],\"qqWcBV\":[\"Completed\"],\"qqeAJM\":[\"Never\"],\"r9aDAY\":[[\"count\"],\" earlier \",[\"count\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" unwatched\"],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Server Health\"],\"rdymVD\":[\"Trigger job\"],\"rtir7c\":[\"unknown\"],\"s0U4ZZ\":[\"TV episodes\"],\"s4vVUm\":[\"Could not load person details\"],\"s9dVME\":[\"Failed to unmark episode\"],\"sGH11W\":[\"Server\"],\"sl/qWH\":[\"Upload profile picture\"],\"sstysK\":[\"Failed to mark episode\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episodes\"],\"t/Ch8S\":[\"Marked as watching\"],\"t/YqKh\":[\"Remove\"],\"tfDRzk\":[\"Save\"],\"tiymc0\":[\"Something went wrong…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"uBAxNB\":[\"Editor\"],\"uBrbSu\":[\"Failed to start \",[\"0\"],\" connection\"],\"uM6jnS\":[\"Restore failed\"],\"uMrJrX\":[\"Admin only\"],\"uswLvZ\":[\"The title you're looking for doesn't exist or may have been removed from the database.\"],\"uxOntd\":[[\"watchedCount\"],\" of \",[\"0\"],\" episodes watched\"],\"v2CA3w\":[\"Change Photo\"],\"v5ipVu\":[\"Mark all episodes as watched?\"],\"vKfeax\":[\"Open Emby, go to Settings > Webhooks\"],\"vXIe7J\":[\"Language\"],\"vuCCZ7\":[\"Failed to parse import data\"],\"vwKERN\":[\"Failed to delete backup\"],\"w8pqsh\":[\"Mark All Watched\"],\"wA7B2T\":[\"New accounts are not being accepted right now. Contact the admin if you need access.\"],\"wGFX13\":[\"Starting at\"],\"wR1UAy\":[\"Popular Movies\"],\"wRWcdL\":[\"Play trailer\"],\"wThGrS\":[\"App Settings\"],\"wZK4Xg\":[\"Never run\"],\"wdLxgL\":[\"Member since \",[\"memberSince\"]],\"wja8aL\":[\"Untitled\"],\"wtGebH\":[\"The person you're looking for doesn't exist or may have been removed from the database.\"],\"wtsbt5\":[\"Add to watchlist\"],\"wtuVU4\":[\"Frequency\"],\"wx7pwA\":[\"Mark as Watched\"],\"x4ZiTl\":[\"Setup instructions\"],\"xCJdfg\":[\"Clear\"],\"xGVfLh\":[\"Continue\"],\"xLoCm2\":[\"Check configuration\"],\"xSrU2g\":[[\"healthyCount\"],\" of \",[\"0\"],\" jobs healthy\"],\"xazqmy\":[\"Seasons\"],\"xbBXhy\":[\"Periodically check GitHub for new Sofa releases\"],\"xrh2/M\":[\"Failed to mark as watched\"],\"y3e9pF\":[\"Delete backup?\"],\"y6Urel\":[\"Next Episode\"],\"yGvjAo\":[\"Update available: \",[\"0\"]],\"yKu/3Y\":[\"Restore\"],\"yYxB17\":[\"Clear all\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Database restored. Reloading...\"],\"ygo0l/\":[\"Start tracking movies and shows\"],\"yvwIbI\":[\"Upload export file\"],\"yz7wBu\":[\"Close\"],\"z1U/Fh\":[\"Rating\"],\"z5evln\":[\"No internet connection\"],\"zAvS8w\":[\"Sign in to continue\"],\"zEqK2w\":[\"The page you're looking for doesn't exist.\"],\"zFkiTv\":[\"Install the Webhook plugin from Jellyfin's plugin catalog\"],\"zNyR4f\":[\"Set your preferred quality profile and root folder\"],\"za8Le/\":[\"Registration Closed\"],\"zb77GC\":[\"Rent\"],\"ztAdhw\":[\"Name updated\"]}")as Messages; \ No newline at end of file +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Sábado\"],\"+6i0lS\":[\"Obteniendo tu historial de visionado, lista y valoraciones...\"],\"+Cv+V9\":[\"Eliminar de la biblioteca\"],\"+JkEpu\":[\"Esta página quedó en la sala de montaje. Puede que haya sido movida, eliminada o que nunca pasara del guion.\"],\"+K0AvT\":[\"Desconectar\"],\"+N0l5/\":[\"Conectado a <0>\",[\"serverHost\"],\". Toca para cambiar.\"],\"+gLHYi\":[\"Error al cargar el título\"],\"+j1ex/\":[\"Error al eliminar de la biblioteca\"],\"+nF1ZO\":[\"Eliminar foto\"],\"/+6dvC\":[\"Errores (\",[\"0\"],\")\"],\"/BBXeA\":[\"Conectando al servidor...\"],\"/DwR+n\":[\"Creando…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Marcar todo como visto\"],\"/gQXGv\":[\"Error al actualizar el estado\"],\"/nT6AE\":[\"Nueva contraseña\"],\"/sHc1/\":[\"Comprobación de actualizaciones\"],\"0+dyau\":[\"Error al actualizar el ajuste de retención\"],\"0BFJKK\":[\"La autorización fue denegada. Por favor, inténtalo de nuevo.\"],\"0GHb20\":[\"¿Purgar la caché de metadatos?\"],\"0IBW21\":[\"Error al purgar las cachés\"],\"0gH/sc\":[\"Eliminar foto de perfil\"],\"1+P9RR\":[\"Cambiar a \",[\"0\"]],\"12cc1j\":[\"Viendo\"],\"12lVOl\":[\"Seguimiento de películas y series autoalojado\"],\"1B4z0M\":[\"Filmografía\"],\"1J4Ek0\":[\"Realiza copias de seguridad automáticas de tu base de datos de forma programada\"],\"1JhxXW\":[\"Episodio \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Opciones de importación\"],\"1Qz4uG\":[\"Activa la categoría de evento \\\"Playback\\\"\"],\"1hMWR6\":[\"Crear cuenta\"],\"1jHIjh\":[\"Visto todo de \",[\"seasonName\"]],\"1vSYsG\":[\"Descargar copia de seguridad\"],\"1wL1tj\":[\"Serie\"],\"2FletP\":[\"Purgados \",[\"0\",\"plural\",{\"one\":[\"#\",\" título\"],\"other\":[\"#\",\" títulos\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" persona\"],\"other\":[\"#\",\" personas\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" archivo\"],\"other\":[\"#\",\" archivos\"]}],\" (\",[\"freed\"],\" liberado)\"],\"2Fsd9r\":[\"Este mes\"],\"2MPcep\":[\"Importación completada\"],\"2Mu33Z\":[\"Gestión de caché\"],\"2POOFK\":[\"Gratis\"],\"2Pt2NY\":[\"Esto eliminará todos los elementos de tu historial.\"],\"2fCpt5\":[\"Volver al inicio\"],\"2pPBp6\":[\"Tendencia hoy\"],\"39y5bn\":[\"Viernes\"],\"3Blefz\":[\"Valoraciones\"],\"3JTlG8\":[\"Búsquedas recientes\"],\"3Jy8bM\":[\"Películas \",[\"select\"]],\"3L9OuQ\":[\"Episodio \",[\"0\"]],\"3T8ziB\":[\"Crear una cuenta\"],\"3hELxX\":[\"Introduce la URL de tu servidor Sofa para comenzar\"],\"4fxLkp\":[\"Abre Sonarr, ve a <0>Settings > Import Lists\"],\"4kpBqM\":[\"Último evento \",[\"0\"]],\"4uUjVO\":[\"Productor\"],\"4x+A56\":[\"Informe de uso anónimo\"],\"5IShvp\":[\"Importar \",[\"totalItems\"],\" elementos\"],\"5IYJSv\":[\"Explorar títulos\"],\"5Y4mym\":[\"Importar desde \",[\"0\"]],\"5ZzgbQ\":[\"Conectar \",[\"0\"]],\"5fEnbK\":[\"Error al actualizar el ajuste de copia de seguridad programada\"],\"5lWFkC\":[\"Iniciar sesión\"],\"5v9C16\":[\"Conectado a \",[\"source\"]],\"623bR4\":[\"Error al iniciar la tarea\"],\"6HN0yh\":[\"Abre Plex, ve a Settings > Webhooks\"],\"6TNjOJ\":[\"Error al actualizar la valoración\"],\"6TfUy6\":[\"últimos \",[\"value\"]],\"6V3Ea3\":[\"Copiado\"],\"6YtxFj\":[\"Nombre\"],\"6exX+8\":[\"Regenerar\"],\"6gRgw8\":[\"Reintentar\"],\"6lGV3K\":[\"Mostrar menos\"],\"76++pR\":[\"Advertencias\"],\"77DIAu\":[\"Ve a Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Fallido\"],\"7D50KC\":[[\"label\"],\" desconectado\"],\"7GfM5w\":[\"Vistos recientemente\"],\"7L01XJ\":[\"Acciones\"],\"7eMo+U\":[\"Ir al inicio\"],\"7p5kLi\":[\"Panel\"],\"85eoJ1\":[\"Programación actualizada\"],\"8B9E2D\":[\"Día:\"],\"8YwF1J\":[\"Ve a <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Contraseña\"],\"8tjQCz\":[\"Explorar\"],\"8vNtLy\":[\"Pega la URL de Radarr anterior en el campo URL de lista\"],\"8wYDMp\":[\"¿Ya tienes una cuenta?\"],\"9AE3vb\":[\"Abre Plex, ve a <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"La importación sigue en curso en segundo plano. Vuelve más tarde.\"],\"9NyAH9\":[\"Omitido\"],\"9Xhrps\":[\"Error al conectar\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Bienvenido de nuevo\"],\"9rG25a\":[\"URL del servidor\"],\"A+0rLe\":[\"Marcado como completado\"],\"AOHgZp\":[\"Episodios\"],\"AOddWK\":[\"Conectar \",[\"label\"]],\"ATfxL/\":[\"Tráiler\"],\"AVlZoM\":[\"Entorno\"],\"Acf6vF\":[\"Guardar nombre\"],\"AdoUfN\":[\"Error al añadir a la lista\"],\"AeXO77\":[\"Cuenta\"],\"AjtYj0\":[\"En la lista\"],\"Avee+B\":[\"Error al actualizar el nombre\"],\"B2R3xD\":[\"Activar/desactivar copias de seguridad programadas\"],\"BEVzjL\":[\"Error en la importación\"],\"BQnS5I\":[\"Abre \",[\"source\"],\" para introducir el código\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup almacenado\"],\"other\":[\"backups almacenados\"]}]],\"BpttUI\":[\"Tendencias hoy\"],\"BrrIs8\":[\"Almacenamiento\"],\"BskWMl\":[\"Inaccesible\"],\"BzEFor\":[\"o\"],\"CGDHFb\":[\"Añade un <0>Generic Destination y pega la URL anterior\"],\"CGExDN\":[\"Error al purgar la caché de imágenes\"],\"CHeXFE\":[\"Estado actualizado\"],\"CKyk7Q\":[\"Volver\"],\"CaB/+I\":[\"Bienvenido de nuevo, \",[\"name\"]],\"CodnUh\":[\"Eliminado de la biblioteca\"],\"CpzGJY\":[\"Esto puede tardar unos minutos para bibliotecas grandes. Por favor, no cierres esta pestaña.\"],\"CuPxpd\":[\"Requiere una suscripción activa de <0>Plex Pass<1/>.\"],\"CzBN6D\":[\"Empezar a explorar\"],\"D+R2Xs\":[\"Iniciando importación...\"],\"D3C4Yx\":[\"La contraseña actual es obligatoria\"],\"DBC3t5\":[\"Domingo\"],\"DI4lqs\":[\"Persona no encontrada\"],\"DKBbJf\":[\"\\\"\",[\"titleName\"],\"\\\" añadido a la lista\"],\"DPfwMq\":[\"Hecho\"],\"DZse/o\":[\"Añade un \\\"Generic Destination\\\" y pega la URL anterior\"],\"E/QGRL\":[\"Desactivado\"],\"E6nRW7\":[\"Copiar URL\"],\"EWQlBH\":[\"Tu biblioteca está vacía\"],\"EWaCfj\":[\"Introduce tu contraseña actual y elige una nueva.\"],\"Eeo/Gy\":[\"Error al actualizar el ajuste\"],\"Efn6WU\":[\"Esto eliminará todos los títulos parciales sin enriquecer y todas las imágenes en caché del disco. Todo se volverá a importar y descargar según sea necesario.\"],\"Etp5if\":[\"Importación desde \",[\"source\"],\" completada.\"],\"F006BN\":[\"Importar desde \",[\"source\"]],\"FNvDMc\":[\"Esta semana\"],\"FWSp+7\":[\"Introduce el siguiente código en el sitio web de \",[\"source\"],\" para autorizar a Sofa.\"],\"FXN0ro\":[\"Recomendaciones\"],\"FaU7Ag\":[\"Activa el tipo de notificación \\\"Playback Stop\\\"\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Actor\"],\"FwRqjE\":[\"Uso del disco de caché de imágenes y copias de seguridad\"],\"G00fgM\":[\"últimos \",[\"n\"]],\"G3myU+\":[\"Martes\"],\"GcCthe\":[\"En la biblioteca\"],\"Gf39AA\":[[\"0\"],\" iniciado\"],\"GnhfWw\":[\"Activar/desactivar comprobaciones automáticas de actualizaciones\"],\"GptGxg\":[\"Cambiar contraseña\"],\"GqTZ+S\":[\"Valorado con \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"estrella\"],\"other\":[\"estrellas\"]}]],\"GrdN/F\":[\"Al día — \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episodio marcado como visto\"],\"other\":[\"episodios marcados como vistos\"]}]],\"H4B5LG\":[\"Este producto utiliza la API de TMDB pero no está respaldado ni certificado por TMDB.\"],\"HBRd5n\":[\"Temporada \",[\"0\"]],\"HD+aQ7\":[\"Copias de seguridad de la base de datos\"],\"HG+31u\":[\"¿Purgar todas las cachés?\"],\"Haz+72\":[\"Esto eliminará todas las imágenes de TMDB en caché del disco. Las imágenes se volverán a descargar automáticamente cuando sea necesario.\"],\"HbReP5\":[\"\\\"\",[\"titleName\"],\"\\\" marcado como completado\"],\"Hg6o8v\":[\"Actualizar estado del sistema\"],\"HmEjnC\":[\"Último evento \",[\"timeAgo\"]],\"HvDfH/\":[\"Importado\"],\"I89uD4\":[\"Restaurando…\"],\"IRoxQm\":[\"Registro cerrado\"],\"IS0nrP\":[\"Crear cuenta\"],\"IY9rQ0\":[\"Libera espacio en disco eliminando metadatos e imágenes en caché\"],\"IrC12v\":[\"Aplicación\"],\"J28zul\":[\"Conectando...\"],\"J64cFL\":[\"Actualización de biblioteca\"],\"JKmmmN\":[\"Añadido a la lista\"],\"JN0f/Y\":[\"Conectar con TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirmar nueva contraseña\"],\"JRadFJ\":[\"Empieza a registrar lo que ves\"],\"JSwq8t\":[\"La creación de nuevas cuentas está desactivada actualmente.\"],\"JY5Oyv\":[\"Base de datos\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Conectando…\"],\"JwFbe8\":[\"Serie\"],\"KDw4GX\":[\"Intentar de nuevo\"],\"KG6681\":[\"Episodio marcado como visto\"],\"KIS/Sd\":[\"Cerrar otras sesiones\"],\"KK0ghs\":[\"Caché de imágenes\"],\"KVAoFR\":[\"ilimitado\"],\"KcXJuc\":[\"Purgando...\"],\"KhtG3o\":[\"Actualizar contraseña\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" título\"],\"other\":[\"#\",\" títulos\"]}]],\"KmWyx0\":[\"Tarea\"],\"KoF0x6\":[\"edad \",[\"age\"]],\"Ksiej9\":[\"Requiere una suscripción activa de Plex Pass.\"],\"Kx9NEt\":[\"Token inválido\"],\"Lk6Jb/\":[\"Última consulta \",[\"timeAgo\"]],\"LmEEic\":[\"Esperando autorización...\"],\"LqKH42\":[\"Conectar con \",[\"0\"]],\"Lrpjji\":[\"Desconectar \",[\"label\"]],\"Lu6Udx\":[\"Haz clic en \\\"+\\\" y selecciona \\\"Custom Lists\\\"\"],\"MDoX++\":[\"URL de lista de Sonarr\"],\"MRBlCJ\":[\"Error al desmarcar algunos episodios\"],\"MUO7w9\":[\"\\\"\",[\"titleName\"],\"\\\" marcado como visto\"],\"MZbQHL\":[\"No se encontraron resultados.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Autoriza a Sofa a leer tu biblioteca de \",[\"0\"],\". No se comparte ninguna contraseña.\"],\"N40H+G\":[\"Todo\"],\"N6SFhC\":[\"Iniciar sesión\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" disponible\"],\"N9RF2M\":[\"Haz clic en \\\"Add Webhook\\\" y pega la URL anterior\"],\"NBo4z0\":[\"Haz clic en <0>+ y selecciona <1>Custom Lists\"],\"NICUmW\":[\"Director\"],\"NQzPoO\":[\"Nueva copia de seguridad\"],\"NSxl1l\":[\"Más ajustes\"],\"NVF43p\":[\"Hora:\"],\"NdPMwS\":[\"En tu biblioteca\"],\"NgaPSG\":[\"Error al actualizar la programación\"],\"O3oNi5\":[\"Correo electrónico\"],\"OBcj5W\":[\"Esto invalidará la URL actual de \",[\"label\"],\". Tendrás que actualizarla en \",[\"label\"],\".\"],\"OL8hbM\":[\"La nueva contraseña debe tener al menos 8 caracteres\"],\"ONWvwQ\":[\"Subir\"],\"OPFjyX\":[\"Instala el <0>plugin Webhook<1/> del catálogo de plugins de Jellyfin\"],\"OW/+RD\":[\"Historial de visionado\"],\"OZdaTZ\":[\"Persona\"],\"OvO76u\":[\"Volver al inicio de sesión\"],\"OvdFIZ\":[\"Temporada marcada como vista\"],\"P2FLLe\":[\"Ver versión\"],\"PBdLfg\":[\"No se encontraron títulos para este género.\"],\"PQ3qDa\":[\"Obteniendo datos de tu biblioteca desde \",[\"source\"],\"...\"],\"PjNoxI\":[\"Copia de seguridad programada\"],\"Pn2B7/\":[\"Contraseña actual\"],\"PnEbL/\":[\"Valorado con \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"estrella\"],\"other\":[\"estrellas\"]}]],\"Pwqkdw\":[\"Cargando…\"],\"Py87xY\":[\"La autorización fue exitosa, pero no se pudo obtener tu biblioteca. Por favor, inténtalo de nuevo.\"],\"Q3MPWA\":[\"Actualizar contraseña\"],\"QHcLEN\":[\"Conectado\"],\"QK4UIx\":[\"Marcar como visto\"],\"Qjlym2\":[\"Error al crear la cuenta\"],\"Qm1NmK\":[\"O\"],\"Qoq+GP\":[\"Leer más\"],\"QphVZW\":[\"No se puede contactar con el servidor\"],\"QqLJHH\":[\"Este año\"],\"R0yu2l\":[\"Ponerse al día\"],\"R4YBui\":[\"Busca películas y series para empezar a seguirlas\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episodio\"],\"other\":[\"episodios\"]}]],\"RIR15/\":[\"URL de lista de Radarr\"],\"RLe7Vk\":[\"Comprobando…\"],\"ROq8cl\":[\"Error al analizar el archivo\"],\"RQq8Si\":[\"Registro abierto\"],\"S0soqb\":[\"Error al eliminar la foto de perfil\"],\"S1McZh\":[\"Error al subir el avatar\"],\"S2ble5\":[[\"0\"],\" películas, \",[\"1\"],\" episodios\"],\"S2qPRR\":[\"Buscar películas y series…\"],\"SDND4q\":[\"No configurado\"],\"SFdAk9\":[\"No visto T\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Desmarcar todo\"],\"SbS+Bm\":[\"Regenerar URL\"],\"SlfejT\":[\"Error\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"A continuación\"],\"SyPRjk\":[\"Sofa registrará automáticamente películas y episodios cuando termines de verlos\"],\"T0/7WG\":[\"Próxima copia de seguridad \",[\"distance\"]],\"TEaX6q\":[\"Copia de seguridad eliminada\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Foto de perfil eliminada\"],\"TqyQQS\":[\"Activa la categoría de evento <0>Playback\"],\"Tz0i8g\":[\"Ajustes\"],\"U+FxtW\":[\"Registra lo que ves. Sabe qué viene después.<0/>Tu biblioteca, tus datos, tus reglas.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Activar/desactivar registro abierto\"],\"UDMjsP\":[\"Acciones rápidas\"],\"UmQ6Fe\":[\"¿Purgar la caché de imágenes?\"],\"UtDm3q\":[\"URL copiada al portapapeles\"],\"V1Kh9Z\":[\"Episodios \",[\"select\"]],\"V6uzvC\":[\"Más como este\"],\"V9CuQ+\":[\"Conectar con \",[\"source\"]],\"VAcXNz\":[\"Miércoles\"],\"VKyhZK\":[\"Título no encontrado\"],\"VQvpro\":[\"Pega la URL de Sonarr anterior en el campo URL de lista\"],\"VhMDMg\":[\"Cambiar contraseña\"],\"Vx0ayx\":[\"Error al marcar algunos episodios\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recomendado\"],\"WMCwmR\":[\"Buscar actualizaciones\"],\"WP48q2\":[\"Caché de imágenes\"],\"WT1Ibn\":[\"Última ejecución\"],\"Wb3E4g\":[\"Ejecutar ahora\"],\"WgF2UQ\":[\"Estás usando la v\",[\"0\"],\".\"],\"WtWhSi\":[\"Valoración eliminada\"],\"Wy/3II\":[\"Última consulta \",[\"0\"]],\"XFCSYs\":[\"Reparto\"],\"XN23JY\":[\"Esto eliminará los títulos parciales sin enriquecer que no estén en la biblioteca de ningún usuario y limpiará los registros de personas huérfanas. Los títulos eliminados se reimportarán si se accede a ellos de nuevo.\"],\"XZwihE\":[\"Listo — nada recibido aún\"],\"XjTduw\":[\"Subir foto\"],\"YEGzVq\":[\"Error al conectar \",[\"label\"]],\"YErf89\":[\"Error al purgar la caché de metadatos\"],\"YQ768h\":[\"Escena no encontrada\"],\"YiRsXK\":[\"¿Limpiar vistos recientemente?\"],\"Yjp1zf\":[\"¿No tienes un servidor?\"],\"YqMfa9\":[\"Revisa lo encontrado y elige qué importar.\"],\"ZGUYm0\":[\"Listo — sin consultas aún\"],\"ZQKLI1\":[\"Zona de peligro\"],\"ZVZUoU\":[[\"0\"],\" imágenes en caché\"],\"ZWTQ81\":[\"Ver en \",[\"name\"]],\"a3LDKx\":[\"Seguridad\"],\"aLBUiR\":[\"Guardando <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" copias de seguridad.\"],\"aM0+kY\":[\"Purgados \",[\"0\",\"plural\",{\"one\":[\"#\",\" título obsoleto\"],\"other\":[\"#\",\" títulos obsoletos\"]}],\" y \",[\"1\",\"plural\",{\"one\":[\"#\",\" persona huérfana\"],\"other\":[\"#\",\" personas huérfanas\"]}]],\"aO1AxG\":[\"Episodio marcado como no visto\"],\"aV/hDI\":[\"Error al desconectar \",[\"label\"]],\"acbSg0\":[\"Doble toque para filtrar por \",[\"label\"]],\"agE7k4\":[\"Valorado con \",[\"stars\",\"plural\",{\"one\":[\"#\",\" estrella\"],\"other\":[\"#\",\" estrellas\"]}]],\"alPRaV\":[\"Los títulos de tu lista de Sofa se añadirán automáticamente para descargar cuando Radarr consulte esta lista (cada 12 horas por defecto)\"],\"aourBv\":[\"Copias de seguridad programadas activadas\"],\"apLLSU\":[\"¿Seguro que quieres cerrar sesión?\"],\"atc9MA\":[\"Abre Emby, ve a <0>Settings > Webhooks\"],\"auVUJO\":[\"¿Restaurar base de datos?\"],\"ayqfr4\":[\"URL de \",[\"label\"],\" regenerada\"],\"b/8KCH\":[\"Esto marcará todos los episodios de esta serie como vistos. Puedes deshacerlo más tarde desmarcando temporadas individuales.\"],\"b3Thhd\":[\"Error al subir\"],\"b5DFtH\":[\"Establecer contraseña\"],\"bHYIks\":[\"Cerrar sesión\"],\"bITrbE\":[\"Purgar todo\"],\"bNmdjU\":[\"Lista\"],\"bTRwag\":[\"Eliminar de la biblioteca\"],\"bXMotV\":[\"Marcado como visto\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Página no encontrada\"],\"c1ssjI\":[\"Importando desde \",[\"source\"]],\"c3b0B0\":[\"Comenzar\"],\"c4b9Dm\":[\"Sin resultados para \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Ir al panel\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" valoraciones\"],\"cnGeoo\":[\"Eliminar\"],\"cpE88+\":[\"Crea tu cuenta\"],\"d/6MoL\":[\"Gestiona tu cuenta y preferencias\"],\"dA7BWh\":[\"Requiere Emby Server 4.7.9+ y una licencia activa de Emby Premiere.\"],\"dEgA5A\":[\"Cancelar\"],\"dTZwve\":[\"Todos los episodios marcados como vistos\"],\"dUCJry\":[\"Más reciente\"],\"ddwpAr\":[\"Advertencias (\",[\"0\"],\")\"],\"e/ToF5\":[\"Iniciar sesión con \",[\"0\"]],\"e9sZMS\":[\"Esto eliminará permanentemente la copia de seguridad del <0>\",[\"0\"],\". Esta acción no se puede deshacer.\"],\"eFRooE\":[\"Última ejecución fallida\"],\"eM39Om\":[\"Visto todo de \",[\"seasonLabel\"]],\"eZjYb8\":[\"Guionista\"],\"ecUA8p\":[\"Hoy\"],\"evBxZy\":[\"Dónde ver\"],\"ezDa1h\":[\"Abrir documentación\"],\"f+m696\":[\"Ocurrió un error inesperado al cargar esta página. Puedes intentarlo de nuevo o volver al panel.\"],\"f/AKdU\":[\"¿Seguro que quieres desconectar \",[\"label\"],\"? La URL actual dejará de funcionar.\"],\"f7ax8J\":[\"Abrir en el navegador…\"],\"fMPkxb\":[\"Mostrar más\"],\"fNMqNn\":[\"Series populares\"],\"fObVvy\":[\"Foto de perfil actualizada\"],\"fRettQ\":[[\"0\"],\" elementos\"],\"fUDRF9\":[\"En lista\"],\"fcWrnU\":[\"Cerrar sesión\"],\"fgLNSM\":[\"Registrarse\"],\"fsAEqk\":[\"Continuar viendo\"],\"fzAeQI\":[\"Registrándose en \",[\"serverHost\"]],\"g+gBfk\":[\"Analizando...\"],\"g4JYff\":[[\"0\"],\" elementos importados desde \",[\"1\"]],\"gKtb5i\":[\"Los títulos de tu lista de Sofa se añadirán automáticamente para descargar cuando Sonarr consulte esta lista (cada 6 horas por defecto)\"],\"gaIAMq\":[\"Eliminar foto\"],\"gbEEMp\":[\"Eliminar copia de seguridad\"],\"gcNLi0\":[\"Comprobaciones de actualizaciones activadas\"],\"gmB6oO\":[\"Programación\"],\"h/T5Yb\":[\"Registro abierto\"],\"h4yKYk\":[\"Próxima ejecución\"],\"h7MgpO\":[\"Atajos de teclado\"],\"hTXYdY\":[\"Error al crear la copia de seguridad\"],\"hXYY5Q\":[\"Todo de \",[\"0\"],\" marcado como no visto\"],\"he3ygx\":[\"Copiar\"],\"hjGupC\":[\"Se perdió la conexión con la importación. Comprueba el estado en ajustes.\"],\"hlqjFc\":[\"En la biblioteca\"],\"hou0tP\":[\"Streaming\"],\"hty0d5\":[\"Lunes\"],\"i0qMbr\":[\"Inicio\"],\"i9rcQ/\":[\"Películas\"],\"iGma9e\":[\"Error al actualizar\"],\"iSLIjg\":[\"Conectar\"],\"iWv3ck\":[\"Error al ponerse al día\"],\"iXZ09g\":[\"Marcar como completado\"],\"id08cd\":[\"Visto T\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Añadir a la biblioteca\"],\"ihn4zD\":[\"Buscar…\"],\"itDEco\":[\"¿Ya tienes una cuenta? Inicia sesión\"],\"itheEn\":[\"Con anuncios\"],\"iwCRIF\":[\"Se cerrará tu sesión para cambiar la URL del servidor.\"],\"j5GBIy\":[\"Abre Radarr, ve a Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" backups · último <0/>\"],\"jB3sfe\":[\"Copia de seguridad manual\"],\"jFnMJ8\":[\"Doble toque para eliminar este filtro\"],\"jQsPwL\":[\"Copias de seguridad programadas desactivadas\"],\"jSjGeu\":[[\"0\"],\" elementos no tienen IDs externos y se resolverán por búsqueda de título, lo que puede ser menos preciso.\"],\"jX6Gzg\":[\"Esto reemplazará toda tu base de datos con el archivo subido. Primero se creará una copia de seguridad de tus datos actuales. Es posible que las sesiones activas necesiten actualizarse tras la restauración.\"],\"jiHVUy\":[\"Copia de seguridad previa a restauración\"],\"k6c41p\":[\"Tareas en segundo plano\"],\"kBDOjB\":[\"Programación de copias de seguridad\"],\"kkDQ8m\":[\"Jueves\"],\"klOeIX\":[\"Error al cambiar la contraseña\"],\"ks3XeZ\":[\"Abre Sonarr, ve a Settings > Import Lists\"],\"kvuCtu\":[\"Algo salió mal al cargar este título. Por favor, inténtalo de nuevo.\"],\"kx0s+n\":[\"Resultados\"],\"l2wcoS\":[\"Última ejecución exitosa\"],\"l3s5ri\":[\"Importar\"],\"lCF0wC\":[\"Actualizar\"],\"lJ1yo4\":[\"Error al iniciar sesión\"],\"lVqzRx\":[\"Haz clic en <0>Add Webhook y pega la URL anterior\"],\"lXkUEV\":[\"Disponibilidad\"],\"lcLe89\":[\"Busca películas, series o ejecuta comandos\"],\"lfVyvz\":[\"Añadir a la lista\"],\"llDXYJ\":[\"Copias de seguridad\"],\"llkZR0\":[\"No se pudieron cargar las integraciones\"],\"ln9/n9\":[\"¿No tienes una cuenta?\"],\"lpIMne\":[\"Las contraseñas no coinciden\"],\"lqY3WY\":[\"Cambiar servidor\"],\"luoodD\":[\"Configuración requerida\"],\"m5WhJy\":[\"Comprobaciones automáticas de actualizaciones\"],\"mIx58S\":[\"Purgar imágenes\"],\"mYBORk\":[\"Película\"],\"ml9cU0\":[\"Error al regenerar la URL de \",[\"label\"]],\"mqwkjd\":[\"Estado del sistema\"],\"mqxHH7\":[\"Ir a Explorar\"],\"mzI/c+\":[\"Descargar\"],\"n1ekoW\":[\"Iniciar sesión\"],\"n3Pzd7\":[\"Copia de seguridad creada\"],\"nBHvPL\":[\"Cancelar edición\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" imagen\"],\"other\":[\"#\",\" imágenes\"]}]],\"nO0Qnj\":[\"Tu código:\"],\"nRP1xx\":[\"¿Necesitas más ayuda?\"],\"nV1LjT\":[\"Activa el tipo de notificación <0>Playback Stop\"],\"nVsE67\":[\"Marcar como en curso\"],\"nZ7lF1\":[\"El código del dispositivo ha expirado. Por favor, inténtalo de nuevo.\"],\"nbfdhU\":[\"Integraciones\"],\"nbmpf9\":[\"Purgar metadatos\"],\"nnKJTm\":[\"Error al marcar todos los episodios como vistos\"],\"nszbQG\":[\"Aún no hay copias de seguridad\"],\"nuh/Wq\":[\"URL de webhook\"],\"nwtY4N\":[\"Algo salió mal\"],\"oAIA3w\":[\"Busca películas, series o personas\"],\"oC8IMh\":[\"Buscar películas, series, personas...\"],\"oNvZcA\":[\"Episodios esta semana\"],\"oXq+Wr\":[[\"label\"],\" conectado\"],\"ogtYkT\":[\"Contraseña actualizada\"],\"ojtedN\":[\"Abre Radarr, ve a <0>Settings > Import Lists\"],\"olMi35\":[\"Recomendado para ti\"],\"p+PZEl\":[\"Esto es lo que pasa con tu biblioteca\"],\"pAtylB\":[\"No encontrado\"],\"pG9pq1\":[[\"0\",\"plural\",{\"one\":[\"#\",\" archivo eliminado\"],\"other\":[\"#\",\" archivos eliminados\"]}],\", liberado \",[\"freed\"]],\"pWWFjv\":[\"Comprobado <0/>\"],\"ph76H6\":[\"Permitir que nuevos usuarios creen cuentas\"],\"pjgw0N\":[\"Elige cómo importar tus datos de \",[\"0\"],\".\"],\"puo3W3\":[\"Redirigiendo…\"],\"q3GraM\":[\"...y \",[\"0\"],\" más\"],\"q6nrFE\":[\"falleció a los \",[\"age\"]],\"q6pUQ9\":[\"Sube un archivo .db para reemplazar la base de datos actual. Primero se crea una copia de seguridad.\"],\"q8yluz\":[\"Tu nombre\"],\"qA6VR5\":[\"Requiere <0>Emby Server 4.7.9+ y una licencia activa de <1>Emby Premiere<2/>.\"],\"qF2IBM\":[\"Películas este mes\"],\"qHbApt\":[\"Error al cargar los ajustes de programación de copias de seguridad.\"],\"qLB1zX\":[\"Sube una exportación \",[\"0\"],\" desde los ajustes de tu cuenta de \",[\"1\"],\".\"],\"qPNzfu\":[\"Comprobaciones de actualizaciones desactivadas\"],\"qWoML/\":[\"Añade un nuevo webhook y pega la URL anterior\"],\"qiOIiY\":[\"Comprar\"],\"qn1X6N\":[\"Error al actualizar el ajuste de registro\"],\"qqWcBV\":[\"Completado\"],\"qqeAJM\":[\"Nunca\"],\"r9aDAY\":[[\"count\"],\" \",[\"count\",\"plural\",{\"one\":[\"episodio anterior sin ver\"],\"other\":[\"episodios anteriores sin ver\"]}]],\"rLgPvm\":[\"Copia de seguridad\"],\"rSTpb5\":[\"Estado del servidor\"],\"rdymVD\":[\"Ejecutar tarea\"],\"rtir7c\":[\"desconocido\"],\"s0U4ZZ\":[\"Episodios de series\"],\"s4vVUm\":[\"No se pudieron cargar los detalles de la persona\"],\"s9dVME\":[\"Error al desmarcar el episodio\"],\"sGH11W\":[\"Servidor\"],\"sl/qWH\":[\"Subir foto de perfil\"],\"sstysK\":[\"Error al marcar el episodio\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episodios\"],\"t/Ch8S\":[\"Marcado como en curso\"],\"t/YqKh\":[\"Eliminar\"],\"tfDRzk\":[\"Guardar\"],\"tiymc0\":[\"Algo salió mal…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episodio\"],\"other\":[\"episodios\"]}]],\"uBAxNB\":[\"Editor\"],\"uBrbSu\":[\"Error al iniciar la conexión con \",[\"0\"]],\"uM6jnS\":[\"Error al restaurar\"],\"uMrJrX\":[\"Solo administradores\"],\"uswLvZ\":[\"El título que buscas no existe o puede haber sido eliminado de la base de datos.\"],\"uxOntd\":[[\"watchedCount\"],\" de \",[\"0\"],\" episodios vistos\"],\"v2CA3w\":[\"Cambiar foto\"],\"v5ipVu\":[\"¿Marcar todos los episodios como vistos?\"],\"vKfeax\":[\"Abre Emby, ve a Settings > Webhooks\"],\"vXIe7J\":[\"Idioma\"],\"vuCCZ7\":[\"Error al analizar los datos de importación\"],\"vwKERN\":[\"Error al eliminar la copia de seguridad\"],\"w8pqsh\":[\"Marcar todos como vistos\"],\"wA7B2T\":[\"No se aceptan nuevas cuentas en este momento. Contacta al administrador si necesitas acceso.\"],\"wGFX13\":[\"Comenzando a las\"],\"wR1UAy\":[\"Películas populares\"],\"wRWcdL\":[\"Reproducir tráiler\"],\"wThGrS\":[\"Ajustes de la app\"],\"wZK4Xg\":[\"Nunca ejecutado\"],\"wdLxgL\":[\"Miembro desde \",[\"memberSince\"]],\"wja8aL\":[\"Sin título\"],\"wtGebH\":[\"La persona que buscas no existe o puede haber sido eliminada de la base de datos.\"],\"wtsbt5\":[\"Añadir a la lista\"],\"wtuVU4\":[\"Frecuencia\"],\"wx7pwA\":[\"Marcar como visto\"],\"x4ZiTl\":[\"Instrucciones de configuración\"],\"xCJdfg\":[\"Limpiar\"],\"xGVfLh\":[\"Continuar\"],\"xLoCm2\":[\"Comprobar configuración\"],\"xSrU2g\":[[\"healthyCount\"],\" de \",[\"0\"],\" tareas en buen estado\"],\"xazqmy\":[\"Temporadas\"],\"xbBXhy\":[\"Comprobar periódicamente GitHub para nuevas versiones de Sofa\"],\"xrh2/M\":[\"Error al marcar como visto\"],\"y3e9pF\":[\"¿Eliminar copia de seguridad?\"],\"y6Urel\":[\"Siguiente episodio\"],\"yGvjAo\":[\"Actualización disponible: \",[\"0\"]],\"yKu/3Y\":[\"Restaurar\"],\"yYxB17\":[\"Limpiar todo\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Base de datos restaurada. Recargando...\"],\"ygo0l/\":[\"Empieza a seguir películas y series\"],\"yvwIbI\":[\"Subir archivo de exportación\"],\"yz7wBu\":[\"Cerrar\"],\"z1U/Fh\":[\"Valoración\"],\"z5evln\":[\"Sin conexión a internet\"],\"zAvS8w\":[\"Inicia sesión para continuar\"],\"zEqK2w\":[\"La página que buscas no existe.\"],\"zFkiTv\":[\"Instala el plugin Webhook del catálogo de plugins de Jellyfin\"],\"zNyR4f\":[\"Configura tu perfil de calidad y carpeta raíz preferidos\"],\"za8Le/\":[\"Registro cerrado\"],\"zb77GC\":[\"Alquilar\"],\"ztAdhw\":[\"Nombre actualizado\"]}")as Messages; \ No newline at end of file diff --git a/packages/i18n/src/po/fr.po b/packages/i18n/src/po/fr.po index 030879c..bea0d4b 100644 --- a/packages/i18n/src/po/fr.po +++ b/packages/i18n/src/po/fr.po @@ -8,1119 +8,1119 @@ msgstr "" "Language: fr\n" "Project-Id-Version: sofa\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-03-18 16:04\n" +"PO-Revision-Date: 2026-03-19 00:35\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "X-Crowdin-Project: sofa\n" "X-Crowdin-Project-ID: 881052\n" "X-Crowdin-Language: fr\n" -"X-Crowdin-File: /packages/i18n/src/po/en.po\n" -"X-Crowdin-File-ID: 12\n" +"X-Crowdin-File: en.po\n" +"X-Crowdin-File-ID: 14\n" #. placeholder {0}: result.errors.length - 50 -#: apps/web/src/components/settings/imports-section.tsx:938 +#: apps/web/src/components/settings/imports-section.tsx:895 msgid "...and {0} more" -msgstr "" +msgstr "...et {0} de plus" #. placeholder {0}: systemHealth.data.imageCache.imageCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:482 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:456 msgid "{0, plural, one {# image} other {# images}}" msgstr "" #. placeholder {0}: systemHealth.data.database.titleCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:466 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:442 msgid "{0, plural, one {# title} other {# titles}}" -msgstr "" +msgstr "{0, plural, one {# titre} other {# titres}}" #. placeholder {0}: displayBackups.length #. placeholder {1}: displayBackups.length -#: apps/web/src/components/settings/backup-section.tsx:109 +#: apps/web/src/components/settings/backup-section.tsx:98 msgid "{0} {1, plural, one {backup} other {backups}} stored" -msgstr "" +msgstr "{0} {1, plural, one {sauvegarde stockée} other {sauvegardes stockées}}" #: apps/web/src/components/settings/backup-section.tsx:105 #~ msgid "{0} backup{1} stored" #~ msgstr "{0} backup{1} stored" #. placeholder {0}: backups.backupCount -#: apps/web/src/components/settings/system-health-section.tsx:654 +#: apps/web/src/components/settings/system-health-section.tsx:599 msgid "{0} backups · last <0/>" -msgstr "" +msgstr "{0} sauvegardes · dernière <0/>" #. placeholder {0}: imageCache.imageCount.toLocaleString() -#: apps/web/src/components/settings/system-health-section.tsx:621 +#: apps/web/src/components/settings/system-health-section.tsx:569 msgid "{0} cached images" -msgstr "" +msgstr "{0} images en cache" #. placeholder {0}: member.episodeCount #. placeholder {1}: member.episodeCount !== 1 ? "s" : "" -#: apps/web/src/components/titles/cast-carousel.tsx:80 +#: apps/web/src/components/titles/cast-carousel.tsx:78 msgid "{0} ep{1}" -msgstr "" +msgstr "{0} ép{1}" #: apps/native/src/app/(tabs)/(settings)/index.tsx:472 #~ msgid "{0} images" #~ msgstr "{0} images" #. placeholder {0}: stats.watchlist -#: apps/web/src/components/settings/imports-section.tsx:808 +#: apps/web/src/components/settings/imports-section.tsx:770 msgid "{0} items" -msgstr "" +msgstr "{0} éléments" #. placeholder {0}: preview.diagnostics.unresolved -#: apps/web/src/components/settings/imports-section.tsx:788 +#: apps/web/src/components/settings/imports-section.tsx:750 msgid "{0} items have no external IDs and will be resolved by title search, which may be less accurate." -msgstr "" +msgstr "{0} éléments n'ont pas d'identifiants externes et seront résolus par recherche de titre, ce qui peut être moins précis." #. placeholder {0}: stats.movies #. placeholder {1}: stats.episodes -#: apps/web/src/components/settings/imports-section.tsx:802 +#: apps/web/src/components/settings/imports-section.tsx:764 msgid "{0} movies, {1} episodes" -msgstr "" +msgstr "{0} films, {1} épisodes" #. placeholder {0}: stats.ratings -#: apps/web/src/components/settings/imports-section.tsx:814 +#: apps/web/src/components/settings/imports-section.tsx:776 msgid "{0} ratings" -msgstr "" +msgstr "{0} notes" #: apps/native/src/app/(tabs)/(settings)/index.tsx:456 #~ msgid "{0} titles" #~ msgstr "{0} titles" #. placeholder {0}: JOB_LABELS[name] ?? name -#: apps/web/src/components/settings/system-health-section.tsx:343 +#: apps/web/src/components/settings/system-health-section.tsx:316 msgid "{0} triggered" -msgstr "" +msgstr "{0} déclenché" #. placeholder {0}: item.watchedEpisodes #. placeholder {1}: item.totalEpisodes #. placeholder {2}: item.totalEpisodes -#: apps/web/src/components/dashboard/continue-watching-card.tsx:93 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:78 msgid "{0}/{1} {2, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{0}/{1} {2, plural, one {épisode} other {épisodes}}" #: apps/web/src/components/dashboard/continue-watching-card.tsx:92 #~ msgid "{0}/{1} episodes" #~ msgstr "{0}/{1} episodes" -#: apps/web/src/components/titles/use-title-actions.ts:221 -#: apps/web/src/components/titles/use-title-actions.ts:299 +#: apps/web/src/components/titles/use-title-actions.ts:200 +#: apps/web/src/components/titles/use-title-actions.ts:278 msgid "{count} earlier {count, plural, one {episode} other {episodes}} unwatched" -msgstr "" +msgstr "{count} {count, plural, one {épisode précédent non visionné} other {épisodes précédents non visionnés}}" #. placeholder {0}: activeJobs.length -#: apps/web/src/components/settings/system-health-section.tsx:385 +#: apps/web/src/components/settings/system-health-section.tsx:351 msgid "{healthyCount} of {0} jobs healthy" -msgstr "" +msgstr "{healthyCount} sur {0} tâches en bonne santé" -#: apps/native/src/components/settings/integration-card.tsx:96 -#: apps/web/src/components/settings/integration-card.tsx:106 +#: apps/native/src/components/settings/integration-card.tsx:84 +#: apps/web/src/components/settings/integration-card.tsx:89 msgid "{label} connected" -msgstr "" +msgstr "{label} connecté" -#: apps/native/src/components/settings/integration-card.tsx:106 -#: apps/web/src/components/settings/integration-card.tsx:122 +#: apps/native/src/components/settings/integration-card.tsx:94 +#: apps/web/src/components/settings/integration-card.tsx:105 msgid "{label} disconnected" -msgstr "" +msgstr "{label} déconnecté" -#: apps/native/src/components/settings/integration-card.tsx:116 -#: apps/web/src/components/settings/integration-card.tsx:138 +#: apps/native/src/components/settings/integration-card.tsx:104 +#: apps/web/src/components/settings/integration-card.tsx:119 msgid "{label} URL regenerated" -msgstr "" +msgstr "URL {label} régénérée" -#: apps/web/src/components/title-card.tsx:166 +#: apps/web/src/components/title-card.tsx:152 msgid "{watched}/{total} episodes" -msgstr "" +msgstr "{watched}/{total} épisodes" #. placeholder {0}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:122 +#: apps/native/src/components/titles/season-accordion.tsx:113 msgid "{watchedCount} of {0} episodes watched" -msgstr "" +msgstr "{watchedCount} sur {0} épisodes regardés" #. placeholder {0}: episodes.length #. placeholder {1}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:131 +#: apps/native/src/components/titles/season-accordion.tsx:122 msgid "{watchedCount}/{0} {1, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{watchedCount}/{0} {1, plural, one {épisode} other {épisodes}}" #: apps/native/src/components/titles/season-accordion.tsx:130 #~ msgid "{watchedCount}/{0} episodes" #~ msgstr "{watchedCount}/{0} episodes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:231 -#: apps/web/src/components/settings/account-section.tsx:175 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:224 +#: apps/web/src/components/settings/account-section.tsx:166 msgid "Account" -msgstr "" +msgstr "Compte" -#: apps/web/src/components/settings/system-health-section.tsx:412 +#: apps/web/src/components/settings/system-health-section.tsx:378 msgid "Actions" msgstr "" -#: apps/web/src/components/people/person-hero.tsx:71 +#: apps/web/src/components/people/person-hero.tsx:69 msgid "Actor" -msgstr "" +msgstr "Acteur" -#: apps/native/src/components/settings/integration-configs.ts:72 +#: apps/native/src/components/settings/integration-configs.ts:71 msgid "Add a \"Generic Destination\" and paste the URL above" -msgstr "" +msgstr "Ajoutez une « Generic Destination » et collez l'URL ci-dessus" -#: apps/web/src/components/settings/integration-configs.tsx:131 +#: apps/web/src/components/settings/integration-configs.tsx:121 msgid "Add a <0>Generic Destination and paste the URL above" -msgstr "" +msgstr "Ajoutez une <0>Generic Destination et collez l'URL ci-dessus" -#: apps/native/src/components/settings/integration-configs.ts:92 -#: apps/web/src/components/settings/integration-configs.tsx:198 +#: apps/native/src/components/settings/integration-configs.ts:89 +#: apps/web/src/components/settings/integration-configs.tsx:178 msgid "Add a new webhook and paste the URL above" -msgstr "" +msgstr "Ajoutez un nouveau webhook et collez l'URL ci-dessus" -#: apps/web/src/components/explore/hero-banner.tsx:99 +#: apps/web/src/components/explore/hero-banner.tsx:87 msgid "Add to Library" -msgstr "" +msgstr "Ajouter à la bibliothèque" -#: apps/native/src/components/titles/status-action-button.tsx:72 +#: apps/native/src/components/titles/status-action-button.tsx:73 msgid "Add to watchlist" -msgstr "" +msgstr "Ajouter à la liste de suivi" -#: apps/native/src/components/explore/hero-banner.tsx:157 -#: apps/native/src/components/ui/poster-card.tsx:238 -#: apps/web/src/components/title-card.tsx:146 +#: apps/native/src/components/explore/hero-banner.tsx:132 +#: apps/native/src/components/ui/poster-card.tsx:212 +#: apps/web/src/components/title-card.tsx:133 msgid "Add to Watchlist" -msgstr "" +msgstr "Ajouter à la liste de suivi" -#: apps/native/src/lib/title-actions.ts:23 +#: apps/native/src/lib/title-actions.ts:24 msgid "Added \"{titleName}\" to watchlist" -msgstr "" +msgstr "« {titleName} » ajouté à la liste de suivi" #: apps/native/src/hooks/use-title-actions.ts:44 -#: apps/native/src/hooks/use-title-actions.ts:60 -#: apps/native/src/lib/title-actions.ts:24 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:59 +#: apps/native/src/lib/title-actions.ts:25 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Added to watchlist" -msgstr "" +msgstr "Ajouté à la liste de suivi" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:353 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:454 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:499 -#: apps/web/src/components/nav-bar.tsx:235 -#: apps/web/src/components/settings/account-section.tsx:335 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:342 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/components/nav-bar.tsx:223 +#: apps/web/src/components/settings/account-section.tsx:309 msgid "Admin" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:124 +#: apps/web/src/routes/_app/settings.tsx:118 msgid "Admin only" -msgstr "" +msgstr "Admins uniquement" -#: apps/native/src/app/person/[id].tsx:308 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "age {age}" -msgstr "" +msgstr "âge {age}" -#: apps/native/src/components/explore/filterable-title-row.tsx:119 -#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/native/src/components/explore/filterable-title-row.tsx:117 +#: apps/web/src/components/people/filmography-grid.tsx:56 msgid "All" -msgstr "" +msgstr "Tout" -#: apps/web/src/components/settings/registration-section.tsx:61 +#: apps/web/src/components/settings/registration-section.tsx:54 msgid "Allow new users to create accounts" -msgstr "" +msgstr "Autoriser les nouveaux utilisateurs à créer un compte" -#: apps/web/src/components/auth-form.tsx:278 +#: apps/web/src/components/auth-form.tsx:259 msgid "Already have an account?" -msgstr "" +msgstr "Vous avez déjà un compte ?" -#: apps/native/src/app/(auth)/register.tsx:239 +#: apps/native/src/app/(auth)/register.tsx:211 msgid "Already have an account? Sign in" -msgstr "" +msgstr "Vous avez déjà un compte ? Se connecter" -#: apps/web/src/routes/__root.tsx:146 +#: apps/web/src/routes/__root.tsx:143 msgid "An unexpected error occurred while loading this page. You can try again or head back to the dashboard." -msgstr "" +msgstr "Une erreur inattendue s'est produite lors du chargement de cette page. Vous pouvez réessayer ou retourner au tableau de bord." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:427 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:407 msgid "Anonymous usage reporting" -msgstr "" +msgstr "Rapports d'utilisation anonymes" -#: apps/web/src/routes/_app/settings.tsx:102 +#: apps/web/src/routes/_app/settings.tsx:99 msgid "App Settings" -msgstr "" +msgstr "Paramètres de l'application" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:378 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:362 msgid "Application" msgstr "" -#: apps/native/src/components/settings/integration-card.tsx:151 +#: apps/native/src/components/settings/integration-card.tsx:139 msgid "Are you sure you want to disconnect {label}? The current URL will stop working." -msgstr "" +msgstr "Voulez-vous vraiment déconnecter {label} ? L'URL actuelle cessera de fonctionner." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/components/header-avatar.tsx:70 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/components/header-avatar.tsx:62 msgid "Are you sure you want to sign out?" -msgstr "" +msgstr "Voulez-vous vraiment vous déconnecter ?" -#: apps/web/src/components/settings/imports-section.tsx:450 +#: apps/web/src/components/settings/imports-section.tsx:429 msgid "Authorization succeeded but failed to fetch your library. Please try again." -msgstr "" +msgstr "L'autorisation a réussi mais la récupération de votre bibliothèque a échoué. Veuillez réessayer." -#: apps/web/src/components/settings/imports-section.tsx:440 +#: apps/web/src/components/settings/imports-section.tsx:419 msgid "Authorization was denied. Please try again." -msgstr "" +msgstr "L'autorisation a été refusée. Veuillez réessayer." #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:580 msgid "Authorize Sofa to read your {0} library. No password shared." -msgstr "" +msgstr "Autorisez Sofa à lire votre bibliothèque {0}. Aucun mot de passe partagé." -#: apps/web/src/components/settings/update-check-section.tsx:60 +#: apps/web/src/components/settings/update-check-section.tsx:51 msgid "Automatic update checks" -msgstr "" +msgstr "Vérifications automatiques des mises à jour" -#: apps/web/src/components/settings/backup-schedule-section.tsx:279 +#: apps/web/src/components/settings/backup-schedule-section.tsx:248 msgid "Automatically back up your database on a schedule" -msgstr "" +msgstr "Sauvegardez automatiquement votre base de données selon un planning" -#: apps/web/src/components/settings/system-health-section.tsx:332 +#: apps/web/src/components/settings/system-health-section.tsx:305 msgid "Availability" -msgstr "" +msgstr "Disponibilité" -#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:94 msgid "Back to Login" -msgstr "" +msgstr "Retour à la connexion" -#: apps/web/src/components/settings/system-health-section.tsx:382 +#: apps/web/src/components/settings/system-health-section.tsx:348 msgid "Background jobs" -msgstr "" +msgstr "Tâches en arrière-plan" -#: apps/web/src/components/settings/system-health-section.tsx:336 +#: apps/web/src/components/settings/system-health-section.tsx:309 msgid "Backup" -msgstr "" +msgstr "Sauvegarde" -#: apps/web/src/components/settings/backup-section.tsx:69 +#: apps/web/src/components/settings/backup-section.tsx:62 msgid "Backup created" -msgstr "" +msgstr "Sauvegarde créée" -#: apps/web/src/components/settings/backup-section.tsx:94 +#: apps/web/src/components/settings/backup-section.tsx:85 msgid "Backup deleted" -msgstr "" +msgstr "Sauvegarde supprimée" -#: apps/web/src/components/settings/backup-schedule-section.tsx:234 +#: apps/web/src/components/settings/backup-schedule-section.tsx:216 msgid "Backup schedule" -msgstr "" +msgstr "Planning de sauvegarde" -#: apps/web/src/components/settings/system-health-section.tsx:641 -#: apps/web/src/routes/_app/settings.tsx:166 +#: apps/web/src/components/settings/system-health-section.tsx:589 +#: apps/web/src/routes/_app/settings.tsx:154 msgid "Backups" -msgstr "" +msgstr "Sauvegardes" #: apps/web/src/components/settings/backup-schedule-section.tsx:272 #~ msgid "backups." #~ msgstr "backups." -#: apps/web/src/components/titles/title-availability.tsx:139 +#: apps/web/src/components/titles/title-availability.tsx:115 msgid "Buy" -msgstr "" +msgstr "Acheter" -#: apps/web/src/components/settings/danger-section.tsx:89 +#: apps/web/src/components/settings/danger-section.tsx:85 msgid "Cache management" -msgstr "" +msgstr "Gestion du cache" -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:66 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:74 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:67 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:75 msgid "Can't reach server" -msgstr "" +msgstr "Impossible de joindre le serveur" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:207 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:332 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:388 -#: apps/native/src/components/header-avatar.tsx:71 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:63 -#: apps/native/src/components/search/recently-viewed-list.tsx:37 -#: apps/native/src/components/settings/integration-card.tsx:138 -#: apps/native/src/components/settings/integration-card.tsx:153 -#: apps/web/src/components/settings/account-section.tsx:505 -#: apps/web/src/components/settings/backup-restore-section.tsx:107 -#: apps/web/src/components/settings/backup-section.tsx:270 -#: apps/web/src/components/settings/danger-section.tsx:129 -#: apps/web/src/components/settings/danger-section.tsx:171 -#: apps/web/src/components/settings/danger-section.tsx:214 -#: apps/web/src/components/settings/imports-section.tsx:645 -#: apps/web/src/components/settings/imports-section.tsx:710 -#: apps/web/src/components/settings/imports-section.tsx:837 -#: apps/web/src/components/titles/title-seasons.tsx:133 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:202 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:321 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:369 +#: apps/native/src/components/header-avatar.tsx:63 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:58 +#: apps/native/src/components/search/recently-viewed-list.tsx:32 +#: apps/native/src/components/settings/integration-card.tsx:126 +#: apps/native/src/components/settings/integration-card.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/web/src/components/settings/backup-restore-section.tsx:101 +#: apps/web/src/components/settings/backup-section.tsx:240 +#: apps/web/src/components/settings/danger-section.tsx:121 +#: apps/web/src/components/settings/danger-section.tsx:154 +#: apps/web/src/components/settings/danger-section.tsx:187 +#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:674 +#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/titles/title-seasons.tsx:127 msgid "Cancel" -msgstr "" +msgstr "Annuler" -#: apps/web/src/components/settings/account-section.tsx:307 +#: apps/web/src/components/settings/account-section.tsx:281 msgid "Cancel editing" -msgstr "" +msgstr "Annuler la modification" -#: apps/native/src/app/title/[id].tsx:559 +#: apps/native/src/app/title/[id].tsx:489 #: apps/web/src/components/titles/cast-carousel.tsx:21 msgid "Cast" -msgstr "" +msgstr "Distribution" -#: apps/web/src/components/titles/use-title-actions.ts:223 -#: apps/web/src/components/titles/use-title-actions.ts:301 +#: apps/web/src/components/titles/use-title-actions.ts:202 +#: apps/web/src/components/titles/use-title-actions.ts:280 msgid "Catch up" -msgstr "" +msgstr "Rattraper" #. placeholder {0}: episodeIds.length #. placeholder {1}: episodeIds.length -#: apps/web/src/components/titles/use-title-actions.ts:82 +#: apps/web/src/components/titles/use-title-actions.ts:72 msgid "Caught up — marked {0} {1, plural, one {episode} other {episodes}} as watched" -msgstr "" +msgstr "Rattrapé — {0} {1, plural, one {épisode marqué comme visionné} other {épisodes marqués comme visionnés}}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 -#: apps/web/src/components/settings/account-section.tsx:427 -#: apps/web/src/components/settings/account-section.tsx:432 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 +#: apps/web/src/components/settings/account-section.tsx:401 +#: apps/web/src/components/settings/account-section.tsx:406 msgid "Change password" -msgstr "" +msgstr "Changer le mot de passe" -#: apps/native/src/app/change-password.tsx:98 +#: apps/native/src/app/change-password.tsx:94 msgid "Change Password" -msgstr "" +msgstr "Changer le mot de passe" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:267 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:258 msgid "Change Photo" -msgstr "" +msgstr "Changer la photo" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:385 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "Change Server" -msgstr "" +msgstr "Changer de serveur" -#: apps/web/src/components/setup/refresh-button.tsx:30 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Check configuration" -msgstr "" +msgstr "Vérifier la configuration" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:483 msgid "Check for updates" -msgstr "" +msgstr "Rechercher des mises à jour" -#: apps/web/src/components/settings/system-health-section.tsx:215 +#: apps/web/src/components/settings/system-health-section.tsx:196 msgid "Checked <0/>" -msgstr "" +msgstr "Vérifié <0/>" -#: apps/web/src/components/setup/refresh-button.tsx:28 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Checking…" -msgstr "" +msgstr "Vérification…" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:587 +#: apps/web/src/components/settings/imports-section.tsx:556 msgid "Choose how to import your {0} data." -msgstr "" +msgstr "Choisissez comment importer vos données {0}." #: apps/web/src/components/settings/language-section.tsx:29 #~ msgid "Choose your preferred display language" #~ msgstr "Choose your preferred display language" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:65 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:115 -#: apps/native/src/components/search/recently-viewed-list.tsx:39 -#: apps/native/src/components/search/recently-viewed-list.tsx:95 -msgid "Clear" -msgstr "" - -#: apps/web/src/components/command-palette.tsx:322 -msgid "Clear all" -msgstr "" - #: apps/native/src/components/search/recently-viewed-list.ios.tsx:60 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:104 #: apps/native/src/components/search/recently-viewed-list.tsx:34 +#: apps/native/src/components/search/recently-viewed-list.tsx:86 +msgid "Clear" +msgstr "Effacer" + +#: apps/web/src/components/command-palette.tsx:302 +msgid "Clear all" +msgstr "Tout effacer" + +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "Clear Recently Viewed?" -msgstr "" +msgstr "Effacer les éléments récemment consultés ?" -#: apps/native/src/components/settings/integration-configs.ts:109 -#: apps/native/src/components/settings/integration-configs.ts:127 +#: apps/native/src/components/settings/integration-configs.ts:104 +#: apps/native/src/components/settings/integration-configs.ts:122 msgid "Click \"+\" and select \"Custom Lists\"" -msgstr "" +msgstr "Cliquez sur « + » et sélectionnez « Custom Lists »" -#: apps/native/src/components/settings/integration-configs.ts:55 +#: apps/native/src/components/settings/integration-configs.ts:56 msgid "Click \"Add Webhook\" and paste the URL above" -msgstr "" +msgstr "Cliquez sur « Add Webhook » et collez l'URL ci-dessus" -#: apps/web/src/components/settings/integration-configs.tsx:237 -#: apps/web/src/components/settings/integration-configs.tsx:277 +#: apps/web/src/components/settings/integration-configs.tsx:212 +#: apps/web/src/components/settings/integration-configs.tsx:249 msgid "Click <0>+ and select <1>Custom Lists" -msgstr "" +msgstr "Cliquez sur <0>+ et sélectionnez <1>Custom Lists" -#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:73 msgid "Click <0>Add Webhook and paste the URL above" -msgstr "" +msgstr "Cliquez sur <0>Add Webhook et collez l'URL ci-dessus" #: apps/native/src/components/navigation/modal-stack-header.tsx:14 msgid "Close" -msgstr "" +msgstr "Fermer" -#: apps/native/src/app/(tabs)/(home)/index.tsx:63 -#: apps/native/src/components/titles/status-action-button.tsx:44 -#: apps/web/src/components/dashboard/stats-display.tsx:238 -#: apps/web/src/components/title-card.tsx:77 -#: apps/web/src/components/titles/status-button.tsx:30 +#: apps/native/src/app/(tabs)/(home)/index.tsx:54 +#: apps/native/src/components/titles/status-action-button.tsx:45 +#: apps/web/src/components/dashboard/stats-display.tsx:219 +#: apps/web/src/components/title-card.tsx:74 +#: apps/web/src/components/titles/status-button.tsx:25 msgid "Completed" -msgstr "" +msgstr "Terminé" -#: apps/native/src/app/change-password.tsx:173 -#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/native/src/app/change-password.tsx:167 +#: apps/web/src/components/settings/account-section.tsx:451 msgid "Confirm new password" -msgstr "" +msgstr "Confirmer le nouveau mot de passe" -#: apps/native/src/app/(auth)/server-url.tsx:207 -#: apps/web/src/components/settings/imports-section.tsx:499 +#: apps/native/src/app/(auth)/server-url.tsx:182 +#: apps/web/src/components/settings/imports-section.tsx:478 msgid "Connect" -msgstr "" +msgstr "Connecter" #. placeholder {0}: config.label -#: apps/web/src/components/settings/integration-card.tsx:203 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connect {0}" -msgstr "" +msgstr "Connecter {0}" -#: apps/native/src/components/settings/integration-card.tsx:238 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connect {label}" -msgstr "" +msgstr "Connecter {label}" -#: apps/web/src/components/settings/imports-section.tsx:665 +#: apps/web/src/components/settings/imports-section.tsx:631 msgid "Connect to {source}" -msgstr "" +msgstr "Se connecter à {source}" -#: apps/web/src/routes/setup.tsx:101 +#: apps/web/src/routes/setup.tsx:98 msgid "Connect to TMDB" -msgstr "" +msgstr "Se connecter à TMDB" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:608 +#: apps/web/src/components/settings/imports-section.tsx:577 msgid "Connect with {0}" -msgstr "" +msgstr "Se connecter avec {0}" -#: apps/native/src/app/(auth)/server-url.tsx:197 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:474 -#: apps/web/src/components/settings/system-health-section.tsx:256 +#: apps/native/src/app/(auth)/server-url.tsx:176 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:449 +#: apps/web/src/components/settings/system-health-section.tsx:236 msgid "Connected" -msgstr "" +msgstr "Connecté" -#: apps/web/src/components/settings/imports-section.tsx:722 +#: apps/web/src/components/settings/imports-section.tsx:686 msgid "Connected to {source}" -msgstr "" +msgstr "Connecté à {source}" -#: apps/native/src/app/(auth)/login.tsx:240 +#: apps/native/src/app/(auth)/login.tsx:211 msgid "Connected to <0>{serverHost}. Tap to change." -msgstr "" +msgstr "Connecté à <0>{serverHost}. Appuyez pour modifier." -#: apps/native/src/app/(auth)/server-url.tsx:186 +#: apps/native/src/app/(auth)/server-url.tsx:169 msgid "Connecting to server..." -msgstr "" +msgstr "Connexion au serveur..." -#: apps/web/src/components/settings/integration-card.tsx:201 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connecting..." -msgstr "" +msgstr "Connexion..." -#: apps/native/src/components/settings/integration-card.tsx:237 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connecting…" -msgstr "" +msgstr "Connexion…" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:390 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:371 msgid "Continue" -msgstr "" +msgstr "Continuer" -#: apps/native/src/app/(tabs)/(home)/index.tsx:113 -#: apps/web/src/components/dashboard/continue-watching-section.tsx:25 +#: apps/native/src/app/(tabs)/(home)/index.tsx:99 +#: apps/web/src/components/dashboard/continue-watching-section.tsx:22 msgid "Continue Watching" -msgstr "" +msgstr "Continuer à regarder" -#: apps/web/src/components/setup/copy-button.tsx:25 +#: apps/web/src/components/setup/copy-button.tsx:26 msgid "Copied" -msgstr "" +msgstr "Copié" -#: apps/web/src/components/setup/copy-button.tsx:30 +#: apps/web/src/components/setup/copy-button.tsx:31 msgid "Copy" -msgstr "" +msgstr "Copier" -#: apps/web/src/components/settings/integration-card.tsx:246 +#: apps/web/src/components/settings/integration-card.tsx:208 msgid "Copy URL" -msgstr "" +msgstr "Copier l'URL" -#: apps/native/src/components/settings/integrations-section.tsx:29 +#: apps/native/src/components/settings/integrations-section.tsx:30 msgid "Could not load integrations" -msgstr "" +msgstr "Impossible de charger les intégrations" -#: apps/native/src/app/person/[id].tsx:216 +#: apps/native/src/app/person/[id].tsx:185 msgid "Could not load person details" -msgstr "" +msgstr "Impossible de charger les détails de la personne" -#: apps/web/src/components/auth-form.tsx:247 +#: apps/web/src/components/auth-form.tsx:231 msgid "Create account" -msgstr "" +msgstr "Créer un compte" -#: apps/native/src/app/(auth)/register.tsx:115 -#: apps/native/src/app/(auth)/register.tsx:225 +#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:200 msgid "Create Account" -msgstr "" +msgstr "Créer un compte" -#: apps/native/src/app/(auth)/login.tsx:216 +#: apps/native/src/app/(auth)/login.tsx:194 msgid "Create an account" -msgstr "" +msgstr "Créer un compte" #: apps/web/src/components/auth-form.tsx:110 msgid "Create your account" -msgstr "" +msgstr "Créez votre compte" -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "Creating…" -msgstr "" +msgstr "Création…" -#: apps/native/src/app/change-password.tsx:120 -#: apps/web/src/components/settings/account-section.tsx:449 +#: apps/native/src/app/change-password.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:423 msgid "Current password" -msgstr "" +msgstr "Mot de passe actuel" -#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/components/settings/account-section.tsx:365 msgid "Current password is required" -msgstr "" +msgstr "Le mot de passe actuel est requis" -#: apps/web/src/routes/_app/settings.tsx:195 +#: apps/web/src/routes/_app/settings.tsx:180 msgid "Danger Zone" -msgstr "" +msgstr "Zone de danger" -#: apps/web/src/routes/__root.tsx:167 -#: apps/web/src/routes/_app/people.$id.tsx:78 -#: apps/web/src/routes/_app/titles.$id.tsx:126 -#: apps/web/src/routes/_app/titles.$id.tsx:172 +#: apps/web/src/routes/__root.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:76 +#: apps/web/src/routes/_app/titles.$id.tsx:119 +#: apps/web/src/routes/_app/titles.$id.tsx:165 msgid "Dashboard" -msgstr "" +msgstr "Tableau de bord" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:463 -#: apps/web/src/components/settings/system-health-section.tsx:229 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:439 +#: apps/web/src/components/settings/system-health-section.tsx:210 msgid "Database" -msgstr "" +msgstr "Base de données" -#: apps/web/src/components/settings/backup-section.tsx:126 +#: apps/web/src/components/settings/backup-section.tsx:112 msgid "Database backups" -msgstr "" +msgstr "Sauvegardes de la base de données" -#: apps/web/src/components/settings/backup-restore-section.tsx:31 +#: apps/web/src/components/settings/backup-restore-section.tsx:32 msgid "Database restored. Reloading..." -msgstr "" +msgstr "Base de données restaurée. Rechargement..." -#: apps/web/src/components/settings/backup-schedule-section.tsx:342 +#: apps/web/src/components/settings/backup-schedule-section.tsx:309 msgid "Day:" -msgstr "" +msgstr "Jour :" +#: apps/web/src/components/settings/backup-section.tsx:222 #: apps/web/src/components/settings/backup-section.tsx:250 -#: apps/web/src/components/settings/backup-section.tsx:280 msgid "Delete" -msgstr "" +msgstr "Supprimer" -#: apps/web/src/components/settings/backup-section.tsx:235 +#: apps/web/src/components/settings/backup-section.tsx:211 msgid "Delete backup" -msgstr "" +msgstr "Supprimer la sauvegarde" -#: apps/web/src/components/settings/backup-section.tsx:256 +#: apps/web/src/components/settings/backup-section.tsx:228 msgid "Delete backup?" -msgstr "" +msgstr "Supprimer la sauvegarde ?" #. placeholder {0}: data.deletedFiles #: apps/web/src/components/settings/danger-section.tsx:54 msgid "Deleted {0, plural, one {# file} other {# files}}, freed {freed}" -msgstr "" +msgstr "{0, plural, one {# fichier supprimé} other {# fichiers supprimés}}, {freed} libéré" -#: apps/web/src/components/settings/imports-section.tsx:412 -#: apps/web/src/components/settings/imports-section.tsx:444 +#: apps/web/src/components/settings/imports-section.tsx:394 +#: apps/web/src/components/settings/imports-section.tsx:423 msgid "Device code expired. Please try again." -msgstr "" +msgstr "Le code d'appareil a expiré. Veuillez réessayer." -#: apps/native/src/app/person/[id].tsx:307 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "died at {age}" -msgstr "" +msgstr "décédé à {age} ans" -#: apps/web/src/components/people/person-hero.tsx:73 +#: apps/web/src/components/people/person-hero.tsx:71 msgid "Director" -msgstr "" +msgstr "Réalisateur" -#: apps/web/src/components/settings/system-health-section.tsx:431 -#: apps/web/src/components/settings/system-health-section.tsx:632 +#: apps/web/src/components/settings/system-health-section.tsx:394 +#: apps/web/src/components/settings/system-health-section.tsx:580 msgid "Disabled" -msgstr "" +msgstr "Désactivé" -#: apps/native/src/components/settings/integration-card.tsx:155 -#: apps/native/src/components/settings/integration-card.tsx:298 -#: apps/web/src/components/settings/integration-card.tsx:274 +#: apps/native/src/components/settings/integration-card.tsx:143 +#: apps/native/src/components/settings/integration-card.tsx:257 +#: apps/web/src/components/settings/integration-card.tsx:234 msgid "Disconnect" -msgstr "" +msgstr "Déconnecter" -#: apps/native/src/components/settings/integration-card.tsx:150 +#: apps/native/src/components/settings/integration-card.tsx:138 msgid "Disconnect {label}" -msgstr "" +msgstr "Déconnecter {label}" -#: apps/native/src/app/(auth)/server-url.tsx:242 +#: apps/native/src/app/(auth)/server-url.tsx:217 msgid "Don't have a server?" -msgstr "" +msgstr "Pas de serveur ?" -#: apps/web/src/components/auth-form.tsx:288 +#: apps/web/src/components/auth-form.tsx:269 msgid "Don't have an account?" -msgstr "" +msgstr "Pas encore de compte ?" -#: apps/web/src/components/settings/imports-section.tsx:962 +#: apps/web/src/components/settings/imports-section.tsx:918 msgid "Done" -msgstr "" +msgstr "Terminé" #: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to clear this filter" -msgstr "" +msgstr "Double appui pour supprimer ce filtre" -#: apps/native/src/components/explore/genre-chip.tsx:28 +#: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to filter by {label}" -msgstr "" +msgstr "Double appui pour filtrer par {label}" -#: apps/web/src/components/settings/backup-section.tsx:71 -#: apps/web/src/components/settings/backup-section.tsx:223 +#: apps/web/src/components/settings/backup-section.tsx:64 +#: apps/web/src/components/settings/backup-section.tsx:199 msgid "Download" -msgstr "" +msgstr "Télécharger" -#: apps/web/src/components/settings/backup-section.tsx:214 +#: apps/web/src/components/settings/backup-section.tsx:190 msgid "Download backup" -msgstr "" +msgstr "Télécharger la sauvegarde" -#: apps/web/src/components/people/person-hero.tsx:79 +#: apps/web/src/components/people/person-hero.tsx:77 msgid "Editor" -msgstr "" +msgstr "Monteur" -#: apps/native/src/app/(auth)/login.tsx:133 -#: apps/native/src/app/(auth)/register.tsx:154 -#: apps/web/src/components/auth-form.tsx:201 +#: apps/native/src/app/(auth)/login.tsx:123 +#: apps/native/src/app/(auth)/register.tsx:139 +#: apps/web/src/components/auth-form.tsx:190 msgid "Email" -msgstr "" +msgstr "E-mail" -#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:72 msgid "Enable the \"Playback Stop\" notification type" -msgstr "" +msgstr "Activez le type de notification « Playback Stop »" -#: apps/native/src/components/settings/integration-configs.ts:93 +#: apps/native/src/components/settings/integration-configs.ts:90 msgid "Enable the \"Playback\" event category" -msgstr "" +msgstr "Activez la catégorie d'événement « Playback »" -#: apps/web/src/components/settings/integration-configs.tsx:140 +#: apps/web/src/components/settings/integration-configs.tsx:127 msgid "Enable the <0>Playback Stop notification type" -msgstr "" +msgstr "Activez le type de notification <0>Playback Stop" -#: apps/web/src/components/settings/integration-configs.tsx:201 +#: apps/web/src/components/settings/integration-configs.tsx:181 msgid "Enable the <0>Playback event category" -msgstr "" +msgstr "Activez la catégorie d'événement <0>Playback" -#: apps/web/src/components/settings/imports-section.tsx:668 +#: apps/web/src/components/settings/imports-section.tsx:634 msgid "Enter the code below on {source}'s website to authorize Sofa." -msgstr "" +msgstr "Entrez le code ci-dessous sur le site de {source} pour autoriser Sofa." -#: apps/web/src/components/settings/account-section.tsx:435 +#: apps/web/src/components/settings/account-section.tsx:409 msgid "Enter your current password and choose a new one." -msgstr "" +msgstr "Entrez votre mot de passe actuel et choisissez-en un nouveau." -#: apps/native/src/app/(auth)/server-url.tsx:151 +#: apps/native/src/app/(auth)/server-url.tsx:140 msgid "Enter your Sofa server URL to get started" -msgstr "" +msgstr "Entrez l'URL de votre serveur Sofa pour commencer" -#: apps/web/src/components/settings/system-health-section.tsx:289 +#: apps/web/src/components/settings/system-health-section.tsx:267 msgid "Environment" -msgstr "" +msgstr "Environnement" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:29 -#: apps/native/src/components/titles/episode-row.tsx:55 +#: apps/native/src/components/titles/episode-row.tsx:27 +#: apps/native/src/components/titles/episode-row.tsx:48 msgid "Episode {0}" -msgstr "" +msgstr "Épisode {0}" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:36 +#: apps/native/src/components/titles/episode-row.tsx:34 msgid "Episode {0}, {episodeLabel}" -msgstr "" +msgstr "Épisode {0}, {episodeLabel}" -#: apps/native/src/hooks/use-title-actions.ts:123 -#: apps/native/src/lib/title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:111 +#: apps/native/src/lib/title-actions.ts:108 msgid "Episode unwatched" -msgstr "" +msgstr "Épisode non visionné" -#: apps/native/src/hooks/use-title-actions.ts:109 -#: apps/native/src/lib/title-actions.ts:101 +#: apps/native/src/hooks/use-title-actions.ts:101 +#: apps/native/src/lib/title-actions.ts:98 msgid "Episode watched" -msgstr "" +msgstr "Épisode visionné" -#: apps/web/src/components/settings/imports-section.tsx:780 -#: apps/web/src/components/titles/title-seasons.tsx:102 +#: apps/web/src/components/settings/imports-section.tsx:742 +#: apps/web/src/components/titles/title-seasons.tsx:96 msgid "Episodes" -msgstr "" +msgstr "Épisodes" #: apps/web/src/components/dashboard/stats-display.tsx:162 #~ msgid "Episodes {periodSelect}" #~ msgstr "Episodes {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:164 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Episodes {select}" -msgstr "" +msgstr "Épisodes {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:61 +#: apps/native/src/app/(tabs)/(home)/index.tsx:52 msgid "Episodes this week" -msgstr "" +msgstr "Épisodes cette semaine" -#: apps/native/src/app/change-password.tsx:71 -#: apps/native/src/app/change-password.tsx:81 +#: apps/native/src/app/change-password.tsx:67 +#: apps/native/src/app/change-password.tsx:77 msgid "Error" -msgstr "" +msgstr "Erreur" #. placeholder {0}: result.errors.length -#: apps/web/src/components/settings/imports-section.tsx:929 +#: apps/web/src/components/settings/imports-section.tsx:887 msgid "Errors ({0})" -msgstr "" +msgstr "Erreurs ({0})" -#: apps/native/src/app/(tabs)/(home)/index.tsx:143 -#: apps/web/src/components/nav-bar.tsx:126 -#: apps/web/src/components/nav-bar.tsx:291 +#: apps/native/src/app/(tabs)/(home)/index.tsx:127 +#: apps/web/src/components/nav-bar.tsx:116 +#: apps/web/src/components/nav-bar.tsx:277 msgid "Explore" -msgstr "" +msgstr "Explorer" -#: apps/web/src/routes/_app/people.$id.tsx:70 -#: apps/web/src/routes/_app/titles.$id.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:68 +#: apps/web/src/routes/_app/titles.$id.tsx:157 msgid "Explore titles" -msgstr "" +msgstr "Explorer les titres" -#: apps/web/src/components/settings/imports-section.tsx:923 +#: apps/web/src/components/settings/imports-section.tsx:881 msgid "Failed" -msgstr "" +msgstr "Échoué" -#: apps/native/src/hooks/use-title-actions.ts:49 -#: apps/native/src/lib/title-actions.ts:28 +#: apps/native/src/hooks/use-title-actions.ts:48 +#: apps/native/src/lib/title-actions.ts:29 msgid "Failed to add to watchlist" -msgstr "" +msgstr "Échec de l'ajout à la liste de suivi" -#: apps/web/src/components/titles/use-title-actions.ts:90 +#: apps/web/src/components/titles/use-title-actions.ts:80 msgid "Failed to catch up" -msgstr "" +msgstr "Échec du rattrapage" -#: apps/native/src/app/change-password.tsx:71 -#: apps/web/src/components/settings/account-section.tsx:411 +#: apps/native/src/app/change-password.tsx:67 +#: apps/web/src/components/settings/account-section.tsx:385 msgid "Failed to change password" -msgstr "" +msgstr "Échec du changement de mot de passe" -#: apps/web/src/components/settings/imports-section.tsx:398 +#: apps/web/src/components/settings/imports-section.tsx:380 msgid "Failed to connect" -msgstr "" +msgstr "Échec de la connexion" -#: apps/native/src/components/settings/integration-card.tsx:99 -#: apps/web/src/components/settings/integration-card.tsx:108 +#: apps/native/src/components/settings/integration-card.tsx:87 +#: apps/web/src/components/settings/integration-card.tsx:91 msgid "Failed to connect {label}" -msgstr "" +msgstr "Échec de la connexion à {label}" -#: apps/native/src/app/(auth)/register.tsx:67 +#: apps/native/src/app/(auth)/register.tsx:57 msgid "Failed to create account" -msgstr "" +msgstr "Échec de la création du compte" -#: apps/web/src/components/settings/backup-section.tsx:81 +#: apps/web/src/components/settings/backup-section.tsx:74 msgid "Failed to create backup" -msgstr "" +msgstr "Échec de la création de la sauvegarde" -#: apps/web/src/components/settings/backup-section.tsx:97 +#: apps/web/src/components/settings/backup-section.tsx:88 msgid "Failed to delete backup" -msgstr "" +msgstr "Échec de la suppression de la sauvegarde" -#: apps/native/src/components/settings/integration-card.tsx:109 -#: apps/web/src/components/settings/integration-card.tsx:125 +#: apps/native/src/components/settings/integration-card.tsx:97 +#: apps/web/src/components/settings/integration-card.tsx:108 msgid "Failed to disconnect {label}" -msgstr "" +msgstr "Échec de la déconnexion de {label}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:215 +#: apps/web/src/components/settings/backup-schedule-section.tsx:200 msgid "Failed to load backup schedule settings." -msgstr "" +msgstr "Échec du chargement des paramètres de planning de sauvegarde." -#: apps/web/src/routes/_app/titles.$id.tsx:115 +#: apps/web/src/routes/_app/titles.$id.tsx:110 msgid "Failed to load title" -msgstr "" +msgstr "Échec du chargement du titre" -#: apps/web/src/components/titles/use-title-actions.ts:367 +#: apps/web/src/components/titles/use-title-actions.ts:344 msgid "Failed to mark all episodes as watched" -msgstr "" +msgstr "Échec du marquage de tous les épisodes comme visionnés" -#: apps/native/src/hooks/use-title-actions.ts:84 -#: apps/native/src/lib/title-actions.ts:68 -#: apps/web/src/components/titles/use-title-actions.ts:150 +#: apps/native/src/hooks/use-title-actions.ts:79 +#: apps/native/src/lib/title-actions.ts:67 +#: apps/web/src/components/titles/use-title-actions.ts:137 msgid "Failed to mark as watched" -msgstr "" +msgstr "Échec du marquage comme visionné" -#: apps/native/src/hooks/use-title-actions.ts:113 -#: apps/native/src/lib/title-actions.ts:104 -#: apps/web/src/components/titles/use-title-actions.ts:237 +#: apps/native/src/hooks/use-title-actions.ts:104 +#: apps/native/src/lib/title-actions.ts:101 +#: apps/web/src/components/titles/use-title-actions.ts:216 msgid "Failed to mark episode" -msgstr "" +msgstr "Échec du marquage de l'épisode" -#: apps/native/src/hooks/use-title-actions.ts:141 -#: apps/native/src/lib/title-actions.ts:128 -#: apps/web/src/components/titles/use-title-actions.ts:315 +#: apps/native/src/hooks/use-title-actions.ts:124 +#: apps/native/src/lib/title-actions.ts:123 +#: apps/web/src/components/titles/use-title-actions.ts:294 msgid "Failed to mark some episodes" -msgstr "" +msgstr "Échec du marquage de certains épisodes" -#: apps/web/src/components/settings/imports-section.tsx:225 +#: apps/web/src/components/settings/imports-section.tsx:218 msgid "Failed to parse file" -msgstr "" +msgstr "Échec de l'analyse du fichier" -#: apps/web/src/components/settings/imports-section.tsx:240 +#: apps/web/src/components/settings/imports-section.tsx:233 msgid "Failed to parse import data" -msgstr "" +msgstr "Échec de l'analyse des données d'importation" -#: apps/web/src/components/settings/danger-section.tsx:75 +#: apps/web/src/components/settings/danger-section.tsx:72 msgid "Failed to purge caches" -msgstr "" +msgstr "Échec de la purge des caches" #: apps/web/src/components/settings/danger-section.tsx:58 msgid "Failed to purge image cache" -msgstr "" +msgstr "Échec de la purge du cache d'images" #: apps/web/src/components/settings/danger-section.tsx:45 msgid "Failed to purge metadata cache" -msgstr "" +msgstr "Échec de la purge du cache de métadonnées" -#: apps/native/src/components/settings/integration-card.tsx:119 -#: apps/web/src/components/settings/integration-card.tsx:140 +#: apps/native/src/components/settings/integration-card.tsx:107 +#: apps/web/src/components/settings/integration-card.tsx:121 msgid "Failed to regenerate {label} URL" -msgstr "" +msgstr "Échec de la régénération de l'URL {label}" -#: apps/native/src/lib/title-actions.ts:78 +#: apps/native/src/lib/title-actions.ts:77 msgid "Failed to remove from library" -msgstr "" +msgstr "Échec de la suppression de la bibliothèque" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:134 -#: apps/web/src/components/settings/account-section.tsx:134 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:131 +#: apps/web/src/components/settings/account-section.tsx:126 msgid "Failed to remove profile picture" -msgstr "" +msgstr "Échec de la suppression de la photo de profil" -#: apps/native/src/app/(auth)/login.tsx:56 +#: apps/native/src/app/(auth)/login.tsx:53 msgid "Failed to sign in" -msgstr "" +msgstr "Échec de la connexion" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:388 +#: apps/web/src/components/settings/imports-section.tsx:370 msgid "Failed to start {0} connection" -msgstr "" +msgstr "Échec du démarrage de la connexion {0}" -#: apps/web/src/components/settings/system-health-section.tsx:348 +#: apps/web/src/components/settings/system-health-section.tsx:320 msgid "Failed to trigger job" -msgstr "" +msgstr "Échec du déclenchement de la tâche" -#: apps/native/src/hooks/use-title-actions.ts:129 -#: apps/native/src/lib/title-actions.ts:114 -#: apps/web/src/components/titles/use-title-actions.ts:181 +#: apps/native/src/hooks/use-title-actions.ts:114 +#: apps/native/src/lib/title-actions.ts:111 +#: apps/web/src/components/titles/use-title-actions.ts:163 msgid "Failed to unmark episode" -msgstr "" +msgstr "Échec du démarquage de l'épisode" -#: apps/web/src/components/titles/use-title-actions.ts:343 +#: apps/web/src/components/titles/use-title-actions.ts:320 msgid "Failed to unmark some episodes" -msgstr "" +msgstr "Échec du démarquage de certains épisodes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:112 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:109 msgid "Failed to update name" -msgstr "" +msgstr "Échec de la mise à jour du nom" -#: apps/native/src/hooks/use-title-actions.ts:101 -#: apps/native/src/lib/title-actions.ts:94 -#: apps/web/src/components/titles/use-title-actions.ts:136 +#: apps/native/src/hooks/use-title-actions.ts:94 +#: apps/native/src/lib/title-actions.ts:91 +#: apps/web/src/components/titles/use-title-actions.ts:123 msgid "Failed to update rating" -msgstr "" +msgstr "Échec de la mise à jour de la note" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:172 -#: apps/web/src/components/settings/registration-section.tsx:44 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:169 +#: apps/web/src/components/settings/registration-section.tsx:37 msgid "Failed to update registration setting" -msgstr "" +msgstr "Échec de la mise à jour du paramètre d'inscription" -#: apps/web/src/components/settings/backup-schedule-section.tsx:154 +#: apps/web/src/components/settings/backup-schedule-section.tsx:145 msgid "Failed to update retention setting" -msgstr "" +msgstr "Échec de la mise à jour du paramètre de rétention" -#: apps/web/src/components/settings/backup-schedule-section.tsx:156 +#: apps/web/src/components/settings/backup-schedule-section.tsx:147 msgid "Failed to update schedule" -msgstr "" +msgstr "Échec de la mise à jour du planning" -#: apps/web/src/components/settings/backup-schedule-section.tsx:152 +#: apps/web/src/components/settings/backup-schedule-section.tsx:143 msgid "Failed to update scheduled backup setting" -msgstr "" +msgstr "Échec de la mise à jour du paramètre de sauvegarde planifiée" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:191 -#: apps/web/src/components/settings/update-check-section.tsx:43 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:186 +#: apps/web/src/components/settings/update-check-section.tsx:37 msgid "Failed to update setting" -msgstr "" +msgstr "Échec de la mise à jour du paramètre" -#: apps/native/src/hooks/use-title-actions.ts:72 -#: apps/native/src/lib/title-actions.ts:40 -#: apps/native/src/lib/title-actions.ts:54 -#: apps/web/src/components/titles/use-title-actions.ts:114 +#: apps/native/src/hooks/use-title-actions.ts:69 +#: apps/native/src/lib/title-actions.ts:41 +#: apps/native/src/lib/title-actions.ts:55 +#: apps/web/src/components/titles/use-title-actions.ts:101 msgid "Failed to update status" -msgstr "" +msgstr "Échec de la mise à jour du statut" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:123 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:120 msgid "Failed to upload avatar" -msgstr "" +msgstr "Échec du téléchargement de l'avatar" -#: apps/web/src/components/settings/imports-section.tsx:725 +#: apps/web/src/components/settings/imports-section.tsx:689 msgid "Fetching your library data from {source}..." -msgstr "" +msgstr "Récupération de vos données depuis {source}..." -#: apps/native/src/app/person/[id].tsx:340 -#: apps/web/src/components/people/filmography-grid.tsx:69 +#: apps/native/src/app/person/[id].tsx:296 +#: apps/web/src/components/people/filmography-grid.tsx:67 msgid "Filmography" -msgstr "" +msgstr "Filmographie" -#: apps/web/src/components/settings/imports-section.tsx:915 +#: apps/web/src/components/settings/imports-section.tsx:873 msgid "Finished importing from {source}." -msgstr "" +msgstr "Importation depuis {source} terminée." -#: apps/web/src/components/titles/title-availability.tsx:140 +#: apps/web/src/components/titles/title-availability.tsx:116 msgid "Free" -msgstr "" +msgstr "Gratuit" -#: apps/web/src/components/settings/danger-section.tsx:92 +#: apps/web/src/components/settings/danger-section.tsx:88 msgid "Free up disk space by clearing cached metadata and images" -msgstr "" +msgstr "Libérez de l'espace disque en vidant les métadonnées et images en cache" -#: apps/web/src/components/settings/backup-schedule-section.tsx:309 +#: apps/web/src/components/settings/backup-schedule-section.tsx:276 msgid "Frequency" -msgstr "" +msgstr "Fréquence" -#: apps/web/src/components/settings/backup-schedule-section.tsx:101 +#: apps/web/src/components/settings/backup-schedule-section.tsx:98 msgid "Friday" -msgstr "" +msgstr "Vendredi" -#: apps/web/src/components/landing-page.tsx:156 +#: apps/web/src/components/landing-page.tsx:157 msgid "Get Started" -msgstr "" +msgstr "Commencer" -#: apps/native/src/app/person/[id].tsx:220 -#: apps/native/src/app/person/[id].tsx:247 -#: apps/native/src/app/title/[id].tsx:255 +#: apps/native/src/app/person/[id].tsx:189 +#: apps/native/src/app/person/[id].tsx:213 +#: apps/native/src/app/title/[id].tsx:239 msgid "Go back" -msgstr "" +msgstr "Retour" -#: apps/native/src/app/+not-found.tsx:37 +#: apps/native/src/app/+not-found.tsx:35 msgid "Go Home" -msgstr "" +msgstr "Accueil" -#: apps/web/src/components/settings/integration-configs.tsx:123 +#: apps/web/src/components/settings/integration-configs.tsx:115 msgid "Go to <0>Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Aller dans <0>Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:368 +#: apps/web/src/components/command-palette.tsx:345 msgid "Go to Dashboard" -msgstr "" +msgstr "Aller au tableau de bord" -#: apps/native/src/components/settings/integration-configs.ts:71 +#: apps/native/src/components/settings/integration-configs.ts:70 msgid "Go to Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Aller dans Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:379 +#: apps/web/src/components/command-palette.tsx:356 msgid "Go to Explore" -msgstr "" +msgstr "Aller à Explorer" -#: apps/web/src/components/settings/system-health-section.tsx:212 +#: apps/web/src/components/settings/system-health-section.tsx:193 msgid "Health status" -msgstr "" +msgstr "État de santé" -#: apps/web/src/components/dashboard/welcome-header.tsx:14 +#: apps/web/src/components/dashboard/welcome-header.tsx:10 msgid "Here's what's happening with your library" -msgstr "" +msgstr "Voici ce qui se passe dans votre bibliothèque" -#: apps/web/src/components/nav-bar.tsx:125 -#: apps/web/src/components/nav-bar.tsx:290 +#: apps/web/src/components/nav-bar.tsx:115 +#: apps/web/src/components/nav-bar.tsx:276 msgid "Home" -msgstr "" +msgstr "Accueil" -#: apps/web/src/components/settings/system-health-section.tsx:335 -#: apps/web/src/components/settings/system-health-section.tsx:610 +#: apps/web/src/components/settings/system-health-section.tsx:308 +#: apps/web/src/components/settings/system-health-section.tsx:558 msgid "Image cache" -msgstr "" +msgstr "Cache d'images" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:479 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:453 msgid "Image Cache" -msgstr "" +msgstr "Cache d'images" -#: apps/web/src/components/settings/system-health-section.tsx:598 +#: apps/web/src/components/settings/system-health-section.tsx:546 msgid "Image cache and backup disk usage" -msgstr "" +msgstr "Utilisation du disque : cache d'images et sauvegardes" -#: apps/web/src/components/settings/imports-section.tsx:179 +#: apps/web/src/components/settings/imports-section.tsx:175 msgid "Import" -msgstr "" +msgstr "Importation" -#: apps/web/src/components/settings/imports-section.tsx:840 +#: apps/web/src/components/settings/imports-section.tsx:801 msgid "Import {totalItems} items" -msgstr "" +msgstr "Importer {totalItems} éléments" -#: apps/web/src/components/settings/imports-section.tsx:912 +#: apps/web/src/components/settings/imports-section.tsx:870 msgid "Import complete" -msgstr "" +msgstr "Importation terminée" -#: apps/web/src/components/settings/imports-section.tsx:340 +#: apps/web/src/components/settings/imports-section.tsx:324 msgid "Import failed" -msgstr "" +msgstr "Importation échouée" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:584 +#: apps/web/src/components/settings/imports-section.tsx:553 msgid "Import from {0}" -msgstr "" +msgstr "Importer depuis {0}" -#: apps/web/src/components/settings/imports-section.tsx:770 +#: apps/web/src/components/settings/imports-section.tsx:732 msgid "Import from {source}" -msgstr "" +msgstr "Importer depuis {source}" -#: apps/web/src/components/settings/imports-section.tsx:298 -#: apps/web/src/components/settings/imports-section.tsx:329 +#: apps/web/src/components/settings/imports-section.tsx:285 +#: apps/web/src/components/settings/imports-section.tsx:314 msgid "Import is still running in the background. Check back later." -msgstr "" +msgstr "L'importation est toujours en cours en arrière-plan. Revenez plus tard." -#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/settings/imports-section.tsx:760 msgid "Import options" -msgstr "" +msgstr "Options d'importation" -#: apps/web/src/components/settings/imports-section.tsx:921 +#: apps/web/src/components/settings/imports-section.tsx:879 msgid "Imported" -msgstr "" +msgstr "Importé" #. placeholder {0}: event.job.importedCount #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:292 +#: apps/web/src/components/settings/imports-section.tsx:281 msgid "Imported {0} items from {1}" -msgstr "" +msgstr "{0} éléments importés depuis {1}" -#: apps/web/src/components/settings/imports-section.tsx:863 +#: apps/web/src/components/settings/imports-section.tsx:822 msgid "Importing from {source}" -msgstr "" +msgstr "Importation depuis {source}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:62 +#: apps/native/src/app/(tabs)/(home)/index.tsx:53 msgid "In library" -msgstr "" +msgstr "Dans la bibliothèque" -#: apps/web/src/components/dashboard/stats-display.tsx:230 +#: apps/web/src/components/dashboard/stats-display.tsx:211 msgid "In Library" -msgstr "" +msgstr "Dans la bibliothèque" -#: apps/native/src/app/(tabs)/(home)/index.tsx:133 +#: apps/native/src/app/(tabs)/(home)/index.tsx:117 #: apps/web/src/components/dashboard/library-section.tsx:35 msgid "In Your Library" -msgstr "" +msgstr "Dans votre bibliothèque" -#: apps/web/src/components/settings/integration-configs.tsx:105 +#: apps/web/src/components/settings/integration-configs.tsx:97 msgid "Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog" -msgstr "" +msgstr "Installez le <0>plugin Webhook<1/> depuis le catalogue de plugins de Jellyfin" -#: apps/native/src/components/settings/integration-configs.ts:70 +#: apps/native/src/components/settings/integration-configs.ts:69 msgid "Install the Webhook plugin from Jellyfin's plugin catalog" -msgstr "" +msgstr "Installez le plugin Webhook depuis le catalogue de plugins de Jellyfin" -#: apps/native/src/components/settings/integrations-section.tsx:20 -#: apps/web/src/components/settings/integrations-section.tsx:41 +#: apps/native/src/components/settings/integrations-section.tsx:21 +#: apps/web/src/components/settings/integrations-section.tsx:33 msgid "Integrations" -msgstr "" +msgstr "Intégrations" -#: apps/web/src/components/settings/system-health-section.tsx:266 +#: apps/web/src/components/settings/system-health-section.tsx:246 msgid "Invalid token" -msgstr "" +msgstr "Jeton invalide" -#: apps/web/src/components/settings/system-health-section.tsx:399 +#: apps/web/src/components/settings/system-health-section.tsx:365 msgid "Job" -msgstr "" +msgstr "Tâche" #: apps/web/src/components/settings/backup-schedule-section.tsx:243 #~ msgid "Keeping" @@ -1128,1306 +1128,1306 @@ msgstr "" #. placeholder {0}: (value: string | null) => value === "0" ? t`unlimited` : value ? t`last ${value}` : null #. placeholder {1}: [3, 5, 7, 14, 30, 0].map((n) => ( {n === 0 ? t`unlimited` : t`last ${n}`} )) -#: apps/web/src/components/settings/backup-schedule-section.tsx:243 +#: apps/web/src/components/settings/backup-schedule-section.tsx:222 msgid "Keeping <0><1><2>{0}<3>{1} backups." -msgstr "" +msgstr "Conservation de <0><1><2>{0}<3>{1} sauvegardes." -#: apps/web/src/components/command-palette.tsx:389 -#: apps/web/src/components/command-palette.tsx:404 +#: apps/web/src/components/command-palette.tsx:366 +#: apps/web/src/components/command-palette.tsx:381 msgid "Keyboard Shortcuts" -msgstr "" +msgstr "Raccourcis clavier" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:403 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:411 -#: apps/web/src/components/settings/language-section.tsx:42 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:383 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:391 +#: apps/web/src/components/settings/language-section.tsx:34 msgid "Language" -msgstr "" +msgstr "Langue" -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "last {n}" -msgstr "" +msgstr "{n} dernières" -#: apps/web/src/components/settings/backup-schedule-section.tsx:258 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 msgid "last {value}" -msgstr "" +msgstr "{value} dernières" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:331 +#: apps/web/src/components/settings/integration-card.tsx:289 msgid "Last event {0}" -msgstr "" +msgstr "Dernier événement {0}" -#: apps/native/src/components/settings/integration-configs.ts:29 +#: apps/native/src/components/settings/integration-configs.ts:30 msgid "Last event {timeAgo}" -msgstr "" +msgstr "Dernier événement {timeAgo}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:338 +#: apps/web/src/components/settings/integration-card.tsx:296 msgid "Last polled {0}" -msgstr "" +msgstr "Dernière interrogation {0}" -#: apps/native/src/components/settings/integration-configs.ts:37 +#: apps/native/src/components/settings/integration-configs.ts:38 msgid "Last polled {timeAgo}" -msgstr "" +msgstr "Dernière interrogation {timeAgo}" -#: apps/web/src/components/settings/system-health-section.tsx:405 +#: apps/web/src/components/settings/system-health-section.tsx:371 msgid "Last run" -msgstr "" +msgstr "Dernière exécution" -#: apps/web/src/components/settings/system-health-section.tsx:441 +#: apps/web/src/components/settings/system-health-section.tsx:402 msgid "Last run failed" -msgstr "" +msgstr "Dernière exécution échouée" -#: apps/web/src/components/settings/system-health-section.tsx:437 +#: apps/web/src/components/settings/system-health-section.tsx:400 msgid "Last run succeeded" -msgstr "" +msgstr "Dernière exécution réussie" -#: apps/web/src/components/settings/system-health-section.tsx:331 +#: apps/web/src/components/settings/system-health-section.tsx:304 msgid "Library refresh" -msgstr "" +msgstr "Actualisation de la bibliothèque" -#: apps/web/src/components/auth-form.tsx:245 +#: apps/web/src/components/auth-form.tsx:229 msgid "Loading…" -msgstr "" +msgstr "Chargement…" -#: apps/web/src/components/settings/imports-section.tsx:334 +#: apps/web/src/components/settings/imports-section.tsx:318 msgid "Lost connection to import. Check status in settings." -msgstr "" +msgstr "Connexion à l'importation perdue. Vérifiez l'état dans les paramètres." -#: apps/web/src/components/settings/settings-shell.tsx:40 +#: apps/web/src/components/settings/settings-shell.tsx:34 msgid "Manage your account and preferences" -msgstr "" +msgstr "Gérez votre compte et vos préférences" -#: apps/web/src/components/settings/backup-section.tsx:182 +#: apps/web/src/components/settings/backup-section.tsx:158 msgid "Manual backup" -msgstr "" +msgstr "Sauvegarde manuelle" -#: apps/web/src/components/titles/title-seasons.tsx:122 +#: apps/web/src/components/titles/title-seasons.tsx:116 msgid "Mark all episodes as watched?" -msgstr "" +msgstr "Marquer tous les épisodes comme visionnés ?" -#: apps/native/src/components/titles/season-accordion.tsx:164 -#: apps/web/src/components/titles/title-seasons.tsx:115 -#: apps/web/src/components/titles/title-seasons.tsx:141 +#: apps/native/src/components/titles/season-accordion.tsx:152 +#: apps/web/src/components/titles/title-seasons.tsx:109 +#: apps/web/src/components/titles/title-seasons.tsx:135 msgid "Mark All Watched" -msgstr "" +msgstr "Tout marquer comme visionné" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:122 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:103 msgid "Mark as Completed" -msgstr "" +msgstr "Marquer comme terminé" -#: apps/native/src/components/ui/poster-card.tsx:252 +#: apps/native/src/components/ui/poster-card.tsx:226 msgid "Mark as Watched" -msgstr "" +msgstr "Marquer comme visionné" -#: apps/native/src/components/ui/poster-card.tsx:245 +#: apps/native/src/components/ui/poster-card.tsx:219 msgid "Mark as Watching" -msgstr "" +msgstr "Marquer comme en cours" -#: apps/native/src/app/title/[id].tsx:449 -#: apps/web/src/components/titles/title-actions.tsx:29 +#: apps/native/src/app/title/[id].tsx:400 +#: apps/web/src/components/titles/title-actions.tsx:27 msgid "Mark Watched" -msgstr "" +msgstr "Marquer comme visionné" -#: apps/native/src/lib/title-actions.ts:49 +#: apps/native/src/lib/title-actions.ts:50 msgid "Marked \"{titleName}\" as completed" -msgstr "" +msgstr "« {titleName} » marqué comme terminé" #: apps/native/src/lib/title-actions.ts:63 -#: apps/web/src/components/titles/use-title-actions.ts:147 +#: apps/web/src/components/titles/use-title-actions.ts:134 msgid "Marked \"{titleName}\" as watched" -msgstr "" +msgstr "« {titleName} » marqué comme visionné" -#: apps/web/src/components/titles/use-title-actions.ts:360 +#: apps/web/src/components/titles/use-title-actions.ts:337 msgid "Marked all episodes as watched" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:62 -#: apps/native/src/lib/title-actions.ts:50 -msgid "Marked as completed" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:80 -#: apps/native/src/lib/title-actions.ts:64 -msgid "Marked as watched" -msgstr "" +msgstr "Tous les épisodes marqués comme visionnés" #: apps/native/src/hooks/use-title-actions.ts:61 -#: apps/native/src/lib/title-actions.ts:37 +#: apps/native/src/lib/title-actions.ts:51 +msgid "Marked as completed" +msgstr "Marqué comme terminé" + +#: apps/native/src/hooks/use-title-actions.ts:76 +#: apps/native/src/lib/title-actions.ts:63 +msgid "Marked as watched" +msgstr "Marqué comme visionné" + +#: apps/native/src/hooks/use-title-actions.ts:60 +#: apps/native/src/lib/title-actions.ts:38 msgid "Marked as watching" -msgstr "" +msgstr "Marqué comme en cours" -#: apps/web/src/components/settings/account-section.tsx:340 +#: apps/web/src/components/settings/account-section.tsx:314 msgid "Member since {memberSince}" -msgstr "" +msgstr "Membre depuis {memberSince}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:97 +#: apps/web/src/components/settings/backup-schedule-section.tsx:94 msgid "Monday" -msgstr "" +msgstr "Lundi" -#: apps/native/src/app/title/[id].tsx:585 +#: apps/native/src/app/title/[id].tsx:508 msgid "More Like This" -msgstr "" +msgstr "Dans le même genre" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:541 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:506 msgid "More Settings" -msgstr "" +msgstr "Plus de paramètres" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:35 -#: apps/native/src/components/search/search-result-row.tsx:96 -#: apps/web/src/components/explore/hero-banner.tsx:59 -#: apps/web/src/components/titles/title-hero.tsx:143 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:54 +#: apps/web/src/components/titles/title-hero.tsx:141 msgid "Movie" -msgstr "" +msgstr "Film" -#: apps/web/src/components/people/filmography-grid.tsx:59 -#: apps/web/src/components/settings/imports-section.tsx:779 +#: apps/web/src/components/people/filmography-grid.tsx:57 +#: apps/web/src/components/settings/imports-section.tsx:741 msgid "Movies" -msgstr "" +msgstr "Films" #: apps/web/src/components/dashboard/stats-display.tsx:161 #~ msgid "Movies {periodSelect}" #~ msgstr "Movies {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:162 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Movies {select}" -msgstr "" +msgstr "Films {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:60 +#: apps/native/src/app/(tabs)/(home)/index.tsx:51 msgid "Movies this month" -msgstr "" +msgstr "Films ce mois-ci" -#: apps/native/src/app/(auth)/register.tsx:124 -#: apps/web/src/components/auth-form.tsx:181 +#: apps/native/src/app/(auth)/register.tsx:111 +#: apps/web/src/components/auth-form.tsx:173 msgid "Name" -msgstr "" +msgstr "Nom" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:107 -#: apps/web/src/components/settings/account-section.tsx:80 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:104 +#: apps/web/src/components/settings/account-section.tsx:72 msgid "Name updated" -msgstr "" +msgstr "Nom mis à jour" -#: apps/web/src/components/settings/integration-card.tsx:301 +#: apps/web/src/components/settings/integration-card.tsx:259 msgid "Need more help?" -msgstr "" +msgstr "Besoin d'aide ?" -#: apps/web/src/components/settings/system-health-section.tsx:501 +#: apps/web/src/components/settings/system-health-section.tsx:456 msgid "Never" -msgstr "" +msgstr "Jamais" -#: apps/web/src/components/settings/system-health-section.tsx:435 +#: apps/web/src/components/settings/system-health-section.tsx:398 msgid "Never run" -msgstr "" +msgstr "Jamais exécuté" -#: apps/native/src/app/(auth)/register.tsx:98 +#: apps/native/src/app/(auth)/register.tsx:88 msgid "New account creation is currently disabled." -msgstr "" +msgstr "La création de nouveaux comptes est actuellement désactivée." -#: apps/web/src/routes/_auth/register.tsx:35 +#: apps/web/src/routes/_auth/register.tsx:36 msgid "New accounts are not being accepted right now. Contact the admin if you need access." -msgstr "" +msgstr "Les nouvelles inscriptions sont fermées. Contactez l'administrateur si vous avez besoin d'un accès." -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "New backup" -msgstr "" +msgstr "Nouvelle sauvegarde" -#: apps/native/src/app/change-password.tsx:145 -#: apps/web/src/components/settings/account-section.tsx:463 +#: apps/native/src/app/change-password.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:437 msgid "New password" -msgstr "" +msgstr "Nouveau mot de passe" -#: apps/web/src/components/settings/account-section.tsx:395 +#: apps/web/src/components/settings/account-section.tsx:369 msgid "New password must be at least 8 characters" -msgstr "" +msgstr "Le nouveau mot de passe doit comporter au moins 8 caractères" -#: apps/web/src/components/people/filmography-grid.tsx:86 -#: apps/web/src/components/people/filmography-grid.tsx:99 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:87 msgid "Newest" -msgstr "" +msgstr "Les plus récents" -#: apps/web/src/components/settings/backup-schedule-section.tsx:131 +#: apps/web/src/components/settings/backup-schedule-section.tsx:124 msgid "Next backup {distance}" -msgstr "" +msgstr "Prochaine sauvegarde {distance}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:46 +#: apps/native/src/components/titles/continue-watching-banner.tsx:42 msgid "Next Episode" -msgstr "" +msgstr "Épisode suivant" -#: apps/web/src/components/settings/system-health-section.tsx:408 +#: apps/web/src/components/settings/system-health-section.tsx:374 msgid "Next run" -msgstr "" +msgstr "Prochaine exécution" -#: apps/web/src/components/settings/backup-section.tsx:110 -#: apps/web/src/components/settings/system-health-section.tsx:662 +#: apps/web/src/components/settings/backup-section.tsx:99 +#: apps/web/src/components/settings/system-health-section.tsx:607 msgid "No backups yet" -msgstr "" +msgstr "Aucune sauvegarde" -#: apps/native/src/components/ui/offline-banner.ios.tsx:74 -#: apps/native/src/components/ui/offline-banner.ios.tsx:81 -#: apps/native/src/components/ui/offline-banner.tsx:59 +#: apps/native/src/components/ui/offline-banner.ios.tsx:75 +#: apps/native/src/components/ui/offline-banner.ios.tsx:82 +#: apps/native/src/components/ui/offline-banner.tsx:60 msgid "No internet connection" -msgstr "" +msgstr "Pas de connexion Internet" -#: apps/native/src/app/(tabs)/(search)/index.tsx:113 +#: apps/native/src/app/(tabs)/(search)/index.tsx:100 msgid "No results for \"{debouncedQuery}\"" -msgstr "" +msgstr "Aucun résultat pour « {debouncedQuery} »" -#: apps/web/src/components/command-palette.tsx:217 +#: apps/web/src/components/command-palette.tsx:212 msgid "No results found." -msgstr "" +msgstr "Aucun résultat trouvé." -#: apps/native/src/components/explore/filterable-title-row.tsx:139 -#: apps/web/src/components/explore/filterable-title-row.tsx:151 +#: apps/native/src/components/explore/filterable-title-row.tsx:135 +#: apps/web/src/components/explore/filterable-title-row.tsx:144 msgid "No titles found for this genre." -msgstr "" +msgstr "Aucun titre trouvé pour ce genre." -#: apps/native/src/components/settings/integration-card.tsx:194 -#: apps/web/src/components/settings/integration-card.tsx:176 -#: apps/web/src/components/settings/system-health-section.tsx:249 +#: apps/native/src/components/settings/integration-card.tsx:174 +#: apps/web/src/components/settings/integration-card.tsx:153 +#: apps/web/src/components/settings/system-health-section.tsx:229 msgid "Not configured" -msgstr "" +msgstr "Non configuré" -#: apps/native/src/app/+not-found.tsx:17 +#: apps/native/src/app/+not-found.tsx:18 msgid "Not Found" -msgstr "" +msgstr "Introuvable" -#: apps/web/src/components/title-card.tsx:67 +#: apps/web/src/components/title-card.tsx:64 msgid "On Watchlist" -msgstr "" +msgstr "Dans la liste de suivi" -#: apps/web/src/components/settings/imports-section.tsx:693 +#: apps/web/src/components/settings/imports-section.tsx:657 msgid "Open {source} to enter code" -msgstr "" +msgstr "Ouvrir {source} pour saisir le code" -#: apps/web/src/components/settings/integration-card.tsx:308 +#: apps/web/src/components/settings/integration-card.tsx:266 msgid "Open docs" -msgstr "" +msgstr "Ouvrir la documentation" -#: apps/web/src/components/settings/integration-configs.tsx:190 +#: apps/web/src/components/settings/integration-configs.tsx:172 msgid "Open Emby, go to <0>Settings > Webhooks" -msgstr "" +msgstr "Ouvrez Emby, allez dans <0>Settings > Webhooks" -#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/native/src/components/settings/integration-configs.ts:88 msgid "Open Emby, go to Settings > Webhooks" -msgstr "" +msgstr "Ouvrez Emby, allez dans Settings > Webhooks" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:548 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 msgid "Open in browser…" -msgstr "" +msgstr "Ouvrir dans le navigateur…" -#: apps/web/src/components/settings/integration-configs.tsx:62 +#: apps/web/src/components/settings/integration-configs.tsx:56 msgid "Open Plex, go to <0>Settings > Webhooks<1/>" -msgstr "" +msgstr "Ouvrez Plex, allez dans <0>Settings > Webhooks<1/>" -#: apps/native/src/components/settings/integration-configs.ts:54 +#: apps/native/src/components/settings/integration-configs.ts:55 msgid "Open Plex, go to Settings > Webhooks" -msgstr "" +msgstr "Ouvrez Plex, allez dans Settings > Webhooks" -#: apps/web/src/components/settings/integration-configs.tsx:269 +#: apps/web/src/components/settings/integration-configs.tsx:243 msgid "Open Radarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Ouvrez Radarr, allez dans <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/native/src/components/settings/integration-configs.ts:121 msgid "Open Radarr, go to Settings > Import Lists" -msgstr "" +msgstr "Ouvrez Radarr, allez dans Settings > Import Lists" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:502 -#: apps/web/src/components/settings/registration-section.tsx:58 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:472 +#: apps/web/src/components/settings/registration-section.tsx:51 msgid "Open registration" -msgstr "" +msgstr "Inscription ouverte" -#: apps/web/src/components/settings/integration-configs.tsx:229 +#: apps/web/src/components/settings/integration-configs.tsx:206 msgid "Open Sonarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Ouvrez Sonarr, allez dans <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/native/src/components/settings/integration-configs.ts:103 msgid "Open Sonarr, go to Settings > Import Lists" -msgstr "" +msgstr "Ouvrez Sonarr, allez dans Settings > Import Lists" -#: apps/web/src/components/auth-form.tsx:158 +#: apps/web/src/components/auth-form.tsx:153 msgid "or" -msgstr "" +msgstr "ou" -#: apps/native/src/app/(auth)/login.tsx:118 +#: apps/native/src/app/(auth)/login.tsx:108 msgid "OR" -msgstr "" +msgstr "OU" -#: apps/native/src/app/+not-found.tsx:27 +#: apps/native/src/app/+not-found.tsx:25 msgid "Page Not Found" -msgstr "" +msgstr "Page introuvable" -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Parsing..." -msgstr "" +msgstr "Analyse..." -#: apps/native/src/app/(auth)/login.tsx:167 -#: apps/native/src/app/(auth)/register.tsx:187 -#: apps/web/src/components/auth-form.tsx:221 +#: apps/native/src/app/(auth)/login.tsx:153 +#: apps/native/src/app/(auth)/register.tsx:170 +#: apps/web/src/components/auth-form.tsx:207 msgid "Password" -msgstr "" +msgstr "Mot de passe" -#: apps/native/src/app/change-password.tsx:76 -#: apps/web/src/components/settings/account-section.tsx:414 +#: apps/native/src/app/change-password.tsx:72 +#: apps/web/src/components/settings/account-section.tsx:388 msgid "Password updated" -msgstr "" +msgstr "Mot de passe mis à jour" -#: apps/web/src/components/settings/account-section.tsx:399 +#: apps/web/src/components/settings/account-section.tsx:373 msgid "Passwords do not match" -msgstr "" +msgstr "Les mots de passe ne correspondent pas" -#: apps/native/src/components/settings/integration-configs.ts:128 -#: apps/web/src/components/settings/integration-configs.tsx:284 +#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/web/src/components/settings/integration-configs.tsx:255 msgid "Paste the Radarr URL above into the List URL field" -msgstr "" +msgstr "Collez l'URL Radarr ci-dessus dans le champ List URL" -#: apps/native/src/components/settings/integration-configs.ts:110 -#: apps/web/src/components/settings/integration-configs.tsx:244 +#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/web/src/components/settings/integration-configs.tsx:218 msgid "Paste the Sonarr URL above into the List URL field" -msgstr "" +msgstr "Collez l'URL Sonarr ci-dessus dans le champ List URL" -#: apps/web/src/components/settings/update-check-section.tsx:63 +#: apps/web/src/components/settings/update-check-section.tsx:54 msgid "Periodically check GitHub for new Sofa releases" -msgstr "" +msgstr "Vérifier périodiquement GitHub pour les nouvelles versions de Sofa" -#: apps/native/src/components/search/search-result-row.tsx:38 -#: apps/native/src/components/search/search-result-row.tsx:99 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 msgid "Person" -msgstr "" +msgstr "Personne" -#: apps/native/src/app/person/[id].tsx:243 -#: apps/web/src/routes/_app/people.$id.tsx:52 +#: apps/native/src/app/person/[id].tsx:209 +#: apps/web/src/routes/_app/people.$id.tsx:50 msgid "Person not found" -msgstr "" +msgstr "Personne introuvable" -#: apps/web/src/components/titles/trailer-dialog.tsx:24 +#: apps/web/src/components/titles/trailer-dialog.tsx:25 msgid "Play trailer" -msgstr "" +msgstr "Lire la bande-annonce" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:107 -#: apps/web/src/components/explore/explore-client.tsx:126 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:89 +#: apps/web/src/components/explore/explore-client.tsx:120 msgid "Popular Movies" -msgstr "" +msgstr "Films populaires" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:120 -#: apps/web/src/components/explore/explore-client.tsx:136 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:102 +#: apps/web/src/components/explore/explore-client.tsx:130 msgid "Popular TV Shows" -msgstr "" +msgstr "Séries populaires" -#: apps/web/src/components/settings/backup-section.tsx:181 +#: apps/web/src/components/settings/backup-section.tsx:157 msgid "Pre-restore backup" -msgstr "" +msgstr "Sauvegarde pré-restauration" -#: apps/web/src/components/people/person-hero.tsx:77 +#: apps/web/src/components/people/person-hero.tsx:75 msgid "Producer" -msgstr "" +msgstr "Producteur" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:130 -#: apps/web/src/components/settings/account-section.tsx:130 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:127 +#: apps/web/src/components/settings/account-section.tsx:122 msgid "Profile picture removed" -msgstr "" +msgstr "Photo de profil supprimée" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:119 -#: apps/web/src/components/settings/account-section.tsx:108 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:100 msgid "Profile picture updated" -msgstr "" +msgstr "Photo de profil mise à jour" -#: apps/web/src/components/settings/danger-section.tsx:196 -#: apps/web/src/components/settings/danger-section.tsx:220 +#: apps/web/src/components/settings/danger-section.tsx:171 +#: apps/web/src/components/settings/danger-section.tsx:190 msgid "Purge all" -msgstr "" +msgstr "Tout purger" -#: apps/web/src/components/settings/danger-section.tsx:202 +#: apps/web/src/components/settings/danger-section.tsx:176 msgid "Purge all caches?" -msgstr "" +msgstr "Purger tous les caches ?" -#: apps/web/src/components/settings/danger-section.tsx:160 +#: apps/web/src/components/settings/danger-section.tsx:143 msgid "Purge image cache?" -msgstr "" +msgstr "Purger le cache d'images ?" -#: apps/web/src/components/settings/danger-section.tsx:154 -#: apps/web/src/components/settings/danger-section.tsx:177 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:157 msgid "Purge images" -msgstr "" +msgstr "Purger les images" -#: apps/web/src/components/settings/danger-section.tsx:111 -#: apps/web/src/components/settings/danger-section.tsx:135 +#: apps/web/src/components/settings/danger-section.tsx:103 +#: apps/web/src/components/settings/danger-section.tsx:124 msgid "Purge metadata" -msgstr "" +msgstr "Purger les métadonnées" -#: apps/web/src/components/settings/danger-section.tsx:117 +#: apps/web/src/components/settings/danger-section.tsx:109 msgid "Purge metadata cache?" -msgstr "" +msgstr "Purger le cache de métadonnées ?" #. placeholder {0}: data.deletedTitles #. placeholder {1}: data.deletedPersons #: apps/web/src/components/settings/danger-section.tsx:41 msgid "Purged {0, plural, one {# stale title} other {# stale titles}} and {1, plural, one {# orphaned person} other {# orphaned persons}}" -msgstr "" +msgstr "{0, plural, one {# titre obsolète purgé} other {# titres obsolètes purgés}} et {1, plural, one {# personne orpheline} other {# personnes orphelines}}" #. placeholder {0}: metaResult.deletedTitles #. placeholder {1}: metaResult.deletedPersons #. placeholder {2}: imageResult.deletedFiles -#: apps/web/src/components/settings/danger-section.tsx:71 +#: apps/web/src/components/settings/danger-section.tsx:68 msgid "Purged {0, plural, one {# title} other {# titles}}, {1, plural, one {# person} other {# persons}}, {2, plural, one {# file} other {# files}} ({freed} freed)" -msgstr "" +msgstr "{0, plural, one {# titre} other {# titres}}, {1, plural, one {# personne} other {# personnes}}, {2, plural, one {# fichier} other {# fichiers}} purgés ({freed} libéré)" -#: apps/web/src/components/settings/danger-section.tsx:109 -#: apps/web/src/components/settings/danger-section.tsx:152 -#: apps/web/src/components/settings/danger-section.tsx:194 +#: apps/web/src/components/settings/danger-section.tsx:101 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:171 msgid "Purging..." -msgstr "" +msgstr "Purge..." -#: apps/web/src/components/command-palette.tsx:359 +#: apps/web/src/components/command-palette.tsx:336 msgid "Quick Actions" -msgstr "" +msgstr "Actions rapides" -#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/native/src/components/settings/integration-configs.ts:118 msgid "Radarr List URL" -msgstr "" +msgstr "URL de liste Radarr" #. placeholder {0}: input.stars #. placeholder {1}: input.stars -#: apps/native/src/hooks/use-title-actions.ts:93 +#: apps/native/src/hooks/use-title-actions.ts:88 msgid "Rated {0} {1, plural, one {star} other {stars}}" -msgstr "" +msgstr "Noté {0} {1, plural, one {étoile} other {étoiles}}" #: apps/native/src/hooks/use-title-actions.ts:92 #~ msgid "Rated {0} star{1}" #~ msgstr "Rated {0} star{1}" -#: apps/web/src/components/titles/use-title-actions.ts:131 +#: apps/web/src/components/titles/use-title-actions.ts:118 msgid "Rated {ratingStars} {ratingStars, plural, one {star} other {stars}}" -msgstr "" +msgstr "Noté {ratingStars} {ratingStars, plural, one {étoile} other {étoiles}}" -#: apps/native/src/lib/title-actions.ts:88 +#: apps/native/src/lib/title-actions.ts:86 msgid "Rated {stars, plural, one {# star} other {# stars}}" -msgstr "" +msgstr "Noté {stars, plural, one {# étoile} other {# étoiles}}" -#: apps/web/src/components/people/filmography-grid.tsx:88 -#: apps/web/src/components/people/filmography-grid.tsx:102 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:90 msgid "Rating" -msgstr "" +msgstr "Note" -#: apps/native/src/hooks/use-title-actions.ts:94 -#: apps/native/src/lib/title-actions.ts:90 -#: apps/web/src/components/titles/use-title-actions.ts:132 +#: apps/native/src/hooks/use-title-actions.ts:89 +#: apps/native/src/lib/title-actions.ts:87 +#: apps/web/src/components/titles/use-title-actions.ts:119 msgid "Rating removed" -msgstr "" +msgstr "Note supprimée" -#: apps/web/src/components/settings/imports-section.tsx:782 -#: apps/web/src/components/settings/imports-section.tsx:813 +#: apps/web/src/components/settings/imports-section.tsx:744 +#: apps/web/src/components/settings/imports-section.tsx:775 msgid "Ratings" -msgstr "" +msgstr "Notes" -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Read more" -msgstr "" +msgstr "Lire la suite" -#: apps/native/src/components/settings/integration-configs.ts:39 -#: apps/web/src/components/settings/integration-card.tsx:339 +#: apps/native/src/components/settings/integration-configs.ts:40 +#: apps/web/src/components/settings/integration-card.tsx:297 msgid "Ready — not polled yet" -msgstr "" +msgstr "Prêt — pas encore interrogé" -#: apps/native/src/components/settings/integration-configs.ts:31 -#: apps/web/src/components/settings/integration-card.tsx:332 +#: apps/native/src/components/settings/integration-configs.ts:32 +#: apps/web/src/components/settings/integration-card.tsx:290 msgid "Ready — nothing received yet" -msgstr "" +msgstr "Prêt — rien reçu pour l'instant" -#: apps/web/src/components/command-palette.tsx:315 +#: apps/web/src/components/command-palette.tsx:295 msgid "Recent Searches" -msgstr "" +msgstr "Recherches récentes" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:106 -#: apps/native/src/components/search/recently-viewed-list.tsx:86 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:95 +#: apps/native/src/components/search/recently-viewed-list.tsx:77 msgid "Recently Viewed" -msgstr "" +msgstr "Récemment consultés" -#: apps/web/src/components/settings/system-health-section.tsx:333 +#: apps/web/src/components/settings/system-health-section.tsx:306 msgid "Recommendations" -msgstr "" +msgstr "Recommandations" -#: apps/web/src/components/titles/title-recommendations.tsx:40 +#: apps/web/src/components/titles/title-recommendations.tsx:41 msgid "Recommended" -msgstr "" +msgstr "Recommandé" -#: apps/native/src/app/(tabs)/(home)/index.tsx:154 +#: apps/native/src/app/(tabs)/(home)/index.tsx:137 #: apps/web/src/components/dashboard/recommendations-section.tsx:22 msgid "Recommended for You" -msgstr "" +msgstr "Recommandé pour vous" -#: apps/web/src/components/auth-form.tsx:143 +#: apps/web/src/components/auth-form.tsx:140 msgid "Redirecting…" -msgstr "" +msgstr "Redirection…" -#: apps/web/src/components/settings/system-health-section.tsx:182 +#: apps/web/src/components/settings/system-health-section.tsx:166 msgid "Refresh" -msgstr "" +msgstr "Actualiser" -#: apps/web/src/components/settings/system-health-section.tsx:172 +#: apps/web/src/components/settings/system-health-section.tsx:156 msgid "Refresh system health" -msgstr "" +msgstr "Actualiser l'état du système" -#: apps/native/src/components/settings/integration-card.tsx:140 -#: apps/native/src/components/settings/integration-card.tsx:289 +#: apps/native/src/components/settings/integration-card.tsx:128 +#: apps/native/src/components/settings/integration-card.tsx:248 msgid "Regenerate" -msgstr "" +msgstr "Régénérer" -#: apps/native/src/components/settings/integration-card.tsx:135 -#: apps/web/src/components/settings/integration-card.tsx:264 +#: apps/native/src/components/settings/integration-card.tsx:123 +#: apps/web/src/components/settings/integration-card.tsx:226 msgid "Regenerate URL" -msgstr "" +msgstr "Régénérer l'URL" -#: apps/web/src/components/auth-form.tsx:293 -#: apps/web/src/components/landing-page.tsx:176 +#: apps/web/src/components/auth-form.tsx:274 +#: apps/web/src/components/landing-page.tsx:177 msgid "Register" -msgstr "" +msgstr "S'inscrire" -#: apps/native/src/app/(auth)/register.tsx:116 +#: apps/native/src/app/(auth)/register.tsx:104 msgid "Registering on {serverHost}" -msgstr "" +msgstr "Inscription sur {serverHost}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration closed" -msgstr "" +msgstr "Inscriptions fermées" -#: apps/native/src/app/(auth)/register.tsx:97 -#: apps/web/src/routes/_auth/register.tsx:32 +#: apps/native/src/app/(auth)/register.tsx:87 +#: apps/web/src/routes/_auth/register.tsx:33 msgid "Registration Closed" -msgstr "" +msgstr "Inscriptions fermées" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration opened" -msgstr "" +msgstr "Inscriptions ouvertes" -#: apps/web/src/components/titles/status-button.tsx:84 +#: apps/web/src/components/titles/status-button.tsx:76 msgid "Remove" -msgstr "" +msgstr "Supprimer" -#: apps/native/src/components/titles/status-action-button.tsx:101 -#: apps/web/src/components/titles/status-button.tsx:66 +#: apps/native/src/components/titles/status-action-button.tsx:96 +#: apps/web/src/components/titles/status-button.tsx:60 msgid "Remove from library" -msgstr "" +msgstr "Supprimer de la bibliothèque" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:129 -#: apps/native/src/components/ui/poster-card.tsx:259 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:108 +#: apps/native/src/components/ui/poster-card.tsx:233 msgid "Remove from Library" -msgstr "" +msgstr "Supprimer de la bibliothèque" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:277 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:268 msgid "Remove Photo" -msgstr "" +msgstr "Supprimer la photo" -#: apps/web/src/components/settings/account-section.tsx:239 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Remove picture" -msgstr "" +msgstr "Supprimer la photo" -#: apps/web/src/components/settings/account-section.tsx:199 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Remove profile picture" -msgstr "" +msgstr "Supprimer la photo de profil" -#: apps/native/src/hooks/use-title-actions.ts:66 -#: apps/native/src/lib/title-actions.ts:75 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/lib/title-actions.ts:74 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Removed from library" -msgstr "" +msgstr "Supprimé de la bibliothèque" -#: apps/web/src/components/titles/title-availability.tsx:138 +#: apps/web/src/components/titles/title-availability.tsx:114 msgid "Rent" -msgstr "" +msgstr "Louer" -#: apps/web/src/components/settings/integration-configs.tsx:165 +#: apps/web/src/components/settings/integration-configs.tsx:150 msgid "Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license." -msgstr "" +msgstr "Nécessite <0>Emby Server 4.7.9+ et une licence <1>Emby Premiere<2/> active." -#: apps/web/src/components/settings/integration-configs.tsx:41 +#: apps/web/src/components/settings/integration-configs.tsx:35 msgid "Requires an active <0>Plex Pass<1/> subscription." -msgstr "" +msgstr "Nécessite un abonnement <0>Plex Pass<1/> actif." -#: apps/native/src/components/settings/integration-configs.ts:52 +#: apps/native/src/components/settings/integration-configs.ts:53 msgid "Requires an active Plex Pass subscription." -msgstr "" +msgstr "Nécessite un abonnement Plex Pass actif." -#: apps/native/src/components/settings/integration-configs.ts:88 +#: apps/native/src/components/settings/integration-configs.ts:85 msgid "Requires Emby Server 4.7.9+ and an active Emby Premiere license." -msgstr "" +msgstr "Nécessite Emby Server 4.7.9+ et une licence Emby Premiere active." -#: apps/web/src/components/settings/backup-restore-section.tsx:59 -#: apps/web/src/components/settings/backup-restore-section.tsx:116 +#: apps/web/src/components/settings/backup-restore-section.tsx:57 +#: apps/web/src/components/settings/backup-restore-section.tsx:110 msgid "Restore" -msgstr "" +msgstr "Restaurer" -#: apps/web/src/components/settings/backup-restore-section.tsx:89 +#: apps/web/src/components/settings/backup-restore-section.tsx:83 msgid "Restore database?" -msgstr "" +msgstr "Restaurer la base de données ?" -#: apps/web/src/components/settings/backup-restore-section.tsx:35 +#: apps/web/src/components/settings/backup-restore-section.tsx:36 msgid "Restore failed" -msgstr "" +msgstr "Restauration échouée" -#: apps/web/src/components/settings/backup-restore-section.tsx:132 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 msgid "Restoring…" -msgstr "" +msgstr "Restauration…" -#: apps/web/src/components/command-palette.tsx:222 +#: apps/web/src/components/command-palette.tsx:217 msgid "Results" -msgstr "" +msgstr "Résultats" -#: apps/web/src/components/settings/imports-section.tsx:731 +#: apps/web/src/components/settings/imports-section.tsx:695 msgid "Retrieving your watch history, watchlist, and ratings..." -msgstr "" +msgstr "Récupération de votre historique, liste de suivi et notes..." -#: apps/native/src/components/settings/integrations-section.tsx:42 -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:73 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:81 -#: apps/web/src/lib/orpc/client.ts:16 +#: apps/native/src/components/settings/integrations-section.tsx:39 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:71 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:79 +#: apps/web/src/lib/orpc/client.ts:17 msgid "Retry" -msgstr "" +msgstr "Réessayer" -#: apps/web/src/routes/__root.tsx:119 +#: apps/web/src/routes/__root.tsx:116 msgid "Return home" -msgstr "" +msgstr "Retour à l'accueil" -#: apps/web/src/components/settings/imports-section.tsx:773 +#: apps/web/src/components/settings/imports-section.tsx:735 msgid "Review what was found and choose what to import." -msgstr "" +msgstr "Vérifiez ce qui a été trouvé et choisissez ce que vous souhaitez importer." -#: apps/web/src/components/settings/system-health-section.tsx:558 +#: apps/web/src/components/settings/system-health-section.tsx:509 msgid "Run now" -msgstr "" +msgstr "Exécuter maintenant" -#: apps/web/src/components/settings/backup-schedule-section.tsx:102 +#: apps/web/src/components/settings/backup-schedule-section.tsx:99 msgid "Saturday" -msgstr "" +msgstr "Samedi" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:322 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:311 msgid "Save" -msgstr "" +msgstr "Enregistrer" -#: apps/web/src/components/settings/account-section.tsx:296 +#: apps/web/src/components/settings/account-section.tsx:270 msgid "Save name" -msgstr "" +msgstr "Enregistrer le nom" -#: apps/web/src/routes/__root.tsx:101 +#: apps/web/src/routes/__root.tsx:98 msgid "Scene not found" -msgstr "" +msgstr "Scène introuvable" -#: apps/web/src/components/settings/system-health-section.tsx:402 +#: apps/web/src/components/settings/system-health-section.tsx:368 msgid "Schedule" -msgstr "" +msgstr "Planning" -#: apps/web/src/components/settings/backup-schedule-section.tsx:201 +#: apps/web/src/components/settings/backup-schedule-section.tsx:186 msgid "Schedule updated" -msgstr "" +msgstr "Planning mis à jour" -#: apps/web/src/components/settings/backup-section.tsx:179 +#: apps/web/src/components/settings/backup-section.tsx:155 msgid "Scheduled backup" -msgstr "" +msgstr "Sauvegarde planifiée" -#: apps/web/src/components/settings/backup-schedule-section.tsx:178 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups disabled" -msgstr "" +msgstr "Sauvegardes planifiées désactivées" -#: apps/web/src/components/settings/backup-schedule-section.tsx:177 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups enabled" -msgstr "" +msgstr "Sauvegardes planifiées activées" #: apps/web/src/components/dashboard/stats-section.tsx:35 msgid "Search for movies and TV shows to start tracking" -msgstr "" +msgstr "Recherchez des films et séries pour commencer à les suivre" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:81 -#: apps/native/src/components/search/recently-viewed-list.tsx:64 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:72 +#: apps/native/src/components/search/recently-viewed-list.tsx:55 msgid "Search for movies, shows, or people" -msgstr "" +msgstr "Rechercher des films, séries ou personnes" -#: apps/web/src/components/command-palette.tsx:186 +#: apps/web/src/components/command-palette.tsx:182 msgid "Search for movies, TV shows, or run commands" -msgstr "" +msgstr "Rechercher des films, séries ou exécuter des commandes" -#: apps/web/src/components/command-palette.tsx:195 +#: apps/web/src/components/command-palette.tsx:191 msgid "Search movies & TV shows…" -msgstr "" +msgstr "Rechercher des films et séries…" -#: apps/native/src/app/(tabs)/(search)/index.tsx:90 +#: apps/native/src/app/(tabs)/(search)/index.tsx:79 msgid "Search movies, shows, people..." -msgstr "" +msgstr "Rechercher des films, séries, personnes..." -#: apps/web/src/components/nav-bar.tsx:193 -#: apps/web/src/components/nav-bar.tsx:202 +#: apps/web/src/components/nav-bar.tsx:181 +#: apps/web/src/components/nav-bar.tsx:190 msgid "Search…" -msgstr "" +msgstr "Rechercher…" #. placeholder {0}: season.seasonNumber -#: apps/native/src/components/titles/season-accordion.tsx:122 -#: apps/native/src/components/titles/season-accordion.tsx:128 -#: apps/web/src/components/titles/use-title-actions.ts:295 -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/native/src/components/titles/season-accordion.tsx:113 +#: apps/native/src/components/titles/season-accordion.tsx:119 +#: apps/web/src/components/titles/use-title-actions.ts:274 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Season {0}" -msgstr "" +msgstr "Saison {0}" -#: apps/native/src/hooks/use-title-actions.ts:137 -#: apps/native/src/lib/title-actions.ts:124 +#: apps/native/src/hooks/use-title-actions.ts:121 +#: apps/native/src/lib/title-actions.ts:119 msgid "Season watched" -msgstr "" +msgstr "Saison visionnée" -#: apps/native/src/app/title/[id].tsx:536 +#: apps/native/src/app/title/[id].tsx:473 msgid "Seasons" -msgstr "" +msgstr "Saisons" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:497 -#: apps/web/src/routes/_app/settings.tsx:140 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/routes/_app/settings.tsx:131 msgid "Security" -msgstr "" +msgstr "Sécurité" -#: apps/web/src/components/landing-page.tsx:105 +#: apps/web/src/components/landing-page.tsx:106 msgid "Self-hosted movie & TV tracker" -msgstr "" +msgstr "Suivi de films et séries auto-hébergé" -#: apps/web/src/routes/_app/settings.tsx:121 +#: apps/web/src/routes/_app/settings.tsx:115 msgid "Server" -msgstr "" +msgstr "Serveur" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:452 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 msgid "Server Health" -msgstr "" +msgstr "État du serveur" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:380 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:364 msgid "Server URL" -msgstr "" +msgstr "URL du serveur" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 msgid "Set password" -msgstr "" +msgstr "Définir un mot de passe" -#: apps/native/src/components/settings/integration-configs.ts:111 -#: apps/native/src/components/settings/integration-configs.ts:129 -#: apps/web/src/components/settings/integration-configs.tsx:247 -#: apps/web/src/components/settings/integration-configs.tsx:287 +#: apps/native/src/components/settings/integration-configs.ts:106 +#: apps/native/src/components/settings/integration-configs.ts:124 +#: apps/web/src/components/settings/integration-configs.tsx:221 +#: apps/web/src/components/settings/integration-configs.tsx:258 msgid "Set your preferred quality profile and root folder" -msgstr "" +msgstr "Définissez votre profil de qualité et dossier racine préférés" -#: apps/native/src/components/header-avatar.tsx:63 -#: apps/web/src/components/nav-bar.tsx:250 -#: apps/web/src/components/nav-bar.tsx:292 -#: apps/web/src/components/settings/settings-shell.tsx:36 +#: apps/native/src/components/header-avatar.tsx:55 +#: apps/web/src/components/nav-bar.tsx:236 +#: apps/web/src/components/nav-bar.tsx:278 +#: apps/web/src/components/settings/settings-shell.tsx:30 msgid "Settings" -msgstr "" +msgstr "Paramètres" -#: apps/native/src/components/settings/integration-card.tsx:319 -#: apps/web/src/components/settings/integration-card.tsx:288 +#: apps/native/src/components/settings/integration-card.tsx:271 +#: apps/web/src/components/settings/integration-card.tsx:248 msgid "Setup instructions" -msgstr "" +msgstr "Instructions de configuration" -#: apps/web/src/routes/setup.tsx:98 +#: apps/web/src/routes/setup.tsx:95 msgid "Setup required" -msgstr "" +msgstr "Configuration requise" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Show less" -msgstr "" +msgstr "Afficher moins" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 msgid "Show more" -msgstr "" +msgstr "Afficher plus" -#: apps/web/src/components/auth-form.tsx:249 -#: apps/web/src/components/auth-form.tsx:283 +#: apps/web/src/components/auth-form.tsx:233 +#: apps/web/src/components/auth-form.tsx:264 msgid "Sign in" -msgstr "" +msgstr "Se connecter" -#: apps/native/src/app/(auth)/login.tsx:205 -#: apps/web/src/components/landing-page.tsx:167 +#: apps/native/src/app/(auth)/login.tsx:183 +#: apps/web/src/components/landing-page.tsx:168 msgid "Sign In" -msgstr "" +msgstr "Se connecter" #: apps/web/src/routes/_auth/register.tsx:45 msgid "Sign in instead" -msgstr "" +msgstr "Se connecter" -#: apps/native/src/app/(auth)/login.tsx:91 -#: apps/web/src/components/auth-form.tsx:119 +#: apps/native/src/app/(auth)/login.tsx:86 +#: apps/web/src/components/auth-form.tsx:116 msgid "Sign in to continue" -msgstr "" +msgstr "Connectez-vous pour continuer" #. placeholder {0}: authConfig.data?.oidcProviderName ?? "SSO" #. placeholder {0}: authConfig?.oidcProviderName || "SSO" -#: apps/native/src/app/(auth)/login.tsx:108 -#: apps/web/src/components/auth-form.tsx:145 +#: apps/native/src/app/(auth)/login.tsx:100 +#: apps/web/src/components/auth-form.tsx:142 msgid "Sign in with {0}" -msgstr "" +msgstr "Se connecter avec {0}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 -#: apps/native/src/components/header-avatar.tsx:87 -#: apps/web/src/components/nav-bar.tsx:262 -#: apps/web/src/components/settings/account-section.tsx:354 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:356 +#: apps/native/src/components/header-avatar.tsx:79 +#: apps/web/src/components/nav-bar.tsx:248 +#: apps/web/src/components/settings/account-section.tsx:328 msgid "Sign out" -msgstr "" +msgstr "Se déconnecter" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:209 -#: apps/native/src/components/header-avatar.tsx:70 -#: apps/native/src/components/header-avatar.tsx:73 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:204 +#: apps/native/src/components/header-avatar.tsx:62 +#: apps/native/src/components/header-avatar.tsx:65 msgid "Sign Out" -msgstr "" +msgstr "Se déconnecter" -#: apps/native/src/app/change-password.tsx:199 -#: apps/web/src/components/settings/account-section.tsx:499 +#: apps/native/src/app/change-password.tsx:193 +#: apps/web/src/components/settings/account-section.tsx:471 msgid "Sign out of other sessions" -msgstr "" +msgstr "Se déconnecter des autres sessions" -#: apps/web/src/components/settings/imports-section.tsx:922 +#: apps/web/src/components/settings/imports-section.tsx:880 msgid "Skipped" -msgstr "" +msgstr "Ignoré" #. placeholder {0}: data.latestVersion -#: apps/web/src/components/update-toast.tsx:19 +#: apps/web/src/components/update-toast.tsx:18 msgid "Sofa v{0} is available" -msgstr "" +msgstr "Sofa v{0} est disponible" #: apps/native/src/components/settings/integration-configs.ts:57 -#: apps/native/src/components/settings/integration-configs.ts:75 -#: apps/native/src/components/settings/integration-configs.ts:95 -#: apps/web/src/components/settings/integration-configs.tsx:86 -#: apps/web/src/components/settings/integration-configs.tsx:147 -#: apps/web/src/components/settings/integration-configs.tsx:208 +#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:133 +#: apps/web/src/components/settings/integration-configs.tsx:186 msgid "Sofa will automatically log movies and episodes when you finish watching them" -msgstr "" +msgstr "Sofa enregistrera automatiquement les films et épisodes lorsque vous aurez fini de les regarder" -#: apps/native/src/app/change-password.tsx:81 -#: apps/native/src/app/person/[id].tsx:213 -#: apps/web/src/components/settings/account-section.tsx:417 -#: apps/web/src/routes/__root.tsx:143 +#: apps/native/src/app/change-password.tsx:77 +#: apps/native/src/app/person/[id].tsx:182 +#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/routes/__root.tsx:140 msgid "Something went wrong" -msgstr "" +msgstr "Une erreur s'est produite" -#: apps/web/src/routes/_app/titles.$id.tsx:118 +#: apps/web/src/routes/_app/titles.$id.tsx:113 msgid "Something went wrong while loading this title. Please try again." -msgstr "" +msgstr "Une erreur s'est produite lors du chargement de ce titre. Veuillez réessayer." #: apps/native/src/lib/query-client.ts:33 -#: apps/web/src/lib/orpc/client.ts:14 +#: apps/web/src/lib/orpc/client.ts:15 msgid "Something went wrong…" -msgstr "" +msgstr "Une erreur s'est produite…" -#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/native/src/components/settings/integration-configs.ts:100 msgid "Sonarr List URL" -msgstr "" +msgstr "URL de liste Sonarr" #: apps/web/src/components/dashboard/stats-section.tsx:42 msgid "Start exploring" -msgstr "" +msgstr "Commencer à explorer" -#: apps/native/src/app/(tabs)/(home)/index.tsx:142 +#: apps/native/src/app/(tabs)/(home)/index.tsx:126 msgid "Start tracking movies and shows" -msgstr "" +msgstr "Commencer à suivre des films et séries" -#: apps/web/src/components/auth-form.tsx:117 +#: apps/web/src/components/auth-form.tsx:114 msgid "Start tracking your watches" -msgstr "" +msgstr "Commencez à suivre vos visionnages" -#: apps/web/src/components/settings/backup-schedule-section.tsx:388 +#: apps/web/src/components/settings/backup-schedule-section.tsx:347 msgid "Starting at" -msgstr "" +msgstr "À partir de" -#: apps/web/src/components/settings/imports-section.tsx:888 +#: apps/web/src/components/settings/imports-section.tsx:846 msgid "Starting import..." -msgstr "" +msgstr "Démarrage de l'importation..." -#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/hooks/use-title-actions.ts:64 msgid "Status updated" -msgstr "" +msgstr "Statut mis à jour" -#: apps/web/src/components/settings/system-health-section.tsx:595 +#: apps/web/src/components/settings/system-health-section.tsx:543 msgid "Storage" -msgstr "" +msgstr "Stockage" -#: apps/web/src/components/titles/title-availability.tsx:137 +#: apps/web/src/components/titles/title-availability.tsx:113 msgid "Stream" -msgstr "" +msgstr "Streaming" -#: apps/web/src/components/settings/backup-schedule-section.tsx:96 +#: apps/web/src/components/settings/backup-schedule-section.tsx:93 msgid "Sunday" -msgstr "" +msgstr "Dimanche" #. placeholder {0}: info.name -#: apps/web/src/components/settings/language-section.tsx:69 +#: apps/web/src/components/settings/language-section.tsx:59 msgid "Switch to {0}" -msgstr "" +msgstr "Passer à {0}" -#: apps/native/src/app/+not-found.tsx:30 +#: apps/native/src/app/+not-found.tsx:28 msgid "The page you're looking for doesn't exist." -msgstr "" +msgstr "La page que vous recherchez n'existe pas." -#: apps/web/src/routes/_app/people.$id.tsx:55 +#: apps/web/src/routes/_app/people.$id.tsx:53 msgid "The person you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "La personne que vous recherchez n'existe pas ou a peut-être été supprimée de la base de données." -#: apps/web/src/routes/_app/titles.$id.tsx:149 +#: apps/web/src/routes/_app/titles.$id.tsx:142 msgid "The title you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "Le titre que vous recherchez n'existe pas ou a peut-être été supprimé de la base de données." -#: apps/web/src/components/settings/imports-section.tsx:866 +#: apps/web/src/components/settings/imports-section.tsx:825 msgid "This may take a few minutes for large libraries. Please don't close this tab." -msgstr "" +msgstr "Cela peut prendre quelques minutes pour les grandes bibliothèques. Ne fermez pas cet onglet." -#: apps/web/src/components/dashboard/stats-display.tsx:146 +#: apps/web/src/components/dashboard/stats-display.tsx:135 msgid "This Month" -msgstr "" +msgstr "Ce mois-ci" -#: apps/web/src/routes/__root.tsx:104 +#: apps/web/src/routes/__root.tsx:101 msgid "This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay." -msgstr "" +msgstr "Cette page est restée sur le plancher de la salle de montage. Elle a peut-être été déplacée, supprimée, ou n'a jamais dépassé le stade du scénario." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:606 -#: apps/web/src/routes/_app/settings.tsx:75 -#: apps/web/src/routes/setup.tsx:187 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:557 +#: apps/web/src/routes/_app/settings.tsx:76 +#: apps/web/src/routes/setup.tsx:180 msgid "This product uses the TMDB API but is not endorsed or certified by TMDB." -msgstr "" +msgstr "Ce produit utilise l'API TMDB mais n'est pas approuvé ni certifié par TMDB." -#: apps/web/src/components/dashboard/stats-display.tsx:145 +#: apps/web/src/components/dashboard/stats-display.tsx:134 msgid "This Week" -msgstr "" +msgstr "Cette semaine" -#: apps/web/src/components/settings/danger-section.tsx:163 +#: apps/web/src/components/settings/danger-section.tsx:146 msgid "This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed." -msgstr "" +msgstr "Cela supprimera toutes les images TMDB en cache du disque. Les images seront re-téléchargées automatiquement selon les besoins." -#: apps/web/src/components/settings/danger-section.tsx:205 +#: apps/web/src/components/settings/danger-section.tsx:179 msgid "This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed." -msgstr "" +msgstr "Cela supprimera tous les titres ébauches non enrichis et toutes les images en cache du disque. Tout sera réimporté et re-téléchargé selon les besoins." -#: apps/web/src/components/settings/danger-section.tsx:120 +#: apps/web/src/components/settings/danger-section.tsx:112 msgid "This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again." -msgstr "" +msgstr "Cela supprimera les titres ébauches non enrichis qui ne sont dans aucune bibliothèque et nettoiera les enregistrements de personnes orphelines. Les titres supprimés seront réimportés s'ils sont consultés à nouveau." -#: apps/native/src/components/settings/integration-card.tsx:136 +#: apps/native/src/components/settings/integration-card.tsx:124 msgid "This will invalidate the current {label} URL. You'll need to update it in {label}." -msgstr "" +msgstr "Cela invalidera l'URL {label} actuelle. Vous devrez la mettre à jour dans {label}." -#: apps/web/src/components/titles/title-seasons.tsx:125 +#: apps/web/src/components/titles/title-seasons.tsx:119 msgid "This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons." -msgstr "" +msgstr "Cela marquera tous les épisodes de cette série comme visionnés. Vous pourrez annuler cela en démarquant des saisons individuelles." #. placeholder {0}: formatBackupDate(backup.createdAt) -#: apps/web/src/components/settings/backup-section.tsx:259 +#: apps/web/src/components/settings/backup-section.tsx:231 msgid "This will permanently delete the backup from <0>{0}. This cannot be undone." -msgstr "" +msgstr "Cela supprimera définitivement la sauvegarde du <0>{0}. Cette action est irréversible." -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:61 -#: apps/native/src/components/search/recently-viewed-list.tsx:35 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "This will remove all items from your history." -msgstr "" +msgstr "Cela supprimera tous les éléments de votre historique." -#: apps/web/src/components/settings/backup-restore-section.tsx:92 +#: apps/web/src/components/settings/backup-restore-section.tsx:86 msgid "This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore." -msgstr "" +msgstr "Cela remplacera toute votre base de données par le fichier téléchargé. Une sauvegarde de sécurité de vos données actuelles sera créée au préalable. Les sessions actives devront peut-être être actualisées après la restauration." -#: apps/web/src/components/dashboard/stats-display.tsx:147 +#: apps/web/src/components/dashboard/stats-display.tsx:136 msgid "This Year" -msgstr "" +msgstr "Cette année" -#: apps/web/src/components/settings/backup-schedule-section.tsx:100 +#: apps/web/src/components/settings/backup-schedule-section.tsx:97 msgid "Thursday" -msgstr "" +msgstr "Jeudi" -#: apps/web/src/components/settings/backup-schedule-section.tsx:390 +#: apps/web/src/components/settings/backup-schedule-section.tsx:349 msgid "Time:" -msgstr "" +msgstr "Heure :" -#: apps/native/src/app/title/[id].tsx:251 -#: apps/web/src/routes/_app/titles.$id.tsx:146 +#: apps/native/src/app/title/[id].tsx:235 +#: apps/web/src/routes/_app/titles.$id.tsx:139 msgid "Title not found" -msgstr "" +msgstr "Titre introuvable" -#: apps/native/src/components/settings/integration-configs.ts:131 -#: apps/web/src/components/settings/integration-configs.tsx:290 +#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/web/src/components/settings/integration-configs.tsx:261 msgid "Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)" -msgstr "" +msgstr "Les titres de votre liste de suivi Sofa seront automatiquement ajoutés au téléchargement lorsque Radarr interroge cette liste (toutes les 12 heures par défaut)" -#: apps/native/src/components/settings/integration-configs.ts:113 -#: apps/web/src/components/settings/integration-configs.tsx:250 +#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/web/src/components/settings/integration-configs.tsx:224 msgid "Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)" -msgstr "" +msgstr "Les titres de votre liste de suivi Sofa seront automatiquement ajoutés au téléchargement lorsque Sonarr interroge cette liste (toutes les 6 heures par défaut)" -#: apps/web/src/components/dashboard/stats-display.tsx:144 +#: apps/web/src/components/dashboard/stats-display.tsx:133 msgid "Today" -msgstr "" +msgstr "Aujourd'hui" -#: apps/web/src/components/settings/update-check-section.tsx:71 +#: apps/web/src/components/settings/update-check-section.tsx:62 msgid "Toggle automatic update checks" -msgstr "" +msgstr "Activer/désactiver les vérifications automatiques de mises à jour" -#: apps/web/src/components/settings/registration-section.tsx:69 +#: apps/web/src/components/settings/registration-section.tsx:62 msgid "Toggle open registration" -msgstr "" +msgstr "Activer/désactiver l'inscription ouverte" -#: apps/web/src/components/settings/backup-schedule-section.tsx:290 +#: apps/web/src/components/settings/backup-schedule-section.tsx:257 msgid "Toggle scheduled backups" -msgstr "" +msgstr "Activer/désactiver les sauvegardes planifiées" -#: apps/web/src/components/landing-page.tsx:131 +#: apps/web/src/components/landing-page.tsx:132 msgid "Track what you watch. Know what's next.<0/>Your library, your data, your rules." -msgstr "" +msgstr "Suivez ce que vous regardez. Sachez ce qui vient ensuite.<0/>Votre bibliothèque, vos données, vos règles." -#: apps/web/src/components/titles/trailer-dialog.tsx:37 -#: apps/web/src/components/titles/trailer-dialog.tsx:41 +#: apps/web/src/components/titles/trailer-dialog.tsx:38 +#: apps/web/src/components/titles/trailer-dialog.tsx:42 msgid "Trailer" -msgstr "" +msgstr "Bande-annonce" -#: apps/web/src/components/explore/hero-banner.tsx:78 +#: apps/web/src/components/explore/hero-banner.tsx:70 msgid "Trending today" -msgstr "" +msgstr "Tendance aujourd'hui" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:95 -#: apps/web/src/components/explore/explore-client.tsx:112 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:77 +#: apps/web/src/components/explore/explore-client.tsx:108 msgid "Trending Today" -msgstr "" +msgstr "Tendances du jour" -#: apps/web/src/components/settings/system-health-section.tsx:537 +#: apps/web/src/components/settings/system-health-section.tsx:488 msgid "Trigger job" -msgstr "" +msgstr "Déclencher la tâche" -#: apps/web/src/routes/__root.tsx:159 +#: apps/web/src/routes/__root.tsx:156 msgid "Try again" -msgstr "" +msgstr "Réessayer" -#: apps/web/src/components/settings/backup-schedule-section.tsx:98 +#: apps/web/src/components/settings/backup-schedule-section.tsx:95 msgid "Tuesday" -msgstr "" +msgstr "Mardi" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:98 -#: apps/web/src/components/explore/hero-banner.tsx:64 -#: apps/web/src/components/people/filmography-grid.tsx:60 -#: apps/web/src/components/titles/title-hero.tsx:153 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:59 +#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/web/src/components/titles/title-hero.tsx:148 msgid "TV" -msgstr "" +msgstr "Série" -#: apps/web/src/components/settings/system-health-section.tsx:334 +#: apps/web/src/components/settings/system-health-section.tsx:307 msgid "TV episodes" -msgstr "" +msgstr "Épisodes de séries" -#: apps/native/src/components/search/search-result-row.tsx:37 +#: apps/native/src/components/search/search-result-row.tsx:34 msgid "TV show" -msgstr "" +msgstr "Série TV" -#: apps/web/src/components/settings/system-health-section.tsx:656 +#: apps/web/src/components/settings/system-health-section.tsx:601 msgid "unknown" -msgstr "" +msgstr "inconnu" -#: apps/web/src/components/settings/backup-schedule-section.tsx:256 -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "unlimited" -msgstr "" +msgstr "illimité" -#: apps/web/src/components/settings/system-health-section.tsx:273 +#: apps/web/src/components/settings/system-health-section.tsx:253 msgid "Unreachable" -msgstr "" +msgstr "Inaccessible" -#: apps/web/src/components/titles/title-seasons.tsx:340 +#: apps/web/src/components/titles/title-seasons.tsx:318 msgid "Untitled" -msgstr "" +msgstr "Sans titre" -#: apps/web/src/components/titles/title-seasons.tsx:221 +#: apps/web/src/components/titles/title-seasons.tsx:205 msgid "Unwatch all" -msgstr "" +msgstr "Tout démarquer" #. placeholder {0}: season.name ?? t`Season ${season.seasonNumber}` -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Unwatched all of {0}" -msgstr "" +msgstr "Tout démarqué de {0}" -#: apps/web/src/components/titles/use-title-actions.ts:174 +#: apps/web/src/components/titles/use-title-actions.ts:156 msgid "Unwatched S{seasonNum} E{epNum}" -msgstr "" +msgstr "Démarqué S{seasonNum} E{epNum}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:79 -#: apps/web/src/components/dashboard/continue-watching-card.tsx:77 +#: apps/native/src/components/titles/continue-watching-banner.tsx:72 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:63 msgid "Up next" -msgstr "" +msgstr "Suivant" #. placeholder {0}: updateCheck.data.updateCheck.latestVersion -#: apps/native/src/app/(tabs)/(settings)/index.tsx:528 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:496 msgid "Update available: {0}" -msgstr "" +msgstr "Mise à jour disponible : {0}" -#: apps/web/src/components/settings/system-health-section.tsx:337 +#: apps/web/src/components/settings/system-health-section.tsx:310 msgid "Update check" -msgstr "" +msgstr "Vérification des mises à jour" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks disabled" -msgstr "" +msgstr "Vérifications des mises à jour désactivées" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks enabled" -msgstr "" +msgstr "Vérifications des mises à jour activées" -#: apps/web/src/components/settings/account-section.tsx:84 +#: apps/web/src/components/settings/account-section.tsx:76 msgid "Update failed" -msgstr "" +msgstr "Mise à jour échouée" -#: apps/web/src/components/settings/account-section.tsx:509 +#: apps/web/src/components/settings/account-section.tsx:481 msgid "Update password" -msgstr "" +msgstr "Mettre à jour le mot de passe" -#: apps/native/src/app/change-password.tsx:218 +#: apps/native/src/app/change-password.tsx:212 msgid "Update Password" -msgstr "" +msgstr "Mettre à jour le mot de passe" -#: apps/web/src/components/settings/backup-restore-section.tsx:134 -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Upload" -msgstr "" +msgstr "Télécharger" -#: apps/web/src/components/settings/backup-restore-section.tsx:62 +#: apps/web/src/components/settings/backup-restore-section.tsx:60 msgid "Upload a .db file to replace the current database. A safety backup is created first." -msgstr "" +msgstr "Téléchargez un fichier .db pour remplacer la base de données actuelle. Une sauvegarde de sécurité est créée au préalable." #. placeholder {0}: config.accept #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:637 +#: apps/web/src/components/settings/imports-section.tsx:603 msgid "Upload a {0} export from your {1} account settings." -msgstr "" +msgstr "Téléchargez un export {0} depuis les paramètres de votre compte {1}." -#: apps/web/src/components/settings/imports-section.tsx:634 +#: apps/web/src/components/settings/imports-section.tsx:600 msgid "Upload export file" -msgstr "" +msgstr "Télécharger le fichier d'exportation" -#: apps/web/src/components/settings/account-section.tsx:112 +#: apps/web/src/components/settings/account-section.tsx:104 msgid "Upload failed" -msgstr "" +msgstr "Téléchargement échoué" -#: apps/web/src/components/settings/account-section.tsx:241 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Upload picture" -msgstr "" +msgstr "Télécharger une photo" -#: apps/web/src/components/settings/account-section.tsx:200 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Upload profile picture" -msgstr "" +msgstr "Télécharger une photo de profil" -#: apps/native/src/components/settings/integration-card.tsx:129 +#: apps/native/src/components/settings/integration-card.tsx:117 msgid "URL copied to clipboard" -msgstr "" +msgstr "URL copiée dans le presse-papiers" -#: apps/web/src/components/update-toast.tsx:24 +#: apps/web/src/components/update-toast.tsx:23 msgid "View release" -msgstr "" +msgstr "Voir la version" -#: apps/web/src/components/settings/imports-section.tsx:699 +#: apps/web/src/components/settings/imports-section.tsx:663 msgid "Waiting for authorization..." -msgstr "" +msgstr "En attente d'autorisation..." -#: apps/web/src/components/settings/imports-section.tsx:823 +#: apps/web/src/components/settings/imports-section.tsx:785 msgid "Warnings" -msgstr "" +msgstr "Avertissements" #. placeholder {0}: result.warnings.length -#: apps/web/src/components/settings/imports-section.tsx:948 +#: apps/web/src/components/settings/imports-section.tsx:905 msgid "Warnings ({0})" -msgstr "" +msgstr "Avertissements ({0})" -#: apps/web/src/components/titles/title-seasons.tsx:202 +#: apps/web/src/components/titles/title-seasons.tsx:189 msgid "Watch all" -msgstr "" +msgstr "Tout marquer comme visionné" -#: apps/web/src/components/settings/imports-section.tsx:801 +#: apps/web/src/components/settings/imports-section.tsx:763 msgid "Watch history" -msgstr "" +msgstr "Historique de visionnage" -#: apps/web/src/components/titles/title-availability.tsx:59 +#: apps/web/src/components/titles/title-availability.tsx:46 msgid "Watch on {name}" -msgstr "" +msgstr "Regarder sur {name}" -#: apps/web/src/components/titles/use-title-actions.ts:298 -#: apps/web/src/components/titles/use-title-actions.ts:307 +#: apps/web/src/components/titles/use-title-actions.ts:277 +#: apps/web/src/components/titles/use-title-actions.ts:286 msgid "Watched all of {seasonLabel}" -msgstr "" +msgstr "Tout visionné de {seasonLabel}" -#: apps/native/src/lib/title-actions.ts:123 +#: apps/native/src/lib/title-actions.ts:119 msgid "Watched all of {seasonName}" -msgstr "" +msgstr "Tout visionné de {seasonName}" -#: apps/web/src/components/titles/use-title-actions.ts:220 -#: apps/web/src/components/titles/use-title-actions.ts:229 +#: apps/web/src/components/titles/use-title-actions.ts:199 +#: apps/web/src/components/titles/use-title-actions.ts:208 msgid "Watched S{seasonNum} E{epNum}" -msgstr "" +msgstr "Visionné S{seasonNum} E{epNum}" -#: apps/native/src/components/titles/status-action-button.tsx:42 -#: apps/web/src/components/title-card.tsx:72 -#: apps/web/src/components/titles/status-button.tsx:19 +#: apps/native/src/components/titles/status-action-button.tsx:43 +#: apps/web/src/components/title-card.tsx:69 +#: apps/web/src/components/titles/status-button.tsx:14 msgid "Watching" -msgstr "" +msgstr "En cours" -#: apps/native/src/components/titles/status-action-button.tsx:82 -#: apps/web/src/components/settings/imports-section.tsx:781 -#: apps/web/src/components/settings/imports-section.tsx:807 -#: apps/web/src/components/titles/status-button.tsx:55 +#: apps/native/src/components/titles/status-action-button.tsx:78 +#: apps/web/src/components/settings/imports-section.tsx:743 +#: apps/web/src/components/settings/imports-section.tsx:769 +#: apps/web/src/components/titles/status-button.tsx:49 msgid "Watchlist" -msgstr "" +msgstr "Liste de suivi" -#: apps/native/src/components/titles/status-action-button.tsx:40 +#: apps/native/src/components/titles/status-action-button.tsx:41 msgid "Watchlisted" -msgstr "" +msgstr "Dans la liste de suivi" -#: apps/native/src/components/settings/integration-configs.ts:50 -#: apps/native/src/components/settings/integration-configs.ts:67 -#: apps/native/src/components/settings/integration-configs.ts:85 +#: apps/native/src/components/settings/integration-configs.ts:51 +#: apps/native/src/components/settings/integration-configs.ts:66 +#: apps/native/src/components/settings/integration-configs.ts:82 msgid "Webhook URL" -msgstr "" +msgstr "URL de webhook" -#: apps/web/src/components/settings/backup-schedule-section.tsx:99 +#: apps/web/src/components/settings/backup-schedule-section.tsx:96 msgid "Wednesday" -msgstr "" +msgstr "Mercredi" -#: apps/web/src/components/auth-form.tsx:112 -#: apps/web/src/components/dashboard/welcome-header.tsx:10 +#: apps/web/src/components/auth-form.tsx:110 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back" -msgstr "" +msgstr "Bon retour" -#: apps/web/src/components/dashboard/welcome-header.tsx:8 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back, {name}" -msgstr "" +msgstr "Bon retour, {name}" -#: apps/native/src/app/title/[id].tsx:483 -#: apps/web/src/components/titles/title-availability.tsx:154 +#: apps/native/src/app/title/[id].tsx:430 +#: apps/web/src/components/titles/title-availability.tsx:130 msgid "Where to Watch" -msgstr "" +msgstr "Où regarder" -#: apps/web/src/components/titles/title-availability.tsx:141 +#: apps/web/src/components/titles/title-availability.tsx:117 msgid "With Ads" -msgstr "" +msgstr "Avec publicités" -#: apps/web/src/components/people/person-hero.tsx:75 +#: apps/web/src/components/people/person-hero.tsx:73 msgid "Writer" -msgstr "" +msgstr "Scénariste" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:386 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "You'll be signed out to change the server URL." -msgstr "" +msgstr "Vous serez déconnecté pour modifier l'URL du serveur." #. placeholder {0}: data.currentVersion -#: apps/web/src/components/update-toast.tsx:20 +#: apps/web/src/components/update-toast.tsx:19 msgid "You're running v{0}." -msgstr "" +msgstr "Vous utilisez la v{0}." -#: apps/web/src/components/settings/imports-section.tsx:678 +#: apps/web/src/components/settings/imports-section.tsx:642 msgid "Your code:" -msgstr "" +msgstr "Votre code :" -#: apps/native/src/app/(tabs)/(home)/index.tsx:141 +#: apps/native/src/app/(tabs)/(home)/index.tsx:125 #: apps/web/src/components/dashboard/stats-section.tsx:32 msgid "Your library is empty" -msgstr "" +msgstr "Votre bibliothèque est vide" -#: apps/native/src/app/(auth)/register.tsx:134 +#: apps/native/src/app/(auth)/register.tsx:121 msgid "Your name" -msgstr "" +msgstr "Votre nom" diff --git a/packages/i18n/src/po/fr.ts b/packages/i18n/src/po/fr.ts index ef7e47e..cc2b468 100644 --- a/packages/i18n/src/po/fr.ts +++ b/packages/i18n/src/po/fr.ts @@ -1 +1 @@ -/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Saturday\"],\"+6i0lS\":[\"Retrieving your watch history, watchlist, and ratings...\"],\"+Cv+V9\":[\"Remove from library\"],\"+JkEpu\":[\"This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay.\"],\"+K0AvT\":[\"Disconnect\"],\"+N0l5/\":[\"Connected to <0>\",[\"serverHost\"],\". Tap to change.\"],\"+gLHYi\":[\"Failed to load title\"],\"+j1ex/\":[\"Failed to remove from library\"],\"+nF1ZO\":[\"Remove Photo\"],\"/+6dvC\":[\"Errors (\",[\"0\"],\")\"],\"/BBXeA\":[\"Connecting to server...\"],\"/DwR+n\":[\"Creating…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Watch all\"],\"/gQXGv\":[\"Failed to update status\"],\"/nT6AE\":[\"New password\"],\"/sHc1/\":[\"Update check\"],\"0+dyau\":[\"Failed to update retention setting\"],\"0BFJKK\":[\"Authorization was denied. Please try again.\"],\"0GHb20\":[\"Purge metadata cache?\"],\"0IBW21\":[\"Failed to purge caches\"],\"0gH/sc\":[\"Remove profile picture\"],\"1+P9RR\":[\"Switch to \",[\"0\"]],\"12cc1j\":[\"Watching\"],\"12lVOl\":[\"Self-hosted movie & TV tracker\"],\"1B4z0M\":[\"Filmography\"],\"1J4Ek0\":[\"Automatically back up your database on a schedule\"],\"1JhxXW\":[\"Episode \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Import options\"],\"1Qz4uG\":[\"Enable the \\\"Playback\\\" event category\"],\"1hMWR6\":[\"Create account\"],\"1jHIjh\":[\"Watched all of \",[\"seasonName\"]],\"1vSYsG\":[\"Download backup\"],\"1wL1tj\":[\"TV show\"],\"2FletP\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" person\"],\"other\":[\"#\",\" persons\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\" (\",[\"freed\"],\" freed)\"],\"2Fsd9r\":[\"This Month\"],\"2MPcep\":[\"Import complete\"],\"2Mu33Z\":[\"Cache management\"],\"2POOFK\":[\"Free\"],\"2Pt2NY\":[\"This will remove all items from your history.\"],\"2fCpt5\":[\"Return home\"],\"2pPBp6\":[\"Trending today\"],\"39y5bn\":[\"Friday\"],\"3Blefz\":[\"Ratings\"],\"3JTlG8\":[\"Recent Searches\"],\"3Jy8bM\":[\"Movies \",[\"select\"]],\"3L9OuQ\":[\"Episode \",[\"0\"]],\"3T8ziB\":[\"Create an account\"],\"3hELxX\":[\"Enter your Sofa server URL to get started\"],\"4fxLkp\":[\"Open Sonarr, go to <0>Settings > Import Lists\"],\"4kpBqM\":[\"Last event \",[\"0\"]],\"4uUjVO\":[\"Producer\"],\"4x+A56\":[\"Anonymous usage reporting\"],\"5IShvp\":[\"Import \",[\"totalItems\"],\" items\"],\"5IYJSv\":[\"Explore titles\"],\"5Y4mym\":[\"Import from \",[\"0\"]],\"5ZzgbQ\":[\"Connect \",[\"0\"]],\"5fEnbK\":[\"Failed to update scheduled backup setting\"],\"5lWFkC\":[\"Sign in\"],\"5v9C16\":[\"Connected to \",[\"source\"]],\"623bR4\":[\"Failed to trigger job\"],\"6HN0yh\":[\"Open Plex, go to Settings > Webhooks\"],\"6TNjOJ\":[\"Failed to update rating\"],\"6TfUy6\":[\"last \",[\"value\"]],\"6V3Ea3\":[\"Copied\"],\"6YtxFj\":[\"Name\"],\"6exX+8\":[\"Regenerate\"],\"6gRgw8\":[\"Retry\"],\"6lGV3K\":[\"Show less\"],\"76++pR\":[\"Warnings\"],\"77DIAu\":[\"Go to Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Failed\"],\"7D50KC\":[[\"label\"],\" disconnected\"],\"7GfM5w\":[\"Recently Viewed\"],\"7L01XJ\":[\"Actions\"],\"7eMo+U\":[\"Go Home\"],\"7p5kLi\":[\"Dashboard\"],\"85eoJ1\":[\"Schedule updated\"],\"8B9E2D\":[\"Day:\"],\"8YwF1J\":[\"Go to <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Password\"],\"8tjQCz\":[\"Explore\"],\"8vNtLy\":[\"Paste the Radarr URL above into the List URL field\"],\"8wYDMp\":[\"Already have an account?\"],\"9AE3vb\":[\"Open Plex, go to <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"Import is still running in the background. Check back later.\"],\"9NyAH9\":[\"Skipped\"],\"9Xhrps\":[\"Failed to connect\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Welcome back\"],\"9rG25a\":[\"Server URL\"],\"A+0rLe\":[\"Marked as completed\"],\"AOHgZp\":[\"Episodes\"],\"AOddWK\":[\"Connect \",[\"label\"]],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Environment\"],\"Acf6vF\":[\"Save name\"],\"AdoUfN\":[\"Failed to add to watchlist\"],\"AeXO77\":[\"Account\"],\"AjtYj0\":[\"On Watchlist\"],\"Avee+B\":[\"Failed to update name\"],\"B2R3xD\":[\"Toggle scheduled backups\"],\"BEVzjL\":[\"Import failed\"],\"BQnS5I\":[\"Open \",[\"source\"],\" to enter code\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup\"],\"other\":[\"backups\"]}],\" stored\"],\"BpttUI\":[\"Trending Today\"],\"BrrIs8\":[\"Storage\"],\"BskWMl\":[\"Unreachable\"],\"BzEFor\":[\"or\"],\"CGDHFb\":[\"Add a <0>Generic Destination and paste the URL above\"],\"CGExDN\":[\"Failed to purge image cache\"],\"CHeXFE\":[\"Status updated\"],\"CKyk7Q\":[\"Go back\"],\"CaB/+I\":[\"Welcome back, \",[\"name\"]],\"CodnUh\":[\"Removed from library\"],\"CpzGJY\":[\"This may take a few minutes for large libraries. Please don't close this tab.\"],\"CuPxpd\":[\"Requires an active <0>Plex Pass<1/> subscription.\"],\"CzBN6D\":[\"Start exploring\"],\"D+R2Xs\":[\"Starting import...\"],\"D3C4Yx\":[\"Current password is required\"],\"DBC3t5\":[\"Sunday\"],\"DI4lqs\":[\"Person not found\"],\"DKBbJf\":[\"Added \\\"\",[\"titleName\"],\"\\\" to watchlist\"],\"DPfwMq\":[\"Done\"],\"DZse/o\":[\"Add a \\\"Generic Destination\\\" and paste the URL above\"],\"E/QGRL\":[\"Disabled\"],\"E6nRW7\":[\"Copy URL\"],\"EWQlBH\":[\"Your library is empty\"],\"EWaCfj\":[\"Enter your current password and choose a new one.\"],\"Eeo/Gy\":[\"Failed to update setting\"],\"Efn6WU\":[\"This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed.\"],\"Etp5if\":[\"Finished importing from \",[\"source\"],\".\"],\"F006BN\":[\"Import from \",[\"source\"]],\"FNvDMc\":[\"This Week\"],\"FWSp+7\":[\"Enter the code below on \",[\"source\"],\"'s website to authorize Sofa.\"],\"FXN0ro\":[\"Recommendations\"],\"FaU7Ag\":[\"Enable the \\\"Playback Stop\\\" notification type\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Actor\"],\"FwRqjE\":[\"Image cache and backup disk usage\"],\"G00fgM\":[\"last \",[\"n\"]],\"G3myU+\":[\"Tuesday\"],\"GcCthe\":[\"In Library\"],\"Gf39AA\":[[\"0\"],\" triggered\"],\"GnhfWw\":[\"Toggle automatic update checks\"],\"GptGxg\":[\"Change password\"],\"GqTZ+S\":[\"Rated \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"GrdN/F\":[\"Caught up — marked \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" as watched\"],\"H4B5LG\":[\"This product uses the TMDB API but is not endorsed or certified by TMDB.\"],\"HBRd5n\":[\"Season \",[\"0\"]],\"HD+aQ7\":[\"Database backups\"],\"HG+31u\":[\"Purge all caches?\"],\"Haz+72\":[\"This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed.\"],\"HbReP5\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as completed\"],\"Hg6o8v\":[\"Refresh system health\"],\"HmEjnC\":[\"Last event \",[\"timeAgo\"]],\"HvDfH/\":[\"Imported\"],\"I89uD4\":[\"Restoring…\"],\"IRoxQm\":[\"Registration closed\"],\"IS0nrP\":[\"Create Account\"],\"IY9rQ0\":[\"Free up disk space by clearing cached metadata and images\"],\"IrC12v\":[\"Application\"],\"J28zul\":[\"Connecting...\"],\"J64cFL\":[\"Library refresh\"],\"JKmmmN\":[\"Added to watchlist\"],\"JN0f/Y\":[\"Connect to TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirm new password\"],\"JRadFJ\":[\"Start tracking your watches\"],\"JSwq8t\":[\"New account creation is currently disabled.\"],\"JY5Oyv\":[\"Database\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Connecting…\"],\"JwFbe8\":[\"TV\"],\"KDw4GX\":[\"Try again\"],\"KG6681\":[\"Episode watched\"],\"KIS/Sd\":[\"Sign out of other sessions\"],\"KK0ghs\":[\"Image cache\"],\"KVAoFR\":[\"unlimited\"],\"KcXJuc\":[\"Purging...\"],\"KhtG3o\":[\"Update Password\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}]],\"KmWyx0\":[\"Job\"],\"KoF0x6\":[\"age \",[\"age\"]],\"Ksiej9\":[\"Requires an active Plex Pass subscription.\"],\"Kx9NEt\":[\"Invalid token\"],\"Lk6Jb/\":[\"Last polled \",[\"timeAgo\"]],\"LmEEic\":[\"Waiting for authorization...\"],\"LqKH42\":[\"Connect with \",[\"0\"]],\"Lrpjji\":[\"Disconnect \",[\"label\"]],\"Lu6Udx\":[\"Click \\\"+\\\" and select \\\"Custom Lists\\\"\"],\"MDoX++\":[\"Sonarr List URL\"],\"MRBlCJ\":[\"Failed to unmark some episodes\"],\"MUO7w9\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as watched\"],\"MZbQHL\":[\"No results found.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Authorize Sofa to read your \",[\"0\"],\" library. No password shared.\"],\"N40H+G\":[\"All\"],\"N6SFhC\":[\"Sign in instead\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" is available\"],\"N9RF2M\":[\"Click \\\"Add Webhook\\\" and paste the URL above\"],\"NBo4z0\":[\"Click <0>+ and select <1>Custom Lists\"],\"NICUmW\":[\"Director\"],\"NQzPoO\":[\"New backup\"],\"NSxl1l\":[\"More Settings\"],\"NVF43p\":[\"Time:\"],\"NdPMwS\":[\"In Your Library\"],\"NgaPSG\":[\"Failed to update schedule\"],\"O3oNi5\":[\"Email\"],\"OBcj5W\":[\"This will invalidate the current \",[\"label\"],\" URL. You'll need to update it in \",[\"label\"],\".\"],\"OL8hbM\":[\"New password must be at least 8 characters\"],\"ONWvwQ\":[\"Upload\"],\"OPFjyX\":[\"Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog\"],\"OW/+RD\":[\"Watch history\"],\"OZdaTZ\":[\"Person\"],\"OvO76u\":[\"Back to Login\"],\"OvdFIZ\":[\"Season watched\"],\"P2FLLe\":[\"View release\"],\"PBdLfg\":[\"No titles found for this genre.\"],\"PQ3qDa\":[\"Fetching your library data from \",[\"source\"],\"...\"],\"PjNoxI\":[\"Scheduled backup\"],\"Pn2B7/\":[\"Current password\"],\"PnEbL/\":[\"Rated \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"Pwqkdw\":[\"Loading…\"],\"Py87xY\":[\"Authorization succeeded but failed to fetch your library. Please try again.\"],\"Q3MPWA\":[\"Update password\"],\"QHcLEN\":[\"Connected\"],\"QK4UIx\":[\"Mark Watched\"],\"Qjlym2\":[\"Failed to create account\"],\"Qm1NmK\":[\"OR\"],\"Qoq+GP\":[\"Read more\"],\"QphVZW\":[\"Can't reach server\"],\"QqLJHH\":[\"This Year\"],\"R0yu2l\":[\"Catch up\"],\"R4YBui\":[\"Search for movies and TV shows to start tracking\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"RIR15/\":[\"Radarr List URL\"],\"RLe7Vk\":[\"Checking…\"],\"ROq8cl\":[\"Failed to parse file\"],\"RQq8Si\":[\"Registration opened\"],\"S0soqb\":[\"Failed to remove profile picture\"],\"S1McZh\":[\"Failed to upload avatar\"],\"S2ble5\":[[\"0\"],\" movies, \",[\"1\"],\" episodes\"],\"S2qPRR\":[\"Search movies & TV shows…\"],\"SDND4q\":[\"Not configured\"],\"SFdAk9\":[\"Unwatched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Unwatch all\"],\"SbS+Bm\":[\"Regenerate URL\"],\"SlfejT\":[\"Error\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"Up next\"],\"SyPRjk\":[\"Sofa will automatically log movies and episodes when you finish watching them\"],\"T0/7WG\":[\"Next backup \",[\"distance\"]],\"TEaX6q\":[\"Backup deleted\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Profile picture removed\"],\"TqyQQS\":[\"Enable the <0>Playback event category\"],\"Tz0i8g\":[\"Settings\"],\"U+FxtW\":[\"Track what you watch. Know what's next.<0/>Your library, your data, your rules.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Toggle open registration\"],\"UDMjsP\":[\"Quick Actions\"],\"UmQ6Fe\":[\"Purge image cache?\"],\"UtDm3q\":[\"URL copied to clipboard\"],\"V1Kh9Z\":[\"Episodes \",[\"select\"]],\"V6uzvC\":[\"More Like This\"],\"V9CuQ+\":[\"Connect to \",[\"source\"]],\"VAcXNz\":[\"Wednesday\"],\"VKyhZK\":[\"Title not found\"],\"VQvpro\":[\"Paste the Sonarr URL above into the List URL field\"],\"VhMDMg\":[\"Change Password\"],\"Vx0ayx\":[\"Failed to mark some episodes\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recommended\"],\"WMCwmR\":[\"Check for updates\"],\"WP48q2\":[\"Image Cache\"],\"WT1Ibn\":[\"Last run\"],\"Wb3E4g\":[\"Run now\"],\"WgF2UQ\":[\"You're running v\",[\"0\"],\".\"],\"WtWhSi\":[\"Rating removed\"],\"Wy/3II\":[\"Last polled \",[\"0\"]],\"XFCSYs\":[\"Cast\"],\"XN23JY\":[\"This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again.\"],\"XZwihE\":[\"Ready — nothing received yet\"],\"XjTduw\":[\"Upload picture\"],\"YEGzVq\":[\"Failed to connect \",[\"label\"]],\"YErf89\":[\"Failed to purge metadata cache\"],\"YQ768h\":[\"Scene not found\"],\"YiRsXK\":[\"Clear Recently Viewed?\"],\"Yjp1zf\":[\"Don't have a server?\"],\"YqMfa9\":[\"Review what was found and choose what to import.\"],\"ZGUYm0\":[\"Ready — not polled yet\"],\"ZQKLI1\":[\"Danger Zone\"],\"ZVZUoU\":[[\"0\"],\" cached images\"],\"ZWTQ81\":[\"Watch on \",[\"name\"]],\"a3LDKx\":[\"Security\"],\"aLBUiR\":[\"Keeping <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" backups.\"],\"aM0+kY\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" stale title\"],\"other\":[\"#\",\" stale titles\"]}],\" and \",[\"1\",\"plural\",{\"one\":[\"#\",\" orphaned person\"],\"other\":[\"#\",\" orphaned persons\"]}]],\"aO1AxG\":[\"Episode unwatched\"],\"aV/hDI\":[\"Failed to disconnect \",[\"label\"]],\"acbSg0\":[\"Double tap to filter by \",[\"label\"]],\"agE7k4\":[\"Rated \",[\"stars\",\"plural\",{\"one\":[\"#\",\" star\"],\"other\":[\"#\",\" stars\"]}]],\"alPRaV\":[\"Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)\"],\"aourBv\":[\"Scheduled backups enabled\"],\"apLLSU\":[\"Are you sure you want to sign out?\"],\"atc9MA\":[\"Open Emby, go to <0>Settings > Webhooks\"],\"auVUJO\":[\"Restore database?\"],\"ayqfr4\":[[\"label\"],\" URL regenerated\"],\"b/8KCH\":[\"This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons.\"],\"b3Thhd\":[\"Upload failed\"],\"b5DFtH\":[\"Set password\"],\"bHYIks\":[\"Sign Out\"],\"bITrbE\":[\"Purge all\"],\"bNmdjU\":[\"Watchlist\"],\"bTRwag\":[\"Remove from Library\"],\"bXMotV\":[\"Marked as watched\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Page Not Found\"],\"c1ssjI\":[\"Importing from \",[\"source\"]],\"c3b0B0\":[\"Get Started\"],\"c4b9Dm\":[\"No results for \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Go to Dashboard\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" ratings\"],\"cnGeoo\":[\"Delete\"],\"cpE88+\":[\"Create your account\"],\"d/6MoL\":[\"Manage your account and preferences\"],\"dA7BWh\":[\"Requires Emby Server 4.7.9+ and an active Emby Premiere license.\"],\"dEgA5A\":[\"Cancel\"],\"dTZwve\":[\"Marked all episodes as watched\"],\"dUCJry\":[\"Newest\"],\"ddwpAr\":[\"Warnings (\",[\"0\"],\")\"],\"e/ToF5\":[\"Sign in with \",[\"0\"]],\"e9sZMS\":[\"This will permanently delete the backup from <0>\",[\"0\"],\". This cannot be undone.\"],\"eFRooE\":[\"Last run failed\"],\"eM39Om\":[\"Watched all of \",[\"seasonLabel\"]],\"eZjYb8\":[\"Writer\"],\"ecUA8p\":[\"Today\"],\"evBxZy\":[\"Where to Watch\"],\"ezDa1h\":[\"Open docs\"],\"f+m696\":[\"An unexpected error occurred while loading this page. You can try again or head back to the dashboard.\"],\"f/AKdU\":[\"Are you sure you want to disconnect \",[\"label\"],\"? The current URL will stop working.\"],\"f7ax8J\":[\"Open in browser…\"],\"fMPkxb\":[\"Show more\"],\"fNMqNn\":[\"Popular TV Shows\"],\"fObVvy\":[\"Profile picture updated\"],\"fRettQ\":[[\"0\"],\" items\"],\"fUDRF9\":[\"Watchlisted\"],\"fcWrnU\":[\"Sign out\"],\"fgLNSM\":[\"Register\"],\"fsAEqk\":[\"Continue Watching\"],\"fzAeQI\":[\"Registering on \",[\"serverHost\"]],\"g+gBfk\":[\"Parsing...\"],\"g4JYff\":[\"Imported \",[\"0\"],\" items from \",[\"1\"]],\"gKtb5i\":[\"Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)\"],\"gaIAMq\":[\"Remove picture\"],\"gbEEMp\":[\"Delete backup\"],\"gcNLi0\":[\"Update checks enabled\"],\"gmB6oO\":[\"Schedule\"],\"h/T5Yb\":[\"Open registration\"],\"h4yKYk\":[\"Next run\"],\"h7MgpO\":[\"Keyboard Shortcuts\"],\"hTXYdY\":[\"Failed to create backup\"],\"hXYY5Q\":[\"Unwatched all of \",[\"0\"]],\"he3ygx\":[\"Copy\"],\"hjGupC\":[\"Lost connection to import. Check status in settings.\"],\"hlqjFc\":[\"In library\"],\"hou0tP\":[\"Stream\"],\"hty0d5\":[\"Monday\"],\"i0qMbr\":[\"Home\"],\"i9rcQ/\":[\"Movies\"],\"iGma9e\":[\"Update failed\"],\"iSLIjg\":[\"Connect\"],\"iWv3ck\":[\"Failed to catch up\"],\"iXZ09g\":[\"Mark as Completed\"],\"id08cd\":[\"Watched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Add to Library\"],\"ihn4zD\":[\"Search…\"],\"itDEco\":[\"Already have an account? Sign in\"],\"itheEn\":[\"With Ads\"],\"iwCRIF\":[\"You'll be signed out to change the server URL.\"],\"j5GBIy\":[\"Open Radarr, go to Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" backups · last <0/>\"],\"jB3sfe\":[\"Manual backup\"],\"jFnMJ8\":[\"Double tap to clear this filter\"],\"jQsPwL\":[\"Scheduled backups disabled\"],\"jSjGeu\":[[\"0\"],\" items have no external IDs and will be resolved by title search, which may be less accurate.\"],\"jX6Gzg\":[\"This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore.\"],\"jiHVUy\":[\"Pre-restore backup\"],\"k6c41p\":[\"Background jobs\"],\"kBDOjB\":[\"Backup schedule\"],\"kkDQ8m\":[\"Thursday\"],\"klOeIX\":[\"Failed to change password\"],\"ks3XeZ\":[\"Open Sonarr, go to Settings > Import Lists\"],\"kvuCtu\":[\"Something went wrong while loading this title. Please try again.\"],\"kx0s+n\":[\"Results\"],\"l2wcoS\":[\"Last run succeeded\"],\"l3s5ri\":[\"Import\"],\"lCF0wC\":[\"Refresh\"],\"lJ1yo4\":[\"Failed to sign in\"],\"lVqzRx\":[\"Click <0>Add Webhook and paste the URL above\"],\"lXkUEV\":[\"Availability\"],\"lcLe89\":[\"Search for movies, TV shows, or run commands\"],\"lfVyvz\":[\"Add to Watchlist\"],\"llDXYJ\":[\"Backups\"],\"llkZR0\":[\"Could not load integrations\"],\"ln9/n9\":[\"Don't have an account?\"],\"lpIMne\":[\"Passwords do not match\"],\"lqY3WY\":[\"Change Server\"],\"luoodD\":[\"Setup required\"],\"m5WhJy\":[\"Automatic update checks\"],\"mIx58S\":[\"Purge images\"],\"mYBORk\":[\"Movie\"],\"ml9cU0\":[\"Failed to regenerate \",[\"label\"],\" URL\"],\"mqwkjd\":[\"Health status\"],\"mqxHH7\":[\"Go to Explore\"],\"mzI/c+\":[\"Download\"],\"n1ekoW\":[\"Sign In\"],\"n3Pzd7\":[\"Backup created\"],\"nBHvPL\":[\"Cancel editing\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" image\"],\"other\":[\"#\",\" images\"]}]],\"nO0Qnj\":[\"Your code:\"],\"nRP1xx\":[\"Need more help?\"],\"nV1LjT\":[\"Enable the <0>Playback Stop notification type\"],\"nVsE67\":[\"Mark as Watching\"],\"nZ7lF1\":[\"Device code expired. Please try again.\"],\"nbfdhU\":[\"Integrations\"],\"nbmpf9\":[\"Purge metadata\"],\"nnKJTm\":[\"Failed to mark all episodes as watched\"],\"nszbQG\":[\"No backups yet\"],\"nuh/Wq\":[\"Webhook URL\"],\"nwtY4N\":[\"Something went wrong\"],\"oAIA3w\":[\"Search for movies, shows, or people\"],\"oC8IMh\":[\"Search movies, shows, people...\"],\"oNvZcA\":[\"Episodes this week\"],\"oXq+Wr\":[[\"label\"],\" connected\"],\"ogtYkT\":[\"Password updated\"],\"ojtedN\":[\"Open Radarr, go to <0>Settings > Import Lists\"],\"olMi35\":[\"Recommended for You\"],\"p+PZEl\":[\"Here's what's happening with your library\"],\"pAtylB\":[\"Not Found\"],\"pG9pq1\":[\"Deleted \",[\"0\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\", freed \",[\"freed\"]],\"pWWFjv\":[\"Checked <0/>\"],\"ph76H6\":[\"Allow new users to create accounts\"],\"pjgw0N\":[\"Choose how to import your \",[\"0\"],\" data.\"],\"puo3W3\":[\"Redirecting…\"],\"q3GraM\":[\"...and \",[\"0\"],\" more\"],\"q6nrFE\":[\"died at \",[\"age\"]],\"q6pUQ9\":[\"Upload a .db file to replace the current database. A safety backup is created first.\"],\"q8yluz\":[\"Your name\"],\"qA6VR5\":[\"Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license.\"],\"qF2IBM\":[\"Movies this month\"],\"qHbApt\":[\"Failed to load backup schedule settings.\"],\"qLB1zX\":[\"Upload a \",[\"0\"],\" export from your \",[\"1\"],\" account settings.\"],\"qPNzfu\":[\"Update checks disabled\"],\"qWoML/\":[\"Add a new webhook and paste the URL above\"],\"qiOIiY\":[\"Buy\"],\"qn1X6N\":[\"Failed to update registration setting\"],\"qqWcBV\":[\"Completed\"],\"qqeAJM\":[\"Never\"],\"r9aDAY\":[[\"count\"],\" earlier \",[\"count\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" unwatched\"],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Server Health\"],\"rdymVD\":[\"Trigger job\"],\"rtir7c\":[\"unknown\"],\"s0U4ZZ\":[\"TV episodes\"],\"s4vVUm\":[\"Could not load person details\"],\"s9dVME\":[\"Failed to unmark episode\"],\"sGH11W\":[\"Server\"],\"sl/qWH\":[\"Upload profile picture\"],\"sstysK\":[\"Failed to mark episode\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episodes\"],\"t/Ch8S\":[\"Marked as watching\"],\"t/YqKh\":[\"Remove\"],\"tfDRzk\":[\"Save\"],\"tiymc0\":[\"Something went wrong…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"uBAxNB\":[\"Editor\"],\"uBrbSu\":[\"Failed to start \",[\"0\"],\" connection\"],\"uM6jnS\":[\"Restore failed\"],\"uMrJrX\":[\"Admin only\"],\"uswLvZ\":[\"The title you're looking for doesn't exist or may have been removed from the database.\"],\"uxOntd\":[[\"watchedCount\"],\" of \",[\"0\"],\" episodes watched\"],\"v2CA3w\":[\"Change Photo\"],\"v5ipVu\":[\"Mark all episodes as watched?\"],\"vKfeax\":[\"Open Emby, go to Settings > Webhooks\"],\"vXIe7J\":[\"Language\"],\"vuCCZ7\":[\"Failed to parse import data\"],\"vwKERN\":[\"Failed to delete backup\"],\"w8pqsh\":[\"Mark All Watched\"],\"wA7B2T\":[\"New accounts are not being accepted right now. Contact the admin if you need access.\"],\"wGFX13\":[\"Starting at\"],\"wR1UAy\":[\"Popular Movies\"],\"wRWcdL\":[\"Play trailer\"],\"wThGrS\":[\"App Settings\"],\"wZK4Xg\":[\"Never run\"],\"wdLxgL\":[\"Member since \",[\"memberSince\"]],\"wja8aL\":[\"Untitled\"],\"wtGebH\":[\"The person you're looking for doesn't exist or may have been removed from the database.\"],\"wtsbt5\":[\"Add to watchlist\"],\"wtuVU4\":[\"Frequency\"],\"wx7pwA\":[\"Mark as Watched\"],\"x4ZiTl\":[\"Setup instructions\"],\"xCJdfg\":[\"Clear\"],\"xGVfLh\":[\"Continue\"],\"xLoCm2\":[\"Check configuration\"],\"xSrU2g\":[[\"healthyCount\"],\" of \",[\"0\"],\" jobs healthy\"],\"xazqmy\":[\"Seasons\"],\"xbBXhy\":[\"Periodically check GitHub for new Sofa releases\"],\"xrh2/M\":[\"Failed to mark as watched\"],\"y3e9pF\":[\"Delete backup?\"],\"y6Urel\":[\"Next Episode\"],\"yGvjAo\":[\"Update available: \",[\"0\"]],\"yKu/3Y\":[\"Restore\"],\"yYxB17\":[\"Clear all\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Database restored. Reloading...\"],\"ygo0l/\":[\"Start tracking movies and shows\"],\"yvwIbI\":[\"Upload export file\"],\"yz7wBu\":[\"Close\"],\"z1U/Fh\":[\"Rating\"],\"z5evln\":[\"No internet connection\"],\"zAvS8w\":[\"Sign in to continue\"],\"zEqK2w\":[\"The page you're looking for doesn't exist.\"],\"zFkiTv\":[\"Install the Webhook plugin from Jellyfin's plugin catalog\"],\"zNyR4f\":[\"Set your preferred quality profile and root folder\"],\"za8Le/\":[\"Registration Closed\"],\"zb77GC\":[\"Rent\"],\"ztAdhw\":[\"Name updated\"]}")as Messages; \ No newline at end of file +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Samedi\"],\"+6i0lS\":[\"Récupération de votre historique, liste de suivi et notes...\"],\"+Cv+V9\":[\"Supprimer de la bibliothèque\"],\"+JkEpu\":[\"Cette page est restée sur le plancher de la salle de montage. Elle a peut-être été déplacée, supprimée, ou n'a jamais dépassé le stade du scénario.\"],\"+K0AvT\":[\"Déconnecter\"],\"+N0l5/\":[\"Connecté à <0>\",[\"serverHost\"],\". Appuyez pour modifier.\"],\"+gLHYi\":[\"Échec du chargement du titre\"],\"+j1ex/\":[\"Échec de la suppression de la bibliothèque\"],\"+nF1ZO\":[\"Supprimer la photo\"],\"/+6dvC\":[\"Erreurs (\",[\"0\"],\")\"],\"/BBXeA\":[\"Connexion au serveur...\"],\"/DwR+n\":[\"Création…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Tout marquer comme visionné\"],\"/gQXGv\":[\"Échec de la mise à jour du statut\"],\"/nT6AE\":[\"Nouveau mot de passe\"],\"/sHc1/\":[\"Vérification des mises à jour\"],\"0+dyau\":[\"Échec de la mise à jour du paramètre de rétention\"],\"0BFJKK\":[\"L'autorisation a été refusée. Veuillez réessayer.\"],\"0GHb20\":[\"Purger le cache de métadonnées ?\"],\"0IBW21\":[\"Échec de la purge des caches\"],\"0gH/sc\":[\"Supprimer la photo de profil\"],\"1+P9RR\":[\"Passer à \",[\"0\"]],\"12cc1j\":[\"En cours\"],\"12lVOl\":[\"Suivi de films et séries auto-hébergé\"],\"1B4z0M\":[\"Filmographie\"],\"1J4Ek0\":[\"Sauvegardez automatiquement votre base de données selon un planning\"],\"1JhxXW\":[\"Épisode \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Options d'importation\"],\"1Qz4uG\":[\"Activez la catégorie d'événement « Playback »\"],\"1hMWR6\":[\"Créer un compte\"],\"1jHIjh\":[\"Tout visionné de \",[\"seasonName\"]],\"1vSYsG\":[\"Télécharger la sauvegarde\"],\"1wL1tj\":[\"Série TV\"],\"2FletP\":[[\"0\",\"plural\",{\"one\":[\"#\",\" titre\"],\"other\":[\"#\",\" titres\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" personne\"],\"other\":[\"#\",\" personnes\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" fichier\"],\"other\":[\"#\",\" fichiers\"]}],\" purgés (\",[\"freed\"],\" libéré)\"],\"2Fsd9r\":[\"Ce mois-ci\"],\"2MPcep\":[\"Importation terminée\"],\"2Mu33Z\":[\"Gestion du cache\"],\"2POOFK\":[\"Gratuit\"],\"2Pt2NY\":[\"Cela supprimera tous les éléments de votre historique.\"],\"2fCpt5\":[\"Retour à l'accueil\"],\"2pPBp6\":[\"Tendance aujourd'hui\"],\"39y5bn\":[\"Vendredi\"],\"3Blefz\":[\"Notes\"],\"3JTlG8\":[\"Recherches récentes\"],\"3Jy8bM\":[\"Films \",[\"select\"]],\"3L9OuQ\":[\"Épisode \",[\"0\"]],\"3T8ziB\":[\"Créer un compte\"],\"3hELxX\":[\"Entrez l'URL de votre serveur Sofa pour commencer\"],\"4fxLkp\":[\"Ouvrez Sonarr, allez dans <0>Settings > Import Lists\"],\"4kpBqM\":[\"Dernier événement \",[\"0\"]],\"4uUjVO\":[\"Producteur\"],\"4x+A56\":[\"Rapports d'utilisation anonymes\"],\"5IShvp\":[\"Importer \",[\"totalItems\"],\" éléments\"],\"5IYJSv\":[\"Explorer les titres\"],\"5Y4mym\":[\"Importer depuis \",[\"0\"]],\"5ZzgbQ\":[\"Connecter \",[\"0\"]],\"5fEnbK\":[\"Échec de la mise à jour du paramètre de sauvegarde planifiée\"],\"5lWFkC\":[\"Se connecter\"],\"5v9C16\":[\"Connecté à \",[\"source\"]],\"623bR4\":[\"Échec du déclenchement de la tâche\"],\"6HN0yh\":[\"Ouvrez Plex, allez dans Settings > Webhooks\"],\"6TNjOJ\":[\"Échec de la mise à jour de la note\"],\"6TfUy6\":[[\"value\"],\" dernières\"],\"6V3Ea3\":[\"Copié\"],\"6YtxFj\":[\"Nom\"],\"6exX+8\":[\"Régénérer\"],\"6gRgw8\":[\"Réessayer\"],\"6lGV3K\":[\"Afficher moins\"],\"76++pR\":[\"Avertissements\"],\"77DIAu\":[\"Aller dans Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Échoué\"],\"7D50KC\":[[\"label\"],\" déconnecté\"],\"7GfM5w\":[\"Récemment consultés\"],\"7L01XJ\":[\"Actions\"],\"7eMo+U\":[\"Accueil\"],\"7p5kLi\":[\"Tableau de bord\"],\"85eoJ1\":[\"Planning mis à jour\"],\"8B9E2D\":[\"Jour :\"],\"8YwF1J\":[\"Aller dans <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Mot de passe\"],\"8tjQCz\":[\"Explorer\"],\"8vNtLy\":[\"Collez l'URL Radarr ci-dessus dans le champ List URL\"],\"8wYDMp\":[\"Vous avez déjà un compte ?\"],\"9AE3vb\":[\"Ouvrez Plex, allez dans <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"L'importation est toujours en cours en arrière-plan. Revenez plus tard.\"],\"9NyAH9\":[\"Ignoré\"],\"9Xhrps\":[\"Échec de la connexion\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Bon retour\"],\"9rG25a\":[\"URL du serveur\"],\"A+0rLe\":[\"Marqué comme terminé\"],\"AOHgZp\":[\"Épisodes\"],\"AOddWK\":[\"Connecter \",[\"label\"]],\"ATfxL/\":[\"Bande-annonce\"],\"AVlZoM\":[\"Environnement\"],\"Acf6vF\":[\"Enregistrer le nom\"],\"AdoUfN\":[\"Échec de l'ajout à la liste de suivi\"],\"AeXO77\":[\"Compte\"],\"AjtYj0\":[\"Dans la liste de suivi\"],\"Avee+B\":[\"Échec de la mise à jour du nom\"],\"B2R3xD\":[\"Activer/désactiver les sauvegardes planifiées\"],\"BEVzjL\":[\"Importation échouée\"],\"BQnS5I\":[\"Ouvrir \",[\"source\"],\" pour saisir le code\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"sauvegarde stockée\"],\"other\":[\"sauvegardes stockées\"]}]],\"BpttUI\":[\"Tendances du jour\"],\"BrrIs8\":[\"Stockage\"],\"BskWMl\":[\"Inaccessible\"],\"BzEFor\":[\"ou\"],\"CGDHFb\":[\"Ajoutez une <0>Generic Destination et collez l'URL ci-dessus\"],\"CGExDN\":[\"Échec de la purge du cache d'images\"],\"CHeXFE\":[\"Statut mis à jour\"],\"CKyk7Q\":[\"Retour\"],\"CaB/+I\":[\"Bon retour, \",[\"name\"]],\"CodnUh\":[\"Supprimé de la bibliothèque\"],\"CpzGJY\":[\"Cela peut prendre quelques minutes pour les grandes bibliothèques. Ne fermez pas cet onglet.\"],\"CuPxpd\":[\"Nécessite un abonnement <0>Plex Pass<1/> actif.\"],\"CzBN6D\":[\"Commencer à explorer\"],\"D+R2Xs\":[\"Démarrage de l'importation...\"],\"D3C4Yx\":[\"Le mot de passe actuel est requis\"],\"DBC3t5\":[\"Dimanche\"],\"DI4lqs\":[\"Personne introuvable\"],\"DKBbJf\":[\"« \",[\"titleName\"],\" » ajouté à la liste de suivi\"],\"DPfwMq\":[\"Terminé\"],\"DZse/o\":[\"Ajoutez une « Generic Destination » et collez l'URL ci-dessus\"],\"E/QGRL\":[\"Désactivé\"],\"E6nRW7\":[\"Copier l'URL\"],\"EWQlBH\":[\"Votre bibliothèque est vide\"],\"EWaCfj\":[\"Entrez votre mot de passe actuel et choisissez-en un nouveau.\"],\"Eeo/Gy\":[\"Échec de la mise à jour du paramètre\"],\"Efn6WU\":[\"Cela supprimera tous les titres ébauches non enrichis et toutes les images en cache du disque. Tout sera réimporté et re-téléchargé selon les besoins.\"],\"Etp5if\":[\"Importation depuis \",[\"source\"],\" terminée.\"],\"F006BN\":[\"Importer depuis \",[\"source\"]],\"FNvDMc\":[\"Cette semaine\"],\"FWSp+7\":[\"Entrez le code ci-dessous sur le site de \",[\"source\"],\" pour autoriser Sofa.\"],\"FXN0ro\":[\"Recommandations\"],\"FaU7Ag\":[\"Activez le type de notification « Playback Stop »\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Acteur\"],\"FwRqjE\":[\"Utilisation du disque : cache d'images et sauvegardes\"],\"G00fgM\":[[\"n\"],\" dernières\"],\"G3myU+\":[\"Mardi\"],\"GcCthe\":[\"Dans la bibliothèque\"],\"Gf39AA\":[[\"0\"],\" déclenché\"],\"GnhfWw\":[\"Activer/désactiver les vérifications automatiques de mises à jour\"],\"GptGxg\":[\"Changer le mot de passe\"],\"GqTZ+S\":[\"Noté \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"étoile\"],\"other\":[\"étoiles\"]}]],\"GrdN/F\":[\"Rattrapé — \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"épisode marqué comme visionné\"],\"other\":[\"épisodes marqués comme visionnés\"]}]],\"H4B5LG\":[\"Ce produit utilise l'API TMDB mais n'est pas approuvé ni certifié par TMDB.\"],\"HBRd5n\":[\"Saison \",[\"0\"]],\"HD+aQ7\":[\"Sauvegardes de la base de données\"],\"HG+31u\":[\"Purger tous les caches ?\"],\"Haz+72\":[\"Cela supprimera toutes les images TMDB en cache du disque. Les images seront re-téléchargées automatiquement selon les besoins.\"],\"HbReP5\":[\"« \",[\"titleName\"],\" » marqué comme terminé\"],\"Hg6o8v\":[\"Actualiser l'état du système\"],\"HmEjnC\":[\"Dernier événement \",[\"timeAgo\"]],\"HvDfH/\":[\"Importé\"],\"I89uD4\":[\"Restauration…\"],\"IRoxQm\":[\"Inscriptions fermées\"],\"IS0nrP\":[\"Créer un compte\"],\"IY9rQ0\":[\"Libérez de l'espace disque en vidant les métadonnées et images en cache\"],\"IrC12v\":[\"Application\"],\"J28zul\":[\"Connexion...\"],\"J64cFL\":[\"Actualisation de la bibliothèque\"],\"JKmmmN\":[\"Ajouté à la liste de suivi\"],\"JN0f/Y\":[\"Se connecter à TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirmer le nouveau mot de passe\"],\"JRadFJ\":[\"Commencez à suivre vos visionnages\"],\"JSwq8t\":[\"La création de nouveaux comptes est actuellement désactivée.\"],\"JY5Oyv\":[\"Base de données\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Connexion…\"],\"JwFbe8\":[\"Série\"],\"KDw4GX\":[\"Réessayer\"],\"KG6681\":[\"Épisode visionné\"],\"KIS/Sd\":[\"Se déconnecter des autres sessions\"],\"KK0ghs\":[\"Cache d'images\"],\"KVAoFR\":[\"illimité\"],\"KcXJuc\":[\"Purge...\"],\"KhtG3o\":[\"Mettre à jour le mot de passe\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" titre\"],\"other\":[\"#\",\" titres\"]}]],\"KmWyx0\":[\"Tâche\"],\"KoF0x6\":[\"âge \",[\"age\"]],\"Ksiej9\":[\"Nécessite un abonnement Plex Pass actif.\"],\"Kx9NEt\":[\"Jeton invalide\"],\"Lk6Jb/\":[\"Dernière interrogation \",[\"timeAgo\"]],\"LmEEic\":[\"En attente d'autorisation...\"],\"LqKH42\":[\"Se connecter avec \",[\"0\"]],\"Lrpjji\":[\"Déconnecter \",[\"label\"]],\"Lu6Udx\":[\"Cliquez sur « + » et sélectionnez « Custom Lists »\"],\"MDoX++\":[\"URL de liste Sonarr\"],\"MRBlCJ\":[\"Échec du démarquage de certains épisodes\"],\"MUO7w9\":[\"« \",[\"titleName\"],\" » marqué comme visionné\"],\"MZbQHL\":[\"Aucun résultat trouvé.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Autorisez Sofa à lire votre bibliothèque \",[\"0\"],\". Aucun mot de passe partagé.\"],\"N40H+G\":[\"Tout\"],\"N6SFhC\":[\"Se connecter\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" est disponible\"],\"N9RF2M\":[\"Cliquez sur « Add Webhook » et collez l'URL ci-dessus\"],\"NBo4z0\":[\"Cliquez sur <0>+ et sélectionnez <1>Custom Lists\"],\"NICUmW\":[\"Réalisateur\"],\"NQzPoO\":[\"Nouvelle sauvegarde\"],\"NSxl1l\":[\"Plus de paramètres\"],\"NVF43p\":[\"Heure :\"],\"NdPMwS\":[\"Dans votre bibliothèque\"],\"NgaPSG\":[\"Échec de la mise à jour du planning\"],\"O3oNi5\":[\"E-mail\"],\"OBcj5W\":[\"Cela invalidera l'URL \",[\"label\"],\" actuelle. Vous devrez la mettre à jour dans \",[\"label\"],\".\"],\"OL8hbM\":[\"Le nouveau mot de passe doit comporter au moins 8 caractères\"],\"ONWvwQ\":[\"Télécharger\"],\"OPFjyX\":[\"Installez le <0>plugin Webhook<1/> depuis le catalogue de plugins de Jellyfin\"],\"OW/+RD\":[\"Historique de visionnage\"],\"OZdaTZ\":[\"Personne\"],\"OvO76u\":[\"Retour à la connexion\"],\"OvdFIZ\":[\"Saison visionnée\"],\"P2FLLe\":[\"Voir la version\"],\"PBdLfg\":[\"Aucun titre trouvé pour ce genre.\"],\"PQ3qDa\":[\"Récupération de vos données depuis \",[\"source\"],\"...\"],\"PjNoxI\":[\"Sauvegarde planifiée\"],\"Pn2B7/\":[\"Mot de passe actuel\"],\"PnEbL/\":[\"Noté \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"étoile\"],\"other\":[\"étoiles\"]}]],\"Pwqkdw\":[\"Chargement…\"],\"Py87xY\":[\"L'autorisation a réussi mais la récupération de votre bibliothèque a échoué. Veuillez réessayer.\"],\"Q3MPWA\":[\"Mettre à jour le mot de passe\"],\"QHcLEN\":[\"Connecté\"],\"QK4UIx\":[\"Marquer comme visionné\"],\"Qjlym2\":[\"Échec de la création du compte\"],\"Qm1NmK\":[\"OU\"],\"Qoq+GP\":[\"Lire la suite\"],\"QphVZW\":[\"Impossible de joindre le serveur\"],\"QqLJHH\":[\"Cette année\"],\"R0yu2l\":[\"Rattraper\"],\"R4YBui\":[\"Recherchez des films et séries pour commencer à les suivre\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"épisode\"],\"other\":[\"épisodes\"]}]],\"RIR15/\":[\"URL de liste Radarr\"],\"RLe7Vk\":[\"Vérification…\"],\"ROq8cl\":[\"Échec de l'analyse du fichier\"],\"RQq8Si\":[\"Inscriptions ouvertes\"],\"S0soqb\":[\"Échec de la suppression de la photo de profil\"],\"S1McZh\":[\"Échec du téléchargement de l'avatar\"],\"S2ble5\":[[\"0\"],\" films, \",[\"1\"],\" épisodes\"],\"S2qPRR\":[\"Rechercher des films et séries…\"],\"SDND4q\":[\"Non configuré\"],\"SFdAk9\":[\"Démarqué S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Tout démarquer\"],\"SbS+Bm\":[\"Régénérer l'URL\"],\"SlfejT\":[\"Erreur\"],\"Sp86ju\":[[\"0\"],\" ép\",[\"1\"]],\"SrfROI\":[\"Suivant\"],\"SyPRjk\":[\"Sofa enregistrera automatiquement les films et épisodes lorsque vous aurez fini de les regarder\"],\"T0/7WG\":[\"Prochaine sauvegarde \",[\"distance\"]],\"TEaX6q\":[\"Sauvegarde supprimée\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Photo de profil supprimée\"],\"TqyQQS\":[\"Activez la catégorie d'événement <0>Playback\"],\"Tz0i8g\":[\"Paramètres\"],\"U+FxtW\":[\"Suivez ce que vous regardez. Sachez ce qui vient ensuite.<0/>Votre bibliothèque, vos données, vos règles.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Activer/désactiver l'inscription ouverte\"],\"UDMjsP\":[\"Actions rapides\"],\"UmQ6Fe\":[\"Purger le cache d'images ?\"],\"UtDm3q\":[\"URL copiée dans le presse-papiers\"],\"V1Kh9Z\":[\"Épisodes \",[\"select\"]],\"V6uzvC\":[\"Dans le même genre\"],\"V9CuQ+\":[\"Se connecter à \",[\"source\"]],\"VAcXNz\":[\"Mercredi\"],\"VKyhZK\":[\"Titre introuvable\"],\"VQvpro\":[\"Collez l'URL Sonarr ci-dessus dans le champ List URL\"],\"VhMDMg\":[\"Changer le mot de passe\"],\"Vx0ayx\":[\"Échec du marquage de certains épisodes\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recommandé\"],\"WMCwmR\":[\"Rechercher des mises à jour\"],\"WP48q2\":[\"Cache d'images\"],\"WT1Ibn\":[\"Dernière exécution\"],\"Wb3E4g\":[\"Exécuter maintenant\"],\"WgF2UQ\":[\"Vous utilisez la v\",[\"0\"],\".\"],\"WtWhSi\":[\"Note supprimée\"],\"Wy/3II\":[\"Dernière interrogation \",[\"0\"]],\"XFCSYs\":[\"Distribution\"],\"XN23JY\":[\"Cela supprimera les titres ébauches non enrichis qui ne sont dans aucune bibliothèque et nettoiera les enregistrements de personnes orphelines. Les titres supprimés seront réimportés s'ils sont consultés à nouveau.\"],\"XZwihE\":[\"Prêt — rien reçu pour l'instant\"],\"XjTduw\":[\"Télécharger une photo\"],\"YEGzVq\":[\"Échec de la connexion à \",[\"label\"]],\"YErf89\":[\"Échec de la purge du cache de métadonnées\"],\"YQ768h\":[\"Scène introuvable\"],\"YiRsXK\":[\"Effacer les éléments récemment consultés ?\"],\"Yjp1zf\":[\"Pas de serveur ?\"],\"YqMfa9\":[\"Vérifiez ce qui a été trouvé et choisissez ce que vous souhaitez importer.\"],\"ZGUYm0\":[\"Prêt — pas encore interrogé\"],\"ZQKLI1\":[\"Zone de danger\"],\"ZVZUoU\":[[\"0\"],\" images en cache\"],\"ZWTQ81\":[\"Regarder sur \",[\"name\"]],\"a3LDKx\":[\"Sécurité\"],\"aLBUiR\":[\"Conservation de <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" sauvegardes.\"],\"aM0+kY\":[[\"0\",\"plural\",{\"one\":[\"#\",\" titre obsolète purgé\"],\"other\":[\"#\",\" titres obsolètes purgés\"]}],\" et \",[\"1\",\"plural\",{\"one\":[\"#\",\" personne orpheline\"],\"other\":[\"#\",\" personnes orphelines\"]}]],\"aO1AxG\":[\"Épisode non visionné\"],\"aV/hDI\":[\"Échec de la déconnexion de \",[\"label\"]],\"acbSg0\":[\"Double appui pour filtrer par \",[\"label\"]],\"agE7k4\":[\"Noté \",[\"stars\",\"plural\",{\"one\":[\"#\",\" étoile\"],\"other\":[\"#\",\" étoiles\"]}]],\"alPRaV\":[\"Les titres de votre liste de suivi Sofa seront automatiquement ajoutés au téléchargement lorsque Radarr interroge cette liste (toutes les 12 heures par défaut)\"],\"aourBv\":[\"Sauvegardes planifiées activées\"],\"apLLSU\":[\"Voulez-vous vraiment vous déconnecter ?\"],\"atc9MA\":[\"Ouvrez Emby, allez dans <0>Settings > Webhooks\"],\"auVUJO\":[\"Restaurer la base de données ?\"],\"ayqfr4\":[\"URL \",[\"label\"],\" régénérée\"],\"b/8KCH\":[\"Cela marquera tous les épisodes de cette série comme visionnés. Vous pourrez annuler cela en démarquant des saisons individuelles.\"],\"b3Thhd\":[\"Téléchargement échoué\"],\"b5DFtH\":[\"Définir un mot de passe\"],\"bHYIks\":[\"Se déconnecter\"],\"bITrbE\":[\"Tout purger\"],\"bNmdjU\":[\"Liste de suivi\"],\"bTRwag\":[\"Supprimer de la bibliothèque\"],\"bXMotV\":[\"Marqué comme visionné\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Page introuvable\"],\"c1ssjI\":[\"Importation depuis \",[\"source\"]],\"c3b0B0\":[\"Commencer\"],\"c4b9Dm\":[\"Aucun résultat pour « \",[\"debouncedQuery\"],\" »\"],\"cQPKZt\":[\"Aller au tableau de bord\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" notes\"],\"cnGeoo\":[\"Supprimer\"],\"cpE88+\":[\"Créez votre compte\"],\"d/6MoL\":[\"Gérez votre compte et vos préférences\"],\"dA7BWh\":[\"Nécessite Emby Server 4.7.9+ et une licence Emby Premiere active.\"],\"dEgA5A\":[\"Annuler\"],\"dTZwve\":[\"Tous les épisodes marqués comme visionnés\"],\"dUCJry\":[\"Les plus récents\"],\"ddwpAr\":[\"Avertissements (\",[\"0\"],\")\"],\"e/ToF5\":[\"Se connecter avec \",[\"0\"]],\"e9sZMS\":[\"Cela supprimera définitivement la sauvegarde du <0>\",[\"0\"],\". Cette action est irréversible.\"],\"eFRooE\":[\"Dernière exécution échouée\"],\"eM39Om\":[\"Tout visionné de \",[\"seasonLabel\"]],\"eZjYb8\":[\"Scénariste\"],\"ecUA8p\":[\"Aujourd'hui\"],\"evBxZy\":[\"Où regarder\"],\"ezDa1h\":[\"Ouvrir la documentation\"],\"f+m696\":[\"Une erreur inattendue s'est produite lors du chargement de cette page. Vous pouvez réessayer ou retourner au tableau de bord.\"],\"f/AKdU\":[\"Voulez-vous vraiment déconnecter \",[\"label\"],\" ? L'URL actuelle cessera de fonctionner.\"],\"f7ax8J\":[\"Ouvrir dans le navigateur…\"],\"fMPkxb\":[\"Afficher plus\"],\"fNMqNn\":[\"Séries populaires\"],\"fObVvy\":[\"Photo de profil mise à jour\"],\"fRettQ\":[[\"0\"],\" éléments\"],\"fUDRF9\":[\"Dans la liste de suivi\"],\"fcWrnU\":[\"Se déconnecter\"],\"fgLNSM\":[\"S'inscrire\"],\"fsAEqk\":[\"Continuer à regarder\"],\"fzAeQI\":[\"Inscription sur \",[\"serverHost\"]],\"g+gBfk\":[\"Analyse...\"],\"g4JYff\":[[\"0\"],\" éléments importés depuis \",[\"1\"]],\"gKtb5i\":[\"Les titres de votre liste de suivi Sofa seront automatiquement ajoutés au téléchargement lorsque Sonarr interroge cette liste (toutes les 6 heures par défaut)\"],\"gaIAMq\":[\"Supprimer la photo\"],\"gbEEMp\":[\"Supprimer la sauvegarde\"],\"gcNLi0\":[\"Vérifications des mises à jour activées\"],\"gmB6oO\":[\"Planning\"],\"h/T5Yb\":[\"Inscription ouverte\"],\"h4yKYk\":[\"Prochaine exécution\"],\"h7MgpO\":[\"Raccourcis clavier\"],\"hTXYdY\":[\"Échec de la création de la sauvegarde\"],\"hXYY5Q\":[\"Tout démarqué de \",[\"0\"]],\"he3ygx\":[\"Copier\"],\"hjGupC\":[\"Connexion à l'importation perdue. Vérifiez l'état dans les paramètres.\"],\"hlqjFc\":[\"Dans la bibliothèque\"],\"hou0tP\":[\"Streaming\"],\"hty0d5\":[\"Lundi\"],\"i0qMbr\":[\"Accueil\"],\"i9rcQ/\":[\"Films\"],\"iGma9e\":[\"Mise à jour échouée\"],\"iSLIjg\":[\"Connecter\"],\"iWv3ck\":[\"Échec du rattrapage\"],\"iXZ09g\":[\"Marquer comme terminé\"],\"id08cd\":[\"Visionné S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Ajouter à la bibliothèque\"],\"ihn4zD\":[\"Rechercher…\"],\"itDEco\":[\"Vous avez déjà un compte ? Se connecter\"],\"itheEn\":[\"Avec publicités\"],\"iwCRIF\":[\"Vous serez déconnecté pour modifier l'URL du serveur.\"],\"j5GBIy\":[\"Ouvrez Radarr, allez dans Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" sauvegardes · dernière <0/>\"],\"jB3sfe\":[\"Sauvegarde manuelle\"],\"jFnMJ8\":[\"Double appui pour supprimer ce filtre\"],\"jQsPwL\":[\"Sauvegardes planifiées désactivées\"],\"jSjGeu\":[[\"0\"],\" éléments n'ont pas d'identifiants externes et seront résolus par recherche de titre, ce qui peut être moins précis.\"],\"jX6Gzg\":[\"Cela remplacera toute votre base de données par le fichier téléchargé. Une sauvegarde de sécurité de vos données actuelles sera créée au préalable. Les sessions actives devront peut-être être actualisées après la restauration.\"],\"jiHVUy\":[\"Sauvegarde pré-restauration\"],\"k6c41p\":[\"Tâches en arrière-plan\"],\"kBDOjB\":[\"Planning de sauvegarde\"],\"kkDQ8m\":[\"Jeudi\"],\"klOeIX\":[\"Échec du changement de mot de passe\"],\"ks3XeZ\":[\"Ouvrez Sonarr, allez dans Settings > Import Lists\"],\"kvuCtu\":[\"Une erreur s'est produite lors du chargement de ce titre. Veuillez réessayer.\"],\"kx0s+n\":[\"Résultats\"],\"l2wcoS\":[\"Dernière exécution réussie\"],\"l3s5ri\":[\"Importation\"],\"lCF0wC\":[\"Actualiser\"],\"lJ1yo4\":[\"Échec de la connexion\"],\"lVqzRx\":[\"Cliquez sur <0>Add Webhook et collez l'URL ci-dessus\"],\"lXkUEV\":[\"Disponibilité\"],\"lcLe89\":[\"Rechercher des films, séries ou exécuter des commandes\"],\"lfVyvz\":[\"Ajouter à la liste de suivi\"],\"llDXYJ\":[\"Sauvegardes\"],\"llkZR0\":[\"Impossible de charger les intégrations\"],\"ln9/n9\":[\"Pas encore de compte ?\"],\"lpIMne\":[\"Les mots de passe ne correspondent pas\"],\"lqY3WY\":[\"Changer de serveur\"],\"luoodD\":[\"Configuration requise\"],\"m5WhJy\":[\"Vérifications automatiques des mises à jour\"],\"mIx58S\":[\"Purger les images\"],\"mYBORk\":[\"Film\"],\"ml9cU0\":[\"Échec de la régénération de l'URL \",[\"label\"]],\"mqwkjd\":[\"État de santé\"],\"mqxHH7\":[\"Aller à Explorer\"],\"mzI/c+\":[\"Télécharger\"],\"n1ekoW\":[\"Se connecter\"],\"n3Pzd7\":[\"Sauvegarde créée\"],\"nBHvPL\":[\"Annuler la modification\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" image\"],\"other\":[\"#\",\" images\"]}]],\"nO0Qnj\":[\"Votre code :\"],\"nRP1xx\":[\"Besoin d'aide ?\"],\"nV1LjT\":[\"Activez le type de notification <0>Playback Stop\"],\"nVsE67\":[\"Marquer comme en cours\"],\"nZ7lF1\":[\"Le code d'appareil a expiré. Veuillez réessayer.\"],\"nbfdhU\":[\"Intégrations\"],\"nbmpf9\":[\"Purger les métadonnées\"],\"nnKJTm\":[\"Échec du marquage de tous les épisodes comme visionnés\"],\"nszbQG\":[\"Aucune sauvegarde\"],\"nuh/Wq\":[\"URL de webhook\"],\"nwtY4N\":[\"Une erreur s'est produite\"],\"oAIA3w\":[\"Rechercher des films, séries ou personnes\"],\"oC8IMh\":[\"Rechercher des films, séries, personnes...\"],\"oNvZcA\":[\"Épisodes cette semaine\"],\"oXq+Wr\":[[\"label\"],\" connecté\"],\"ogtYkT\":[\"Mot de passe mis à jour\"],\"ojtedN\":[\"Ouvrez Radarr, allez dans <0>Settings > Import Lists\"],\"olMi35\":[\"Recommandé pour vous\"],\"p+PZEl\":[\"Voici ce qui se passe dans votre bibliothèque\"],\"pAtylB\":[\"Introuvable\"],\"pG9pq1\":[[\"0\",\"plural\",{\"one\":[\"#\",\" fichier supprimé\"],\"other\":[\"#\",\" fichiers supprimés\"]}],\", \",[\"freed\"],\" libéré\"],\"pWWFjv\":[\"Vérifié <0/>\"],\"ph76H6\":[\"Autoriser les nouveaux utilisateurs à créer un compte\"],\"pjgw0N\":[\"Choisissez comment importer vos données \",[\"0\"],\".\"],\"puo3W3\":[\"Redirection…\"],\"q3GraM\":[\"...et \",[\"0\"],\" de plus\"],\"q6nrFE\":[\"décédé à \",[\"age\"],\" ans\"],\"q6pUQ9\":[\"Téléchargez un fichier .db pour remplacer la base de données actuelle. Une sauvegarde de sécurité est créée au préalable.\"],\"q8yluz\":[\"Votre nom\"],\"qA6VR5\":[\"Nécessite <0>Emby Server 4.7.9+ et une licence <1>Emby Premiere<2/> active.\"],\"qF2IBM\":[\"Films ce mois-ci\"],\"qHbApt\":[\"Échec du chargement des paramètres de planning de sauvegarde.\"],\"qLB1zX\":[\"Téléchargez un export \",[\"0\"],\" depuis les paramètres de votre compte \",[\"1\"],\".\"],\"qPNzfu\":[\"Vérifications des mises à jour désactivées\"],\"qWoML/\":[\"Ajoutez un nouveau webhook et collez l'URL ci-dessus\"],\"qiOIiY\":[\"Acheter\"],\"qn1X6N\":[\"Échec de la mise à jour du paramètre d'inscription\"],\"qqWcBV\":[\"Terminé\"],\"qqeAJM\":[\"Jamais\"],\"r9aDAY\":[[\"count\"],\" \",[\"count\",\"plural\",{\"one\":[\"épisode précédent non visionné\"],\"other\":[\"épisodes précédents non visionnés\"]}]],\"rLgPvm\":[\"Sauvegarde\"],\"rSTpb5\":[\"État du serveur\"],\"rdymVD\":[\"Déclencher la tâche\"],\"rtir7c\":[\"inconnu\"],\"s0U4ZZ\":[\"Épisodes de séries\"],\"s4vVUm\":[\"Impossible de charger les détails de la personne\"],\"s9dVME\":[\"Échec du démarquage de l'épisode\"],\"sGH11W\":[\"Serveur\"],\"sl/qWH\":[\"Télécharger une photo de profil\"],\"sstysK\":[\"Échec du marquage de l'épisode\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" épisodes\"],\"t/Ch8S\":[\"Marqué comme en cours\"],\"t/YqKh\":[\"Supprimer\"],\"tfDRzk\":[\"Enregistrer\"],\"tiymc0\":[\"Une erreur s'est produite…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"épisode\"],\"other\":[\"épisodes\"]}]],\"uBAxNB\":[\"Monteur\"],\"uBrbSu\":[\"Échec du démarrage de la connexion \",[\"0\"]],\"uM6jnS\":[\"Restauration échouée\"],\"uMrJrX\":[\"Admins uniquement\"],\"uswLvZ\":[\"Le titre que vous recherchez n'existe pas ou a peut-être été supprimé de la base de données.\"],\"uxOntd\":[[\"watchedCount\"],\" sur \",[\"0\"],\" épisodes regardés\"],\"v2CA3w\":[\"Changer la photo\"],\"v5ipVu\":[\"Marquer tous les épisodes comme visionnés ?\"],\"vKfeax\":[\"Ouvrez Emby, allez dans Settings > Webhooks\"],\"vXIe7J\":[\"Langue\"],\"vuCCZ7\":[\"Échec de l'analyse des données d'importation\"],\"vwKERN\":[\"Échec de la suppression de la sauvegarde\"],\"w8pqsh\":[\"Tout marquer comme visionné\"],\"wA7B2T\":[\"Les nouvelles inscriptions sont fermées. Contactez l'administrateur si vous avez besoin d'un accès.\"],\"wGFX13\":[\"À partir de\"],\"wR1UAy\":[\"Films populaires\"],\"wRWcdL\":[\"Lire la bande-annonce\"],\"wThGrS\":[\"Paramètres de l'application\"],\"wZK4Xg\":[\"Jamais exécuté\"],\"wdLxgL\":[\"Membre depuis \",[\"memberSince\"]],\"wja8aL\":[\"Sans titre\"],\"wtGebH\":[\"La personne que vous recherchez n'existe pas ou a peut-être été supprimée de la base de données.\"],\"wtsbt5\":[\"Ajouter à la liste de suivi\"],\"wtuVU4\":[\"Fréquence\"],\"wx7pwA\":[\"Marquer comme visionné\"],\"x4ZiTl\":[\"Instructions de configuration\"],\"xCJdfg\":[\"Effacer\"],\"xGVfLh\":[\"Continuer\"],\"xLoCm2\":[\"Vérifier la configuration\"],\"xSrU2g\":[[\"healthyCount\"],\" sur \",[\"0\"],\" tâches en bonne santé\"],\"xazqmy\":[\"Saisons\"],\"xbBXhy\":[\"Vérifier périodiquement GitHub pour les nouvelles versions de Sofa\"],\"xrh2/M\":[\"Échec du marquage comme visionné\"],\"y3e9pF\":[\"Supprimer la sauvegarde ?\"],\"y6Urel\":[\"Épisode suivant\"],\"yGvjAo\":[\"Mise à jour disponible : \",[\"0\"]],\"yKu/3Y\":[\"Restaurer\"],\"yYxB17\":[\"Tout effacer\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Base de données restaurée. Rechargement...\"],\"ygo0l/\":[\"Commencer à suivre des films et séries\"],\"yvwIbI\":[\"Télécharger le fichier d'exportation\"],\"yz7wBu\":[\"Fermer\"],\"z1U/Fh\":[\"Note\"],\"z5evln\":[\"Pas de connexion Internet\"],\"zAvS8w\":[\"Connectez-vous pour continuer\"],\"zEqK2w\":[\"La page que vous recherchez n'existe pas.\"],\"zFkiTv\":[\"Installez le plugin Webhook depuis le catalogue de plugins de Jellyfin\"],\"zNyR4f\":[\"Définissez votre profil de qualité et dossier racine préférés\"],\"za8Le/\":[\"Inscriptions fermées\"],\"zb77GC\":[\"Louer\"],\"ztAdhw\":[\"Nom mis à jour\"]}")as Messages; \ No newline at end of file diff --git a/packages/i18n/src/po/it.po b/packages/i18n/src/po/it.po index 2daef85..50e3ee3 100644 --- a/packages/i18n/src/po/it.po +++ b/packages/i18n/src/po/it.po @@ -8,54 +8,54 @@ msgstr "" "Language: it\n" "Project-Id-Version: sofa\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-03-18 16:04\n" +"PO-Revision-Date: 2026-03-19 00:35\n" "Last-Translator: \n" "Language-Team: Italian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Crowdin-Project: sofa\n" "X-Crowdin-Project-ID: 881052\n" "X-Crowdin-Language: it\n" -"X-Crowdin-File: /packages/i18n/src/po/en.po\n" -"X-Crowdin-File-ID: 12\n" +"X-Crowdin-File: en.po\n" +"X-Crowdin-File-ID: 14\n" #. placeholder {0}: result.errors.length - 50 -#: apps/web/src/components/settings/imports-section.tsx:938 +#: apps/web/src/components/settings/imports-section.tsx:895 msgid "...and {0} more" -msgstr "" +msgstr "...e altri {0}" #. placeholder {0}: systemHealth.data.imageCache.imageCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:482 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:456 msgid "{0, plural, one {# image} other {# images}}" -msgstr "" +msgstr "{0, plural, one {# immagine} other {# immagini}}" #. placeholder {0}: systemHealth.data.database.titleCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:466 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:442 msgid "{0, plural, one {# title} other {# titles}}" -msgstr "" +msgstr "{0, plural, one {# titolo} other {# titoli}}" #. placeholder {0}: displayBackups.length #. placeholder {1}: displayBackups.length -#: apps/web/src/components/settings/backup-section.tsx:109 +#: apps/web/src/components/settings/backup-section.tsx:98 msgid "{0} {1, plural, one {backup} other {backups}} stored" -msgstr "" +msgstr "{0} {1, plural, one {backup} other {backup}} archiviati" #: apps/web/src/components/settings/backup-section.tsx:105 #~ msgid "{0} backup{1} stored" #~ msgstr "{0} backup{1} stored" #. placeholder {0}: backups.backupCount -#: apps/web/src/components/settings/system-health-section.tsx:654 +#: apps/web/src/components/settings/system-health-section.tsx:599 msgid "{0} backups · last <0/>" -msgstr "" +msgstr "{0} backup · ultimo <0/>" #. placeholder {0}: imageCache.imageCount.toLocaleString() -#: apps/web/src/components/settings/system-health-section.tsx:621 +#: apps/web/src/components/settings/system-health-section.tsx:569 msgid "{0} cached images" -msgstr "" +msgstr "{0} immagini in cache" #. placeholder {0}: member.episodeCount #. placeholder {1}: member.episodeCount !== 1 ? "s" : "" -#: apps/web/src/components/titles/cast-carousel.tsx:80 +#: apps/web/src/components/titles/cast-carousel.tsx:78 msgid "{0} ep{1}" msgstr "" @@ -64,1061 +64,1061 @@ msgstr "" #~ msgstr "{0} images" #. placeholder {0}: stats.watchlist -#: apps/web/src/components/settings/imports-section.tsx:808 +#: apps/web/src/components/settings/imports-section.tsx:770 msgid "{0} items" -msgstr "" +msgstr "{0} elementi" #. placeholder {0}: preview.diagnostics.unresolved -#: apps/web/src/components/settings/imports-section.tsx:788 +#: apps/web/src/components/settings/imports-section.tsx:750 msgid "{0} items have no external IDs and will be resolved by title search, which may be less accurate." -msgstr "" +msgstr "{0} elementi non hanno ID esterni e verranno risolti tramite ricerca per titolo, che potrebbe essere meno accurata." #. placeholder {0}: stats.movies #. placeholder {1}: stats.episodes -#: apps/web/src/components/settings/imports-section.tsx:802 +#: apps/web/src/components/settings/imports-section.tsx:764 msgid "{0} movies, {1} episodes" -msgstr "" +msgstr "{0} film, {1} episodi" #. placeholder {0}: stats.ratings -#: apps/web/src/components/settings/imports-section.tsx:814 +#: apps/web/src/components/settings/imports-section.tsx:776 msgid "{0} ratings" -msgstr "" +msgstr "{0} valutazioni" #: apps/native/src/app/(tabs)/(settings)/index.tsx:456 #~ msgid "{0} titles" #~ msgstr "{0} titles" #. placeholder {0}: JOB_LABELS[name] ?? name -#: apps/web/src/components/settings/system-health-section.tsx:343 +#: apps/web/src/components/settings/system-health-section.tsx:316 msgid "{0} triggered" -msgstr "" +msgstr "{0} attivato" #. placeholder {0}: item.watchedEpisodes #. placeholder {1}: item.totalEpisodes #. placeholder {2}: item.totalEpisodes -#: apps/web/src/components/dashboard/continue-watching-card.tsx:93 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:78 msgid "{0}/{1} {2, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{0}/{1} {2, plural, one {episodio} other {episodi}}" #: apps/web/src/components/dashboard/continue-watching-card.tsx:92 #~ msgid "{0}/{1} episodes" #~ msgstr "{0}/{1} episodes" -#: apps/web/src/components/titles/use-title-actions.ts:221 -#: apps/web/src/components/titles/use-title-actions.ts:299 +#: apps/web/src/components/titles/use-title-actions.ts:200 +#: apps/web/src/components/titles/use-title-actions.ts:278 msgid "{count} earlier {count, plural, one {episode} other {episodes}} unwatched" msgstr "" #. placeholder {0}: activeJobs.length -#: apps/web/src/components/settings/system-health-section.tsx:385 +#: apps/web/src/components/settings/system-health-section.tsx:351 msgid "{healthyCount} of {0} jobs healthy" -msgstr "" +msgstr "{healthyCount} di {0} job attivi" -#: apps/native/src/components/settings/integration-card.tsx:96 -#: apps/web/src/components/settings/integration-card.tsx:106 +#: apps/native/src/components/settings/integration-card.tsx:84 +#: apps/web/src/components/settings/integration-card.tsx:89 msgid "{label} connected" -msgstr "" +msgstr "Connesso: {label}" -#: apps/native/src/components/settings/integration-card.tsx:106 -#: apps/web/src/components/settings/integration-card.tsx:122 +#: apps/native/src/components/settings/integration-card.tsx:94 +#: apps/web/src/components/settings/integration-card.tsx:105 msgid "{label} disconnected" -msgstr "" +msgstr "Disconnesso: {label}" -#: apps/native/src/components/settings/integration-card.tsx:116 -#: apps/web/src/components/settings/integration-card.tsx:138 +#: apps/native/src/components/settings/integration-card.tsx:104 +#: apps/web/src/components/settings/integration-card.tsx:119 msgid "{label} URL regenerated" -msgstr "" +msgstr "URL {label} rigenerato" -#: apps/web/src/components/title-card.tsx:166 +#: apps/web/src/components/title-card.tsx:152 msgid "{watched}/{total} episodes" -msgstr "" +msgstr "{watched}/{total} episodi" #. placeholder {0}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:122 +#: apps/native/src/components/titles/season-accordion.tsx:113 msgid "{watchedCount} of {0} episodes watched" -msgstr "" +msgstr "{watchedCount} di {0} episodi visti" #. placeholder {0}: episodes.length #. placeholder {1}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:131 +#: apps/native/src/components/titles/season-accordion.tsx:122 msgid "{watchedCount}/{0} {1, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{watchedCount}/{0} {1, plural, one {episodio} other {episodi}}" #: apps/native/src/components/titles/season-accordion.tsx:130 #~ msgid "{watchedCount}/{0} episodes" #~ msgstr "{watchedCount}/{0} episodes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:231 -#: apps/web/src/components/settings/account-section.tsx:175 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:224 +#: apps/web/src/components/settings/account-section.tsx:166 msgid "Account" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:412 +#: apps/web/src/components/settings/system-health-section.tsx:378 msgid "Actions" -msgstr "" +msgstr "Azioni" -#: apps/web/src/components/people/person-hero.tsx:71 +#: apps/web/src/components/people/person-hero.tsx:69 msgid "Actor" -msgstr "" +msgstr "Attore" -#: apps/native/src/components/settings/integration-configs.ts:72 +#: apps/native/src/components/settings/integration-configs.ts:71 msgid "Add a \"Generic Destination\" and paste the URL above" -msgstr "" +msgstr "Aggiungi una \"Destinazione generica\" e incolla l'URL sopra" -#: apps/web/src/components/settings/integration-configs.tsx:131 +#: apps/web/src/components/settings/integration-configs.tsx:121 msgid "Add a <0>Generic Destination and paste the URL above" -msgstr "" +msgstr "Aggiungi una <0>Destinazione generica e incolla l'URL sopra" -#: apps/native/src/components/settings/integration-configs.ts:92 -#: apps/web/src/components/settings/integration-configs.tsx:198 +#: apps/native/src/components/settings/integration-configs.ts:89 +#: apps/web/src/components/settings/integration-configs.tsx:178 msgid "Add a new webhook and paste the URL above" -msgstr "" +msgstr "Aggiungi un nuovo webhook e incolla l'URL sopra" -#: apps/web/src/components/explore/hero-banner.tsx:99 +#: apps/web/src/components/explore/hero-banner.tsx:87 msgid "Add to Library" -msgstr "" +msgstr "Aggiungi alla libreria" -#: apps/native/src/components/titles/status-action-button.tsx:72 +#: apps/native/src/components/titles/status-action-button.tsx:73 msgid "Add to watchlist" -msgstr "" +msgstr "Aggiungi alla watchlist" -#: apps/native/src/components/explore/hero-banner.tsx:157 -#: apps/native/src/components/ui/poster-card.tsx:238 -#: apps/web/src/components/title-card.tsx:146 +#: apps/native/src/components/explore/hero-banner.tsx:132 +#: apps/native/src/components/ui/poster-card.tsx:212 +#: apps/web/src/components/title-card.tsx:133 msgid "Add to Watchlist" -msgstr "" +msgstr "Aggiungi alla watchlist" -#: apps/native/src/lib/title-actions.ts:23 +#: apps/native/src/lib/title-actions.ts:24 msgid "Added \"{titleName}\" to watchlist" -msgstr "" +msgstr "Aggiunto \"{titleName}\" alla watchlist" #: apps/native/src/hooks/use-title-actions.ts:44 -#: apps/native/src/hooks/use-title-actions.ts:60 -#: apps/native/src/lib/title-actions.ts:24 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:59 +#: apps/native/src/lib/title-actions.ts:25 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Added to watchlist" -msgstr "" +msgstr "Aggiunto alla watchlist" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:353 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:454 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:499 -#: apps/web/src/components/nav-bar.tsx:235 -#: apps/web/src/components/settings/account-section.tsx:335 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:342 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/components/nav-bar.tsx:223 +#: apps/web/src/components/settings/account-section.tsx:309 msgid "Admin" msgstr "" -#: apps/web/src/routes/_app/settings.tsx:124 +#: apps/web/src/routes/_app/settings.tsx:118 msgid "Admin only" -msgstr "" +msgstr "Solo admin" -#: apps/native/src/app/person/[id].tsx:308 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "age {age}" -msgstr "" +msgstr "età {age}" -#: apps/native/src/components/explore/filterable-title-row.tsx:119 -#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/native/src/components/explore/filterable-title-row.tsx:117 +#: apps/web/src/components/people/filmography-grid.tsx:56 msgid "All" -msgstr "" +msgstr "Tutti" -#: apps/web/src/components/settings/registration-section.tsx:61 +#: apps/web/src/components/settings/registration-section.tsx:54 msgid "Allow new users to create accounts" -msgstr "" +msgstr "Consenti la creazione di nuovi account" -#: apps/web/src/components/auth-form.tsx:278 +#: apps/web/src/components/auth-form.tsx:259 msgid "Already have an account?" -msgstr "" +msgstr "Hai già un account?" -#: apps/native/src/app/(auth)/register.tsx:239 +#: apps/native/src/app/(auth)/register.tsx:211 msgid "Already have an account? Sign in" -msgstr "" +msgstr "Hai già un account? Accedi" -#: apps/web/src/routes/__root.tsx:146 +#: apps/web/src/routes/__root.tsx:143 msgid "An unexpected error occurred while loading this page. You can try again or head back to the dashboard." -msgstr "" +msgstr "Si è verificato un errore imprevisto durante il caricamento di questa pagina. Puoi riprovare o tornare alla dashboard." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:427 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:407 msgid "Anonymous usage reporting" -msgstr "" +msgstr "Segnalazione anonima dell'utilizzo" -#: apps/web/src/routes/_app/settings.tsx:102 +#: apps/web/src/routes/_app/settings.tsx:99 msgid "App Settings" -msgstr "" +msgstr "Impostazioni app" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:378 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:362 msgid "Application" -msgstr "" +msgstr "Applicazione" -#: apps/native/src/components/settings/integration-card.tsx:151 +#: apps/native/src/components/settings/integration-card.tsx:139 msgid "Are you sure you want to disconnect {label}? The current URL will stop working." -msgstr "" +msgstr "Sei sicuro di voler disconnettere {label}? L'URL attuale smetterà di funzionare." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/components/header-avatar.tsx:70 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/components/header-avatar.tsx:62 msgid "Are you sure you want to sign out?" -msgstr "" +msgstr "Sei sicuro di voler uscire?" -#: apps/web/src/components/settings/imports-section.tsx:450 +#: apps/web/src/components/settings/imports-section.tsx:429 msgid "Authorization succeeded but failed to fetch your library. Please try again." -msgstr "" +msgstr "Autorizzazione riuscita ma impossibile recuperare la libreria. Riprova." -#: apps/web/src/components/settings/imports-section.tsx:440 +#: apps/web/src/components/settings/imports-section.tsx:419 msgid "Authorization was denied. Please try again." -msgstr "" +msgstr "Autorizzazione negata. Riprova." #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:580 msgid "Authorize Sofa to read your {0} library. No password shared." -msgstr "" +msgstr "Autorizza Sofa a leggere la tua libreria {0}. Nessuna password condivisa." -#: apps/web/src/components/settings/update-check-section.tsx:60 +#: apps/web/src/components/settings/update-check-section.tsx:51 msgid "Automatic update checks" -msgstr "" +msgstr "Controllo aggiornamenti automatico" -#: apps/web/src/components/settings/backup-schedule-section.tsx:279 +#: apps/web/src/components/settings/backup-schedule-section.tsx:248 msgid "Automatically back up your database on a schedule" -msgstr "" +msgstr "Esegui il backup automatico del database secondo una pianificazione" -#: apps/web/src/components/settings/system-health-section.tsx:332 +#: apps/web/src/components/settings/system-health-section.tsx:305 msgid "Availability" -msgstr "" +msgstr "Disponibilità" -#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:94 msgid "Back to Login" -msgstr "" +msgstr "Torna al login" -#: apps/web/src/components/settings/system-health-section.tsx:382 +#: apps/web/src/components/settings/system-health-section.tsx:348 msgid "Background jobs" -msgstr "" +msgstr "Job in background" -#: apps/web/src/components/settings/system-health-section.tsx:336 +#: apps/web/src/components/settings/system-health-section.tsx:309 msgid "Backup" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:69 +#: apps/web/src/components/settings/backup-section.tsx:62 msgid "Backup created" -msgstr "" +msgstr "Backup creato" -#: apps/web/src/components/settings/backup-section.tsx:94 +#: apps/web/src/components/settings/backup-section.tsx:85 msgid "Backup deleted" -msgstr "" +msgstr "Backup eliminato" -#: apps/web/src/components/settings/backup-schedule-section.tsx:234 +#: apps/web/src/components/settings/backup-schedule-section.tsx:216 msgid "Backup schedule" -msgstr "" +msgstr "Pianificazione backup" -#: apps/web/src/components/settings/system-health-section.tsx:641 -#: apps/web/src/routes/_app/settings.tsx:166 +#: apps/web/src/components/settings/system-health-section.tsx:589 +#: apps/web/src/routes/_app/settings.tsx:154 msgid "Backups" -msgstr "" +msgstr "Backup" #: apps/web/src/components/settings/backup-schedule-section.tsx:272 #~ msgid "backups." #~ msgstr "backups." -#: apps/web/src/components/titles/title-availability.tsx:139 +#: apps/web/src/components/titles/title-availability.tsx:115 msgid "Buy" -msgstr "" +msgstr "Acquista" -#: apps/web/src/components/settings/danger-section.tsx:89 +#: apps/web/src/components/settings/danger-section.tsx:85 msgid "Cache management" -msgstr "" +msgstr "Gestione cache" -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:66 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:74 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:67 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:75 msgid "Can't reach server" -msgstr "" +msgstr "Impossibile raggiungere il server" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:207 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:332 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:388 -#: apps/native/src/components/header-avatar.tsx:71 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:63 -#: apps/native/src/components/search/recently-viewed-list.tsx:37 -#: apps/native/src/components/settings/integration-card.tsx:138 -#: apps/native/src/components/settings/integration-card.tsx:153 -#: apps/web/src/components/settings/account-section.tsx:505 -#: apps/web/src/components/settings/backup-restore-section.tsx:107 -#: apps/web/src/components/settings/backup-section.tsx:270 -#: apps/web/src/components/settings/danger-section.tsx:129 -#: apps/web/src/components/settings/danger-section.tsx:171 -#: apps/web/src/components/settings/danger-section.tsx:214 -#: apps/web/src/components/settings/imports-section.tsx:645 -#: apps/web/src/components/settings/imports-section.tsx:710 -#: apps/web/src/components/settings/imports-section.tsx:837 -#: apps/web/src/components/titles/title-seasons.tsx:133 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:202 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:321 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:369 +#: apps/native/src/components/header-avatar.tsx:63 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:58 +#: apps/native/src/components/search/recently-viewed-list.tsx:32 +#: apps/native/src/components/settings/integration-card.tsx:126 +#: apps/native/src/components/settings/integration-card.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/web/src/components/settings/backup-restore-section.tsx:101 +#: apps/web/src/components/settings/backup-section.tsx:240 +#: apps/web/src/components/settings/danger-section.tsx:121 +#: apps/web/src/components/settings/danger-section.tsx:154 +#: apps/web/src/components/settings/danger-section.tsx:187 +#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:674 +#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/titles/title-seasons.tsx:127 msgid "Cancel" -msgstr "" +msgstr "Annulla" -#: apps/web/src/components/settings/account-section.tsx:307 +#: apps/web/src/components/settings/account-section.tsx:281 msgid "Cancel editing" -msgstr "" +msgstr "Annulla modifica" -#: apps/native/src/app/title/[id].tsx:559 +#: apps/native/src/app/title/[id].tsx:489 #: apps/web/src/components/titles/cast-carousel.tsx:21 msgid "Cast" msgstr "" -#: apps/web/src/components/titles/use-title-actions.ts:223 -#: apps/web/src/components/titles/use-title-actions.ts:301 +#: apps/web/src/components/titles/use-title-actions.ts:202 +#: apps/web/src/components/titles/use-title-actions.ts:280 msgid "Catch up" -msgstr "" +msgstr "Recupera episodi" #. placeholder {0}: episodeIds.length #. placeholder {1}: episodeIds.length -#: apps/web/src/components/titles/use-title-actions.ts:82 +#: apps/web/src/components/titles/use-title-actions.ts:72 msgid "Caught up — marked {0} {1, plural, one {episode} other {episodes}} as watched" -msgstr "" +msgstr "Recuperati — {0} {1, plural, one {episodio} other {episodi}} segnati come visti" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 -#: apps/web/src/components/settings/account-section.tsx:427 -#: apps/web/src/components/settings/account-section.tsx:432 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 +#: apps/web/src/components/settings/account-section.tsx:401 +#: apps/web/src/components/settings/account-section.tsx:406 msgid "Change password" -msgstr "" +msgstr "Cambia password" -#: apps/native/src/app/change-password.tsx:98 +#: apps/native/src/app/change-password.tsx:94 msgid "Change Password" -msgstr "" +msgstr "Cambia password" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:267 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:258 msgid "Change Photo" -msgstr "" +msgstr "Cambia foto" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:385 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "Change Server" -msgstr "" +msgstr "Cambia server" -#: apps/web/src/components/setup/refresh-button.tsx:30 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Check configuration" -msgstr "" +msgstr "Verifica configurazione" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:483 msgid "Check for updates" -msgstr "" +msgstr "Cerca aggiornamenti" -#: apps/web/src/components/settings/system-health-section.tsx:215 +#: apps/web/src/components/settings/system-health-section.tsx:196 msgid "Checked <0/>" -msgstr "" +msgstr "Controllato <0/>" -#: apps/web/src/components/setup/refresh-button.tsx:28 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Checking…" -msgstr "" +msgstr "Verifica in corso…" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:587 +#: apps/web/src/components/settings/imports-section.tsx:556 msgid "Choose how to import your {0} data." -msgstr "" +msgstr "Scegli come importare i tuoi dati {0}." #: apps/web/src/components/settings/language-section.tsx:29 #~ msgid "Choose your preferred display language" #~ msgstr "Choose your preferred display language" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:65 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:115 -#: apps/native/src/components/search/recently-viewed-list.tsx:39 -#: apps/native/src/components/search/recently-viewed-list.tsx:95 -msgid "Clear" -msgstr "" - -#: apps/web/src/components/command-palette.tsx:322 -msgid "Clear all" -msgstr "" - #: apps/native/src/components/search/recently-viewed-list.ios.tsx:60 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:104 #: apps/native/src/components/search/recently-viewed-list.tsx:34 +#: apps/native/src/components/search/recently-viewed-list.tsx:86 +msgid "Clear" +msgstr "Cancella" + +#: apps/web/src/components/command-palette.tsx:302 +msgid "Clear all" +msgstr "Cancella tutto" + +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "Clear Recently Viewed?" -msgstr "" +msgstr "Cancellare la cronologia recente?" -#: apps/native/src/components/settings/integration-configs.ts:109 -#: apps/native/src/components/settings/integration-configs.ts:127 +#: apps/native/src/components/settings/integration-configs.ts:104 +#: apps/native/src/components/settings/integration-configs.ts:122 msgid "Click \"+\" and select \"Custom Lists\"" -msgstr "" +msgstr "Clicca \"+\" e seleziona \"Custom Lists\"" -#: apps/native/src/components/settings/integration-configs.ts:55 +#: apps/native/src/components/settings/integration-configs.ts:56 msgid "Click \"Add Webhook\" and paste the URL above" -msgstr "" +msgstr "Clicca \"Add Webhook\" e incolla l'URL sopra" -#: apps/web/src/components/settings/integration-configs.tsx:237 -#: apps/web/src/components/settings/integration-configs.tsx:277 +#: apps/web/src/components/settings/integration-configs.tsx:212 +#: apps/web/src/components/settings/integration-configs.tsx:249 msgid "Click <0>+ and select <1>Custom Lists" -msgstr "" +msgstr "Clicca <0>+ e seleziona <1>Custom Lists" -#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:73 msgid "Click <0>Add Webhook and paste the URL above" -msgstr "" +msgstr "Clicca <0>Add Webhook e incolla l'URL sopra" #: apps/native/src/components/navigation/modal-stack-header.tsx:14 msgid "Close" -msgstr "" +msgstr "Chiudi" -#: apps/native/src/app/(tabs)/(home)/index.tsx:63 -#: apps/native/src/components/titles/status-action-button.tsx:44 -#: apps/web/src/components/dashboard/stats-display.tsx:238 -#: apps/web/src/components/title-card.tsx:77 -#: apps/web/src/components/titles/status-button.tsx:30 +#: apps/native/src/app/(tabs)/(home)/index.tsx:54 +#: apps/native/src/components/titles/status-action-button.tsx:45 +#: apps/web/src/components/dashboard/stats-display.tsx:219 +#: apps/web/src/components/title-card.tsx:74 +#: apps/web/src/components/titles/status-button.tsx:25 msgid "Completed" -msgstr "" +msgstr "Completato" -#: apps/native/src/app/change-password.tsx:173 -#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/native/src/app/change-password.tsx:167 +#: apps/web/src/components/settings/account-section.tsx:451 msgid "Confirm new password" -msgstr "" +msgstr "Conferma nuova password" -#: apps/native/src/app/(auth)/server-url.tsx:207 -#: apps/web/src/components/settings/imports-section.tsx:499 +#: apps/native/src/app/(auth)/server-url.tsx:182 +#: apps/web/src/components/settings/imports-section.tsx:478 msgid "Connect" -msgstr "" +msgstr "Connetti" #. placeholder {0}: config.label -#: apps/web/src/components/settings/integration-card.tsx:203 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connect {0}" -msgstr "" +msgstr "Connetti {0}" -#: apps/native/src/components/settings/integration-card.tsx:238 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connect {label}" -msgstr "" +msgstr "Connetti {label}" -#: apps/web/src/components/settings/imports-section.tsx:665 +#: apps/web/src/components/settings/imports-section.tsx:631 msgid "Connect to {source}" -msgstr "" +msgstr "Connetti a {source}" -#: apps/web/src/routes/setup.tsx:101 +#: apps/web/src/routes/setup.tsx:98 msgid "Connect to TMDB" -msgstr "" +msgstr "Connetti a TMDB" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:608 +#: apps/web/src/components/settings/imports-section.tsx:577 msgid "Connect with {0}" -msgstr "" +msgstr "Connetti con {0}" -#: apps/native/src/app/(auth)/server-url.tsx:197 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:474 -#: apps/web/src/components/settings/system-health-section.tsx:256 +#: apps/native/src/app/(auth)/server-url.tsx:176 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:449 +#: apps/web/src/components/settings/system-health-section.tsx:236 msgid "Connected" -msgstr "" +msgstr "Connesso" -#: apps/web/src/components/settings/imports-section.tsx:722 +#: apps/web/src/components/settings/imports-section.tsx:686 msgid "Connected to {source}" -msgstr "" +msgstr "Connesso a {source}" -#: apps/native/src/app/(auth)/login.tsx:240 +#: apps/native/src/app/(auth)/login.tsx:211 msgid "Connected to <0>{serverHost}. Tap to change." -msgstr "" +msgstr "Connesso a <0>{serverHost}. Tocca per cambiare." -#: apps/native/src/app/(auth)/server-url.tsx:186 +#: apps/native/src/app/(auth)/server-url.tsx:169 msgid "Connecting to server..." -msgstr "" +msgstr "Connessione al server in corso..." -#: apps/web/src/components/settings/integration-card.tsx:201 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connecting..." -msgstr "" +msgstr "Connessione in corso..." -#: apps/native/src/components/settings/integration-card.tsx:237 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connecting…" -msgstr "" +msgstr "Connessione in corso…" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:390 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:371 msgid "Continue" -msgstr "" +msgstr "Continua" -#: apps/native/src/app/(tabs)/(home)/index.tsx:113 -#: apps/web/src/components/dashboard/continue-watching-section.tsx:25 +#: apps/native/src/app/(tabs)/(home)/index.tsx:99 +#: apps/web/src/components/dashboard/continue-watching-section.tsx:22 msgid "Continue Watching" -msgstr "" +msgstr "Continua a guardare" -#: apps/web/src/components/setup/copy-button.tsx:25 +#: apps/web/src/components/setup/copy-button.tsx:26 msgid "Copied" -msgstr "" +msgstr "Copiato" -#: apps/web/src/components/setup/copy-button.tsx:30 +#: apps/web/src/components/setup/copy-button.tsx:31 msgid "Copy" -msgstr "" +msgstr "Copia" -#: apps/web/src/components/settings/integration-card.tsx:246 +#: apps/web/src/components/settings/integration-card.tsx:208 msgid "Copy URL" -msgstr "" +msgstr "Copia URL" -#: apps/native/src/components/settings/integrations-section.tsx:29 +#: apps/native/src/components/settings/integrations-section.tsx:30 msgid "Could not load integrations" -msgstr "" +msgstr "Impossibile caricare le integrazioni" -#: apps/native/src/app/person/[id].tsx:216 +#: apps/native/src/app/person/[id].tsx:185 msgid "Could not load person details" -msgstr "" +msgstr "Impossibile caricare i dettagli della persona" -#: apps/web/src/components/auth-form.tsx:247 +#: apps/web/src/components/auth-form.tsx:231 msgid "Create account" -msgstr "" +msgstr "Crea account" -#: apps/native/src/app/(auth)/register.tsx:115 -#: apps/native/src/app/(auth)/register.tsx:225 +#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:200 msgid "Create Account" -msgstr "" +msgstr "Crea account" -#: apps/native/src/app/(auth)/login.tsx:216 +#: apps/native/src/app/(auth)/login.tsx:194 msgid "Create an account" -msgstr "" +msgstr "Crea un account" #: apps/web/src/components/auth-form.tsx:110 msgid "Create your account" -msgstr "" +msgstr "Crea il tuo account" -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "Creating…" -msgstr "" +msgstr "Creazione in corso…" -#: apps/native/src/app/change-password.tsx:120 -#: apps/web/src/components/settings/account-section.tsx:449 +#: apps/native/src/app/change-password.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:423 msgid "Current password" -msgstr "" +msgstr "Password attuale" -#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/components/settings/account-section.tsx:365 msgid "Current password is required" -msgstr "" +msgstr "La password attuale è obbligatoria" -#: apps/web/src/routes/_app/settings.tsx:195 +#: apps/web/src/routes/_app/settings.tsx:180 msgid "Danger Zone" -msgstr "" +msgstr "Zona pericolosa" -#: apps/web/src/routes/__root.tsx:167 -#: apps/web/src/routes/_app/people.$id.tsx:78 -#: apps/web/src/routes/_app/titles.$id.tsx:126 -#: apps/web/src/routes/_app/titles.$id.tsx:172 +#: apps/web/src/routes/__root.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:76 +#: apps/web/src/routes/_app/titles.$id.tsx:119 +#: apps/web/src/routes/_app/titles.$id.tsx:165 msgid "Dashboard" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:463 -#: apps/web/src/components/settings/system-health-section.tsx:229 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:439 +#: apps/web/src/components/settings/system-health-section.tsx:210 msgid "Database" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:126 +#: apps/web/src/components/settings/backup-section.tsx:112 msgid "Database backups" -msgstr "" +msgstr "Backup del database" -#: apps/web/src/components/settings/backup-restore-section.tsx:31 +#: apps/web/src/components/settings/backup-restore-section.tsx:32 msgid "Database restored. Reloading..." -msgstr "" +msgstr "Database ripristinato. Ricaricamento..." -#: apps/web/src/components/settings/backup-schedule-section.tsx:342 +#: apps/web/src/components/settings/backup-schedule-section.tsx:309 msgid "Day:" -msgstr "" +msgstr "Giorno:" +#: apps/web/src/components/settings/backup-section.tsx:222 #: apps/web/src/components/settings/backup-section.tsx:250 -#: apps/web/src/components/settings/backup-section.tsx:280 msgid "Delete" -msgstr "" +msgstr "Elimina" -#: apps/web/src/components/settings/backup-section.tsx:235 +#: apps/web/src/components/settings/backup-section.tsx:211 msgid "Delete backup" -msgstr "" +msgstr "Elimina backup" -#: apps/web/src/components/settings/backup-section.tsx:256 +#: apps/web/src/components/settings/backup-section.tsx:228 msgid "Delete backup?" -msgstr "" +msgstr "Eliminare il backup?" #. placeholder {0}: data.deletedFiles #: apps/web/src/components/settings/danger-section.tsx:54 msgid "Deleted {0, plural, one {# file} other {# files}}, freed {freed}" -msgstr "" +msgstr "Eliminati {0, plural, one {# file} other {# file}}, liberati {freed}" -#: apps/web/src/components/settings/imports-section.tsx:412 -#: apps/web/src/components/settings/imports-section.tsx:444 +#: apps/web/src/components/settings/imports-section.tsx:394 +#: apps/web/src/components/settings/imports-section.tsx:423 msgid "Device code expired. Please try again." -msgstr "" +msgstr "Il codice del dispositivo è scaduto. Riprova." -#: apps/native/src/app/person/[id].tsx:307 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "died at {age}" -msgstr "" +msgstr "morto a {age}" -#: apps/web/src/components/people/person-hero.tsx:73 +#: apps/web/src/components/people/person-hero.tsx:71 msgid "Director" -msgstr "" +msgstr "Regista" -#: apps/web/src/components/settings/system-health-section.tsx:431 -#: apps/web/src/components/settings/system-health-section.tsx:632 +#: apps/web/src/components/settings/system-health-section.tsx:394 +#: apps/web/src/components/settings/system-health-section.tsx:580 msgid "Disabled" -msgstr "" +msgstr "Disabilitato" -#: apps/native/src/components/settings/integration-card.tsx:155 -#: apps/native/src/components/settings/integration-card.tsx:298 -#: apps/web/src/components/settings/integration-card.tsx:274 +#: apps/native/src/components/settings/integration-card.tsx:143 +#: apps/native/src/components/settings/integration-card.tsx:257 +#: apps/web/src/components/settings/integration-card.tsx:234 msgid "Disconnect" -msgstr "" +msgstr "Disconnetti" -#: apps/native/src/components/settings/integration-card.tsx:150 +#: apps/native/src/components/settings/integration-card.tsx:138 msgid "Disconnect {label}" -msgstr "" +msgstr "Disconnetti {label}" -#: apps/native/src/app/(auth)/server-url.tsx:242 +#: apps/native/src/app/(auth)/server-url.tsx:217 msgid "Don't have a server?" -msgstr "" +msgstr "Non hai un server?" -#: apps/web/src/components/auth-form.tsx:288 +#: apps/web/src/components/auth-form.tsx:269 msgid "Don't have an account?" -msgstr "" +msgstr "Non hai un account?" -#: apps/web/src/components/settings/imports-section.tsx:962 +#: apps/web/src/components/settings/imports-section.tsx:918 msgid "Done" -msgstr "" +msgstr "Fatto" #: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to clear this filter" -msgstr "" +msgstr "Tocca due volte per rimuovere questo filtro" -#: apps/native/src/components/explore/genre-chip.tsx:28 +#: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to filter by {label}" -msgstr "" +msgstr "Tocca due volte per filtrare per {label}" -#: apps/web/src/components/settings/backup-section.tsx:71 -#: apps/web/src/components/settings/backup-section.tsx:223 +#: apps/web/src/components/settings/backup-section.tsx:64 +#: apps/web/src/components/settings/backup-section.tsx:199 msgid "Download" -msgstr "" +msgstr "Scarica" -#: apps/web/src/components/settings/backup-section.tsx:214 +#: apps/web/src/components/settings/backup-section.tsx:190 msgid "Download backup" -msgstr "" +msgstr "Scarica backup" -#: apps/web/src/components/people/person-hero.tsx:79 +#: apps/web/src/components/people/person-hero.tsx:77 msgid "Editor" -msgstr "" +msgstr "Montatore" -#: apps/native/src/app/(auth)/login.tsx:133 -#: apps/native/src/app/(auth)/register.tsx:154 -#: apps/web/src/components/auth-form.tsx:201 +#: apps/native/src/app/(auth)/login.tsx:123 +#: apps/native/src/app/(auth)/register.tsx:139 +#: apps/web/src/components/auth-form.tsx:190 msgid "Email" msgstr "" -#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:72 msgid "Enable the \"Playback Stop\" notification type" -msgstr "" +msgstr "Abilita il tipo di notifica \"Playback Stop\"" -#: apps/native/src/components/settings/integration-configs.ts:93 +#: apps/native/src/components/settings/integration-configs.ts:90 msgid "Enable the \"Playback\" event category" -msgstr "" +msgstr "Abilita la categoria evento \"Playback\"" -#: apps/web/src/components/settings/integration-configs.tsx:140 +#: apps/web/src/components/settings/integration-configs.tsx:127 msgid "Enable the <0>Playback Stop notification type" -msgstr "" +msgstr "Abilita il tipo di notifica <0>Playback Stop" -#: apps/web/src/components/settings/integration-configs.tsx:201 +#: apps/web/src/components/settings/integration-configs.tsx:181 msgid "Enable the <0>Playback event category" -msgstr "" +msgstr "Abilita la categoria evento <0>Playback" -#: apps/web/src/components/settings/imports-section.tsx:668 +#: apps/web/src/components/settings/imports-section.tsx:634 msgid "Enter the code below on {source}'s website to authorize Sofa." -msgstr "" +msgstr "Inserisci il codice qui sotto sul sito di {source} per autorizzare Sofa." -#: apps/web/src/components/settings/account-section.tsx:435 +#: apps/web/src/components/settings/account-section.tsx:409 msgid "Enter your current password and choose a new one." -msgstr "" +msgstr "Inserisci la tua password attuale e scegline una nuova." -#: apps/native/src/app/(auth)/server-url.tsx:151 +#: apps/native/src/app/(auth)/server-url.tsx:140 msgid "Enter your Sofa server URL to get started" -msgstr "" +msgstr "Inserisci l'URL del tuo server Sofa per iniziare" -#: apps/web/src/components/settings/system-health-section.tsx:289 +#: apps/web/src/components/settings/system-health-section.tsx:267 msgid "Environment" -msgstr "" +msgstr "Ambiente" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:29 -#: apps/native/src/components/titles/episode-row.tsx:55 +#: apps/native/src/components/titles/episode-row.tsx:27 +#: apps/native/src/components/titles/episode-row.tsx:48 msgid "Episode {0}" -msgstr "" +msgstr "Episodio {0}" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:36 +#: apps/native/src/components/titles/episode-row.tsx:34 msgid "Episode {0}, {episodeLabel}" -msgstr "" +msgstr "Episodio {0}, {episodeLabel}" -#: apps/native/src/hooks/use-title-actions.ts:123 -#: apps/native/src/lib/title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:111 +#: apps/native/src/lib/title-actions.ts:108 msgid "Episode unwatched" -msgstr "" +msgstr "Episodio non visto" -#: apps/native/src/hooks/use-title-actions.ts:109 -#: apps/native/src/lib/title-actions.ts:101 +#: apps/native/src/hooks/use-title-actions.ts:101 +#: apps/native/src/lib/title-actions.ts:98 msgid "Episode watched" -msgstr "" +msgstr "Episodio visto" -#: apps/web/src/components/settings/imports-section.tsx:780 -#: apps/web/src/components/titles/title-seasons.tsx:102 +#: apps/web/src/components/settings/imports-section.tsx:742 +#: apps/web/src/components/titles/title-seasons.tsx:96 msgid "Episodes" -msgstr "" +msgstr "Episodi" #: apps/web/src/components/dashboard/stats-display.tsx:162 #~ msgid "Episodes {periodSelect}" #~ msgstr "Episodes {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:164 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Episodes {select}" -msgstr "" +msgstr "Episodi {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:61 +#: apps/native/src/app/(tabs)/(home)/index.tsx:52 msgid "Episodes this week" -msgstr "" +msgstr "Episodi di questa settimana" -#: apps/native/src/app/change-password.tsx:71 -#: apps/native/src/app/change-password.tsx:81 +#: apps/native/src/app/change-password.tsx:67 +#: apps/native/src/app/change-password.tsx:77 msgid "Error" -msgstr "" +msgstr "Errore" #. placeholder {0}: result.errors.length -#: apps/web/src/components/settings/imports-section.tsx:929 +#: apps/web/src/components/settings/imports-section.tsx:887 msgid "Errors ({0})" -msgstr "" +msgstr "Errori ({0})" -#: apps/native/src/app/(tabs)/(home)/index.tsx:143 -#: apps/web/src/components/nav-bar.tsx:126 -#: apps/web/src/components/nav-bar.tsx:291 +#: apps/native/src/app/(tabs)/(home)/index.tsx:127 +#: apps/web/src/components/nav-bar.tsx:116 +#: apps/web/src/components/nav-bar.tsx:277 msgid "Explore" -msgstr "" +msgstr "Esplora" -#: apps/web/src/routes/_app/people.$id.tsx:70 -#: apps/web/src/routes/_app/titles.$id.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:68 +#: apps/web/src/routes/_app/titles.$id.tsx:157 msgid "Explore titles" -msgstr "" +msgstr "Esplora titoli" -#: apps/web/src/components/settings/imports-section.tsx:923 +#: apps/web/src/components/settings/imports-section.tsx:881 msgid "Failed" -msgstr "" +msgstr "Non riuscito" -#: apps/native/src/hooks/use-title-actions.ts:49 -#: apps/native/src/lib/title-actions.ts:28 +#: apps/native/src/hooks/use-title-actions.ts:48 +#: apps/native/src/lib/title-actions.ts:29 msgid "Failed to add to watchlist" -msgstr "" +msgstr "Impossibile aggiungere alla watchlist" -#: apps/web/src/components/titles/use-title-actions.ts:90 +#: apps/web/src/components/titles/use-title-actions.ts:80 msgid "Failed to catch up" -msgstr "" +msgstr "Impossibile recuperare gli episodi" -#: apps/native/src/app/change-password.tsx:71 -#: apps/web/src/components/settings/account-section.tsx:411 +#: apps/native/src/app/change-password.tsx:67 +#: apps/web/src/components/settings/account-section.tsx:385 msgid "Failed to change password" -msgstr "" +msgstr "Impossibile cambiare la password" -#: apps/web/src/components/settings/imports-section.tsx:398 +#: apps/web/src/components/settings/imports-section.tsx:380 msgid "Failed to connect" -msgstr "" +msgstr "Impossibile connettersi" -#: apps/native/src/components/settings/integration-card.tsx:99 -#: apps/web/src/components/settings/integration-card.tsx:108 +#: apps/native/src/components/settings/integration-card.tsx:87 +#: apps/web/src/components/settings/integration-card.tsx:91 msgid "Failed to connect {label}" -msgstr "" +msgstr "Impossibile connettere {label}" -#: apps/native/src/app/(auth)/register.tsx:67 +#: apps/native/src/app/(auth)/register.tsx:57 msgid "Failed to create account" -msgstr "" +msgstr "Impossibile creare l'account" -#: apps/web/src/components/settings/backup-section.tsx:81 +#: apps/web/src/components/settings/backup-section.tsx:74 msgid "Failed to create backup" -msgstr "" +msgstr "Impossibile creare il backup" -#: apps/web/src/components/settings/backup-section.tsx:97 +#: apps/web/src/components/settings/backup-section.tsx:88 msgid "Failed to delete backup" -msgstr "" +msgstr "Impossibile eliminare il backup" -#: apps/native/src/components/settings/integration-card.tsx:109 -#: apps/web/src/components/settings/integration-card.tsx:125 +#: apps/native/src/components/settings/integration-card.tsx:97 +#: apps/web/src/components/settings/integration-card.tsx:108 msgid "Failed to disconnect {label}" -msgstr "" +msgstr "Impossibile disconnettere {label}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:215 +#: apps/web/src/components/settings/backup-schedule-section.tsx:200 msgid "Failed to load backup schedule settings." -msgstr "" +msgstr "Impossibile caricare le impostazioni di pianificazione backup." -#: apps/web/src/routes/_app/titles.$id.tsx:115 +#: apps/web/src/routes/_app/titles.$id.tsx:110 msgid "Failed to load title" -msgstr "" +msgstr "Impossibile caricare il titolo" -#: apps/web/src/components/titles/use-title-actions.ts:367 +#: apps/web/src/components/titles/use-title-actions.ts:344 msgid "Failed to mark all episodes as watched" -msgstr "" +msgstr "Impossibile segnare tutti gli episodi come visti" -#: apps/native/src/hooks/use-title-actions.ts:84 -#: apps/native/src/lib/title-actions.ts:68 -#: apps/web/src/components/titles/use-title-actions.ts:150 +#: apps/native/src/hooks/use-title-actions.ts:79 +#: apps/native/src/lib/title-actions.ts:67 +#: apps/web/src/components/titles/use-title-actions.ts:137 msgid "Failed to mark as watched" -msgstr "" +msgstr "Impossibile segnare come visto" -#: apps/native/src/hooks/use-title-actions.ts:113 -#: apps/native/src/lib/title-actions.ts:104 -#: apps/web/src/components/titles/use-title-actions.ts:237 +#: apps/native/src/hooks/use-title-actions.ts:104 +#: apps/native/src/lib/title-actions.ts:101 +#: apps/web/src/components/titles/use-title-actions.ts:216 msgid "Failed to mark episode" -msgstr "" +msgstr "Impossibile segnare l'episodio" -#: apps/native/src/hooks/use-title-actions.ts:141 -#: apps/native/src/lib/title-actions.ts:128 -#: apps/web/src/components/titles/use-title-actions.ts:315 +#: apps/native/src/hooks/use-title-actions.ts:124 +#: apps/native/src/lib/title-actions.ts:123 +#: apps/web/src/components/titles/use-title-actions.ts:294 msgid "Failed to mark some episodes" -msgstr "" +msgstr "Impossibile segnare alcuni episodi" -#: apps/web/src/components/settings/imports-section.tsx:225 +#: apps/web/src/components/settings/imports-section.tsx:218 msgid "Failed to parse file" -msgstr "" +msgstr "Impossibile analizzare il file" -#: apps/web/src/components/settings/imports-section.tsx:240 +#: apps/web/src/components/settings/imports-section.tsx:233 msgid "Failed to parse import data" -msgstr "" +msgstr "Impossibile analizzare i dati di importazione" -#: apps/web/src/components/settings/danger-section.tsx:75 +#: apps/web/src/components/settings/danger-section.tsx:72 msgid "Failed to purge caches" -msgstr "" +msgstr "Impossibile svuotare le cache" #: apps/web/src/components/settings/danger-section.tsx:58 msgid "Failed to purge image cache" -msgstr "" +msgstr "Impossibile svuotare la cache immagini" #: apps/web/src/components/settings/danger-section.tsx:45 msgid "Failed to purge metadata cache" -msgstr "" +msgstr "Impossibile svuotare la cache metadati" -#: apps/native/src/components/settings/integration-card.tsx:119 -#: apps/web/src/components/settings/integration-card.tsx:140 +#: apps/native/src/components/settings/integration-card.tsx:107 +#: apps/web/src/components/settings/integration-card.tsx:121 msgid "Failed to regenerate {label} URL" -msgstr "" +msgstr "Impossibile rigenerare l'URL di {label}" -#: apps/native/src/lib/title-actions.ts:78 +#: apps/native/src/lib/title-actions.ts:77 msgid "Failed to remove from library" -msgstr "" +msgstr "Impossibile rimuovere dalla libreria" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:134 -#: apps/web/src/components/settings/account-section.tsx:134 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:131 +#: apps/web/src/components/settings/account-section.tsx:126 msgid "Failed to remove profile picture" -msgstr "" +msgstr "Impossibile rimuovere l'immagine del profilo" -#: apps/native/src/app/(auth)/login.tsx:56 +#: apps/native/src/app/(auth)/login.tsx:53 msgid "Failed to sign in" -msgstr "" +msgstr "Impossibile accedere" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:388 +#: apps/web/src/components/settings/imports-section.tsx:370 msgid "Failed to start {0} connection" -msgstr "" +msgstr "Impossibile avviare la connessione {0}" -#: apps/web/src/components/settings/system-health-section.tsx:348 +#: apps/web/src/components/settings/system-health-section.tsx:320 msgid "Failed to trigger job" -msgstr "" +msgstr "Impossibile avviare il job" -#: apps/native/src/hooks/use-title-actions.ts:129 -#: apps/native/src/lib/title-actions.ts:114 -#: apps/web/src/components/titles/use-title-actions.ts:181 +#: apps/native/src/hooks/use-title-actions.ts:114 +#: apps/native/src/lib/title-actions.ts:111 +#: apps/web/src/components/titles/use-title-actions.ts:163 msgid "Failed to unmark episode" -msgstr "" +msgstr "Impossibile rimuovere il segno dall'episodio" -#: apps/web/src/components/titles/use-title-actions.ts:343 +#: apps/web/src/components/titles/use-title-actions.ts:320 msgid "Failed to unmark some episodes" -msgstr "" +msgstr "Impossibile rimuovere il segno da alcuni episodi" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:112 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:109 msgid "Failed to update name" -msgstr "" +msgstr "Impossibile aggiornare il nome" -#: apps/native/src/hooks/use-title-actions.ts:101 -#: apps/native/src/lib/title-actions.ts:94 -#: apps/web/src/components/titles/use-title-actions.ts:136 +#: apps/native/src/hooks/use-title-actions.ts:94 +#: apps/native/src/lib/title-actions.ts:91 +#: apps/web/src/components/titles/use-title-actions.ts:123 msgid "Failed to update rating" -msgstr "" +msgstr "Impossibile aggiornare la valutazione" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:172 -#: apps/web/src/components/settings/registration-section.tsx:44 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:169 +#: apps/web/src/components/settings/registration-section.tsx:37 msgid "Failed to update registration setting" -msgstr "" +msgstr "Impossibile aggiornare l'impostazione di registrazione" -#: apps/web/src/components/settings/backup-schedule-section.tsx:154 +#: apps/web/src/components/settings/backup-schedule-section.tsx:145 msgid "Failed to update retention setting" -msgstr "" +msgstr "Impossibile aggiornare l'impostazione di conservazione" -#: apps/web/src/components/settings/backup-schedule-section.tsx:156 +#: apps/web/src/components/settings/backup-schedule-section.tsx:147 msgid "Failed to update schedule" -msgstr "" +msgstr "Impossibile aggiornare la pianificazione" -#: apps/web/src/components/settings/backup-schedule-section.tsx:152 +#: apps/web/src/components/settings/backup-schedule-section.tsx:143 msgid "Failed to update scheduled backup setting" -msgstr "" +msgstr "Impossibile aggiornare l'impostazione di backup pianificato" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:191 -#: apps/web/src/components/settings/update-check-section.tsx:43 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:186 +#: apps/web/src/components/settings/update-check-section.tsx:37 msgid "Failed to update setting" -msgstr "" +msgstr "Impossibile aggiornare l'impostazione" -#: apps/native/src/hooks/use-title-actions.ts:72 -#: apps/native/src/lib/title-actions.ts:40 -#: apps/native/src/lib/title-actions.ts:54 -#: apps/web/src/components/titles/use-title-actions.ts:114 +#: apps/native/src/hooks/use-title-actions.ts:69 +#: apps/native/src/lib/title-actions.ts:41 +#: apps/native/src/lib/title-actions.ts:55 +#: apps/web/src/components/titles/use-title-actions.ts:101 msgid "Failed to update status" -msgstr "" +msgstr "Impossibile aggiornare lo stato" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:123 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:120 msgid "Failed to upload avatar" -msgstr "" +msgstr "Impossibile caricare l'avatar" -#: apps/web/src/components/settings/imports-section.tsx:725 +#: apps/web/src/components/settings/imports-section.tsx:689 msgid "Fetching your library data from {source}..." -msgstr "" +msgstr "Recupero dei dati della tua libreria da {source}..." -#: apps/native/src/app/person/[id].tsx:340 -#: apps/web/src/components/people/filmography-grid.tsx:69 +#: apps/native/src/app/person/[id].tsx:296 +#: apps/web/src/components/people/filmography-grid.tsx:67 msgid "Filmography" -msgstr "" +msgstr "Filmografia" -#: apps/web/src/components/settings/imports-section.tsx:915 +#: apps/web/src/components/settings/imports-section.tsx:873 msgid "Finished importing from {source}." -msgstr "" +msgstr "Importazione da {source} completata." -#: apps/web/src/components/titles/title-availability.tsx:140 +#: apps/web/src/components/titles/title-availability.tsx:116 msgid "Free" -msgstr "" +msgstr "Gratis" -#: apps/web/src/components/settings/danger-section.tsx:92 +#: apps/web/src/components/settings/danger-section.tsx:88 msgid "Free up disk space by clearing cached metadata and images" -msgstr "" +msgstr "Libera spazio sul disco svuotando i metadati e le immagini in cache" -#: apps/web/src/components/settings/backup-schedule-section.tsx:309 +#: apps/web/src/components/settings/backup-schedule-section.tsx:276 msgid "Frequency" -msgstr "" +msgstr "Frequenza" -#: apps/web/src/components/settings/backup-schedule-section.tsx:101 +#: apps/web/src/components/settings/backup-schedule-section.tsx:98 msgid "Friday" -msgstr "" +msgstr "Venerdì" -#: apps/web/src/components/landing-page.tsx:156 +#: apps/web/src/components/landing-page.tsx:157 msgid "Get Started" -msgstr "" +msgstr "Inizia" -#: apps/native/src/app/person/[id].tsx:220 -#: apps/native/src/app/person/[id].tsx:247 -#: apps/native/src/app/title/[id].tsx:255 +#: apps/native/src/app/person/[id].tsx:189 +#: apps/native/src/app/person/[id].tsx:213 +#: apps/native/src/app/title/[id].tsx:239 msgid "Go back" -msgstr "" +msgstr "Torna indietro" -#: apps/native/src/app/+not-found.tsx:37 +#: apps/native/src/app/+not-found.tsx:35 msgid "Go Home" -msgstr "" +msgstr "Vai alla home" -#: apps/web/src/components/settings/integration-configs.tsx:123 +#: apps/web/src/components/settings/integration-configs.tsx:115 msgid "Go to <0>Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Vai su <0>Dashboard > Plugin > Webhook" -#: apps/web/src/components/command-palette.tsx:368 +#: apps/web/src/components/command-palette.tsx:345 msgid "Go to Dashboard" -msgstr "" +msgstr "Vai alla Dashboard" -#: apps/native/src/components/settings/integration-configs.ts:71 +#: apps/native/src/components/settings/integration-configs.ts:70 msgid "Go to Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Vai su Dashboard > Plugin > Webhook" -#: apps/web/src/components/command-palette.tsx:379 +#: apps/web/src/components/command-palette.tsx:356 msgid "Go to Explore" -msgstr "" +msgstr "Vai a Esplora" -#: apps/web/src/components/settings/system-health-section.tsx:212 +#: apps/web/src/components/settings/system-health-section.tsx:193 msgid "Health status" -msgstr "" +msgstr "Stato di salute" -#: apps/web/src/components/dashboard/welcome-header.tsx:14 +#: apps/web/src/components/dashboard/welcome-header.tsx:10 msgid "Here's what's happening with your library" -msgstr "" +msgstr "Ecco cosa sta succedendo nella tua libreria" -#: apps/web/src/components/nav-bar.tsx:125 -#: apps/web/src/components/nav-bar.tsx:290 +#: apps/web/src/components/nav-bar.tsx:115 +#: apps/web/src/components/nav-bar.tsx:276 msgid "Home" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:335 -#: apps/web/src/components/settings/system-health-section.tsx:610 +#: apps/web/src/components/settings/system-health-section.tsx:308 +#: apps/web/src/components/settings/system-health-section.tsx:558 msgid "Image cache" -msgstr "" +msgstr "Cache immagini" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:479 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:453 msgid "Image Cache" -msgstr "" +msgstr "Cache immagini" -#: apps/web/src/components/settings/system-health-section.tsx:598 +#: apps/web/src/components/settings/system-health-section.tsx:546 msgid "Image cache and backup disk usage" -msgstr "" +msgstr "Utilizzo disco: cache immagini e backup" -#: apps/web/src/components/settings/imports-section.tsx:179 +#: apps/web/src/components/settings/imports-section.tsx:175 msgid "Import" -msgstr "" +msgstr "Importazione" -#: apps/web/src/components/settings/imports-section.tsx:840 +#: apps/web/src/components/settings/imports-section.tsx:801 msgid "Import {totalItems} items" -msgstr "" +msgstr "Importa {totalItems} elementi" -#: apps/web/src/components/settings/imports-section.tsx:912 +#: apps/web/src/components/settings/imports-section.tsx:870 msgid "Import complete" -msgstr "" +msgstr "Importazione completata" -#: apps/web/src/components/settings/imports-section.tsx:340 +#: apps/web/src/components/settings/imports-section.tsx:324 msgid "Import failed" -msgstr "" +msgstr "Importazione fallita" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:584 +#: apps/web/src/components/settings/imports-section.tsx:553 msgid "Import from {0}" -msgstr "" +msgstr "Importa da {0}" -#: apps/web/src/components/settings/imports-section.tsx:770 +#: apps/web/src/components/settings/imports-section.tsx:732 msgid "Import from {source}" -msgstr "" +msgstr "Importa da {source}" -#: apps/web/src/components/settings/imports-section.tsx:298 -#: apps/web/src/components/settings/imports-section.tsx:329 +#: apps/web/src/components/settings/imports-section.tsx:285 +#: apps/web/src/components/settings/imports-section.tsx:314 msgid "Import is still running in the background. Check back later." -msgstr "" +msgstr "L'importazione è ancora in corso in background. Ricontrolla più tardi." -#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/settings/imports-section.tsx:760 msgid "Import options" -msgstr "" +msgstr "Opzioni di importazione" -#: apps/web/src/components/settings/imports-section.tsx:921 +#: apps/web/src/components/settings/imports-section.tsx:879 msgid "Imported" -msgstr "" +msgstr "Importati" #. placeholder {0}: event.job.importedCount #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:292 +#: apps/web/src/components/settings/imports-section.tsx:281 msgid "Imported {0} items from {1}" -msgstr "" +msgstr "Importati {0} elementi da {1}" -#: apps/web/src/components/settings/imports-section.tsx:863 +#: apps/web/src/components/settings/imports-section.tsx:822 msgid "Importing from {source}" -msgstr "" +msgstr "Importazione da {source} in corso" -#: apps/native/src/app/(tabs)/(home)/index.tsx:62 +#: apps/native/src/app/(tabs)/(home)/index.tsx:53 msgid "In library" -msgstr "" +msgstr "In libreria" -#: apps/web/src/components/dashboard/stats-display.tsx:230 +#: apps/web/src/components/dashboard/stats-display.tsx:211 msgid "In Library" -msgstr "" +msgstr "In libreria" -#: apps/native/src/app/(tabs)/(home)/index.tsx:133 +#: apps/native/src/app/(tabs)/(home)/index.tsx:117 #: apps/web/src/components/dashboard/library-section.tsx:35 msgid "In Your Library" -msgstr "" +msgstr "Nella tua libreria" -#: apps/web/src/components/settings/integration-configs.tsx:105 +#: apps/web/src/components/settings/integration-configs.tsx:97 msgid "Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog" -msgstr "" +msgstr "Installa il <0>plugin Webhook<1/> dal catalogo plugin di Jellyfin" -#: apps/native/src/components/settings/integration-configs.ts:70 +#: apps/native/src/components/settings/integration-configs.ts:69 msgid "Install the Webhook plugin from Jellyfin's plugin catalog" -msgstr "" +msgstr "Installa il plugin Webhook dal catalogo plugin di Jellyfin" -#: apps/native/src/components/settings/integrations-section.tsx:20 -#: apps/web/src/components/settings/integrations-section.tsx:41 +#: apps/native/src/components/settings/integrations-section.tsx:21 +#: apps/web/src/components/settings/integrations-section.tsx:33 msgid "Integrations" -msgstr "" +msgstr "Integrazioni" -#: apps/web/src/components/settings/system-health-section.tsx:266 +#: apps/web/src/components/settings/system-health-section.tsx:246 msgid "Invalid token" -msgstr "" +msgstr "Token non valido" -#: apps/web/src/components/settings/system-health-section.tsx:399 +#: apps/web/src/components/settings/system-health-section.tsx:365 msgid "Job" msgstr "" @@ -1128,1306 +1128,1306 @@ msgstr "" #. placeholder {0}: (value: string | null) => value === "0" ? t`unlimited` : value ? t`last ${value}` : null #. placeholder {1}: [3, 5, 7, 14, 30, 0].map((n) => ( {n === 0 ? t`unlimited` : t`last ${n}`} )) -#: apps/web/src/components/settings/backup-schedule-section.tsx:243 +#: apps/web/src/components/settings/backup-schedule-section.tsx:222 msgid "Keeping <0><1><2>{0}<3>{1} backups." -msgstr "" +msgstr "Mantenendo <0><1><2>{0}<3>{1} backup." -#: apps/web/src/components/command-palette.tsx:389 -#: apps/web/src/components/command-palette.tsx:404 +#: apps/web/src/components/command-palette.tsx:366 +#: apps/web/src/components/command-palette.tsx:381 msgid "Keyboard Shortcuts" -msgstr "" +msgstr "Scorciatoie da tastiera" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:403 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:411 -#: apps/web/src/components/settings/language-section.tsx:42 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:383 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:391 +#: apps/web/src/components/settings/language-section.tsx:34 msgid "Language" -msgstr "" +msgstr "Lingua" -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "last {n}" -msgstr "" +msgstr "ultimi {n}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:258 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 msgid "last {value}" -msgstr "" +msgstr "ultimi {value}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:331 +#: apps/web/src/components/settings/integration-card.tsx:289 msgid "Last event {0}" -msgstr "" +msgstr "Ultimo evento {0}" -#: apps/native/src/components/settings/integration-configs.ts:29 +#: apps/native/src/components/settings/integration-configs.ts:30 msgid "Last event {timeAgo}" -msgstr "" +msgstr "Ultimo evento {timeAgo}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:338 +#: apps/web/src/components/settings/integration-card.tsx:296 msgid "Last polled {0}" -msgstr "" +msgstr "Ultimo polling {0}" -#: apps/native/src/components/settings/integration-configs.ts:37 +#: apps/native/src/components/settings/integration-configs.ts:38 msgid "Last polled {timeAgo}" -msgstr "" +msgstr "Ultimo polling {timeAgo}" -#: apps/web/src/components/settings/system-health-section.tsx:405 +#: apps/web/src/components/settings/system-health-section.tsx:371 msgid "Last run" -msgstr "" +msgstr "Ultima esecuzione" -#: apps/web/src/components/settings/system-health-section.tsx:441 +#: apps/web/src/components/settings/system-health-section.tsx:402 msgid "Last run failed" -msgstr "" +msgstr "Ultima esecuzione fallita" -#: apps/web/src/components/settings/system-health-section.tsx:437 +#: apps/web/src/components/settings/system-health-section.tsx:400 msgid "Last run succeeded" -msgstr "" +msgstr "Ultima esecuzione riuscita" -#: apps/web/src/components/settings/system-health-section.tsx:331 +#: apps/web/src/components/settings/system-health-section.tsx:304 msgid "Library refresh" -msgstr "" +msgstr "Aggiornamento libreria" -#: apps/web/src/components/auth-form.tsx:245 +#: apps/web/src/components/auth-form.tsx:229 msgid "Loading…" -msgstr "" +msgstr "Caricamento…" -#: apps/web/src/components/settings/imports-section.tsx:334 +#: apps/web/src/components/settings/imports-section.tsx:318 msgid "Lost connection to import. Check status in settings." -msgstr "" +msgstr "Connessione all'importazione persa. Controlla lo stato nelle impostazioni." -#: apps/web/src/components/settings/settings-shell.tsx:40 +#: apps/web/src/components/settings/settings-shell.tsx:34 msgid "Manage your account and preferences" -msgstr "" +msgstr "Gestisci il tuo account e le tue preferenze" -#: apps/web/src/components/settings/backup-section.tsx:182 +#: apps/web/src/components/settings/backup-section.tsx:158 msgid "Manual backup" -msgstr "" +msgstr "Backup manuale" -#: apps/web/src/components/titles/title-seasons.tsx:122 +#: apps/web/src/components/titles/title-seasons.tsx:116 msgid "Mark all episodes as watched?" -msgstr "" +msgstr "Segnare tutti gli episodi come visti?" -#: apps/native/src/components/titles/season-accordion.tsx:164 -#: apps/web/src/components/titles/title-seasons.tsx:115 -#: apps/web/src/components/titles/title-seasons.tsx:141 +#: apps/native/src/components/titles/season-accordion.tsx:152 +#: apps/web/src/components/titles/title-seasons.tsx:109 +#: apps/web/src/components/titles/title-seasons.tsx:135 msgid "Mark All Watched" -msgstr "" +msgstr "Segna tutti come visti" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:122 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:103 msgid "Mark as Completed" -msgstr "" +msgstr "Segna come completato" -#: apps/native/src/components/ui/poster-card.tsx:252 +#: apps/native/src/components/ui/poster-card.tsx:226 msgid "Mark as Watched" -msgstr "" +msgstr "Segna come visto" -#: apps/native/src/components/ui/poster-card.tsx:245 +#: apps/native/src/components/ui/poster-card.tsx:219 msgid "Mark as Watching" -msgstr "" +msgstr "Segna come in visione" -#: apps/native/src/app/title/[id].tsx:449 -#: apps/web/src/components/titles/title-actions.tsx:29 +#: apps/native/src/app/title/[id].tsx:400 +#: apps/web/src/components/titles/title-actions.tsx:27 msgid "Mark Watched" -msgstr "" +msgstr "Segna come visto" -#: apps/native/src/lib/title-actions.ts:49 +#: apps/native/src/lib/title-actions.ts:50 msgid "Marked \"{titleName}\" as completed" -msgstr "" +msgstr "Segnato \"{titleName}\" come completato" #: apps/native/src/lib/title-actions.ts:63 -#: apps/web/src/components/titles/use-title-actions.ts:147 +#: apps/web/src/components/titles/use-title-actions.ts:134 msgid "Marked \"{titleName}\" as watched" -msgstr "" +msgstr "Segnato \"{titleName}\" come visto" -#: apps/web/src/components/titles/use-title-actions.ts:360 +#: apps/web/src/components/titles/use-title-actions.ts:337 msgid "Marked all episodes as watched" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:62 -#: apps/native/src/lib/title-actions.ts:50 -msgid "Marked as completed" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:80 -#: apps/native/src/lib/title-actions.ts:64 -msgid "Marked as watched" -msgstr "" +msgstr "Tutti gli episodi segnati come visti" #: apps/native/src/hooks/use-title-actions.ts:61 -#: apps/native/src/lib/title-actions.ts:37 +#: apps/native/src/lib/title-actions.ts:51 +msgid "Marked as completed" +msgstr "Segnato come completato" + +#: apps/native/src/hooks/use-title-actions.ts:76 +#: apps/native/src/lib/title-actions.ts:63 +msgid "Marked as watched" +msgstr "Segnato come visto" + +#: apps/native/src/hooks/use-title-actions.ts:60 +#: apps/native/src/lib/title-actions.ts:38 msgid "Marked as watching" -msgstr "" +msgstr "Segnato come in visione" -#: apps/web/src/components/settings/account-section.tsx:340 +#: apps/web/src/components/settings/account-section.tsx:314 msgid "Member since {memberSince}" -msgstr "" +msgstr "Membro dal {memberSince}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:97 +#: apps/web/src/components/settings/backup-schedule-section.tsx:94 msgid "Monday" -msgstr "" +msgstr "Lunedì" -#: apps/native/src/app/title/[id].tsx:585 +#: apps/native/src/app/title/[id].tsx:508 msgid "More Like This" -msgstr "" +msgstr "Simili a questo" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:541 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:506 msgid "More Settings" -msgstr "" +msgstr "Altre impostazioni" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:35 -#: apps/native/src/components/search/search-result-row.tsx:96 -#: apps/web/src/components/explore/hero-banner.tsx:59 -#: apps/web/src/components/titles/title-hero.tsx:143 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:54 +#: apps/web/src/components/titles/title-hero.tsx:141 msgid "Movie" -msgstr "" +msgstr "Film" -#: apps/web/src/components/people/filmography-grid.tsx:59 -#: apps/web/src/components/settings/imports-section.tsx:779 +#: apps/web/src/components/people/filmography-grid.tsx:57 +#: apps/web/src/components/settings/imports-section.tsx:741 msgid "Movies" -msgstr "" +msgstr "Film" #: apps/web/src/components/dashboard/stats-display.tsx:161 #~ msgid "Movies {periodSelect}" #~ msgstr "Movies {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:162 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Movies {select}" -msgstr "" +msgstr "Film {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:60 +#: apps/native/src/app/(tabs)/(home)/index.tsx:51 msgid "Movies this month" -msgstr "" +msgstr "Film di questo mese" -#: apps/native/src/app/(auth)/register.tsx:124 -#: apps/web/src/components/auth-form.tsx:181 +#: apps/native/src/app/(auth)/register.tsx:111 +#: apps/web/src/components/auth-form.tsx:173 msgid "Name" -msgstr "" +msgstr "Nome" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:107 -#: apps/web/src/components/settings/account-section.tsx:80 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:104 +#: apps/web/src/components/settings/account-section.tsx:72 msgid "Name updated" -msgstr "" +msgstr "Nome aggiornato" -#: apps/web/src/components/settings/integration-card.tsx:301 +#: apps/web/src/components/settings/integration-card.tsx:259 msgid "Need more help?" -msgstr "" +msgstr "Serve altro aiuto?" -#: apps/web/src/components/settings/system-health-section.tsx:501 +#: apps/web/src/components/settings/system-health-section.tsx:456 msgid "Never" -msgstr "" +msgstr "Mai" -#: apps/web/src/components/settings/system-health-section.tsx:435 +#: apps/web/src/components/settings/system-health-section.tsx:398 msgid "Never run" -msgstr "" +msgstr "Mai eseguito" -#: apps/native/src/app/(auth)/register.tsx:98 +#: apps/native/src/app/(auth)/register.tsx:88 msgid "New account creation is currently disabled." -msgstr "" +msgstr "La creazione di nuovi account è attualmente disabilitata." -#: apps/web/src/routes/_auth/register.tsx:35 +#: apps/web/src/routes/_auth/register.tsx:36 msgid "New accounts are not being accepted right now. Contact the admin if you need access." -msgstr "" +msgstr "La registrazione di nuovi account non è disponibile al momento. Contatta l'amministratore per richiedere l'accesso." -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "New backup" -msgstr "" +msgstr "Nuovo backup" -#: apps/native/src/app/change-password.tsx:145 -#: apps/web/src/components/settings/account-section.tsx:463 +#: apps/native/src/app/change-password.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:437 msgid "New password" -msgstr "" +msgstr "Nuova password" -#: apps/web/src/components/settings/account-section.tsx:395 +#: apps/web/src/components/settings/account-section.tsx:369 msgid "New password must be at least 8 characters" -msgstr "" +msgstr "La nuova password deve contenere almeno 8 caratteri" -#: apps/web/src/components/people/filmography-grid.tsx:86 -#: apps/web/src/components/people/filmography-grid.tsx:99 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:87 msgid "Newest" -msgstr "" +msgstr "Più recenti" -#: apps/web/src/components/settings/backup-schedule-section.tsx:131 +#: apps/web/src/components/settings/backup-schedule-section.tsx:124 msgid "Next backup {distance}" -msgstr "" +msgstr "Prossimo backup {distance}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:46 +#: apps/native/src/components/titles/continue-watching-banner.tsx:42 msgid "Next Episode" -msgstr "" +msgstr "Episodio successivo" -#: apps/web/src/components/settings/system-health-section.tsx:408 +#: apps/web/src/components/settings/system-health-section.tsx:374 msgid "Next run" -msgstr "" +msgstr "Prossima esecuzione" -#: apps/web/src/components/settings/backup-section.tsx:110 -#: apps/web/src/components/settings/system-health-section.tsx:662 +#: apps/web/src/components/settings/backup-section.tsx:99 +#: apps/web/src/components/settings/system-health-section.tsx:607 msgid "No backups yet" -msgstr "" +msgstr "Nessun backup ancora" -#: apps/native/src/components/ui/offline-banner.ios.tsx:74 -#: apps/native/src/components/ui/offline-banner.ios.tsx:81 -#: apps/native/src/components/ui/offline-banner.tsx:59 +#: apps/native/src/components/ui/offline-banner.ios.tsx:75 +#: apps/native/src/components/ui/offline-banner.ios.tsx:82 +#: apps/native/src/components/ui/offline-banner.tsx:60 msgid "No internet connection" -msgstr "" +msgstr "Nessuna connessione internet" -#: apps/native/src/app/(tabs)/(search)/index.tsx:113 +#: apps/native/src/app/(tabs)/(search)/index.tsx:100 msgid "No results for \"{debouncedQuery}\"" -msgstr "" +msgstr "Nessun risultato per \"{debouncedQuery}\"" -#: apps/web/src/components/command-palette.tsx:217 +#: apps/web/src/components/command-palette.tsx:212 msgid "No results found." -msgstr "" +msgstr "Nessun risultato trovato." -#: apps/native/src/components/explore/filterable-title-row.tsx:139 -#: apps/web/src/components/explore/filterable-title-row.tsx:151 +#: apps/native/src/components/explore/filterable-title-row.tsx:135 +#: apps/web/src/components/explore/filterable-title-row.tsx:144 msgid "No titles found for this genre." -msgstr "" +msgstr "Nessun titolo trovato per questo genere." -#: apps/native/src/components/settings/integration-card.tsx:194 -#: apps/web/src/components/settings/integration-card.tsx:176 -#: apps/web/src/components/settings/system-health-section.tsx:249 +#: apps/native/src/components/settings/integration-card.tsx:174 +#: apps/web/src/components/settings/integration-card.tsx:153 +#: apps/web/src/components/settings/system-health-section.tsx:229 msgid "Not configured" -msgstr "" +msgstr "Non configurato" -#: apps/native/src/app/+not-found.tsx:17 +#: apps/native/src/app/+not-found.tsx:18 msgid "Not Found" -msgstr "" +msgstr "Non trovato" -#: apps/web/src/components/title-card.tsx:67 +#: apps/web/src/components/title-card.tsx:64 msgid "On Watchlist" -msgstr "" +msgstr "In watchlist" -#: apps/web/src/components/settings/imports-section.tsx:693 +#: apps/web/src/components/settings/imports-section.tsx:657 msgid "Open {source} to enter code" -msgstr "" +msgstr "Apri {source} per inserire il codice" -#: apps/web/src/components/settings/integration-card.tsx:308 +#: apps/web/src/components/settings/integration-card.tsx:266 msgid "Open docs" -msgstr "" +msgstr "Apri la documentazione" -#: apps/web/src/components/settings/integration-configs.tsx:190 +#: apps/web/src/components/settings/integration-configs.tsx:172 msgid "Open Emby, go to <0>Settings > Webhooks" -msgstr "" +msgstr "Apri Emby, vai su <0>Impostazioni > Webhook" -#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/native/src/components/settings/integration-configs.ts:88 msgid "Open Emby, go to Settings > Webhooks" -msgstr "" +msgstr "Apri Emby, vai su Impostazioni > Webhook" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:548 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 msgid "Open in browser…" -msgstr "" +msgstr "Apri nel browser…" -#: apps/web/src/components/settings/integration-configs.tsx:62 +#: apps/web/src/components/settings/integration-configs.tsx:56 msgid "Open Plex, go to <0>Settings > Webhooks<1/>" -msgstr "" +msgstr "Apri Plex, vai su <0>Impostazioni > Webhook<1/>" -#: apps/native/src/components/settings/integration-configs.ts:54 +#: apps/native/src/components/settings/integration-configs.ts:55 msgid "Open Plex, go to Settings > Webhooks" -msgstr "" +msgstr "Apri Plex, vai su Impostazioni > Webhook" -#: apps/web/src/components/settings/integration-configs.tsx:269 +#: apps/web/src/components/settings/integration-configs.tsx:243 msgid "Open Radarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Apri Radarr, vai su <0>Impostazioni > Liste di importazione" -#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/native/src/components/settings/integration-configs.ts:121 msgid "Open Radarr, go to Settings > Import Lists" -msgstr "" +msgstr "Apri Radarr, vai su Impostazioni > Liste di importazione" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:502 -#: apps/web/src/components/settings/registration-section.tsx:58 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:472 +#: apps/web/src/components/settings/registration-section.tsx:51 msgid "Open registration" -msgstr "" +msgstr "Registrazione aperta" -#: apps/web/src/components/settings/integration-configs.tsx:229 +#: apps/web/src/components/settings/integration-configs.tsx:206 msgid "Open Sonarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Apri Sonarr, vai su <0>Impostazioni > Liste di importazione" -#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/native/src/components/settings/integration-configs.ts:103 msgid "Open Sonarr, go to Settings > Import Lists" -msgstr "" +msgstr "Apri Sonarr, vai su Impostazioni > Liste di importazione" -#: apps/web/src/components/auth-form.tsx:158 +#: apps/web/src/components/auth-form.tsx:153 msgid "or" -msgstr "" +msgstr "o" -#: apps/native/src/app/(auth)/login.tsx:118 +#: apps/native/src/app/(auth)/login.tsx:108 msgid "OR" -msgstr "" +msgstr "O" -#: apps/native/src/app/+not-found.tsx:27 +#: apps/native/src/app/+not-found.tsx:25 msgid "Page Not Found" -msgstr "" +msgstr "Pagina non trovata" -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Parsing..." -msgstr "" +msgstr "Analisi in corso..." -#: apps/native/src/app/(auth)/login.tsx:167 -#: apps/native/src/app/(auth)/register.tsx:187 -#: apps/web/src/components/auth-form.tsx:221 +#: apps/native/src/app/(auth)/login.tsx:153 +#: apps/native/src/app/(auth)/register.tsx:170 +#: apps/web/src/components/auth-form.tsx:207 msgid "Password" msgstr "" -#: apps/native/src/app/change-password.tsx:76 -#: apps/web/src/components/settings/account-section.tsx:414 +#: apps/native/src/app/change-password.tsx:72 +#: apps/web/src/components/settings/account-section.tsx:388 msgid "Password updated" -msgstr "" +msgstr "Password aggiornata" -#: apps/web/src/components/settings/account-section.tsx:399 +#: apps/web/src/components/settings/account-section.tsx:373 msgid "Passwords do not match" -msgstr "" +msgstr "Le password non corrispondono" -#: apps/native/src/components/settings/integration-configs.ts:128 -#: apps/web/src/components/settings/integration-configs.tsx:284 +#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/web/src/components/settings/integration-configs.tsx:255 msgid "Paste the Radarr URL above into the List URL field" -msgstr "" +msgstr "Incolla l'URL di Radarr nel campo URL della lista" -#: apps/native/src/components/settings/integration-configs.ts:110 -#: apps/web/src/components/settings/integration-configs.tsx:244 +#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/web/src/components/settings/integration-configs.tsx:218 msgid "Paste the Sonarr URL above into the List URL field" -msgstr "" +msgstr "Incolla l'URL di Sonarr nel campo URL della lista" -#: apps/web/src/components/settings/update-check-section.tsx:63 +#: apps/web/src/components/settings/update-check-section.tsx:54 msgid "Periodically check GitHub for new Sofa releases" -msgstr "" +msgstr "Controlla periodicamente GitHub per nuove versioni di Sofa" -#: apps/native/src/components/search/search-result-row.tsx:38 -#: apps/native/src/components/search/search-result-row.tsx:99 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 msgid "Person" -msgstr "" +msgstr "Persona" -#: apps/native/src/app/person/[id].tsx:243 -#: apps/web/src/routes/_app/people.$id.tsx:52 +#: apps/native/src/app/person/[id].tsx:209 +#: apps/web/src/routes/_app/people.$id.tsx:50 msgid "Person not found" -msgstr "" +msgstr "Persona non trovata" -#: apps/web/src/components/titles/trailer-dialog.tsx:24 +#: apps/web/src/components/titles/trailer-dialog.tsx:25 msgid "Play trailer" -msgstr "" +msgstr "Riproduci trailer" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:107 -#: apps/web/src/components/explore/explore-client.tsx:126 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:89 +#: apps/web/src/components/explore/explore-client.tsx:120 msgid "Popular Movies" -msgstr "" +msgstr "Film popolari" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:120 -#: apps/web/src/components/explore/explore-client.tsx:136 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:102 +#: apps/web/src/components/explore/explore-client.tsx:130 msgid "Popular TV Shows" -msgstr "" +msgstr "Serie TV popolari" -#: apps/web/src/components/settings/backup-section.tsx:181 +#: apps/web/src/components/settings/backup-section.tsx:157 msgid "Pre-restore backup" -msgstr "" +msgstr "Backup pre-ripristino" -#: apps/web/src/components/people/person-hero.tsx:77 +#: apps/web/src/components/people/person-hero.tsx:75 msgid "Producer" -msgstr "" +msgstr "Produttore" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:130 -#: apps/web/src/components/settings/account-section.tsx:130 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:127 +#: apps/web/src/components/settings/account-section.tsx:122 msgid "Profile picture removed" -msgstr "" +msgstr "Immagine del profilo rimossa" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:119 -#: apps/web/src/components/settings/account-section.tsx:108 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:100 msgid "Profile picture updated" -msgstr "" +msgstr "Immagine del profilo aggiornata" -#: apps/web/src/components/settings/danger-section.tsx:196 -#: apps/web/src/components/settings/danger-section.tsx:220 +#: apps/web/src/components/settings/danger-section.tsx:171 +#: apps/web/src/components/settings/danger-section.tsx:190 msgid "Purge all" -msgstr "" +msgstr "Svuota tutto" -#: apps/web/src/components/settings/danger-section.tsx:202 +#: apps/web/src/components/settings/danger-section.tsx:176 msgid "Purge all caches?" -msgstr "" +msgstr "Svuotare tutte le cache?" -#: apps/web/src/components/settings/danger-section.tsx:160 +#: apps/web/src/components/settings/danger-section.tsx:143 msgid "Purge image cache?" -msgstr "" +msgstr "Svuotare la cache immagini?" -#: apps/web/src/components/settings/danger-section.tsx:154 -#: apps/web/src/components/settings/danger-section.tsx:177 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:157 msgid "Purge images" -msgstr "" +msgstr "Svuota immagini" -#: apps/web/src/components/settings/danger-section.tsx:111 -#: apps/web/src/components/settings/danger-section.tsx:135 +#: apps/web/src/components/settings/danger-section.tsx:103 +#: apps/web/src/components/settings/danger-section.tsx:124 msgid "Purge metadata" -msgstr "" +msgstr "Svuota metadati" -#: apps/web/src/components/settings/danger-section.tsx:117 +#: apps/web/src/components/settings/danger-section.tsx:109 msgid "Purge metadata cache?" -msgstr "" +msgstr "Svuotare la cache metadati?" #. placeholder {0}: data.deletedTitles #. placeholder {1}: data.deletedPersons #: apps/web/src/components/settings/danger-section.tsx:41 msgid "Purged {0, plural, one {# stale title} other {# stale titles}} and {1, plural, one {# orphaned person} other {# orphaned persons}}" -msgstr "" +msgstr "{0, plural, one {# titolo obsoleto} other {# titoli obsoleti}} e {1, plural, one {# persona orfana} other {# persone orfane}} eliminati" #. placeholder {0}: metaResult.deletedTitles #. placeholder {1}: metaResult.deletedPersons #. placeholder {2}: imageResult.deletedFiles -#: apps/web/src/components/settings/danger-section.tsx:71 +#: apps/web/src/components/settings/danger-section.tsx:68 msgid "Purged {0, plural, one {# title} other {# titles}}, {1, plural, one {# person} other {# persons}}, {2, plural, one {# file} other {# files}} ({freed} freed)" -msgstr "" +msgstr "{0, plural, one {# titolo} other {# titoli}}, {1, plural, one {# persona} other {# persone}}, {2, plural, one {# file} other {# file}} eliminati ({freed} liberati)" -#: apps/web/src/components/settings/danger-section.tsx:109 -#: apps/web/src/components/settings/danger-section.tsx:152 -#: apps/web/src/components/settings/danger-section.tsx:194 +#: apps/web/src/components/settings/danger-section.tsx:101 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:171 msgid "Purging..." -msgstr "" +msgstr "Svuotamento in corso..." -#: apps/web/src/components/command-palette.tsx:359 +#: apps/web/src/components/command-palette.tsx:336 msgid "Quick Actions" -msgstr "" +msgstr "Azioni rapide" -#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/native/src/components/settings/integration-configs.ts:118 msgid "Radarr List URL" -msgstr "" +msgstr "URL lista Radarr" #. placeholder {0}: input.stars #. placeholder {1}: input.stars -#: apps/native/src/hooks/use-title-actions.ts:93 +#: apps/native/src/hooks/use-title-actions.ts:88 msgid "Rated {0} {1, plural, one {star} other {stars}}" -msgstr "" +msgstr "Valutato {0} {1, plural, one {stella} other {stelle}}" #: apps/native/src/hooks/use-title-actions.ts:92 #~ msgid "Rated {0} star{1}" #~ msgstr "Rated {0} star{1}" -#: apps/web/src/components/titles/use-title-actions.ts:131 +#: apps/web/src/components/titles/use-title-actions.ts:118 msgid "Rated {ratingStars} {ratingStars, plural, one {star} other {stars}}" -msgstr "" +msgstr "Valutato {ratingStars} {ratingStars, plural, one {stella} other {stelle}}" -#: apps/native/src/lib/title-actions.ts:88 +#: apps/native/src/lib/title-actions.ts:86 msgid "Rated {stars, plural, one {# star} other {# stars}}" -msgstr "" +msgstr "{stars, plural, one {# stella} other {# stelle}}" -#: apps/web/src/components/people/filmography-grid.tsx:88 -#: apps/web/src/components/people/filmography-grid.tsx:102 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:90 msgid "Rating" -msgstr "" +msgstr "Valutazione" -#: apps/native/src/hooks/use-title-actions.ts:94 -#: apps/native/src/lib/title-actions.ts:90 -#: apps/web/src/components/titles/use-title-actions.ts:132 +#: apps/native/src/hooks/use-title-actions.ts:89 +#: apps/native/src/lib/title-actions.ts:87 +#: apps/web/src/components/titles/use-title-actions.ts:119 msgid "Rating removed" -msgstr "" +msgstr "Valutazione rimossa" -#: apps/web/src/components/settings/imports-section.tsx:782 -#: apps/web/src/components/settings/imports-section.tsx:813 +#: apps/web/src/components/settings/imports-section.tsx:744 +#: apps/web/src/components/settings/imports-section.tsx:775 msgid "Ratings" -msgstr "" +msgstr "Valutazioni" -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Read more" -msgstr "" +msgstr "Leggi di più" -#: apps/native/src/components/settings/integration-configs.ts:39 -#: apps/web/src/components/settings/integration-card.tsx:339 +#: apps/native/src/components/settings/integration-configs.ts:40 +#: apps/web/src/components/settings/integration-card.tsx:297 msgid "Ready — not polled yet" -msgstr "" +msgstr "Pronto — nessun polling ancora" -#: apps/native/src/components/settings/integration-configs.ts:31 -#: apps/web/src/components/settings/integration-card.tsx:332 +#: apps/native/src/components/settings/integration-configs.ts:32 +#: apps/web/src/components/settings/integration-card.tsx:290 msgid "Ready — nothing received yet" -msgstr "" +msgstr "Pronto — nessun evento ricevuto ancora" -#: apps/web/src/components/command-palette.tsx:315 +#: apps/web/src/components/command-palette.tsx:295 msgid "Recent Searches" -msgstr "" +msgstr "Ricerche recenti" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:106 -#: apps/native/src/components/search/recently-viewed-list.tsx:86 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:95 +#: apps/native/src/components/search/recently-viewed-list.tsx:77 msgid "Recently Viewed" -msgstr "" +msgstr "Visualizzati di recente" -#: apps/web/src/components/settings/system-health-section.tsx:333 +#: apps/web/src/components/settings/system-health-section.tsx:306 msgid "Recommendations" -msgstr "" +msgstr "Raccomandazioni" -#: apps/web/src/components/titles/title-recommendations.tsx:40 +#: apps/web/src/components/titles/title-recommendations.tsx:41 msgid "Recommended" -msgstr "" +msgstr "Consigliati" -#: apps/native/src/app/(tabs)/(home)/index.tsx:154 +#: apps/native/src/app/(tabs)/(home)/index.tsx:137 #: apps/web/src/components/dashboard/recommendations-section.tsx:22 msgid "Recommended for You" -msgstr "" +msgstr "Consigliati per te" -#: apps/web/src/components/auth-form.tsx:143 +#: apps/web/src/components/auth-form.tsx:140 msgid "Redirecting…" -msgstr "" +msgstr "Reindirizzamento in corso…" -#: apps/web/src/components/settings/system-health-section.tsx:182 +#: apps/web/src/components/settings/system-health-section.tsx:166 msgid "Refresh" -msgstr "" +msgstr "Aggiorna" -#: apps/web/src/components/settings/system-health-section.tsx:172 +#: apps/web/src/components/settings/system-health-section.tsx:156 msgid "Refresh system health" -msgstr "" +msgstr "Aggiorna stato di salute del sistema" -#: apps/native/src/components/settings/integration-card.tsx:140 -#: apps/native/src/components/settings/integration-card.tsx:289 +#: apps/native/src/components/settings/integration-card.tsx:128 +#: apps/native/src/components/settings/integration-card.tsx:248 msgid "Regenerate" -msgstr "" +msgstr "Rigenera" -#: apps/native/src/components/settings/integration-card.tsx:135 -#: apps/web/src/components/settings/integration-card.tsx:264 +#: apps/native/src/components/settings/integration-card.tsx:123 +#: apps/web/src/components/settings/integration-card.tsx:226 msgid "Regenerate URL" -msgstr "" +msgstr "Rigenera URL" -#: apps/web/src/components/auth-form.tsx:293 -#: apps/web/src/components/landing-page.tsx:176 +#: apps/web/src/components/auth-form.tsx:274 +#: apps/web/src/components/landing-page.tsx:177 msgid "Register" -msgstr "" +msgstr "Registrati" -#: apps/native/src/app/(auth)/register.tsx:116 +#: apps/native/src/app/(auth)/register.tsx:104 msgid "Registering on {serverHost}" -msgstr "" +msgstr "Registrazione su {serverHost}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration closed" -msgstr "" +msgstr "Registrazione chiusa" -#: apps/native/src/app/(auth)/register.tsx:97 -#: apps/web/src/routes/_auth/register.tsx:32 +#: apps/native/src/app/(auth)/register.tsx:87 +#: apps/web/src/routes/_auth/register.tsx:33 msgid "Registration Closed" -msgstr "" +msgstr "Registrazione chiusa" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration opened" -msgstr "" +msgstr "Registrazione aperta" -#: apps/web/src/components/titles/status-button.tsx:84 +#: apps/web/src/components/titles/status-button.tsx:76 msgid "Remove" -msgstr "" +msgstr "Rimuovi" -#: apps/native/src/components/titles/status-action-button.tsx:101 -#: apps/web/src/components/titles/status-button.tsx:66 +#: apps/native/src/components/titles/status-action-button.tsx:96 +#: apps/web/src/components/titles/status-button.tsx:60 msgid "Remove from library" -msgstr "" +msgstr "Rimuovi dalla libreria" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:129 -#: apps/native/src/components/ui/poster-card.tsx:259 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:108 +#: apps/native/src/components/ui/poster-card.tsx:233 msgid "Remove from Library" -msgstr "" +msgstr "Rimuovi dalla libreria" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:277 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:268 msgid "Remove Photo" -msgstr "" +msgstr "Rimuovi foto" -#: apps/web/src/components/settings/account-section.tsx:239 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Remove picture" -msgstr "" +msgstr "Rimuovi immagine" -#: apps/web/src/components/settings/account-section.tsx:199 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Remove profile picture" -msgstr "" +msgstr "Rimuovi immagine del profilo" -#: apps/native/src/hooks/use-title-actions.ts:66 -#: apps/native/src/lib/title-actions.ts:75 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/lib/title-actions.ts:74 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Removed from library" -msgstr "" +msgstr "Rimosso dalla libreria" -#: apps/web/src/components/titles/title-availability.tsx:138 +#: apps/web/src/components/titles/title-availability.tsx:114 msgid "Rent" -msgstr "" +msgstr "Noleggia" -#: apps/web/src/components/settings/integration-configs.tsx:165 +#: apps/web/src/components/settings/integration-configs.tsx:150 msgid "Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license." -msgstr "" +msgstr "Richiede <0>Emby Server 4.7.9+ e una licenza <1>Emby Premiere<2/> attiva." -#: apps/web/src/components/settings/integration-configs.tsx:41 +#: apps/web/src/components/settings/integration-configs.tsx:35 msgid "Requires an active <0>Plex Pass<1/> subscription." -msgstr "" +msgstr "Richiede un abbonamento <0>Plex Pass<1/> attivo." -#: apps/native/src/components/settings/integration-configs.ts:52 +#: apps/native/src/components/settings/integration-configs.ts:53 msgid "Requires an active Plex Pass subscription." -msgstr "" +msgstr "Richiede un abbonamento Plex Pass attivo." -#: apps/native/src/components/settings/integration-configs.ts:88 +#: apps/native/src/components/settings/integration-configs.ts:85 msgid "Requires Emby Server 4.7.9+ and an active Emby Premiere license." -msgstr "" +msgstr "Richiede Emby Server 4.7.9+ e una licenza Emby Premiere attiva." -#: apps/web/src/components/settings/backup-restore-section.tsx:59 -#: apps/web/src/components/settings/backup-restore-section.tsx:116 +#: apps/web/src/components/settings/backup-restore-section.tsx:57 +#: apps/web/src/components/settings/backup-restore-section.tsx:110 msgid "Restore" -msgstr "" +msgstr "Ripristina" -#: apps/web/src/components/settings/backup-restore-section.tsx:89 +#: apps/web/src/components/settings/backup-restore-section.tsx:83 msgid "Restore database?" -msgstr "" +msgstr "Ripristinare il database?" -#: apps/web/src/components/settings/backup-restore-section.tsx:35 +#: apps/web/src/components/settings/backup-restore-section.tsx:36 msgid "Restore failed" -msgstr "" +msgstr "Ripristino fallito" -#: apps/web/src/components/settings/backup-restore-section.tsx:132 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 msgid "Restoring…" -msgstr "" +msgstr "Ripristino in corso…" -#: apps/web/src/components/command-palette.tsx:222 +#: apps/web/src/components/command-palette.tsx:217 msgid "Results" -msgstr "" +msgstr "Risultati" -#: apps/web/src/components/settings/imports-section.tsx:731 +#: apps/web/src/components/settings/imports-section.tsx:695 msgid "Retrieving your watch history, watchlist, and ratings..." -msgstr "" +msgstr "Recupero della cronologia, watchlist e valutazioni..." -#: apps/native/src/components/settings/integrations-section.tsx:42 -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:73 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:81 -#: apps/web/src/lib/orpc/client.ts:16 +#: apps/native/src/components/settings/integrations-section.tsx:39 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:71 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:79 +#: apps/web/src/lib/orpc/client.ts:17 msgid "Retry" -msgstr "" +msgstr "Riprova" -#: apps/web/src/routes/__root.tsx:119 +#: apps/web/src/routes/__root.tsx:116 msgid "Return home" -msgstr "" +msgstr "Torna alla home" -#: apps/web/src/components/settings/imports-section.tsx:773 +#: apps/web/src/components/settings/imports-section.tsx:735 msgid "Review what was found and choose what to import." -msgstr "" +msgstr "Rivedi i risultati trovati e scegli cosa importare." -#: apps/web/src/components/settings/system-health-section.tsx:558 +#: apps/web/src/components/settings/system-health-section.tsx:509 msgid "Run now" -msgstr "" +msgstr "Esegui ora" -#: apps/web/src/components/settings/backup-schedule-section.tsx:102 +#: apps/web/src/components/settings/backup-schedule-section.tsx:99 msgid "Saturday" -msgstr "" +msgstr "Sabato" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:322 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:311 msgid "Save" -msgstr "" +msgstr "Salva" -#: apps/web/src/components/settings/account-section.tsx:296 +#: apps/web/src/components/settings/account-section.tsx:270 msgid "Save name" -msgstr "" +msgstr "Salva nome" -#: apps/web/src/routes/__root.tsx:101 +#: apps/web/src/routes/__root.tsx:98 msgid "Scene not found" -msgstr "" +msgstr "Scena non trovata" -#: apps/web/src/components/settings/system-health-section.tsx:402 +#: apps/web/src/components/settings/system-health-section.tsx:368 msgid "Schedule" -msgstr "" +msgstr "Pianificazione" -#: apps/web/src/components/settings/backup-schedule-section.tsx:201 +#: apps/web/src/components/settings/backup-schedule-section.tsx:186 msgid "Schedule updated" -msgstr "" +msgstr "Pianificazione aggiornata" -#: apps/web/src/components/settings/backup-section.tsx:179 +#: apps/web/src/components/settings/backup-section.tsx:155 msgid "Scheduled backup" -msgstr "" +msgstr "Backup pianificato" -#: apps/web/src/components/settings/backup-schedule-section.tsx:178 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups disabled" -msgstr "" +msgstr "Backup pianificati disabilitati" -#: apps/web/src/components/settings/backup-schedule-section.tsx:177 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups enabled" -msgstr "" +msgstr "Backup pianificati abilitati" #: apps/web/src/components/dashboard/stats-section.tsx:35 msgid "Search for movies and TV shows to start tracking" -msgstr "" +msgstr "Cerca film e serie TV per iniziare a tracciare" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:81 -#: apps/native/src/components/search/recently-viewed-list.tsx:64 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:72 +#: apps/native/src/components/search/recently-viewed-list.tsx:55 msgid "Search for movies, shows, or people" -msgstr "" +msgstr "Cerca film, serie TV o persone" -#: apps/web/src/components/command-palette.tsx:186 +#: apps/web/src/components/command-palette.tsx:182 msgid "Search for movies, TV shows, or run commands" -msgstr "" +msgstr "Cerca film, serie TV o esegui comandi" -#: apps/web/src/components/command-palette.tsx:195 +#: apps/web/src/components/command-palette.tsx:191 msgid "Search movies & TV shows…" -msgstr "" +msgstr "Cerca film e serie TV…" -#: apps/native/src/app/(tabs)/(search)/index.tsx:90 +#: apps/native/src/app/(tabs)/(search)/index.tsx:79 msgid "Search movies, shows, people..." -msgstr "" +msgstr "Cerca film, serie, persone..." -#: apps/web/src/components/nav-bar.tsx:193 -#: apps/web/src/components/nav-bar.tsx:202 +#: apps/web/src/components/nav-bar.tsx:181 +#: apps/web/src/components/nav-bar.tsx:190 msgid "Search…" -msgstr "" +msgstr "Cerca…" #. placeholder {0}: season.seasonNumber -#: apps/native/src/components/titles/season-accordion.tsx:122 -#: apps/native/src/components/titles/season-accordion.tsx:128 -#: apps/web/src/components/titles/use-title-actions.ts:295 -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/native/src/components/titles/season-accordion.tsx:113 +#: apps/native/src/components/titles/season-accordion.tsx:119 +#: apps/web/src/components/titles/use-title-actions.ts:274 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Season {0}" -msgstr "" +msgstr "Stagione {0}" -#: apps/native/src/hooks/use-title-actions.ts:137 -#: apps/native/src/lib/title-actions.ts:124 +#: apps/native/src/hooks/use-title-actions.ts:121 +#: apps/native/src/lib/title-actions.ts:119 msgid "Season watched" -msgstr "" +msgstr "Stagione vista" -#: apps/native/src/app/title/[id].tsx:536 +#: apps/native/src/app/title/[id].tsx:473 msgid "Seasons" -msgstr "" +msgstr "Stagioni" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:497 -#: apps/web/src/routes/_app/settings.tsx:140 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/routes/_app/settings.tsx:131 msgid "Security" -msgstr "" +msgstr "Sicurezza" -#: apps/web/src/components/landing-page.tsx:105 +#: apps/web/src/components/landing-page.tsx:106 msgid "Self-hosted movie & TV tracker" -msgstr "" +msgstr "Tracker film & TV self-hosted" -#: apps/web/src/routes/_app/settings.tsx:121 +#: apps/web/src/routes/_app/settings.tsx:115 msgid "Server" msgstr "" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:452 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 msgid "Server Health" -msgstr "" +msgstr "Salute del server" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:380 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:364 msgid "Server URL" -msgstr "" +msgstr "URL server" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 msgid "Set password" -msgstr "" +msgstr "Imposta password" -#: apps/native/src/components/settings/integration-configs.ts:111 -#: apps/native/src/components/settings/integration-configs.ts:129 -#: apps/web/src/components/settings/integration-configs.tsx:247 -#: apps/web/src/components/settings/integration-configs.tsx:287 +#: apps/native/src/components/settings/integration-configs.ts:106 +#: apps/native/src/components/settings/integration-configs.ts:124 +#: apps/web/src/components/settings/integration-configs.tsx:221 +#: apps/web/src/components/settings/integration-configs.tsx:258 msgid "Set your preferred quality profile and root folder" -msgstr "" +msgstr "Imposta il profilo di qualità e la cartella radice preferiti" -#: apps/native/src/components/header-avatar.tsx:63 -#: apps/web/src/components/nav-bar.tsx:250 -#: apps/web/src/components/nav-bar.tsx:292 -#: apps/web/src/components/settings/settings-shell.tsx:36 +#: apps/native/src/components/header-avatar.tsx:55 +#: apps/web/src/components/nav-bar.tsx:236 +#: apps/web/src/components/nav-bar.tsx:278 +#: apps/web/src/components/settings/settings-shell.tsx:30 msgid "Settings" -msgstr "" +msgstr "Impostazioni" -#: apps/native/src/components/settings/integration-card.tsx:319 -#: apps/web/src/components/settings/integration-card.tsx:288 +#: apps/native/src/components/settings/integration-card.tsx:271 +#: apps/web/src/components/settings/integration-card.tsx:248 msgid "Setup instructions" -msgstr "" +msgstr "Istruzioni di configurazione" -#: apps/web/src/routes/setup.tsx:98 +#: apps/web/src/routes/setup.tsx:95 msgid "Setup required" -msgstr "" +msgstr "Configurazione richiesta" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Show less" -msgstr "" +msgstr "Mostra meno" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 msgid "Show more" -msgstr "" +msgstr "Mostra di più" -#: apps/web/src/components/auth-form.tsx:249 -#: apps/web/src/components/auth-form.tsx:283 +#: apps/web/src/components/auth-form.tsx:233 +#: apps/web/src/components/auth-form.tsx:264 msgid "Sign in" -msgstr "" +msgstr "Accedi" -#: apps/native/src/app/(auth)/login.tsx:205 -#: apps/web/src/components/landing-page.tsx:167 +#: apps/native/src/app/(auth)/login.tsx:183 +#: apps/web/src/components/landing-page.tsx:168 msgid "Sign In" -msgstr "" +msgstr "Accedi" #: apps/web/src/routes/_auth/register.tsx:45 msgid "Sign in instead" -msgstr "" +msgstr "Accedi invece" -#: apps/native/src/app/(auth)/login.tsx:91 -#: apps/web/src/components/auth-form.tsx:119 +#: apps/native/src/app/(auth)/login.tsx:86 +#: apps/web/src/components/auth-form.tsx:116 msgid "Sign in to continue" -msgstr "" +msgstr "Accedi per continuare" #. placeholder {0}: authConfig.data?.oidcProviderName ?? "SSO" #. placeholder {0}: authConfig?.oidcProviderName || "SSO" -#: apps/native/src/app/(auth)/login.tsx:108 -#: apps/web/src/components/auth-form.tsx:145 +#: apps/native/src/app/(auth)/login.tsx:100 +#: apps/web/src/components/auth-form.tsx:142 msgid "Sign in with {0}" -msgstr "" +msgstr "Accedi con {0}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 -#: apps/native/src/components/header-avatar.tsx:87 -#: apps/web/src/components/nav-bar.tsx:262 -#: apps/web/src/components/settings/account-section.tsx:354 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:356 +#: apps/native/src/components/header-avatar.tsx:79 +#: apps/web/src/components/nav-bar.tsx:248 +#: apps/web/src/components/settings/account-section.tsx:328 msgid "Sign out" -msgstr "" +msgstr "Esci" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:209 -#: apps/native/src/components/header-avatar.tsx:70 -#: apps/native/src/components/header-avatar.tsx:73 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:204 +#: apps/native/src/components/header-avatar.tsx:62 +#: apps/native/src/components/header-avatar.tsx:65 msgid "Sign Out" -msgstr "" +msgstr "Esci" -#: apps/native/src/app/change-password.tsx:199 -#: apps/web/src/components/settings/account-section.tsx:499 +#: apps/native/src/app/change-password.tsx:193 +#: apps/web/src/components/settings/account-section.tsx:471 msgid "Sign out of other sessions" -msgstr "" +msgstr "Esci dalle altre sessioni" -#: apps/web/src/components/settings/imports-section.tsx:922 +#: apps/web/src/components/settings/imports-section.tsx:880 msgid "Skipped" -msgstr "" +msgstr "Ignorati" #. placeholder {0}: data.latestVersion -#: apps/web/src/components/update-toast.tsx:19 +#: apps/web/src/components/update-toast.tsx:18 msgid "Sofa v{0} is available" -msgstr "" +msgstr "Sofa v{0} è disponibile" #: apps/native/src/components/settings/integration-configs.ts:57 -#: apps/native/src/components/settings/integration-configs.ts:75 -#: apps/native/src/components/settings/integration-configs.ts:95 -#: apps/web/src/components/settings/integration-configs.tsx:86 -#: apps/web/src/components/settings/integration-configs.tsx:147 -#: apps/web/src/components/settings/integration-configs.tsx:208 +#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:133 +#: apps/web/src/components/settings/integration-configs.tsx:186 msgid "Sofa will automatically log movies and episodes when you finish watching them" -msgstr "" +msgstr "Sofa registrerà automaticamente film ed episodi quando finisci di guardarli" -#: apps/native/src/app/change-password.tsx:81 -#: apps/native/src/app/person/[id].tsx:213 -#: apps/web/src/components/settings/account-section.tsx:417 -#: apps/web/src/routes/__root.tsx:143 +#: apps/native/src/app/change-password.tsx:77 +#: apps/native/src/app/person/[id].tsx:182 +#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/routes/__root.tsx:140 msgid "Something went wrong" -msgstr "" +msgstr "Qualcosa è andato storto" -#: apps/web/src/routes/_app/titles.$id.tsx:118 +#: apps/web/src/routes/_app/titles.$id.tsx:113 msgid "Something went wrong while loading this title. Please try again." -msgstr "" +msgstr "Qualcosa è andato storto durante il caricamento di questo titolo. Riprova." #: apps/native/src/lib/query-client.ts:33 -#: apps/web/src/lib/orpc/client.ts:14 +#: apps/web/src/lib/orpc/client.ts:15 msgid "Something went wrong…" -msgstr "" +msgstr "Qualcosa è andato storto…" -#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/native/src/components/settings/integration-configs.ts:100 msgid "Sonarr List URL" -msgstr "" +msgstr "URL lista Sonarr" #: apps/web/src/components/dashboard/stats-section.tsx:42 msgid "Start exploring" -msgstr "" +msgstr "Inizia a esplorare" -#: apps/native/src/app/(tabs)/(home)/index.tsx:142 +#: apps/native/src/app/(tabs)/(home)/index.tsx:126 msgid "Start tracking movies and shows" -msgstr "" +msgstr "Inizia a tracciare film e serie" -#: apps/web/src/components/auth-form.tsx:117 +#: apps/web/src/components/auth-form.tsx:114 msgid "Start tracking your watches" -msgstr "" +msgstr "Inizia a tracciare le tue visioni" -#: apps/web/src/components/settings/backup-schedule-section.tsx:388 +#: apps/web/src/components/settings/backup-schedule-section.tsx:347 msgid "Starting at" -msgstr "" +msgstr "Inizia alle" -#: apps/web/src/components/settings/imports-section.tsx:888 +#: apps/web/src/components/settings/imports-section.tsx:846 msgid "Starting import..." -msgstr "" +msgstr "Avvio importazione..." -#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/hooks/use-title-actions.ts:64 msgid "Status updated" -msgstr "" +msgstr "Stato aggiornato" -#: apps/web/src/components/settings/system-health-section.tsx:595 +#: apps/web/src/components/settings/system-health-section.tsx:543 msgid "Storage" -msgstr "" +msgstr "Archiviazione" -#: apps/web/src/components/titles/title-availability.tsx:137 +#: apps/web/src/components/titles/title-availability.tsx:113 msgid "Stream" -msgstr "" +msgstr "Streaming" -#: apps/web/src/components/settings/backup-schedule-section.tsx:96 +#: apps/web/src/components/settings/backup-schedule-section.tsx:93 msgid "Sunday" -msgstr "" +msgstr "Domenica" #. placeholder {0}: info.name -#: apps/web/src/components/settings/language-section.tsx:69 +#: apps/web/src/components/settings/language-section.tsx:59 msgid "Switch to {0}" -msgstr "" +msgstr "Passa a {0}" -#: apps/native/src/app/+not-found.tsx:30 +#: apps/native/src/app/+not-found.tsx:28 msgid "The page you're looking for doesn't exist." -msgstr "" +msgstr "La pagina che stai cercando non esiste." -#: apps/web/src/routes/_app/people.$id.tsx:55 +#: apps/web/src/routes/_app/people.$id.tsx:53 msgid "The person you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "La persona che stai cercando non esiste o potrebbe essere stata rimossa dal database." -#: apps/web/src/routes/_app/titles.$id.tsx:149 +#: apps/web/src/routes/_app/titles.$id.tsx:142 msgid "The title you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "Il titolo che stai cercando non esiste o potrebbe essere stato rimosso dal database." -#: apps/web/src/components/settings/imports-section.tsx:866 +#: apps/web/src/components/settings/imports-section.tsx:825 msgid "This may take a few minutes for large libraries. Please don't close this tab." -msgstr "" +msgstr "L'operazione potrebbe richiedere alcuni minuti per librerie grandi. Non chiudere questa scheda." -#: apps/web/src/components/dashboard/stats-display.tsx:146 +#: apps/web/src/components/dashboard/stats-display.tsx:135 msgid "This Month" -msgstr "" +msgstr "Questo mese" -#: apps/web/src/routes/__root.tsx:104 +#: apps/web/src/routes/__root.tsx:101 msgid "This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay." -msgstr "" +msgstr "Questa pagina è rimasta sul pavimento della sala di montaggio. Potrebbe essere stata spostata, rimossa, o non essere mai arrivata alla sceneggiatura." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:606 -#: apps/web/src/routes/_app/settings.tsx:75 -#: apps/web/src/routes/setup.tsx:187 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:557 +#: apps/web/src/routes/_app/settings.tsx:76 +#: apps/web/src/routes/setup.tsx:180 msgid "This product uses the TMDB API but is not endorsed or certified by TMDB." -msgstr "" +msgstr "Questo prodotto utilizza le API di TMDB ma non è approvato o certificato da TMDB." -#: apps/web/src/components/dashboard/stats-display.tsx:145 +#: apps/web/src/components/dashboard/stats-display.tsx:134 msgid "This Week" -msgstr "" +msgstr "Questa settimana" -#: apps/web/src/components/settings/danger-section.tsx:163 +#: apps/web/src/components/settings/danger-section.tsx:146 msgid "This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed." -msgstr "" +msgstr "Questo eliminerà tutte le immagini TMDB in cache dal disco. Le immagini verranno riscaricate automaticamente secondo necessità." -#: apps/web/src/components/settings/danger-section.tsx:205 +#: apps/web/src/components/settings/danger-section.tsx:179 msgid "This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed." -msgstr "" +msgstr "Questo eliminerà tutti i titoli stub non arricchiti e tutte le immagini in cache dal disco. Tutto verrà reimportato e riscaricato secondo necessità." -#: apps/web/src/components/settings/danger-section.tsx:120 +#: apps/web/src/components/settings/danger-section.tsx:112 msgid "This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again." -msgstr "" +msgstr "Questo eliminerà i titoli stub non arricchiti che non sono in nessuna libreria utente e pulerà i record di persone orfane. I titoli eliminati verranno reimportati se consultati di nuovo." -#: apps/native/src/components/settings/integration-card.tsx:136 +#: apps/native/src/components/settings/integration-card.tsx:124 msgid "This will invalidate the current {label} URL. You'll need to update it in {label}." -msgstr "" +msgstr "Questo invaliderà l'URL attuale di {label}. Dovrai aggiornarlo in {label}." -#: apps/web/src/components/titles/title-seasons.tsx:125 +#: apps/web/src/components/titles/title-seasons.tsx:119 msgid "This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons." -msgstr "" +msgstr "Questo segnerà tutti gli episodi di questa serie come visti. Puoi annullarlo in seguito de-segnando le singole stagioni." #. placeholder {0}: formatBackupDate(backup.createdAt) -#: apps/web/src/components/settings/backup-section.tsx:259 +#: apps/web/src/components/settings/backup-section.tsx:231 msgid "This will permanently delete the backup from <0>{0}. This cannot be undone." -msgstr "" +msgstr "Questo eliminerà definitivamente il backup del <0>{0}. L'operazione non può essere annullata." -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:61 -#: apps/native/src/components/search/recently-viewed-list.tsx:35 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "This will remove all items from your history." -msgstr "" +msgstr "Questo rimuoverà tutti gli elementi dalla tua cronologia." -#: apps/web/src/components/settings/backup-restore-section.tsx:92 +#: apps/web/src/components/settings/backup-restore-section.tsx:86 msgid "This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore." -msgstr "" +msgstr "Questo sostituirà l'intero database con il file caricato. Prima verrà creato un backup di sicurezza dei dati attuali. Le sessioni attive potrebbero richiedere un aggiornamento dopo il ripristino." -#: apps/web/src/components/dashboard/stats-display.tsx:147 +#: apps/web/src/components/dashboard/stats-display.tsx:136 msgid "This Year" -msgstr "" +msgstr "Quest'anno" -#: apps/web/src/components/settings/backup-schedule-section.tsx:100 +#: apps/web/src/components/settings/backup-schedule-section.tsx:97 msgid "Thursday" -msgstr "" +msgstr "Giovedì" -#: apps/web/src/components/settings/backup-schedule-section.tsx:390 +#: apps/web/src/components/settings/backup-schedule-section.tsx:349 msgid "Time:" -msgstr "" +msgstr "Ora:" -#: apps/native/src/app/title/[id].tsx:251 -#: apps/web/src/routes/_app/titles.$id.tsx:146 +#: apps/native/src/app/title/[id].tsx:235 +#: apps/web/src/routes/_app/titles.$id.tsx:139 msgid "Title not found" -msgstr "" +msgstr "Titolo non trovato" -#: apps/native/src/components/settings/integration-configs.ts:131 -#: apps/web/src/components/settings/integration-configs.tsx:290 +#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/web/src/components/settings/integration-configs.tsx:261 msgid "Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)" -msgstr "" +msgstr "I titoli nella tua watchlist di Sofa verranno aggiunti automaticamente per il download quando Radarr interroga questa lista (ogni 12 ore per impostazione predefinita)" -#: apps/native/src/components/settings/integration-configs.ts:113 -#: apps/web/src/components/settings/integration-configs.tsx:250 +#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/web/src/components/settings/integration-configs.tsx:224 msgid "Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)" -msgstr "" +msgstr "I titoli nella tua watchlist di Sofa verranno aggiunti automaticamente per il download quando Sonarr interroga questa lista (ogni 6 ore per impostazione predefinita)" -#: apps/web/src/components/dashboard/stats-display.tsx:144 +#: apps/web/src/components/dashboard/stats-display.tsx:133 msgid "Today" -msgstr "" +msgstr "Oggi" -#: apps/web/src/components/settings/update-check-section.tsx:71 +#: apps/web/src/components/settings/update-check-section.tsx:62 msgid "Toggle automatic update checks" -msgstr "" +msgstr "Attiva/disattiva controllo aggiornamenti automatico" -#: apps/web/src/components/settings/registration-section.tsx:69 +#: apps/web/src/components/settings/registration-section.tsx:62 msgid "Toggle open registration" -msgstr "" +msgstr "Attiva/disattiva registrazione aperta" -#: apps/web/src/components/settings/backup-schedule-section.tsx:290 +#: apps/web/src/components/settings/backup-schedule-section.tsx:257 msgid "Toggle scheduled backups" -msgstr "" +msgstr "Attiva/disattiva backup pianificati" -#: apps/web/src/components/landing-page.tsx:131 +#: apps/web/src/components/landing-page.tsx:132 msgid "Track what you watch. Know what's next.<0/>Your library, your data, your rules." -msgstr "" +msgstr "Traccia cosa guardi. Sai cosa ti aspetta.<0/>La tua libreria, i tuoi dati, le tue regole." -#: apps/web/src/components/titles/trailer-dialog.tsx:37 -#: apps/web/src/components/titles/trailer-dialog.tsx:41 +#: apps/web/src/components/titles/trailer-dialog.tsx:38 +#: apps/web/src/components/titles/trailer-dialog.tsx:42 msgid "Trailer" msgstr "" -#: apps/web/src/components/explore/hero-banner.tsx:78 +#: apps/web/src/components/explore/hero-banner.tsx:70 msgid "Trending today" -msgstr "" +msgstr "In tendenza oggi" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:95 -#: apps/web/src/components/explore/explore-client.tsx:112 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:77 +#: apps/web/src/components/explore/explore-client.tsx:108 msgid "Trending Today" -msgstr "" +msgstr "In tendenza oggi" -#: apps/web/src/components/settings/system-health-section.tsx:537 +#: apps/web/src/components/settings/system-health-section.tsx:488 msgid "Trigger job" -msgstr "" +msgstr "Avvia job" -#: apps/web/src/routes/__root.tsx:159 +#: apps/web/src/routes/__root.tsx:156 msgid "Try again" -msgstr "" +msgstr "Riprova" -#: apps/web/src/components/settings/backup-schedule-section.tsx:98 +#: apps/web/src/components/settings/backup-schedule-section.tsx:95 msgid "Tuesday" -msgstr "" +msgstr "Martedì" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:98 -#: apps/web/src/components/explore/hero-banner.tsx:64 -#: apps/web/src/components/people/filmography-grid.tsx:60 -#: apps/web/src/components/titles/title-hero.tsx:153 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:59 +#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/web/src/components/titles/title-hero.tsx:148 msgid "TV" msgstr "" -#: apps/web/src/components/settings/system-health-section.tsx:334 +#: apps/web/src/components/settings/system-health-section.tsx:307 msgid "TV episodes" -msgstr "" +msgstr "Episodi TV" -#: apps/native/src/components/search/search-result-row.tsx:37 +#: apps/native/src/components/search/search-result-row.tsx:34 msgid "TV show" -msgstr "" +msgstr "Serie TV" -#: apps/web/src/components/settings/system-health-section.tsx:656 +#: apps/web/src/components/settings/system-health-section.tsx:601 msgid "unknown" -msgstr "" +msgstr "sconosciuto" -#: apps/web/src/components/settings/backup-schedule-section.tsx:256 -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "unlimited" -msgstr "" +msgstr "illimitato" -#: apps/web/src/components/settings/system-health-section.tsx:273 +#: apps/web/src/components/settings/system-health-section.tsx:253 msgid "Unreachable" -msgstr "" +msgstr "Non raggiungibile" -#: apps/web/src/components/titles/title-seasons.tsx:340 +#: apps/web/src/components/titles/title-seasons.tsx:318 msgid "Untitled" -msgstr "" +msgstr "Senza titolo" -#: apps/web/src/components/titles/title-seasons.tsx:221 +#: apps/web/src/components/titles/title-seasons.tsx:205 msgid "Unwatch all" -msgstr "" +msgstr "Rimuovi visione dalla stagione" #. placeholder {0}: season.name ?? t`Season ${season.seasonNumber}` -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Unwatched all of {0}" -msgstr "" +msgstr "Rimossa visione di {0}" -#: apps/web/src/components/titles/use-title-actions.ts:174 +#: apps/web/src/components/titles/use-title-actions.ts:156 msgid "Unwatched S{seasonNum} E{epNum}" -msgstr "" +msgstr "Non visto S{seasonNum} E{epNum}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:79 -#: apps/web/src/components/dashboard/continue-watching-card.tsx:77 +#: apps/native/src/components/titles/continue-watching-banner.tsx:72 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:63 msgid "Up next" -msgstr "" +msgstr "Prossimo" #. placeholder {0}: updateCheck.data.updateCheck.latestVersion -#: apps/native/src/app/(tabs)/(settings)/index.tsx:528 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:496 msgid "Update available: {0}" -msgstr "" +msgstr "Aggiornamento disponibile: {0}" -#: apps/web/src/components/settings/system-health-section.tsx:337 +#: apps/web/src/components/settings/system-health-section.tsx:310 msgid "Update check" -msgstr "" +msgstr "Controllo aggiornamenti" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks disabled" -msgstr "" +msgstr "Controllo aggiornamenti disabilitato" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks enabled" -msgstr "" +msgstr "Controllo aggiornamenti abilitato" -#: apps/web/src/components/settings/account-section.tsx:84 +#: apps/web/src/components/settings/account-section.tsx:76 msgid "Update failed" -msgstr "" +msgstr "Aggiornamento fallito" -#: apps/web/src/components/settings/account-section.tsx:509 +#: apps/web/src/components/settings/account-section.tsx:481 msgid "Update password" -msgstr "" +msgstr "Aggiorna password" -#: apps/native/src/app/change-password.tsx:218 +#: apps/native/src/app/change-password.tsx:212 msgid "Update Password" -msgstr "" +msgstr "Aggiorna password" -#: apps/web/src/components/settings/backup-restore-section.tsx:134 -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Upload" -msgstr "" +msgstr "Carica" -#: apps/web/src/components/settings/backup-restore-section.tsx:62 +#: apps/web/src/components/settings/backup-restore-section.tsx:60 msgid "Upload a .db file to replace the current database. A safety backup is created first." -msgstr "" +msgstr "Carica un file .db per sostituire il database attuale. Prima viene creato un backup di sicurezza." #. placeholder {0}: config.accept #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:637 +#: apps/web/src/components/settings/imports-section.tsx:603 msgid "Upload a {0} export from your {1} account settings." -msgstr "" +msgstr "Carica un'esportazione {0} dalle impostazioni del tuo account {1}." -#: apps/web/src/components/settings/imports-section.tsx:634 +#: apps/web/src/components/settings/imports-section.tsx:600 msgid "Upload export file" -msgstr "" +msgstr "Carica file di esportazione" -#: apps/web/src/components/settings/account-section.tsx:112 +#: apps/web/src/components/settings/account-section.tsx:104 msgid "Upload failed" -msgstr "" +msgstr "Caricamento fallito" -#: apps/web/src/components/settings/account-section.tsx:241 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Upload picture" -msgstr "" +msgstr "Carica immagine" -#: apps/web/src/components/settings/account-section.tsx:200 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Upload profile picture" -msgstr "" +msgstr "Carica immagine del profilo" -#: apps/native/src/components/settings/integration-card.tsx:129 +#: apps/native/src/components/settings/integration-card.tsx:117 msgid "URL copied to clipboard" -msgstr "" +msgstr "URL copiato negli appunti" -#: apps/web/src/components/update-toast.tsx:24 +#: apps/web/src/components/update-toast.tsx:23 msgid "View release" -msgstr "" +msgstr "Visualizza rilascio" -#: apps/web/src/components/settings/imports-section.tsx:699 +#: apps/web/src/components/settings/imports-section.tsx:663 msgid "Waiting for authorization..." -msgstr "" +msgstr "In attesa di autorizzazione..." -#: apps/web/src/components/settings/imports-section.tsx:823 +#: apps/web/src/components/settings/imports-section.tsx:785 msgid "Warnings" -msgstr "" +msgstr "Avvisi" #. placeholder {0}: result.warnings.length -#: apps/web/src/components/settings/imports-section.tsx:948 +#: apps/web/src/components/settings/imports-section.tsx:905 msgid "Warnings ({0})" -msgstr "" +msgstr "Avvisi ({0})" -#: apps/web/src/components/titles/title-seasons.tsx:202 +#: apps/web/src/components/titles/title-seasons.tsx:189 msgid "Watch all" -msgstr "" +msgstr "Segna tutta la stagione come vista" -#: apps/web/src/components/settings/imports-section.tsx:801 +#: apps/web/src/components/settings/imports-section.tsx:763 msgid "Watch history" -msgstr "" +msgstr "Cronologia visioni" -#: apps/web/src/components/titles/title-availability.tsx:59 +#: apps/web/src/components/titles/title-availability.tsx:46 msgid "Watch on {name}" -msgstr "" +msgstr "Guarda su {name}" -#: apps/web/src/components/titles/use-title-actions.ts:298 -#: apps/web/src/components/titles/use-title-actions.ts:307 +#: apps/web/src/components/titles/use-title-actions.ts:277 +#: apps/web/src/components/titles/use-title-actions.ts:286 msgid "Watched all of {seasonLabel}" -msgstr "" +msgstr "Segnata come vista tutta la {seasonLabel}" -#: apps/native/src/lib/title-actions.ts:123 +#: apps/native/src/lib/title-actions.ts:119 msgid "Watched all of {seasonName}" -msgstr "" +msgstr "Segnata come vista tutta la {seasonName}" -#: apps/web/src/components/titles/use-title-actions.ts:220 -#: apps/web/src/components/titles/use-title-actions.ts:229 +#: apps/web/src/components/titles/use-title-actions.ts:199 +#: apps/web/src/components/titles/use-title-actions.ts:208 msgid "Watched S{seasonNum} E{epNum}" -msgstr "" +msgstr "Visto S{seasonNum} E{epNum}" -#: apps/native/src/components/titles/status-action-button.tsx:42 -#: apps/web/src/components/title-card.tsx:72 -#: apps/web/src/components/titles/status-button.tsx:19 +#: apps/native/src/components/titles/status-action-button.tsx:43 +#: apps/web/src/components/title-card.tsx:69 +#: apps/web/src/components/titles/status-button.tsx:14 msgid "Watching" -msgstr "" +msgstr "In visione" -#: apps/native/src/components/titles/status-action-button.tsx:82 -#: apps/web/src/components/settings/imports-section.tsx:781 -#: apps/web/src/components/settings/imports-section.tsx:807 -#: apps/web/src/components/titles/status-button.tsx:55 +#: apps/native/src/components/titles/status-action-button.tsx:78 +#: apps/web/src/components/settings/imports-section.tsx:743 +#: apps/web/src/components/settings/imports-section.tsx:769 +#: apps/web/src/components/titles/status-button.tsx:49 msgid "Watchlist" msgstr "" -#: apps/native/src/components/titles/status-action-button.tsx:40 +#: apps/native/src/components/titles/status-action-button.tsx:41 msgid "Watchlisted" -msgstr "" +msgstr "In watchlist" -#: apps/native/src/components/settings/integration-configs.ts:50 -#: apps/native/src/components/settings/integration-configs.ts:67 -#: apps/native/src/components/settings/integration-configs.ts:85 +#: apps/native/src/components/settings/integration-configs.ts:51 +#: apps/native/src/components/settings/integration-configs.ts:66 +#: apps/native/src/components/settings/integration-configs.ts:82 msgid "Webhook URL" -msgstr "" +msgstr "URL webhook" -#: apps/web/src/components/settings/backup-schedule-section.tsx:99 +#: apps/web/src/components/settings/backup-schedule-section.tsx:96 msgid "Wednesday" -msgstr "" +msgstr "Mercoledì" -#: apps/web/src/components/auth-form.tsx:112 -#: apps/web/src/components/dashboard/welcome-header.tsx:10 +#: apps/web/src/components/auth-form.tsx:110 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back" -msgstr "" +msgstr "Bentornato" -#: apps/web/src/components/dashboard/welcome-header.tsx:8 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back, {name}" -msgstr "" +msgstr "Bentornato, {name}" -#: apps/native/src/app/title/[id].tsx:483 -#: apps/web/src/components/titles/title-availability.tsx:154 +#: apps/native/src/app/title/[id].tsx:430 +#: apps/web/src/components/titles/title-availability.tsx:130 msgid "Where to Watch" -msgstr "" +msgstr "Dove guardarlo" -#: apps/web/src/components/titles/title-availability.tsx:141 +#: apps/web/src/components/titles/title-availability.tsx:117 msgid "With Ads" -msgstr "" +msgstr "Con pubblicità" -#: apps/web/src/components/people/person-hero.tsx:75 +#: apps/web/src/components/people/person-hero.tsx:73 msgid "Writer" -msgstr "" +msgstr "Sceneggiatore" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:386 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "You'll be signed out to change the server URL." -msgstr "" +msgstr "Verrai disconnesso per cambiare l'URL del server." #. placeholder {0}: data.currentVersion -#: apps/web/src/components/update-toast.tsx:20 +#: apps/web/src/components/update-toast.tsx:19 msgid "You're running v{0}." -msgstr "" +msgstr "Stai usando la v{0}." -#: apps/web/src/components/settings/imports-section.tsx:678 +#: apps/web/src/components/settings/imports-section.tsx:642 msgid "Your code:" -msgstr "" +msgstr "Il tuo codice:" -#: apps/native/src/app/(tabs)/(home)/index.tsx:141 +#: apps/native/src/app/(tabs)/(home)/index.tsx:125 #: apps/web/src/components/dashboard/stats-section.tsx:32 msgid "Your library is empty" -msgstr "" +msgstr "La tua libreria è vuota" -#: apps/native/src/app/(auth)/register.tsx:134 +#: apps/native/src/app/(auth)/register.tsx:121 msgid "Your name" -msgstr "" +msgstr "Il tuo nome" diff --git a/packages/i18n/src/po/it.ts b/packages/i18n/src/po/it.ts index ef7e47e..606af9a 100644 --- a/packages/i18n/src/po/it.ts +++ b/packages/i18n/src/po/it.ts @@ -1 +1 @@ -/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Saturday\"],\"+6i0lS\":[\"Retrieving your watch history, watchlist, and ratings...\"],\"+Cv+V9\":[\"Remove from library\"],\"+JkEpu\":[\"This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay.\"],\"+K0AvT\":[\"Disconnect\"],\"+N0l5/\":[\"Connected to <0>\",[\"serverHost\"],\". Tap to change.\"],\"+gLHYi\":[\"Failed to load title\"],\"+j1ex/\":[\"Failed to remove from library\"],\"+nF1ZO\":[\"Remove Photo\"],\"/+6dvC\":[\"Errors (\",[\"0\"],\")\"],\"/BBXeA\":[\"Connecting to server...\"],\"/DwR+n\":[\"Creating…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Watch all\"],\"/gQXGv\":[\"Failed to update status\"],\"/nT6AE\":[\"New password\"],\"/sHc1/\":[\"Update check\"],\"0+dyau\":[\"Failed to update retention setting\"],\"0BFJKK\":[\"Authorization was denied. Please try again.\"],\"0GHb20\":[\"Purge metadata cache?\"],\"0IBW21\":[\"Failed to purge caches\"],\"0gH/sc\":[\"Remove profile picture\"],\"1+P9RR\":[\"Switch to \",[\"0\"]],\"12cc1j\":[\"Watching\"],\"12lVOl\":[\"Self-hosted movie & TV tracker\"],\"1B4z0M\":[\"Filmography\"],\"1J4Ek0\":[\"Automatically back up your database on a schedule\"],\"1JhxXW\":[\"Episode \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Import options\"],\"1Qz4uG\":[\"Enable the \\\"Playback\\\" event category\"],\"1hMWR6\":[\"Create account\"],\"1jHIjh\":[\"Watched all of \",[\"seasonName\"]],\"1vSYsG\":[\"Download backup\"],\"1wL1tj\":[\"TV show\"],\"2FletP\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" person\"],\"other\":[\"#\",\" persons\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\" (\",[\"freed\"],\" freed)\"],\"2Fsd9r\":[\"This Month\"],\"2MPcep\":[\"Import complete\"],\"2Mu33Z\":[\"Cache management\"],\"2POOFK\":[\"Free\"],\"2Pt2NY\":[\"This will remove all items from your history.\"],\"2fCpt5\":[\"Return home\"],\"2pPBp6\":[\"Trending today\"],\"39y5bn\":[\"Friday\"],\"3Blefz\":[\"Ratings\"],\"3JTlG8\":[\"Recent Searches\"],\"3Jy8bM\":[\"Movies \",[\"select\"]],\"3L9OuQ\":[\"Episode \",[\"0\"]],\"3T8ziB\":[\"Create an account\"],\"3hELxX\":[\"Enter your Sofa server URL to get started\"],\"4fxLkp\":[\"Open Sonarr, go to <0>Settings > Import Lists\"],\"4kpBqM\":[\"Last event \",[\"0\"]],\"4uUjVO\":[\"Producer\"],\"4x+A56\":[\"Anonymous usage reporting\"],\"5IShvp\":[\"Import \",[\"totalItems\"],\" items\"],\"5IYJSv\":[\"Explore titles\"],\"5Y4mym\":[\"Import from \",[\"0\"]],\"5ZzgbQ\":[\"Connect \",[\"0\"]],\"5fEnbK\":[\"Failed to update scheduled backup setting\"],\"5lWFkC\":[\"Sign in\"],\"5v9C16\":[\"Connected to \",[\"source\"]],\"623bR4\":[\"Failed to trigger job\"],\"6HN0yh\":[\"Open Plex, go to Settings > Webhooks\"],\"6TNjOJ\":[\"Failed to update rating\"],\"6TfUy6\":[\"last \",[\"value\"]],\"6V3Ea3\":[\"Copied\"],\"6YtxFj\":[\"Name\"],\"6exX+8\":[\"Regenerate\"],\"6gRgw8\":[\"Retry\"],\"6lGV3K\":[\"Show less\"],\"76++pR\":[\"Warnings\"],\"77DIAu\":[\"Go to Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Failed\"],\"7D50KC\":[[\"label\"],\" disconnected\"],\"7GfM5w\":[\"Recently Viewed\"],\"7L01XJ\":[\"Actions\"],\"7eMo+U\":[\"Go Home\"],\"7p5kLi\":[\"Dashboard\"],\"85eoJ1\":[\"Schedule updated\"],\"8B9E2D\":[\"Day:\"],\"8YwF1J\":[\"Go to <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Password\"],\"8tjQCz\":[\"Explore\"],\"8vNtLy\":[\"Paste the Radarr URL above into the List URL field\"],\"8wYDMp\":[\"Already have an account?\"],\"9AE3vb\":[\"Open Plex, go to <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"Import is still running in the background. Check back later.\"],\"9NyAH9\":[\"Skipped\"],\"9Xhrps\":[\"Failed to connect\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Welcome back\"],\"9rG25a\":[\"Server URL\"],\"A+0rLe\":[\"Marked as completed\"],\"AOHgZp\":[\"Episodes\"],\"AOddWK\":[\"Connect \",[\"label\"]],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Environment\"],\"Acf6vF\":[\"Save name\"],\"AdoUfN\":[\"Failed to add to watchlist\"],\"AeXO77\":[\"Account\"],\"AjtYj0\":[\"On Watchlist\"],\"Avee+B\":[\"Failed to update name\"],\"B2R3xD\":[\"Toggle scheduled backups\"],\"BEVzjL\":[\"Import failed\"],\"BQnS5I\":[\"Open \",[\"source\"],\" to enter code\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup\"],\"other\":[\"backups\"]}],\" stored\"],\"BpttUI\":[\"Trending Today\"],\"BrrIs8\":[\"Storage\"],\"BskWMl\":[\"Unreachable\"],\"BzEFor\":[\"or\"],\"CGDHFb\":[\"Add a <0>Generic Destination and paste the URL above\"],\"CGExDN\":[\"Failed to purge image cache\"],\"CHeXFE\":[\"Status updated\"],\"CKyk7Q\":[\"Go back\"],\"CaB/+I\":[\"Welcome back, \",[\"name\"]],\"CodnUh\":[\"Removed from library\"],\"CpzGJY\":[\"This may take a few minutes for large libraries. Please don't close this tab.\"],\"CuPxpd\":[\"Requires an active <0>Plex Pass<1/> subscription.\"],\"CzBN6D\":[\"Start exploring\"],\"D+R2Xs\":[\"Starting import...\"],\"D3C4Yx\":[\"Current password is required\"],\"DBC3t5\":[\"Sunday\"],\"DI4lqs\":[\"Person not found\"],\"DKBbJf\":[\"Added \\\"\",[\"titleName\"],\"\\\" to watchlist\"],\"DPfwMq\":[\"Done\"],\"DZse/o\":[\"Add a \\\"Generic Destination\\\" and paste the URL above\"],\"E/QGRL\":[\"Disabled\"],\"E6nRW7\":[\"Copy URL\"],\"EWQlBH\":[\"Your library is empty\"],\"EWaCfj\":[\"Enter your current password and choose a new one.\"],\"Eeo/Gy\":[\"Failed to update setting\"],\"Efn6WU\":[\"This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed.\"],\"Etp5if\":[\"Finished importing from \",[\"source\"],\".\"],\"F006BN\":[\"Import from \",[\"source\"]],\"FNvDMc\":[\"This Week\"],\"FWSp+7\":[\"Enter the code below on \",[\"source\"],\"'s website to authorize Sofa.\"],\"FXN0ro\":[\"Recommendations\"],\"FaU7Ag\":[\"Enable the \\\"Playback Stop\\\" notification type\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Actor\"],\"FwRqjE\":[\"Image cache and backup disk usage\"],\"G00fgM\":[\"last \",[\"n\"]],\"G3myU+\":[\"Tuesday\"],\"GcCthe\":[\"In Library\"],\"Gf39AA\":[[\"0\"],\" triggered\"],\"GnhfWw\":[\"Toggle automatic update checks\"],\"GptGxg\":[\"Change password\"],\"GqTZ+S\":[\"Rated \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"GrdN/F\":[\"Caught up — marked \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" as watched\"],\"H4B5LG\":[\"This product uses the TMDB API but is not endorsed or certified by TMDB.\"],\"HBRd5n\":[\"Season \",[\"0\"]],\"HD+aQ7\":[\"Database backups\"],\"HG+31u\":[\"Purge all caches?\"],\"Haz+72\":[\"This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed.\"],\"HbReP5\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as completed\"],\"Hg6o8v\":[\"Refresh system health\"],\"HmEjnC\":[\"Last event \",[\"timeAgo\"]],\"HvDfH/\":[\"Imported\"],\"I89uD4\":[\"Restoring…\"],\"IRoxQm\":[\"Registration closed\"],\"IS0nrP\":[\"Create Account\"],\"IY9rQ0\":[\"Free up disk space by clearing cached metadata and images\"],\"IrC12v\":[\"Application\"],\"J28zul\":[\"Connecting...\"],\"J64cFL\":[\"Library refresh\"],\"JKmmmN\":[\"Added to watchlist\"],\"JN0f/Y\":[\"Connect to TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirm new password\"],\"JRadFJ\":[\"Start tracking your watches\"],\"JSwq8t\":[\"New account creation is currently disabled.\"],\"JY5Oyv\":[\"Database\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Connecting…\"],\"JwFbe8\":[\"TV\"],\"KDw4GX\":[\"Try again\"],\"KG6681\":[\"Episode watched\"],\"KIS/Sd\":[\"Sign out of other sessions\"],\"KK0ghs\":[\"Image cache\"],\"KVAoFR\":[\"unlimited\"],\"KcXJuc\":[\"Purging...\"],\"KhtG3o\":[\"Update Password\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}]],\"KmWyx0\":[\"Job\"],\"KoF0x6\":[\"age \",[\"age\"]],\"Ksiej9\":[\"Requires an active Plex Pass subscription.\"],\"Kx9NEt\":[\"Invalid token\"],\"Lk6Jb/\":[\"Last polled \",[\"timeAgo\"]],\"LmEEic\":[\"Waiting for authorization...\"],\"LqKH42\":[\"Connect with \",[\"0\"]],\"Lrpjji\":[\"Disconnect \",[\"label\"]],\"Lu6Udx\":[\"Click \\\"+\\\" and select \\\"Custom Lists\\\"\"],\"MDoX++\":[\"Sonarr List URL\"],\"MRBlCJ\":[\"Failed to unmark some episodes\"],\"MUO7w9\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as watched\"],\"MZbQHL\":[\"No results found.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Authorize Sofa to read your \",[\"0\"],\" library. No password shared.\"],\"N40H+G\":[\"All\"],\"N6SFhC\":[\"Sign in instead\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" is available\"],\"N9RF2M\":[\"Click \\\"Add Webhook\\\" and paste the URL above\"],\"NBo4z0\":[\"Click <0>+ and select <1>Custom Lists\"],\"NICUmW\":[\"Director\"],\"NQzPoO\":[\"New backup\"],\"NSxl1l\":[\"More Settings\"],\"NVF43p\":[\"Time:\"],\"NdPMwS\":[\"In Your Library\"],\"NgaPSG\":[\"Failed to update schedule\"],\"O3oNi5\":[\"Email\"],\"OBcj5W\":[\"This will invalidate the current \",[\"label\"],\" URL. You'll need to update it in \",[\"label\"],\".\"],\"OL8hbM\":[\"New password must be at least 8 characters\"],\"ONWvwQ\":[\"Upload\"],\"OPFjyX\":[\"Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog\"],\"OW/+RD\":[\"Watch history\"],\"OZdaTZ\":[\"Person\"],\"OvO76u\":[\"Back to Login\"],\"OvdFIZ\":[\"Season watched\"],\"P2FLLe\":[\"View release\"],\"PBdLfg\":[\"No titles found for this genre.\"],\"PQ3qDa\":[\"Fetching your library data from \",[\"source\"],\"...\"],\"PjNoxI\":[\"Scheduled backup\"],\"Pn2B7/\":[\"Current password\"],\"PnEbL/\":[\"Rated \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"Pwqkdw\":[\"Loading…\"],\"Py87xY\":[\"Authorization succeeded but failed to fetch your library. Please try again.\"],\"Q3MPWA\":[\"Update password\"],\"QHcLEN\":[\"Connected\"],\"QK4UIx\":[\"Mark Watched\"],\"Qjlym2\":[\"Failed to create account\"],\"Qm1NmK\":[\"OR\"],\"Qoq+GP\":[\"Read more\"],\"QphVZW\":[\"Can't reach server\"],\"QqLJHH\":[\"This Year\"],\"R0yu2l\":[\"Catch up\"],\"R4YBui\":[\"Search for movies and TV shows to start tracking\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"RIR15/\":[\"Radarr List URL\"],\"RLe7Vk\":[\"Checking…\"],\"ROq8cl\":[\"Failed to parse file\"],\"RQq8Si\":[\"Registration opened\"],\"S0soqb\":[\"Failed to remove profile picture\"],\"S1McZh\":[\"Failed to upload avatar\"],\"S2ble5\":[[\"0\"],\" movies, \",[\"1\"],\" episodes\"],\"S2qPRR\":[\"Search movies & TV shows…\"],\"SDND4q\":[\"Not configured\"],\"SFdAk9\":[\"Unwatched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Unwatch all\"],\"SbS+Bm\":[\"Regenerate URL\"],\"SlfejT\":[\"Error\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"Up next\"],\"SyPRjk\":[\"Sofa will automatically log movies and episodes when you finish watching them\"],\"T0/7WG\":[\"Next backup \",[\"distance\"]],\"TEaX6q\":[\"Backup deleted\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Profile picture removed\"],\"TqyQQS\":[\"Enable the <0>Playback event category\"],\"Tz0i8g\":[\"Settings\"],\"U+FxtW\":[\"Track what you watch. Know what's next.<0/>Your library, your data, your rules.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Toggle open registration\"],\"UDMjsP\":[\"Quick Actions\"],\"UmQ6Fe\":[\"Purge image cache?\"],\"UtDm3q\":[\"URL copied to clipboard\"],\"V1Kh9Z\":[\"Episodes \",[\"select\"]],\"V6uzvC\":[\"More Like This\"],\"V9CuQ+\":[\"Connect to \",[\"source\"]],\"VAcXNz\":[\"Wednesday\"],\"VKyhZK\":[\"Title not found\"],\"VQvpro\":[\"Paste the Sonarr URL above into the List URL field\"],\"VhMDMg\":[\"Change Password\"],\"Vx0ayx\":[\"Failed to mark some episodes\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recommended\"],\"WMCwmR\":[\"Check for updates\"],\"WP48q2\":[\"Image Cache\"],\"WT1Ibn\":[\"Last run\"],\"Wb3E4g\":[\"Run now\"],\"WgF2UQ\":[\"You're running v\",[\"0\"],\".\"],\"WtWhSi\":[\"Rating removed\"],\"Wy/3II\":[\"Last polled \",[\"0\"]],\"XFCSYs\":[\"Cast\"],\"XN23JY\":[\"This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again.\"],\"XZwihE\":[\"Ready — nothing received yet\"],\"XjTduw\":[\"Upload picture\"],\"YEGzVq\":[\"Failed to connect \",[\"label\"]],\"YErf89\":[\"Failed to purge metadata cache\"],\"YQ768h\":[\"Scene not found\"],\"YiRsXK\":[\"Clear Recently Viewed?\"],\"Yjp1zf\":[\"Don't have a server?\"],\"YqMfa9\":[\"Review what was found and choose what to import.\"],\"ZGUYm0\":[\"Ready — not polled yet\"],\"ZQKLI1\":[\"Danger Zone\"],\"ZVZUoU\":[[\"0\"],\" cached images\"],\"ZWTQ81\":[\"Watch on \",[\"name\"]],\"a3LDKx\":[\"Security\"],\"aLBUiR\":[\"Keeping <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" backups.\"],\"aM0+kY\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" stale title\"],\"other\":[\"#\",\" stale titles\"]}],\" and \",[\"1\",\"plural\",{\"one\":[\"#\",\" orphaned person\"],\"other\":[\"#\",\" orphaned persons\"]}]],\"aO1AxG\":[\"Episode unwatched\"],\"aV/hDI\":[\"Failed to disconnect \",[\"label\"]],\"acbSg0\":[\"Double tap to filter by \",[\"label\"]],\"agE7k4\":[\"Rated \",[\"stars\",\"plural\",{\"one\":[\"#\",\" star\"],\"other\":[\"#\",\" stars\"]}]],\"alPRaV\":[\"Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)\"],\"aourBv\":[\"Scheduled backups enabled\"],\"apLLSU\":[\"Are you sure you want to sign out?\"],\"atc9MA\":[\"Open Emby, go to <0>Settings > Webhooks\"],\"auVUJO\":[\"Restore database?\"],\"ayqfr4\":[[\"label\"],\" URL regenerated\"],\"b/8KCH\":[\"This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons.\"],\"b3Thhd\":[\"Upload failed\"],\"b5DFtH\":[\"Set password\"],\"bHYIks\":[\"Sign Out\"],\"bITrbE\":[\"Purge all\"],\"bNmdjU\":[\"Watchlist\"],\"bTRwag\":[\"Remove from Library\"],\"bXMotV\":[\"Marked as watched\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Page Not Found\"],\"c1ssjI\":[\"Importing from \",[\"source\"]],\"c3b0B0\":[\"Get Started\"],\"c4b9Dm\":[\"No results for \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Go to Dashboard\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" ratings\"],\"cnGeoo\":[\"Delete\"],\"cpE88+\":[\"Create your account\"],\"d/6MoL\":[\"Manage your account and preferences\"],\"dA7BWh\":[\"Requires Emby Server 4.7.9+ and an active Emby Premiere license.\"],\"dEgA5A\":[\"Cancel\"],\"dTZwve\":[\"Marked all episodes as watched\"],\"dUCJry\":[\"Newest\"],\"ddwpAr\":[\"Warnings (\",[\"0\"],\")\"],\"e/ToF5\":[\"Sign in with \",[\"0\"]],\"e9sZMS\":[\"This will permanently delete the backup from <0>\",[\"0\"],\". This cannot be undone.\"],\"eFRooE\":[\"Last run failed\"],\"eM39Om\":[\"Watched all of \",[\"seasonLabel\"]],\"eZjYb8\":[\"Writer\"],\"ecUA8p\":[\"Today\"],\"evBxZy\":[\"Where to Watch\"],\"ezDa1h\":[\"Open docs\"],\"f+m696\":[\"An unexpected error occurred while loading this page. You can try again or head back to the dashboard.\"],\"f/AKdU\":[\"Are you sure you want to disconnect \",[\"label\"],\"? The current URL will stop working.\"],\"f7ax8J\":[\"Open in browser…\"],\"fMPkxb\":[\"Show more\"],\"fNMqNn\":[\"Popular TV Shows\"],\"fObVvy\":[\"Profile picture updated\"],\"fRettQ\":[[\"0\"],\" items\"],\"fUDRF9\":[\"Watchlisted\"],\"fcWrnU\":[\"Sign out\"],\"fgLNSM\":[\"Register\"],\"fsAEqk\":[\"Continue Watching\"],\"fzAeQI\":[\"Registering on \",[\"serverHost\"]],\"g+gBfk\":[\"Parsing...\"],\"g4JYff\":[\"Imported \",[\"0\"],\" items from \",[\"1\"]],\"gKtb5i\":[\"Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)\"],\"gaIAMq\":[\"Remove picture\"],\"gbEEMp\":[\"Delete backup\"],\"gcNLi0\":[\"Update checks enabled\"],\"gmB6oO\":[\"Schedule\"],\"h/T5Yb\":[\"Open registration\"],\"h4yKYk\":[\"Next run\"],\"h7MgpO\":[\"Keyboard Shortcuts\"],\"hTXYdY\":[\"Failed to create backup\"],\"hXYY5Q\":[\"Unwatched all of \",[\"0\"]],\"he3ygx\":[\"Copy\"],\"hjGupC\":[\"Lost connection to import. Check status in settings.\"],\"hlqjFc\":[\"In library\"],\"hou0tP\":[\"Stream\"],\"hty0d5\":[\"Monday\"],\"i0qMbr\":[\"Home\"],\"i9rcQ/\":[\"Movies\"],\"iGma9e\":[\"Update failed\"],\"iSLIjg\":[\"Connect\"],\"iWv3ck\":[\"Failed to catch up\"],\"iXZ09g\":[\"Mark as Completed\"],\"id08cd\":[\"Watched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Add to Library\"],\"ihn4zD\":[\"Search…\"],\"itDEco\":[\"Already have an account? Sign in\"],\"itheEn\":[\"With Ads\"],\"iwCRIF\":[\"You'll be signed out to change the server URL.\"],\"j5GBIy\":[\"Open Radarr, go to Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" backups · last <0/>\"],\"jB3sfe\":[\"Manual backup\"],\"jFnMJ8\":[\"Double tap to clear this filter\"],\"jQsPwL\":[\"Scheduled backups disabled\"],\"jSjGeu\":[[\"0\"],\" items have no external IDs and will be resolved by title search, which may be less accurate.\"],\"jX6Gzg\":[\"This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore.\"],\"jiHVUy\":[\"Pre-restore backup\"],\"k6c41p\":[\"Background jobs\"],\"kBDOjB\":[\"Backup schedule\"],\"kkDQ8m\":[\"Thursday\"],\"klOeIX\":[\"Failed to change password\"],\"ks3XeZ\":[\"Open Sonarr, go to Settings > Import Lists\"],\"kvuCtu\":[\"Something went wrong while loading this title. Please try again.\"],\"kx0s+n\":[\"Results\"],\"l2wcoS\":[\"Last run succeeded\"],\"l3s5ri\":[\"Import\"],\"lCF0wC\":[\"Refresh\"],\"lJ1yo4\":[\"Failed to sign in\"],\"lVqzRx\":[\"Click <0>Add Webhook and paste the URL above\"],\"lXkUEV\":[\"Availability\"],\"lcLe89\":[\"Search for movies, TV shows, or run commands\"],\"lfVyvz\":[\"Add to Watchlist\"],\"llDXYJ\":[\"Backups\"],\"llkZR0\":[\"Could not load integrations\"],\"ln9/n9\":[\"Don't have an account?\"],\"lpIMne\":[\"Passwords do not match\"],\"lqY3WY\":[\"Change Server\"],\"luoodD\":[\"Setup required\"],\"m5WhJy\":[\"Automatic update checks\"],\"mIx58S\":[\"Purge images\"],\"mYBORk\":[\"Movie\"],\"ml9cU0\":[\"Failed to regenerate \",[\"label\"],\" URL\"],\"mqwkjd\":[\"Health status\"],\"mqxHH7\":[\"Go to Explore\"],\"mzI/c+\":[\"Download\"],\"n1ekoW\":[\"Sign In\"],\"n3Pzd7\":[\"Backup created\"],\"nBHvPL\":[\"Cancel editing\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" image\"],\"other\":[\"#\",\" images\"]}]],\"nO0Qnj\":[\"Your code:\"],\"nRP1xx\":[\"Need more help?\"],\"nV1LjT\":[\"Enable the <0>Playback Stop notification type\"],\"nVsE67\":[\"Mark as Watching\"],\"nZ7lF1\":[\"Device code expired. Please try again.\"],\"nbfdhU\":[\"Integrations\"],\"nbmpf9\":[\"Purge metadata\"],\"nnKJTm\":[\"Failed to mark all episodes as watched\"],\"nszbQG\":[\"No backups yet\"],\"nuh/Wq\":[\"Webhook URL\"],\"nwtY4N\":[\"Something went wrong\"],\"oAIA3w\":[\"Search for movies, shows, or people\"],\"oC8IMh\":[\"Search movies, shows, people...\"],\"oNvZcA\":[\"Episodes this week\"],\"oXq+Wr\":[[\"label\"],\" connected\"],\"ogtYkT\":[\"Password updated\"],\"ojtedN\":[\"Open Radarr, go to <0>Settings > Import Lists\"],\"olMi35\":[\"Recommended for You\"],\"p+PZEl\":[\"Here's what's happening with your library\"],\"pAtylB\":[\"Not Found\"],\"pG9pq1\":[\"Deleted \",[\"0\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\", freed \",[\"freed\"]],\"pWWFjv\":[\"Checked <0/>\"],\"ph76H6\":[\"Allow new users to create accounts\"],\"pjgw0N\":[\"Choose how to import your \",[\"0\"],\" data.\"],\"puo3W3\":[\"Redirecting…\"],\"q3GraM\":[\"...and \",[\"0\"],\" more\"],\"q6nrFE\":[\"died at \",[\"age\"]],\"q6pUQ9\":[\"Upload a .db file to replace the current database. A safety backup is created first.\"],\"q8yluz\":[\"Your name\"],\"qA6VR5\":[\"Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license.\"],\"qF2IBM\":[\"Movies this month\"],\"qHbApt\":[\"Failed to load backup schedule settings.\"],\"qLB1zX\":[\"Upload a \",[\"0\"],\" export from your \",[\"1\"],\" account settings.\"],\"qPNzfu\":[\"Update checks disabled\"],\"qWoML/\":[\"Add a new webhook and paste the URL above\"],\"qiOIiY\":[\"Buy\"],\"qn1X6N\":[\"Failed to update registration setting\"],\"qqWcBV\":[\"Completed\"],\"qqeAJM\":[\"Never\"],\"r9aDAY\":[[\"count\"],\" earlier \",[\"count\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" unwatched\"],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Server Health\"],\"rdymVD\":[\"Trigger job\"],\"rtir7c\":[\"unknown\"],\"s0U4ZZ\":[\"TV episodes\"],\"s4vVUm\":[\"Could not load person details\"],\"s9dVME\":[\"Failed to unmark episode\"],\"sGH11W\":[\"Server\"],\"sl/qWH\":[\"Upload profile picture\"],\"sstysK\":[\"Failed to mark episode\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episodes\"],\"t/Ch8S\":[\"Marked as watching\"],\"t/YqKh\":[\"Remove\"],\"tfDRzk\":[\"Save\"],\"tiymc0\":[\"Something went wrong…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"uBAxNB\":[\"Editor\"],\"uBrbSu\":[\"Failed to start \",[\"0\"],\" connection\"],\"uM6jnS\":[\"Restore failed\"],\"uMrJrX\":[\"Admin only\"],\"uswLvZ\":[\"The title you're looking for doesn't exist or may have been removed from the database.\"],\"uxOntd\":[[\"watchedCount\"],\" of \",[\"0\"],\" episodes watched\"],\"v2CA3w\":[\"Change Photo\"],\"v5ipVu\":[\"Mark all episodes as watched?\"],\"vKfeax\":[\"Open Emby, go to Settings > Webhooks\"],\"vXIe7J\":[\"Language\"],\"vuCCZ7\":[\"Failed to parse import data\"],\"vwKERN\":[\"Failed to delete backup\"],\"w8pqsh\":[\"Mark All Watched\"],\"wA7B2T\":[\"New accounts are not being accepted right now. Contact the admin if you need access.\"],\"wGFX13\":[\"Starting at\"],\"wR1UAy\":[\"Popular Movies\"],\"wRWcdL\":[\"Play trailer\"],\"wThGrS\":[\"App Settings\"],\"wZK4Xg\":[\"Never run\"],\"wdLxgL\":[\"Member since \",[\"memberSince\"]],\"wja8aL\":[\"Untitled\"],\"wtGebH\":[\"The person you're looking for doesn't exist or may have been removed from the database.\"],\"wtsbt5\":[\"Add to watchlist\"],\"wtuVU4\":[\"Frequency\"],\"wx7pwA\":[\"Mark as Watched\"],\"x4ZiTl\":[\"Setup instructions\"],\"xCJdfg\":[\"Clear\"],\"xGVfLh\":[\"Continue\"],\"xLoCm2\":[\"Check configuration\"],\"xSrU2g\":[[\"healthyCount\"],\" of \",[\"0\"],\" jobs healthy\"],\"xazqmy\":[\"Seasons\"],\"xbBXhy\":[\"Periodically check GitHub for new Sofa releases\"],\"xrh2/M\":[\"Failed to mark as watched\"],\"y3e9pF\":[\"Delete backup?\"],\"y6Urel\":[\"Next Episode\"],\"yGvjAo\":[\"Update available: \",[\"0\"]],\"yKu/3Y\":[\"Restore\"],\"yYxB17\":[\"Clear all\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Database restored. Reloading...\"],\"ygo0l/\":[\"Start tracking movies and shows\"],\"yvwIbI\":[\"Upload export file\"],\"yz7wBu\":[\"Close\"],\"z1U/Fh\":[\"Rating\"],\"z5evln\":[\"No internet connection\"],\"zAvS8w\":[\"Sign in to continue\"],\"zEqK2w\":[\"The page you're looking for doesn't exist.\"],\"zFkiTv\":[\"Install the Webhook plugin from Jellyfin's plugin catalog\"],\"zNyR4f\":[\"Set your preferred quality profile and root folder\"],\"za8Le/\":[\"Registration Closed\"],\"zb77GC\":[\"Rent\"],\"ztAdhw\":[\"Name updated\"]}")as Messages; \ No newline at end of file +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Sabato\"],\"+6i0lS\":[\"Recupero della cronologia, watchlist e valutazioni...\"],\"+Cv+V9\":[\"Rimuovi dalla libreria\"],\"+JkEpu\":[\"Questa pagina è rimasta sul pavimento della sala di montaggio. Potrebbe essere stata spostata, rimossa, o non essere mai arrivata alla sceneggiatura.\"],\"+K0AvT\":[\"Disconnetti\"],\"+N0l5/\":[\"Connesso a <0>\",[\"serverHost\"],\". Tocca per cambiare.\"],\"+gLHYi\":[\"Impossibile caricare il titolo\"],\"+j1ex/\":[\"Impossibile rimuovere dalla libreria\"],\"+nF1ZO\":[\"Rimuovi foto\"],\"/+6dvC\":[\"Errori (\",[\"0\"],\")\"],\"/BBXeA\":[\"Connessione al server in corso...\"],\"/DwR+n\":[\"Creazione in corso…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Segna tutta la stagione come vista\"],\"/gQXGv\":[\"Impossibile aggiornare lo stato\"],\"/nT6AE\":[\"Nuova password\"],\"/sHc1/\":[\"Controllo aggiornamenti\"],\"0+dyau\":[\"Impossibile aggiornare l'impostazione di conservazione\"],\"0BFJKK\":[\"Autorizzazione negata. Riprova.\"],\"0GHb20\":[\"Svuotare la cache metadati?\"],\"0IBW21\":[\"Impossibile svuotare le cache\"],\"0gH/sc\":[\"Rimuovi immagine del profilo\"],\"1+P9RR\":[\"Passa a \",[\"0\"]],\"12cc1j\":[\"In visione\"],\"12lVOl\":[\"Tracker film & TV self-hosted\"],\"1B4z0M\":[\"Filmografia\"],\"1J4Ek0\":[\"Esegui il backup automatico del database secondo una pianificazione\"],\"1JhxXW\":[\"Episodio \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Opzioni di importazione\"],\"1Qz4uG\":[\"Abilita la categoria evento \\\"Playback\\\"\"],\"1hMWR6\":[\"Crea account\"],\"1jHIjh\":[\"Segnata come vista tutta la \",[\"seasonName\"]],\"1vSYsG\":[\"Scarica backup\"],\"1wL1tj\":[\"Serie TV\"],\"2FletP\":[[\"0\",\"plural\",{\"one\":[\"#\",\" titolo\"],\"other\":[\"#\",\" titoli\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" persona\"],\"other\":[\"#\",\" persone\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" file\"]}],\" eliminati (\",[\"freed\"],\" liberati)\"],\"2Fsd9r\":[\"Questo mese\"],\"2MPcep\":[\"Importazione completata\"],\"2Mu33Z\":[\"Gestione cache\"],\"2POOFK\":[\"Gratis\"],\"2Pt2NY\":[\"Questo rimuoverà tutti gli elementi dalla tua cronologia.\"],\"2fCpt5\":[\"Torna alla home\"],\"2pPBp6\":[\"In tendenza oggi\"],\"39y5bn\":[\"Venerdì\"],\"3Blefz\":[\"Valutazioni\"],\"3JTlG8\":[\"Ricerche recenti\"],\"3Jy8bM\":[\"Film \",[\"select\"]],\"3L9OuQ\":[\"Episodio \",[\"0\"]],\"3T8ziB\":[\"Crea un account\"],\"3hELxX\":[\"Inserisci l'URL del tuo server Sofa per iniziare\"],\"4fxLkp\":[\"Apri Sonarr, vai su <0>Impostazioni > Liste di importazione\"],\"4kpBqM\":[\"Ultimo evento \",[\"0\"]],\"4uUjVO\":[\"Produttore\"],\"4x+A56\":[\"Segnalazione anonima dell'utilizzo\"],\"5IShvp\":[\"Importa \",[\"totalItems\"],\" elementi\"],\"5IYJSv\":[\"Esplora titoli\"],\"5Y4mym\":[\"Importa da \",[\"0\"]],\"5ZzgbQ\":[\"Connetti \",[\"0\"]],\"5fEnbK\":[\"Impossibile aggiornare l'impostazione di backup pianificato\"],\"5lWFkC\":[\"Accedi\"],\"5v9C16\":[\"Connesso a \",[\"source\"]],\"623bR4\":[\"Impossibile avviare il job\"],\"6HN0yh\":[\"Apri Plex, vai su Impostazioni > Webhook\"],\"6TNjOJ\":[\"Impossibile aggiornare la valutazione\"],\"6TfUy6\":[\"ultimi \",[\"value\"]],\"6V3Ea3\":[\"Copiato\"],\"6YtxFj\":[\"Nome\"],\"6exX+8\":[\"Rigenera\"],\"6gRgw8\":[\"Riprova\"],\"6lGV3K\":[\"Mostra meno\"],\"76++pR\":[\"Avvisi\"],\"77DIAu\":[\"Vai su Dashboard > Plugin > Webhook\"],\"7Bj3x9\":[\"Non riuscito\"],\"7D50KC\":[\"Disconnesso: \",[\"label\"]],\"7GfM5w\":[\"Visualizzati di recente\"],\"7L01XJ\":[\"Azioni\"],\"7eMo+U\":[\"Vai alla home\"],\"7p5kLi\":[\"Dashboard\"],\"85eoJ1\":[\"Pianificazione aggiornata\"],\"8B9E2D\":[\"Giorno:\"],\"8YwF1J\":[\"Vai su <0>Dashboard > Plugin > Webhook\"],\"8ZsakT\":[\"Password\"],\"8tjQCz\":[\"Esplora\"],\"8vNtLy\":[\"Incolla l'URL di Radarr nel campo URL della lista\"],\"8wYDMp\":[\"Hai già un account?\"],\"9AE3vb\":[\"Apri Plex, vai su <0>Impostazioni > Webhook<1/>\"],\"9GW0ZB\":[\"L'importazione è ancora in corso in background. Ricontrolla più tardi.\"],\"9NyAH9\":[\"Ignorati\"],\"9Xhrps\":[\"Impossibile connettersi\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Bentornato\"],\"9rG25a\":[\"URL server\"],\"A+0rLe\":[\"Segnato come completato\"],\"AOHgZp\":[\"Episodi\"],\"AOddWK\":[\"Connetti \",[\"label\"]],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Ambiente\"],\"Acf6vF\":[\"Salva nome\"],\"AdoUfN\":[\"Impossibile aggiungere alla watchlist\"],\"AeXO77\":[\"Account\"],\"AjtYj0\":[\"In watchlist\"],\"Avee+B\":[\"Impossibile aggiornare il nome\"],\"B2R3xD\":[\"Attiva/disattiva backup pianificati\"],\"BEVzjL\":[\"Importazione fallita\"],\"BQnS5I\":[\"Apri \",[\"source\"],\" per inserire il codice\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup\"],\"other\":[\"backup\"]}],\" archiviati\"],\"BpttUI\":[\"In tendenza oggi\"],\"BrrIs8\":[\"Archiviazione\"],\"BskWMl\":[\"Non raggiungibile\"],\"BzEFor\":[\"o\"],\"CGDHFb\":[\"Aggiungi una <0>Destinazione generica e incolla l'URL sopra\"],\"CGExDN\":[\"Impossibile svuotare la cache immagini\"],\"CHeXFE\":[\"Stato aggiornato\"],\"CKyk7Q\":[\"Torna indietro\"],\"CaB/+I\":[\"Bentornato, \",[\"name\"]],\"CodnUh\":[\"Rimosso dalla libreria\"],\"CpzGJY\":[\"L'operazione potrebbe richiedere alcuni minuti per librerie grandi. Non chiudere questa scheda.\"],\"CuPxpd\":[\"Richiede un abbonamento <0>Plex Pass<1/> attivo.\"],\"CzBN6D\":[\"Inizia a esplorare\"],\"D+R2Xs\":[\"Avvio importazione...\"],\"D3C4Yx\":[\"La password attuale è obbligatoria\"],\"DBC3t5\":[\"Domenica\"],\"DI4lqs\":[\"Persona non trovata\"],\"DKBbJf\":[\"Aggiunto \\\"\",[\"titleName\"],\"\\\" alla watchlist\"],\"DPfwMq\":[\"Fatto\"],\"DZse/o\":[\"Aggiungi una \\\"Destinazione generica\\\" e incolla l'URL sopra\"],\"E/QGRL\":[\"Disabilitato\"],\"E6nRW7\":[\"Copia URL\"],\"EWQlBH\":[\"La tua libreria è vuota\"],\"EWaCfj\":[\"Inserisci la tua password attuale e scegline una nuova.\"],\"Eeo/Gy\":[\"Impossibile aggiornare l'impostazione\"],\"Efn6WU\":[\"Questo eliminerà tutti i titoli stub non arricchiti e tutte le immagini in cache dal disco. Tutto verrà reimportato e riscaricato secondo necessità.\"],\"Etp5if\":[\"Importazione da \",[\"source\"],\" completata.\"],\"F006BN\":[\"Importa da \",[\"source\"]],\"FNvDMc\":[\"Questa settimana\"],\"FWSp+7\":[\"Inserisci il codice qui sotto sul sito di \",[\"source\"],\" per autorizzare Sofa.\"],\"FXN0ro\":[\"Raccomandazioni\"],\"FaU7Ag\":[\"Abilita il tipo di notifica \\\"Playback Stop\\\"\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Attore\"],\"FwRqjE\":[\"Utilizzo disco: cache immagini e backup\"],\"G00fgM\":[\"ultimi \",[\"n\"]],\"G3myU+\":[\"Martedì\"],\"GcCthe\":[\"In libreria\"],\"Gf39AA\":[[\"0\"],\" attivato\"],\"GnhfWw\":[\"Attiva/disattiva controllo aggiornamenti automatico\"],\"GptGxg\":[\"Cambia password\"],\"GqTZ+S\":[\"Valutato \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"stella\"],\"other\":[\"stelle\"]}]],\"GrdN/F\":[\"Recuperati — \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episodio\"],\"other\":[\"episodi\"]}],\" segnati come visti\"],\"H4B5LG\":[\"Questo prodotto utilizza le API di TMDB ma non è approvato o certificato da TMDB.\"],\"HBRd5n\":[\"Stagione \",[\"0\"]],\"HD+aQ7\":[\"Backup del database\"],\"HG+31u\":[\"Svuotare tutte le cache?\"],\"Haz+72\":[\"Questo eliminerà tutte le immagini TMDB in cache dal disco. Le immagini verranno riscaricate automaticamente secondo necessità.\"],\"HbReP5\":[\"Segnato \\\"\",[\"titleName\"],\"\\\" come completato\"],\"Hg6o8v\":[\"Aggiorna stato di salute del sistema\"],\"HmEjnC\":[\"Ultimo evento \",[\"timeAgo\"]],\"HvDfH/\":[\"Importati\"],\"I89uD4\":[\"Ripristino in corso…\"],\"IRoxQm\":[\"Registrazione chiusa\"],\"IS0nrP\":[\"Crea account\"],\"IY9rQ0\":[\"Libera spazio sul disco svuotando i metadati e le immagini in cache\"],\"IrC12v\":[\"Applicazione\"],\"J28zul\":[\"Connessione in corso...\"],\"J64cFL\":[\"Aggiornamento libreria\"],\"JKmmmN\":[\"Aggiunto alla watchlist\"],\"JN0f/Y\":[\"Connetti a TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Conferma nuova password\"],\"JRadFJ\":[\"Inizia a tracciare le tue visioni\"],\"JSwq8t\":[\"La creazione di nuovi account è attualmente disabilitata.\"],\"JY5Oyv\":[\"Database\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Connessione in corso…\"],\"JwFbe8\":[\"TV\"],\"KDw4GX\":[\"Riprova\"],\"KG6681\":[\"Episodio visto\"],\"KIS/Sd\":[\"Esci dalle altre sessioni\"],\"KK0ghs\":[\"Cache immagini\"],\"KVAoFR\":[\"illimitato\"],\"KcXJuc\":[\"Svuotamento in corso...\"],\"KhtG3o\":[\"Aggiorna password\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" titolo\"],\"other\":[\"#\",\" titoli\"]}]],\"KmWyx0\":[\"Job\"],\"KoF0x6\":[\"età \",[\"age\"]],\"Ksiej9\":[\"Richiede un abbonamento Plex Pass attivo.\"],\"Kx9NEt\":[\"Token non valido\"],\"Lk6Jb/\":[\"Ultimo polling \",[\"timeAgo\"]],\"LmEEic\":[\"In attesa di autorizzazione...\"],\"LqKH42\":[\"Connetti con \",[\"0\"]],\"Lrpjji\":[\"Disconnetti \",[\"label\"]],\"Lu6Udx\":[\"Clicca \\\"+\\\" e seleziona \\\"Custom Lists\\\"\"],\"MDoX++\":[\"URL lista Sonarr\"],\"MRBlCJ\":[\"Impossibile rimuovere il segno da alcuni episodi\"],\"MUO7w9\":[\"Segnato \\\"\",[\"titleName\"],\"\\\" come visto\"],\"MZbQHL\":[\"Nessun risultato trovato.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Autorizza Sofa a leggere la tua libreria \",[\"0\"],\". Nessuna password condivisa.\"],\"N40H+G\":[\"Tutti\"],\"N6SFhC\":[\"Accedi invece\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" è disponibile\"],\"N9RF2M\":[\"Clicca \\\"Add Webhook\\\" e incolla l'URL sopra\"],\"NBo4z0\":[\"Clicca <0>+ e seleziona <1>Custom Lists\"],\"NICUmW\":[\"Regista\"],\"NQzPoO\":[\"Nuovo backup\"],\"NSxl1l\":[\"Altre impostazioni\"],\"NVF43p\":[\"Ora:\"],\"NdPMwS\":[\"Nella tua libreria\"],\"NgaPSG\":[\"Impossibile aggiornare la pianificazione\"],\"O3oNi5\":[\"Email\"],\"OBcj5W\":[\"Questo invaliderà l'URL attuale di \",[\"label\"],\". Dovrai aggiornarlo in \",[\"label\"],\".\"],\"OL8hbM\":[\"La nuova password deve contenere almeno 8 caratteri\"],\"ONWvwQ\":[\"Carica\"],\"OPFjyX\":[\"Installa il <0>plugin Webhook<1/> dal catalogo plugin di Jellyfin\"],\"OW/+RD\":[\"Cronologia visioni\"],\"OZdaTZ\":[\"Persona\"],\"OvO76u\":[\"Torna al login\"],\"OvdFIZ\":[\"Stagione vista\"],\"P2FLLe\":[\"Visualizza rilascio\"],\"PBdLfg\":[\"Nessun titolo trovato per questo genere.\"],\"PQ3qDa\":[\"Recupero dei dati della tua libreria da \",[\"source\"],\"...\"],\"PjNoxI\":[\"Backup pianificato\"],\"Pn2B7/\":[\"Password attuale\"],\"PnEbL/\":[\"Valutato \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"stella\"],\"other\":[\"stelle\"]}]],\"Pwqkdw\":[\"Caricamento…\"],\"Py87xY\":[\"Autorizzazione riuscita ma impossibile recuperare la libreria. Riprova.\"],\"Q3MPWA\":[\"Aggiorna password\"],\"QHcLEN\":[\"Connesso\"],\"QK4UIx\":[\"Segna come visto\"],\"Qjlym2\":[\"Impossibile creare l'account\"],\"Qm1NmK\":[\"O\"],\"Qoq+GP\":[\"Leggi di più\"],\"QphVZW\":[\"Impossibile raggiungere il server\"],\"QqLJHH\":[\"Quest'anno\"],\"R0yu2l\":[\"Recupera episodi\"],\"R4YBui\":[\"Cerca film e serie TV per iniziare a tracciare\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episodio\"],\"other\":[\"episodi\"]}]],\"RIR15/\":[\"URL lista Radarr\"],\"RLe7Vk\":[\"Verifica in corso…\"],\"ROq8cl\":[\"Impossibile analizzare il file\"],\"RQq8Si\":[\"Registrazione aperta\"],\"S0soqb\":[\"Impossibile rimuovere l'immagine del profilo\"],\"S1McZh\":[\"Impossibile caricare l'avatar\"],\"S2ble5\":[[\"0\"],\" film, \",[\"1\"],\" episodi\"],\"S2qPRR\":[\"Cerca film e serie TV…\"],\"SDND4q\":[\"Non configurato\"],\"SFdAk9\":[\"Non visto S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Rimuovi visione dalla stagione\"],\"SbS+Bm\":[\"Rigenera URL\"],\"SlfejT\":[\"Errore\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"Prossimo\"],\"SyPRjk\":[\"Sofa registrerà automaticamente film ed episodi quando finisci di guardarli\"],\"T0/7WG\":[\"Prossimo backup \",[\"distance\"]],\"TEaX6q\":[\"Backup eliminato\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Immagine del profilo rimossa\"],\"TqyQQS\":[\"Abilita la categoria evento <0>Playback\"],\"Tz0i8g\":[\"Impostazioni\"],\"U+FxtW\":[\"Traccia cosa guardi. Sai cosa ti aspetta.<0/>La tua libreria, i tuoi dati, le tue regole.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Attiva/disattiva registrazione aperta\"],\"UDMjsP\":[\"Azioni rapide\"],\"UmQ6Fe\":[\"Svuotare la cache immagini?\"],\"UtDm3q\":[\"URL copiato negli appunti\"],\"V1Kh9Z\":[\"Episodi \",[\"select\"]],\"V6uzvC\":[\"Simili a questo\"],\"V9CuQ+\":[\"Connetti a \",[\"source\"]],\"VAcXNz\":[\"Mercoledì\"],\"VKyhZK\":[\"Titolo non trovato\"],\"VQvpro\":[\"Incolla l'URL di Sonarr nel campo URL della lista\"],\"VhMDMg\":[\"Cambia password\"],\"Vx0ayx\":[\"Impossibile segnare alcuni episodi\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Consigliati\"],\"WMCwmR\":[\"Cerca aggiornamenti\"],\"WP48q2\":[\"Cache immagini\"],\"WT1Ibn\":[\"Ultima esecuzione\"],\"Wb3E4g\":[\"Esegui ora\"],\"WgF2UQ\":[\"Stai usando la v\",[\"0\"],\".\"],\"WtWhSi\":[\"Valutazione rimossa\"],\"Wy/3II\":[\"Ultimo polling \",[\"0\"]],\"XFCSYs\":[\"Cast\"],\"XN23JY\":[\"Questo eliminerà i titoli stub non arricchiti che non sono in nessuna libreria utente e pulerà i record di persone orfane. I titoli eliminati verranno reimportati se consultati di nuovo.\"],\"XZwihE\":[\"Pronto — nessun evento ricevuto ancora\"],\"XjTduw\":[\"Carica immagine\"],\"YEGzVq\":[\"Impossibile connettere \",[\"label\"]],\"YErf89\":[\"Impossibile svuotare la cache metadati\"],\"YQ768h\":[\"Scena non trovata\"],\"YiRsXK\":[\"Cancellare la cronologia recente?\"],\"Yjp1zf\":[\"Non hai un server?\"],\"YqMfa9\":[\"Rivedi i risultati trovati e scegli cosa importare.\"],\"ZGUYm0\":[\"Pronto — nessun polling ancora\"],\"ZQKLI1\":[\"Zona pericolosa\"],\"ZVZUoU\":[[\"0\"],\" immagini in cache\"],\"ZWTQ81\":[\"Guarda su \",[\"name\"]],\"a3LDKx\":[\"Sicurezza\"],\"aLBUiR\":[\"Mantenendo <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" backup.\"],\"aM0+kY\":[[\"0\",\"plural\",{\"one\":[\"#\",\" titolo obsoleto\"],\"other\":[\"#\",\" titoli obsoleti\"]}],\" e \",[\"1\",\"plural\",{\"one\":[\"#\",\" persona orfana\"],\"other\":[\"#\",\" persone orfane\"]}],\" eliminati\"],\"aO1AxG\":[\"Episodio non visto\"],\"aV/hDI\":[\"Impossibile disconnettere \",[\"label\"]],\"acbSg0\":[\"Tocca due volte per filtrare per \",[\"label\"]],\"agE7k4\":[[\"stars\",\"plural\",{\"one\":[\"#\",\" stella\"],\"other\":[\"#\",\" stelle\"]}]],\"alPRaV\":[\"I titoli nella tua watchlist di Sofa verranno aggiunti automaticamente per il download quando Radarr interroga questa lista (ogni 12 ore per impostazione predefinita)\"],\"aourBv\":[\"Backup pianificati abilitati\"],\"apLLSU\":[\"Sei sicuro di voler uscire?\"],\"atc9MA\":[\"Apri Emby, vai su <0>Impostazioni > Webhook\"],\"auVUJO\":[\"Ripristinare il database?\"],\"ayqfr4\":[\"URL \",[\"label\"],\" rigenerato\"],\"b/8KCH\":[\"Questo segnerà tutti gli episodi di questa serie come visti. Puoi annullarlo in seguito de-segnando le singole stagioni.\"],\"b3Thhd\":[\"Caricamento fallito\"],\"b5DFtH\":[\"Imposta password\"],\"bHYIks\":[\"Esci\"],\"bITrbE\":[\"Svuota tutto\"],\"bNmdjU\":[\"Watchlist\"],\"bTRwag\":[\"Rimuovi dalla libreria\"],\"bXMotV\":[\"Segnato come visto\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Pagina non trovata\"],\"c1ssjI\":[\"Importazione da \",[\"source\"],\" in corso\"],\"c3b0B0\":[\"Inizia\"],\"c4b9Dm\":[\"Nessun risultato per \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Vai alla Dashboard\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" valutazioni\"],\"cnGeoo\":[\"Elimina\"],\"cpE88+\":[\"Crea il tuo account\"],\"d/6MoL\":[\"Gestisci il tuo account e le tue preferenze\"],\"dA7BWh\":[\"Richiede Emby Server 4.7.9+ e una licenza Emby Premiere attiva.\"],\"dEgA5A\":[\"Annulla\"],\"dTZwve\":[\"Tutti gli episodi segnati come visti\"],\"dUCJry\":[\"Più recenti\"],\"ddwpAr\":[\"Avvisi (\",[\"0\"],\")\"],\"e/ToF5\":[\"Accedi con \",[\"0\"]],\"e9sZMS\":[\"Questo eliminerà definitivamente il backup del <0>\",[\"0\"],\". L'operazione non può essere annullata.\"],\"eFRooE\":[\"Ultima esecuzione fallita\"],\"eM39Om\":[\"Segnata come vista tutta la \",[\"seasonLabel\"]],\"eZjYb8\":[\"Sceneggiatore\"],\"ecUA8p\":[\"Oggi\"],\"evBxZy\":[\"Dove guardarlo\"],\"ezDa1h\":[\"Apri la documentazione\"],\"f+m696\":[\"Si è verificato un errore imprevisto durante il caricamento di questa pagina. Puoi riprovare o tornare alla dashboard.\"],\"f/AKdU\":[\"Sei sicuro di voler disconnettere \",[\"label\"],\"? L'URL attuale smetterà di funzionare.\"],\"f7ax8J\":[\"Apri nel browser…\"],\"fMPkxb\":[\"Mostra di più\"],\"fNMqNn\":[\"Serie TV popolari\"],\"fObVvy\":[\"Immagine del profilo aggiornata\"],\"fRettQ\":[[\"0\"],\" elementi\"],\"fUDRF9\":[\"In watchlist\"],\"fcWrnU\":[\"Esci\"],\"fgLNSM\":[\"Registrati\"],\"fsAEqk\":[\"Continua a guardare\"],\"fzAeQI\":[\"Registrazione su \",[\"serverHost\"]],\"g+gBfk\":[\"Analisi in corso...\"],\"g4JYff\":[\"Importati \",[\"0\"],\" elementi da \",[\"1\"]],\"gKtb5i\":[\"I titoli nella tua watchlist di Sofa verranno aggiunti automaticamente per il download quando Sonarr interroga questa lista (ogni 6 ore per impostazione predefinita)\"],\"gaIAMq\":[\"Rimuovi immagine\"],\"gbEEMp\":[\"Elimina backup\"],\"gcNLi0\":[\"Controllo aggiornamenti abilitato\"],\"gmB6oO\":[\"Pianificazione\"],\"h/T5Yb\":[\"Registrazione aperta\"],\"h4yKYk\":[\"Prossima esecuzione\"],\"h7MgpO\":[\"Scorciatoie da tastiera\"],\"hTXYdY\":[\"Impossibile creare il backup\"],\"hXYY5Q\":[\"Rimossa visione di \",[\"0\"]],\"he3ygx\":[\"Copia\"],\"hjGupC\":[\"Connessione all'importazione persa. Controlla lo stato nelle impostazioni.\"],\"hlqjFc\":[\"In libreria\"],\"hou0tP\":[\"Streaming\"],\"hty0d5\":[\"Lunedì\"],\"i0qMbr\":[\"Home\"],\"i9rcQ/\":[\"Film\"],\"iGma9e\":[\"Aggiornamento fallito\"],\"iSLIjg\":[\"Connetti\"],\"iWv3ck\":[\"Impossibile recuperare gli episodi\"],\"iXZ09g\":[\"Segna come completato\"],\"id08cd\":[\"Visto S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Aggiungi alla libreria\"],\"ihn4zD\":[\"Cerca…\"],\"itDEco\":[\"Hai già un account? Accedi\"],\"itheEn\":[\"Con pubblicità\"],\"iwCRIF\":[\"Verrai disconnesso per cambiare l'URL del server.\"],\"j5GBIy\":[\"Apri Radarr, vai su Impostazioni > Liste di importazione\"],\"jAe8l4\":[[\"0\"],\" backup · ultimo <0/>\"],\"jB3sfe\":[\"Backup manuale\"],\"jFnMJ8\":[\"Tocca due volte per rimuovere questo filtro\"],\"jQsPwL\":[\"Backup pianificati disabilitati\"],\"jSjGeu\":[[\"0\"],\" elementi non hanno ID esterni e verranno risolti tramite ricerca per titolo, che potrebbe essere meno accurata.\"],\"jX6Gzg\":[\"Questo sostituirà l'intero database con il file caricato. Prima verrà creato un backup di sicurezza dei dati attuali. Le sessioni attive potrebbero richiedere un aggiornamento dopo il ripristino.\"],\"jiHVUy\":[\"Backup pre-ripristino\"],\"k6c41p\":[\"Job in background\"],\"kBDOjB\":[\"Pianificazione backup\"],\"kkDQ8m\":[\"Giovedì\"],\"klOeIX\":[\"Impossibile cambiare la password\"],\"ks3XeZ\":[\"Apri Sonarr, vai su Impostazioni > Liste di importazione\"],\"kvuCtu\":[\"Qualcosa è andato storto durante il caricamento di questo titolo. Riprova.\"],\"kx0s+n\":[\"Risultati\"],\"l2wcoS\":[\"Ultima esecuzione riuscita\"],\"l3s5ri\":[\"Importazione\"],\"lCF0wC\":[\"Aggiorna\"],\"lJ1yo4\":[\"Impossibile accedere\"],\"lVqzRx\":[\"Clicca <0>Add Webhook e incolla l'URL sopra\"],\"lXkUEV\":[\"Disponibilità\"],\"lcLe89\":[\"Cerca film, serie TV o esegui comandi\"],\"lfVyvz\":[\"Aggiungi alla watchlist\"],\"llDXYJ\":[\"Backup\"],\"llkZR0\":[\"Impossibile caricare le integrazioni\"],\"ln9/n9\":[\"Non hai un account?\"],\"lpIMne\":[\"Le password non corrispondono\"],\"lqY3WY\":[\"Cambia server\"],\"luoodD\":[\"Configurazione richiesta\"],\"m5WhJy\":[\"Controllo aggiornamenti automatico\"],\"mIx58S\":[\"Svuota immagini\"],\"mYBORk\":[\"Film\"],\"ml9cU0\":[\"Impossibile rigenerare l'URL di \",[\"label\"]],\"mqwkjd\":[\"Stato di salute\"],\"mqxHH7\":[\"Vai a Esplora\"],\"mzI/c+\":[\"Scarica\"],\"n1ekoW\":[\"Accedi\"],\"n3Pzd7\":[\"Backup creato\"],\"nBHvPL\":[\"Annulla modifica\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" immagine\"],\"other\":[\"#\",\" immagini\"]}]],\"nO0Qnj\":[\"Il tuo codice:\"],\"nRP1xx\":[\"Serve altro aiuto?\"],\"nV1LjT\":[\"Abilita il tipo di notifica <0>Playback Stop\"],\"nVsE67\":[\"Segna come in visione\"],\"nZ7lF1\":[\"Il codice del dispositivo è scaduto. Riprova.\"],\"nbfdhU\":[\"Integrazioni\"],\"nbmpf9\":[\"Svuota metadati\"],\"nnKJTm\":[\"Impossibile segnare tutti gli episodi come visti\"],\"nszbQG\":[\"Nessun backup ancora\"],\"nuh/Wq\":[\"URL webhook\"],\"nwtY4N\":[\"Qualcosa è andato storto\"],\"oAIA3w\":[\"Cerca film, serie TV o persone\"],\"oC8IMh\":[\"Cerca film, serie, persone...\"],\"oNvZcA\":[\"Episodi di questa settimana\"],\"oXq+Wr\":[\"Connesso: \",[\"label\"]],\"ogtYkT\":[\"Password aggiornata\"],\"ojtedN\":[\"Apri Radarr, vai su <0>Impostazioni > Liste di importazione\"],\"olMi35\":[\"Consigliati per te\"],\"p+PZEl\":[\"Ecco cosa sta succedendo nella tua libreria\"],\"pAtylB\":[\"Non trovato\"],\"pG9pq1\":[\"Eliminati \",[\"0\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" file\"]}],\", liberati \",[\"freed\"]],\"pWWFjv\":[\"Controllato <0/>\"],\"ph76H6\":[\"Consenti la creazione di nuovi account\"],\"pjgw0N\":[\"Scegli come importare i tuoi dati \",[\"0\"],\".\"],\"puo3W3\":[\"Reindirizzamento in corso…\"],\"q3GraM\":[\"...e altri \",[\"0\"]],\"q6nrFE\":[\"morto a \",[\"age\"]],\"q6pUQ9\":[\"Carica un file .db per sostituire il database attuale. Prima viene creato un backup di sicurezza.\"],\"q8yluz\":[\"Il tuo nome\"],\"qA6VR5\":[\"Richiede <0>Emby Server 4.7.9+ e una licenza <1>Emby Premiere<2/> attiva.\"],\"qF2IBM\":[\"Film di questo mese\"],\"qHbApt\":[\"Impossibile caricare le impostazioni di pianificazione backup.\"],\"qLB1zX\":[\"Carica un'esportazione \",[\"0\"],\" dalle impostazioni del tuo account \",[\"1\"],\".\"],\"qPNzfu\":[\"Controllo aggiornamenti disabilitato\"],\"qWoML/\":[\"Aggiungi un nuovo webhook e incolla l'URL sopra\"],\"qiOIiY\":[\"Acquista\"],\"qn1X6N\":[\"Impossibile aggiornare l'impostazione di registrazione\"],\"qqWcBV\":[\"Completato\"],\"qqeAJM\":[\"Mai\"],\"r9aDAY\":[[\"count\"],\" earlier \",[\"count\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" unwatched\"],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Salute del server\"],\"rdymVD\":[\"Avvia job\"],\"rtir7c\":[\"sconosciuto\"],\"s0U4ZZ\":[\"Episodi TV\"],\"s4vVUm\":[\"Impossibile caricare i dettagli della persona\"],\"s9dVME\":[\"Impossibile rimuovere il segno dall'episodio\"],\"sGH11W\":[\"Server\"],\"sl/qWH\":[\"Carica immagine del profilo\"],\"sstysK\":[\"Impossibile segnare l'episodio\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episodi\"],\"t/Ch8S\":[\"Segnato come in visione\"],\"t/YqKh\":[\"Rimuovi\"],\"tfDRzk\":[\"Salva\"],\"tiymc0\":[\"Qualcosa è andato storto…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episodio\"],\"other\":[\"episodi\"]}]],\"uBAxNB\":[\"Montatore\"],\"uBrbSu\":[\"Impossibile avviare la connessione \",[\"0\"]],\"uM6jnS\":[\"Ripristino fallito\"],\"uMrJrX\":[\"Solo admin\"],\"uswLvZ\":[\"Il titolo che stai cercando non esiste o potrebbe essere stato rimosso dal database.\"],\"uxOntd\":[[\"watchedCount\"],\" di \",[\"0\"],\" episodi visti\"],\"v2CA3w\":[\"Cambia foto\"],\"v5ipVu\":[\"Segnare tutti gli episodi come visti?\"],\"vKfeax\":[\"Apri Emby, vai su Impostazioni > Webhook\"],\"vXIe7J\":[\"Lingua\"],\"vuCCZ7\":[\"Impossibile analizzare i dati di importazione\"],\"vwKERN\":[\"Impossibile eliminare il backup\"],\"w8pqsh\":[\"Segna tutti come visti\"],\"wA7B2T\":[\"La registrazione di nuovi account non è disponibile al momento. Contatta l'amministratore per richiedere l'accesso.\"],\"wGFX13\":[\"Inizia alle\"],\"wR1UAy\":[\"Film popolari\"],\"wRWcdL\":[\"Riproduci trailer\"],\"wThGrS\":[\"Impostazioni app\"],\"wZK4Xg\":[\"Mai eseguito\"],\"wdLxgL\":[\"Membro dal \",[\"memberSince\"]],\"wja8aL\":[\"Senza titolo\"],\"wtGebH\":[\"La persona che stai cercando non esiste o potrebbe essere stata rimossa dal database.\"],\"wtsbt5\":[\"Aggiungi alla watchlist\"],\"wtuVU4\":[\"Frequenza\"],\"wx7pwA\":[\"Segna come visto\"],\"x4ZiTl\":[\"Istruzioni di configurazione\"],\"xCJdfg\":[\"Cancella\"],\"xGVfLh\":[\"Continua\"],\"xLoCm2\":[\"Verifica configurazione\"],\"xSrU2g\":[[\"healthyCount\"],\" di \",[\"0\"],\" job attivi\"],\"xazqmy\":[\"Stagioni\"],\"xbBXhy\":[\"Controlla periodicamente GitHub per nuove versioni di Sofa\"],\"xrh2/M\":[\"Impossibile segnare come visto\"],\"y3e9pF\":[\"Eliminare il backup?\"],\"y6Urel\":[\"Episodio successivo\"],\"yGvjAo\":[\"Aggiornamento disponibile: \",[\"0\"]],\"yKu/3Y\":[\"Ripristina\"],\"yYxB17\":[\"Cancella tutto\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Database ripristinato. Ricaricamento...\"],\"ygo0l/\":[\"Inizia a tracciare film e serie\"],\"yvwIbI\":[\"Carica file di esportazione\"],\"yz7wBu\":[\"Chiudi\"],\"z1U/Fh\":[\"Valutazione\"],\"z5evln\":[\"Nessuna connessione internet\"],\"zAvS8w\":[\"Accedi per continuare\"],\"zEqK2w\":[\"La pagina che stai cercando non esiste.\"],\"zFkiTv\":[\"Installa il plugin Webhook dal catalogo plugin di Jellyfin\"],\"zNyR4f\":[\"Imposta il profilo di qualità e la cartella radice preferiti\"],\"za8Le/\":[\"Registrazione chiusa\"],\"zb77GC\":[\"Noleggia\"],\"ztAdhw\":[\"Nome aggiornato\"]}")as Messages; \ No newline at end of file diff --git a/packages/i18n/src/po/pt.po b/packages/i18n/src/po/pt.po index d586cfa..b78accc 100644 --- a/packages/i18n/src/po/pt.po +++ b/packages/i18n/src/po/pt.po @@ -8,54 +8,54 @@ msgstr "" "Language: pt\n" "Project-Id-Version: sofa\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2026-03-18 16:04\n" +"PO-Revision-Date: 2026-03-19 00:35\n" "Last-Translator: \n" "Language-Team: Portuguese\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Crowdin-Project: sofa\n" "X-Crowdin-Project-ID: 881052\n" "X-Crowdin-Language: pt-PT\n" -"X-Crowdin-File: /packages/i18n/src/po/en.po\n" -"X-Crowdin-File-ID: 12\n" +"X-Crowdin-File: en.po\n" +"X-Crowdin-File-ID: 14\n" #. placeholder {0}: result.errors.length - 50 -#: apps/web/src/components/settings/imports-section.tsx:938 +#: apps/web/src/components/settings/imports-section.tsx:895 msgid "...and {0} more" -msgstr "" +msgstr "...e mais {0}" #. placeholder {0}: systemHealth.data.imageCache.imageCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:482 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:456 msgid "{0, plural, one {# image} other {# images}}" -msgstr "" +msgstr "{0, plural, one {# imagem} other {# imagens}}" #. placeholder {0}: systemHealth.data.database.titleCount -#: apps/native/src/app/(tabs)/(settings)/index.tsx:466 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:442 msgid "{0, plural, one {# title} other {# titles}}" -msgstr "" +msgstr "{0, plural, one {# título} other {# títulos}}" #. placeholder {0}: displayBackups.length #. placeholder {1}: displayBackups.length -#: apps/web/src/components/settings/backup-section.tsx:109 +#: apps/web/src/components/settings/backup-section.tsx:98 msgid "{0} {1, plural, one {backup} other {backups}} stored" -msgstr "" +msgstr "{0} {1, plural, one {backup armazenado} other {backups armazenados}}" #: apps/web/src/components/settings/backup-section.tsx:105 #~ msgid "{0} backup{1} stored" #~ msgstr "{0} backup{1} stored" #. placeholder {0}: backups.backupCount -#: apps/web/src/components/settings/system-health-section.tsx:654 +#: apps/web/src/components/settings/system-health-section.tsx:599 msgid "{0} backups · last <0/>" -msgstr "" +msgstr "{0} backups · último <0/>" #. placeholder {0}: imageCache.imageCount.toLocaleString() -#: apps/web/src/components/settings/system-health-section.tsx:621 +#: apps/web/src/components/settings/system-health-section.tsx:569 msgid "{0} cached images" -msgstr "" +msgstr "{0} imagens em cache" #. placeholder {0}: member.episodeCount #. placeholder {1}: member.episodeCount !== 1 ? "s" : "" -#: apps/web/src/components/titles/cast-carousel.tsx:80 +#: apps/web/src/components/titles/cast-carousel.tsx:78 msgid "{0} ep{1}" msgstr "" @@ -64,251 +64,251 @@ msgstr "" #~ msgstr "{0} images" #. placeholder {0}: stats.watchlist -#: apps/web/src/components/settings/imports-section.tsx:808 +#: apps/web/src/components/settings/imports-section.tsx:770 msgid "{0} items" -msgstr "" +msgstr "{0} itens" #. placeholder {0}: preview.diagnostics.unresolved -#: apps/web/src/components/settings/imports-section.tsx:788 +#: apps/web/src/components/settings/imports-section.tsx:750 msgid "{0} items have no external IDs and will be resolved by title search, which may be less accurate." -msgstr "" +msgstr "{0} itens não têm IDs externos e serão resolvidos por pesquisa de título, o que pode ser menos preciso." #. placeholder {0}: stats.movies #. placeholder {1}: stats.episodes -#: apps/web/src/components/settings/imports-section.tsx:802 +#: apps/web/src/components/settings/imports-section.tsx:764 msgid "{0} movies, {1} episodes" -msgstr "" +msgstr "{0} filmes, {1} episódios" #. placeholder {0}: stats.ratings -#: apps/web/src/components/settings/imports-section.tsx:814 +#: apps/web/src/components/settings/imports-section.tsx:776 msgid "{0} ratings" -msgstr "" +msgstr "{0} avaliações" #: apps/native/src/app/(tabs)/(settings)/index.tsx:456 #~ msgid "{0} titles" #~ msgstr "{0} titles" #. placeholder {0}: JOB_LABELS[name] ?? name -#: apps/web/src/components/settings/system-health-section.tsx:343 +#: apps/web/src/components/settings/system-health-section.tsx:316 msgid "{0} triggered" -msgstr "" +msgstr "{0} acionado" #. placeholder {0}: item.watchedEpisodes #. placeholder {1}: item.totalEpisodes #. placeholder {2}: item.totalEpisodes -#: apps/web/src/components/dashboard/continue-watching-card.tsx:93 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:78 msgid "{0}/{1} {2, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{0}/{1} {2, plural, one {episódio} other {episódios}}" #: apps/web/src/components/dashboard/continue-watching-card.tsx:92 #~ msgid "{0}/{1} episodes" #~ msgstr "{0}/{1} episodes" -#: apps/web/src/components/titles/use-title-actions.ts:221 -#: apps/web/src/components/titles/use-title-actions.ts:299 +#: apps/web/src/components/titles/use-title-actions.ts:200 +#: apps/web/src/components/titles/use-title-actions.ts:278 msgid "{count} earlier {count, plural, one {episode} other {episodes}} unwatched" -msgstr "" +msgstr "{count} {count, plural, one {episódio anterior não assistido} other {episódios anteriores não assistidos}}" #. placeholder {0}: activeJobs.length -#: apps/web/src/components/settings/system-health-section.tsx:385 +#: apps/web/src/components/settings/system-health-section.tsx:351 msgid "{healthyCount} of {0} jobs healthy" -msgstr "" +msgstr "{healthyCount} de {0} tarefas saudáveis" -#: apps/native/src/components/settings/integration-card.tsx:96 -#: apps/web/src/components/settings/integration-card.tsx:106 +#: apps/native/src/components/settings/integration-card.tsx:84 +#: apps/web/src/components/settings/integration-card.tsx:89 msgid "{label} connected" -msgstr "" +msgstr "{label} conectado" -#: apps/native/src/components/settings/integration-card.tsx:106 -#: apps/web/src/components/settings/integration-card.tsx:122 +#: apps/native/src/components/settings/integration-card.tsx:94 +#: apps/web/src/components/settings/integration-card.tsx:105 msgid "{label} disconnected" -msgstr "" +msgstr "{label} desconectado" -#: apps/native/src/components/settings/integration-card.tsx:116 -#: apps/web/src/components/settings/integration-card.tsx:138 +#: apps/native/src/components/settings/integration-card.tsx:104 +#: apps/web/src/components/settings/integration-card.tsx:119 msgid "{label} URL regenerated" -msgstr "" +msgstr "URL de {label} regenerada" -#: apps/web/src/components/title-card.tsx:166 +#: apps/web/src/components/title-card.tsx:152 msgid "{watched}/{total} episodes" -msgstr "" +msgstr "{watched}/{total} episódios" #. placeholder {0}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:122 +#: apps/native/src/components/titles/season-accordion.tsx:113 msgid "{watchedCount} of {0} episodes watched" -msgstr "" +msgstr "{watchedCount} de {0} episódios assistidos" #. placeholder {0}: episodes.length #. placeholder {1}: episodes.length -#: apps/native/src/components/titles/season-accordion.tsx:131 +#: apps/native/src/components/titles/season-accordion.tsx:122 msgid "{watchedCount}/{0} {1, plural, one {episode} other {episodes}}" -msgstr "" +msgstr "{watchedCount}/{0} {1, plural, one {episódio} other {episódios}}" #: apps/native/src/components/titles/season-accordion.tsx:130 #~ msgid "{watchedCount}/{0} episodes" #~ msgstr "{watchedCount}/{0} episodes" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:231 -#: apps/web/src/components/settings/account-section.tsx:175 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:224 +#: apps/web/src/components/settings/account-section.tsx:166 msgid "Account" -msgstr "" +msgstr "Conta" -#: apps/web/src/components/settings/system-health-section.tsx:412 +#: apps/web/src/components/settings/system-health-section.tsx:378 msgid "Actions" -msgstr "" +msgstr "Ações" -#: apps/web/src/components/people/person-hero.tsx:71 +#: apps/web/src/components/people/person-hero.tsx:69 msgid "Actor" -msgstr "" +msgstr "Ator" -#: apps/native/src/components/settings/integration-configs.ts:72 +#: apps/native/src/components/settings/integration-configs.ts:71 msgid "Add a \"Generic Destination\" and paste the URL above" -msgstr "" +msgstr "Adicione um \"Generic Destination\" e cole a URL acima" -#: apps/web/src/components/settings/integration-configs.tsx:131 +#: apps/web/src/components/settings/integration-configs.tsx:121 msgid "Add a <0>Generic Destination and paste the URL above" -msgstr "" +msgstr "Adicione um <0>Generic Destination e cole a URL acima" -#: apps/native/src/components/settings/integration-configs.ts:92 -#: apps/web/src/components/settings/integration-configs.tsx:198 +#: apps/native/src/components/settings/integration-configs.ts:89 +#: apps/web/src/components/settings/integration-configs.tsx:178 msgid "Add a new webhook and paste the URL above" -msgstr "" +msgstr "Adicione um novo webhook e cole a URL acima" -#: apps/web/src/components/explore/hero-banner.tsx:99 +#: apps/web/src/components/explore/hero-banner.tsx:87 msgid "Add to Library" -msgstr "" +msgstr "Adicionar à Biblioteca" -#: apps/native/src/components/titles/status-action-button.tsx:72 +#: apps/native/src/components/titles/status-action-button.tsx:73 msgid "Add to watchlist" -msgstr "" +msgstr "Adicionar à lista de desejos" -#: apps/native/src/components/explore/hero-banner.tsx:157 -#: apps/native/src/components/ui/poster-card.tsx:238 -#: apps/web/src/components/title-card.tsx:146 +#: apps/native/src/components/explore/hero-banner.tsx:132 +#: apps/native/src/components/ui/poster-card.tsx:212 +#: apps/web/src/components/title-card.tsx:133 msgid "Add to Watchlist" -msgstr "" +msgstr "Adicionar à Lista de Desejos" -#: apps/native/src/lib/title-actions.ts:23 +#: apps/native/src/lib/title-actions.ts:24 msgid "Added \"{titleName}\" to watchlist" -msgstr "" +msgstr "Adicionado \"{titleName}\" à lista de desejos" #: apps/native/src/hooks/use-title-actions.ts:44 -#: apps/native/src/hooks/use-title-actions.ts:60 -#: apps/native/src/lib/title-actions.ts:24 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:59 +#: apps/native/src/lib/title-actions.ts:25 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Added to watchlist" -msgstr "" +msgstr "Adicionado à lista de desejos" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:353 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:454 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:499 -#: apps/web/src/components/nav-bar.tsx:235 -#: apps/web/src/components/settings/account-section.tsx:335 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:342 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/components/nav-bar.tsx:223 +#: apps/web/src/components/settings/account-section.tsx:309 msgid "Admin" -msgstr "" +msgstr "Administrador" -#: apps/web/src/routes/_app/settings.tsx:124 +#: apps/web/src/routes/_app/settings.tsx:118 msgid "Admin only" -msgstr "" +msgstr "Apenas administradores" -#: apps/native/src/app/person/[id].tsx:308 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "age {age}" -msgstr "" +msgstr "idade {age}" -#: apps/native/src/components/explore/filterable-title-row.tsx:119 -#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/native/src/components/explore/filterable-title-row.tsx:117 +#: apps/web/src/components/people/filmography-grid.tsx:56 msgid "All" -msgstr "" +msgstr "Todos" -#: apps/web/src/components/settings/registration-section.tsx:61 +#: apps/web/src/components/settings/registration-section.tsx:54 msgid "Allow new users to create accounts" -msgstr "" +msgstr "Permitir que novos usuários criem contas" -#: apps/web/src/components/auth-form.tsx:278 +#: apps/web/src/components/auth-form.tsx:259 msgid "Already have an account?" -msgstr "" +msgstr "Já tem uma conta?" -#: apps/native/src/app/(auth)/register.tsx:239 +#: apps/native/src/app/(auth)/register.tsx:211 msgid "Already have an account? Sign in" -msgstr "" +msgstr "Já tem uma conta? Entrar" -#: apps/web/src/routes/__root.tsx:146 +#: apps/web/src/routes/__root.tsx:143 msgid "An unexpected error occurred while loading this page. You can try again or head back to the dashboard." -msgstr "" +msgstr "Ocorreu um erro inesperado ao carregar esta página. Você pode tentar novamente ou voltar ao painel." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:427 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:407 msgid "Anonymous usage reporting" -msgstr "" +msgstr "Relatório de uso anônimo" -#: apps/web/src/routes/_app/settings.tsx:102 +#: apps/web/src/routes/_app/settings.tsx:99 msgid "App Settings" -msgstr "" +msgstr "Configurações do App" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:378 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:362 msgid "Application" -msgstr "" +msgstr "Aplicativo" -#: apps/native/src/components/settings/integration-card.tsx:151 +#: apps/native/src/components/settings/integration-card.tsx:139 msgid "Are you sure you want to disconnect {label}? The current URL will stop working." -msgstr "" +msgstr "Tem certeza que deseja desconectar {label}? A URL atual deixará de funcionar." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/components/header-avatar.tsx:70 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/components/header-avatar.tsx:62 msgid "Are you sure you want to sign out?" -msgstr "" +msgstr "Tem certeza que deseja sair?" -#: apps/web/src/components/settings/imports-section.tsx:450 +#: apps/web/src/components/settings/imports-section.tsx:429 msgid "Authorization succeeded but failed to fetch your library. Please try again." -msgstr "" +msgstr "Autorização concluída, mas falha ao buscar sua biblioteca. Tente novamente." -#: apps/web/src/components/settings/imports-section.tsx:440 +#: apps/web/src/components/settings/imports-section.tsx:419 msgid "Authorization was denied. Please try again." -msgstr "" +msgstr "Autorização negada. Tente novamente." #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:580 msgid "Authorize Sofa to read your {0} library. No password shared." -msgstr "" +msgstr "Autorize o Sofa a ler sua biblioteca do {0}. Nenhuma senha é compartilhada." -#: apps/web/src/components/settings/update-check-section.tsx:60 +#: apps/web/src/components/settings/update-check-section.tsx:51 msgid "Automatic update checks" -msgstr "" +msgstr "Verificações automáticas de atualização" -#: apps/web/src/components/settings/backup-schedule-section.tsx:279 +#: apps/web/src/components/settings/backup-schedule-section.tsx:248 msgid "Automatically back up your database on a schedule" -msgstr "" +msgstr "Faça backup automático do banco de dados com agendamento" -#: apps/web/src/components/settings/system-health-section.tsx:332 +#: apps/web/src/components/settings/system-health-section.tsx:305 msgid "Availability" -msgstr "" +msgstr "Disponibilidade" -#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:94 msgid "Back to Login" -msgstr "" +msgstr "Voltar ao Login" -#: apps/web/src/components/settings/system-health-section.tsx:382 +#: apps/web/src/components/settings/system-health-section.tsx:348 msgid "Background jobs" -msgstr "" +msgstr "Tarefas em segundo plano" -#: apps/web/src/components/settings/system-health-section.tsx:336 +#: apps/web/src/components/settings/system-health-section.tsx:309 msgid "Backup" msgstr "" -#: apps/web/src/components/settings/backup-section.tsx:69 +#: apps/web/src/components/settings/backup-section.tsx:62 msgid "Backup created" -msgstr "" +msgstr "Backup criado" -#: apps/web/src/components/settings/backup-section.tsx:94 +#: apps/web/src/components/settings/backup-section.tsx:85 msgid "Backup deleted" -msgstr "" +msgstr "Backup excluído" -#: apps/web/src/components/settings/backup-schedule-section.tsx:234 +#: apps/web/src/components/settings/backup-schedule-section.tsx:216 msgid "Backup schedule" -msgstr "" +msgstr "Agendamento de backup" -#: apps/web/src/components/settings/system-health-section.tsx:641 -#: apps/web/src/routes/_app/settings.tsx:166 +#: apps/web/src/components/settings/system-health-section.tsx:589 +#: apps/web/src/routes/_app/settings.tsx:154 msgid "Backups" msgstr "" @@ -316,811 +316,811 @@ msgstr "" #~ msgid "backups." #~ msgstr "backups." -#: apps/web/src/components/titles/title-availability.tsx:139 +#: apps/web/src/components/titles/title-availability.tsx:115 msgid "Buy" -msgstr "" +msgstr "Comprar" -#: apps/web/src/components/settings/danger-section.tsx:89 +#: apps/web/src/components/settings/danger-section.tsx:85 msgid "Cache management" -msgstr "" +msgstr "Gerenciamento de cache" -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:66 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:74 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:67 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:75 msgid "Can't reach server" -msgstr "" +msgstr "Não foi possível alcançar o servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:207 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:332 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:388 -#: apps/native/src/components/header-avatar.tsx:71 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:63 -#: apps/native/src/components/search/recently-viewed-list.tsx:37 -#: apps/native/src/components/settings/integration-card.tsx:138 -#: apps/native/src/components/settings/integration-card.tsx:153 -#: apps/web/src/components/settings/account-section.tsx:505 -#: apps/web/src/components/settings/backup-restore-section.tsx:107 -#: apps/web/src/components/settings/backup-section.tsx:270 -#: apps/web/src/components/settings/danger-section.tsx:129 -#: apps/web/src/components/settings/danger-section.tsx:171 -#: apps/web/src/components/settings/danger-section.tsx:214 -#: apps/web/src/components/settings/imports-section.tsx:645 -#: apps/web/src/components/settings/imports-section.tsx:710 -#: apps/web/src/components/settings/imports-section.tsx:837 -#: apps/web/src/components/titles/title-seasons.tsx:133 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:202 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:321 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:369 +#: apps/native/src/components/header-avatar.tsx:63 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:58 +#: apps/native/src/components/search/recently-viewed-list.tsx:32 +#: apps/native/src/components/settings/integration-card.tsx:126 +#: apps/native/src/components/settings/integration-card.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/web/src/components/settings/backup-restore-section.tsx:101 +#: apps/web/src/components/settings/backup-section.tsx:240 +#: apps/web/src/components/settings/danger-section.tsx:121 +#: apps/web/src/components/settings/danger-section.tsx:154 +#: apps/web/src/components/settings/danger-section.tsx:187 +#: apps/web/src/components/settings/imports-section.tsx:611 +#: apps/web/src/components/settings/imports-section.tsx:674 +#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/titles/title-seasons.tsx:127 msgid "Cancel" -msgstr "" +msgstr "Cancelar" -#: apps/web/src/components/settings/account-section.tsx:307 +#: apps/web/src/components/settings/account-section.tsx:281 msgid "Cancel editing" -msgstr "" +msgstr "Cancelar edição" -#: apps/native/src/app/title/[id].tsx:559 +#: apps/native/src/app/title/[id].tsx:489 #: apps/web/src/components/titles/cast-carousel.tsx:21 msgid "Cast" -msgstr "" +msgstr "Elenco" -#: apps/web/src/components/titles/use-title-actions.ts:223 -#: apps/web/src/components/titles/use-title-actions.ts:301 +#: apps/web/src/components/titles/use-title-actions.ts:202 +#: apps/web/src/components/titles/use-title-actions.ts:280 msgid "Catch up" -msgstr "" +msgstr "Colocar em dia" #. placeholder {0}: episodeIds.length #. placeholder {1}: episodeIds.length -#: apps/web/src/components/titles/use-title-actions.ts:82 +#: apps/web/src/components/titles/use-title-actions.ts:72 msgid "Caught up — marked {0} {1, plural, one {episode} other {episodes}} as watched" -msgstr "" +msgstr "Em dia — {0} {1, plural, one {episódio marcado como assistido} other {episódios marcados como assistidos}}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 -#: apps/web/src/components/settings/account-section.tsx:427 -#: apps/web/src/components/settings/account-section.tsx:432 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 +#: apps/web/src/components/settings/account-section.tsx:401 +#: apps/web/src/components/settings/account-section.tsx:406 msgid "Change password" -msgstr "" +msgstr "Alterar senha" -#: apps/native/src/app/change-password.tsx:98 +#: apps/native/src/app/change-password.tsx:94 msgid "Change Password" -msgstr "" +msgstr "Alterar Senha" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:267 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:258 msgid "Change Photo" -msgstr "" +msgstr "Alterar Foto" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:385 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "Change Server" -msgstr "" +msgstr "Alterar Servidor" -#: apps/web/src/components/setup/refresh-button.tsx:30 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Check configuration" -msgstr "" +msgstr "Verificar configuração" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:483 msgid "Check for updates" -msgstr "" +msgstr "Verificar atualizações" -#: apps/web/src/components/settings/system-health-section.tsx:215 +#: apps/web/src/components/settings/system-health-section.tsx:196 msgid "Checked <0/>" -msgstr "" +msgstr "Verificado <0/>" -#: apps/web/src/components/setup/refresh-button.tsx:28 +#: apps/web/src/components/setup/refresh-button.tsx:24 msgid "Checking…" -msgstr "" +msgstr "Verificando…" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:587 +#: apps/web/src/components/settings/imports-section.tsx:556 msgid "Choose how to import your {0} data." -msgstr "" +msgstr "Escolha como importar seus dados do {0}." #: apps/web/src/components/settings/language-section.tsx:29 #~ msgid "Choose your preferred display language" #~ msgstr "Choose your preferred display language" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:65 -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:115 -#: apps/native/src/components/search/recently-viewed-list.tsx:39 -#: apps/native/src/components/search/recently-viewed-list.tsx:95 -msgid "Clear" -msgstr "" - -#: apps/web/src/components/command-palette.tsx:322 -msgid "Clear all" -msgstr "" - #: apps/native/src/components/search/recently-viewed-list.ios.tsx:60 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:104 #: apps/native/src/components/search/recently-viewed-list.tsx:34 +#: apps/native/src/components/search/recently-viewed-list.tsx:86 +msgid "Clear" +msgstr "Limpar" + +#: apps/web/src/components/command-palette.tsx:302 +msgid "Clear all" +msgstr "Limpar tudo" + +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "Clear Recently Viewed?" -msgstr "" +msgstr "Limpar Vistos Recentemente?" -#: apps/native/src/components/settings/integration-configs.ts:109 -#: apps/native/src/components/settings/integration-configs.ts:127 +#: apps/native/src/components/settings/integration-configs.ts:104 +#: apps/native/src/components/settings/integration-configs.ts:122 msgid "Click \"+\" and select \"Custom Lists\"" -msgstr "" +msgstr "Clique em \"+\" e selecione \"Custom Lists\"" -#: apps/native/src/components/settings/integration-configs.ts:55 +#: apps/native/src/components/settings/integration-configs.ts:56 msgid "Click \"Add Webhook\" and paste the URL above" -msgstr "" +msgstr "Clique em \"Add Webhook\" e cole a URL acima" -#: apps/web/src/components/settings/integration-configs.tsx:237 -#: apps/web/src/components/settings/integration-configs.tsx:277 +#: apps/web/src/components/settings/integration-configs.tsx:212 +#: apps/web/src/components/settings/integration-configs.tsx:249 msgid "Click <0>+ and select <1>Custom Lists" -msgstr "" +msgstr "Clique em <0>+ e selecione <1>Custom Lists" -#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:73 msgid "Click <0>Add Webhook and paste the URL above" -msgstr "" +msgstr "Clique em <0>Add Webhook e cole a URL acima" #: apps/native/src/components/navigation/modal-stack-header.tsx:14 msgid "Close" -msgstr "" +msgstr "Fechar" -#: apps/native/src/app/(tabs)/(home)/index.tsx:63 -#: apps/native/src/components/titles/status-action-button.tsx:44 -#: apps/web/src/components/dashboard/stats-display.tsx:238 -#: apps/web/src/components/title-card.tsx:77 -#: apps/web/src/components/titles/status-button.tsx:30 +#: apps/native/src/app/(tabs)/(home)/index.tsx:54 +#: apps/native/src/components/titles/status-action-button.tsx:45 +#: apps/web/src/components/dashboard/stats-display.tsx:219 +#: apps/web/src/components/title-card.tsx:74 +#: apps/web/src/components/titles/status-button.tsx:25 msgid "Completed" -msgstr "" +msgstr "Concluído" -#: apps/native/src/app/change-password.tsx:173 -#: apps/web/src/components/settings/account-section.tsx:477 +#: apps/native/src/app/change-password.tsx:167 +#: apps/web/src/components/settings/account-section.tsx:451 msgid "Confirm new password" -msgstr "" +msgstr "Confirmar nova senha" -#: apps/native/src/app/(auth)/server-url.tsx:207 -#: apps/web/src/components/settings/imports-section.tsx:499 +#: apps/native/src/app/(auth)/server-url.tsx:182 +#: apps/web/src/components/settings/imports-section.tsx:478 msgid "Connect" -msgstr "" +msgstr "Conectar" #. placeholder {0}: config.label -#: apps/web/src/components/settings/integration-card.tsx:203 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connect {0}" -msgstr "" +msgstr "Conectar {0}" -#: apps/native/src/components/settings/integration-card.tsx:238 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connect {label}" -msgstr "" +msgstr "Conectar {label}" -#: apps/web/src/components/settings/imports-section.tsx:665 +#: apps/web/src/components/settings/imports-section.tsx:631 msgid "Connect to {source}" -msgstr "" +msgstr "Conectar a {source}" -#: apps/web/src/routes/setup.tsx:101 +#: apps/web/src/routes/setup.tsx:98 msgid "Connect to TMDB" -msgstr "" +msgstr "Conectar ao TMDB" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:608 +#: apps/web/src/components/settings/imports-section.tsx:577 msgid "Connect with {0}" -msgstr "" +msgstr "Conectar com {0}" -#: apps/native/src/app/(auth)/server-url.tsx:197 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:474 -#: apps/web/src/components/settings/system-health-section.tsx:256 +#: apps/native/src/app/(auth)/server-url.tsx:176 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:449 +#: apps/web/src/components/settings/system-health-section.tsx:236 msgid "Connected" -msgstr "" +msgstr "Conectado" -#: apps/web/src/components/settings/imports-section.tsx:722 +#: apps/web/src/components/settings/imports-section.tsx:686 msgid "Connected to {source}" -msgstr "" +msgstr "Conectado a {source}" -#: apps/native/src/app/(auth)/login.tsx:240 +#: apps/native/src/app/(auth)/login.tsx:211 msgid "Connected to <0>{serverHost}. Tap to change." -msgstr "" +msgstr "Conectado a <0>{serverHost}. Toque para alterar." -#: apps/native/src/app/(auth)/server-url.tsx:186 +#: apps/native/src/app/(auth)/server-url.tsx:169 msgid "Connecting to server..." -msgstr "" +msgstr "Conectando ao servidor..." -#: apps/web/src/components/settings/integration-card.tsx:201 +#: apps/web/src/components/settings/integration-card.tsx:175 msgid "Connecting..." -msgstr "" +msgstr "Conectando..." -#: apps/native/src/components/settings/integration-card.tsx:237 +#: apps/native/src/components/settings/integration-card.tsx:207 msgid "Connecting…" -msgstr "" +msgstr "Conectando…" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:390 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:371 msgid "Continue" -msgstr "" +msgstr "Continuar" -#: apps/native/src/app/(tabs)/(home)/index.tsx:113 -#: apps/web/src/components/dashboard/continue-watching-section.tsx:25 +#: apps/native/src/app/(tabs)/(home)/index.tsx:99 +#: apps/web/src/components/dashboard/continue-watching-section.tsx:22 msgid "Continue Watching" -msgstr "" +msgstr "Continuar Assistindo" -#: apps/web/src/components/setup/copy-button.tsx:25 +#: apps/web/src/components/setup/copy-button.tsx:26 msgid "Copied" -msgstr "" +msgstr "Copiado" -#: apps/web/src/components/setup/copy-button.tsx:30 +#: apps/web/src/components/setup/copy-button.tsx:31 msgid "Copy" -msgstr "" +msgstr "Copiar" -#: apps/web/src/components/settings/integration-card.tsx:246 +#: apps/web/src/components/settings/integration-card.tsx:208 msgid "Copy URL" -msgstr "" +msgstr "Copiar URL" -#: apps/native/src/components/settings/integrations-section.tsx:29 +#: apps/native/src/components/settings/integrations-section.tsx:30 msgid "Could not load integrations" -msgstr "" +msgstr "Não foi possível carregar as integrações" -#: apps/native/src/app/person/[id].tsx:216 +#: apps/native/src/app/person/[id].tsx:185 msgid "Could not load person details" -msgstr "" +msgstr "Não foi possível carregar os detalhes da pessoa" -#: apps/web/src/components/auth-form.tsx:247 +#: apps/web/src/components/auth-form.tsx:231 msgid "Create account" -msgstr "" +msgstr "Criar conta" -#: apps/native/src/app/(auth)/register.tsx:115 -#: apps/native/src/app/(auth)/register.tsx:225 +#: apps/native/src/app/(auth)/register.tsx:104 +#: apps/native/src/app/(auth)/register.tsx:200 msgid "Create Account" -msgstr "" +msgstr "Criar Conta" -#: apps/native/src/app/(auth)/login.tsx:216 +#: apps/native/src/app/(auth)/login.tsx:194 msgid "Create an account" -msgstr "" +msgstr "Criar uma conta" #: apps/web/src/components/auth-form.tsx:110 msgid "Create your account" -msgstr "" +msgstr "Crie sua conta" -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "Creating…" -msgstr "" +msgstr "Criando…" -#: apps/native/src/app/change-password.tsx:120 -#: apps/web/src/components/settings/account-section.tsx:449 +#: apps/native/src/app/change-password.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:423 msgid "Current password" -msgstr "" +msgstr "Senha atual" -#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/components/settings/account-section.tsx:365 msgid "Current password is required" -msgstr "" +msgstr "A senha atual é obrigatória" -#: apps/web/src/routes/_app/settings.tsx:195 +#: apps/web/src/routes/_app/settings.tsx:180 msgid "Danger Zone" -msgstr "" +msgstr "Zona de Perigo" -#: apps/web/src/routes/__root.tsx:167 -#: apps/web/src/routes/_app/people.$id.tsx:78 -#: apps/web/src/routes/_app/titles.$id.tsx:126 -#: apps/web/src/routes/_app/titles.$id.tsx:172 +#: apps/web/src/routes/__root.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:76 +#: apps/web/src/routes/_app/titles.$id.tsx:119 +#: apps/web/src/routes/_app/titles.$id.tsx:165 msgid "Dashboard" -msgstr "" +msgstr "Painel" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:463 -#: apps/web/src/components/settings/system-health-section.tsx:229 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:439 +#: apps/web/src/components/settings/system-health-section.tsx:210 msgid "Database" -msgstr "" +msgstr "Banco de Dados" -#: apps/web/src/components/settings/backup-section.tsx:126 +#: apps/web/src/components/settings/backup-section.tsx:112 msgid "Database backups" -msgstr "" +msgstr "Backups do banco de dados" -#: apps/web/src/components/settings/backup-restore-section.tsx:31 +#: apps/web/src/components/settings/backup-restore-section.tsx:32 msgid "Database restored. Reloading..." -msgstr "" +msgstr "Banco de dados restaurado. Recarregando..." -#: apps/web/src/components/settings/backup-schedule-section.tsx:342 +#: apps/web/src/components/settings/backup-schedule-section.tsx:309 msgid "Day:" -msgstr "" +msgstr "Dia:" +#: apps/web/src/components/settings/backup-section.tsx:222 #: apps/web/src/components/settings/backup-section.tsx:250 -#: apps/web/src/components/settings/backup-section.tsx:280 msgid "Delete" -msgstr "" +msgstr "Excluir" -#: apps/web/src/components/settings/backup-section.tsx:235 +#: apps/web/src/components/settings/backup-section.tsx:211 msgid "Delete backup" -msgstr "" +msgstr "Excluir backup" -#: apps/web/src/components/settings/backup-section.tsx:256 +#: apps/web/src/components/settings/backup-section.tsx:228 msgid "Delete backup?" -msgstr "" +msgstr "Excluir backup?" #. placeholder {0}: data.deletedFiles #: apps/web/src/components/settings/danger-section.tsx:54 msgid "Deleted {0, plural, one {# file} other {# files}}, freed {freed}" -msgstr "" +msgstr "{0, plural, one {# arquivo excluído} other {# arquivos excluídos}}, {freed} liberado" -#: apps/web/src/components/settings/imports-section.tsx:412 -#: apps/web/src/components/settings/imports-section.tsx:444 +#: apps/web/src/components/settings/imports-section.tsx:394 +#: apps/web/src/components/settings/imports-section.tsx:423 msgid "Device code expired. Please try again." -msgstr "" +msgstr "Código do dispositivo expirou. Tente novamente." -#: apps/native/src/app/person/[id].tsx:307 -#: apps/web/src/components/people/person-hero.tsx:91 +#: apps/native/src/app/person/[id].tsx:267 +#: apps/web/src/components/people/person-hero.tsx:89 msgid "died at {age}" -msgstr "" +msgstr "faleceu aos {age}" -#: apps/web/src/components/people/person-hero.tsx:73 +#: apps/web/src/components/people/person-hero.tsx:71 msgid "Director" -msgstr "" +msgstr "Diretor" -#: apps/web/src/components/settings/system-health-section.tsx:431 -#: apps/web/src/components/settings/system-health-section.tsx:632 +#: apps/web/src/components/settings/system-health-section.tsx:394 +#: apps/web/src/components/settings/system-health-section.tsx:580 msgid "Disabled" -msgstr "" +msgstr "Desativado" -#: apps/native/src/components/settings/integration-card.tsx:155 -#: apps/native/src/components/settings/integration-card.tsx:298 -#: apps/web/src/components/settings/integration-card.tsx:274 +#: apps/native/src/components/settings/integration-card.tsx:143 +#: apps/native/src/components/settings/integration-card.tsx:257 +#: apps/web/src/components/settings/integration-card.tsx:234 msgid "Disconnect" -msgstr "" +msgstr "Desconectar" -#: apps/native/src/components/settings/integration-card.tsx:150 +#: apps/native/src/components/settings/integration-card.tsx:138 msgid "Disconnect {label}" -msgstr "" +msgstr "Desconectar {label}" -#: apps/native/src/app/(auth)/server-url.tsx:242 +#: apps/native/src/app/(auth)/server-url.tsx:217 msgid "Don't have a server?" -msgstr "" +msgstr "Não tem um servidor?" -#: apps/web/src/components/auth-form.tsx:288 +#: apps/web/src/components/auth-form.tsx:269 msgid "Don't have an account?" -msgstr "" +msgstr "Não tem uma conta?" -#: apps/web/src/components/settings/imports-section.tsx:962 +#: apps/web/src/components/settings/imports-section.tsx:918 msgid "Done" -msgstr "" +msgstr "Concluído" #: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to clear this filter" -msgstr "" +msgstr "Toque duas vezes para remover este filtro" -#: apps/native/src/components/explore/genre-chip.tsx:28 +#: apps/native/src/components/explore/genre-chip.tsx:27 msgid "Double tap to filter by {label}" -msgstr "" +msgstr "Toque duas vezes para filtrar por {label}" -#: apps/web/src/components/settings/backup-section.tsx:71 -#: apps/web/src/components/settings/backup-section.tsx:223 +#: apps/web/src/components/settings/backup-section.tsx:64 +#: apps/web/src/components/settings/backup-section.tsx:199 msgid "Download" -msgstr "" +msgstr "Baixar" -#: apps/web/src/components/settings/backup-section.tsx:214 +#: apps/web/src/components/settings/backup-section.tsx:190 msgid "Download backup" -msgstr "" +msgstr "Baixar backup" -#: apps/web/src/components/people/person-hero.tsx:79 +#: apps/web/src/components/people/person-hero.tsx:77 msgid "Editor" msgstr "" -#: apps/native/src/app/(auth)/login.tsx:133 -#: apps/native/src/app/(auth)/register.tsx:154 -#: apps/web/src/components/auth-form.tsx:201 +#: apps/native/src/app/(auth)/login.tsx:123 +#: apps/native/src/app/(auth)/register.tsx:139 +#: apps/web/src/components/auth-form.tsx:190 msgid "Email" -msgstr "" +msgstr "E-mail" -#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:72 msgid "Enable the \"Playback Stop\" notification type" -msgstr "" +msgstr "Ative o tipo de notificação \"Playback Stop\"" -#: apps/native/src/components/settings/integration-configs.ts:93 +#: apps/native/src/components/settings/integration-configs.ts:90 msgid "Enable the \"Playback\" event category" -msgstr "" +msgstr "Ative a categoria de evento \"Playback\"" -#: apps/web/src/components/settings/integration-configs.tsx:140 +#: apps/web/src/components/settings/integration-configs.tsx:127 msgid "Enable the <0>Playback Stop notification type" -msgstr "" +msgstr "Ative o tipo de notificação <0>Playback Stop" -#: apps/web/src/components/settings/integration-configs.tsx:201 +#: apps/web/src/components/settings/integration-configs.tsx:181 msgid "Enable the <0>Playback event category" -msgstr "" +msgstr "Ative a categoria de evento <0>Playback" -#: apps/web/src/components/settings/imports-section.tsx:668 +#: apps/web/src/components/settings/imports-section.tsx:634 msgid "Enter the code below on {source}'s website to authorize Sofa." -msgstr "" +msgstr "Insira o código abaixo no site do {source} para autorizar o Sofa." -#: apps/web/src/components/settings/account-section.tsx:435 +#: apps/web/src/components/settings/account-section.tsx:409 msgid "Enter your current password and choose a new one." -msgstr "" +msgstr "Insira sua senha atual e escolha uma nova." -#: apps/native/src/app/(auth)/server-url.tsx:151 +#: apps/native/src/app/(auth)/server-url.tsx:140 msgid "Enter your Sofa server URL to get started" -msgstr "" +msgstr "Insira a URL do seu servidor Sofa para começar" -#: apps/web/src/components/settings/system-health-section.tsx:289 +#: apps/web/src/components/settings/system-health-section.tsx:267 msgid "Environment" -msgstr "" +msgstr "Ambiente" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:29 -#: apps/native/src/components/titles/episode-row.tsx:55 +#: apps/native/src/components/titles/episode-row.tsx:27 +#: apps/native/src/components/titles/episode-row.tsx:48 msgid "Episode {0}" -msgstr "" +msgstr "Episódio {0}" #. placeholder {0}: episode.episodeNumber -#: apps/native/src/components/titles/episode-row.tsx:36 +#: apps/native/src/components/titles/episode-row.tsx:34 msgid "Episode {0}, {episodeLabel}" -msgstr "" +msgstr "Episódio {0}, {episodeLabel}" -#: apps/native/src/hooks/use-title-actions.ts:123 -#: apps/native/src/lib/title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:111 +#: apps/native/src/lib/title-actions.ts:108 msgid "Episode unwatched" -msgstr "" +msgstr "Episódio não assistido" -#: apps/native/src/hooks/use-title-actions.ts:109 -#: apps/native/src/lib/title-actions.ts:101 +#: apps/native/src/hooks/use-title-actions.ts:101 +#: apps/native/src/lib/title-actions.ts:98 msgid "Episode watched" -msgstr "" +msgstr "Episódio assistido" -#: apps/web/src/components/settings/imports-section.tsx:780 -#: apps/web/src/components/titles/title-seasons.tsx:102 +#: apps/web/src/components/settings/imports-section.tsx:742 +#: apps/web/src/components/titles/title-seasons.tsx:96 msgid "Episodes" -msgstr "" +msgstr "Episódios" #: apps/web/src/components/dashboard/stats-display.tsx:162 #~ msgid "Episodes {periodSelect}" #~ msgstr "Episodes {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:164 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Episodes {select}" -msgstr "" +msgstr "Episódios {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:61 +#: apps/native/src/app/(tabs)/(home)/index.tsx:52 msgid "Episodes this week" -msgstr "" +msgstr "Episódios desta semana" -#: apps/native/src/app/change-password.tsx:71 -#: apps/native/src/app/change-password.tsx:81 +#: apps/native/src/app/change-password.tsx:67 +#: apps/native/src/app/change-password.tsx:77 msgid "Error" -msgstr "" +msgstr "Erro" #. placeholder {0}: result.errors.length -#: apps/web/src/components/settings/imports-section.tsx:929 +#: apps/web/src/components/settings/imports-section.tsx:887 msgid "Errors ({0})" -msgstr "" +msgstr "Erros ({0})" -#: apps/native/src/app/(tabs)/(home)/index.tsx:143 -#: apps/web/src/components/nav-bar.tsx:126 -#: apps/web/src/components/nav-bar.tsx:291 +#: apps/native/src/app/(tabs)/(home)/index.tsx:127 +#: apps/web/src/components/nav-bar.tsx:116 +#: apps/web/src/components/nav-bar.tsx:277 msgid "Explore" -msgstr "" +msgstr "Explorar" -#: apps/web/src/routes/_app/people.$id.tsx:70 -#: apps/web/src/routes/_app/titles.$id.tsx:164 +#: apps/web/src/routes/_app/people.$id.tsx:68 +#: apps/web/src/routes/_app/titles.$id.tsx:157 msgid "Explore titles" -msgstr "" +msgstr "Explorar títulos" -#: apps/web/src/components/settings/imports-section.tsx:923 +#: apps/web/src/components/settings/imports-section.tsx:881 msgid "Failed" -msgstr "" +msgstr "Falhou" -#: apps/native/src/hooks/use-title-actions.ts:49 -#: apps/native/src/lib/title-actions.ts:28 +#: apps/native/src/hooks/use-title-actions.ts:48 +#: apps/native/src/lib/title-actions.ts:29 msgid "Failed to add to watchlist" -msgstr "" +msgstr "Falha ao adicionar à lista de desejos" -#: apps/web/src/components/titles/use-title-actions.ts:90 +#: apps/web/src/components/titles/use-title-actions.ts:80 msgid "Failed to catch up" -msgstr "" +msgstr "Falha ao colocar em dia" -#: apps/native/src/app/change-password.tsx:71 -#: apps/web/src/components/settings/account-section.tsx:411 +#: apps/native/src/app/change-password.tsx:67 +#: apps/web/src/components/settings/account-section.tsx:385 msgid "Failed to change password" -msgstr "" +msgstr "Falha ao alterar senha" -#: apps/web/src/components/settings/imports-section.tsx:398 +#: apps/web/src/components/settings/imports-section.tsx:380 msgid "Failed to connect" -msgstr "" +msgstr "Falha ao conectar" -#: apps/native/src/components/settings/integration-card.tsx:99 -#: apps/web/src/components/settings/integration-card.tsx:108 +#: apps/native/src/components/settings/integration-card.tsx:87 +#: apps/web/src/components/settings/integration-card.tsx:91 msgid "Failed to connect {label}" -msgstr "" +msgstr "Falha ao conectar {label}" -#: apps/native/src/app/(auth)/register.tsx:67 +#: apps/native/src/app/(auth)/register.tsx:57 msgid "Failed to create account" -msgstr "" +msgstr "Falha ao criar conta" -#: apps/web/src/components/settings/backup-section.tsx:81 +#: apps/web/src/components/settings/backup-section.tsx:74 msgid "Failed to create backup" -msgstr "" +msgstr "Falha ao criar backup" -#: apps/web/src/components/settings/backup-section.tsx:97 +#: apps/web/src/components/settings/backup-section.tsx:88 msgid "Failed to delete backup" -msgstr "" +msgstr "Falha ao excluir backup" -#: apps/native/src/components/settings/integration-card.tsx:109 -#: apps/web/src/components/settings/integration-card.tsx:125 +#: apps/native/src/components/settings/integration-card.tsx:97 +#: apps/web/src/components/settings/integration-card.tsx:108 msgid "Failed to disconnect {label}" -msgstr "" +msgstr "Falha ao desconectar {label}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:215 +#: apps/web/src/components/settings/backup-schedule-section.tsx:200 msgid "Failed to load backup schedule settings." -msgstr "" +msgstr "Falha ao carregar as configurações do agendamento de backup." -#: apps/web/src/routes/_app/titles.$id.tsx:115 +#: apps/web/src/routes/_app/titles.$id.tsx:110 msgid "Failed to load title" -msgstr "" +msgstr "Falha ao carregar título" -#: apps/web/src/components/titles/use-title-actions.ts:367 +#: apps/web/src/components/titles/use-title-actions.ts:344 msgid "Failed to mark all episodes as watched" -msgstr "" +msgstr "Falha ao marcar todos os episódios como assistidos" -#: apps/native/src/hooks/use-title-actions.ts:84 -#: apps/native/src/lib/title-actions.ts:68 -#: apps/web/src/components/titles/use-title-actions.ts:150 +#: apps/native/src/hooks/use-title-actions.ts:79 +#: apps/native/src/lib/title-actions.ts:67 +#: apps/web/src/components/titles/use-title-actions.ts:137 msgid "Failed to mark as watched" -msgstr "" +msgstr "Falha ao marcar como assistido" -#: apps/native/src/hooks/use-title-actions.ts:113 -#: apps/native/src/lib/title-actions.ts:104 -#: apps/web/src/components/titles/use-title-actions.ts:237 +#: apps/native/src/hooks/use-title-actions.ts:104 +#: apps/native/src/lib/title-actions.ts:101 +#: apps/web/src/components/titles/use-title-actions.ts:216 msgid "Failed to mark episode" -msgstr "" +msgstr "Falha ao marcar episódio" -#: apps/native/src/hooks/use-title-actions.ts:141 -#: apps/native/src/lib/title-actions.ts:128 -#: apps/web/src/components/titles/use-title-actions.ts:315 +#: apps/native/src/hooks/use-title-actions.ts:124 +#: apps/native/src/lib/title-actions.ts:123 +#: apps/web/src/components/titles/use-title-actions.ts:294 msgid "Failed to mark some episodes" -msgstr "" +msgstr "Falha ao marcar alguns episódios" -#: apps/web/src/components/settings/imports-section.tsx:225 +#: apps/web/src/components/settings/imports-section.tsx:218 msgid "Failed to parse file" -msgstr "" +msgstr "Falha ao analisar arquivo" -#: apps/web/src/components/settings/imports-section.tsx:240 +#: apps/web/src/components/settings/imports-section.tsx:233 msgid "Failed to parse import data" -msgstr "" +msgstr "Falha ao analisar dados de importação" -#: apps/web/src/components/settings/danger-section.tsx:75 +#: apps/web/src/components/settings/danger-section.tsx:72 msgid "Failed to purge caches" -msgstr "" +msgstr "Falha ao limpar caches" #: apps/web/src/components/settings/danger-section.tsx:58 msgid "Failed to purge image cache" -msgstr "" +msgstr "Falha ao limpar cache de imagens" #: apps/web/src/components/settings/danger-section.tsx:45 msgid "Failed to purge metadata cache" -msgstr "" +msgstr "Falha ao limpar cache de metadados" -#: apps/native/src/components/settings/integration-card.tsx:119 -#: apps/web/src/components/settings/integration-card.tsx:140 +#: apps/native/src/components/settings/integration-card.tsx:107 +#: apps/web/src/components/settings/integration-card.tsx:121 msgid "Failed to regenerate {label} URL" -msgstr "" +msgstr "Falha ao regenerar URL de {label}" -#: apps/native/src/lib/title-actions.ts:78 +#: apps/native/src/lib/title-actions.ts:77 msgid "Failed to remove from library" -msgstr "" +msgstr "Falha ao remover da biblioteca" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:134 -#: apps/web/src/components/settings/account-section.tsx:134 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:131 +#: apps/web/src/components/settings/account-section.tsx:126 msgid "Failed to remove profile picture" -msgstr "" +msgstr "Falha ao remover foto de perfil" -#: apps/native/src/app/(auth)/login.tsx:56 +#: apps/native/src/app/(auth)/login.tsx:53 msgid "Failed to sign in" -msgstr "" +msgstr "Falha ao entrar" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:388 +#: apps/web/src/components/settings/imports-section.tsx:370 msgid "Failed to start {0} connection" -msgstr "" +msgstr "Falha ao iniciar conexão com {0}" -#: apps/web/src/components/settings/system-health-section.tsx:348 +#: apps/web/src/components/settings/system-health-section.tsx:320 msgid "Failed to trigger job" -msgstr "" +msgstr "Falha ao acionar tarefa" -#: apps/native/src/hooks/use-title-actions.ts:129 -#: apps/native/src/lib/title-actions.ts:114 -#: apps/web/src/components/titles/use-title-actions.ts:181 +#: apps/native/src/hooks/use-title-actions.ts:114 +#: apps/native/src/lib/title-actions.ts:111 +#: apps/web/src/components/titles/use-title-actions.ts:163 msgid "Failed to unmark episode" -msgstr "" +msgstr "Falha ao desmarcar episódio" -#: apps/web/src/components/titles/use-title-actions.ts:343 +#: apps/web/src/components/titles/use-title-actions.ts:320 msgid "Failed to unmark some episodes" -msgstr "" +msgstr "Falha ao desmarcar alguns episódios" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:112 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:109 msgid "Failed to update name" -msgstr "" +msgstr "Falha ao atualizar nome" -#: apps/native/src/hooks/use-title-actions.ts:101 -#: apps/native/src/lib/title-actions.ts:94 -#: apps/web/src/components/titles/use-title-actions.ts:136 +#: apps/native/src/hooks/use-title-actions.ts:94 +#: apps/native/src/lib/title-actions.ts:91 +#: apps/web/src/components/titles/use-title-actions.ts:123 msgid "Failed to update rating" -msgstr "" +msgstr "Falha ao atualizar avaliação" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:172 -#: apps/web/src/components/settings/registration-section.tsx:44 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:169 +#: apps/web/src/components/settings/registration-section.tsx:37 msgid "Failed to update registration setting" -msgstr "" +msgstr "Falha ao atualizar configuração de registro" -#: apps/web/src/components/settings/backup-schedule-section.tsx:154 +#: apps/web/src/components/settings/backup-schedule-section.tsx:145 msgid "Failed to update retention setting" -msgstr "" +msgstr "Falha ao atualizar configuração de retenção" -#: apps/web/src/components/settings/backup-schedule-section.tsx:156 +#: apps/web/src/components/settings/backup-schedule-section.tsx:147 msgid "Failed to update schedule" -msgstr "" +msgstr "Falha ao atualizar agendamento" -#: apps/web/src/components/settings/backup-schedule-section.tsx:152 +#: apps/web/src/components/settings/backup-schedule-section.tsx:143 msgid "Failed to update scheduled backup setting" -msgstr "" +msgstr "Falha ao atualizar configuração de backup agendado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:191 -#: apps/web/src/components/settings/update-check-section.tsx:43 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:186 +#: apps/web/src/components/settings/update-check-section.tsx:37 msgid "Failed to update setting" -msgstr "" +msgstr "Falha ao atualizar configuração" -#: apps/native/src/hooks/use-title-actions.ts:72 -#: apps/native/src/lib/title-actions.ts:40 -#: apps/native/src/lib/title-actions.ts:54 -#: apps/web/src/components/titles/use-title-actions.ts:114 +#: apps/native/src/hooks/use-title-actions.ts:69 +#: apps/native/src/lib/title-actions.ts:41 +#: apps/native/src/lib/title-actions.ts:55 +#: apps/web/src/components/titles/use-title-actions.ts:101 msgid "Failed to update status" -msgstr "" +msgstr "Falha ao atualizar status" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:123 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:120 msgid "Failed to upload avatar" -msgstr "" +msgstr "Falha ao enviar avatar" -#: apps/web/src/components/settings/imports-section.tsx:725 +#: apps/web/src/components/settings/imports-section.tsx:689 msgid "Fetching your library data from {source}..." -msgstr "" +msgstr "Buscando seus dados da biblioteca em {source}..." -#: apps/native/src/app/person/[id].tsx:340 -#: apps/web/src/components/people/filmography-grid.tsx:69 +#: apps/native/src/app/person/[id].tsx:296 +#: apps/web/src/components/people/filmography-grid.tsx:67 msgid "Filmography" -msgstr "" +msgstr "Filmografia" -#: apps/web/src/components/settings/imports-section.tsx:915 +#: apps/web/src/components/settings/imports-section.tsx:873 msgid "Finished importing from {source}." -msgstr "" +msgstr "Importação de {source} concluída." -#: apps/web/src/components/titles/title-availability.tsx:140 +#: apps/web/src/components/titles/title-availability.tsx:116 msgid "Free" -msgstr "" +msgstr "Grátis" -#: apps/web/src/components/settings/danger-section.tsx:92 +#: apps/web/src/components/settings/danger-section.tsx:88 msgid "Free up disk space by clearing cached metadata and images" -msgstr "" +msgstr "Libere espaço em disco limpando metadados e imagens em cache" -#: apps/web/src/components/settings/backup-schedule-section.tsx:309 +#: apps/web/src/components/settings/backup-schedule-section.tsx:276 msgid "Frequency" -msgstr "" +msgstr "Frequência" -#: apps/web/src/components/settings/backup-schedule-section.tsx:101 +#: apps/web/src/components/settings/backup-schedule-section.tsx:98 msgid "Friday" -msgstr "" +msgstr "Sexta-feira" -#: apps/web/src/components/landing-page.tsx:156 +#: apps/web/src/components/landing-page.tsx:157 msgid "Get Started" -msgstr "" +msgstr "Começar" -#: apps/native/src/app/person/[id].tsx:220 -#: apps/native/src/app/person/[id].tsx:247 -#: apps/native/src/app/title/[id].tsx:255 +#: apps/native/src/app/person/[id].tsx:189 +#: apps/native/src/app/person/[id].tsx:213 +#: apps/native/src/app/title/[id].tsx:239 msgid "Go back" -msgstr "" +msgstr "Voltar" -#: apps/native/src/app/+not-found.tsx:37 +#: apps/native/src/app/+not-found.tsx:35 msgid "Go Home" -msgstr "" +msgstr "Ir para Início" -#: apps/web/src/components/settings/integration-configs.tsx:123 +#: apps/web/src/components/settings/integration-configs.tsx:115 msgid "Go to <0>Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Acesse <0>Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:368 +#: apps/web/src/components/command-palette.tsx:345 msgid "Go to Dashboard" -msgstr "" +msgstr "Ir para o Painel" -#: apps/native/src/components/settings/integration-configs.ts:71 +#: apps/native/src/components/settings/integration-configs.ts:70 msgid "Go to Dashboard > Plugins > Webhook" -msgstr "" +msgstr "Acesse Dashboard > Plugins > Webhook" -#: apps/web/src/components/command-palette.tsx:379 +#: apps/web/src/components/command-palette.tsx:356 msgid "Go to Explore" -msgstr "" +msgstr "Ir para Explorar" -#: apps/web/src/components/settings/system-health-section.tsx:212 +#: apps/web/src/components/settings/system-health-section.tsx:193 msgid "Health status" -msgstr "" +msgstr "Status de saúde" -#: apps/web/src/components/dashboard/welcome-header.tsx:14 +#: apps/web/src/components/dashboard/welcome-header.tsx:10 msgid "Here's what's happening with your library" -msgstr "" +msgstr "Veja o que está acontecendo com sua biblioteca" -#: apps/web/src/components/nav-bar.tsx:125 -#: apps/web/src/components/nav-bar.tsx:290 +#: apps/web/src/components/nav-bar.tsx:115 +#: apps/web/src/components/nav-bar.tsx:276 msgid "Home" -msgstr "" +msgstr "Início" -#: apps/web/src/components/settings/system-health-section.tsx:335 -#: apps/web/src/components/settings/system-health-section.tsx:610 +#: apps/web/src/components/settings/system-health-section.tsx:308 +#: apps/web/src/components/settings/system-health-section.tsx:558 msgid "Image cache" -msgstr "" +msgstr "Cache de imagens" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:479 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:453 msgid "Image Cache" -msgstr "" +msgstr "Cache de Imagens" -#: apps/web/src/components/settings/system-health-section.tsx:598 +#: apps/web/src/components/settings/system-health-section.tsx:546 msgid "Image cache and backup disk usage" -msgstr "" +msgstr "Uso de disco de cache de imagens e backups" -#: apps/web/src/components/settings/imports-section.tsx:179 +#: apps/web/src/components/settings/imports-section.tsx:175 msgid "Import" -msgstr "" +msgstr "Importar" -#: apps/web/src/components/settings/imports-section.tsx:840 +#: apps/web/src/components/settings/imports-section.tsx:801 msgid "Import {totalItems} items" -msgstr "" +msgstr "Importar {totalItems} itens" -#: apps/web/src/components/settings/imports-section.tsx:912 +#: apps/web/src/components/settings/imports-section.tsx:870 msgid "Import complete" -msgstr "" +msgstr "Importação concluída" -#: apps/web/src/components/settings/imports-section.tsx:340 +#: apps/web/src/components/settings/imports-section.tsx:324 msgid "Import failed" -msgstr "" +msgstr "Importação falhou" #. placeholder {0}: config.label -#: apps/web/src/components/settings/imports-section.tsx:584 +#: apps/web/src/components/settings/imports-section.tsx:553 msgid "Import from {0}" -msgstr "" +msgstr "Importar de {0}" -#: apps/web/src/components/settings/imports-section.tsx:770 +#: apps/web/src/components/settings/imports-section.tsx:732 msgid "Import from {source}" -msgstr "" +msgstr "Importar de {source}" -#: apps/web/src/components/settings/imports-section.tsx:298 -#: apps/web/src/components/settings/imports-section.tsx:329 +#: apps/web/src/components/settings/imports-section.tsx:285 +#: apps/web/src/components/settings/imports-section.tsx:314 msgid "Import is still running in the background. Check back later." -msgstr "" +msgstr "A importação ainda está em andamento em segundo plano. Verifique mais tarde." -#: apps/web/src/components/settings/imports-section.tsx:798 +#: apps/web/src/components/settings/imports-section.tsx:760 msgid "Import options" -msgstr "" +msgstr "Opções de importação" -#: apps/web/src/components/settings/imports-section.tsx:921 +#: apps/web/src/components/settings/imports-section.tsx:879 msgid "Imported" -msgstr "" +msgstr "Importado" #. placeholder {0}: event.job.importedCount #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:292 +#: apps/web/src/components/settings/imports-section.tsx:281 msgid "Imported {0} items from {1}" -msgstr "" +msgstr "Importados {0} itens de {1}" -#: apps/web/src/components/settings/imports-section.tsx:863 +#: apps/web/src/components/settings/imports-section.tsx:822 msgid "Importing from {source}" -msgstr "" +msgstr "Importando de {source}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:62 +#: apps/native/src/app/(tabs)/(home)/index.tsx:53 msgid "In library" -msgstr "" +msgstr "Na biblioteca" -#: apps/web/src/components/dashboard/stats-display.tsx:230 +#: apps/web/src/components/dashboard/stats-display.tsx:211 msgid "In Library" -msgstr "" +msgstr "Na Biblioteca" -#: apps/native/src/app/(tabs)/(home)/index.tsx:133 +#: apps/native/src/app/(tabs)/(home)/index.tsx:117 #: apps/web/src/components/dashboard/library-section.tsx:35 msgid "In Your Library" -msgstr "" +msgstr "Na Sua Biblioteca" -#: apps/web/src/components/settings/integration-configs.tsx:105 +#: apps/web/src/components/settings/integration-configs.tsx:97 msgid "Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog" -msgstr "" +msgstr "Instale o <0>plugin Webhook<1/> do catálogo de plugins do Jellyfin" -#: apps/native/src/components/settings/integration-configs.ts:70 +#: apps/native/src/components/settings/integration-configs.ts:69 msgid "Install the Webhook plugin from Jellyfin's plugin catalog" -msgstr "" +msgstr "Instale o plugin Webhook do catálogo de plugins do Jellyfin" -#: apps/native/src/components/settings/integrations-section.tsx:20 -#: apps/web/src/components/settings/integrations-section.tsx:41 +#: apps/native/src/components/settings/integrations-section.tsx:21 +#: apps/web/src/components/settings/integrations-section.tsx:33 msgid "Integrations" -msgstr "" +msgstr "Integrações" -#: apps/web/src/components/settings/system-health-section.tsx:266 +#: apps/web/src/components/settings/system-health-section.tsx:246 msgid "Invalid token" -msgstr "" +msgstr "Token inválido" -#: apps/web/src/components/settings/system-health-section.tsx:399 +#: apps/web/src/components/settings/system-health-section.tsx:365 msgid "Job" -msgstr "" +msgstr "Tarefa" #: apps/web/src/components/settings/backup-schedule-section.tsx:243 #~ msgid "Keeping" @@ -1128,1306 +1128,1306 @@ msgstr "" #. placeholder {0}: (value: string | null) => value === "0" ? t`unlimited` : value ? t`last ${value}` : null #. placeholder {1}: [3, 5, 7, 14, 30, 0].map((n) => ( {n === 0 ? t`unlimited` : t`last ${n}`} )) -#: apps/web/src/components/settings/backup-schedule-section.tsx:243 +#: apps/web/src/components/settings/backup-schedule-section.tsx:222 msgid "Keeping <0><1><2>{0}<3>{1} backups." -msgstr "" +msgstr "Mantendo <0><1><2>{0}<3>{1} backups." -#: apps/web/src/components/command-palette.tsx:389 -#: apps/web/src/components/command-palette.tsx:404 +#: apps/web/src/components/command-palette.tsx:366 +#: apps/web/src/components/command-palette.tsx:381 msgid "Keyboard Shortcuts" -msgstr "" +msgstr "Atalhos de Teclado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:403 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:411 -#: apps/web/src/components/settings/language-section.tsx:42 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:383 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:391 +#: apps/web/src/components/settings/language-section.tsx:34 msgid "Language" -msgstr "" +msgstr "Idioma" -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "last {n}" -msgstr "" +msgstr "últimos {n}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:258 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 msgid "last {value}" -msgstr "" +msgstr "últimos {value}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:331 +#: apps/web/src/components/settings/integration-card.tsx:289 msgid "Last event {0}" -msgstr "" +msgstr "Último evento {0}" -#: apps/native/src/components/settings/integration-configs.ts:29 +#: apps/native/src/components/settings/integration-configs.ts:30 msgid "Last event {timeAgo}" -msgstr "" +msgstr "Último evento {timeAgo}" #. placeholder {0}: formatRelativeTime(lastEventAt) -#: apps/web/src/components/settings/integration-card.tsx:338 +#: apps/web/src/components/settings/integration-card.tsx:296 msgid "Last polled {0}" -msgstr "" +msgstr "Última verificação {0}" -#: apps/native/src/components/settings/integration-configs.ts:37 +#: apps/native/src/components/settings/integration-configs.ts:38 msgid "Last polled {timeAgo}" -msgstr "" +msgstr "Última verificação {timeAgo}" -#: apps/web/src/components/settings/system-health-section.tsx:405 +#: apps/web/src/components/settings/system-health-section.tsx:371 msgid "Last run" -msgstr "" +msgstr "Última execução" -#: apps/web/src/components/settings/system-health-section.tsx:441 +#: apps/web/src/components/settings/system-health-section.tsx:402 msgid "Last run failed" -msgstr "" +msgstr "Última execução falhou" -#: apps/web/src/components/settings/system-health-section.tsx:437 +#: apps/web/src/components/settings/system-health-section.tsx:400 msgid "Last run succeeded" -msgstr "" +msgstr "Última execução bem-sucedida" -#: apps/web/src/components/settings/system-health-section.tsx:331 +#: apps/web/src/components/settings/system-health-section.tsx:304 msgid "Library refresh" -msgstr "" +msgstr "Atualização da biblioteca" -#: apps/web/src/components/auth-form.tsx:245 +#: apps/web/src/components/auth-form.tsx:229 msgid "Loading…" -msgstr "" +msgstr "Carregando…" -#: apps/web/src/components/settings/imports-section.tsx:334 +#: apps/web/src/components/settings/imports-section.tsx:318 msgid "Lost connection to import. Check status in settings." -msgstr "" +msgstr "Conexão de importação perdida. Verifique o status nas configurações." -#: apps/web/src/components/settings/settings-shell.tsx:40 +#: apps/web/src/components/settings/settings-shell.tsx:34 msgid "Manage your account and preferences" -msgstr "" +msgstr "Gerencie sua conta e preferências" -#: apps/web/src/components/settings/backup-section.tsx:182 +#: apps/web/src/components/settings/backup-section.tsx:158 msgid "Manual backup" -msgstr "" +msgstr "Backup manual" -#: apps/web/src/components/titles/title-seasons.tsx:122 +#: apps/web/src/components/titles/title-seasons.tsx:116 msgid "Mark all episodes as watched?" -msgstr "" +msgstr "Marcar todos os episódios como assistidos?" -#: apps/native/src/components/titles/season-accordion.tsx:164 -#: apps/web/src/components/titles/title-seasons.tsx:115 -#: apps/web/src/components/titles/title-seasons.tsx:141 +#: apps/native/src/components/titles/season-accordion.tsx:152 +#: apps/web/src/components/titles/title-seasons.tsx:109 +#: apps/web/src/components/titles/title-seasons.tsx:135 msgid "Mark All Watched" -msgstr "" +msgstr "Marcar Todos como Assistidos" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:122 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:103 msgid "Mark as Completed" -msgstr "" +msgstr "Marcar como Concluído" -#: apps/native/src/components/ui/poster-card.tsx:252 +#: apps/native/src/components/ui/poster-card.tsx:226 msgid "Mark as Watched" -msgstr "" +msgstr "Marcar como Assistido" -#: apps/native/src/components/ui/poster-card.tsx:245 +#: apps/native/src/components/ui/poster-card.tsx:219 msgid "Mark as Watching" -msgstr "" +msgstr "Marcar como Assistindo" -#: apps/native/src/app/title/[id].tsx:449 -#: apps/web/src/components/titles/title-actions.tsx:29 +#: apps/native/src/app/title/[id].tsx:400 +#: apps/web/src/components/titles/title-actions.tsx:27 msgid "Mark Watched" -msgstr "" +msgstr "Marcar como Assistido" -#: apps/native/src/lib/title-actions.ts:49 +#: apps/native/src/lib/title-actions.ts:50 msgid "Marked \"{titleName}\" as completed" -msgstr "" +msgstr "Marcado \"{titleName}\" como concluído" #: apps/native/src/lib/title-actions.ts:63 -#: apps/web/src/components/titles/use-title-actions.ts:147 +#: apps/web/src/components/titles/use-title-actions.ts:134 msgid "Marked \"{titleName}\" as watched" -msgstr "" +msgstr "Marcado \"{titleName}\" como assistido" -#: apps/web/src/components/titles/use-title-actions.ts:360 +#: apps/web/src/components/titles/use-title-actions.ts:337 msgid "Marked all episodes as watched" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:62 -#: apps/native/src/lib/title-actions.ts:50 -msgid "Marked as completed" -msgstr "" - -#: apps/native/src/hooks/use-title-actions.ts:80 -#: apps/native/src/lib/title-actions.ts:64 -msgid "Marked as watched" -msgstr "" +msgstr "Todos os episódios marcados como assistidos" #: apps/native/src/hooks/use-title-actions.ts:61 -#: apps/native/src/lib/title-actions.ts:37 +#: apps/native/src/lib/title-actions.ts:51 +msgid "Marked as completed" +msgstr "Marcado como concluído" + +#: apps/native/src/hooks/use-title-actions.ts:76 +#: apps/native/src/lib/title-actions.ts:63 +msgid "Marked as watched" +msgstr "Marcado como assistido" + +#: apps/native/src/hooks/use-title-actions.ts:60 +#: apps/native/src/lib/title-actions.ts:38 msgid "Marked as watching" -msgstr "" +msgstr "Marcado como assistindo" -#: apps/web/src/components/settings/account-section.tsx:340 +#: apps/web/src/components/settings/account-section.tsx:314 msgid "Member since {memberSince}" -msgstr "" +msgstr "Membro desde {memberSince}" -#: apps/web/src/components/settings/backup-schedule-section.tsx:97 +#: apps/web/src/components/settings/backup-schedule-section.tsx:94 msgid "Monday" -msgstr "" +msgstr "Segunda-feira" -#: apps/native/src/app/title/[id].tsx:585 +#: apps/native/src/app/title/[id].tsx:508 msgid "More Like This" -msgstr "" +msgstr "Mais Como Este" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:541 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:506 msgid "More Settings" -msgstr "" +msgstr "Mais Configurações" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:35 -#: apps/native/src/components/search/search-result-row.tsx:96 -#: apps/web/src/components/explore/hero-banner.tsx:59 -#: apps/web/src/components/titles/title-hero.tsx:143 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:54 +#: apps/web/src/components/titles/title-hero.tsx:141 msgid "Movie" -msgstr "" +msgstr "Filme" -#: apps/web/src/components/people/filmography-grid.tsx:59 -#: apps/web/src/components/settings/imports-section.tsx:779 +#: apps/web/src/components/people/filmography-grid.tsx:57 +#: apps/web/src/components/settings/imports-section.tsx:741 msgid "Movies" -msgstr "" +msgstr "Filmes" #: apps/web/src/components/dashboard/stats-display.tsx:161 #~ msgid "Movies {periodSelect}" #~ msgstr "Movies {periodSelect}" -#: apps/web/src/components/dashboard/stats-display.tsx:162 +#: apps/web/src/components/dashboard/stats-display.tsx:150 msgid "Movies {select}" -msgstr "" +msgstr "Filmes {select}" -#: apps/native/src/app/(tabs)/(home)/index.tsx:60 +#: apps/native/src/app/(tabs)/(home)/index.tsx:51 msgid "Movies this month" -msgstr "" +msgstr "Filmes este mês" -#: apps/native/src/app/(auth)/register.tsx:124 -#: apps/web/src/components/auth-form.tsx:181 +#: apps/native/src/app/(auth)/register.tsx:111 +#: apps/web/src/components/auth-form.tsx:173 msgid "Name" -msgstr "" +msgstr "Nome" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:107 -#: apps/web/src/components/settings/account-section.tsx:80 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:104 +#: apps/web/src/components/settings/account-section.tsx:72 msgid "Name updated" -msgstr "" +msgstr "Nome atualizado" -#: apps/web/src/components/settings/integration-card.tsx:301 +#: apps/web/src/components/settings/integration-card.tsx:259 msgid "Need more help?" -msgstr "" +msgstr "Precisa de mais ajuda?" -#: apps/web/src/components/settings/system-health-section.tsx:501 +#: apps/web/src/components/settings/system-health-section.tsx:456 msgid "Never" -msgstr "" +msgstr "Nunca" -#: apps/web/src/components/settings/system-health-section.tsx:435 +#: apps/web/src/components/settings/system-health-section.tsx:398 msgid "Never run" -msgstr "" +msgstr "Nunca executado" -#: apps/native/src/app/(auth)/register.tsx:98 +#: apps/native/src/app/(auth)/register.tsx:88 msgid "New account creation is currently disabled." -msgstr "" +msgstr "A criação de novas contas está desativada no momento." -#: apps/web/src/routes/_auth/register.tsx:35 +#: apps/web/src/routes/_auth/register.tsx:36 msgid "New accounts are not being accepted right now. Contact the admin if you need access." -msgstr "" +msgstr "Novas contas não estão sendo aceitas agora. Entre em contato com o administrador se precisar de acesso." -#: apps/web/src/components/settings/backup-section.tsx:137 +#: apps/web/src/components/settings/backup-section.tsx:119 msgid "New backup" -msgstr "" +msgstr "Novo backup" -#: apps/native/src/app/change-password.tsx:145 -#: apps/web/src/components/settings/account-section.tsx:463 +#: apps/native/src/app/change-password.tsx:141 +#: apps/web/src/components/settings/account-section.tsx:437 msgid "New password" -msgstr "" +msgstr "Nova senha" -#: apps/web/src/components/settings/account-section.tsx:395 +#: apps/web/src/components/settings/account-section.tsx:369 msgid "New password must be at least 8 characters" -msgstr "" +msgstr "A nova senha deve ter pelo menos 8 caracteres" -#: apps/web/src/components/people/filmography-grid.tsx:86 -#: apps/web/src/components/people/filmography-grid.tsx:99 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:87 msgid "Newest" -msgstr "" +msgstr "Mais recente" -#: apps/web/src/components/settings/backup-schedule-section.tsx:131 +#: apps/web/src/components/settings/backup-schedule-section.tsx:124 msgid "Next backup {distance}" -msgstr "" +msgstr "Próximo backup {distance}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:46 +#: apps/native/src/components/titles/continue-watching-banner.tsx:42 msgid "Next Episode" -msgstr "" +msgstr "Próximo Episódio" -#: apps/web/src/components/settings/system-health-section.tsx:408 +#: apps/web/src/components/settings/system-health-section.tsx:374 msgid "Next run" -msgstr "" +msgstr "Próxima execução" -#: apps/web/src/components/settings/backup-section.tsx:110 -#: apps/web/src/components/settings/system-health-section.tsx:662 +#: apps/web/src/components/settings/backup-section.tsx:99 +#: apps/web/src/components/settings/system-health-section.tsx:607 msgid "No backups yet" -msgstr "" +msgstr "Nenhum backup ainda" -#: apps/native/src/components/ui/offline-banner.ios.tsx:74 -#: apps/native/src/components/ui/offline-banner.ios.tsx:81 -#: apps/native/src/components/ui/offline-banner.tsx:59 +#: apps/native/src/components/ui/offline-banner.ios.tsx:75 +#: apps/native/src/components/ui/offline-banner.ios.tsx:82 +#: apps/native/src/components/ui/offline-banner.tsx:60 msgid "No internet connection" -msgstr "" +msgstr "Sem conexão com a internet" -#: apps/native/src/app/(tabs)/(search)/index.tsx:113 +#: apps/native/src/app/(tabs)/(search)/index.tsx:100 msgid "No results for \"{debouncedQuery}\"" -msgstr "" +msgstr "Nenhum resultado para \"{debouncedQuery}\"" -#: apps/web/src/components/command-palette.tsx:217 +#: apps/web/src/components/command-palette.tsx:212 msgid "No results found." -msgstr "" +msgstr "Nenhum resultado encontrado." -#: apps/native/src/components/explore/filterable-title-row.tsx:139 -#: apps/web/src/components/explore/filterable-title-row.tsx:151 +#: apps/native/src/components/explore/filterable-title-row.tsx:135 +#: apps/web/src/components/explore/filterable-title-row.tsx:144 msgid "No titles found for this genre." -msgstr "" +msgstr "Nenhum título encontrado para este gênero." -#: apps/native/src/components/settings/integration-card.tsx:194 -#: apps/web/src/components/settings/integration-card.tsx:176 -#: apps/web/src/components/settings/system-health-section.tsx:249 +#: apps/native/src/components/settings/integration-card.tsx:174 +#: apps/web/src/components/settings/integration-card.tsx:153 +#: apps/web/src/components/settings/system-health-section.tsx:229 msgid "Not configured" -msgstr "" +msgstr "Não configurado" -#: apps/native/src/app/+not-found.tsx:17 +#: apps/native/src/app/+not-found.tsx:18 msgid "Not Found" -msgstr "" +msgstr "Não Encontrado" -#: apps/web/src/components/title-card.tsx:67 +#: apps/web/src/components/title-card.tsx:64 msgid "On Watchlist" -msgstr "" +msgstr "Na Lista de Desejos" -#: apps/web/src/components/settings/imports-section.tsx:693 +#: apps/web/src/components/settings/imports-section.tsx:657 msgid "Open {source} to enter code" -msgstr "" +msgstr "Abrir {source} para inserir o código" -#: apps/web/src/components/settings/integration-card.tsx:308 +#: apps/web/src/components/settings/integration-card.tsx:266 msgid "Open docs" -msgstr "" +msgstr "Abrir documentação" -#: apps/web/src/components/settings/integration-configs.tsx:190 +#: apps/web/src/components/settings/integration-configs.tsx:172 msgid "Open Emby, go to <0>Settings > Webhooks" -msgstr "" +msgstr "Abra o Emby, vá para <0>Settings > Webhooks" -#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/native/src/components/settings/integration-configs.ts:88 msgid "Open Emby, go to Settings > Webhooks" -msgstr "" +msgstr "Abra o Emby, vá para Settings > Webhooks" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:548 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:513 msgid "Open in browser…" -msgstr "" +msgstr "Abrir no navegador…" -#: apps/web/src/components/settings/integration-configs.tsx:62 +#: apps/web/src/components/settings/integration-configs.tsx:56 msgid "Open Plex, go to <0>Settings > Webhooks<1/>" -msgstr "" +msgstr "Abra o Plex, vá para <0>Settings > Webhooks<1/>" -#: apps/native/src/components/settings/integration-configs.ts:54 +#: apps/native/src/components/settings/integration-configs.ts:55 msgid "Open Plex, go to Settings > Webhooks" -msgstr "" +msgstr "Abra o Plex, vá para Settings > Webhooks" -#: apps/web/src/components/settings/integration-configs.tsx:269 +#: apps/web/src/components/settings/integration-configs.tsx:243 msgid "Open Radarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Abra o Radarr, vá para <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/native/src/components/settings/integration-configs.ts:121 msgid "Open Radarr, go to Settings > Import Lists" -msgstr "" +msgstr "Abra o Radarr, vá para Settings > Import Lists" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:502 -#: apps/web/src/components/settings/registration-section.tsx:58 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:472 +#: apps/web/src/components/settings/registration-section.tsx:51 msgid "Open registration" -msgstr "" +msgstr "Registro aberto" -#: apps/web/src/components/settings/integration-configs.tsx:229 +#: apps/web/src/components/settings/integration-configs.tsx:206 msgid "Open Sonarr, go to <0>Settings > Import Lists" -msgstr "" +msgstr "Abra o Sonarr, vá para <0>Settings > Import Lists" -#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/native/src/components/settings/integration-configs.ts:103 msgid "Open Sonarr, go to Settings > Import Lists" -msgstr "" +msgstr "Abra o Sonarr, vá para Settings > Import Lists" -#: apps/web/src/components/auth-form.tsx:158 +#: apps/web/src/components/auth-form.tsx:153 msgid "or" -msgstr "" +msgstr "ou" -#: apps/native/src/app/(auth)/login.tsx:118 +#: apps/native/src/app/(auth)/login.tsx:108 msgid "OR" -msgstr "" +msgstr "OU" -#: apps/native/src/app/+not-found.tsx:27 +#: apps/native/src/app/+not-found.tsx:25 msgid "Page Not Found" -msgstr "" +msgstr "Página Não Encontrada" -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Parsing..." -msgstr "" +msgstr "Analisando..." -#: apps/native/src/app/(auth)/login.tsx:167 -#: apps/native/src/app/(auth)/register.tsx:187 -#: apps/web/src/components/auth-form.tsx:221 +#: apps/native/src/app/(auth)/login.tsx:153 +#: apps/native/src/app/(auth)/register.tsx:170 +#: apps/web/src/components/auth-form.tsx:207 msgid "Password" -msgstr "" +msgstr "Senha" -#: apps/native/src/app/change-password.tsx:76 -#: apps/web/src/components/settings/account-section.tsx:414 +#: apps/native/src/app/change-password.tsx:72 +#: apps/web/src/components/settings/account-section.tsx:388 msgid "Password updated" -msgstr "" +msgstr "Senha atualizada" -#: apps/web/src/components/settings/account-section.tsx:399 +#: apps/web/src/components/settings/account-section.tsx:373 msgid "Passwords do not match" -msgstr "" +msgstr "As senhas não coincidem" -#: apps/native/src/components/settings/integration-configs.ts:128 -#: apps/web/src/components/settings/integration-configs.tsx:284 +#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/web/src/components/settings/integration-configs.tsx:255 msgid "Paste the Radarr URL above into the List URL field" -msgstr "" +msgstr "Cole a URL do Radarr acima no campo URL da Lista" -#: apps/native/src/components/settings/integration-configs.ts:110 -#: apps/web/src/components/settings/integration-configs.tsx:244 +#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/web/src/components/settings/integration-configs.tsx:218 msgid "Paste the Sonarr URL above into the List URL field" -msgstr "" +msgstr "Cole a URL do Sonarr acima no campo URL da Lista" -#: apps/web/src/components/settings/update-check-section.tsx:63 +#: apps/web/src/components/settings/update-check-section.tsx:54 msgid "Periodically check GitHub for new Sofa releases" -msgstr "" +msgstr "Verificar periodicamente o GitHub por novas versões do Sofa" -#: apps/native/src/components/search/search-result-row.tsx:38 -#: apps/native/src/components/search/search-result-row.tsx:99 +#: apps/native/src/components/search/search-result-row.tsx:34 +#: apps/native/src/components/search/search-result-row.tsx:81 msgid "Person" -msgstr "" +msgstr "Pessoa" -#: apps/native/src/app/person/[id].tsx:243 -#: apps/web/src/routes/_app/people.$id.tsx:52 +#: apps/native/src/app/person/[id].tsx:209 +#: apps/web/src/routes/_app/people.$id.tsx:50 msgid "Person not found" -msgstr "" +msgstr "Pessoa não encontrada" -#: apps/web/src/components/titles/trailer-dialog.tsx:24 +#: apps/web/src/components/titles/trailer-dialog.tsx:25 msgid "Play trailer" -msgstr "" +msgstr "Reproduzir trailer" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:107 -#: apps/web/src/components/explore/explore-client.tsx:126 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:89 +#: apps/web/src/components/explore/explore-client.tsx:120 msgid "Popular Movies" -msgstr "" +msgstr "Filmes Populares" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:120 -#: apps/web/src/components/explore/explore-client.tsx:136 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:102 +#: apps/web/src/components/explore/explore-client.tsx:130 msgid "Popular TV Shows" -msgstr "" +msgstr "Séries Populares" -#: apps/web/src/components/settings/backup-section.tsx:181 +#: apps/web/src/components/settings/backup-section.tsx:157 msgid "Pre-restore backup" -msgstr "" +msgstr "Backup pré-restauração" -#: apps/web/src/components/people/person-hero.tsx:77 +#: apps/web/src/components/people/person-hero.tsx:75 msgid "Producer" -msgstr "" +msgstr "Produtor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:130 -#: apps/web/src/components/settings/account-section.tsx:130 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:127 +#: apps/web/src/components/settings/account-section.tsx:122 msgid "Profile picture removed" -msgstr "" +msgstr "Foto de perfil removida" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:119 -#: apps/web/src/components/settings/account-section.tsx:108 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:116 +#: apps/web/src/components/settings/account-section.tsx:100 msgid "Profile picture updated" -msgstr "" +msgstr "Foto de perfil atualizada" -#: apps/web/src/components/settings/danger-section.tsx:196 -#: apps/web/src/components/settings/danger-section.tsx:220 +#: apps/web/src/components/settings/danger-section.tsx:171 +#: apps/web/src/components/settings/danger-section.tsx:190 msgid "Purge all" -msgstr "" +msgstr "Limpar tudo" -#: apps/web/src/components/settings/danger-section.tsx:202 +#: apps/web/src/components/settings/danger-section.tsx:176 msgid "Purge all caches?" -msgstr "" +msgstr "Limpar todos os caches?" -#: apps/web/src/components/settings/danger-section.tsx:160 +#: apps/web/src/components/settings/danger-section.tsx:143 msgid "Purge image cache?" -msgstr "" +msgstr "Limpar cache de imagens?" -#: apps/web/src/components/settings/danger-section.tsx:154 -#: apps/web/src/components/settings/danger-section.tsx:177 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:157 msgid "Purge images" -msgstr "" +msgstr "Limpar imagens" -#: apps/web/src/components/settings/danger-section.tsx:111 -#: apps/web/src/components/settings/danger-section.tsx:135 +#: apps/web/src/components/settings/danger-section.tsx:103 +#: apps/web/src/components/settings/danger-section.tsx:124 msgid "Purge metadata" -msgstr "" +msgstr "Limpar metadados" -#: apps/web/src/components/settings/danger-section.tsx:117 +#: apps/web/src/components/settings/danger-section.tsx:109 msgid "Purge metadata cache?" -msgstr "" +msgstr "Limpar cache de metadados?" #. placeholder {0}: data.deletedTitles #. placeholder {1}: data.deletedPersons #: apps/web/src/components/settings/danger-section.tsx:41 msgid "Purged {0, plural, one {# stale title} other {# stale titles}} and {1, plural, one {# orphaned person} other {# orphaned persons}}" -msgstr "" +msgstr "{0, plural, one {# título obsoleto removido} other {# títulos obsoletos removidos}} e {1, plural, one {# pessoa órfã} other {# pessoas órfãs}}" #. placeholder {0}: metaResult.deletedTitles #. placeholder {1}: metaResult.deletedPersons #. placeholder {2}: imageResult.deletedFiles -#: apps/web/src/components/settings/danger-section.tsx:71 +#: apps/web/src/components/settings/danger-section.tsx:68 msgid "Purged {0, plural, one {# title} other {# titles}}, {1, plural, one {# person} other {# persons}}, {2, plural, one {# file} other {# files}} ({freed} freed)" -msgstr "" +msgstr "{0, plural, one {# título removido} other {# títulos removidos}}, {1, plural, one {# pessoa} other {# pessoas}}, {2, plural, one {# arquivo} other {# arquivos}} ({freed} liberado)" -#: apps/web/src/components/settings/danger-section.tsx:109 -#: apps/web/src/components/settings/danger-section.tsx:152 -#: apps/web/src/components/settings/danger-section.tsx:194 +#: apps/web/src/components/settings/danger-section.tsx:101 +#: apps/web/src/components/settings/danger-section.tsx:138 +#: apps/web/src/components/settings/danger-section.tsx:171 msgid "Purging..." -msgstr "" +msgstr "Limpando..." -#: apps/web/src/components/command-palette.tsx:359 +#: apps/web/src/components/command-palette.tsx:336 msgid "Quick Actions" -msgstr "" +msgstr "Ações Rápidas" -#: apps/native/src/components/settings/integration-configs.ts:123 +#: apps/native/src/components/settings/integration-configs.ts:118 msgid "Radarr List URL" -msgstr "" +msgstr "URL da Lista do Radarr" #. placeholder {0}: input.stars #. placeholder {1}: input.stars -#: apps/native/src/hooks/use-title-actions.ts:93 +#: apps/native/src/hooks/use-title-actions.ts:88 msgid "Rated {0} {1, plural, one {star} other {stars}}" -msgstr "" +msgstr "Avaliado com {0} {1, plural, one {estrela} other {estrelas}}" #: apps/native/src/hooks/use-title-actions.ts:92 #~ msgid "Rated {0} star{1}" #~ msgstr "Rated {0} star{1}" -#: apps/web/src/components/titles/use-title-actions.ts:131 +#: apps/web/src/components/titles/use-title-actions.ts:118 msgid "Rated {ratingStars} {ratingStars, plural, one {star} other {stars}}" -msgstr "" +msgstr "Avaliado com {ratingStars} {ratingStars, plural, one {estrela} other {estrelas}}" -#: apps/native/src/lib/title-actions.ts:88 +#: apps/native/src/lib/title-actions.ts:86 msgid "Rated {stars, plural, one {# star} other {# stars}}" -msgstr "" +msgstr "Avaliado com {stars, plural, one {# estrela} other {# estrelas}}" -#: apps/web/src/components/people/filmography-grid.tsx:88 -#: apps/web/src/components/people/filmography-grid.tsx:102 +#: apps/web/src/components/people/filmography-grid.tsx:81 +#: apps/web/src/components/people/filmography-grid.tsx:90 msgid "Rating" -msgstr "" +msgstr "Avaliação" -#: apps/native/src/hooks/use-title-actions.ts:94 -#: apps/native/src/lib/title-actions.ts:90 -#: apps/web/src/components/titles/use-title-actions.ts:132 +#: apps/native/src/hooks/use-title-actions.ts:89 +#: apps/native/src/lib/title-actions.ts:87 +#: apps/web/src/components/titles/use-title-actions.ts:119 msgid "Rating removed" -msgstr "" +msgstr "Avaliação removida" -#: apps/web/src/components/settings/imports-section.tsx:782 -#: apps/web/src/components/settings/imports-section.tsx:813 +#: apps/web/src/components/settings/imports-section.tsx:744 +#: apps/web/src/components/settings/imports-section.tsx:775 msgid "Ratings" -msgstr "" +msgstr "Avaliações" -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Read more" -msgstr "" +msgstr "Ler mais" -#: apps/native/src/components/settings/integration-configs.ts:39 -#: apps/web/src/components/settings/integration-card.tsx:339 +#: apps/native/src/components/settings/integration-configs.ts:40 +#: apps/web/src/components/settings/integration-card.tsx:297 msgid "Ready — not polled yet" -msgstr "" +msgstr "Pronto — ainda não verificado" -#: apps/native/src/components/settings/integration-configs.ts:31 -#: apps/web/src/components/settings/integration-card.tsx:332 +#: apps/native/src/components/settings/integration-configs.ts:32 +#: apps/web/src/components/settings/integration-card.tsx:290 msgid "Ready — nothing received yet" -msgstr "" +msgstr "Pronto — nada recebido ainda" -#: apps/web/src/components/command-palette.tsx:315 +#: apps/web/src/components/command-palette.tsx:295 msgid "Recent Searches" -msgstr "" +msgstr "Pesquisas Recentes" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:106 -#: apps/native/src/components/search/recently-viewed-list.tsx:86 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:95 +#: apps/native/src/components/search/recently-viewed-list.tsx:77 msgid "Recently Viewed" -msgstr "" +msgstr "Vistos Recentemente" -#: apps/web/src/components/settings/system-health-section.tsx:333 +#: apps/web/src/components/settings/system-health-section.tsx:306 msgid "Recommendations" -msgstr "" +msgstr "Recomendações" -#: apps/web/src/components/titles/title-recommendations.tsx:40 +#: apps/web/src/components/titles/title-recommendations.tsx:41 msgid "Recommended" -msgstr "" +msgstr "Recomendado" -#: apps/native/src/app/(tabs)/(home)/index.tsx:154 +#: apps/native/src/app/(tabs)/(home)/index.tsx:137 #: apps/web/src/components/dashboard/recommendations-section.tsx:22 msgid "Recommended for You" -msgstr "" +msgstr "Recomendado para Você" -#: apps/web/src/components/auth-form.tsx:143 +#: apps/web/src/components/auth-form.tsx:140 msgid "Redirecting…" -msgstr "" +msgstr "Redirecionando…" -#: apps/web/src/components/settings/system-health-section.tsx:182 +#: apps/web/src/components/settings/system-health-section.tsx:166 msgid "Refresh" -msgstr "" +msgstr "Atualizar" -#: apps/web/src/components/settings/system-health-section.tsx:172 +#: apps/web/src/components/settings/system-health-section.tsx:156 msgid "Refresh system health" -msgstr "" +msgstr "Atualizar status de saúde do sistema" -#: apps/native/src/components/settings/integration-card.tsx:140 -#: apps/native/src/components/settings/integration-card.tsx:289 +#: apps/native/src/components/settings/integration-card.tsx:128 +#: apps/native/src/components/settings/integration-card.tsx:248 msgid "Regenerate" -msgstr "" +msgstr "Regenerar" -#: apps/native/src/components/settings/integration-card.tsx:135 -#: apps/web/src/components/settings/integration-card.tsx:264 +#: apps/native/src/components/settings/integration-card.tsx:123 +#: apps/web/src/components/settings/integration-card.tsx:226 msgid "Regenerate URL" -msgstr "" +msgstr "Regenerar URL" -#: apps/web/src/components/auth-form.tsx:293 -#: apps/web/src/components/landing-page.tsx:176 +#: apps/web/src/components/auth-form.tsx:274 +#: apps/web/src/components/landing-page.tsx:177 msgid "Register" -msgstr "" +msgstr "Registrar" -#: apps/native/src/app/(auth)/register.tsx:116 +#: apps/native/src/app/(auth)/register.tsx:104 msgid "Registering on {serverHost}" -msgstr "" +msgstr "Registrando em {serverHost}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration closed" -msgstr "" +msgstr "Registro fechado" -#: apps/native/src/app/(auth)/register.tsx:97 -#: apps/web/src/routes/_auth/register.tsx:32 +#: apps/native/src/app/(auth)/register.tsx:87 +#: apps/web/src/routes/_auth/register.tsx:33 msgid "Registration Closed" -msgstr "" +msgstr "Registro Fechado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:167 -#: apps/web/src/components/settings/registration-section.tsx:41 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:164 +#: apps/web/src/components/settings/registration-section.tsx:35 msgid "Registration opened" -msgstr "" +msgstr "Registro aberto" -#: apps/web/src/components/titles/status-button.tsx:84 +#: apps/web/src/components/titles/status-button.tsx:76 msgid "Remove" -msgstr "" +msgstr "Remover" -#: apps/native/src/components/titles/status-action-button.tsx:101 -#: apps/web/src/components/titles/status-button.tsx:66 +#: apps/native/src/components/titles/status-action-button.tsx:96 +#: apps/web/src/components/titles/status-button.tsx:60 msgid "Remove from library" -msgstr "" +msgstr "Remover da biblioteca" -#: apps/native/src/components/dashboard/continue-watching-card.tsx:129 -#: apps/native/src/components/ui/poster-card.tsx:259 +#: apps/native/src/components/dashboard/continue-watching-card.tsx:108 +#: apps/native/src/components/ui/poster-card.tsx:233 msgid "Remove from Library" -msgstr "" +msgstr "Remover da Biblioteca" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:277 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:268 msgid "Remove Photo" -msgstr "" +msgstr "Remover Foto" -#: apps/web/src/components/settings/account-section.tsx:239 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Remove picture" -msgstr "" +msgstr "Remover foto" -#: apps/web/src/components/settings/account-section.tsx:199 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Remove profile picture" -msgstr "" +msgstr "Remover foto de perfil" -#: apps/native/src/hooks/use-title-actions.ts:66 -#: apps/native/src/lib/title-actions.ts:75 -#: apps/web/src/components/titles/use-title-actions.ts:111 +#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/lib/title-actions.ts:74 +#: apps/web/src/components/titles/use-title-actions.ts:98 msgid "Removed from library" -msgstr "" +msgstr "Removido da biblioteca" -#: apps/web/src/components/titles/title-availability.tsx:138 +#: apps/web/src/components/titles/title-availability.tsx:114 msgid "Rent" -msgstr "" +msgstr "Alugar" -#: apps/web/src/components/settings/integration-configs.tsx:165 +#: apps/web/src/components/settings/integration-configs.tsx:150 msgid "Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license." -msgstr "" +msgstr "Requer <0>Emby Server 4.7.9+ e uma licença ativa do <1>Emby Premiere<2/>." -#: apps/web/src/components/settings/integration-configs.tsx:41 +#: apps/web/src/components/settings/integration-configs.tsx:35 msgid "Requires an active <0>Plex Pass<1/> subscription." -msgstr "" +msgstr "Requer uma assinatura ativa do <0>Plex Pass<1/>." -#: apps/native/src/components/settings/integration-configs.ts:52 +#: apps/native/src/components/settings/integration-configs.ts:53 msgid "Requires an active Plex Pass subscription." -msgstr "" +msgstr "Requer uma assinatura ativa do Plex Pass." -#: apps/native/src/components/settings/integration-configs.ts:88 +#: apps/native/src/components/settings/integration-configs.ts:85 msgid "Requires Emby Server 4.7.9+ and an active Emby Premiere license." -msgstr "" +msgstr "Requer Emby Server 4.7.9+ e uma licença ativa do Emby Premiere." -#: apps/web/src/components/settings/backup-restore-section.tsx:59 -#: apps/web/src/components/settings/backup-restore-section.tsx:116 +#: apps/web/src/components/settings/backup-restore-section.tsx:57 +#: apps/web/src/components/settings/backup-restore-section.tsx:110 msgid "Restore" -msgstr "" +msgstr "Restaurar" -#: apps/web/src/components/settings/backup-restore-section.tsx:89 +#: apps/web/src/components/settings/backup-restore-section.tsx:83 msgid "Restore database?" -msgstr "" +msgstr "Restaurar banco de dados?" -#: apps/web/src/components/settings/backup-restore-section.tsx:35 +#: apps/web/src/components/settings/backup-restore-section.tsx:36 msgid "Restore failed" -msgstr "" +msgstr "Restauração falhou" -#: apps/web/src/components/settings/backup-restore-section.tsx:132 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 msgid "Restoring…" -msgstr "" +msgstr "Restaurando…" -#: apps/web/src/components/command-palette.tsx:222 +#: apps/web/src/components/command-palette.tsx:217 msgid "Results" -msgstr "" +msgstr "Resultados" -#: apps/web/src/components/settings/imports-section.tsx:731 +#: apps/web/src/components/settings/imports-section.tsx:695 msgid "Retrieving your watch history, watchlist, and ratings..." -msgstr "" +msgstr "Buscando seu histórico de exibição, lista de desejos e avaliações..." -#: apps/native/src/components/settings/integrations-section.tsx:42 -#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:73 -#: apps/native/src/components/ui/server-unreachable-banner.tsx:81 -#: apps/web/src/lib/orpc/client.ts:16 +#: apps/native/src/components/settings/integrations-section.tsx:39 +#: apps/native/src/components/ui/server-unreachable-banner.ios.tsx:71 +#: apps/native/src/components/ui/server-unreachable-banner.tsx:79 +#: apps/web/src/lib/orpc/client.ts:17 msgid "Retry" -msgstr "" +msgstr "Tentar novamente" -#: apps/web/src/routes/__root.tsx:119 +#: apps/web/src/routes/__root.tsx:116 msgid "Return home" -msgstr "" +msgstr "Voltar ao início" -#: apps/web/src/components/settings/imports-section.tsx:773 +#: apps/web/src/components/settings/imports-section.tsx:735 msgid "Review what was found and choose what to import." -msgstr "" +msgstr "Revise o que foi encontrado e escolha o que importar." -#: apps/web/src/components/settings/system-health-section.tsx:558 +#: apps/web/src/components/settings/system-health-section.tsx:509 msgid "Run now" -msgstr "" +msgstr "Executar agora" -#: apps/web/src/components/settings/backup-schedule-section.tsx:102 +#: apps/web/src/components/settings/backup-schedule-section.tsx:99 msgid "Saturday" -msgstr "" +msgstr "Sábado" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:322 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:311 msgid "Save" -msgstr "" +msgstr "Salvar" -#: apps/web/src/components/settings/account-section.tsx:296 +#: apps/web/src/components/settings/account-section.tsx:270 msgid "Save name" -msgstr "" +msgstr "Salvar nome" -#: apps/web/src/routes/__root.tsx:101 +#: apps/web/src/routes/__root.tsx:98 msgid "Scene not found" -msgstr "" +msgstr "Cena não encontrada" -#: apps/web/src/components/settings/system-health-section.tsx:402 +#: apps/web/src/components/settings/system-health-section.tsx:368 msgid "Schedule" -msgstr "" +msgstr "Agendamento" -#: apps/web/src/components/settings/backup-schedule-section.tsx:201 +#: apps/web/src/components/settings/backup-schedule-section.tsx:186 msgid "Schedule updated" -msgstr "" +msgstr "Agendamento atualizado" -#: apps/web/src/components/settings/backup-section.tsx:179 +#: apps/web/src/components/settings/backup-section.tsx:155 msgid "Scheduled backup" -msgstr "" +msgstr "Backup agendado" -#: apps/web/src/components/settings/backup-schedule-section.tsx:178 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups disabled" -msgstr "" +msgstr "Backups agendados desativados" -#: apps/web/src/components/settings/backup-schedule-section.tsx:177 +#: apps/web/src/components/settings/backup-schedule-section.tsx:164 msgid "Scheduled backups enabled" -msgstr "" +msgstr "Backups agendados ativados" #: apps/web/src/components/dashboard/stats-section.tsx:35 msgid "Search for movies and TV shows to start tracking" -msgstr "" +msgstr "Pesquise filmes e séries para começar a acompanhar" -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:81 -#: apps/native/src/components/search/recently-viewed-list.tsx:64 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:72 +#: apps/native/src/components/search/recently-viewed-list.tsx:55 msgid "Search for movies, shows, or people" -msgstr "" +msgstr "Pesquise filmes, séries ou pessoas" -#: apps/web/src/components/command-palette.tsx:186 +#: apps/web/src/components/command-palette.tsx:182 msgid "Search for movies, TV shows, or run commands" -msgstr "" +msgstr "Pesquise filmes, séries ou execute comandos" -#: apps/web/src/components/command-palette.tsx:195 +#: apps/web/src/components/command-palette.tsx:191 msgid "Search movies & TV shows…" -msgstr "" +msgstr "Pesquisar filmes e séries…" -#: apps/native/src/app/(tabs)/(search)/index.tsx:90 +#: apps/native/src/app/(tabs)/(search)/index.tsx:79 msgid "Search movies, shows, people..." -msgstr "" +msgstr "Pesquisar filmes, séries, pessoas..." -#: apps/web/src/components/nav-bar.tsx:193 -#: apps/web/src/components/nav-bar.tsx:202 +#: apps/web/src/components/nav-bar.tsx:181 +#: apps/web/src/components/nav-bar.tsx:190 msgid "Search…" -msgstr "" +msgstr "Pesquisar…" #. placeholder {0}: season.seasonNumber -#: apps/native/src/components/titles/season-accordion.tsx:122 -#: apps/native/src/components/titles/season-accordion.tsx:128 -#: apps/web/src/components/titles/use-title-actions.ts:295 -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/native/src/components/titles/season-accordion.tsx:113 +#: apps/native/src/components/titles/season-accordion.tsx:119 +#: apps/web/src/components/titles/use-title-actions.ts:274 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Season {0}" -msgstr "" +msgstr "Temporada {0}" -#: apps/native/src/hooks/use-title-actions.ts:137 -#: apps/native/src/lib/title-actions.ts:124 +#: apps/native/src/hooks/use-title-actions.ts:121 +#: apps/native/src/lib/title-actions.ts:119 msgid "Season watched" -msgstr "" +msgstr "Temporada assistida" -#: apps/native/src/app/title/[id].tsx:536 +#: apps/native/src/app/title/[id].tsx:473 msgid "Seasons" -msgstr "" +msgstr "Temporadas" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:497 -#: apps/web/src/routes/_app/settings.tsx:140 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:470 +#: apps/web/src/routes/_app/settings.tsx:131 msgid "Security" -msgstr "" +msgstr "Segurança" -#: apps/web/src/components/landing-page.tsx:105 +#: apps/web/src/components/landing-page.tsx:106 msgid "Self-hosted movie & TV tracker" -msgstr "" +msgstr "Rastreador de filmes e séries auto-hospedado" -#: apps/web/src/routes/_app/settings.tsx:121 +#: apps/web/src/routes/_app/settings.tsx:115 msgid "Server" -msgstr "" +msgstr "Servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:452 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:431 msgid "Server Health" -msgstr "" +msgstr "Saúde do Servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:380 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:364 msgid "Server URL" -msgstr "" +msgstr "URL do Servidor" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:361 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:350 msgid "Set password" -msgstr "" +msgstr "Definir senha" -#: apps/native/src/components/settings/integration-configs.ts:111 -#: apps/native/src/components/settings/integration-configs.ts:129 -#: apps/web/src/components/settings/integration-configs.tsx:247 -#: apps/web/src/components/settings/integration-configs.tsx:287 +#: apps/native/src/components/settings/integration-configs.ts:106 +#: apps/native/src/components/settings/integration-configs.ts:124 +#: apps/web/src/components/settings/integration-configs.tsx:221 +#: apps/web/src/components/settings/integration-configs.tsx:258 msgid "Set your preferred quality profile and root folder" -msgstr "" +msgstr "Defina seu perfil de qualidade preferido e pasta raiz" -#: apps/native/src/components/header-avatar.tsx:63 -#: apps/web/src/components/nav-bar.tsx:250 -#: apps/web/src/components/nav-bar.tsx:292 -#: apps/web/src/components/settings/settings-shell.tsx:36 +#: apps/native/src/components/header-avatar.tsx:55 +#: apps/web/src/components/nav-bar.tsx:236 +#: apps/web/src/components/nav-bar.tsx:278 +#: apps/web/src/components/settings/settings-shell.tsx:30 msgid "Settings" -msgstr "" +msgstr "Configurações" -#: apps/native/src/components/settings/integration-card.tsx:319 -#: apps/web/src/components/settings/integration-card.tsx:288 +#: apps/native/src/components/settings/integration-card.tsx:271 +#: apps/web/src/components/settings/integration-card.tsx:248 msgid "Setup instructions" -msgstr "" +msgstr "Instruções de configuração" -#: apps/web/src/routes/setup.tsx:98 +#: apps/web/src/routes/setup.tsx:95 msgid "Setup required" -msgstr "" +msgstr "Configuração necessária" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 -#: apps/web/src/components/expandable-text.tsx:51 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 +#: apps/web/src/components/expandable-text.tsx:52 msgid "Show less" -msgstr "" +msgstr "Mostrar menos" -#: apps/native/src/components/ui/expandable-text.tsx:62 -#: apps/native/src/components/ui/expandable-text.tsx:69 +#: apps/native/src/components/ui/expandable-text.tsx:63 +#: apps/native/src/components/ui/expandable-text.tsx:70 msgid "Show more" -msgstr "" +msgstr "Mostrar mais" -#: apps/web/src/components/auth-form.tsx:249 -#: apps/web/src/components/auth-form.tsx:283 +#: apps/web/src/components/auth-form.tsx:233 +#: apps/web/src/components/auth-form.tsx:264 msgid "Sign in" -msgstr "" +msgstr "Entrar" -#: apps/native/src/app/(auth)/login.tsx:205 -#: apps/web/src/components/landing-page.tsx:167 +#: apps/native/src/app/(auth)/login.tsx:183 +#: apps/web/src/components/landing-page.tsx:168 msgid "Sign In" -msgstr "" +msgstr "Entrar" #: apps/web/src/routes/_auth/register.tsx:45 msgid "Sign in instead" -msgstr "" +msgstr "Entrar em vez disso" -#: apps/native/src/app/(auth)/login.tsx:91 -#: apps/web/src/components/auth-form.tsx:119 +#: apps/native/src/app/(auth)/login.tsx:86 +#: apps/web/src/components/auth-form.tsx:116 msgid "Sign in to continue" -msgstr "" +msgstr "Entre para continuar" #. placeholder {0}: authConfig.data?.oidcProviderName ?? "SSO" #. placeholder {0}: authConfig?.oidcProviderName || "SSO" -#: apps/native/src/app/(auth)/login.tsx:108 -#: apps/web/src/components/auth-form.tsx:145 +#: apps/native/src/app/(auth)/login.tsx:100 +#: apps/web/src/components/auth-form.tsx:142 msgid "Sign in with {0}" -msgstr "" +msgstr "Entrar com {0}" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 -#: apps/native/src/components/header-avatar.tsx:87 -#: apps/web/src/components/nav-bar.tsx:262 -#: apps/web/src/components/settings/account-section.tsx:354 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:356 +#: apps/native/src/components/header-avatar.tsx:79 +#: apps/web/src/components/nav-bar.tsx:248 +#: apps/web/src/components/settings/account-section.tsx:328 msgid "Sign out" -msgstr "" +msgstr "Sair" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:206 -#: apps/native/src/app/(tabs)/(settings)/index.tsx:209 -#: apps/native/src/components/header-avatar.tsx:70 -#: apps/native/src/components/header-avatar.tsx:73 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:201 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:204 +#: apps/native/src/components/header-avatar.tsx:62 +#: apps/native/src/components/header-avatar.tsx:65 msgid "Sign Out" -msgstr "" +msgstr "Sair" -#: apps/native/src/app/change-password.tsx:199 -#: apps/web/src/components/settings/account-section.tsx:499 +#: apps/native/src/app/change-password.tsx:193 +#: apps/web/src/components/settings/account-section.tsx:471 msgid "Sign out of other sessions" -msgstr "" +msgstr "Sair de outras sessões" -#: apps/web/src/components/settings/imports-section.tsx:922 +#: apps/web/src/components/settings/imports-section.tsx:880 msgid "Skipped" -msgstr "" +msgstr "Ignorado" #. placeholder {0}: data.latestVersion -#: apps/web/src/components/update-toast.tsx:19 +#: apps/web/src/components/update-toast.tsx:18 msgid "Sofa v{0} is available" -msgstr "" +msgstr "Sofa v{0} está disponível" #: apps/native/src/components/settings/integration-configs.ts:57 -#: apps/native/src/components/settings/integration-configs.ts:75 -#: apps/native/src/components/settings/integration-configs.ts:95 -#: apps/web/src/components/settings/integration-configs.tsx:86 -#: apps/web/src/components/settings/integration-configs.tsx:147 -#: apps/web/src/components/settings/integration-configs.tsx:208 +#: apps/native/src/components/settings/integration-configs.ts:73 +#: apps/native/src/components/settings/integration-configs.ts:91 +#: apps/web/src/components/settings/integration-configs.tsx:79 +#: apps/web/src/components/settings/integration-configs.tsx:133 +#: apps/web/src/components/settings/integration-configs.tsx:186 msgid "Sofa will automatically log movies and episodes when you finish watching them" -msgstr "" +msgstr "O Sofa registrará automaticamente filmes e episódios quando você terminar de assisti-los" -#: apps/native/src/app/change-password.tsx:81 -#: apps/native/src/app/person/[id].tsx:213 -#: apps/web/src/components/settings/account-section.tsx:417 -#: apps/web/src/routes/__root.tsx:143 +#: apps/native/src/app/change-password.tsx:77 +#: apps/native/src/app/person/[id].tsx:182 +#: apps/web/src/components/settings/account-section.tsx:391 +#: apps/web/src/routes/__root.tsx:140 msgid "Something went wrong" -msgstr "" +msgstr "Algo deu errado" -#: apps/web/src/routes/_app/titles.$id.tsx:118 +#: apps/web/src/routes/_app/titles.$id.tsx:113 msgid "Something went wrong while loading this title. Please try again." -msgstr "" +msgstr "Algo deu errado ao carregar este título. Tente novamente." #: apps/native/src/lib/query-client.ts:33 -#: apps/web/src/lib/orpc/client.ts:14 +#: apps/web/src/lib/orpc/client.ts:15 msgid "Something went wrong…" -msgstr "" +msgstr "Algo deu errado…" -#: apps/native/src/components/settings/integration-configs.ts:105 +#: apps/native/src/components/settings/integration-configs.ts:100 msgid "Sonarr List URL" -msgstr "" +msgstr "URL da Lista do Sonarr" #: apps/web/src/components/dashboard/stats-section.tsx:42 msgid "Start exploring" -msgstr "" +msgstr "Começar a explorar" -#: apps/native/src/app/(tabs)/(home)/index.tsx:142 +#: apps/native/src/app/(tabs)/(home)/index.tsx:126 msgid "Start tracking movies and shows" -msgstr "" +msgstr "Comece a acompanhar filmes e séries" -#: apps/web/src/components/auth-form.tsx:117 +#: apps/web/src/components/auth-form.tsx:114 msgid "Start tracking your watches" -msgstr "" +msgstr "Comece a registrar suas visualizações" -#: apps/web/src/components/settings/backup-schedule-section.tsx:388 +#: apps/web/src/components/settings/backup-schedule-section.tsx:347 msgid "Starting at" -msgstr "" +msgstr "Iniciando às" -#: apps/web/src/components/settings/imports-section.tsx:888 +#: apps/web/src/components/settings/imports-section.tsx:846 msgid "Starting import..." -msgstr "" +msgstr "Iniciando importação..." -#: apps/native/src/hooks/use-title-actions.ts:65 +#: apps/native/src/hooks/use-title-actions.ts:64 msgid "Status updated" -msgstr "" +msgstr "Status atualizado" -#: apps/web/src/components/settings/system-health-section.tsx:595 +#: apps/web/src/components/settings/system-health-section.tsx:543 msgid "Storage" -msgstr "" +msgstr "Armazenamento" -#: apps/web/src/components/titles/title-availability.tsx:137 +#: apps/web/src/components/titles/title-availability.tsx:113 msgid "Stream" -msgstr "" +msgstr "Streaming" -#: apps/web/src/components/settings/backup-schedule-section.tsx:96 +#: apps/web/src/components/settings/backup-schedule-section.tsx:93 msgid "Sunday" -msgstr "" +msgstr "Domingo" #. placeholder {0}: info.name -#: apps/web/src/components/settings/language-section.tsx:69 +#: apps/web/src/components/settings/language-section.tsx:59 msgid "Switch to {0}" -msgstr "" +msgstr "Mudar para {0}" -#: apps/native/src/app/+not-found.tsx:30 +#: apps/native/src/app/+not-found.tsx:28 msgid "The page you're looking for doesn't exist." -msgstr "" +msgstr "A página que você está procurando não existe." -#: apps/web/src/routes/_app/people.$id.tsx:55 +#: apps/web/src/routes/_app/people.$id.tsx:53 msgid "The person you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "A pessoa que você está procurando não existe ou pode ter sido removida do banco de dados." -#: apps/web/src/routes/_app/titles.$id.tsx:149 +#: apps/web/src/routes/_app/titles.$id.tsx:142 msgid "The title you're looking for doesn't exist or may have been removed from the database." -msgstr "" +msgstr "O título que você está procurando não existe ou pode ter sido removido do banco de dados." -#: apps/web/src/components/settings/imports-section.tsx:866 +#: apps/web/src/components/settings/imports-section.tsx:825 msgid "This may take a few minutes for large libraries. Please don't close this tab." -msgstr "" +msgstr "Isso pode levar alguns minutos para bibliotecas grandes. Por favor, não feche esta aba." -#: apps/web/src/components/dashboard/stats-display.tsx:146 +#: apps/web/src/components/dashboard/stats-display.tsx:135 msgid "This Month" -msgstr "" +msgstr "Este Mês" -#: apps/web/src/routes/__root.tsx:104 +#: apps/web/src/routes/__root.tsx:101 msgid "This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay." -msgstr "" +msgstr "Esta página ficou no chão da sala de montagem. Pode ter sido movida, removida ou nunca ter passado do roteiro." -#: apps/native/src/app/(tabs)/(settings)/index.tsx:606 -#: apps/web/src/routes/_app/settings.tsx:75 -#: apps/web/src/routes/setup.tsx:187 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:557 +#: apps/web/src/routes/_app/settings.tsx:76 +#: apps/web/src/routes/setup.tsx:180 msgid "This product uses the TMDB API but is not endorsed or certified by TMDB." -msgstr "" +msgstr "Este produto usa a API do TMDB, mas não é endossado ou certificado pelo TMDB." -#: apps/web/src/components/dashboard/stats-display.tsx:145 +#: apps/web/src/components/dashboard/stats-display.tsx:134 msgid "This Week" -msgstr "" +msgstr "Esta Semana" -#: apps/web/src/components/settings/danger-section.tsx:163 +#: apps/web/src/components/settings/danger-section.tsx:146 msgid "This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed." -msgstr "" +msgstr "Isso excluirá todas as imagens TMDB em cache do disco. As imagens serão baixadas novamente automaticamente conforme necessário." -#: apps/web/src/components/settings/danger-section.tsx:205 +#: apps/web/src/components/settings/danger-section.tsx:179 msgid "This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed." -msgstr "" +msgstr "Isso excluirá todos os títulos stub não enriquecidos e todas as imagens em cache do disco. Tudo será reimportado e baixado novamente conforme necessário." -#: apps/web/src/components/settings/danger-section.tsx:120 +#: apps/web/src/components/settings/danger-section.tsx:112 msgid "This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again." -msgstr "" +msgstr "Isso excluirá títulos stub não enriquecidos que não estão na biblioteca de nenhum usuário e limpará registros de pessoas órfãs. Os títulos excluídos serão reimportados se acessados novamente." -#: apps/native/src/components/settings/integration-card.tsx:136 +#: apps/native/src/components/settings/integration-card.tsx:124 msgid "This will invalidate the current {label} URL. You'll need to update it in {label}." -msgstr "" +msgstr "Isso invalidará a URL atual do {label}. Você precisará atualizá-la no {label}." -#: apps/web/src/components/titles/title-seasons.tsx:125 +#: apps/web/src/components/titles/title-seasons.tsx:119 msgid "This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons." -msgstr "" +msgstr "Isso marcará todos os episódios desta série como assistidos. Você pode desfazer isso mais tarde desmarcando temporadas individuais." #. placeholder {0}: formatBackupDate(backup.createdAt) -#: apps/web/src/components/settings/backup-section.tsx:259 +#: apps/web/src/components/settings/backup-section.tsx:231 msgid "This will permanently delete the backup from <0>{0}. This cannot be undone." -msgstr "" +msgstr "Isso excluirá permanentemente o backup de <0>{0}. Esta ação não pode ser desfeita." -#: apps/native/src/components/search/recently-viewed-list.ios.tsx:61 -#: apps/native/src/components/search/recently-viewed-list.tsx:35 +#: apps/native/src/components/search/recently-viewed-list.ios.tsx:57 +#: apps/native/src/components/search/recently-viewed-list.tsx:31 msgid "This will remove all items from your history." -msgstr "" +msgstr "Isso removerá todos os itens do seu histórico." -#: apps/web/src/components/settings/backup-restore-section.tsx:92 +#: apps/web/src/components/settings/backup-restore-section.tsx:86 msgid "This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore." -msgstr "" +msgstr "Isso substituirá todo o seu banco de dados pelo arquivo enviado. Um backup de segurança dos seus dados atuais será criado primeiro. As sessões ativas podem precisar ser atualizadas após a restauração." -#: apps/web/src/components/dashboard/stats-display.tsx:147 +#: apps/web/src/components/dashboard/stats-display.tsx:136 msgid "This Year" -msgstr "" +msgstr "Este Ano" -#: apps/web/src/components/settings/backup-schedule-section.tsx:100 +#: apps/web/src/components/settings/backup-schedule-section.tsx:97 msgid "Thursday" -msgstr "" +msgstr "Quinta-feira" -#: apps/web/src/components/settings/backup-schedule-section.tsx:390 +#: apps/web/src/components/settings/backup-schedule-section.tsx:349 msgid "Time:" -msgstr "" +msgstr "Hora:" -#: apps/native/src/app/title/[id].tsx:251 -#: apps/web/src/routes/_app/titles.$id.tsx:146 +#: apps/native/src/app/title/[id].tsx:235 +#: apps/web/src/routes/_app/titles.$id.tsx:139 msgid "Title not found" -msgstr "" +msgstr "Título não encontrado" -#: apps/native/src/components/settings/integration-configs.ts:131 -#: apps/web/src/components/settings/integration-configs.tsx:290 +#: apps/native/src/components/settings/integration-configs.ts:126 +#: apps/web/src/components/settings/integration-configs.tsx:261 msgid "Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)" -msgstr "" +msgstr "Os títulos na sua lista de desejos do Sofa serão automaticamente adicionados para download quando o Radarr verificar esta lista (a cada 12 horas por padrão)" -#: apps/native/src/components/settings/integration-configs.ts:113 -#: apps/web/src/components/settings/integration-configs.tsx:250 +#: apps/native/src/components/settings/integration-configs.ts:108 +#: apps/web/src/components/settings/integration-configs.tsx:224 msgid "Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)" -msgstr "" +msgstr "Os títulos na sua lista de desejos do Sofa serão automaticamente adicionados para download quando o Sonarr verificar esta lista (a cada 6 horas por padrão)" -#: apps/web/src/components/dashboard/stats-display.tsx:144 +#: apps/web/src/components/dashboard/stats-display.tsx:133 msgid "Today" -msgstr "" +msgstr "Hoje" -#: apps/web/src/components/settings/update-check-section.tsx:71 +#: apps/web/src/components/settings/update-check-section.tsx:62 msgid "Toggle automatic update checks" -msgstr "" +msgstr "Ativar/desativar verificações automáticas de atualização" -#: apps/web/src/components/settings/registration-section.tsx:69 +#: apps/web/src/components/settings/registration-section.tsx:62 msgid "Toggle open registration" -msgstr "" +msgstr "Ativar/desativar registro aberto" -#: apps/web/src/components/settings/backup-schedule-section.tsx:290 +#: apps/web/src/components/settings/backup-schedule-section.tsx:257 msgid "Toggle scheduled backups" -msgstr "" +msgstr "Ativar/desativar backups agendados" -#: apps/web/src/components/landing-page.tsx:131 +#: apps/web/src/components/landing-page.tsx:132 msgid "Track what you watch. Know what's next.<0/>Your library, your data, your rules." -msgstr "" +msgstr "Acompanhe o que você assiste. Saiba o que vem a seguir.<0/>Sua biblioteca, seus dados, suas regras." -#: apps/web/src/components/titles/trailer-dialog.tsx:37 -#: apps/web/src/components/titles/trailer-dialog.tsx:41 +#: apps/web/src/components/titles/trailer-dialog.tsx:38 +#: apps/web/src/components/titles/trailer-dialog.tsx:42 msgid "Trailer" msgstr "" -#: apps/web/src/components/explore/hero-banner.tsx:78 +#: apps/web/src/components/explore/hero-banner.tsx:70 msgid "Trending today" -msgstr "" +msgstr "Em alta hoje" -#: apps/native/src/app/(tabs)/(explore)/index.tsx:95 -#: apps/web/src/components/explore/explore-client.tsx:112 +#: apps/native/src/app/(tabs)/(explore)/index.tsx:77 +#: apps/web/src/components/explore/explore-client.tsx:108 msgid "Trending Today" -msgstr "" +msgstr "Em Alta Hoje" -#: apps/web/src/components/settings/system-health-section.tsx:537 +#: apps/web/src/components/settings/system-health-section.tsx:488 msgid "Trigger job" -msgstr "" +msgstr "Acionar tarefa" -#: apps/web/src/routes/__root.tsx:159 +#: apps/web/src/routes/__root.tsx:156 msgid "Try again" -msgstr "" +msgstr "Tentar novamente" -#: apps/web/src/components/settings/backup-schedule-section.tsx:98 +#: apps/web/src/components/settings/backup-schedule-section.tsx:95 msgid "Tuesday" -msgstr "" +msgstr "Terça-feira" -#: apps/native/src/app/title/[id].tsx:362 -#: apps/native/src/components/search/search-result-row.tsx:98 -#: apps/web/src/components/explore/hero-banner.tsx:64 -#: apps/web/src/components/people/filmography-grid.tsx:60 -#: apps/web/src/components/titles/title-hero.tsx:153 +#: apps/native/src/app/title/[id].tsx:337 +#: apps/native/src/components/search/search-result-row.tsx:81 +#: apps/web/src/components/explore/hero-banner.tsx:59 +#: apps/web/src/components/people/filmography-grid.tsx:58 +#: apps/web/src/components/titles/title-hero.tsx:148 msgid "TV" -msgstr "" +msgstr "Série" -#: apps/web/src/components/settings/system-health-section.tsx:334 +#: apps/web/src/components/settings/system-health-section.tsx:307 msgid "TV episodes" -msgstr "" +msgstr "Episódios de séries" -#: apps/native/src/components/search/search-result-row.tsx:37 +#: apps/native/src/components/search/search-result-row.tsx:34 msgid "TV show" -msgstr "" +msgstr "Série" -#: apps/web/src/components/settings/system-health-section.tsx:656 +#: apps/web/src/components/settings/system-health-section.tsx:601 msgid "unknown" -msgstr "" +msgstr "desconhecido" -#: apps/web/src/components/settings/backup-schedule-section.tsx:256 -#: apps/web/src/components/settings/backup-schedule-section.tsx:270 +#: apps/web/src/components/settings/backup-schedule-section.tsx:232 +#: apps/web/src/components/settings/backup-schedule-section.tsx:239 msgid "unlimited" -msgstr "" +msgstr "ilimitado" -#: apps/web/src/components/settings/system-health-section.tsx:273 +#: apps/web/src/components/settings/system-health-section.tsx:253 msgid "Unreachable" -msgstr "" +msgstr "Inacessível" -#: apps/web/src/components/titles/title-seasons.tsx:340 +#: apps/web/src/components/titles/title-seasons.tsx:318 msgid "Untitled" -msgstr "" +msgstr "Sem título" -#: apps/web/src/components/titles/title-seasons.tsx:221 +#: apps/web/src/components/titles/title-seasons.tsx:205 msgid "Unwatch all" -msgstr "" +msgstr "Desmarcar todos" #. placeholder {0}: season.name ?? t`Season ${season.seasonNumber}` -#: apps/web/src/components/titles/use-title-actions.ts:335 +#: apps/web/src/components/titles/use-title-actions.ts:313 msgid "Unwatched all of {0}" -msgstr "" +msgstr "Desmarcados todos os episódios de {0}" -#: apps/web/src/components/titles/use-title-actions.ts:174 +#: apps/web/src/components/titles/use-title-actions.ts:156 msgid "Unwatched S{seasonNum} E{epNum}" -msgstr "" +msgstr "Desmarcado T{seasonNum} E{epNum}" -#: apps/native/src/components/titles/continue-watching-banner.tsx:79 -#: apps/web/src/components/dashboard/continue-watching-card.tsx:77 +#: apps/native/src/components/titles/continue-watching-banner.tsx:72 +#: apps/web/src/components/dashboard/continue-watching-card.tsx:63 msgid "Up next" -msgstr "" +msgstr "A seguir" #. placeholder {0}: updateCheck.data.updateCheck.latestVersion -#: apps/native/src/app/(tabs)/(settings)/index.tsx:528 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:496 msgid "Update available: {0}" -msgstr "" +msgstr "Atualização disponível: {0}" -#: apps/web/src/components/settings/system-health-section.tsx:337 +#: apps/web/src/components/settings/system-health-section.tsx:310 msgid "Update check" -msgstr "" +msgstr "Verificação de atualização" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks disabled" -msgstr "" +msgstr "Verificações de atualização desativadas" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:185 -#: apps/web/src/components/settings/update-check-section.tsx:40 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:181 +#: apps/web/src/components/settings/update-check-section.tsx:35 msgid "Update checks enabled" -msgstr "" +msgstr "Verificações de atualização ativadas" -#: apps/web/src/components/settings/account-section.tsx:84 +#: apps/web/src/components/settings/account-section.tsx:76 msgid "Update failed" -msgstr "" +msgstr "Atualização falhou" -#: apps/web/src/components/settings/account-section.tsx:509 +#: apps/web/src/components/settings/account-section.tsx:481 msgid "Update password" -msgstr "" +msgstr "Atualizar senha" -#: apps/native/src/app/change-password.tsx:218 +#: apps/native/src/app/change-password.tsx:212 msgid "Update Password" -msgstr "" +msgstr "Atualizar Senha" -#: apps/web/src/components/settings/backup-restore-section.tsx:134 -#: apps/web/src/components/settings/imports-section.tsx:509 +#: apps/web/src/components/settings/backup-restore-section.tsx:121 +#: apps/web/src/components/settings/imports-section.tsx:488 msgid "Upload" -msgstr "" +msgstr "Enviar" -#: apps/web/src/components/settings/backup-restore-section.tsx:62 +#: apps/web/src/components/settings/backup-restore-section.tsx:60 msgid "Upload a .db file to replace the current database. A safety backup is created first." -msgstr "" +msgstr "Envie um arquivo .db para substituir o banco de dados atual. Um backup de segurança é criado primeiro." #. placeholder {0}: config.accept #. placeholder {1}: config.label -#: apps/web/src/components/settings/imports-section.tsx:637 +#: apps/web/src/components/settings/imports-section.tsx:603 msgid "Upload a {0} export from your {1} account settings." -msgstr "" +msgstr "Envie um export {0} das configurações da sua conta {1}." -#: apps/web/src/components/settings/imports-section.tsx:634 +#: apps/web/src/components/settings/imports-section.tsx:600 msgid "Upload export file" -msgstr "" +msgstr "Enviar arquivo de exportação" -#: apps/web/src/components/settings/account-section.tsx:112 +#: apps/web/src/components/settings/account-section.tsx:104 msgid "Upload failed" -msgstr "" +msgstr "Envio falhou" -#: apps/web/src/components/settings/account-section.tsx:241 +#: apps/web/src/components/settings/account-section.tsx:216 msgid "Upload picture" -msgstr "" +msgstr "Enviar foto" -#: apps/web/src/components/settings/account-section.tsx:200 +#: apps/web/src/components/settings/account-section.tsx:184 msgid "Upload profile picture" -msgstr "" +msgstr "Enviar foto de perfil" -#: apps/native/src/components/settings/integration-card.tsx:129 +#: apps/native/src/components/settings/integration-card.tsx:117 msgid "URL copied to clipboard" -msgstr "" +msgstr "URL copiada para a área de transferência" -#: apps/web/src/components/update-toast.tsx:24 +#: apps/web/src/components/update-toast.tsx:23 msgid "View release" -msgstr "" +msgstr "Ver versão" -#: apps/web/src/components/settings/imports-section.tsx:699 +#: apps/web/src/components/settings/imports-section.tsx:663 msgid "Waiting for authorization..." -msgstr "" +msgstr "Aguardando autorização..." -#: apps/web/src/components/settings/imports-section.tsx:823 +#: apps/web/src/components/settings/imports-section.tsx:785 msgid "Warnings" -msgstr "" +msgstr "Avisos" #. placeholder {0}: result.warnings.length -#: apps/web/src/components/settings/imports-section.tsx:948 +#: apps/web/src/components/settings/imports-section.tsx:905 msgid "Warnings ({0})" -msgstr "" +msgstr "Avisos ({0})" -#: apps/web/src/components/titles/title-seasons.tsx:202 +#: apps/web/src/components/titles/title-seasons.tsx:189 msgid "Watch all" -msgstr "" +msgstr "Marcar todos" -#: apps/web/src/components/settings/imports-section.tsx:801 +#: apps/web/src/components/settings/imports-section.tsx:763 msgid "Watch history" -msgstr "" +msgstr "Histórico de exibição" -#: apps/web/src/components/titles/title-availability.tsx:59 +#: apps/web/src/components/titles/title-availability.tsx:46 msgid "Watch on {name}" -msgstr "" +msgstr "Assistir em {name}" -#: apps/web/src/components/titles/use-title-actions.ts:298 -#: apps/web/src/components/titles/use-title-actions.ts:307 +#: apps/web/src/components/titles/use-title-actions.ts:277 +#: apps/web/src/components/titles/use-title-actions.ts:286 msgid "Watched all of {seasonLabel}" -msgstr "" +msgstr "Todos os episódios de {seasonLabel} assistidos" -#: apps/native/src/lib/title-actions.ts:123 +#: apps/native/src/lib/title-actions.ts:119 msgid "Watched all of {seasonName}" -msgstr "" +msgstr "Todos os episódios de {seasonName} assistidos" -#: apps/web/src/components/titles/use-title-actions.ts:220 -#: apps/web/src/components/titles/use-title-actions.ts:229 +#: apps/web/src/components/titles/use-title-actions.ts:199 +#: apps/web/src/components/titles/use-title-actions.ts:208 msgid "Watched S{seasonNum} E{epNum}" -msgstr "" +msgstr "Assistido T{seasonNum} E{epNum}" -#: apps/native/src/components/titles/status-action-button.tsx:42 -#: apps/web/src/components/title-card.tsx:72 -#: apps/web/src/components/titles/status-button.tsx:19 +#: apps/native/src/components/titles/status-action-button.tsx:43 +#: apps/web/src/components/title-card.tsx:69 +#: apps/web/src/components/titles/status-button.tsx:14 msgid "Watching" -msgstr "" +msgstr "Assistindo" -#: apps/native/src/components/titles/status-action-button.tsx:82 -#: apps/web/src/components/settings/imports-section.tsx:781 -#: apps/web/src/components/settings/imports-section.tsx:807 -#: apps/web/src/components/titles/status-button.tsx:55 +#: apps/native/src/components/titles/status-action-button.tsx:78 +#: apps/web/src/components/settings/imports-section.tsx:743 +#: apps/web/src/components/settings/imports-section.tsx:769 +#: apps/web/src/components/titles/status-button.tsx:49 msgid "Watchlist" -msgstr "" +msgstr "Lista de Desejos" -#: apps/native/src/components/titles/status-action-button.tsx:40 +#: apps/native/src/components/titles/status-action-button.tsx:41 msgid "Watchlisted" -msgstr "" +msgstr "Na Lista de Desejos" -#: apps/native/src/components/settings/integration-configs.ts:50 -#: apps/native/src/components/settings/integration-configs.ts:67 -#: apps/native/src/components/settings/integration-configs.ts:85 +#: apps/native/src/components/settings/integration-configs.ts:51 +#: apps/native/src/components/settings/integration-configs.ts:66 +#: apps/native/src/components/settings/integration-configs.ts:82 msgid "Webhook URL" -msgstr "" +msgstr "URL do Webhook" -#: apps/web/src/components/settings/backup-schedule-section.tsx:99 +#: apps/web/src/components/settings/backup-schedule-section.tsx:96 msgid "Wednesday" -msgstr "" +msgstr "Quarta-feira" -#: apps/web/src/components/auth-form.tsx:112 -#: apps/web/src/components/dashboard/welcome-header.tsx:10 +#: apps/web/src/components/auth-form.tsx:110 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back" -msgstr "" +msgstr "Bem-vindo de volta" -#: apps/web/src/components/dashboard/welcome-header.tsx:8 +#: apps/web/src/components/dashboard/welcome-header.tsx:7 msgid "Welcome back, {name}" -msgstr "" +msgstr "Bem-vindo de volta, {name}" -#: apps/native/src/app/title/[id].tsx:483 -#: apps/web/src/components/titles/title-availability.tsx:154 +#: apps/native/src/app/title/[id].tsx:430 +#: apps/web/src/components/titles/title-availability.tsx:130 msgid "Where to Watch" -msgstr "" +msgstr "Onde Assistir" -#: apps/web/src/components/titles/title-availability.tsx:141 +#: apps/web/src/components/titles/title-availability.tsx:117 msgid "With Ads" -msgstr "" +msgstr "Com Anúncios" -#: apps/web/src/components/people/person-hero.tsx:75 +#: apps/web/src/components/people/person-hero.tsx:73 msgid "Writer" -msgstr "" +msgstr "Roteirista" -#: apps/native/src/app/(tabs)/(settings)/index.tsx:386 +#: apps/native/src/app/(tabs)/(settings)/index.tsx:368 msgid "You'll be signed out to change the server URL." -msgstr "" +msgstr "Você será desconectado para alterar a URL do servidor." #. placeholder {0}: data.currentVersion -#: apps/web/src/components/update-toast.tsx:20 +#: apps/web/src/components/update-toast.tsx:19 msgid "You're running v{0}." -msgstr "" +msgstr "Você está usando a v{0}." -#: apps/web/src/components/settings/imports-section.tsx:678 +#: apps/web/src/components/settings/imports-section.tsx:642 msgid "Your code:" -msgstr "" +msgstr "Seu código:" -#: apps/native/src/app/(tabs)/(home)/index.tsx:141 +#: apps/native/src/app/(tabs)/(home)/index.tsx:125 #: apps/web/src/components/dashboard/stats-section.tsx:32 msgid "Your library is empty" -msgstr "" +msgstr "Sua biblioteca está vazia" -#: apps/native/src/app/(auth)/register.tsx:134 +#: apps/native/src/app/(auth)/register.tsx:121 msgid "Your name" -msgstr "" +msgstr "Seu nome" diff --git a/packages/i18n/src/po/pt.ts b/packages/i18n/src/po/pt.ts index ef7e47e..df7d4c7 100644 --- a/packages/i18n/src/po/pt.ts +++ b/packages/i18n/src/po/pt.ts @@ -1 +1 @@ -/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Saturday\"],\"+6i0lS\":[\"Retrieving your watch history, watchlist, and ratings...\"],\"+Cv+V9\":[\"Remove from library\"],\"+JkEpu\":[\"This page was left on the cutting room floor. It may have been moved, removed, or never made it past the screenplay.\"],\"+K0AvT\":[\"Disconnect\"],\"+N0l5/\":[\"Connected to <0>\",[\"serverHost\"],\". Tap to change.\"],\"+gLHYi\":[\"Failed to load title\"],\"+j1ex/\":[\"Failed to remove from library\"],\"+nF1ZO\":[\"Remove Photo\"],\"/+6dvC\":[\"Errors (\",[\"0\"],\")\"],\"/BBXeA\":[\"Connecting to server...\"],\"/DwR+n\":[\"Creating…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Watch all\"],\"/gQXGv\":[\"Failed to update status\"],\"/nT6AE\":[\"New password\"],\"/sHc1/\":[\"Update check\"],\"0+dyau\":[\"Failed to update retention setting\"],\"0BFJKK\":[\"Authorization was denied. Please try again.\"],\"0GHb20\":[\"Purge metadata cache?\"],\"0IBW21\":[\"Failed to purge caches\"],\"0gH/sc\":[\"Remove profile picture\"],\"1+P9RR\":[\"Switch to \",[\"0\"]],\"12cc1j\":[\"Watching\"],\"12lVOl\":[\"Self-hosted movie & TV tracker\"],\"1B4z0M\":[\"Filmography\"],\"1J4Ek0\":[\"Automatically back up your database on a schedule\"],\"1JhxXW\":[\"Episode \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Import options\"],\"1Qz4uG\":[\"Enable the \\\"Playback\\\" event category\"],\"1hMWR6\":[\"Create account\"],\"1jHIjh\":[\"Watched all of \",[\"seasonName\"]],\"1vSYsG\":[\"Download backup\"],\"1wL1tj\":[\"TV show\"],\"2FletP\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" person\"],\"other\":[\"#\",\" persons\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\" (\",[\"freed\"],\" freed)\"],\"2Fsd9r\":[\"This Month\"],\"2MPcep\":[\"Import complete\"],\"2Mu33Z\":[\"Cache management\"],\"2POOFK\":[\"Free\"],\"2Pt2NY\":[\"This will remove all items from your history.\"],\"2fCpt5\":[\"Return home\"],\"2pPBp6\":[\"Trending today\"],\"39y5bn\":[\"Friday\"],\"3Blefz\":[\"Ratings\"],\"3JTlG8\":[\"Recent Searches\"],\"3Jy8bM\":[\"Movies \",[\"select\"]],\"3L9OuQ\":[\"Episode \",[\"0\"]],\"3T8ziB\":[\"Create an account\"],\"3hELxX\":[\"Enter your Sofa server URL to get started\"],\"4fxLkp\":[\"Open Sonarr, go to <0>Settings > Import Lists\"],\"4kpBqM\":[\"Last event \",[\"0\"]],\"4uUjVO\":[\"Producer\"],\"4x+A56\":[\"Anonymous usage reporting\"],\"5IShvp\":[\"Import \",[\"totalItems\"],\" items\"],\"5IYJSv\":[\"Explore titles\"],\"5Y4mym\":[\"Import from \",[\"0\"]],\"5ZzgbQ\":[\"Connect \",[\"0\"]],\"5fEnbK\":[\"Failed to update scheduled backup setting\"],\"5lWFkC\":[\"Sign in\"],\"5v9C16\":[\"Connected to \",[\"source\"]],\"623bR4\":[\"Failed to trigger job\"],\"6HN0yh\":[\"Open Plex, go to Settings > Webhooks\"],\"6TNjOJ\":[\"Failed to update rating\"],\"6TfUy6\":[\"last \",[\"value\"]],\"6V3Ea3\":[\"Copied\"],\"6YtxFj\":[\"Name\"],\"6exX+8\":[\"Regenerate\"],\"6gRgw8\":[\"Retry\"],\"6lGV3K\":[\"Show less\"],\"76++pR\":[\"Warnings\"],\"77DIAu\":[\"Go to Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Failed\"],\"7D50KC\":[[\"label\"],\" disconnected\"],\"7GfM5w\":[\"Recently Viewed\"],\"7L01XJ\":[\"Actions\"],\"7eMo+U\":[\"Go Home\"],\"7p5kLi\":[\"Dashboard\"],\"85eoJ1\":[\"Schedule updated\"],\"8B9E2D\":[\"Day:\"],\"8YwF1J\":[\"Go to <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Password\"],\"8tjQCz\":[\"Explore\"],\"8vNtLy\":[\"Paste the Radarr URL above into the List URL field\"],\"8wYDMp\":[\"Already have an account?\"],\"9AE3vb\":[\"Open Plex, go to <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"Import is still running in the background. Check back later.\"],\"9NyAH9\":[\"Skipped\"],\"9Xhrps\":[\"Failed to connect\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Welcome back\"],\"9rG25a\":[\"Server URL\"],\"A+0rLe\":[\"Marked as completed\"],\"AOHgZp\":[\"Episodes\"],\"AOddWK\":[\"Connect \",[\"label\"]],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Environment\"],\"Acf6vF\":[\"Save name\"],\"AdoUfN\":[\"Failed to add to watchlist\"],\"AeXO77\":[\"Account\"],\"AjtYj0\":[\"On Watchlist\"],\"Avee+B\":[\"Failed to update name\"],\"B2R3xD\":[\"Toggle scheduled backups\"],\"BEVzjL\":[\"Import failed\"],\"BQnS5I\":[\"Open \",[\"source\"],\" to enter code\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup\"],\"other\":[\"backups\"]}],\" stored\"],\"BpttUI\":[\"Trending Today\"],\"BrrIs8\":[\"Storage\"],\"BskWMl\":[\"Unreachable\"],\"BzEFor\":[\"or\"],\"CGDHFb\":[\"Add a <0>Generic Destination and paste the URL above\"],\"CGExDN\":[\"Failed to purge image cache\"],\"CHeXFE\":[\"Status updated\"],\"CKyk7Q\":[\"Go back\"],\"CaB/+I\":[\"Welcome back, \",[\"name\"]],\"CodnUh\":[\"Removed from library\"],\"CpzGJY\":[\"This may take a few minutes for large libraries. Please don't close this tab.\"],\"CuPxpd\":[\"Requires an active <0>Plex Pass<1/> subscription.\"],\"CzBN6D\":[\"Start exploring\"],\"D+R2Xs\":[\"Starting import...\"],\"D3C4Yx\":[\"Current password is required\"],\"DBC3t5\":[\"Sunday\"],\"DI4lqs\":[\"Person not found\"],\"DKBbJf\":[\"Added \\\"\",[\"titleName\"],\"\\\" to watchlist\"],\"DPfwMq\":[\"Done\"],\"DZse/o\":[\"Add a \\\"Generic Destination\\\" and paste the URL above\"],\"E/QGRL\":[\"Disabled\"],\"E6nRW7\":[\"Copy URL\"],\"EWQlBH\":[\"Your library is empty\"],\"EWaCfj\":[\"Enter your current password and choose a new one.\"],\"Eeo/Gy\":[\"Failed to update setting\"],\"Efn6WU\":[\"This will delete all un-enriched stub titles and all cached images from disk. Everything will be re-imported and re-downloaded as needed.\"],\"Etp5if\":[\"Finished importing from \",[\"source\"],\".\"],\"F006BN\":[\"Import from \",[\"source\"]],\"FNvDMc\":[\"This Week\"],\"FWSp+7\":[\"Enter the code below on \",[\"source\"],\"'s website to authorize Sofa.\"],\"FXN0ro\":[\"Recommendations\"],\"FaU7Ag\":[\"Enable the \\\"Playback Stop\\\" notification type\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Actor\"],\"FwRqjE\":[\"Image cache and backup disk usage\"],\"G00fgM\":[\"last \",[\"n\"]],\"G3myU+\":[\"Tuesday\"],\"GcCthe\":[\"In Library\"],\"Gf39AA\":[[\"0\"],\" triggered\"],\"GnhfWw\":[\"Toggle automatic update checks\"],\"GptGxg\":[\"Change password\"],\"GqTZ+S\":[\"Rated \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"GrdN/F\":[\"Caught up — marked \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" as watched\"],\"H4B5LG\":[\"This product uses the TMDB API but is not endorsed or certified by TMDB.\"],\"HBRd5n\":[\"Season \",[\"0\"]],\"HD+aQ7\":[\"Database backups\"],\"HG+31u\":[\"Purge all caches?\"],\"Haz+72\":[\"This will delete all cached TMDB images from disk. Images will be re-downloaded automatically as needed.\"],\"HbReP5\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as completed\"],\"Hg6o8v\":[\"Refresh system health\"],\"HmEjnC\":[\"Last event \",[\"timeAgo\"]],\"HvDfH/\":[\"Imported\"],\"I89uD4\":[\"Restoring…\"],\"IRoxQm\":[\"Registration closed\"],\"IS0nrP\":[\"Create Account\"],\"IY9rQ0\":[\"Free up disk space by clearing cached metadata and images\"],\"IrC12v\":[\"Application\"],\"J28zul\":[\"Connecting...\"],\"J64cFL\":[\"Library refresh\"],\"JKmmmN\":[\"Added to watchlist\"],\"JN0f/Y\":[\"Connect to TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirm new password\"],\"JRadFJ\":[\"Start tracking your watches\"],\"JSwq8t\":[\"New account creation is currently disabled.\"],\"JY5Oyv\":[\"Database\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Connecting…\"],\"JwFbe8\":[\"TV\"],\"KDw4GX\":[\"Try again\"],\"KG6681\":[\"Episode watched\"],\"KIS/Sd\":[\"Sign out of other sessions\"],\"KK0ghs\":[\"Image cache\"],\"KVAoFR\":[\"unlimited\"],\"KcXJuc\":[\"Purging...\"],\"KhtG3o\":[\"Update Password\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" title\"],\"other\":[\"#\",\" titles\"]}]],\"KmWyx0\":[\"Job\"],\"KoF0x6\":[\"age \",[\"age\"]],\"Ksiej9\":[\"Requires an active Plex Pass subscription.\"],\"Kx9NEt\":[\"Invalid token\"],\"Lk6Jb/\":[\"Last polled \",[\"timeAgo\"]],\"LmEEic\":[\"Waiting for authorization...\"],\"LqKH42\":[\"Connect with \",[\"0\"]],\"Lrpjji\":[\"Disconnect \",[\"label\"]],\"Lu6Udx\":[\"Click \\\"+\\\" and select \\\"Custom Lists\\\"\"],\"MDoX++\":[\"Sonarr List URL\"],\"MRBlCJ\":[\"Failed to unmark some episodes\"],\"MUO7w9\":[\"Marked \\\"\",[\"titleName\"],\"\\\" as watched\"],\"MZbQHL\":[\"No results found.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Authorize Sofa to read your \",[\"0\"],\" library. No password shared.\"],\"N40H+G\":[\"All\"],\"N6SFhC\":[\"Sign in instead\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" is available\"],\"N9RF2M\":[\"Click \\\"Add Webhook\\\" and paste the URL above\"],\"NBo4z0\":[\"Click <0>+ and select <1>Custom Lists\"],\"NICUmW\":[\"Director\"],\"NQzPoO\":[\"New backup\"],\"NSxl1l\":[\"More Settings\"],\"NVF43p\":[\"Time:\"],\"NdPMwS\":[\"In Your Library\"],\"NgaPSG\":[\"Failed to update schedule\"],\"O3oNi5\":[\"Email\"],\"OBcj5W\":[\"This will invalidate the current \",[\"label\"],\" URL. You'll need to update it in \",[\"label\"],\".\"],\"OL8hbM\":[\"New password must be at least 8 characters\"],\"ONWvwQ\":[\"Upload\"],\"OPFjyX\":[\"Install the <0>Webhook plugin<1/> from Jellyfin's plugin catalog\"],\"OW/+RD\":[\"Watch history\"],\"OZdaTZ\":[\"Person\"],\"OvO76u\":[\"Back to Login\"],\"OvdFIZ\":[\"Season watched\"],\"P2FLLe\":[\"View release\"],\"PBdLfg\":[\"No titles found for this genre.\"],\"PQ3qDa\":[\"Fetching your library data from \",[\"source\"],\"...\"],\"PjNoxI\":[\"Scheduled backup\"],\"Pn2B7/\":[\"Current password\"],\"PnEbL/\":[\"Rated \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"star\"],\"other\":[\"stars\"]}]],\"Pwqkdw\":[\"Loading…\"],\"Py87xY\":[\"Authorization succeeded but failed to fetch your library. Please try again.\"],\"Q3MPWA\":[\"Update password\"],\"QHcLEN\":[\"Connected\"],\"QK4UIx\":[\"Mark Watched\"],\"Qjlym2\":[\"Failed to create account\"],\"Qm1NmK\":[\"OR\"],\"Qoq+GP\":[\"Read more\"],\"QphVZW\":[\"Can't reach server\"],\"QqLJHH\":[\"This Year\"],\"R0yu2l\":[\"Catch up\"],\"R4YBui\":[\"Search for movies and TV shows to start tracking\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"RIR15/\":[\"Radarr List URL\"],\"RLe7Vk\":[\"Checking…\"],\"ROq8cl\":[\"Failed to parse file\"],\"RQq8Si\":[\"Registration opened\"],\"S0soqb\":[\"Failed to remove profile picture\"],\"S1McZh\":[\"Failed to upload avatar\"],\"S2ble5\":[[\"0\"],\" movies, \",[\"1\"],\" episodes\"],\"S2qPRR\":[\"Search movies & TV shows…\"],\"SDND4q\":[\"Not configured\"],\"SFdAk9\":[\"Unwatched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Unwatch all\"],\"SbS+Bm\":[\"Regenerate URL\"],\"SlfejT\":[\"Error\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"Up next\"],\"SyPRjk\":[\"Sofa will automatically log movies and episodes when you finish watching them\"],\"T0/7WG\":[\"Next backup \",[\"distance\"]],\"TEaX6q\":[\"Backup deleted\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Profile picture removed\"],\"TqyQQS\":[\"Enable the <0>Playback event category\"],\"Tz0i8g\":[\"Settings\"],\"U+FxtW\":[\"Track what you watch. Know what's next.<0/>Your library, your data, your rules.\"],\"U3pytU\":[\"Admin\"],\"UC+OWB\":[\"Toggle open registration\"],\"UDMjsP\":[\"Quick Actions\"],\"UmQ6Fe\":[\"Purge image cache?\"],\"UtDm3q\":[\"URL copied to clipboard\"],\"V1Kh9Z\":[\"Episodes \",[\"select\"]],\"V6uzvC\":[\"More Like This\"],\"V9CuQ+\":[\"Connect to \",[\"source\"]],\"VAcXNz\":[\"Wednesday\"],\"VKyhZK\":[\"Title not found\"],\"VQvpro\":[\"Paste the Sonarr URL above into the List URL field\"],\"VhMDMg\":[\"Change Password\"],\"Vx0ayx\":[\"Failed to mark some episodes\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recommended\"],\"WMCwmR\":[\"Check for updates\"],\"WP48q2\":[\"Image Cache\"],\"WT1Ibn\":[\"Last run\"],\"Wb3E4g\":[\"Run now\"],\"WgF2UQ\":[\"You're running v\",[\"0\"],\".\"],\"WtWhSi\":[\"Rating removed\"],\"Wy/3II\":[\"Last polled \",[\"0\"]],\"XFCSYs\":[\"Cast\"],\"XN23JY\":[\"This will delete un-enriched stub titles that aren't in any user's library and clean up orphaned person records. Deleted titles will be re-imported if accessed again.\"],\"XZwihE\":[\"Ready — nothing received yet\"],\"XjTduw\":[\"Upload picture\"],\"YEGzVq\":[\"Failed to connect \",[\"label\"]],\"YErf89\":[\"Failed to purge metadata cache\"],\"YQ768h\":[\"Scene not found\"],\"YiRsXK\":[\"Clear Recently Viewed?\"],\"Yjp1zf\":[\"Don't have a server?\"],\"YqMfa9\":[\"Review what was found and choose what to import.\"],\"ZGUYm0\":[\"Ready — not polled yet\"],\"ZQKLI1\":[\"Danger Zone\"],\"ZVZUoU\":[[\"0\"],\" cached images\"],\"ZWTQ81\":[\"Watch on \",[\"name\"]],\"a3LDKx\":[\"Security\"],\"aLBUiR\":[\"Keeping <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" backups.\"],\"aM0+kY\":[\"Purged \",[\"0\",\"plural\",{\"one\":[\"#\",\" stale title\"],\"other\":[\"#\",\" stale titles\"]}],\" and \",[\"1\",\"plural\",{\"one\":[\"#\",\" orphaned person\"],\"other\":[\"#\",\" orphaned persons\"]}]],\"aO1AxG\":[\"Episode unwatched\"],\"aV/hDI\":[\"Failed to disconnect \",[\"label\"]],\"acbSg0\":[\"Double tap to filter by \",[\"label\"]],\"agE7k4\":[\"Rated \",[\"stars\",\"plural\",{\"one\":[\"#\",\" star\"],\"other\":[\"#\",\" stars\"]}]],\"alPRaV\":[\"Titles on your Sofa watchlist will be automatically added for download when Radarr polls this list (every 12 hours by default)\"],\"aourBv\":[\"Scheduled backups enabled\"],\"apLLSU\":[\"Are you sure you want to sign out?\"],\"atc9MA\":[\"Open Emby, go to <0>Settings > Webhooks\"],\"auVUJO\":[\"Restore database?\"],\"ayqfr4\":[[\"label\"],\" URL regenerated\"],\"b/8KCH\":[\"This will mark every episode of this show as watched. You can undo this later by unmarking individual seasons.\"],\"b3Thhd\":[\"Upload failed\"],\"b5DFtH\":[\"Set password\"],\"bHYIks\":[\"Sign Out\"],\"bITrbE\":[\"Purge all\"],\"bNmdjU\":[\"Watchlist\"],\"bTRwag\":[\"Remove from Library\"],\"bXMotV\":[\"Marked as watched\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Page Not Found\"],\"c1ssjI\":[\"Importing from \",[\"source\"]],\"c3b0B0\":[\"Get Started\"],\"c4b9Dm\":[\"No results for \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Go to Dashboard\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" ratings\"],\"cnGeoo\":[\"Delete\"],\"cpE88+\":[\"Create your account\"],\"d/6MoL\":[\"Manage your account and preferences\"],\"dA7BWh\":[\"Requires Emby Server 4.7.9+ and an active Emby Premiere license.\"],\"dEgA5A\":[\"Cancel\"],\"dTZwve\":[\"Marked all episodes as watched\"],\"dUCJry\":[\"Newest\"],\"ddwpAr\":[\"Warnings (\",[\"0\"],\")\"],\"e/ToF5\":[\"Sign in with \",[\"0\"]],\"e9sZMS\":[\"This will permanently delete the backup from <0>\",[\"0\"],\". This cannot be undone.\"],\"eFRooE\":[\"Last run failed\"],\"eM39Om\":[\"Watched all of \",[\"seasonLabel\"]],\"eZjYb8\":[\"Writer\"],\"ecUA8p\":[\"Today\"],\"evBxZy\":[\"Where to Watch\"],\"ezDa1h\":[\"Open docs\"],\"f+m696\":[\"An unexpected error occurred while loading this page. You can try again or head back to the dashboard.\"],\"f/AKdU\":[\"Are you sure you want to disconnect \",[\"label\"],\"? The current URL will stop working.\"],\"f7ax8J\":[\"Open in browser…\"],\"fMPkxb\":[\"Show more\"],\"fNMqNn\":[\"Popular TV Shows\"],\"fObVvy\":[\"Profile picture updated\"],\"fRettQ\":[[\"0\"],\" items\"],\"fUDRF9\":[\"Watchlisted\"],\"fcWrnU\":[\"Sign out\"],\"fgLNSM\":[\"Register\"],\"fsAEqk\":[\"Continue Watching\"],\"fzAeQI\":[\"Registering on \",[\"serverHost\"]],\"g+gBfk\":[\"Parsing...\"],\"g4JYff\":[\"Imported \",[\"0\"],\" items from \",[\"1\"]],\"gKtb5i\":[\"Titles on your Sofa watchlist will be automatically added for download when Sonarr polls this list (every 6 hours by default)\"],\"gaIAMq\":[\"Remove picture\"],\"gbEEMp\":[\"Delete backup\"],\"gcNLi0\":[\"Update checks enabled\"],\"gmB6oO\":[\"Schedule\"],\"h/T5Yb\":[\"Open registration\"],\"h4yKYk\":[\"Next run\"],\"h7MgpO\":[\"Keyboard Shortcuts\"],\"hTXYdY\":[\"Failed to create backup\"],\"hXYY5Q\":[\"Unwatched all of \",[\"0\"]],\"he3ygx\":[\"Copy\"],\"hjGupC\":[\"Lost connection to import. Check status in settings.\"],\"hlqjFc\":[\"In library\"],\"hou0tP\":[\"Stream\"],\"hty0d5\":[\"Monday\"],\"i0qMbr\":[\"Home\"],\"i9rcQ/\":[\"Movies\"],\"iGma9e\":[\"Update failed\"],\"iSLIjg\":[\"Connect\"],\"iWv3ck\":[\"Failed to catch up\"],\"iXZ09g\":[\"Mark as Completed\"],\"id08cd\":[\"Watched S\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Add to Library\"],\"ihn4zD\":[\"Search…\"],\"itDEco\":[\"Already have an account? Sign in\"],\"itheEn\":[\"With Ads\"],\"iwCRIF\":[\"You'll be signed out to change the server URL.\"],\"j5GBIy\":[\"Open Radarr, go to Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" backups · last <0/>\"],\"jB3sfe\":[\"Manual backup\"],\"jFnMJ8\":[\"Double tap to clear this filter\"],\"jQsPwL\":[\"Scheduled backups disabled\"],\"jSjGeu\":[[\"0\"],\" items have no external IDs and will be resolved by title search, which may be less accurate.\"],\"jX6Gzg\":[\"This will replace your entire database with the uploaded file. A safety backup of your current data will be created first. Active sessions may need to refresh after restore.\"],\"jiHVUy\":[\"Pre-restore backup\"],\"k6c41p\":[\"Background jobs\"],\"kBDOjB\":[\"Backup schedule\"],\"kkDQ8m\":[\"Thursday\"],\"klOeIX\":[\"Failed to change password\"],\"ks3XeZ\":[\"Open Sonarr, go to Settings > Import Lists\"],\"kvuCtu\":[\"Something went wrong while loading this title. Please try again.\"],\"kx0s+n\":[\"Results\"],\"l2wcoS\":[\"Last run succeeded\"],\"l3s5ri\":[\"Import\"],\"lCF0wC\":[\"Refresh\"],\"lJ1yo4\":[\"Failed to sign in\"],\"lVqzRx\":[\"Click <0>Add Webhook and paste the URL above\"],\"lXkUEV\":[\"Availability\"],\"lcLe89\":[\"Search for movies, TV shows, or run commands\"],\"lfVyvz\":[\"Add to Watchlist\"],\"llDXYJ\":[\"Backups\"],\"llkZR0\":[\"Could not load integrations\"],\"ln9/n9\":[\"Don't have an account?\"],\"lpIMne\":[\"Passwords do not match\"],\"lqY3WY\":[\"Change Server\"],\"luoodD\":[\"Setup required\"],\"m5WhJy\":[\"Automatic update checks\"],\"mIx58S\":[\"Purge images\"],\"mYBORk\":[\"Movie\"],\"ml9cU0\":[\"Failed to regenerate \",[\"label\"],\" URL\"],\"mqwkjd\":[\"Health status\"],\"mqxHH7\":[\"Go to Explore\"],\"mzI/c+\":[\"Download\"],\"n1ekoW\":[\"Sign In\"],\"n3Pzd7\":[\"Backup created\"],\"nBHvPL\":[\"Cancel editing\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" image\"],\"other\":[\"#\",\" images\"]}]],\"nO0Qnj\":[\"Your code:\"],\"nRP1xx\":[\"Need more help?\"],\"nV1LjT\":[\"Enable the <0>Playback Stop notification type\"],\"nVsE67\":[\"Mark as Watching\"],\"nZ7lF1\":[\"Device code expired. Please try again.\"],\"nbfdhU\":[\"Integrations\"],\"nbmpf9\":[\"Purge metadata\"],\"nnKJTm\":[\"Failed to mark all episodes as watched\"],\"nszbQG\":[\"No backups yet\"],\"nuh/Wq\":[\"Webhook URL\"],\"nwtY4N\":[\"Something went wrong\"],\"oAIA3w\":[\"Search for movies, shows, or people\"],\"oC8IMh\":[\"Search movies, shows, people...\"],\"oNvZcA\":[\"Episodes this week\"],\"oXq+Wr\":[[\"label\"],\" connected\"],\"ogtYkT\":[\"Password updated\"],\"ojtedN\":[\"Open Radarr, go to <0>Settings > Import Lists\"],\"olMi35\":[\"Recommended for You\"],\"p+PZEl\":[\"Here's what's happening with your library\"],\"pAtylB\":[\"Not Found\"],\"pG9pq1\":[\"Deleted \",[\"0\",\"plural\",{\"one\":[\"#\",\" file\"],\"other\":[\"#\",\" files\"]}],\", freed \",[\"freed\"]],\"pWWFjv\":[\"Checked <0/>\"],\"ph76H6\":[\"Allow new users to create accounts\"],\"pjgw0N\":[\"Choose how to import your \",[\"0\"],\" data.\"],\"puo3W3\":[\"Redirecting…\"],\"q3GraM\":[\"...and \",[\"0\"],\" more\"],\"q6nrFE\":[\"died at \",[\"age\"]],\"q6pUQ9\":[\"Upload a .db file to replace the current database. A safety backup is created first.\"],\"q8yluz\":[\"Your name\"],\"qA6VR5\":[\"Requires <0>Emby Server 4.7.9+ and an active <1>Emby Premiere<2/> license.\"],\"qF2IBM\":[\"Movies this month\"],\"qHbApt\":[\"Failed to load backup schedule settings.\"],\"qLB1zX\":[\"Upload a \",[\"0\"],\" export from your \",[\"1\"],\" account settings.\"],\"qPNzfu\":[\"Update checks disabled\"],\"qWoML/\":[\"Add a new webhook and paste the URL above\"],\"qiOIiY\":[\"Buy\"],\"qn1X6N\":[\"Failed to update registration setting\"],\"qqWcBV\":[\"Completed\"],\"qqeAJM\":[\"Never\"],\"r9aDAY\":[[\"count\"],\" earlier \",[\"count\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}],\" unwatched\"],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Server Health\"],\"rdymVD\":[\"Trigger job\"],\"rtir7c\":[\"unknown\"],\"s0U4ZZ\":[\"TV episodes\"],\"s4vVUm\":[\"Could not load person details\"],\"s9dVME\":[\"Failed to unmark episode\"],\"sGH11W\":[\"Server\"],\"sl/qWH\":[\"Upload profile picture\"],\"sstysK\":[\"Failed to mark episode\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episodes\"],\"t/Ch8S\":[\"Marked as watching\"],\"t/YqKh\":[\"Remove\"],\"tfDRzk\":[\"Save\"],\"tiymc0\":[\"Something went wrong…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episode\"],\"other\":[\"episodes\"]}]],\"uBAxNB\":[\"Editor\"],\"uBrbSu\":[\"Failed to start \",[\"0\"],\" connection\"],\"uM6jnS\":[\"Restore failed\"],\"uMrJrX\":[\"Admin only\"],\"uswLvZ\":[\"The title you're looking for doesn't exist or may have been removed from the database.\"],\"uxOntd\":[[\"watchedCount\"],\" of \",[\"0\"],\" episodes watched\"],\"v2CA3w\":[\"Change Photo\"],\"v5ipVu\":[\"Mark all episodes as watched?\"],\"vKfeax\":[\"Open Emby, go to Settings > Webhooks\"],\"vXIe7J\":[\"Language\"],\"vuCCZ7\":[\"Failed to parse import data\"],\"vwKERN\":[\"Failed to delete backup\"],\"w8pqsh\":[\"Mark All Watched\"],\"wA7B2T\":[\"New accounts are not being accepted right now. Contact the admin if you need access.\"],\"wGFX13\":[\"Starting at\"],\"wR1UAy\":[\"Popular Movies\"],\"wRWcdL\":[\"Play trailer\"],\"wThGrS\":[\"App Settings\"],\"wZK4Xg\":[\"Never run\"],\"wdLxgL\":[\"Member since \",[\"memberSince\"]],\"wja8aL\":[\"Untitled\"],\"wtGebH\":[\"The person you're looking for doesn't exist or may have been removed from the database.\"],\"wtsbt5\":[\"Add to watchlist\"],\"wtuVU4\":[\"Frequency\"],\"wx7pwA\":[\"Mark as Watched\"],\"x4ZiTl\":[\"Setup instructions\"],\"xCJdfg\":[\"Clear\"],\"xGVfLh\":[\"Continue\"],\"xLoCm2\":[\"Check configuration\"],\"xSrU2g\":[[\"healthyCount\"],\" of \",[\"0\"],\" jobs healthy\"],\"xazqmy\":[\"Seasons\"],\"xbBXhy\":[\"Periodically check GitHub for new Sofa releases\"],\"xrh2/M\":[\"Failed to mark as watched\"],\"y3e9pF\":[\"Delete backup?\"],\"y6Urel\":[\"Next Episode\"],\"yGvjAo\":[\"Update available: \",[\"0\"]],\"yKu/3Y\":[\"Restore\"],\"yYxB17\":[\"Clear all\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Database restored. Reloading...\"],\"ygo0l/\":[\"Start tracking movies and shows\"],\"yvwIbI\":[\"Upload export file\"],\"yz7wBu\":[\"Close\"],\"z1U/Fh\":[\"Rating\"],\"z5evln\":[\"No internet connection\"],\"zAvS8w\":[\"Sign in to continue\"],\"zEqK2w\":[\"The page you're looking for doesn't exist.\"],\"zFkiTv\":[\"Install the Webhook plugin from Jellyfin's plugin catalog\"],\"zNyR4f\":[\"Set your preferred quality profile and root folder\"],\"za8Le/\":[\"Registration Closed\"],\"zb77GC\":[\"Rent\"],\"ztAdhw\":[\"Name updated\"]}")as Messages; \ No newline at end of file +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"+5kO8P\":[\"Sábado\"],\"+6i0lS\":[\"Buscando seu histórico de exibição, lista de desejos e avaliações...\"],\"+Cv+V9\":[\"Remover da biblioteca\"],\"+JkEpu\":[\"Esta página ficou no chão da sala de montagem. Pode ter sido movida, removida ou nunca ter passado do roteiro.\"],\"+K0AvT\":[\"Desconectar\"],\"+N0l5/\":[\"Conectado a <0>\",[\"serverHost\"],\". Toque para alterar.\"],\"+gLHYi\":[\"Falha ao carregar título\"],\"+j1ex/\":[\"Falha ao remover da biblioteca\"],\"+nF1ZO\":[\"Remover Foto\"],\"/+6dvC\":[\"Erros (\",[\"0\"],\")\"],\"/BBXeA\":[\"Conectando ao servidor...\"],\"/DwR+n\":[\"Criando…\"],\"/XtbPO\":[[\"0\"],\" titles\"],\"/cg+QV\":[\"Marcar todos\"],\"/gQXGv\":[\"Falha ao atualizar status\"],\"/nT6AE\":[\"Nova senha\"],\"/sHc1/\":[\"Verificação de atualização\"],\"0+dyau\":[\"Falha ao atualizar configuração de retenção\"],\"0BFJKK\":[\"Autorização negada. Tente novamente.\"],\"0GHb20\":[\"Limpar cache de metadados?\"],\"0IBW21\":[\"Falha ao limpar caches\"],\"0gH/sc\":[\"Remover foto de perfil\"],\"1+P9RR\":[\"Mudar para \",[\"0\"]],\"12cc1j\":[\"Assistindo\"],\"12lVOl\":[\"Rastreador de filmes e séries auto-hospedado\"],\"1B4z0M\":[\"Filmografia\"],\"1J4Ek0\":[\"Faça backup automático do banco de dados com agendamento\"],\"1JhxXW\":[\"Episódio \",[\"0\"],\", \",[\"episodeLabel\"]],\"1N6wNP\":[\"Opções de importação\"],\"1Qz4uG\":[\"Ative a categoria de evento \\\"Playback\\\"\"],\"1hMWR6\":[\"Criar conta\"],\"1jHIjh\":[\"Todos os episódios de \",[\"seasonName\"],\" assistidos\"],\"1vSYsG\":[\"Baixar backup\"],\"1wL1tj\":[\"Série\"],\"2FletP\":[[\"0\",\"plural\",{\"one\":[\"#\",\" título removido\"],\"other\":[\"#\",\" títulos removidos\"]}],\", \",[\"1\",\"plural\",{\"one\":[\"#\",\" pessoa\"],\"other\":[\"#\",\" pessoas\"]}],\", \",[\"2\",\"plural\",{\"one\":[\"#\",\" arquivo\"],\"other\":[\"#\",\" arquivos\"]}],\" (\",[\"freed\"],\" liberado)\"],\"2Fsd9r\":[\"Este Mês\"],\"2MPcep\":[\"Importação concluída\"],\"2Mu33Z\":[\"Gerenciamento de cache\"],\"2POOFK\":[\"Grátis\"],\"2Pt2NY\":[\"Isso removerá todos os itens do seu histórico.\"],\"2fCpt5\":[\"Voltar ao início\"],\"2pPBp6\":[\"Em alta hoje\"],\"39y5bn\":[\"Sexta-feira\"],\"3Blefz\":[\"Avaliações\"],\"3JTlG8\":[\"Pesquisas Recentes\"],\"3Jy8bM\":[\"Filmes \",[\"select\"]],\"3L9OuQ\":[\"Episódio \",[\"0\"]],\"3T8ziB\":[\"Criar uma conta\"],\"3hELxX\":[\"Insira a URL do seu servidor Sofa para começar\"],\"4fxLkp\":[\"Abra o Sonarr, vá para <0>Settings > Import Lists\"],\"4kpBqM\":[\"Último evento \",[\"0\"]],\"4uUjVO\":[\"Produtor\"],\"4x+A56\":[\"Relatório de uso anônimo\"],\"5IShvp\":[\"Importar \",[\"totalItems\"],\" itens\"],\"5IYJSv\":[\"Explorar títulos\"],\"5Y4mym\":[\"Importar de \",[\"0\"]],\"5ZzgbQ\":[\"Conectar \",[\"0\"]],\"5fEnbK\":[\"Falha ao atualizar configuração de backup agendado\"],\"5lWFkC\":[\"Entrar\"],\"5v9C16\":[\"Conectado a \",[\"source\"]],\"623bR4\":[\"Falha ao acionar tarefa\"],\"6HN0yh\":[\"Abra o Plex, vá para Settings > Webhooks\"],\"6TNjOJ\":[\"Falha ao atualizar avaliação\"],\"6TfUy6\":[\"últimos \",[\"value\"]],\"6V3Ea3\":[\"Copiado\"],\"6YtxFj\":[\"Nome\"],\"6exX+8\":[\"Regenerar\"],\"6gRgw8\":[\"Tentar novamente\"],\"6lGV3K\":[\"Mostrar menos\"],\"76++pR\":[\"Avisos\"],\"77DIAu\":[\"Acesse Dashboard > Plugins > Webhook\"],\"7Bj3x9\":[\"Falhou\"],\"7D50KC\":[[\"label\"],\" desconectado\"],\"7GfM5w\":[\"Vistos Recentemente\"],\"7L01XJ\":[\"Ações\"],\"7eMo+U\":[\"Ir para Início\"],\"7p5kLi\":[\"Painel\"],\"85eoJ1\":[\"Agendamento atualizado\"],\"8B9E2D\":[\"Dia:\"],\"8YwF1J\":[\"Acesse <0>Dashboard > Plugins > Webhook\"],\"8ZsakT\":[\"Senha\"],\"8tjQCz\":[\"Explorar\"],\"8vNtLy\":[\"Cole a URL do Radarr acima no campo URL da Lista\"],\"8wYDMp\":[\"Já tem uma conta?\"],\"9AE3vb\":[\"Abra o Plex, vá para <0>Settings > Webhooks<1/>\"],\"9GW0ZB\":[\"A importação ainda está em andamento em segundo plano. Verifique mais tarde.\"],\"9NyAH9\":[\"Ignorado\"],\"9Xhrps\":[\"Falha ao conectar\"],\"9ZLGbA\":[\"backups.\"],\"9eF5oV\":[\"Bem-vindo de volta\"],\"9rG25a\":[\"URL do Servidor\"],\"A+0rLe\":[\"Marcado como concluído\"],\"AOHgZp\":[\"Episódios\"],\"AOddWK\":[\"Conectar \",[\"label\"]],\"ATfxL/\":[\"Trailer\"],\"AVlZoM\":[\"Ambiente\"],\"Acf6vF\":[\"Salvar nome\"],\"AdoUfN\":[\"Falha ao adicionar à lista de desejos\"],\"AeXO77\":[\"Conta\"],\"AjtYj0\":[\"Na Lista de Desejos\"],\"Avee+B\":[\"Falha ao atualizar nome\"],\"B2R3xD\":[\"Ativar/desativar backups agendados\"],\"BEVzjL\":[\"Importação falhou\"],\"BQnS5I\":[\"Abrir \",[\"source\"],\" para inserir o código\"],\"BUnoSB\":[[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"backup armazenado\"],\"other\":[\"backups armazenados\"]}]],\"BpttUI\":[\"Em Alta Hoje\"],\"BrrIs8\":[\"Armazenamento\"],\"BskWMl\":[\"Inacessível\"],\"BzEFor\":[\"ou\"],\"CGDHFb\":[\"Adicione um <0>Generic Destination e cole a URL acima\"],\"CGExDN\":[\"Falha ao limpar cache de imagens\"],\"CHeXFE\":[\"Status atualizado\"],\"CKyk7Q\":[\"Voltar\"],\"CaB/+I\":[\"Bem-vindo de volta, \",[\"name\"]],\"CodnUh\":[\"Removido da biblioteca\"],\"CpzGJY\":[\"Isso pode levar alguns minutos para bibliotecas grandes. Por favor, não feche esta aba.\"],\"CuPxpd\":[\"Requer uma assinatura ativa do <0>Plex Pass<1/>.\"],\"CzBN6D\":[\"Começar a explorar\"],\"D+R2Xs\":[\"Iniciando importação...\"],\"D3C4Yx\":[\"A senha atual é obrigatória\"],\"DBC3t5\":[\"Domingo\"],\"DI4lqs\":[\"Pessoa não encontrada\"],\"DKBbJf\":[\"Adicionado \\\"\",[\"titleName\"],\"\\\" à lista de desejos\"],\"DPfwMq\":[\"Concluído\"],\"DZse/o\":[\"Adicione um \\\"Generic Destination\\\" e cole a URL acima\"],\"E/QGRL\":[\"Desativado\"],\"E6nRW7\":[\"Copiar URL\"],\"EWQlBH\":[\"Sua biblioteca está vazia\"],\"EWaCfj\":[\"Insira sua senha atual e escolha uma nova.\"],\"Eeo/Gy\":[\"Falha ao atualizar configuração\"],\"Efn6WU\":[\"Isso excluirá todos os títulos stub não enriquecidos e todas as imagens em cache do disco. Tudo será reimportado e baixado novamente conforme necessário.\"],\"Etp5if\":[\"Importação de \",[\"source\"],\" concluída.\"],\"F006BN\":[\"Importar de \",[\"source\"]],\"FNvDMc\":[\"Esta Semana\"],\"FWSp+7\":[\"Insira o código abaixo no site do \",[\"source\"],\" para autorizar o Sofa.\"],\"FXN0ro\":[\"Recomendações\"],\"FaU7Ag\":[\"Ative o tipo de notificação \\\"Playback Stop\\\"\"],\"FhvLDl\":[[\"watchedCount\"],\"/\",[\"0\"],\" episodes\"],\"Fo2bwm\":[\"Ator\"],\"FwRqjE\":[\"Uso de disco de cache de imagens e backups\"],\"G00fgM\":[\"últimos \",[\"n\"]],\"G3myU+\":[\"Terça-feira\"],\"GcCthe\":[\"Na Biblioteca\"],\"Gf39AA\":[[\"0\"],\" acionado\"],\"GnhfWw\":[\"Ativar/desativar verificações automáticas de atualização\"],\"GptGxg\":[\"Alterar senha\"],\"GqTZ+S\":[\"Avaliado com \",[\"ratingStars\"],\" \",[\"ratingStars\",\"plural\",{\"one\":[\"estrela\"],\"other\":[\"estrelas\"]}]],\"GrdN/F\":[\"Em dia — \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episódio marcado como assistido\"],\"other\":[\"episódios marcados como assistidos\"]}]],\"H4B5LG\":[\"Este produto usa a API do TMDB, mas não é endossado ou certificado pelo TMDB.\"],\"HBRd5n\":[\"Temporada \",[\"0\"]],\"HD+aQ7\":[\"Backups do banco de dados\"],\"HG+31u\":[\"Limpar todos os caches?\"],\"Haz+72\":[\"Isso excluirá todas as imagens TMDB em cache do disco. As imagens serão baixadas novamente automaticamente conforme necessário.\"],\"HbReP5\":[\"Marcado \\\"\",[\"titleName\"],\"\\\" como concluído\"],\"Hg6o8v\":[\"Atualizar status de saúde do sistema\"],\"HmEjnC\":[\"Último evento \",[\"timeAgo\"]],\"HvDfH/\":[\"Importado\"],\"I89uD4\":[\"Restaurando…\"],\"IRoxQm\":[\"Registro fechado\"],\"IS0nrP\":[\"Criar Conta\"],\"IY9rQ0\":[\"Libere espaço em disco limpando metadados e imagens em cache\"],\"IrC12v\":[\"Aplicativo\"],\"J28zul\":[\"Conectando...\"],\"J64cFL\":[\"Atualização da biblioteca\"],\"JKmmmN\":[\"Adicionado à lista de desejos\"],\"JN0f/Y\":[\"Conectar ao TMDB\"],\"JR6aH2\":[\"Movies \",[\"periodSelect\"]],\"JRQitQ\":[\"Confirmar nova senha\"],\"JRadFJ\":[\"Comece a registrar suas visualizações\"],\"JSwq8t\":[\"A criação de novas contas está desativada no momento.\"],\"JY5Oyv\":[\"Banco de Dados\"],\"JjsJnI\":[[\"0\"],\"/\",[\"1\"],\" episodes\"],\"JrFTcr\":[\"Conectando…\"],\"JwFbe8\":[\"Série\"],\"KDw4GX\":[\"Tentar novamente\"],\"KG6681\":[\"Episódio assistido\"],\"KIS/Sd\":[\"Sair de outras sessões\"],\"KK0ghs\":[\"Cache de imagens\"],\"KVAoFR\":[\"ilimitado\"],\"KcXJuc\":[\"Limpando...\"],\"KhtG3o\":[\"Atualizar Senha\"],\"Khux7w\":[[\"0\",\"plural\",{\"one\":[\"#\",\" título\"],\"other\":[\"#\",\" títulos\"]}]],\"KmWyx0\":[\"Tarefa\"],\"KoF0x6\":[\"idade \",[\"age\"]],\"Ksiej9\":[\"Requer uma assinatura ativa do Plex Pass.\"],\"Kx9NEt\":[\"Token inválido\"],\"Lk6Jb/\":[\"Última verificação \",[\"timeAgo\"]],\"LmEEic\":[\"Aguardando autorização...\"],\"LqKH42\":[\"Conectar com \",[\"0\"]],\"Lrpjji\":[\"Desconectar \",[\"label\"]],\"Lu6Udx\":[\"Clique em \\\"+\\\" e selecione \\\"Custom Lists\\\"\"],\"MDoX++\":[\"URL da Lista do Sonarr\"],\"MRBlCJ\":[\"Falha ao desmarcar alguns episódios\"],\"MUO7w9\":[\"Marcado \\\"\",[\"titleName\"],\"\\\" como assistido\"],\"MZbQHL\":[\"Nenhum resultado encontrado.\"],\"MdxR1u\":[\"Choose your preferred display language\"],\"MkyzAV\":[\"Autorize o Sofa a ler sua biblioteca do \",[\"0\"],\". Nenhuma senha é compartilhada.\"],\"N40H+G\":[\"Todos\"],\"N6SFhC\":[\"Entrar em vez disso\"],\"N7h106\":[\"Sofa v\",[\"0\"],\" está disponível\"],\"N9RF2M\":[\"Clique em \\\"Add Webhook\\\" e cole a URL acima\"],\"NBo4z0\":[\"Clique em <0>+ e selecione <1>Custom Lists\"],\"NICUmW\":[\"Diretor\"],\"NQzPoO\":[\"Novo backup\"],\"NSxl1l\":[\"Mais Configurações\"],\"NVF43p\":[\"Hora:\"],\"NdPMwS\":[\"Na Sua Biblioteca\"],\"NgaPSG\":[\"Falha ao atualizar agendamento\"],\"O3oNi5\":[\"E-mail\"],\"OBcj5W\":[\"Isso invalidará a URL atual do \",[\"label\"],\". Você precisará atualizá-la no \",[\"label\"],\".\"],\"OL8hbM\":[\"A nova senha deve ter pelo menos 8 caracteres\"],\"ONWvwQ\":[\"Enviar\"],\"OPFjyX\":[\"Instale o <0>plugin Webhook<1/> do catálogo de plugins do Jellyfin\"],\"OW/+RD\":[\"Histórico de exibição\"],\"OZdaTZ\":[\"Pessoa\"],\"OvO76u\":[\"Voltar ao Login\"],\"OvdFIZ\":[\"Temporada assistida\"],\"P2FLLe\":[\"Ver versão\"],\"PBdLfg\":[\"Nenhum título encontrado para este gênero.\"],\"PQ3qDa\":[\"Buscando seus dados da biblioteca em \",[\"source\"],\"...\"],\"PjNoxI\":[\"Backup agendado\"],\"Pn2B7/\":[\"Senha atual\"],\"PnEbL/\":[\"Avaliado com \",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"estrela\"],\"other\":[\"estrelas\"]}]],\"Pwqkdw\":[\"Carregando…\"],\"Py87xY\":[\"Autorização concluída, mas falha ao buscar sua biblioteca. Tente novamente.\"],\"Q3MPWA\":[\"Atualizar senha\"],\"QHcLEN\":[\"Conectado\"],\"QK4UIx\":[\"Marcar como Assistido\"],\"Qjlym2\":[\"Falha ao criar conta\"],\"Qm1NmK\":[\"OU\"],\"Qoq+GP\":[\"Ler mais\"],\"QphVZW\":[\"Não foi possível alcançar o servidor\"],\"QqLJHH\":[\"Este Ano\"],\"R0yu2l\":[\"Colocar em dia\"],\"R4YBui\":[\"Pesquise filmes e séries para começar a acompanhar\"],\"RH46vw\":[[\"0\"],\"/\",[\"1\"],\" \",[\"2\",\"plural\",{\"one\":[\"episódio\"],\"other\":[\"episódios\"]}]],\"RIR15/\":[\"URL da Lista do Radarr\"],\"RLe7Vk\":[\"Verificando…\"],\"ROq8cl\":[\"Falha ao analisar arquivo\"],\"RQq8Si\":[\"Registro aberto\"],\"S0soqb\":[\"Falha ao remover foto de perfil\"],\"S1McZh\":[\"Falha ao enviar avatar\"],\"S2ble5\":[[\"0\"],\" filmes, \",[\"1\"],\" episódios\"],\"S2qPRR\":[\"Pesquisar filmes e séries…\"],\"SDND4q\":[\"Não configurado\"],\"SFdAk9\":[\"Desmarcado T\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"SUIUkB\":[\"Desmarcar todos\"],\"SbS+Bm\":[\"Regenerar URL\"],\"SlfejT\":[\"Erro\"],\"Sp86ju\":[[\"0\"],\" ep\",[\"1\"]],\"SrfROI\":[\"A seguir\"],\"SyPRjk\":[\"O Sofa registrará automaticamente filmes e episódios quando você terminar de assisti-los\"],\"T0/7WG\":[\"Próximo backup \",[\"distance\"]],\"TEaX6q\":[\"Backup excluído\"],\"TI7IKo\":[\"Rated \",[\"0\"],\" star\",[\"1\"]],\"TMb7iE\":[\"Foto de perfil removida\"],\"TqyQQS\":[\"Ative a categoria de evento <0>Playback\"],\"Tz0i8g\":[\"Configurações\"],\"U+FxtW\":[\"Acompanhe o que você assiste. Saiba o que vem a seguir.<0/>Sua biblioteca, seus dados, suas regras.\"],\"U3pytU\":[\"Administrador\"],\"UC+OWB\":[\"Ativar/desativar registro aberto\"],\"UDMjsP\":[\"Ações Rápidas\"],\"UmQ6Fe\":[\"Limpar cache de imagens?\"],\"UtDm3q\":[\"URL copiada para a área de transferência\"],\"V1Kh9Z\":[\"Episódios \",[\"select\"]],\"V6uzvC\":[\"Mais Como Este\"],\"V9CuQ+\":[\"Conectar a \",[\"source\"]],\"VAcXNz\":[\"Quarta-feira\"],\"VKyhZK\":[\"Título não encontrado\"],\"VQvpro\":[\"Cole a URL do Sonarr acima no campo URL da Lista\"],\"VhMDMg\":[\"Alterar Senha\"],\"Vx0ayx\":[\"Falha ao marcar alguns episódios\"],\"WDC4PF\":[\"Episodes \",[\"periodSelect\"]],\"WEYdDv\":[\"Recomendado\"],\"WMCwmR\":[\"Verificar atualizações\"],\"WP48q2\":[\"Cache de Imagens\"],\"WT1Ibn\":[\"Última execução\"],\"Wb3E4g\":[\"Executar agora\"],\"WgF2UQ\":[\"Você está usando a v\",[\"0\"],\".\"],\"WtWhSi\":[\"Avaliação removida\"],\"Wy/3II\":[\"Última verificação \",[\"0\"]],\"XFCSYs\":[\"Elenco\"],\"XN23JY\":[\"Isso excluirá títulos stub não enriquecidos que não estão na biblioteca de nenhum usuário e limpará registros de pessoas órfãs. Os títulos excluídos serão reimportados se acessados novamente.\"],\"XZwihE\":[\"Pronto — nada recebido ainda\"],\"XjTduw\":[\"Enviar foto\"],\"YEGzVq\":[\"Falha ao conectar \",[\"label\"]],\"YErf89\":[\"Falha ao limpar cache de metadados\"],\"YQ768h\":[\"Cena não encontrada\"],\"YiRsXK\":[\"Limpar Vistos Recentemente?\"],\"Yjp1zf\":[\"Não tem um servidor?\"],\"YqMfa9\":[\"Revise o que foi encontrado e escolha o que importar.\"],\"ZGUYm0\":[\"Pronto — ainda não verificado\"],\"ZQKLI1\":[\"Zona de Perigo\"],\"ZVZUoU\":[[\"0\"],\" imagens em cache\"],\"ZWTQ81\":[\"Assistir em \",[\"name\"]],\"a3LDKx\":[\"Segurança\"],\"aLBUiR\":[\"Mantendo <0><1><2>\",[\"0\"],\"<3>\",[\"1\"],\" backups.\"],\"aM0+kY\":[[\"0\",\"plural\",{\"one\":[\"#\",\" título obsoleto removido\"],\"other\":[\"#\",\" títulos obsoletos removidos\"]}],\" e \",[\"1\",\"plural\",{\"one\":[\"#\",\" pessoa órfã\"],\"other\":[\"#\",\" pessoas órfãs\"]}]],\"aO1AxG\":[\"Episódio não assistido\"],\"aV/hDI\":[\"Falha ao desconectar \",[\"label\"]],\"acbSg0\":[\"Toque duas vezes para filtrar por \",[\"label\"]],\"agE7k4\":[\"Avaliado com \",[\"stars\",\"plural\",{\"one\":[\"#\",\" estrela\"],\"other\":[\"#\",\" estrelas\"]}]],\"alPRaV\":[\"Os títulos na sua lista de desejos do Sofa serão automaticamente adicionados para download quando o Radarr verificar esta lista (a cada 12 horas por padrão)\"],\"aourBv\":[\"Backups agendados ativados\"],\"apLLSU\":[\"Tem certeza que deseja sair?\"],\"atc9MA\":[\"Abra o Emby, vá para <0>Settings > Webhooks\"],\"auVUJO\":[\"Restaurar banco de dados?\"],\"ayqfr4\":[\"URL de \",[\"label\"],\" regenerada\"],\"b/8KCH\":[\"Isso marcará todos os episódios desta série como assistidos. Você pode desfazer isso mais tarde desmarcando temporadas individuais.\"],\"b3Thhd\":[\"Envio falhou\"],\"b5DFtH\":[\"Definir senha\"],\"bHYIks\":[\"Sair\"],\"bITrbE\":[\"Limpar tudo\"],\"bNmdjU\":[\"Lista de Desejos\"],\"bTRwag\":[\"Remover da Biblioteca\"],\"bXMotV\":[\"Marcado como assistido\"],\"bezGJ2\":[[\"0\"],\" images\"],\"boJlGf\":[\"Página Não Encontrada\"],\"c1ssjI\":[\"Importando de \",[\"source\"]],\"c3b0B0\":[\"Começar\"],\"c4b9Dm\":[\"Nenhum resultado para \\\"\",[\"debouncedQuery\"],\"\\\"\"],\"cQPKZt\":[\"Ir para o Painel\"],\"ccAJSB\":[\"Keeping\"],\"cgvva8\":[[\"0\"],\" avaliações\"],\"cnGeoo\":[\"Excluir\"],\"cpE88+\":[\"Crie sua conta\"],\"d/6MoL\":[\"Gerencie sua conta e preferências\"],\"dA7BWh\":[\"Requer Emby Server 4.7.9+ e uma licença ativa do Emby Premiere.\"],\"dEgA5A\":[\"Cancelar\"],\"dTZwve\":[\"Todos os episódios marcados como assistidos\"],\"dUCJry\":[\"Mais recente\"],\"ddwpAr\":[\"Avisos (\",[\"0\"],\")\"],\"e/ToF5\":[\"Entrar com \",[\"0\"]],\"e9sZMS\":[\"Isso excluirá permanentemente o backup de <0>\",[\"0\"],\". Esta ação não pode ser desfeita.\"],\"eFRooE\":[\"Última execução falhou\"],\"eM39Om\":[\"Todos os episódios de \",[\"seasonLabel\"],\" assistidos\"],\"eZjYb8\":[\"Roteirista\"],\"ecUA8p\":[\"Hoje\"],\"evBxZy\":[\"Onde Assistir\"],\"ezDa1h\":[\"Abrir documentação\"],\"f+m696\":[\"Ocorreu um erro inesperado ao carregar esta página. Você pode tentar novamente ou voltar ao painel.\"],\"f/AKdU\":[\"Tem certeza que deseja desconectar \",[\"label\"],\"? A URL atual deixará de funcionar.\"],\"f7ax8J\":[\"Abrir no navegador…\"],\"fMPkxb\":[\"Mostrar mais\"],\"fNMqNn\":[\"Séries Populares\"],\"fObVvy\":[\"Foto de perfil atualizada\"],\"fRettQ\":[[\"0\"],\" itens\"],\"fUDRF9\":[\"Na Lista de Desejos\"],\"fcWrnU\":[\"Sair\"],\"fgLNSM\":[\"Registrar\"],\"fsAEqk\":[\"Continuar Assistindo\"],\"fzAeQI\":[\"Registrando em \",[\"serverHost\"]],\"g+gBfk\":[\"Analisando...\"],\"g4JYff\":[\"Importados \",[\"0\"],\" itens de \",[\"1\"]],\"gKtb5i\":[\"Os títulos na sua lista de desejos do Sofa serão automaticamente adicionados para download quando o Sonarr verificar esta lista (a cada 6 horas por padrão)\"],\"gaIAMq\":[\"Remover foto\"],\"gbEEMp\":[\"Excluir backup\"],\"gcNLi0\":[\"Verificações de atualização ativadas\"],\"gmB6oO\":[\"Agendamento\"],\"h/T5Yb\":[\"Registro aberto\"],\"h4yKYk\":[\"Próxima execução\"],\"h7MgpO\":[\"Atalhos de Teclado\"],\"hTXYdY\":[\"Falha ao criar backup\"],\"hXYY5Q\":[\"Desmarcados todos os episódios de \",[\"0\"]],\"he3ygx\":[\"Copiar\"],\"hjGupC\":[\"Conexão de importação perdida. Verifique o status nas configurações.\"],\"hlqjFc\":[\"Na biblioteca\"],\"hou0tP\":[\"Streaming\"],\"hty0d5\":[\"Segunda-feira\"],\"i0qMbr\":[\"Início\"],\"i9rcQ/\":[\"Filmes\"],\"iGma9e\":[\"Atualização falhou\"],\"iSLIjg\":[\"Conectar\"],\"iWv3ck\":[\"Falha ao colocar em dia\"],\"iXZ09g\":[\"Marcar como Concluído\"],\"id08cd\":[\"Assistido T\",[\"seasonNum\"],\" E\",[\"epNum\"]],\"ih87w/\":[\"Adicionar à Biblioteca\"],\"ihn4zD\":[\"Pesquisar…\"],\"itDEco\":[\"Já tem uma conta? Entrar\"],\"itheEn\":[\"Com Anúncios\"],\"iwCRIF\":[\"Você será desconectado para alterar a URL do servidor.\"],\"j5GBIy\":[\"Abra o Radarr, vá para Settings > Import Lists\"],\"jAe8l4\":[[\"0\"],\" backups · último <0/>\"],\"jB3sfe\":[\"Backup manual\"],\"jFnMJ8\":[\"Toque duas vezes para remover este filtro\"],\"jQsPwL\":[\"Backups agendados desativados\"],\"jSjGeu\":[[\"0\"],\" itens não têm IDs externos e serão resolvidos por pesquisa de título, o que pode ser menos preciso.\"],\"jX6Gzg\":[\"Isso substituirá todo o seu banco de dados pelo arquivo enviado. Um backup de segurança dos seus dados atuais será criado primeiro. As sessões ativas podem precisar ser atualizadas após a restauração.\"],\"jiHVUy\":[\"Backup pré-restauração\"],\"k6c41p\":[\"Tarefas em segundo plano\"],\"kBDOjB\":[\"Agendamento de backup\"],\"kkDQ8m\":[\"Quinta-feira\"],\"klOeIX\":[\"Falha ao alterar senha\"],\"ks3XeZ\":[\"Abra o Sonarr, vá para Settings > Import Lists\"],\"kvuCtu\":[\"Algo deu errado ao carregar este título. Tente novamente.\"],\"kx0s+n\":[\"Resultados\"],\"l2wcoS\":[\"Última execução bem-sucedida\"],\"l3s5ri\":[\"Importar\"],\"lCF0wC\":[\"Atualizar\"],\"lJ1yo4\":[\"Falha ao entrar\"],\"lVqzRx\":[\"Clique em <0>Add Webhook e cole a URL acima\"],\"lXkUEV\":[\"Disponibilidade\"],\"lcLe89\":[\"Pesquise filmes, séries ou execute comandos\"],\"lfVyvz\":[\"Adicionar à Lista de Desejos\"],\"llDXYJ\":[\"Backups\"],\"llkZR0\":[\"Não foi possível carregar as integrações\"],\"ln9/n9\":[\"Não tem uma conta?\"],\"lpIMne\":[\"As senhas não coincidem\"],\"lqY3WY\":[\"Alterar Servidor\"],\"luoodD\":[\"Configuração necessária\"],\"m5WhJy\":[\"Verificações automáticas de atualização\"],\"mIx58S\":[\"Limpar imagens\"],\"mYBORk\":[\"Filme\"],\"ml9cU0\":[\"Falha ao regenerar URL de \",[\"label\"]],\"mqwkjd\":[\"Status de saúde\"],\"mqxHH7\":[\"Ir para Explorar\"],\"mzI/c+\":[\"Baixar\"],\"n1ekoW\":[\"Entrar\"],\"n3Pzd7\":[\"Backup criado\"],\"nBHvPL\":[\"Cancelar edição\"],\"nJw77c\":[[\"0\",\"plural\",{\"one\":[\"#\",\" imagem\"],\"other\":[\"#\",\" imagens\"]}]],\"nO0Qnj\":[\"Seu código:\"],\"nRP1xx\":[\"Precisa de mais ajuda?\"],\"nV1LjT\":[\"Ative o tipo de notificação <0>Playback Stop\"],\"nVsE67\":[\"Marcar como Assistindo\"],\"nZ7lF1\":[\"Código do dispositivo expirou. Tente novamente.\"],\"nbfdhU\":[\"Integrações\"],\"nbmpf9\":[\"Limpar metadados\"],\"nnKJTm\":[\"Falha ao marcar todos os episódios como assistidos\"],\"nszbQG\":[\"Nenhum backup ainda\"],\"nuh/Wq\":[\"URL do Webhook\"],\"nwtY4N\":[\"Algo deu errado\"],\"oAIA3w\":[\"Pesquise filmes, séries ou pessoas\"],\"oC8IMh\":[\"Pesquisar filmes, séries, pessoas...\"],\"oNvZcA\":[\"Episódios desta semana\"],\"oXq+Wr\":[[\"label\"],\" conectado\"],\"ogtYkT\":[\"Senha atualizada\"],\"ojtedN\":[\"Abra o Radarr, vá para <0>Settings > Import Lists\"],\"olMi35\":[\"Recomendado para Você\"],\"p+PZEl\":[\"Veja o que está acontecendo com sua biblioteca\"],\"pAtylB\":[\"Não Encontrado\"],\"pG9pq1\":[[\"0\",\"plural\",{\"one\":[\"#\",\" arquivo excluído\"],\"other\":[\"#\",\" arquivos excluídos\"]}],\", \",[\"freed\"],\" liberado\"],\"pWWFjv\":[\"Verificado <0/>\"],\"ph76H6\":[\"Permitir que novos usuários criem contas\"],\"pjgw0N\":[\"Escolha como importar seus dados do \",[\"0\"],\".\"],\"puo3W3\":[\"Redirecionando…\"],\"q3GraM\":[\"...e mais \",[\"0\"]],\"q6nrFE\":[\"faleceu aos \",[\"age\"]],\"q6pUQ9\":[\"Envie um arquivo .db para substituir o banco de dados atual. Um backup de segurança é criado primeiro.\"],\"q8yluz\":[\"Seu nome\"],\"qA6VR5\":[\"Requer <0>Emby Server 4.7.9+ e uma licença ativa do <1>Emby Premiere<2/>.\"],\"qF2IBM\":[\"Filmes este mês\"],\"qHbApt\":[\"Falha ao carregar as configurações do agendamento de backup.\"],\"qLB1zX\":[\"Envie um export \",[\"0\"],\" das configurações da sua conta \",[\"1\"],\".\"],\"qPNzfu\":[\"Verificações de atualização desativadas\"],\"qWoML/\":[\"Adicione um novo webhook e cole a URL acima\"],\"qiOIiY\":[\"Comprar\"],\"qn1X6N\":[\"Falha ao atualizar configuração de registro\"],\"qqWcBV\":[\"Concluído\"],\"qqeAJM\":[\"Nunca\"],\"r9aDAY\":[[\"count\"],\" \",[\"count\",\"plural\",{\"one\":[\"episódio anterior não assistido\"],\"other\":[\"episódios anteriores não assistidos\"]}]],\"rLgPvm\":[\"Backup\"],\"rSTpb5\":[\"Saúde do Servidor\"],\"rdymVD\":[\"Acionar tarefa\"],\"rtir7c\":[\"desconhecido\"],\"s0U4ZZ\":[\"Episódios de séries\"],\"s4vVUm\":[\"Não foi possível carregar os detalhes da pessoa\"],\"s9dVME\":[\"Falha ao desmarcar episódio\"],\"sGH11W\":[\"Servidor\"],\"sl/qWH\":[\"Enviar foto de perfil\"],\"sstysK\":[\"Falha ao marcar episódio\"],\"stZeiF\":[[\"watched\"],\"/\",[\"total\"],\" episódios\"],\"t/Ch8S\":[\"Marcado como assistindo\"],\"t/YqKh\":[\"Remover\"],\"tfDRzk\":[\"Salvar\"],\"tiymc0\":[\"Algo deu errado…\"],\"u9ugU7\":[[\"watchedCount\"],\"/\",[\"0\"],\" \",[\"1\",\"plural\",{\"one\":[\"episódio\"],\"other\":[\"episódios\"]}]],\"uBAxNB\":[\"Editor\"],\"uBrbSu\":[\"Falha ao iniciar conexão com \",[\"0\"]],\"uM6jnS\":[\"Restauração falhou\"],\"uMrJrX\":[\"Apenas administradores\"],\"uswLvZ\":[\"O título que você está procurando não existe ou pode ter sido removido do banco de dados.\"],\"uxOntd\":[[\"watchedCount\"],\" de \",[\"0\"],\" episódios assistidos\"],\"v2CA3w\":[\"Alterar Foto\"],\"v5ipVu\":[\"Marcar todos os episódios como assistidos?\"],\"vKfeax\":[\"Abra o Emby, vá para Settings > Webhooks\"],\"vXIe7J\":[\"Idioma\"],\"vuCCZ7\":[\"Falha ao analisar dados de importação\"],\"vwKERN\":[\"Falha ao excluir backup\"],\"w8pqsh\":[\"Marcar Todos como Assistidos\"],\"wA7B2T\":[\"Novas contas não estão sendo aceitas agora. Entre em contato com o administrador se precisar de acesso.\"],\"wGFX13\":[\"Iniciando às\"],\"wR1UAy\":[\"Filmes Populares\"],\"wRWcdL\":[\"Reproduzir trailer\"],\"wThGrS\":[\"Configurações do App\"],\"wZK4Xg\":[\"Nunca executado\"],\"wdLxgL\":[\"Membro desde \",[\"memberSince\"]],\"wja8aL\":[\"Sem título\"],\"wtGebH\":[\"A pessoa que você está procurando não existe ou pode ter sido removida do banco de dados.\"],\"wtsbt5\":[\"Adicionar à lista de desejos\"],\"wtuVU4\":[\"Frequência\"],\"wx7pwA\":[\"Marcar como Assistido\"],\"x4ZiTl\":[\"Instruções de configuração\"],\"xCJdfg\":[\"Limpar\"],\"xGVfLh\":[\"Continuar\"],\"xLoCm2\":[\"Verificar configuração\"],\"xSrU2g\":[[\"healthyCount\"],\" de \",[\"0\"],\" tarefas saudáveis\"],\"xazqmy\":[\"Temporadas\"],\"xbBXhy\":[\"Verificar periodicamente o GitHub por novas versões do Sofa\"],\"xrh2/M\":[\"Falha ao marcar como assistido\"],\"y3e9pF\":[\"Excluir backup?\"],\"y6Urel\":[\"Próximo Episódio\"],\"yGvjAo\":[\"Atualização disponível: \",[\"0\"]],\"yKu/3Y\":[\"Restaurar\"],\"yYxB17\":[\"Limpar tudo\"],\"ybtG1U\":[[\"0\"],\" backup\",[\"1\"],\" stored\"],\"yey/zg\":[\"Banco de dados restaurado. Recarregando...\"],\"ygo0l/\":[\"Comece a acompanhar filmes e séries\"],\"yvwIbI\":[\"Enviar arquivo de exportação\"],\"yz7wBu\":[\"Fechar\"],\"z1U/Fh\":[\"Avaliação\"],\"z5evln\":[\"Sem conexão com a internet\"],\"zAvS8w\":[\"Entre para continuar\"],\"zEqK2w\":[\"A página que você está procurando não existe.\"],\"zFkiTv\":[\"Instale o plugin Webhook do catálogo de plugins do Jellyfin\"],\"zNyR4f\":[\"Defina seu perfil de qualidade preferido e pasta raiz\"],\"za8Le/\":[\"Registro Fechado\"],\"zb77GC\":[\"Alugar\"],\"ztAdhw\":[\"Nome atualizado\"]}")as Messages; \ No newline at end of file