From 6f825bfc0aee4e45be02b742ec8b3165ea4ff5f1 Mon Sep 17 00:00:00 2001 From: itsmeakhil Date: Wed, 24 Sep 2025 13:57:17 +0530 Subject: [PATCH 01/11] Catalan --- packages/frontend-web/messages/ca/common.json | 1425 +++++++++++++++++ packages/frontend-web/middleware.ts | 2 +- 2 files changed, 1426 insertions(+), 1 deletion(-) create mode 100644 packages/frontend-web/messages/ca/common.json diff --git a/packages/frontend-web/messages/ca/common.json b/packages/frontend-web/messages/ca/common.json new file mode 100644 index 0000000..d342d8b --- /dev/null +++ b/packages/frontend-web/messages/ca/common.json @@ -0,0 +1,1425 @@ +{ + "app": { + "title": "Zecrypt", + "description": "Assegura les teves dades amb Zecrypt" + }, + "common": { + "loading": "Carregant...", + "saving": "Desant...", + "deleting": "Eliminant...", + "error": "Error", + "success": "Èxit", + "cancel": "Cancel·lar", + "add": "Afegir", + "save": "Desar", + "submitting": "Enviant...", + "try_again": "Torna a intentar", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "add_item_description": "Introdueix les dades a continuació", + "edit_item_description": "Actualitza les dades" + }, + "pagination": { + "showing_x_of_y": "Mostrant {start} - {end} de {total} elements", + "page_of": "Pàgina {currentPage} de {totalPages}", + "next": "Següent", + "previous": "Anterior" + }, + "env": { + "env_variables": "Variables d'entorn", + "manage_your_env": "Gestiona les teves variables d'entorn de forma segura", + "add_env": "Afegir variables d'entorn", + "loading_env": "Carregant variables d'entorn...", + "name": "Nom", + "env_value": "Valor", + "tags": "Etiquetes", + "created_at": "Creat el", + "actions": "Accions", + "no_env_yet": "Encara no s'han afegit variables d'entorn", + "no_matching_env": "No s'han trobat variables d'entorn coincidents", + "search_across_all_fields": "Cerca en tots els camps...", + "show_env": "Mostrar variables d'entorn", + "hide_env": "Ocultar variables d'entorn", + "copy_env": "Copiar variables d'entorn", + "env_copied": "Variables d'entorn copiades al porta-retalls", + "failed_to_copy_env": "No s'han pogut copiar les variables d'entorn al porta-retalls", + "delete_env_confirmation": "Estàs segur que vols eliminar aquestes variables d'entorn? Aquesta acció no es pot desfer.", + "showing_x_of_y": "Mostrant {start} - {end} de {total} elements", + "failed_to_decrypt": "No s'han pogut desxifrar les variables d'entorn", + "add_new_env": "Afegir noves variables d'entorn", + "add_new_env_description": "Introdueix les dades de les variables d'entorn a continuació", + "edit_env": "Editar variables d'entorn", + "edit_env_description": "Actualitza les teves variables d'entorn", + "env_name": "Nom de l'entorn", + "enter_env_name": "Introdueix el nom de l'entorn", + "enter_env_value": "Introdueix el valor de l'entorn", + "enter_env_variables": "KEY=value\nANOTHER_KEY=another_value", + "env_format_hint": "Introdueix les variables d'entorn en format KEY=value, una per línia", + "notes": "Notes", + "enter_notes": "Introdueix notes (opcional)", + "add_a_tag": "Afegir una etiqueta", + "add_tag": "Afegir etiqueta", + "press_enter_to_add": "Prem Enter per afegir una etiqueta", + "cancel": "Cancel·lar", + "add": "Afegir", + "update": "Actualitzar", + "env_added_successfully": "Variables d'entorn afegides correctament", + "env_updated_successfully": "Variables d'entorn actualitzades correctament", + "env_deleted_successfully": "Variables d'entorn eliminades correctament", + "error_adding_env": "No s'han pogut afegir les variables d'entorn", + "error_updating_env": "No s'han pogut actualitzar les variables d'entorn", + "error_deleting_env": "No s'han pogut eliminar les variables d'entorn", + "error_fetching_env": "No s'han pogut obtenir les variables d'entorn", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "no_project_selected": "No s'ha seleccionat cap projecte. Si us plau, selecciona un projecte.", + "clear_filters": "Esborrar filtres", + "decrypting": "Desxifrant variables d'entorn...", + "env_updated_description": "Les variables d'entorn han estat actualitzades.", + "env_added_description": "Les variables d'entorn han estat afegides.", + "env_already_exists": "Les variables d'entorn amb aquest nom ja existeixen.", + "date_created": "Data de creació", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "view_env_code": "Veure en l'editor de codi", + "click_to_add_env": "Fes clic per afegir variables d'entorn", + "click_to_edit_env": "Fes clic per editar variables d'entorn", + "env_hidden": "••••••••", + "copied": "Copiat" + }, + "licenses": { + "software_licenses": "Llicències de programari", + "add_license": "Afegir llicència", + "filter_by_tag": "Filtrar per etiqueta", + "all_tags": "Totes les etiquetes", + "search": "Cercar", + "loading_licenses": "Carregant llicències...", + "no_licenses_found": "No s'han trobat llicències", + "clear_filters": "Esborrar filtres", + "name": "Nom", + "software": "Programari", + "license_key": "Clau de llicència", + "expiry_date": "Data de venciment", + "tags": "Etiquetes", + "actions": "Accions", + "add_new_license": "Afegir nova llicència", + "add_new_license_description": "Introdueix les dades de la llicència de programari a continuació", + "cancel": "Cancel·lar", + "save": "Desar", + "edit_license": "Editar llicència", + "edit_license_description": "Actualitza les dades de la llicència de programari", + "update": "Actualitzar", + "delete": "Eliminar", + "license_deleted": "Llicència eliminada", + "license_deleted_description": "La llicència ha estat eliminada correctament", + "copied": "Copiat", + "field_copied": "Camp copiat al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_field": "No s'ha pogut copiar el camp al porta-retalls", + "hide_license_key": "Ocultar clau de llicència", + "show_license_key": "Mostrar clau de llicència", + "showing_results": "Mostrant {startIdx}-{endIdx} de {totalCount} resultats", + "page_of": "Pàgina {currentPage} de {totalPages}", + "expires": "Venc", + "expired": "Vençut", + "expiring_soon": "Venç aviat", + "edit": "Editar", + "enter_license_name": "Introdueix el nom de la llicència", + "enter_software_name": "Introdueix el nom del programari", + "enter_license_key": "Introdueix la clau de llicència", + "enter_notes": "Introdueix notes", + "confirm_deletion": "Confirmar eliminació", + "confirm_delete_license_description": "Estàs segur que vols eliminar aquesta llicència? Aquesta acció no es pot desfer.", + "license_added_successfully": "Llicència afegida correctament", + "failed_to_add_license": "No s'ha pogut afegir la llicència", + "invalid_input": "Entrada no vàlida", + "validation_error": "Error de validació", + "network_error": "Error de xarxa", + "error_adding_license": "Error en afegir la llicència", + "license_updated_successfully": "Llicència actualitzada correctament", + "failed_to_update_license": "No s'ha pogut actualitzar la llicència", + "license_not_found": "No s'ha trobat la llicència", + "error_updating_license": "Error en actualitzar la llicència", + "missing_auth_or_selection": "Autenticació o selecció faltant", + "license_deleted_successfully": "Llicència eliminada correctament", + "error_deleting_license": "Error en eliminar la llicència", + "error_fetching_licenses": "Error en obtenir les llicències", + "adding": "Afegint...", + "updating": "Actualitzant...", + "deleting": "Eliminant...", + "notes": "Notes", + "software_name": "Nom del programari", + "rows_per_page": "Files per pàgina", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "search_across_all_fields": "Cercar", + "update_api_key": "Actualitzar clau API", + "manage_your_software_licenses": "Gestiona les teves llicències de programari de forma segura", + "date_created": "Data de creació", + "add_a_tag": "Afegir una etiqueta" + }, + "navigation": { + "home": "Inici", + "dashboard": "Tauler de control", + "settings": "Configuració" + }, + "auth": { + "login_to_continue": "Inicia sessió per continuar", + "sign_in_with_sso": "Inicia sessió amb el teu compte d'organització", + "login": "Iniciar sessió", + "signup": "Registrar-se", + "cancel": "Cancel·lar", + "logout": "Tancar sessió", + "sign_up": "Registrar-se", + "try_again": "Torna a intentar", + "dont_have_account": "No tens compte?", + "email": "Correu electrònic", + "password": "Contrasenya", + "agreement": "En registrar-te, acceptes els nostres termes i condicions", + "terms": "Termes", + "privacy_policy": "Política de privacitat", + "terms_and_conditions": "Termes i condicions", + "service_status": "Estat del servei", + "generate_password": "Generar contrasenya", + "verification_code": "Codi de verificació", + "2fa_verify": "Verificació 2FA", + "2fa_enter_code": "Introdueix el codi de 6 dígits de la teva aplicació d'autenticació", + "2fa_placeholder": "ex: 123456", + "verify": "Verificar", + "verifying_authentication": "Verificant autenticació...", + "2fa_verification_error": "Codi de verificació no vàlid. Si us plau, torna a intentar.", + "2fa_verification_success": "Verificació 2FA exitosa", + "verifying": "Verificant 2FA...", + "authentication_error": "Error d'autenticació", + "2fa_verified": "2FA verificat", + "redirecting_to_dashboard": "Redirigint al tauler de control...", + "setup_encryption_keys": "Configurar claus de xifratge", + "encryption_setup_description": "Crea una contrasenya principal per xifrar les teves dades. Aquesta contrasenya s'utilitzarà per protegir la teva clau privada.", + "encryption_password_warning": "Recorda aquesta contrasenya amb cura! Si l'oblides, perdras l'accés a totes les teves dades xifrades.", + "encryption_password": "Contrasenya principal", + "enter_strong_password": "Introdueix una contrasenya forta", + "confirm_encryption_password": "Confirmar contrasenya principal", + "confirm_password": "Confirmar contrasenya", + "encryption_password_requirements": "La contrasenya ha de tenir almenys 8 caràcters i incloure lletres, números i caràcters especials per a la màxima seguretat.", + "generating_keys": "Generant claus...", + "setup_encryption": "Configurar xifratge", + "password_too_short": "La contrasenya és massa curta (mínim 8 caràcters)", + "passwords_dont_match": "Les contrasenyes no coincideixen", + "encryption_setup_success": "Configuració de xifratge completada", + "encryption_keys_created": "Les teves claus de xifratge han estat creades correctament", + "encryption_setup_failed": "No s'han pogut configurar les claus de xifratge", + "checking_encryption_keys": "Comprovant claus de xifratge...", + "encryption_key_check_failed": "Comprovació de clau de xifratge fallida", + "encryption_key_check_failed_desc": "No hem pogut verificar les teves claus de xifratge. Això pot ser a causa d'un problema de xarxa o claus faltants.", + "encryption_security_error": "Error de seguretat de xifratge. Si us plau, torna a iniciar sessió.", + "login_successful": "Sessió iniciada correctament", + "2fa_setup_required": "Configuració 2FA requerida", + "scan_qr_with_authenticator": "Escaneja el codi QR amb la teva aplicació d'autenticació", + "unknown_error": "S'ha produït un error desconegut", + "auth_network_error": "Error de xarxa durant l'autenticació", + "auth_process_failed": "El procés d'autenticació ha fallat", + "2fa_invalid_code": "Codi de verificació no vàlid", + "2fa_verification_failed": "La verificació ha fallat: {message}", + "copied_to_clipboard": "Copiat al porta-retalls", + "paste_in_authenticator": "Enganxa aquest codi a la teva aplicació d'autenticació", + "2fa_setup": "Configuració d'autenticació de dos factors", + "2fa_scan": "Escaneja el codi QR amb la teva aplicació d'autenticació", + "2fa_scan_difficulty": "Tens problemes per escanejar? Pots copiar la clau de configuració a continuació:", + "copy_setup_key": "Copiar clau de configuració", + "unlock_encryption": "Desbloquejar xifratge", + "enter_encryption_password": "Introdueix la teva contrasenya principal", + "enter_encryption_password_desc": "Introdueix la teva contrasenya principal per desxifrar la teva clau privada.", + "unlocking": "Desbloquejant...", + "unlock": "Desbloquejar", + "encryption_unlocked": "Xifratge desbloquejat", + "encryption_key_decrypted": "La teva clau de xifratge ha estat desxifrada correctament", + "incorrect_encryption_password": "Contrasenya principal incorrecta. Si us plau, torna a intentar.", + "multi_device_login": "Iniciar sessió des d'un dispositiu nou", + "multi_device_desc": "Estàs iniciant sessió des d'un dispositiu nou. Si us plau, introdueix la teva contrasenya principal per accedir a les teves dades xifrades.", + "authenticating": "Autenticant...", + "download_password_title": "La teva contrasenya de xifratge Zecrypt:", + "download_password_important": "IMPORTANT: Guarda aquesta contrasenya de forma segura. La necessitaràs per accedir a les teves dades xifrades.", + "download_filename": "zecrypt-encryption-password.txt" + }, + "features": { + "trial_title": "El teu gestor d'emmagatzematge segur", + "unlimited_devices": "Dispositius il·limitats — completament gratuït per sempre", + "shared_vaults": "Comparteix credencials sense esforç amb membres de l'equip - (Properament)", + "advanced_security": "Xifratge de grau militar (AES-GCM) per a una seguretat sòlida", + "security_alerts": "Alertes de violació instantànies per estar sempre un pas per davant - (Properament)", + "multi_platform": "Disponible a Mac, iOS, Windows, Android, Chrome OS i Linux - (properament)", + "organization": "Organització", + "organization_desc": "Organitza credencials en projectes per a una millor gestió i accés ràpid.", + "secure_storage": "Emmagatzematge segur", + "secure_storage_desc": "Emmagatzema totes les teves contrasenyes i dades sensibles amb xifratge de grau militar.", + "secure_password_manager": "Emmagatzematge en núvol xifrat de punt a punt" + }, + "actions": { + "add": "Afegir", + "edit": "Editar", + "delete": "Eliminar", + "cancel": "Cancel·lar", + "close": "Tancar", + "save": "Desar", + "saving": "Desant...", + "deleting": "Eliminant...", + "submit": "Enviar", + "ok": "D'acord", + "yes": "Sí", + "no": "No", + "confirm": "Confirmar", + "confirm_delete": "Confirmar eliminació", + "continue": "Continuar", + "back": "Tornar", + "next": "Següent", + "search": "Cercar", + "filter": "Filtrar", + "clear": "Esborrar", + "reset": "Restablir", + "refresh": "Actualitzar", + "upload": "Pujar", + "download": "Baixar", + "copy": "Copiar", + "paste": "Enganxar", + "cut": "Tallar", + "undo": "Desfer", + "redo": "Refer", + "select_all": "Seleccionar tot", + "select_none": "No seleccionar res", + "create": "Crear", + "update": "Actualitzar", + "remove": "Eliminar", + "error": "Error", + "view": "Veure" + }, + "dashboard": { + "project_limit_reached": "Límit de projectes assolit", + "alpha_one_project_limit": "Actualment estem en alfa, només es permet un projecte per espai de treball.", + "select_project": "Seleccionar projectes", + "manage_projects": "Gestionar projectes", + "select_or_create_project": "Seleccionar o crear un projecte", + "welcome_back": "Benvingut de nou al teu espai de treball segur", + "total_passwords": "Total de contrasenyes", + "total_accounts": "Total de comptes", + "total_folders": "Total de carpetes", + "recently_added_accounts": "Comptes afegits recentment", + "from_last_month": "del mes passat", + "create_project_details": "Crear detalls del projecte", + "recent_activity": "Activitat recent", + "keyboard_shortcuts": "Dreceres de teclat", + "generate_password": "Generar contrasenya", + "favourites": "Favorits", + "no_description": "Sense descripció", + "notes": "Notes", + "confirm_delete_project": "Confirmar eliminació del projecte", + "create_project": "Crear projecte", + "set_as_default_project": "Establir com a projecte per defecte", + "project_name": "Nom del projecte", + "describe_project_purpose": "Descriu el propòsit del projecte", + "free_plan_limit": "Límit del pla gratuït", + "save_changes": "Desar canvis", + "no_project_availbale": "No hi ha projectes disponibles", + "cancel": "Cancel·lar", + "delete": "Eliminar", + "add_favorite_tag": "Afegir etiqueta favorita", + "remove_tag": "Eliminar {tag}", + "dashboard": "Tauler de control", + "show_more": "Mostrar més", + "show_less": "Mostrar menys", + "overview": "Resum", + "project": "Projecte", + "notifications": "Notificacions", + "settings": "Configuració", + "logout": "Tancar sessió", + "current_project": "Projecte actual", + "default": "Per defecte", + "no_project_selected": "No s'ha seleccionat cap projecte", + "quick_stats": "Estadístiques ràpides", + "workspaces": "Espais de treball", + "projects": "Projectes", + "available_features": "Funcionalitats disponibles", + "team_members": "Membres de l'equip", + "total_projects": "Total de projectes", + "total_workspaces": "Total d'espais de treball", + "total_team_members": "Total de membres de l'equip", + "total_records": "Total de registres", + "my_account": "El meu compte", + "change_language": "Canviar idioma", + "language": "Idioma", + "toggle_theme": "Alternar tema", + "wallet_passphrases": "Frases de contrasenya del moneder", + "wi_fi": "Wi-Fi", + "env": "Variables d'entorn", + "env_variables": "Variables d'entorn", + "search": "Cercar", + "create_new_project": "Crear nou projecte", + "add_new_project_description": "Afegeix un nou projecte per organitzar les teves dades segures", + "description": "Descripció", + "optional": "Opcional", + "project_color": "Color del projecte", + "enabled_modules": "Mòduls habilitats", + "edit_project": "Editar projecte", + "update_project_details": "Actualitza els detalls del teu projecte", + "my_project": "El meu projecte", + "creating": "Creant...", + "delete_project": "Eliminar projecte", + "identity_coming_soon": "El mòdul d'identitat està en desenvolupament.", + "cards_coming_soon": "El mòdul de targetes està en desenvolupament.", + "software_licenses_coming_soon": "El mòdul de llicències de programari està en desenvolupament.", + "wifi_coming_soon": "El mòdul Wi-Fi està en desenvolupament.", + "profile": "Perfil", + "search_modules": "Cercar mòduls...", + "no_modules_found": "No s'han trobat mòduls", + "general": "General", + "security_access": "Seguretat i accés", + "business_finance": "Negocis i finances", + "licenses_services": "Llicències i serveis", + "accounts": "Comptes", + "identity": "Identitat", + "email": "Correu electrònic", + "wifi": "WiFi", + "api_keys": "Claus API", + "ssh_keys": "Claus SSH", + "cards": "Targetes", + "software_licenses": "Llicències de programari", + "recent_accounts": "Comptes recents", + "no_recent_accounts": "No hi ha comptes recents", + "last_24_hours": "Últimes 24 hores", + "no_accounts_create": "No s'han trobat comptes. Crea'n un per començar.", + "adjust_search_filter": "Prova d'ajustar els criteris de cerca o filtre", + "no_recent_activity": "No hi ha activitat recent", + "no_projects_available": "No hi ha projectes disponibles", + "no_workspace_selected": "No s'ha seleccionat cap espai de treball" + }, + "activity": { + "password_updated": "Contrasenya actualitzada", + "note_created": "Nota segura creada", + "you_create_login": "Has creat un nou inici de sessió", + "you_create_api_key": "Has creat una nova clau API", + "you_update_login": "Has actualitzat un inici de sessió", + "you_update_api_key": "Has actualitzat una clau API", + "you_delete_login": "Has eliminat un inici de sessió", + "you_delete_api_key": "Has eliminat una clau API", + "create_login": "Nou inici de sessió creat", + "create_api_key": "Nova clau API creada", + "update_login": "Inici de sessió actualitzat", + "update_api_key": "Clau API actualitzada", + "delete_login": "Inici de sessió eliminat", + "delete_api_key": "Clau API eliminada" + }, + "time": { + "today": "Avui", + "yesterday": "Ahir", + "last_7_days": "Últims 7 dies", + "last_30_days": "Últims 30 dies", + "all_time": "Tot el temps", + "just_now": "Ara mateix", + "hours_ago": "fa {hours} hores", + "days_ago": "fa {days} dies" + }, + "password_generator": { + "title": "Generador de contrasenyes", + "strong": "Fort", + "memorable": "Memorable", + "pin": "PIN", + "passphrase": "Frase de contrasenya", + "chars": "caràcters", + "digits": "dígits", + "generate_new": "Generar nova contrasenya", + "generate_password": "Generar contrasenya", + "click_generate_button": "Fes clic al botó Generar per generar una nova contrasenya", + "copy": "Copiar contrasenya", + "copied": "Copiat!", + "save": "Desar contrasenya", + "close": "Tancar", + "copy_password": "Copiar contrasenya", + "password_length": "Longitud de la contrasenya", + "options": "Opcions", + "advanced": "Avançat", + "advanced_options": "Opcions avançades", + "history": "Historial", + "uppercase": "Majúscules (A-Z)", + "lowercase": "Minúscules (a-z)", + "numbers": "Números (0-9)", + "symbols": "Símbols (!@#$%^&*)", + "password_analysis": "Anàlisi de la contrasenya", + "strong_enough": "Suficientment fort per a la majoria de llocs web", + "not_strong_enough": "No suficientment fort per a comptes sensibles", + "good_length": "Bona longitud", + "consider_longer": "Considera una contrasenya més llarga", + "using_all_types": "Utilitzant tots els tipus de caràcters", + "consider_more_types": "Considera utilitzar més tipus de caràcters", + "all_characters": "Tots els caràcters", + "easy_to_read": "Fàcil de llegir (sense caràcters similars com 1, l, I, 0, O)", + "easy_to_say": "Fàcil de dir (sense números o caràcters especials)", + "password_tips": "Consells de contrasenya", + "tip_min_length": "• Utilitza un mínim de 14 caràcters per a alta seguretat", + "tip_mix": "• Inclou una barreja de lletres, números i símbols", + "tip_no_personal": "• Evita utilitzar informació personal", + "tip_unique": "• Utilitza una contrasenya diferent per a cada compte", + "tip_manager": "• Considera utilitzar un gestor de contrasenyes per emmagatzemar les teves contrasenyes", + "recently_generated": "Generades recentment", + "clear_history": "Esborrar historial", + "no_history": "Encara no hi ha historial de contrasenyes", + "history_hint": "Les contrasenyes generades apareixeran aquí", + "weak": "Feble", + "fair": "Regular", + "good": "Bo", + "strong_strength": "Fort", + "strength": "{strength}% Força", + "current_session": "Sessió actual", + "create_secure_passwords": "Crea contrasenyes segures per als teus comptes" + }, + "user_settings": { + "title": "Configuració d'usuari", + "description": "Gestiona la configuració del compte i les preferències", + "profile": "Perfil", + "security": "Seguretat", + "notifications": "Notificacions", + "integrations": "Integracions", + "billing": "Facturació", + "logout": "Tancar sessió", + "login_history": "Historial d'inici de sessió", + "audit_log": "Registre d'auditoria", + "profile_title": "Informació del perfil i compte", + "profile_description": "Gestiona els teus detalls personals i del compte", + "language": "Idioma", + "select_language": "Seleccionar idioma", + "email_address": "Adreça de correu electrònic", + "full_name": "Nom complet", + "previous": "Anterior", + "next": "Següent", + "page": "Pàgina", + "of": "de", + "saving": "Desant...", + "save_changes": "Desar canvis", + "profile_picture": "Imatge del perfil", + "loading_history": "Carregant historial d'inici de sessió...", + "no_history_available": "No hi ha historial d'inici de sessió disponible", + "try_again": "Torna a intentar", + "device_browser": "Dispositiu i navegador", + "ip_address": "Adreça IP", + "time": "Temps" + }, + "accounts": { + "no_accounts": "No hi ha comptes", + "no_matching_accounts": "No s'han trobat comptes coincidents", + "loading_accounts": "Carregant comptes...", + "error_fetching_accounts": "No s'han pogut obtenir els comptes", + "account_deleted_successfully": "Compte eliminat correctament", + "error_deleting_account": "No s'ha pogut eliminar el compte", + "account_updated_successfully": "Compte actualitzat correctament", + "all_fields_required": "Si us plau, omple tots els camps obligatoris", + "account_already_exists": "Un compte amb aquest nom ja existeix", + "validation_error": "Dades d'entrada no vàlides. Comprova les teves entrades", + "failed_to_add_account": "No s'ha pogut afegir el compte. Si us plau, torna a intentar", + "missing_auth_or_selection": "Si us plau, inicia sessió o selecciona un espai de treball i projecte", + "please_log_in": "Si us plau, inicia sessió per continuar", + "server_error": "S'ha produït un error del servidor. Si us plau, torna a intentar més tard", + "adding": "Afegint...", + "ascending": "Ascendent", + "descending": "Descendent", + "add": "Afegir", + "cancel": "Cancel·lar", + "account_name": "Nom del compte", + "enter_account_name": "Introdueix el nom del compte", + "username": "Nom d'usuari", + "enter_username": "Introdueix el nom d'usuari", + "add_account": "Afegir compte", + "add_new_account": "Afegir nou compte", + "password": "Contrasenya", + "enter_password": "Introdueix la contrasenya", + "website": "Lloc web", + "enter_website": "Introdueix l'URL del lloc web", + "enter_website_url": "Introdueix l'URL del lloc web", + "notes": "Notes", + "enter_notes": "Introdueix notes", + "tags": "Etiquetes", + "enter_tags_comma_separated": "Introdueix etiquetes (separades per comes)", + "accounts": "Comptes", + "manage_your_saved_accounts_and_passwords": "Gestiona els teus comptes i contrasenyes desats", + "encryption_key_not_found": "No s'ha trobat la clau de xifratge del projecte. No es pot desar el compte.", + "project_not_found": "No s'ha trobat el projecte. Si us plau, selecciona un projecte vàlid.", + "encryption_failed": "No s'ha pogut xifrar les dades del compte. Si us plau, torna a intentar.", + "decryption_failed": "No s'ha pogut desxifrar les dades del compte. Això pot ser a causa d'una clau de xifratge faltant o no vàlida.", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "select_project": "Seleccionar projecte", + "no_project_selected": "No s'ha seleccionat cap projecte", + "please_select_a_project": "Si us plau, selecciona un projecte per veure els comptes", + "loading": "Carregant...", + "error": "Error", + "try_again": "Torna a intentar", + "no_accounts_found": "No s'han trobat comptes", + "no_accounts_exist": "No existeixen comptes per a aquest projecte", + "adjust_search_or_filter": "Prova d'ajustar la cerca o filtre per trobar comptes", + "generate_password": "Generar contrasenya", + "account": "Compte", + "category": "Categoria", + "last_modified": "Última modificació", + "date_created": "Data de creació", + "actions": "Accions", + "copy_username": "Copiar nom d'usuari", + "copied": "Copiat", + "copy_password": "Copiar contrasenya", + "show_password": "Mostrar contrasenya", + "hide_password": "Ocultar contrasenya", + "edit": "Editar", + "delete": "Eliminar", + "confirm_deletion": "Confirmar eliminació", + "confirm_delete_account": "Estàs segur que vols eliminar aquest compte?", + "confirm_delete_account_description": "Aquesta acció no es pot desfer i eliminarà permanentment les credencials del compte.", + "deleting": "Eliminant...", + "showing": "Mostrant", + "of": "de", + "rows_per_page": "Files per pàgina", + "clear_filters": "Esborrar filtres", + "accounts_not_found": "No s'han trobat comptes", + "account_not_found": "No s'ha trobat el compte", + "failed_to_delete_account": "No s'ha pogut eliminar el compte", + "failed_to_update_account": "No s'ha pogut actualitzar el compte", + "updating": "Actualitzant...", + "update": "Actualitzar", + "view_details": "Veure detalls", + "filter_warning": "Els filtres poden afectar la precisió de la paginació ja que no es suporta el filtrat del servidor.", + "search": "Cercar", + "search_accounts": "Cercar comptes", + "all_accounts": "Tots els comptes", + "personal": "Personal", + "work": "Treball", + "finance": "Finances", + "clear": "Esborrar", + "clear_sort": "Esborrar", + "favorite": "Favorit", + "no_accounts_create": "No s'han trobat comptes. Crea'n un per començar.", + "adjust_search_filter": "Prova d'ajustar els criteris de cerca o filtre", + "error_loading_workspace": "No s'han pogut carregar les dades de l'espai de treball", + "focus_search": "Enfocar cerca", + "switch_project": "Canviar projecte", + "add_a_tag": "Afegir una etiqueta", + "edit_account": "Editar compte", + "update_account": "Actualitzar compte", + "filter_by_tag": "Filtrar per etiqueta", + "confirm_delete": "Confirmar eliminació", + "delete_account_confirmation": "Estàs segur que vols eliminar aquest compte? Aquesta acció no es pot desfer.", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització" + }, + "api_keys": { + "title": "Claus API", + "description": "Gestiona les teves claus API per a l'accés programàtic als serveis de Zecrypt.", + "edit_api_key": "Editar clau API", + "search": "Cercar", + "name": "Nom", + "key": "Clau", + "api_key": "Clau API", + "enter_api_key": "Introdueix la clau API", + "type": "Tipus", + "created": "Creat", + "expires": "Venc", + "status": "Estat", + "actions": "Accions", + "clear": "Esborrar", + "sort": "Ordenar", + "last_used": "Entorn", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "clear_filters": "Esborrar filtres", + "create_new_api_key": "Crear nova clau API", + "enter_details_for_new_api_key": "Introdueix les dades de la teva nova clau API", + "api_key_name": "Nom de la clau API", + "enter_api_key_name": "ex: Servidor de producció", + "key_type": "Tipus de clau", + "key_preview": "Vista prèvia de la clau", + "key_preview_description": "La clau real es generarà quan facis clic a \"Crear clau API\"", + "create_api_key": "Crear clau API", + "cancel": "Cancel·lar", + "rows_per_page": "Files per pàgina", + "add_api_key": "Afegir clau API", + "no_api_keys_found": "No s'han trobat claus API", + "try_adjusting_search_or_filter": "Prova d'ajustar els criteris de cerca o filtre", + "error_fetching_api_keys": "No s'han pogut obtenir les claus API", + "failed_to_fetch_api_keys": "No s'han pogut carregar les claus API. Si us plau, torna a intentar.", + "confirm_delete_api_key": "Estàs segur que vols eliminar aquesta clau API?", + "api_key_deleted_successfully": "Clau API eliminada correctament", + "api_key_deleted_description": "La clau API ha estat eliminada correctament.", + "error_deleting_api_key": "No s'ha pogut eliminar la clau API", + "failed_to_delete_api_key": "No s'ha pogut eliminar la clau API. Si us plau, torna a intentar.", + "api_key_updated_successfully": "Clau API actualitzada", + "api_key_updated_description": "La clau API ha estat actualitzada correctament.", + "api_key_added_successfully": "Clau API afegida", + "api_key_added_description": "La clau API ha estat afegida correctament.", + "failed_to_update_api_key": "No s'ha pogut actualitzar la clau API. Si us plau, torna a intentar.", + "manage_your_api_keys": "Gestiona les teves claus API", + "showing": "Mostrant", + "of": "de", + "add_new_api_key": "Afegir nova clau API", + "add_new_api_key_description": "Introdueix les dades de la clau API a continuació", + "api_key_already_exists": "Una clau API amb aquest nom ja existeix.", + "error_adding_api_key": "No s'ha pogut afegir la clau API a causa d'un error del servidor.", + "failed_to_add_api_key": "No s'ha pogut afegir la clau API. Si us plau, torna a intentar.", + "error_updating_api_key": "No s'ha pogut actualitzar la clau API a causa d'un error del servidor.", + "invalid_input_data": "Dades d'entrada no vàlides. Comprova les teves entrades.", + "network_error": "Error de xarxa. Comprova la teva connexió i torna a intentar.", + "no_api_keys_for_env": "No s'han trobat claus API per a l'entorn '{env}'. Prova un altre entorn o esborra els filtres.", + "no_api_keys_match_search": "No hi ha claus API que coincideixin amb la cerca '{search}'. Prova d'ajustar la teva cerca.", + "adjust_search_filter": "Prova d'ajustar els criteris de cerca o filtre.", + "copied": "Copiat", + "api_key_copied": "La clau API ha estat copiada al porta-retalls.", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_api_key": "No s'ha pogut copiar la clau API al porta-retalls.", + "show_key": "Mostrar clau", + "hide_key": "Ocultar clau", + "copy_key": "Copiar clau", + "edit": "Editar", + "delete": "Eliminar", + "decryption_error": "Error de desxifratge - si us plau, edita per actualitzar el format", + "adding": "Afegint...", + "updating": "Actualitzar", + "no_project_selected": "No s'ha seleccionat cap projecte. Si us plau, selecciona un projecte per continuar.", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "loading_api_keys": "Carregant claus API...", + "api_keys": "Claus API", + "env": "Entorn", + "tags": "Etiquetes", + "last_modified": "Última modificació", + "api_key_description": "Descripció de la clau API", + "enter_description": "Introdueix una descripció per a aquesta clau API", + "environment": "Entorn", + "select_environment": "Seleccionar entorn", + "development": "Desenvolupament", + "staging": "Staging", + "production": "Producció", + "testing": "Proves", + "local": "Local", + "uat": "UAT", + "add": "Afegir", + "add_a_tag": "Afegir una etiqueta", + "update_api_key": "Actualitzar clau API", + "all_envs": "Tots els entorns", + "search_across_all_fields": "Cercar", + "delete_api_key_confirmation": "Estàs segur que vols eliminar aquesta clau API? Aquesta acció no es pot desfer.", + "deleting": "Eliminant...", + "confirm_deletion": "Confirmar eliminació", + "edit_api_key_description": "Actualitza les dades de la clau API", + "showing_results": "Mostrant {startIdx}-{endIdx} de {totalCount} resultats", + "notes": "Notes", + "enter_notes": "Introdueix notes", + "filter_by_env": "Filtrar per entorn", + "date_created": "Data de creació" + }, + "wallet_passphrases": { + "wallet_passphrases": "Frases de contrasenya del moneder", + "securely_store_and_manage_your_wallet_recovery_phrases": "Emmagatzema i gestiona les frases de recuperació del moneder de forma segura", + "add_passphrase": "Afegir frase de contrasenya", + "enter_wallet_address": "Introdueix l'adreça del moneder", + "copy_wallet_address": "Copiar adreça del moneder", + "wallet_address": "Adreça del moneder", + "add_your_first_passphrase": "Afegeix la teva primera frase de contrasenya", + "search_passphrases": "Cercar", + "no_wallet_passphrases_found": "No s'han trobat frases de contrasenya del moneder", + "wallet_address_encryption_note": "L'adreça del moneder està xifrada per seguretat", + "no_passphrases_found": "No s'han trobat frases de contrasenya", + "no_passphrases_found_message": "Encara no has afegit frases de contrasenya del moneder. Afegeix-ne una per començar.", + "no_passphrases_found_search": "No hi ha frases de contrasenya que coincideixin amb els criteris de cerca.", + "loading_passphrases": "Carregant frases de contrasenya...", + "please_wait_while_we_fetch_your_secure_passphrases": "Si us plau, espera mentre obtenim les teves frases de contrasenya segures", + "error_loading_passphrases": "Error en carregar frases de contrasenya", + "failed_to_load_passphrases": "No s'han pogut carregar les frases de contrasenya. Si us plau, torna a intentar.", + "passphrase_added_successfully": "Frase de contrasenya afegida correctament", + "passphrase_added_description": "La teva frase de contrasenya del moneder ha estat emmagatzemada de forma segura.", + "passphrase_updated_successfully": "Frase de contrasenya actualitzada correctament", + "passphrase_updated_description": "La teva frase de contrasenya del moneder ha estat actualitzada.", + "failed_to_add_passphrase": "No s'ha pogut afegir la frase de contrasenya", + "failed_to_update_passphrase": "No s'ha pogut actualitzar la frase de contrasenya", + "wallet_phrase_already_exists": "Aquesta frase de contrasenya o nom ja existeix al teu moneder", + "invalid_input_data": "Dades d'entrada no vàlides. Comprova les teves entrades.", + "no_project_selected": "No s'ha seleccionat cap projecte. Si us plau, selecciona un projecte.", + "passphrase_required": "La frase de contrasenya és obligatòria", + "passphrase_must_be_exactly_12_words": "La frase de contrasenya ha de contenir exactament 12 paraules (actualment {count})", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "name": "Nom", + "add": "Afegir", + "sort": "Ordenar", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "sort_options": "Opcions d'ordenació", + "enter_passphrase_name": "Introdueix el nom de la frase de contrasenya", + "passphrase": "Frase de contrasenya", + "enter_wallet_recovery_phrase": "Introdueix la frase de recuperació del moneder", + "notes": "Notes", + "enter_notes": "Introdueix notes", + "wallet_type": "Tipus de moneder", + "select_wallet_type": "Seleccionar tipus de moneder", + "tags": "Etiquetes", + "add_a_tag": "Afegir una etiqueta", + "save_passphrase": "Desar frase de contrasenya", + "update_passphrase": "Actualitzar frase de contrasenya", + "passphrase_encryption_note": "La teva frase de contrasenya serà xifrada per seguretat.", + "adding": "Afegint...", + "updating": "Actualitzant...", + "search_across_all_fields": "Cercar", + "filter_by_wallet_type": "Filtrar per tipus de moneder", + "all_wallet_types": "Tots els tipus de moneder", + "clear_filters": "Esborrar filtres", + "last_modified": "Última modificació", + "actions": "Accions", + "hide_passphrase": "Ocultar frase de contrasenya", + "show_passphrase": "Mostrar frase de contrasenya", + "copy_passphrase": "Copiar frase de contrasenya", + "edit": "Editar", + "delete": "Eliminar", + "showing_results": "Mostrant {startIdx}-{endIdx} de {totalCount} resultats", + "confirm_deletion": "Confirmar eliminació", + "delete_passphrase_confirmation": "Estàs segur que vols eliminar aquesta frase de contrasenya del moneder? Aquesta acció no es pot desfer.", + "deleting": "Eliminant...", + "add_new_passphrase_description": "Introdueix les dades de la frase de contrasenya del moneder a continuació", + "edit_passphrase": "Editar frase de contrasenya", + "edit_passphrase_description": "Actualitza les dades de la frase de contrasenya del moneder", + "copied": "Copiat", + "passphrase_copied": "Frase de contrasenya copiada al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_passphrase": "No s'ha pogut copiar la frase de contrasenya al porta-retalls", + "cancel": "Cancel·lar", + "date_created": "Data de creació" + }, + "identity": { + "title": "Identitat", + "description": "Gestiona la informació d'identitat personal de forma segura", + "add_identity": "Afegir identitat", + "no_identities_found": "No s'han trobat identitats", + "no_identities_found_message": "Encara no has afegit informació d'identitat.", + "add_your_first_identity": "Afegeix la teva primera identitat", + "loading_identities": "Carregant identitats...", + "search_identities": "Cercar", + "full_name": "Nom complet", + "country": "País", + "enter_full_name": "Introdueix el nom complet", + "date_of_birth": "Data de naixement", + "enter_date_of_birth": "Introdueix la data de naixement (YYYY-MM-DD)", + "address": "Adreça", + "enter_address": "Introdueix l'adreça", + "phone_number": "Número de telèfon", + "enter_phone_number": "Introdueix el número de telèfon", + "identity_number": "Número d'identitat", + "enter_identity_number": "Introdueix el número d'identitat (com passaport, DNI)", + "tags": "Etiquetes", + "enter_tags_comma_separated": "Introdueix etiquetes (separades per comes)", + "last_modified": "Última modificació", + "actions": "Accions", + "edit": "Editar", + "delete": "Eliminar", + "copy_field": "Copiar {field}", + "copied": "Copiat", + "identity_deleted_successfully": "Identitat eliminada correctament", + "error_deleting_identity": "No s'ha pogut eliminar la identitat", + "identity_updated_successfully": "Identitat actualitzada correctament", + "failed_to_add_identity": "No s'ha pogut afegir la identitat", + "all_fields_required": "Si us plau, omple tots els camps obligatoris", + "validation_error": "Dades d'entrada no vàlides. Comprova les teves entrades", + "server_error": "S'ha produït un error del servidor. Si us plau, torna a intentar més tard", + "identities": "Identitats", + "filter_by_tag": "Filtrar per etiqueta", + "all_tags": "Totes les etiquetes", + "search": "Cercar", + "clear_filters": "Esborrar filtres", + "name": "Nom", + "contact": "Contacte", + "passport": "Passaport", + "national_id": "DNI", + "add_new_identity": "Afegir nova identitat", + "add_new_identity_description": "Introdueix les dades de la identitat a continuació", + "first_name": "Nom", + "last_name": "Cognom", + "email": "Correu electrònic", + "phone": "Telèfon", + "passport_number": "Número de passaport", + "cancel": "Cancel·lar", + "save": "Desar", + "edit_identity": "Editar identitat", + "edit_identity_description": "Actualitza les dades de la identitat", + "update": "Actualitzar", + "identity_deleted": "Identitat eliminada", + "identity_deleted_description": "La identitat ha estat eliminada correctament", + "field_copied": "Camp copiat al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_field": "No s'ha pogut copiar el camp al porta-retalls", + "hide_sensitive_data": "Ocultar dades sensibles", + "show_sensitive_data": "Mostrar dades sensibles", + "showing_results": "Mostrant {startIdx}-{endIdx} de {totalCount} resultats", + "page_of": "Pàgina {currentPage} de {totalPages}", + "copy_passport": "Copiar número de passaport", + "copy_national_id": "Copiar DNI", + "identity_added_successfully": "Identitat afegida correctament", + "error_adding_identity": "Error en afegir la identitat", + "error_updating_identity": "Error en actualitzar la identitat", + "missing_workspace_project": "Espai de treball o projecte faltant", + "first_name_required": "El nom és obligatori", + "last_name_required": "El cognom és obligatori", + "invalid_email": "Format de correu electrònic no vàlid", + "invalid_date_format": "Format de data no vàlid (YYYY-MM-DD)", + "title_required": "El títol és obligatori", + "title_placeholder": "Identitat personal", + "first_name_placeholder": "Joan", + "last_name_placeholder": "Garcia", + "email_placeholder": "joan.garcia@exemple.com", + "phone_placeholder": "+34 600 123 456", + "address_placeholder": "123 Carrer Major, Barcelona, 08001", + "passport_placeholder": "A12345678", + "national_id_placeholder": "12345678A", + "notes": "Notes", + "notes_placeholder": "Informació addicional", + "tags_placeholder": "Afegir etiquetes", + "adding": "Afegint...", + "updating": "Actualitzant...", + "deleting": "Eliminant...", + "add": "Afegir", + "confirm_deletion": "Confirmar eliminació", + "delete_identity_confirmation": "Estàs segur que vols eliminar aquesta identitat? Aquesta acció no es pot desfer.", + "error_fetching_identities": "Error en obtenir les identitats", + "national_id_required": "El DNI és obligatori", + "identity_type": "Tipus d'identitat", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "search_across_all_fields": "Cercar", + "searches_all_fields": "Cerca en nom, tipus, contacte, adreça, identitat i etiquetes", + "encryption_key_not_found": "No s'ha trobat la clau de xifratge del projecte. No es pot desar la identitat.", + "project_not_found": "No s'ha trobat el projecte. Si us plau, selecciona un projecte vàlid.", + "encryption_failed": "No s'ha pogut xifrar les dades de la identitat. Si us plau, torna a intentar.", + "decryption_failed": "No s'ha pogut desxifrar les dades de la identitat. Això pot ser a causa d'una clau de xifratge faltant o no vàlida.", + "manage_your_personal_identities": "Gestiona la informació d'identitat personal de forma segura", + "date_created": "Data de creació" + }, + "cards": { + "title": "Targetes", + "description": "Gestiona la informació de targetes de crèdit i dèbit de forma segura", + "add_card": "Afegir targeta", + "no_cards_found": "No s'han trobat targetes", + "no_cards_found_message": "Encara no has afegit informació de targeta.", + "add_your_first_card": "Afegeix la teva primera targeta", + "loading_cards": "Carregant targetes...", + "search_cards": "Cercar", + "card_name": "Nom de la targeta", + "name": "Nom", + "enter_card_name": "Introdueix el nom de la targeta (com Visa que acaba en 1234)", + "card_number": "Número de targeta", + "enter_card_number": "Introdueix el número de targeta", + "expiry_date": "Data de venciment", + "enter_expiry_date": "Introdueix la data de venciment (MM/AA)", + "cvv": "CVV", + "enter_cvv": "Introdueix el CVV", + "cardholder_name": "Titular de la targeta", + "card_holder_name": "Titular de la targeta", + "enter_cardholder_name": "Introdueix el titular de la targeta", + "tags": "Etiquetes", + "enter_tags_comma_separated": "Introdueix etiquetes (separades per comes)", + "last_modified": "Última modificació", + "actions": "Accions", + "edit": "Editar", + "delete": "Eliminar", + "copy_field": "Copiar {field}", + "copied": "Copiat", + "card_deleted_successfully": "Targeta eliminada correctament", + "error_deleting_card": "No s'ha pogut eliminar la targeta", + "card_updated_successfully": "Targeta actualitzada correctament", + "card_added_successfully": "Targeta afegida correctament", + "failed_to_add_card": "No s'ha pogut afegir la targeta", + "all_fields_required": "Si us plau, omple tots els camps obligatoris", + "validation_error": "Dades d'entrada no vàlides. Comprova les teves entrades", + "server_error": "S'ha produït un error del servidor. Si us plau, torna a intentar més tard", + "credit_cards": "Targetes de crèdit", + "filter_by_brand": "Filtrar per marca", + "all_brands": "Totes les marques", + "search": "Cercar", + "clear_filters": "Esborrar filtres", + "card_holder": "Titular", + "brand": "Marca", + "expiry": "Venciment", + "add_new_card": "Afegir nova targeta", + "add_new_card_description": "Introdueix les dades de la targeta de crèdit a continuació", + "select_brand": "Seleccionar marca", + "expiry_month": "Mes de venciment", + "expiry_year": "Any de venciment", + "cancel": "Cancel·lar", + "save": "Desar", + "edit_card": "Editar targeta", + "edit_card_description": "Actualitza les dades de la targeta de crèdit", + "update": "Actualitzar", + "card_deleted": "Targeta eliminada", + "card_deleted_description": "La targeta ha estat eliminada correctament", + "field_copied": "Camp copiat al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_field": "No s'ha pogut copiar el camp al porta-retalls", + "hide_card_number": "Ocultar número de targeta", + "show_card_number": "Mostrar número de targeta", + "copy_to_clipboard": "Copiar al porta-retalls", + "showing_results": "Mostrant {startIdx}-{endIdx} de {totalCount} resultats", + "page_of": "Pàgina {currentPage} de {totalPages}", + "title_placeholder": "Targeta Visa personal", + "card_holder_name_placeholder": "Joan Garcia", + "card_number_placeholder": "4111 1111 1111 1111", + "notes": "Notes", + "notes_placeholder": "Informació addicional sobre aquesta targeta", + "tags_placeholder": "Afegir etiquetes", + "add": "Afegir", + "adding": "Afegint...", + "updating": "Actualitzant...", + "deleting": "Eliminant...", + "confirm_delete": "Confirmar eliminació", + "delete_card_confirmation": "Estàs segur que vols eliminar aquesta targeta? Aquesta acció no es pot desfer.", + "error_fetching_cards": "Error en obtenir les targetes", + "missing_workspace_project": "Espai de treball o projecte faltant", + "title_required": "El títol és obligatori", + "card_holder_name_required": "El titular de la targeta és obligatori", + "card_number_required": "El número de targeta és obligatori", + "invalid_card_number": "Número de targeta no vàlid", + "cvv_required": "El CVV és obligatori", + "invalid_cvv": "CVV no vàlid", + "brand_required": "La marca és obligatòria", + "error_adding_card": "Error en afegir la targeta", + "error_updating_card": "Error en actualitzar la targeta", + "other": "Altres", + "filter_by_tag": "Filtrar per etiqueta", + "all_tags": "Totes les etiquetes", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "search_across_all_fields": "Cercar", + "searches_all_fields": "Cerca en títol, titular, número de targeta, marca i etiquetes", + "missing_auth_or_selection": "Autenticació o selecció faltant", + "encryption_key_not_found": "No s'ha trobat la clau de xifratge del projecte. No es pot desar la targeta.", + "project_not_found": "No s'ha trobat el projecte. Si us plau, selecciona un projecte vàlid.", + "encryption_failed": "No s'ha pogut xifrar les dades de la targeta. Si us plau, torna a intentar.", + "decryption_failed": "No s'ha pogut desxifrar les dades de la targeta. Això pot ser a causa d'una clau de xifratge faltant o no vàlida.", + "manage_your_cards": "Gestiona la informació de targetes de crèdit i dèbit de forma segura", + "date_created": "Data de creació" + }, + "wifi": { + "wifi_networks": "Xarxes Wi-Fi", + "manage_your_wifi_networks": "Gestiona les xarxes Wi-Fi de forma segura.", + "add_wifi": "Afegir Wi-Fi", + "add_new_wifi": "Afegir nou Wi-Fi", + "add_new_wifi_description": "Introdueix les dades de la xarxa Wi-Fi a continuació", + "edit_wifi": "Editar Wi-Fi", + "edit_wifi_description": "Actualitza les dades de la xarxa Wi-Fi", + "search_wifi": "Cercar", + "filter_by_security": "Filtrar per seguretat", + "all_security_types": "Tots els tipus de seguretat", + "none": "Cap", + "clear": "Esborrar", + "clear_filters": "Esborrar filtres", + "loading_wifi": "Carregant xarxes Wi-Fi...", + "no_wifi_found": "No s'han trobat xarxes Wi-Fi", + "no_wifi_for_security_type": "No s'han trobat xarxes Wi-Fi per a {security_type}", + "no_wifi_match_search": "No hi ha xarxes Wi-Fi que coincideixin amb la teva cerca '{search}'", + "name": "Nom", + "loading_wifi_networks": "Carregant xarxes Wi-Fi", + "no_wifi_networks_found": "No s'han trobat xarxes Wi-Fi", + "add_wifi_network": "Afegir xarxa Wi-Fi", + "no_wifi_for_tag": "No s'han trobat xarxes WiFi amb l'etiqueta {tag}", + "adjust_search_filter": "Prova d'ajustar la cerca o filtre per trobar el que busques.", + "ssid": "SSID", + "security": "Seguretat", + "security_type": "Tipus de seguretat", + "select_security_type": "Seleccionar tipus de seguretat", + "notes": "Notes", + "enter_notes": "Introdueix notes", + "password": "Contrasenya", + "enter_password": "Introdueix la contrasenya", + "enter_new_password": "Introdueix una nova contrasenya (deixa buit per mantenir el canvi)", + "show_password": "Mostrar contrasenya", + "hide_password": "Ocultar contrasenya", + "copy_password": "Copiar contrasenya", + "tags": "Etiquetes", + "add_a_tag": "Afegir una etiqueta", + "add": "Afegir", + "last_modified": "Última modificació", + "date_created": "Data de creació", + "actions": "Accions", + "showing": "Mostrant", + "of": "de", + "rows_per_page": "Files per pàgina", + "edit": "Editar", + "copy_ssid": "Copiar SSID", + "delete": "Eliminar", + "confirm_delete_wifi": "Confirmar eliminació de WiFi", + "delete_wifi_confirmation": "Estàs segur que vols eliminar aquesta xarxa WiFi? Aquesta acció no es pot desfer.", + "wifi_deleted": "WiFi eliminat", + "wifi_deleted_description": "La xarxa WiFi ha estat eliminada correctament.", + "failed_to_delete_wifi": "No s'ha pogut eliminar la xarxa WiFi", + "error_deleting_wifi": "Error en eliminar WiFi", + "error_fetching_wifi_networks": "Error en obtenir les xarxes WiFi", + "failed_to_fetch_wifi_networks": "No s'han pogut obtenir les xarxes WiFi", + "no_project_selected": "No s'ha seleccionat cap projecte. Si us plau, selecciona un projecte per continuar.", + "copied": "Copiat", + "field_copied": "Camp copiat al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_field": "No s'ha pogut copiar el camp al porta-retalls", + "show_qr_code": "Mostrar codi QR", + "wifi_qr_code": "Codi QR de WiFi", + "wifi_qr_code_description": "Escaneja aquest codi QR per connectar-te a la xarxa WiFi.", + "qr_code_placeholder": "Codi QR", + "wifi_credentials": "Credencials de WiFi", + "close": "Tancar", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "wifi_added_successfully": "WiFi afegit correctament", + "wifi_added_description": "S'ha afegit la xarxa WiFi.", + "wifi_already_exists": "Una xarxa WiFi amb aquest SSID ja existeix", + "failed_to_add_wifi": "No s'ha pogut afegir la xarxa WiFi", + "enter_ssid": "Introdueix SSID", + "update_wifi": "Actualitzar WiFi", + "wifi_updated_successfully": "WiFi actualitzat correctament", + "wifi_updated_description": "La xarxa WiFi ha estat actualitzada.", + "wifi_not_found": "No s'ha trobat la xarxa WiFi", + "failed_to_update_wifi": "No s'ha pogut actualitzar la xarxa WiFi", + "invalid_input_data": "Dades d'entrada no vàlides", + "adding": "Afegint...", + "updating": "Actualitzant...", + "deleting": "Eliminant...", + "cancel": "Cancel·lar", + "encryption_key_not_found": "No s'ha trobat la clau de xifratge del projecte. No es pot desar la xarxa WiFi.", + "project_not_found": "No s'ha trobat el projecte. Si us plau, selecciona un projecte vàlid.", + "encryption_failed": "No s'ha pogut xifrar les dades de WiFi. Si us plau, torna a intentar.", + "decryption_failed": "No s'ha pogut desxifrar les dades de WiFi. Això pot ser a causa d'una clau de xifratge faltant o no vàlida.", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "filter_by_tag": "Filtrar per etiqueta", + "all_tags": "Totes les etiquetes", + "scan_with_phone": "Escaneja aquest codi QR amb el teu telèfon per connectar-te a la xarxa" + }, + "key_shortcuts": { + "title": "Dreceres de teclat" + }, + "notes": { + "add_new_note": "Afegir nova nota", + "note_title": "Títol de la nota", + "note_content": "Contingut de la nota", + "tags": "Etiquetes", + "update_note": "Actualitzar nota", + "enter_note_title": "Introdueix el títol de la nota", + "add_a_tag": "Afegir una etiqueta", + "add_note": "Afegir nota", + "cancel": "Cancel·lar" + }, + "emails": { + "email_accounts": "Comptes de correu electrònic", + "add_email": "Afegir correu electrònic", + "search_email_accounts": "Cercar", + "per_page": "per pàgina", + "clear_filters": "Esborrar filtres", + "title": "Títol", + "email_address": "Adreça de correu electrònic", + "servers": "Servidors", + "username": "Nom d'usuari", + "password": "Contrasenya", + "last_modified": "Última modificació", + "tags": "Etiquetes", + "loading_emails": "Carregant correu electrònic", + "actions": "Accions", + "loading": "Carregant...", + "no_results_found": "No s'han trobat resultats", + "no_email_accounts": "No hi ha comptes de correu electrònic", + "copy": "Copiar", + "copy_to_clipboard": "Copiar al porta-retalls", + "show_password": "Mostrar contrasenya", + "hide_password": "Ocultar contrasenya", + "open_menu": "Obrir menú", + "edit": "Editar", + "delete": "Eliminar", + "deleted": "Eliminat", + "showing_results": "Mostrant {start} a {end} de {total} resultats", + "confirm_delete": "Confirmar eliminació", + "delete_email_confirmation": "Estàs segur que vols eliminar aquest compte de correu electrònic? Aquesta acció no es pot desfer.", + "cancel": "Cancel·lar", + "deleting": "Eliminant...", + "copied": "Copiat", + "field_copied": "Valor copiat al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_value": "No s'ha pogut copiar el valor al porta-retalls", + "encryption_error": "Error de xifratge", + "could_not_encrypt_data": "No s'han pogut xifrar les dades. Si us plau, torna a intentar.", + "success": "Èxit", + "email_added_successfully": "Compte de correu electrònic afegit correctament", + "error_adding_email": "Error en afegir el compte de correu electrònic. Si us plau, torna a intentar.", + "email_deleted_successfully": "Credencials de correu electrònic eliminades correctament", + "failed_to_delete_email": "No s'han pogut eliminar les credencials de correu electrònic", + "error_fetching_emails": "No s'han pogut obtenir el correu electrònic", + "error": "Error", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "add_email_description": "Afegeix un nou compte de correu electrònic al teu cofre segur", + "title_placeholder": "Correu de treball", + "email_address_placeholder": "el.teu.correu@exemple.com", + "imap_server": "Servidor IMAP", + "imap_server_placeholder": "imap.exemple.com", + "smtp_server": "Servidor SMTP", + "smtp_server_placeholder": "smtp.exemple.com", + "username_placeholder": "Opcional, per defecte a l'adreça de correu electrònic", + "password_placeholder": "Introdueix la contrasenya", + "notes": "Notes (opcional)", + "notes_placeholder": "Informació addicional sobre aquest compte de correu electrònic", + "add_tag": "Afegir etiqueta", + "remove": "Eliminar", + "adding": "Afegint...", + "add": "Afegir", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "email_title_already_exists": "Un correu electrònic amb aquest títol ja existeix", + "invalid_email_format": "Format de correu electrònic no vàlid", + "missing_required_data": "Dades de projecte obligatòries faltants", + "edit_email": "Editar compte de correu electrònic", + "edit_email_description": "Actualitza les dades del compte de correu electrònic", + "save_changes": "Desar canvis", + "email_updated_successfully": "Compte de correu electrònic actualitzat correctament", + "error_updating_email": "Error en actualitzar el compte de correu electrònic. Si us plau, torna a intentar.", + "manage_your_email_accounts": "Gestiona els comptes de correu electrònic i configuracions del servidor de forma segura", + "date_created": "Data de creació", + "filter_by_tag": "Filtrar per etiqueta", + "all_tags": "Totes les etiquetes" + }, + "ssh_keys": { + "ssh_keys": "Claus SSH", + "add_ssh_key": "Afegir clau SSH", + "search_ssh_keys": "Cercar", + "per_page": "per pàgina", + "clear_filters": "Esborrar filtres", + "name": "Nom", + "ssh_key": "Clau SSH", + "tags": "Etiquetes", + "loading_ssh_keys": "Carregant claus SSH", + "actions": "Accions", + "loading": "Carregant...", + "no_results_found": "No s'han trobat resultats", + "no_ssh_keys": "No hi ha claus SSH", + "hide_ssh_key": "Ocultar clau SSH", + "show_ssh_key": "Mostrar clau SSH completa", + "copied": "Copiat", + "ssh_key_copied": "Clau SSH copiada al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_ssh_key": "No s'ha pogut copiar la clau SSH al porta-retalls", + "copy_to_clipboard": "Copiar al porta-retalls", + "open_menu": "Obrir menú", + "edit": "Editar", + "delete": "Eliminar", + "fingerprint": "Empremta", + "last_modified": "Última modificació", + "deleted": "Eliminat", + "showing_results": "Mostrant {start} a {end} de {total} resultats", + "confirm_delete": "Confirmar eliminació", + "delete_ssh_key_confirmation": "Estàs segur que vols eliminar aquesta clau SSH? Aquesta acció no es pot desfer.", + "cancel": "Cancel·lar", + "deleting": "Eliminant...", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "ssh_key_name_already_exists": "Una clau SSH amb aquest nom ja existeix", + "missing_required_data": "Dades de projecte obligatòries faltants", + "encryption_error": "Error de xifratge", + "could_not_encrypt_data": "No s'han pogut xifrar les dades. Si us plau, torna a intentar.", + "success": "Èxit", + "ssh_key_added_successfully": "Clau SSH afegida correctament", + "error_adding_ssh_key": "Error en afegir la clau SSH. Si us plau, torna a intentar.", + "ssh_key_updated_successfully": "Clau SSH actualitzada correctament", + "error_updating_ssh_key": "Error en actualitzar la clau SSH. Si us plau, torna a intentar.", + "ssh_key_deleted_successfully": "Clau SSH eliminada correctament", + "error_deleting_ssh_key": "Error en eliminar la clau SSH", + "error_fetching_ssh_keys": "No s'han pogut obtenir les claus SSH", + "add_a_tag": "Afegir una etiqueta", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_created": "Ordenar per data de creació", + "sort_by_updated": "Ordenar per data d'actualització", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "error": "Error", + "add_ssh_key_description": "Afegeix una nova clau SSH al teu cofre segur", + "name_placeholder": "Clau SSH per a GitHub", + "ssh_key_placeholder": "Enganxa la teva clau SSH aquí", + "notes": "Notes (opcional)", + "notes_placeholder": "Informació addicional sobre aquesta clau SSH", + "add_tag": "Afegir etiqueta", + "remove": "Eliminar", + "adding": "Afegint...", + "add": "Afegir", + "edit_ssh_key": "Editar clau SSH", + "edit_ssh_key_description": "Actualitza les dades de la clau SSH", + "save_changes": "Desar canvis", + "search_licenses": "Cercar", + "manage_your_ssh_keys": "Gestiona les claus SSH de forma segura", + "filter_by_tag": "Filtrar per etiqueta", + "all_tags": "Totes les etiquetes", + "date_created": "Data de creació" + }, + "files": { + "files": "Fitxers", + "file_manager": "Gestor de fitxers", + "add_file": "Pujar fitxer", + "create_folder": "Crear carpeta", + "search_files": "Cercar fitxers", + "per_page": "per pàgina", + "clear_filters": "Esborrar filtres", + "name": "Nom", + "size": "Mida", + "type": "Tipus", + "modified": "Modificat", + "folder": "Carpeta", + "file": "Fitxer", + "loading_files": "Carregant fitxers...", + "actions": "Accions", + "loading": "Carregant...", + "no_results_found": "No s'han trobat resultats", + "no_files": "No hi ha fitxers", + "no_folders": "No hi ha carpetes", + "download": "Baixar", + "rename": "Reanomenar", + "move": "Moure", + "delete": "Eliminar", + "copied": "Copiat", + "file_copied": "Fitxer copiat al porta-retalls", + "copy_failed": "La còpia ha fallat", + "failed_to_copy_file": "No s'ha pogut copiar el fitxer al porta-retalls", + "copy_to_clipboard": "Copiar al porta-retalls", + "open_menu": "Obrir menú", + "edit": "Editar", + "deleted": "Eliminat", + "showing_results": "Mostrant {start} a {end} de {total} resultats", + "confirm_delete": "Confirmar eliminació", + "delete_file_confirmation": "Estàs segur que vols eliminar aquest fitxer? Aquesta acció no es pot desfer.", + "delete_folder_confirmation": "Estàs segur que vols eliminar aquesta carpeta? Aquesta acció no es pot desfer.", + "cancel": "Cancel·lar", + "deleting": "Eliminant...", + "please_fill_all_required_fields": "Si us plau, omple tots els camps obligatoris", + "file_name_already_exists": "Un fitxer amb aquest nom ja existeix en aquesta carpeta", + "folder_name_already_exists": "Una carpeta amb aquest nom ja existeix en aquesta ubicació", + "missing_required_data": "Dades de projecte obligatòries faltants", + "encryption_error": "Error de xifratge", + "could_not_encrypt_data": "No s'han pogut xifrar les dades. Si us plau, torna a intentar.", + "success": "Èxit", + "file_uploaded_successfully": "Fitxer pujat correctament", + "error_uploading_file": "Error en pujar el fitxer. Si us plau, torna a intentar.", + "file_updated_successfully": "Fitxer actualitzat correctament", + "error_updating_file": "Error en actualitzar el fitxer. Si us plau, torna a intentar.", + "file_deleted_successfully": "Fitxer eliminat correctament", + "error_deleting_file": "Error en eliminar el fitxer", + "error_fetching_files": "No s'han pogut obtenir els fitxers", + "folder_created_successfully": "Carpeta creada correctament", + "error_creating_folder": "Error en crear la carpeta. Si us plau, torna a intentar.", + "folder_updated_successfully": "Carpeta actualitzada correctament", + "error_updating_folder": "Error en actualitzar la carpeta. Si us plau, torna a intentar.", + "folder_deleted_successfully": "Carpeta eliminada correctament", + "error_deleting_folder": "Error en eliminar la carpeta", + "error_fetching_folders": "No s'han pogut obtenir les carpetes", + "file_too_large": "La mida del fitxer excedeix el límit de 50MB", + "invalid_file_type": "Tipus de fitxer no vàlid", + "upload_failed": "La pujada ha fallat", + "download_failed": "La baixada ha fallat", + "sort": "Ordenar", + "sort_options": "Opcions d'ordenació", + "sort_by_name": "Ordenar per nom", + "sort_by_size": "Ordenar per mida", + "sort_by_modified": "Ordenar per data de modificació", + "sort_by_type": "Ordenar per tipus", + "ascending": "Ascendent", + "descending": "Descendent", + "clear_sort": "Esborrar ordenació", + "error": "Error", + "upload_file_description": "Puja un fitxer al teu cofre segur", + "create_folder_description": "Crea una nova carpeta per organitzar els teus fitxers", + "name_placeholder": "Introdueix el nom del fitxer o carpeta", + "folder_name_placeholder": "Introdueix el nom de la carpeta", + "notes": "Notes (opcional)", + "notes_placeholder": "Informació addicional sobre aquest fitxer", + "add_tag": "Afegir etiqueta", + "remove": "Eliminar", + "uploading": "Pujant...", + "creating": "Creant...", + "add": "Afegir", + "upload": "Pujar", + "create": "Crear", + "edit_file": "Editar fitxer", + "edit_file_description": "Actualitza les dades del fitxer", + "edit_folder": "Editar carpeta", + "edit_folder_description": "Actualitza les dades de la carpeta", + "save_changes": "Desar canvis", + "manage_your_files": "Gestiona els teus fitxers de forma segura", + "filter_by_type": "Filtrar per tipus", + "all_types": "Tots els tipus", + "date_created": "Data de creació", + "file_size": "Mida del fitxer", + "folder_path": "Ruta de la carpeta", + "select_folder": "Seleccionar carpeta", + "move_to_folder": "Moure a carpeta", + "drag_and_drop_files": "Arrossega i deixa anar els fitxers aquí, o fes clic per seleccionar", + "select_files": "Seleccionar fitxers", + "upload_progress": "Progrés de pujada", + "upload_complete": "Pujada completada", + "bytes": "Bytes", + "kb": "KB", + "mb": "MB", + "gb": "GB", + "tb": "TB" + }, + "project_colors": { + "red": "Vermell", + "orange": "Taronja", + "amber": "Ambre", + "yellow": "Groc", + "lime": "Llima", + "green": "Verd", + "emerald": "Maragda", + "teal": "Blau verdós", + "cyan": "Cian", + "sky": "Cel", + "blue": "Blau", + "indigo": "Índigo", + "violet": "Violeta", + "purple": "Porpra", + "fuchsia": "Fúcsia", + "pink": "Rosa", + "rose": "Rosa" + } +} diff --git a/packages/frontend-web/middleware.ts b/packages/frontend-web/middleware.ts index 0fc75f5..6d254e5 100644 --- a/packages/frontend-web/middleware.ts +++ b/packages/frontend-web/middleware.ts @@ -3,7 +3,7 @@ import { NextResponse } from 'next/server'; import type { NextRequest } from 'next/server'; // Available locales -export const locales = ['en', 'de', 'fr', 'es','af','ar']; +export const locales = ['en', 'de', 'fr', 'es','af','ar', 'ca']; export const defaultLocale = 'en'; // Protected routes that require authentication From 9005d17cb71a764b9c558756d95f418f8714ea79 Mon Sep 17 00:00:00 2001 From: itsmeakhil Date: Wed, 24 Sep 2025 14:16:39 +0530 Subject: [PATCH 02/11] Czech --- packages/frontend-web/messages/cs/common.json | 1425 +++++++++++++++++ packages/frontend-web/middleware.ts | 2 +- 2 files changed, 1426 insertions(+), 1 deletion(-) create mode 100644 packages/frontend-web/messages/cs/common.json diff --git a/packages/frontend-web/messages/cs/common.json b/packages/frontend-web/messages/cs/common.json new file mode 100644 index 0000000..9a08d09 --- /dev/null +++ b/packages/frontend-web/messages/cs/common.json @@ -0,0 +1,1425 @@ +{ + "app": { + "title": "Zecrypt", + "description": "Zabezpečte svá data pomocí Zecrypt" + }, + "common": { + "loading": "Načítání...", + "saving": "Ukládání...", + "deleting": "Mazání...", + "error": "Chyba", + "success": "Úspěch", + "cancel": "Zrušit", + "add": "Přidat", + "save": "Uložit", + "submitting": "Odesílání...", + "try_again": "Zkusit znovu", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "add_item_description": "Zadejte údaje níže", + "edit_item_description": "Aktualizujte údaje" + }, + "pagination": { + "showing_x_of_y": "Zobrazení {start} - {end} z {total} položek", + "page_of": "Stránka {currentPage} z {totalPages}", + "next": "Další", + "previous": "Předchozí" + }, + "env": { + "env_variables": "Proměnné prostředí", + "manage_your_env": "Spravujte své proměnné prostředí bezpečně", + "add_env": "Přidat proměnné prostředí", + "loading_env": "Načítání proměnných prostředí...", + "name": "Název", + "env_value": "Hodnota", + "tags": "Štítky", + "created_at": "Vytvořeno", + "actions": "Akce", + "no_env_yet": "Zatím nebyly přidány žádné proměnné prostředí", + "no_matching_env": "Nebyly nalezeny odpovídající proměnné prostředí", + "search_across_all_fields": "Hledat ve všech polích...", + "show_env": "Zobrazit proměnné prostředí", + "hide_env": "Skrýt proměnné prostředí", + "copy_env": "Kopírovat proměnné prostředí", + "env_copied": "Proměnné prostředí zkopírovány do schránky", + "failed_to_copy_env": "Nepodařilo se zkopírovat proměnné prostředí do schránky", + "delete_env_confirmation": "Jste si jisti, že chcete smazat tyto proměnné prostředí? Tuto akci nelze vrátit zpět.", + "showing_x_of_y": "Zobrazení {start} - {end} z {total} položek", + "failed_to_decrypt": "Nepodařilo se dešifrovat proměnné prostředí", + "add_new_env": "Přidat nové proměnné prostředí", + "add_new_env_description": "Zadejte údaje o proměnných prostředí níže", + "edit_env": "Upravit proměnné prostředí", + "edit_env_description": "Aktualizujte své proměnné prostředí", + "env_name": "Název prostředí", + "enter_env_name": "Zadejte název prostředí", + "enter_env_value": "Zadejte hodnotu prostředí", + "enter_env_variables": "KLÍČ=hodnota\nJINÝ_KLÍČ=jiná_hodnota", + "env_format_hint": "Zadejte své proměnné prostředí ve formátu KLÍČ=hodnota, jeden na řádek", + "notes": "Poznámky", + "enter_notes": "Zadejte poznámky (volitelné)", + "add_a_tag": "Přidat štítek", + "add_tag": "Přidat štítek", + "press_enter_to_add": "Stiskněte Enter pro přidání štítku", + "cancel": "Zrušit", + "add": "Přidat", + "update": "Aktualizovat", + "env_added_successfully": "Proměnné prostředí úspěšně přidány", + "env_updated_successfully": "Proměnné prostředí úspěšně aktualizovány", + "env_deleted_successfully": "Proměnné prostředí úspěšně smazány", + "error_adding_env": "Nepodařilo se přidat proměnné prostředí", + "error_updating_env": "Nepodařilo se aktualizovat proměnné prostředí", + "error_deleting_env": "Nepodařilo se smazat proměnné prostředí", + "error_fetching_env": "Nepodařilo se načíst proměnné prostředí", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "no_project_selected": "Není vybrán žádný projekt. Prosím vyberte projekt.", + "clear_filters": "Vymazat filtry", + "decrypting": "Dešifrování proměnných prostředí...", + "env_updated_description": "Proměnné prostředí byly aktualizovány.", + "env_added_description": "Proměnné prostředí byly přidány.", + "env_already_exists": "Proměnné prostředí s tímto názvem již existují.", + "date_created": "Datum vytvoření", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "view_env_code": "Zobrazit v editoru kódu", + "click_to_add_env": "Klikněte pro přidání proměnných prostředí", + "click_to_edit_env": "Klikněte pro úpravu proměnných prostředí", + "env_hidden": "••••••••", + "copied": "Zkopírováno" + }, + "licenses": { + "software_licenses": "Softwarové licence", + "add_license": "Přidat licenci", + "filter_by_tag": "Filtrovat podle štítku", + "all_tags": "Všechny štítky", + "search": "Hledat", + "loading_licenses": "Načítání licencí...", + "no_licenses_found": "Nebyly nalezeny žádné licence", + "clear_filters": "Vymazat filtry", + "name": "Název", + "software": "Software", + "license_key": "Licenční klíč", + "expiry_date": "Datum vypršení", + "tags": "Štítky", + "actions": "Akce", + "add_new_license": "Přidat novou licenci", + "add_new_license_description": "Zadejte údaje o softwarové licenci níže", + "cancel": "Zrušit", + "save": "Uložit", + "edit_license": "Upravit licenci", + "edit_license_description": "Aktualizujte údaje o softwarové licenci", + "update": "Aktualizovat", + "delete": "Smazat", + "license_deleted": "Licence smazána", + "license_deleted_description": "Licence byla úspěšně smazána", + "copied": "Zkopírováno", + "field_copied": "Pole zkopírováno do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_field": "Nepodařilo se zkopírovat pole do schránky", + "hide_license_key": "Skrýt licenční klíč", + "show_license_key": "Zobrazit licenční klíč", + "showing_results": "Zobrazení {startIdx}-{endIdx} z {totalCount} výsledků", + "page_of": "Stránka {currentPage} z {totalPages}", + "expires": "Vyprší", + "expired": "Vypršela", + "expiring_soon": "Brzy vyprší", + "edit": "Upravit", + "enter_license_name": "Zadejte název licence", + "enter_software_name": "Zadejte název softwaru", + "enter_license_key": "Zadejte licenční klíč", + "enter_notes": "Zadejte poznámky", + "confirm_deletion": "Potvrdit smazání", + "confirm_delete_license_description": "Jste si jisti, že chcete smazat tuto licenci? Tuto akci nelze vrátit zpět.", + "license_added_successfully": "Licence úspěšně přidána", + "failed_to_add_license": "Nepodařilo se přidat licenci", + "invalid_input": "Neplatný vstup", + "validation_error": "Chyba validace", + "network_error": "Chyba sítě", + "error_adding_license": "Chyba při přidávání licence", + "license_updated_successfully": "Licence úspěšně aktualizována", + "failed_to_update_license": "Nepodařilo se aktualizovat licenci", + "license_not_found": "Licence nebyla nalezena", + "error_updating_license": "Chyba při aktualizaci licence", + "missing_auth_or_selection": "Chybí autentizace nebo výběr", + "license_deleted_successfully": "Licence úspěšně smazána", + "error_deleting_license": "Chyba při mazání licence", + "error_fetching_licenses": "Chyba při načítání licencí", + "adding": "Přidávání...", + "updating": "Aktualizování...", + "deleting": "Mazání...", + "notes": "Poznámky", + "software_name": "Název softwaru", + "rows_per_page": "Řádky na stránku", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "search_across_all_fields": "Hledat", + "update_api_key": "Aktualizovat API klíč", + "manage_your_software_licenses": "Spravujte své softwarové licence bezpečně", + "date_created": "Datum vytvoření", + "add_a_tag": "Přidat štítek" + }, + "navigation": { + "home": "Domů", + "dashboard": "Dashboard", + "settings": "Nastavení" + }, + "auth": { + "login_to_continue": "Přihlaste se pro pokračování", + "sign_in_with_sso": "Přihlaste se pomocí účtu organizace", + "login": "Přihlásit se", + "signup": "Registrovat se", + "cancel": "Zrušit", + "logout": "Odhlásit se", + "sign_up": "Registrovat se", + "try_again": "Zkusit znovu", + "dont_have_account": "Nemáte účet?", + "email": "E-mail", + "password": "Heslo", + "agreement": "Přihlášením souhlasíte s našimi podmínkami", + "terms": "Podmínky", + "privacy_policy": "Zásady ochrany osobních údajů", + "terms_and_conditions": "Podmínky a ujednání", + "service_status": "Stav služby", + "generate_password": "Generovat heslo", + "verification_code": "Ověřovací kód", + "2fa_verify": "2FA ověření", + "2fa_enter_code": "Zadejte 6místný kód z vaší autentizační aplikace", + "2fa_placeholder": "např. 123456", + "verify": "Ověřit", + "verifying_authentication": "Ověřování autentizace...", + "2fa_verification_error": "Neplatný ověřovací kód. Prosím zkuste znovu.", + "2fa_verification_success": "2FA ověření úspěšné", + "verifying": "Ověřování 2FA...", + "authentication_error": "Chyba autentizace", + "2fa_verified": "2FA ověřeno", + "redirecting_to_dashboard": "Přesměrování na dashboard...", + "setup_encryption_keys": "Nastavení šifrovacích klíčů", + "encryption_setup_description": "Vytvořte hlavní heslo pro šifrování vašich dat. Toto heslo se používá k ochraně vašeho soukromého klíče.", + "encryption_password_warning": "Pamatujte si toto heslo pečlivě! Pokud ho zapomenete, ztratíte přístup ke všem vašim šifrovaným datům.", + "encryption_password": "Hlavní heslo", + "enter_strong_password": "Zadejte silné heslo", + "confirm_encryption_password": "Potvrdit hlavní heslo", + "confirm_password": "Potvrdit vaše heslo", + "encryption_password_requirements": "Heslo musí mít alespoň 8 znaků a obsahovat písmena, číslice a speciální znaky pro maximální bezpečnost.", + "generating_keys": "Generování klíčů...", + "setup_encryption": "Nastavit šifrování", + "password_too_short": "Heslo musí mít alespoň 8 znaků", + "passwords_dont_match": "Hesla se neshodují", + "encryption_setup_success": "Nastavení šifrování dokončeno", + "encryption_keys_created": "Vaše šifrovací klíče byly úspěšně vytvořeny", + "encryption_setup_failed": "Nepodařilo se nastavit šifrovací klíče", + "checking_encryption_keys": "Kontrola šifrovacích klíčů...", + "encryption_key_check_failed": "Kontrola šifrovacího klíče se nezdařila", + "encryption_key_check_failed_desc": "Nemohli jsme ověřit vaše šifrovací klíče. To může být způsobeno problémem se sítí nebo chybějícími klíči.", + "encryption_security_error": "Chyba šifrovací bezpečnosti. Prosím zkuste se přihlásit znovu.", + "login_successful": "Přihlášení úspěšné", + "2fa_setup_required": "Vyžaduje se nastavení 2FA", + "scan_qr_with_authenticator": "Naskenujte QR kód pomocí vaší autentizační aplikace", + "unknown_error": "Došlo k neznámé chybě", + "auth_network_error": "Chyba sítě během autentizace", + "auth_process_failed": "Proces autentizace se nezdařil", + "2fa_invalid_code": "Neplatný ověřovací kód", + "2fa_verification_failed": "Ověření se nezdařilo: {message}", + "copied_to_clipboard": "Zkopírováno do schránky", + "paste_in_authenticator": "Vložte tento kód do vaší autentizační aplikace", + "2fa_setup": "Nastavení dvoufaktorové autentizace", + "2fa_scan": "Naskenujte QR kód pomocí vaší autentizační aplikace", + "2fa_scan_difficulty": "Máte problémy se skenováním? Můžete zkopírovat nastavovací klíč níže:", + "copy_setup_key": "Kopírovat nastavovací klíč", + "unlock_encryption": "Odemknout šifrování", + "enter_encryption_password": "Zadejte vaše hlavní heslo", + "enter_encryption_password_desc": "Zadejte vaše hlavní heslo pro dešifrování vašeho soukromého klíče.", + "unlocking": "Odemknutí...", + "unlock": "Odemknout", + "encryption_unlocked": "Šifrování odemčeno", + "encryption_key_decrypted": "Váš šifrovací klíč byl úspěšně dešifrován", + "incorrect_encryption_password": "Nesprávné hlavní heslo. Prosím zkuste znovu.", + "multi_device_login": "Přihlášení z nového zařízení", + "multi_device_desc": "Přihlašujete se z nového zařízení. Prosím zadejte vaše hlavní heslo pro přístup k vašim šifrovaným datům.", + "authenticating": "Autentizace...", + "download_password_title": "Vaše Zecrypt šifrovací heslo:", + "download_password_important": "DŮLEŽITÉ: Uchovejte toto heslo v bezpečí. Budete ho potřebovat pro přístup k vašim šifrovaným datům.", + "download_filename": "zecrypt-encryption-password.txt" + }, + "features": { + "trial_title": "Váš správce bezpečného úložiště", + "unlimited_devices": "Neomezená zařízení — zcela zdarma navždy", + "shared_vaults": "Sdílejte přihlašovací údaje bez námahy s členy týmu - (Již brzy)", + "advanced_security": "Vojenská úroveň šifrování (AES-GCM) pro pevnou bezpečnost", + "security_alerts": "Okamžité upozornění na narušení, abyste byli vždy o krok napřed - (Již brzy)", + "multi_platform": "Dostupné na Mac, iOS, Windows, Android, Chrome OS a Linux - (již brzy)", + "organization": "Organizace", + "organization_desc": "Organizujte přihlašovací údaje do projektů pro lepší správu a rychlý přístup.", + "secure_storage": "Bezpečné úložiště", + "secure_storage_desc": "Ukládejte všechna vaše hesla a citlivá data s vojenskou úrovní šifrování.", + "secure_password_manager": "End-to-end šifrované cloudové úložiště" + }, + "actions": { + "add": "Přidat", + "edit": "Upravit", + "delete": "Smazat", + "cancel": "Zrušit", + "close": "Zavřít", + "save": "Uložit", + "saving": "Ukládání...", + "deleting": "Mazání...", + "submit": "Odeslat", + "ok": "OK", + "yes": "Ano", + "no": "Ne", + "confirm": "Potvrdit", + "confirm_delete": "Potvrdit smazání", + "continue": "Pokračovat", + "back": "Zpět", + "next": "Další", + "search": "Hledat", + "filter": "Filtrovat", + "clear": "Vymazat", + "reset": "Resetovat", + "refresh": "Obnovit", + "upload": "Nahrát", + "download": "Stáhnout", + "copy": "Kopírovat", + "paste": "Vložit", + "cut": "Vyjmout", + "undo": "Zpět", + "redo": "Znovu", + "select_all": "Vybrat vše", + "select_none": "Nevybrat nic", + "create": "Vytvořit", + "update": "Aktualizovat", + "remove": "Odebrat", + "error": "Chyba", + "view": "Zobrazit" + }, + "dashboard": { + "project_limit_reached": "Dosažen limit projektů", + "alpha_one_project_limit": "Momentálně běžíme na alfa verzi, je povolen pouze jeden projekt na pracovní prostor.", + "select_project": "Vybrat projekty", + "manage_projects": "Spravovat projekty", + "select_or_create_project": "Vyberte nebo vytvořte projekt", + "welcome_back": "Vítejte zpět ve vašem bezpečném pracovním prostoru", + "total_passwords": "Celkem hesel", + "total_accounts": "Celkem účtů", + "total_folders": "Celkem složek", + "recently_added_accounts": "Nedávno přidané účty", + "from_last_month": "z minulého měsíce", + "create_project_details": "Vytvořit podrobnosti projektu", + "recent_activity": "Nedávná aktivita", + "keyboard_shortcuts": "Klávesové zkratky", + "generate_password": "Generovat heslo", + "favourites": "Oblíbené", + "no_description": "Žádný popis", + "notes": "Poznámky", + "confirm_delete_project": "Potvrdit smazání projektu", + "create_project": "Vytvořit projekt", + "set_as_default_project": "Nastavit jako výchozí projekt", + "project_name": "Název projektu", + "describe_project_purpose": "Popište účel projektu", + "free_plan_limit": "Limit bezplatného plánu", + "save_changes": "Uložit změny", + "no_project_availbale": "Žádný projekt není k dispozici", + "cancel": "Zrušit", + "delete": "Smazat", + "add_favorite_tag": "Přidat oblíbený štítek", + "remove_tag": "Odebrat {tag}", + "dashboard": "Dashboard", + "show_more": "Zobrazit více", + "show_less": "Zobrazit méně", + "overview": "Přehled", + "project": "Projekt", + "notifications": "Oznámení", + "settings": "Nastavení", + "logout": "Odhlásit se", + "current_project": "Aktuální projekt", + "default": "Výchozí", + "no_project_selected": "Není vybrán žádný projekt", + "quick_stats": "Rychlé statistiky", + "workspaces": "Pracovní prostory", + "projects": "Projekty", + "available_features": "Dostupné funkce", + "team_members": "Členové týmu", + "total_projects": "Celkem projektů", + "total_workspaces": "Celkem pracovních prostorů", + "total_team_members": "Celkem členů týmu", + "total_records": "Celkem záznamů", + "my_account": "Můj účet", + "change_language": "Změnit jazyk", + "language": "Jazyk", + "toggle_theme": "Přepnout téma", + "wallet_passphrases": "Hesla peněženky", + "wi_fi": "Wi-Fi", + "env": "Proměnné prostředí", + "env_variables": "Proměnné prostředí", + "search": "Hledat", + "create_new_project": "Vytvořit nový projekt", + "add_new_project_description": "Přidejte nový projekt pro organizaci vašich bezpečných dat", + "description": "Popis", + "optional": "Volitelné", + "project_color": "Barva projektu", + "enabled_modules": "Povolené moduly", + "edit_project": "Upravit projekt", + "update_project_details": "Aktualizujte podrobnosti vašeho projektu", + "my_project": "Můj projekt", + "creating": "Vytváření...", + "delete_project": "Smazat projekt", + "identity_coming_soon": "Modul identity je ve vývoji.", + "cards_coming_soon": "Modul karet je ve vývoji.", + "software_licenses_coming_soon": "Modul softwarových licencí je ve vývoji.", + "wifi_coming_soon": "Modul Wi-Fi je ve vývoji.", + "profile": "Profil", + "search_modules": "Hledat moduly...", + "no_modules_found": "Nebyly nalezeny žádné moduly", + "general": "Obecné", + "security_access": "Bezpečnost a přístup", + "business_finance": "Obchod a finance", + "licenses_services": "Licence a služby", + "accounts": "Účty", + "identity": "Identita", + "email": "E-mail", + "wifi": "WiFi", + "api_keys": "API klíče", + "ssh_keys": "SSH klíče", + "cards": "Karty", + "software_licenses": "Softwarové licence", + "recent_accounts": "Nedávné účty", + "no_recent_accounts": "Žádné nedávné účty", + "last_24_hours": "Posledních 24 hodin", + "no_accounts_create": "Nebyly nalezeny žádné účty. Vytvořte jeden pro začátek.", + "adjust_search_filter": "Zkuste upravit vaše vyhledávání nebo kritéria filtru", + "no_recent_activity": "Žádná nedávná aktivita", + "no_projects_available": "Žádné projekty nejsou k dispozici", + "no_workspace_selected": "Není vybrán žádný pracovní prostor" + }, + "activity": { + "password_updated": "Heslo aktualizováno", + "note_created": "Bezpečná poznámka vytvořena", + "you_create_login": "Vytvořili jste nové přihlášení", + "you_create_api_key": "Vytvořili jste nový API klíč", + "you_update_login": "Aktualizovali jste přihlášení", + "you_update_api_key": "Aktualizovali jste API klíč", + "you_delete_login": "Smazali jste přihlášení", + "you_delete_api_key": "Smazali jste API klíč", + "create_login": "Nové přihlášení vytvořeno", + "create_api_key": "Nový API klíč vytvořen", + "update_login": "Přihlášení aktualizováno", + "update_api_key": "API klíč aktualizován", + "delete_login": "Přihlášení smazáno", + "delete_api_key": "API klíč smazán" + }, + "time": { + "today": "Dnes", + "yesterday": "Včera", + "last_7_days": "Posledních 7 dní", + "last_30_days": "Posledních 30 dní", + "all_time": "Všechny časy", + "just_now": "Právě teď", + "hours_ago": "před {hours} hodinami", + "days_ago": "před {days} dny" + }, + "password_generator": { + "title": "Generátor hesel", + "strong": "Silné", + "memorable": "Zapamatovatelné", + "pin": "PIN", + "passphrase": "Fráze", + "chars": "znaků", + "digits": "čísel", + "generate_new": "Generovat nové heslo", + "generate_password": "Generovat heslo", + "click_generate_button": "Klikněte na tlačítko Generovat pro vygenerování nového hesla", + "copy": "Kopírovat heslo", + "copied": "Zkopírováno!", + "save": "Uložit heslo", + "close": "Zavřít", + "copy_password": "Kopírovat heslo", + "password_length": "Délka hesla", + "options": "Možnosti", + "advanced": "Pokročilé", + "advanced_options": "Pokročilé možnosti", + "history": "Historie", + "uppercase": "Velká písmena (A-Z)", + "lowercase": "Malá písmena (a-z)", + "numbers": "Číslice (0-9)", + "symbols": "Symboly (!@#$%^&*)", + "password_analysis": "Analýza hesla", + "strong_enough": "Dostatečně silné pro většinu webů", + "not_strong_enough": "Nedostatečně silné pro citlivé účty", + "good_length": "Dobrá délka", + "consider_longer": "Zvažte delší heslo", + "using_all_types": "Používá všechny typy znaků", + "consider_more_types": "Zvažte použití více typů znaků", + "all_characters": "Všechny znaky", + "easy_to_read": "Snadno čitelné (žádné podobné znaky jako 1, l, I, 0, O)", + "easy_to_say": "Snadno vyslovitelné (žádná čísla nebo speciální znaky)", + "password_tips": "Tipy pro hesla", + "tip_min_length": "• Používejte minimálně 14 znaků pro vysokou bezpečnost", + "tip_mix": "• Zahrňte mix písmen, čísel a symbolů", + "tip_no_personal": "• Vyhněte se použití osobních informací", + "tip_unique": "• Používejte jiné heslo pro každý účet", + "tip_manager": "• Zvažte použití správce hesel pro ukládání vašich hesel", + "recently_generated": "Nedávno vygenerované", + "clear_history": "Vymazat historii", + "no_history": "Zatím žádná historie hesel", + "history_hint": "Vygenerovaná hesla se zobrazí zde", + "weak": "Slabé", + "fair": "Průměrné", + "good": "Dobré", + "strong_strength": "Silné", + "strength": "{strength}% síla", + "current_session": "Aktuální relace", + "create_secure_passwords": "Vytvářejte bezpečná hesla pro vaše účty" + }, + "user_settings": { + "title": "Nastavení uživatele", + "description": "Spravujte nastavení účtu a preference", + "profile": "Profil", + "security": "Bezpečnost", + "notifications": "Oznámení", + "integrations": "Integrace", + "billing": "Fakturace", + "logout": "Odhlásit se", + "login_history": "Historie přihlášení", + "audit_log": "Auditní protokol", + "profile_title": "Profil a informace o účtu", + "profile_description": "Spravujte své osobní a účetní údaje", + "language": "Jazyk", + "select_language": "Vybrat jazyk", + "email_address": "E-mailová adresa", + "full_name": "Celé jméno", + "previous": "Předchozí", + "next": "Další", + "page": "Stránka", + "of": "z", + "saving": "Ukládání...", + "save_changes": "Uložit změny", + "profile_picture": "Profilový obrázek", + "loading_history": "Načítání historie přihlášení...", + "no_history_available": "Historie přihlášení není k dispozici", + "try_again": "Zkusit znovu", + "device_browser": "Zařízení a prohlížeč", + "ip_address": "IP adresa", + "time": "Čas" + }, + "accounts": { + "no_accounts": "Žádné účty", + "no_matching_accounts": "Nebyly nalezeny odpovídající účty", + "loading_accounts": "Načítání účtů...", + "error_fetching_accounts": "Nepodařilo se načíst účty", + "account_deleted_successfully": "Účet úspěšně smazán", + "error_deleting_account": "Nepodařilo se smazat účet", + "account_updated_successfully": "Účet úspěšně aktualizován", + "all_fields_required": "Prosím vyplňte všechna povinná pole", + "account_already_exists": "Účet s tímto názvem již existuje", + "validation_error": "Neplatná vstupní data. Zkontrolujte vaše zadání", + "failed_to_add_account": "Nepodařilo se přidat účet. Prosím zkuste znovu", + "missing_auth_or_selection": "Prosím přihlaste se nebo vyberte pracovní prostor a projekt", + "please_log_in": "Prosím přihlaste se pro pokračování", + "server_error": "Došlo k chybě serveru. Prosím zkuste později", + "adding": "Přidávání...", + "ascending": "Vzestupně", + "descending": "Sestupně", + "add": "Přidat", + "cancel": "Zrušit", + "account_name": "Název účtu", + "enter_account_name": "Zadejte název účtu", + "username": "Uživatelské jméno", + "enter_username": "Zadejte uživatelské jméno", + "add_account": "Přidat účet", + "add_new_account": "Přidat nový účet", + "password": "Heslo", + "enter_password": "Zadejte heslo", + "website": "Webová stránka", + "enter_website": "Zadejte URL webové stránky", + "enter_website_url": "Zadejte URL webové stránky", + "notes": "Poznámky", + "enter_notes": "Zadejte poznámky", + "tags": "Štítky", + "enter_tags_comma_separated": "Zadejte štítky (oddělené čárkami)", + "accounts": "Účty", + "manage_your_saved_accounts_and_passwords": "Spravujte své uložené účty a hesla", + "encryption_key_not_found": "Šifrovací klíč projektu nebyl nalezen. Nelze uložit účet.", + "project_not_found": "Projekt nebyl nalezen. Prosím vyberte platný projekt.", + "encryption_failed": "Nepodařilo se zašifrovat data účtu. Prosím zkuste znovu.", + "decryption_failed": "Nepodařilo se dešifrovat data účtu. To může být způsobeno chybějícím nebo neplatným šifrovacím klíčem.", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "select_project": "Vybrat projekt", + "no_project_selected": "Není vybrán žádný projekt", + "please_select_a_project": "Prosím vyberte projekt pro zobrazení účtů", + "loading": "Načítání...", + "error": "Chyba", + "try_again": "Zkusit znovu", + "no_accounts_found": "Nebyly nalezeny žádné účty", + "no_accounts_exist": "Pro tento projekt neexistují žádné účty", + "adjust_search_or_filter": "Upravte vaše vyhledávání nebo filtr pro nalezení účtů", + "generate_password": "Generovat heslo", + "account": "Účet", + "category": "Kategorie", + "last_modified": "Poslední úprava", + "date_created": "Datum vytvoření", + "actions": "Akce", + "copy_username": "Kopírovat uživatelské jméno", + "copied": "Zkopírováno", + "copy_password": "Kopírovat heslo", + "show_password": "Zobrazit heslo", + "hide_password": "Skrýt heslo", + "edit": "Upravit", + "delete": "Smazat", + "confirm_deletion": "Potvrdit smazání", + "confirm_delete_account": "Jste si jisti, že chcete smazat tento účet?", + "confirm_delete_account_description": "Tuto akci nelze vrátit zpět a trvale se smažou přihlašovací údaje účtu.", + "deleting": "Mazání...", + "showing": "Zobrazení", + "of": "z", + "rows_per_page": "Řádky na stránku", + "clear_filters": "Vymazat filtry", + "accounts_not_found": "Účty nebyly nalezeny", + "account_not_found": "Účet nebyl nalezen", + "failed_to_delete_account": "Nepodařilo se smazat účet", + "failed_to_update_account": "Nepodařilo se aktualizovat účet", + "updating": "Aktualizování...", + "update": "Aktualizovat", + "view_details": "Zobrazit podrobnosti", + "filter_warning": "Filtry mohou ovlivnit přesnost stránkování, protože serverové filtrování není podporováno.", + "search": "Hledat", + "search_accounts": "Hledat účty", + "all_accounts": "Všechny účty", + "personal": "Osobní", + "work": "Práce", + "finance": "Finance", + "clear": "Vymazat", + "clear_sort": "Vymazat", + "favorite": "Oblíbené", + "no_accounts_create": "Nebyly nalezeny žádné účty. Vytvořte jeden pro začátek.", + "adjust_search_filter": "Zkuste upravit vaše vyhledávání nebo kritéria filtru", + "error_loading_workspace": "Nepodařilo se načíst data pracovního prostoru", + "focus_search": "Zaměřit vyhledávání", + "switch_project": "Přepnout projekt", + "add_a_tag": "Přidat štítek", + "edit_account": "Upravit účet", + "update_account": "Aktualizovat účet", + "filter_by_tag": "Filtrovat podle štítku", + "confirm_delete": "Potvrdit smazání", + "delete_account_confirmation": "Jste si jisti, že chcete smazat tento účet? Tuto akci nelze vrátit zpět.", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace" + }, + "api_keys": { + "title": "API klíče", + "description": "Spravujte své API klíče pro programový přístup ke službám Zecrypt.", + "edit_api_key": "Upravit API klíč", + "search": "Hledat", + "name": "Název", + "key": "Klíč", + "api_key": "API klíč", + "enter_api_key": "Zadejte API klíč", + "type": "Typ", + "created": "Vytvořeno", + "expires": "Vyprší", + "status": "Stav", + "actions": "Akce", + "clear": "Vymazat", + "sort": "Seřadit", + "last_used": "Prostředí", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "clear_filters": "Vymazat filtry", + "create_new_api_key": "Vytvořit nový API klíč", + "enter_details_for_new_api_key": "Zadejte údaje pro váš nový API klíč", + "api_key_name": "Název API klíče", + "enter_api_key_name": "např. Produkční backend", + "key_type": "Typ klíče", + "key_preview": "Náhled klíče", + "key_preview_description": "Skutečný klíč bude vygenerován, když kliknete na \"Vytvořit API klíč\"", + "create_api_key": "Vytvořit API klíč", + "cancel": "Zrušit", + "rows_per_page": "Řádky na stránku", + "add_api_key": "Přidat API klíč", + "no_api_keys_found": "Nebyly nalezeny žádné API klíče", + "try_adjusting_search_or_filter": "Zkuste upravit vaše vyhledávání nebo kritéria filtru", + "error_fetching_api_keys": "Nepodařilo se načíst API klíče", + "failed_to_fetch_api_keys": "Nepodařilo se načíst API klíče. Prosím zkuste znovu.", + "confirm_delete_api_key": "Jste si jisti, že chcete smazat tento API klíč?", + "api_key_deleted_successfully": "API klíč úspěšně smazán", + "api_key_deleted_description": "API klíč byl úspěšně smazán.", + "error_deleting_api_key": "Nepodařilo se smazat API klíč", + "failed_to_delete_api_key": "Nepodařilo se smazat API klíč. Prosím zkuste znovu.", + "api_key_updated_successfully": "API klíč aktualizován", + "api_key_updated_description": "API klíč byl úspěšně aktualizován.", + "api_key_added_successfully": "API klíč přidán", + "api_key_added_description": "API klíč byl úspěšně přidán.", + "failed_to_update_api_key": "Nepodařilo se aktualizovat API klíč. Prosím zkuste znovu.", + "manage_your_api_keys": "Spravujte své API klíče", + "showing": "Zobrazení", + "of": "z", + "add_new_api_key": "Přidat nový API klíč", + "add_new_api_key_description": "Zadejte údaje o vašem API klíči níže", + "api_key_already_exists": "API klíč s tímto názvem již existuje.", + "error_adding_api_key": "Nepodařilo se přidat API klíč kvůli chybě serveru.", + "failed_to_add_api_key": "Nepodařilo se přidat API klíč. Prosím zkuste znovu.", + "error_updating_api_key": "Nepodařilo se aktualizovat API klíč kvůli chybě serveru.", + "invalid_input_data": "Neplatná vstupní data. Zkontrolujte vaše zadání.", + "network_error": "Chyba sítě. Zkontrolujte vaše připojení a zkuste znovu.", + "no_api_keys_for_env": "Nebyly nalezeny API klíče pro prostředí '{env}'. Zkuste jiné prostředí nebo vymažte filtry.", + "no_api_keys_match_search": "Žádné API klíče neodpovídají vyhledávání '{search}'. Zkuste upravit vaše vyhledávání.", + "adjust_search_filter": "Zkuste upravit vaše vyhledávání nebo kritéria filtru.", + "copied": "Zkopírováno", + "api_key_copied": "API klíč byl zkopírován do vaší schránky.", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_api_key": "Nepodařilo se zkopírovat API klíč do schránky.", + "show_key": "Zobrazit klíč", + "hide_key": "Skrýt klíč", + "copy_key": "Kopírovat klíč", + "edit": "Upravit", + "delete": "Smazat", + "decryption_error": "Chyba dešifrování - prosím upravte pro aktualizaci formátu", + "adding": "Přidávání...", + "updating": "Aktualizovat", + "no_project_selected": "Není vybrán žádný projekt. Prosím vyberte projekt pro pokračování.", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "loading_api_keys": "Načítání API klíčů...", + "api_keys": "API klíče", + "env": "Prostředí", + "tags": "Štítky", + "last_modified": "Poslední úprava", + "api_key_description": "Popis API klíče", + "enter_description": "Zadejte popis pro tento API klíč", + "environment": "Prostředí", + "select_environment": "Vybrat prostředí", + "development": "Vývoj", + "staging": "Staging", + "production": "Produkce", + "testing": "Testování", + "local": "Lokální", + "uat": "UAT", + "add": "Přidat", + "add_a_tag": "Přidat štítek", + "update_api_key": "Aktualizovat API klíč", + "all_envs": "Všechna prostředí", + "search_across_all_fields": "Hledat", + "delete_api_key_confirmation": "Jste si jisti, že chcete smazat tento API klíč? Tuto akci nelze vrátit zpět.", + "deleting": "Mazání...", + "confirm_deletion": "Potvrdit smazání", + "edit_api_key_description": "Aktualizujte údaje o vašem API klíči", + "showing_results": "Zobrazení {startIdx}-{endIdx} z {totalCount} výsledků", + "notes": "Poznámky", + "enter_notes": "Zadejte poznámky", + "filter_by_env": "Filtrovat podle prostředí", + "date_created": "Datum vytvoření" + }, + "wallet_passphrases": { + "wallet_passphrases": "Hesla peněženky", + "securely_store_and_manage_your_wallet_recovery_phrases": "Bezpečně ukládejte a spravujte své obnovovací fráze peněženky", + "add_passphrase": "Přidat heslo", + "enter_wallet_address": "Zadejte adresu peněženky", + "copy_wallet_address": "Kopírovat adresu peněženky", + "wallet_address": "Adresa peněženky", + "add_your_first_passphrase": "Přidejte své první heslo", + "search_passphrases": "Hledat", + "no_wallet_passphrases_found": "Nebyly nalezeny žádné hesla peněženky", + "wallet_address_encryption_note": "Adresa peněženky je zašifrována pro bezpečnost", + "no_passphrases_found": "Nebyly nalezeny žádné fráze", + "no_passphrases_found_message": "Zatím jste nepřidali žádné hesla peněženky. Přidejte jedno pro začátek.", + "no_passphrases_found_search": "Žádné fráze neodpovídají vašim kritériím vyhledávání.", + "loading_passphrases": "Načítání frází...", + "please_wait_while_we_fetch_your_secure_passphrases": "Prosím počkejte, zatímco načítáme vaše bezpečné fráze", + "error_loading_passphrases": "Chyba při načítání frází", + "failed_to_load_passphrases": "Nepodařilo se načíst fráze. Prosím zkuste znovu.", + "passphrase_added_successfully": "Fráze úspěšně přidána", + "passphrase_added_description": "Vaše heslo peněženky bylo bezpečně uloženo.", + "passphrase_updated_successfully": "Fráze úspěšně aktualizována", + "passphrase_updated_description": "Vaše heslo peněženky bylo aktualizováno.", + "failed_to_add_passphrase": "Nepodařilo se přidat frázi", + "failed_to_update_passphrase": "Nepodařilo se aktualizovat frázi", + "wallet_phrase_already_exists": "Tato fráze nebo název již existuje ve vaší peněžence", + "invalid_input_data": "Neplatná vstupní data. Zkontrolujte vaše zadání.", + "no_project_selected": "Není vybrán žádný projekt. Prosím vyberte projekt.", + "passphrase_required": "Fráze je povinná", + "passphrase_must_be_exactly_12_words": "Fráze musí obsahovat přesně 12 slov (aktuálně {count})", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "name": "Název", + "add": "Přidat", + "sort": "Seřadit", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "sort_options": "Možnosti řazení", + "enter_passphrase_name": "Zadejte název fráze", + "passphrase": "Fráze", + "enter_wallet_recovery_phrase": "Zadejte obnovovací frázi peněženky", + "notes": "Poznámky", + "enter_notes": "Zadejte poznámky", + "wallet_type": "Typ peněženky", + "select_wallet_type": "Vybrat typ peněženky", + "tags": "Štítky", + "add_a_tag": "Přidat štítek", + "save_passphrase": "Uložit frázi", + "update_passphrase": "Aktualizovat frázi", + "passphrase_encryption_note": "Vaše fráze bude zašifrována pro bezpečnost.", + "adding": "Přidávání...", + "updating": "Aktualizování...", + "search_across_all_fields": "Hledat", + "filter_by_wallet_type": "Filtrovat podle typu peněženky", + "all_wallet_types": "Všechny typy peněženek", + "clear_filters": "Vymazat filtry", + "last_modified": "Poslední úprava", + "actions": "Akce", + "hide_passphrase": "Skrýt frázi", + "show_passphrase": "Zobrazit frázi", + "copy_passphrase": "Kopírovat frázi", + "edit": "Upravit", + "delete": "Smazat", + "showing_results": "Zobrazení {startIdx}-{endIdx} z {totalCount} výsledků", + "confirm_deletion": "Potvrdit smazání", + "delete_passphrase_confirmation": "Jste si jisti, že chcete smazat toto heslo peněženky? Tuto akci nelze vrátit zpět.", + "deleting": "Mazání...", + "add_new_passphrase_description": "Zadejte údaje o vašem hesle peněženky níže", + "edit_passphrase": "Upravit frázi", + "edit_passphrase_description": "Aktualizujte údaje o vašem hesle peněženky", + "copied": "Zkopírováno", + "passphrase_copied": "Fráze zkopírována do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_passphrase": "Nepodařilo se zkopírovat frázi do schránky", + "cancel": "Zrušit", + "date_created": "Datum vytvoření" + }, + "identity": { + "title": "Identita", + "description": "Spravujte osobní identifikační informace bezpečně", + "add_identity": "Přidat identitu", + "no_identities_found": "Nebyly nalezeny žádné identity", + "no_identities_found_message": "Zatím jste nepřidali žádné identifikační informace.", + "add_your_first_identity": "Přidejte svou první identitu", + "loading_identities": "Načítání identit...", + "search_identities": "Hledat", + "full_name": "Celé jméno", + "country": "Země", + "enter_full_name": "Zadejte celé jméno", + "date_of_birth": "Datum narození", + "enter_date_of_birth": "Zadejte datum narození (YYYY-MM-DD)", + "address": "Adresa", + "enter_address": "Zadejte adresu", + "phone_number": "Telefonní číslo", + "enter_phone_number": "Zadejte telefonní číslo", + "identity_number": "Číslo identity", + "enter_identity_number": "Zadejte číslo identity (jako pas, občanský průkaz)", + "tags": "Štítky", + "enter_tags_comma_separated": "Zadejte štítky (oddělené čárkami)", + "last_modified": "Poslední úprava", + "actions": "Akce", + "edit": "Upravit", + "delete": "Smazat", + "copy_field": "Kopírovat {field}", + "copied": "Zkopírováno", + "identity_deleted_successfully": "Identita úspěšně smazána", + "error_deleting_identity": "Nepodařilo se smazat identitu", + "identity_updated_successfully": "Identita úspěšně aktualizována", + "failed_to_add_identity": "Nepodařilo se přidat identitu", + "all_fields_required": "Prosím vyplňte všechna povinná pole", + "validation_error": "Neplatná vstupní data. Zkontrolujte vaše zadání", + "server_error": "Došlo k chybě serveru. Prosím zkuste později", + "identities": "Identity", + "filter_by_tag": "Filtrovat podle štítku", + "all_tags": "Všechny štítky", + "search": "Hledat", + "clear_filters": "Vymazat filtry", + "name": "Název", + "contact": "Kontakt", + "passport": "Pas", + "national_id": "Občanský průkaz", + "add_new_identity": "Přidat novou identitu", + "add_new_identity_description": "Zadejte údaje o identitě níže", + "first_name": "Jméno", + "last_name": "Příjmení", + "email": "E-mail", + "phone": "Telefon", + "passport_number": "Číslo pasu", + "cancel": "Zrušit", + "save": "Uložit", + "edit_identity": "Upravit identitu", + "edit_identity_description": "Aktualizujte údaje o identitě", + "update": "Aktualizovat", + "identity_deleted": "Identita smazána", + "identity_deleted_description": "Identita byla úspěšně smazána", + "field_copied": "Pole zkopírováno do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_field": "Nepodařilo se zkopírovat pole do schránky", + "hide_sensitive_data": "Skrýt citlivá data", + "show_sensitive_data": "Zobrazit citlivá data", + "showing_results": "Zobrazení {startIdx}-{endIdx} z {totalCount} výsledků", + "page_of": "Stránka {currentPage} z {totalPages}", + "copy_passport": "Kopírovat číslo pasu", + "copy_national_id": "Kopírovat občanský průkaz", + "identity_added_successfully": "Identita úspěšně přidána", + "error_adding_identity": "Chyba při přidávání identity", + "error_updating_identity": "Chyba při aktualizaci identity", + "missing_workspace_project": "Chybí pracovní prostor nebo projekt", + "first_name_required": "Jméno je povinné", + "last_name_required": "Příjmení je povinné", + "invalid_email": "Neplatný formát e-mailu", + "invalid_date_format": "Neplatný formát data (YYYY-MM-DD)", + "title_required": "Název je povinný", + "title_placeholder": "Osobní identita", + "first_name_placeholder": "Jan", + "last_name_placeholder": "Novák", + "email_placeholder": "jan.novak@example.com", + "phone_placeholder": "+420 600 123 456", + "address_placeholder": "123 Václavské náměstí, Praha, 110 00", + "passport_placeholder": "A12345678", + "national_id_placeholder": "12345678", + "notes": "Poznámky", + "notes_placeholder": "Dodatečné informace", + "tags_placeholder": "Přidat štítky", + "adding": "Přidávání...", + "updating": "Aktualizování...", + "deleting": "Mazání...", + "add": "Přidat", + "confirm_deletion": "Potvrdit smazání", + "delete_identity_confirmation": "Jste si jisti, že chcete smazat tuto identitu? Tuto akci nelze vrátit zpět.", + "error_fetching_identities": "Chyba při načítání identit", + "national_id_required": "Občanský průkaz je povinný", + "identity_type": "Typ identity", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "search_across_all_fields": "Hledat", + "searches_all_fields": "Hledat v názvu, typu, kontaktu, adrese, identitě a štítcích", + "encryption_key_not_found": "Šifrovací klíč projektu nebyl nalezen. Nelze uložit identitu.", + "project_not_found": "Projekt nebyl nalezen. Prosím vyberte platný projekt.", + "encryption_failed": "Nepodařilo se zašifrovat data identity. Prosím zkuste znovu.", + "decryption_failed": "Nepodařilo se dešifrovat data identity. To může být způsobeno chybějícím nebo neplatným šifrovacím klíčem.", + "manage_your_personal_identities": "Spravujte osobní identifikační informace bezpečně", + "date_created": "Datum vytvoření" + }, + "cards": { + "title": "Karty", + "description": "Spravujte informace o kreditních a debetních kartách bezpečně", + "add_card": "Přidat kartu", + "no_cards_found": "Nebyly nalezeny žádné karty", + "no_cards_found_message": "Zatím jste nepřidali žádné informace o kartě.", + "add_your_first_card": "Přidejte svou první kartu", + "loading_cards": "Načítání karet...", + "search_cards": "Hledat", + "card_name": "Název karty", + "name": "Název", + "enter_card_name": "Zadejte název karty (jako Visa končící na 1234)", + "card_number": "Číslo karty", + "enter_card_number": "Zadejte číslo karty", + "expiry_date": "Datum vypršení", + "enter_expiry_date": "Zadejte datum vypršení (MM/RR)", + "cvv": "CVV", + "enter_cvv": "Zadejte CVV", + "cardholder_name": "Držitel karty", + "card_holder_name": "Držitel karty", + "enter_cardholder_name": "Zadejte držitele karty", + "tags": "Štítky", + "enter_tags_comma_separated": "Zadejte štítky (oddělené čárkami)", + "last_modified": "Poslední úprava", + "actions": "Akce", + "edit": "Upravit", + "delete": "Smazat", + "copy_field": "Kopírovat {field}", + "copied": "Zkopírováno", + "card_deleted_successfully": "Karta úspěšně smazána", + "error_deleting_card": "Nepodařilo se smazat kartu", + "card_updated_successfully": "Karta úspěšně aktualizována", + "card_added_successfully": "Karta úspěšně přidána", + "failed_to_add_card": "Nepodařilo se přidat kartu", + "all_fields_required": "Prosím vyplňte všechna povinná pole", + "validation_error": "Neplatná vstupní data. Zkontrolujte vaše zadání", + "server_error": "Došlo k chybě serveru. Prosím zkuste později", + "credit_cards": "Kreditní karty", + "filter_by_brand": "Filtrovat podle značky", + "all_brands": "Všechny značky", + "search": "Hledat", + "clear_filters": "Vymazat filtry", + "card_holder": "Držitel", + "brand": "Značka", + "expiry": "Vypršení", + "add_new_card": "Přidat novou kartu", + "add_new_card_description": "Zadejte údaje o kreditní kartě níže", + "select_brand": "Vybrat značku", + "expiry_month": "Měsíc vypršení", + "expiry_year": "Rok vypršení", + "cancel": "Zrušit", + "save": "Uložit", + "edit_card": "Upravit kartu", + "edit_card_description": "Aktualizujte údaje o kreditní kartě", + "update": "Aktualizovat", + "card_deleted": "Karta smazána", + "card_deleted_description": "Karta byla úspěšně smazána", + "field_copied": "Pole zkopírováno do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_field": "Nepodařilo se zkopírovat pole do schránky", + "hide_card_number": "Skrýt číslo karty", + "show_card_number": "Zobrazit číslo karty", + "copy_to_clipboard": "Kopírovat do schránky", + "showing_results": "Zobrazení {startIdx}-{endIdx} z {totalCount} výsledků", + "page_of": "Stránka {currentPage} z {totalPages}", + "title_placeholder": "Osobní Visa karta", + "card_holder_name_placeholder": "Jan Novák", + "card_number_placeholder": "4111 1111 1111 1111", + "notes": "Poznámky", + "notes_placeholder": "Dodatečné informace o této kartě", + "tags_placeholder": "Přidat štítky", + "add": "Přidat", + "adding": "Přidávání...", + "updating": "Aktualizování...", + "deleting": "Mazání...", + "confirm_delete": "Potvrdit smazání", + "delete_card_confirmation": "Jste si jisti, že chcete smazat tuto kartu? Tuto akci nelze vrátit zpět.", + "error_fetching_cards": "Chyba při načítání karet", + "missing_workspace_project": "Chybí pracovní prostor nebo projekt", + "title_required": "Název je povinný", + "card_holder_name_required": "Držitel karty je povinný", + "card_number_required": "Číslo karty je povinné", + "invalid_card_number": "Neplatné číslo karty", + "cvv_required": "CVV je povinné", + "invalid_cvv": "Neplatné CVV", + "brand_required": "Značka je povinná", + "error_adding_card": "Chyba při přidávání karty", + "error_updating_card": "Chyba při aktualizaci karty", + "other": "Ostatní", + "filter_by_tag": "Filtrovat podle štítku", + "all_tags": "Všechny štítky", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "search_across_all_fields": "Hledat", + "searches_all_fields": "Hledat v názvu, držiteli, čísle karty, značce a štítcích", + "missing_auth_or_selection": "Chybí autentizace nebo výběr", + "encryption_key_not_found": "Šifrovací klíč projektu nebyl nalezen. Nelze uložit kartu.", + "project_not_found": "Projekt nebyl nalezen. Prosím vyberte platný projekt.", + "encryption_failed": "Nepodařilo se zašifrovat data karty. Prosím zkuste znovu.", + "decryption_failed": "Nepodařilo se dešifrovat data karty. To může být způsobeno chybějícím nebo neplatným šifrovacím klíčem.", + "manage_your_cards": "Spravujte informace o kreditních a debetních kartách bezpečně", + "date_created": "Datum vytvoření" + }, + "wifi": { + "wifi_networks": "Wi-Fi sítě", + "manage_your_wifi_networks": "Spravujte Wi-Fi sítě bezpečně.", + "add_wifi": "Přidat Wi-Fi", + "add_new_wifi": "Přidat nové Wi-Fi", + "add_new_wifi_description": "Zadejte údaje o Wi-Fi síti níže", + "edit_wifi": "Upravit Wi-Fi", + "edit_wifi_description": "Aktualizujte údaje o Wi-Fi síti", + "search_wifi": "Hledat", + "filter_by_security": "Filtrovat podle zabezpečení", + "all_security_types": "Všechny typy zabezpečení", + "none": "Žádné", + "clear": "Vymazat", + "clear_filters": "Vymazat filtry", + "loading_wifi": "Načítání Wi-Fi sítí...", + "no_wifi_found": "Nebyly nalezeny žádné Wi-Fi sítě", + "no_wifi_for_security_type": "Nebyly nalezeny Wi-Fi sítě pro {security_type}", + "no_wifi_match_search": "Žádné Wi-Fi sítě neodpovídají vašemu vyhledávání '{search}'", + "name": "Název", + "loading_wifi_networks": "Načítání Wi-Fi sítí", + "no_wifi_networks_found": "Nebyly nalezeny žádné Wi-Fi sítě", + "add_wifi_network": "Přidat Wi-Fi síť", + "no_wifi_for_tag": "Nebyly nalezeny Wi-Fi sítě se štítkem {tag}", + "adjust_search_filter": "Zkuste upravit vaše vyhledávání nebo filtr pro nalezení toho, co hledáte.", + "ssid": "SSID", + "security": "Zabezpečení", + "security_type": "Typ zabezpečení", + "select_security_type": "Vybrat typ zabezpečení", + "notes": "Poznámky", + "enter_notes": "Zadejte poznámky", + "password": "Heslo", + "enter_password": "Zadejte heslo", + "enter_new_password": "Zadejte nové heslo (nechte prázdné pro zachování změny)", + "show_password": "Zobrazit heslo", + "hide_password": "Skrýt heslo", + "copy_password": "Kopírovat heslo", + "tags": "Štítky", + "add_a_tag": "Přidat štítek", + "add": "Přidat", + "last_modified": "Poslední úprava", + "date_created": "Datum vytvoření", + "actions": "Akce", + "showing": "Zobrazení", + "of": "z", + "rows_per_page": "Řádky na stránku", + "edit": "Upravit", + "copy_ssid": "Kopírovat SSID", + "delete": "Smazat", + "confirm_delete_wifi": "Potvrdit smazání WiFi", + "delete_wifi_confirmation": "Jste si jisti, že chcete smazat tuto Wi-Fi síť? Tuto akci nelze vrátit zpět.", + "wifi_deleted": "WiFi smazáno", + "wifi_deleted_description": "Wi-Fi síť byla úspěšně smazána.", + "failed_to_delete_wifi": "Nepodařilo se smazat Wi-Fi síť", + "error_deleting_wifi": "Chyba při mazání WiFi", + "error_fetching_wifi_networks": "Chyba při načítání Wi-Fi sítí", + "failed_to_fetch_wifi_networks": "Nepodařilo se načíst Wi-Fi sítě", + "no_project_selected": "Není vybrán žádný projekt. Prosím vyberte projekt pro pokračování.", + "copied": "Zkopírováno", + "field_copied": "Pole zkopírováno do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_field": "Nepodařilo se zkopírovat pole do schránky", + "show_qr_code": "Zobrazit QR kód", + "wifi_qr_code": "QR kód WiFi", + "wifi_qr_code_description": "Naskenujte tento QR kód pro připojení k Wi-Fi síti.", + "qr_code_placeholder": "QR kód", + "wifi_credentials": "Přihlašovací údaje WiFi", + "close": "Zavřít", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "wifi_added_successfully": "WiFi úspěšně přidáno", + "wifi_added_description": "Wi-Fi síť byla přidána.", + "wifi_already_exists": "Wi-Fi síť s tímto SSID již existuje", + "failed_to_add_wifi": "Nepodařilo se přidat Wi-Fi síť", + "enter_ssid": "Zadejte SSID", + "update_wifi": "Aktualizovat WiFi", + "wifi_updated_successfully": "WiFi úspěšně aktualizováno", + "wifi_updated_description": "Wi-Fi síť byla aktualizována.", + "wifi_not_found": "Wi-Fi síť nebyla nalezena", + "failed_to_update_wifi": "Nepodařilo se aktualizovat Wi-Fi síť", + "invalid_input_data": "Neplatná vstupní data", + "adding": "Přidávání...", + "updating": "Aktualizování...", + "deleting": "Mazání...", + "cancel": "Zrušit", + "encryption_key_not_found": "Šifrovací klíč projektu nebyl nalezen. Nelze uložit Wi-Fi síť.", + "project_not_found": "Projekt nebyl nalezen. Prosím vyberte platný projekt.", + "encryption_failed": "Nepodařilo se zašifrovat data WiFi. Prosím zkuste znovu.", + "decryption_failed": "Nepodařilo se dešifrovat data WiFi. To může být způsobeno chybějícím nebo neplatným šifrovacím klíčem.", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "filter_by_tag": "Filtrovat podle štítku", + "all_tags": "Všechny štítky", + "scan_with_phone": "Naskenujte tento QR kód pomocí vašeho telefonu pro připojení k síti" + }, + "key_shortcuts": { + "title": "Klávesové zkratky" + }, + "notes": { + "add_new_note": "Přidat novou poznámku", + "note_title": "Název poznámky", + "note_content": "Obsah poznámky", + "tags": "Štítky", + "update_note": "Aktualizovat poznámku", + "enter_note_title": "Zadejte název poznámky", + "add_a_tag": "Přidat štítek", + "add_note": "Přidat poznámku", + "cancel": "Zrušit" + }, + "emails": { + "email_accounts": "E-mailové účty", + "add_email": "Přidat e-mail", + "search_email_accounts": "Hledat", + "per_page": "na stránku", + "clear_filters": "Vymazat filtry", + "title": "Název", + "email_address": "E-mailová adresa", + "servers": "Servery", + "username": "Uživatelské jméno", + "password": "Heslo", + "last_modified": "Poslední úprava", + "tags": "Štítky", + "loading_emails": "Načítání e-mailu", + "actions": "Akce", + "loading": "Načítání...", + "no_results_found": "Nebyly nalezeny žádné výsledky", + "no_email_accounts": "Žádné e-mailové účty", + "copy": "Kopírovat", + "copy_to_clipboard": "Kopírovat do schránky", + "show_password": "Zobrazit heslo", + "hide_password": "Skrýt heslo", + "open_menu": "Otevřít menu", + "edit": "Upravit", + "delete": "Smazat", + "deleted": "Smazáno", + "showing_results": "Zobrazení {start} až {end} z {total} výsledků", + "confirm_delete": "Potvrdit smazání", + "delete_email_confirmation": "Jste si jisti, že chcete smazat tento e-mailový účet? Tuto akci nelze vrátit zpět.", + "cancel": "Zrušit", + "deleting": "Mazání...", + "copied": "Zkopírováno", + "field_copied": "Hodnota zkopírována do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_value": "Nepodařilo se zkopírovat hodnotu do schránky", + "encryption_error": "Chyba šifrování", + "could_not_encrypt_data": "Nepodařilo se zašifrovat data. Prosím zkuste znovu.", + "success": "Úspěch", + "email_added_successfully": "E-mailový účet úspěšně přidán", + "error_adding_email": "Chyba při přidávání e-mailového účtu. Prosím zkuste znovu.", + "email_deleted_successfully": "Přihlašovací údaje e-mailu úspěšně smazány", + "failed_to_delete_email": "Nepodařilo se smazat přihlašovací údaje e-mailu", + "error_fetching_emails": "Nepodařilo se načíst e-mail", + "error": "Chyba", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "add_email_description": "Přidejte nový e-mailový účet do vašeho bezpečného trezoru", + "title_placeholder": "Pracovní e-mail", + "email_address_placeholder": "vas.email@example.com", + "imap_server": "IMAP server", + "imap_server_placeholder": "imap.example.com", + "smtp_server": "SMTP server", + "smtp_server_placeholder": "smtp.example.com", + "username_placeholder": "Volitelné, výchozí na e-mailovou adresu", + "password_placeholder": "Zadejte heslo", + "notes": "Poznámky (volitelné)", + "notes_placeholder": "Dodatečné informace o tomto e-mailovém účtu", + "add_tag": "Přidat štítek", + "remove": "Odebrat", + "adding": "Přidávání...", + "add": "Přidat", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "email_title_already_exists": "E-mail s tímto názvem již existuje", + "invalid_email_format": "Neplatný formát e-mailu", + "missing_required_data": "Chybí povinná data projektu", + "edit_email": "Upravit e-mailový účet", + "edit_email_description": "Aktualizujte údaje o e-mailovém účtu", + "save_changes": "Uložit změny", + "email_updated_successfully": "E-mailový účet úspěšně aktualizován", + "error_updating_email": "Chyba při aktualizaci e-mailového účtu. Prosím zkuste znovu.", + "manage_your_email_accounts": "Spravujte e-mailové účty a nastavení serveru bezpečně", + "date_created": "Datum vytvoření", + "filter_by_tag": "Filtrovat podle štítku", + "all_tags": "Všechny štítky" + }, + "ssh_keys": { + "ssh_keys": "SSH klíče", + "add_ssh_key": "Přidat SSH klíč", + "search_ssh_keys": "Hledat", + "per_page": "na stránku", + "clear_filters": "Vymazat filtry", + "name": "Název", + "ssh_key": "SSH klíč", + "tags": "Štítky", + "loading_ssh_keys": "Načítání SSH klíčů", + "actions": "Akce", + "loading": "Načítání...", + "no_results_found": "Nebyly nalezeny žádné výsledky", + "no_ssh_keys": "Žádné SSH klíče", + "hide_ssh_key": "Skrýt SSH klíč", + "show_ssh_key": "Zobrazit celý SSH klíč", + "copied": "Zkopírováno", + "ssh_key_copied": "SSH klíč zkopírován do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_ssh_key": "Nepodařilo se zkopírovat SSH klíč do schránky", + "copy_to_clipboard": "Kopírovat do schránky", + "open_menu": "Otevřít menu", + "edit": "Upravit", + "delete": "Smazat", + "fingerprint": "Otisk", + "last_modified": "Poslední úprava", + "deleted": "Smazáno", + "showing_results": "Zobrazení {start} až {end} z {total} výsledků", + "confirm_delete": "Potvrdit smazání", + "delete_ssh_key_confirmation": "Jste si jisti, že chcete smazat tento SSH klíč? Tuto akci nelze vrátit zpět.", + "cancel": "Zrušit", + "deleting": "Mazání...", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "ssh_key_name_already_exists": "SSH klíč s tímto názvem již existuje", + "missing_required_data": "Chybí povinná data projektu", + "encryption_error": "Chyba šifrování", + "could_not_encrypt_data": "Nepodařilo se zašifrovat data. Prosím zkuste znovu.", + "success": "Úspěch", + "ssh_key_added_successfully": "SSH klíč úspěšně přidán", + "error_adding_ssh_key": "Chyba při přidávání SSH klíče. Prosím zkuste znovu.", + "ssh_key_updated_successfully": "SSH klíč úspěšně aktualizován", + "error_updating_ssh_key": "Chyba při aktualizaci SSH klíče. Prosím zkuste znovu.", + "ssh_key_deleted_successfully": "SSH klíč úspěšně smazán", + "error_deleting_ssh_key": "Chyba při mazání SSH klíče", + "error_fetching_ssh_keys": "Nepodařilo se načíst SSH klíče", + "add_a_tag": "Přidat štítek", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_created": "Seřadit podle data vytvoření", + "sort_by_updated": "Seřadit podle data aktualizace", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "error": "Chyba", + "add_ssh_key_description": "Přidejte nový SSH klíč do vašeho bezpečného trezoru", + "name_placeholder": "SSH klíč pro GitHub", + "ssh_key_placeholder": "Vložte váš SSH klíč zde", + "notes": "Poznámky (volitelné)", + "notes_placeholder": "Dodatečné informace o tomto SSH klíči", + "add_tag": "Přidat štítek", + "remove": "Odebrat", + "adding": "Přidávání...", + "add": "Přidat", + "edit_ssh_key": "Upravit SSH klíč", + "edit_ssh_key_description": "Aktualizujte údaje o SSH klíči", + "save_changes": "Uložit změny", + "search_licenses": "Hledat", + "manage_your_ssh_keys": "Spravujte SSH klíče bezpečně", + "filter_by_tag": "Filtrovat podle štítku", + "all_tags": "Všechny štítky", + "date_created": "Datum vytvoření" + }, + "files": { + "files": "Soubory", + "file_manager": "Správce souborů", + "add_file": "Nahrát soubor", + "create_folder": "Vytvořit složku", + "search_files": "Hledat soubory", + "per_page": "na stránku", + "clear_filters": "Vymazat filtry", + "name": "Název", + "size": "Velikost", + "type": "Typ", + "modified": "Upraveno", + "folder": "Složka", + "file": "Soubor", + "loading_files": "Načítání souborů...", + "actions": "Akce", + "loading": "Načítání...", + "no_results_found": "Nebyly nalezeny žádné výsledky", + "no_files": "Žádné soubory", + "no_folders": "Žádné složky", + "download": "Stáhnout", + "rename": "Přejmenovat", + "move": "Přesunout", + "delete": "Smazat", + "copied": "Zkopírováno", + "file_copied": "Soubor zkopírován do schránky", + "copy_failed": "Kopírování se nezdařilo", + "failed_to_copy_file": "Nepodařilo se zkopírovat soubor do schránky", + "copy_to_clipboard": "Kopírovat do schránky", + "open_menu": "Otevřít menu", + "edit": "Upravit", + "deleted": "Smazáno", + "showing_results": "Zobrazení {start} až {end} z {total} výsledků", + "confirm_delete": "Potvrdit smazání", + "delete_file_confirmation": "Jste si jisti, že chcete smazat tento soubor? Tuto akci nelze vrátit zpět.", + "delete_folder_confirmation": "Jste si jisti, že chcete smazat tuto složku? Tuto akci nelze vrátit zpět.", + "cancel": "Zrušit", + "deleting": "Mazání...", + "please_fill_all_required_fields": "Prosím vyplňte všechna povinná pole", + "file_name_already_exists": "Soubor s tímto názvem již existuje v této složce", + "folder_name_already_exists": "Složka s tímto názvem již existuje v tomto umístění", + "missing_required_data": "Chybí povinná data projektu", + "encryption_error": "Chyba šifrování", + "could_not_encrypt_data": "Nepodařilo se zašifrovat data. Prosím zkuste znovu.", + "success": "Úspěch", + "file_uploaded_successfully": "Soubor úspěšně nahrán", + "error_uploading_file": "Chyba při nahrávání souboru. Prosím zkuste znovu.", + "file_updated_successfully": "Soubor úspěšně aktualizován", + "error_updating_file": "Chyba při aktualizaci souboru. Prosím zkuste znovu.", + "file_deleted_successfully": "Soubor úspěšně smazán", + "error_deleting_file": "Chyba při mazání souboru", + "error_fetching_files": "Nepodařilo se načíst soubory", + "folder_created_successfully": "Složka úspěšně vytvořena", + "error_creating_folder": "Chyba při vytváření složky. Prosím zkuste znovu.", + "folder_updated_successfully": "Složka úspěšně aktualizována", + "error_updating_folder": "Chyba při aktualizaci složky. Prosím zkuste znovu.", + "folder_deleted_successfully": "Složka úspěšně smazána", + "error_deleting_folder": "Chyba při mazání složky", + "error_fetching_folders": "Nepodařilo se načíst složky", + "file_too_large": "Velikost souboru překračuje limit 50MB", + "invalid_file_type": "Neplatný typ souboru", + "upload_failed": "Nahrávání se nezdařilo", + "download_failed": "Stahování se nezdařilo", + "sort": "Seřadit", + "sort_options": "Možnosti řazení", + "sort_by_name": "Seřadit podle názvu", + "sort_by_size": "Seřadit podle velikosti", + "sort_by_modified": "Seřadit podle data úpravy", + "sort_by_type": "Seřadit podle typu", + "ascending": "Vzestupně", + "descending": "Sestupně", + "clear_sort": "Vymazat řazení", + "error": "Chyba", + "upload_file_description": "Nahrajte soubor do vašeho bezpečného trezoru", + "create_folder_description": "Vytvořte novou složku pro organizaci vašich souborů", + "name_placeholder": "Zadejte název souboru nebo složky", + "folder_name_placeholder": "Zadejte název složky", + "notes": "Poznámky (volitelné)", + "notes_placeholder": "Dodatečné informace o tomto souboru", + "add_tag": "Přidat štítek", + "remove": "Odebrat", + "uploading": "Nahrávání...", + "creating": "Vytváření...", + "add": "Přidat", + "upload": "Nahrát", + "create": "Vytvořit", + "edit_file": "Upravit soubor", + "edit_file_description": "Aktualizujte údaje o souboru", + "edit_folder": "Upravit složku", + "edit_folder_description": "Aktualizujte údaje o složce", + "save_changes": "Uložit změny", + "manage_your_files": "Spravujte své soubory bezpečně", + "filter_by_type": "Filtrovat podle typu", + "all_types": "Všechny typy", + "date_created": "Datum vytvoření", + "file_size": "Velikost souboru", + "folder_path": "Cesta složky", + "select_folder": "Vybrat složku", + "move_to_folder": "Přesunout do složky", + "drag_and_drop_files": "Přetáhněte soubory sem nebo klikněte pro výběr", + "select_files": "Vybrat soubory", + "upload_progress": "Průběh nahrávání", + "upload_complete": "Nahrávání dokončeno", + "bytes": "Bajtů", + "kb": "KB", + "mb": "MB", + "gb": "GB", + "tb": "TB" + }, + "project_colors": { + "red": "Červená", + "orange": "Oranžová", + "amber": "Jantarová", + "yellow": "Žlutá", + "lime": "Limetková", + "green": "Zelená", + "emerald": "Smaragdová", + "teal": "Modrozelená", + "cyan": "Azurová", + "sky": "Nebeská", + "blue": "Modrá", + "indigo": "Indigová", + "violet": "Fialová", + "purple": "Purpurová", + "fuchsia": "Fuchsiová", + "pink": "Růžová", + "rose": "Růžová" + } +} diff --git a/packages/frontend-web/middleware.ts b/packages/frontend-web/middleware.ts index 6d254e5..463176a 100644 --- a/packages/frontend-web/middleware.ts +++ b/packages/frontend-web/middleware.ts @@ -3,7 +3,7 @@ import { NextResponse } from 'next/server'; import type { NextRequest } from 'next/server'; // Available locales -export const locales = ['en', 'de', 'fr', 'es','af','ar', 'ca']; +export const locales = ['en', 'de', 'fr', 'es','af','ar', 'ca','cs']; export const defaultLocale = 'en'; // Protected routes that require authentication From 42b65dd8bdd7bc9d1d3e7f7f8a041bdb2d4c154f Mon Sep 17 00:00:00 2001 From: itsmeakhil Date: Wed, 24 Sep 2025 15:23:58 +0530 Subject: [PATCH 03/11] Danish --- packages/frontend-web/messages/da/common.json | 1425 +++++++++++++++++ packages/frontend-web/middleware.ts | 2 +- 2 files changed, 1426 insertions(+), 1 deletion(-) create mode 100644 packages/frontend-web/messages/da/common.json diff --git a/packages/frontend-web/messages/da/common.json b/packages/frontend-web/messages/da/common.json new file mode 100644 index 0000000..b7536d6 --- /dev/null +++ b/packages/frontend-web/messages/da/common.json @@ -0,0 +1,1425 @@ +{ + "app": { + "title": "Zecrypt", + "description": "Sikker dine data med Zecrypt" + }, + "common": { + "loading": "Indlæser...", + "saving": "Gemmer...", + "deleting": "Sletter...", + "error": "Fejl", + "success": "Succes", + "cancel": "Annuller", + "add": "Tilføj", + "save": "Gem", + "submitting": "Indsender...", + "try_again": "Prøv igen", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "add_item_description": "Indtast detaljerne nedenfor", + "edit_item_description": "Opdater detaljerne" + }, + "pagination": { + "showing_x_of_y": "Viser {start} - {end} af {total} elementer", + "page_of": "Side {currentPage} af {totalPages}", + "next": "Næste", + "previous": "Forrige" + }, + "env": { + "env_variables": "Miljøvariabler", + "manage_your_env": "Administrer dine miljøvariabler sikkert", + "add_env": "Tilføj miljøvariabler", + "loading_env": "Indlæser miljøvariabler...", + "name": "Navn", + "env_value": "Værdi", + "tags": "Tags", + "created_at": "Oprettet", + "actions": "Handlinger", + "no_env_yet": "Ingen miljøvariabler tilføjet endnu", + "no_matching_env": "Ingen matchende miljøvariabler fundet", + "search_across_all_fields": "Søg på tværs af alle felter...", + "show_env": "Vis miljøvariabler", + "hide_env": "Skjul miljøvariabler", + "copy_env": "Kopier miljøvariabler", + "env_copied": "Miljøvariabler kopieret til udklipsholder", + "failed_to_copy_env": "Kunne ikke kopiere miljøvariabler til udklipsholder", + "delete_env_confirmation": "Er du sikker på, at du vil slette disse miljøvariabler? Denne handling kan ikke fortrydes.", + "showing_x_of_y": "Viser {start} - {end} af {total} elementer", + "failed_to_decrypt": "Kunne ikke dekryptere miljøvariabler", + "add_new_env": "Tilføj nye miljøvariabler", + "add_new_env_description": "Indtast dine miljøvariabel-detaljer nedenfor", + "edit_env": "Rediger miljøvariabler", + "edit_env_description": "Opdater dine miljøvariabler", + "env_name": "Miljønavn", + "enter_env_name": "Indtast miljønavn", + "enter_env_value": "Indtast miljøværdi", + "enter_env_variables": "NØGLE=værdi\nANDEN_NØGLE=anden_værdi", + "env_format_hint": "Indtast dine miljøvariabler i NØGLE=værdi format, én per linje", + "notes": "Noter", + "enter_notes": "Indtast noter (valgfrit)", + "add_a_tag": "Tilføj et tag", + "add_tag": "Tilføj tag", + "press_enter_to_add": "Tryk Enter for at tilføje et tag", + "cancel": "Annuller", + "add": "Tilføj", + "update": "Opdater", + "env_added_successfully": "Miljøvariabler tilføjet succesfuldt", + "env_updated_successfully": "Miljøvariabler opdateret succesfuldt", + "env_deleted_successfully": "Miljøvariabler slettet succesfuldt", + "error_adding_env": "Kunne ikke tilføje miljøvariabler", + "error_updating_env": "Kunne ikke opdatere miljøvariabler", + "error_deleting_env": "Kunne ikke slette miljøvariabler", + "error_fetching_env": "Kunne ikke hente miljøvariabler", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "no_project_selected": "Intet projekt valgt. Vælg venligst et projekt.", + "clear_filters": "Ryd filtre", + "decrypting": "Dekrypterer miljøvariabler...", + "env_updated_description": "Miljøvariablerne er blevet opdateret.", + "env_added_description": "Miljøvariablerne er blevet tilføjet.", + "env_already_exists": "Miljøvariabler med dette navn eksisterer allerede.", + "date_created": "Oprettelsesdato", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "view_env_code": "Vis i kodeeditor", + "click_to_add_env": "Klik for at tilføje miljøvariabler", + "click_to_edit_env": "Klik for at redigere miljøvariabler", + "env_hidden": "••••••••", + "copied": "Kopieret" + }, + "licenses": { + "software_licenses": "Softwarelicenser", + "add_license": "Tilføj licens", + "filter_by_tag": "Filtrer efter tag", + "all_tags": "Alle tags", + "search": "Søg", + "loading_licenses": "Indlæser licenser...", + "no_licenses_found": "Ingen licenser fundet", + "clear_filters": "Ryd filtre", + "name": "Navn", + "software": "Software", + "license_key": "Licensnøgle", + "expiry_date": "Udløbsdato", + "tags": "Tags", + "actions": "Handlinger", + "add_new_license": "Tilføj ny licens", + "add_new_license_description": "Indtast dine softwarelicens-detaljer nedenfor", + "cancel": "Annuller", + "save": "Gem", + "edit_license": "Rediger licens", + "edit_license_description": "Opdater dine softwarelicens-detaljer", + "update": "Opdater", + "delete": "Slet", + "license_deleted": "Licens slettet", + "license_deleted_description": "Licensen er blevet slettet succesfuldt", + "copied": "Kopieret", + "field_copied": "Felt kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_field": "Kunne ikke kopiere felt til udklipsholder", + "hide_license_key": "Skjul licensnøgle", + "show_license_key": "Vis licensnøgle", + "showing_results": "Viser {startIdx}-{endIdx} af {totalCount} resultater", + "page_of": "Side {currentPage} af {totalPages}", + "expires": "Udløber", + "expired": "Udløbet", + "expiring_soon": "Udløber snart", + "edit": "Rediger", + "enter_license_name": "Indtast licensnavn", + "enter_software_name": "Indtast softwarenavn", + "enter_license_key": "Indtast licensnøgle", + "enter_notes": "Indtast noter", + "confirm_deletion": "Bekræft sletning", + "confirm_delete_license_description": "Er du sikker på, at du vil slette denne licens? Denne handling kan ikke fortrydes.", + "license_added_successfully": "Licens tilføjet succesfuldt", + "failed_to_add_license": "Kunne ikke tilføje licens", + "invalid_input": "Ugyldig input", + "validation_error": "Valideringsfejl", + "network_error": "Netværksfejl", + "error_adding_license": "Fejl ved tilføjelse af licens", + "license_updated_successfully": "Licens opdateret succesfuldt", + "failed_to_update_license": "Kunne ikke opdatere licens", + "license_not_found": "Licens ikke fundet", + "error_updating_license": "Fejl ved opdatering af licens", + "missing_auth_or_selection": "Manglende autentificering eller valg", + "license_deleted_successfully": "Licens slettet succesfuldt", + "error_deleting_license": "Fejl ved sletning af licens", + "error_fetching_licenses": "Fejl ved hentning af licenser", + "adding": "Tilføjer...", + "updating": "Opdaterer...", + "deleting": "Sletter...", + "notes": "Noter", + "software_name": "Softwarenavn", + "rows_per_page": "Rækker per side", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "search_across_all_fields": "Søg", + "update_api_key": "Opdater API-nøgle", + "manage_your_software_licenses": "Administrer dine softwarelicenser sikkert", + "date_created": "Oprettelsesdato", + "add_a_tag": "Tilføj et tag" + }, + "navigation": { + "home": "Hjem", + "dashboard": "Dashboard", + "settings": "Indstillinger" + }, + "auth": { + "login_to_continue": "Log ind for at fortsætte", + "sign_in_with_sso": "Log ind med din organisationskonto", + "login": "Log ind", + "signup": "Tilmeld dig", + "cancel": "Annuller", + "logout": "Log ud", + "sign_up": "Tilmeld dig", + "try_again": "Prøv igen", + "dont_have_account": "Har du ikke en konto?", + "email": "E-mail", + "password": "Adgangskode", + "agreement": "Ved at logge ind accepterer du vores vilkår og betingelser", + "terms": "Vilkår", + "privacy_policy": "Privatlivspolitik", + "terms_and_conditions": "Vilkår og betingelser", + "service_status": "Servicestatus", + "generate_password": "Generer adgangskode", + "verification_code": "Verifikationskode", + "2fa_verify": "2FA verifikation", + "2fa_enter_code": "Indtast den 6-cifrede kode fra din autentificeringsapp", + "2fa_placeholder": "f.eks. 123456", + "verify": "Verificer", + "verifying_authentication": "Verificerer autentificering...", + "2fa_verification_error": "Ugyldig verifikationskode. Prøv venligst igen.", + "2fa_verification_success": "2FA verifikation succesfuld", + "verifying": "Verificerer 2FA...", + "authentication_error": "Autentificeringsfejl", + "2fa_verified": "2FA verificeret", + "redirecting_to_dashboard": "Omdirigerer dig til dashboard...", + "setup_encryption_keys": "Opsæt krypteringsnøgler", + "encryption_setup_description": "Opret en hovedadgangskode til at kryptere dine data. Denne adgangskode bruges til at beskytte din private nøgle.", + "encryption_password_warning": "Husk denne adgangskode omhyggeligt! Hvis du glemmer den, mister du adgang til alle dine krypterede data.", + "encryption_password": "Hovedadgangskode", + "enter_strong_password": "Indtast en stærk adgangskode", + "confirm_encryption_password": "Bekræft hovedadgangskode", + "confirm_password": "Bekræft din adgangskode", + "encryption_password_requirements": "Adgangskoden skal være mindst 8 tegn og indeholde bogstaver, tal og specialtegn for maksimal sikkerhed.", + "generating_keys": "Genererer nøgler...", + "setup_encryption": "Opsæt kryptering", + "password_too_short": "Adgangskoden skal være mindst 8 tegn lang", + "passwords_dont_match": "Adgangskoderne matcher ikke", + "encryption_setup_success": "Krypteringsopsætning fuldført", + "encryption_keys_created": "Dine krypteringsnøgler er blevet oprettet succesfuldt", + "encryption_setup_failed": "Kunne ikke opsætte krypteringsnøgler", + "checking_encryption_keys": "Tjekker krypteringsnøgler...", + "encryption_key_check_failed": "Krypteringsnøgle-tjek mislykkedes", + "encryption_key_check_failed_desc": "Vi kunne ikke verificere dine krypteringsnøgler. Dette kan skyldes et netværksproblem eller manglende nøgler.", + "encryption_security_error": "Krypteringssikkerhedsfejl. Prøv venligst at logge ind igen.", + "login_successful": "Login succesfuldt", + "2fa_setup_required": "2FA opsætning påkrævet", + "scan_qr_with_authenticator": "Scan QR-koden med din autentificeringsapp", + "unknown_error": "En ukendt fejl opstod", + "auth_network_error": "Netværksfejl under autentificering", + "auth_process_failed": "Autentificeringsproces mislykkedes", + "2fa_invalid_code": "Ugyldig verifikationskode", + "2fa_verification_failed": "Verifikation mislykkedes: {message}", + "copied_to_clipboard": "Kopieret til udklipsholder", + "paste_in_authenticator": "Indsæt denne kode i din autentificeringsapp", + "2fa_setup": "To-faktor autentificering opsætning", + "2fa_scan": "Scan QR-koden med din autentificeringsapp", + "2fa_scan_difficulty": "Har du problemer med at scanne? Du kan kopiere opsætningsnøglen nedenfor:", + "copy_setup_key": "Kopier opsætningsnøgle", + "unlock_encryption": "Lås kryptering op", + "enter_encryption_password": "Indtast din hovedadgangskode", + "enter_encryption_password_desc": "Indtast din hovedadgangskode for at dekryptere din private nøgle.", + "unlocking": "Låser op...", + "unlock": "Lås op", + "encryption_unlocked": "Kryptering låst op", + "encryption_key_decrypted": "Din krypteringsnøgle er blevet dekrypteret succesfuldt", + "incorrect_encryption_password": "Forkert hovedadgangskode. Prøv venligst igen.", + "multi_device_login": "Login fra nyt enhed", + "multi_device_desc": "Du logger ind fra en ny enhed. Indtast venligst din hovedadgangskode for at få adgang til dine krypterede data.", + "authenticating": "Autentificerer...", + "download_password_title": "Din Zecrypt krypteringsadgangskode:", + "download_password_important": "VIGTIGT: Opbevar denne adgangskode sikkert. Du har brug for den for at få adgang til dine krypterede data.", + "download_filename": "zecrypt-encryption-password.txt" + }, + "features": { + "trial_title": "Din sikre lageradministrator", + "unlimited_devices": "Ubegrænsede enheder — helt gratis for evigt", + "shared_vaults": "Del legitimationsoplysninger problemfrit med teammedlemmer - (Kommer snart)", + "advanced_security": "Militærgrad kryptering (AES-GCM) for klippefast sikkerhed", + "security_alerts": "Øjeblikkelige brudsalarmer, så du altid er et skridt foran - (Kommer snart)", + "multi_platform": "Tilgængelig på Mac, iOS, Windows, Android, Chrome OS og Linux - (kommer snart)", + "organization": "Organisation", + "organization_desc": "Organiser legitimationsoplysninger i projekter for bedre administration og hurtig adgang.", + "secure_storage": "Sikker opbevaring", + "secure_storage_desc": "Opbevar alle dine adgangskoder og følsomme data med militærgrad kryptering.", + "secure_password_manager": "End-to-end krypteret cloudlager" + }, + "actions": { + "add": "Tilføj", + "edit": "Rediger", + "delete": "Slet", + "cancel": "Annuller", + "close": "Luk", + "save": "Gem", + "saving": "Gemmer...", + "deleting": "Sletter...", + "submit": "Send", + "ok": "OK", + "yes": "Ja", + "no": "Nej", + "confirm": "Bekræft", + "confirm_delete": "Bekræft sletning", + "continue": "Fortsæt", + "back": "Tilbage", + "next": "Næste", + "search": "Søg", + "filter": "Filtrer", + "clear": "Ryd", + "reset": "Nulstil", + "refresh": "Opdater", + "upload": "Upload", + "download": "Download", + "copy": "Kopier", + "paste": "Indsæt", + "cut": "Klip", + "undo": "Fortryd", + "redo": "Gendan", + "select_all": "Vælg alle", + "select_none": "Vælg ingen", + "create": "Opret", + "update": "Opdater", + "remove": "Fjern", + "error": "Fejl", + "view": "Vis" + }, + "dashboard": { + "project_limit_reached": "Projektgrænse nået", + "alpha_one_project_limit": "Vi kører i øjeblikket på alfa, kun ét projekt er tilladt per arbejdsområde.", + "select_project": "Vælg projekter", + "manage_projects": "Administrer projekter", + "select_or_create_project": "Vælg eller opret et projekt", + "welcome_back": "Velkommen tilbage til dit sikre arbejdsområde", + "total_passwords": "Samlede adgangskoder", + "total_accounts": "Samlede konti", + "total_folders": "Samlede mapper", + "recently_added_accounts": "Nyligt tilføjede konti", + "from_last_month": "fra sidste måned", + "create_project_details": "Opret projektdetaljer", + "recent_activity": "Seneste aktivitet", + "keyboard_shortcuts": "Tastaturgenveje", + "generate_password": "Generer adgangskode", + "favourites": "Favoritter", + "no_description": "Ingen beskrivelse", + "notes": "Noter", + "confirm_delete_project": "Bekræft projekt sletning", + "create_project": "Opret projekt", + "set_as_default_project": "Sæt som standardprojekt", + "project_name": "Projektnavn", + "describe_project_purpose": "Beskriv projektets formål", + "free_plan_limit": "Gratis plan grænse", + "save_changes": "Gem ændringer", + "no_project_availbale": "Intet projekt tilgængeligt", + "cancel": "Annuller", + "delete": "Slet", + "add_favorite_tag": "Tilføj favorit tag", + "remove_tag": "Fjern {tag}", + "dashboard": "Dashboard", + "show_more": "Vis mere", + "show_less": "Vis mindre", + "overview": "Oversigt", + "project": "Projekt", + "notifications": "Notifikationer", + "settings": "Indstillinger", + "logout": "Log ud", + "current_project": "Nuværende projekt", + "default": "Standard", + "no_project_selected": "Intet projekt valgt", + "quick_stats": "Hurtige statistikker", + "workspaces": "Arbejdsområder", + "projects": "Projekter", + "available_features": "Tilgængelige funktioner", + "team_members": "Teammedlemmer", + "total_projects": "Samlede projekter", + "total_workspaces": "Samlede arbejdsområder", + "total_team_members": "Samlede teammedlemmer", + "total_records": "Samlede poster", + "my_account": "Min konto", + "change_language": "Skift sprog", + "language": "Sprog", + "toggle_theme": "Skift tema", + "wallet_passphrases": "Pung-adgangsfraser", + "wi_fi": "Wi-Fi", + "env": "Miljøvariabler", + "env_variables": "Miljøvariabler", + "search": "Søg", + "create_new_project": "Opret nyt projekt", + "add_new_project_description": "Tilføj et nyt projekt for at organisere dine sikre data", + "description": "Beskrivelse", + "optional": "Valgfrit", + "project_color": "Projektfarve", + "enabled_modules": "Aktiverede moduler", + "edit_project": "Rediger projekt", + "update_project_details": "Opdater detaljerne for dit projekt", + "my_project": "Mit projekt", + "creating": "Opretter...", + "delete_project": "Slet projekt", + "identity_coming_soon": "Identitetsmodul er under udvikling.", + "cards_coming_soon": "Kortmodul er under udvikling.", + "software_licenses_coming_soon": "Softwarelicensmodul er under udvikling.", + "wifi_coming_soon": "Wi-Fi modul er under udvikling.", + "profile": "Profil", + "search_modules": "Søg moduler...", + "no_modules_found": "Ingen moduler fundet", + "general": "Generelt", + "security_access": "Sikkerhed og adgang", + "business_finance": "Forretning og finans", + "licenses_services": "Licenser og tjenester", + "accounts": "Konti", + "identity": "Identitet", + "email": "E-mail", + "wifi": "WiFi", + "api_keys": "API-nøgler", + "ssh_keys": "SSH-nøgler", + "cards": "Kort", + "software_licenses": "Softwarelicenser", + "recent_accounts": "Seneste konti", + "no_recent_accounts": "Ingen seneste konti", + "last_24_hours": "Sidste 24 timer", + "no_accounts_create": "Ingen konti fundet. Opret en for at komme i gang.", + "adjust_search_filter": "Prøv at justere din søgning eller filterkriterier", + "no_recent_activity": "Ingen seneste aktivitet", + "no_projects_available": "Ingen projekter tilgængelige", + "no_workspace_selected": "Intet arbejdsområde valgt" + }, + "activity": { + "password_updated": "Adgangskode opdateret", + "note_created": "Sikker note oprettet", + "you_create_login": "Du oprettede et nyt login", + "you_create_api_key": "Du oprettede en ny API-nøgle", + "you_update_login": "Du opdaterede et login", + "you_update_api_key": "Du opdaterede en API-nøgle", + "you_delete_login": "Du slettede et login", + "you_delete_api_key": "Du slettede en API-nøgle", + "create_login": "Nyt login oprettet", + "create_api_key": "Ny API-nøgle oprettet", + "update_login": "Login opdateret", + "update_api_key": "API-nøgle opdateret", + "delete_login": "Login slettet", + "delete_api_key": "API-nøgle slettet" + }, + "time": { + "today": "I dag", + "yesterday": "I går", + "last_7_days": "Sidste 7 dage", + "last_30_days": "Sidste 30 dage", + "all_time": "Alle tider", + "just_now": "Lige nu", + "hours_ago": "for {hours} timer siden", + "days_ago": "for {days} dage siden" + }, + "password_generator": { + "title": "Adgangskodegenerator", + "strong": "Stærk", + "memorable": "Huskelig", + "pin": "PIN", + "passphrase": "Adgangsfrase", + "chars": "tegn", + "digits": "cifre", + "generate_new": "Generer ny adgangskode", + "generate_password": "Generer adgangskode", + "click_generate_button": "Klik på Generer-knappen for at generere en ny adgangskode", + "copy": "Kopier adgangskode", + "copied": "Kopieret!", + "save": "Gem adgangskode", + "close": "Luk", + "copy_password": "Kopier adgangskode", + "password_length": "Adgangskode længde", + "options": "Indstillinger", + "advanced": "Avanceret", + "advanced_options": "Avancerede indstillinger", + "history": "Historik", + "uppercase": "Store bogstaver (A-Z)", + "lowercase": "Små bogstaver (a-z)", + "numbers": "Tal (0-9)", + "symbols": "Symboler (!@#$%^&*)", + "password_analysis": "Adgangskode analyse", + "strong_enough": "Stærk nok til de fleste websites", + "not_strong_enough": "Ikke stærk nok til følsomme konti", + "good_length": "God længde", + "consider_longer": "Overvej en længere adgangskode", + "using_all_types": "Bruger alle tegn typer", + "consider_more_types": "Overvej at bruge flere tegn typer", + "all_characters": "Alle tegn", + "easy_to_read": "Let at læse (ingen lignende tegn som 1, l, I, 0, O)", + "easy_to_say": "Let at sige (ingen tal eller specialtegn)", + "password_tips": "Adgangskode tips", + "tip_min_length": "• Brug mindst 14 tegn for høj sikkerhed", + "tip_mix": "• Inkluder en blanding af bogstaver, tal og symboler", + "tip_no_personal": "• Undgå at bruge personlige oplysninger", + "tip_unique": "• Brug en anden adgangskode for hver konto", + "tip_manager": "• Overvej at bruge en adgangskodeadministrator til at gemme dine adgangskoder", + "recently_generated": "Nyligt genereret", + "clear_history": "Ryd historik", + "no_history": "Ingen adgangskode historik endnu", + "history_hint": "Genererede adgangskoder vil vises her", + "weak": "Svag", + "fair": "Rimelig", + "good": "God", + "strong_strength": "Stærk", + "strength": "{strength}% styrke", + "current_session": "Nuværende session", + "create_secure_passwords": "Opret sikre adgangskoder til dine konti" + }, + "user_settings": { + "title": "Brugerindstillinger", + "description": "Administrer dine kontoindstillinger og præferencer", + "profile": "Profil", + "security": "Sikkerhed", + "notifications": "Notifikationer", + "integrations": "Integrationer", + "billing": "Fakturering", + "logout": "Log ud", + "login_history": "Login historik", + "audit_log": "Revisionslog", + "profile_title": "Profil og kontooplysninger", + "profile_description": "Administrer dine personlige og kontooplysninger", + "language": "Sprog", + "select_language": "Vælg sprog", + "email_address": "E-mailadresse", + "full_name": "Fulde navn", + "previous": "Forrige", + "next": "Næste", + "page": "Side", + "of": "af", + "saving": "Gemmer...", + "save_changes": "Gem ændringer", + "profile_picture": "Profilbillede", + "loading_history": "Indlæser login historik...", + "no_history_available": "Ingen login historik tilgængelig", + "try_again": "Prøv igen", + "device_browser": "Enhed og browser", + "ip_address": "IP-adresse", + "time": "Tid" + }, + "accounts": { + "no_accounts": "Ingen konti", + "no_matching_accounts": "Ingen matchende konti fundet", + "loading_accounts": "Indlæser konti...", + "error_fetching_accounts": "Kunne ikke hente konti", + "account_deleted_successfully": "Konto slettet succesfuldt", + "error_deleting_account": "Kunne ikke slette konto", + "account_updated_successfully": "Konto opdateret succesfuldt", + "all_fields_required": "Udfyld venligst alle påkrævede felter", + "account_already_exists": "En konto med dette navn eksisterer allerede", + "validation_error": "Ugyldige inputdata. Tjek dine indtastninger", + "failed_to_add_account": "Kunne ikke tilføje konto. Prøv venligst igen", + "missing_auth_or_selection": "Log venligst ind eller vælg arbejdsområde og projekt", + "please_log_in": "Log venligst ind for at fortsætte", + "server_error": "Der opstod en serverfejl. Prøv venligst igen senere", + "adding": "Tilføjer...", + "ascending": "Stigende", + "descending": "Faldende", + "add": "Tilføj", + "cancel": "Annuller", + "account_name": "Kontonavn", + "enter_account_name": "Indtast kontonavn", + "username": "Brugernavn", + "enter_username": "Indtast brugernavn", + "add_account": "Tilføj konto", + "add_new_account": "Tilføj ny konto", + "password": "Adgangskode", + "enter_password": "Indtast adgangskode", + "website": "Hjemmeside", + "enter_website": "Indtast hjemmeside URL", + "enter_website_url": "Indtast hjemmeside URL", + "notes": "Noter", + "enter_notes": "Indtast noter", + "tags": "Tags", + "enter_tags_comma_separated": "Indtast tags (adskilt af kommaer)", + "accounts": "Konti", + "manage_your_saved_accounts_and_passwords": "Administrer dine gemte konti og adgangskoder", + "encryption_key_not_found": "Projekt krypteringsnøgle ikke fundet. Kan ikke gemme konto.", + "project_not_found": "Projekt ikke fundet. Vælg venligst et gyldigt projekt.", + "encryption_failed": "Kunne ikke kryptere kontodata. Prøv venligst igen.", + "decryption_failed": "Kunne ikke dekryptere kontodata. Dette kan skyldes en manglende eller ugyldig krypteringsnøgle.", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "select_project": "Vælg projekt", + "no_project_selected": "Intet projekt valgt", + "please_select_a_project": "Vælg venligst et projekt for at se konti", + "loading": "Indlæser...", + "error": "Fejl", + "try_again": "Prøv igen", + "no_accounts_found": "Ingen konti fundet", + "no_accounts_exist": "Ingen konti eksisterer for dette projekt", + "adjust_search_or_filter": "Justér din søgning eller filter for at finde konti", + "generate_password": "Generer adgangskode", + "account": "Konto", + "category": "Kategori", + "last_modified": "Sidst ændret", + "date_created": "Oprettelsesdato", + "actions": "Handlinger", + "copy_username": "Kopier brugernavn", + "copied": "Kopieret", + "copy_password": "Kopier adgangskode", + "show_password": "Vis adgangskode", + "hide_password": "Skjul adgangskode", + "edit": "Rediger", + "delete": "Slet", + "confirm_deletion": "Bekræft sletning", + "confirm_delete_account": "Er du sikker på, at du vil slette denne konto?", + "confirm_delete_account_description": "Denne handling kan ikke fortrydes og vil permanent slette kontolegitimationsoplysninger.", + "deleting": "Sletter...", + "showing": "Viser", + "of": "af", + "rows_per_page": "Rækker per side", + "clear_filters": "Ryd filtre", + "accounts_not_found": "Konti ikke fundet", + "account_not_found": "Konto ikke fundet", + "failed_to_delete_account": "Kunne ikke slette konto", + "failed_to_update_account": "Kunne ikke opdatere konto", + "updating": "Opdaterer...", + "update": "Opdater", + "view_details": "Vis detaljer", + "filter_warning": "Filtre kan påvirke pagineringens nøjagtighed, da server-side filtrering ikke understøttes.", + "search": "Søg", + "search_accounts": "Søg konti", + "all_accounts": "Alle konti", + "personal": "Personlig", + "work": "Arbejde", + "finance": "Finans", + "clear": "Ryd", + "clear_sort": "Ryd", + "favorite": "Favorit", + "no_accounts_create": "Ingen konti fundet. Opret en for at komme i gang.", + "adjust_search_filter": "Prøv at justere din søgning eller filterkriterier", + "error_loading_workspace": "Kunne ikke indlæse arbejdsområdedata", + "focus_search": "Fokuser søgning", + "switch_project": "Skift projekt", + "add_a_tag": "Tilføj et tag", + "edit_account": "Rediger konto", + "update_account": "Opdater konto", + "filter_by_tag": "Filtrer efter tag", + "confirm_delete": "Bekræft sletning", + "delete_account_confirmation": "Er du sikker på, at du vil slette denne konto? Denne handling kan ikke fortrydes.", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato" + }, + "api_keys": { + "title": "API-nøgler", + "description": "Administrer dine API-nøgler til programmatisk adgang til Zecrypt tjenester.", + "edit_api_key": "Rediger API-nøgle", + "search": "Søg", + "name": "Navn", + "key": "Nøgle", + "api_key": "API-nøgle", + "enter_api_key": "Indtast API-nøgle", + "type": "Type", + "created": "Oprettet", + "expires": "Udløber", + "status": "Status", + "actions": "Handlinger", + "clear": "Ryd", + "sort": "Sortér", + "last_used": "Miljø", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "clear_filters": "Ryd filtre", + "create_new_api_key": "Opret ny API-nøgle", + "enter_details_for_new_api_key": "Indtast detaljerne for din nye API-nøgle", + "api_key_name": "API-nøgle navn", + "enter_api_key_name": "f.eks. Produktions backend", + "key_type": "Nøgletype", + "key_preview": "Nøgle forhåndsvisning", + "key_preview_description": "Den faktiske nøgle vil blive genereret, når du klikker på \"Opret API-nøgle\"", + "create_api_key": "Opret API-nøgle", + "cancel": "Annuller", + "rows_per_page": "Rækker per side", + "add_api_key": "Tilføj API-nøgle", + "no_api_keys_found": "Ingen API-nøgler fundet", + "try_adjusting_search_or_filter": "Prøv at justere din søgning eller filterkriterier", + "error_fetching_api_keys": "Kunne ikke hente API-nøgler", + "failed_to_fetch_api_keys": "Kunne ikke indlæse API-nøgler. Prøv venligst igen.", + "confirm_delete_api_key": "Er du sikker på, at du vil slette denne API-nøgle?", + "api_key_deleted_successfully": "API-nøgle slettet succesfuldt", + "api_key_deleted_description": "API-nøglen er blevet slettet succesfuldt.", + "error_deleting_api_key": "Kunne ikke slette API-nøgle", + "failed_to_delete_api_key": "Kunne ikke slette API-nøglen. Prøv venligst igen.", + "api_key_updated_successfully": "API-nøgle opdateret", + "api_key_updated_description": "API-nøglen er blevet opdateret succesfuldt.", + "api_key_added_successfully": "API-nøgle tilføjet", + "api_key_added_description": "API-nøglen er blevet tilføjet succesfuldt.", + "failed_to_update_api_key": "Kunne ikke opdatere API-nøglen. Prøv venligst igen.", + "manage_your_api_keys": "Administrer dine API-nøgler", + "showing": "Viser", + "of": "af", + "add_new_api_key": "Tilføj ny API-nøgle", + "add_new_api_key_description": "Indtast dine API-nøgle detaljer nedenfor", + "api_key_already_exists": "En API-nøgle med dette navn eksisterer allerede.", + "error_adding_api_key": "Kunne ikke tilføje API-nøgle på grund af serverfejl.", + "failed_to_add_api_key": "Kunne ikke tilføje API-nøglen. Prøv venligst igen.", + "error_updating_api_key": "Kunne ikke opdatere API-nøgle på grund af serverfejl.", + "invalid_input_data": "Ugyldige inputdata. Tjek dine indtastninger.", + "network_error": "Netværksfejl. Tjek din forbindelse og prøv igen.", + "no_api_keys_for_env": "Ingen API-nøgler fundet for miljø '{env}'. Prøv et andet miljø eller ryd filtre.", + "no_api_keys_match_search": "Ingen API-nøgler matcher søgning '{search}'. Prøv at justere din søgning.", + "adjust_search_filter": "Prøv at justere din søgning eller filterkriterier.", + "copied": "Kopieret", + "api_key_copied": "API-nøglen er blevet kopieret til din udklipsholder.", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_api_key": "Kunne ikke kopiere API-nøglen til udklipsholder.", + "show_key": "Vis nøgle", + "hide_key": "Skjul nøgle", + "copy_key": "Kopier nøgle", + "edit": "Rediger", + "delete": "Slet", + "decryption_error": "Dekrypteringsfejl - rediger venligst for at opdatere format", + "adding": "Tilføjer...", + "updating": "Opdaterer", + "no_project_selected": "Intet projekt valgt. Vælg venligst et projekt for at fortsætte.", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "loading_api_keys": "Indlæser API-nøgler...", + "api_keys": "API-nøgler", + "env": "Miljø", + "tags": "Tags", + "last_modified": "Sidst ændret", + "api_key_description": "API-nøgle beskrivelse", + "enter_description": "Indtast en beskrivelse for denne API-nøgle", + "environment": "Miljø", + "select_environment": "Vælg miljø", + "development": "Udvikling", + "staging": "Staging", + "production": "Produktion", + "testing": "Test", + "local": "Lokal", + "uat": "UAT", + "add": "Tilføj", + "add_a_tag": "Tilføj et tag", + "update_api_key": "Opdater API-nøgle", + "all_envs": "Alle miljøer", + "search_across_all_fields": "Søg", + "delete_api_key_confirmation": "Er du sikker på, at du vil slette denne API-nøgle? Denne handling kan ikke fortrydes.", + "deleting": "Sletter...", + "confirm_deletion": "Bekræft sletning", + "edit_api_key_description": "Opdater dine API-nøgle detaljer", + "showing_results": "Viser {startIdx}-{endIdx} af {totalCount} resultater", + "notes": "Noter", + "enter_notes": "Indtast noter", + "filter_by_env": "Filtrer efter miljø", + "date_created": "Oprettelsesdato" + }, + "wallet_passphrases": { + "wallet_passphrases": "Pung-adgangsfraser", + "securely_store_and_manage_your_wallet_recovery_phrases": "Gem og administrer dine pung gendannelsesfraser sikkert", + "add_passphrase": "Tilføj adgangsfrase", + "enter_wallet_address": "Indtast pungadresse", + "copy_wallet_address": "Kopier pungadresse", + "wallet_address": "Pungadresse", + "add_your_first_passphrase": "Tilføj din første adgangsfrase", + "search_passphrases": "Søg", + "no_wallet_passphrases_found": "Ingen pung-adgangsfraser fundet", + "wallet_address_encryption_note": "Pungadresse er krypteret for sikkerhed", + "no_passphrases_found": "Ingen fraser fundet", + "no_passphrases_found_message": "Du har endnu ikke tilføjet nogen pung-adgangsfraser. Tilføj en for at komme i gang.", + "no_passphrases_found_search": "Ingen fraser matcher dine søgekriterier.", + "loading_passphrases": "Indlæser fraser...", + "please_wait_while_we_fetch_your_secure_passphrases": "Vent venligst, mens vi henter dine sikre fraser", + "error_loading_passphrases": "Fejl ved indlæsning af fraser", + "failed_to_load_passphrases": "Kunne ikke indlæse fraser. Prøv venligst igen.", + "passphrase_added_successfully": "Adgangsfrase tilføjet succesfuldt", + "passphrase_added_description": "Din pung-adgangsfrase er blevet gemt sikkert.", + "passphrase_updated_successfully": "Adgangsfrase opdateret succesfuldt", + "passphrase_updated_description": "Din pung-adgangsfrase er blevet opdateret.", + "failed_to_add_passphrase": "Kunne ikke tilføje adgangsfrase", + "failed_to_update_passphrase": "Kunne ikke opdatere adgangsfrase", + "wallet_phrase_already_exists": "Denne adgangsfrase eller navn eksisterer allerede i din pung", + "invalid_input_data": "Ugyldige inputdata. Tjek dine indtastninger.", + "no_project_selected": "Intet projekt valgt. Vælg venligst et projekt.", + "passphrase_required": "Adgangsfrase er påkrævet", + "passphrase_must_be_exactly_12_words": "Adgangsfrase skal indeholde præcis 12 ord (i øjeblikket {count})", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "name": "Navn", + "add": "Tilføj", + "sort": "Sortér", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "sort_options": "Sorteringsmuligheder", + "enter_passphrase_name": "Indtast adgangsfrase navn", + "passphrase": "Adgangsfrase", + "enter_wallet_recovery_phrase": "Indtast pung gendannelsesfrase", + "notes": "Noter", + "enter_notes": "Indtast noter", + "wallet_type": "Pungtype", + "select_wallet_type": "Vælg pungtype", + "tags": "Tags", + "add_a_tag": "Tilføj et tag", + "save_passphrase": "Gem adgangsfrase", + "update_passphrase": "Opdater adgangsfrase", + "passphrase_encryption_note": "Din adgangsfrase vil blive krypteret for sikkerhed.", + "adding": "Tilføjer...", + "updating": "Opdaterer...", + "search_across_all_fields": "Søg", + "filter_by_wallet_type": "Filtrer efter pungtype", + "all_wallet_types": "Alle pungtyper", + "clear_filters": "Ryd filtre", + "last_modified": "Sidst ændret", + "actions": "Handlinger", + "hide_passphrase": "Skjul adgangsfrase", + "show_passphrase": "Vis adgangsfrase", + "copy_passphrase": "Kopier adgangsfrase", + "edit": "Rediger", + "delete": "Slet", + "showing_results": "Viser {startIdx}-{endIdx} af {totalCount} resultater", + "confirm_deletion": "Bekræft sletning", + "delete_passphrase_confirmation": "Er du sikker på, at du vil slette denne pung-adgangsfrase? Denne handling kan ikke fortrydes.", + "deleting": "Sletter...", + "add_new_passphrase_description": "Indtast dine pung-adgangsfrase detaljer nedenfor", + "edit_passphrase": "Rediger adgangsfrase", + "edit_passphrase_description": "Opdater dine pung-adgangsfrase detaljer", + "copied": "Kopieret", + "passphrase_copied": "Adgangsfrase kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_passphrase": "Kunne ikke kopiere adgangsfrase til udklipsholder", + "cancel": "Annuller", + "date_created": "Oprettelsesdato" + }, + "identity": { + "title": "Identitet", + "description": "Administrer personlige identifikationsoplysninger sikkert", + "add_identity": "Tilføj identitet", + "no_identities_found": "Ingen identiteter fundet", + "no_identities_found_message": "Du har endnu ikke tilføjet nogen identifikationsoplysninger.", + "add_your_first_identity": "Tilføj din første identitet", + "loading_identities": "Indlæser identiteter...", + "search_identities": "Søg", + "full_name": "Fulde navn", + "country": "Land", + "enter_full_name": "Indtast fulde navn", + "date_of_birth": "Fødselsdato", + "enter_date_of_birth": "Indtast fødselsdato (YYYY-MM-DD)", + "address": "Adresse", + "enter_address": "Indtast adresse", + "phone_number": "Telefonnummer", + "enter_phone_number": "Indtast telefonnummer", + "identity_number": "Identitetsnummer", + "enter_identity_number": "Indtast identitetsnummer (som pas, nationalt ID)", + "tags": "Tags", + "enter_tags_comma_separated": "Indtast tags (adskilt af kommaer)", + "last_modified": "Sidst ændret", + "actions": "Handlinger", + "edit": "Rediger", + "delete": "Slet", + "copy_field": "Kopier {field}", + "copied": "Kopieret", + "identity_deleted_successfully": "Identitet slettet succesfuldt", + "error_deleting_identity": "Kunne ikke slette identitet", + "identity_updated_successfully": "Identitet opdateret succesfuldt", + "failed_to_add_identity": "Kunne ikke tilføje identitet", + "all_fields_required": "Udfyld venligst alle påkrævede felter", + "validation_error": "Ugyldige inputdata. Tjek dine indtastninger", + "server_error": "Der opstod en serverfejl. Prøv venligst igen senere", + "identities": "Identiteter", + "filter_by_tag": "Filtrer efter tag", + "all_tags": "Alle tags", + "search": "Søg", + "clear_filters": "Ryd filtre", + "name": "Navn", + "contact": "Kontakt", + "passport": "Pas", + "national_id": "Nationalt ID", + "add_new_identity": "Tilføj ny identitet", + "add_new_identity_description": "Indtast identitetsdetaljer nedenfor", + "first_name": "Fornavn", + "last_name": "Efternavn", + "email": "E-mail", + "phone": "Telefon", + "passport_number": "Pasnummer", + "cancel": "Annuller", + "save": "Gem", + "edit_identity": "Rediger identitet", + "edit_identity_description": "Opdater identitetsdetaljer", + "update": "Opdater", + "identity_deleted": "Identitet slettet", + "identity_deleted_description": "Identiteten er blevet slettet succesfuldt", + "field_copied": "Felt kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_field": "Kunne ikke kopiere felt til udklipsholder", + "hide_sensitive_data": "Skjul følsomme data", + "show_sensitive_data": "Vis følsomme data", + "showing_results": "Viser {startIdx}-{endIdx} af {totalCount} resultater", + "page_of": "Side {currentPage} af {totalPages}", + "copy_passport": "Kopier pasnummer", + "copy_national_id": "Kopier nationalt ID", + "identity_added_successfully": "Identitet tilføjet succesfuldt", + "error_adding_identity": "Fejl ved tilføjelse af identitet", + "error_updating_identity": "Fejl ved opdatering af identitet", + "missing_workspace_project": "Manglende arbejdsområde eller projekt", + "first_name_required": "Fornavn er påkrævet", + "last_name_required": "Efternavn er påkrævet", + "invalid_email": "Ugyldigt e-mail format", + "invalid_date_format": "Ugyldigt datoformat (YYYY-MM-DD)", + "title_required": "Titel er påkrævet", + "title_placeholder": "Personlig identitet", + "first_name_placeholder": "Jan", + "last_name_placeholder": "Nielsen", + "email_placeholder": "jan.nielsen@example.com", + "phone_placeholder": "+45 12 34 56 78", + "address_placeholder": "123 Hovedgade, København, 1000", + "passport_placeholder": "A12345678", + "national_id_placeholder": "12345678", + "notes": "Noter", + "notes_placeholder": "Yderligere oplysninger", + "tags_placeholder": "Tilføj tags", + "adding": "Tilføjer...", + "updating": "Opdaterer...", + "deleting": "Sletter...", + "add": "Tilføj", + "confirm_deletion": "Bekræft sletning", + "delete_identity_confirmation": "Er du sikker på, at du vil slette denne identitet? Denne handling kan ikke fortrydes.", + "error_fetching_identities": "Fejl ved hentning af identiteter", + "national_id_required": "Nationalt ID er påkrævet", + "identity_type": "Identitetstype", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "search_across_all_fields": "Søg", + "searches_all_fields": "Søg i navn, type, kontakt, adresse, identitet og tags", + "encryption_key_not_found": "Projekt krypteringsnøgle ikke fundet. Kan ikke gemme identitet.", + "project_not_found": "Projekt ikke fundet. Vælg venligst et gyldigt projekt.", + "encryption_failed": "Kunne ikke kryptere identitetsdata. Prøv venligst igen.", + "decryption_failed": "Kunne ikke dekryptere identitetsdata. Dette kan skyldes en manglende eller ugyldig krypteringsnøgle.", + "manage_your_personal_identities": "Administrer personlige identifikationsoplysninger sikkert", + "date_created": "Oprettelsesdato" + }, + "cards": { + "title": "Kort", + "description": "Administrer kredit- og debetkortoplysninger sikkert", + "add_card": "Tilføj kort", + "no_cards_found": "Ingen kort fundet", + "no_cards_found_message": "Du har endnu ikke tilføjet nogen kortoplysninger.", + "add_your_first_card": "Tilføj dit første kort", + "loading_cards": "Indlæser kort...", + "search_cards": "Søg", + "card_name": "Kortnavn", + "name": "Navn", + "enter_card_name": "Indtast kortnavn (som Visa der slutter på 1234)", + "card_number": "Kortnummer", + "enter_card_number": "Indtast kortnummer", + "expiry_date": "Udløbsdato", + "enter_expiry_date": "Indtast udløbsdato (MM/ÅÅ)", + "cvv": "CVV", + "enter_cvv": "Indtast CVV", + "cardholder_name": "Kortholder", + "card_holder_name": "Kortholder", + "enter_cardholder_name": "Indtast kortholder", + "tags": "Tags", + "enter_tags_comma_separated": "Indtast tags (adskilt af kommaer)", + "last_modified": "Sidst ændret", + "actions": "Handlinger", + "edit": "Rediger", + "delete": "Slet", + "copy_field": "Kopier {field}", + "copied": "Kopieret", + "card_deleted_successfully": "Kort slettet succesfuldt", + "error_deleting_card": "Kunne ikke slette kort", + "card_updated_successfully": "Kort opdateret succesfuldt", + "card_added_successfully": "Kort tilføjet succesfuldt", + "failed_to_add_card": "Kunne ikke tilføje kort", + "all_fields_required": "Udfyld venligst alle påkrævede felter", + "validation_error": "Ugyldige inputdata. Tjek dine indtastninger", + "server_error": "Der opstod en serverfejl. Prøv venligst igen senere", + "credit_cards": "Kreditkort", + "filter_by_brand": "Filtrer efter mærke", + "all_brands": "Alle mærker", + "search": "Søg", + "clear_filters": "Ryd filtre", + "card_holder": "Kortholder", + "brand": "Mærke", + "expiry": "Udløb", + "add_new_card": "Tilføj nyt kort", + "add_new_card_description": "Indtast kreditkortdetaljer nedenfor", + "select_brand": "Vælg mærke", + "expiry_month": "Udløbsmåned", + "expiry_year": "Udløbsår", + "cancel": "Annuller", + "save": "Gem", + "edit_card": "Rediger kort", + "edit_card_description": "Opdater kreditkortdetaljer", + "update": "Opdater", + "card_deleted": "Kort slettet", + "card_deleted_description": "Kortet er blevet slettet succesfuldt", + "field_copied": "Felt kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_field": "Kunne ikke kopiere felt til udklipsholder", + "hide_card_number": "Skjul kortnummer", + "show_card_number": "Vis kortnummer", + "copy_to_clipboard": "Kopier til udklipsholder", + "showing_results": "Viser {startIdx}-{endIdx} af {totalCount} resultater", + "page_of": "Side {currentPage} af {totalPages}", + "title_placeholder": "Personligt Visa kort", + "card_holder_name_placeholder": "Jan Nielsen", + "card_number_placeholder": "4111 1111 1111 1111", + "notes": "Noter", + "notes_placeholder": "Yderligere oplysninger om dette kort", + "tags_placeholder": "Tilføj tags", + "add": "Tilføj", + "adding": "Tilføjer...", + "updating": "Opdaterer...", + "deleting": "Sletter...", + "confirm_delete": "Bekræft sletning", + "delete_card_confirmation": "Er du sikker på, at du vil slette dette kort? Denne handling kan ikke fortrydes.", + "error_fetching_cards": "Fejl ved hentning af kort", + "missing_workspace_project": "Manglende arbejdsområde eller projekt", + "title_required": "Titel er påkrævet", + "card_holder_name_required": "Kortholder er påkrævet", + "card_number_required": "Kortnummer er påkrævet", + "invalid_card_number": "Ugyldigt kortnummer", + "cvv_required": "CVV er påkrævet", + "invalid_cvv": "Ugyldigt CVV", + "brand_required": "Mærke er påkrævet", + "error_adding_card": "Fejl ved tilføjelse af kort", + "error_updating_card": "Fejl ved opdatering af kort", + "other": "Andet", + "filter_by_tag": "Filtrer efter tag", + "all_tags": "Alle tags", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "search_across_all_fields": "Søg", + "searches_all_fields": "Søg i navn, kortholder, kortnummer, mærke og tags", + "missing_auth_or_selection": "Manglende autentificering eller valg", + "encryption_key_not_found": "Projekt krypteringsnøgle ikke fundet. Kan ikke gemme kort.", + "project_not_found": "Projekt ikke fundet. Vælg venligst et gyldigt projekt.", + "encryption_failed": "Kunne ikke kryptere kortdata. Prøv venligst igen.", + "decryption_failed": "Kunne ikke dekryptere kortdata. Dette kan skyldes en manglende eller ugyldig krypteringsnøgle.", + "manage_your_cards": "Administrer kredit- og debetkortoplysninger sikkert", + "date_created": "Oprettelsesdato" + }, + "wifi": { + "wifi_networks": "Wi-Fi netværk", + "manage_your_wifi_networks": "Administrer Wi-Fi netværk sikkert.", + "add_wifi": "Tilføj Wi-Fi", + "add_new_wifi": "Tilføj nyt Wi-Fi", + "add_new_wifi_description": "Indtast Wi-Fi netværksdetaljer nedenfor", + "edit_wifi": "Rediger Wi-Fi", + "edit_wifi_description": "Opdater Wi-Fi netværksdetaljer", + "search_wifi": "Søg", + "filter_by_security": "Filtrer efter sikkerhed", + "all_security_types": "Alle sikkerhedstyper", + "none": "Ingen", + "clear": "Ryd", + "clear_filters": "Ryd filtre", + "loading_wifi": "Indlæser Wi-Fi netværk...", + "no_wifi_found": "Ingen Wi-Fi netværk fundet", + "no_wifi_for_security_type": "Ingen Wi-Fi netværk fundet for {security_type}", + "no_wifi_match_search": "Ingen Wi-Fi netværk matcher din søgning '{search}'", + "name": "Navn", + "loading_wifi_networks": "Indlæser Wi-Fi netværk", + "no_wifi_networks_found": "Ingen Wi-Fi netværk fundet", + "add_wifi_network": "Tilføj Wi-Fi netværk", + "no_wifi_for_tag": "Ingen Wi-Fi netværk fundet med tag {tag}", + "adjust_search_filter": "Prøv at justere din søgning eller filter for at finde det, du leder efter.", + "ssid": "SSID", + "security": "Sikkerhed", + "security_type": "Sikkerhedstype", + "select_security_type": "Vælg sikkerhedstype", + "notes": "Noter", + "enter_notes": "Indtast noter", + "password": "Adgangskode", + "enter_password": "Indtast adgangskode", + "enter_new_password": "Indtast ny adgangskode (lad stå tomt for at bevare ændring)", + "show_password": "Vis adgangskode", + "hide_password": "Skjul adgangskode", + "copy_password": "Kopier adgangskode", + "tags": "Tags", + "add_a_tag": "Tilføj et tag", + "add": "Tilføj", + "last_modified": "Sidst ændret", + "date_created": "Oprettelsesdato", + "actions": "Handlinger", + "showing": "Viser", + "of": "af", + "rows_per_page": "Rækker per side", + "edit": "Rediger", + "copy_ssid": "Kopier SSID", + "delete": "Slet", + "confirm_delete_wifi": "Bekræft sletning af WiFi", + "delete_wifi_confirmation": "Er du sikker på, at du vil slette dette Wi-Fi netværk? Denne handling kan ikke fortrydes.", + "wifi_deleted": "WiFi slettet", + "wifi_deleted_description": "Wi-Fi netværket er blevet slettet succesfuldt.", + "failed_to_delete_wifi": "Kunne ikke slette Wi-Fi netværk", + "error_deleting_wifi": "Fejl ved sletning af WiFi", + "error_fetching_wifi_networks": "Fejl ved hentning af Wi-Fi netværk", + "failed_to_fetch_wifi_networks": "Kunne ikke indlæse Wi-Fi netværk", + "no_project_selected": "Intet projekt valgt. Vælg venligst et projekt for at fortsætte.", + "copied": "Kopieret", + "field_copied": "Felt kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_field": "Kunne ikke kopiere felt til udklipsholder", + "show_qr_code": "Vis QR-kode", + "wifi_qr_code": "WiFi QR-kode", + "wifi_qr_code_description": "Scan denne QR-kode for at forbinde til Wi-Fi netværket.", + "qr_code_placeholder": "QR-kode", + "wifi_credentials": "WiFi legitimationsoplysninger", + "close": "Luk", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "wifi_added_successfully": "WiFi tilføjet succesfuldt", + "wifi_added_description": "Wi-Fi netværket er blevet tilføjet.", + "wifi_already_exists": "Wi-Fi netværk med dette SSID eksisterer allerede", + "failed_to_add_wifi": "Kunne ikke tilføje Wi-Fi netværk", + "enter_ssid": "Indtast SSID", + "update_wifi": "Opdater WiFi", + "wifi_updated_successfully": "WiFi opdateret succesfuldt", + "wifi_updated_description": "Wi-Fi netværket er blevet opdateret.", + "wifi_not_found": "Wi-Fi netværk ikke fundet", + "failed_to_update_wifi": "Kunne ikke opdatere Wi-Fi netværk", + "invalid_input_data": "Ugyldige inputdata", + "adding": "Tilføjer...", + "updating": "Opdaterer...", + "deleting": "Sletter...", + "cancel": "Annuller", + "encryption_key_not_found": "Projekt krypteringsnøgle ikke fundet. Kan ikke gemme Wi-Fi netværk.", + "project_not_found": "Projekt ikke fundet. Vælg venligst et gyldigt projekt.", + "encryption_failed": "Kunne ikke kryptere WiFi data. Prøv venligst igen.", + "decryption_failed": "Kunne ikke dekryptere WiFi data. Dette kan skyldes en manglende eller ugyldig krypteringsnøgle.", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "filter_by_tag": "Filtrer efter tag", + "all_tags": "Alle tags", + "scan_with_phone": "Scan denne QR-kode med din telefon for at forbinde til netværket" + }, + "key_shortcuts": { + "title": "Tastaturgenveje" + }, + "notes": { + "add_new_note": "Tilføj ny note", + "note_title": "Notetitel", + "note_content": "Noteindhold", + "tags": "Tags", + "update_note": "Opdater note", + "enter_note_title": "Indtast notetitel", + "add_a_tag": "Tilføj et tag", + "add_note": "Tilføj note", + "cancel": "Annuller" + }, + "emails": { + "email_accounts": "E-mail konti", + "add_email": "Tilføj e-mail", + "search_email_accounts": "Søg", + "per_page": "per side", + "clear_filters": "Ryd filtre", + "title": "Titel", + "email_address": "E-mailadresse", + "servers": "Servere", + "username": "Brugernavn", + "password": "Adgangskode", + "last_modified": "Sidst ændret", + "tags": "Tags", + "loading_emails": "Indlæser e-mail", + "actions": "Handlinger", + "loading": "Indlæser...", + "no_results_found": "Ingen resultater fundet", + "no_email_accounts": "Ingen e-mail konti", + "copy": "Kopier", + "copy_to_clipboard": "Kopier til udklipsholder", + "show_password": "Vis adgangskode", + "hide_password": "Skjul adgangskode", + "open_menu": "Åbn menu", + "edit": "Rediger", + "delete": "Slet", + "deleted": "Slettet", + "showing_results": "Viser {start} til {end} af {total} resultater", + "confirm_delete": "Bekræft sletning", + "delete_email_confirmation": "Er du sikker på, at du vil slette denne e-mail konto? Denne handling kan ikke fortrydes.", + "cancel": "Annuller", + "deleting": "Sletter...", + "copied": "Kopieret", + "field_copied": "Værdi kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_value": "Kunne ikke kopiere værdi til udklipsholder", + "encryption_error": "Krypteringsfejl", + "could_not_encrypt_data": "Kunne ikke kryptere data. Prøv venligst igen.", + "success": "Succes", + "email_added_successfully": "E-mail konto tilføjet succesfuldt", + "error_adding_email": "Fejl ved tilføjelse af e-mail konto. Prøv venligst igen.", + "email_deleted_successfully": "E-mail legitimationsoplysninger slettet succesfuldt", + "failed_to_delete_email": "Kunne ikke slette e-mail legitimationsoplysninger", + "error_fetching_emails": "Kunne ikke hente e-mail", + "error": "Fejl", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "add_email_description": "Tilføj en ny e-mail konto til din sikre boks", + "title_placeholder": "Arbejds e-mail", + "email_address_placeholder": "din.email@example.com", + "imap_server": "IMAP server", + "imap_server_placeholder": "imap.example.com", + "smtp_server": "SMTP server", + "smtp_server_placeholder": "smtp.example.com", + "username_placeholder": "Valgfrit, standard til e-mailadresse", + "password_placeholder": "Indtast adgangskode", + "notes": "Noter (valgfrit)", + "notes_placeholder": "Yderligere oplysninger om denne e-mail konto", + "add_tag": "Tilføj tag", + "remove": "Fjern", + "adding": "Tilføjer...", + "add": "Tilføj", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "email_title_already_exists": "E-mail med dette navn eksisterer allerede", + "invalid_email_format": "Ugyldigt e-mail format", + "missing_required_data": "Manglende påkrævede projektdata", + "edit_email": "Rediger e-mail konto", + "edit_email_description": "Opdater e-mail kontooplysninger", + "save_changes": "Gem ændringer", + "email_updated_successfully": "E-mail konto opdateret succesfuldt", + "error_updating_email": "Fejl ved opdatering af e-mail konto. Prøv venligst igen.", + "manage_your_email_accounts": "Administrer e-mail konti og serverindstillinger sikkert", + "date_created": "Oprettelsesdato", + "filter_by_tag": "Filtrer efter tag", + "all_tags": "Alle tags" + }, + "ssh_keys": { + "ssh_keys": "SSH-nøgler", + "add_ssh_key": "Tilføj SSH-nøgle", + "search_ssh_keys": "Søg", + "per_page": "per side", + "clear_filters": "Ryd filtre", + "name": "Navn", + "ssh_key": "SSH-nøgle", + "tags": "Tags", + "loading_ssh_keys": "Indlæser SSH-nøgler", + "actions": "Handlinger", + "loading": "Indlæser...", + "no_results_found": "Ingen resultater fundet", + "no_ssh_keys": "Ingen SSH-nøgler", + "hide_ssh_key": "Skjul SSH-nøgle", + "show_ssh_key": "Vis hele SSH-nøgle", + "copied": "Kopieret", + "ssh_key_copied": "SSH-nøgle kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_ssh_key": "Kunne ikke kopiere SSH-nøgle til udklipsholder", + "copy_to_clipboard": "Kopier til udklipsholder", + "open_menu": "Åbn menu", + "edit": "Rediger", + "delete": "Slet", + "fingerprint": "Fingeraftryk", + "last_modified": "Sidst ændret", + "deleted": "Slettet", + "showing_results": "Viser {start} til {end} af {total} resultater", + "confirm_delete": "Bekræft sletning", + "delete_ssh_key_confirmation": "Er du sikker på, at du vil slette denne SSH-nøgle? Denne handling kan ikke fortrydes.", + "cancel": "Annuller", + "deleting": "Sletter...", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "ssh_key_name_already_exists": "SSH-nøgle med dette navn eksisterer allerede", + "missing_required_data": "Manglende påkrævede projektdata", + "encryption_error": "Krypteringsfejl", + "could_not_encrypt_data": "Kunne ikke kryptere data. Prøv venligst igen.", + "success": "Succes", + "ssh_key_added_successfully": "SSH-nøgle tilføjet succesfuldt", + "error_adding_ssh_key": "Fejl ved tilføjelse af SSH-nøgle. Prøv venligst igen.", + "ssh_key_updated_successfully": "SSH-nøgle opdateret succesfuldt", + "error_updating_ssh_key": "Fejl ved opdatering af SSH-nøgle. Prøv venligst igen.", + "ssh_key_deleted_successfully": "SSH-nøgle slettet succesfuldt", + "error_deleting_ssh_key": "Fejl ved sletning af SSH-nøgle", + "error_fetching_ssh_keys": "Kunne ikke hente SSH-nøgler", + "add_a_tag": "Tilføj et tag", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_created": "Sortér efter oprettelsesdato", + "sort_by_updated": "Sortér efter opdateringsdato", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "error": "Fejl", + "add_ssh_key_description": "Tilføj en ny SSH-nøgle til din sikre boks", + "name_placeholder": "SSH-nøgle til GitHub", + "ssh_key_placeholder": "Indsæt din SSH-nøgle her", + "notes": "Noter (valgfrit)", + "notes_placeholder": "Yderligere oplysninger om denne SSH-nøgle", + "add_tag": "Tilføj tag", + "remove": "Fjern", + "adding": "Tilføjer...", + "add": "Tilføj", + "edit_ssh_key": "Rediger SSH-nøgle", + "edit_ssh_key_description": "Opdater SSH-nøgleoplysninger", + "save_changes": "Gem ændringer", + "search_licenses": "Søg", + "manage_your_ssh_keys": "Administrer SSH-nøgler sikkert", + "filter_by_tag": "Filtrer efter tag", + "all_tags": "Alle tags", + "date_created": "Oprettelsesdato" + }, + "files": { + "files": "Filer", + "file_manager": "Filhåndtering", + "add_file": "Upload fil", + "create_folder": "Opret mappe", + "search_files": "Søg filer", + "per_page": "per side", + "clear_filters": "Ryd filtre", + "name": "Navn", + "size": "Størrelse", + "type": "Type", + "modified": "Ændret", + "folder": "Mappe", + "file": "Fil", + "loading_files": "Indlæser filer...", + "actions": "Handlinger", + "loading": "Indlæser...", + "no_results_found": "Ingen resultater fundet", + "no_files": "Ingen filer", + "no_folders": "Ingen mapper", + "download": "Download", + "rename": "Omdøb", + "move": "Flyt", + "delete": "Slet", + "copied": "Kopieret", + "file_copied": "Fil kopieret til udklipsholder", + "copy_failed": "Kopiering mislykkedes", + "failed_to_copy_file": "Kunne ikke kopiere fil til udklipsholder", + "copy_to_clipboard": "Kopier til udklipsholder", + "open_menu": "Åbn menu", + "edit": "Rediger", + "deleted": "Slettet", + "showing_results": "Viser {start} til {end} af {total} resultater", + "confirm_delete": "Bekræft sletning", + "delete_file_confirmation": "Er du sikker på, at du vil slette denne fil? Denne handling kan ikke fortrydes.", + "delete_folder_confirmation": "Er du sikker på, at du vil slette denne mappe? Denne handling kan ikke fortrydes.", + "cancel": "Annuller", + "deleting": "Sletter...", + "please_fill_all_required_fields": "Udfyld venligst alle påkrævede felter", + "file_name_already_exists": "Fil med dette navn eksisterer allerede i denne mappe", + "folder_name_already_exists": "Mappe med dette navn eksisterer allerede på denne placering", + "missing_required_data": "Manglende påkrævede projektdata", + "encryption_error": "Krypteringsfejl", + "could_not_encrypt_data": "Kunne ikke kryptere data. Prøv venligst igen.", + "success": "Succes", + "file_uploaded_successfully": "Fil uploadet succesfuldt", + "error_uploading_file": "Fejl ved upload af fil. Prøv venligst igen.", + "file_updated_successfully": "Fil opdateret succesfuldt", + "error_updating_file": "Fejl ved opdatering af fil. Prøv venligst igen.", + "file_deleted_successfully": "Fil slettet succesfuldt", + "error_deleting_file": "Fejl ved sletning af fil", + "error_fetching_files": "Kunne ikke hente filer", + "folder_created_successfully": "Mappe oprettet succesfuldt", + "error_creating_folder": "Fejl ved oprettelse af mappe. Prøv venligst igen.", + "folder_updated_successfully": "Mappe opdateret succesfuldt", + "error_updating_folder": "Fejl ved opdatering af mappe. Prøv venligst igen.", + "folder_deleted_successfully": "Mappe slettet succesfuldt", + "error_deleting_folder": "Fejl ved sletning af mappe", + "error_fetching_folders": "Kunne ikke hente mapper", + "file_too_large": "Filstørrelse overstiger 50MB grænsen", + "invalid_file_type": "Ugyldig filtype", + "upload_failed": "Upload mislykkedes", + "download_failed": "Download mislykkedes", + "sort": "Sortér", + "sort_options": "Sorteringsmuligheder", + "sort_by_name": "Sortér efter navn", + "sort_by_size": "Sortér efter størrelse", + "sort_by_modified": "Sortér efter ændringsdato", + "sort_by_type": "Sortér efter type", + "ascending": "Stigende", + "descending": "Faldende", + "clear_sort": "Ryd sortering", + "error": "Fejl", + "upload_file_description": "Upload en fil til din sikre boks", + "create_folder_description": "Opret en ny mappe for at organisere dine filer", + "name_placeholder": "Indtast fil- eller mappenavn", + "folder_name_placeholder": "Indtast mappenavn", + "notes": "Noter (valgfrit)", + "notes_placeholder": "Yderligere oplysninger om denne fil", + "add_tag": "Tilføj tag", + "remove": "Fjern", + "uploading": "Uploader...", + "creating": "Opretter...", + "add": "Tilføj", + "upload": "Upload", + "create": "Opret", + "edit_file": "Rediger fil", + "edit_file_description": "Opdater filoplysninger", + "edit_folder": "Rediger mappe", + "edit_folder_description": "Opdater mappeoplysninger", + "save_changes": "Gem ændringer", + "manage_your_files": "Administrer dine filer sikkert", + "filter_by_type": "Filtrer efter type", + "all_types": "Alle typer", + "date_created": "Oprettelsesdato", + "file_size": "Filstørrelse", + "folder_path": "Mappesti", + "select_folder": "Vælg mappe", + "move_to_folder": "Flyt til mappe", + "drag_and_drop_files": "Træk filer hertil eller klik for at vælge", + "select_files": "Vælg filer", + "upload_progress": "Upload fremgang", + "upload_complete": "Upload fuldført", + "bytes": "Bytes", + "kb": "KB", + "mb": "MB", + "gb": "GB", + "tb": "TB" + }, + "project_colors": { + "red": "Rød", + "orange": "Orange", + "amber": "Rav", + "yellow": "Gul", + "lime": "Lime", + "green": "Grøn", + "emerald": "Smaragd", + "teal": "Blågrøn", + "cyan": "Cyan", + "sky": "Himmelblå", + "blue": "Blå", + "indigo": "Indigo", + "violet": "Violet", + "purple": "Lilla", + "fuchsia": "Fuchsia", + "pink": "Pink", + "rose": "Rose" + } +} diff --git a/packages/frontend-web/middleware.ts b/packages/frontend-web/middleware.ts index 463176a..5efdc38 100644 --- a/packages/frontend-web/middleware.ts +++ b/packages/frontend-web/middleware.ts @@ -3,7 +3,7 @@ import { NextResponse } from 'next/server'; import type { NextRequest } from 'next/server'; // Available locales -export const locales = ['en', 'de', 'fr', 'es','af','ar', 'ca','cs']; +export const locales = ['en', 'de', 'fr', 'es','af','ar', 'ca','cs','da']; export const defaultLocale = 'en'; // Protected routes that require authentication From 3ff3b86bd7eef0bbd4fcd551bb16dbe200931447 Mon Sep 17 00:00:00 2001 From: ananducv Date: Thu, 16 Oct 2025 13:14:32 +0530 Subject: [PATCH 04/11] folder upload support implemented for drive --- .../frontend-web/components/drive-content.tsx | 8 +- .../components/upload-file-dialog.tsx | 117 ++++--- .../hooks/use-drive-management.ts | 322 ++++++++++++++++++ 3 files changed, 405 insertions(+), 42 deletions(-) diff --git a/packages/frontend-web/components/drive-content.tsx b/packages/frontend-web/components/drive-content.tsx index e5b68d1..05087ca 100644 --- a/packages/frontend-web/components/drive-content.tsx +++ b/packages/frontend-web/components/drive-content.tsx @@ -90,6 +90,7 @@ export function DriveContent() { getFolderPath, getSubfolders, uploadFile, + uploadFolder, renameFile, moveFile, deleteFiles, @@ -98,6 +99,7 @@ export function DriveContent() { previewFile, isUploading, uploadProgress, + uploadStatusMessage, isDownloading, downloadProgress, } = useDriveManagement({ @@ -322,7 +324,7 @@ export function DriveContent() { )} + + Support & Queries + +
@@ -717,6 +737,7 @@ export function DashboardLayout({ children, locale = "en" }: DashboardLayoutProp {showGeneratePassword && setShowGeneratePassword(false)} />} {showProjectDialog && setShowProjectDialog(false)} />} + {showSupportModal && setShowSupportModal(false)} />} ); } \ No newline at end of file diff --git a/packages/frontend-web/components/support-modal.tsx b/packages/frontend-web/components/support-modal.tsx new file mode 100644 index 0000000..239e167 --- /dev/null +++ b/packages/frontend-web/components/support-modal.tsx @@ -0,0 +1,66 @@ +"use client" + +import { Button } from "@/components/ui/button" +import { HelpCircle, X, Mail } from "lucide-react" + +interface SupportModalProps { + onClose: () => void +} + +export function SupportModal({ onClose }: SupportModalProps) { + const maintainerEmails = [ + "akhiledathadan007@gmail.com", + "ananducv666@gmail.com" + ] + + return ( +
+
+
+
+ +

Support & Queries

+
+ +
+ +
+

+ Contact the maintainers for support/queries +

+ +
+ {maintainerEmails.map((email) => ( + +
+ +
+
+

{email}

+

Click to send email

+
+
+ ))} +
+ +
+ +
+
+
+
+ ) +} + From dfcf22706bb32fba0c60205b18c08398a9bd10d1 Mon Sep 17 00:00:00 2001 From: ananducv Date: Fri, 17 Oct 2025 17:39:11 +0530 Subject: [PATCH 08/11] file upload support temp fix (separate upload for folders and files) --- .../components/upload-file-dialog.tsx | 72 +++++++++++++------ packages/frontend-web/messages/en/common.json | 2 + 2 files changed, 51 insertions(+), 23 deletions(-) diff --git a/packages/frontend-web/components/upload-file-dialog.tsx b/packages/frontend-web/components/upload-file-dialog.tsx index 6e595c6..91db037 100644 --- a/packages/frontend-web/components/upload-file-dialog.tsx +++ b/packages/frontend-web/components/upload-file-dialog.tsx @@ -11,7 +11,7 @@ import { } from "@/components/ui/dialog"; import { Button } from "@/components/ui/button"; import { Progress } from "@/components/ui/progress"; -import { Upload, X, FileIcon } from "lucide-react"; +import { Upload, X, FileIcon, FolderIcon } from "lucide-react"; import { useTranslator } from "@/hooks/use-translations"; import { validateFileSize, formatBytes } from "@/libs/file-encryption"; @@ -172,29 +172,55 @@ export function UploadFileDialog({ onDragOver={handleDrag} onDrop={handleDrop} > - - -
+
-
- - - {" "} - {translate("or_drag_drop", "drive", { default: "or drag and drop" })} - +
+ {translate("or_drag_drop", "drive", { default: "Drag and drop files or folders here" })} +
+ + {/* Two separate upload buttons */} +
+ {/* Upload Files Button */} +
+ + +
+ + {/* Upload Folder Button */} +
+ + +
diff --git a/packages/frontend-web/messages/en/common.json b/packages/frontend-web/messages/en/common.json index 2c805bc..deac018 100644 --- a/packages/frontend-web/messages/en/common.json +++ b/packages/frontend-web/messages/en/common.json @@ -1480,6 +1480,8 @@ "max_file_size": "Maximum file size: 50MB", "loading": "Loading...", "choose_file": "Choose a file", + "choose_files": "Choose Files", + "choose_folder": "Choose Folder", "or_drag_drop": "or drag and drop here", "uploading": "Uploading...", "error_uploading_file": "Failed to upload file", From 115d81c71c3ee22500f6eff1679f6a423cf6b1c6 Mon Sep 17 00:00:00 2001 From: ananducv Date: Fri, 17 Oct 2025 17:44:52 +0530 Subject: [PATCH 09/11] proper error for existing files and autom modal close on succesfull uplaod --- .../components/upload-file-dialog.tsx | 21 ++++++++++++-- .../hooks/use-drive-management.ts | 28 +++++-------------- 2 files changed, 26 insertions(+), 23 deletions(-) diff --git a/packages/frontend-web/components/upload-file-dialog.tsx b/packages/frontend-web/components/upload-file-dialog.tsx index 91db037..06791a1 100644 --- a/packages/frontend-web/components/upload-file-dialog.tsx +++ b/packages/frontend-web/components/upload-file-dialog.tsx @@ -108,6 +108,7 @@ export function UploadFileDialog({ if (!selectedFiles) return; try { + setError(""); // Clear any previous errors if (isFolder || selectedFiles.length > 1) { // Upload folder or multiple files await uploadFolder(selectedFiles, currentFolder?.folder_id || null); @@ -120,9 +121,25 @@ export function UploadFileDialog({ setError(""); onFileUploaded(); onOpenChange(false); - } catch (error) { + } catch (error: any) { console.error("Upload error:", error); - // Error is handled in the hook with a toast + + // Extract error message from API response + const errorData = error?.response?.data; + const isFileExistsError = + (errorData?.status_code === 400 || error?.response?.status === 400) && + (errorData?.message?.toLowerCase().includes("file already exists") || + errorData?.message?.toLowerCase().includes("already exists")); + + const errorMessage = isFileExistsError + ? translate("file_already_exists", "drive", { + default: "A file with this name already exists in this location", + }) + : errorData?.message || translate("error_uploading_file", "drive", { + default: "Failed to upload file. Please try again.", + }); + + setError(errorMessage); } }; diff --git a/packages/frontend-web/hooks/use-drive-management.ts b/packages/frontend-web/hooks/use-drive-management.ts index ea0d099..ded5a1b 100644 --- a/packages/frontend-web/hooks/use-drive-management.ts +++ b/packages/frontend-web/hooks/use-drive-management.ts @@ -509,23 +509,10 @@ export function useDriveManagement({ setUploadProgress(100); } catch (error: any) { console.error("Error uploading file:", error); + console.error("Error response:", error?.response); + console.error("Error response data:", error?.response?.data); - // Check if it's a "file already exists" error - const isFileExistsError = - error?.response?.data?.status_code === 400 && - error?.response?.data?.message?.toLowerCase().includes("file already exists"); - - toast({ - title: translate("error", "drive", { default: "Error" }), - description: isFileExistsError - ? translate("file_already_exists", "drive", { - default: "A file with this name already exists in this location", - }) - : translate("error_uploading_file", "drive", { - default: "Failed to upload file", - }), - variant: "destructive", - }); + // Re-throw error to be handled by the upload dialog throw error; } finally { setIsUploading(false); @@ -834,11 +821,10 @@ export function useDriveManagement({ await fetchFolders(); } catch (error: any) { console.error("Error uploading folder:", error); - toast({ - title: translate("error", "drive", { default: "Error" }), - description: "Failed to upload folder", - variant: "destructive", - }); + console.error("Error response:", error?.response); + console.error("Error response data:", error?.response?.data); + + // Re-throw error to be handled by the upload dialog throw error; } finally { setIsUploading(false); From 81a60bbdeee5cb403ac0b260f94bb66dd84247b4 Mon Sep 17 00:00:00 2001 From: ananducv Date: Fri, 17 Oct 2025 17:53:05 +0530 Subject: [PATCH 10/11] back button behaviour in drive section fixed to properly go back through parent folders --- .../frontend-web/components/drive-content.tsx | 49 +++++++++++++++---- 1 file changed, 40 insertions(+), 9 deletions(-) diff --git a/packages/frontend-web/components/drive-content.tsx b/packages/frontend-web/components/drive-content.tsx index 05087ca..ab5d4a2 100644 --- a/packages/frontend-web/components/drive-content.tsx +++ b/packages/frontend-web/components/drive-content.tsx @@ -3,6 +3,7 @@ import { useState, useCallback, useEffect } from "react"; import { useSelector } from "react-redux"; import { RootState } from "@/libs/Redux/store"; +import { useSearchParams, useRouter, usePathname } from "next/navigation"; import { Button } from "@/components/ui/button"; import { Folder as FolderIcon, @@ -69,6 +70,10 @@ interface DriveFile { export function DriveContent() { const { translate } = useTranslator(); + const router = useRouter(); + const pathname = usePathname(); + const searchParams = useSearchParams(); + const selectedWorkspaceId = useSelector( (state: RootState) => state.workspace.selectedWorkspaceId ); @@ -126,6 +131,28 @@ export function DriveContent() { const [previewBlobUrl, setPreviewBlobUrl] = useState(null); const [previewingFile, setPreviewingFile] = useState(null); + // Sync currentFolder with URL parameter + useEffect(() => { + const folderId = searchParams.get('folder'); + + if (!folderId) { + // No folder parameter means we're at root + setCurrentFolder(null); + } else if (folders.length > 0) { + // Find the folder by ID + const folder = folders.find(f => f.folder_id === folderId); + + // Only update if the folder exists and is different from current + if (folder && folder.folder_id !== currentFolder?.folder_id) { + setCurrentFolder(folder); + } else if (!folder && currentFolder) { + // Folder doesn't exist, reset to root + setCurrentFolder(null); + router.replace(pathname); + } + } + }, [searchParams, folders, currentFolder, router, pathname, setCurrentFolder]); + // Get current subfolders to display const currentSubfolders = getSubfolders(currentFolder?.folder_id || null); @@ -136,22 +163,22 @@ export function DriveContent() { const breadcrumbPath = getFolderPath(currentFolder?.folder_id || null); const handleFolderClick = (folder: Folder) => { - setCurrentFolder(folder); + // Update URL with folder parameter to create browser history entry + const params = new URLSearchParams(searchParams.toString()); + params.set('folder', folder.folder_id); + router.push(`${pathname}?${params.toString()}`); }; const handleBackClick = () => { if (!currentFolder) return; - if (currentFolder.parent_id) { - const parentFolder = folders.find(f => f.folder_id === currentFolder.parent_id); - setCurrentFolder(parentFolder || null); - } else { - setCurrentFolder(null); - } + // Use browser back to navigate through history + router.back(); }; const handleHomeClick = () => { - setCurrentFolder(null); + // Navigate to root by removing folder parameter + router.push(pathname); }; const handleCreateFolder = () => { @@ -302,7 +329,11 @@ export function DriveContent() { From 1fb29c1b44fcca5ccb6f37610b8722ff671ab3d4 Mon Sep 17 00:00:00 2001 From: ananducv Date: Fri, 17 Oct 2025 18:05:53 +0530 Subject: [PATCH 11/11] extended the border of the drive container to the bottom --- packages/frontend-web/components/drive-content.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/frontend-web/components/drive-content.tsx b/packages/frontend-web/components/drive-content.tsx index ab5d4a2..0d523d8 100644 --- a/packages/frontend-web/components/drive-content.tsx +++ b/packages/frontend-web/components/drive-content.tsx @@ -365,7 +365,7 @@ export function DriveContent() {
{/* Folders and Files Grid */} -
+
{isLoading ? (