Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions locales/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ ja:
flag: 🇯🇵
hello: こんにちは

uz:
name: Uzbek
nativeName: O'zbek
flag: 🇺🇿
hello: Salom

pt-BR:
name: Portuguese (Brazil)
nativeName: Português (Brasil)
Expand Down
116 changes: 116 additions & 0 deletions locales/uz/account.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# Account translations - Manage Account modal and Change Email flow
# UI Areas: Manage Account modal, Change Email modal (stepper flow)

account:
# ========================================
# Manage Account modal - Account settings overview
# ========================================
manage:
title: Hisob # Modal main title
loadingInfo: Hisob ma'lumotlari yuklanmoqda... # Loading spinner text
displayName: Ko'rsatiladigan ism # Label for display name field
email: Elektron pochta # Label for email field

# Connected accounts section
connectedAccounts:
title: Ulangan hisoblar # Section title
loading: Ulangan hisoblar yuklanmoqda... # Loading text for connected accounts
noAccounts: Ulangan hisoblar yo'q # Empty state text
loggedInWith: "{provider} orqali tizimga kiritilgan" # Provider badge label (e.g., "Logged in with Google")

# Manage account section
manageTitle: Hisobni boshqarish # Section title
changeEmail: Elektron pochta manzilini o'zgartirish # Change email button label
changeEmailInProgress: Sizda elektron pochtani o'zgartirish jarayoni davom etmoqda, iltimos kuting # Disabled message when email change is in progress
changeEmailFailed: "Oxirgi marta elektron pochtani o'zgartirish amalga oshmadi, iltimos, dbdiagram@holistics.io orqali qo'llab-quvvatlash xizmati bilan bog'laning" # Disabled message when last email change failed

# Account removal
removal:
removeAccount: Hisobni o'chirish... # Remove account button label
cancelRequest: O'chirish so'rovini bekor qilish # Cancel removal request button label
cannotBeUndone: Bu amalni ortga qaytarib bo'lmaydi! # Warning text when no removal request
removedAfter: "Sizning hisobingiz {time} o'tgach o'chiriladi." # Removal countdown text
aFewHours: bir necha soat # Time label when less than 1 day remaining
aDay: bir kun # Time label when exactly 1 day remaining
days: "{count} kun" # Time label for multiple days remaining
workspaceDeletionWarning: "Sizda o'chiriladigan {count} ta shaxsiy ish maydoni(workspace) mavjud:" # Warning about workspaces to be deleted
confirmTitle: Ushbu hisob o'chirilsinmi? # Confirmation modal title
cancelSuccess: O'chirish so'rovi muvaffaqiyatli bekor qilindi! # Success toast after canceling
submitSuccess: O'chirish so'rovi muvaffaqiyatli yaratildi! # Success toast after submitting

errors:
generic: Xatolik yuz berdi, iltimos, dbdiagram@holistics.io orqali qo'llab-quvvatlash xizmati bilan bog'laning # Generic error toast

# ========================================
# Change Email modal - 4-step email change flow
# ========================================
changeEmail:
title: Elektron pochtani o'zgartirish # Modal title

# Step labels (stepper header)
steps:
verifyCurrentEmail: Joriy elektron pochtani tasdiqlash # Step 1 title
currentEmailVerified: Joriy elektron pochta tasdiqlandi # Step 1 completed label
enterNewEmail: Yangi elektron pochtani kiritish # Step 2 title
verifyNewEmail: Yangi elektron pochtani tasdiqlash # Step 3 title
newEmailVerified: Yangi elektron pochta tasdiqlandi # Step 3 completed label
confirmChange: O'zgarishni tasdiqlash # Step 4 title
emailChanged: Elektron pochta o'zgartirildi # Step 4 completed label

