import type { TranslationKeys } from './en'

const vi: TranslationKeys = {
  // ── Common ──
  'common.rename': 'Đổi tên',
  'common.duplicate': 'Nhân bản',
  'common.delete': 'Xoá',
  'common.cancel': 'Huỷ',
  'common.save': 'Lưu',
  'common.close': 'Đóng',
  'common.connect': 'Kết nối',
  'common.disconnect': 'Ngắt kết nối',
  'common.import': 'Nhập',
  'common.export': 'Xuất',
  'common.name': 'Tên',
  'common.untitled': 'Chưa đặt tên',
  'common.best': 'Tốt nhất',
  'common.selected': '{{count}} đã chọn',

  // ── Toolbar ──
  'toolbar.select': 'Chọn',
  'toolbar.text': 'Văn bản',
  'toolbar.frame': 'Khung',
  'toolbar.hand': 'Bàn tay',
  'toolbar.undo': 'Hoàn tác',
  'toolbar.redo': 'Làm lại',
  'toolbar.variables': 'Biến',
  'toolbar.uikitBrowser': 'Trình duyệt UIKit',

  // ── Shapes ──
  'shapes.rectangle': 'Hình chữ nhật',
  'shapes.ellipse': 'Hình elip',
  'shapes.polygon': 'Đa giác',
  'shapes.line': 'Đường thẳng',
  'shapes.icon': 'Biểu tượng',
  'shapes.importImageSvg': 'Nhập ảnh hoặc SVG\u2026',
  'shapes.pen': 'Bút vẽ',
  'shapes.shapeTools': 'Công cụ hình dạng',
  'shapes.moreShapeTools': 'Thêm công cụ hình dạng',

  // ── Top Bar ──
  'topbar.hideLayers': 'Ẩn lớp',
  'topbar.showLayers': 'Hiện lớp',
  'topbar.new': 'Tạo mới',
  'topbar.open': 'Mở',
  'topbar.save': 'Lưu',
  'topbar.importFigma': 'Nhập từ Figma',
  'topbar.codePanel': 'Mã',
  'topbar.lightMode': 'Chế độ sáng',
  'topbar.darkMode': 'Chế độ tối',
  'topbar.fullscreen': 'Toàn màn hình',
  'topbar.exitFullscreen': 'Thoát toàn màn hình',
  'topbar.edited': '— Đã chỉnh sửa',
  'topbar.agentsAndMcp': 'Agent & MCP',
  'topbar.setupAgentsMcp': 'Thiết lập Agent & MCP',
  'topbar.connected': 'đã kết nối',
  'topbar.agentStatus': '{{agents}} agent{{agentSuffix}} · {{mcp}} MCP',

  // ── Right Panel ──
  'rightPanel.design': 'Thiết kế',
  'rightPanel.code': 'Mã',
  'rightPanel.noSelection': 'Chọn một phần tử',

  // ── Pages ──
  'pages.title': 'Trang',
  'pages.addPage': 'Thêm trang',
  'pages.moveUp': 'Di chuyển lên',
  'pages.moveDown': 'Di chuyển xuống',

  // ── Status Bar ──
  'statusbar.zoomOut': 'Thu nhỏ',
  'statusbar.zoomIn': 'Phóng to',
  'statusbar.resetZoom': 'Đặt lại thu phóng',

  // ── Updater ──
  'updater.softwareUpdate': 'Cập nhật phần mềm',
  'updater.dismiss': 'Bỏ qua',
  'updater.current': 'Hiện tại',
  'updater.latest': 'Mới nhất',
  'updater.unknown': 'Không rõ',
  'updater.checking': 'Đang kiểm tra...',
  'updater.downloadProgress': 'Tiến trình tải xuống',
  'updater.checkAgain': 'Kiểm tra lại',
  'updater.restartInstall': 'Khởi động lại & Cài đặt',
  'updater.installing': 'Đang cài đặt...',
  'updater.releaseDate': 'Ngày phát hành: {{date}}',
  'updater.restartHint':
    'Khởi động lại để áp dụng bản cập nhật. Quá trình khởi động lại thường mất 10-15 giây.',
  'updater.unknownError': 'Lỗi cập nhật không xác định.',
  'updater.title.checking': 'Đang kiểm tra bản cập nhật',
  'updater.title.available': 'Đã tìm thấy bản cập nhật',
  'updater.title.downloading': 'Đang tải bản cập nhật',
  'updater.title.downloaded': 'Sẵn sàng cài đặt',
  'updater.title.error': 'Cập nhật thất bại',
  'updater.subtitle.checking': 'Đang tìm bản phát hành mới nhất...',
  'updater.subtitle.available': 'Phiên bản {{version}} đã sẵn sàng.',
  'updater.subtitle.availableGeneric': 'Đã có phiên bản mới.',
  'updater.subtitle.downloading':
    'Phiên bản {{version}} đang được tải xuống trong nền.',
  'updater.subtitle.downloadingGeneric':
    'Đang tải gói cập nhật trong nền.',
  'updater.subtitle.downloaded': 'Phiên bản {{version}} đã được tải xuống.',
  'updater.subtitle.downloadedGeneric': 'Bản cập nhật đã được tải xuống.',
  'updater.subtitle.error': 'Không thể kiểm tra hoặc tải bản cập nhật.',

  // ── Layers ──
  'layers.title': 'Lớp',
  'layers.empty': 'Chưa có lớp nào. Sử dụng thanh công cụ để vẽ hình.',

  // ── Layer Context Menu ──
  'layerMenu.groupSelection': 'Nhóm các đối tượng đã chọn',
  'layerMenu.createComponent': 'Tạo thành phần',
  'layerMenu.detachComponent': 'Tách thành phần',
  'layerMenu.detachInstance': 'Tách bản thể',
  'layerMenu.booleanUnion': 'Hợp nhất',
  'layerMenu.booleanSubtract': 'Trừ',
  'layerMenu.booleanIntersect': 'Giao nhau',
  'layerMenu.toggleLock': 'Bật/Tắt khoá',
  'layerMenu.toggleVisibility': 'Bật/Tắt hiển thị',

  // ── Property Panel ──
  'property.createComponent': 'Tạo thành phần',
  'property.detachComponent': 'Tách thành phần',
  'property.goToComponent': 'Đi đến thành phần',
  'property.detachInstance': 'Tách bản thể',

  // ── Fill ──
  'fill.title': 'Tô màu',
  'fill.solid': 'Đặc',
  'fill.linear': 'Tuyến tính',
  'fill.radial': 'Toả tròn',
  'fill.image': 'Hình ảnh',
  'fill.stops': 'Điểm dừng',
  'fill.angle': 'Góc',

  // ── Image ──
  'image.title': 'Hình ảnh',
  'image.fit': 'Chế độ vừa',
  'image.fill': 'Lấp đầy',
  'image.fitMode': 'Vừa khít',
  'image.crop': 'Cắt',
  'image.tile': 'Lát gạch',
  'image.clickToUpload': 'Nhấp để tải lên',
  'image.changeImage': 'Đổi hình ảnh',
  'image.adjustments': 'Điều chỉnh',
  'image.exposure': 'Phơi sáng',
  'image.contrast': 'Tương phản',
  'image.saturation': 'Độ bão hòa',
  'image.temperature': 'Nhiệt độ màu',
  'image.tint': 'Sắc thái',
  'image.highlights': 'Vùng sáng',
  'image.shadows': 'Vùng tối',
  'image.reset': 'Đặt lại',

  // ── Stroke ──
  'stroke.title': 'Viền',

  // ── Appearance ──
  'appearance.layer': 'Lớp',
  'appearance.opacity': 'Độ mờ',

  // ── Layout ──
  'layout.flexLayout': 'Bố cục Flex',
  'layout.freedom': 'Tự do (không bố cục)',
  'layout.vertical': 'Bố cục dọc',
  'layout.horizontal': 'Bố cục ngang',
  'layout.alignment': 'Căn chỉnh',
  'layout.gap': 'Khoảng cách',
  'layout.spaceBetween': 'Cách đều hai đầu',
  'layout.spaceAround': 'Cách đều xung quanh',
  'layout.dimensions': 'Kích thước',
  'layout.fillWidth': 'Lấp đầy chiều rộng',
  'layout.fillHeight': 'Lấp đầy chiều cao',
  'layout.hugWidth': 'Ôm chiều rộng',
  'layout.hugHeight': 'Ôm chiều cao',
  'layout.clipContent': 'Cắt nội dung',

  // ── Padding ──
  'padding.title': 'Lề trong',
  'padding.paddingMode': 'Chế độ lề trong',
  'padding.paddingValues': 'Giá trị lề trong',
  'padding.oneValue': 'Một giá trị cho tất cả các cạnh',
  'padding.horizontalVertical': 'Ngang/Dọc',
  'padding.topRightBottomLeft': 'Trên/Phải/Dưới/Trái',

  // ── Typography ──
  'text.typography': 'Kiểu chữ',
  'text.lineHeight': 'Chiều cao dòng',
  'text.letterSpacing': 'Khoảng cách chữ',
  'text.horizontal': 'Ngang',
  'text.vertical': 'Dọc',
  'text.alignLeft': 'Căn trái',
  'text.alignCenter': 'Căn giữa',
  'text.alignRight': 'Căn phải',
  'text.justify': 'Căn đều',
  'text.top': 'Trên',
  'text.middle': 'Giữa',
  'text.bottom': 'Dưới',
  'text.weight.thin': 'Mảnh',
  'text.weight.light': 'Nhẹ',
  'text.weight.regular': 'Thường',
  'text.weight.medium': 'Vừa',
  'text.weight.semibold': 'Hơi đậm',
  'text.weight.bold': 'Đậm',
  'text.weight.black': 'Rất đậm',
  'text.font.search': 'Tìm phông chữ\u2026',
  'text.font.bundled': 'Đi kèm',
  'text.font.system': 'Hệ thống',
  'text.font.loading': 'Đang tải phông chữ\u2026',
  'text.font.noResults': 'Không tìm thấy phông chữ',

  // ── Text Layout ──
  'textLayout.title': 'Bố cục',
  'textLayout.dimensions': 'Kích thước',
  'textLayout.resizing': 'Thay đổi kích thước',
  'textLayout.autoWidth': 'Tự động R',
  'textLayout.autoWidthDesc': 'Tự động chiều rộng \u2014 văn bản mở rộng theo chiều ngang',
  'textLayout.autoHeight': 'Tự động C',
  'textLayout.autoHeightDesc':
    'Tự động chiều cao \u2014 chiều rộng cố định, chiều cao tự điều chỉnh',
  'textLayout.fixed': 'Cố định',
  'textLayout.fixedDesc':
    'Kích thước cố định \u2014 cả chiều rộng và chiều cao đều cố định',
  'textLayout.fillWidth': 'Lấp đầy chiều rộng',
  'textLayout.fillHeight': 'Lấp đầy chiều cao',

  // ── Effects ──
  'effects.title': 'Hiệu ứng',
  'effects.dropShadow': 'Đổ bóng',
  'effects.blur': 'Làm mờ',
  'effects.spread': 'Lan toả',
  'effects.color': 'Màu',

  // ── Export ──
  'export.title': 'Xuất',
  'export.format': 'Định dạng',
  'export.scale': 'Tỉ lệ',
  'export.selectedOnly': 'Chỉ xuất phần đã chọn',
  'export.exportFormat': 'Xuất {{format}}',
  'export.exportLayer': 'Xuất lớp',

  // ── Polygon ──
  'polygon.sides': 'Cạnh',

  // ── Ellipse ──
  'ellipse.start': 'Bắt đầu',
  'ellipse.sweep': 'Quét',
  'ellipse.innerRadius': 'Bán kính trong',

  // ── Corner Radius ──
  'cornerRadius.title': 'Bán kính góc',

  // ── Size / Position ──
  'size.position': 'Vị trí',

  // ── Icon ──
  'icon.title': 'Biểu tượng',
  'icon.searchIcons': 'Tìm biểu tượng...',
  'icon.noIconsFound': 'Không tìm thấy biểu tượng',
  'icon.typeToSearch': 'Nhập để tìm biểu tượng Iconify',
  'icon.iconsCount': '{{count}} biểu tượng',

  // ── Variables Panel ──
  'variables.addTheme': 'Thêm giao diện',
  'variables.addVariant': 'Thêm biến thể',
  'variables.addVariable': 'Thêm biến',
  'variables.searchVariables': 'Tìm biến...',
  'variables.noMatch': 'Không có biến nào khớp với tìm kiếm',
  'variables.noDefined': 'Chưa có biến nào được định nghĩa',
  'variables.closeShortcut': 'Đóng (\u2318\u21e7V)',
  'variables.presets': 'Mẫu cài sẵn',
  'variables.savePreset': 'Lưu hiện tại làm mẫu…',
  'variables.loadPreset': 'Tải mẫu cài sẵn',
  'variables.importPreset': 'Nhập từ tệp…',
  'variables.exportPreset': 'Xuất ra tệp…',
  'variables.presetName': 'Tên mẫu',
  'variables.noPresets': 'Chưa có mẫu nào được lưu',

  // ── AI Chat ──
  'ai.newChat': 'Cuộc trò chuyện mới',
  'ai.collapse': 'Thu gọn',
  'ai.tryExample': 'Thử một ví dụ để thiết kế...',
  'ai.tipSelectElements':
    'Mẹo: Chọn các phần tử trên canvas trước khi trò chuyện để cung cấp ngữ cảnh.',
  'ai.generating': 'Đang tạo...',
  'ai.designWithAgent': 'Thiết kế với Agent...',
  'ai.attachImage': 'Đính kèm hình ảnh',
  'ai.stopGenerating': 'Dừng tạo',
  'ai.sendMessage': 'Gửi tin nhắn',
  'ai.loadingModels': 'Đang tải mô hình...',
  'ai.noModelsConnected': 'Chưa kết nối mô hình nào',
  'ai.quickAction.loginScreen': 'Thiết kế màn hình đăng nhập di động',
  'ai.quickAction.loginScreenPrompt':
    'Thiết kế màn hình đăng nhập di động hiện đại với ô nhập email, ô nhập mật khẩu, nút đăng nhập và các tuỳ chọn đăng nhập bằng mạng xã hội',
  'ai.quickAction.foodApp': 'Trang chủ ứng dụng ẩm thực',
  'ai.quickAction.foodAppPrompt':
    'Generate a well-designed food mobile app homepage',
  'ai.quickAction.bottomNav': 'Thiết kế thanh điều hướng dưới cùng',
  'ai.quickAction.bottomNavPrompt':
    'Thiết kế thanh điều hướng dưới cùng cho ứng dụng di động với 5 tab: Trang chủ, Tìm kiếm, Thêm, Tin nhắn, Hồ sơ',
  'ai.quickAction.colorPalette': 'Gợi ý bảng màu cho ứng dụng',
  'ai.quickAction.colorPalettePrompt':
    'Gợi ý bảng màu hiện đại cho ứng dụng chăm sóc thú cưng',

  // ── Code Panel ──
  'code.reactTailwind': 'React + Tailwind',
  'code.htmlCss': 'HTML + CSS',
  'code.cssVariables': 'CSS Variables',
  'code.copyClipboard': 'Sao chép vào bộ nhớ tạm',
  'code.copied': 'Đã sao chép!',
  'code.download': 'Tải xuống tệp mã',
  'code.closeCodePanel': 'Đóng bảng mã',
  'code.genCssVars': 'Đang tạo CSS variables cho toàn bộ tài liệu',
  'code.genSelected':
    'Đang tạo mã cho {{count}} phần tử đã chọn',
  'code.genDocument': 'Đang tạo mã cho toàn bộ tài liệu',
  'code.aiEnhance': 'Cải thiện bằng AI',
  'code.cancelEnhance': 'Hủy cải thiện',
  'code.resetEnhance': 'Khôi phục gốc',
  'code.enhancing': 'AI đang cải thiện mã...',
  'code.enhanced': 'Đã cải thiện bởi AI',

  // ── Save Dialog ──
  'save.saveAs': 'Lưu thành',
  'save.fileName': 'Tên tệp',

  // ── Agent Settings ──
  'agents.title': 'Thiết lập Agent & MCP',
  'agents.agentsOnCanvas': 'Agent trên Canvas',
  'agents.mcpIntegrations': 'Tích hợp MCP trong Terminal',
  'agents.transport': 'Giao thức',
  'agents.port': 'Cổng',
  'agents.mcpRestart':
    'Các tích hợp MCP sẽ có hiệu lực sau khi khởi động lại terminal.',
  'agents.modelCount': '{{count}} mô hình',
  'agents.connectionFailed': 'Kết nối thất bại',
  'agents.serverError': 'Lỗi máy chủ {{status}}',
  'agents.failedTo': 'Không thể {{action}}',
  'agents.failedToMcp': 'Không thể {{action}} máy chủ MCP',
  'agents.failedTransport': 'Không thể cập nhật giao thức',
  'agents.failedMcpTransport': 'Không thể cập nhật giao thức MCP',
  'agents.claudeCode': 'Claude Code',
  'agents.claudeModels': 'Các mô hình Claude',
  'agents.codexCli': 'Codex CLI',
  'agents.openaiModels': 'Các mô hình OpenAI',
  'agents.opencode': 'OpenCode',
  'agents.opencodeDesc': '75+ nhà cung cấp LLM',
  'agents.copilot': 'GitHub Copilot',
  'agents.copilotDesc': 'Các mô hình GitHub Copilot',
  'agents.mcpServer': 'Máy chủ MCP',
  'agents.mcpServerStart': 'Khởi động',
  'agents.mcpServerStop': 'Dừng',
  'agents.mcpServerRunning': 'Đang chạy',
  'agents.mcpServerStopped': 'Đã dừng',
  'agents.mcpLanAccess': 'Truy cập LAN',
  'agents.mcpClientConfig': 'Cấu hình client',
  'agents.stdio': 'stdio',
  'agents.http': 'http',
  'agents.stdioHttp': 'stdio + http',
  'agents.autoUpdate': 'Tự động kiểm tra cập nhật',
  'agents.notInstalled': 'Chưa cài đặt',
  'agents.install': 'Cài đặt',
  'agents.installing': 'Đang cài đặt...',
  'agents.installFailed': 'Cài đặt thất bại',
  'agents.viewDocs': 'Tài liệu',

  // ── Figma Import ──
  'figma.title': 'Nhập từ Figma',
  'figma.dropFile': 'Kéo thả tệp .fig vào đây',
  'figma.orBrowse': 'hoặc nhấn để duyệt',
  'figma.exportTip': 'Xuất từ Figma: File \u2192 Save local copy (.fig)',
  'figma.selectFigFile': 'Vui lòng chọn tệp .fig',
  'figma.noPages': 'Không tìm thấy trang nào trong tệp .fig',
  'figma.parseFailed': 'Không thể phân tích tệp .fig',
  'figma.convertFailed': 'Không thể chuyển đổi tệp Figma',
  'figma.parsing': 'Đang phân tích tệp .fig...',
  'figma.converting': 'Đang chuyển đổi các nút...',
  'figma.selectPage':
    'Tệp này có {{count}} trang. Chọn trang để nhập:',
  'figma.layers': '{{count}} lớp',
  'figma.importAll': 'Nhập tất cả các trang',
  'figma.importComplete': 'Nhập hoàn tất!',
  'figma.moreWarnings': '...và {{count}} cảnh báo khác',
  'figma.tryAgain': 'Thử lại',
  'figma.layoutMode': 'Chế độ bố cục:',
  'figma.preserveLayout': 'Giữ nguyên bố cục Figma',
  'figma.autoLayout': 'Bố cục tự động OpenPencil',
  'figma.comingSoon': 'Sắp ra mắt',

  // ── Landing Page ──
  'landing.open': 'Open',
  'landing.pencil': 'Pencil',
  'landing.tagline': 'Công cụ thiết kế vector mã nguồn mở. Thiết kế dưới dạng mã.',
  'landing.newDesign': 'Thiết kế mới',
  'landing.shortcutHint': 'Nhấn {{key1}} + {{key2}} để tạo thiết kế mới',

  // ── 404 ──
  'notFound.message': 'Không tìm thấy trang',

  // ── Component Browser ──
  'componentBrowser.title': 'Trình duyệt UIKit',
  'componentBrowser.exportKit': 'Xuất bộ kit',
  'componentBrowser.importKit': 'Nhập bộ kit',
  'componentBrowser.kit': 'Bộ kit:',
  'componentBrowser.all': 'Tất cả',
  'componentBrowser.imported': '(đã nhập)',
  'componentBrowser.components': 'thành phần',
  'componentBrowser.searchComponents': 'Tìm thành phần...',
  'componentBrowser.deleteKit': 'Xoá {{name}}',
  'componentBrowser.category.all': 'Tất cả',
  'componentBrowser.category.buttons': 'Nút',
  'componentBrowser.category.inputs': 'Ô nhập',
  'componentBrowser.category.cards': 'Thẻ',
  'componentBrowser.category.nav': 'Điều hướng',
  'componentBrowser.category.layout': 'Bố cục',
  'componentBrowser.category.feedback': 'Phản hồi',
  'componentBrowser.category.data': 'Dữ liệu',
  'componentBrowser.category.other': 'Khác',

  // ── Variable Picker ──
  'variablePicker.boundTo': 'Gắn với --{{name}}',
  'variablePicker.bindToVariable': 'Gắn với biến',
  'variablePicker.unbind': 'Huỷ gắn biến',
  'variablePicker.noVariables': 'Chưa có biến {{type}} nào được định nghĩa',
} as const

export default vi
