* feat(desktop): share dialog on Linux/macOS via cloudreve://share deeplink
The Explorer context menu is Windows-only; the share dialog itself is
cross-platform but had no trigger elsewhere. cloudreve://share/<encoded
local path> now routes through the same ManagerCommand::ShareLink
pipeline, and desktop/linux/ ships a cloudreve-share helper plus
Nautilus script and Dolphin service-menu glue so file managers can
reach it. OAuth callback deeplinks are unaffected.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* fix(desktop): don't drop share deep links at startup
Queue cloudreve://share/ links arriving before APP_STATE init and drain
after the sync service is up; also scan argv for a cloudreve:// URL so a
cold start launched by the file manager still opens the share dialog.
Nautilus script now reads NAUTILUS_SCRIPT_SELECTED_FILE_PATHS per line so
paths with spaces survive.
* feat(desktop): macOS share helper + file-manager install docs
cloudreve-share for macOS (open cloudreve://share/...) plus Shortcuts
Quick Action recipe for Finder. READMEs document Nautilus, Dolphin, and
Finder installation.
* feat: in-app updates (GitHub desktop, Play Android) + i18n fixes
Desktop (GitHub builds):
- tauri-plugin-updater wired to releases/latest/latest.json; minisign
keypair generated, private key in TAURI_SIGNING_PRIVATE_KEY secrets
- Startup check prompts once per version (config.prompted_update_version);
About page gains a manual 'Check for updates' entry
- New /update window: version + notes -> in-app download overlay with
progress events -> install -> restart via app.restart()
- Release workflow signs updater artifacts, uploads .sig/.app.tar.gz/
.AppImage.tar.gz, and a new updater-manifest job emits latest.json
(desktop/scripts/gen_latest_json.py); tauri-action path signs natively
- Desktop version bumped 0.2.0 -> 0.3.0 so released updates register
Android (Play builds):
- Play in-app update check on resume -> in-app dialog -> official
IMMEDIATE update sheet (app-update-ktx); once per version via prefs
- targetSdk/compileSdk 36 + AGP 8.9.3 (Play requires >= 36); bumped to
versionCode 2 / 1.1.0 — uploaded and published on internal track
i18n:
- Desktop: translated share.* + settings.notificationSettings into all
10 non-English locales; added update.* everywhere; popup time strings
(justNow/minutesAgo/...) localized via i18n.t in utils
- Frontend: added 4 keys missing from en-US (raw-key rendering):
modals.anonymous, modals.shareTargetsCount, common.save,
file.selectUser (+ event.allEventTypes for zh-CN); fixed two
mistyped keys (uplaoder->uploader, uploader:->application:uploader)
* feat(i18n): complete translations for ported premium features
- Fill ~440 missing keys per locale across application/dashboard/common
in all 10 non-en/zh-CN locales (SMS auth, SSO/OIDC errors, ACLs, paid
shares, vault, remote download, CDN routes, storage relocation, gift
codes, delegated admin, abuse reports, blob audit, etc.)
- zh-TW generated from zh-CN via OpenCC s2twp and reviewed
- Fix placeholder fidelity: restore {{eta}}/{{time}}/{{message}} and
Trans <0>/<1> tags dropped by older translations, fix malformed tags
- Android: localize Play in-app update dialog via string resources in
12 locales instead of hardcoded English
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* chore: retrigger ci
* docs: log in-app updates + full locale coverage in roadmap
---------
Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@ -253,6 +253,8 @@ Goal: Windows + macOS + Linux from the `desktop/` tree in this repo.
- [x] #167 (upstream desktop#49) — online-only thumbnails missing in Explorer: root cause was a client/server contract mismatch — the CE `/file/thumb` response carries only `url`/`expires` while the `cloudreve-api` model required `obfuscated`, failing deserialization on every thumbnail request (`E_FAIL` to Explorer; hydrated files were unaffected since Windows thumbs them locally). `obfuscated` is now `#[serde(default)]`; the decode path still runs when a server emits the flag
- [x] Linux on-demand hydration via FUSE (`fuser`) — new "On-demand" sync mode in Add Drive (Linux-only picker): remote tree projects virtually into a FUSE mount at the configured path backed by inventory; files hydrate into a private store (`~/.cloudreve/fuse-store/<id>`) on open with per-path serialization, sibling tmp dir + atomic rename, zero kernel cache TTLs; the watcher/sync engine operate on the store so hydrated edits sync normally; remote refreshes evict stale hydrated copies (event-blocked so no remote delete); engine writes gated by `local_updated_at`/`local_size` snapshots so downloads/hydrations never boomerang into uploads; `unlink`/`rename` on virtual files route through synthesized events + `MountCommand::Rename`; full-sync mode unchanged on Linux/macOS; covered by a real kernel-mount integration test (`tests/fuse_mount.rs`)
- [x] #160 (upstream desktop#34) — FileCloud-style quick share: Explorer "Share link…" submenu item opens a share dialog window (new `ManagerCommand::ShareLink` → `OpenShareDialog` event → dedicated `share` webview window + `/share` route) with permission mode (view+download / preview-only / edit / folder upload-only), expiry, password, and download limit mapped to the full `PUT /share` surface (`ShareCreateService` gained the option fields); "Copy share link" stays as the one-click public-link action alongside it; on Linux/macOS the same dialog is reachable via the `cloudreve://share/<path>` deep link — `desktop/linux/` ships a `cloudreve-share` helper plus Nautilus script and Dolphin service-menu definitions
- [x] In-app updates — desktop: `tauri-plugin-updater` checks `releases/latest/latest.json` at startup (prompted-version persisted to avoid re-nagging), `/update` window shows release notes + live download overlay + relaunch, manual check in About; minisign keypair signs updater artifacts, `updater-manifest` job publishes `latest.json` in both release workflows; Android: `app-update-ktx` IMMEDIATE flow — resume-time check → once-per-version dialog → official Play update sheet
- [x] Full locale coverage for ported features — ~440 previously-missing keys per locale filled across `application`/`dashboard`/`common` in all 10 non-en/zh locales (SMS auth, SSO errors, ACLs, paid shares, vault, CDN routes, relocation, gift codes, delegated admin, abuse reports); zh-TW via OpenCC `s2twp`; placeholder/Trans-tag fidelity audit fixed `{{eta}}`/`{{time}}`/`{{message}}` drops and malformed tags; Android update dialog localized via `values-*/strings.xml` in 12 locales
"parseResponseError":"تعذر تحليل الرد: {{msg}} ({{content}})",
"concurrentTaskNumber":"حد الحد الأقصى للمهام المتزامنة",
"dropFileHere":"أسقط ملف لتحميله"
"dropFileHere":"أسقط ملف لتحميله",
"etaSuffix":"، الوقت المتبقي {{eta}}"
},
"share":{
"statistics":"الإحصاءات",
@ -727,7 +836,19 @@
"preview":"معاينة",
"incorrectPassword":"كلمة المرور غير صحيحة.",
"shareNotExist":"رابط المشاركة غير صالح أو انتهت صلاحيته.",
"copyLinkToClipboard":"نسخ الرابط إلى الحافظة"
"copyLinkToClipboard":"نسخ الرابط إلى الحافظة",
"paidShareDes":"هذه مشاركة مدفوعة. تكلفة الشراء {{price}} نقطة وتفتح التنزيل.",
"purchaseForPoints":"شراء بـ {{price}} نقطة",
"signInToPurchase":"سجّل الدخول للشراء",
"yourBalance":"الرصيد: {{credits}} نقطة",
"saveToMyFiles":"حفظ في ملفاتي",
"savedToMyFiles":"تم حفظ المشاركة في ملفاتك.",
"saveShareLink":"حفظ رابط المشاركة",
"saveShareLinkHint":"الصق رابط مشاركة مثل https://example.com/s/abc123",
"shareLink":"رابط المشاركة",
"savedAs":"حفظ باسم (اختياري)",
"sharePasswordRequired":"تتطلب هذه المشاركة كلمة مرور.",
"invalidShareLink":"تعذّر تحليل رابط المشاركة هذا."
},
"download":{
"noFilesFound":"لم يتم العثور على ملفات",
@ -970,7 +1091,82 @@
"relocateFileTo":"نقل سياسة التخزين إلى {{policy}} لـ <0></0>{{more}}",
"extractFileTo":"استخراج <0></0>{{more}} إلى <1></1>",
"createArchiveTo":"إنشاء ملف أرشيف إلى <1></1> لـ <0></0>{{more}}",
"importFileTo":"استيراد الملفات من {{policy}} إلى <0></0>"
"importFileTo":"استيراد الملفات من {{policy}} إلى <0></0>",
"preferredViewers":"التطبيقات الافتراضية",
"preferredViewersDes":"التطبيقات المختارة بـ«دائمًا» في حوار الفتح. تنطبق على كل أجهزتك؛ احذف أحدها ليُطلب منك مرة أخرى.",
"preferredViewersEmpty":"لا توجد تطبيقات افتراضية محفوظة بعد. اختر «دائمًا» في حوار الفتح على ملف.",
"trashRetention":"مدة الاحتفاظ بالمهملات (أيام)",
"trashRetentionDes":"عدد الأيام التي يبقى فيها الملف في المهملات قبل الحذف التلقائي. 0 يرث الافتراضي للمجموعة. ينطبق على الملفات المنقولة إلى المهملات بعد التغيير.",
"linkedAccounts":"الحسابات المرتبطة",
"providerQQ":"QQ",
"unlinkAccount":"إلغاء الربط",
"unlinkAccountConfirm":"هل أنت متأكد من إلغاء ربط هذا الحساب؟ لن تتمكن من تسجيل الدخول به بعد الآن.",
"linkQQAccount":"ربط حساب QQ",
"providerWeChat":"WeChat",
"linkWeChatAccount":"ربط حساب WeChat",
"phoneBinding":"ربط الهاتف",
"bindPhone":"ربط الهاتف",
"unbindPhone":"إلغاء الربط",
"unbindPhoneConfirm":"هل أنت متأكد من إلغاء ربط رقم الهاتف هذا؟ لن تتمكن من تسجيل الدخول أو إعادة تعيين كلمة المرور به بعد الآن.",
"changeEmail":"تغيير",
"changeEmailDes":"سيُرسل رابط تأكيد إلى العنوان الجديد. يبقى بريدك الحالي ({{email}}) نشطًا حتى التأكيد.",
"newEmail":"عنوان البريد الإلكتروني الجديد",
"changeEmailPasswordDes":"أدخل كلمة مرورك الحالية للتأكيد.",
"emailChangeSent":"تم إرسال بريد التأكيد إلى العنوان الجديد.",
"tagsDes":"إعادة تسمية أو تغيير لون أو حذف وسم عبر كل ملفاتك. إعادة التسمية إلى وسم موجود يدمجهما.",
"tagName":"الوسم",
"tagFiles":"الملفات",
"tagActions":"الإجراءات",
"noTags":"لا توجد وسوم بعد",
"editTag":"تحرير الوسم",
"deleteTag":"حذف الوسم",
"deleteTagDes":"إزالة الوسم «{{name}}» من {{count}} ملف؟ يتم الاحتفاظ بالملفات نفسها.",
"tagUpdated":"تم تحديث الوسم",
"tagDeleted":"تم حذف الوسم",
"tagNameInvalid":"لا يمكن أن يكون اسم الوسم فارغًا أو يحتوي على «:»",
"backup2FACodes":"رموز الاستعادة",
"backupCodesDes":"تتيح رموز الاستعادة تسجيل الدخول عند عدم توفّر المصادقة. إنشاء دفعة جديدة يبطل جميع الرموز السابقة.",
"backupCodesWarning":"احفظ هذه الرموز الآن. يمكن استخدام كل واحد منها مرة واحدة ولن تظهر مرة أخرى.",
"copyCodes":"نسخ الرموز",
"finance":"المالية",
"linkedAt":"مرتبط في <0></0>"
},
"vas":{
"points":"النقاط",
@ -989,5 +1185,43 @@
],
"reportDescription":"وصف إضافي",
"reportAbuseSuccess":"تم رفع التقرير."
},
"vault":{
"title":"المساحة الخاصة",
"description":"الملفات في مساحتك الخاصة مخفية عن التصفّح والبحث حتى تفتحها بكلمة مرور منفصلة. لا يمكن مشاركة ملفات المساحة الخاصة أو الوصول إليها عبر WebDAV.",
"enable":"تفعيل المساحة الخاصة",
"enabled":"تم تفعيل المساحة الخاصة",
"disable":"تعطيل",
"disabled":"تم تعطيل المساحة الخاصة",
"disableDescription":"يزيل التعطيل القفل؛ يبقى المجلد ومحتوياته ملفات عادية.",
"confirmDisable":"تأكيد التعطيل",
"setPassword":"تعيين كلمة مرور المساحة الخاصة",
"confirmPassword":"كلمة مرور المساحة الخاصة",
"enterPassword":"كلمة مرور المساحة الخاصة",
"lockNow":"قفل الآن",
"locked":"تم قفل المساحة الخاصة",
"unlocked":"مفتوحة",
"lockedState":"مقفلة",
"lockedTitle":"هذا المجلد في مساحتك الخاصة. افتحه للمتابعة.",
"enableClientDes":"عند التعطيل، لا يمكن استخدام هذا التطبيق للمصادقة.",
"clientName":"اسم التطبيق",
"clientNameDes":"اسم العرض لهذا التطبيق. يمكنك استخدام مفاتيح ترجمة i18next مثل 0>oauth.appName.myApp</0> للتوطين.",
"clientNameDes":"اسم العرض لهذا التطبيق. يمكنك استخدام مفاتيح ترجمة i18next مثل <0>oauth.appName.myApp</0> للتوطين.",
"clientIcon":"أيقونة التطبيق",
"clientIconDes":"أيقونة هذا التطبيق. يقبل رابط صورة أو معرف أيقونة Iconify (مثل mdi:application).",
"clientId":"معرف العميل",
@ -475,7 +475,7 @@
"generators":"مولدات الصور المصغرة",
"thumbMaxSize":"الحد الأقصى لحجم الملف الأصلي",
"thumbMaxSizeDes":"الحد الأقصى لحجم الملف الأصلي الذي يمكن توليد صور مصغرة له، لن يتم توليد الصور المصغرة للملفات التي تتجاوز هذا الحجم.",
"generatorProxyWarning":"بشكل افتراضي، ستستخدم سياسات التخزين غير المحلية فقط المولد \"الأصيل في سياسة التخزين\". يمكنك توسيع قدرة الصور المصغرة لسياسات التخزين التابعة لجهات خارجية عن طريق تفعيل ميزة \"المولد الوكيل\" في صفحة إعدادات سياسة التخزين. لمزيد من التفاصيل، يرجى الرجوع إلى <0>التوثيق<0>.",
"generatorProxyWarning":"بشكل افتراضي، ستستخدم سياسات التخزين غير المحلية فقط المولد \"الأصيل في سياسة التخزين\". يمكنك توسيع قدرة الصور المصغرة لسياسات التخزين التابعة لجهات خارجية عن طريق تفعيل ميزة \"المولد الوكيل\" في صفحة إعدادات سياسة التخزين. لمزيد من التفاصيل، يرجى الرجوع إلى <0>التوثيق</0>.",
"policyBuiltin":"أصيل في سياسة التخزين",
"policyBuiltinDes":"استخدام API الأصلي من مزود التخزين لمعالجة الصور المصغرة. بالنسبة لسياسات التخزين المحلية وS3، هذا المولد غير متاح وسيتم الرجوع تلقائيًا إلى مولدات أخرى. بالنسبة لسياسات التخزين الأخرى، يرجى الانتقال إلى صفحة إعدادات سياسة التخزين لتكوين هذا المولد.",
"ftsTikaExtsDes":"قائمة امتدادات الملفات مفصولة بفواصل. سيعالج Tika الملفات من هذه الأنواع.",
"ftsTikaMaxFileSize":"الحد الأقصى لحجم الملف",
"ftsTikaMaxFileSizeDes":"الحد الأقصى لحجم الملف المرسل إلى Tika لاستخراج المحتوى."
"ftsTikaMaxFileSizeDes":"الحد الأقصى لحجم الملف المرسل إلى Tika لاستخراج المحتوى.",
"navItemVisibility":"الظهور",
"navScopePublic":"الجميع",
"navScopeUser":"المستخدمون المسجّلون",
"uploadDedupScope":"نطاق كشف التكرار",
"uploadDedupScopeDes":"عندما يرسل العميل تجزئة المحتوى، يبحث الخادم عن ملف مكتمل مطابق ويُنشئ الرفع فورًا دون نقل البايتات.",
"uploadDedupScope_off":"متوقف",
"uploadDedupScope_offDes":"لا كشف للتكرار؛ كل رفع ينقل البايتات.",
"uploadDedupScope_owner":"نفس المستخدم",
"uploadDedupScope_ownerDes":"إزالة التكرار فقط مقابل الملفات التي يملكها المستخدم الرافع بالفعل.",
"uploadDedupScope_global":"عام",
"uploadDedupScope_globalDes":"إزالة التكرار مقابل جميع الملفات المكتملة على هذا الموقع.",
"translations":"الترجمات",
"translationsDes":"تجاوزات لكل لغة. اترك فارغًا للرجوع إلى القيمة الافتراضية. يرى المستخدمون النسخة المطابقة لإعداد لغتهم أو لغة المتصفح.",
"invitationCodeRequired":"طلب رمز دعوة",
"invitationCodeRequiredDes":"يجب أن يقدّم المسجّلون الجدد رمز دعوة صالحًا. تُدار الرموز ضمن المستخدمون — رموز الدعوة.",
"smtpAuthMethod":"طريقة مصادقة SMTP",
"smtpAuthMethodDes":"يختار الاكتشاف التلقائي فقط الآليات الآمنة ولا يرسل بيانات الاعتماد بنص صريح عبر اتصالات غير مشفّرة. إذا كان خادمك يقدّم PLAIN/LOGIN فقط دون تشفير، فاختر طريقة «-noenc» المقابلة — ستُنقل بيانات الاعتماد غير مشفّرة.",
"smtpAuth_autodiscover":"اكتشاف تلقائي",
"smtpAuth_plain":"PLAIN",
"smtpAuth_plain_noenc":"PLAIN (السماح بدون تشفير)",
"smtpAuth_login":"LOGIN",
"smtpAuth_login_noenc":"LOGIN (السماح بدون تشفير)",
"smtpAuth_cram_md5":"CRAM-MD5",
"smtpAuth_scram_sha_1":"SCRAM-SHA-1",
"smtpAuth_scram_sha_256":"SCRAM-SHA-256",
"smtpAuth_xoauth2":"XOAUTH2",
"smtpAuth_noauth":"بدون مصادقة",
"tcaptcha":"Tencent Captcha",
"tcaptchaAppId":"CaptchaAppId",
"tcaptchaAppSecretKey":"AppSecretKey",
"tcaptchaSecretId":"SecretId",
"tcaptchaSecretKey":"SecretKey",
"tcaptchaDes":"احصل على CaptchaAppId و AppSecretKey من <0>وحدة تحكم Tencent Captcha</0>.",
"tcaptchaSecretDes":"SecretId و SecretKey لاعتماد Tencent Cloud API المستخدم لاستدعاء DescribeCaptchaResult.",
"trafficProductSettings":"منتج الحركة",
"trafficProductsDes":"تكوين المنتجات التي يمكن للمستخدمين شراؤها لتعبئة بدل حركة الروابط المباشرة.",
"auditRetentionDays":"مدة الاحتفاظ (أيام)",
"auditRetentionDaysDes":"حذف الأحداث الأقدم من هذا العدد من الأيام. 0 يحتفظ بالأحداث للأبد.",
"ssoIssuer":"عنوان URL للمُصدِر",
"ssoIssuerDes":"عنوان URL الأساسي لمُصدِر OIDC، مثل <0>https://keycloak.example.com/realms/master</0>. تُجلب بيانات مزوّد التعريف من <1>.well-known/openid-configuration</1> ضمن هذا العنوان.",
"ssoRegisterEnabled":"السماح بالتسجيل التلقائي",
"ssoRegisterEnabledDes":"إنشاء حساب محلي تلقائيًا عند أول تسجيل دخول عبر SSO. ينطبق أيضًا فلتر بريد التسجيل أدناه.",
"downloadCdnRoutes":"مسارات تنزيل CDN",
"downloadCdnRoutesDes":"نقاط نهاية تنزيل بديلة تُعرض للمستخدمين، واحدة لكل سطر بصيغة name=url (مثل الخط 1=https://cdn1.example.com). يجب أن تعكس المسارات مسار الطلب الكامل ومعلماته إلى هذا الموقع لتبقى الروابط الموقّعة صالحة؛ ترويسات CORS مطلوبة للتنزيل داخل المتصفح.",
"downloadCdnShuffle":"خلط مسارات التنزيل",
"downloadCdnShuffleDes":"توزيع كل رابط تنزيل مُنشأ عشوائيًا بين عنوان URL للموقع وجميع مسارات CDN المُعدّة، لتصدير مدير التنزيلات إلى نقاط نهاية مختلفة. يُخفى منتقي المسارات اليدوي عند التفعيل.",
"ssoAutoRedirect":"إعادة توجيه تلقائية إلى SSO",
"ssoAutoRedirectDes":"تخطّي نموذج تسجيل الدخول وإرسال الزوار مباشرة إلى مزوّد الهوية. أضف <0>?nosso=1</0> إلى عنوان URL لتسجيل الدخول للوصول إلى نموذج كلمة المرور (مثل استرداد المشرف).",
"ssoCallbackUrl":"عنوان URL للاستدعاء الراجع",
"ssoCallbackUrlDes":"سجّل عنوان URL هذا كـ redirect/callback URL لدى مزوّد الهوية: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"App ID لتطبيق الويب المنشأ في <0>وحدة تحكم QQ Connect</0> (connect.qq.com).",
"qqAppSecret":"App Key",
"qqCallbackUrl":"عنوان URL للاستدعاء الراجع",
"qqCallbackUrlDes":"سجّل عنوان URL هذا كنطاق/URL للاستدعاء الراجع في وحدة تحكم QQ Connect: <0>{{url}}</0>",
"qqRegisterEnabled":"السماح بالتسجيل التلقائي",
"qqRegisterEnabledDes":"إنشاء حساب محلي تلقائيًا عند أول تسجيل دخول عبر QQ. لا يوفّر QQ عنوان بريد، لذا تستخدم الحسابات المُنشأة عنوانًا تركيبيًا @connect.qq.local.",
"wechatConnect":"تسجيل الدخول بمسح WeChat",
"wechatAppID":"App ID",
"wechatAppIDDes":"AppID لتطبيق الويب المنشأ على <0>WeChat Open Platform</0> (open.weixin.qq.com).",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"عنوان URL للاستدعاء الراجع",
"wechatCallbackUrlDes":"سجّل نطاق عنوان URL هذا كنطاق للاستدعاء الراجع للتفويض في وحدة تحكم WeChat Open Platform: <0>{{url}}</0>",
"wechatRegisterEnabledDes":"إنشاء حساب محلي تلقائيًا عند أول تسجيل دخول عبر WeChat. لا يوفّر WeChat عنوان بريد، لذا تستخدم الحسابات المُنشأة عنوانًا تركيبيًا @connect.wechat.local.",
"smsSignIn":"تسجيل الدخول عبر SMS",
"smsEndpoint":"نقطة نهاية البوابة",
"smsEndpointDes":"نقطة نهاية HTTP لمزوّد SMS لديك. تُستبدل العناصر النائبة <0>{phone}</0> و <0>{code}</0> قبل كل طلب.",
"smsMethodDes":"طريقة HTTP المستخدمة لطلب البوابة. بالنسبة لـ GET، تُعرض العناصر النائبة في عنوان URL لنقطة النهاية فقط.",
"smsHeaders":"ترويسات الطلب",
"smsHeadersDes":"زوج `Key: Value` واحد لكل سطر، مثل Authorization: Bearer <token>.",
"smsBodyTemplate":"قالب نص الطلب",
"smsBodyTemplateDes":"النص المُرسل لطلبات POST. تُستبدل العناصر النائبة <0>{phone}</0> و <0>{code}</0> قبل كل طلب.",
"smsRegisterEnabled":"السماح بالتسجيل التلقائي",
"smsRegisterEnabledDes":"إنشاء حساب محلي تلقائيًا عند أول تسجيل دخول عبر رمز SMS. تستخدم الحسابات المُنشأة عنوانًا تركيبيًا @sms.local.",
"themeVisible":"مرئي",
"shareDefaultPrivate":"مشاركة خاصة افتراضيًا",
"shareDefaultPrivateDes":"المشاركات الجديدة خاصة افتراضيًا (محمية بكلمة مرور). يمكن للمستخدمين تجاوز ذلك في إعداداتهم الشخصية.",
"defaultShareLinksInProfile":"ظهور المشاركات الافتراضي في الملف الشخصي",
"defaultShareLinksInProfileDes":"يتحكم في المشاركات التي تظهر على صفحة الملف الشخصي العامة للمستخدم عندما لا يختارها بنفسه.",
"profileSharePublicOnly":"المشاركات بدون كلمة مرور فقط",
"profileShareAll":"كل المشاركات",
"profileShareHide":"إخفاء كل المشاركات"
},
"giftCodes":{
"giftCodesSettings":"رموز الهدايا",
@ -851,7 +936,11 @@
"copyAndClose":"نسخ وإغلاق",
"duratonTimes":"الكمية",
"duratonTimesDes":"عدد وحدات المنتج التي يتضمنها كل رمز هدية.",
"unknownProduct":"منتج غير معروف"
"unknownProduct":"منتج غير معروف",
"giftCodeTypeTraffic":"حركة الروابط المباشرة",
"giftCodeDeleteFailed":"تعذّر حذف رمز الهدية",
"giftCodeCreateFailed":"تعذّر إنشاء رموز الهدية",
"giftCodeAmountHelp":"مبلغ المنح لكل رمز"
},
"policy":{
"acceleratedDomainUpload":"استخدم ميزة تسريع النقل للتحميل",
@ -1145,7 +1234,38 @@
"fileEncryption":"تشفير الملفات",
"enableFileEncryption":"تفعيل تشفير الملفات",
"enableFileEncryptionDes":"عند التفعيل، ستخزن Blob الملفات مشفرة. تغيير هذا الإعداد يؤثر فقط على الملفات المضافة حديثًا.",
"encryptedFile":"الملفات المشفرة"
"encryptedFile":"الملفات المشفرة",
"thumbForceProxy":"إجبار توليد المصغّرات عبر الوكيل",
"thumbForceProxyDes":"توليد المصغّرات دائمًا عبر خط الأنابيب المحلي للوكيل، حتى عندما يوفّر خادم التخزين واجهة مصغّرات أصلية. يتضمّن توليد المصغّرات عبر الوكيل.",
"thumbStoragePolicy":"سياسة تخزين المصغّرات",
"thumbStoragePolicySource":"مثل الملف",
"thumbStoragePolicyDes":"تُخزَّن المصغّرات المُولَّدة ضمن السياسة المحددة بدلًا من سياسة تخزين الملف نفسه.",
"blobAudit":"تدقيق الـblobs: {{name}}",
"blobAuditDes":"يفحص خادم التخزين ويسرد العناصر الفعلية التي لا يشير إليها أي سجل ملف. مفيد للعثور على الـblobs الشبحية الناتجة عن عمليات نقل فاشلة.",
"blobAuditDelete":"حذف الـblobs اليتيمة",
"blobAuditDeleteWarning":"ستُحذف العناصر اليتيمة نهائيًا من خادم التخزين. قد تظهر الملفات قيد الرفع كيتيمة — فعّل هذا فقط عندما تتأكد عدم وجود رفع جارٍ.",
"blobAuditStart":"بدء التدقيق",
"blobAuditSubmitted":"تمت إضافة مهمة تدقيق الـblobs إلى الطابور.",
"maxTotalSize":"أقصى سعة إجمالية",
"maxTotalSizeDes":"أقصى إجمالي للبايتات المخزَّنة تحت هذه السياسة. تُرفض الرفعات والنسخ التي تتجاوز ذلك. 0 يعني غير محدود.",
"overflowPolicy":"سياسة التدفق الزائد",
"overflowPolicyDes":"عند نفاد سعة هذه السياسة، تنتقل الرفعات الجديدة إلى السياسة المحددة. تُدعم سلاسل السياسات.",
"auditEndpoint":"نقطة نهاية مراجعة المحتوى",
"auditEndpointDes":"نقطة نهاية HTTP لمراجعة المحتوى (مثل إشراف الصور). عند الضبط، تُرسل مشاركة ملف مخزَّن على هذه السياسة محتواه إلى نقطة النهاية عبر POST؛ استجابة {\"flagged\":true} تحجب المشاركة. اترك فارغًا للتعطيل.",
"auditMaxSize":"حد حجم المراجعة",
"auditMaxSizeDes":"أقصى حجم للكيان يُرسل إلى نقطة المراجعة. الملفات الأكبر تُتجاوز. 0 يعني بلا حد.",
"overflowNone":"لا شيء",
"allowNativeName":"السماح بأحرف أصلية في أسماء الملفات",
"allowNativeNameDes":"السماح بأحرف محظورة فقط على أنظمة ملفات Windows (: * ? \" < > |) في أسماء الملفات. قد يكسر العملاء الذين يركّبون على Windows. يبقى فاصل المسار ممنوعًا.",
"status":"الحالة",
"statusDes":"تستمر السياسات المعلّقة في تقديم الملفات الموجودة لكنها ترفض الرفع الجديد.",
"loadBalance":"موازنة الحِمل",
"lbChildren":"سياسات التخزين الفرعية",
"lbChildPolicy":"سياسة التخزين",
"lbWeight":"الوزن",
"lbAddChild":"إضافة سياسة فرعية",
"lbChildrenDes":"تُوزَّع الرفعات الجديدة على السياسات الفرعية بنسبة وزنها.",
"lbWizardDes":"توزّع سياسة الموازنة الرفعات على سياسات فرعية مرجّحة. تُعدّ الفرعية بعد الإنشاء."
},
"node":{
"slave":"تابعة",
@ -1214,7 +1334,12 @@
"hostHeaderHint":"إذا كان هناك خطأ في التوقيع، يرجى التحقق مما إذا كان الوكيل العكسي أمام العقدة يمرر ترويسة <0>Host</0>.",
"features":"الميزات المفعلة",
"remoteDownload":"التنزيل عن بعد",
"refresh":"تحديث"
"refresh":"تحديث",
"ytdlpDes":"تشغّل yt-dlp على العقدة المستهدفة بنفس مستوى المستخدم/الوصول كـ Cloudreve. يُستدعى yt-dlp كعملية CLI لكل مهمة — لا حاجة لخادم خلفي.",
"ytdlpOptionDes":"أعلام CLI إضافية لـ yt-dlp عند إنشاء مهمة تنزيل، مكتوبة بصيغة JSON مفتاح-قيمة — تصبح المفاتيح وسائط --flag حرفيًا، راجع <0>مرجع خيارات yt-dlp</0>.",
"ytdlpBinary":"ملف yt-dlp التنفيذي",
"ytdlpBinaryDes":"المسار أو اسم ملف yt-dlp التنفيذي على العقدة. الافتراضي هو yt-dlp من PATH.",
"allowedHosts":"المضيفون المسموح بهم"
},
"group":{
"countUser":"العدد",
@ -1301,7 +1426,37 @@
"notCopy":"عدم النسخ",
"confirmDelete":"هل أنت متأكد من رغبتك في حذف المجموعة {{group}}؟",
"new":"مجموعة جديدة",
"editGroup":"تعديل {{group}}"
"editGroup":"تعديل {{group}}",
"loginIPWhitelist":"قائمة IP البيضاء لتسجيل الدخول",
"loginIPWhitelistDes":"تقييد تسجيل الدخول على هذه الـIP أو نطاقات CIDR، واحد لكل سطر. اترك فارغًا للسماح بالكل.",
"delegatedAdmin":"أقسام الإدارة المفوّضة",
"delegatedAdminDes":"منح الوصول إلى أقسام محددة فقط من اللوحة. يمكن لمستخدمي هذه المجموعة فتح لوحة المشرف، لكن تعمل الأقسام المفعّلة فقط — تُرفض كل استدعاءات admin API الأخرى.",
"sectionUsers":"المستخدمون",
"sectionGroups":"المجموعات",
"sectionFiles":"الملفات والـblobs",
"sectionShares":"المشاركات",
"sectionStorage":"سياسات التخزين والعُقد",
"sectionQueue":"طابور المهام",
"sectionSettings":"إعدادات الموقع و OAuth",
"sectionPayment":"المدفوعات",
"sectionEvents":"الأحداث",
"sectionReports":"بلاغات الإساءة",
"shareSell":"بيع روابط المشاركة",
"shareSellDes":"عند التفعيل، يمكن للمستخدمين تحديد سعر بالنقاط على روابط المشاركة التي ينشئونها.",
"wabDAVReadOnly":"WebDAV للقراءة فقط",
"wabDAVReadOnlyDes":"عند التفعيل، تصبح تركيبات WebDAV لمستخدمي هذه المجموعة للقراءة فقط — تُرفض الرفع والحذف والنقل وطرق الكتابة الأخرى.",
"aria2TaskLimit":"أقصى مهام تنزيل بعيد متزامنة",
"aria2TaskLimitDes":"أقصى عدد لمهام التنزيل البعيد النشطة لكل مستخدم (في الطابور أو قيد التشغيل أو المعلّقة). 0 = بلا حد.",
"aria2MaxFileSize":"أقصى حجم لمهمة تنزيل (بايت)",
"aria2MaxFileSizeDes":"تُلغى مهام التنزيل البعيد التي يتجاوز حجمها الإجمالي المُحلَّل هذا الحد. 0 = بلا حد.",
"setExplicitUser":"تعيين أذونات الملفات",
"setExplicitUserDes":"يمكن للأعضاء تعيين أذونات دقيقة للقراءة/الإنشاء/التحديث/الحذف على الملفات والمجلدات التي يملكونها، لمستخدمين أو مجموعات أو زوار مجهولين أو الجميع.",
"switchablePoliciesDes":"السياسات التي يمكن لأعضاء هذه المجموعة التبديل إليها بحرية. السياسة الافتراضية أعلاه متاحة دائمًا.",
"weightedPolicies":"اختيار السياسات المرجّح",
"weightedPoliciesDes":"عند التفعيل، تُوجَّه الرفعات دون تفضيل سياسة صريح إلى السياسة المسموح بها ذات أكبر سعة حرة تتسع للملف. تُوزَّن فقط السياسات ذات حد سعة إجمالي.",
"sharePublicList":"دليل المشاركات العامة",
"sharePublicListDes":"عند التفعيل، يمكن للمستخدمين إدراج روابط مشاركتهم في الدليل العام (صفحة اكتشف). لا يمكن إدراج المشاركات المحمية بكلمة مرور."
},
"user":{
"createdAt":"تم الإنشاء في",
@ -1350,7 +1505,34 @@
"deleteXUsers":"حذف {{num}} من المستخدمين",
"confirmBatchDelete":"هل أنت متأكد من رغبتك في حذف {{num}} من المستخدمين؟ ",
"calibrateStorage":"ضبط مساحة التخزين",
"calibrateStorageSuccess":"تم ضبط مساحة التخزين بنجاح."
"calibrateStorageSuccess":"تم ضبط مساحة التخزين بنجاح.",
"relocateFiles":"نقل الملفات",
"banExpires":"انتهاء الحظر",
"banExpiresDes":"اختياري. يُرفع الحظر تلقائيًا بعد هذا الوقت؛ فارغ يعني دائم.",
"banReason":"سبب الحظر",
"banReasonDes":"اختياري. يُعرض للمستخدم عند رفض دخول محظور.",
"lastLogin":"آخر دخول",
"uids":"معرّفات المستخدمين",
"uidsPlaceholder":"معرّفات مفصولة بفواصل، مثل 2,3,5",
"editXUsers":"تحرير {{num}} مستخدمين",
"batchEditXUsers":"تحرير دفعي لـ {{num}} مستخدمين",
"noChange":"بلا تغيير",
"invitationCodes":"رموز الدعوة",
"invitationCodesDes":"رموز يمكن طلبها للتسجيل العام. أنشئها وشاركها وألغِها هنا.",
"invitationCode":"الرمز",
"invitationCodeAuto":"توليد تلقائي",
"invitationCodeGroup":"المجموعة",
"invitationCodeMaxUses":"أقصى استخدامات",
"invitationCodeExpires":"تنتهي في",
"invitationCodeUses":"الاستخدامات",
"invitationCodeCreated":"تم إنشاء رمز الدعوة.",
"invitationCodeCopied":"تم نسخ الرمز إلى الحافظة.",
"invitationCodeCopy":"نسخ",
"invitationCodeDefaultGroup":"افتراضي",
"noInvitationCodes":"لا توجد رموز دعوة بعد.",
"loadMore":"تحميل المزيد",
"additionalGroups":"مجموعات إضافية",
"additionalGroupsDes":"عضويات إضافية في مجموعات فوق المجموعة الأساسية. تُدمج الأذونات والحصص وسياسات التخزين عبر كل المجموعات."
},
"file":{
"deleteXFiles":"حذف {{num}} من الملفات",
@ -1422,7 +1604,15 @@
"shareLinkExisted":"لديه رابط مشاركة",
"directLinkExisted":"لديه رابط مباشر",
"isUploading":"قيد التحميل",
"selectUser":"اختر مستخدمًا"
"selectUser":"اختر مستخدمًا",
"referenceCount":"عدد المراجع",
"awaitingRecycle":"بانتظار التدوير",
"refCountGt":"أكبر من",
"refCountLt":"أصغر من",
"refCountEq":"يساوي",
"deletedState":"حالة الحذف",
"liveOnly":"الملفات الحية فقط",
"trashOnly":"المهملات فقط"
},
"entity":{
"refenenceCount":"عدد المراجع",
@ -1433,7 +1623,15 @@
"confirmBatchDelete":"هل أنت متأكد من رغبتك في حذف {{num}} من ملفات Blob؟",
"deleteXEntities":"حذف {{num}} من ملفات Blob",
"forceDelete":"حذف إجباري",
"forceDeleteDes":"ما إذا كان سيتم حذف سجل Blob بغض النظر عما إذا كان الملف الفعلي قد حذف."
"forceDeleteDes":"ما إذا كان سيتم حذف سجل Blob بغض النظر عما إذا كان الملف الفعلي قد حذف.",
"relocateXEntities":"نقل {{num}} blobs",
"relocateTitle":"نقل الـblobs",
"relocateEntitiesDes":"نقل بيانات {{num}} blobs مختارة إلى سياسة تخزين أخرى. تعمل المهمة في الخلفية ويمكن استئنافها.",
"relocatePolicyDes":"نقل جميع الـblobs المخزَّنة في «{{name}}» إلى سياسة تخزين أخرى. تعمل المهمة في الخلفية ويمكن استئنافها.",
"relocateUserDes":"نقل جميع الـblobs التي يملكها «{{name}}» إلى سياسة تخزين أخرى. تعمل المهمة في الخلفية ويمكن استئنافها.",
"relocatePolicy":"ترحيل جميع الـblobs من {{name}} إلى سياسة أخرى",
"relocateStart":"بدء النقل",
"relocateSubmitted":"تم إرسال مهمة النقل"
},
"event":{
"cleanup":"تصفية",
@ -1469,7 +1667,8 @@
"rawContent":"المحتوى الخام",
"confirmDelete":"هل أنت متأكد من رغبتك في حذف هذا الحدث؟",
"deleteXEvents":"حذف {{num}} من الأحداث",
"confirmBatchDelete":"هل أنت متأكد من رغبتك في حذف {{num}} من الأحداث؟"
"confirmBatchDelete":"هل أنت متأكد من رغبتك في حذف {{num}} من الأحداث؟",
"noEvents":"لا توجد أحداث مسجّلة بعد"
},
"share":{
"confirmBatchDelete":"هل أنت متأكد من رغبتك في حذف {{num}} من المشاركات؟",
@ -1547,7 +1746,8 @@
"finished":"انتهى",
"canceled":"ملغى/موقوف",
"unknown":"غير معروف",
"errorMsg":"رسالة الخطأ"
"errorMsg":"رسالة الخطأ",
"blobAudit":"تدقيق الـblobs على سياسة التخزين #{{policyID}} ({{count}} يتيمة)"
},
"payment":{
"tradeNo":"رقم المعاملة",
@ -1726,7 +1926,21 @@
"customPaymentEndpointDes":"الرابط سيتم استدعاؤه عند إنشاء طلب الدفع.",
"appFeedback":"رابط التغذية الراجعة",
"appForum":"رابط منتدى المستخدمين",
"appLinkDes":"سيتم عرضها في تطبيق الجوال، اتركها فارغة لإخفاء عنصر القائمة. لن يسري مفعول هذا الإعداد إلا إذا كانت رخصة VOL صالحة."
"appLinkDes":"سيتم عرضها في تطبيق الجوال، اتركها فارغة لإخفاء عنصر القائمة. لن يسري مفعول هذا الإعداد إلا إذا كانت رخصة VOL صالحة.",
"addTrafficPack":"إضافة حزمة حركة",
"editTrafficPack":"تحرير حزمة حركة",
"trafficSize":"كمية الحركة (بايت)",
"trafficSizeDes":"بايتات حركة الروابط المباشرة الممنوحة عند الشراء؛ الحزم دائمة.",
"subAddressChars":"أحرف العنوان الفرعي",
"subAddressCharsDes":"أحرف تُعامل كفواصل عنوان فرعي في الجزء المحلي من البريد (مثل <code>+-.</code> لأسماء Gmail/iCloud المستعارة). الفارغ يفترض <code>+</code>.",
"continueInDesktop":"Autorisierung erfolgreich, bitte fahren Sie im Desktop-Client fort.",
@ -488,7 +520,34 @@
"noEncryption":"Nicht verschlüsselt",
"ftsStatus":"Volltextindex",
"ftsIndexed":"Indexiert",
"ftsNotIndexed":"Nicht indexiert"
"ftsNotIndexed":"Nicht indexiert",
"aclDes":"Granulare Berechtigungen für „{{name}}“. Aufgeführte Einträge überschreiben die Standardberechtigungen des Freigabelinks für passende Besucher.",
"aclSubject":"Subjekt",
"aclAnonymous":"Anonyme Besucher",
"aclEveryone":"Alle anderen",
"aclGroup":"Gruppe",
"aclPerm_read":"Lesen",
"aclPerm_create":"Erstellen",
"aclPerm_update":"Ändern",
"aclPerm_delete":"Löschen",
"loop":"Schleife",
"modelViewer":"3D-Modellbetrachter",
"modelLoadFailed":"3D-Modell konnte nicht geladen werden",
"activityDes":"Aufgezeichnete Aktionen für {{name}}.",
"selectDownloadRoute":"Download-Route wählen",
"downloadRouteDirect":"Direkt",
"downloadRouteDirectDescription":"Direkt von dieser Seite herunterladen",
"lineEnding":"Zeilenende",
"downloadAll":"Alle herunterladen",
"dirPolicyTitle":"Speicherrichtlinie für Uploads",
"dirPolicyDes":"Neue Dateien, die in „{{name}}“ hochgeladen werden, verwenden die gewählte Speicherrichtlinie.",
"relocateTitle":"Speicher umziehen",
"relocateDes":"Den physischen Inhalt von „{{name}}“ in die gewählte Speicherrichtlinie verschieben.",
"relocateSubmitted":"Umzugsauftrag übermittelt",
"relocateStart":"Umziehen",
"policySaved":"Speicherrichtlinie aktualisiert",
"policyInherit":"Erben (übergeordnete oder Gruppenvorgabe)",
"policyGroupDefault":"Gruppenvorgabe"
},
"modals":{
"includePasswordInShareLink":"Passwort in Link einbeziehen",
"remoteDownloadHeadersDescription":"Ein Header pro Zeile, z. B. Cookie: sid=...",
"allowUpload":"Uploads erlauben",
"allowUploadDes":"Besucher können in diesem freigegebenen Ordner neue Dateien hochladen und Ordner erstellen. Der Speicher wird auf Ihr Kontingent angerechnet.",
"allowEdit":"Bearbeiten erlauben",
"allowEditDes":"Besucher können Dateien in diesem freigegebenen Ordner hochladen, umbenennen, verschieben und löschen. Beinhaltet Upload-Berechtigung.",
"uploadOnly":"Nur hochladen (Abgabebox)",
"uploadOnlyDes":"Besucher können Dateien hochladen, aber vorhandene Inhalte in diesem freigegebenen Ordner weder sehen noch herunterladen.",
"previewOnly":"Nur Vorschau",
"previewOnlyDes":"Besucher können Dateien inline ansehen, aber nicht herunterladen.",
"shareNote":"Notiz",
"shareNoteDes":"Eine private Notiz zur Kennzeichnung dieser Freigabe. Nur für Sie unter „Meine Freigaben“ sichtbar.",
"publicListingDes":"Diese Freigabe auf der Entdecken-Seite anzeigen, für jeden sichtbar, auch für anonyme Besucher. Nicht verfügbar für passwortgeschützte Freigaben.",
"hideReadme":"Readme-Datei ausblenden",
"hideReadmeDes":"Die README-Datei selbst aus der Freigabeliste heraushalten. Besucher sehen weiterhin die gerenderte Readme."
"dropFileHere":"Maus loslassen, um Upload zu starten"
"dropFileHere":"Maus loslassen, um Upload zu starten",
"etaSuffix":", Restzeit {{eta}}"
},
"share":{
"free":"Kostenlos",
@ -794,7 +887,19 @@
"preview":"Vorschau",
"incorrectPassword":"Falsches Passwort",
"shareNotExist":"Freigabe existiert nicht oder ist abgelaufen",
"copyLinkToClipboard":"Link in Zwischenablage kopieren"
"copyLinkToClipboard":"Link in Zwischenablage kopieren",
"paidShareDes":"Dies ist eine kostenpflichtige Freigabe. Der Kauf kostet {{price}} Punkte und schaltet Downloads frei.",
"purchaseForPoints":"Für {{price}} Punkte kaufen",
"signInToPurchase":"Zum Kauf anmelden",
"yourBalance":"Guthaben: {{credits}} Punkte",
"saveToMyFiles":"In meine Dateien speichern",
"savedToMyFiles":"Freigabe in Ihren Dateien gespeichert.",
"saveShareLink":"Freigabelink speichern",
"saveShareLinkHint":"Freigabelink einfügen, z. B. https://example.com/s/abc123",
"shareLink":"Freigabelink",
"savedAs":"Gespeichert als (optional)",
"sharePasswordRequired":"Diese Freigabe erfordert ein Passwort.",
"invalidShareLink":"Dieser Freigabelink kann nicht gelesen werden."
},
"download":{
"noFilesFound":"Keine Dateien gefunden",
@ -1056,7 +1161,82 @@
"relocateFileTo":"<0></0>{{more}} Speicherrichtlinie auf {{policy}} übertragen",
"extractFileTo":"<0></0>{{more}} nach <1></1> extrahieren",
"createArchiveTo":"<0></0>{{more}} nach <1></1> packen",
"importFileTo":"Dateien aus {{policy}} nach <0></0> importieren"
"importFileTo":"Dateien aus {{policy}} nach <0></0> importieren",
"preferredViewers":"Standard-Apps",
"preferredViewersDes":"Apps, die im Öffnen-mit-Dialog mit „Immer“ gewählt wurden. Sie gelten auf allen Ihren Geräten; entfernen Sie eine, um erneut gefragt zu werden.",
"preferredViewersEmpty":"Noch keine Standard-Apps gespeichert. Wählen Sie bei einer Datei im Öffnen-mit-Dialog „Immer“.",
"trashRetentionDes":"Tage, die eine Datei vor der automatischen Löschung im Papierkorb bleibt. 0 erbt die Gruppenvorgabe. Gilt für Dateien, die nach der Änderung gelöscht werden.",
"linkedAccounts":"Verknüpfte Konten",
"providerQQ":"QQ",
"unlinkAccount":"Verknüpfung aufheben",
"unlinkAccountConfirm":"Diese Kontoverknüpfung wirklich aufheben? Sie können sich damit nicht mehr anmelden.",
"linkQQAccount":"QQ-Konto verknüpfen",
"providerWeChat":"WeChat",
"linkWeChatAccount":"WeChat-Konto verknüpfen",
"phoneBinding":"Telefonbindung",
"bindPhone":"Telefon binden",
"unbindPhone":"Bindung aufheben",
"unbindPhoneConfirm":"Diese Telefonnummer wirklich entbinden? Sie können sich damit nicht mehr anmelden oder Ihr Passwort zurücksetzen.",
"changeEmail":"Ändern",
"changeEmailDes":"Ein Bestätigungslink wird an die neue Adresse gesendet. Ihre aktuelle E-Mail ({{email}}) bleibt bis zur Bestätigung aktiv.",
"newEmail":"Neue E-Mail-Adresse",
"changeEmailPasswordDes":"Zur Bestätigung Ihr aktuelles Passwort eingeben.",
"emailChangeSent":"Bestätigungs-E-Mail an die neue Adresse gesendet.",
"copySecret":"Scan nicht möglich? Zum Kopieren des Einrichtungsschlüssels klicken",
"secretCopied":"Einrichtungsschlüssel kopiert",
"shareSiteDefault":"Seitenvorgabe",
"shareSiteDefaultDes":"Der seitenweiten Vorgabe des Administrators folgen.",
"tagsDes":"Ein Tag über alle Ihre Dateien hinweg umbenennen, umfärben oder löschen. Umbenennen auf einen bestehenden Tag führt sie zusammen.",
"tagName":"Tag",
"tagFiles":"Dateien",
"tagActions":"Aktionen",
"noTags":"Noch keine Tags",
"editTag":"Tag bearbeiten",
"deleteTag":"Tag löschen",
"deleteTagDes":"Tag „{{name}}“ von {{count}} Datei(en) entfernen? Die Dateien selbst bleiben erhalten.",
"tagUpdated":"Tag aktualisiert",
"tagDeleted":"Tag gelöscht",
"tagNameInvalid":"Tag-Name darf nicht leer sein oder „:“ enthalten",
"backup2FACodes":"Wiederherstellungscodes",
"backupCodesDes":"Wiederherstellungscodes ermöglichen die Anmeldung, wenn Ihr Authenticator nicht verfügbar ist. Ein neuer Satz macht alle früheren Codes ungültig.",
"backupCodesWarning":"Diese Codes jetzt speichern. Jeder ist einmalig verwendbar und wird nicht erneut angezeigt.",
"copyCodes":"Codes kopieren",
"blockSysFilesUpload":"Upload von Systemdateien blockieren",
"blockSysFilesUploadTooltip":"Wenn aktiviert, werden Dateien, die mit <0>.</0> beginnen, vom Upload blockiert."
},
"vas":{
"points":"Punkte",
@ -1192,5 +1372,43 @@
"dontShowAgain":"Nicht mehr anzeigen",
"openPaymentLink":"Zahlungslink direkt öffnen",
"creditReasonAdjust":"Manuelle Anpassung"
},
"vault":{
"title":"Privater Bereich",
"description":"Dateien in Ihrem privaten Bereich sind für Durchsuchen und Suche verborgen, bis Sie ihn mit einem separaten Passwort entsperren. Vault-Dateien können nicht geteilt oder per WebDAV aufgerufen werden.",
"enable":"Privaten Bereich aktivieren",
"enabled":"Privater Bereich aktiviert",
"disable":"Deaktivieren",
"disabled":"Privater Bereich deaktiviert",
"disableDescription":"Deaktivieren entfernt die Sperre; der Ordner und sein Inhalt bleiben als normale Dateien erhalten.",
"confirmDisable":"Deaktivieren bestätigen",
"setPassword":"Vault-Passwort festlegen",
"confirmPassword":"Vault-Passwort",
"enterPassword":"Vault-Passwort",
"lockNow":"Jetzt sperren",
"locked":"Privater Bereich gesperrt",
"unlocked":"Entsperrt",
"lockedState":"Gesperrt",
"lockedTitle":"Dieser Ordner liegt in Ihrem privaten Bereich. Zum Fortfahren entsperren.",
"tcaptchaDes":"CaptchaAppId und AppSecretKey aus der <0>Tencent-Captcha-Konsole</0> beziehen.",
"tcaptchaSecretDes":"SecretId und SecretKey eines Tencent-Cloud-API-Zugangs für den Captcha-Aufruf.",
"trafficProductSettings":"Traffic-Produkt",
"trafficProductsDes":"Produkte konfigurieren, die Benutzer zum Aufladen ihres Direktlink-Traffics kaufen können.",
"auditRetentionDays":"Aufbewahrung (Tage)",
"auditRetentionDaysDes":"Ereignisse löschen, die älter als diese Anzahl Tage sind. 0 behält Ereignisse dauerhaft.",
"ssoIssuer":"Issuer-URL",
"ssoIssuerDes":"Basis-URL des OIDC-Issuers, z. B. <0>https://keycloak.example.com/realms/master</0>. Die Provider-Metadaten werden unter dieser URL von <1>.well-known/openid-configuration</1> abgerufen.",
"ssoRegisterEnabledDes":"Beim ersten SSO-Login automatisch ein lokales Konto erstellen.",
"downloadCdnRoutes":"Download-CDN-Routen",
"downloadCdnRoutesDes":"Alternative Download-Endpunkte für Benutzer, eine pro Zeile im Format Name=URL.",
"downloadCdnShuffle":"Download-Routen mischen",
"downloadCdnShuffleDes":"Jeden generierten Download-Link zufällig auf Seiten-URL und CDN-Routen verteilen.",
"ssoAutoRedirect":"Automatisch zu SSO weiterleiten",
"ssoAutoRedirectDes":"Login-Formular überspringen und Besucher direkt zum Identitätsanbieter schicken. Hängen Sie <0>?nosso=1</0> an die Login-URL an, um das Passwort-Formular zu erreichen (z. B. zur Admin-Wiederherstellung).",
"ssoCallbackUrl":"Callback-URL",
"ssoCallbackUrlDes":"Diese URL als Redirect-/Callback-URL in Ihrem Identitätsanbieter registrieren: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"Die App ID der in der <0>QQ-Connect-Konsole</0> erstellten Website-Anwendung.",
"qqAppSecret":"App Key",
"qqCallbackUrl":"Callback-URL",
"qqCallbackUrlDes":"Diese URL als Website-Callback-Domain/URL in der QQ-Connect-Anwendung registrieren: <0>{{url}}</0>",
"enableFileEncryptionDes":"Wenn aktiviert, werden Datei-Blobs verschlüsselt gespeichert. Die Änderung dieser Einstellung wirkt sich nur auf neu hinzugefügte Dateien aus.",
"encryptedFile":"Verschlüsselte Dateien"
"encryptedFile":"Verschlüsselte Dateien",
"mediaExtractorUpyun":"Bildverarbeitungsdienst",
"nativeMediaMetaExtUpyun":"Der Bildverarbeitungsdienst unterstützt <0>EXIF-Extraktion</0>. Keine manuelle Konfiguration nötig.",
"lbChildrenDes":"Neue Uploads werden proportional zum Gewicht auf die untergeordneten Richtlinien verteilt.",
"lbWizardDes":"Eine Lastverteilungs-Richtlinie verteilt Uploads auf gewichtete untergeordnete Richtlinien."
},
"node":{
"slave":"Slave",
@ -1221,7 +1343,29 @@
"hostHeaderHint":"Wenn ein Signatur-Fehler auftritt, überprüfen Sie bitte, ob der Reverse-Proxy vor dem Knoten den <0>Host</0>-Header weitergibt.",
"features":"Aktivierte Funktionen",
"remoteDownload":"Remote-Download",
"refresh":"Aktualisieren"
"refresh":"Aktualisieren",
"ytdlpDes":"yt-dlp auf dem Zielknoten mit denselben Benutzerrechten wie Cloudreve ausführen.",
"ytdlpOptionDes":"Zusätzliche yt-dlp-CLI-Flags beim Erstellen einer Download-Aufgabe, im JSON-Schlüssel-Wert-Format — Schlüssel werden wörtlich zu --flag-Argumenten, siehe <0>yt-dlp-Optionsreferenz</0>.",
"ytdlpBinary":"yt-dlp-Binärdatei",
"ytdlpBinaryDes":"Pfad oder Name der yt-dlp-Executable auf dem Knoten. Standard: yt-dlp aus PATH.",
"rpcTokenDes":"Entspricht <0>rpc-secret</0> in der Aria2-Konfigurationsdatei; leer lassen, wenn nicht gesetzt.",
"downloaderOptionDes":"Zusätzliche Downloader-Konfiguration beim Erstellen einer Download-Aufgabe im JSON-Schlüssel-Wert-Format; verfügbare Parameter siehe <0>offizielle Downloader-Dokumentation</0>.",
"refreshIntervalDes":"Intervall, in dem Cloudreve eine Aktualisierung des Aufgabenstatus vom Downloader anfordert. Das tatsächliche Intervall hängt auch von der Konfiguration der „Remote-Download“-Warteschlange und der Auslastung des Downloaders ab.",
"waitForSeeding":"Auf Seeding warten",
"waitForSeedingDes":"Wenn aktiviert, behält der Knoten die Aufgabe nach Abschluss des Remote-Downloads im Seeding-Status, bis die Seeding-Bedingung in der Downloader-Konfiguration erfüllt ist. Wirkt erst nach Abschluss und beeinträchtigt die Nutzung der Dateien nicht.",
"webUIEndpoint":"Web-UI-Endpunkt",
"webUIEndpointDes":"Der Endpunkt der qBittorrent-Web-UI, z. B. <0>http://127.0.0.1:8080/</0>.",
"tempPath":"Temporäres Download-Verzeichnis",
"tempPathDes":"Verzeichnis auf dem Knoten, das Aria2 als temporäres Download-Verzeichnis nutzt. Der Cloudreve-Prozess auf dem Knoten benötigt Lese-, Schreib- und Ausführrechte, und der Downloader muss darauf zugreifen können. Leer lassen für den Standard-Temppfad.",
"webUIUsername":"Web-UI-Benutzername",
"webUIPassword":"Web-UI-Passwort",
"webUICredDes":"Leer lassen, wenn keine Authentifizierung aktiviert ist.",
"downloaderTestPass":"Verbindung zum Downloader erfolgreich, Version: {{version}}",
"testDownloader":"Downloader-Verbindung testen",
"addNewNode":"Neuer Knoten",
"nameTheNode":"Knoten benennen:",
"copyBinary":""
},
"group":{
"countUser":"Anzahl",
@ -1307,7 +1451,38 @@
"notCopy":"Nicht kopieren",
"confirmDelete":"Sind Sie sicher, dass Sie die Gruppe {{group}} löschen möchten?",
"new":"Neue Gruppe",
"editGroup":"{{group}} bearbeiten"
"editGroup":"{{group}} bearbeiten",
"availablePolicyDesPro":"Mehrfachauswahl möglich, Benutzer können frei zwischen den gewählten Speicherrichtlinien wechseln.",
"loginIPWhitelist":"Login-IP-Whitelist",
"loginIPWhitelistDes":"Anmeldung auf diese IPs oder CIDR-Bereiche beschränken, eine pro Zeile. Leer = alle erlauben.",
"delegatedAdmin":"Delegierte Admin-Bereiche",
"delegatedAdminDes":"Nur Zugriff auf gewählte Dashboard-Bereiche gewähren. Mitglieder können das Admin-Panel öffnen, sehen aber nur diese Bereiche.",
"sectionUsers":"Benutzer",
"sectionGroups":"Gruppen",
"sectionFiles":"Dateien & Blobs",
"sectionShares":"Freigaben",
"sectionStorage":"Speicherrichtlinien & Knoten",
"sectionQueue":"Aufgabenwarteschlange",
"sectionSettings":"Seiteneinstellungen & OAuth",
"sectionPayment":"Zahlungen",
"sectionEvents":"Ereignisse",
"sectionReports":"Missbrauchsmeldungen",
"shareSell":"Freigabelinks verkaufen",
"shareSellDes":"Wenn aktiviert, können Benutzer einen Punktepreis auf ihre Freigabelinks setzen.",
"wabDAVReadOnly":"WebDAV schreibgeschützt",
"wabDAVReadOnlyDes":"Wenn aktiviert, werden WebDAV-Mounts für diese Gruppe schreibgeschützt — Uploads, Löschungen, Verschiebungen blockiert.",
"invitationCodeCopied":"Code in die Zwischenablage kopiert.",
"invitationCodeCopy":"Kopieren",
"invitationCodeDefaultGroup":"Standard",
"noInvitationCodes":"Noch keine Einladungscodes.",
"loadMore":"Mehr laden",
"additionalGroups":"Zusätzliche Gruppen",
"additionalGroupsDes":"Zusätzliche Gruppenmitgliedschaften neben der primären Gruppe. Berechtigungen, Quotas und Speicherrichtlinien werden vereinigt."
},
"file":{
"deleteXFiles":"{{num}} Dateien löschen",
@ -1429,7 +1631,15 @@
"shareLinkExisted":"Hat Freigabe-Link",
"directLinkExisted":"Hat direkten Link",
"isUploading":"Wird hochgeladen",
"selectUser":"Benutzer auswählen"
"selectUser":"Benutzer auswählen",
"referenceCount":"Referenzzähler",
"awaitingRecycle":"Wartet auf Recyclen",
"refCountGt":"Größer als",
"refCountLt":"Kleiner als",
"refCountEq":"Gleich",
"deletedState":"Löschstatus",
"liveOnly":"Nur aktive Dateien",
"trashOnly":"Nur Papierkorb"
},
"entity":{
"refenenceCount":"Referenzzähler",
@ -1440,7 +1650,15 @@
"confirmBatchDelete":"Sind Sie sicher, dass Sie {{num}} Blobs löschen möchten?",
"deleteXEntities":"{{num}} Blobs löschen",
"forceDelete":"Löschen erzwingen",
"forceDeleteDes":"Ob der Blob-Datensatz gelöscht werden soll, unabhängig davon, ob die physische Datei gelöscht wird."
"forceDeleteDes":"Ob der Blob-Datensatz gelöscht werden soll, unabhängig davon, ob die physische Datei gelöscht wird.",
"relocateXEntities":"{{num}} Blobs umziehen",
"relocateTitle":"Blobs umziehen",
"relocateEntitiesDes":"Die Daten von {{num}} gewählten Blobs in eine andere Speicherrichtlinie verschieben. Die Aufgabe läuft im Hintergrund.",
"relocatePolicyDes":"Alle Blobs auf „{{name}}“ in eine andere Speicherrichtlinie verschieben. Die Aufgabe läuft im Hintergrund.",
"relocateUserDes":"Alle Blobs von „{{name}}“ in eine andere Speicherrichtlinie verschieben. Die Aufgabe läuft im Hintergrund.",
"relocatePolicy":"Alle Blobs auf {{name}} zu anderer Richtlinie migrieren",
"relocateStart":"Umzug starten",
"relocateSubmitted":"Umzugsauftrag übermittelt"
},
"event":{
"cleanup":"Bereinigung",
@ -1476,7 +1694,8 @@
"confirmDelete":"Sind Sie sicher, dass Sie dieses Ereignis löschen möchten?",
"deleteXEvents":"{{num}} Ereignisse löschen",
"confirmBatchDelete":"Sind Sie sicher, dass Sie {{num}} Ereignisse löschen möchten?",
"allEventTypes":"Alle Ereignistypen"
"allEventTypes":"Alle Ereignistypen",
"noEvents":"Noch keine Ereignisse aufgezeichnet"
},
"share":{
"confirmBatchDelete":"Sind Sie sicher, dass Sie {{num}} Freigaben löschen möchten?",
@ -1554,7 +1773,8 @@
"finished":"Abgeschlossen",
"canceled":"Abgebrochen/Gestoppt",
"unknown":"Unbekannt",
"errorMsg":"Fehlermeldung"
"errorMsg":"Fehlermeldung",
"blobAudit":"Blobs auf Speicherrichtlinie #{{policyID}} prüfen ({{count}} verwaist)"
},
"payment":{
"tradeNo":"Handels-Nr.",
@ -1733,7 +1953,22 @@
"customPaymentEndpointDes":"URL, die beim Erstellen einer Zahlungsbestellung angefordert werden soll.",
"appFeedback":"Feedback-URL",
"appForum":"Benutzerforum-URL",
"appLinkDes":"Wird im mobilen Client angezeigt, leer lassen um Menüelement zu verstecken. Diese Einstellung wird nur wirksam, wenn die VOL-Lizenz gültig ist."
"appLinkDes":"Wird im mobilen Client angezeigt, leer lassen um Menüelement zu verstecken. Diese Einstellung wird nur wirksam, wenn die VOL-Lizenz gültig ist.",
"addTrafficPack":"Traffic-Paket hinzufügen",
"editTrafficPack":"Traffic-Paket bearbeiten",
"trafficSize":"Traffic-Menge (Bytes)",
"trafficSizeDes":"Bytes Direktlink-Traffic, die beim Kauf gutgeschrieben werden; Pakete sind permanent.",
"subAddressChars":"Sub-Adressen-Zeichen",
"subAddressCharsDes":"Zeichen, die als Sub-Adressen-Trenner im lokalen Teil der E-Mail gelten (z. B. <code>+-.</code>).",
"description":"Die Funktion, auf die Sie zugreifen möchten, ist nur in der Cloudreve Pro-Edition verfügbar. Upgraden Sie, um alle erweiterten Funktionen freizuschalten.",
"proInclude":"Die Pro-Edition enthält:",
"shareLinkCollabration":"Zusammenarbeit über Freigabelinks",
"filePermission":"Dateiberechtigungsverwaltung",
"multipleStoragePolicy":"Mehrere Speicherrichtlinien und Richtlinienwechsel pro Verzeichnis",
"auditAndActivity":"Datei- und Systemaktivitätsprotokolle",
"vasService":"VAS-Dienste und Punktesystem",
"sso":"SSO-Single-Sign-On",
"more":"……",
"later":"Vielleicht später",
"learnMore":"Mehr erfahren",
"promotionTitle":"Sonderrabatt beim Upgrade der Community-Edition",
"promotion":"Verwenden Sie beim Kauf den Aktionscode <0>{{code}}</0>, um <1>-{{discount}}%</1> Rabatt zu erhalten."
"clickToRefresh":"Haz clic para actualizar el código de verificación",
"switchLanguage":"Cambiar idioma"
"switchLanguage":"Cambiar idioma",
"invitationCode":"Código de invitación",
"phoneNumber":"Número de teléfono",
"smsCode":"Código SMS",
"sendSmsCode":"Enviar código",
"resendSmsCode":"Reenviar ({{seconds}}s)",
"smsSignIn":"Iniciar sesión con SMS",
"resetViaSms":"Restablecer por SMS en su lugar",
"emailChangedTitle":"Correo cambiado",
"emailChanged":"Tu dirección de correo se ha cambiado correctamente.",
"signInWith":"Iniciar sesión con {{name}}",
"ssoFailed":"Error en el inicio de sesión único. Inténtalo de nuevo o usa otro método de inicio de sesión.",
"ssoError":{
"generic":"Error en el inicio de sesión único. Inténtalo de nuevo.",
"sso_not_configured":"El inicio de sesión único no está configurado. Contacta con el administrador.",
"sso_discovery_failed":"No se pudo contactar con el proveedor de identidad. Inténtalo más tarde.",
"sso_state_failed":"No se pudo iniciar la sesión de inicio de sesión. Inténtalo de nuevo.",
"sso_denied":"El proveedor de identidad denegó el inicio de sesión.",
"sso_invalid_response":"Respuesta no válida del proveedor de identidad.",
"sso_state_expired":"La sesión de inicio de sesión ha caducado. Inténtalo de nuevo.",
"sso_exchange_failed":"No se pudo completar el inicio de sesión con el proveedor de identidad.",
"sso_token_invalid":"No se pudo verificar la respuesta de identidad.",
"sso_no_email":"El proveedor de identidad no devolvió una dirección de correo.",
"sso_account_unavailable":"No hay ninguna cuenta disponible para esta identidad. Puede que el registro esté restringido."
},
"browsePublicShares":"Explorar shares públicos",
"inputBackupCode":"Introduce uno de tus códigos de recuperación",
"useBackupCode":"Usar un código de recuperación en su lugar",
"use2FACode":"Usar el código del autenticador en su lugar"
},
"oauth":{
"authorize":"Autorizar aplicación",
@ -144,7 +172,11 @@
"toDarkMode":"Oscuro",
"toLightMode":"Claro",
"myProfile":"Mi perfil",
"dashboard":"Panel de control"
"dashboard":"Panel de control",
"shop":"Tienda",
"addAccount":"Añadir cuenta",
"signedOut":"Sesión cerrada",
"discover":"Descubrir"
},
"fileManager":{
"continueInDesktop":"Autorización exitosa, por favor continúa en el cliente de escritorio.",
@ -488,7 +520,34 @@
"noEncryption":"No cifrado",
"ftsStatus":"Índice de texto completo",
"ftsIndexed":"Indexado",
"ftsNotIndexed":"No indexado"
"ftsNotIndexed":"No indexado",
"aclDes":"Permisos detallados para «{{name}}». Las entradas listadas anulan los permisos por defecto del enlace de share para los visitantes coincidentes.",
"aclSubject":"Sujeto",
"aclAnonymous":"Visitantes anónimos",
"aclEveryone":"Todos los demás",
"aclGroup":"grupo",
"aclPerm_read":"Leer",
"aclPerm_create":"Crear",
"aclPerm_update":"Actualizar",
"aclPerm_delete":"Eliminar",
"loop":"Bucle",
"modelViewer":"Visor de modelos 3D",
"modelLoadFailed":"Error al cargar el modelo 3D",
"activityDes":"Acciones registradas en {{name}}.",
"selectDownloadRoute":"Seleccionar ruta de descarga",
"downloadRouteDirect":"Directa",
"downloadRouteDirectDescription":"Descargar directamente desde este sitio",
"lineEnding":"Final de línea",
"downloadAll":"Descargar todo",
"dirPolicyTitle":"Política de almacenamiento para subidas",
"dirPolicyDes":"Los nuevos archivos subidos a «{{name}}» usarán la política de almacenamiento seleccionada.",
"relocateTitle":"Reubicar almacenamiento",
"relocateDes":"Mover el contenido físico de «{{name}}» a la política de almacenamiento seleccionada.",
"relocateSubmitted":"Tarea de reubicación enviada",
"relocateStart":"Reubicar",
"policySaved":"Política de almacenamiento actualizada",
"policyInherit":"Heredar (padre o predeterminado del grupo)",
"policyGroupDefault":"Predeterminado del grupo"
},
"modals":{
"includePasswordInShareLink":"Incluir contraseña en enlace compartido",
@ -661,7 +720,44 @@
"skipSoftDeleteDes":"Omitir mover a papelera, eliminar permanentemente",
"unlinkOnly":"Mantener archivos físicos",
"unlinkOnlyDes":"Eliminar solo registros de archivos, los archivos físicos no serán eliminados.",
"shareTargetsCount":"{{count}} destinos"
"shareTargetsCount":"{{count}} destinos",
"paidShare":"Share de pago",
"paidSharePrice":"{{price}} puntos",
"paidShareDes":"Los visitantes deben comprar este share con puntos de crédito antes de descargar. Pon 0 para un share gratuito.",
"paidSharePriceLabel":"Precio (puntos)",
"nameConflict":"Conflicto de nombre",
"conflictOverwriteDes":"Reemplazar los elementos existentes en el destino.",
"conflictSkipDes":"Conservar los elementos existentes; los elementos en conflicto no se moverán ni copiarán.",
"skip":"Omitir",
"remoteDownloadFileName":"Nombre de archivo (opcional)",
"remoteDownloadFileNameDescription":"Nombre de archivo de salida personalizado",
"remoteDownloadHeadersDescription":"Una cabecera por línea, p. ej. Cookie: sid=...",
"allowUpload":"Permitir subidas",
"allowUploadDes":"Los visitantes pueden subir nuevos archivos y crear carpetas en esta carpeta compartida. El almacenamiento cuenta hacia tu cuota.",
"allowEdit":"Permitir edición",
"allowEditDes":"Los visitantes pueden subir, renombrar, mover y eliminar archivos en esta carpeta compartida. Implica el permiso de subida.",
"uploadOnly":"Solo subida (buzón)",
"uploadOnlyDes":"Los visitantes pueden subir archivos pero no pueden ver ni descargar el contenido existente en esta carpeta compartida.",
"previewOnly":"Solo vista previa",
"previewOnlyDes":"Los visitantes pueden previsualizar archivos en línea pero no descargarlos.",
"shareNote":"Nota",
"shareNoteDes":"Una nota privada para identificar este share. Solo visible para ti en Mis shares.",
"shareTargets":"Destinos del share",
"shareTargetsCount_one":"{{count}} destino",
"shareTargetsCount_other":"{{count}} destinos",
"publicListing":"Listar en el directorio público",
"publicListingDes":"Mostrar este share en la página Descubrir, visible para cualquiera, incluidos visitantes anónimos. No disponible para shares protegidos con contraseña.",
"hideReadme":"Ocultar archivo readme",
"hideReadmeDes":"Mantener el archivo README fuera de la lista del share. Los visitantes aún ven el readme renderizado.",
"viewSetting":"Configuración de vista",
"saved":"Guardado",
"notSet":"Sin configurar",
"deleteViewSetting":"Eliminar configuración de vista"
},
"uploader":{
"fileCopyName":"Copia de ",
@ -684,7 +780,7 @@
"preparing":"Preparando...",
"processing":"Procesando...",
"progressDescription":"{{uploaded}} subido, {{total}} total - {{percentage}}%",
"progressDescriptionFull":"{{uploaded}} subido, {{total}} total - {{percentage}}% ({{speed}})",
"progressDescriptionFull":"{{uploaded}} subido, {{total}} total - {{percentage}}% ({{speed}}){{eta}}",
"progressDescriptionPlaceHolder":" - subido",
"uploaded":"Subido",
"rootFolder":"Carpeta raíz",
@ -743,7 +839,8 @@
"upyunUploadFailed":"Subida fallida: {{msg}}",
"parseResponseError":"No se puede analizar respuesta: {{msg}} ({{content}})",
"concurrentTaskNumber":"Límite de tareas concurrentes",
"dropFileHere":"Soltar archivo para subir"
"dropFileHere":"Soltar archivo para subir",
"etaSuffix":", ETA {{eta}}"
},
"share":{
"free":"Gratis",
@ -790,7 +887,19 @@
"preview":"Vista previa",
"incorrectPassword":"Contraseña incorrecta",
"shareNotExist":"El enlace compartido no existe o ha expirado",
"copyLinkToClipboard":"Copiar enlace al portapapeles"
"copyLinkToClipboard":"Copiar enlace al portapapeles",
"paidShareDes":"Este es un share de pago. La compra cuesta {{price}} puntos y desbloquea las descargas.",
"purchaseForPoints":"Comprar por {{price}} pts",
"signInToPurchase":"Inicia sesión para comprar",
"yourBalance":"Saldo: {{credits}} puntos",
"saveToMyFiles":"Guardar en mis archivos",
"savedToMyFiles":"Share guardado en tus archivos.",
"saveShareLink":"Guardar enlace de share",
"saveShareLinkHint":"Pega un enlace de share como https://example.com/s/abc123",
"shareLink":"Enlace de share",
"savedAs":"Guardado como (opcional)",
"sharePasswordRequired":"Este share requiere una contraseña.",
"invalidShareLink":"No se pudo analizar este enlace de share."
},
"download":{
"noFilesFound":"No se encontraron archivos",
@ -1054,7 +1163,80 @@
"relocateFileTo":"Transferir la política de almacenamiento de <0></0>{{more}} a {{policy}}",
"extractFileTo":"Extraer <0></0>{{more}} a <1></1>",
"createArchiveTo":"Empaquetar <0></0>{{more}} a <1></1>",
"importFileTo":"Importar archivos de {{policy}} a <0></0>"
"importFileTo":"Importar archivos de {{policy}} a <0></0>",
"preferredViewers":"Apps predeterminadas",
"preferredViewersDes":"Apps elegidas con «Siempre» en el diálogo abrir con. Se aplican en todos tus dispositivos; elimina una para que te vuelvan a preguntar.",
"preferredViewersEmpty":"Aún no hay apps predeterminadas guardadas. Elige «Siempre» en el diálogo abrir con de un archivo.",
"trashRetention":"Retención de papelera (días)",
"trashRetentionDes":"Días que un archivo permanece en la papelera antes de su eliminación automática. 0 hereda el predeterminado del grupo. Se aplica a los archivos movidos a la papelera tras el cambio.",
"linkedAccounts":"Cuentas vinculadas",
"providerQQ":"QQ",
"unlinkAccount":"Desvincular",
"unlinkAccountConfirm":"¿Seguro que quieres desvincular esta cuenta? Ya no podrás iniciar sesión con ella.",
"linkQQAccount":"Vincular cuenta QQ",
"providerWeChat":"WeChat",
"linkWeChatAccount":"Vincular cuenta WeChat",
"phoneBinding":"Vinculación de teléfono",
"bindPhone":"Vincular teléfono",
"unbindPhone":"Desvincular",
"unbindPhoneConfirm":"¿Seguro que quieres desvincular este número de teléfono? Ya no podrás iniciar sesión ni restablecer tu contraseña con él.",
"changeEmail":"Cambiar",
"changeEmailDes":"Se enviará un enlace de confirmación a la nueva dirección. Tu correo actual ({{email}}) permanece activo hasta la confirmación.",
"newEmail":"Nueva dirección de correo",
"changeEmailPasswordDes":"Introduce tu contraseña actual para confirmar.",
"emailChangeSent":"Correo de confirmación enviado a la nueva dirección.",
"copySecret":"¿No puedes escanear? Haz clic para copiar la clave de configuración",
"secretCopied":"Clave de configuración copiada",
"shareSiteDefault":"Predeterminado del sitio",
"shareSiteDefaultDes":"Seguir el predeterminado global configurado por el administrador.",
"shareDefaultPrivate":"Privacidad por defecto de los shares",
"shareDefaultPrivateDes":"Los nuevos shares son privados por defecto (protegidos con contraseña).",
"sharePrivateOn":"Privado",
"sharePrivateOff":"Público",
"preferredPolicy":"Política de almacenamiento preferida",
"preferredPolicyDes":"Las nuevas subidas en tus propios archivos usan esta política de almacenamiento, salvo que una carpeta la reemplace.",
"policySaved":"Política de almacenamiento actualizada",
"policyInherit":"Heredar (predeterminado del grupo)",
"policyGroupDefault":"Predeterminado del grupo",
"creditBalance":"Saldo de créditos",
"storageBonus":"Bonificación de almacenamiento",
"dlTraffic":"Tráfico de enlace directo",
"dlTrafficUnlimited":"Ilimitado",
"activeGrants":"Beneficios activos",
"grantStorage":"Almacenamiento",
"grantGroup":"Grupo",
"redeemGiftCode":"Canjear código de regalo",
"redeemGiftCodeDes":"Introduce un código de regalo para reclamar créditos o beneficios",
"tagsDes":"Renombrar, recolorear o eliminar una etiqueta en todos tus archivos. Renombrar sobre una etiqueta existente las fusiona.",
"tagName":"Etiqueta",
"tagFiles":"Archivos",
"tagActions":"Acciones",
"noTags":"Aún no hay etiquetas",
"editTag":"Editar etiqueta",
"deleteTag":"Eliminar etiqueta",
"deleteTagDes":"¿Quitar la etiqueta «{{name}}» de {{count}} archivo(s)? Los archivos en sí se conservan.",
"tagUpdated":"Etiqueta actualizada",
"tagDeleted":"Etiqueta eliminada",
"tagNameInvalid":"El nombre de la etiqueta no puede estar vacío ni contener «:»",
"backup2FACodes":"Códigos de recuperación",
"backupCodesDes":"Los códigos de recuperación te permiten iniciar sesión cuando tu autenticador no está disponible. Generar un nuevo lote invalida todos los códigos anteriores.",
"backupCodesWarning":"Guarda estos códigos ahora. Cada uno se puede usar una sola vez y no se volverán a mostrar.",
"copyCodes":"Copiar códigos"
},
"vas":{
"points":"Puntos",
@ -1190,5 +1372,43 @@
"dontShowAgain":"No mostrar de nuevo",
"openPaymentLink":"Abrir enlace de pago directamente",
"creditReasonAdjust":"Ajuste manual"
},
"vault":{
"title":"Espacio privado",
"description":"Los archivos de tu espacio privado están ocultos en la navegación y en la búsqueda hasta que lo desbloqueas con una contraseña independiente. Los archivos del espacio privado no se pueden compartir ni acceder vía WebDAV.",
"enable":"Activar espacio privado",
"enabled":"Espacio privado activado",
"disable":"Desactivar",
"disabled":"Espacio privado desactivado",
"disableDescription":"Al desactivar se elimina el bloqueo; la carpeta y su contenido permanecen como archivos normales.",
"confirmDisable":"Confirmar desactivación",
"setPassword":"Establecer contraseña del espacio privado",
"confirmPassword":"Contraseña del espacio privado",
"enterPassword":"Contraseña del espacio privado",
"lockNow":"Bloquear ahora",
"locked":"Espacio privado bloqueado",
"unlocked":"Desbloqueado",
"lockedState":"Bloqueado",
"lockedTitle":"Esta carpeta está en tu espacio privado. Desbloquéala para continuar.",
"badge":"Espacio privado"
},
"shop":{
"memberships":"Membresías",
"storagePacks":"Packs de almacenamiento",
"trafficPacks":"Packs de tráfico",
"redeem":"Canjear",
"balance":"Saldo: {{credits}} pts",
"purchased":"{{name}} comprado",
"permanent":"Permanente",
"noProducts":"No hay productos disponibles",
"buyWithPoints":"Comprar por {{points}} pts",
"pointsUnavailable":"No se puede comprar con puntos"
"oauth_grant_create":"Autorización de aplicación OAuth",
"oauth_token_exchange":"Intercambio de token OAuth",
"oauth_grant_revoke":"Revocación de autorización OAuth"
"oauth_grant_revoke":"Revocación de autorización OAuth",
"content_audit_blocked":"Share bloqueado por auditoría de contenido"
},
"server":"Servidor",
"tempPath":"Ruta temporal",
@ -821,7 +822,91 @@
"ftsTikaExts":"Extensiones soportadas",
"ftsTikaExtsDes":"Lista de extensiones de archivo separadas por comas. Tika procesará archivos de estos tipos.",
"ftsTikaMaxFileSize":"Tamaño máximo de archivo",
"ftsTikaMaxFileSizeDes":"Tamaño máximo de archivo a enviar a Tika para extracción de contenido."
"ftsTikaMaxFileSizeDes":"Tamaño máximo de archivo a enviar a Tika para extracción de contenido.",
"navItemVisibility":"Visibilidad",
"navScopePublic":"Todos",
"navScopeUser":"Usuarios conectados",
"uploadDedupScope":"Ámbito de detección de duplicados",
"uploadDedupScopeDes":"Cuando un cliente envía un hash de contenido, el servidor busca un archivo idéntico completado y materializa la subida al instante sin transferir bytes.",
"uploadDedupScope_off":"Desactivado",
"uploadDedupScope_offDes":"Sin detección de duplicados; cada subida transfiere bytes.",
"uploadDedupScope_owner":"Mismo usuario",
"uploadDedupScope_ownerDes":"Solo desduplicar contra archivos que el usuario que sube ya posee.",
"uploadDedupScope_global":"Global",
"uploadDedupScope_globalDes":"Desduplicar contra todos los archivos completados en este sitio.",
"translations":"Traducciones",
"translationsDes":"Anulaciones por idioma. Deja en blanco para volver al valor predeterminado. Los usuarios ven la variante que coincide con su ajuste de idioma o el idioma del navegador.",
"invitationCodeRequired":"Código de invitación obligatorio",
"invitationCodeRequiredDes":"Los nuevos registros deben proporcionar un código de invitación válido. Los códigos se gestionan en Usuarios - Códigos de invitación.",
"smtpAuthMethod":"Método de autenticación SMTP",
"smtpAuthMethodDes":"La detección automática solo selecciona mecanismos seguros y nunca envía credenciales en texto plano en conexiones sin cifrar. Si tu servidor solo ofrece PLAIN/LOGIN sin cifrado, elige el método «-noenc» correspondiente — las credenciales se transmitirán sin cifrar.",
"smtpAuth_autodiscover":"Detección automática",
"smtpAuth_plain":"PLAIN",
"smtpAuth_plain_noenc":"PLAIN (permitir sin cifrar)",
"smtpAuth_login":"LOGIN",
"smtpAuth_login_noenc":"LOGIN (permitir sin cifrar)",
"smtpAuth_cram_md5":"CRAM-MD5",
"smtpAuth_scram_sha_1":"SCRAM-SHA-1",
"smtpAuth_scram_sha_256":"SCRAM-SHA-256",
"smtpAuth_xoauth2":"XOAUTH2",
"smtpAuth_noauth":"Sin autenticación",
"tcaptcha":"Tencent Captcha",
"tcaptchaAppId":"CaptchaAppId",
"tcaptchaAppSecretKey":"AppSecretKey",
"tcaptchaSecretId":"SecretId",
"tcaptchaSecretKey":"SecretKey",
"tcaptchaDes":"Obtén tu CaptchaAppId y AppSecretKey desde la <0>consola de Tencent Captcha</0>.",
"tcaptchaSecretDes":"SecretId y SecretKey de una credencial de API de Tencent Cloud usada para llamar a DescribeCaptchaResult.",
"trafficProductSettings":"Producto de tráfico",
"trafficProductsDes":"Configura los productos que los usuarios pueden comprar para recargar su asignación de tráfico de enlace directo.",
"auditRetentionDays":"Retención (días)",
"auditRetentionDaysDes":"Eliminar eventos anteriores a este número de días. 0 conserva los eventos para siempre.",
"ssoIssuer":"URL del emisor",
"ssoIssuerDes":"URL base del emisor OIDC, p. ej. <0>https://keycloak.example.com/realms/master</0>. Los metadatos del proveedor se obtienen de <1>.well-known/openid-configuration</1> bajo esta URL.",
"ssoRegisterEnabled":"Permitir registro automático",
"ssoRegisterEnabledDes":"Crear automáticamente una cuenta local cuando un usuario inicia sesión por SSO por primera vez. El filtro de registro por correo de abajo también se aplica.",
"downloadCdnRoutes":"Rutas CDN de descarga",
"downloadCdnRoutesDes":"Endpoints de descarga alternativos ofrecidos a los usuarios, uno por línea en formato nombre=url (p. ej. Línea 1=https://cdn1.example.com). Las rutas deben redirigir la ruta y consulta completas a este sitio para que las URLs firmadas sigan siendo válidas; las cabeceras CORS son obligatorias para descargas en el navegador.",
"downloadCdnShuffle":"Repartir rutas de descarga",
"downloadCdnShuffleDes":"Distribuir aleatoriamente cada enlace de descarga generado entre la URL del sitio y todas las rutas CDN configuradas, para que las exportaciones por lotes a gestores de descarga toquen endpoints distintos. El selector manual de ruta se oculta cuando está activado.",
"ssoAutoRedirect":"Redirección automática a SSO",
"ssoAutoRedirectDes":"Omitir el formulario de inicio de sesión y enviar a los visitantes directamente al proveedor de identidad. Añade <0>?nosso=1</0> a la URL de inicio de sesión para llegar al formulario de contraseña (p. ej. para recuperación de admin).",
"ssoCallbackUrl":"URL de callback",
"ssoCallbackUrlDes":"Registra esta URL como URL de redirección/callback en tu proveedor de identidad: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"El App ID de la aplicación web creada en la <0>consola de QQ Connect</0> (connect.qq.com).",
"qqAppSecret":"App Key",
"qqCallbackUrl":"URL de callback",
"qqCallbackUrlDes":"Registra esta URL como dominio/URL de callback web en la consola de QQ Connect: <0>{{url}}</0>",
"qqRegisterEnabled":"Permitir registro automático",
"qqRegisterEnabledDes":"Crear automáticamente una cuenta local cuando un usuario inicia sesión por QQ por primera vez. QQ no proporciona dirección de correo, las cuentas creadas usan una dirección sintética @connect.qq.local.",
"wechatConnect":"Inicio de sesión por escaneo de WeChat",
"wechatAppID":"App ID",
"wechatAppIDDes":"El AppID de la aplicación web creada en la <0>WeChat Open Platform</0> (open.weixin.qq.com).",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"URL de callback",
"wechatCallbackUrlDes":"Registra el dominio de esta URL como dominio de callback de autorización en la consola de WeChat Open Platform: <0>{{url}}</0>",
"wechatRegisterEnabled":"Permitir registro automático",
"wechatRegisterEnabledDes":"Crear automáticamente una cuenta local cuando un usuario inicia sesión por WeChat por primera vez. WeChat no proporciona dirección de correo, las cuentas creadas usan una dirección sintética @connect.wechat.local.",
"smsSignIn":"Inicio de sesión por SMS",
"smsEndpoint":"Endpoint de la pasarela",
"smsEndpointDes":"Endpoint HTTP de tu proveedor de SMS. Los marcadores <0>{phone}</0> y <0>{code}</0> se reemplazan antes de cada petición.",
"smsMethodDes":"Método HTTP usado para la petición a la pasarela. Para GET, los marcadores solo se renderizan en la URL del endpoint.",
"smsHeaders":"Cabeceras de petición",
"smsHeadersDes":"Un par `Key: Value` por línea, p. ej. Authorization: Bearer <token>.",
"smsBodyTemplate":"Plantilla del cuerpo de petición",
"smsBodyTemplateDes":"Cuerpo enviado para peticiones POST. Los marcadores <0>{phone}</0> y <0>{code}</0> se reemplazan antes de cada petición.",
"smsRegisterEnabled":"Permitir registro automático",
"smsRegisterEnabledDes":"Crear automáticamente una cuenta local cuando un usuario inicia sesión por código SMS por primera vez. Las cuentas creadas usan una dirección sintética @sms.local.",
"themeVisible":"Visible",
"shareDefaultPrivate":"Share privado por defecto",
"shareDefaultPrivateDes":"Los nuevos shares son privados por defecto (protegidos con contraseña). Los usuarios pueden anularlo en sus ajustes personales.",
"defaultShareLinksInProfile":"Visibilidad por defecto de los shares del perfil",
"defaultShareLinksInProfileDes":"Controla qué shares aparecen en la página de perfil pública de un usuario cuando este no ha elegido ninguno.",
"profileSharePublicOnly":"Solo shares sin contraseña",
"profileShareAll":"Todos los shares",
"profileShareHide":"Ocultar todos los shares"
},
"giftCodes":{
"giftCodesSettings":"Códigos de Regalo",
@ -852,7 +937,11 @@
"copyAndClose":"Copiar y Cerrar",
"duratonTimes":"Cantidad",
"duratonTimesDes":"Cuántas cantidades del producto se incluyen en cada código de regalo.",
"unknownProduct":"Producto Desconocido"
"unknownProduct":"Producto Desconocido",
"giftCodeTypeTraffic":"Tráfico de enlace directo",
"giftCodeDeleteFailed":"Error al eliminar el código de regalo",
"giftCodeCreateFailed":"Error al generar códigos de regalo",
"giftCodeAmountHelp":"Importe concedido por código"
},
"policy":{
"acceleratedDomainUpload":"Usar dominio de aceleración de transferencia para subida",
@ -1144,7 +1233,40 @@
"fileEncryption":"Cifrado de archivos",
"enableFileEncryption":"Habilitar cifrado de archivos",
"enableFileEncryptionDes":"Cuando está habilitado, los blobs de archivos se almacenarán cifrados. Cambiar esta configuración solo afecta a los archivos recién agregados.",
"encryptedFile":"Archivos cifrados"
"encryptedFile":"Archivos cifrados",
"mediaExtractorUpyun":"servicio de procesamiento de imágenes",
"nativeMediaMetaExtUpyun":"El servicio de procesamiento de imágenes soporta <0>la extracción de EXIF de imágenes</0>. No se necesita configuración manual, solo añade arriba las extensiones que quieres procesar.",
"thumbForceProxy":"Forzar proxy de generación de miniaturas",
"thumbForceProxyDes":"Generar siempre las miniaturas con el pipeline del proxy local, incluso cuando el backend de almacenamiento ofrece una API nativa de miniaturas. Implica generación proxy de miniaturas.",
"thumbStoragePolicy":"Política de almacenamiento de miniaturas",
"thumbStoragePolicySource":"Igual que el archivo",
"thumbStoragePolicyDes":"Las miniaturas generadas se almacenan bajo la política seleccionada en lugar de la política de almacenamiento del propio archivo.",
"blobAudit":"Auditar blobs: {{name}}",
"blobAuditDes":"Escanea el backend de almacenamiento y lista los objetos físicos no referenciados por ningún registro de archivo. Útil para encontrar blobs fantasma dejados por transferencias fallidas.",
"blobAuditDelete":"Eliminar blobs huérfanos",
"blobAuditDeleteWarning":"Los objetos huérfanos se eliminarán permanentemente del backend de almacenamiento. Los archivos aún en subida pueden aparecer como huérfanos — solo actívalo cuando estés seguro de que no hay subidas en curso.",
"blobAuditStart":"Iniciar auditoría",
"blobAuditSubmitted":"Tarea de auditoría de blobs encolada.",
"maxTotalSize":"Capacidad total máxima",
"maxTotalSizeDes":"Número máximo total de bytes almacenados bajo esta política. Las subidas y copias que la superen se rechazan. 0 significa ilimitado.",
"overflowPolicy":"Política de desbordamiento",
"overflowPolicyDes":"Cuando esta política se queda sin capacidad, las nuevas subidas se redirigen a la política seleccionada. Se admiten cadenas de políticas.",
"auditEndpoint":"Endpoint de auditoría de contenido",
"auditEndpointDes":"Endpoint HTTP para la auditoría de contenido (p. ej. moderación de imágenes). Al definirlo, compartir un archivo almacenado en esta política envía su contenido al endpoint; una respuesta {\"flagged\":true} bloquea el share. Dejar vacío para desactivar.",
"auditMaxSize":"Límite de tamaño de auditoría",
"auditMaxSizeDes":"Tamaño máximo de entidad enviada al endpoint de auditoría. Los archivos más grandes se omiten. 0 significa sin límite.",
"overflowNone":"Ninguna",
"allowNativeName":"Permitir caracteres nativos en nombres de archivo",
"allowNativeNameDes":"Permitir caracteres solo ilegales en sistemas de archivos Windows (: * ? \" < > |) en los nombres de archivo. Puede romper clientes que monten en Windows. Los separadores de ruta siguen prohibidos.",
"lbChildrenDes":"Las nuevas subidas se distribuyen entre las políticas hijas proporcionalmente a su peso.",
"lbWizardDes":"Una política de balanceo de carga distribuye las subidas entre políticas hijas ponderadas. Las hijas se configuran tras la creación."
},
"node":{
"slave":"esclavo",
@ -1214,7 +1336,11 @@
"hostHeaderHint":"Si hay un error de firma, por favor verifica si el proxy inverso frente al nodo está pasando el header <0>Host</0>.",
"features":"Características habilitadas",
"remoteDownload":"Descarga remota",
"refresh":"Actualizar"
"refresh":"Actualizar",
"ytdlpDes":"Ejecuta yt-dlp en el servidor del nodo objetivo con el mismo usuario/nivel de acceso que Cloudreve. yt-dlp se invoca como un proceso CLI por tarea - no se necesita demonio.",
"ytdlpOptionDes":"Opciones CLI adicionales de yt-dlp al crear una tarea de descarga, en formato JSON clave-valor - las claves se convierten en argumentos --flag tal cual, ver la <0>referencia de opciones de yt-dlp</0>.",
"ytdlpBinary":"Binario yt-dlp",
"ytdlpBinaryDes":"Ruta o nombre del ejecutable yt-dlp en el servidor del nodo. Por defecto yt-dlp resuelto desde el PATH."
},
"group":{
"countUser":"Contar",
@ -1300,7 +1426,38 @@
"notCopy":"No copiar",
"confirmDelete":"¿Estás seguro de que quieres eliminar el grupo {{group}}?",
"new":"Nuevo grupo",
"editGroup":"Editar {{group}}"
"editGroup":"Editar {{group}}",
"availablePolicyDesPro":"Selección múltiple, los usuarios pueden cambiar libremente de política de almacenamiento dentro del rango seleccionado.",
"loginIPWhitelist":"Lista blanca de IP de inicio de sesión",
"loginIPWhitelistDes":"Restringir el inicio de sesión a estas IPs o rangos CIDR, uno por línea. Dejar vacío para permitir todo.",
"delegatedAdmin":"Secciones de administración delegada",
"delegatedAdminDes":"Conceder acceso solo a secciones seleccionadas del panel. Los usuarios de este grupo pueden abrir el panel de administración, pero solo funcionan las secciones habilitadas — todas las demás llamadas a la API admin se rechazan.",
"sectionUsers":"Usuarios",
"sectionGroups":"Grupos",
"sectionFiles":"Archivos & blobs",
"sectionShares":"Shares",
"sectionStorage":"Políticas de almacenamiento & nodos",
"sectionQueue":"Cola de tareas",
"sectionSettings":"Ajustes del sitio & OAuth",
"sectionPayment":"Pagos",
"sectionEvents":"Eventos",
"sectionReports":"Informes de abuso",
"shareSell":"Vender enlaces de share",
"shareSellDes":"Cuando está activado, los usuarios pueden poner un precio en puntos a los enlaces de share que crean.",
"wabDAVReadOnly":"WebDAV solo lectura",
"wabDAVReadOnlyDes":"Si está activado, los montajes WebDAV para los usuarios de este grupo pasan a solo lectura — las subidas, eliminaciones, movimientos y otros métodos de escritura se rechazan.",
"aria2TaskLimit":"Máx. de tareas de descarga remota simultáneas",
"aria2TaskLimitDes":"Número máximo de tareas de descarga remota activas por usuario (encoladas, en ejecución o suspendidas). 0 = sin límite.",
"aria2MaxFileSize":"Tamaño máximo por tarea de descarga (bytes)",
"aria2MaxFileSizeDes":"Las tareas de descarga remota cuyo tamaño total resuelto supere este límite se abortan. 0 = sin límite.",
"setExplicitUser":"Definir permisos de archivo",
"setExplicitUserDes":"Los miembros pueden definir permisos detallados de lectura/creación/actualización/eliminación en archivos y carpetas de su propiedad, para usuarios, grupos, visitantes anónimos o todos los demás.",
"switchablePolicies":"Políticas de almacenamiento conmutables",
"switchablePoliciesDes":"Políticas a las que los miembros de este grupo pueden cambiar libremente. La política por defecto de arriba siempre está disponible.",
"weightedPolicies":"Selección ponderada de políticas",
"weightedPoliciesDes":"Cuando está activado, las subidas sin preferencia explícita de política se enrutan a la política permitida con más capacidad libre que quepa el archivo. Solo se ponderan las políticas con límite de capacidad total.",
"sharePublicList":"Directorio público de shares",
"sharePublicListDes":"Cuando está activado, los usuarios pueden incluir sus enlaces de share en el directorio público (página Descubrir). Los shares protegidos con contraseña no se pueden listar."
},
"user":{
"createdAt":"Creado en",
@ -1350,7 +1507,34 @@
"deleteXUsers":"Eliminar {{num}} usuarios",
"confirmBatchDelete":"¿Estás seguro de que quieres eliminar {{num}} usuarios?",
"banExpiresDes":"Opcional. El bloqueo se levanta automáticamente tras esta hora; vacío significa permanente.",
"banReason":"Razón del bloqueo",
"banReasonDes":"Opcional. Se muestra al usuario cuando se rechaza un inicio de sesión bloqueado.",
"lastLogin":"Último inicio de sesión",
"uids":"IDs de usuario",
"uidsPlaceholder":"IDs separados por comas, p. ej. 2,3,5",
"editXUsers":"Editar {{num}} usuarios",
"batchEditXUsers":"Editar en lote {{num}} usuarios",
"noChange":"Sin cambios",
"invitationCodes":"Códigos de invitación",
"invitationCodesDes":"Códigos que se pueden requerir para registros públicos. Créalos, compártelos y revócalos aquí.",
"invitationCode":"Código",
"invitationCodeAuto":"Generar automáticamente",
"invitationCodeGroup":"Grupo",
"invitationCodeMaxUses":"Usos máx.",
"invitationCodeExpires":"Caduca el",
"invitationCodeUses":"Usos",
"invitationCodeCreated":"Código de invitación creado.",
"invitationCodeCopied":"Código copiado al portapapeles.",
"invitationCodeCopy":"Copiar",
"invitationCodeDefaultGroup":"Predeterminado",
"noInvitationCodes":"Aún no hay códigos de invitación.",
"loadMore":"Cargar más",
"additionalGroups":"Grupos adicionales",
"additionalGroupsDes":"Pertenencias a grupos adicionales además del grupo principal. Los permisos, cuotas y políticas de almacenamiento se unifican (unión) entre todos los grupos."
},
"file":{
"deleteXFiles":"Eliminar {{num}} archivos",
@ -1422,7 +1606,15 @@
"shareLinkExisted":"Tiene enlace de compartir",
"directLinkExisted":"Tiene enlace directo",
"isUploading":"Está subiendo",
"selectUser":"Seleccionar usuario"
"selectUser":"Seleccionar usuario",
"referenceCount":"Conteo de referencias",
"awaitingRecycle":"Pendiente de reciclaje",
"refCountGt":"Mayor que",
"refCountLt":"Menor que",
"refCountEq":"Igual a",
"deletedState":"Estado eliminado",
"liveOnly":"Solo archivos activos",
"trashOnly":"Solo papelera"
},
"entity":{
"refenenceCount":"Conteo de referencia",
@ -1433,7 +1625,15 @@
"confirmBatchDelete":"¿Estás seguro de que quieres eliminar {{num}} Blobs?",
"deleteXEntities":"Eliminar {{num}} Blobs",
"forceDelete":"Forzar eliminación",
"forceDeleteDes":"Si eliminar el registro del Blob independientemente de si el archivo físico es eliminado."
"forceDeleteDes":"Si eliminar el registro del Blob independientemente de si el archivo físico es eliminado.",
"relocateXEntities":"Reubicar {{num}} blobs",
"relocateTitle":"Reubicar blobs",
"relocateEntitiesDes":"Mover los datos de {{num}} blobs seleccionados a otra política de almacenamiento. La tarea se ejecuta en segundo plano y se puede reanudar.",
"relocatePolicyDes":"Mover todos los blobs almacenados en «{{name}}» a otra política de almacenamiento. La tarea se ejecuta en segundo plano y se puede reanudar.",
"relocateUserDes":"Mover todos los blobs propiedad de «{{name}}» a otra política de almacenamiento. La tarea se ejecuta en segundo plano y se puede reanudar.",
"relocatePolicy":"Migrar todos los blobs en {{name}} a otra política",
"relocateStart":"Iniciar reubicación",
"relocateSubmitted":"Tarea de reubicación enviada"
},
"event":{
"cleanup":"Limpieza",
@ -1469,7 +1669,8 @@
"confirmDelete":"¿Estás seguro de que quieres eliminar este evento?",
"deleteXEvents":"Eliminar {{num}} eventos",
"confirmBatchDelete":"¿Estás seguro de que quieres eliminar {{num}} eventos?",
"allEventTypes":"Todos los tipos de eventos"
"allEventTypes":"Todos los tipos de eventos",
"noEvents":"Aún no hay eventos registrados"
},
"share":{
"confirmBatchDelete":"¿Estás seguro de que quieres eliminar {{num}} compartidos?",
@ -1547,7 +1748,8 @@
"finished":"Finalizado",
"canceled":"Cancelado/Detenido",
"unknown":"Desconocido",
"errorMsg":"Mensaje de error"
"errorMsg":"Mensaje de error",
"blobAudit":"Auditar blobs en la política de almacenamiento #{{policyID}} ({{count}} huérfanos)"
},
"payment":{
"tradeNo":"No. de Transacción",
@ -1726,7 +1928,21 @@
"customPaymentEndpointDes":"URL a ser solicitada al crear una orden de pago.",
"appFeedback":"URL de Retroalimentación",
"appForum":"URL del foro de usuarios",
"appLinkDes":"Será mostrado en el cliente móvil, dejar vacío para ocultar el elemento del menú. Esta configuración tendrá efecto solo si la licencia VOL es válida."
"appLinkDes":"Será mostrado en el cliente móvil, dejar vacío para ocultar el elemento del menú. Esta configuración tendrá efecto solo si la licencia VOL es válida.",
"addTrafficPack":"Añadir pack de tráfico",
"editTrafficPack":"Editar pack de tráfico",
"trafficSize":"Cantidad de tráfico (bytes)",
"trafficSizeDes":"Bytes de tráfico de enlace directo concedidos al comprar; los packs son permanentes.",
"subAddressChars":"Caracteres de sub-dirección",
"subAddressCharsDes":"Caracteres tratados como separadores de sub-dirección en la parte local del correo (p. ej. <code>+-.</code> para alias estilo Gmail/iCloud). Vacío por defecto a <code>+</code>.",
"manualAdjust":"Ajuste manual de créditos",
"adjustEmail":"Correo del usuario",
"adjustDelta":"Cambio de puntos",
"adjustDeltaDes":"Positivo añade créditos, negativo los descuenta",
"emailChanged":"Votre adresse e-mail a été modifiée avec succès.",
"signInWith":"Se connecter avec {{name}}",
"ssoFailed":"Échec de l'authentification unique. Veuillez réessayer ou utiliser une autre méthode de connexion.",
"ssoError":{
"generic":"Échec de l'authentification unique. Veuillez réessayer.",
"sso_not_configured":"L'authentification unique n'est pas configurée. Veuillez contacter l'administrateur.",
"sso_discovery_failed":"Impossible de joindre le fournisseur d'identité. Veuillez réessayer plus tard.",
"sso_state_failed":"Échec du démarrage de la session de connexion. Veuillez réessayer.",
"sso_denied":"Connexion refusée par le fournisseur d'identité.",
"sso_invalid_response":"Réponse invalide du fournisseur d'identité.",
"sso_state_expired":"La session de connexion a expiré. Veuillez réessayer.",
"sso_exchange_failed":"Échec de la finalisation de la connexion auprès du fournisseur d'identité.",
"sso_token_invalid":"Échec de la vérification de la réponse d'identité.",
"sso_no_email":"Le fournisseur d'identité n'a pas renvoyé d'adresse e-mail.",
"sso_account_unavailable":"Aucun compte n'est disponible pour cette identité. L'inscription est peut-être restreinte."
},
"browsePublicShares":"Parcourir les partages publics",
"inputBackupCode":"Saisissez l'un de vos codes de récupération",
"useBackupCode":"Utiliser un code de récupération à la place",
"use2FACode":"Utiliser le code de l'authentificateur à la place"
},
"oauth":{
"authorize":"Autoriser l'application",
@ -147,7 +175,11 @@
"toDarkMode":"Sombre",
"toLightMode":"Clair",
"myProfile":"Mon profil",
"dashboard":"Tableau de bord"
"dashboard":"Tableau de bord",
"shop":"Boutique",
"addAccount":"Ajouter un compte",
"signedOut":"Déconnecté",
"discover":"Découvrir"
},
"fileManager":{
"continueInDesktop":"Autorisation réussie, veuillez continuer dans le client de bureau.",
@ -488,7 +520,37 @@
"noEncryption":"Non chiffré",
"ftsStatus":"Index plein texte",
"ftsIndexed":"Indexé",
"ftsNotIndexed":"Non indexé"
"ftsNotIndexed":"Non indexé",
"aclDes":"Permissions détaillées pour « {{name}} ». Les entrées listées remplacent les permissions par défaut du lien de partage pour les visiteurs correspondants.",
"aclSubject":"Sujet",
"aclAnonymous":"Visiteurs anonymes",
"aclEveryone":"Tous les autres",
"aclGroup":"groupe",
"aclPerm_read":"Lire",
"aclPerm_create":"Créer",
"aclPerm_update":"Mettre à jour",
"aclPerm_delete":"Supprimer",
"loop":"Boucle",
"modelViewer":"Visionneuse de modèles 3D",
"modelLoadFailed":"Échec du chargement du modèle 3D",
"activityDes":"Actions enregistrées sur {{name}}.",
"resetThumbnail":"Réinitialiser la miniature corrompue",
"resetThumbnailRequested":"Réinitialisation de la miniature demandée.",
"noFileCanResetThumbnail":"Aucun fichier éligible à la réinitialisation de miniature.",
"selectDownloadRoute":"Sélectionner la route de téléchargement",
"downloadRouteDirect":"Direct",
"downloadRouteDirectDescription":"Télécharger directement depuis ce site",
"lineEnding":"Fin de ligne",
"downloadAll":"Tout télécharger",
"dirPolicyTitle":"Politique de stockage pour les envois",
"dirPolicyDes":"Les nouveaux fichiers envoyés dans « {{name}} » utiliseront la politique de stockage sélectionnée.",
"relocateTitle":"Déplacer le stockage",
"relocateDes":"Déplacer le contenu physique de « {{name}} » vers la politique de stockage sélectionnée.",
"relocateSubmitted":"Tâche de déplacement soumise",
"relocateStart":"Déplacer",
"policySaved":"Politique de stockage mise à jour",
"policyInherit":"Hériter (parent ou défaut du groupe)",
"policyGroupDefault":"Défault du groupe"
},
"modals":{
"includePasswordInShareLink":"Inclure le mot de passe dans le lien de partage",
@ -665,7 +727,40 @@
"saved":"Enregistré",
"notSet":"Non défini",
"deleteViewSetting":"Supprimer le paramètre de vue",
"shareTargetsCount":"{{count}} cibles"
"shareTargetsCount":"{{count}} cibles",
"paidShare":"Partage payant",
"paidSharePrice":"{{price}} points",
"paidShareDes":"Les visiteurs doivent acheter ce partage avec des points de crédit avant de pouvoir le télécharger. Mettez 0 pour un partage gratuit.",
"paidSharePriceLabel":"Prix (points)",
"nameConflict":"Conflit de nom",
"conflictOverwriteDes":"Remplacer les éléments existants dans la destination.",
"conflictSkipDes":"Conserver les éléments existants ; les éléments en conflit ne seront ni déplacés ni copiés.",
"skip":"Ignorer",
"remoteDownloadFileName":"Nom de fichier (facultatif)",
"remoteDownloadFileNameDescription":"Nom de fichier de sortie personnalisé",
"remoteDownloadHttpPassword":"Mot de passe HTTP (facultatif)",
"remoteDownloadHeaders":"En-têtes de requête (facultatif)",
"remoteDownloadProvider":"Téléchargeur",
"remoteDownloadProviderAuto":"Auto (n'importe quel nœud)",
"remoteDownloadHeadersDescription":"Un en-tête par ligne, ex. Cookie: sid=...",
"allowUpload":"Autoriser les envois",
"allowUploadDes":"Les visiteurs peuvent envoyer de nouveaux fichiers et créer des dossiers dans ce dossier partagé. Le stockage est décompté de votre quota.",
"allowEdit":"Autoriser la modification",
"allowEditDes":"Les visiteurs peuvent envoyer, renommer, déplacer et supprimer des fichiers dans ce dossier partagé. Implique l'autorisation d'envoi.",
"uploadOnly":"Envoi uniquement (boîte de dépôt)",
"uploadOnlyDes":"Les visiteurs peuvent envoyer des fichiers mais ne peuvent pas voir ni télécharger le contenu existant de ce dossier partagé.",
"previewOnly":"Aperçu uniquement",
"previewOnlyDes":"Les visiteurs peuvent prévisualiser les fichiers en ligne mais ne peuvent pas les télécharger.",
"shareNote":"Note",
"shareNoteDes":"Une note privée pour identifier ce partage. Visible uniquement par vous dans Mes partages.",
"shareTargets":"Cibles du partage",
"shareTargetsCount_one":"{{count}} cible",
"shareTargetsCount_other":"{{count}} cibles",
"publicListing":"Lister dans le répertoire public",
"publicListingDes":"Afficher ce partage sur la page Découvrir, visible par tous, y compris les visiteurs anonymes. Non disponible pour les partages protégés par mot de passe.",
"hideReadme":"Masquer le fichier readme",
"hideReadmeDes":"Garder le fichier README hors de la liste du partage. Les visiteurs voient toujours le readme rendu."
},
"uploader":{
"fileCopyName":"Copie de ",
@ -688,7 +783,7 @@
"preparing":"Préparation...",
"processing":"Traitement...",
"progressDescription":"{{uploaded}} téléchargé, {{total}} total - {{percentage}}%",
"progressDescriptionFull":"{{uploaded}} téléchargé, {{total}} total - {{percentage}}% ({{speed}})",
"progressDescriptionFull":"{{uploaded}} téléchargé, {{total}} total - {{percentage}}% ({{speed}}){{eta}}",
"progressDescriptionPlaceHolder":" - téléchargé",
"uploaded":"Téléchargé",
"rootFolder":"Dossier racine",
@ -747,7 +842,8 @@
"upyunUploadFailed":"Échec du téléchargement : {{msg}}",
"parseResponseError":"Impossible d'analyser la réponse : {{msg}} ({{content}})",
"concurrentTaskNumber":"Limite de tâches simultanées",
"dropFileHere":"Déposer le fichier pour télécharger"
"dropFileHere":"Déposer le fichier pour télécharger",
"etaSuffix":", ETA {{eta}}"
},
"share":{
"free":"Gratuit",
@ -794,7 +890,19 @@
"preview":"Aperçu",
"incorrectPassword":"Mot de passe incorrect.",
"shareNotExist":"Le lien de partage est invalide ou expiré.",
"copyLinkToClipboard":"Copier le lien dans le presse-papiers"
"copyLinkToClipboard":"Copier le lien dans le presse-papiers",
"paidShareDes":"Ceci est un partage payant. L'achat coûte {{price}} points et déverrouille les téléchargements.",
"purchaseForPoints":"Acheter pour {{price}} pts",
"signInToPurchase":"Connectez-vous pour acheter",
"yourBalance":"Solde : {{credits}} points",
"saveToMyFiles":"Enregistrer dans mes fichiers",
"savedToMyFiles":"Partage enregistré dans vos fichiers.",
"saveShareLink":"Enregistrer le lien de partage",
"saveShareLinkHint":"Collez un lien de partage comme https://example.com/s/abc123",
"shareLink":"Lien de partage",
"savedAs":"Enregistré sous (facultatif)",
"sharePasswordRequired":"Ce partage nécessite un mot de passe.",
"invalidShareLink":"Impossible d'analyser ce lien de partage."
},
"download":{
"noFilesFound":"Aucun fichier trouvé",
@ -1058,7 +1166,80 @@
"relocateFileTo":"Relocaliser la stratégie de stockage vers {{policy}} pour <0></0>{{more}}",
"extractFileTo":"Extraire <0></0>{{more}} vers <1></1>",
"createArchiveTo":"Créer un fichier d'archive vers <1></1> pour <0></0>{{more}}",
"importFileTo":"Importer des fichiers de {{policy}} vers <0></0>"
"importFileTo":"Importer des fichiers de {{policy}} vers <0></0>",
"preferredViewers":"Applications par défaut",
"preferredViewersDes":"Applications choisies avec « Toujours » dans la boîte de dialogue « Ouvrir avec ». Elles s'appliquent sur tous vos appareils ; supprimez-en une pour être à nouveau interrogé.",
"preferredViewersEmpty":"Aucune application par défaut enregistrée. Choisissez « Toujours » dans la boîte de dialogue « Ouvrir avec » d'un fichier.",
"trashRetention":"Rétention de la corbeille (jours)",
"trashRetentionDes":"Nombre de jours pendant lesquels un fichier reste dans la corbeille avant suppression automatique. 0 hérite du défaut du groupe. S'applique aux fichiers déplacés dans la corbeille après la modification.",
"linkedAccounts":"Comptes liés",
"providerQQ":"QQ",
"unlinkAccount":"Dissocier",
"unlinkAccountConfirm":"Voulez-vous vraiment dissocier ce compte ? Vous ne pourrez plus vous connecter avec.",
"linkQQAccount":"Lier un compte QQ",
"providerWeChat":"WeChat",
"linkWeChatAccount":"Lier un compte WeChat",
"phoneBinding":"Liaison de téléphone",
"bindPhone":"Lier le téléphone",
"unbindPhone":"Délier",
"unbindPhoneConfirm":"Voulez-vous vraiment délier ce numéro de téléphone ? Vous ne pourrez plus vous connecter ni réinitialiser votre mot de passe avec.",
"changeEmail":"Changer",
"changeEmailDes":"Un lien de confirmation sera envoyé à la nouvelle adresse. Votre e-mail actuel ({{email}}) reste actif jusqu'à confirmation.",
"newEmail":"Nouvelle adresse e-mail",
"changeEmailPasswordDes":"Saisissez votre mot de passe actuel pour confirmer.",
"emailChangeSent":"E-mail de confirmation envoyé à la nouvelle adresse.",
"copySecret":"Impossible de scanner ? Cliquez pour copier la clé de configuration",
"secretCopied":"Clé de configuration copiée",
"shareSiteDefault":"Défault du site",
"shareSiteDefaultDes":"Suivre le défaut global configuré par l'administrateur.",
"shareDefaultPrivate":"Confidentialité par défaut des partages",
"shareDefaultPrivateDes":"Les nouveaux partages sont privés par défaut (protégés par mot de passe).",
"sharePrivateOn":"Privé",
"sharePrivateOff":"Public",
"preferredPolicy":"Politique de stockage préférée",
"preferredPolicyDes":"Les nouveaux envois dans vos propres fichiers utilisent cette politique de stockage, sauf si un dossier la remplace.",
"policySaved":"Politique de stockage mise à jour",
"policyInherit":"Hériter (défaut du groupe)",
"policyGroupDefault":"Défaut du groupe",
"creditBalance":"Solde de crédits",
"storageBonus":"Bonus de stockage",
"dlTraffic":"Trafic en lien direct",
"dlTrafficUnlimited":"Illimité",
"activeGrants":"Avantages actifs",
"grantStorage":"Stockage",
"grantGroup":"Groupe",
"redeemGiftCode":"Utiliser un code cadeau",
"redeemGiftCodeDes":"Saisissez un code cadeau pour réclamer des crédits ou des avantages",
"tagsDes":"Renommer, recolorer ou supprimer une étiquette sur tous vos fichiers. Renommer sur une étiquette existante les fusionne.",
"tagName":"Étiquette",
"tagFiles":"Fichiers",
"tagActions":"Actions",
"noTags":"Aucune étiquette pour le moment",
"editTag":"Modifier l'étiquette",
"deleteTag":"Supprimer l'étiquette",
"deleteTagDes":"Retirer l'étiquette « {{name}} » de {{count}} fichier(s) ? Les fichiers eux-mêmes sont conservés.",
"tagUpdated":"Étiquette mise à jour",
"tagDeleted":"Étiquette supprimée",
"tagNameInvalid":"Le nom de l'étiquette ne peut pas être vide ni contenir « : »",
"backup2FACodes":"Codes de récupération",
"backupCodesDes":"Les codes de récupération vous permettent de vous connecter lorsque votre authentificateur est indisponible. La génération d'une nouvelle série invalide tous les codes précédents.",
"backupCodesWarning":"Enregistrez ces codes maintenant. Chacun ne peut être utilisé qu'une fois et ils ne seront plus affichés.",
"copyCodes":"Copier les codes"
},
"vas":{
"points":"Points",
@ -1194,5 +1375,43 @@
"dontShowAgain":"Ne plus afficher",
"openPaymentLink":"Ouvrir le lien de paiement",
"creditReasonAdjust":"Ajustement manuel"
},
"vault":{
"title":"Espace privé",
"description":"Les fichiers de votre espace privé sont masqués lors de la navigation et de la recherche tant que vous ne le déverrouillez pas avec un mot de passe distinct. Les fichiers du coffre ne peuvent pas être partagés ni accédés via WebDAV.",
"enable":"Activer l'espace privé",
"enabled":"Espace privé activé",
"disable":"Désactiver",
"disabled":"Espace privé désactivé",
"disableDescription":"La désactivation supprime le verrou ; le dossier et son contenu restent des fichiers ordinaires.",
"confirmDisable":"Confirmer la désactivation",
"setPassword":"Définir le mot de passe du coffre",
"confirmPassword":"Mot de passe du coffre",
"enterPassword":"Mot de passe du coffre",
"lockNow":"Verrouiller maintenant",
"locked":"Espace privé verrouillé",
"unlocked":"Déverrouillé",
"lockedState":"Verrouillé",
"lockedTitle":"Ce dossier se trouve dans votre espace privé. Déverrouillez-le pour continuer.",
"badge":"Espace privé"
},
"shop":{
"memberships":"Adhésions",
"storagePacks":"Packs de stockage",
"trafficPacks":"Packs de trafic",
"redeem":"Utiliser",
"balance":"Solde : {{credits}} pts",
"purchased":"{{name}} acheté",
"permanent":"Permanent",
"noProducts":"Aucun produit disponible",
"buyWithPoints":"Acheter pour {{points}} pts",
"pointsUnavailable":"Non achetable avec des points"
},
"announcement":{
"title":"Annonce",
"dontShowAgain":"Ne plus afficher"
},
"discover":{
"searchPlaceholder":"Rechercher des partages publics"
"oauth_grant_create":"Autorisation de l'application OAuth",
"oauth_token_exchange":"Échange de jeton OAuth",
"oauth_grant_revoke":"Révocation de l'autorisation OAuth"
"oauth_grant_revoke":"Révocation de l'autorisation OAuth",
"content_audit_blocked":"Partage bloqué par audit de contenu"
},
"server":"Serveur",
"tempPath":"Chemin temporaire",
@ -821,7 +822,91 @@
"ftsTikaExts":"Extensions supportées",
"ftsTikaExtsDes":"Liste d'extensions de fichiers séparées par des virgules. Tika traitera les fichiers de ces types.",
"ftsTikaMaxFileSize":"Taille maximale de fichier",
"ftsTikaMaxFileSizeDes":"Taille maximale de fichier à envoyer à Tika pour l'extraction de contenu."
"ftsTikaMaxFileSizeDes":"Taille maximale de fichier à envoyer à Tika pour l'extraction de contenu.",
"navItemVisibility":"Visibilité",
"navScopePublic":"Tout le monde",
"navScopeUser":"Utilisateurs connectés",
"uploadDedupScope":"Portée de la déduplication",
"uploadDedupScopeDes":"Lorsqu'un client envoie un hachage de contenu, le serveur recherche un fichier identique terminé et matérialise l'envoi instantanément sans transférer d'octets.",
"uploadDedupScope_off":"Désactivé",
"uploadDedupScope_offDes":"Aucune déduplication ; chaque envoi transfère des octets.",
"uploadDedupScope_owner":"Même utilisateur",
"uploadDedupScope_ownerDes":"Dédupliquer uniquement avec les fichiers déjà possédés par l'utilisateur émetteur.",
"uploadDedupScope_global":"Global",
"uploadDedupScope_globalDes":"Dédupliquer avec tous les fichiers terminés sur ce site.",
"translations":"Traductions",
"translationsDes":"Remplacements par langue. Laissez vide pour revenir à la valeur par défaut. Les utilisateurs voient la variante correspondant à leur réglage de langue ou à la langue du navigateur.",
"invitationCodeRequiredDes":"Les nouvelles inscriptions doivent fournir un code d'invitation valide. Les codes sont gérés sous Utilisateurs - Codes d'invitation.",
"smtpAuthMethodDes":"La découverte automatique ne sélectionne que des mécanismes sécurisés et n'envoie jamais d'identifiants en clair sur des connexions non chiffrées. Si votre serveur n'offre que PLAIN/LOGIN sans chiffrement, choisissez la méthode « -noenc » correspondante — les identifiants seront alors transmis en clair.",
"smtpAuth_autodiscover":"Découverte automatique",
"smtpAuth_plain":"PLAIN",
"smtpAuth_plain_noenc":"PLAIN (autoriser non chiffré)",
"smtpAuth_login":"LOGIN",
"smtpAuth_login_noenc":"LOGIN (autoriser non chiffré)",
"smtpAuth_cram_md5":"CRAM-MD5",
"smtpAuth_scram_sha_1":"SCRAM-SHA-1",
"smtpAuth_scram_sha_256":"SCRAM-SHA-256",
"smtpAuth_xoauth2":"XOAUTH2",
"smtpAuth_noauth":"Aucune authentification",
"tcaptcha":"Tencent Captcha",
"tcaptchaAppId":"CaptchaAppId",
"tcaptchaAppSecretKey":"AppSecretKey",
"tcaptchaSecretId":"SecretId",
"tcaptchaSecretKey":"SecretKey",
"tcaptchaDes":"Obtenez votre CaptchaAppId et AppSecretKey depuis la <0>console Tencent Captcha</0>.",
"tcaptchaSecretDes":"SecretId et SecretKey d'un identifiant d'API Tencent Cloud utilisé pour appeler DescribeCaptchaResult.",
"trafficProductSettings":"Produit de trafic",
"trafficProductsDes":"Configurez les produits que les utilisateurs peuvent acheter pour recharger leur quota de trafic en lien direct.",
"auditRetentionDays":"Rétention (jours)",
"auditRetentionDaysDes":"Supprimer les événements plus anciens que ce nombre de jours. 0 conserve les événements indéfiniment.",
"ssoIssuer":"URL de l'émetteur",
"ssoIssuerDes":"URL de base de l'émetteur OIDC, ex. <0>https://keycloak.example.com/realms/master</0>. Les métadonnées du fournisseur sont récupérées depuis <1>.well-known/openid-configuration</1> sous cette URL.",
"ssoRegisterEnabledDes":"Créer automatiquement un compte local lorsqu'un utilisateur se connecte via SSO pour la première fois. Le filtre d'inscription par e-mail ci-dessous s'applique aussi.",
"downloadCdnRoutes":"Routes CDN de téléchargement",
"downloadCdnRoutesDes":"Points de terminaison de téléchargement alternatifs proposés aux utilisateurs, un par ligne au format nom=url (ex. Ligne 1=https://cdn1.example.com). Les routes doivent renvoyer le chemin et la requête complets vers ce site afin que les URL signées restent valides ; les en-têtes CORS sont requis pour les téléchargements dans le navigateur.",
"downloadCdnShuffle":"Répartir les routes de téléchargement",
"downloadCdnShuffleDes":"Distribuer aléatoirement chaque lien de téléchargement généré entre l'URL du site et toutes les routes CDN configurées, afin que les exports groupés vers les gestionnaires de téléchargement touchent des points de terminaison différents. Le sélecteur manuel de route est masqué lorsque cette option est activée.",
"ssoAutoRedirect":"Redirection auto vers SSO",
"ssoAutoRedirectDes":"Ignorer le formulaire de connexion et envoyer les visiteurs directement vers le fournisseur d'identité. Ajoutez <0>?nosso=1</0> à l'URL de connexion pour atteindre le formulaire mot de passe (ex. pour récupération admin).",
"ssoCallbackUrl":"URL de rappel",
"ssoCallbackUrlDes":"Enregistrez cette URL comme URL de redirection/rappel auprès de votre fournisseur d'identité : <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"L'App ID de l'application web créée dans la <0>console QQ Connect</0> (connect.qq.com).",
"qqAppSecret":"App Key",
"qqCallbackUrl":"URL de rappel",
"qqCallbackUrlDes":"Enregistrez cette URL comme domaine/URL de rappel web dans la console QQ Connect : <0>{{url}}</0>",
"qqRegisterEnabledDes":"Créer automatiquement un compte local lorsqu'un utilisateur se connecte via QQ pour la première fois. QQ ne fournit pas d'adresse e-mail, les comptes provisionnés utilisent une adresse synthétique @connect.qq.local.",
"wechatConnect":"Connexion par scan WeChat",
"wechatAppID":"App ID",
"wechatAppIDDes":"L'AppID de l'application web créée sur la <0>WeChat Open Platform</0> (open.weixin.qq.com).",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"URL de rappel",
"wechatCallbackUrlDes":"Enregistrez le domaine de cette URL comme domaine de rappel d'autorisation dans la console WeChat Open Platform : <0>{{url}}</0>",
"wechatRegisterEnabledDes":"Créer automatiquement un compte local lorsqu'un utilisateur se connecte via WeChat pour la première fois. WeChat ne fournit pas d'adresse e-mail, les comptes provisionnés utilisent une adresse synthétique @connect.wechat.local.",
"smsSignIn":"Connexion par SMS",
"smsEndpoint":"Point de terminaison de la passerelle",
"smsEndpointDes":"Point de terminaison HTTP de votre fournisseur SMS. Les espaces réservés <0>{phone}</0> et <0>{code}</0> sont remplacés avant chaque requête.",
"smsMethodDes":"Méthode HTTP utilisée pour la requête vers la passerelle. Pour GET, les espaces réservés ne sont rendus que dans l'URL du point de terminaison.",
"smsHeaders":"En-têtes de requête",
"smsHeadersDes":"Une paire `Key: Value` par ligne, ex. Authorization: Bearer <token>.",
"smsBodyTemplate":"Modèle de corps de requête",
"smsBodyTemplateDes":"Corps envoyé pour les requêtes POST. Les espaces réservés <0>{phone}</0> et <0>{code}</0> sont remplacés avant chaque requête.",
"smsRegisterEnabledDes":"Créer automatiquement un compte local lorsqu'un utilisateur se connecte par code SMS pour la première fois. Les comptes provisionnés utilisent une adresse synthétique @sms.local.",
"themeVisible":"Visible",
"shareDefaultPrivate":"Partage privé par défaut",
"shareDefaultPrivateDes":"Les nouveaux partages sont privés par défaut (protégés par mot de passe). Les utilisateurs peuvent remplacer ce réglage dans leurs paramètres personnels.",
"defaultShareLinksInProfile":"Visibilité par défaut des partages du profil",
"defaultShareLinksInProfileDes":"Contrôle quels partages apparaissent sur la page de profil public d'un utilisateur lorsque celui-ci n'en a choisi aucun.",
"profileSharePublicOnly":"Partages sans mot de passe uniquement",
"profileShareAll":"Tous les partages",
"profileShareHide":"Masquer tous les partages"
},
"giftCodes":{
"giftCodesSettings":"Codes cadeaux",
@ -852,7 +937,11 @@
"copyAndClose":"Copier et fermer",
"duratonTimes":"Quantité",
"duratonTimesDes":"Combien de quantités du produit sont incluses dans chaque code cadeau.",
"unknownProduct":"Produit inconnu"
"unknownProduct":"Produit inconnu",
"giftCodeTypeTraffic":"Trafic en lien direct",
"giftCodeDeleteFailed":"Échec de la suppression du code cadeau",
"giftCodeCreateFailed":"Échec de la génération des codes cadeau",
"giftCodeAmountHelp":"Montant accordé par code"
},
"policy":{
"acceleratedDomainUpload":"Utiliser le domaine d'accélération de transfert pour l'upload",
@ -1144,7 +1233,40 @@
"fileEncryption":"Chiffrement des fichiers",
"enableFileEncryption":"Activer le chiffrement des fichiers",
"enableFileEncryptionDes":"Lorsqu'il est activé, les blobs de fichiers seront stockés chiffrés. La modification de ce paramètre n'affecte que les fichiers nouvellement ajoutés.",
"encryptedFile":"Fichiers chiffrés"
"encryptedFile":"Fichiers chiffrés",
"mediaExtractorUpyun":"service de traitement d'images",
"nativeMediaMetaExtUpyun":"Le service de traitement d'images prend en charge <0>l'extraction des EXIF d'images</0>. Aucune configuration manuelle n'est requise, ajoutez simplement les extensions à traiter ci-dessus.",
"thumbForceProxy":"Forcer le proxy de génération de miniatures",
"thumbForceProxyDes":"Toujours générer les miniatures via le pipeline proxy local, même lorsque le backend de stockage offre une API native de miniatures. Implique la génération proxy des miniatures.",
"thumbStoragePolicy":"Politique de stockage des miniatures",
"thumbStoragePolicySource":"Identique au fichier",
"thumbStoragePolicyDes":"Les miniatures générées sont stockées sous la politique sélectionnée au lieu de la politique de stockage du fichier lui-même.",
"blobAudit":"Auditer les blobs : {{name}}",
"blobAuditDes":"Analyse le backend de stockage et liste les objets physiques non référencés par aucun enregistrement de fichier. Utile pour trouver les blobs fantômes laissés par des transferts échoués.",
"blobAuditDelete":"Supprimer les blobs orphelins",
"blobAuditDeleteWarning":"Les objets orphelins seront définitivement supprimés du backend de stockage. Les fichiers encore en cours d'envoi peuvent apparaître comme orphelins — n'activez cette option que si vous êtes certain qu'aucun envoi n'est en cours.",
"blobAuditStart":"Lancer l'audit",
"blobAuditSubmitted":"Tâche d'audit des blobs mise en file d'attente.",
"maxTotalSize":"Capacité totale maximale",
"maxTotalSizeDes":"Nombre total maximal d'octets stockés sous cette politique. Les envois et copies qui dépasseraient cette limite sont rejetés. 0 signifie illimité.",
"overflowPolicy":"Politique de débordement",
"overflowPolicyDes":"Lorsque cette politique est à court de capacité, les nouveaux envois sont redirigés vers la politique sélectionnée. Les chaînes de politiques sont prises en charge.",
"auditEndpoint":"Point de terminaison d'audit de contenu",
"auditEndpointDes":"Point de terminaison HTTP pour l'audit de contenu (ex. modération d'images). Lorsqu'il est défini, partager un fichier stocké sur cette politique envoie son contenu au point de terminaison ; une réponse {\"flagged\":true} bloque le partage. Laisser vide pour désactiver.",
"auditMaxSize":"Limite de taille d'audit",
"auditMaxSizeDes":"Taille maximale d'entité envoyée au point de terminaison d'audit. Les fichiers plus volumineux sont ignorés. 0 signifie aucune limite.",
"overflowNone":"Aucune",
"allowNativeName":"Autoriser les caractères natifs des noms de fichiers",
"allowNativeNameDes":"Autoriser les caractères uniquement illégaux sur les systèmes de fichiers Windows (: * ? \" < > |) dans les noms de fichiers. Peut casser les clients montant sur Windows. Les séparateurs de chemin restent interdits.",
"status":"État",
"statusDes":"Les politiques suspendues continuent de servir les fichiers existants mais rejettent les nouveaux envois.",
"loadBalance":"Équilibrage de charge",
"lbChildren":"Politiques de stockage enfants",
"lbChildPolicy":"Politique de stockage",
"lbWeight":"Poids",
"lbAddChild":"Ajouter une politique enfant",
"lbChildrenDes":"Les nouveaux envois sont répartis entre les politiques enfants proportionnellement à leur poids.",
"lbWizardDes":"Une politique d'équilibrage de charge répartit les envois entre des politiques enfants pondérées. Les enfants sont configurés après la création."
},
"node":{
"slave":"esclave",
@ -1214,7 +1336,11 @@
"hostHeaderHint":"S'il y a une erreur de signature, veuillez vérifier si le proxy inverse devant le nœud transmet l'en-tête <0>Host</0>.",
"features":"Fonctionnalités activées",
"remoteDownload":"Téléchargement distant",
"refresh":"Actualiser"
"refresh":"Actualiser",
"ytdlpDes":"Exécute yt-dlp sur le serveur du nœud cible avec le même utilisateur/niveau d'accès que Cloudreve. yt-dlp est invoqué comme un processus CLI par tâche - aucun démon requis.",
"ytdlpOptionDes":"Options CLI supplémentaires de yt-dlp lors de la création d'une tâche de téléchargement, au format JSON clé-valeur - les clés deviennent des arguments --flag tels quels, voir le <0>référentiel des options yt-dlp</0>.",
"ytdlpBinary":"Binaire yt-dlp",
"ytdlpBinaryDes":"Chemin ou nom de l'exécutable yt-dlp sur le serveur du nœud. Par défaut yt-dlp résolu depuis le PATH."
},
"group":{
"countUser":"Nombre",
@ -1300,7 +1426,38 @@
"notCopy":"Ne pas copier",
"confirmDelete":"Êtes-vous sûr de vouloir supprimer le groupe {{group}} ?",
"new":"Nouveau groupe",
"editGroup":"Modifier {{group}}"
"editGroup":"Modifier {{group}}",
"availablePolicyDesPro":"Sélection multiple, les utilisateurs peuvent basculer librement entre les politiques de stockage dans la plage sélectionnée.",
"loginIPWhitelist":"Liste blanche d'IP de connexion",
"loginIPWhitelistDes":"Restreindre la connexion à ces IP ou plages CIDR, une par ligne. Laisser vide pour tout autoriser.",
"delegatedAdminDes":"Accorder l'accès à certaines sections du tableau de bord uniquement. Les utilisateurs de ce groupe peuvent ouvrir le panneau d'administration, mais seules les sections activées fonctionnent — tous les autres appels d'API admin sont rejetés.",
"sectionUsers":"Utilisateurs",
"sectionGroups":"Groupes",
"sectionFiles":"Fichiers & blobs",
"sectionShares":"Partages",
"sectionStorage":"Politiques de stockage & nœuds",
"sectionQueue":"File de tâches",
"sectionSettings":"Réglages du site & OAuth",
"sectionPayment":"Paiements",
"sectionEvents":"Événements",
"sectionReports":"Signalements d'abus",
"shareSell":"Vendre des liens de partage",
"shareSellDes":"Lorsqu'activé, les utilisateurs peuvent définir un prix en points sur les liens de partage qu'ils créent.",
"wabDAVReadOnly":"WebDAV en lecture seule",
"wabDAVReadOnlyDes":"Si activé, les montages WebDAV pour les utilisateurs de ce groupe deviennent en lecture seule — les envois, suppressions, déplacements et autres méthodes d'écriture sont rejetés.",
"aria2TaskLimit":"Nombre maximal de tâches de téléchargement distant simultanées",
"aria2TaskLimitDes":"Nombre maximal de tâches de téléchargement distant actives par utilisateur (en file, en cours ou suspendues). 0 = illimité.",
"aria2MaxFileSize":"Taille maximale par tâche de téléchargement (octets)",
"aria2MaxFileSizeDes":"Les tâches de téléchargement distant dont la taille totale résolue dépasse cette limite sont interrompues. 0 = illimité.",
"setExplicitUser":"Définir les permissions de fichiers",
"setExplicitUserDes":"Les membres peuvent définir des permissions détaillées de lecture/création/mise à jour/suppression sur les fichiers et dossiers qu'ils possèdent, pour des utilisateurs, groupes, visiteurs anonymes ou tous les autres.",
"switchablePolicies":"Politiques de stockage commutables",
"switchablePoliciesDes":"Politiques vers lesquelles les membres de ce groupe peuvent basculer librement. La politique par défaut ci-dessus est toujours disponible.",
"weightedPolicies":"Sélection pondérée des politiques",
"weightedPoliciesDes":"Lorsqu'activé, les envois sans préférence de politique explicite sont routés vers la politique autorisée ayant le plus d'espace libre pouvant accueillir le fichier. Seules les politiques avec une limite de capacité totale sont pondérées.",
"sharePublicList":"Répertoire public des partages",
"sharePublicListDes":"Lorsqu'activé, les utilisateurs peuvent inscrire leurs liens de partage dans le répertoire public (page Découvrir). Les partages protégés par mot de passe ne peuvent pas être listés."
},
"user":{
"createdAt":"Créé le",
@ -1350,7 +1507,34 @@
"deleteXUsers":"Supprimer {{num}} utilisateurs",
"confirmBatchDelete":"Êtes-vous sûr de vouloir supprimer {{num}} utilisateurs ?",
"calibrateStorage":"Calibrer le stockage",
"calibrateStorageSuccess":"Stockage calibré avec succès."
"calibrateStorageSuccess":"Stockage calibré avec succès.",
"relocateFiles":"Déplacer les fichiers",
"banExpires":"Expiration du bannissement",
"banExpiresDes":"Facultatif. Le bannissement se lève automatiquement après cette heure ; vide signifie permanent.",
"banReason":"Raison du bannissement",
"banReasonDes":"Facultatif. Affichée à l'utilisateur lorsqu'une connexion bannie est rejetée.",
"lastLogin":"Dernière connexion",
"uids":"ID utilisateur",
"uidsPlaceholder":"IDs séparés par des virgules, ex. 2,3,5",
"editXUsers":"Modifier {{num}} utilisateurs",
"batchEditXUsers":"Modifier en lot {{num}} utilisateurs",
"noChange":"Aucun changement",
"invitationCodes":"Codes d'invitation",
"invitationCodesDes":"Codes pouvant être requis pour les inscriptions publiques. Créez, partagez et révoquez-les ici.",
"invitationCodeCopied":"Code copié dans le presse-papiers.",
"invitationCodeCopy":"Copier",
"invitationCodeDefaultGroup":"Défaut",
"noInvitationCodes":"Aucun code d'invitation pour le moment.",
"loadMore":"Charger plus",
"additionalGroups":"Groupes supplémentaires",
"additionalGroupsDes":"Appartenances de groupe supplémentaires en plus du groupe principal. Les permissions, quotas et politiques de stockage sont fusionnés (union) entre tous les groupes."
},
"file":{
"deleteXFiles":"Supprimer {{num}} fichiers",
@ -1422,7 +1606,15 @@
"shareLinkExisted":"A un lien de partage",
"directLinkExisted":"A un lien direct",
"isUploading":"En cours de téléchargement",
"selectUser":"Sélectionner un utilisateur"
"selectUser":"Sélectionner un utilisateur",
"referenceCount":"Nombre de références",
"awaitingRecycle":"En attente de recyclage",
"refCountGt":"Supérieur à",
"refCountLt":"Inférieur à",
"refCountEq":"Égal à",
"deletedState":"État supprimé",
"liveOnly":"Fichiers actifs uniquement",
"trashOnly":"Corbeille uniquement"
},
"entity":{
"refenenceCount":"Nombre de références",
@ -1433,7 +1625,15 @@
"confirmBatchDelete":"Êtes-vous sûr de vouloir supprimer {{num}} Blobs ?",
"deleteXEntities":"Supprimer {{num}} Blobs",
"forceDelete":"Forcer la suppression",
"forceDeleteDes":"S'il faut supprimer l'enregistrement Blob indépendamment de la suppression du fichier physique."
"forceDeleteDes":"S'il faut supprimer l'enregistrement Blob indépendamment de la suppression du fichier physique.",
"relocateXEntities":"Déplacer {{num}} blobs",
"relocateTitle":"Déplacer les blobs",
"relocateEntitiesDes":"Déplacer les données de {{num}} blobs sélectionnés vers une autre politique de stockage. La tâche s'exécute en arrière-plan et peut être reprise.",
"relocatePolicyDes":"Déplacer tous les blobs stockés sur « {{name}} » vers une autre politique de stockage. La tâche s'exécute en arrière-plan et peut être reprise.",
"relocateUserDes":"Déplacer tous les blobs possédés par « {{name}} » vers une autre politique de stockage. La tâche s'exécute en arrière-plan et peut être reprise.",
"relocatePolicy":"Migrer tous les blobs sur {{name}} vers une autre politique",
"relocateStart":"Lancer le déplacement",
"relocateSubmitted":"Tâche de déplacement soumise"
},
"event":{
"cleanup":"Nettoyage",
@ -1469,7 +1669,8 @@
"confirmDelete":"Êtes-vous sûr de vouloir supprimer cet événement ?",
"deleteXEvents":"Supprimer {{num}} événements",
"confirmBatchDelete":"Êtes-vous sûr de vouloir supprimer {{num}} événements ?",
"allEventTypes":"Tous les types d'événements"
"allEventTypes":"Tous les types d'événements",
"noEvents":"Aucun événement enregistré pour le moment"
},
"share":{
"confirmBatchDelete":"Êtes-vous sûr de vouloir supprimer {{num}} partages ?",
@ -1547,7 +1748,8 @@
"finished":"Terminé",
"canceled":"Annulé/Arrêté",
"unknown":"Inconnu",
"errorMsg":"Message d'erreur"
"errorMsg":"Message d'erreur",
"blobAudit":"Auditer les blobs sur la politique de stockage #{{policyID}} ({{count}} orphelins)"
},
"payment":{
"tradeNo":"N° de transaction",
@ -1726,7 +1928,21 @@
"customPaymentEndpointDes":"URL à demander lors de la création d'une commande de paiement.",
"appFeedback":"URL de feedback",
"appForum":"URL du forum utilisateur",
"appLinkDes":"Sera affiché dans le client mobile, laisser vide pour cacher l'élément de menu. Ce paramètre ne prendra effet que si la licence VOL est valide."
"appLinkDes":"Sera affiché dans le client mobile, laisser vide pour cacher l'élément de menu. Ce paramètre ne prendra effet que si la licence VOL est valide.",
"addTrafficPack":"Ajouter un pack de trafic",
"editTrafficPack":"Modifier un pack de trafic",
"trafficSize":"Quantité de trafic (octets)",
"trafficSizeDes":"Octets de trafic en lien direct accordés à l'achat ; les packs sont permanents.",
"subAddressChars":"Caractères de sous-adresse",
"subAddressCharsDes":"Caractères traités comme séparateurs de sous-adresse dans la partie locale de l'e-mail (ex. <code>+-.</code> pour les alias de type Gmail/iCloud). Vide par défaut à <code>+</code>.",
"manualAdjust":"Ajustement manuel des crédits",
"adjustEmail":"E-mail de l'utilisateur",
"adjustDelta":"Changement de points",
"adjustDeltaDes":"Positif ajoute des crédits, négatif en déduit",
"adjustNote":"Note",
"adjustSubmit":"Appliquer",
"adjustSuccess":"Crédits ajustés",
"adjustFailed":"Échec de l'ajustement des crédits"
},
"pro":{
"title":"Fonctionnalités exclusives de la version Pro",
"clickToRefresh":"Clicca per aggiornare il CAPTCHA",
"switchLanguage":"Cambia lingua"
"switchLanguage":"Cambia lingua",
"invitationCode":"Codice di invito",
"phoneNumber":"Numero di telefono",
"smsCode":"Codice SMS",
"sendSmsCode":"Invia codice",
"resendSmsCode":"Reinvia ({{seconds}}s)",
"smsSignIn":"Accedi con SMS",
"resetViaSms":"Ripristina via SMS invece",
"emailChangedTitle":"Email modificata",
"emailChanged":"Il tuo indirizzo email è stato modificato correttamente.",
"signInWith":"Accedi con {{name}}",
"ssoFailed":"Accesso single sign-on non riuscito. Riprova o usa un altro metodo di accesso.",
"ssoError":{
"generic":"Accesso single sign-on non riuscito. Riprova.",
"sso_not_configured":"Il single sign-on non è configurato. Contatta l'amministratore.",
"sso_discovery_failed":"Impossibile contattare il provider di identità. Riprova più tardi.",
"sso_state_failed":"Avvio della sessione di accesso non riuscito. Riprova.",
"sso_denied":"Accesso negato dal provider di identità.",
"sso_invalid_response":"Risposta non valida dal provider di identità.",
"sso_state_expired":"La sessione di accesso è scaduta. Riprova.",
"sso_exchange_failed":"Completamento dell'accesso con il provider di identità non riuscito.",
"sso_token_invalid":"Verifica della risposta di identità non riuscita.",
"sso_no_email":"Il provider di identità non ha restituito un indirizzo email.",
"sso_account_unavailable":"Nessun account disponibile per questa identità. La registrazione potrebbe essere limitata."
},
"browsePublicShares":"Sfoglia le condivisioni pubbliche",
"inputBackupCode":"Inserisci uno dei tuoi codici di ripristino",
"useBackupCode":"Usa un codice di ripristino invece",
"use2FACode":"Usa il codice dell'autenticatore invece"
},
"oauth":{
"authorize":"Autorizza applicazione",
@ -147,7 +175,11 @@
"toDarkMode":"Scuro",
"toLightMode":"Chiaro",
"myProfile":"Il mio profilo",
"dashboard":"Dashboard"
"dashboard":"Dashboard",
"shop":"Negozio",
"addAccount":"Aggiungi account",
"signedOut":"Disconnesso",
"discover":"Scopri"
},
"fileManager":{
"continueInDesktop":"Autorizzazione riuscita, continua nel client desktop.",
@ -488,7 +520,37 @@
"noEncryption":"Non crittografato",
"ftsStatus":"Indice full-text",
"ftsIndexed":"Indicizzato",
"ftsNotIndexed":"Non indicizzato"
"ftsNotIndexed":"Non indicizzato",
"aclDes":"Permessi granulari per «{{name}}». Le voci elencate sovrascrivono i permessi predefiniti del link di condivisione per i visitatori corrispondenti.",
"aclSubject":"Soggetto",
"aclAnonymous":"Visitatori anonimi",
"aclEveryone":"Tutti gli altri",
"aclGroup":"gruppo",
"aclPerm_read":"Lettura",
"aclPerm_create":"Creazione",
"aclPerm_update":"Aggiornamento",
"aclPerm_delete":"Eliminazione",
"loop":"Ciclo",
"modelViewer":"Visualizzatore modelli 3D",
"modelLoadFailed":"Caricamento del modello 3D non riuscito",
"publicListingDes":"Mostra questa condivisione nella pagina Scopri, visibile a chiunque, inclusi i visitatori anonimi. Non disponibile per condivisioni protette da password.",
"hideReadme":"Nascondi file readme",
"hideReadmeDes":"Mantieni il file README fuori dall'elenco della condivisione. I visitatori vedono comunque il readme renderizzato.",
"viewSetting":"Impostazione vista",
"saved":"Salvato",
"notSet":"Non impostato",
"deleteViewSetting":"Elimina impostazione vista"
},
"uploader":{
"fileCopyName":"Copia di ",
@ -684,7 +783,7 @@
"preparing":"Preparazione...",
"processing":"Elaborazione...",
"progressDescription":"{{uploaded}} caricati, {{total}} totale - {{percentage}}%",
"progressDescriptionFull":"{{uploaded}} caricati, {{total}} totale - {{percentage}}% ({{speed}})",
"progressDescriptionFull":"{{uploaded}} caricati, {{total}} totale - {{percentage}}% ({{speed}}){{eta}}",
"parseResponseError":"Impossibile analizzare la risposta: {{msg}} ({{content}})",
"concurrentTaskNumber":"Limite attività concorrenti",
"dropFileHere":"Rilascia file per caricare"
"dropFileHere":"Rilascia file per caricare",
"etaSuffix":", ETA {{eta}}"
},
"share":{
"free":"Gratuito",
@ -790,7 +890,19 @@
"preview":"Anteprima",
"incorrectPassword":"Password non corretta.",
"shareNotExist":"Il link di condivisione non è valido o è scaduto.",
"copyLinkToClipboard":"Copia link negli appunti"
"copyLinkToClipboard":"Copia link negli appunti",
"paidShareDes":"Questa è una condivisione a pagamento. L'acquisto costa {{price}} punti e sblocca i download.",
"purchaseForPoints":"Acquista per {{price}} pt",
"signInToPurchase":"Accedi per acquistare",
"yourBalance":"Saldo: {{credits}} punti",
"saveToMyFiles":"Salva nei miei file",
"savedToMyFiles":"Condivisione salvata nei tuoi file.",
"saveShareLink":"Salva link di condivisione",
"saveShareLinkHint":"Incolla un link di condivisione come https://example.com/s/abc123",
"shareLink":"Link di condivisione",
"savedAs":"Salvato come (facoltativo)",
"sharePasswordRequired":"Questa condivisione richiede una password.",
"invalidShareLink":"Impossibile analizzare questo link di condivisione."
},
"download":{
"noFilesFound":"Nessun file trovato",
@ -1054,7 +1166,80 @@
"relocateFileTo":"Riposiziona policy di archiviazione a {{policy}} per <0></0>{{more}}",
"extractFileTo":"Estrai <0></0>{{more}} in <1></1>",
"createArchiveTo":"Crea file di archivio in <1></1> per <0></0>{{more}}",
"importFileTo":"Importa file da {{policy}} in <0></0>"
"importFileTo":"Importa file da {{policy}} in <0></0>",
"preferredViewers":"App predefinite",
"preferredViewersDes":"App scelte con «Sempre» nella finestra apri con. Si applicano su tutti i tuoi dispositivi; rimuovine una per essere interrogato di nuovo.",
"preferredViewersEmpty":"Nessuna app predefinita salvata. Scegli «Sempre» nella finestra apri con di un file.",
"trashRetentionDes":"Giorni in cui un file resta nel cestino prima dell'eliminazione automatica. 0 eredita il predefinito del gruppo. Si applica ai file spostati nel cestino dopo la modifica.",
"linkedAccounts":"Account collegati",
"providerQQ":"QQ",
"unlinkAccount":"Scollega",
"unlinkAccountConfirm":"Sei sicuro di voler scollegare questo account? Non potrai più accedervi.",
"linkQQAccount":"Collega account QQ",
"providerWeChat":"WeChat",
"linkWeChatAccount":"Collega account WeChat",
"phoneBinding":"Associazione telefono",
"bindPhone":"Associa telefono",
"unbindPhone":"Disassocia",
"unbindPhoneConfirm":"Sei sicuro di voler disassociare questo numero di telefono? Non potrai più accedere né ripristinare la password con esso.",
"changeEmail":"Cambia",
"changeEmailDes":"Un link di conferma sarà inviato al nuovo indirizzo. La tua email attuale ({{email}}) resta attiva fino alla conferma.",
"newEmail":"Nuovo indirizzo email",
"changeEmailPasswordDes":"Inserisci la tua password attuale per confermare.",
"emailChangeSent":"Email di conferma inviata al nuovo indirizzo.",
"copySecret":"Non riesci a scansionare? Clicca per copiare la chiave di configurazione",
"secretCopied":"Chiave di configurazione copiata",
"shareSiteDefault":"Predefinito del sito",
"shareSiteDefaultDes":"Segui il predefinito globale configurato dall'amministratore.",
"tagsDes":"Rinomina, ricolora o elimina un'etichetta su tutti i tuoi file. La ridenominazione su un'etichetta esistente le unisce.",
"tagName":"Etichetta",
"tagFiles":"File",
"tagActions":"Azioni",
"noTags":"Nessuna etichetta ancora",
"editTag":"Modifica etichetta",
"deleteTag":"Elimina etichetta",
"deleteTagDes":"Rimuovere l'etichetta «{{name}}» da {{count}} file? I file stessi sono conservati.",
"tagUpdated":"Etichetta aggiornata",
"tagDeleted":"Etichetta eliminata",
"tagNameInvalid":"Il nome dell'etichetta non può essere vuoto né contenere «:»",
"backup2FACodes":"Codici di ripristino",
"backupCodesDes":"I codici di ripristino ti permettono di accedere quando l'autenticatore non è disponibile. La generazione di un nuovo lotto invalida tutti i codici precedenti.",
"backupCodesWarning":"Salva questi codici ora. Ciascuno può essere usato una sola volta e non saranno più mostrati.",
"copyCodes":"Copia codici"
},
"vas":{
"points":"Punti",
@ -1188,5 +1373,43 @@
"dontShowAgain":"Non mostrare più",
"openPaymentLink":"Apri link di pagamento",
"creditReasonAdjust":"Aggiustamento manuale"
},
"vault":{
"title":"Spazio privato",
"description":"I file nel tuo spazio privato sono nascosti durante la navigazione e la ricerca finché non lo sblocchi con una password separata. I file dello spazio privato non possono essere condivisi né accessibili via WebDAV.",
"enable":"Attiva spazio privato",
"enabled":"Spazio privato attivato",
"disable":"Disattiva",
"disabled":"Spazio privato disattivato",
"disableDescription":"La disattivazione rimuove il blocco; la cartella e il suo contenuto restano file normali.",
"confirmDisable":"Conferma disattivazione",
"setPassword":"Imposta password spazio privato",
"confirmPassword":"Password spazio privato",
"enterPassword":"Password spazio privato",
"lockNow":"Blocca ora",
"locked":"Spazio privato bloccato",
"unlocked":"Sbloccato",
"lockedState":"Bloccato",
"lockedTitle":"Questa cartella è nel tuo spazio privato. Sbloccala per continuare.",
"uploadDedupScopeDes":"Quando un client invia un hash del contenuto, il server cerca un file identico completato e materializza l'upload istantaneamente senza trasferire byte.",
"uploadDedupScope_off":"Disattivato",
"uploadDedupScope_offDes":"Nessun rilevamento duplicati; ogni upload trasferisce byte.",
"uploadDedupScope_owner":"Stesso utente",
"uploadDedupScope_ownerDes":"Deduplica solo rispetto ai file già posseduti dall'utente che carica.",
"uploadDedupScope_global":"Globale",
"uploadDedupScope_globalDes":"Deduplica rispetto a tutti i file completati su questo sito.",
"translations":"Traduzioni",
"translationsDes":"Sovrascritture per lingua. Lascia vuoto per ripiegare sul valore predefinito. Gli utenti vedono la variante corrispondente alla loro impostazione di lingua o alla lingua del browser.",
"invitationCodeRequired":"Codice di invito obbligatorio",
"invitationCodeRequiredDes":"Le nuove registrazioni devono fornire un codice di invito valido. I codici sono gestiti in Utenti - Codici di invito.",
"smtpAuthMethod":"Metodo di autenticazione SMTP",
"smtpAuthMethodDes":"L'auto-scoperta seleziona solo meccanismi sicuri e non invia mai credenziali in chiaro su connessioni non cifrate. Se il tuo server offre solo PLAIN/LOGIN senza crittografia, scegli il metodo «-noenc» corrispondente — le credenziali saranno trasmesse in chiaro.",
"smtpAuth_autodiscover":"Auto scoperta",
"smtpAuth_plain":"PLAIN",
"smtpAuth_plain_noenc":"PLAIN (consenti non cifrato)",
"smtpAuth_login":"LOGIN",
"smtpAuth_login_noenc":"LOGIN (consenti non cifrato)",
"smtpAuth_cram_md5":"CRAM-MD5",
"smtpAuth_scram_sha_1":"SCRAM-SHA-1",
"smtpAuth_scram_sha_256":"SCRAM-SHA-256",
"smtpAuth_xoauth2":"XOAUTH2",
"smtpAuth_noauth":"Nessuna autenticazione",
"tcaptcha":"Tencent Captcha",
"tcaptchaAppId":"CaptchaAppId",
"tcaptchaAppSecretKey":"AppSecretKey",
"tcaptchaSecretId":"SecretId",
"tcaptchaSecretKey":"SecretKey",
"tcaptchaDes":"Ottieni il tuo CaptchaAppId e AppSecretKey dalla <0>console Tencent Captcha</0>.",
"tcaptchaSecretDes":"SecretId e SecretKey di una credenziale API Tencent Cloud usata per chiamare DescribeCaptchaResult.",
"trafficProductSettings":"Prodotto traffico",
"trafficProductsDes":"Configura i prodotti che gli utenti possono acquistare per ricaricare la loro dotazione di traffico a link diretto.",
"auditRetentionDays":"Conservazione (giorni)",
"auditRetentionDaysDes":"Elimina gli eventi più vecchi di questo numero di giorni. 0 conserva gli eventi per sempre.",
"ssoIssuer":"URL dell'emittente",
"ssoIssuerDes":"URL base dell'emittente OIDC, es. <0>https://keycloak.example.com/realms/master</0>. I metadati del provider sono recuperati da <1>.well-known/openid-configuration</1> sotto questo URL.",
"ssoRegisterEnabledDes":"Crea automaticamente un account locale quando un utente accede via SSO per la prima volta. Il filtro di registrazione email sotto si applica anch'esso.",
"downloadCdnRoutes":"Route CDN di download",
"downloadCdnRoutesDes":"Endpoint di download alternativi offerti agli utenti, uno per riga nel formato nome=url (es. Linea 1=https://cdn1.example.com). Le route devono proxyare il percorso e la query completi verso questo sito affinché le URL firmate restino valide; le intestazioni CORS sono necessarie per i download nel browser.",
"downloadCdnShuffle":"Distribuisci route di download",
"downloadCdnShuffleDes":"Distribuisci casualmente ogni link di download generato tra l'URL del sito e tutte le route CDN configurate, così che le esportazioni batch ai gestori di download tocchino endpoint diversi. Il selettore manuale di route è nascosto quando attivo.",
"ssoAutoRedirect":"Reindirizzamento automatico a SSO",
"ssoAutoRedirectDes":"Salta il modulo di accesso e invia i visitatori direttamente al provider di identità. Aggiungi <0>?nosso=1</0> all'URL di accesso per raggiungere il modulo password (es. per recupero admin).",
"ssoCallbackUrl":"URL di callback",
"ssoCallbackUrlDes":"Registra questa URL come URL di reindirizzamento/callback nel tuo provider di identità: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"L'App ID dell'applicazione web creata nella <0>console QQ Connect</0> (connect.qq.com).",
"qqAppSecret":"App Key",
"qqCallbackUrl":"URL di callback",
"qqCallbackUrlDes":"Registra questa URL come dominio/URL di callback web nella console QQ Connect: <0>{{url}}</0>",
"qqRegisterEnabledDes":"Crea automaticamente un account locale quando un utente accede via QQ per la prima volta. QQ non fornisce indirizzo email, gli account creati usano un indirizzo sintetico @connect.qq.local.",
"wechatConnect":"Accesso con scansione WeChat",
"wechatAppID":"App ID",
"wechatAppIDDes":"L'AppID dell'applicazione web creata nella <0>WeChat Open Platform</0> (open.weixin.qq.com).",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"URL di callback",
"wechatCallbackUrlDes":"Registra il dominio di questa URL come dominio di callback di autorizzazione nella console WeChat Open Platform: <0>{{url}}</0>",
"wechatRegisterEnabledDes":"Crea automaticamente un account locale quando un utente accede via WeChat per la prima volta. WeChat non fornisce indirizzo email, gli account creati usano un indirizzo sintetico @connect.wechat.local.",
"smsSignIn":"Accesso via SMS",
"smsEndpoint":"Endpoint del gateway",
"smsEndpointDes":"Endpoint HTTP del tuo provider SMS. I segnaposto <0>{phone}</0> e <0>{code}</0> sono sostituiti prima di ogni richiesta.",
"smsMethodDes":"Metodo HTTP usato per la richiesta al gateway. Per GET, i segnaposto sono resi solo nell'URL dell'endpoint.",
"smsHeaders":"Intestazioni di richiesta",
"smsHeadersDes":"Una coppia `Key: Value` per riga, es. Authorization: Bearer <token>.",
"smsBodyTemplate":"Modello corpo della richiesta",
"smsBodyTemplateDes":"Corpo inviato per le richieste POST. I segnaposto <0>{phone}</0> e <0>{code}</0> sono sostituiti prima di ogni richiesta.",
"smsRegisterEnabledDes":"Crea automaticamente un account locale quando un utente accede tramite codice SMS per la prima volta. Gli account creati usano un indirizzo sintetico @sms.local.",
"themeVisible":"Visibile",
"shareDefaultPrivate":"Condivisione privata per default",
"shareDefaultPrivateDes":"Le nuove condivisioni sono private per default (protette da password). Gli utenti possono sovrascriverlo nelle loro impostazioni personali.",
"defaultShareLinksInProfile":"Visibilità predefinita condivisioni del profilo",
"defaultShareLinksInProfileDes":"Controlla quali condivisioni appaiono nella pagina profilo pubblica di un utente quando non ne ha scelta alcuna.",
"profileSharePublicOnly":"Solo condivisioni senza password",
"profileShareAll":"Tutte le condivisioni",
"profileShareHide":"Nascondi tutte le condivisioni"
},
"giftCodes":{
"giftCodesSettings":"Codici Regalo",
@ -852,7 +937,11 @@
"copyAndClose":"Copia e Chiudi",
"duratonTimes":"Quantità",
"duratonTimesDes":"Quante quantità del prodotto sono incluse in ogni codice regalo.",
"unknownProduct":"Prodotto Sconosciuto"
"unknownProduct":"Prodotto Sconosciuto",
"giftCodeTypeTraffic":"Traffico link diretto",
"giftCodeDeleteFailed":"Eliminazione del codice regalo non riuscita",
"giftCodeCreateFailed":"Generazione dei codici regalo non riuscita",
"giftCodeAmountHelp":"Importo concesso per codice"
},
"policy":{
"acceleratedDomainUpload":"Usa dominio di accelerazione trasferimento per upload",
"enableFileEncryptionDes":"Quando abilitato, i blob dei file verranno archiviati crittografati. La modifica di questa impostazione influisce solo sui file appena aggiunti.",
"encryptedFile":"File crittografati"
"encryptedFile":"File crittografati",
"mediaExtractorUpyun":"servizio di elaborazione immagini",
"nativeMediaMetaExtUpyun":"Il servizio di elaborazione immagini supporta <0>l'estrazione EXIF delle immagini</0>. Non è necessaria alcuna configurazione manuale, basta aggiungere sopra le estensioni da elaborare.",
"thumbForceProxyDes":"Genera sempre le miniature con la pipeline del proxy locale, anche quando il backend di archiviazione offre un'API nativa di miniature. Implica la generazione proxy delle miniature.",
"thumbStoragePolicy":"Politica di archiviazione miniature",
"thumbStoragePolicySource":"Uguale al file",
"thumbStoragePolicyDes":"Le miniature generate sono archiviate sotto la politica selezionata invece che sotto la politica di archiviazione del file stesso.",
"blobAudit":"Audita blob: {{name}}",
"blobAuditDes":"Scansiona il backend di archiviazione ed elenca gli oggetti fisici non referenziati da alcun record di file. Utile per trovare blob fantasma lasciati da trasferimenti falliti.",
"blobAuditDelete":"Elimina blob orfani",
"blobAuditDeleteWarning":"Gli oggetti orfani saranno rimossi permanentemente dal backend di archiviazione. I file ancora in upload possono apparire come orfani — attivalo solo quando sei sicuro che non ci siano upload in corso.",
"blobAuditStart":"Avvia audit",
"blobAuditSubmitted":"Attività di audit blob in coda.",
"maxTotalSize":"Capacità totale massima",
"maxTotalSizeDes":"Numero massimo totale di byte archiviati sotto questa politica. Gli upload e le copie che la supererebbero sono rifiutati. 0 significa illimitato.",
"overflowPolicy":"Politica di overflow",
"overflowPolicyDes":"Quando questa politica esaurisce la capacità, i nuovi upload confluiscono nella politica selezionata. Sono supportate catene di politiche.",
"auditEndpoint":"Endpoint audit contenuti",
"auditEndpointDes":"Endpoint HTTP per l'audit dei contenuti (es. moderazione immagini). Se impostato, condividere un file archiviato su questa politica invia il suo contenuto all'endpoint; una risposta {\"flagged\":true} blocca la condivisione. Lascia vuoto per disattivare.",
"auditMaxSize":"Limite dimensione audit",
"auditMaxSizeDes":"Dimensione massima dell'entità inviata all'endpoint di audit. I file più grandi sono saltati. 0 significa nessun limite.",
"overflowNone":"Nessuna",
"allowNativeName":"Consenti caratteri nativi nei nomi file",
"allowNativeNameDes":"Permetti caratteri solo illegali sui filesystem Windows (: * ? \" < > |) nei nomi dei file. Può rompere i client che montano su Windows. I separatori di percorso restano vietati.",
"status":"Stato",
"statusDes":"Le politiche sospese continuano a servire i file esistenti ma rifiutano i nuovi upload.",
"loadBalance":"Bilanciamento carico",
"lbChildren":"Politiche di archiviazione figlie",
"lbChildPolicy":"Politica di archiviazione",
"lbWeight":"Peso",
"lbAddChild":"Aggiungi politica figlia",
"lbChildrenDes":"I nuovi upload sono distribuiti tra le politiche figlie proporzionalmente al loro peso.",
"lbWizardDes":"Una politica di bilanciamento del carico distribuisce gli upload tra politiche figlie ponderate. Le figlie sono configurate dopo la creazione.",
"chunkSizeDesOd":"Intervallo consentito: 5 MB ~ 5 GB, OneDrive richiede un multiplo intero di 320 KiB (327.680 byte)."
},
"node":{
"slave":"slave",
@ -1213,7 +1336,11 @@
"hostHeaderHint":"Se c'è un errore di firma, controlla se il proxy inverso davanti al nodo sta passando l'header <0>Host</0>.",
"features":"Funzionalità abilitate",
"remoteDownload":"Download remoto",
"refresh":"Aggiorna"
"refresh":"Aggiorna",
"ytdlpDes":"Esegue yt-dlp sul server del nodo target con lo stesso utente/livello di accesso di Cloudreve. yt-dlp è invocato come processo CLI per attività - nessun demone richiesto.",
"ytdlpOptionDes":"Flag CLI aggiuntivi di yt-dlp alla creazione di un'attività di download, in formato JSON chiave-valore - le chiavi diventano argomenti --flag tali e quali, vedi il <0>riferimento delle opzioni yt-dlp</0>.",
"ytdlpBinary":"Binario yt-dlp",
"ytdlpBinaryDes":"Percorso o nome dell'eseguibile yt-dlp sul server del nodo. Predefinito yt-dlp risolto dal PATH."
},
"group":{
"countUser":"Conteggio",
@ -1299,7 +1426,38 @@
"notCopy":"Non copiare",
"confirmDelete":"Sei sicuro di voler eliminare il gruppo {{group}}?",
"new":"Nuovo gruppo",
"editGroup":"Modifica {{group}}"
"editGroup":"Modifica {{group}}",
"availablePolicyDesPro":"Selezione multipla, gli utenti possono cambiare liberamente politica di archiviazione nell'intervallo selezionato.",
"loginIPWhitelist":"Lista bianca IP di accesso",
"loginIPWhitelistDes":"Limita l'accesso a questi IP o range CIDR, uno per riga. Lascia vuoto per consentire tutto.",
"delegatedAdmin":"Sezioni di amministrazione delegata",
"delegatedAdminDes":"Concedi l'accesso solo a sezioni selezionate della dashboard. Gli utenti di questo gruppo possono aprire il pannello admin, ma solo le sezioni abilitate funzionano — tutte le altre chiamate API admin sono rifiutate.",
"sectionUsers":"Utenti",
"sectionGroups":"Gruppi",
"sectionFiles":"File & blob",
"sectionShares":"Condivisioni",
"sectionStorage":"Politiche di archiviazione & nodi",
"sectionQueue":"Coda attività",
"sectionSettings":"Impostazioni sito & OAuth",
"sectionPayment":"Pagamenti",
"sectionEvents":"Eventi",
"sectionReports":"Segnalazioni abusi",
"shareSell":"Vendi link di condivisione",
"shareSellDes":"Quando attivo, gli utenti possono impostare un prezzo in punti sui link di condivisione che creano.",
"wabDAVReadOnly":"WebDAV sola lettura",
"wabDAVReadOnlyDes":"Se attivo, i montaggi WebDAV per gli utenti di questo gruppo diventano in sola lettura — upload, eliminazioni, spostamenti e altri metodi di scrittura sono rifiutati.",
"aria2TaskLimit":"Max attività di download remoto simultanee",
"aria2TaskLimitDes":"Numero massimo di attività di download remoto attive per utente (in coda, in esecuzione o sospese). 0 = nessun limite.",
"aria2MaxFileSize":"Dimensione massima per attività di download (byte)",
"aria2MaxFileSizeDes":"Le attività di download remoto la cui dimensione totale risolta supera questo limite sono interrotte. 0 = nessun limite.",
"setExplicitUser":"Imposta permessi file",
"setExplicitUserDes":"I membri possono impostare permessi granulari di lettura/creazione/aggiornamento/eliminazione su file e cartelle di loro proprietà, per utenti, gruppi, visitatori anonimi o tutti gli altri.",
"switchablePolicies":"Politiche di archiviazione commutabili",
"switchablePoliciesDes":"Politiche a cui i membri di questo gruppo possono passare liberamente. La politica predefinita sopra è sempre disponibile.",
"weightedPolicies":"Selezione politica ponderata",
"weightedPoliciesDes":"Quando attivo, gli upload senza preferenza di politica esplicita sono instradati alla politica consentita con più spazio libero che contenga il file. Solo le politiche con limite di capacità totale sono ponderate.",
"sharePublicList":"Directory pubblica delle condivisioni",
"sharePublicListDes":"Quando attivo, gli utenti possono iscrivere i loro link di condivisione alla directory pubblica (pagina Scopri). Le condivisioni protette da password non possono essere elencate."
},
"user":{
"createdAt":"Creato il",
@ -1349,7 +1507,34 @@
"deleteXUsers":"Elimina {{num}} utenti",
"confirmBatchDelete":"Sei sicuro di voler eliminare {{num}} utenti?",
"calibrateStorage":"Calibra archiviazione",
"calibrateStorageSuccess":"Archiviazione calibrata con successo."
"calibrateStorageSuccess":"Archiviazione calibrata con successo.",
"relocateFiles":"Riloca file",
"banExpires":"Scadenza ban",
"banExpiresDes":"Facoltativo. Il ban si solleva automaticamente dopo questo orario; vuoto significa permanente.",
"banReason":"Motivo del ban",
"banReasonDes":"Facoltativo. Mostrato all'utente quando un accesso bannato è rifiutato.",
"lastLogin":"Ultimo accesso",
"uids":"ID utente",
"uidsPlaceholder":"ID separati da virgola, es. 2,3,5",
"editXUsers":"Modifica {{num}} utenti",
"batchEditXUsers":"Modifica in batch {{num}} utenti",
"noChange":"Nessun cambiamento",
"invitationCodes":"Codici di invito",
"invitationCodesDes":"Codici che possono essere richiesti per le registrazioni pubbliche. Creali, condividili e revocali qui.",
"invitationCode":"Codice",
"invitationCodeAuto":"Genera automaticamente",
"invitationCodeGroup":"Gruppo",
"invitationCodeMaxUses":"Usi max",
"invitationCodeExpires":"Scade il",
"invitationCodeUses":"Usi",
"invitationCodeCreated":"Codice di invito creato.",
"invitationCodeCopied":"Codice copiato negli appunti.",
"invitationCodeCopy":"Copia",
"invitationCodeDefaultGroup":"Predefinito",
"noInvitationCodes":"Nessun codice di invito ancora.",
"loadMore":"Carica altri",
"additionalGroups":"Gruppi aggiuntivi",
"additionalGroupsDes":"Appartenenze a gruppi aggiuntive oltre al gruppo principale. Permessi, quote e politiche di archiviazione sono unificati (unione) tra tutti i gruppi."
},
"file":{
"deleteXFiles":"Elimina {{num}} file",
@ -1421,7 +1606,15 @@
"shareLinkExisted":"Ha link di condivisione",
"directLinkExisted":"Ha link diretto",
"isUploading":"In caricamento",
"selectUser":"Seleziona utente"
"selectUser":"Seleziona utente",
"referenceCount":"Conteggio riferimenti",
"awaitingRecycle":"In attesa di riciclo",
"refCountGt":"Maggiore di",
"refCountLt":"Minore di",
"refCountEq":"Uguale a",
"deletedState":"Stato eliminato",
"liveOnly":"Solo file attivi",
"trashOnly":"Solo cestino"
},
"entity":{
"refenenceCount":"Conteggio riferimenti",
@ -1432,7 +1625,15 @@
"confirmBatchDelete":"Sei sicuro di voler eliminare {{num}} Blob?",
"deleteXEntities":"Elimina {{num}} Blob",
"forceDelete":"Forza eliminazione",
"forceDeleteDes":"Se eliminare il record Blob indipendentemente dal fatto che il file fisico venga eliminato."
"forceDeleteDes":"Se eliminare il record Blob indipendentemente dal fatto che il file fisico venga eliminato.",
"relocateXEntities":"Riloca {{num}} blob",
"relocateTitle":"Riloca blob",
"relocateEntitiesDes":"Sposta i dati di {{num}} blob selezionati in un'altra politica di archiviazione. L'attività è in background e può essere ripresa.",
"relocatePolicyDes":"Sposta tutti i blob archiviati su «{{name}}» in un'altra politica di archiviazione. L'attività è in background e può essere ripresa.",
"relocateUserDes":"Sposta tutti i blob di proprietà di «{{name}}» in un'altra politica di archiviazione. L'attività è in background e può essere ripresa.",
"relocatePolicy":"Migra tutti i blob su {{name}} in un'altra politica",
"relocateStart":"Avvia rilocazione",
"relocateSubmitted":"Attività di rilocazione inviata"
},
"event":{
"cleanup":"Pulizia",
@ -1468,7 +1669,8 @@
"confirmDelete":"Sei sicuro di voler eliminare questo evento?",
"deleteXEvents":"Elimina {{num}} eventi",
"confirmBatchDelete":"Sei sicuro di voler eliminare {{num}} eventi?",
"allEventTypes":"Tutti i tipi di evento"
"allEventTypes":"Tutti i tipi di evento",
"noEvents":"Nessun evento registrato ancora"
},
"share":{
"confirmBatchDelete":"Sei sicuro di voler eliminare {{num}} condivisioni?",
@ -1546,7 +1748,8 @@
"finished":"Finito",
"canceled":"Annullato/Fermato",
"unknown":"Sconosciuto",
"errorMsg":"Messaggio errore"
"errorMsg":"Messaggio errore",
"blobAudit":"Audita blob sulla politica di archiviazione #{{policyID}} ({{count}} orfani)"
},
"payment":{
"tradeNo":"N. Transazione",
@ -1725,7 +1928,21 @@
"customPaymentEndpointDes":"URL da richiedere durante la creazione di un ordine di pagamento.",
"appFeedback":"URL Feedback",
"appForum":"URL forum utenti",
"appLinkDes":"Verrà visualizzato nel client mobile, lascia vuoto per nascondere la voce menu. Questa impostazione avrà effetto solo se la licenza VOL è valida."
"appLinkDes":"Verrà visualizzato nel client mobile, lascia vuoto per nascondere la voce menu. Questa impostazione avrà effetto solo se la licenza VOL è valida.",
"addTrafficPack":"Aggiungi pacchetto traffico",
"editTrafficPack":"Modifica pacchetto traffico",
"trafficSize":"Quantità di traffico (byte)",
"trafficSizeDes":"Byte di traffico a link diretto concessi all'acquisto; i pacchetti sono permanenti.",
"subAddressChars":"Caratteri sotto-indirizzo",
"subAddressCharsDes":"Caratteri trattati come separatori di sotto-indirizzo nella parte locale dell'email (es. <code>+-.</code> per alias stile Gmail/iCloud). Vuoto predefinito a <code>+</code>.",
"manualAdjust":"Rettifica manuale crediti",
"adjustEmail":"Email utente",
"adjustDelta":"Cambio punti",
"adjustDeltaDes":"Positivo aggiunge crediti, negativo li deduce",
"downloadCdnRoutesDes":"ユーザーに提供する代替ダウンロードエンドポイント。1行1件、name=url形式 (例: Line 1=https://cdn1.example.com)。経路は署名付きURLが有効なままリクエストパスとクエリをこのサイトにプロキシする必要があります。ブラウザ内ダウンロードにはCORSヘッダーが必要です。",
"ftsTikaExtsDes":"쉼표로 구분된 파일 확장자 목록입니다. Tika는 이러한 유형의 파일을 처리합니다.",
"ftsTikaMaxFileSize":"최대 파일 크기",
"ftsTikaMaxFileSizeDes":"콘텐츠 추출을 위해 Tika에 보낼 최대 파일 크기입니다."
"ftsTikaMaxFileSizeDes":"콘텐츠 추출을 위해 Tika에 보낼 최대 파일 크기입니다.",
"navItemVisibility":"표시",
"navScopePublic":"모두",
"navScopeUser":"로그인한 사용자",
"uploadDedupScope":"중복 감지 범위",
"uploadDedupScopeDes":"클라이언트가 콘텐츠 해시를 보내면 서버가 동일한 완료 파일을 찾아 바이트 전송 없이 업로드를 즉시 구체화합니다.",
"uploadDedupScope_off":"끄기",
"uploadDedupScope_offDes":"중복 감지 없음. 모든 업로드가 바이트를 전송합니다.",
"uploadDedupScope_owner":"같은 사용자",
"uploadDedupScope_ownerDes":"업로드하는 사용자가 이미 소유한 파일에 대해서만 중복 제거합니다.",
"uploadDedupScope_global":"전체",
"uploadDedupScope_globalDes":"이 사이트의 모든 완료 파일에 대해 중복 제거합니다.",
"translations":"번역",
"translationsDes":"언어별 재정의입니다. 비워 두면 기본값으로 폴백합니다. 사용자는 언어 설정이나 브라우저 언어에 맞는 변형을 봅니다.",
"invitationCodeRequired":"초대 코드 필요",
"invitationCodeRequiredDes":"신규 가입은 유효한 초대 코드를 제공해야 합니다. 코드는 사용자 - 초대 코드에서 관리합니다.",
"smtpAuthMethod":"SMTP 인증 방식",
"smtpAuthMethodDes":"자동 검색은 안전한 방식만 선택하며 암호화되지 않은 연결에서는 자격 증명을 평문으로 보내지 않습니다. 서버가 암호화 없이 PLAIN/LOGIN만 제공하는 경우 해당 \"-noenc\" 방식을 선택하세요. 자격 증명은 암호화 없이 전송됩니다.",
"tcaptchaSecretDes":"DescribeCaptchaResult 호출에 사용되는 Tencent Cloud API 자격 증명의 SecretId와 SecretKey.",
"trafficProductSettings":"트래픽 상품",
"trafficProductsDes":"사용자가 직접 링크 트래픽 한도를 충전하기 위해 구매할 수 있는 상품을 설정합니다.",
"auditRetentionDays":"보관 (일)",
"auditRetentionDaysDes":"이 일수보다 오래된 이벤트를 삭제합니다. 0은 영구 보관입니다.",
"ssoIssuer":"Issuer URL",
"ssoIssuerDes":"OIDC issuer의 기본 URL, 예: <0>https://keycloak.example.com/realms/master</0>. 공급자 메타데이터는 이 URL 아래의 <1>.well-known/openid-configuration</1>에서 가져옵니다.",
"ssoRegisterEnabled":"자동 가입 허용",
"ssoRegisterEnabledDes":"SSO로 처음 로그인할 때 로컬 계정을 자동으로 만듭니다. 아래의 가입 이메일 필터도 적용됩니다.",
"downloadCdnRoutes":"다운로드 CDN 경로",
"downloadCdnRoutesDes":"사용자에게 제공되는 대체 다운로드 엔드포인트입니다. 한 줄에 하나씩 name=url 형식 (예: Line 1=https://cdn1.example.com). 경로는 서명된 URL이 유효한 채로 전체 요청 경로와 쿼리를 이 사이트로 프록시해야 합니다. 브라우저 내 다운로드에는 CORS 헤더가 필요합니다.",
"downloadCdnShuffle":"다운로드 경로 섞기",
"downloadCdnShuffleDes":"생성되는 각 다운로드 링크를 사이트 URL과 설정된 모든 CDN 경로에 무작위로 분산하여, 다운로드 관리자로의 일괄 내보내기가 서로 다른 엔드포인트를 향하도록 합니다. 활성화 중에는 수동 경로 선택기가 숨겨집니다.",
"ssoAutoRedirect":"SSO로 자동 리디렉션",
"ssoAutoRedirectDes":"로그인 양식을 건너뛰고 방문자를 ID 공급자로 바로 보냅니다. 비밀번호 양식을 열려면 로그인 URL에 <0>?nosso=1</0>을 추가하세요 (예: 관리자 복구용).",
"ssoCallbackUrl":"콜백 URL",
"ssoCallbackUrlDes":"ID 공급자에서 이 URL을 리디렉션/콜백 URL로 등록하세요: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"<0>QQ Connect 콘솔</0> (connect.qq.com)에서 만든 웹 애플리케이션의 App ID.",
"qqAppSecret":"App Key",
"qqCallbackUrl":"콜백 URL",
"qqCallbackUrlDes":"QQ Connect 콘솔에서 이 URL을 웹사이트 콜백 도메인/URL로 등록하세요: <0>{{url}}</0>",
"qqRegisterEnabled":"자동 가입 허용",
"qqRegisterEnabledDes":"QQ로 처음 로그인할 때 로컬 계정을 자동으로 만듭니다. QQ는 이메일을 제공하지 않으므로 프로비저닝된 계정은 합성 @connect.qq.local 주소를 사용합니다.",
"wechatConnect":"WeChat 스캔 로그인",
"wechatAppID":"App ID",
"wechatAppIDDes":"<0>WeChat Open Platform</0> (open.weixin.qq.com)에서 만든 웹 애플리케이션의 AppID.",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"콜백 URL",
"wechatCallbackUrlDes":"WeChat Open Platform 콘솔에서 이 URL의 도메인을 인증 콜백 도메인으로 등록하세요: <0>{{url}}</0>",
"wechatRegisterEnabled":"자동 가입 허용",
"wechatRegisterEnabledDes":"WeChat로 처음 로그인할 때 로컬 계정을 자동으로 만듭니다. WeChat는 이메일을 제공하지 않으므로 프로비저닝된 계정은 합성 @connect.wechat.local 주소를 사용합니다.",
"smsSignIn":"SMS 로그인",
"smsEndpoint":"게이트웨이 엔드포인트",
"smsEndpointDes":"SMS 공급자의 HTTP 엔드포인트입니다. 자리 표시자 <0>{phone}</0>와 <0>{code}</0>는 각 요청 전에 치환됩니다.",
"smsMethodDes":"게이트웨이 요청에 사용되는 HTTP 메서드입니다. GET의 경우 자리 표시자는 엔드포인트 URL에만 렌더링됩니다.",
"smsHeaders":"요청 헤더",
"smsHeadersDes":"한 줄에 하나의 `Key: Value` 쌍, 예: Authorization: Bearer <token>.",
"smsBodyTemplate":"요청 본문 템플릿",
"smsBodyTemplateDes":"POST 요청으로 보내는 본문입니다. 자리 표시자 <0>{phone}</0>와 <0>{code}</0>는 각 요청 전에 치환됩니다.",
"smsRegisterEnabled":"자동 가입 허용",
"smsRegisterEnabledDes":"SMS 코드로 처음 로그인할 때 로컬 계정을 자동으로 만듭니다. 프로비저닝된 계정은 합성 @sms.local 주소를 사용합니다.",
"themeVisible":"표시",
"shareDefaultPrivate":"기본 비공개 공유",
"shareDefaultPrivateDes":"새 공유는 기본적으로 비공개 (비밀번호 보호)입니다. 사용자는 개인 설정에서 재정의할 수 있습니다.",
"defaultShareLinksInProfile":"프로필 기본 공유 표시",
"defaultShareLinksInProfileDes":"사용자가 직접 선택하지 않았을 때 사용자의 공개 프로필 페이지에 표시되는 공유를 제어합니다.",
"remoteDownloadHeadersDescription":"Po jednym nagłówku na linię, np. Cookie: sid=...",
"allowUpload":"Zezwalaj na przesyłanie",
"allowUploadDes":"Odwiedzający mogą przesyłać nowe pliki i tworzyć foldery w tym udostępnionym folderze. Miejsce wlicza się do Twojego limitu.",
"allowEdit":"Zezwalaj na edycję",
"allowEditDes":"Odwiedzający mogą przesyłać, zmieniać nazwy, przenosić i usuwać pliki w tym udostępnionym folderze. Obejmuje uprawnienie do przesyłania.",
"uploadOnly":"Tylko przesyłanie (skrzynka)",
"uploadOnlyDes":"Odwiedzający mogą przesyłać pliki, ale nie mogą oglądać ani pobierać istniejącej zawartości tego udostępnionego folderu.",
"previewOnly":"Tylko podgląd",
"previewOnlyDes":"Odwiedzający mogą przeglądać pliki, ale nie mogą ich pobierać.",
"shareNote":"Notatka",
"shareNoteDes":"Prywatna notatka do identyfikacji tego udostępnienia. Widoczna tylko dla Ciebie w Moich udostępnieniach.",
"shareTargets":"Odbiorcy udostępnienia",
"shareTargetsCount_one":"{{count}} cel",
"shareTargetsCount_few":"{{count}} cele",
"shareTargetsCount_many":"{{count}} celów",
"shareTargetsCount_other":"{{count}} celu",
"publicListing":"W katalogu publicznym",
"publicListingDes":"Pokaż to udostępnienie na stronie Odkrywaj, widoczne dla każdego, w tym anonimowych odwiedzających. Niedostępne dla udostępnień chronionych hasłem.",
"hideReadme":"Ukryj plik readme",
"hideReadmeDes":"Nie pokazuj samego pliku README na liście udostępnienia. Odwiedzający nadal widzą wyrenderowany readme."
},
"uploader":{
"fileCopyName":"Kopia ",
@ -636,7 +730,7 @@
"preparing":"Przygotowywanie...",
"processing":"Przetwarzanie...",
"progressDescription":"Przesłano {{uploaded}}, łącznie {{total}} - {{percentage}}%",
"progressDescriptionFull":"Przesłano {{uploaded}}, łącznie {{total}} - {{percentage}}% ({{speed}})",
"progressDescriptionFull":"Przesłano {{uploaded}}, łącznie {{total}} - {{percentage}}% ({{speed}}){{eta}}",
"progressDescriptionPlaceHolder":" - przesłano",
"uploaded":"Przesłano",
"rootFolder":"Folder główny",
@ -695,7 +789,8 @@
"upyunUploadFailed":"Przesyłanie nie powiodło się: {{msg}}",
"parseResponseError":"Nie można przetworzyć odpowiedzi: {{msg}} ({{content}})",
"shareNotExist":"Link udostępniania jest nieprawidłowy lub wygasł.",
"copyLinkToClipboard":"Kopiuj link do schowka"
"copyLinkToClipboard":"Kopiuj link do schowka",
"paidShareDes":"To jest płatne udostępnienie. Zakup kosztuje {{price}} punktów i odblokowuje pobieranie.",
"purchaseForPoints":"Kup za {{price}} pkt",
"signInToPurchase":"Zaloguj się, aby kupić",
"yourBalance":"Saldo: {{credits}} punktów",
"saveToMyFiles":"Zapisz w moich plikach",
"savedToMyFiles":"Udostępnienie zapisane w Twoich plikach.",
"saveShareLink":"Zapisz link udostępnienia",
"saveShareLinkHint":"Wklej link udostępnienia, np. https://example.com/s/abc123",
"shareLink":"Link udostępnienia",
"savedAs":"Zapisz jako (opcjonalne)",
"sharePasswordRequired":"To udostępnienie wymaga hasła.",
"invalidShareLink":"Nie można przeanalizować tego linku udostępnienia."
},
"download":{
"noFilesFound":"Nie znaleziono plików",
@ -985,7 +1092,81 @@
"relocateFileTo":"Zmień politykę przechowywania na {{policy}} dla <0></0>{{more}}",
"extractFileTo":"Rozpakuj <0></0>{{more}} do <1></1>",
"createArchiveTo":"Utwórz plik archiwum w <1></1> dla <0></0>{{more}}",
"importFileTo":"Importuj pliki z {{policy}} do <0></0>"
"importFileTo":"Importuj pliki z {{policy}} do <0></0>",
"preferredViewers":"Domyślne aplikacje",
"preferredViewersDes":"Aplikacje wybrane z „Zawsze” w oknie otwierania. Obowiązują na wszystkich Twoich urządzeniach; usuń, aby zapytano ponownie.",
"preferredViewersEmpty":"Brak zapisanych domyślnych aplikacji. Wybierz „Zawsze” w oknie otwierania pliku.",
"trashRetention":"Czas przechowywania w koszu (dni)",
"trashRetentionDes":"Liczba dni, przez które plik pozostaje w koszu przed automatycznym usunięciem. 0 dziedziczy domyślne ustawienie grupy. Dotyczy plików przeniesionych do kosza po zmianie.",
"linkedAccounts":"Połączone konta",
"providerQQ":"QQ",
"unlinkAccount":"Odłącz",
"unlinkAccountConfirm":"Czy na pewno chcesz odłączyć to konto? Nie będziesz już mógł się przez nie logować.",
"linkQQAccount":"Połącz konto QQ",
"providerWeChat":"WeChat",
"linkWeChatAccount":"Połącz konto WeChat",
"phoneBinding":"Powiązanie telefonu",
"bindPhone":"Powiąż telefon",
"unbindPhone":"Odwiąż",
"unbindPhoneConfirm":"Czy na pewno chcesz odwiązać ten numer telefonu? Nie będziesz już mógł się przez niego logować ani resetować hasła.",
"changeEmail":"Zmień",
"changeEmailDes":"Link potwierdzający zostanie wysłany na nowy adres. Twój obecny adres ({{email}}) pozostaje aktywny do potwierdzenia.",
"newEmail":"Nowy adres e-mail",
"changeEmailPasswordDes":"Wpisz obecne hasło, aby potwierdzić.",
"emailChangeSent":"E-mail potwierdzający wysłany na nowy adres.",
"copySecret":"Nie możesz zeskanować? Kliknij, aby skopiować klucz konfiguracji",
"secretCopied":"Klucz konfiguracji skopiowany",
"shareSiteDefault":"Domyślne strony",
"shareSiteDefaultDes":"Stosuj domyślne ustawienie dla całej strony skonfigurowane przez administratora.",
"tagsDes":"Zmień nazwę, kolor lub usuń tag we wszystkich plikach. Zmiana nazwy na istniejący tag je scala.",
"tagName":"Tag",
"tagFiles":"Pliki",
"tagActions":"Akcje",
"noTags":"Brak tagów",
"editTag":"Edytuj tag",
"deleteTag":"Usuń tag",
"deleteTagDes":"Usunąć tag „{{name}}” z {{count}} pliku/ów? Same pliki zostają zachowane.",
"tagUpdated":"Tag zaktualizowany",
"tagDeleted":"Tag usunięty",
"tagNameInvalid":"Nazwa tagu nie może być pusta ani zawierać „:”",
"backup2FACodes":"Kody odzyskiwania",
"backupCodesDes":"Kody odzyskiwania pozwalają się zalogować, gdy authenticator jest niedostępny. Wygenerowanie nowej partii unieważnia wszystkie poprzednie kody.",
"backupCodesWarning":"Zapisz te kody teraz. Każdy można użyć raz i nie zostaną pokazane ponownie.",
"copyCodes":"Kopiuj kody",
"finance":"Finanse"
},
"vas":{
"points":"Punkty",
@ -1004,5 +1185,43 @@
],
"reportDescription":"Dodatkowy opis",
"reportAbuseSuccess":"Zgłoszenie przesłane."
},
"vault":{
"title":"Przestrzeń prywatna",
"description":"Pliki w Twojej przestrzeni prywatnej są ukryte przed przeglądaniem i wyszukiwaniem, dopóki nie odblokujesz jej osobnym hasłem. Plików z przestrzeni prywatnej nie można udostępniać ani otwierać przez WebDAV.",
"enable":"Włącz przestrzeń prywatną",
"enabled":"Przestrzeń prywatna włączona",
"disable":"Wyłącz",
"disabled":"Przestrzeń prywatna wyłączona",
"disableDescription":"Wyłączenie usuwa blokadę; folder i jego zawartość pozostają zwykłymi plikami.",
"confirmDisable":"Potwierdź wyłączenie",
"setPassword":"Ustaw hasło przestrzeni prywatnej",
"confirmPassword":"Hasło przestrzeni prywatnej",
"enterPassword":"Hasło przestrzeni prywatnej",
"lockNow":"Zablokuj teraz",
"locked":"Przestrzeń prywatna zablokowana",
"unlocked":"Odblokowano",
"lockedState":"Zablokowano",
"lockedTitle":"Ten folder znajduje się w Twojej przestrzeni prywatnej. Odblokuj, aby kontynuować.",
"badge":"Przestrzeń prywatna"
},
"shop":{
"memberships":"Członkostwa",
"storagePacks":"Pakiety miejsca",
"trafficPacks":"Pakiety ruchu",
"redeem":"Zrealizuj",
"balance":"Saldo: {{credits}} pkt",
"purchased":"Zakupiono: {{name}}",
"permanent":"Dożywotnio",
"noProducts":"Brak dostępnych produktów",
"buyWithPoints":"Kup za {{points}} pkt",
"pointsUnavailable":"Niedostępne za punkty"
},
"announcement":{
"title":"Ogłoszenie",
"dontShowAgain":"Nie pokazuj ponownie"
},
"discover":{
"searchPlaceholder":"Szukaj w udostępnieniach publicznych"
"uploadDedupScopeDes":"Gdy klient wysyła skrót zawartości, serwer szuka identycznego ukończonego pliku i natychmiast materializuje przesyłanie bez transferu bajtów.",
"uploadDedupScope_off":"Wyłączone",
"uploadDedupScope_offDes":"Bez wykrywania duplikatów; każdy przesył transferuje bajty.",
"uploadDedupScope_owner":"Ten sam użytkownik",
"uploadDedupScope_ownerDes":"Deduplikacja tylko wobec plików, które już należą do przesyłającego użytkownika.",
"uploadDedupScope_global":"Globalnie",
"uploadDedupScope_globalDes":"Deduplikacja wobec wszystkich ukończonych plików na tej stronie.",
"translations":"Tłumaczenia",
"translationsDes":"Nadpisania dla każdego języka. Pozostaw puste, aby użyć wartości domyślnej. Użytkownicy widzą wariant pasujący do ustawienia języka lub języka przeglądarki.",
"invitationCodeRequired":"Wymagaj kodu zaproszenia",
"invitationCodeRequiredDes":"Nowe rejestracje muszą podać ważny kod zaproszenia. Kody zarządza się w Użytkownicy — Kody zaproszeń.",
"smtpAuthMethod":"Metoda uwierzytelniania SMTP",
"smtpAuthMethodDes":"Automatyczne wykrywanie wybiera tylko bezpieczne mechanizmy i nigdy nie wysyła poświadczeń jawnym tekstem przez niezaszyfrowane połączenia. Jeśli Twój serwer oferuje tylko PLAIN/LOGIN bez szyfrowania, wybierz odpowiednią metodę „-noenc” — poświadczenia będą wtedy przesyłane niezaszyfrowane.",
"tcaptchaDes":"Pobierz CaptchaAppId i AppSecretKey z <0>konsoli Tencent Captcha</0>.",
"tcaptchaSecretDes":"SecretId i SecretKey poświadczeń API Tencent Cloud używane do wywołania DescribeCaptchaResult.",
"trafficProductSettings":"Produkt ruchu",
"trafficProductsDes":"Skonfiguruj produkty, które użytkownicy mogą kupić, aby doładować limit ruchu bezpośrednich linków.",
"auditRetentionDays":"Czas przechowywania (dni)",
"auditRetentionDaysDes":"Usuń zdarzenia starsze niż ta liczba dni. 0 przechowuje zdarzenia bezterminowo.",
"ssoIssuer":"URL wystawcy",
"ssoIssuerDes":"Bazowy URL wystawcy OIDC, np. <0>https://keycloak.example.com/realms/master</0>. Metadane dostawcy są pobierane z <1>.well-known/openid-configuration</1> pod tym adresem URL.",
"ssoRegisterEnabled":"Zezwalaj na automatyczną rejestrację",
"ssoRegisterEnabledDes":"Automatycznie utwórz lokalne konto, gdy użytkownik loguje się przez SSO po raz pierwszy. Filtr e-mail rejestracji poniżej również ma zastosowanie.",
"downloadCdnRoutes":"Trasy pobierania CDN",
"downloadCdnRoutesDes":"Alternatywne punkty końcowe pobierania oferowane użytkownikom, po jednym na linię w formacie name=url (np. Linia 1=https://cdn1.example.com). Trasy muszą proxyować pełną ścieżkę i parametry z powrotem na tę stronę, aby podpisane URL-e pozostały ważne; do pobierania w przeglądarce wymagane są nagłówki CORS.",
"downloadCdnShuffle":"Tasuj trasy pobierania",
"downloadCdnShuffleDes":"Losowo rozdzielaj każdy wygenerowany link pobierania między URL strony i wszystkie skonfigurowane trasy CDN, aby eksporty wsadowe do menedżerów pobierania trafiały do różnych punktów. Ręczny wybór trasy jest ukryty, gdy włączone.",
"ssoAutoRedirect":"Automatyczne przekierowanie do SSO",
"ssoAutoRedirectDes":"Pomiń formularz logowania i kieruj odwiedzających prosto do dostawcy tożsamości. Dodaj <0>?nosso=1</0> do URL logowania, aby dotrzeć do formularza hasła (np. w celu odzyskania konta administratora).",
"ssoCallbackUrl":"URL wywołania zwrotnego",
"ssoCallbackUrlDes":"Zarejestruj ten URL jako redirect/callback URL u swojego dostawcy tożsamości: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"App ID aplikacji internetowej utworzonej w <0>konsoli QQ Connect</0> (connect.qq.com).",
"qqAppSecret":"App Key",
"qqCallbackUrl":"URL wywołania zwrotnego",
"qqCallbackUrlDes":"Zarejestruj ten URL jako domenę/URL wywołania zwrotnego w konsoli QQ Connect: <0>{{url}}</0>",
"qqRegisterEnabled":"Zezwalaj na automatyczną rejestrację",
"qqRegisterEnabledDes":"Automatycznie utwórz lokalne konto, gdy użytkownik loguje się przez QQ po raz pierwszy. QQ nie podaje adresu e-mail, dlatego utworzone konta używają syntetycznego adresu @connect.qq.local.",
"wechatConnect":"Logowanie skanem WeChat",
"wechatAppID":"App ID",
"wechatAppIDDes":"AppID aplikacji internetowej utworzonej na <0>WeChat Open Platform</0> (open.weixin.qq.com).",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"URL wywołania zwrotnego",
"wechatCallbackUrlDes":"Zarejestruj domenę tego URL jako domenę wywołania zwrotnego autoryzacji w konsoli WeChat Open Platform: <0>{{url}}</0>",
"wechatRegisterEnabled":"Zezwalaj na automatyczną rejestrację",
"wechatRegisterEnabledDes":"Automatycznie utwórz lokalne konto, gdy użytkownik loguje się przez WeChat po raz pierwszy. WeChat nie podaje adresu e-mail, dlatego utworzone konta używają syntetycznego adresu @connect.wechat.local.",
"smsSignIn":"Logowanie przez SMS",
"smsEndpoint":"Punkt końcowy bramy",
"smsEndpointDes":"Punkt końcowy HTTP Twojego dostawcy SMS. Symbole <0>{phone}</0> i <0>{code}</0> są zastępowane przed każdym żądaniem.",
"smsMethodDes":"Metoda HTTP używana do żądania bramy. Dla GET symbole są renderowane tylko w URL punktu końcowego.",
"smsHeaders":"Nagłówki żądania",
"smsHeadersDes":"Po jednej parze `Key: Value` na linię, np. Authorization: Bearer <token>.",
"smsBodyTemplate":"Szablon treści żądania",
"smsBodyTemplateDes":"Treść wysyłana dla żądań POST. Symbole <0>{phone}</0> i <0>{code}</0> są zastępowane przed każdym żądaniem.",
"smsRegisterEnabled":"Zezwalaj na automatyczną rejestrację",
"smsRegisterEnabledDes":"Automatycznie utwórz lokalne konto, gdy użytkownik loguje się przez kod SMS po raz pierwszy. Utworzone konta używają syntetycznego adresu @sms.local.",
"enableFileEncryptionDes":"Gdy włączone, bloby plików będą przechowywane zaszyfrowane. Zmiana tego ustawienia wpływa tylko na nowo dodane pliki.",
"encryptedFile":"Zaszyfrowane pliki"
"encryptedFile":"Zaszyfrowane pliki",
"thumbForceProxy":"Wymuś generowanie miniatur przez proxy",
"thumbForceProxyDes":"Zawsze generuj miniatury przez lokalny potok proxy, nawet gdy backend magazynu udostępnia natywne API miniatur. Obejmuje generowanie miniatur przez proxy.",
"thumbStoragePolicyDes":"Wygenerowane miniatury są przechowywane w wybranej polityce zamiast polityki samego pliku.",
"blobAudit":"Audyt blobów: {{name}}",
"blobAuditDes":"Skanuje backend magazynu i wymienia fizyczne obiekty, do których nie odnosi się żaden rekord pliku. Przydatne do znajdowania porzuconych blobów po nieudanych transferach.",
"blobAuditDelete":"Usuń porzucone bloby",
"blobAuditDeleteWarning":"Porzucone obiekty zostaną trwale usunięte z backendu magazynu. Pliki w trakcie przesyłania mogą wyglądać jak porzucone — włącz tylko, gdy masz pewność, że nie trwają przesyłania.",
"blobAuditStart":"Rozpocznij audyt",
"blobAuditSubmitted":"Zadanie audytu blobów dodane do kolejki.",
"maxTotalSize":"Maks. całkowita pojemność",
"maxTotalSizeDes":"Maksymalna łączna liczba bajtów przechowywanych w tej polityce. Przesłania i kopie, które przekroczyłyby limit, są odrzucane. 0 oznacza brak limitu.",
"overflowPolicy":"Polityka przepełnienia",
"overflowPolicyDes":"Gdy w tej polityce brakuje miejsca, nowe przesyłania trafiają do wybranej polityki. Obsługiwane są łańcuchy polityk.",
"auditEndpoint":"Punkt końcowy audytu treści",
"auditEndpointDes":"Punkt końcowy HTTP do audytu treści (np. moderacja obrazów). Po ustawieniu udostępnienie pliku przechowywanego w tej polityce wysyła jego treść metodą POST do punktu; odpowiedź {\"flagged\":true} blokuje udostępnienie. Pozostaw puste, aby wyłączyć.",
"auditMaxSize":"Limit rozmiaru audytu",
"auditMaxSizeDes":"Maksymalny rozmiar encji wysyłanej do punktu audytu. Większe pliki są pomijane. 0 oznacza brak limitu.",
"overflowNone":"Brak",
"allowNativeName":"Zezwalaj na natywne znaki w nazwach plików",
"allowNativeNameDes":"Zezwalaj na znaki zakazane tylko w systemach plików Windows (: * ? \" < > |) w nazwach plików. Może zepsuć klientów montujących na Windows. Separatory ścieżek pozostają zabronione.",
"status":"Status",
"statusDes":"Zawieszone polityki nadal obsługują istniejące pliki, ale odrzucają nowe przesyłania.",
"loadBalance":"Równoważenie obciążenia",
"lbChildren":"Polityki podrzędne",
"lbChildPolicy":"Polityka przechowywania",
"lbWeight":"Waga",
"lbAddChild":"Dodaj politykę podrzędną",
"lbChildrenDes":"Nowe przesyłania są rozdzielane między polityki podrzędne proporcjonalnie do ich wagi.",
"lbWizardDes":"Polityka równoważenia rozdziela przesyłania między polityki podrzędne z uwzględnieniem wagi. Podrzędne konfiguruje się po utworzeniu."
},
"node":{
"slave":"podrzędny",
@ -1215,7 +1335,11 @@
"hostHeaderHint":"Jeśli wystąpi błąd podpisu, sprawdź, czy odwrotny serwer proxy przed węzłem przekazuje nagłówek <0>Host</0>.",
"features":"Włączone funkcje",
"remoteDownload":"Zdalne pobieranie",
"refresh":"Odśwież"
"refresh":"Odśwież",
"ytdlpDes":"Uruchamiaj yt-dlp na docelowym węźle z tym samym użytkownikiem/poziomem dostępu co Cloudreve. yt-dlp jest wywoływany jako proces CLI dla każdego zadania — demon nie jest wymagany.",
"ytdlpOptionDes":"Dodatkowe flagi CLI yt-dlp przy tworzeniu zadania pobierania, zapisane w formacie JSON klucz-wartość — klucze stają się argumentami --flag dosłownie, patrz <0>referencja opcji yt-dlp</0>.",
"ytdlpBinary":"Plik binarny yt-dlp",
"ytdlpBinaryDes":"Ścieżka lub nazwa pliku wykonywalnego yt-dlp na węźle. Domyślnie yt-dlp z PATH."
},
"group":{
"countUser":"Liczba",
@ -1302,7 +1426,37 @@
"notCopy":"Nie kopiuj",
"confirmDelete":"Czy na pewno chcesz usunąć grupę {{group}}?",
"new":"Nowa grupa",
"editGroup":"Edytuj {{group}}"
"editGroup":"Edytuj {{group}}",
"loginIPWhitelist":"Biała lista IP logowania",
"loginIPWhitelistDes":"Ogranicz logowanie do tych IP lub zakresów CIDR, po jednym na linię. Pozostaw puste, aby zezwolić na wszystkie.",
"delegatedAdmin":"Delegowane sekcje panelu",
"delegatedAdminDes":"Przyznaj dostęp tylko do wybranych sekcji panelu. Użytkownicy tej grupy mogą otworzyć panel administratora, ale działają tylko włączone sekcje — wszystkie inne wywołania admin API są odrzucane.",
"sectionUsers":"Użytkownicy",
"sectionGroups":"Grupy",
"sectionFiles":"Pliki i bloby",
"sectionShares":"Udostępnienia",
"sectionStorage":"Polityki przechowywania i węzły",
"sectionQueue":"Kolejka zadań",
"sectionSettings":"Ustawienia strony i OAuth",
"sectionPayment":"Płatności",
"sectionEvents":"Zdarzenia",
"sectionReports":"Zgłoszenia nadużyć",
"shareSell":"Sprzedaż linków udostępnienia",
"shareSellDes":"Gdy włączone, użytkownicy mogą ustawić cenę w punktach dla tworzonych linków udostępnienia.",
"wabDAVReadOnly":"WebDAV tylko do odczytu",
"wabDAVReadOnlyDes":"Gdy włączone, montowania WebDAV dla użytkowników tej grupy stają się tylko do odczytu — przesyłania, usunięcia, przenoszenia i inne metody zapisu są odrzucane.",
"aria2TaskLimit":"Maks. jednoczesnych zadań zdalnego pobierania",
"aria2TaskLimitDes":"Maks. liczba aktywnych zadań zdalnego pobierania na użytkownika (w kolejce, uruchomione lub wstrzymane). 0 = brak limitu.",
"aria2MaxFileSize":"Maks. rozmiar zadania pobierania (bajty)",
"aria2MaxFileSizeDes":"Zadania zdalnego pobierania, których rozmiar całkowity przekracza ten limit, są przerywane. 0 = brak limitu.",
"setExplicitUser":"Ustawianie uprawnień do plików",
"setExplicitUserDes":"Członkowie mogą ustalać szczegółowe uprawnienia do odczytu/tworzenia/modyfikacji/usuwania plików i folderów, których są właścicielami, dla konkretnych użytkowników, grup, anonimowych odwiedzających lub wszystkich pozostałych.",
"switchablePolicies":"Przełączalne polityki przechowywania",
"switchablePoliciesDes":"Polityki, na które członkowie tej grupy mogą swobodnie przełączać. Polityka domyślna powyżej jest zawsze dostępna.",
"weightedPolicies":"Ważony wybór polityk",
"weightedPoliciesDes":"Gdy włączone, przesyłania bez jawnego wyboru polityki są kierowane do dozwolonej polityki z największą wolną pojemnością mieszczącą plik. Ważone są tylko polityki z całkowitym limitem pojemności.",
"sharePublicListDes":"Gdy włączone, użytkownicy mogą opcjonalnie dodawać swoje linki udostępnienia do publicznego katalogu (strona Odkrywaj). Udostępnienia chronione hasłem nie mogą być wymienione."
},
"user":{
"createdAt":"Utworzono",
@ -1351,7 +1505,34 @@
"deleteXUsers":"Usuń {{num}} użytkowników",
"confirmBatchDelete":"Czy na pewno chcesz usunąć {{num}} użytkowników?",
"invitationCodeCopied":"Kod skopiowany do schowka.",
"invitationCodeCopy":"Kopiuj",
"invitationCodeDefaultGroup":"Domyślna",
"noInvitationCodes":"Brak kodów zaproszeń.",
"loadMore":"Wczytaj więcej",
"additionalGroups":"Dodatkowe grupy",
"additionalGroupsDes":"Dodatkowe członkostwa w grupach ponad grupę główną. Uprawnienia, limity i polityki przechowywania są sumowane ze wszystkich grup."
},
"file":{
"deleteXFiles":"Usuń {{num}} plików",
@ -1423,7 +1604,15 @@
"shareLinkExisted":"Posiada link udostępniania",
"directLinkExisted":"Posiada link bezpośredni",
"isUploading":"Jest przesyłany",
"selectUser":"Wybierz użytkownika"
"selectUser":"Wybierz użytkownika",
"referenceCount":"Liczba odwołań",
"awaitingRecycle":"Oczekuje na recykling",
"refCountGt":"Większe niż",
"refCountLt":"Mniejsze niż",
"refCountEq":"Równe",
"deletedState":"Stan usunięcia",
"liveOnly":"Tylko aktywne pliki",
"trashOnly":"Tylko kosz"
},
"entity":{
"refenenceCount":"Liczba odniesień",
@ -1434,7 +1623,15 @@
"confirmBatchDelete":"Czy na pewno chcesz usunąć {{num}} Blobów?",
"deleteXEntities":"Usuń {{num}} Blobów",
"forceDelete":"Wymuś usunięcie",
"forceDeleteDes":"Czy usunąć rekord Bloba niezależnie od tego, czy plik fizyczny został usunięty."
"forceDeleteDes":"Czy usunąć rekord Bloba niezależnie od tego, czy plik fizyczny został usunięty.",
"relocateXEntities":"Przenieś {{num}} blobów",
"relocateTitle":"Przenieś bloby",
"relocateEntitiesDes":"Przenieś dane {{num}} wybranych blobów do innej polityki przechowywania. Zadanie działa w tle i można je wznowić.",
"relocatePolicyDes":"Przenieś wszystkie bloby przechowywane w „{{name}}” do innej polityki przechowywania. Zadanie działa w tle i można je wznowić.",
"relocateUserDes":"Przenieś wszystkie bloby należące do „{{name}}” do innej polityki przechowywania. Zadanie działa w tle i można je wznowić.",
"relocatePolicy":"Zmigruj wszystkie bloby z {{name}} do innej polityki",
"confirmDelete":"Czy na pewno chcesz usunąć to zdarzenie?",
"deleteXEvents":"Usuń {{num}} zdarzeń",
"confirmBatchDelete":"Czy na pewno chcesz usunąć {{num}} zdarzeń?"
"confirmBatchDelete":"Czy na pewno chcesz usunąć {{num}} zdarzeń?",
"noEvents":"Brak zarejestrowanych zdarzeń"
},
"share":{
"confirmBatchDelete":"Czy na pewno chcesz usunąć {{num}} udostępnień?",
@ -1548,7 +1746,8 @@
"finished":"Zakończone",
"canceled":"Anulowane/Zatrzymane",
"unknown":"Nieznane",
"errorMsg":"Komunikat błędu"
"errorMsg":"Komunikat błędu",
"blobAudit":"Audyt blobów w polityce przechowywania #{{policyID}} ({{count}} porzuconych)"
},
"payment":{
"tradeNo":"Nr transakcji",
@ -1727,7 +1926,21 @@
"customPaymentEndpointDes":"URL do żądania podczas tworzenia zamówienia płatności.",
"appFeedback":"URL opinii",
"appForum":"URL forum użytkowników",
"appLinkDes":"Zostanie wyświetlony w kliencie mobilnym, pozostaw puste, aby ukryć element menu. To ustawienie zadziała tylko, jeśli licencja VOL jest ważna."
"appLinkDes":"Zostanie wyświetlony w kliencie mobilnym, pozostaw puste, aby ukryć element menu. To ustawienie zadziała tylko, jeśli licencja VOL jest ważna.",
"addTrafficPack":"Dodaj pakiet ruchu",
"editTrafficPack":"Edytuj pakiet ruchu",
"trafficSize":"Ilość ruchu (bajty)",
"trafficSizeDes":"Bajty ruchu bezpośrednich linków przyznawane przy zakupie; pakiety są dożywotnie.",
"subAddressChars":"Znaki subadresu",
"subAddressCharsDes":"Znaki traktowane jako separatory subadresu w lokalnej części e-mail (np. <code>+-.</code> dla aliasów w stylu Gmail/iCloud). Puste domyślnie to <code>+</code>.",
"clickToRefresh":"Clique para atualizar o código",
"switchLanguage":"Mudar idioma"
"switchLanguage":"Mudar idioma",
"invitationCode":"Código de convite",
"phoneNumber":"Número de telefone",
"smsCode":"Código SMS",
"sendSmsCode":"Enviar código",
"resendSmsCode":"Reenviar ({{seconds}}s)",
"smsSignIn":"Entrar com SMS",
"resetViaSms":"Redefinir via SMS",
"emailChangedTitle":"E-mail alterado",
"emailChanged":"Seu endereço de e-mail foi alterado com sucesso.",
"signInWith":"Entrar com {{name}}",
"ssoFailed":"Falha no login único. Tente novamente ou use outro método de login.",
"ssoError":{
"generic":"Falha no login único. Tente novamente.",
"sso_not_configured":"O login único não está configurado. Contate o administrador.",
"sso_discovery_failed":"Não foi possível contatar o provedor de identidade. Tente novamente mais tarde.",
"sso_state_failed":"Não foi possível iniciar a sessão de login. Tente novamente.",
"sso_denied":"O login foi negado pelo provedor de identidade.",
"sso_invalid_response":"Resposta inválida do provedor de identidade.",
"sso_state_expired":"A sessão de login expirou. Tente novamente.",
"sso_exchange_failed":"Não foi possível concluir o login com o provedor de identidade.",
"sso_token_invalid":"Não foi possível verificar a resposta do provedor.",
"sso_no_email":"O provedor de identidade não retornou um endereço de e-mail.",
"sso_account_unavailable":"Nenhuma conta disponível para essa identidade. O cadastro pode estar restrito."
},
"browsePublicShares":"Navegar pelos compartilhamentos públicos",
"inputBackupCode":"Digite um dos seus códigos de recuperação",
"useBackupCode":"Usar um código de recuperação",
"use2FACode":"Usar código do autenticador"
},
"oauth":{
"authorize":"Autorizar aplicativo",
@ -147,7 +175,11 @@
"toDarkMode":"Escuro",
"toLightMode":"Claro",
"myProfile":"Meu perfil",
"dashboard":"Painel de controle"
"dashboard":"Painel de controle",
"shop":"Loja",
"addAccount":"Adicionar conta",
"signedOut":"Desconectado",
"discover":"Descobrir"
},
"fileManager":{
"continueInDesktop":"Autorização bem-sucedida, continue no cliente desktop.",
@ -488,7 +520,37 @@
"noEncryption":"Não criptografado",
"ftsStatus":"Índice de texto completo",
"ftsIndexed":"Indexado",
"ftsNotIndexed":"Não indexado"
"ftsNotIndexed":"Não indexado",
"aclDes":"Permissões detalhadas para \"{{name}}\". Entradas listadas sobrepõem as permissões padrão do link de compartilhamento para visitantes correspondentes.",
"aclSubject":"Sujeito",
"aclAnonymous":"Visitantes anônimos",
"aclEveryone":"Todos os demais",
"aclGroup":"grupo",
"aclPerm_read":"Ler",
"aclPerm_create":"Criar",
"aclPerm_update":"Atualizar",
"aclPerm_delete":"Excluir",
"loop":"Repetir",
"modelViewer":"Visualizador de modelos 3D",
"modelLoadFailed":"Falha ao carregar o modelo 3D",
"activityDes":"Ações registradas em {{name}}.",
"resetThumbnail":"Regerar miniatura quebrada",
"resetThumbnailRequested":"Regeração de miniatura solicitada.",
"noFileCanResetThumbnail":"Nenhum arquivo disponível para regenerar miniatura.",
"selectDownloadRoute":"Selecionar rota de download",
"downloadRouteDirect":"Direto",
"downloadRouteDirectDescription":"Baixar diretamente deste site",
"lineEnding":"Fim de linha",
"downloadAll":"Baixar tudo",
"dirPolicyTitle":"Política de armazenamento para uploads",
"dirPolicyDes":"Novos arquivos enviados para \"{{name}}\" usarão a política de armazenamento selecionada.",
"relocateTitle":"Realocar armazenamento",
"relocateDes":"Mover o conteúdo físico de \"{{name}}\" para a política de armazenamento selecionada.",
"relocateSubmitted":"Tarefa de realocação enviada",
"relocateStart":"Realocar",
"policySaved":"Política de armazenamento atualizada",
"policyInherit":"Herdar (usar padrão da pasta pai ou do grupo)",
"policyGroupDefault":"Padrão do grupo"
},
"modals":{
"includePasswordInShareLink":"Incluir senha no link de compartilhamento",
@ -665,7 +727,40 @@
"saved":"Salvo",
"notSet":"Não definido",
"deleteViewSetting":"Excluir configuração de visualização",
"shareTargetsCount":"{{count}} destinos"
"shareTargetsCount":"{{count}} destinos",
"paidShare":"Compartilhamento pago",
"paidSharePrice":"{{price}} pontos",
"paidShareDes":"Visitantes precisam comprar este compartilhamento com pontos de crédito antes de baixar. Defina 0 para um compartilhamento gratuito.",
"paidSharePriceLabel":"Preço (pontos)",
"nameConflict":"Conflito de nome",
"conflictOverwriteDes":"Substituir os itens existentes no destino.",
"conflictSkipDes":"Manter os itens existentes; itens em conflito não serão movidos nem copiados.",
"skip":"Pular",
"remoteDownloadFileName":"Nome do arquivo (opcional)",
"remoteDownloadFileNameDescription":"Nome de arquivo de saída personalizado",
"remoteDownloadHeadersDescription":"Um cabeçalho por linha, ex.: Cookie: sid=...",
"allowUpload":"Permitir uploads",
"allowUploadDes":"Visitantes podem enviar novos arquivos e criar pastas nesta pasta compartilhada. O armazenamento conta na sua cota.",
"allowEdit":"Permitir edição",
"allowEditDes":"Visitantes podem enviar, renomear, mover e excluir arquivos nesta pasta compartilhada. Implica permissão de upload.",
"uploadOnly":"Apenas upload (caixa de depósito)",
"uploadOnlyDes":"Visitantes podem enviar arquivos, mas não podem ver nem baixar o conteúdo existente nesta pasta compartilhada.",
"previewOnly":"Apenas visualização",
"previewOnlyDes":"Visitantes podem visualizar arquivos inline, mas não podem baixá-los.",
"shareNote":"Nota",
"shareNoteDes":"Uma nota privada para identificar este compartilhamento. Visível apenas para você em Meus compartilhamentos.",
"shareTargets":"Destinos do compartilhamento",
"shareTargetsCount_one":"{{count}} destino",
"shareTargetsCount_other":"{{count}} destinos",
"publicListing":"Listar no diretório público",
"publicListingDes":"Mostrar este compartilhamento na página Descobrir, visível para qualquer pessoa, inclusive visitantes anônimos. Indisponível para compartilhamentos protegidos por senha.",
"hideReadme":"Ocultar arquivo readme",
"hideReadmeDes":"Mantenha o arquivo README fora da lista do compartilhamento. Visitantes ainda veem o readme renderizado."
},
"uploader":{
"fileCopyName":"Cópia de ",
@ -688,7 +783,7 @@
"preparing":"Preparando...",
"processing":"Processando...",
"progressDescription":"{{uploaded}} enviado, {{total}} total - {{percentage}}%",
"progressDescriptionFull":"{{uploaded}} enviado, {{total}} total - {{percentage}}% ({{speed}})",
"progressDescriptionFull":"{{uploaded}} enviado, {{total}} total - {{percentage}}% ({{speed}}){{eta}}",
"progressDescriptionPlaceHolder":" - enviado",
"uploaded":"Enviado",
"rootFolder":"Pasta raiz",
@ -747,7 +842,8 @@
"upyunUploadFailed":"Falha no envio: {{msg}}",
"parseResponseError":"Não foi possível analisar resposta: {{msg}} ({{content}})",
"concurrentTaskNumber":"Limite de tarefas simultâneas",
"dropFileHere":"Solte arquivo para enviar"
"dropFileHere":"Solte arquivo para enviar",
"etaSuffix":", ETA {{eta}}"
},
"share":{
"free":"Grátis",
@ -794,7 +890,19 @@
"preview":"Visualizar",
"incorrectPassword":"Senha incorreta.",
"shareNotExist":"Link de compartilhamento é inválido ou expirado.",
"copyLinkToClipboard":"Copiar link para área de transferência"
"copyLinkToClipboard":"Copiar link para área de transferência",
"paidShareDes":"Este é um compartilhamento pago. A compra custa {{price}} pontos e desbloqueia os downloads.",
"purchaseForPoints":"Comprar por {{price}} pts",
"signInToPurchase":"Entre para comprar",
"yourBalance":"Saldo: {{credits}} pontos",
"saveToMyFiles":"Salvar nos meus arquivos",
"savedToMyFiles":"Compartilhamento salvo nos seus arquivos.",
"saveShareLink":"Salvar link de compartilhamento",
"saveShareLinkHint":"Cole um link de compartilhamento como https://example.com/s/abc123",
"shareLink":"Link de compartilhamento",
"savedAs":"Salvo como (opcional)",
"sharePasswordRequired":"Este compartilhamento exige uma senha.",
"invalidShareLink":"Não foi possível analisar este link de compartilhamento."
},
"download":{
"noFilesFound":"Nenhum arquivo encontrado",
@ -1058,7 +1166,80 @@
"relocateFileTo":"Realocar política de armazenamento para {{policy}} para <0></0>{{more}}",
"extractFileTo":"Extrair <0></0>{{more}} para <1></1>",
"createArchiveTo":"Criar arquivo comprimido para <1></1> para <0></0>{{more}}",
"importFileTo":"Importar arquivos de {{policy}} para <0></0>"
"importFileTo":"Importar arquivos de {{policy}} para <0></0>",
"preferredViewers":"Apps padrão",
"preferredViewersDes":"Apps escolhidos com \"Sempre\" no diálogo abrir com. Aplicam-se em todos os seus dispositivos; remova um para ser perguntado novamente.",
"preferredViewersEmpty":"Nenhum app padrão salvo ainda. Escolha \"Sempre\" no diálogo abrir com em um arquivo.",
"trashRetention":"Retenção da lixeira (dias)",
"trashRetentionDes":"Dias que um arquivo fica na lixeira antes da exclusão automática. 0 herda o padrão do grupo. Aplica-se a arquivos movidos para a lixeira após a alteração.",
"linkedAccounts":"Contas vinculadas",
"providerQQ":"QQ",
"unlinkAccount":"Desvincular",
"unlinkAccountConfirm":"Tem certeza de que deseja desvincular esta conta? Você não poderá mais entrar com ela.",
"linkQQAccount":"Vincular conta QQ",
"providerWeChat":"WeChat",
"linkWeChatAccount":"Vincular conta WeChat",
"phoneBinding":"Vínculo de telefone",
"bindPhone":"Vincular telefone",
"unbindPhone":"Desvincular",
"unbindPhoneConfirm":"Tem certeza de que deseja desvincular este número de telefone? Você não poderá mais entrar ou redefinir sua senha com ele.",
"changeEmail":"Alterar",
"changeEmailDes":"Um link de confirmação será enviado ao novo endereço. Seu e-mail atual ({{email}}) permanece ativo até a confirmação.",
"newEmail":"Novo endereço de e-mail",
"changeEmailPasswordDes":"Digite sua senha atual para confirmar.",
"emailChangeSent":"E-mail de confirmação enviado ao novo endereço.",
"copySecret":"Não consegue escanear? Clique para copiar a chave de configuração",
"secretCopied":"Chave de configuração copiada",
"shareSiteDefault":"Padrão do site",
"shareSiteDefaultDes":"Seguir o padrão definido pelo administrador para todo o site.",
"shareDefaultPrivate":"Privacidade padrão do compartilhamento",
"shareDefaultPrivateDes":"Novos compartilhamentos são privados por padrão (protegidos por senha).",
"sharePrivateOn":"Privado",
"sharePrivateOff":"Público",
"preferredPolicy":"Política de armazenamento preferida",
"preferredPolicyDes":"Novos uploads nos seus próprios arquivos usam esta política de armazenamento, a menos que uma pasta a substitua.",
"policySaved":"Política de armazenamento atualizada",
"policyInherit":"Herdar (padrão do grupo)",
"policyGroupDefault":"Padrão do grupo",
"creditBalance":"Saldo de créditos",
"storageBonus":"Bônus de armazenamento",
"dlTraffic":"Tráfego de link direto",
"dlTrafficUnlimited":"Ilimitado",
"activeGrants":"Benefícios ativos",
"grantStorage":"Armazenamento",
"grantGroup":"Grupo",
"redeemGiftCode":"Resgatar código de presente",
"redeemGiftCodeDes":"Digite um código de presente para receber créditos ou benefícios",
"giftCodeRedeemed":"Código de presente resgatado",
"creditLedger":"Razão de créditos",
"txnChange":"Alteração",
"txnTime":"Data/hora",
"txnReason":"Motivo",
"noTxns":"Nenhuma transação ainda",
"txnType":{
"purchase":"Compra na loja",
"gift":"Código de presente",
"share_income":"Link de compartilhamento comprado",
"adjust":"Ajuste manual"
},
"tags":"Tags",
"tagsDes":"Renomeie, recolore ou exclua uma tag em todos os seus arquivos. Renomear para uma tag existente as mescla.",
"tagName":"Tag",
"tagFiles":"Arquivos",
"tagActions":"Ações",
"noTags":"Nenhuma tag ainda",
"editTag":"Editar tag",
"deleteTag":"Excluir tag",
"deleteTagDes":"Remover a tag \"{{name}}\" de {{count}} arquivo(s)? Os próprios arquivos são mantidos.",
"tagUpdated":"Tag atualizada",
"tagDeleted":"Tag excluída",
"tagNameInvalid":"O nome da tag não pode ser vazio nem conter \":\"",
"backup2FACodes":"Códigos de recuperação",
"backupCodesDes":"Códigos de recuperação permitem entrar quando seu autenticador está indisponível. Gerar um novo lote invalida todos os códigos anteriores.",
"backupCodesWarning":"Salve estes códigos agora. Cada um pode ser usado uma vez e não serão mostrados novamente.",
"copyCodes":"Copiar códigos"
},
"vas":{
"points":"Pontos",
@ -1194,5 +1375,43 @@
"dontShowAgain":"Não mostrar novamente",
"openPaymentLink":"Abrir link de pagamento",
"creditReasonAdjust":"Ajuste manual"
},
"vault":{
"title":"Espaço privado",
"description":"Arquivos no seu espaço privado ficam ocultos da navegação e da busca até você desbloqueá-los com uma senha separada. Arquivos do cofre não podem ser compartilhados nem acessados via WebDAV.",
"enable":"Ativar espaço privado",
"enabled":"Espaço privado ativado",
"disable":"Desativar",
"disabled":"Espaço privado desativado",
"disableDescription":"Desativar remove o bloqueio; a pasta e seu conteúdo permanecem como arquivos comuns.",
"confirmDisable":"Confirmar desativação",
"setPassword":"Definir senha do cofre",
"confirmPassword":"Senha do cofre",
"enterPassword":"Senha do cofre",
"lockNow":"Bloquear agora",
"locked":"Espaço privado bloqueado",
"unlocked":"Desbloqueado",
"lockedState":"Bloqueado",
"lockedTitle":"Esta pasta está no seu espaço privado. Desbloqueie para continuar.",
"oauth_grant_create":"Autorização de aplicativo OAuth",
"oauth_token_exchange":"Troca de token OAuth",
"oauth_grant_revoke":"Revogação de autorização OAuth"
"oauth_grant_revoke":"Revogação de autorização OAuth",
"content_audit_blocked":"Compartilhamento bloqueado pela auditoria de conteúdo"
},
"server":"Servidor",
"tempPath":"Caminho temporário",
@ -821,7 +822,91 @@
"ftsTikaExts":"Extensões suportadas",
"ftsTikaExtsDes":"Lista de extensões de arquivo separadas por vírgula. O Tika processará arquivos desses tipos.",
"ftsTikaMaxFileSize":"Tamanho máximo do arquivo",
"ftsTikaMaxFileSizeDes":"Tamanho máximo de arquivo a enviar ao Tika para extração de conteúdo."
"ftsTikaMaxFileSizeDes":"Tamanho máximo de arquivo a enviar ao Tika para extração de conteúdo.",
"navItemVisibility":"Visibilidade",
"navScopePublic":"Todos",
"navScopeUser":"Usuários conectados",
"uploadDedupScope":"Escopo da detecção de duplicatas",
"uploadDedupScopeDes":"Quando um cliente envia um hash de conteúdo, o servidor procura por um arquivo idêntico já concluído e materializa o upload instantaneamente, sem transferir bytes.",
"uploadDedupScope_off":"Desligado",
"uploadDedupScope_offDes":"Sem detecção de duplicatas; todo upload transfere bytes.",
"uploadDedupScope_owner":"Mesmo usuário",
"uploadDedupScope_ownerDes":"Só elimina duplicatas em relação a arquivos que o usuário que envia já possui.",
"uploadDedupScope_global":"Global",
"uploadDedupScope_globalDes":"Elimina duplicatas em relação a todos os arquivos concluídos deste site.",
"translations":"Traduções",
"translationsDes":"Sobrescritas por idioma. Deixe em branco para usar o valor padrão. Os usuários veem a variante correspondente ao idioma deles ou do navegador.",
"invitationCodeRequired":"Exigir código de convite",
"invitationCodeRequiredDes":"Novos cadastros devem informar um código de convite válido. Códigos são gerenciados em Usuários - Códigos de convite.",
"smtpAuthMethod":"Método de autenticação SMTP",
"smtpAuthMethodDes":"A descoberta automática só seleciona mecanismos seguros e nunca envia credenciais em texto plano em conexões não criptografadas. Se seu servidor só oferece PLAIN/LOGIN sem criptografia, escolha o método \"-noenc\" correspondente — as credenciais serão transmitidas sem criptografia.",
"smtpAuth_autodiscover":"Descoberta automática",
"smtpAuth_plain":"PLAIN",
"smtpAuth_plain_noenc":"PLAIN (permitir sem criptografia)",
"smtpAuth_login":"LOGIN",
"smtpAuth_login_noenc":"LOGIN (permitir sem criptografia)",
"smtpAuth_cram_md5":"CRAM-MD5",
"smtpAuth_scram_sha_1":"SCRAM-SHA-1",
"smtpAuth_scram_sha_256":"SCRAM-SHA-256",
"smtpAuth_xoauth2":"XOAUTH2",
"smtpAuth_noauth":"Sem autenticação",
"tcaptcha":"Tencent Captcha",
"tcaptchaAppId":"CaptchaAppId",
"tcaptchaAppSecretKey":"AppSecretKey",
"tcaptchaSecretId":"SecretId",
"tcaptchaSecretKey":"SecretKey",
"tcaptchaDes":"Obtenha seu CaptchaAppId e AppSecretKey no <0>console do Tencent Captcha</0>.",
"tcaptchaSecretDes":"SecretId e SecretKey de uma credencial da API Tencent Cloud usada para chamar DescribeCaptchaResult.",
"trafficProductSettings":"Produto de tráfego",
"trafficProductsDes":"Configure produtos que os usuários podem comprar para repor a cota de tráfego de link direto.",
"auditRetentionDays":"Retenção (dias)",
"auditRetentionDaysDes":"Excluir eventos mais antigos do que este número de dias. 0 mantém os eventos para sempre.",
"ssoIssuer":"URL do issuer",
"ssoIssuerDes":"URL base do issuer OIDC, ex.: <0>https://keycloak.example.com/realms/master</0>. Os metadados do provedor são obtidos em <1>.well-known/openid-configuration</1> sob esta URL.",
"ssoRegisterEnabledDes":"Criar automaticamente uma conta local quando um usuário entra via SSO pela primeira vez. O filtro de e-mail de cadastro abaixo também se aplica.",
"downloadCdnRoutes":"Rotas de CDN para download",
"downloadCdnRoutesDes":"Endpoints de download alternativos oferecidos aos usuários, um por linha no formato nome=url (ex.: Linha 1=https://cdn1.example.com). As rotas precisam proxiar o caminho completo e a query de volta a este site para que as URLs assinadas permaneçam válidas; cabeçalhos CORS são necessários para downloads no navegador.",
"downloadCdnShuffle":"Embaralhar rotas de download",
"downloadCdnShuffleDes":"Distribuir aleatoriamente cada link de download gerado entre a URL do site e todas as rotas CDN configuradas, para que exportações em lote para gerenciadores de download atinjam endpoints diferentes. O seletor manual de rotas fica oculto quando ativado.",
"ssoAutoRedirect":"Redirecionar automaticamente para SSO",
"ssoAutoRedirectDes":"Pular o formulário de login e enviar os visitantes direto ao provedor de identidade. Acrescente <0>?nosso=1</0> à URL de login para acessar o formulário de senha (ex.: para recuperação do admin).",
"ssoCallbackUrl":"URL de callback",
"ssoCallbackUrlDes":"Registre esta URL como redirect/callback no seu provedor de identidade: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"O App ID do aplicativo de site criado no <0>console do QQ Connect</0> (connect.qq.com).",
"qqAppSecret":"App Key",
"qqCallbackUrl":"URL de callback",
"qqCallbackUrlDes":"Registre esta URL como domínio/URL de callback do site no console do QQ Connect: <0>{{url}}</0>",
"qqRegisterEnabledDes":"Criar automaticamente uma conta local quando um usuário entra via QQ pela primeira vez. O QQ não fornece e-mail, então contas provisionadas usam um endereço sintético @connect.qq.local.",
"wechatConnect":"Login por scan do WeChat",
"wechatAppID":"App ID",
"wechatAppIDDes":"O AppID do aplicativo de site criado na <0>WeChat Open Platform</0> (open.weixin.qq.com).",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"URL de callback",
"wechatCallbackUrlDes":"Registre o domínio desta URL como domínio de callback de autorização no console da WeChat Open Platform: <0>{{url}}</0>",
"wechatRegisterEnabledDes":"Criar automaticamente uma conta local quando um usuário entra via WeChat pela primeira vez. O WeChat não fornece e-mail, então contas provisionadas usam um endereço sintético @connect.wechat.local.",
"smsSignIn":"Login por SMS",
"smsEndpoint":"Endpoint do gateway",
"smsEndpointDes":"Endpoint HTTP do seu provedor de SMS. Os marcadores <0>{phone}</0> e <0>{code}</0> são substituídos antes de cada requisição.",
"smsMethodDes":"Método HTTP usado na requisição ao gateway. Para GET, os marcadores são renderizados apenas na URL do endpoint.",
"smsHeaders":"Cabeçalhos da requisição",
"smsHeadersDes":"Um par `Key: Value` por linha, ex.: Authorization: Bearer <token>.",
"smsBodyTemplate":"Modelo do corpo da requisição",
"smsBodyTemplateDes":"Corpo enviado em requisições POST. Os marcadores <0>{phone}</0> e <0>{code}</0> são substituídos antes de cada requisição.",
"smsRegisterEnabledDes":"Criar automaticamente uma conta local quando um usuário entra via código SMS pela primeira vez. Contas provisionadas usam um endereço sintético @sms.local.",
"themeVisible":"Visível",
"shareDefaultPrivate":"Compartilhamento privado por padrão",
"shareDefaultPrivateDes":"Novos compartilhamentos são privados por padrão (protegidos por senha). Usuários podem sobrescrever isso nas configurações pessoais.",
"defaultShareLinksInProfile":"Visibilidade padrão de compartilhamentos no perfil",
"defaultShareLinksInProfileDes":"Controla quais compartilhamentos aparecem na página de perfil público do usuário quando ele mesmo não escolheu um.",
"profileSharePublicOnly":"Apenas compartilhamentos sem senha",
"profileShareAll":"Todos os compartilhamentos",
"profileShareHide":"Ocultar todos os compartilhamentos"
},
"giftCodes":{
"giftCodesSettings":"Códigos de Presente",
@ -852,7 +937,11 @@
"copyAndClose":"Copiar e Fechar",
"duratonTimes":"Quantidade",
"duratonTimesDes":"Quantas quantidades do produto estão incluídas em cada código de presente.",
"unknownProduct":"Produto Desconhecido"
"unknownProduct":"Produto Desconhecido",
"giftCodeTypeTraffic":"Tráfego de link direto",
"giftCodeDeleteFailed":"Falha ao excluir código de presente",
"giftCodeCreateFailed":"Falha ao gerar códigos de presente",
"giftCodeAmountHelp":"Quantidade concedida por código"
},
"policy":{
"acceleratedDomainUpload":"Usar domínio de aceleração de transferência para upload",
@ -1144,7 +1233,40 @@
"fileEncryption":"Criptografia de arquivos",
"enableFileEncryption":"Ativar criptografia de arquivos",
"enableFileEncryptionDes":"Quando ativado, os blobs de arquivos serão armazenados criptografados. Alterar esta configuração afeta apenas arquivos recém-adicionados.",
"encryptedFile":"Arquivos criptografados"
"encryptedFile":"Arquivos criptografados",
"mediaExtractorUpyun":"serviço de processamento de imagens",
"nativeMediaMetaExtUpyun":"O serviço de processamento de imagens oferece suporte à <0>extração de EXIF</0>. Nenhuma configuração manual é necessária, basta adicionar acima as extensões que deseja processar.",
"thumbForceProxy":"Forçar proxy na geração de miniaturas",
"thumbForceProxyDes":"Sempre gerar miniaturas pelo pipeline de proxy local, mesmo quando o backend de armazenamento oferece uma API nativa de miniaturas. Implica geração de miniaturas via proxy.",
"thumbStoragePolicy":"Política de armazenamento das miniaturas",
"thumbStoragePolicySource":"Igual ao arquivo",
"thumbStoragePolicyDes":"Miniaturas geradas são armazenadas na política selecionada em vez da própria política de armazenamento do arquivo.",
"blobAudit":"Auditar blobs: {{name}}",
"blobAuditDes":"Escaneia o backend de armazenamento e lista objetos físicos não referenciados por nenhum registro de arquivo. Útil para encontrar blobs fantasmas deixados por transferências com falha.",
"blobAuditDelete":"Excluir blobs órfãos",
"blobAuditDeleteWarning":"Objetos órfãos serão removidos permanentemente do backend de armazenamento. Arquivos ainda em upload podem aparecer como órfãos — ative apenas quando tiver certeza de que não há uploads em andamento.",
"blobAuditStart":"Iniciar auditoria",
"blobAuditSubmitted":"Tarefa de auditoria de blobs enfileirada.",
"maxTotalSize":"Capacidade total máxima",
"maxTotalSizeDes":"Total máximo de bytes armazenados nesta política. Uploads e cópias que excederem são rejeitados. 0 significa ilimitado.",
"overflowPolicy":"Política de overflow",
"overflowPolicyDes":"Quando esta política ficar sem capacidade, novos uploads passam para a política selecionada. Cadeias de políticas são suportadas.",
"auditEndpoint":"Endpoint de auditoria de conteúdo",
"auditEndpointDes":"Endpoint HTTP para auditoria de conteúdo (ex.: moderação de imagens). Quando definido, compartilhar um arquivo desta política envia seu conteúdo ao endpoint; uma resposta {\"flagged\":true} bloqueia o compartilhamento. Deixe vazio para desativar.",
"auditMaxSize":"Limite de tamanho da auditoria",
"auditMaxSizeDes":"Tamanho máximo da entidade enviada ao endpoint de auditoria. Arquivos maiores são ignorados. 0 significa sem limite.",
"overflowNone":"Nenhum",
"allowNativeName":"Permitir caracteres nativos no nome de arquivo",
"allowNativeNameDes":"Permitir caracteres apenas ilegais em sistemas de arquivos Windows (: * ? \" < > |) em nomes de arquivo. Pode quebrar clientes montados no Windows. Separadores de caminho continuam proibidos.",
"status":"Status",
"statusDes":"Políticas suspensas continuam servindo arquivos existentes, mas rejeitam novos uploads.",
"loadBalance":"Balanceamento de carga",
"lbChildren":"Políticas de armazenamento filhas",
"lbChildPolicy":"Política de armazenamento",
"lbWeight":"Peso",
"lbAddChild":"Adicionar política filha",
"lbChildrenDes":"Novos uploads são distribuídos entre as políticas filhas proporcionalmente ao peso.",
"lbWizardDes":"Uma política de balanceamento de carga distribui uploads entre políticas filhas com peso. As filhas são configuradas após a criação."
},
"node":{
"slave":"escravo",
@ -1214,7 +1336,11 @@
"hostHeaderHint":"Se houver erro de assinatura, verifique se o proxy reverso na frente do nó está passando o cabeçalho <0>Host</0>.",
"features":"Recursos habilitados",
"remoteDownload":"Download remoto",
"refresh":"Atualizar"
"refresh":"Atualizar",
"ytdlpDes":"Executa o yt-dlp no servidor do nó de destino com o mesmo usuário/nível de acesso do Cloudreve. O yt-dlp é invocado como processo CLI por tarefa — sem daemon.",
"ytdlpOptionDes":"Flags adicionais do CLI yt-dlp ao criar uma tarefa de download, no formato JSON chave-valor — as chaves viram argumentos --flag literalmente, veja a <0>referência de opções do yt-dlp</0>.",
"ytdlpBinary":"Binário yt-dlp",
"ytdlpBinaryDes":"Caminho ou nome do executável yt-dlp no servidor do nó. Padrão: yt-dlp resolvido do PATH."
},
"group":{
"countUser":"Contagem",
@ -1300,7 +1426,38 @@
"notCopy":"Não copiar",
"confirmDelete":"Tem certeza de que deseja excluir o grupo {{group}}?",
"new":"Novo grupo",
"editGroup":"Editar {{group}}"
"editGroup":"Editar {{group}}",
"availablePolicyDesPro":"Seleção múltipla; usuários podem alternar livremente entre as políticas de armazenamento dentro do intervalo selecionado.",
"loginIPWhitelist":"Lista de IPs permitidos para login",
"loginIPWhitelistDes":"Restringe o login a estes IPs ou intervalos CIDR, um por linha. Deixe vazio para permitir todos.",
"delegatedAdmin":"Seções de administrador delegado",
"delegatedAdminDes":"Concede acesso apenas a seções selecionadas do painel. Usuários deste grupo podem abrir o painel admin, mas apenas as seções habilitadas funcionam — todas as outras chamadas à API admin são rejeitadas.",
"sectionUsers":"Usuários",
"sectionGroups":"Grupos",
"sectionFiles":"Arquivos e blobs",
"sectionShares":"Compartilhamentos",
"sectionStorage":"Políticas de armazenamento e nós",
"sectionQueue":"Fila de tarefas",
"sectionSettings":"Configurações do site e OAuth",
"sectionPayment":"Pagamentos",
"sectionEvents":"Eventos",
"sectionReports":"Denúncias de abuso",
"shareSell":"Vender links de compartilhamento",
"shareSellDes":"Quando ativado, usuários podem definir um preço em pontos em links de compartilhamento que criam.",
"wabDAVReadOnly":"WebDAV somente leitura",
"wabDAVReadOnlyDes":"Se ativado, montagens WebDAV para usuários deste grupo ficam somente leitura — uploads, exclusões, movimentações e outros métodos de escrita são rejeitados.",
"aria2TaskLimit":"Máx. de tarefas simultâneas de download remoto",
"aria2TaskLimitDes":"Número máximo de tarefas ativas de download remoto por usuário (em fila, executando ou suspensas). 0 = sem limite.",
"aria2MaxFileSize":"Tamanho máximo por tarefa de download (bytes)",
"aria2MaxFileSizeDes":"Tarefas de download remoto cujo tamanho total resolvido excede este valor são abortadas. 0 = sem limite.",
"setExplicitUser":"Definir permissões de arquivo",
"setExplicitUserDes":"Membros podem definir permissões detalhadas de leitura/criação/atualização/exclusão em arquivos e pastas que possuem, para usuários, grupos, visitantes anônimos ou todos os demais.",
"switchablePolicies":"Políticas de armazenamento alternáveis",
"switchablePoliciesDes":"Políticas que os membros deste grupo podem alternar livremente. A política padrão acima está sempre disponível.",
"weightedPolicies":"Seleção ponderada de políticas",
"weightedPoliciesDes":"Quando ativado, uploads sem preferência explícita de política são roteados à política permitida com mais capacidade livre que caiba o arquivo. Apenas políticas com limite de capacidade total são ponderadas.",
"sharePublicList":"Diretório público de compartilhamentos",
"sharePublicListDes":"Quando ativado, usuários podem incluir seus links de compartilhamento no diretório público (página Descobrir). Compartilhamentos protegidos por senha não podem ser listados."
},
"user":{
"createdAt":"Criado em",
@ -1350,7 +1507,34 @@
"deleteXUsers":"Excluir {{num}} usuários",
"confirmBatchDelete":"Tem certeza de que deseja excluir {{num}} usuários?",
"calibrateStorage":"Calibrar armazenamento",
"calibrateStorageSuccess":"Armazenamento calibrado com sucesso."
"calibrateStorageSuccess":"Armazenamento calibrado com sucesso.",
"relocateFiles":"Realocar arquivos",
"banExpires":"Banimento expira em",
"banExpiresDes":"Opcional. O banimento é levantado automaticamente após este momento; vazio significa permanente.",
"banReason":"Motivo do banimento",
"banReasonDes":"Opcional. Exibido ao usuário quando um login banido é rejeitado.",
"lastLogin":"Último login",
"uids":"IDs de usuário",
"uidsPlaceholder":"IDs separados por vírgula, ex.: 2,3,5",
"editXUsers":"Editar {{num}} usuários",
"batchEditXUsers":"Editar em lote {{num}} usuários",
"noChange":"Sem alteração",
"invitationCodes":"Códigos de convite",
"invitationCodesDes":"Códigos que podem ser exigidos em cadastros públicos. Crie, compartilhe e revogue aqui.",
"invitationCode":"Código",
"invitationCodeAuto":"Gerar automaticamente",
"invitationCodeGroup":"Grupo",
"invitationCodeMaxUses":"Usos máximos",
"invitationCodeExpires":"Expira em",
"invitationCodeUses":"Usos",
"invitationCodeCreated":"Código de convite criado.",
"invitationCodeCopied":"Código copiado para a área de transferência.",
"invitationCodeCopy":"Copiar",
"invitationCodeDefaultGroup":"Padrão",
"noInvitationCodes":"Nenhum código de convite ainda.",
"loadMore":"Carregar mais",
"additionalGroups":"Grupos adicionais",
"additionalGroupsDes":"Participações adicionais de grupo além do grupo primário. Permissões, cotas e políticas de armazenamento são unidas entre todos os grupos."
},
"file":{
"deleteXFiles":"Excluir {{num}} arquivos",
@ -1422,7 +1606,15 @@
"shareLinkExisted":"Tem link de compartilhamento",
"directLinkExisted":"Tem link direto",
"isUploading":"Está enviando",
"selectUser":"Selecionar usuário"
"selectUser":"Selecionar usuário",
"referenceCount":"Contagem de referências",
"awaitingRecycle":"Aguardando reciclagem",
"refCountGt":"Maior que",
"refCountLt":"Menor que",
"refCountEq":"Igual a",
"deletedState":"Estado de exclusão",
"liveOnly":"Apenas arquivos ativos",
"trashOnly":"Apenas lixeira"
},
"entity":{
"refenenceCount":"Contagem de referência",
@ -1433,7 +1625,15 @@
"confirmBatchDelete":"Tem certeza de que deseja excluir {{num}} Blobs?",
"deleteXEntities":"Excluir {{num}} Blobs",
"forceDelete":"Forçar exclusão",
"forceDeleteDes":"Se excluir o registro do Blob independentemente de o arquivo físico ser excluído."
"forceDeleteDes":"Se excluir o registro do Blob independentemente de o arquivo físico ser excluído.",
"relocateXEntities":"Realocar {{num}} blobs",
"relocateTitle":"Realocar blobs",
"relocateEntitiesDes":"Mover os dados de {{num}} blobs selecionados para outra política de armazenamento. A tarefa roda em segundo plano e pode ser retomada.",
"relocatePolicyDes":"Mover todos os blobs armazenados em \"{{name}}\" para outra política de armazenamento. A tarefa roda em segundo plano e pode ser retomada.",
"relocateUserDes":"Mover todos os blobs pertencentes a \"{{name}}\" para outra política de armazenamento. A tarefa roda em segundo plano e pode ser retomada.",
"relocatePolicy":"Migrar todos os blobs em {{name}} para outra política",
"relocateStart":"Iniciar realocação",
"relocateSubmitted":"Tarefa de realocação enviada"
},
"event":{
"cleanup":"Limpeza",
@ -1469,7 +1669,8 @@
"confirmDelete":"Tem certeza de que deseja excluir este evento?",
"deleteXEvents":"Excluir {{num}} eventos",
"confirmBatchDelete":"Tem certeza de que deseja excluir {{num}} eventos?",
"allEventTypes":"Todos os tipos de evento"
"allEventTypes":"Todos os tipos de evento",
"noEvents":"Nenhum evento registrado ainda"
},
"share":{
"confirmBatchDelete":"Tem certeza de que deseja excluir {{num}} compartilhamentos?",
@ -1547,7 +1748,8 @@
"finished":"Finalizado",
"canceled":"Cancelado/Parado",
"unknown":"Desconhecido",
"errorMsg":"Mensagem de erro"
"errorMsg":"Mensagem de erro",
"blobAudit":"Auditar blobs na política de armazenamento #{{policyID}} ({{count}} órfãos)"
},
"payment":{
"tradeNo":"Nº do Comércio",
@ -1726,7 +1928,21 @@
"customPaymentEndpointDes":"URL a ser solicitada ao criar um pedido de pagamento.",
"appFeedback":"URL de feedback",
"appForum":"URL do fórum do usuário",
"appLinkDes":"Será exibido no cliente móvel, deixe vazio para ocultar item do menu. Esta configuração terá efeito apenas se a licença VOL for válida."
"appLinkDes":"Será exibido no cliente móvel, deixe vazio para ocultar item do menu. Esta configuração terá efeito apenas se a licença VOL for válida.",
"addTrafficPack":"Adicionar pacote de tráfego",
"editTrafficPack":"Editar pacote de tráfego",
"trafficSize":"Quantidade de tráfego (bytes)",
"trafficSizeDes":"Bytes de tráfego de link direto concedidos na compra; pacotes são permanentes.",
"subAddressChars":"Caracteres de sub-endereço",
"subAddressCharsDes":"Caracteres tratados como separadores de sub-endereço na parte local do e-mail (ex.: <code>+-.</code> para apelidos estilo Gmail/iCloud). Vazio usa o padrão <code>+</code>.",
"remoteDownloadHeadersDescription":"По одному заголовку на строку, например Cookie: sid=...",
"allowUpload":"Разрешить загрузку",
"allowUploadDes":"Посетители могут загружать новые файлы и создавать папки в этой общей папке. Хранилище учитывается в вашей квоте.",
"allowEdit":"Разрешить редактирование",
"allowEditDes":"Посетители могут загружать, переименовывать, перемещать и удалять файлы в этой общей папке. Включает разрешение на загрузку.",
"uploadOnly":"Только загрузка (drop box)",
"uploadOnlyDes":"Посетители могут загружать файлы, но не могут просматривать или загружать существующее содержимое этой общей папки.",
"previewOnly":"Только предпросмотр",
"previewOnlyDes":"Посетители могут просматривать файлы, но не могут их загружать.",
"shareNote":"Заметка",
"shareNoteDes":"Личная заметка для идентификации этой ссылки. Видна только вам в разделе «Мои ссылки».",
"shareTargets":"Получатели ссылки",
"shareTargetsCount_one":"{{count}} цель",
"shareTargetsCount_few":"{{count}} цели",
"shareTargetsCount_many":"{{count}} целей",
"shareTargetsCount_other":"{{count}} целей",
"publicListing":"В публичном каталоге",
"publicListingDes":"Показывать эту ссылку на странице «Обзор», видна всем, включая анонимных посетителей. Недоступно для ссылок, защищённых паролем.",
"hideReadme":"Скрыть файл readme",
"hideReadmeDes":"Не показывать сам файл README в списке ссылки. Посетители всё равно видят содержимое readme."
},
"uploader":{
"fileCopyName":"Копия_",
@ -688,7 +785,7 @@
"preparing":"Подготовка...",
"processing":"Обработка...",
"progressDescription":"Загружено {{uploaded}}, всего {{total}} - {{percentage}}%",
"progressDescriptionFull":"{{speed}} Загружено {{uploaded}}, всего {{total}} - {{percentage}}%",
"progressDescriptionFull":"{{speed}} Загружено {{uploaded}}, всего {{total}} - {{percentage}}%{{eta}}",
"progressDescriptionPlaceHolder":"Загружено - ",
"uploaded":"Загружено",
"rootFolder":"Корневая папка",
@ -747,7 +844,8 @@
"upyunUploadFailed":"Ошибка загрузки: {{msg}}",
"parseResponseError":"Не удалось разобрать ответ: {{msg}} ({{content}})",
"concurrentTaskNumber":"Количество одновременно загружаемых задач",
"dropFileHere":"Отпустите мышь для начала загрузки"
"dropFileHere":"Отпустите мышь для начала загрузки",
"etaSuffix":", осталось {{eta}}"
},
"share":{
"free":"Бесплатно",
@ -794,7 +892,19 @@
"preview":"Предварительный просмотр",
"incorrectPassword":"Неверный пароль",
"shareNotExist":"Публикация не существует или истекла",
"copyLinkToClipboard":"Скопировать ссылку в буфер обмена"
"copyLinkToClipboard":"Скопировать ссылку в буфер обмена",
"paidShareDes":"Это платная ссылка. Покупка стоит {{price}} баллов и открывает загрузку.",
"purchaseForPoints":"Купить за {{price}} баллов",
"signInToPurchase":"Войдите, чтобы купить",
"yourBalance":"Баланс: {{credits}} баллов",
"saveToMyFiles":"Сохранить в мои файлы",
"savedToMyFiles":"Ссылка сохранена в ваших файлах.",
"saveShareLink":"Сохранить ссылку",
"saveShareLinkHint":"Вставьте ссылку вида https://example.com/s/abc123",
"shareLink":"Ссылка",
"savedAs":"Сохранить как (необязательно)",
"sharePasswordRequired":"Для этой ссылки требуется пароль.",
"invalidShareLink":"Не удалось разобрать эту ссылку."
},
"download":{
"noFilesFound":"Файлы не найдены",
@ -1058,7 +1168,80 @@
"relocateFileTo":"Перенести <0></0>{{more}} политику хранения в {{policy}}",
"extractFileTo":"Извлечь <0></0>{{more}} в <1></1>",
"createArchiveTo":"Упаковать <0></0>{{more}} в <1></1>",
"importFileTo":"Импортировать файлы из {{policy}} в <0></0>"
"importFileTo":"Импортировать файлы из {{policy}} в <0></0>",
"preferredViewers":"Приложения по умолчанию",
"preferredViewersDes":"Приложения, выбранные с «Всегда» в диалоге открытия. Применяются на всех ваших устройствах; удалите, чтобы снова получить запрос.",
"preferredViewersEmpty":"Нет сохранённых приложений по умолчанию. Выберите «Всегда» в диалоге открытия файла.",
"trashRetention":"Срок хранения в корзине (дни)",
"trashRetentionDes":"Количество дней, в течение которых файл хранится в корзине до автоматического удаления. 0 наследует групповое значение по умолчанию. Применяется к файлам, перемещённым в корзину после изменения.",
"linkedAccounts":"Привязанные аккаунты",
"providerQQ":"QQ",
"unlinkAccount":"Отвязать",
"unlinkAccountConfirm":"Вы уверены, что хотите отвязать этот аккаунт? Вы больше не сможете входить через него.",
"linkQQAccount":"Привязать аккаунт QQ",
"providerWeChat":"WeChat",
"linkWeChatAccount":"Привязать аккаунт WeChat",
"phoneBinding":"Привязка телефона",
"bindPhone":"Привязать телефон",
"unbindPhone":"Отвязать",
"unbindPhoneConfirm":"Вы уверены, что хотите отвязать этот номер телефона? Вы больше не сможете входить или сбрасывать пароль через него.",
"changeEmail":"Изменить",
"changeEmailDes":"Подтверждающая ссылка будет отправлена на новый адрес. Текущий адрес ({{email}}) остаётся активным до подтверждения.",
"newEmail":"Новый адрес электронной почты",
"changeEmailPasswordDes":"Введите текущий пароль для подтверждения.",
"emailChangeSent":"Письмо с подтверждением отправлено на новый адрес.",
"copySecret":"Не отсканировать? Нажмите, чтобы скопировать ключ настройки",
"secretCopied":"Ключ настройки скопирован",
"shareSiteDefault":"По умолчанию сайта",
"shareSiteDefaultDes":"Следовать общему значению по умолчанию, заданному администратором.",
"shareDefaultPrivate":"Конфиденциальность ссылок по умолчанию",
"shareDefaultPrivateDes":"Новые ссылки по умолчанию приватные (защищены паролем).",
"sharePrivateOn":"Приватная",
"sharePrivateOff":"Публичная",
"preferredPolicy":"Предпочтительная политика хранения",
"preferredPolicyDes":"Новые загрузки в ваших файлах используют эту политику хранения, если папка её не переопределяет.",
"policySaved":"Политика хранения обновлена",
"policyInherit":"Наследовать (групповая по умолчанию)",
"policyGroupDefault":"Групповая по умолчанию",
"creditBalance":"Баланс баллов",
"storageBonus":"Бонус хранилища",
"dlTraffic":"Трафик прямых ссылок",
"dlTrafficUnlimited":"Без ограничений",
"activeGrants":"Активные привилегии",
"grantStorage":"Хранилище",
"grantGroup":"Группа",
"redeemGiftCode":"Активировать подарочный код",
"redeemGiftCodeDes":"Введите подарочный код, чтобы получить баллы или привилегии",
"description":"Файлы в личном пространстве скрыты от просмотра и поиска, пока вы не разблокируете его отдельным паролем. Файлы из личного пространства нельзя делиться или открывать через WebDAV.",
"enable":"Включить личное пространство",
"enabled":"Личное пространство включено",
"disable":"Отключить",
"disabled":"Личное пространство отключено",
"disableDescription":"При отключении снимается блокировка; папка и её содержимое остаются обычными файлами.",
"confirmDisable":"Подтвердить отключение",
"setPassword":"Задать пароль личного пространства",
"confirmPassword":"Пароль личного пространства",
"enterPassword":"Пароль личного пространства",
"lockNow":"Заблокировать сейчас",
"locked":"Личное пространство заблокировано",
"unlocked":"Разблокировано",
"lockedState":"Заблокировано",
"lockedTitle":"Эта папка находится в личном пространстве. Разблокируйте, чтобы продолжить.",
"badge":"Личное пространство"
},
"shop":{
"memberships":"Подписки",
"storagePacks":"Пакеты хранилища",
"trafficPacks":"Пакеты трафика",
"redeem":"Активировать",
"balance":"Баланс: {{credits}} баллов",
"purchased":"Куплено: {{name}}",
"permanent":"Бессрочно",
"noProducts":"Нет доступных товаров",
"buyWithPoints":"Купить за {{points}} баллов",
"pointsUnavailable":"Недоступно для покупки за баллы"
"uploadDedupScopeDes":"Когда клиент отправляет хеш содержимого, сервер ищет идентичный завершённый файл и мгновенно создаёт загрузку без передачи данных.",
"uploadDedupScope_off":"Выключено",
"uploadDedupScope_offDes":"Без обнаружения дубликатов; каждая загрузка передаёт данные.",
"uploadDedupScope_owner":"Тот же пользователь",
"uploadDedupScope_ownerDes":"Дедупликация только по файлам, которыми уже владеет загружающий пользователь.",
"uploadDedupScope_global":"Глобально",
"uploadDedupScope_globalDes":"Дедупликация по всем завершённым файлам на этом сайте.",
"translations":"Переводы",
"translationsDes":"Переопределения для каждого языка. Оставьте пустым, чтобы использовать значение по умолчанию. Пользователи видят вариант, соответствующий их языку или языку браузера.",
"invitationCodeRequired":"Требовать код приглашения",
"invitationCodeRequiredDes":"Новые регистрации должны предоставить действительный код приглашения. Коды управляются в разделе «Пользователи — Коды приглашений».",
"smtpAuthMethod":"Метод аутентификации SMTP",
"smtpAuthMethodDes":"Автообнаружение выбирает только безопасные механизмы и никогда не отправляет учётные данные в открытом виде по незашифрованным соединениям. Если ваш сервер предлагает только PLAIN/LOGIN без шифрования, выберите соответствующий метод «-noenc» — учётные данные будут передаваться в открытом виде.",
"smtpAuth_autodiscover":"Автообнаружение",
"smtpAuth_plain":"PLAIN",
"smtpAuth_plain_noenc":"PLAIN (без шифрования)",
"smtpAuth_login":"LOGIN",
"smtpAuth_login_noenc":"LOGIN (без шифрования)",
"smtpAuth_cram_md5":"CRAM-MD5",
"smtpAuth_scram_sha_1":"SCRAM-SHA-1",
"smtpAuth_scram_sha_256":"SCRAM-SHA-256",
"smtpAuth_xoauth2":"XOAUTH2",
"smtpAuth_noauth":"Без аутентификации",
"tcaptcha":"Tencent Captcha",
"tcaptchaAppId":"CaptchaAppId",
"tcaptchaAppSecretKey":"AppSecretKey",
"tcaptchaSecretId":"SecretId",
"tcaptchaSecretKey":"SecretKey",
"tcaptchaDes":"Получите CaptchaAppId и AppSecretKey в <0>консоли Tencent Captcha</0>.",
"tcaptchaSecretDes":"SecretId и SecretKey учётных данных API Tencent Cloud для вызова DescribeCaptchaResult.",
"trafficProductSettings":"Продукт трафика",
"trafficProductsDes":"Настройте продукты, которые пользователи могут покупать для пополнения трафика прямых ссылок.",
"auditRetentionDays":"Срок хранения (дни)",
"auditRetentionDaysDes":"Удалять события старше указанного числа дней. 0 хранит события бессрочно.",
"ssoIssuer":"URL эмитента",
"ssoIssuerDes":"Базовый URL эмитента OIDC, например <0>https://keycloak.example.com/realms/master</0>. Метаданные поставщика загружаются из <1>.well-known/openid-configuration</1> по этому URL.",
"ssoRegisterEnabledDes":"Автоматически создавать локальную учётную запись при первом входе через SSO. Фильтр email для регистрации ниже также применяется.",
"downloadCdnRoutes":"CDN-маршруты загрузки",
"downloadCdnRoutesDes":"Альтернативные конечные точки загрузки, предлагаемые пользователям, по одной на строку в формате name=url (например, Линия 1=https://cdn1.example.com). Маршруты должны проксировать полный путь запроса и параметры обратно на этот сайт, чтобы подписанные URL оставались действительными; для загрузки в браузере требуются заголовки CORS.",
"downloadCdnShuffleDes":"Случайно распределять каждую сгенерированную ссылку загрузки между URL сайта и всеми настроенными CDN-маршрутами, чтобы пакетный экспорт в менеджеры загрузок обращался к разным конечным точкам. Ручной выбор маршрута скрыт при включении.",
"ssoAutoRedirect":"Автопереход на SSO",
"ssoAutoRedirectDes":"Пропустить форму входа и отправлять посетителей напрямую к поставщику удостоверений. Добавьте <0>?nosso=1</0> к URL входа, чтобы попасть на форму пароля (например, для восстановления администратора).",
"ssoCallbackUrl":"URL обратного вызова",
"ssoCallbackUrlDes":"Зарегистрируйте этот URL как redirect/callback URL у вашего поставщика удостоверений: <0>{{url}}</0>",
"qqConnect":"QQ Connect",
"qqAppID":"App ID",
"qqAppIDDes":"App ID веб-приложения, созданного в <0>консоли QQ Connect</0> (connect.qq.com).",
"qqAppSecret":"App Key",
"qqCallbackUrl":"URL обратного вызова",
"qqCallbackUrlDes":"Зарегистрируйте этот URL как домен/URL обратного вызова в консоли QQ Connect: <0>{{url}}</0>",
"qqRegisterEnabledDes":"Автоматически создавать локальную учётную запись при первом входе через QQ. QQ не предоставляет email, поэтому созданным аккаунтам назначается синтетический адрес @connect.qq.local.",
"wechatConnect":"Вход по скану WeChat",
"wechatAppID":"App ID",
"wechatAppIDDes":"AppID веб-приложения, созданного на <0>WeChat Open Platform</0> (open.weixin.qq.com).",
"wechatAppSecret":"App Secret",
"wechatCallbackUrl":"URL обратного вызова",
"wechatCallbackUrlDes":"Зарегистрируйте домен этого URL как домен обратного вызова авторизации в консоли WeChat Open Platform: <0>{{url}}</0>",
"wechatRegisterEnabledDes":"Автоматически создавать локальную учётную запись при первом входе через WeChat. WeChat не предоставляет email, поэтому созданным аккаунтам назначается синтетический адрес @connect.wechat.local.",
"smsSignIn":"Вход по SMS",
"smsEndpoint":"Конечная точка шлюза",
"smsEndpointDes":"HTTP-конечная точка вашего SMS-провайдера. Плейсхолдеры <0>{phone}</0> и <0>{code}</0> заменяются перед каждым запросом.",
"smsMethodDes":"HTTP-метод запроса к шлюзу. Для GET плейсхолдеры подставляются только в URL конечной точки.",
"smsHeaders":"Заголовки запроса",
"smsHeadersDes":"По одной паре `Key: Value` на строку, например Authorization: Bearer <token>.",
"smsBodyTemplate":"Шаблон тела запроса",
"smsBodyTemplateDes":"Тело, отправляемое для POST-запросов. Плейсхолдеры <0>{phone}</0> и <0>{code}</0> заменяются перед каждым запросом.",
"smsRegisterEnabledDes":"Автоматически создавать локальную учётную запись при первом входе по SMS-коду. Созданным аккаунтам назначается синтетический адрес @sms.local.",
"themeVisible":"Видима",
"shareDefaultPrivate":"Приватная ссылка по умолчанию",
"shareDefaultPrivateDes":"Новые ссылки по умолчанию приватные (защищены паролем). Пользователи могут изменить это в личных настройках.",
"defaultShareLinksInProfile":"Видимость ссылок в профиле по умолчанию",
"defaultShareLinksInProfileDes":"Определяет, какие ссылки отображаются на публичной странице профиля пользователя, если он не выбрал их сам.",
"profileSharePublicOnly":"Только ссылки без пароля",
"profileShareAll":"Все ссылки",
"profileShareHide":"Скрыть все ссылки"
},
"giftCodes":{
"giftCodesSettings":"Подарочные коды",
@ -852,7 +937,11 @@
"copyAndClose":"Скопировать и закрыть",
"duratonTimes":"Множитель длительности",
"duratonTimesDes":"Сколько единиц соответствующего товара содержит каждый подарочный код.",
"unknownProduct":"Неизвестный продукт"
"unknownProduct":"Неизвестный продукт",
"giftCodeTypeTraffic":"Трафик прямых ссылок",
"giftCodeDeleteFailed":"Не удалось удалить подарочный код",
"giftCodeCreateFailed":"Не удалось создать подарочные коды",
"giftCodeAmountHelp":"Сумма начисления на код"
},
"policy":{
"acceleratedDomainUpload":"Использовать ускоренный домен для загрузки",
@ -871,7 +960,7 @@
"authorizeNow":"Авторизовать сейчас",
"authorizeAgain":"Повторная авторизация",
"notGranted":"Нет авторизованного аккаунта, политика хранения недоступна.",
"granted":"Аккаунт авторизован, учетные данные обновлены <0></0>.",
"granted":"Аккаунт авторизован, учетные данные обновлены <0>{{time}}</0>.",
"grantedNotRefresh":"Аккаунт авторизован, учетные данные не обновлялись с момента последнего запуска.",
"batchDeleteSize":"Максимальное количество для пакетного удаления",
"batchDeleteSizeDes":"Ограничивает максимальное количество удалений в одном API-запросе. Эта настройка не влияет на пакетное удаление файлов пользователями. Если не заполнено, будет использоваться значение по умолчанию <0>1000</0>, что является максимально допустимым значением для официального S3 API.",
"enableFileEncryptionDes":"При включении блобы файлов будут храниться в зашифрованном виде. Изменение этого параметра влияет только на вновь добавляемые файлы.",
"encryptedFile":"Зашифрованные файлы"
"encryptedFile":"Зашифрованные файлы",
"thumbForceProxy":"Принудительная генерация эскизов через прокси",
"thumbForceProxyDes":"Всегда генерировать эскизы через локальный прокси-конвейер, даже если бэкенд хранилища предоставляет нативный API эскизов. Подразумевает прокси-генерацию эскизов.",
"thumbStoragePolicy":"Политика хранения эскизов",
"thumbStoragePolicySource":"Как у файла",
"thumbStoragePolicyDes":"Сгенерированные эскизы хранятся по выбранной политике вместо политики самого файла.",
"blobAudit":"Аудит blobs: {{name}}",
"blobAuditDes":"Сканирует бэкенд хранилища и перечисляет физические объекты, на которые не ссылается ни одна запись файла. Полезно для поиска «блуждающих» blobs после неудачных передач.",
"blobAuditDelete":"Удалить потерянные blobs",
"blobAuditDeleteWarning":"Потерянные объекты будут безвозвратно удалены из бэкенда хранилища. Файлы, ещё загружаемые, могут отображаться как потерянные — включайте только если уверены, что загрузок нет.",
"blobAuditStart":"Начать аудит",
"blobAuditSubmitted":"Задача аудита blobs поставлена в очередь.",
"maxTotalSize":"Максимальная общая ёмкость",
"maxTotalSizeDes":"Максимальный общий объём данных в этой политике. Загрузки и копирования, превышающие лимит, отклоняются. 0 — без ограничений.",
"overflowPolicy":"Политика переполнения",
"overflowPolicyDes":"При нехватке ёмкости новые загрузки направляются в выбранную политику. Поддерживаются цепочки политик.",
"auditEndpoint":"Конечная точка аудита содержимого",
"auditEndpointDes":"HTTP-конечная точка аудита содержимого (например, модерация изображений). Если задано, при создании ссылки на файл из этой политики его содержимое POST-отправляется на конечную точку; ответ {\"flagged\":true} блокирует ссылку. Оставьте пустым, чтобы отключить.",
"auditMaxSize":"Лимит размера аудита",
"auditMaxSizeDes":"Максимальный размер сущности, отправляемой на аудит. Большие файлы пропускаются. 0 — без ограничений.",
"overflowNone":"Нет",
"allowNativeName":"Разрешить нативные символы в именах файлов",
"allowNativeNameDes":"Разрешить символы, запрещённые только в файловых системах Windows (: * ? \" < > |), в именах файлов. Может нарушить работу клиентов, монтируемых на Windows. Разделители путей остаются запрещёнными.",
"status":"Статус",
"statusDes":"Приостановленные политики продолжают обслуживать существующие файлы, но отклоняют новые загрузки.",
"loadBalance":"Балансировка нагрузки",
"lbChildren":"Дочерние политики хранения",
"lbChildPolicy":"Политика хранения",
"lbWeight":"Вес",
"lbAddChild":"Добавить дочернюю политику",
"lbChildrenDes":"Новые загрузки распределяются по дочерним политикам пропорционально их весу.",
"lbWizardDes":"Политика балансировки распределяет загрузки по дочерним политикам с учётом веса. Дочерние настраиваются после создания."
},
"node":{
"slave":"Подчиненный узел",
@ -1215,7 +1335,12 @@
"hostHeaderHint":"Если возникают ошибки подписи, проверьте, передает ли обратный прокси перед подчиненным узлом заголовок <0>Host</0>.",
"features":"Включенные функции",
"remoteDownload":"Офлайн-загрузка",
"refresh":"Обновить"
"refresh":"Обновить",
"ytdlpDes":"Запускайте yt-dlp на целевом узле с тем же пользователем/уровнем доступа, что и Cloudreve. yt-dlp вызывается как CLI-процесс для каждой задачи — демон не требуется.",
"ytdlpOptionDes":"Дополнительные флаги CLI yt-dlp при создании задачи загрузки в формате JSON ключ-значение — ключи становятся аргументами --flag как есть, см. <0>справочник параметров yt-dlp</0>.",
"ytdlpBinary":"Бинарник yt-dlp",
"ytdlpBinaryDes":"Путь или имя исполняемого файла yt-dlp на узле. По умолчанию yt-dlp из PATH.",
"copyBinary":""
},
"group":{
"countUser":"Статистика",
@ -1301,7 +1426,38 @@
"notCopy":"Не копировать",
"confirmDelete":"Подтвердите удаление группы пользователей {{group}}?",
"new":"Новая группа пользователей",
"editGroup":"Редактировать {{group}}"
"editGroup":"Редактировать {{group}}",
"availablePolicyDesPro":"Множественный выбор — пользователи могут свободно переключаться между выбранными политиками хранения.",
"loginIPWhitelist":"Белый список IP для входа",
"loginIPWhitelistDes":"Ограничить вход этими IP или диапазонами CIDR, по одному на строку. Оставьте пустым, чтобы разрешить все.",
"delegatedAdminDes":"Предоставить доступ только к выбранным разделам панели. Пользователи этой группы могут открывать админ-панель, но работают только включённые разделы — все остальные вызовы admin API отклоняются.",
"sectionUsers":"Пользователи",
"sectionGroups":"Группы",
"sectionFiles":"Файлы и blobs",
"sectionShares":"Ссылки",
"sectionStorage":"Политики хранения и узлы",
"sectionQueue":"Очередь задач",
"sectionSettings":"Настройки сайта и OAuth",
"sectionPayment":"Платежи",
"sectionEvents":"События",
"sectionReports":"Жалобы",
"shareSell":"Продажа ссылок",
"shareSellDes":"Если включено, пользователи могут устанавливать цену в баллах на создаваемые ими ссылки.",
"wabDAVReadOnly":"WebDAV только чтение",
"wabDAVReadOnlyDes":"Если включено, монтирования WebDAV для пользователей этой группы становятся доступными только для чтения — загрузки, удаления, перемещения и другие методы записи отклоняются.",
"aria2TaskLimitDes":"Максимум активных задач удалённой загрузки на пользователя (в очереди, выполняемые или приостановленные). 0 = без ограничений.",
"aria2MaxFileSize":"Макс. размер задачи загрузки (байт)",
"aria2MaxFileSizeDes":"Удалённые загрузки, общий размер которых превышает лимит, прерываются. 0 = без ограничений.",
"setExplicitUser":"Установка прав на файлы",
"setExplicitUserDes":"Участники могут задавать детальные права на чтение/создание/изменение/удаление для принадлежащих им файлов и папок — конкретным пользователям, группам, анонимным посетителям или всем остальным.",
"switchablePolicies":"Переключаемые политики хранения",
"switchablePoliciesDes":"Политики, на которые участники этой группы могут свободно переключаться. Политика по умолчанию выше всегда доступна.",
"weightedPolicies":"Взвешенный выбор политик",
"weightedPoliciesDes":"Если включено, загрузки без явного выбора политики направляются в разрешённую политику с наибольшим свободным местом, вмещающую файл. Учитываются только политики с общим лимитом ёмкости.",
"sharePublicList":"Публичный каталог ссылок",
"sharePublicListDes":"Если включено, пользователи могут включать свои ссылки в публичный каталог (страница «Обзор»). Ссылки с паролем не могут быть опубликованы."
"forceDeleteDes":"Запись Blob будет удалена независимо от того, успешно ли удален физический файл."
"forceDeleteDes":"Запись Blob будет удалена независимо от того, успешно ли удален физический файл.",
"relocateXEntities":"Переместить {{num}} blobs",
"relocateTitle":"Переместить blobs",
"relocateEntitiesDes":"Переместить данные {{num}} выбранных blobs в другую политику хранения. Задача выполняется в фоне и может быть возобновлена.",
"relocatePolicyDes":"Переместить все blobs, хранящиеся в «{{name}}», в другую политику хранения. Задача выполняется в фоне и может быть возобновлена.",
"relocateUserDes":"Переместить все blobs, принадлежащие «{{name}}», в другую политику хранения. Задача выполняется в фоне и может быть возобновлена.",
"relocatePolicy":"Перенести все blobs из {{name}} в другую политику",
"confirmBatchDelete":"Подтвердите удаление {{num}} общих доступов?",
@ -1548,7 +1748,8 @@
"finished":"Завершено",
"canceled":"Отменено/Остановлено",
"unknown":"Неизвестно",
"errorMsg":"Сообщение об ошибке"
"errorMsg":"Сообщение об ошибке",
"blobAudit":"Аудит blobs в политике хранения #{{policyID}} ({{count}} потерянных)"
},
"payment":{
"tradeNo":"Номер транзакции",
@ -1727,7 +1928,21 @@
"customPaymentEndpointDes":"URL интерфейса, запрашиваемый при создании платежного заказа",
"appFeedback":"URL страницы обратной связи",
"appForum":"URL пользовательского форума",
"appLinkDes":"Используется для отображения на странице настроек приложения, оставьте пустым, чтобы не показывать кнопку ссылки. Эта настройка действует только при действительной лицензии VOL."
"appLinkDes":"Используется для отображения на странице настроек приложения, оставьте пустым, чтобы не показывать кнопку ссылки. Эта настройка действует только при действительной лицензии VOL.",
"addTrafficPack":"Добавить пакет трафика",
"editTrafficPack":"Изменить пакет трафика",
"trafficSize":"Объём трафика (байт)",
"trafficSizeDes":"Байты трафика прямых ссылок, начисляемые при покупке; пакеты бессрочные.",
"subAddressChars":"Символы подадреса",
"subAddressCharsDes":"Символы, считающиеся разделителями подадреса в локальной части email (например, <code>+-.</code> для алиасов в стиле Gmail/iCloud). Пусто по умолчанию — <code>+</code>.",
"manualAdjust":"Ручная корректировка баллов",
"adjustEmail":"Email пользователя",
"adjustDelta":"Изменение баллов",
"adjustDeltaDes":"Положительное значение добавляет баллы, отрицательное — списывает",