# Step 1: Verify current email
verifyCurrent:
description: Xavfsizlik maqsadida, uni o'zgartirish uchun joriy elektron pochtangizni OTP orqali tasdiqlashingiz kerak. # Step 1 description
currentEmailLabel: "Joriy elektron pochta:" # Label before current email address
sendCode: Kodni yuborish # Send OTP button
otpSentMessage: Pochtangizga 6 xonali kod yubordik. Kodning amal qilish muddati 4 daqiqa. # OTP sent info text
verificationCode: Tasdiqlash kodi # OTP input label
resendCode: Kodni qayta yuborish # Resend button label
resendCodeCooldown: "Kodni qayta yuborish ({seconds}s)" # Resend button with cooldown timer
verify: Tasdiqlash # Verify OTP button

# Step 2: Enter new email
enterNew:
description: "Yangi elektron pochta manzilingizni kiriting. Bu sizniki ekanligini tasdiqlash uchun tasdiqlash kodi yuboramiz." # Step 2 description
newEmailLabel: Yangi elektron pochta manzili # New email input label
placeholder: Yangi elektron pochtani kiriting # New email input placeholder
sendCode: Kodni yuborish # Send OTP button

# Step 3: Verify new email
verifyNew:
otpSentTo: Biz 6 xonali kodni yubordik # Text before new email address
codeExpires: Kodning amal qilish muddati 4 daqiqa. # OTP expiry info
verificationCode: Tasdiqlash kodi # OTP input label
resendCode: Kodni qayta yuborish # Resend button label
resendCodeCooldown: "Kodni qayta yuborish ({seconds}s)" # Resend button with cooldown timer
back: Orqaga # Back button to return to step 2
verify: Tasdiqlash # Verify OTP button

