mirror of
https://github.com/nexu-io/open-design.git
synced 2026-06-01 03:14:35 +07:00
Fixes #2975 Add window.confirm() check before deleting individual extraction history items to prevent accidental data loss. This follows the same pattern as the existing onClearExtractions function. Changes: - Added confirmation dialog in MemorySection.onDeleteExtraction - Added i18n key 'settings.memoryExtractionDeleteConfirm' to all locales - Updated useCallback dependency array to include 't' The confirmation message warns users that the deletion cannot be undone, providing a safety net against accidental clicks.
1822 lines
120 KiB
TypeScript
1822 lines
120 KiB
TypeScript
import type { Dict } from '../types';
|
||
import { en } from './en';
|
||
|
||
export const fa: Dict = {
|
||
...en,
|
||
'chat.amrCard.switchTitle': 'فراخوانی مدل ناموفق بود — این اجرا متوقف شد',
|
||
'chat.amrCard.switchBody': 'به سرویس رسمی مدل AMR از Open Design سوئیچ کنید — بدون نیاز به تنظیم کلید API. پس از ورود، اعطای دسترسی و شارژ، این اجرا بهطور خودکار دوباره انجام میشود.',
|
||
'chat.amrCard.chipOfficial': 'میزبانی رسمی',
|
||
'chat.amrCard.chipNoKey': 'بدون کلید API',
|
||
'chat.amrCard.chipAutoRetry': 'تلاش مجدد خودکار پس از ورود',
|
||
'chat.amrCard.switchCta': 'سوئیچ به AMR و تلاش مجدد',
|
||
'chat.amrError.authMessage': 'حساب AMR شما هنوز مجاز نشده است. آن را مجاز کنید تا این اجرا بهطور خودکار دوباره انجام شود.',
|
||
'chat.amrError.balanceMessage': 'موجودی AMR شما تمام شده است. برای ادامه این اجرا شارژ کنید.',
|
||
'chat.amrError.authorizeCta': 'اعطای دسترسی و تلاش مجدد',
|
||
'chat.amrError.rechargeCta': 'شارژ AMR',
|
||
'plugins.actions.copyInstallCommand': 'کپی دستور نصب',
|
||
'plugins.actions.copyPluginId': 'کپی شناسهٔ افزونه',
|
||
'plugins.actions.copyReadmeBadge': 'کپی نشان README',
|
||
'plugins.actions.openSourceGithub': 'باز کردن منبع در GitHub',
|
||
'plugins.actions.openSource': 'باز کردن منبع',
|
||
'plugins.actions.openHomepage': 'باز کردن صفحهٔ اصلی',
|
||
'plugins.actions.openMarketplace': 'باز کردن در بازارچه',
|
||
'workingDirPicker.title': "Folder",
|
||
'workingDirPicker.homeTitle': "Choose where this project should live",
|
||
'workingDirPicker.processing': "Processing…",
|
||
'workingDirPicker.select': "Choose working directory",
|
||
'workingDirPicker.clearAria': "Clear working directory",
|
||
'workingDirPicker.replaceFailed': "Could not replace working directory",
|
||
'workingDirPicker.unavailable': "Folder picker is unavailable in this build. Run the desktop app to pick a folder.",
|
||
'workingDirPicker.openUnavailable': "Open this project in the desktop app to show the folder.",
|
||
'workingDirPicker.openFailed': "Could not show this folder",
|
||
'workingDirPicker.showInFileManager': "Show in file manager",
|
||
'workingDirPicker.replace': "Clear and replace directory…",
|
||
'workingDirPicker.recent': "Recent directories",
|
||
'handoff.toTarget': 'Hand off to {target}',
|
||
'handoff.action': 'Hand off',
|
||
'handoff.fallbackTitle': 'No editors found on $PATH - opens in {target}',
|
||
'handoff.chooseTargetAria': 'Choose hand-off target',
|
||
'handoff.notInstalled': 'Not installed',
|
||
'handoff.notDetectedTitle': '{target} - not detected on $PATH',
|
||
'homeHero.promptExamples': "نمونهها",
|
||
'homeHero.footer.designSystem': "سبک",
|
||
'homeHero.footer.autoDesignSystem': "خودکار",
|
||
'homeHero.footer.autoDesignSystemSummary': "بهصورت خودکار مناسبترین سیستم طراحی و سبک بصری را برای پرامپت فعلی انتخاب میکند.",
|
||
'homeHero.footer.ratio': "نسبت",
|
||
'homeHero.footer.duration': "مدت",
|
||
'homeHero.footer.resolution': "وضوح",
|
||
'homeHero.footer.speakerNotes': "Notes",
|
||
'homeHero.footer.noSpeakerNotes': "بدون یادداشت",
|
||
'homeHero.footer.availableCount': "{n} available",
|
||
'homeHero.footer.noMatches': "No matches",
|
||
'homeHero.moreShortcuts': "بیشتر",
|
||
'common.cancel': 'لغو',
|
||
'common.save': 'ذخیره',
|
||
'common.close': 'بستن',
|
||
'common.delete': 'حذف',
|
||
'common.rename': 'تغییر نام',
|
||
'common.edit': 'ویرایش',
|
||
'common.preview': 'پیشنمایش',
|
||
'common.share': 'اشتراکگذاری',
|
||
'common.search': 'جستجو',
|
||
'common.searchEllipsis': 'جستجو…',
|
||
'common.loading': 'در حال بارگذاری…',
|
||
'common.all': 'همه',
|
||
'common.none': 'هیچ',
|
||
'common.default': 'پیشفرض',
|
||
'common.installed': 'نصب شده',
|
||
'common.notInstalled': 'نصب نشده',
|
||
'common.active': 'فعال',
|
||
'common.offline': 'آفلاین',
|
||
'common.selected': 'انتخاب شده',
|
||
'common.create': 'ایجاد',
|
||
'common.openPreview': 'باز کردن پیشنمایش',
|
||
'common.exitFullscreen': 'خروج از تمام صفحه',
|
||
'common.fullscreen': 'تمام صفحه',
|
||
'common.openInNewTab': 'باز کردن در تب جدید',
|
||
'common.exportPdf': 'صادرکردن به PDF',
|
||
'common.exportZip': 'دانلود به صورت .zip',
|
||
'common.exportHtml': 'صادرکردن به HTML مستقل',
|
||
'common.justNow': 'همین الان',
|
||
'common.minutesAgo': '{n} دقیقه پیش',
|
||
'common.hoursAgo': '{n} ساعت پیش',
|
||
'common.daysAgo': '{n} روز پیش',
|
||
'common.weeksAgo': '{n}w ago',
|
||
'common.now': 'الان',
|
||
'common.minutesShort': '{n}د',
|
||
'common.hoursShort': '{n}س',
|
||
'common.daysShort': '{n}ر',
|
||
'common.untitled': 'بدون عنوان',
|
||
|
||
'app.brand': 'Open Design',
|
||
'app.brandPill': 'پیشنمایش تحقیقاتی',
|
||
'app.brandSubtitle': 'توسط Nexu Labs',
|
||
'app.welcomeLoading': 'در حال بارگذاری فضای کاری…',
|
||
|
||
'settings.welcomeKicker': "",
|
||
'settings.welcomeTitle': "Welcome",
|
||
'settings.welcomeSubtitle': "",
|
||
'settings.onboardingCreateTitle': 'Start from a brief',
|
||
'settings.onboardingCreateBody':
|
||
'Describe the site, app, deck, image, or video you want. Open Design will create a project and keep the work editable.',
|
||
'settings.onboardingMemoryTitle': 'Save working context',
|
||
'settings.onboardingMemoryBody':
|
||
'Add preferences, project facts, and recurring rules so future chats pick up the right context.',
|
||
'settings.onboardingSystemsTitle': 'Bring your design system',
|
||
'settings.onboardingSystemsBody':
|
||
'Pick or create a brand system so generated work follows real colors, typography, and product language.',
|
||
'settings.onboardingExecutionTitle': 'Choose how generation runs',
|
||
'settings.onboardingExecutionBody':
|
||
'Official CLI with one-click setup and ready-to-use defaults. Use one key to choose from many models with better pricing.',
|
||
'settings.onboardingAmrCloudBenefitOfficial': 'نگهداری رسمی',
|
||
'settings.onboardingAmrCloudBenefitReady': 'آماده استفاده',
|
||
'settings.onboardingAmrCloudBenefitModels': 'مدلهای فراوان',
|
||
'settings.onboardingAmrCloudBenefitPricing': 'قیمت بهتر',
|
||
'settings.onboardingAmrCloudAuthorizeAction': 'مجوزدهی AMR',
|
||
'settings.onboardingAmrCloudAuthorizedAction': 'مجوز داده شد',
|
||
'settings.onboardingStepConnect': "Connect",
|
||
'settings.onboardingStepDesignSystem': "Design system",
|
||
'settings.onboardingStepProfile': "About you",
|
||
'settings.onboardingConnectTitle': "Choose a runtime",
|
||
'settings.onboardingConnectBody': "",
|
||
'settings.onboardingRecommended': "Recommended",
|
||
'settings.onboardingLocalTitle': "Local coding agent",
|
||
'settings.onboardingLocalBody': "Use an installed CLI such as Claude Code, Codex, Cursor, Gemini, or OpenCode.",
|
||
'settings.onboardingLocalAction': "Open CLI settings",
|
||
'settings.onboardingCliScanHint': "This usually takes 5-10 seconds.",
|
||
'settings.onboardingByokTitle': "Bring your own key",
|
||
'settings.onboardingByokBody': "Use your own model provider credentials.",
|
||
'settings.onboardingByokAction': "Open BYOK settings",
|
||
'settings.onboardingDesignTitle': "Design system",
|
||
'settings.onboardingDesignBody': "Generate once, reuse everywhere.",
|
||
'settings.onboardingDesignIntroGenerateTitle': "Generate from existing work",
|
||
'settings.onboardingDesignIntroGenerateBody': "Upload your design system from GitHub or local code repositories, Figma files, images, and other content assets.",
|
||
'settings.onboardingDesignIntroReuseTitle': "Reuse in future work",
|
||
'settings.onboardingDesignIntroReuseBody': "Future prototypes, slides, and other content can reference your existing fonts, spacing, logo style, and color tone.",
|
||
'settings.onboardingDesignIntroSkipTitle': "Optional for now",
|
||
'settings.onboardingDesignIntroSkipBody': "Skip this step if you want to start without generating a design system.",
|
||
'settings.onboardingGithubTitle': "Import from GitHub",
|
||
'settings.onboardingGithubBody': "Use a frontend repository.",
|
||
'settings.onboardingUploadTitle': "Upload local files",
|
||
'settings.onboardingUploadBody': "Add project files, screenshots, CSS, docs, or assets.",
|
||
'settings.onboardingPromptTitle': "Generate from prompt",
|
||
'settings.onboardingPromptBody': "Describe the product or brand.",
|
||
'settings.onboardingProfileTitle': "About you",
|
||
'settings.onboardingProfileBody': "Optional details for better defaults.",
|
||
'settings.onboardingRoleLabel': "Your role",
|
||
'settings.onboardingOrgSizeLabel': "Organization size",
|
||
'settings.onboardingUseCaseLabel': "Use case",
|
||
'settings.onboardingSourceLabel': "Where did you hear about us?",
|
||
'settings.onboardingSelectPlaceholder': "Select one",
|
||
'settings.onboardingSelectMultiplePlaceholder': "Select one or more",
|
||
'settings.onboardingOrgSolo': "Solo / personal (1)",
|
||
'settings.onboardingOrgTeam': "Small team (2-10)",
|
||
'settings.onboardingOrgStartup': "Startup / SMB (11-50)",
|
||
'settings.onboardingOrgGrowth': "Growth company (51-200)",
|
||
'settings.onboardingOrgMidMarket': "Mid-market (201-1000)",
|
||
'settings.onboardingOrgEnterprise': "Enterprise (1000+)",
|
||
'settings.onboardingRolePm': "📋 Product manager",
|
||
'settings.onboardingRoleDesigner': "🎨 Designer",
|
||
'settings.onboardingRoleEngineer': "💻 Engineer",
|
||
'settings.onboardingRoleMarketing': "📣 Marketing",
|
||
'settings.onboardingRoleGrowth': "📈 Growth",
|
||
'settings.onboardingRoleOps': "⚙️ Operations",
|
||
'settings.onboardingRoleFounder': "🚀 Founder / executive",
|
||
'settings.onboardingRoleStudent': "🎓 Student / educator",
|
||
'settings.onboardingRoleOther': "✨ Other",
|
||
'settings.onboardingUseProduct': "🎨 Product design",
|
||
'settings.onboardingUseDesignSystem': "🧩 Design system",
|
||
'settings.onboardingUsePrototype': "📱 Prototype / app UI",
|
||
'settings.onboardingUseLanding': "🌐 Landing pages",
|
||
'settings.onboardingUseAds': "📣 Ads / social content",
|
||
'settings.onboardingUseDashboard': "📊 Dashboards / internal tools",
|
||
'settings.onboardingUseDeck': "🖥️ Presentation / deck",
|
||
'settings.onboardingUseMarketing': "📈 Marketing / growth",
|
||
'settings.onboardingUseEngineering': "🤝 Engineering handoff",
|
||
'settings.onboardingUseAgency': "💼 Agency / client work",
|
||
'settings.onboardingSourceGithub': "🐙 GitHub",
|
||
'settings.onboardingSourceFriend': "👥 Friend or coworker",
|
||
'settings.onboardingSourceSocial': "📱 Social media",
|
||
'settings.onboardingSourceProductHunt': "🅿️ Product Hunt",
|
||
'settings.onboardingSourceCommunity': "💬 Design / AI community",
|
||
'settings.onboardingSourceYoutube': "▶️ YouTube",
|
||
'settings.onboardingSourceBlog': "📰 Blog or newsletter",
|
||
'settings.onboardingSourceAiTool': "✨ AI tool recommendation",
|
||
'settings.onboardingSourceSearch': "🔍 Search",
|
||
'settings.onboardingSourceEvent': "🎤 Event or community",
|
||
'settings.onboardingBack': "Back",
|
||
'settings.onboardingContinue': "Continue",
|
||
'settings.onboardingFinish': "Finish setup",
|
||
'settings.onboardingSkip': "Skip for now",
|
||
'settings.kicker': 'تنظیمات',
|
||
'settings.title': 'حالت اجرا',
|
||
'settings.subtitle': 'بین CLI محلی و BYOK انتخاب کنید.',
|
||
'settings.modeAria': 'حالت اجرا',
|
||
'settings.protocolAria': 'پروتکل API',
|
||
'settings.modeDaemon': 'CLI محلی',
|
||
'settings.modeDaemonHelp': 'اجرا از طریق CLI عامل کد روی دستگاه شما',
|
||
'settings.modeDaemonOffline': 'Daemon در حال اجرا نیست',
|
||
'settings.modeDaemonOfflineMeta': 'daemon آفلاین',
|
||
'settings.modeDaemonInstalledMeta': '{count} نصب شده',
|
||
'settings.modeApi': 'ارائهدهنده API',
|
||
'settings.modeApiMeta': 'BYOK',
|
||
'settings.codeAgent': 'عامل کد',
|
||
'settings.codeAgentHint':
|
||
'با اسکن PATH شما شناسایی شده. CLI مورد نظر برای جریان تولیدات را انتخاب کنید.',
|
||
'settings.rescan': '↻ اسکن مجدد',
|
||
'settings.rescanTitle': 'اسکن مجدد PATH',
|
||
'settings.rescanRunning': 'در حال اسکن...',
|
||
'settings.rescanSuccess': 'اسکن کامل شد. {count} مورد در دسترس است.',
|
||
'settings.designSystemRenameFailed': 'تغییر نام ناموفق بود. daemon را بررسی کنید و دوباره تلاش کنید.',
|
||
'settings.rescanFailed': 'اسکن ناموفق بود. daemon را بررسی کنید و دوباره تلاش کنید.',
|
||
'settings.test': 'آزمایش',
|
||
'settings.testTitle': 'یک پیام کوچک آزمایشی برای راستیآزمایی اتصال ارسال کنید',
|
||
'settings.testRunning': 'در حال آزمایش اتصال…',
|
||
'settings.testCancel': 'انصراف',
|
||
'settings.testSuccessApi': 'متصل شد. در {ms} میلیثانیه پاسخ داد — \'{sample}\'',
|
||
'settings.testSuccessCli': '{agentName} در {ms} میلیثانیه پاسخ داد — \'{sample}\'',
|
||
'settings.testAuthFailed': 'احراز هویت ناموفق بود. کلید API را بررسی کنید.',
|
||
'settings.testForbidden': 'دسترسی مجاز نیست. حساب، منطقه یا سازمان را بررسی کنید.',
|
||
'settings.testNotFoundModel': 'مدل \'{model}\' در این نقطه پایانی یافت نشد.',
|
||
'settings.testInvalidModelId': 'شناسه مدل \'{model}\' نامعتبر است. شناسه سفارشی باید با حرف یا عدد شروع شود و فاصله نداشته باشد.',
|
||
'settings.testInvalidBaseUrl': 'Base URL نامعتبر یا غیرقابل دسترسی است.',
|
||
'settings.testRateLimited': 'ارائهدهنده برای آزمایش محدودیت اعمال کرد. پیکربندی معتبر به نظر میرسد.',
|
||
'settings.testUpstream': 'ارائهدهنده وضعیت {status} را برگرداند. لحظهای دیگر دوباره تلاش کنید.',
|
||
'settings.testTimeout': 'آزمایش پس از {ms} میلیثانیه به پایان زمان رسید.',
|
||
'settings.testAgentMissing': '{agentName} نصب نشده یا در PATH نیست.',
|
||
'settings.testAgentSpawn': '{agentName} اجرا نشد: {detail}.',
|
||
'settings.testUnknown': 'آزمایش ناموفق بود: {detail}',
|
||
'settings.agentInstall.install': 'نصب',
|
||
'settings.agentInstall.docs': 'مستندات',
|
||
'settings.agentInstall.pathHint':
|
||
'اگر CLI را با npm یا Homebrew نصب کردهاید اما هنوز بهصورت نصبنشده نمایش داده میشود، مطمئن شوید پوشه bin ابزار در PATHای باشد که daemon اوپن دیزاین به ارث میبرد (در macOS ممکن است PATH ترمینال و برنامههای GUI متفاوت باشد). بخش "Local agent CLI and PATH" در QUICKSTART.md را ببینید.',
|
||
'settings.agentInstall.stepOpenLinks': 'برای عامل موردنظر، لینک نصب یا مستندات را باز کنید.',
|
||
'settings.agentInstall.stepAuth':
|
||
'قبل از بازگشت به Open Design، در CLI ارائهدهنده احراز هویت کنید (ورود یا افزودن اطلاعات API).',
|
||
'settings.agentInstall.stepRescan': 'در این بخش روی اسکن مجدد کلیک کنید.',
|
||
'settings.agentInstall.stepSelect': 'وقتی عامل بهصورت نصبشده نمایش داده شد، کارت آن را انتخاب کنید.',
|
||
'settings.noAgentsDetected':
|
||
'هنوز هیچ عاملی شناسایی نشده. یکی از Claude Code، Codex، Gemini CLI، OpenCode، Cursor Agent، Qwen یا GitHub Copilot CLI را نصب کنید، سپس روی اسکن مجدد کلیک کنید.',
|
||
'settings.agentInstalledGroup': 'CLIهای شما ({count})',
|
||
'settings.agentInstallGroup': 'آماده نصب ({count})',
|
||
'settings.agentAuthRequired': 'احراز هویت لازم است',
|
||
'settings.agentAuthUnknown': 'وضعیت احراز هویت نامشخص است',
|
||
'settings.amrLogin': 'Sign in',
|
||
'settings.amrLogout': 'Sign out',
|
||
'settings.amrLoggingIn': 'Signing in…',
|
||
'settings.amrLoggingOut': 'Signing out…',
|
||
'settings.amrLoggedInAs': 'Signed in as {email}',
|
||
'settings.amrLoggedInWithPlan': 'Signed in as {email} · {plan}',
|
||
'settings.amrLoggedInPill': 'Signed in',
|
||
'settings.amrNotLoggedIn': 'Not signed in',
|
||
'settings.amrCloud': 'Open Design AMR',
|
||
'settings.amrAuthorize': 'Authorize',
|
||
'settings.amrBenefitOfficial': 'Officially maintained',
|
||
'settings.amrBenefitLowerPrice': 'Lower price',
|
||
'settings.amrBenefitManyModels': 'Many models',
|
||
'settings.amrPromoBonus': 'Limited bonus: +100%',
|
||
'settings.amrSignInToContinue': 'Sign in to continue',
|
||
'settings.amrSignIn': 'Sign in',
|
||
'settings.amrSignedIn': 'Signed in',
|
||
'settings.amrNotSignedIn': 'Not signed in',
|
||
'settings.amrSigningIn': 'Signing in…',
|
||
'settings.amrCancelSignIn': 'Cancel sign-in',
|
||
'settings.amrAccountStatus': 'AMR account status',
|
||
'settings.amrLoginErrorCompact': 'AMR sign-in failed.',
|
||
'settings.apiSection': 'Anthropic API',
|
||
'settings.quickFillProvider': 'پر کردن سریع ارائهدهنده',
|
||
'settings.customProvider': 'ارائهدهنده سفارشی',
|
||
'settings.apiKey': 'کلید API',
|
||
'settings.showKey': 'نمایش کلید',
|
||
'settings.hideKey': 'پنهان کردن کلید',
|
||
'settings.show': 'نمایش',
|
||
'settings.hide': 'پنهان',
|
||
'settings.model': 'مدل',
|
||
'settings.suggestedModelsHint':
|
||
'اینها مدلهای پیشنهادی برای این پروتکل هستند. ارائهدهنده شما ممکن است مدلهای دیگری را پشتیبانی کند.',
|
||
'settings.baseUrl': 'آدرس پایه',
|
||
'settings.baseUrlInvalid': 'یک URL عمومی معتبر با http:// یا https:// وارد کنید. localhost مجاز است؛ IPهای شبکه خصوصی مسدود میشوند.',
|
||
'settings.baseUrlCustomize': 'سفارشیسازی',
|
||
'settings.baseUrlDefaultHint': 'نقطه پایانی پیشفرض. معمولاً نیازی به تغییر آن نیست.',
|
||
'settings.azureBaseUrlPlaceholder': 'https://my-resource.openai.azure.com',
|
||
'settings.azureBaseUrlHint': 'Find this in Azure portal → your resource → Endpoint.',
|
||
'settings.azureDeploymentModel': 'نام استقرار',
|
||
'settings.azureDeploymentModelHint':
|
||
'در Azure OpenAI، این فیلد به عنوان نام استقرار در /openai/deployments/<model> استفاده میشود. نام استقراری را که در Azure ساختهاید وارد کنید.',
|
||
'settings.apiVersion': 'نسخه API',
|
||
'settings.byokImageModel': 'مدل تولید تصویر',
|
||
'settings.maxTokens': 'حداکثر توکن (اختیاری)',
|
||
'settings.maxTokensHint':
|
||
'سقف طول پاسخ. هر مدل مقدار پیشفرض تنظیمشدهٔ خود را دارد (در placeholder نمایش داده میشود)؛ برای استفاده از آن خالی بگذارید، یا برای جایگزینی، عددی وارد کنید.',
|
||
'settings.apiHint': 'درخواستها از طریق پراکسی daemon محلی به Base URL تنظیمشده ارسال میشوند. کلید فقط در همین مرورگر ذخیره میشود و همراه درخواستهای ارائهدهنده فرستاده میشود.',
|
||
'settings.skipForNow': 'فعلاً رد کنید',
|
||
'settings.getStarted': 'شروع کنید',
|
||
'settings.envConfigure': 'حالت اجرا',
|
||
'settings.localCli': 'CLI محلی',
|
||
'settings.anthropicApi': 'Anthropic API',
|
||
'settings.noAgentSelected': 'هیچ عاملی انتخاب نشده',
|
||
'settings.language': 'زبان',
|
||
'settings.languageHint': 'زبان رابط را تغییر دهید. در این مرورگر ذخیره میشود.',
|
||
'settings.appearance': 'ظاهر',
|
||
'settings.appearanceHint': 'روشن، تاریک یا پیروی از تنظیمات سیستم.',
|
||
'settings.themeSystem': 'سیستم',
|
||
'settings.themeLight': 'روشن',
|
||
'settings.themeDark': 'تاریک',
|
||
'settings.agentModelHead': 'مدل برای:',
|
||
'settings.modelPicker': 'مدل',
|
||
'settings.modelSourceLive': 'زنده از CLI',
|
||
'settings.modelSourceFallback': 'فهرست داخلی',
|
||
'settings.reasoningPicker': 'سطح استدلال',
|
||
'settings.modelPickerHint':
|
||
'هنگامی که CLI یک دستور `models` را ارائه میدهد از آن دریافت میشود. «پیشفرض» انتخاب را به پیکربندی خود CLI واگذار میکند؛ «سفارشی…» به شما امکان میدهد هر شناسه مدلی را که CLI میپذیرد تایپ کنید.',
|
||
'settings.modelPickerLiveHint':
|
||
'مدلها از CLI نصبشده بهروزرسانی شدند. گزینه پیشفرض همچنان از تنظیمات CLI استفاده میکند.',
|
||
'settings.modelPickerFallbackHint':
|
||
'پیشفرضهای داخلی نمایش داده میشوند. برای دریافت مدلهای زنده از CLI روی اسکن مجدد کلیک کنید.',
|
||
'settings.cliEnvTitle': 'CLI config locations',
|
||
'settings.cliEnvHint':
|
||
'Set non-secret config directories for packaged app runs and agent detection.',
|
||
'settings.cliEnvClaudeConfigDir': 'Claude Code config directory',
|
||
'settings.cliEnvClaudeBaseUrl': 'Claude proxy base URL',
|
||
'settings.cliEnvClaudeApiKey': 'Claude proxy API key',
|
||
'settings.cliEnvCodexHome': 'Codex home',
|
||
'settings.cliEnvCodexBin': 'Codex executable path',
|
||
'settings.cliEnvCodexBaseUrl': 'Codex/OpenAI proxy base URL',
|
||
'settings.cliEnvCodexApiKey': 'Codex/OpenAI proxy API key',
|
||
'settings.modelCustom': 'سفارشی (در زیر تایپ کنید)…',
|
||
'settings.modelCustomLabel': 'شناسه مدل سفارشی',
|
||
'settings.modelCustomPlaceholder': 'مثلاً anthropic/claude-sonnet-4-6',
|
||
'settings.mediaProviders': 'ارائهدهندگان رسانه',
|
||
'settings.mediaProvidersHint':
|
||
'کلیدهای API برای تولید تصویر، ویدئو و صدا. به صورت محلی ذخیره و با daemon محلی همگام میشود.',
|
||
'settings.mcpServerTitle': 'سرور MCP',
|
||
'settings.mcpServerHint': 'Open Design را بهعنوان سرور MCP برای عامل برنامهنویسی خود در دسترس قرار دهید.',
|
||
'settings.externalMcpTitle': 'MCP خارجی',
|
||
'settings.externalMcpHint': 'افزودن ابزارهای MCP از سرویسهای خارجی (Higgsfield, GitHub, …).',
|
||
'settings.mediaProviderApiKey': 'کلید API',
|
||
'settings.mediaProviderBaseUrl': 'آدرس پایه',
|
||
'settings.mediaProviderConfigured': 'پیکربندی شده',
|
||
'settings.mediaProviderUnset': 'تنظیم نشده',
|
||
'settings.mediaProviderClear': 'پاک کردن',
|
||
'settings.mediaProviderClearConfirm': 'پاک کردن تنظیمات ذخیرهشدهی {name}؟ برای استفاده از {name} باید آنها را دوباره وارد کنید.',
|
||
'settings.mediaProviderPlaceholder': 'کلید API را وارد کنید',
|
||
'settings.mediaProviderBaseUrlPlaceholder': 'بازنویسی آدرس پایه پیشفرض',
|
||
'settings.mediaProviderReload': 'بارگذاری دوباره از دیمن محلی',
|
||
'settings.mediaProviderReloadError': 'بارگذاری دوبارهٔ تنظیمات ارائهدهندههای رسانه از دیمن محلی ممکن نشد.',
|
||
'settings.mediaProviderReloadSuccess': 'تنظیمات ارائهدهندههای رسانه از دیمن محلی دوباره بارگذاری شد.',
|
||
'settings.mediaProviderLoadError': 'بارگذاری تنظیمات ارائهدهندههای رسانه از دیمن محلی ممکن نشد. فعلاً از تنظیمات ذخیرهشده در مرورگر استفاده میشود.',
|
||
'settings.mediaProviderComingSoonHint': 'ما این موارد را برای نقشه راه پیگیری میکنیم؛ دیمون هنوز کلاینتی ارائه نمیدهد، بنابراین چیزی برای پیکربندی وجود ندارد.',
|
||
'settings.privacy': 'Privacy',
|
||
'settings.privacyHint': 'What data is shared with the Open Design team',
|
||
'settings.privacyConsentKicker': 'Help us improve Open Design',
|
||
'settings.privacyConsentLead': 'Open Design can share usage data with our team to help us improve. This includes:',
|
||
'settings.privacyConsentFooter': 'You can change either of these any time in Settings → Privacy. We never upload the contents of your generated artifact files.',
|
||
'settings.privacyConsentShare': 'Share usage data',
|
||
'settings.privacyConsentDecline': "Don't share",
|
||
'settings.privacyConsentAccept': 'I get it',
|
||
'settings.privacyConsentBannerFooter':
|
||
'Data sharing is on by default. You can turn it off any time in Settings → Privacy. We never upload the contents of your generated artifact files.',
|
||
'settings.privacyConsentPolicyLink': 'Read the privacy policy',
|
||
'settings.privacyMetrics': 'Anonymous metrics',
|
||
'settings.privacyMetricsHint': 'Run counts, token usage, error rate, duration. No prompts, no project data.',
|
||
'settings.privacyContent': 'Conversation content',
|
||
'settings.privacyContentHint': "Your prompts and the assistant's responses (truncated 8 KB / 16 KB). API keys, tokens, JWTs, emails, IPs, and credit-card numbers are stripped automatically before send.",
|
||
'settings.privacyArtifacts': 'Project artifacts manifest',
|
||
'settings.privacyArtifactsHint': 'Filenames, types, sizes of generated files. File contents are never sent.',
|
||
'settings.privacyInstallationId': 'Anonymous ID',
|
||
'settings.privacyOptedOut': 'opted out',
|
||
'settings.privacyDataDeletion': 'Delete my data',
|
||
'settings.privacyDataDeletionHint': 'Rotates your anonymous ID and stops sending. Existing traces age out under our retention policy.',
|
||
'settings.about': 'درباره',
|
||
'settings.aboutHint': 'جزئیات نسخه و اجرا',
|
||
'settings.appVersion': 'نسخه',
|
||
'settings.appChannel': 'کانال',
|
||
'settings.appRuntime': 'محیط اجرا',
|
||
'settings.appPlatform': 'سکو',
|
||
'settings.appArchitecture': 'معماری',
|
||
'settings.runtimePackaged': 'برنامه بستهبندیشده',
|
||
'settings.runtimeDevelopment': 'توسعه',
|
||
'settings.versionUnavailable': 'تا وقتی daemon آفلاین است جزئیات نسخه در دسترس نیست.',
|
||
'settings.installLatest': 'نصب جدیدترین',
|
||
'settings.alreadyLatest': 'شما آخرین نسخه را دارید',
|
||
|
||
'entry.tabDesigns': 'طرحها',
|
||
'entry.tabTemplates': 'قالبها',
|
||
'entry.tabDesignSystems': 'سیستمهای طراحی',
|
||
'entry.tabConnectors': 'اتصالدهندهها',
|
||
'entry.tabImageTemplates': 'قالبهای تصویر',
|
||
'entry.tabVideoTemplates': 'قالبهای ویدئو',
|
||
'entry.openSettingsTitle': 'تنظیمات',
|
||
'entry.openSettingsAria': 'باز کردن تنظیمات',
|
||
'entry.resizeAria': 'تغییر اندازه نوار کناری',
|
||
'entry.loadingWorkspace': 'در حال بارگذاری فضای کاری…',
|
||
'entry.useEverywhereTitle': 'استفاده در همهجا',
|
||
'entry.useEverywhereAria': 'باز کردن راهنمای «استفاده در همهجا» (CLI، MCP، HTTP، Skills)',
|
||
'entry.navNewProject': 'پروژه جدید',
|
||
'entry.navHome': 'خانه',
|
||
'entry.navProjects': 'پروژهها',
|
||
'entry.navDesignSystems': 'سیستمهای طراحی',
|
||
'entry.helpAria': 'راهنما',
|
||
'entry.helpMenuAria': 'منوی راهنما',
|
||
'entry.helpGetHelp': 'دریافت کمک در GitHub',
|
||
'entry.helpSubmitFeature': 'پیشنهاد قابلیت',
|
||
'entry.helpWhatsNew': 'تازهها',
|
||
'entry.helpDownloadDesktop': 'دانلود اپلیکیشن دسکتاپ',
|
||
'entry.githubStarLabel': 'ستاره',
|
||
'entry.githubStarTitle': 'برای ما در GitHub ستاره بگذارید',
|
||
'entry.githubStarAria': 'به Open Design در GitHub ستاره بدهید',
|
||
'promptTemplates.searchPlaceholder': 'جستجوی قالبها…',
|
||
'promptTemplates.countLabel': '{n} نتیجه',
|
||
'promptTemplates.emptyImage': 'هنوز قالب پرامپت تصویر نصب نشده است.',
|
||
'promptTemplates.emptyVideo': 'هنوز قالب پرامپت ویدئو نصب نشده است.',
|
||
'promptTemplates.emptyNoMatch': 'هیچ قالبی با جستجوی شما مطابقت ندارد.',
|
||
'promptTemplates.attributionFooter':
|
||
'برگرفته از کتابخانههای عمومی پرامپت. هر کارت به نویسنده اصلی لینک دارد.',
|
||
'promptTemplates.openPreviewTitle': 'باز کردن پرامپت و پیشنمایش',
|
||
'promptTemplates.sourcePrefix': 'منبع:',
|
||
'promptTemplates.fetchError': 'بارگذاری متن این قالب ممکن نبود.',
|
||
'promptTemplates.promptLabel': 'متن پرامپت',
|
||
'promptTemplates.copyPrompt': 'کپی پرامپت',
|
||
'promptTemplates.copyDone': 'کپی شد!',
|
||
'promptTemplates.modelHint': 'مدل پیشنهادی: {model}',
|
||
'promptTemplates.openSource': 'دیدن منبع اصلی',
|
||
'promptTemplates.openFullscreen': 'باز کردن پیشنمایش تمامصفحه',
|
||
'promptTemplates.closeFullscreen': 'بستن پیشنمایش تمامصفحه',
|
||
'promptTemplates.allSources': 'همهٔ منابع',
|
||
'promptTemplates.sourceFilterAria': 'فیلتر بر اساس منبع',
|
||
'promptTemplates.retry': 'تلاش دوباره',
|
||
|
||
'connectors.title': 'اتصالدهندهها',
|
||
'connectors.subtitle': 'منابع داده محلی و آینده که میتوانند به مصنوعات زنده نیرو بدهند.',
|
||
'connectors.account': 'حساب',
|
||
'connectors.noAccount': 'متصل نیست',
|
||
'connectors.tools': 'ابزارها',
|
||
'connectors.connect': 'اتصال',
|
||
'connectors.disconnect': 'قطع اتصال',
|
||
'connectors.authorizationPending': 'در انتظار مجوز...',
|
||
'connectors.authorizationPendingHint': 'مجوز را در پنجره بازشده کامل کنید.',
|
||
'connectors.cancelAuthorization': 'لغو',
|
||
'connectors.configure': 'پیکربندی',
|
||
'connectors.unavailable': 'در دسترس نیست',
|
||
'connectors.phaseStubTitle': 'APIهای اتصالدهنده در فاز ۳ میرسند؛ این فقط یک نمای پیشنمایش است.',
|
||
'connectors.statusAvailable': 'در دسترس',
|
||
'connectors.statusConnected': 'متصل',
|
||
'connectors.statusError': 'خطا',
|
||
'connectors.statusDisabled': 'غیرفعال',
|
||
'connectors.gateTitle': 'برای ادامه کلید Composio API را اضافه کنید',
|
||
'connectors.gateBody': 'کلید را در بالا جایگذاری کنید و روی ذخیره کلید بزنید تا یکپارچهسازیهای موجود بارگیری شوند.',
|
||
'connectors.aboutLabel': 'درباره',
|
||
'connectors.detailsLabel': 'جزئیات',
|
||
'connectors.statusLabel': 'وضعیت',
|
||
'connectors.category.aiAgents': 'عاملهای AI',
|
||
'connectors.category.aiInfrastructure': 'زیرساخت AI',
|
||
'connectors.category.accounting': 'حسابداری',
|
||
'connectors.category.admin': 'مدیریت',
|
||
'connectors.category.advertising': 'تبلیغات',
|
||
'connectors.category.analytics': 'تحلیلها',
|
||
'connectors.category.automation': 'اتوماسیون',
|
||
'connectors.category.cms': 'CMS',
|
||
'connectors.category.crm': 'CRM',
|
||
'connectors.category.calendar': 'تقویم',
|
||
'connectors.category.commerce': 'تجارت',
|
||
'connectors.category.communication': 'ارتباطات',
|
||
'connectors.category.contacts': 'مخاطبین',
|
||
'connectors.category.dataPlatform': 'پلتفرم داده',
|
||
'connectors.category.database': 'پایگاه داده',
|
||
'connectors.category.design': 'طراحی',
|
||
'connectors.category.developer': 'ابزارهای توسعهدهنده',
|
||
'connectors.category.documentation': 'مستندات',
|
||
'connectors.category.erp': 'ERP',
|
||
'connectors.category.education': 'آموزش',
|
||
'connectors.category.email': 'ایمیل',
|
||
'connectors.category.events': 'رویدادها',
|
||
'connectors.category.fieldService': 'خدمات میدانی',
|
||
'connectors.category.finance': 'مالی',
|
||
'connectors.category.fitness': 'تناسب اندام',
|
||
'connectors.category.forms': 'فرمها',
|
||
'connectors.category.gaming': 'بازی',
|
||
'connectors.category.hr': 'منابع انسانی',
|
||
'connectors.category.hospitality': 'مهمانداری',
|
||
'connectors.category.itsm': 'ITSM',
|
||
'connectors.category.integration': 'یکپارچهسازی',
|
||
'connectors.category.localization': 'بومیسازی',
|
||
'connectors.category.logistics': 'لجستیک',
|
||
'connectors.category.maps': 'نقشهها',
|
||
'connectors.category.marketing': 'بازاریابی',
|
||
'connectors.category.media': 'رسانه',
|
||
'connectors.category.meetings': 'جلسات',
|
||
'connectors.category.nonprofit': 'غیرانتفاعی',
|
||
'connectors.category.observability': 'مشاهدهپذیری',
|
||
'connectors.category.payments': 'پرداختها',
|
||
'connectors.category.personal': 'شخصی',
|
||
'connectors.category.presentations': 'ارائهها',
|
||
'connectors.category.procurement': 'تدارکات',
|
||
'connectors.category.product': 'محصول',
|
||
'connectors.category.productivity': 'بهرهوری',
|
||
'connectors.category.projectManagement': 'مدیریت پروژه',
|
||
'connectors.category.recruiting': 'استخدام',
|
||
'connectors.category.research': 'پژوهش',
|
||
'connectors.category.salesIntelligence': 'هوشمندی فروش',
|
||
'connectors.category.scheduling': 'زمانبندی',
|
||
'connectors.category.search': 'جستجو',
|
||
'connectors.category.security': 'امنیت',
|
||
'connectors.category.signing': 'امضا',
|
||
'connectors.category.social': 'اجتماعی',
|
||
'connectors.category.spreadsheets': 'صفحهگستردهها',
|
||
'connectors.category.storage': 'ذخیرهسازی',
|
||
'connectors.category.support': 'پشتیبانی',
|
||
'connectors.category.surveys': 'نظرسنجیها',
|
||
'connectors.category.tasks': 'وظایف',
|
||
'connectors.category.timeTracking': 'پیگیری زمان',
|
||
'connectors.category.video': 'ویدیو',
|
||
'connectors.category.whiteboard': 'وایتبرد',
|
||
'connectors.categoryLabel': 'دستهبندی',
|
||
'connectors.providerLabel': 'ارائهدهنده',
|
||
'connectors.toolsSection': 'ابزارها',
|
||
'connectors.toolsLoading': 'در حال بارگیری ابزارها…',
|
||
'connectors.noToolsAvailable': 'هنوز ابزاری در دسترس نیست. پس از اتصال، قابلیتهای این ادغام آشکار میشود.',
|
||
'connectors.toolDetailsUnavailable': 'Tool details are unavailable, but this connector reports {n} tools.',
|
||
'connectors.loadMoreTools': 'Load more tools',
|
||
'connectors.openDetailsAria': 'باز کردن جزئیات {name}',
|
||
'connectors.toolsBadgeNone': 'بدون ابزار',
|
||
'connectors.toolsBadgeOne': '{n} ابزار',
|
||
'connectors.toolsBadgeMany': '{n} ابزار',
|
||
'connectors.searchPlaceholder': 'جستجوی اتصالدهندهها…',
|
||
'connectors.searchAriaLabel': 'جستجوی اتصالدهندهها بر اساس نام، ارائهدهنده یا ابزار',
|
||
'connectors.searchClear': 'پاک کردن جستجو',
|
||
'connectors.emptyNoMatchTitle': 'هیچ اتصالدهندهای با «{query}» مطابقت ندارد',
|
||
'connectors.emptyNoMatchBody': 'کلمهی کلیدی دیگری را امتحان کنید یا جستجو را پاک کنید تا کل فهرست نمایش داده شود.',
|
||
'connectors.emptyNoMatchAction': 'پاک کردن جستجو',
|
||
|
||
'newproj.tabPrototype': 'نمونه اولیه',
|
||
'newproj.tabLiveArtifact': 'مصنوع زنده جدید',
|
||
'newproj.tabDeck': 'ارائه اسلاید',
|
||
'newproj.tabTemplate': 'از قالب',
|
||
'newproj.tabMedia': 'رسانه',
|
||
'newproj.tabOther': 'سایر',
|
||
'newproj.titlePrototype': 'نمونه اولیه جدید',
|
||
'newproj.titleLiveArtifact': 'مصنوع زنده جدید',
|
||
'newproj.titleDeck': 'ارائه اسلاید جدید',
|
||
'newproj.titleTemplate': 'شروع از یک قالب',
|
||
'newproj.titleImage': 'تصویر جدید',
|
||
'newproj.titleVideo': 'ویدئوی جدید',
|
||
'newproj.titleAudio': 'صدای جدید',
|
||
'newproj.titleMedia': 'رسانه جدید',
|
||
'newproj.titleOther': 'پروژه جدید',
|
||
'newproj.namePlaceholder': 'نام پروژه',
|
||
'newproj.fidelityLabel': 'دقت',
|
||
'newproj.fidelityWireframe': 'وایرفریم',
|
||
'newproj.fidelityHigh': 'دقت بالا',
|
||
'newproj.toggleSpeakerNotes': 'استفاده از یادداشتهای سخنران',
|
||
'newproj.toggleSpeakerNotesHint': 'متن کمتر روی اسلایدها — نکات صحبت را در یادداشتها نگه دارید.',
|
||
'newproj.toggleAnimations': 'افزودن انیمیشن',
|
||
'newproj.toggleAnimationsHint':
|
||
'افزودن حرکت (ورود، هاور، انتقال) بر روی قالب.',
|
||
'newproj.surfaceOptionsLabel': 'Companion surfaces',
|
||
'newproj.includeLandingPage': 'Include landing page',
|
||
'newproj.includeLandingPageHint':
|
||
'Add a responsive marketing page for ads, waitlists, launch campaigns, app downloads, or product explanation.',
|
||
'newproj.includeOsWidgets': 'Include OS widgets',
|
||
'newproj.includeOsWidgetsHint':
|
||
'Add platform-native home screen, lock screen, or quick-access widgets for mobile/tablet apps.',
|
||
'newproj.includeOsWidgetsDisabledHint':
|
||
'Available when iOS, Android, or tablet app is selected as a target platform.',
|
||
'newproj.templateLabel': 'قالب',
|
||
'newproj.noTemplatesTitle': 'هنوز هیچ قالبی وجود ندارد',
|
||
'newproj.noTemplatesBody':
|
||
'هر پروژهای را باز کنید، سپس از منوی اشتراکگذاری در داخل نمایشگر فایل آن را به قالب تبدیل کنید. قالبها اینجا نمایش داده میشوند.',
|
||
'newproj.savedTemplate': 'قالب ذخیره شده',
|
||
'newproj.fileSingular': 'فایل',
|
||
'newproj.filePlural': 'فایل',
|
||
'newproj.create': 'ایجاد',
|
||
'newproj.createLiveArtifact': 'ایجاد مصنوع زنده',
|
||
'newproj.createFromTemplate': 'ایجاد از قالب',
|
||
'newproj.createDisabledTitle':
|
||
'ابتدا یک پروژه را به عنوان قالب ذخیره کنید (منوی اشتراکگذاری در داخل هر پروژه).',
|
||
'newproj.importClaudeZip': 'وارد کردن ZIP طراحی Claude',
|
||
'newproj.importClaudeZipTitle': 'وارد کردن یک فایل .zip صادر شده از Claude Design',
|
||
'newproj.importingClaudeZip': 'در حال وارد کردن…',
|
||
'newproj.privacyFooter': 'به طور پیشفرض فقط شما میتوانید پروژه خود را ببینید.',
|
||
'newproj.designSystem': 'سیستم طراحی',
|
||
'newproj.dsNoneFreeform': 'هیچ — آزاد',
|
||
'newproj.dsNoneSubtitleEmpty': 'بدون توکنهای سیستم، پالت خود را انتخاب کنید',
|
||
'newproj.dsNoneSubtitleSelected': 'از توکنهای سیستم صرف نظر کنید. عامل پالت خود را انتخاب میکند.',
|
||
'newproj.dsCategoryFallback': 'سیستم طراحی',
|
||
'newproj.dsSearch': 'جستجوی سیستمهای طراحی…',
|
||
'newproj.dsModeAria': 'حالت انتخاب',
|
||
'newproj.surfaceImage': 'تصویر',
|
||
'newproj.surfaceVideo': 'ویدئو',
|
||
'newproj.surfaceAudio': 'صدا',
|
||
'newproj.modelLabel': 'مدل',
|
||
'newproj.modelSearch': 'جستجوی مدلها…',
|
||
'newproj.modelEmpty': 'مدلی پیدا نشد.',
|
||
'newproj.modelRecommended': 'پیشنهادی',
|
||
'newproj.modelMissingTitle': 'انتخاب مدل',
|
||
'newproj.modelMissingSub': 'برای این سطح یک مدل انتخاب کنید.',
|
||
'newproj.aspectLabel': 'نسبت تصویر',
|
||
'newproj.videoLengthLabel': 'طول',
|
||
'newproj.videoLengthSeconds': '{n}ث',
|
||
'newproj.audioKindLabel': 'نوع صدا',
|
||
'newproj.audioKindMusic': 'موسیقی',
|
||
'newproj.audioKindSpeech': 'گفتار / TTS',
|
||
'newproj.audioKindSfx': 'افکت صوتی',
|
||
'newproj.audioDurationLabel': 'مدت',
|
||
'newproj.audioDurationSeconds': '{n}ث',
|
||
'newproj.voiceLabel': 'صدا',
|
||
'newproj.voicePlaceholder': 'شناسه صدای ارائهدهنده، اختیاری',
|
||
'newproj.connectorsLabel': 'اتصالدهندهها',
|
||
'newproj.connectorsHint': 'منابع دادهای که این مصنوع میتواند از آنها استفاده کند.',
|
||
'newproj.connectorsEmptyTitle': 'هیچ اتصالدهندهای پیکربندی نشده',
|
||
'newproj.connectorsEmptyBody':
|
||
'یک منبع داده متصل کنید تا مصنوع زنده بهجای دادههای جایگزین از دادههای واقعی استفاده کند.',
|
||
'newproj.connectorsEmptyCta': 'پیکربندی اتصالدهندهها ←',
|
||
'newproj.connectorsLoading': 'در حال بارگذاری اتصالدهندهها…',
|
||
'newproj.connectorsCountOne': '{n} متصل',
|
||
'newproj.connectorsCountMany': '{n} متصل',
|
||
'newproj.connectorsManage': 'مدیریت',
|
||
'newproj.promptTemplateLabel': 'قالب مرجع',
|
||
'newproj.promptTemplateNoneTitle': 'بدون قالب — توصیف اختصاصی',
|
||
'newproj.promptTemplateNoneSub': 'گالری را رد کنید و خودتان توضیح دهید',
|
||
'newproj.promptTemplateRefSub': 'قالب مرجع',
|
||
'newproj.promptTemplateSearch': 'جستوجوی قالبها…',
|
||
'newproj.promptTemplateEmpty': 'هنوز قالبی برای این نوع نصب نشده است.',
|
||
'newproj.promptTemplateBodyLabel': 'پرامپت (قابل ویرایش)',
|
||
'newproj.promptTemplateOptimizeHint':
|
||
'هر چیزی را میتوانید ویرایش کنید — تغییرات شما به بریف ایجنت اضافه میشود.',
|
||
'newproj.promptTemplateBodyEmpty': 'متن خالی است — ایجنت هیچ مرجع قالبی دریافت نمیکند.',
|
||
'newproj.deleteTemplateTitle': 'حذف قالب',
|
||
'newproj.deleteTemplateConfirm': 'آیا «{name}» حذف شود؟ این عمل قابل بازگشت نیست.',
|
||
'newproj.deleteTemplateConfirmCta': 'حذف قالب',
|
||
'newproj.deleteTemplateError':
|
||
'حذف این قالب ممکن نشد. لطفاً دوباره تلاش کنید.',
|
||
'newproj.dsModeSingle': 'تکی',
|
||
'newproj.dsModeMulti': 'چندگانه',
|
||
'newproj.dsNoneTitle': 'هیچ — آزاد',
|
||
'newproj.dsNoneSub': 'از توکنهای سیستم صرف نظر کنید. عامل پالت خود را انتخاب میکند.',
|
||
'newproj.dsEmpty': 'هیچ سیستم طراحی با «{query}» مطابقت ندارد.',
|
||
'newproj.dsFootSingular': 'فقط الهامبخش است.',
|
||
'newproj.dsFootPlural': 'فقط الهامبخش هستند.',
|
||
'newproj.dsFootClear': 'پاک کردن',
|
||
'newproj.dsBadgeDefault': 'پیشفرض',
|
||
'newproj.dsPrimaryFallback': 'اصلی',
|
||
|
||
'designs.subRecent': 'اخیر',
|
||
'designs.subYours': 'طرحهای شما',
|
||
'designs.filterAria': 'فیلتر پروژهها',
|
||
'designs.searchPlaceholder': 'جستجو…',
|
||
'designs.emptyNoProjects': 'هنوز هیچ پروژهای وجود ندارد.',
|
||
'designs.emptyNoMatch': 'هیچ پروژهای با جستجوی شما مطابقت ندارد.',
|
||
'designs.deleteTitle': 'حذف پروژه',
|
||
'designs.deleteConfirm': 'آیا «{name}» حذف شود؟',
|
||
'designs.cardFreeform': 'آزاد',
|
||
'designs.badgeLive': 'زنده',
|
||
'designs.liveArtifactBadgesAria': 'نشانهای مصنوعات زنده',
|
||
'designs.liveCount': '{n} زنده',
|
||
'designs.statusLive': 'مصنوع زنده',
|
||
'designs.statusArchived': 'بایگانیشده',
|
||
'designs.statusError': 'خطا',
|
||
'designs.statusRefreshing': 'در حال بازخوانی…',
|
||
'designs.statusRefreshFailed': 'بازخوانی ناموفق بود',
|
||
'designs.statusRefreshed': 'بازخوانی شد',
|
||
'designs.status.notStarted': 'شروع نشده',
|
||
'designs.status.queued': 'در صف',
|
||
'designs.status.running': 'در حال اجرا',
|
||
'designs.status.awaitingInput': 'نیازمند ورودی',
|
||
'designs.status.succeeded': 'تکمیل شد',
|
||
'designs.status.published': 'منتشر شد',
|
||
'designs.status.failed': 'ناموفق',
|
||
'designs.status.canceled': 'لغو شد',
|
||
'designs.viewToggleAria': 'حالت نمایش',
|
||
'designs.viewGrid': 'نمای شبکهای',
|
||
'designs.viewKanban': 'نمای برد',
|
||
'designs.kanbanEmptyColumn': 'هیچ طرحی نیست',
|
||
'designs.deleteAria': 'حذف پروژه {name}',
|
||
'designs.menuMore': 'More actions',
|
||
'designs.menuRename': 'Rename',
|
||
'designs.menuDelete': 'Delete',
|
||
'designs.renamePrompt': 'New name for "{name}"',
|
||
'designs.selectMode': 'Select',
|
||
'designs.cancelSelect': 'Cancel',
|
||
'designs.deleteSelected': 'Delete selected',
|
||
'designs.selectedCount': '{n} selected',
|
||
'designs.deleteSelectedConfirm': 'Delete {n} project(s)?',
|
||
'designs.deleteSelectedSuccess': '{n} project(s) deleted successfully.',
|
||
'designs.deleteSelectedPartial': 'Deleted {deleted} project(s); {failed} failed.',
|
||
'designs.tagPrototype': 'Prototype',
|
||
'designs.tagLiveArtifact': 'Live Artifact',
|
||
'designs.tagSlide': 'Slide',
|
||
'designs.tagMedia': 'Media',
|
||
'designs.renameTitle': 'Rename project',
|
||
'designs.renameSave': 'OK',
|
||
'designs.renameCancel': 'Cancel',
|
||
|
||
'examples.typeLabel': 'نوع',
|
||
'examples.surfaceLabel': 'سطح',
|
||
'examples.surfaceWeb': 'وب',
|
||
'examples.surfaceImage': 'تصویر',
|
||
'examples.surfaceVideo': 'ویدئو',
|
||
'examples.surfaceAudio': 'صدا',
|
||
'examples.scenarioLabel': 'سناریو',
|
||
'examples.modeAll': 'همه',
|
||
'examples.modePrototypeDesktop': 'نمونه اولیه · دسکتاپ',
|
||
'examples.modePrototypeMobile': 'نمونه اولیه · موبایل',
|
||
'examples.modeDeck': 'اسلایدها',
|
||
'examples.modeDocument': 'اسناد و قالبها',
|
||
'examples.modeOrbit': 'Orbit',
|
||
'examples.modeLive': 'زنده',
|
||
'examples.scenarioGeneral': 'عمومی',
|
||
'examples.scenarioEngineering': 'مهندسی',
|
||
'examples.scenarioProduct': 'محصول',
|
||
'examples.scenarioDesign': 'طراحی',
|
||
'examples.scenarioMarketing': 'بازاریابی',
|
||
'examples.scenarioSales': 'فروش',
|
||
'examples.scenarioFinance': 'مالی',
|
||
'examples.scenarioHr': 'منابع انسانی',
|
||
'examples.scenarioOperations': 'عملیات',
|
||
'examples.scenarioSupport': 'پشتیبانی',
|
||
'examples.scenarioLegal': 'حقوقی',
|
||
'examples.scenarioEducation': 'آموزش',
|
||
'examples.scenarioPersonal': 'شخصی',
|
||
'examples.emptyNoSkills': 'هیچ مهارتی موجود نیست. آیا daemon در حال اجرا است؟',
|
||
'examples.searchPlaceholder': 'جستجوی نمونهها…',
|
||
'examples.searchAria': 'جستجوی نمونهها بر اساس نام',
|
||
'examples.emptyNoMatch': 'هیچ نمونهای با این فیلترها مطابقت ندارد.',
|
||
'examples.openPreview': '⤢ باز کردن پیشنمایش',
|
||
'examples.loadingPreview': 'در حال بارگذاری پیشنمایش…',
|
||
'examples.hoverPreview': 'برای پیشنمایش هاور کنید',
|
||
'examples.usePrompt': 'استفاده از این پرامپت',
|
||
'examples.previewModalTitle': 'باز کردن پیشنمایش کامل (modal)',
|
||
'examples.shareTitle': 'اشتراکگذاری این نمونه',
|
||
'examples.shareLoadFirst': 'ابتدا برای بارگذاری پیشنمایش هاور کنید',
|
||
'examples.unavailablePlaceholder': 'پیشنمایش {kind} همراه ندارد — برای جزئیات باز کنید',
|
||
'examples.shareUnavailable': 'پیشنمایش {kind} برای اشتراکگذاری همراه ندارد',
|
||
'examples.shareMenu': 'اشتراکگذاری ▾',
|
||
'examples.exportPdfAllSlides': 'صادرکردن به PDF (همه اسلایدها)',
|
||
'examples.exportPptxLocked': 'صادرکردن به PPTX… (ابتدا قالب را باز کنید)',
|
||
'examples.tagSlideDeck': 'ارائه اسلاید',
|
||
'examples.tagTemplate': 'قالب',
|
||
'examples.tagDesignSystem': 'سیستم طراحی',
|
||
'examples.tagMobilePrototype': 'نمونه اولیه موبایل',
|
||
'examples.tagDesktopPrototype': 'نمونه اولیه دسکتاپ',
|
||
'examples.tagImage': 'تصویر',
|
||
'examples.tagVideo': 'ویدئو',
|
||
'examples.tagAudio': 'صدا',
|
||
'examples.previewLabel': 'پیشنمایش',
|
||
|
||
'ds.surfaceLabel': 'سطح',
|
||
'ds.surfaceWeb': 'وب',
|
||
'ds.surfaceImage': 'تصویر',
|
||
'ds.surfaceVideo': 'ویدئو',
|
||
'ds.surfaceAudio': 'صدا',
|
||
'ds.searchPlaceholder': 'جستجوی سیستمهای طراحی…',
|
||
'ds.emptyNoMatch': 'هیچ سیستم طراحی با جستجوی شما مطابقت ندارد.',
|
||
'ds.badgeDefault': 'پیشفرض',
|
||
'ds.preview': 'پیشنمایش',
|
||
'ds.previewTitle': 'پیشنمایش سیستم طراحی',
|
||
'ds.categoryAll': 'همه',
|
||
'ds.categoryUncategorized': 'دستهبندی نشده',
|
||
'ds.showcase': 'ویترین',
|
||
'ds.tokens': 'توکنها',
|
||
'ds.specToggle': 'DESIGN.md',
|
||
'ds.specLoading': 'بارگذاری DESIGN.md…',
|
||
|
||
'avatar.title': 'حساب و تنظیمات',
|
||
'avatar.localCli': 'CLI محلی',
|
||
'avatar.anthropicApi': 'Anthropic API',
|
||
'avatar.useLocal': 'استفاده از CLI محلی',
|
||
'avatar.useApi': 'استفاده از API · BYOK',
|
||
'avatar.codeAgent': 'عامل کد',
|
||
'avatar.rescan': 'اسکن مجدد PATH',
|
||
'avatar.settings': 'تنظیمات',
|
||
'avatar.backToProjects': 'بازگشت به پروژهها',
|
||
'avatar.metaActive': 'فعال',
|
||
'avatar.metaOffline': 'آفلاین',
|
||
'avatar.metaSelected': 'انتخاب شده',
|
||
'avatar.noAgentSelected': 'هیچ عاملی انتخاب نشده',
|
||
'avatar.modelSection': 'مدل',
|
||
'avatar.modelLabel': 'مدل',
|
||
'avatar.reasoningLabel': 'استدلال',
|
||
'avatar.customSuffix': '(سفارشی)',
|
||
|
||
'inlineSwitcher.chipTitle': 'تغییر CLI / مدل',
|
||
'inlineSwitcher.chipCli': 'CLI محلی',
|
||
'inlineSwitcher.chipByok': 'BYOK',
|
||
'inlineSwitcher.modelDefault': 'پیشفرض',
|
||
'inlineSwitcher.noAgent': 'بدون عامل',
|
||
'inlineSwitcher.modeLabel': 'حالت',
|
||
'inlineSwitcher.agentLabel': 'عامل',
|
||
'inlineSwitcher.providerLabel': 'ارائهدهنده',
|
||
'inlineSwitcher.modelLabel': 'مدل',
|
||
'inlineSwitcher.useCli': 'استفاده از CLI محلی',
|
||
'inlineSwitcher.useByok': 'استفاده از کلید API شخصی',
|
||
'inlineSwitcher.daemonOffline': 'Daemon آفلاین — تنظیمات را باز کنید',
|
||
'inlineSwitcher.noAgentsDetected': 'هیچ CLI در PATH یافت نشد',
|
||
'inlineSwitcher.openSettingsForModel': 'ارائهدهنده را در تنظیمات پیکربندی کنید',
|
||
'inlineSwitcher.missingApiKey': 'کلید API تنظیم نشده — تنظیمات را باز کنید.',
|
||
'inlineSwitcher.openFullSettings': 'باز کردن تنظیمات اجرا',
|
||
'inlineSwitcher.customSuffix': '(سفارشی)',
|
||
|
||
'project.backToProjects': 'بازگشت به پروژهها',
|
||
'project.metaFreeform': 'آزاد',
|
||
'project.resizeChatPanel': 'تغییر اندازه پنل چت',
|
||
'project.instructionsActive': 'فعال — در هر پیام گنجانده میشود',
|
||
'chat.tabChat': 'چت',
|
||
'chat.tabComments': 'نظرات',
|
||
'chat.commentsSoon': 'نظرات — به زودی',
|
||
'chat.comments.attached': 'Attached to chat',
|
||
'chat.comments.emptyAttached': 'No comments attached.',
|
||
'chat.comments.saved': 'Saved comments',
|
||
'chat.comments.emptySaved': 'No saved comments.',
|
||
'chat.comments.add': 'Add',
|
||
'chat.comments.addAll': 'Add all',
|
||
'chat.comments.remove': 'Remove',
|
||
'chat.comments.placeholder': 'Comment on this element…',
|
||
'chat.comments.addSend': 'Add & send',
|
||
'chat.comments.updateSend': 'Update & send',
|
||
'chat.comments.removeAttachment': 'Remove comment attachment',
|
||
'chat.comments.removeAttachmentAria': 'Remove comment attachment for {name}',
|
||
'chat.comments.comment': 'Comment',
|
||
'chat.comments.sendToChat': 'Send to chat',
|
||
'chat.comments.sending': 'Sending…',
|
||
'chat.comments.edit': 'Edit',
|
||
'chat.comments.select': 'Select',
|
||
'chat.comments.deselect': 'Deselect',
|
||
'chat.comments.nSelected': '{n} selected',
|
||
'chat.comments.pin': 'Pin',
|
||
'chat.comments.addNote': 'Add note',
|
||
'chat.comments.savedToast': 'Comment saved',
|
||
'chat.comments.pinSavedToast': 'Pin saved',
|
||
'chat.comments.pinAtCoords': 'at {x}, {y}',
|
||
'chat.comments.capturedItems': '{n} captured items',
|
||
'chat.comments.clear': 'Clear',
|
||
'chat.comments.targetImage': 'Image',
|
||
'chat.comments.targetControl': 'Control',
|
||
'chat.comments.targetLink': 'Link',
|
||
'chat.comments.targetText': 'Text',
|
||
'chat.comments.targetSection': 'Section',
|
||
'chat.comments.targetPage': 'Page',
|
||
'chat.comments.targetArea': 'Area',
|
||
'chat.annotationNotePlaceholder': 'Add a note for this annotation',
|
||
'chat.annotationQueue': 'Queue',
|
||
'chat.annotationQueueing': 'Queueing...',
|
||
'chat.annotationSending': 'Sending...',
|
||
'chat.annotationSendDisabledReason': 'A task is currently running',
|
||
'chat.annotationPreviewMissing': 'Could not capture the preview. Please try again.',
|
||
'chat.annotationPreviewMissingInk': 'Could not capture the preview. Try again to avoid sending only ink.',
|
||
'chat.annotationTimeout': 'Annotation send timed out. Please try again.',
|
||
'chat.annotationFailed': 'Annotation send failed. Please try again.',
|
||
'chat.annotationProjectCreateFailed': 'Could not create a project, so the annotation was not sent.',
|
||
'chat.annotationUploadFailed': 'Attachment upload failed. Please try again.',
|
||
'chat.inspect.noEditableTargets': 'This page has no editable elements yet.',
|
||
'chat.inspect.noCommentTargets': 'This page has no commentable elements yet.',
|
||
'chat.inspect.editHint': 'Click an element in the canvas to edit its styles.',
|
||
'chat.inspect.commentHint': 'Click an element in the canvas to add a comment.',
|
||
'chat.conversationsTitle': 'مکالمات',
|
||
'chat.conversationsAria': 'تاریخچه مکالمات',
|
||
'chat.newConversation': 'مکالمه جدید',
|
||
'chat.newConversationsTitle': 'مکالمه جدید',
|
||
'chat.conversationsHeading': 'مکالمات',
|
||
'chat.new': 'جدید',
|
||
'chat.emptyConversations': 'هنوز هیچ مکالمهای وجود ندارد.',
|
||
'chat.deleteConversation': 'حذف مکالمه',
|
||
'chat.renameConversationLabel': 'تغییر نام «{title}»',
|
||
'chat.deleteConversationConfirm':
|
||
'آیا «{title}» حذف شود؟ این کار پیامهای آن را حذف میکند.',
|
||
'chat.untitledConversation': 'مکالمه بدون عنوان',
|
||
'chat.startTitle': 'یک مکالمه شروع کنید',
|
||
'chat.startHint': "آنچه میخواهید بسازید را توصیف کنید، یا از یکی از این نمونهها شروع کنید:",
|
||
'chat.fillInputTitle': 'برای پر کردن ورودی کلیک کنید',
|
||
'chat.jumpToLatest': 'رفتن به آخرین',
|
||
'chat.scrollToLatest': 'اسکرول به آخرین',
|
||
'chat.you': 'شما',
|
||
'chat.openFile': 'باز کردن {name}',
|
||
'chat.copyPrompt': 'کپی پرامپت',
|
||
'chat.copyDone': 'کپی شد!',
|
||
'chat.composerPlaceholder': "آنچه میخواهید بسازید را توصیف کنید…",
|
||
'chat.composerHint': "⌘/Ctrl + Enter برای ارسال · هدف، محتوا، سبک و قالب را ذکر کنید",
|
||
'chat.cliSettingsTitle': 'تنظیمات CLI و مدل',
|
||
'chat.cliSettingsAria': 'باز کردن تنظیمات CLI و مدل',
|
||
'chat.attachTitle': 'ضمیمه کردن فایلها (یا چسباندن / رها کردن)',
|
||
'chat.attachAria': 'ضمیمه کردن فایلها',
|
||
'chat.importTitle': 'وارد کردن منابع (به زودی)',
|
||
'chat.importLabel': 'وارد کردن',
|
||
'chat.importComingSoon': 'به زودی',
|
||
'chat.importSoon': 'به زودی',
|
||
'chat.importFig': 'آپلود فایل .fig',
|
||
'chat.importGitHub': 'اتصال به GitHub',
|
||
'chat.importWeb': 'گرفتن عنصر وب',
|
||
'chat.importFolder': 'لینک کردن پوشه کد',
|
||
'chat.importSkills': 'مهارتها و سیستمهای طراحی',
|
||
'chat.importProject': 'Reference another project',
|
||
'chat.linkedFolderRemoveAria': 'حذف پوشه لینک شده {path}',
|
||
'chat.linkedFolderNotFound': 'پوشه وجود ندارد',
|
||
'chat.linkedFolderAlready': 'این پوشه قبلاً لینک شده است',
|
||
'chat.linkedFolderPickError': 'انتخابگر پوشه باز نشد',
|
||
'chat.queuedHeader': 'Queued',
|
||
'chat.queuedToSend': 'to Send',
|
||
'chat.queuedEditQueuedTaskAria': 'Edit queued task',
|
||
'chat.queuedSave': 'Save',
|
||
'chat.queuedCancel': 'Cancel',
|
||
'chat.queuedEdit': 'Edit',
|
||
'chat.queuedMore': 'more queued',
|
||
'chat.queuedFollowUpFallback': 'Queued follow-up',
|
||
'chat.send': 'ارسال',
|
||
'chat.stop': 'توقف',
|
||
'chat.removeAria': 'حذف {name}',
|
||
'chat.example1Title': 'ارائه سردبیری',
|
||
'chat.example1Tag': 'مجله',
|
||
'chat.example1Prompt':
|
||
'یک ارائه سردبیری ۱۰ اسلایدی برای یک استودیو طراحی که در حال جمعآوری یک دور سرمایهگذاری اولیه است — چیدمان شبکه سوئیسی، عناوین سریف بزرگ با حروف تزئینی پررنگ، شمارههای بخش با فونت monospace، فضای منفی سخاوتمندانه، و اسلایدهای تمام خون عکس که با اسلایدهای متنمحور در هم تنیده شدهاند. جلد، چشمانداز، بازار، محصول، کشش، تیم، درخواست، تماس.',
|
||
'chat.example2Title': 'داشبورد تحلیل SaaS',
|
||
'chat.example2Tag': 'داده',
|
||
'chat.example2Prompt':
|
||
'یک داشبورد تحلیل متراکم برای یک SaaS ابزار توسعهدهنده — نوار KPI با دلتاهای هفته به هفته، دو نمودار خط انباشته (MRR و فضاهای کاری فعال)، یک نقشه حرارتی جهانی از استفاده، یک شبکه ماندگاری کوهورت، یک جدول رهبری برترین مشتریان، و یک فید رویداد بلادرنگ. تم تاریک، اعداد جدولی monospace، تأکیدات sparkline.',
|
||
'chat.example3Title': 'گزارش سالانه اسکرول بلند',
|
||
'chat.example3Tag': 'سردبیری',
|
||
'chat.example3Prompt':
|
||
'یک گزارش سالانه تعاملی برای یک سازمان غیرانتفاعی آب و هوایی — چیدمان سردبیری اسکرول بلند که بلوکهای نقل قول بزرگ، تصویرسازیهای داده، عکاسی، دیوار اهداکنندگان و یک فراخوان به عمل نهایی را ترکیب میکند.',
|
||
|
||
'preview.shareMenu': 'اشتراکگذاری',
|
||
'preview.exportMenu': 'Export',
|
||
'preview.shareTemplateBadge': 'Template',
|
||
'preview.shareToX': 'X / Twitter',
|
||
'preview.shareToReddit': 'Reddit',
|
||
'preview.shareToFacebook': 'Facebook',
|
||
'preview.shareToLinkedIn': 'LinkedIn',
|
||
'preview.shareToInstagram': 'Instagram',
|
||
'preview.shareToXiaohongshu': '小红书',
|
||
'preview.copyTemplateLink': 'Copy template link',
|
||
'preview.copyShareText': 'Copy share text',
|
||
'preview.shareSocialGroup': 'Share to social',
|
||
'preview.shareCopyGroup': 'Copy',
|
||
'preview.shareExportGroup': 'Export files',
|
||
'preview.shareCopied': 'Copied',
|
||
'preview.shareCopyFailed': 'Copy failed',
|
||
'preview.shareTextDefault': 'Open Design template: {title}',
|
||
'preview.openInNewTab': 'باز کردن در تب جدید',
|
||
'preview.exit': '⤓ خروج',
|
||
'preview.fullscreen': '⤢ تمام صفحه',
|
||
'preview.closeTitle': 'بستن (Esc)',
|
||
'preview.loading': 'در حال بارگذاری {label}…',
|
||
'preview.errorTitle': 'بارگیری این نمونه ممکن نشد.',
|
||
'preview.errorBody': 'دریافت HTML نمونه با خطا مواجه شد. مطمئن شوید Open Design در حال اجراست و دوباره تلاش کنید.',
|
||
'preview.retry': 'تلاش دوباره',
|
||
'preview.unavailableTitle': 'برای این مهارت پیشنمایش همراهی وجود ندارد.',
|
||
'preview.unavailableBody': 'این مهارت خروجی {kind} تولید میکند — برای ساخت یکی، پرامپت را در گفتگو اجرا کنید.',
|
||
'preview.showSidebar': 'نمایش {label}',
|
||
'preview.hideSidebar': 'پنهان کردن {label}',
|
||
|
||
'misc.savedTemplate': 'قالب ذخیره شده',
|
||
'misc.primary': 'اصلی',
|
||
'misc.designSystem': 'سیستم طراحی',
|
||
|
||
'workspace.designFiles': 'فایلهای طراحی',
|
||
'workspace.focusMode': 'Focus workspace',
|
||
'workspace.showChat': 'Show chat',
|
||
'workspace.closeTab': 'بستن تب',
|
||
'workspace.deleteFileConfirm': 'آیا «{name}» از پوشه پروژه حذف شود؟',
|
||
'workspace.deleteSelectedFilesConfirm': 'آیا {n} فایل انتخابشده از پوشه پروژه حذف شوند؟',
|
||
'workspace.deleteSelectedFilesPartial': 'حذف {n} فایل ناموفق بود.',
|
||
'workspace.openFromDesignFiles': 'باز کردن یک فایل از',
|
||
'workspace.designFilesLink': 'فایلهای طراحی',
|
||
'workspace.loadingSketch': 'در حال بارگذاری طرح…',
|
||
'designFiles.title': 'فایلهای طراحی',
|
||
'designFiles.upload': 'آپلود فایلها',
|
||
'designFiles.pasteText': 'چسباندن به عنوان فایل متنی',
|
||
'designFiles.newSketch': 'طرح جدید',
|
||
'designFiles.empty': 'آفرینشها اینجا نمایش داده میشوند',
|
||
'designFiles.refresh': 'بازنشانی',
|
||
'designFiles.delete': 'حذف',
|
||
'designFiles.deleteSelected': 'حذف {n}',
|
||
'designFiles.searchPlaceholder': 'جستجوی فایلها…',
|
||
'designFiles.up': 'بالا',
|
||
'designFiles.back': 'بازگشت',
|
||
'designFiles.crumbs': 'پروژه',
|
||
'designFiles.rowMenu': 'منوی ردیف',
|
||
'designFiles.openInTab': 'باز کردن در تب',
|
||
'designFiles.download': 'دانلود',
|
||
'designFiles.downloadSelected': 'دانلود {n} به صورت ZIP',
|
||
'designFiles.clearSelection': 'پاک کردن انتخاب',
|
||
'designFiles.selectPage': 'انتخاب همه در صفحه',
|
||
'designFiles.selectAll': 'انتخاب همه',
|
||
'designFiles.dropTitle': '⤓ فایلها را اینجا رها کنید',
|
||
'designFiles.dropDesc':
|
||
'تصاویر، اسناد، مراجع یا پوشهها — عامل از آنها به عنوان زمینه استفاده خواهد کرد.',
|
||
'designFiles.upload.title': 'آپلود فایلها',
|
||
'designFiles.paste.title': 'چسباندن متن به عنوان فایل',
|
||
'designFiles.upload.label': 'آپلود',
|
||
'designFiles.paste.label': 'چسباندن',
|
||
'designFiles.previewOpen': 'باز کردن',
|
||
'designFiles.previewClose': 'بستن پیشنمایش',
|
||
'designFiles.modified': 'ویرایش شده {time} · {size}',
|
||
'designFiles.weeksAgo': '{n} هفته پیش',
|
||
'designFiles.groupBy': 'گروهبندی بر اساس',
|
||
'designFiles.groupByKind': 'نوع',
|
||
'designFiles.groupByModified': 'زمان ویرایش',
|
||
'designFiles.expandGroup': 'باز کردن',
|
||
'designFiles.collapseGroup': 'جمع کردن',
|
||
'designFiles.sectionPages': 'صفحات',
|
||
'designFiles.sectionScripts': 'اسکریپتها',
|
||
'designFiles.sectionImages': 'تصاویر',
|
||
'designFiles.sectionSketches': 'طرحها',
|
||
'designFiles.sectionLiveArtifacts': 'مصنوعات زنده',
|
||
'designFiles.sectionOther': 'سایر',
|
||
'designFiles.modifiedToday': 'امروز',
|
||
'designFiles.modifiedYesterday': 'دیروز',
|
||
'designFiles.modifiedPrevious7Days': '۷ روز گذشته',
|
||
'designFiles.modifiedPrevious30Days': '۳۰ روز گذشته',
|
||
'designFiles.modifiedOlder': 'قدیمیتر',
|
||
'designFiles.showMore': '+{n} بیشتر',
|
||
'designFiles.kindHtml': 'صفحه HTML',
|
||
'designFiles.kindImage': 'تصویر',
|
||
'designFiles.kindSketch': 'طرح',
|
||
'designFiles.kindText': 'متن',
|
||
'designFiles.kindCode': 'اسکریپت',
|
||
'designFiles.kindPdf': 'PDF',
|
||
'designFiles.kindDocument': 'سند',
|
||
'designFiles.kindPresentation': 'ارائه',
|
||
'designFiles.kindSpreadsheet': 'صفحه گسترده',
|
||
'designFiles.kindLiveArtifact': 'مصنوع زنده',
|
||
'designFiles.kindBinary': 'باینری',
|
||
'designFiles.kindFolder': 'پوشه',
|
||
'designFiles.folderCount': '{n} فایل',
|
||
'designFiles.colName': 'نام',
|
||
'designFiles.colKind': 'نوع',
|
||
'designFiles.colModified': 'تغییر یافته',
|
||
'designFiles.perPage': 'نمایش',
|
||
'designFiles.all': 'همه',
|
||
'designFiles.prev': 'قبلی',
|
||
'designFiles.next': 'بعدی',
|
||
'designFiles.jumpToPage': 'برو به صفحه',
|
||
'designFiles.pageInfo': '{start}–{end} از {total}',
|
||
'quickSwitcher.placeholder': 'باز کردن فایل…',
|
||
'quickSwitcher.empty': 'هیچ فایلی در این پروژه نیست',
|
||
'quickSwitcher.noMatches': 'بدون نتیجه',
|
||
'quickSwitcher.navigate': 'حرکت',
|
||
'quickSwitcher.open': 'باز کردن',
|
||
'quickSwitcher.close': 'بستن',
|
||
'pasteDialog.title': 'چسباندن متن',
|
||
'pasteDialog.hint': 'در پوشه پروژه ذخیره میشود. هر نامی انتخاب کنید.',
|
||
'pasteDialog.fileNameLabel': 'نام فایل',
|
||
'pasteDialog.namePlaceholder': 'notes.txt',
|
||
'pasteDialog.contentLabel': 'محتوا',
|
||
'pasteDialog.contentPlaceholder': 'هر چیزی را بچسبانید…',
|
||
'pasteDialog.save': 'ذخیره',
|
||
'pasteDialog.cancel': 'لغو',
|
||
'sketch.save': 'ذخیره طرح',
|
||
'sketch.cancel': 'لغو',
|
||
'sketch.saving': 'در حال ذخیره…',
|
||
'sketch.saved': 'ذخیره شد',
|
||
'sketch.tooltipDirty': 'تغییرات ذخیره نشده',
|
||
'sketch.tooltipClean': 'ذخیره شد',
|
||
'fileViewer.empty': 'یک فایل را برای مشاهده انتخاب کنید.',
|
||
'fileViewer.loading': 'در حال بارگذاری…',
|
||
'fileViewer.exportPptx': 'صادرکردن به PPTX',
|
||
'fileViewer.openInNewTab': 'باز کردن در تب جدید',
|
||
'fileViewer.copyPath': 'کپی مسیر',
|
||
'fileViewer.copied': 'کپی شد!',
|
||
'fileViewer.share': 'اشتراکگذاری',
|
||
'fileViewer.binaryMeta': 'باینری · {size}',
|
||
'fileViewer.binaryNote':
|
||
'فایل باینری ({size} بایت). برای بررسی دانلود یا از دیسک باز کنید.',
|
||
'fileViewer.markdownStreamingMeta': 'پیشنمایش در حال استریم…',
|
||
'fileViewer.markdownErrorMeta': 'پیشنمایش ممکن است ناقص باشد (خطای تولید).',
|
||
'fileViewer.markdownStreamingStatus': 'در حال استریم… Markdown ناقص نمایش داده میشود.',
|
||
'fileViewer.markdownErrorStatus': 'خطای تولید. آخرین محتوای در دسترس نمایش داده میشود.',
|
||
'fileViewer.pdfMeta': 'PDF · {size}',
|
||
'fileViewer.documentMeta': 'سند',
|
||
'fileViewer.presentationMeta': 'ارائه',
|
||
'fileViewer.spreadsheetMeta': 'صفحه گسترده',
|
||
'fileViewer.previewUnavailable': 'پیشنمایش در دسترس نیست. برای بررسی فایل را دانلود یا باز کنید.',
|
||
'fileViewer.download': 'دانلود',
|
||
'fileViewer.open': 'باز کردن',
|
||
'fileViewer.imageMeta': 'تصویر · {size}',
|
||
'fileViewer.reactMeta': 'مؤلفه React · {size}',
|
||
'fileViewer.sketchMeta': 'طرح · {size}',
|
||
'fileViewer.videoMeta': 'ویدئو · {size}',
|
||
'fileViewer.audioMeta': 'صدا · {size}',
|
||
'fileViewer.reload': 'بارگذاری مجدد',
|
||
'fileViewer.reloadDisk': 'بارگذاری مجدد از دیسک',
|
||
'fileViewer.copy': 'کپی',
|
||
'fileViewer.copyTitle': 'کپی محتوای فایل',
|
||
'fileViewer.saveDisabled': 'ذخیره (نمایشگر فقط خواندنی)',
|
||
'fileViewer.save': 'ذخیره',
|
||
'fileViewer.preview': 'پیشنمایش',
|
||
'fileViewer.source': 'منبع',
|
||
'fileViewer.tweaks': 'تنظیمات جزئی',
|
||
'fileViewer.tweaksUnavailable': 'پنل تنظیمات در این مصنوع وجود ندارد',
|
||
'fileViewer.jsxModuleTitle': 'پیشنمایش مستقلی وجود ندارد',
|
||
'fileViewer.jsxModuleBody': 'این فایل یک ماژول کامپوننت است که توسط صفحهای دیگر بارگذاری میشود.',
|
||
'fileViewer.jsxModuleCta': 'صفحهای را که آن را نمایش میدهد باز کنید:',
|
||
'fileViewer.comment': 'نظر',
|
||
'fileViewer.edit': 'ویرایش',
|
||
'fileViewer.draw': 'رسم',
|
||
'manualEdit.layers': "Layers",
|
||
'manualEdit.editableCount': "{count} editable",
|
||
'manualEdit.hiddenBadge': "Hidden",
|
||
'manualEdit.title': "Manual editor",
|
||
'manualEdit.fallbackTitle': 'Edit',
|
||
'manualEdit.movePanel': 'Move edit panel',
|
||
'manualEdit.closePanel': 'Close edit panel',
|
||
'manualEdit.selectLayer': "Select a layer",
|
||
'manualEdit.empty': "Click an element in the preview or choose a layer.",
|
||
'manualEdit.noEditableLayers': "No editable layers found.",
|
||
'manualEdit.noClass': "no class",
|
||
'manualEdit.tabsAria': "Manual edit tabs",
|
||
'manualEdit.tabContent': "Content",
|
||
'manualEdit.tabStyle': "Style",
|
||
'manualEdit.tabAttributes': "Attributes",
|
||
'manualEdit.tabHtml': "Html",
|
||
'manualEdit.tabSource': "Source",
|
||
'manualEdit.attributesJson': "Attributes JSON",
|
||
'manualEdit.selectedHtml': "Selected element HTML",
|
||
'manualEdit.fullSource': "Full artifact source",
|
||
'manualEdit.applyContent': "Apply Content",
|
||
'manualEdit.applyStyle': "Apply Style",
|
||
'manualEdit.applyAttributes': "Apply Attributes",
|
||
'manualEdit.applyHtml': "Apply HTML",
|
||
'manualEdit.applySource': "Apply Source",
|
||
'manualEdit.invalidAttributes': "Invalid attributes JSON.",
|
||
'manualEdit.changes': "Changes",
|
||
'manualEdit.undo': "Undo",
|
||
'manualEdit.redo': "Redo",
|
||
'manualEdit.noChanges': "No manual edits yet.",
|
||
'manualEdit.imageUrl': "Image URL",
|
||
'manualEdit.altText': "Alt text",
|
||
'manualEdit.label': "Label",
|
||
'manualEdit.text': "Text",
|
||
'manualEdit.href': "Href",
|
||
'manualEdit.textColor': "Text color",
|
||
'manualEdit.background': "Background",
|
||
'manualEdit.fontSize': "Font size",
|
||
'manualEdit.weight': "Weight",
|
||
'manualEdit.align': "Align",
|
||
'manualEdit.padding': "Padding",
|
||
'manualEdit.margin': "Margin",
|
||
'manualEdit.radius': "Radius",
|
||
'manualEdit.border': "Border",
|
||
'manualEdit.width': "Width",
|
||
'manualEdit.minHeight': "Min height",
|
||
'fileViewer.zoomOut': 'کوچکنمایی',
|
||
'fileViewer.zoomIn': 'بزرگنمایی',
|
||
'fileViewer.resetZoom': 'بازنشانی زوم',
|
||
'fileViewer.viewportAria': 'Preview viewport',
|
||
'fileViewer.viewportDesktop': 'Desktop',
|
||
'fileViewer.viewportDesktopTitle': 'Full-width desktop preview',
|
||
'fileViewer.viewportTablet': 'Tablet',
|
||
'fileViewer.viewportTabletTitle': 'Tablet preview at 820 × 1180 (modern portrait baseline)',
|
||
'fileViewer.viewportMobile': 'Mobile',
|
||
'fileViewer.viewportMobileTitle': 'Mobile preview at 390 × 844',
|
||
'fileViewer.reloadAria': 'بارگذاری مجدد',
|
||
'fileViewer.previousSlide': 'اسلاید قبلی',
|
||
'fileViewer.nextSlide': 'اسلاید بعدی',
|
||
'fileViewer.slideNavAria': 'پیمایش اسلاید',
|
||
'fileViewer.present': 'ارائه',
|
||
'fileViewer.presentInTab': 'در این تب',
|
||
'fileViewer.presentFullscreen': 'تمام صفحه',
|
||
'fileViewer.presentNewTab': 'تب جدید',
|
||
'fileViewer.exitPresentation': 'خروج از ارائه',
|
||
'fileViewer.shareLabel': "اشتراکگذاری",
|
||
'fileViewer.shareMenuShareLink': 'SHARE LINK',
|
||
'fileViewer.shareMenuPublishOnline': 'PUBLISH ONLINE',
|
||
'fileViewer.shareMenuDownload': 'DOWNLOAD',
|
||
'fileViewer.shareMenuPresentation': 'Presentation',
|
||
'fileViewer.shareMenuSourceFiles': 'Source files',
|
||
'fileViewer.shareMenuSave': 'SAVE',
|
||
'fileViewer.copyProviderLink': 'Copy {provider} link',
|
||
'fileViewer.copyCloudflareLink': 'Copy Cloudflare link',
|
||
'fileViewer.screenshotCopying': 'Copying screenshot...',
|
||
'fileViewer.screenshotCopied': 'Screenshot copied to clipboard',
|
||
'fileViewer.screenshotClipboardDenied': 'Browser blocked clipboard access',
|
||
'fileViewer.screenshotPreviewLoading': 'Preview is still loading. Try again in a moment.',
|
||
'fileViewer.screenshotCaptureFailed': 'Could not capture the preview. Please try again.',
|
||
'fileViewer.exportPdf': 'صادرکردن به PDF',
|
||
'fileViewer.exportPdfAllSlides': 'صادرکردن به PDF (همه اسلایدها)',
|
||
'fileViewer.exportPptxBusy': 'منتظر پایان نوبت فعلی باشید.',
|
||
'fileViewer.exportPptxHint':
|
||
'یک درخواست به عامل برای تبدیل این طرح به PPTX ارسال کنید.',
|
||
'fileViewer.exportPptxNa': 'صادرکردن PPTX اینجا در دسترس نیست.',
|
||
'fileViewer.exportZip': 'دانلود به صورت .zip',
|
||
'fileViewer.exportHtml': 'صادرکردن به HTML مستقل',
|
||
'fileViewer.exportMd': 'صادرکردن به صورت Markdown',
|
||
'fileViewer.exportImage': 'صادرکردن به صورت تصویر',
|
||
'fileViewer.exportImageFailed': 'گرفتن تصویر ناموفق بود. لطفاً دوباره تلاش کنید یا از ابزار اسکرینشات مرورگرتان استفاده کنید.',
|
||
'fileViewer.exportJsx': 'صادرکردن به JSX',
|
||
'fileViewer.exportReactHtml': 'صادرکردن پیشنمایش به HTML',
|
||
'fileViewer.exportStarted': 'Export started',
|
||
'fileViewer.saveAsTemplate': 'ذخیره به عنوان قالب…',
|
||
'fileViewer.savingTemplate': 'در حال ذخیره قالب…',
|
||
'fileViewer.savedTemplate': 'به عنوان «{name}» ذخیره شد',
|
||
'fileViewer.savedTemplateFail': 'ذخیره قالب ناموفق بود — دوباره امتحان کنید.',
|
||
'fileViewer.templateNamePrompt': 'نام قالب',
|
||
'fileViewer.templateNameDefault': 'قالب بدون عنوان',
|
||
'fileViewer.templateDescPrompt':
|
||
'توضیح کوتاه (اختیاری — چه چیزی این قالب را مفید میکند؟)',
|
||
'liveArtifact.refresh.button': 'بازخوانی',
|
||
'liveArtifact.refresh.buttonTitle': 'این مصنوع زنده را بازخوانی کن',
|
||
'liveArtifact.refresh.loadingTitle': 'در حال بارگذاری مصنوع زنده…',
|
||
'liveArtifact.refresh.noSourceTitle': 'هنوز هیچ منبع بازخوانی فقطخواندنیِ تأییدشدهای موجود نیست.',
|
||
'liveArtifact.refresh.running': 'در حال بازخوانی…',
|
||
'liveArtifact.refresh.runningMessage': 'در حال بازخوانی دادهها و پیشنمایش. این کار ممکن است کمی طول بکشد.',
|
||
'liveArtifact.refresh.runningAction': 'پیشنمایش قبلی تا موفق شدن بازخوانی قابل مشاهده میماند.',
|
||
'liveArtifact.refresh.successOne': 'بازخوانی کامل شد. دادهها بهروزرسانی شدند.',
|
||
'liveArtifact.refresh.successMany': 'بازخوانی کامل شد. دادهها بهروزرسانی شدند.',
|
||
'liveArtifact.refresh.successAction': 'پیشنمایش با جدیدترین دادههای ثبتشده دوباره بارگذاری شد.',
|
||
'liveArtifact.refresh.previousFailure': 'بازخوانی قبلی ناموفق بود: {message}',
|
||
'liveArtifact.refresh.failureAction': 'تاریخچه بازخوانی را بررسی کنید، مشکل منبع یا مجوز را رفع کنید، سپس دوباره تلاش کنید.',
|
||
'liveArtifact.refresh.networkFailure': 'درخواست بازخوانی ناموفق بود. اتصال خود را بررسی کنید و دوباره تلاش کنید.',
|
||
'liveArtifact.refresh.genericFailure': 'بازخوانی ناموفق بود.',
|
||
'liveArtifact.refresh.statusNever': 'قابل بازخوانی نیست',
|
||
'liveArtifact.refresh.statusReady': 'آماده بازخوانی',
|
||
'liveArtifact.refresh.statusSucceeded': 'بهروز است',
|
||
'liveArtifact.refresh.statusFailed': 'بازخوانی ناموفق بود',
|
||
|
||
'questionForm.submit': 'ارسال',
|
||
'questionForm.skip': 'رد کردن',
|
||
'questionForm.locked': 'پاسخ داده شده',
|
||
|
||
'conv.switch': 'تغییر مکالمه',
|
||
'conv.label': 'مکالمه',
|
||
'conv.heading': 'مکالمات',
|
||
'conv.new': '+ جدید',
|
||
'conv.empty': 'هنوز هیچ مکالمهای وجود ندارد.',
|
||
'conv.untitled': 'مکالمه بدون عنوان',
|
||
'conv.renameTooltip': 'برای تغییر نام دوبار کلیک کنید',
|
||
'conv.delete': 'حذف مکالمه',
|
||
'conv.deleteConfirm': 'آیا «{title}» حذف شود؟ این کار پیامهای آن را حذف میکند.',
|
||
|
||
'agentPicker.label': 'عامل',
|
||
'agentPicker.modeChoose': 'انتخاب حالت اجرا',
|
||
'agentPicker.localCli': 'CLI محلی',
|
||
'agentPicker.daemonOff': 'daemon خاموش',
|
||
'agentPicker.byok': 'API · BYOK',
|
||
'agentPicker.selectAgent': 'انتخاب یک CLI عامل کد شناسایی شده',
|
||
'agentPicker.noAgents': 'هیچ عاملی در PATH وجود ندارد',
|
||
'agentPicker.notInstalled': 'نصب نشده',
|
||
'agentPicker.rescan': 'اسکن مجدد PATH محلی برای عاملها',
|
||
|
||
'tool.openInTab': 'باز کردن {name} در یک تب',
|
||
'tool.open': 'باز کردن',
|
||
'tool.todos': 'وظایف',
|
||
'tool.askQuestion': 'پرسش',
|
||
'tool.askQuestionSubmit': 'ارسال',
|
||
'tool.askQuestionPending': 'در انتظار پاسخ شما',
|
||
'tool.askQuestionAnswered': 'پاسخ داده شد',
|
||
'tool.todosExpand': 'نمایش وظایف',
|
||
'tool.todosCollapse': 'پنهان کردن وظایف',
|
||
'tool.todosDone': 'انجام شد',
|
||
'tool.todosDismiss': 'بستن فهرست وظایف',
|
||
'tool.write': 'نوشتن',
|
||
'tool.edit': 'ویرایش',
|
||
'tool.read': 'خواندن',
|
||
'tool.bash': 'Bash',
|
||
'tool.glob': 'Glob',
|
||
'tool.grep': 'Grep',
|
||
'tool.fetch': 'دریافت',
|
||
'tool.search': 'جستجو',
|
||
'tool.lines': '{n} خط',
|
||
'tool.changeSingular': 'تغییر',
|
||
'tool.changePlural': 'تغییرات',
|
||
'tool.in': 'در {path}',
|
||
'tool.hide': 'پنهان',
|
||
'tool.output': 'خروجی',
|
||
'tool.running': 'در حال اجرا…',
|
||
'tool.error': 'خطا',
|
||
'tool.done': 'انجام شد',
|
||
|
||
'assistant.role': 'دستیار',
|
||
'assistant.workingLabel': 'در حال کار',
|
||
'assistant.doneLabel': 'انجام شد',
|
||
'assistant.feedbackPrompt': 'بازخورد',
|
||
'assistant.feedbackPositive': 'مفید',
|
||
'assistant.feedbackNegative': 'غیرمفید',
|
||
'assistant.feedbackReasonTitle': 'Tell us why',
|
||
'assistant.feedbackReasonPositiveMatched': 'Understood my request',
|
||
'assistant.feedbackReasonPositiveVisual': 'Looks good',
|
||
'assistant.feedbackReasonPositiveUseful': 'Useful structure',
|
||
'assistant.feedbackReasonPositiveEasy': 'Easy to keep editing',
|
||
'assistant.feedbackReasonPositiveDesignSystem': 'Followed the design system',
|
||
'assistant.feedbackReasonNegativeMissed': 'Missed my request',
|
||
'assistant.feedbackReasonNegativeVisual': 'Visual quality needs work',
|
||
'assistant.feedbackReasonNegativeIncomplete': 'Incomplete output',
|
||
'assistant.feedbackReasonNegativeHard': 'Hard to use',
|
||
'assistant.feedbackReasonNegativeDesignSystem': 'Did not follow the design system',
|
||
'assistant.feedbackReasonOther': 'Other',
|
||
'assistant.feedbackReasonPlaceholder': 'Add a short note...',
|
||
'assistant.feedbackReasonSubmit': 'Submit',
|
||
'assistant.emptyResponseLabel': 'No output',
|
||
'assistant.emptyResponseMessage': 'The provider ended the request without returning text or an artifact. Try another model or provider, check quota, or retry.',
|
||
'assistant.unfinishedLabel': 'با کار ناتمام متوقف شد',
|
||
'assistant.unfinishedSummary': '{n} وظیفه باقی مانده',
|
||
'assistant.unfinishedMore': '+{n} بیشتر',
|
||
'assistant.continueRemaining': 'ادامه وظایف باقی مانده',
|
||
'assistant.outTokens': '{n} خروجی',
|
||
'assistant.producedFiles': 'فایلهای این نوبت',
|
||
'assistant.openFile': 'باز کردن',
|
||
'assistant.downloadFile': 'دانلود',
|
||
'assistant.thinking': 'در حال فکر کردن',
|
||
'assistant.systemReminder': 'یادآور سیستم',
|
||
'assistant.waitingFirstOutput': 'در انتظار اولین خروجی',
|
||
'assistant.statusBootingAgent': 'راهاندازی عامل',
|
||
'assistant.statusStarting': 'در حال شروع',
|
||
'assistant.statusRequesting': 'در حال ارسال درخواست',
|
||
'assistant.statusThinking': 'در حال فکر کردن',
|
||
'assistant.statusStreaming': 'در حال استریم',
|
||
'assistant.slowHint':
|
||
'بیشتر از حد معمول طول میکشد. فرم معمولاً در ۵ تا ۱۰ ثانیه نمایش داده میشود — میتوانید متوقف کنید و عبارت را تغییر دهید.',
|
||
'assistant.verbEditing': 'در حال ویرایش',
|
||
'assistant.verbWriting': 'در حال نوشتن',
|
||
'assistant.verbReading': 'در حال خواندن',
|
||
'assistant.verbSearching': 'در حال جستجو',
|
||
'assistant.verbRunning': 'در حال اجرا',
|
||
'assistant.verbTodos': 'وظایف',
|
||
'assistant.verbFetching': 'در حال دریافت',
|
||
'assistant.verbCalling': 'در حال فراخوانی',
|
||
|
||
'qf.answered': 'پاسخ داده شده',
|
||
'qf.choose': 'انتخاب کنید…',
|
||
'qf.required': 'الزامی',
|
||
'qf.lockedSubmitted':
|
||
'پاسخها ارسال شدند — عامل از اینها برای بقیه جلسه استفاده میکند.',
|
||
'qf.lockedPrev': 'این فرم از یک نوبت قبلی است.',
|
||
'qf.hint':
|
||
'آنچه را که مناسب است انتخاب کنید. فیلدهای اختیاری که برایتان مهم نیست را رد کنید — عامل از پیشفرضهای معقول استفاده خواهد کرد.',
|
||
'qf.submitDefault': 'ارسال پاسخها',
|
||
'qf.submitDisabledTitle': 'ابتدا فیلدهای الزامی را پر کنید',
|
||
'qf.submitTitle': 'ارسال پاسخها',
|
||
'qf.cardSelected': 'انتخاب شده',
|
||
'qf.cardRefs': 'مراجع:',
|
||
'qf.cardSampleText': 'روباه قهوهای سریع · ۰۱۲۳',
|
||
|
||
'fileViewer.deployToVercel': 'استقرار روی Vercel',
|
||
'fileViewer.redeployToVercel': 'استقرار دوباره',
|
||
'fileViewer.deployingToVercel': 'در حال استقرار روی Vercel…',
|
||
'fileViewer.deployProviderLabel': 'ارائهدهنده استقرار',
|
||
'fileViewer.vercelProvider': 'Vercel',
|
||
'fileViewer.cloudflarePagesProvider': 'Cloudflare Pages',
|
||
'fileViewer.deployToProvider': 'استقرار روی {provider}',
|
||
'fileViewer.redeployToProvider': 'استقرار دوباره روی {provider}',
|
||
'fileViewer.deployingToProvider': 'در حال استقرار روی {provider}…',
|
||
'fileViewer.preparingPublicLink': 'در حال آمادهسازی لینک عمومی…',
|
||
'fileViewer.copyDeployLink': 'کپی لینک',
|
||
'fileViewer.deployModalTitle': 'استقرار',
|
||
'fileViewer.deployModalSubtitle': 'از حساب ارائهدهنده انتخابشده برای استقرار این پیشنمایش HTML استفاده کنید.',
|
||
'fileViewer.vercelToken': 'توکن Vercel',
|
||
'fileViewer.vercelTokenGetLink': 'دریافت توکن Vercel',
|
||
'fileViewer.vercelTokenPlaceholder': 'توکن Vercel خود را وارد کنید',
|
||
'fileViewer.vercelTokenReuseHint': 'از توکن ذخیرهشده استفاده میشود. برای جایگزینی، توکن جدید وارد کنید.',
|
||
'fileViewer.vercelTokenRequired': 'ابتدا یک توکن Vercel وارد و ذخیره کنید.',
|
||
'fileViewer.cloudflareApiToken': 'توکن API کلادفلر',
|
||
'fileViewer.cloudflareApiTokenGetLink': 'دریافت توکن API کلادفلر',
|
||
'fileViewer.cloudflareApiTokenPlaceholder': 'توکن API کلادفلر خود را وارد کنید',
|
||
'fileViewer.cloudflareApiTokenReuseHint': 'از توکن API کلادفلر ذخیرهشده استفاده میشود. برای جایگزینی، توکن جدید وارد کنید.',
|
||
'fileViewer.cloudflareApiTokenRequired': 'ابتدا یک توکن API کلادفلر وارد و ذخیره کنید.',
|
||
'fileViewer.cloudflareApiTokenScopeHint': 'Pages Edit is required for deploys. Zone Read is required to list domains. DNS Edit is only needed when binding a custom domain.',
|
||
'fileViewer.vercelTeamId': 'شناسه تیم',
|
||
'fileViewer.vercelTeamSlug': 'اسلاگ تیم',
|
||
'fileViewer.cloudflareAccountId': 'شناسه حساب',
|
||
'fileViewer.cloudflareAccountIdHint': 'ضروری است. شناسه حساب را در داشبورد Cloudflare پیدا کنید.',
|
||
'fileViewer.cloudflareAccountIdRequired': 'ابتدا Cloudflare Account ID را وارد و ذخیره کنید.',
|
||
'fileViewer.cloudflareZoneLabel': 'Domain',
|
||
'fileViewer.cloudflareZonePlaceholder': 'Save Cloudflare settings to load domains',
|
||
'fileViewer.cloudflareZoneRequired': 'Select a Cloudflare domain first.',
|
||
'fileViewer.cloudflareZonesLoading': 'Loading Cloudflare domains…',
|
||
'fileViewer.cloudflareZonesRefresh': 'Refresh domains',
|
||
'fileViewer.cloudflareZonesLoadFailed': 'Could not load Cloudflare domains.',
|
||
'fileViewer.cloudflareZonesEmpty': 'No active full Cloudflare domains were found for this account.',
|
||
'fileViewer.cloudflareDomainPrefixLabel': 'Subdomain prefix',
|
||
'fileViewer.cloudflareDomainPrefixPlaceholder': 'demo',
|
||
'fileViewer.cloudflareDomainPrefixInvalid': 'Use one DNS label only: lowercase letters, numbers, and hyphens.',
|
||
'fileViewer.cloudflareHostnamePreview': 'Custom domain preview: {hostname}',
|
||
'fileViewer.cloudflareCustomDomainHint': 'Optional: choose a Cloudflare domain and prefix to bind a custom subdomain. pages.dev will still be available.',
|
||
'fileViewer.cloudflarePagesDevLinkLabel': 'pages.dev URL',
|
||
'fileViewer.cloudflareCustomDomainLinkLabel': 'Custom domain',
|
||
'fileViewer.optional': 'اختیاری',
|
||
'fileViewer.vercelPreviewOnly': 'استقرارها فعلاً فقط Preview هستند.',
|
||
'fileViewer.cloudflarePagesPreviewHint': 'Cloudflare Pages از Direct Upload استفاده میکند.',
|
||
'fileViewer.savingConfig': 'در حال ذخیره…',
|
||
'fileViewer.deployConfigSaveFailed': 'ذخیره تنظیمات Vercel ممکن نبود.',
|
||
'fileViewer.deployFailed': 'استقرار ناموفق بود. تنظیمات Vercel را بررسی و دوباره تلاش کنید.',
|
||
'fileViewer.deployProviderConfigSaveFailed': 'ذخیره تنظیمات {provider} ممکن نبود.',
|
||
'fileViewer.deployProviderFailed': 'استقرار روی {provider} ناموفق بود. تنظیمات را بررسی و دوباره تلاش کنید.',
|
||
'fileViewer.deployResultLabel': 'URL مستقرشده',
|
||
'fileViewer.deployLinkReady': 'آماده',
|
||
'fileViewer.deploySuccessToast': 'استقرار با موفقیت آپلود شد',
|
||
'fileViewer.deploySuccessToastDetails': '{provider} · {url}',
|
||
'fileViewer.deployLinkPreparingLabel': 'لینک عمومی در انتظار است',
|
||
'fileViewer.deployLinkDelayed': 'سایت مستقر شده است. ارائهدهنده هنوز لینک عمومی را آماده میکند.',
|
||
'fileViewer.deployLinkFailed': 'دامنه سفارشی ناموفق بود',
|
||
'fileViewer.deployLinkProtectedLabel': 'محافظت استقرار فعال است',
|
||
'fileViewer.deployLinkProtected': 'سایت مستقر شده، اما این لینک پیشنمایش نیاز به احراز هویت دارد. Deployment Protection را غیرفعال کنید یا از دامنه سفارشی استفاده کنید.',
|
||
'fileViewer.retryLink': 'همین حالا دوباره تلاش کنید',
|
||
|
||
'sketch.toolSelect': 'انتخاب (غیرفعال)',
|
||
'sketch.toolPen': 'قلم',
|
||
'sketch.toolText': 'متن',
|
||
'sketch.toolRect': 'مستطیل',
|
||
'sketch.toolArrow': 'فلش',
|
||
'sketch.toolEraser': 'پاککن',
|
||
'sketch.color': 'رنگ',
|
||
'sketch.strokeSize': 'اندازه خط',
|
||
'sketch.undo': 'واگرد',
|
||
'sketch.clear': 'پاک کردن',
|
||
'sketch.close': 'بستن',
|
||
'sketch.closeConfirm': 'طرح را ببندم و تغییرات ذخیرهنشده را نادیده بگیرم؟',
|
||
'sketch.textPrompt': 'متن:',
|
||
'sketch.textModalTitle': 'افزودن متن',
|
||
|
||
'pet.title': 'حیوان خانگی',
|
||
'pet.tabBuiltIn': 'پیشفرض',
|
||
'pet.tabBuiltInHint': 'همراهان منتخب همراه Open Design — یکی را انتخاب و فرزندخوانده کن.',
|
||
'pet.builtInEmpty': 'حیوانات داخلی در حال حاضر در دسترس نیستند. وقتی دیمن دوباره فعال شد، تب جامعه را تازه کن.',
|
||
'pet.tabCustom': 'سفارشی',
|
||
'pet.tabCustomHint': 'نام، نشان، رنگ یا اسپرایت دلخواه خودت را تنظیم کن.',
|
||
'pet.tabCommunity': 'انجمن',
|
||
'pet.tabCommunityHint': 'حیوانات تولیدشدهٔ Codex — یکی را پذیرش کن یا با هوش مصنوعی بساز.',
|
||
'pet.tabsAria': 'منبع حیوان خانگی',
|
||
'pet.subtitle': 'یک همراه کوچک را به فرزندخواندگی بپذیرید که روی فضای کاری شما شناور میماند.',
|
||
'pet.navTitle': 'حیوان خانگی',
|
||
'pet.navHint': 'فرزندخواندگی یا سفارشیسازی',
|
||
'pet.adopt': 'فرزندخواندگی',
|
||
'pet.adoptedBadge': 'فرزندخوانده',
|
||
'pet.adoptCallout': 'یک حیوان خانگی بپذیرید',
|
||
'pet.changePet': 'تغییر حیوان خانگی',
|
||
'pet.wake': 'بیدار کردن',
|
||
'pet.tuck': 'پنهان کردن',
|
||
'pet.wakeTitle': 'بیدار کردن حیوان خانگی — نمایش لایه شناور.',
|
||
'pet.tuckTitle': 'پنهان کردن حیوان خانگی — مخفی کردن لایه شناور.',
|
||
'pet.settingsTitle': 'باز کردن تنظیمات حیوان خانگی',
|
||
'pet.useCustom': 'استفاده از حیوان خانگی من',
|
||
'pet.customTitle': 'خودتان بسازید',
|
||
'pet.customHint': 'یک نام، نماد و رنگ تأکید انتخاب کنید — لایه بهطور زنده بهروزرسانی میشود.',
|
||
'pet.customGreetingPlaceholder': 'سلامی از طرف حیوان خانگی شما…',
|
||
'pet.fieldName': 'نام',
|
||
'pet.fieldGlyph': 'نماد',
|
||
'pet.fieldGlyphHint': 'یک ایموجی بهترین کارایی را دارد (مثلاً 🐝، 🦄، 🐢).',
|
||
'pet.fieldGreeting': 'پیام خوشآمد',
|
||
'pet.fieldAccent': 'رنگ تأکید',
|
||
'pet.fieldAccentCustom': 'رنگ سفارشی',
|
||
'pet.fieldAccentDefault': 'رنگ تأکید پیشفرض',
|
||
'pet.overlayAria': 'همراه حیوان خانگی',
|
||
'pet.spriteAria': '{name} — برای جابجایی بکشید، برای گفتوگو کلیک کنید',
|
||
'pet.spriteTitle': 'سلام از طرف {name}! برای گفتوگو کلیک کنید.',
|
||
'pet.composerTitle': 'حیوانات خانگی — بیدار کردن، پنهان یا انتخاب',
|
||
'pet.composerMenuTitle': 'حیوانات خانگی',
|
||
'pet.composerMenuHint': 'نکته: /pet را تایپ کنید تا تغییر دهید',
|
||
'pet.composerOpenSettings': 'مدیریت حیوانات خانگی',
|
||
'pet.welcomeTeaserTitle': 'یک حیوان خانگی بپذیرید',
|
||
'pet.welcomeTeaserBody': 'یک همراه کوچک که بالای فضای کاری شما شناور میشود.',
|
||
'pet.welcomeTeaserCta': 'یکی انتخاب کنید',
|
||
'pet.imageUpload': 'بارگذاری اسپرایت',
|
||
'pet.imageReplace': 'جایگزینی اسپرایت',
|
||
'pet.imageRemove': 'استفاده از ایموجی',
|
||
'pet.imageHintIdle': 'PNG، JPG، WebP، GIF یا SVG. اسپرایتشیت؟ یک نوار افقی بارگذاری کنید و تعداد فریم را تنظیم کنید.',
|
||
'pet.imageHintActive': 'اسپرایت شما نمایش داده میشود. فریم را > ۱ تنظیم کنید تا یک اسپرایتشیت افقی متحرک شود.',
|
||
'pet.fieldFrames': 'فریمها',
|
||
'pet.fieldFramesHint': '۱ = ثابت. > ۱ = اسپرایتشیت افقی.',
|
||
'pet.fieldFps': 'سرعت (fps)',
|
||
'pet.fieldFpsHint': 'سرعت چرخش فریمها.',
|
||
'pet.atlasImport': 'وارد کردن اسپرایت Codex',
|
||
'pet.atlasImportTitle': 'یک اطلس hatch-pet با ابعاد 8x9 / 192x208 (PNG یا WebP) وارد کنید.',
|
||
'pet.atlasPickerTitle': 'یک ردیف انیمیشن انتخاب کنید',
|
||
'pet.atlasPickerHint': 'پتهای Codex با ۹ ردیف انیمیشن میآیند. بهطور پیشفرض کل اطلس را نگه میداریم تا پت با هاور، جهت کشیدن و بیکاری طولانی ردیف عوض کند. میتوانی به یک حلقهٔ ثابت هم محدودش کنی.',
|
||
'pet.atlasCancel': 'حذف اطلس',
|
||
'pet.atlasAdopt': 'قفل روی این ردیف',
|
||
'pet.atlasAdoptFull': 'استفاده از کل اطلس (متحرک)',
|
||
'pet.atlasAdoptFullTitle': 'همهٔ ردیفها را نگه دار تا پت به هاور، جهت کشیدن و بیکاری طولانی واکنش بدهد.',
|
||
'pet.atlasAdoptRowTitle': 'فقط ردیف برجستهشده را به نوار حلقهای تکردیفی تبدیل کن.',
|
||
'pet.atlasActiveHint': 'اطلس متحرک فعال است — پت بر اساس تعامل تو (هاور، کشیدن، بیکاری) ردیف را عوض میکند.',
|
||
'pet.atlasRow.idle': 'بیحرکت',
|
||
'pet.atlasRow.running-right': 'دویدن به راست',
|
||
'pet.atlasRow.running-left': 'دویدن به چپ',
|
||
'pet.atlasRow.waving': 'تکان دادن دست',
|
||
'pet.atlasRow.jumping': 'پرش',
|
||
'pet.atlasRow.failed': 'شکست',
|
||
'pet.atlasRow.waiting': 'انتظار',
|
||
'pet.atlasRow.running': 'دویدن',
|
||
'pet.atlasRow.review': 'بررسی',
|
||
'pet.hatchTitle': 'یک پت جدید با هوش مصنوعی پرورش بده',
|
||
'pet.hatchHint': 'از مهارت hatch-pet داخل چت برای ساخت اسپرایتشیت سبک Codex استفاده کنید و سپس اینجا وارد کنید.',
|
||
'pet.hatchConcept': 'مفهوم پت (اختیاری)',
|
||
'pet.hatchConceptPlaceholder': 'مثلاً: یک شیبا اینوی پیکسلی با ژاکتی نرم',
|
||
'pet.hatchCopy': 'کپی پرامپت',
|
||
'pet.hatchCopied': 'کپی شد!',
|
||
'pet.hatchFoot': 'پس از اینکه مهارت پت شما را ذخیره کرد، اینجا برگردید و «وارد کردن اسپرایت Codex» را بزنید.',
|
||
'pet.slashPopoverAria': 'دستورهای اسلش',
|
||
'pet.slashPopoverTitle': 'دستورها',
|
||
'pet.slashPopoverHint': '↑↓ پیمایش · enter انتخاب · esc بستن',
|
||
'pet.slashPet': 'پت را روشن/خاموش کنید، انتخاب کنید یا تنظیمات را باز کنید.',
|
||
'pet.slashPetWake': 'پت شناور را بیدار کنید.',
|
||
'pet.slashPetTuck': 'پت را فعلاً جمع کنید.',
|
||
'pet.slashHatch': 'با مهارت hatch-pet یک پت Codex بسازید.',
|
||
'pet.slashHatchArg': '<مفهوم>',
|
||
'pet.slashSearch': 'وب را با فرمان OD research جستجو کنید.',
|
||
'pet.slashSearchArg': '<پرسوجو>',
|
||
'pet.codexTitle': 'تازهمتولدها',
|
||
'pet.codexSubtitle': 'پتهایی که مهارت hatch-pet بستهبندی کرده اینجا ظاهر میشوند تا با یک کلیک پذیرفته شوند.',
|
||
'pet.codexSubtitleWithDir': 'در حال اسکن {dir} برای بستههای hatch-pet.',
|
||
'pet.codexEmpty': 'هنوز پتی متولد نشده. در چت /hatch بنویسید تا یکی بسازد.',
|
||
'pet.codexLoading': 'در حال جستجوی پتهای متولدشده…',
|
||
'pet.codexRefresh': 'بازخوانی',
|
||
'pet.codexAdopt': 'پذیرش',
|
||
'pet.codexAdopting': 'در حال پذیرش…',
|
||
'pet.communitySync': 'دانلود حیوانات اجتماعی',
|
||
'pet.communitySyncing': 'در حال دانلود…',
|
||
'pet.communitySyncTitle': 'همگامسازی جدیدترین حیوانات از Codex Pet Share + j20 Hatchery در ~/.codex/pets/.',
|
||
'pet.communitySyncDone': '{wrote} حیوان جدید همگام شد (مجموع {total}).',
|
||
'pet.communitySyncFailed': 'خطا در همگامسازی: {error}',
|
||
'pet.codexBundled': 'همراه',
|
||
'pet.codexBundledTitle': 'همراه Open Design ارائه میشود — نیازی به دانلود نیست.',
|
||
|
||
'settings.notifications': 'اعلانها',
|
||
'settings.notificationsHint': 'صدا و اعلان دسکتاپ هنگام تکمیل وظیفه',
|
||
'settings.notifyCompletionSound': 'صدای تکمیل',
|
||
'settings.notifyCompletionSoundHint': 'پس از اتمام یک نوبت پخش میشود. بهطور پیشفرض خاموش است.',
|
||
'settings.notifySuccessSound': 'صدای موفقیت',
|
||
'settings.notifyFailureSound': 'صدای خطا',
|
||
'settings.notifyDesktop': 'اعلان دسکتاپ',
|
||
'settings.notifyDesktopHint': 'هنگامی که پنجره فعال نیست ارسال میشود.',
|
||
'settings.notifyDesktopBlocked': 'مرورگر اعلانها را مسدود کرده است. در تنظیمات سایت آنها را مجاز کنید.',
|
||
'settings.notifyDesktopUnsupported': 'اعلانهای دسکتاپ در این محیط در دسترس نیستند.',
|
||
'settings.notifyTest': 'ارسال آزمایشی',
|
||
'settings.notifyTestSent': 'اعلان آزمایشی ارسال شد. اگر بنری نمایش داده نشد، تنظیمات اعلان مرورگر و سیستم را بررسی کنید.',
|
||
'settings.notifyTestFailed': 'فراخوانی اعلان ناموفق بود. تنظیمات اعلان مرورگر و سیستم را بررسی کنید.',
|
||
'settings.notifySoundDing': 'دینگ',
|
||
'settings.notifySoundChime': 'زنگ',
|
||
'settings.notifySoundTwoToneUp': 'دو نوای بالارونده',
|
||
'settings.notifySoundPluck': 'مضراب',
|
||
'settings.notifySoundBuzz': 'وزوز',
|
||
'settings.notifySoundTwoToneDown': 'دو نوای پایینرونده',
|
||
'settings.notifySoundThud': 'تالاپ',
|
||
'settings.skills': 'مهارتها',
|
||
'settings.skillsHint': 'مهارتهای کاربردی که عامل میتواند در حین یک وظیفه فراخوانی کند',
|
||
'settings.skillsNew': 'مهارت جدید',
|
||
'settings.skillsEmpty': 'یک مهارت را از سمت چپ انتخاب کنید یا یکی بسازید.',
|
||
'settings.skillsEdit': 'ویرایش',
|
||
'settings.skillsDelete': 'حذف',
|
||
'settings.skillsDeleteConfirm': 'تأیید حذف',
|
||
'settings.skillsName': 'نام',
|
||
'settings.skillsTriggers': 'محرکها (با کاما یا خط جدید جدا شوند)',
|
||
'settings.skillsDescription': 'توضیحات',
|
||
'settings.skillsBody': 'متن SKILL.md',
|
||
'settings.skillsCreate': 'ایجاد',
|
||
'settings.skillsSave': 'ذخیره',
|
||
'settings.skillsSaving': 'در حال ذخیره…',
|
||
'settings.skillsFiles': 'فایلها',
|
||
'settings.skillsNoFiles': 'هیچ فایلی در این پوشه مهارت نیست.',
|
||
'settings.skillsNameRequired': 'نام مهارت الزامی است.',
|
||
'settings.skillsBodyRequired': 'محتوای مهارت الزامی است.',
|
||
'settings.designSystems': 'سیستمهای طراحی',
|
||
'settings.designSystemsHint': 'سیستمهای طراحی موجود را مرور و فعال کنید',
|
||
'settings.designSystemsInstalled': 'نصبشده',
|
||
'settings.designSystemsAdd': 'افزودن سیستم طراحی',
|
||
'settings.designSystemsHiddenCount': '{count} مورد از گالری خانه پنهان شده',
|
||
'settings.designSystemsShowAll': 'نمایش همه',
|
||
'settings.designSystemsShowHidden': 'نمایش پنهانها',
|
||
'settings.designSystemsSource': 'منبع',
|
||
'settings.designSystemsSourceLocal': 'محلی',
|
||
'settings.designSystemsSourceGithub': 'GitHub',
|
||
'settings.designSystemsStructure': 'ساختار',
|
||
'settings.designSystemsModeHybrid': 'ترکیبی',
|
||
'settings.designSystemsModeNormalized': 'نرمالشده',
|
||
'settings.designSystemsModeVerbatim': 'بدون تغییر',
|
||
'settings.designSystemsCraft': 'Craft',
|
||
'settings.designSystemsCraftColor': 'رنگ',
|
||
'settings.designSystemsCraftAccessibility': 'دسترسپذیری',
|
||
'settings.designSystemsGithubUrl': 'نشانی GitHub',
|
||
'settings.designSystemsProjectPath': 'مسیر پروژه',
|
||
'settings.designSystemsImportGithub': 'درونریزی از GitHub',
|
||
'settings.designSystemsImportProject': 'درونریزی از پروژه',
|
||
'settings.designSystemsImportedStatus': '{title} درونریزی شد',
|
||
'settings.designSystemsViewImported': 'مشاهده سیستم طراحی درونریزیشده',
|
||
'settings.designSystemsCategory': 'دستهبندی',
|
||
'settings.designSystemsAllCategories': 'همه دستهبندیها',
|
||
'settings.designSystemsShowInHomeGallery': 'نمایش در گالری خانه',
|
||
'settings.librarySkills': 'مهارتها',
|
||
'settings.libraryDesignSystems': 'سیستمهای طراحی',
|
||
'settings.librarySearch': 'جستجو...',
|
||
'settings.libraryAll': 'همه',
|
||
'settings.libraryPreview': 'پیشنمایش',
|
||
'settings.libraryPreviewClose': 'بستن',
|
||
'settings.libraryLoading': 'در حال بارگذاری...',
|
||
'settings.libraryNoResults': 'هیچ موردی با جستجوی شما مطابقت ندارد.',
|
||
'settings.libraryEnabled': 'فعال',
|
||
'settings.libraryDisabled': 'غیرفعال',
|
||
'settings.connectorsNavHint': 'اتصالهای سیستمهای خارجی',
|
||
'settings.connectorsHint': 'تنظیمات کانکتورها و ارائهدهندگان ابزار را برای این دستگاه مدیریت کنید.',
|
||
'settings.connectorsComposioApiKey': 'کلید API کامپوزیو',
|
||
'settings.connectorsSavedTitle': 'در daemon محلی ذخیره شد',
|
||
'settings.connectorsSavedWithTail': 'ذخیره شد · ••••{tail}',
|
||
'settings.connectorsSaved': 'ذخیره شد',
|
||
'settings.connectorsGetApiKey': 'دریافت کلید API',
|
||
'settings.connectorsReplaceKeyPlaceholder': 'برای جایگزینی کلید ذخیرهشده، کلید جدید را جایگذاری کنید',
|
||
'settings.connectorsApiKeyPlaceholder': 'کلید API کامپوزیو را جایگذاری کنید',
|
||
'settings.connectorsClear': 'پاک کردن',
|
||
'settings.connectorsClearConfirmTitle': 'کلید API ذخیرهشدهٔ Composio پاک شود؟',
|
||
'settings.connectorsClearConfirmBody': 'حذف کلید همهٔ کانکتورهای Composio متصل به این فضای کاری را قطع میکند. حسابهای متصل، مجوزهای OAuth و دسترسی ابزارها همگی حذف خواهند شد.',
|
||
'settings.connectorsClearConfirmContinue': 'ادامه',
|
||
'settings.connectorsClearFinalTitle': 'این کار همهٔ کانکتورها را قطع میکند',
|
||
'settings.connectorsClearFinalBody': 'بازگشتی وجود ندارد. پس از چسباندن کلید جدید باید هر ادغام را از ابتدا دوباره متصل کنید.',
|
||
'settings.connectorsClearFinalConfirm': 'حذف کلید و قطع اتصال',
|
||
'settings.connectorsClearArming': 'یک لحظه\u2026',
|
||
'settings.connectorsClearCancel': 'انصراف',
|
||
'settings.connectorsSaveKey': "ذخیره کلید",
|
||
'settings.connectorsSaveKeyTitle': "ارسال این کلید به daemon محلی",
|
||
'settings.connectorsKeySaving': "در حال ذخیره…",
|
||
'settings.connectorsKeySaved': "ذخیره شد ✓",
|
||
'settings.connectorsKeyError': "ذخیره کلید ممکن نشد. بررسی کنید daemon محلی در حال اجراست و دوباره تلاش کنید.",
|
||
'settings.connectorsHelpSaved': 'کلید شما کاتالوگ پایین را باز میکند و در daemon محلی میماند. برای جایگزینی، کلید جدیدی جایگذاری کنید یا برای حذف، پاک کنید.',
|
||
'settings.connectorsHelpUnsaved': "تغییرات ذخیرهنشده — برای ذخیرهٔ این اعتبارنامه در daemon محلی و باز کردن کاتالوگ پایین، روی «ذخیره کلید» بزنید.",
|
||
'settings.connectorsHelpEmpty': 'برای باز کردن کاتالوگ پایین، یک کلید اضافه کنید. کلیدها بهصورت محلی در daemon ذخیره میشوند و هرگز از طریق متغیرهای محیطی ارسال نمیشوند.',
|
||
'settings.connectorsLoadingSavedKey': 'در حال بررسی کلید ذخیرهشده در daemon محلی…',
|
||
'settings.autosaveSaving': "در حال ذخیره…",
|
||
'settings.autosaveSaved': "همهٔ تغییرات ذخیره شد",
|
||
'settings.autosaveError': "تغییرات ذخیره نشد. ممکن است daemon محلی آفلاین باشد.",
|
||
'settings.libraryToggleLabel': 'تغییر وضعیت',
|
||
// Memory (auto-extracted personalization saved as on-disk markdown)
|
||
'settings.memory': 'Memory',
|
||
'settings.memoryHint': 'Personal facts auto-extracted from chats',
|
||
'settings.memoryDescription': 'Auto-extracted facts about you and your preferences. Saved as Markdown files and folded into every chat.',
|
||
'settings.memoryEnabled': 'Enabled',
|
||
'settings.memoryDisabled': 'Disabled',
|
||
'settings.memoryEnableLabel': 'Enable memory injection',
|
||
'settings.memoryDisabledBanner': 'Memory is currently OFF. Existing facts are preserved on disk but will not be folded into new chats and new turns will not extract anything new.',
|
||
'settings.memoryNew': 'New memory',
|
||
'settings.memoryEdit': 'Edit',
|
||
'settings.memoryDelete': 'Delete',
|
||
'settings.memoryPreview': 'Preview',
|
||
'settings.memoryEmpty': 'No memory yet.',
|
||
'settings.memoryEmptyHintZh': '记住: 用户偏好深色主题',
|
||
'settings.memoryEmptyHintEn': 'I prefer dark mode',
|
||
'settings.memoryName': 'Name',
|
||
'settings.memoryDesc': 'One-line description',
|
||
'settings.memoryBody': 'Memory body (Markdown supported)',
|
||
'settings.memoryBodyHint': 'Lead with the rule itself; add Why and How to apply lines.',
|
||
'settings.memoryStartersLabel': 'Need a starting point? Click to fill the form:',
|
||
'settings.memoryStarterUserName': 'My role',
|
||
'settings.memoryStarterUserDesc': 'I am a frontend engineer working on a SaaS design tool',
|
||
'settings.memoryStarterUserBody': '- Role: senior frontend engineer\n- Stack: React, TypeScript, Vite\n- Domain: design / collaboration tools\n- Timezone: GMT+8 (Asia/Shanghai)\n\nWhen to apply: any chat — frame examples around web frontend.',
|
||
'settings.memoryStarterFeedbackName': 'UI preferences',
|
||
'settings.memoryStarterFeedbackDesc': 'Dark mode, large body text, low information density',
|
||
'settings.memoryStarterFeedbackBody': '- Theme: dark by default\n- Body text: ≥ 18px\n- Information density: prefer whitespace, fewer items per screen\n\nWhy: less eye strain during long sessions.\nWhen to apply: whenever you generate UI, web pages, or slides.',
|
||
'settings.memoryStarterProjectName': 'Current project',
|
||
'settings.memoryStarterProjectDesc': 'Open Design v0.5 — chat-driven design editor',
|
||
'settings.memoryStarterProjectBody': '- Goal: ship the chat-driven editor this quarter\n- Priorities: streaming render, local multimodal, offline-first\n- Stack: Next.js 16, Express daemon, SQLite\n\nWhen to apply: in any conversation about this project.',
|
||
'settings.memorySaveHint': 'Not auto-saved — click Create / Save to apply.',
|
||
'settings.memoryIndexSaveHint': 'Edits to the index are not auto-saved — click Save index to apply.',
|
||
'settings.memoryIndexUnsaved': 'Unsaved changes',
|
||
'settings.memoryFlashCreated': '✓ Memory created',
|
||
'settings.memoryFlashSaved': '✓ Memory saved',
|
||
'settings.memoryFlashDeleted': '✓ Memory deleted',
|
||
'settings.memoryFlashIndexSaved': '✓ Index saved',
|
||
'settings.memoryFlashPathCopied': '✓ مسیر کپی شد',
|
||
'settings.memoryNameLabel': 'Title',
|
||
'settings.memoryTypeLabel': 'Type',
|
||
'settings.memoryDescLabel': 'Description',
|
||
'settings.memoryBodyLabel': 'Content',
|
||
'settings.memoryTypeUser': 'User',
|
||
'settings.memoryTypeFeedback': 'Feedback',
|
||
'settings.memoryTypeProject': 'Project',
|
||
'settings.memoryTypeReference': 'Reference',
|
||
'settings.memoryIndex': 'MEMORY.md (index)',
|
||
'settings.memoryIndexSave': 'Save index',
|
||
'settings.memoryIndexReset': 'Reset',
|
||
'settings.memoryToastChanged': 'Memory updated',
|
||
'settings.memoryToastClickHint': 'مشاهده',
|
||
'settings.memoryAll': 'All',
|
||
'settings.memoryExtractions': 'Extraction history',
|
||
'settings.memoryExtractionsHint': 'Recent LLM-backed extraction attempts. Heuristic regex extraction always runs first; LLM extraction runs in the background after each turn.',
|
||
'settings.memoryExtractionsEmpty': 'No extractions yet. The next chat turn will populate this list.',
|
||
'settings.memoryExtractionsRefresh': 'Refresh',
|
||
'settings.memoryExtractionsRefreshing': 'Refreshing…',
|
||
'settings.memoryExtractionPhaseRunning': 'Running…',
|
||
'settings.memoryExtractionPhaseSuccess': 'Success',
|
||
'settings.memoryExtractionPhaseSkipped': 'Skipped',
|
||
'settings.memoryExtractionPhaseFailed': 'Failed',
|
||
'settings.memoryExtractionSkipNoProvider': 'No API key configured for LLM memory extraction.',
|
||
'settings.memoryExtractionSkipDisabled': 'Memory is disabled.',
|
||
'settings.memoryExtractionSkipEmpty': 'Empty user message — nothing to extract.',
|
||
'settings.memoryExtractionSkipNoMatch': 'No regex pattern matched this turn.',
|
||
'settings.memoryExtractionKindHeuristic': 'regex',
|
||
'settings.memoryExtractionKindLlm': 'LLM',
|
||
'settings.memoryExtractionProviderEnv': 'env',
|
||
'settings.memoryExtractionProviderMediaConfig': 'media settings',
|
||
'settings.memoryExtractionProposed': 'proposed',
|
||
'settings.memoryExtractionWritten': 'written',
|
||
'settings.memoryExtractionDuration': 'in',
|
||
'settings.memoryNoProviderBannerTitle': 'LLM memory extraction is not running',
|
||
'settings.memoryNoProviderBannerBody': 'No API key found for the memory extractor. Add an OpenAI key under Media providers, or set ANTHROPIC_API_KEY / OPENAI_API_KEY in the environment, to enable LLM-driven extraction. Heuristic regex extraction is still active.',
|
||
'settings.memoryExtractionProviderOverride': 'memory settings',
|
||
'settings.memoryExtractionDelete': 'Delete',
|
||
'settings.memoryExtractionDeleteConfirm': 'Delete this extraction history item? This cannot be undone.',
|
||
'settings.memoryExtractionsClear': 'Clear',
|
||
'settings.memoryExtractionsClearTitle': 'Clear all extraction history',
|
||
'settings.libraryInstall': 'نصب',
|
||
'settings.libraryInstallGithub': 'GitHub',
|
||
'settings.libraryInstallLocal': 'مسیر محلی',
|
||
'settings.libraryInstallUrl': 'https://github.com/owner/repo',
|
||
'settings.libraryInstallPath': '/path/to/skill-folder',
|
||
'settings.libraryInstallButton': 'نصب',
|
||
'settings.libraryUninstall': 'حذف',
|
||
'settings.libraryBuiltIn': 'داخلی',
|
||
'settings.libraryInstalled': 'نصب شده',
|
||
'notify.successTitle': 'وظیفه تکمیل شد',
|
||
'notify.failureTitle': 'وظیفه ناموفق بود',
|
||
'notify.successBody': 'یک نوبت به پایان رسید.',
|
||
'notify.failureBody': 'وظیفه با خطا پایان یافت.',
|
||
'updater.available': 'بهروزرسانی موجود است',
|
||
'updater.availableBody': 'Open Design {version} موجود است. پیش از باز شدن نصبکننده دانلود میشود.',
|
||
'updater.checking': 'در حال بررسی بهروزرسانیها',
|
||
'updater.download': 'دانلود بهروزرسانی',
|
||
'updater.downloading': 'در حال دانلود بهروزرسانی',
|
||
'updater.downloadingPercent': 'در حال دانلود بهروزرسانی {percent}%',
|
||
'updater.done': 'انجام شد',
|
||
'updater.failed': 'بهروزرسانی ناموفق بود',
|
||
'updater.installerOpenBody': 'نصبکننده باز است. Open Design در حال بسته شدن است تا بتوانید بهروزرسانی را کامل کنید.',
|
||
'updater.installerOpened': 'نصبکننده باز شد',
|
||
'updater.later': 'بعداً',
|
||
'updater.openFailedFallback': 'نصبکننده باز نشد.',
|
||
'updater.openInstaller': 'نصب بهروزرسانی',
|
||
'updater.opening': 'در حال باز کردن نصبکننده...',
|
||
'updater.quitButton': 'بستن Open Design',
|
||
'updater.quitFailedBody': 'نصبکننده باز است، اما Open Design بسته نشد. پیش از جایگزینی برنامه، Open Design را ببندید.',
|
||
'updater.quitFailedTitle': 'امکان بستن نیست',
|
||
'updater.quitting': 'در حال بستن...',
|
||
'updater.ready': 'بهروزرسانی آماده است',
|
||
'updater.readyGeneric': 'نسخه جدید آماده است. Open Design بسته میشود و نصبکننده را باز میکند.',
|
||
'updater.readyVersion': 'Open Design {version} آماده است. Open Design بسته میشود و نصبکننده را باز میکند.',
|
||
'updater.upToDate': 'شما هماکنون آخرین نسخه را دارید.',
|
||
'settings.memoryModelInlineLabel': 'Memory model',
|
||
'settings.memoryModelInlineSameAsChat': 'Same as chat',
|
||
'settings.memoryModelInlineSameAsChatWithModel': 'Same as chat ({model})',
|
||
'settings.memoryModelInlineSameAsChatWithProvider': 'Same as chat ({provider})',
|
||
'settings.memoryModelInlineHintCli': 'Optional. The memory extractor uses an env-var or media-providers API key on this provider; pinning a model here just overrides the auto-pick.',
|
||
'settings.memoryModelInlineHintCliConstrained': 'Optional. Memory will call {provider}; needs an env-var or media-providers API key for that provider, or pick a model below to override.',
|
||
'settings.memoryModelInlineHintByok': 'Optional. Reuses your chat API key on the same provider — picking a different (usually cheaper) model only changes the request body.',
|
||
'settings.memoryModelInlineFlashSaved': 'Saved',
|
||
'settings.memoryModelInlineFlashCleared': 'Cleared',
|
||
'settings.orbit.eyebrow': 'اتوماسیون',
|
||
'settings.orbit.title': 'Orbit',
|
||
'settings.orbit.navHint': 'خلاصهٔ روزانهٔ کانکتورها',
|
||
'settings.orbit.lede': 'فعالیت کانکتورها را طبق زمانبندی جمعآوری کن و نتیجه را بهصورت یک live artifact قابل تازهسازی منتشر کن.',
|
||
'settings.orbit.statusOnTitle': 'اجرای روزانهٔ زمانبندیشده روشن است',
|
||
'settings.orbit.statusOffTitle': 'اجرای روزانهٔ زمانبندیشده خاموش است',
|
||
'settings.orbit.statusActive': 'فعال',
|
||
'settings.orbit.statusOff': 'خاموش',
|
||
'settings.orbit.runTitle': 'یک اجرای Orbit را شروع کن و گفتوگوی زنده را باز کن',
|
||
'settings.orbit.running': 'در حال اجرا…',
|
||
'settings.orbit.runOpen': 'همین حالا اجرا کن',
|
||
'settings.orbit.dailySummaryTitle': 'خلاصهٔ روزانه',
|
||
'settings.orbit.dailySummarySub': 'روزی یکبار در زمان محلی زمانبندیشده اجرا میشود.',
|
||
'settings.orbit.on': 'روشن',
|
||
'settings.orbit.off': 'خاموش',
|
||
'settings.orbit.runTimeTitle': 'زمان اجرا',
|
||
'settings.orbit.runTimeSub': 'پیشفرض 08:00. برای اعمال در زمانبندی daemon ذخیره کنید.',
|
||
'settings.orbit.runTimeAria': 'زمان اجرای روزانهٔ Orbit',
|
||
'settings.orbit.nextRun': 'اجرای بعدی',
|
||
'settings.orbit.nextRunScheduledAfterSave': 'پس از ذخیره زمانبندی میشود',
|
||
'settings.orbit.schedule': 'زمانبندی',
|
||
'settings.orbit.pausedManualOnly': 'متوقف — فقط اجرای دستی',
|
||
'settings.orbit.templateTitle': 'قالب prompt',
|
||
'settings.orbit.templateMissing': 'قالب {id} نصب نشده است.',
|
||
'settings.orbit.templateMissingOption': '{id} (موجود نیست)',
|
||
'settings.orbit.templateMissingInstall': 'برای هدایت prompt یک skill مربوط به Orbit نصب کنید.',
|
||
'settings.orbit.templateMissingPickAnother': 'از فهرست، قالب دیگری انتخاب کنید.',
|
||
'settings.orbit.templateResetTitle': 'بازنشانی به {id}',
|
||
'settings.orbit.templateReset': 'بازنشانی',
|
||
'settings.orbit.templateHelp': 'Orbit را با یک skill هدایت کنید — prompt نمونهٔ قالب انتخابشده در هر اجرای Orbit وارد میشود تا خلاصهها شکل همان قالب را دنبال کنند.',
|
||
'settings.orbit.templateAria': 'قالب prompt مربوط به Orbit',
|
||
'settings.orbit.templatesLoading': 'در حال بارگذاری قالبها…',
|
||
'settings.orbit.templatesOptgroup': 'قالبهای skills مربوط به Orbit',
|
||
'settings.orbit.lastRun': 'آخرین اجرا',
|
||
'settings.orbit.triggerManual': 'دستی',
|
||
'settings.orbit.triggerScheduled': 'زمانبندیشده',
|
||
'settings.orbit.meterAria': '{succeeded} موفق، {skipped} رد شده، {failed} ناموفق از {checked} بررسیشده',
|
||
'settings.orbit.countChecked': 'بررسیشده',
|
||
'settings.orbit.countSucceeded': 'موفق',
|
||
'settings.orbit.countSkipped': 'رد شده',
|
||
'settings.orbit.countFailed': 'ناموفق',
|
||
'settings.orbit.runError': 'اجرای Orbit ممکن نبود. مطمئن شوید daemon محلی در حال اجراست و کانکتورها پیکربندی شدهاند.',
|
||
'settings.orbit.gateAriaLabel': "برای استفاده از Orbit به اتصالدهنده نیاز است",
|
||
'settings.orbit.gateEyebrow': "پیکربندی لازم است",
|
||
'settings.orbit.gateTitle': "یک ابزار را متصل کنید تا Orbit کار کند",
|
||
'settings.orbit.gateBody': "Orbit فعالیت اتصالدهندههای شما را خلاصه میکند. هنوز چیزی متصل نکردهاید — حداقل یک یکپارچهسازی اضافه کنید تا Orbit چیزی برای گزارش داشته باشد.",
|
||
'settings.orbit.gateBodyNoKey': "Orbit فعالیت اتصالدهندهها را خلاصه میکند و اتصالدهندهها از طریق Composio اجرا میشوند. یک کلید API از Composio در بخش اتصالدهندهها اضافه کنید تا کاتالوگ باز شود و اولین یکپارچهسازی خود را انتخاب کنید.",
|
||
'settings.orbit.gateAction': "باز کردن اتصالدهندهها",
|
||
'settings.orbit.gateActionNoKey': "پیکربندی Composio",
|
||
'settings.orbit.gateLoading': "در حال بررسی اتصالدهندهها…",
|
||
'settings.orbit.controlsLockedBadge': "قفل شده",
|
||
'settings.orbit.controlsLockedHint': "برای باز کردن زمانبندی و قالب Orbit یک ابزار را متصل کنید.",
|
||
'settings.orbit.artifactKickerLive': 'live artifact',
|
||
'settings.orbit.artifactKickerLegacy': 'خلاصهٔ قدیمی',
|
||
'settings.orbit.artifactTitle': 'خلاصهٔ روزانهٔ فعالیت Orbit',
|
||
'settings.orbit.artifactMetaLive': 'artifact HTML قابل تازهسازی که از فعالیت کانکتورها ساخته شده است.',
|
||
'settings.orbit.artifactMetaLegacy': 'پیش از فعال شدن پشتیبانی live artifact تولید شده — برای انتشار یکی، Orbit را دوباره اجرا کنید.',
|
||
'settings.orbit.copyMarkdownTitle': 'کپی خلاصهٔ Markdown در کلیپبورد',
|
||
'settings.orbit.copied': 'کپی شد',
|
||
'settings.orbit.copy': 'کپی',
|
||
'settings.orbit.openArtifact': 'باز کردن artifact',
|
||
'settings.orbit.sourceMarkdown': 'Markdown منبع',
|
||
'liveArtifact.viewer.tabPreview': 'پیشنمایش',
|
||
'liveArtifact.viewer.tabCode': 'کد',
|
||
'liveArtifact.viewer.tabData': 'دادهها',
|
||
'liveArtifact.viewer.tabRefreshHistory': 'تاریخچهٔ تازهسازی',
|
||
'liveArtifact.viewer.dataEmpty': 'کش data.json در دسترس نیست.',
|
||
'liveArtifact.viewer.code.templateHeading': 'HTML قالب',
|
||
'liveArtifact.viewer.code.renderedHeading': 'HTML رندرشده',
|
||
'liveArtifact.viewer.code.templateHelp': 'قالب قابل ویرایشی که با data.json برای تولید پیشنمایش استفاده میشود.',
|
||
'liveArtifact.viewer.code.renderedHelp': 'index.html تولیدشدهای که اکنون توسط پیشنمایش بارگذاری شده است.',
|
||
'liveArtifact.viewer.code.variantAria': 'گونهٔ کد',
|
||
'liveArtifact.viewer.code.variantTemplate': 'قالب',
|
||
'liveArtifact.viewer.code.variantRendered': 'رندرشده',
|
||
'liveArtifact.viewer.code.loading': 'در حال بارگذاری کد…',
|
||
'liveArtifact.viewer.code.unavailable': 'کد هنوز در دسترس نیست.',
|
||
'liveArtifact.viewer.code.empty': 'این فایل کد خالی است.',
|
||
// Diagnostics export
|
||
'diagnostics.exportTitle': 'صادر کردن تشخیص',
|
||
'diagnostics.exportButton': 'صادر کردن تشخیص',
|
||
'diagnostics.exportHint': 'گزارشهای اخیر برنامه و اطلاعات دستگاه را در یک فایل zip بستهبندی میکند تا برای تیم ارسال شود.',
|
||
'diagnostics.exporting': 'در حال صادر کردن…',
|
||
'diagnostics.exportSuccess': 'تشخیص در {path} ذخیره شد',
|
||
'diagnostics.exportFailed': 'صادر کردن تشخیص ناموفق بود: {message}',
|
||
};
|