diff --git a/README.md b/README.md index c9e1404c..1fce78a9 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Run it on a Raspberry Pi, a home server, or a $5 VPS. Your data stays yours. - **Expenses & reports** — See what your vehicles actually cost you. - **Dashboard** — A fleet-wide overview with widgets you can rearrange to your liking. - **Auth & feature toggles** — Username/password login with sessions, and the ability to turn off features you don't need. -- **11 languages** — English, Hindi, Spanish, French, German, Italian, Arabic, Romanian, Hungarian, Finnish, and Russian. +- **11 languages** — English, Hindi, Spanish, French, German, Italian, Arabic, Romanian, Hungarian, Finnish, Russian and Czech. ## Tech stack diff --git a/i18n/messages/cs.json b/i18n/messages/cs.json new file mode 100644 index 00000000..3802f4b5 --- /dev/null +++ b/i18n/messages/cs.json @@ -0,0 +1,877 @@ +{ + "$schema": "https://inlang.com/schema/inlang-message-format", + "hello_world": "Ahoj, {name} z en!", + "app_name": "Tracktor", + "app_title": "Vaše garáž", + "app_new_update_available": "Je k dispozici nová aktualizace. Načítání...!", + "app_add_vehicle": "Přidat vozidlo", + "vehicle_scope_all": "Všechna vozidla", + "vehicle_scope_manage": "Spravovat vozidla", + "form_vehicle_label": "Vozidlo", + "form_vehicle_desc": "Ke kterému vozidlu tento záznam patří", + "app_empty_select_message": "Vyberte vozidlo pro zobrazení jeho podrobností", + "app_empty_select_hint": "Vyberte jedno z vozidel výše a načtěte jeho přehled.", + "demo_banner": "Toto je demo instance. Data budou pravidelně resetována a nejsou trvale ukládána. Nezadávejte prosím žádné osobní údaje.", + "default_login": "Výchozí přihlášení: demo / demo", + "auth_username": "Uživatelské jméno", + "auth_username_placeholder": "uživatelské jméno", + "auth_password": "Heslo", + "auth_password_placeholder": "********", + "auth_confirm_password": "Potvrzení hesla", + "auth_login_button": "Přihlásit se", + "auth_signup_button": "Registrovat se", + "auth_login_loading": "Přihlašování...", + "auth_signup_loading": "Vytváření účtu...", + "auth_password_mismatch": "Hesla se neshodují!!!", + "auth_login_title": "Vítejte zpět", + "auth_login_subtitle": "Přihlaste se a mějte přehled o svých vozidlech, pohonných hmotách a dokladech.", + "settings_tab_personalization": "Personalizace", + "settings_tab_interface": "Rozhraní", + "settings_tab_localization": "Lokalizace", + "settings_tab_advanced": "Pokročilé", + "settings_tab_features": "Funkce", + "settings_tab_units": "Jednotky", + "settings_title": "Nastavení", + "settings_page_description": "Nastavte vzhled, jazyk, regionální formáty a chování rozhraní.", + "settings_label_date_format": "Formát data", + "settings_label_locale": "Jazyková verze", + "settings_label_timezone": "Časové pásmo", + "settings_label_currency": "Měna", + "settings_label_unit_distance": "Jednotka vzdálenosti", + "settings_label_unit_volume": "Jednotka paliva", + "settings_label_theme": "Motiv", + "settings_label_dark_mode": "Styl tmavého režimu", + "settings_label_custom_css": "Vlastní CSS", + "settings_update_button": "Aktualizovat nastavení", + "settings_select_unit_system": "Vyberte jednotkovou soustavu", + "settings_select_theme": "Vyberte motiv", + "settings_select_dark_mode": "Vyberte styl tmavého režimu", + "settings_desc_date_format": "Vyberte preferovaný formát data", + "settings_desc_locale": "Vyberte jazyk rozhraní", + "settings_desc_timezone": "Vyberte časové pásmo pro zobrazení data", + "settings_desc_currency": "Vyberte preferovanou měnu", + "settings_desc_unit_distance": "Jednotka měření vzdálenosti", + "settings_desc_unit_volume": "Jednotka měření objemu", + "settings_label_mileage_format": "Formát zobrazení spotřeby", + "settings_desc_mileage_format": "Vyberte způsob zobrazení spotřeby paliva", + "settings_mileage_format_distance_per_fuel": "Vzdálenost na palivo (např. km/l, mpg)", + "settings_mileage_format_fuel_per_distance": "Palivo na vzdálenost (např. l/100 km)", + "settings_mileage_format_uk_mpg": "UK MPG (mil na imperiální galon)", + "settings_desc_theme": "Vyberte preferovaný motiv", + "settings_desc_dark_mode": "Vyberte styl kontrastu použitý v tmavém režimu", + "settings_desc_custom_css": "Styly CSS pro úpravu rozhraní", + "settings_select_language": "Vyberte jazyk", + "settings_updated_success": "Nastavení bylo úspěšně aktualizováno!", + "common_example_prefix": "Příklad – ", + "common_invalid_format": "Neplatný formát...", + "common_kilometer": "Kilometr", + "common_mile": "Míle", + "common_litre": "Litr", + "common_gallon": "Galon", + "common_submit": "Odeslat", + "common_details": "Podrobnosti", + "common_close": "Zavřít", + "common_view": "Zobrazit", + "common_view_all": "Zobrazit vše", + "common_view_less": "Zobrazit méně", + "common_loading": "Načítání...", + "common_add": "Přidat", + "common_yes": "Ano", + "common_no": "Ne", + "common_cancel": "Zrušit", + "common_confirm": "Potvrdit", + "common_continue": "Pokračovat", + "common_skip": "Přeskočit", + "delete_dialog_title": "Smazat", + "delete_dialog_message": "Opravdu chcete tuto položku smazat?", + "common_select_column": "Vyberte sloupec", + "common_import": "Importovat", + "common_search": "Hledat", + "common_columns": "Sloupce", + "common_rows_per_page": "Řádků na stránku", + "common_no_data_available": "Nejsou k dispozici žádná data", + "common_no_records_found": "Nebyly nalezeny žádné záznamy", + "common_add_new": "Přidat nový", + "common_no_match_found": "Nebyla nalezena žádná shoda", + "common_search_placeholder": "Hledat {name}", + "common_select_placeholder": "Vyberte {name}...", + "common_date_from": "Od", + "common_date_to": "Do", + "common_export_csv": "Exportovat CSV", + "nav_garage": "Garáž", + "nav_dashboard": "Nástěnka", + "nav_overview": "Přehled", + "nav_fuel_logs": "Záznamy o palivu", + "nav_logs": "Záznamy", + "nav_insights": "Postřehy", + "nav_maintenance": "Údržba", + "nav_reminders": "Připomínky", + "nav_reports": "Přehledy", + "tools_export_data": "Export dat", + "tools_import_data": "Import dat", + "vehicle_form_make_label": "Značka", + "vehicle_form_make_desc": "Výrobce vozidla", + "vehicle_form_model_label": "Model", + "vehicle_form_model_desc": "Model vozidla", + "vehicle_form_year_label": "Rok", + "vehicle_form_year_desc": "Rok výroby", + "vehicle_form_color_label": "Barva", + "vehicle_form_color_desc": "Barva vozidla", + "vehicle_form_fuel_type_label": "Typ paliva", + "vehicle_form_fuel_type_desc": "Typ paliva používaného vozidlem", + "vehicle_form_fuel_type_placeholder": "Vyberte typ paliva", + "vehicle_form_vehicle_type_label": "Typ vozidla", + "vehicle_form_vehicle_type_desc": "Kategorie vozidla", + "vehicle_form_vehicle_type_placeholder": "Vyberte typ vozidla", + "vehicle_form_odometer_label": "Tachometr", + "vehicle_form_odometer_desc": "Aktuální stav tachometru vozidla", + "vehicle_form_license_label": "Registrační značka", + "vehicle_form_license_desc": "Registrační číslo vozidla", + "vehicle_form_vin_label": "VIN", + "vehicle_form_vin_desc": "Identifikační číslo vozidla", + "vehicle_toast_saved": "Vozidlo bylo úspěšně uloženo", + "vehicle_toast_updated": "Vozidlo bylo úspěšně aktualizováno", + "vehicle_toast_error_prefix": "Chyba při ukládání: ", + "vehicle_list_empty": "Zatím zde nic není. Přidejte prosím své první vozidlo.", + "vehicle_delete_success": "Vozidlo bylo úspěšně smazáno.", + "vehicle_delete_error": "Při mazání vozidla došlo k chybě.", + "vehicle_action_add_fuel_log": "Přidat záznam o palivu", + "vehicle_action_add_maintenance_log": "Přidat záznam o údržbě", + "vehicle_action_add_reminder": "Přidat připomínku", + "vehicle_action_more_info": "Více informací", + "vehicle_action_update_vehicle": "Aktualizovat vozidlo", + "vehicle_action_edit": "Upravit", + "vehicle_action_delete": "Smazat", + "tools_export_encrypt_label": "Zašifrovat exportovaná data", + "tools_export_password_label": "Heslo pro šifrování", + "tools_export_password_placeholder": "Zadejte heslo pro šifrování", + "tools_export_password_hint": "Uchovejte toto heslo v bezpečí – budete jej potřebovat k dešifrování dat při importu.", + "tools_export_status_exporting": "Exportování...", + "tools_export_button": "Exportovat databázi", + "tools_export_info_title": "Informace o exportu", + "tools_export_info_bullet_1": "Exportuje všechny tabulky a data databáze", + "tools_export_info_bullet_2": "Zahrnuje vozidla, záznamy o palivu, záznamy o údržbě atd.", + "tools_export_info_bullet_3": "Volitelné šifrování pro ochranu citlivých údajů", + "tools_export_info_bullet_4": "Stažení jako soubor JSON", + "tools_export_success": "Data byla úspěšně exportována", + "tools_export_error": "Export dat se nezdařil", + "tools_import_upload_label": "Nahrát soubor JSON", + "tools_import_paste_label": "Nebo vložte data JSON", + "tools_import_paste_placeholder": "Sem vložte exportovaná data JSON...", + "tools_import_password_label": "Heslo pro dešifrování (pokud jsou data zašifrována)", + "tools_import_password_placeholder": "Zadejte heslo, pokud jsou data zašifrována", + "tools_import_status_importing": "Importování...", + "tools_import_button": "Importovat databázi", + "tools_import_warning_title": "⚠️ Upozornění k importu", + "tools_import_warning_bullet_1": "Tímto se nahradí VŠECHNA stávající data", + "tools_import_warning_bullet_2": "Nezapomeňte si nejprve zálohovat aktuální data", + "tools_import_warning_bullet_3": "Import nelze vrátit zpět", + "tools_import_warning_bullet_4": "Zkontrolujte, zda je formát JSON správný", + "tools_import_success": "Data byla úspěšně importována", + "tools_import_error": "Import dat se nezdařil", + "tools_import_invalid_json": "Neplatný formát JSON", + "feature_overview_disabled_title": "Funkce Přehled je vypnuta", + "feature_overview_disabled_hint": "Chcete-li zobrazit přehledový panel, zapněte tuto funkci v Nastavení", + "feature_fuel_disabled_title": "Funkce Záznamy o palivu je vypnuta", + "feature_fuel_disabled_hint": "Chcete-li sledovat spotřebu paliva, zapněte tuto funkci v Nastavení", + "feature_maintenance_disabled_title": "Funkce Údržba je vypnuta", + "feature_maintenance_disabled_hint": "Chcete-li spravovat záznamy o údržbě, zapněte tuto funkci v Nastavení", + "feature_reminders_disabled_title": "Funkce Připomínky je vypnuta", + "feature_reminders_disabled_hint": "Chcete-li spravovat připomínky vozidla, zapněte tuto funkci v Nastavení", + "overview_chart_no_data": "Nejsou k dispozici žádná data", + "overview_chart_cost_label": "Náklady", + "overview_chart_cost_title": "Náklady v čase (v {currency})", + "overview_chart_mileage_label": "Spotřeba", + "overview_chart_mileage_title": "Spotřeba v čase (v {unit})", + "fuel_import_title": "Import záznamů o palivu", + "fuel_add_title": "Přidat záznam o palivu", + "col_date": "Datum", + "col_odometer": "Tachometr", + "col_distance_driven": "Ujetá vzdálenost", + "col_filled": "Natankováno", + "col_missed_last": "Vynechán poslední", + "col_fuel_amount": "Množství paliva", + "col_cost": "Náklady", + "col_mileage": "Spotřeba", + "col_notes": "Poznámky", + "col_attachment": "Příloha", + "col_no_end_date": "Bez data ukončení", + "fuel_volume_label_fuel": "Množství paliva", + "fuel_volume_label_energy": "Energie", + "fuel_empty_list": "Pro toto vozidlo nebyly nalezeny žádné záznamy o tankování.", + "form_date": "Datum", + "form_date_desc": "Datum natankování", + "form_odometer": "Tachometr", + "form_odometer_desc": "Aktuální stav tachometru vozidla", + "form_volume_fuel": "Objem paliva", + "form_volume_energy": "Spotřebovaná energie", + "form_rate": "Sazba", + "form_cost": "Náklady", + "form_cost_desc": "Náklady na natankování", + "form_cost_desc_ev": "Náklady na nabíjení", + "form_full_charge": "Plné nabití", + "form_full_tank": "Plná nádrž", + "form_full_charge_desc": "Je baterie plně nabitá?", + "form_full_tank_desc": "Je nádrž naplněna až po okraj?", + "form_missed_last": "Vynechán poslední", + "form_missed_last_desc": "Byl některý z posledních záznamů vynechán?", + "form_notes": "Poznámky", + "form_notes_placeholder": "Přidejte další podrobnosti, pokud nějaké jsou...", + "form_attachment": "Příloha", + "fuel_toast_saved": "Záznam o palivu byl úspěšně uložen...!!!", + "fuel_toast_updated": "Záznam o palivu byl úspěšně aktualizován...!!!", + "fuel_toast_error_prefix": "Chyba při ukládání: ", + "notifications_title": "Oznámení", + "notifications_new": "nové", + "notifications_syncing": "Synchronizace nejnovějších dat...", + "notifications_caught_up": "Máte vše aktuální.", + "notifications_section_reminders": "Připomínky", + "notifications_section_alerts": "Upozornění na soulad s předpisy", + "notifications_mark_done_title": "Označit připomínku jako splněnou", + "notifications_mark_done_aria": "Označit připomínku typu {type} jako splněnou", + "notifications_mark_all_read_title": "Označit vše jako přečtené", + "notifications_mark_all_read_aria": "Označit všechna oznámení jako přečtená", + "notifications_overdue_days": "{days} den{plural} po termínu", + "notifications_due_today": "Splatné dnes", + "notifications_due_tomorrow": "Splatné zítra", + "notifications_due_in_days": "Splatné za {days} dní", + "alerts_status_expired": "Platnost vypršela", + "alerts_status_expiring": "Platnost brzy vyprší", + "alerts_status_valid": "V pořádku", + "alerts_status_missing": "Chybí", + "notifications_expires": "Platnost vyprší", + "notifications_error_no_id": "Připomínku nelze aktualizovat bez ID.", + "notifications_error_update_failed": "Aktualizace připomínky se nezdařila.", + "notifications_success_marked_done": "Připomínka byla označena jako splněná.", + "notifications_severity_overdue": "Po termínu", + "notifications_severity_due_soon": "Brzy splatné", + "notifications_severity_upcoming": "Nadcházející", + "settings_custom_css_placeholder": "Sem přidejte vlastní CSS...", + "settings_features_intro": "Zapněte nebo vypněte funkce a přizpůsobte si aplikaci", + "feature_label_fuel": "Záznamy o palivu", + "feature_desc_fuel": "Sledujte a spravujte spotřebu paliva a historii tankování", + "feature_label_maintenance": "Údržba", + "feature_desc_maintenance": "Zaznamenávejte a plánujte úkony údržby vozidla", + "feature_label_reminders": "Připomínky", + "feature_desc_reminders": "Nastavte si připomínky důležitých událostí týkajících se vozidla a dostávejte je", + "feature_label_overview": "Přehled", + "feature_desc_overview": "Zobrazit přehledový panel s klíčovými ukazateli vozidla", + "settings_error_date_format_invalid": "Formát není platný", + "settings_error_timezone_invalid": "Neplatná hodnota časového pásma.", + "settings_error_currency_required": "Měna je povinná", + "maintenance_form_attachment_label": "Příloha", + "maintenance_form_attachment_desc": "Nahrajte účtenku nebo doklad o údržbě", + "maintenance_form_date_label": "Datum", + "maintenance_form_date_desc": "Datum údržby", + "maintenance_form_odometer_label": "Tachometr", + "maintenance_form_odometer_desc": "Aktuální stav tachometru vozidla", + "maintenance_form_service_center_label": "Servisní středisko", + "maintenance_form_service_center_desc": "Název servisního střediska", + "maintenance_form_cost_label": "Náklady", + "maintenance_form_cost_desc": "Náklady na údržbu", + "maintenance_form_notes_label": "Poznámky", + "maintenance_form_notes_desc": "Další podrobnosti", + "maintenance_form_notes_placeholder": "Přidejte další podrobnosti, pokud nějaké jsou...", + "maintenance_toast_saved": "Záznam o údržbě byl úspěšně uložen", + "maintenance_toast_updated": "Záznam o údržbě byl úspěšně aktualizován", + "maintenance_toast_error_prefix": "Chyba při ukládání: ", + "maintenance_form_error_fix": "Před odesláním prosím opravte chyby ve formuláři.", + "maintenance_list_empty": "Pro toto vozidlo nebyly nalezeny žádné záznamy o údržbě.", + "maintenance_col_service_center": "Servisní středisko", + "maintenance_menu_open": "Otevřít nabídku", + "maintenance_menu_edit": "Upravit", + "maintenance_menu_delete": "Smazat", + "maintenance_menu_sheet_title": "Aktualizovat záznam o údržbě", + "maintenance_tab_title": "Historie údržby", + "maintenance_add_action": "Přidat záznam o údržbě", + "maintenance_export_pdf": "Exportovat PDF", + "maintenance_delete_success": "Záznam o údržbě byl smazán.", + "maintenance_delete_error": "Při mazání záznamu o údržbě došlo k chybě.", + "reminder_form_due_date_label": "Datum splatnosti", + "reminder_form_due_date_desc": "Kdy se má tato připomínka spustit?", + "reminder_form_type_label": "Typ", + "reminder_form_type_desc": "Vyberte typ připomínky", + "reminder_form_schedule_label": "Plán připomínky", + "reminder_form_schedule_desc": "Kdy vás máme upozornit?", + "reminder_form_recurrence_type_label": "Opakování", + "reminder_form_recurrence_type_desc": "Má se tato připomínka opakovat?", + "reminder_form_recurrence_interval_label": "Opakovat každých", + "reminder_form_recurrence_interval_desc": "Frekvence opakování", + "reminder_form_recurrence_end_date_label": "Datum ukončení", + "reminder_form_recurrence_end_date_desc": "Kdy má opakování skončit? (volitelné)", + "reminder_form_note_label": "Poznámka", + "reminder_form_note_desc": "Přidejte další souvislosti", + "reminder_form_note_placeholder": "Popište, čemu je třeba věnovat pozornost", + "reminder_form_is_completed_label": "Označit jako splněné", + "reminder_toast_created": "Připomínka byla úspěšně vytvořena.", + "reminder_toast_updated": "Připomínka byla úspěšně aktualizována", + "reminder_toast_error_prefix": "Chyba při ukládání: ", + "reminder_list_empty": "Zatím žádné připomínky. Vytvořte si nějakou, abyste měli přehled o nadcházejících obnoveních.", + "reminder_list_select_vehicle": "Vyberte vozidlo pro zobrazení připomínek.", + "reminder_list_select_hint": "Vyberte výše vozidlo a načtěte jeho nadcházející připomínky.", + "reminder_col_due_date": "Datum splatnosti", + "reminder_col_reminder_schedule": "Plán připomínky", + "reminder_col_recurrence": "Opakování", + "reminder_col_note": "Poznámky", + "reminder_menu_toggle_done": "Označit jako {status}", + "reminder_menu_toggle_done_done": "Označit jako nevyřízené", + "reminder_menu_toggle_done_pending": "Označit jako splněné", + "reminder_menu_edit": "Upravit", + "reminder_menu_delete": "Smazat", + "reminder_menu_open": "Otevřít nabídku", + "reminder_menu_sheet_title": "Aktualizovat připomínku", + "reminder_add_action": "Přidat připomínku", + "reminder_delete_success": "Připomínka byla smazána.", + "reminder_delete_error": "Při mazání připomínky došlo k chybě.", + "reminder_status_completed": "Splněno", + "reminder_status_pending": "Nevyřízeno", + "reminder_status_overdue": "Po termínu", + "reminder_status_error": "Nelze aktualizovat stav připomínky.", + "reminder_toast_error_fallback": "Uložení připomínky se nezdařilo.", + "settings_sheet_title": "Nastavení", + "profile_menu_item": "Profil", + "profile_sheet_title": "Profil", + "profile_sheet_desc": "Aktualizujte své uživatelské jméno a heslo", + "profile_username": "Uživatelské jméno", + "profile_username_desc": "Vaše zobrazované jméno", + "profile_password_hint": "Chcete-li zachovat aktuální heslo, ponechte pole hesla prázdná", + "profile_current_password": "Současné heslo", + "profile_current_password_desc": "Vyžadováno pro změnu hesla", + "profile_new_password": "Nové heslo", + "profile_new_password_desc": "Minimálně 6 znaků", + "profile_confirm_password": "Potvrzení hesla", + "profile_confirm_password_desc": "Zadejte nové heslo znovu", + "profile_update_button": "Aktualizovat profil", + "tools_menu": "Nástroje", + "data_export_import_menu_item": "Export/import dat", + "data_export_import_sheet_title": "Export/import dat", + "data_export_import_sheet_desc": "Exportujte nebo importujte svou databázi s volitelným šifrováním", + "logout_menu_item": "Odhlásit se", + "custom_fields_label": "Vlastní pole", + "custom_fields_add_button": "Přidat pole", + "custom_fields_name_placeholder": "Název pole", + "custom_fields_value_placeholder": "Hodnota pole", + "custom_fields_remove_aria": "Odebrat pole", + "custom_fields_empty_message": "Nebyla přidána žádná vlastní pole. Klikněte na „Přidat pole“ a začněte.", + "vehicle_details_vin": "VIN", + "vehicle_details_not_specified": "Neuvedeno", + "vehicle_details_not_available": "Není k dispozici", + "vehicle_details_section_title": "Podrobnosti", + "vehicle_details_license_plate": "Registrační značka", + "vehicle_details_fuel_type": "Typ paliva", + "vehicle_details_odometer": "Tachometr", + "vehicle_details_not_recorded": "Nezaznamenáno", + "vehicle_details_color": "Barva", + "vehicle_details_year": "Rok", + "vehicle_type_car": "Osobní automobil", + "vehicle_type_motorcycle": "Motocykl", + "vehicle_type_scooter": "Skútr", + "vehicle_type_truck": "Nákladní automobil", + "vehicle_type_van": "Dodávka", + "vehicle_type_bus": "Autobus", + "vehicle_type_farm_vehicle": "Zemědělské vozidlo", + "vehicle_type_yacht": "Jachta", + "vehicle_type_rv": "Obytný vůz / karavan", + "vehicle_type_other": "Ostatní", + "fuel_type_diesel": "Nafta", + "fuel_type_petrol": "Benzín", + "fuel_type_electric": "Elektro", + "fuel_type_lpg": "LPG", + "fuel_type_cng": "CNG", + "fuel_type_ev": "Elektromobil (EV)", + "reminder_schedule_same_day": "V den splatnosti", + "reminder_schedule_one_day_before": "1 den předem", + "reminder_schedule_three_days_before": "3 dny předem", + "reminder_schedule_one_week_before": "1 týden předem", + "reminder_schedule_one_month_before": "1 měsíc předem", + "recurrence_type_none": "Bez opakování", + "recurrence_type_daily": "Denně", + "recurrence_type_weekly": "Týdně", + "recurrence_type_monthly": "Měsíčně", + "recurrence_type_yearly": "Ročně", + "recurrence_every": "každých", + "recurrence_renew_every": "Obnovovat každých", + "recurrence_interval_days": "dní", + "recurrence_interval_weeks": "týdnů", + "recurrence_interval_months": "měsíců", + "recurrence_interval_years": "let", + "recurrence_until": "Do", + "file_drop_existing_note": "Stávající příloha (kliknutím zobrazíte)", + "fuel_import_step_1_title": "Krok 1: Nahrání souboru CSV", + "fuel_import_step_1_desc": "Vyberte textový soubor s oddělovači obsahující data o tankování a zahajte import.", + "fuel_import_drop_placeholder": "Přetáhněte sem libovolný textový soubor s oddělovači nebo klikněte pro výběr", + "fuel_import_headers_checkbox": "První řádek obsahuje záhlaví", + "fuel_import_delimiter_title": "Oddělovač", + "fuel_import_delimiter_desc": "Vyberte znak oddělující jednotlivá pole", + "fuel_import_date_format_title": "Formát data", + "fuel_import_date_format_desc": "Zadejte formát použitý pro data v souboru CSV.", + "fuel_import_error_no_headers": "Nebyla zjištěna žádná záhlaví. Upravte soubor csv.helper.ts tak, aby záhlaví vracel.", + "fuel_import_step_2_title": "Krok 2: Namapování sloupců CSV", + "fuel_import_step_2_desc": "Namapujte sloupce ze souboru CSV na odpovídající pole záznamu o palivu. Povinná pole jsou označena *.", + "fuel_import_step_3_title": "Krok 3: Náhled a import", + "fuel_import_step_3_desc": "Zkontrolujte náhled dat, která budou importována.", + "fuel_import_no_preview": "Zatím žádná data náhledu. Implementujte parsování v souboru csv.helper.ts, aby se řádky naplnily.", + "fuel_import_success": "Bylo úspěšně importováno {count} záznamů o palivu.", + "fuel_import_failed_count": "Importováno {imported}, selhalo {failed}", + "fuel_import_error_generic": "Import záznamů o palivu se nezdařil.", + "fuel_import_vehicle_label": "Vozidlo:", + "fuel_import_delimiter_comma": "Čárka ( , )", + "fuel_import_delimiter_semicolon": "Středník ( ; )", + "fuel_import_delimiter_tab": "Tabulátor ( \\t )", + "fuel_import_delimiter_pipe": "Svislítko ( | )", + "fuel_import_delimiter_custom": "Vlastní", + "fuel_import_date_error": "Některé řádky obsahují neplatná data pro formát „{format}“", + "fuel_import_date_format_placeholder": "např. DD/MM/RRRR", + "fuel_import_date_invalid": "Neplatné datum", + "fuel_import_no_vehicle": "Nebylo vybráno žádné vozidlo", + "fuel_import_col_date_hint": "Datum natankování", + "fuel_import_col_odometer_hint": "Stav tachometru v době natankování", + "fuel_import_col_fuel_hint": "Natankovaný objem nebo energie", + "fuel_import_col_cost_hint": "Celkové náklady na tento záznam", + "fuel_import_col_filled_hint": "Jedná se o plnou nádrž/nabití?", + "fuel_import_col_missed_hint": "Byl předchozí záznam vynechán?", + "fuel_import_col_notes_hint": "Jakékoli další poznámky", + "autocomplete_placeholder": "Napište nebo vyberte...", + "autocomplete_loading": "Načítání návrhů...", + "autocomplete_no_results": "Nebyly nalezeny žádné návrhy. Můžete zadat novou hodnotu.", + "input_date_placeholder": "Vyberte datum", + "loading_default_message": "Načítání...", + "dropzone_placeholder_image": "Kliknutím nebo přetažením nahrajte obrázek", + "dropzone_placeholder_attachment": "Přetáhněte sem soubor nebo klikněte pro výběr", + "dropzone_placeholder_default": "Kliknutím nebo přetažením nahrajte soubory", + "dropzone_error_single_file": "Nahrajte prosím pouze jeden soubor.", + "dropzone_error_file_size": "Velikost souboru přesahuje maximální limit {size}.", + "dropzone_unknown_file": "Neznámý soubor", + "dropzone_uploading": "Nahrávání...", + "dropzone_supports": "Podporováno: {types}", + "dropzone_max_size": "Max. velikost: {size}", + "dropzone_error_file_type": "Tento typ souboru není povolen", + "dropzone_hint_accept_limit": "{types} až do {size}", + "vehicle_details_color_aria": "Barva", + "vehicle_details_close_aria": "Zavřít", + "attachment_link_view_title": "Zobrazit přílohu", + "file_preview_not_available": "Náhled není k dispozici", + "file_preview_download_hint": "Tento typ souboru nelze zobrazit přímo v náhledu. Stáhněte si jej pro zobrazení.", + "file_preview_download_button": "Stáhnout soubor", + "file_preview_aria_download": "Stáhnout", + "file_preview_aria_close": "Zavřít", + "theme_toggle_label": "Přepnout motiv", + "fuel_log_edit": "Upravit", + "fuel_log_delete": "Smazat", + "fuel_log_menu_open": "Otevřít nabídku", + "fuel_log_delete_success": "Záznam o palivu byl smazán", + "fuel_log_menu_sheet_title": "Aktualizovat záznam o palivu", + "fuel_log_delete_error": "Při mazání záznamu o palivu došlo k chybě.", + "color_picker_label": "Vyberte barvu", + "reminder_type_maintenance": "Údržba", + "reminder_type_insurance": "Obnovení pojištění", + "reminder_type_pollution": "Emise / STK emisní", + "reminder_type_registration": "Registrace / daň", + "reminder_type_inspection": "Technická kontrola", + "reminder_type_custom": "Vlastní", + "alert_status_expired_ago": "{label}: platnost vypršela před {days} dny", + "alert_status_expires_in": "{label}: platnost vyprší za {days} dní", + "alert_status_valid_for": "{label}: platnost ještě {days} dní", + "alert_record_not_found": "Záznam {label} nebyl nalezen. Přidejte podrobnosti, abyste splňovali soulad s předpisy.", + "settings_error_format_not_valid": "Formát není platný", + "common_kilogram_unit": "Kilogram (kg)", + "common_pound_unit": "Libra (lb)", + "settings_section_fuel_types": "Typy paliva", + "settings_section_fuel_types_desc": "Vyberte jednotku měření pro každé palivo.", + "fuel_type_petrol_diesel": "Benzín/nafta", + "theme_slate": "Břidlicová", + "theme_stone": "Kamenná", + "theme_red": "Červená", + "theme_rose": "Růžová", + "theme_blue": "Modrá", + "theme_green": "Zelená", + "theme_purple": "Fialová", + "theme_orange": "Oranžová", + "theme_yellow": "Žlutá", + "theme_teal": "Petrolejová", + "theme_indigo": "Indigová", + "theme_pink": "Růžová (pink)", + "dark_variant_default": "Výchozí", + "dark_variant_dim": "Ztlumený", + "dark_variant_oled": "OLED (skutečně černá)", + "settings_tab_notifications": "Oznámení", + "settings_personalization_desc": "Přizpůsobte si aplikaci pomocí motivů, jazyků a formátů.", + "settings_section_general": "Obecné", + "settings_section_general_desc": "Přizpůsobte vzhled, lokalizaci a formáty zobrazení", + "settings_units_desc": "Nastavte měrné jednotky pro vzdálenost, objem a typy paliva.", + "settings_section_units": "Jednotky", + "settings_section_units_desc": "Vyberte preferované jednotky pro vzdálenost, spotřebu a typy paliva", + "settings_section_feature_flags": "Přepínače funkcí", + "settings_section_feature_flags_desc": "Zapněte nebo vypněte hlavní moduly aplikace", + "settings_notifications_desc": "Nastavte odběry poskytovatelů a denní čas zpracování pro plánované doručování.", + "settings_localization_desc": "Nastavte jazyk a regionální předvolby.", + "settings_advanced_desc": "Doladíte rozhraní pomocí vlastních stylů.", + "settings_nav_desc_personalization": "Motiv, zobrazení a styl", + "settings_nav_desc_localization": "Jazyk a regionální formáty", + "settings_nav_desc_advanced": "Vlastní CSS a pokročilé možnosti", + "settings_nav_desc_notifications": "Upozornění a připomínky", + "settings_nav_desc_units": "Měrné jednotky", + "settings_nav_desc_features": "Předvolby funkcí", + "settings_reset_defaults": "Obnovit výchozí nastavení", + "settings_cancel_button": "Zrušit", + "settings_secure_note": "Vaše předvolby jsou bezpečně uloženy a použity na všech vašich zařízeních.", + "settings_error_fix_errors": "Opravte prosím následující chyby:", + "settings_fuel_types_label": "Typy paliva", + "settings_fuel_types_desc": "Vyberte jednotku měření pro každé palivo.", + "fuel_type_label_petrol_diesel": "Benzín/nafta", + "fuel_type_label_lpg": "LPG", + "fuel_type_label_cng": "CNG", + "notif_scheduled_delivery": "Plánované doručování", + "notif_scheduled_delivery_desc": "Oznámení v aplikaci zůstávají v reálném čase. Tento plán řídí pouze doručování prostřednictvím poskytovatele.", + "notif_processing_schedule": "Plán zpracování", + "notif_processing_schedule_desc": "Spouštět doručování oznámení poskytovatelem podle plánu.", + "notif_send_now": "Odeslat nyní", + "notif_providers": "Poskytovatelé", + "notif_providers_desc": "Vytvářejte, upravujte, testujte a zapínejte poskytovatele oznámení.", + "notif_providers_channels_info": "Každý poskytovatel se může přihlásit k odběru kanálů Připomínky, Upozornění a Informace.", + "notif_add_provider": "Přidat poskytovatele", + "notif_empty_title": "Zatím nejsou nastaveni žádní poskytovatelé oznámení", + "notif_empty_desc": "Přidejte poskytovatele, abyste dostávali plánovaná oznámení typu Připomínka, Upozornění nebo Informace.", + "notif_load_failed": "Načtení poskytovatelů oznámení se nezdařilo", + "notif_select_provider_type": "Vyberte prosím typ poskytovatele", + "notif_select_channel": "Vyberte alespoň jeden kanál oznámení", + "notif_provider_updated": "Poskytovatel byl úspěšně aktualizován", + "notif_provider_created": "Poskytovatel byl úspěšně vytvořen", + "notif_provider_deleted": "Poskytovatel byl úspěšně smazán", + "notif_provider_delete_failed": "Smazání poskytovatele se nezdařilo", + "notif_channel_reminder": "Připomínka", + "notif_channel_reminder_desc": "Termíny splatnosti a oznámení typu připomínka", + "notif_channel_alert": "Upozornění", + "notif_channel_alert_desc": "Naléhavé nebo brzy vypršující položky vyžadující pozornost", + "notif_channel_information": "Informace", + "notif_channel_information_desc": "Obecné informační aktualizace", + "notif_provider_enabled": "Zapnuto", + "notif_provider_test": "Otestovat poskytovatele", + "notif_provider_edit": "Upravit poskytovatele", + "notif_provider_delete": "Smazat poskytovatele", + "notif_dialog_add_title": "Přidat poskytovatele oznámení", + "notif_dialog_edit_title": "Upravit poskytovatele oznámení", + "notif_dialog_desc": "Vyberte typ poskytovatele, nakonfigurujte jeho cíl a přihlaste jej k odběru pomocí přepínačů kanálů. Poskytovatelé jsou ve výchozím nastavení zapnuti a lze je vypnout na kartách poskytovatelů.", + "notif_provider_name": "Název poskytovatele", + "notif_provider_name_placeholder": "Denní souhrn e-mailem", + "notif_provider_type": "Typ poskytovatele", + "notif_provider_type_email": "E-mail (SMTP)", + "notif_provider_type_webhook": "Webhook", + "notif_provider_type_gotify": "Gotify", + "notif_provider_type_select": "Vyberte typ poskytovatele", + "notif_dialog_cancel": "Zrušit", + "notif_dialog_create": "Vytvořit poskytovatele", + "notif_dialog_update": "Aktualizovat poskytovatele", + "notif_channel_subscriptions": "Odběry kanálů", + "notif_channel_subscriptions_desc": "Vyberte, které kanály oznámení má tento poskytovatel přijímat.", + "notif_test_title": "Otestovat poskytovatele", + "notif_test_success": "Testovací oznámení bylo úspěšně odesláno", + "notif_test_email_label": "Testovací e-mail", + "notif_test_email_placeholder": "prijemce@priklad.cz", + "notif_test_email_desc": "Volitelný náhradní příjemce pro tuto testovací zprávu.", + "notif_test_message_label": "Testovací zpráva", + "notif_test_message_placeholder": "Toto je testovací oznámení z aplikace Tracktor", + "notif_test_send": "Odeslat test", + "notif_cron_presets": "Předvolby", + "notif_cron_every_minute": "Každou minutu", + "notif_cron_every_5_min": "Každých 5 minut", + "notif_cron_every_15_min": "Každých 15 minut", + "notif_cron_every_30_min": "Každých 30 minut", + "notif_cron_every_hour": "Každou hodinu", + "notif_cron_every_2_hours": "Každé 2 hodiny", + "notif_cron_every_6_hours": "Každých 6 hodin", + "notif_cron_every_12_hours": "Každých 12 hodin", + "notif_cron_daily_midnight": "Denně o půlnoci", + "notif_cron_daily_2am": "Denně ve 2:00", + "notif_cron_daily_8am": "Denně v 8:00", + "notif_cron_daily_noon": "Denně v poledne", + "notif_cron_weekly_monday": "Týdně (pondělí)", + "notif_cron_monthly_1st": "Měsíčně (1. den)", + "notif_cron_expression_required": "Výraz je povinný", + "notif_cron_must_have_5_parts": "Musí mít 5 částí", + "notif_cron_invalid_chars": "Neplatné znaky", + "notif_cron_valid": "Platný výraz", + "notif_cron_invalid": "Neplatný výraz", + "notif_cron_custom": "Vlastní plán", + "notif_email_smtp_settings": "Nastavení serveru SMTP", + "notif_email_host": "Host", + "notif_email_port": "Port", + "notif_email_use_ssl": "Použít SSL/TLS", + "notif_email_use_ssl_desc": "Povolit zabezpečené připojení", + "notif_email_auth": "Ověřování", + "notif_email_username": "Uživatelské jméno / e-mail", + "notif_email_password": "Heslo", + "notif_email_password_keep": "Heslo (ponechte prázdné pro zachování stávajícího)", + "notif_email_sender_info": "Informace o odesílateli/příjemci", + "notif_email_from": "E-mail odesílatele", + "notif_email_from_name": "Jméno odesílatele (volitelné)", + "notif_email_from_name_placeholder": "Oznámení Tracktor", + "notif_email_recipient": "E-mail příjemce", + "notif_email_recipient_desc": "E-mailová adresa příjemce", + "notif_webhook_config": "Konfigurace webhooku", + "notif_webhook_url": "URL webhooku", + "notif_webhook_method": "Metoda HTTP", + "notif_webhook_headers": "Vlastní hlavičky (JSON)", + "notif_webhook_headers_desc": "Další hlavičky, které se mají zahrnout do požadavku webhooku", + "notif_webhook_auth_type": "Typ ověření", + "notif_webhook_auth_none": "Žádné", + "notif_webhook_auth_basic": "Základní ověření", + "notif_webhook_auth_bearer": "Token Bearer", + "notif_webhook_auth_apikey": "Klíč API", + "notif_webhook_username": "Uživatelské jméno", + "notif_webhook_apikey_header": "Název hlavičky klíče API", + "notif_gotify_config": "Konfigurace serveru Gotify", + "notif_gotify_url": "URL serveru", + "notif_gotify_url_desc": "URL adresa vaší instance serveru Gotify", + "notif_gotify_token": "Token aplikace", + "notif_gotify_token_keep": "Token aplikace (ponechte prázdné pro zachování stávajícího)", + "notif_gotify_token_desc": "Token aplikace z vaší aplikace Gotify (nikoli token klienta)", + "notif_gotify_priority": "Priorita (0–10)", + "notif_gotify_priority_desc": "Úroveň priority zprávy. Vyšší priorita = výraznější oznámení", + "notif_cleared_success_one": "Vymazáno 1 přečtené oznámení", + "notif_cleared_success_other": "Vymazáno {count} přečtených oznámení", + "notif_cleared_partial": "Vymazáno {success}, selhalo {failed}", + "notif_clear_failed": "Vymazání přečtených oznámení se nezdařilo", + "notif_all_marked_read": "Všechna oznámení byla označena jako přečtená", + "notif_mark_read_failed": "Označení oznámení jako přečtených se nezdařilo", + "notif_button_mark_all_read": "Označit vše jako přečtené", + "notif_button_clear_read": "Vymazat přečtené", + "notif_button_clear_all_read_title": "Vymazat všechna přečtená oznámení", + "notif_status_read": "Přečteno", + "notif_status_unread": "Nepřečteno", + "notif_due_prefix": "Splatnost: {date}", + "notif_save_provider_failed": "Uložení poskytovatele se nezdařilo", + "notif_update_provider_failed": "Aktualizace poskytovatele se nezdařila", + "notif_send_all_failed": "Odeslání oznámení se nezdařilo", + "notif_send_all_success": "Odesláno {notifCount} oznámení {successCount}/{providerCount} zapnutým poskytovatelům", + "notif_confirm_delete": "Opravdu chcete smazat „{name}“?", + "notif_webhook_bearer_keep": "Token Bearer (ponechte prázdné pro zachování stávajícího)", + "notif_webhook_apikey_keep": "Klíč API (ponechte prázdné pro zachování stávajícího)", + "notif_test_failed": "Odeslání testovacího oznámení se nezdařilo", + "notif_test_send_desc": "Odešlete testovací oznámení pomocí {name}", + "notif_cron_every_n_minutes": "Každých {n} minut", + "notif_cron_hourly_at_minute": "Každou hodinu v minutě {n}", + "notif_cron_daily_at": "Denně v {time}", + "vehicle_hub_back_to_vehicles": "Zpět na vozidla", + "vehicle_hub_plate_copied": "Registrační značka zkopírována", + "vehicle_hub_insurance_valid_till": "Pojištění platné do", + "vehicle_hub_vehicle_type": "Typ vozidla", + "vehicle_hub_activity_title": "Nedávná aktivita", + "vehicle_hub_activity_empty": "Žádná nedávná aktivita", + "vehicle_hub_activity_fuel_added": "Přidáno palivo", + "vehicle_hub_activity_maintenance": "Údržba", + "vehicle_hub_records_count": "{count} záznamů", + "vehicle_hub_valid_till": "Platné do {date}", + "vehicle_hub_upcoming_count": "{count} nadcházejících", + "vehicle_hub_view_details": "Zobrazit podrobnosti", + "vehicle_hub_manage_title": "Spravovat vozidlo", + "vehicle_hub_stat_odometer": "Tachometr", + "vehicle_hub_stat_mileage": "Celková spotřeba", + "vehicle_hub_stat_fuel_logs": "Záznamy o palivu", + "vehicle_hub_stat_maintenance_logs": "Záznamy o údržbě", + "col_vehicle": "Vozidlo", + "overview_chart_pick_vehicle": "Vyberte vozidlo pro zobrazení tohoto grafu", + "fuel_page_title": "Sledování paliva", + "fuel_page_description": "Sledujte spotřebu paliva a náklady", + "fuel_stat_used": "Spotřebováno paliva", + "fuel_stat_spent": "Celkem utraceno", + "fuel_stat_avg_mileage": "Průměrná spotřeba", + "fuel_stat_entries": "Celkem záznamů", + "donut_chart_no_data": "Nejsou k dispozici žádná data", + "maintenance_page_title": "Údržba", + "maintenance_page_description": "Sledujte historii servisu a nadcházející údržbu", + "maintenance_stat_last_service": "Poslední servis", + "maintenance_stat_next_service": "Příští servis", + "maintenance_stat_odometer": "Tachometr", + "maintenance_stat_total_services": "Celkem servisů", + "maintenance_stat_total_spent": "Celkem utraceno", + "maintenance_stat_due_soon": "Brzy splatné", + "maintenance_tab_overview": "Přehled", + "maintenance_tab_history": "Historie servisu", + "maintenance_timeline_title": "Časová osa údržby", + "maintenance_upcoming_empty": "Nic naplánováno", + "maintenance_history_empty": "Zatím žádná historie servisu", + "maintenance_next_service_fallback": "Běžný servis údržby", + "maintenance_also_upcoming": "Dále vás čeká", + "reminder_page_title": "Připomínky", + "reminder_page_description": "Mějte přehled o nadcházejícím servisu, pojištění a termínech emisní kontroly", + "reminder_filter_all": "Vše", + "reminder_filter_all_types": "Všechny typy", + "reminder_filter_service": "Servis", + "reminder_filter_puc": "Emisní kontrola", + "reminder_filter_insurance": "Pojištění", + "reminder_filter_others": "Ostatní", + "reminder_section_upcoming": "Nadcházející", + "reminder_section_completed": "Dokončené", + "reminder_section_marked_done": "Označeno jako splněné", + "reminder_empty_title": "Zatím nejsou nastaveny žádné připomínky", + "reminder_stat_overdue": "Po termínu", + "reminder_stat_due_soon": "Brzy splatné", + "reminder_stat_upcoming": "Nadcházející", + "reminder_stat_completed": "Dokončené", + "reminder_calendar_title": "Zobrazení kalendáře", + "reminder_quick_actions_title": "Rychlé akce", + "reminder_manage_all_action": "Spravovat všechny připomínky", + "reminder_list_title": "Připomínky", + "reminder_list_title_for_date": "Připomínky ke dni {date}", + "reminder_clear_filter": "Vymazat", + "reminder_calendar_empty_day": "K tomuto datu nejsou žádné připomínky.", + "reports_page_title": "Přehledy", + "reports_page_description": "Náklady a exporty pro váš vozový park", + "reports_section_costs": "Náklady", + "reports_section_details": "Podrobný přehled", + "reports_section_exports": "Exporty", + "reports_no_expense_data": "Nejsou k dispozici žádná data o výdajích", + "reports_stat_fuel_costs": "Náklady na palivo", + "reports_stat_maintenance_costs": "Náklady na údržbu", + "reports_chart_breakdown_title": "Rozdělení výdajů", + "reports_chart_trend_title": "Měsíční trend výdajů", + "reports_chart_trend_unavailable": "Měsíční trend je k dispozici pouze pro všechna vozidla dohromady", + "reports_export_maintenance_title": "Historie údržby", + "reports_export_maintenance_description": "Exportovat historii údržby jako PDF", + "reports_export_maintenance_hint": "Vyberte vozidlo pro export jeho historie údržby", + "reports_export_data_title": "Úplný export dat", + "reports_export_data_description": "Exportovat všechna data vozového parku jako JSON", + "reports_type_fuel": "Palivo", + "reports_type_maintenance": "Údržba", + "reports_type_compliance": "Soulad s předpisy", + "nav_compliance": "Soulad s předpisy", + "vehicle_action_add_compliance": "Přidat doklad o souladu s předpisy", + "feature_compliance_disabled_title": "Funkce Soulad s předpisy je vypnuta", + "feature_compliance_disabled_hint": "Chcete-li spravovat pojištění, emise, technickou způsobilost a registraci, zapněte tuto funkci v Nastavení", + "feature_label_compliance": "Soulad s předpisy", + "feature_desc_compliance": "Spravujte pojištění, emise, technickou způsobilost a registrační záznamy", + "compliance_type_insurance": "Pojištění", + "compliance_type_emissions": "Emise / znečištění", + "compliance_type_roadworthiness": "Technická způsobilost / STK", + "compliance_type_registration": "Registrace / silniční daň", + "compliance_type_other": "Ostatní", + "compliance_field_policy_number": "Číslo pojistky", + "compliance_field_certificate_number": "Číslo osvědčení", + "compliance_field_registration_number": "Registrační číslo", + "compliance_field_document_number": "Číslo dokladu", + "compliance_field_provider": "Pojišťovna", + "compliance_field_testing_center": "Zkušební středisko", + "compliance_field_inspection_center": "Kontrolní stanice", + "compliance_field_issuing_authority": "Vydávající orgán", + "compliance_recurrence_type_fixed": "Pevné datum ukončení", + "compliance_recurrence_type_yearly": "Obnovuje se ročně", + "compliance_recurrence_type_monthly": "Obnovuje se měsíčně", + "compliance_recurrence_type_no_end": "Bez data ukončení", + "compliance_form_type_label": "Typ dokladu", + "compliance_form_type_desc": "O jaký typ dokladu o souladu s předpisy se jedná", + "compliance_form_other_label_label": "Název typu", + "compliance_form_other_label_desc": "Pojmenujte tento typ dokladu, např. „STK (Česká republika)“ nebo „TÜV (Německo)“", + "compliance_form_attachment_label": "Dokument", + "compliance_form_attachment_desc": "Nahrajte dokument", + "compliance_form_issuer_desc": "Poskytovatel, zkušební středisko nebo orgán, který tento doklad vydal", + "compliance_form_document_number_desc": "Číslo uvedené na dokladu", + "compliance_form_start_date_label": "Datum zahájení", + "compliance_form_start_date_desc": "Datum, od kterého tento doklad platí", + "compliance_form_recurrence_type_label": "Jak se má obnovovat?", + "compliance_form_recurrence_type_desc": "Typ obnovení tohoto dokladu", + "compliance_form_recurrence_interval_desc": "Jak často se doklad obnovuje", + "compliance_form_end_date_label": "Datum ukončení", + "compliance_form_end_date_desc": "Datum, kdy platnost dokladu vyprší", + "compliance_form_cost_label": "Náklady", + "compliance_form_cost_desc": "Náklady na tento doklad, pokud nějaké jsou", + "compliance_form_notes_label": "Doplňující poznámky", + "compliance_form_notes_desc": "Jakékoli další informace", + "compliance_form_notes_placeholder": "Přidejte další podrobnosti...", + "compliance_form_error_fix": "Před odesláním prosím opravte chyby ve formuláři.", + "compliance_toast_saved": "Doklad o souladu s předpisy byl úspěšně uložen", + "compliance_toast_updated": "Doklad o souladu s předpisy byl úspěšně aktualizován", + "compliance_toast_error_prefix": "Chyba při ukládání: ", + "compliance_list_empty": "Pro toto vozidlo nebyly nalezeny žádné doklady o souladu s předpisy.", + "compliance_col_cost": "Náklady", + "compliance_col_start_date": "Datum zahájení", + "compliance_col_end_date": "Datum ukončení", + "compliance_col_next_due": "Příští splatnost", + "compliance_col_recurrence": "Opakování", + "compliance_col_notes": "Poznámky", + "compliance_col_view_document": "Zobrazit dokument", + "compliance_menu_open": "Otevřít nabídku", + "compliance_menu_edit": "Upravit", + "compliance_menu_delete": "Smazat", + "compliance_menu_sheet_title": "Aktualizovat doklad o souladu s předpisy", + "compliance_delete_success": "Doklad o souladu s předpisy byl smazán.", + "compliance_delete_error": "Při mazání dokladu o souladu s předpisy došlo k chybě.", + "compliance_page_title": "Soulad s předpisy", + "compliance_page_description": "Sledujte pojištění, emise, technickou způsobilost a registraci", + "compliance_add_action": "Přidat doklad o souladu s předpisy", + "compliance_filter_all_types": "Všechny typy", + "compliance_filter_all": "Vše", + "compliance_filter_valid": "Platné", + "compliance_filter_expiring_soon": "Brzy vyprší", + "compliance_filter_expired": "Platnost vypršela", + "compliance_stat_total": "Celkem", + "compliance_stat_valid": "Platné", + "compliance_stat_expiring_soon": "Brzy vyprší", + "compliance_stat_expired": "Platnost vypršela", + "compliance_cta_heading": "Udržujte svá vozidla v souladu s předpisy", + "compliance_cta_description": "Udržujte doklady o souladu s předpisy aktuální, abyste se vyhnuli pokutám a zůstali v souladu se zákonem.", + "vehicle_hub_other_compliance_valid_till": "Ostatní doklady platné do", + "vehicle_hub_activity_compliance_updated": "Doklad o souladu s předpisy aktualizován", + "vehicle_hub_activity_document_prefix": "Doklad č.", + "reports_stat_compliance_costs": "Náklady na soulad s předpisy", + "compliance_col_document": "Doklad", + "compliance_col_status": "Stav", + "compliance_col_days_left": "Zbývá dní", + "vehicles_title": "Vozidla", + "vehicles_description": "Spravujte svůj vozový park", + "no_data_yet": "Zatím žádná data", + "dashboard_title": "Nástěnka", + "dashboard_reset_to_default": "Obnovit výchozí nastavení", + "dashboard_reset_confirm_title": "Obnovit výchozí nastavení nástěnky?", + "dashboard_reset_confirm_message": "Tímto se obnoví výchozí sada widgetů a rozvržení a nahradí se vaše aktuální přizpůsobení.", + "dashboard_reset_confirm_reset": "Obnovit", + "dashboard_add_widget": "Přidat Widget", + "dashboard_good_morning": "Dobré ráno", + "dashboard_good_afternoon": "Dobré odpoledne", + "dashboard_good_evening": "Dobrý večer", + "dashboard_cta_heading": "Získejte podrobné informace", + "dashboard_cta_description": "Zobrazte si komplexní přehledy a analýzy vašeho vozového parku", + "dashboard_cta_button_label": "Zobrazit přehledy", + "all_widgets_used": "Všechny dostupné widgety jsou již na nástěnce.", + "widget_total_vehicles": "Celkem vozidel", + "widget_total_vehicles_description": "Počet vozidel ve vaší garáži", + "widget_total_distance": "Celková vzdálenost", + "widget_total_distance_description": "Ujetá vzdálenost celého vozového parku", + "widget_total_fuel_used": "Celkem spotřebováno paliva", + "widget_total_fuel_used_description": "Spotřeba paliva celého vozového parku", + "widget_total_expenses": "Celkové výdaje", + "widget_total_expenses_description": "Výdaje na palivo, údržbu a pojištění dohromady", + "widget_cost_per_distance": "Náklady / vzdálenost", + "widget_cost_per_distance_description": "Celkové provozní náklady na jednotku vzdálenosti", + "widget_expense_breakdown": "Výdaje podle kategorie", + "widget_expense_breakdown_description": "Výdaje na palivo vs. údržbu vs. soulad s předpisy", + "widget_monthly_expense_trend": "Měsíční trend výdajů", + "widget_monthly_expense_trend_description": "Výdaje podle kategorie za posledních 12 měsíců", + "widget_cost_by_vehicle": "Náklady podle vozidla", + "widget_cost_by_vehicle_description": "Která vozidla jsou nejnákladnější na provoz", + "widget_fleet_fuel_trend": "Trend spotřeby paliva vozového parku", + "widget_fleet_fuel_trend_description": "Denní spotřeba paliva v rámci celého vozového parku", + "widget_fuel_consumption_trend": "Trend spotřeby paliva", + "widget_fuel_consumption_trend_description": "Spotřeba paliva v čase, jedna křivka na vozidlo", + "widget_mileage_overview": "Přehled nájezdu vozidla", + "widget_mileage_overview_description": "Nájezd vozidla v čase, jedna křivka na vozidlo", + "widget_efficiency_leaderboard": "Žebříček úspornosti", + "widget_efficiency_leaderboard_description": "Vozidla seřazená podle spotřeby paliva", + "widget_compliance_status": "Stav ostatních dokladů o souladu s předpisy", + "widget_compliance_status_description": "Stav emisí, technické způsobilosti a registrace napříč vozovým parkem", + "widget_insurance_status": "Stav pojištění", + "widget_insurance_status_description": "Stav pojistných smluv napříč vozovým parkem", + "widget_vehicle_health": "Stav vozidel", + "widget_vehicle_health_description": "Celkové rozdělení na dobrý stav / vyžaduje pozornost / vyžaduje zásah", + "widget_upcoming_reminders": "Nadcházející připomínky", + "widget_upcoming_reminders_description": "Připomínky, jejichž termín se brzy blíží", + "widget_no_upcoming_reminders": "Žádné nadcházející připomínky", + "widget_vehicles_quick_list": "Moje vozidla", + "widget_vehicles_quick_list_description": "Rychlý přístup k vašim vozidlům", + "widget_no_vehicles_yet": "Zatím žádná vozidla", + "widget_recent_activity": "Nedávná aktivita", + "widget_recent_activity_description": "Nejnovější záznamy o palivu a údržbě napříč vozovým parkem", + "widget_activity_calendar": "Kalendář aktivit", + "widget_activity_calendar_description": "Nadcházející připomínky a minulá aktivita v oblasti paliva a údržby podle data", + "widget_calendar_no_activity_or_reminders": "Žádná aktivita nebo připomínka v tento den." +} diff --git a/i18n/messages/en.json b/i18n/messages/en.json index fb0349ca..888c28ef 100644 --- a/i18n/messages/en.json +++ b/i18n/messages/en.json @@ -98,10 +98,15 @@ "common_date_from": "From", "common_date_to": "To", "common_export_csv": "Export CSV", + "nav_garage": "Garage", + "nav_dashboard": "Dashboard", "nav_overview": "Overview", "nav_fuel_logs": "Fuel Logs", + "nav_logs": "Logs", + "nav_insights": "Insights", "nav_maintenance": "Maintenance", "nav_reminders": "Reminders", + "nav_reports": "Reports", "tools_export_data": "Export Data", "tools_import_data": "Import Data", "vehicle_form_make_label": "Make", @@ -672,6 +677,7 @@ "fuel_stat_spent": "Total Spent", "fuel_stat_avg_mileage": "Avg Mileage", "fuel_stat_entries": "Total Entries", + "donut_chart_no_data": "No data available", "maintenance_page_title": "Maintenance", "maintenance_page_description": "Track service history and upcoming maintenance", "maintenance_stat_last_service": "Last Service", @@ -715,6 +721,7 @@ "reports_section_costs": "Costs", "reports_section_details": "Detailed Report", "reports_section_exports": "Exports", + "reports_no_expense_data": "No expense data yet", "reports_stat_fuel_costs": "Fuel Costs", "reports_stat_maintenance_costs": "Maintenance Costs", "reports_chart_breakdown_title": "Expense Breakdown", @@ -809,5 +816,62 @@ "reports_stat_compliance_costs": "Compliance Costs", "compliance_col_document": "Compliance", "compliance_col_status": "Status", - "compliance_col_days_left": "Days Left" + "compliance_col_days_left": "Days Left", + "vehicles_title": "Vehicles", + "vehicles_description": "Manage your fleet", + "no_data_yet": "No data yet", + "dashboard_title": "Dashboard", + "dashboard_reset_to_default": "Reset to Default", + "dashboard_reset_confirm_title": "Reset dashboard?", + "dashboard_reset_confirm_message": "This restores the default set of widgets and layout, replacing your current customization.", + "dashboard_reset_confirm_reset": "Reset", + "dashboard_add_widget": "Add Widget", + "dashboard_good_morning": "Good morning", + "dashboard_good_afternoon": "Good afternoon", + "dashboard_good_evening": "Good evening", + "dashboard_cta_heading": "Get detailed insights", + "dashboard_cta_description": "View comprehensive reports and analytics for your fleet", + "dashboard_cta_button_label": "View Reports", + "all_widgets_used": "All available widgets are already on your dashboard.", + "widget_total_vehicles": "Total Vehicles", + "widget_total_vehicles_description": "Number of vehicles in your garage", + "widget_total_distance": "Total Distance", + "widget_total_distance_description": "Distance driven across the whole fleet", + "widget_total_fuel_used": "Total Fuel Used", + "widget_total_fuel_used_description": "Fuel consumed across the whole fleet", + "widget_total_expenses": "Total Expenses", + "widget_total_expenses_description": "Fuel, maintenance and insurance spend combined", + "widget_cost_per_distance": "Cost / Distance", + "widget_cost_per_distance_description": "Overall running cost per unit distance", + "widget_expense_breakdown": "Expenses by Category", + "widget_expense_breakdown_description": "Fuel vs. maintenance vs. compliance spend", + "widget_monthly_expense_trend": "Monthly Expense Trend", + "widget_monthly_expense_trend_description": "Last 12 months of spend by category", + "widget_cost_by_vehicle": "Cost by Vehicle", + "widget_cost_by_vehicle_description": "Which vehicles cost the most to run", + "widget_fleet_fuel_trend": "Fleet Fuel Trend", + "widget_fleet_fuel_trend_description": "Daily fuel usage across the fleet", + "widget_fuel_consumption_trend": "Fuel Consumption Trend", + "widget_fuel_consumption_trend_description": "Fuel usage over time, one line per vehicle", + "widget_mileage_overview": "Mileage Overview", + "widget_mileage_overview_description": "Mileage over time, one line per vehicle", + "widget_efficiency_leaderboard": "Efficiency Leaderboard", + "widget_efficiency_leaderboard_description": "Vehicles ranked by fuel efficiency", + "widget_compliance_status": "Other Compliance Status", + "widget_compliance_status_description": "Emissions, roadworthiness & registration status across the fleet", + "widget_insurance_status": "Insurance Status", + "widget_insurance_status_description": "Insurance policy status across the fleet", + "widget_vehicle_health": "Vehicle Health", + "widget_vehicle_health_description": "Overall good/attention/needs-action breakdown", + "widget_upcoming_reminders": "Upcoming Reminders", + "widget_upcoming_reminders_description": "Reminders coming due soon", + "widget_no_upcoming_reminders": "No upcoming reminders", + "widget_vehicles_quick_list": "My Vehicles", + "widget_vehicles_quick_list_description": "Quick access to your vehicles", + "widget_no_vehicles_yet": "No vehicles yet", + "widget_recent_activity": "Recent Activity", + "widget_recent_activity_description": "Latest fuel and maintenance logs across the fleet", + "widget_activity_calendar": "Activity Calendar", + "widget_activity_calendar_description": "Upcoming reminders and past fuel/maintenance activity by date", + "widget_calendar_no_activity_or_reminders": "No activity or reminders on this date." } diff --git a/i18n/project.inlang/settings.json b/i18n/project.inlang/settings.json index 600dae07..ce577b7b 100644 --- a/i18n/project.inlang/settings.json +++ b/i18n/project.inlang/settings.json @@ -8,5 +8,5 @@ "pathPattern": "./messages/{locale}.json" }, "baseLocale": "en", - "locales": ["en", "ar", "hi", "es", "fr", "de", "it", "hu", "fi", "ro", "ru", "pt-PT"] + "locales": ["en", "ar", "hi", "es", "fr", "de", "it", "hu", "fi", "ro", "ru", "pt-PT", "cs"] } diff --git a/src/lib/components/dashboard/ActivityFeed.svelte b/src/lib/components/dashboard/ActivityFeed.svelte index d84d7f8c..42dffb61 100644 --- a/src/lib/components/dashboard/ActivityFeed.svelte +++ b/src/lib/components/dashboard/ActivityFeed.svelte @@ -5,6 +5,7 @@ import Skeleton from '$lib/components/ui/skeleton/skeleton.svelte'; import { formatCurrency, formatDate } from '$lib/helper/format.helper'; import { ACCENT } from '$lib/helper/accent-color.helper'; + import { vehicle_hub_activity_empty } from '$lib/paraglide/messages/_index.js'; let { entries, @@ -27,7 +28,7 @@ {:else if entries.length === 0}
No activity or reminders on this date.
+{widget_calendar_no_activity_or_reminders()}
{:else}- All available widgets are already on your dashboard. + {all_widgets_used()}
{:else} {#each availableWidgets as widget (widget.type)} diff --git a/src/lib/components/layout/AppSidebar.svelte b/src/lib/components/layout/AppSidebar.svelte index bc73e377..d2ceccb4 100644 --- a/src/lib/components/layout/AppSidebar.svelte +++ b/src/lib/components/layout/AppSidebar.svelte @@ -47,50 +47,50 @@ const NAV_ITEMS: NavItem[] = [ { - label: 'Dashboard', + label: m.nav_dashboard(), href: '/dashboard', icon: LayoutDashboard, - group: 'Overview' + group: m.nav_overview() }, { - label: 'Garage', + label: m.nav_garage(), href: '/garage', icon: Warehouse, - group: 'Overview' + group: m.nav_overview() }, { label: m.nav_fuel_logs(), href: '/fuel', icon: Fuel, featureKey: 'featureFuelLog', - group: 'Logs' + group: m.nav_logs() }, { label: m.nav_maintenance(), href: '/maintenance', icon: Wrench, featureKey: 'featureMaintenance', - group: 'Logs' + group: m.nav_logs() }, { label: m.nav_reminders(), href: '/reminders', icon: Bell, featureKey: 'featureReminders', - group: 'Logs' + group: m.nav_logs() }, { label: m.nav_compliance(), href: '/compliance', icon: Shield, featureKey: 'featureCompliance', - group: 'Logs' + group: m.nav_logs() }, { - label: 'Reports', + label: m.nav_reports(), href: '/reports', icon: BarChart3, - group: 'Insights' + group: m.nav_insights() } ]; diff --git a/src/lib/helper/settings-form.helper.ts b/src/lib/helper/settings-form.helper.ts index 643a29f4..c72a984a 100644 --- a/src/lib/helper/settings-form.helper.ts +++ b/src/lib/helper/settings-form.helper.ts @@ -79,7 +79,8 @@ export function createSettingsOptions( fi: 'Suomi', ro: 'Română', ru: 'Русский', - 'pt-PT': 'Português (Portugal)' + 'pt-PT': 'Português (Portugal)', + cs: 'Čeština' }; return { diff --git a/src/routes/(app)/dashboard/+page.svelte b/src/routes/(app)/dashboard/+page.svelte index e84be8fc..a51c8f9d 100644 --- a/src/routes/(app)/dashboard/+page.svelte +++ b/src/routes/(app)/dashboard/+page.svelte @@ -20,6 +20,20 @@ import DeleteConfirmation from '$appui/DeleteConfirmation.svelte'; import { goto } from '$app/navigation'; import * as m from '$lib/paraglide/messages'; + import { + dashboard_add_widget, + dashboard_title, + dashboard_good_morning, + dashboard_good_afternoon, + dashboard_good_evening, + dashboard_reset_to_default, + dashboard_reset_confirm_title, + dashboard_reset_confirm_message, + dashboard_reset_confirm_reset, + dashboard_cta_heading, + dashboard_cta_description, + dashboard_cta_button_label + } from '$lib/paraglide/messages/_index.js'; let resetDialogOpen = $state(false); @@ -34,18 +48,26 @@ const greeting = $derived.by(() => { if (!authStore.user?.username) return 'Welcome'; const hour = new Date().getHours(); - const timeGreeting = hour < 12 ? 'Good morning' : hour < 18 ? 'Good afternoon' : 'Good evening'; + const timeGreeting = + hour < 12 + ? dashboard_good_morning() + : hour < 18 + ? dashboard_good_afternoon() + : dashboard_good_evening(); return `${timeGreeting}, ${authStore.user.username}`; });