# Step 4: Confirm change
confirm:
description: "Siz elektron pochta manzilingizni o'zgartirmoqchisiz:" # Step 4 description
from: "dan:" # Label for current email in summary
to: "ga:" # Label for new email in summary
pleaseNote: "Iltimos, e'tibor bering:" # Notes section title
noteNotifications: Yangi elektron pochta kelajakda barcha hisob xabarnomalarini (to'lovlar, taklifnomalar va boshqalar) oladi. # Note about notifications
noteLogout: "Tizimdan avtomatik ravishda chiqarilmaysiz. Iltimos, boshqa qurilmalardan tizimdan o'zingiz chiqing." # Note about logout
noteIrreversible: Bu amalni ortga qaytarib bo'lmaydi. # Note about irreversibility
confirmButton: O'zgarishni tasdiqlash # Confirm change button

# Polling notifications for email change propagation
polling:
inProgressTitle: Elektron pochtangiz xizmatlar bo'ylab yangilanmoqda... # Notification title while syncing
inProgressText: Bu bir necha daqiqa vaqt olishi mumkin. Siz hali ham dasturdan foydalanishda davom etishingiz mumkin. # Notification body while syncing
completedText: Elektron pochta barcha xizmatlar bo'ylab muvaffaqiyatli yangilandi! # Success notification
failedTitle: Ba'zi xizmatlar yangi elektron pochtangizni sinxronlashtira olmadi. # Warning notification title
failedText: Elektron pochtangiz o'zgartirildi, lekin ba'zi xizmatlar hali ham eskisini ko'rsatishi mumkin. Iltimos, dbdiagram@holistics.io orqali qo'llab-quvvatlash xizmatiga murojaat qiling. # Warning notification body

# Error messages
errors:
invalidEmail: Iltimos, yaroqli elektron pochta manzilini kiriting # Invalid email format
incorrectCode: Siz kiritgan kod noto'g'ri # Wrong OTP code
codeExpired: Tasdiqlash muddat tugagan. Iltimos, yangisini so'rang. # OTP expired
Comment thread
cto-mindset marked this conversation as resolved.
Outdated
codeAlreadyUsed: Bu kod allaqachon ishlatilgan. Iltimos, yangisini so'rang. # OTP already used
requestExpired: Tasdiqlash so'rovingizning muddati tugagan. Iltimos, yangi kod so'rang. # OTP request token expired
emailInUse: Bu elektron pochta allaqachon boshqa hisob tomonidan ishlatilmoqda # Duplicate email
verificationExpired: Tasdiqlashingiz muddati tugagan. Iltimos, boshidan boshlang. # Verification token expired
generic: Nimadir xato ketdi. Iltimos, qayta urinib ko'ring. # Fallback error
112 changes: 112 additions & 0 deletions locales/uz/ai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
# AI Assistant translations - AI panel and features
# UI Areas: Right sidebar AI panel, Welcome modal, Diff viewer

ai:
# ========================================
# AI Panel - Right sidebar chat interface
# ========================================

panel:
inputPlaceholder: Diagrammangiz haqida istalgan narsani so'rang... # Chat input placeholder (empty state)
currentChat: Joriy suhbat # Current chat section header
previousChats: Oldingi suhbatlar # Previous chats section header
noOtherChats: Boshqa suhbatlar yo'q # Empty state (no previous chats)
sendInstructions: Yuborish uchun Enter, yangi qator uchun Shift+Enter tugmasini bosing # Input hint (below chat box)
sendMessage: Xabar yuborish # Send button (tooltip)
workspaceDisabled: Ish maydoni o'chirilgan # Disabled state message (no workspace)
editPermissionRequired: Tahrirlash ruxsati kerak # Permission error message
usageLimitReached: Siz ushbu oy uchun foydalanish limitiga yetdingiz. Iltimos, qayta urinib ko'ring # Usage limit message
learnMoreAboutUsageLimits: Foydalanish limitlari haqida ko'proq bilib oling # Link text (usage limit toast)
chat: Suhbat # Chat tab label
clickToEdit: Tahrirlash uchun bosing # Editable message label
newChat: Yangi suhbat # New chat button (sidebar header)
showChatHistory: Suhbatlar tarixini ko'rsatish # Toggle button (shows chat sidebar)
hideChatHistory: Suhbatlar tarixini yashirish # Toggle button (hides chat sidebar)

# ========================================
# AI Welcome Modal - First-time user experience
# ========================================
welcome:
title: DBDiagram AI-ga xush kelibsiz # Welcome modal title
subtitle: Ma'lumotlar bazasini loyihalash uchun sizning aqlli yordamchingiz # Welcome modal subtitle

# ========================================
# AI Loading States - Message states
# ========================================
messages:
thinking: O'ylanmoqda... # Loading indicator (AI thinking)
generating: Yaratilmoqda... # Loading indicator (schema generation)
explaining: Tushuntirilmoqda... # Loading indicator (explanation)
error: Nimadir xato ketdi. Iltimos, qayta urinib ko'ring. # Error message (retryable)
rateLimit: Siz foydalanish limitiga yetdingiz. Davom etish uchun tarifni oshiring. # Rate limit message

# ========================================
# Diff Viewer - AI change comparison
# ========================================
diffViewer:
reject: Rad etish # Button (reject single change)
accept: Qabul qilish # Button (accept single change)
rejectAll: Barchasini rad etish # Button (reject all changes)
acceptAll: Barchasini qabul qilish # Button (accept all changes)

# ========================================
# Token Usage - AI usage tracking
# ========================================
tokenUsage:
used: Foydalanildi # Usage counter label (left side)
usageText: Siz foydalanish limitining {percentage} qismini ishlatdingiz # Usage progress text
tokens: tokenlar # Unit label (usage display)
learnMore: Foydalanish limitlari haqida ko'proq bilish uchun bosing # Tooltip (usage indicator)
resetOn: Yangilanish vaqti # Label (usage reset date)

# ========================================
# AI Response Details - Response metadata
# ========================================
assistant:
dbmlCode: DBML kodi # Label (code block header)
lines: qatorlar # Unit label (code lines count)

# ========================================
# AI Response Messages - Standard responses
# ========================================
responseMessages:
noExplanation: Sxema yangilandi. O'zgarishlarni ko'rib chiqish uchun farqlar ko'ruvchisini (diff viewer) tekshiring. # Message after schema update
invalidIntent: "DBDiagram AI-ga xush kelibsiz.\n\nMen sizga quyidagilarda yordam berish uchun shu yerdaman:\n\n• **DBML sxemasi dizayni** - Jadvallar, munosabatlar va ma'lumotlar bazasi tuzilmalarini yaratish va o'zgartirish\n• **Ma'lumotlar bazasining eng yaxshi amaliyotlari** - Optimal ma'lumotlar turlari, indekslar va cheklovlarni taklif qilish\n• **Sxemani optimallashtirish** - Jadvallarni guruhlar (TableGroups) bo'yicha tashkil etish, vaqt belgilarini (timestamps) qo'shish, ma'lumotlar turlarini qayta xaritalash\n• **Tezkor o'zgartirishlar** - Ma'lumotlar bazasi tizimlari o'rtasida konvertatsiya qilish (PostgreSQL, MySQL, SQL Server va hokazo.)\n\nBoshlash uchun mendan jadvallar yaratish, munosabatlar qo'shish yoki yuqoridagi tezkor amallardan birini bajarishni so'rab ko'ring!" # Help message (unrecognized command)

# ========================================
# Quick Action Titles - Action card headers
# ========================================
quickActionTitles:
createTableGroups: Jadval guruhlarini yaratish # Quick action card 1 title
addTimestampColumns: Vaqt ustunlarini (Timestamp) qo'shish # Quick action card 2 title
addRelationships: Munosabatlar qo'shish # Quick action card 3 title
addIndexes: Indekslar qo'shish # Quick action card 4 title
learnDatabaseDesign: Ma'lumotlar bazasi dizaynini o'rganish # Quick action card 5 title
cloneSlack: Slack klonini yaratish # Quick action card 6 title
documentDatabase: Hujjatlar ma'lumotlar bazasini yaratish # Quick action card 7 title
todoList: Vazifalar ro'yxatini (Todo List) yaratish # Quick action card 8 title
remapDataTypes: Ma'lumotlar turini o'zgartirish # Quick action card 9 title

# ========================================
# Quick Action Descriptions - Action card subtitles
# ========================================
quickActionDescriptions:
createTableGroups: Jadvallaringizni domeni va funksionalligi bo'yicha turli xil ranglar bilan mantiqiy guruhlarga ajrating # Card 1 description
addTimestampColumns: Audit uchun kuzatilishi kerak bo'lgan jadvallarga created_at va updated_at ustunlarini qo'shing # Card 2 description
addRelationships: Nomlash qoidalariga asoslangan holda tashqi kalit (foreign key) munosabatlarini avtomatik aniqlang va qo'shing # Card 3 description
addIndexes: Tashqi kalitlar (foreign keys) va tez-tez so'raladigan ustunlar uchun indeks bloklarini qo'shing # Card 4 description
learnDatabaseDesign: Ma'lumotlar bazasini loyihalash haqida o'rganing # Card 5 description
cloneSlack: Slack klonini yarating # Card 6 description
documentDatabase: Hujjatlarni saqlash uchun ma'lumotlar bazasini yarating # Card 7 description
todoList: Vazifalar ro'yxati dasturini yarating # Card 8 description
remapDataTypes: Ma'lumotlar turlarini maqsadli ma'lumotlar bazasi tizimiga moslashtirish uchun o'zgartiring # Card 9 description

# ========================================
# Quick Action Sub-actions - Database type selectors
# ========================================
quickActionSubActions:
postgresql: PostgreSQL # Database selector option
mysql: MySQL # Database selector option
sqlServer: SQL Server # Database selector option
sqlite: SQLite # Database selector option
oracle: Oracle # Database selector option
87 changes: 87 additions & 0 deletions locales/uz/auth.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# Authentication translations - Login, Signup, Password pages
# UI Areas: Auth pages (/login, /signup, /forgot-password)

auth:
# ========================================
# Login Page - Email/password login
# ========================================
login:
email: Elektron pochta # Email input label
loginWithGithub: GitHub orqali kirish # Social login button (GitHub)
loginWithMicrosoft: Microsoft orqali kirish # Social login button (Microsoft)

# ========================================
# OAuth Errors - OAuth flow errors
# ========================================
oauth:
authorizationError: Avtorizatsiya amalga oshmadi # OAuth error title
processing: Qayta ishlanmoqda... # Loading state (OAuth redirect)
justAMomentPleaseWait: Bir oz kuting, iltimos... # Loading message (OAuth redirect)
signedInAs: Siz tizimga kirdingiz # Session label (SSO indicator)
failedSignInGitHub: GitHub orqali kirish amalga oshmadi # Error toast (GitHub OAuth)
failedSignInMicrosoft: Microsoft orqali kirish amalga oshmadi, iltimos qayta urinib ko'ring! # Error toast (Microsoft OAuth)
Comment thread
cto-mindset marked this conversation as resolved.
Outdated

# ========================================
# Form Errors - Validation error messages
# ========================================
errors:
invalidEmail: Noto'g'ri elektron pochta manzili, iltimos qayta urinib ko'ring! # Email validation
githubPopupBlocked: GitHub orqali kirish uchun qalqib chiquvchi oynalarga ruxsat bering # Browser setting error

# ========================================
# OTP Authentication - One-time password
# ========================================
otp:
signInWithEmail: Elektron pochta orqali kirish # OTP tab label
otpSentTo: OTP yuborildi # Label (shows masked email)
wrongEmail: Noto'g'ri elektron pochta manzili? # Change email link
changeEmail: Elektron pochtani o'zgartirish # Change email button
inputEmail: Iltimos, elektron pochta manzilingizni kiriting # Email input placeholder
inputYourOtp: OTP ni kiriting # OTP input placeholder
inputOtpCode: Iltimos, elektron pochtaga yuborilgan OTP kodini kiriting # OTP help text
signInSuccess: Tizimga muvaffaqiyatli kirdingiz # Success message
didntReceiveOtp: OTP ni olmadingizmi? # Help text (resend section)
resendOtp: OTP ni qayta yuborish # Resend button
resendAfter: OTP ni {counter}s dan keyin qayta yuborishingiz mumkin # Timer label (disabled state)
submit: Yuborish # OTP submit button
sendOtpFailed: OTP yuborish amalga oshmadi, iltimos qayta urinib ko'ring! # Error toast

# ========================================
# SSO Login - Single Sign-On
# ========================================
sso:
orContinueWith: yoki quyidagilardan biri orqali davom eting # SSO divider text

# ========================================
# Embedded Portal - OAuth portal pages
# ========================================
portal:
signIn: Kirish # Button (portal embedded login)
signInWith: Kirish

# ========================================
# Additional Errors - Extra error messages
# ========================================
additional:
unknownError: Noma'lum xatolik # Fallback error
invalidOtp: Noto'g'ri OTP, iltimos qayta urinib ko'ring! # OTP validation error
cannotValidateOtp: OTP ni tasdiqlab bo'lmadi, iltimos qayta urinib ko'ring! # OTP validation failure
emailNotVerified: Elektron pochtangiz tasdiqlanmagan. Iltimos, uni Microsoft hisobida tasdiqlang. # MS email verification
cannotSignInMicrosoftSSO: Microsoft SSO orqali kirib bo'lmadi, iltimos qayta urinib ko'ring! # MS SSO error
cannotSignIn: Tizimga kirib bo'lmadi, iltimos qayta urinib ko'ring! # Generic sign-in error
failedReloadProject: Kirishdan so'ng loyihani qayta yuklab bo'lmadi. Iltimos, sahifani yangilang. # Reload error
loginError: Tizimga kirish xatosi # Generic login error
signInCancelled: Tizimga kirish bekor qilindi. Iltimos qayta urinib ko'ring. # Cancelled flow

# ========================================
# Logout Callback - Post-logout redirect
# ========================================
logoutCallback:
redirecting: Yo'naltirilmoqda... # Loading message (logout redirect)
redirectDescription: Bir necha soniya ichida dasturga yo'naltirilasiz. # Help text

popupsWarning:
title: Tizimga kirish oynasini ochib bo'lmadi
description: Tizimga kirish oynasi brauzeringiz yoki kengaytma tomonidan bloklangan bo'lishi mumkin. Iltimos, sozlamalaringizni tekshiring va qayta urinib ko'ring.
needHelp: Yordam kerakmi?
contactSupport: Qo'llab-quvvatlash xizmati bilan bog'lanish
Loading