Files
Home-Assistant/custom_components/ha_washdata/translations/ro.json
T
2026-06-14 02:01:49 -04:00

1342 lines
79 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"config": {
"step": {
"user": {
"title": "Configurare WashData",
"description": "Configurați mașina de spălat sau alt aparat.\n\nEste necesar un senzor de putere.\n\n**În continuare, veți fi întrebat dacă doriți să vă creați primul profil.**",
"data": {
"name": "Numele dispozitivului",
"device_type": "Tip de dispozitiv",
"power_sensor": "Senzor de putere",
"min_power": "Pragul minim de putere (W)"
},
"data_description": {
"name": "Un nume prietenos pentru acest dispozitiv (de exemplu, „Mașină de spălat”, „Mașină de spălat vase”).",
"device_type": "Ce tip de aparat este acesta? Ajută la personalizarea detectării și etichetării.",
"power_sensor": "Entitatea senzor care raportează consumul de energie în timp real (în wați) de la priza inteligentă.",
"min_power": "Citirile de putere peste acest prag (în wați) indică faptul că aparatul funcționează. Începeți cu 2W pentru majoritatea dispozitivelor."
}
},
"first_profile": {
"title": "Creați primul profil",
"description": "Un **ciclu** este o funcționare completă a aparatului dvs. (de exemplu, o încărcătură de rufe). Un **Profil** grupează aceste cicluri după tip (de exemplu, „Bumbac”, „Spălare rapidă”). Crearea unui profil acum ajută integrarea să estimeze durata imediat.\n\nPuteți selecta manual acest profil în comenzile dispozitivului dacă nu este detectat automat.\n\n**Lăsați „Numele profilului” necompletat pentru a sări peste acest pas.**",
"data": {
"profile_name": "Nume profil (opțional)",
"manual_duration": "Durata estimată (minute)"
}
}
},
"error": {
"cannot_connect": "Nu s-a putut conecta",
"invalid_auth": "Autentificare nevalidă",
"unknown": "Eroare neașteptată"
},
"abort": {
"already_configured": "Dispozitivul este deja configurat"
}
},
"options": {
"step": {
"init": {
"menu_options": {
"learning_feedbacks": "Examinați feedback-urile de învățare",
"settings": "Setări",
"notifications": "Notificări",
"manage_cycles": "Gestionați ciclurile",
"manage_profiles": "Gestionați profiluri",
"manage_phase_catalog": "Gestionați catalogul de faze",
"record_cycle": "Înregistrare ciclu (manual)",
"diagnostics": "Diagnosticare și întreținere"
}
},
"apply_suggestions": {
"title": "Copiați valorile sugerate",
"description": "Aceasta va copia valorile actuale sugerate în setările salvate. Aceasta este o acțiune unică și nu activează suprascrierea automată.\n\nValori sugerate de copiat:\n{suggested}",
"data": {
"confirm": "Confirmați acțiunea de copiere"
}
},
"apply_suggestions_confirm": {
"title": "Examinați modificările sugerate",
"description": "WashData a găsit **{pending_count}** valori sugerate de aplicat.\n\nModificări:\n{changes}\n\n✅ Bifați caseta de mai jos și faceți clic pe **Trimite** pentru a aplica și a salva imediat aceste modificări.\n❌ Lăsați-l nebifat și faceți clic pe **Trimite** pentru a anula și a reveni.",
"data": {
"confirm_apply_suggestions": "Aplicați și salvați aceste modificări"
}
},
"settings": {
"title": "Setări",
"description": "{deprecation_warning}Reglați pragurile de detectare, învățarea și comportamentul avansat. Valorile implicite funcționează bine pentru majoritatea configurațiilor.\n\nSetări sugerate disponibile: {suggestions_count}.\nDacă este mai mare decât 0, deschideți Setări avansate și folosiți Aplicați valorile sugerate pentru a revizui recomandările.",
"data": {
"apply_suggestions": "Aplicați valorile sugerate",
"device_type": "Tip de dispozitiv",
"power_sensor": "Entitate senzor de putere",
"min_power": "Putere minimă (W)",
"off_delay": "Întârziere de încheiere a ciclului (s)",
"notify_actions": "Acțiuni de notificare",
"notify_people": "Amânați livrarea până când aceste persoane sunt acasă",
"notify_only_when_home": "Întârziați notificările până când persoana selectată este acasă",
"notify_fire_events": "Declanșare evenimente de automatizare",
"notify_start_services": "Cycle Start - Ținte de notificare",
"notify_finish_services": "Terminare ciclu - Ținte de notificare",
"notify_live_services": "Progres live - Ținte de notificare",
"notify_before_end_minutes": "Notificare înainte de finalizare (minute înainte de sfârșit)",
"notify_title": "Titlul notificării",
"notify_icon": "Pictograma de notificare",
"notify_start_message": "Format mesaj de pornire",
"notify_finish_message": "Format mesaj de finalizare",
"notify_pre_complete_message": "Format mesaj pre-finalizare",
"show_advanced": "Editați setările avansate (pasul următor)"
},
"data_description": {
"apply_suggestions": "Bifați această casetă pentru a copia în formular valorile sugerate de algoritmul de învățare. Examinați înainte de a salva.\n\nSugerat (din învățare):\n- min_power: {suggested_min_power} W\n- off_delay: {suggested_off_delay} s\n- watchdog_interval: {suggested_watchdog_interval} s\n- no_update_active_timeout: {suggested_no_update_active_timeout} s\n- profile_match_interval: {suggested_profile_match_interval} s\n- auto_label_confidence: {suggested_auto_label_confidence}\n- duration_tolerance: {suggested_duration_tolerance}\n- profile_duration_tolerance: {suggested_profile_duration_tolerance}\n- profile_match_min_duration_ratio: {suggested_profile_match_min_duration_ratio}\n- profile_match_max_duration_ratio: {suggested_profile_match_max_duration_ratio}\n- start_threshold_w: {suggested_start_threshold_w} W\n- stop_threshold_w: {suggested_stop_threshold_w} W\n- end_energy_threshold: {suggested_end_energy_threshold} Wh\n- running_dead_zone: {suggested_running_dead_zone} s\n{suggested_reason}",
"device_type": "Selectați tipul de aparat (Mașină de spălat, Uscător, Mașină de spălat vase, Aparat de cafea, VE). Această etichetă este stocată cu fiecare ciclu pentru o mai bună organizare.",
"power_sensor": "Entitatea senzor care raportează puterea în timp real (în wați). Puteți schimba oricând acest lucru fără a pierde datele istorice - util dacă înlocuiți o priză inteligentă.",
"min_power": "Citirile de putere peste acest prag (în wați) indică faptul că aparatul funcționează. Începeți cu 2W pentru majoritatea dispozitivelor.",
"off_delay": "Câte secunde puterea netezită trebuie să rămână sub pragul de oprire pentru a marca finalizarea. Implicit: 120s.",
"notify_actions": "Secvență de acțiuni opțională Home Assistant care se rulează pentru notificări (scripturi, notify, TTS etc.). Dacă este setat, acțiunile rulează înaintea serviciului de notificare alternativă.",
"notify_people": "Entități de persoane utilizate pentru controlul prezenței. Când este activată, livrarea notificărilor este întârziată până când cel puțin o persoană selectată este acasă.",
"notify_only_when_home": "Dacă este activat, amânați notificările până când cel puțin o persoană selectată este acasă.",
"notify_fire_events": "Dacă este activat, declanșează evenimente Home Assistant la startul și sfârșitul ciclului (ha_washdata_cycle_started și ha_washdata_cycle_ended) pentru a conduce automatizările.",
"notify_start_services": "Unul sau mai multe servicii de notificare pentru a alerta când începe un ciclu. Lăsați gol pentru a sări peste notificările de pornire.",
"notify_finish_services": "Unul sau mai multe servicii de notificare pentru a alerta când un ciclu se termină sau se apropie de finalizare. Lăsați gol pentru a sări peste notificările de finalizare.",
"notify_live_services": "Unul sau mai multe servicii de notificare pentru a primi actualizări live despre progres în timp ce ciclul rulează (numai aplicația mobilă însoțitoare). Lăsați gol pentru a omite actualizările live.",
"notify_before_end_minutes": "Cu câte minute înainte de sfârșitul estimat al ciclului pentru a declanșa o notificare. Setați la 0 pentru a dezactiva. Implicit: 0.",
"notify_title": "Titlu personalizat pentru notificări. Acceptă substituentul {device}.",
"notify_icon": "Pictogramă de utilizat pentru notificări (de exemplu, mdi:washing-machine). Lăsați gol pentru a trimite fără pictogramă.",
"notify_start_message": "Mesaj trimis când începe un ciclu. Acceptă substituentul {device}.",
"notify_finish_message": "Mesaj trimis când un ciclu se termină. Acceptă substituenții {device}, {duration}, {program}, {energy_kwh}, {cost}.",
"notify_pre_complete_message": "Textul actualizărilor de progres live recurente în timp ce ciclul rulează. Acceptă substituenți {device}, {minutes}, {program}."
}
},
"notifications": {
"title": "Notificări",
"description": "Configurați canalele de notificare, șabloanele și actualizările opționale de progres live pe mobil.",
"data": {
"notify_actions": "Acțiuni de notificare",
"notify_people": "Amânați livrarea până când aceste persoane sunt acasă",
"notify_only_when_home": "Întârziați notificările până când persoana selectată este acasă",
"notify_fire_events": "Declanșare evenimente de automatizare",
"notify_start_services": "Cycle Start - Ținte de notificare",
"notify_finish_services": "Terminare ciclu - Ținte de notificare",
"notify_live_services": "Progres live - Ținte de notificare",
"notify_before_end_minutes": "Notificare înainte de finalizare (minute înainte de sfârșit)",
"notify_live_interval_seconds": "Interval de actualizare live (secunde)",
"notify_live_overrun_percent": "Marja de depășire a actualizărilor live (%)",
"notify_live_chronometer": "Cronometru cu numărătoare inversă",
"notify_title": "Titlul notificării",
"notify_icon": "Pictograma de notificare",
"notify_start_message": "Format mesaj de pornire",
"notify_finish_message": "Format mesaj de finalizare",
"notify_pre_complete_message": "Format mesaj pre-finalizare",
"energy_price_entity": "Prețul energiei - Entitate (opțional)",
"energy_price_static": "Prețul energiei - Valoare statică (opțional)",
"go_back": "Reveniți fără salvare",
"notify_reminder_message": "Format mesaj de memento",
"notify_timeout_seconds": "Închidere automată după (secunde)",
"notify_channel": "Canal de notificare (stare/live/memento)",
"notify_finish_channel": "Canal de notificare terminat"
},
"data_description": {
"go_back": "Bifați aceasta și faceți clic pe Trimitere pentru a renunța la orice modificări de mai sus și a reveni la meniul principal.",
"notify_actions": "Secvență de acțiuni opțională Home Assistant care se rulează pentru notificări (scripturi, notify, TTS etc.). Dacă este setat, acțiunile rulează înaintea serviciului de notificare alternativă.",
"notify_people": "Entități de persoane utilizate pentru controlul prezenței. Când este activată, livrarea notificărilor este întârziată până când cel puțin o persoană selectată este acasă.",
"notify_only_when_home": "Dacă este activat, amânați notificările până când cel puțin o persoană selectată este acasă.",
"notify_fire_events": "Dacă este activat, declanșează evenimente Home Assistant la startul și sfârșitul ciclului (ha_washdata_cycle_started și ha_washdata_cycle_ended) pentru a conduce automatizările.",
"notify_start_services": "Unul sau mai multe servicii de notificare pentru a alerta când începe un ciclu (de exemplu, notify.mobile_app_my_phone). Lăsați gol pentru a sări peste notificările de pornire.",
"notify_finish_services": "Unul sau mai multe servicii de notificare pentru a alerta când un ciclu se termină sau se apropie de finalizare. Lăsați gol pentru a sări peste notificările de finalizare.",
"notify_live_services": "Unul sau mai multe servicii de notificare pentru a primi actualizări live despre progres în timp ce ciclul rulează (numai aplicația mobilă însoțitoare). Lăsați gol pentru a omite actualizările live.",
"notify_before_end_minutes": "Cu câte minute înainte de sfârșitul estimat al ciclului pentru a declanșa o notificare. Setați la 0 pentru a dezactiva. Implicit: 0.",
"notify_live_interval_seconds": "Cât de des sunt trimise actualizările de progres în timpul funcționării. Valorile mai mici sunt mai receptive, dar consumă mai multe notificări. Este impus un minim de 30 de secunde - valorile sub 30s sunt rotunjite automat la 30s.",
"notify_live_overrun_percent": "Marja de siguranță peste numărul estimat de actualizări pentru cicluri lungi/depășite (de exemplu, 20% permite de 1,2 ori actualizările estimate).",
"notify_live_chronometer": "Când este activată, fiecare actualizare live include o numărătoare inversă a cronometrului până la ora estimată de terminare. Cronometrul de notificare se bifează automat pe dispozitiv între actualizări (numai aplicația însoțitoare Android).",
"notify_title": "Titlu personalizat pentru notificări. Acceptă substituentul {device}.",
"notify_icon": "Pictogramă de utilizat pentru notificări (de exemplu, mdi:washing-machine). Lăsați gol pentru a trimite fără pictogramă.",
"notify_start_message": "Mesaj trimis când începe un ciclu. Acceptă substituentul {device}.",
"notify_finish_message": "Mesaj trimis când un ciclu se termină. Acceptă substituenții {device}, {duration}, {program}, {energy_kwh}, {cost}.",
"energy_price_entity": "Selectați o entitate numerică care deține prețul curent al energiei electrice (de exemplu, senzor.electricity_price, input_number.energy_rate). Când este setat, activează substituentul {cost}. Are prioritate față de valoarea statică dacă ambele sunt configurate.",
"energy_price_static": "Preț fix al energiei electrice pe kWh. Când este setat, activează substituentul {cost}. Ignorat dacă o entitate este configurată mai sus. Adăugați simbolul valutar în șablonul de mesaj, de ex. {cost} €.",
"notify_reminder_message": "Textul mementoului unic a trimis numărul configurat de minute înainte de sfârșitul estimat. Diferit de actualizările live recurente de mai sus. Acceptă substituenți {device}, {minutes}, {program}.",
"notify_timeout_seconds": "Închideți automat notificările după atâtea secunde (redirecționate ca „timeout” pentru aplicația însoțitoare). Setați la 0 pentru a le păstra până la respingere. Implicit: 0.",
"notify_channel": "Android canal de notificare al aplicației însoțitoare pentru notificări privind starea, progresul live și notificările de memento. Sunetul și importanța unui canal sunt configurate în aplicația însoțitoare prima dată când numele canalului este utilizat - WashData setează doar numele canalului. Lăsați necompletat pentru aplicația implicită.",
"notify_finish_channel": "Separați canalul Android pentru alerta finală (utilizată și de memento și de mesajul de așteptare a rufelor), astfel încât să poată avea propriul sunet. Lăsați gol pentru a reutiliza canalul de mai sus.",
"notify_pre_complete_message": "Textul actualizărilor de progres live recurente în timp ce ciclul rulează. Acceptă substituenți {device}, {minutes}, {program}."
}
},
"advanced_settings": {
"title": "Setări avansate",
"description": "Reglați pragurile de detectare, învățarea și comportamentul avansat. Valorile implicite funcționează bine pentru majoritatea configurațiilor.",
"sections": {
"suggestions_section": {
"name": "Setări sugerate",
"description": "{suggestions_count} sugestii învățate disponibile. Bifați Aplicați valorile sugerate pentru a revizui modificările propuse înainte de salvare.",
"data": {
"apply_suggestions": "Aplicați valorile sugerate"
},
"data_description": {
"apply_suggestions": "Bifați această casetă pentru a deschide un pas de revizuire pentru valorile sugerate din algoritmul de învățare. Nimic nu este salvat automat.\n\nSugerat (din învățare):\n- min_power: {suggested_min_power} W\n- off_delay: {suggested_off_delay} s\n- watchdog_interval: {suggested_watchdog_interval} s\n- no_update_active_timeout: {suggested_no_update_active_timeout} s\n- profile_match_interval: {suggested_profile_match_interval} s\n- auto_label_confidence: {suggested_auto_label_confidence}\n- duration_tolerance: {suggested_duration_tolerance}\n- profile_duration_tolerance: {suggested_profile_duration_tolerance}\n- profile_match_min_duration_ratio: {suggested_profile_match_min_duration_ratio}\n- profile_match_max_duration_ratio: {suggested_profile_match_max_duration_ratio}\n- start_threshold_w: {suggested_start_threshold_w} W\n- stop_threshold_w: {suggested_stop_threshold_w} W\n- end_energy_threshold: {suggested_end_energy_threshold} Wh\n- running_dead_zone: {suggested_running_dead_zone} s\n{suggested_reason}"
}
},
"detection_section": {
"name": "Detectare și praguri de putere",
"description": "Când aparatul este considerat PORNIT sau OPRIT, praguri energetice și temporizare pentru tranzițiile de stare.",
"data": {
"start_duration_threshold": "Durata debounce la pornire (s)",
"start_energy_threshold": "Poarta de energie la pornire (Wh)",
"completion_min_seconds": "Timp minim de rulare pentru finalizare (secunde)",
"start_threshold_w": "Pragul de pornire (W)",
"stop_threshold_w": "Pragul de oprire (W)",
"end_energy_threshold": "Poarta de energie la final (Wh)",
"running_dead_zone": "Zonă moartă la pornire (secunde)",
"end_repeat_count": "Număr de repetări pentru final",
"min_off_gap": "Intervalul minim între cicluri (s)",
"sampling_interval": "Interval de eșantionare (s)"
},
"data_description": {
"start_duration_threshold": "Ignorați vârfurile scurte de putere mai scurte decât această durată (secunde). Filtrează vârfurile de pornire (de exemplu, 60 W timp de 2 secunde) înainte de începerea ciclului real. Implicit: 5s.",
"start_energy_threshold": "Ciclul trebuie să acumuleze cel puțin atâta energie (Wh) în timpul fazei de START pentru a fi confirmat. Implicit: 0,005 Wh.",
"completion_min_seconds": "Ciclurile mai scurte decât aceasta vor fi marcate ca „întrerupte”, chiar dacă se termină în mod natural. Implicit: 600s.",
"start_threshold_w": "Puterea trebuie să crească PESTE acest prag pentru a PORNI un ciclu. Setați mai sus decât puterea de așteptare. Implicit: min_power + 1 W.",
"stop_threshold_w": "Puterea trebuie să scadă SUB acest prag pentru a TERMINA un ciclu. Setați chiar peste zero pentru a evita că zgomotul declanșeze finaluri false. Implicit: 0,6 × min_power.",
"end_energy_threshold": "Ciclul se termină numai dacă energia din ultima fereastră de întârziere la oprire este sub această valoare (Wh). Previne finaluri false dacă puterea fluctuează aproape de zero. Implicit: 0,05 Wh.",
"running_dead_zone": "După începerea ciclului, ignorați scăderile de putere timp de atâtea secunde pentru a preveni detectarea falsă a finalului în timpul fazei inițiale de pornire. Setați la 0 pentru a dezactiva. Implicit: 0s.",
"end_repeat_count": "De câte ori condiția de final (putere sub pragul pentru off_delay) trebuie îndeplinită consecutiv înainte de încheierea ciclului. Valorile mai mari previn finaluri false în timpul pauzelor. Implicit: 1.",
"min_off_gap": "Dacă un ciclu începe în atâtea secunde de la încheierea celui precedent, ele vor fi FUZIONATE într-un singur ciclu.",
"sampling_interval": "Interval minim de prelevare în secunde. Actualizările mai rapide decât această rată vor fi ignorate. Implicit: 30 s (2 s pentru mașini de spălat, mașini de spălat cu uscător și mașini de spălat vase)."
}
},
"matching_section": {
"name": "Potrivire profiluri și învățare",
"description": "Cât de agresiv potrivește WashData ciclurile în desfășurare cu profilurile învățate și când să ceară feedback.",
"data": {
"profile_match_min_duration_ratio": "Rată durată minimă a potrivirii profilului (0,1-1,0)",
"profile_match_interval": "Interval de potrivire a profilului (secunde)",
"profile_match_threshold": "Pragul de potrivire a profilului",
"profile_unmatch_threshold": "Prag de nepotrivire a profilului",
"auto_label_confidence": "Încredere pentru etichetare automată (0-1)",
"learning_confidence": "Încredere pentru solicitarea de feedback (0-1)",
"suppress_feedback_notifications": "Suprimați notificările de feedback",
"duration_tolerance": "Toleranță la durată (0-0,5)",
"smoothing_window": "Fereastră de netezire (eșantioane)",
"profile_duration_tolerance": "Toleranță la durata potrivirii profilului (0-0,5)"
},
"data_description": {
"profile_match_min_duration_ratio": "Raportul de durată minimă pentru potrivirea profilului. Ciclul în rulare trebuie să aibă cel puțin această fracțiune din durata profilului pentru a se potrivi. Mai mic = potrivire mai devreme. Implicit: 0,50 (50%).",
"profile_match_interval": "Cât de des (în secunde) să se încerce potrivirea profilului în timpul unui ciclu. Valorile mai mici oferă o detectare mai rapidă, dar folosesc mai mult CPU. Implicit: 300s (5 minute).",
"profile_match_threshold": "Scorul minim de similaritate DTW (0,01,0) necesar pentru a considera un profil ca potrivit. Mai mare = potrivire mai strictă, mai puține false pozitive. Implicit: 0,4.",
"profile_unmatch_threshold": "Scorul de similaritate DTW (0,01,0) sub care un profil potrivit anterior este respins. Trebuie să fie mai mic decât pragul de potrivire pentru a preveni oscilațiile. Implicit: 0,35.",
"auto_label_confidence": "Etichetați automat ciclurile cu această încredere sau mai mare la finalizare (0,01,0).",
"learning_confidence": "Încredere minimă pentru a solicita verificarea utilizatorului printr-un eveniment (0,01,0).",
"suppress_feedback_notifications": "Când este activat, WashData va urmări în continuare și va solicita feedback intern, dar nu va afișa notificări persistente care vă vor cere să confirmați ciclurile. Este util atunci când ciclurile sunt întotdeauna detectate corect și vi se pare că solicitările vă distrag atenția.",
"duration_tolerance": "Toleranța pentru estimările timpului rămas în timpul unui ciclu (0,00,5 corespunde la 050%).",
"smoothing_window": "Numărul de citiri recente de putere utilizate pentru netezirea mediei mobile.",
"profile_duration_tolerance": "Toleranța utilizată de potrivirea profilului pentru variația duratei totale (0,00,5). Comportament implicit: ±25%."
}
},
"timing_section": {
"name": "Timp, mentenanță și depanare",
"description": "Watchdog, resetarea progresului, mentenanță automată și expunerea entităților de depanare.",
"data": {
"watchdog_interval": "Intervalul watchdog (secunde)",
"no_update_active_timeout": "Timeout fără actualizare (s)",
"progress_reset_delay": "Întârziere de resetare a progresului (secunde)",
"auto_maintenance": "Activați întreținerea automată",
"expose_debug_entities": "Expuneți entitățile de depanare",
"save_debug_traces": "Salvați urmele de depanare"
},
"data_description": {
"watchdog_interval": "Secunde între verificările watchdog în timpul funcționării. Implicit: 5s. ATENȚIE: Asigurați-vă că acesta este MAI MARE decât intervalul de actualizare al senzorului pentru a evita opririle false (de exemplu, dacă senzorul se actualizează la fiecare 60 de secunde, utilizați 65s+).",
"no_update_active_timeout": "Pentru senzorii de publicare la modificare: opriți forțat un ciclu ACTIV numai dacă nu sosesc actualizări pentru atâtea secunde. Finalizarea la consum redus folosește în continuare întârzierea la oprire.",
"progress_reset_delay": "După finalizarea unui ciclu (100%), așteptați atâtea secunde de inactivitate înainte de a reseta progresul la 0%. Implicit: 300s.",
"auto_maintenance": "Activați întreținerea automată (reparare eșantioane, îmbinare fragmente).",
"expose_debug_entities": "Afișați senzori avansați (Încredere, Fază, Ambiguitate) pentru depanare.",
"save_debug_traces": "Stocați datele detaliate de clasificare și urmărire a puterii în istoric (crește utilizarea stocării)."
}
},
"anti_wrinkle_section": {
"name": "Protecție antișifonare (uscătoare)",
"description": "Ignorați rotațiile tamburului după ciclu pentru a preveni ciclurile fantomă. Numai uscător / mașină de spălat cu uscător.",
"data": {
"anti_wrinkle_enabled": "Scut antirid (numai uscător)",
"anti_wrinkle_max_power": "Putere maximă antirid (W)",
"anti_wrinkle_max_duration": "Durata maximă antirid (s)",
"anti_wrinkle_exit_power": "Puterea de ieșire antirid (W)"
},
"data_description": {
"anti_wrinkle_enabled": "Ignorați rotațiile scurte ale tamburului de putere redusă după încheierea unui ciclu pentru a preveni ciclurile fantomă (numai pentru uscător/mașină de spălat cu uscător).",
"anti_wrinkle_max_power": "Exploziile la sau sub această putere sunt tratate ca rotații antirid în loc de noi cicluri. Se aplică numai când Scutul Antirid este activat.",
"anti_wrinkle_max_duration": "Lungimea maximă a exploziei pentru a fi tratată ca rotație antirid. Se aplică numai când Scutul Antirid este activat.",
"anti_wrinkle_exit_power": "Dacă puterea scade sub acest nivel, ieșiți imediat din modul antirid (oprit cu adevărat). Se aplică numai când Scutul Antirid este activat."
}
},
"delay_start_section": {
"name": "Detectarea pornirii întârziate",
"description": "Tratați așteptarea susținută la putere redusă ca 'Așteaptă să pornească' până când ciclul începe efectiv.",
"data": {
"delay_start_detect_enabled": "Activați Detectarea pornirii întârziate",
"delay_confirm_seconds": "Pornire întârziată: timp de confirmare standby (s)",
"delay_timeout_hours": "Pornire întârziată: timp maxim de așteptare (h)"
},
"data_description": {
"delay_start_detect_enabled": "Când este activat, un pic scurt de scurgere de putere redusă, urmat de o putere de așteptare susținută, este detectat ca o pornire întârziată. Senzorul de stare afișează „În așteptarea pornirii” în timpul întârzierii. Nu se urmărește timpul sau progresul programului până când ciclul începe efectiv. Necesită ca start_threshold_w să fie setat deasupra puterii vârfului de scurgere.",
"delay_confirm_seconds": "Puterea trebuie să rămână între Prag oprire (W) și Prag pornire (W) pentru atâtea secunde înainte ca WashData să intre în starea 'Așteaptă să pornească'. Filtrează vârfurile scurte din navigarea prin meniu. Implicit: 60 s.",
"delay_timeout_hours": "Timeout de siguranță: dacă mașina este încă în „Așteaptă pornirea” după atâtea ore, WashData se resetează la Off. Implicit: 8 h."
}
},
"external_triggers_section": {
"name": "Declanșatoare externe, ușă și pauză",
"description": "Senzor extern opțional de final de ciclu, senzor de ușă pentru detectarea pauzei/curat și întrerupător de tăiere a alimentării la pauză.",
"data": {
"external_end_trigger_enabled": "Activați declanșatorul extern de sfârșit de ciclu",
"external_end_trigger": "Senzor extern de sfârșit de ciclu",
"external_end_trigger_inverted": "Inversați logica declanșării (declanșare la dezactivare)",
"door_sensor_entity": "Senzor de ușă",
"pause_cuts_power": "Opriți puterea la pauză",
"switch_entity": "Comutare entitate (pentru întreruperea alimentării în pauză)",
"notify_unload_delay_minutes": "Întârziere de notificare în așteptare pentru spălătorie (min.)"
},
"data_description": {
"external_end_trigger_enabled": "Activați monitorizarea unui senzor binar extern pentru a declanșa finalizarea ciclului.",
"external_end_trigger": "Selectați o entitate senzor binar. Când acest senzor se declanșează, ciclul curent se va încheia cu starea „finalizat”.",
"external_end_trigger_inverted": "În mod implicit, declanșatorul se activează când senzorul este PORNIT. Bifați această casetă pentru a se activa când senzorul se OPRESTE.",
"door_sensor_entity": "Senzor binar opțional pentru ușa mașinii (pornit = deschis, oprit = închis). Când ușa se deschide în timpul unui ciclu activ, WashData va confirma ciclul ca fiind întrerupt intenționat. După încheierea ciclului, dacă ușa este încă închisă, starea se schimbă în „Curățare” până când ușa este deschisă. Notă: închiderea ușii NU reia automat un ciclu întrerupt - reluarea trebuie declanșată manual prin intermediul butonului Reluare ciclu sau serviciu.",
"pause_cuts_power": "Când întrerupeți prin intermediul butonului sau al serviciului Pauză ciclu, dezactivați, de asemenea, entitatea de comutare configurată. Are efect numai dacă o entitate de comutare este configurată pentru acest dispozitiv.",
"switch_entity": "Entitatea comutatoare pentru a comuta atunci când întrerupeți sau reluați. Obligatoriu atunci când „Tăiați puterea la pauză” este activat.",
"notify_unload_delay_minutes": "Trimiteți o notificare prin canalul de notificare de terminare după ce ciclul se termină și ușa nu a fost deschisă timp de atâtea minute (necesită Senzor de ușă). Setați la 0 pentru a dezactiva. Implicit: 60 min."
}
},
"pump_section": {
"name": "Monitor pompă",
"description": "Numai pentru tipul de dispozitiv pompă. Declanșează un eveniment dacă un ciclu de pompă depășește această durată.",
"data": {
"pump_stuck_duration": "Pragul de alertă de blocare a pompei (doar pompă)"
},
"data_description": {
"pump_stuck_duration": "Dacă un ciclu de pompă continuă să ruleze după atâtea secunde, un eveniment ha_washdata_pump_stuck este declanșat o dată. Utilizați acest lucru pentru a detecta un motor blocat (funcționarea tipică a pompei de carter este sub 60 s). Implicit: 1800 s (30 min). Numai tipul dispozitivului de pompare."
}
},
"device_link_section": {
"name": "Device Link",
"description": "Opțional, conectați acest dispozitiv WashData la un dispozitiv Home Assistant existent (de exemplu, priza inteligentă sau aparatul în sine). Dispozitivul WashData este apoi afișat ca „Conectat prin” dispozitivul respectiv. Lăsați gol pentru a păstra WashData ca dispozitiv autonom.",
"data": {
"linked_device": "Dispozitiv conectat"
},
"data_description": {
"linked_device": "Selectați dispozitivul la care să vă conectați WashData. Aceasta adaugă o referință „Conectat prin” în registrul dispozitivului; WashData își păstrează propriul card de dispozitiv și entități. Ștergeți selecția pentru a elimina legătura."
}
}
}
},
"diagnostics": {
"title": "Diagnosticare și întreținere",
"description": "Rulați acțiuni de întreținere, cum ar fi îmbinarea ciclurilor fragmentate sau migrarea datelor stocate.\n\n**Utilizarea stocării**\n\n- Dimensiunea fișierului: {file_size_kb} KB\n- Cicluri: {cycle_count}\n- Profiluri: {profile_count}\n- Urme de depanare: {debug_count}",
"menu_options": {
"reprocess_history": "Întreținere: reprocesare și optimizare date",
"clear_debug_data": "Ștergeți datele de depanare (eliberați spațiu)",
"wipe_history": "Ștergeți TOATE datele pentru acest dispozitiv (ireversibil)",
"export_import": "Export/Import JSON cu setări (copiere/lipire)",
"menu_back": "← Înapoi"
}
},
"clear_debug_data": {
"title": "Ștergeți datele de depanare",
"description": "Sigur doriți să ștergeți toate urmele de depanare stocate? Acest lucru va elibera spațiu, dar va elimina informațiile detaliate de clasificare din ciclurile anterioare."
},
"manage_cycles": {
"title": "Gestionați ciclurile",
"description": "Cicluri recente:\n{recent_cycles}",
"menu_options": {
"auto_label_cycles": "Etichetare automată a ciclurilor vechi",
"select_cycle_to_label": "Etichetați un ciclu specific",
"select_cycle_to_delete": "Ștergeți ciclul",
"interactive_editor": "Editor interactiv îmbinare/împărțire",
"trim_cycle_select": "Tăiați datele ciclului",
"menu_back": "← Înapoi"
}
},
"manage_cycles_empty": {
"title": "Gestionați ciclurile",
"description": "Nu s-au înregistrat încă cicluri.",
"menu_options": {
"auto_label_cycles": "Etichetare automată a ciclurilor vechi",
"menu_back": "← Înapoi"
}
},
"manage_profiles": {
"title": "Gestionați profiluri",
"description": "Rezumatul profilului:\n{profile_summary}",
"menu_options": {
"create_profile": "Creați un profil nou",
"edit_profile": "Editați/redenumiți profilul",
"delete_profile_select": "Ștergeți profilul",
"profile_stats": "Statistici de profil",
"cleanup_profile": "Curățați istoricul - Grafic și ștergere",
"assign_profile_phases_select": "Atribuiți intervale de fază",
"menu_back": "← Înapoi"
}
},
"manage_profiles_empty": {
"title": "Gestionați profiluri",
"description": "Nu au fost create profiluri încă.",
"menu_options": {
"create_profile": "Creați un profil nou",
"menu_back": "← Înapoi"
}
},
"manage_phase_catalog": {
"title": "Gestionați catalogul de faze",
"description": "Catalog de faze (implicit pentru acest dispozitiv + faze personalizate):\n{phase_summary}",
"menu_options": {
"phase_catalog_create": "Creați o nouă fază",
"phase_catalog_edit_select": "Editați faza",
"phase_catalog_delete": "Ștergeți faza",
"menu_back": "← Înapoi"
}
},
"phase_catalog_create": {
"title": "Creați o fază personalizată",
"description": "Creați un nume și o descriere personalizate pentru faza și alegeți tipul de dispozitiv căruia i se aplică.",
"data": {
"target_device_type": "Tipul dispozitivului țintă",
"phase_name": "Numele fazei",
"phase_description": "Descrierea fazei"
}
},
"phase_catalog_edit_select": {
"title": "Editați faza personalizată",
"description": "Selectați o fază personalizată de editat.",
"data": {
"phase_name": "Faza personalizată"
}
},
"phase_catalog_edit": {
"title": "Editați faza personalizată",
"description": "Editarea fazei: {phase_name}",
"data": {
"phase_name": "Numele fazei",
"phase_description": "Descrierea fazei"
}
},
"phase_catalog_delete": {
"title": "Ștergeți faza personalizată",
"description": "Selectați o fază personalizată de șters. Orice intervale alocate care utilizează această fază vor fi eliminate.",
"data": {
"phase_name": "Faza personalizată"
}
},
"assign_profile_phases": {
"title": "Atribuiți intervale de fază",
"description": "Previzualizare fază pentru profil: **{profile_name}**\n\n{timeline_svg}\n\n**Intervalele curente:**\n{current_ranges}\n\nUtilizați acțiunile de mai jos pentru a adăuga, edita, șterge sau salva intervale.",
"menu_options": {
"assign_profile_phases_add": "Adăugați intervalul de fază",
"assign_profile_phases_edit_select": "Editați intervalul de fază",
"assign_profile_phases_delete": "Ștergeți intervalul de fază",
"phase_ranges_clear": "Ștergeți toate intervalele",
"assign_profile_phases_auto_detect": "Detectare automată a fazelor",
"phase_ranges_save": "Salvați și întoarceți-vă",
"menu_back": "← Înapoi"
}
},
"assign_profile_phases_add": {
"title": "Adăugați intervalul de fază",
"description": "Adăugați un interval de fază la schița curentă.",
"data": {
"phase_name": "Fază",
"start_min": "Minutul de început",
"end_min": "Minutul de sfârșit"
}
},
"assign_profile_phases_edit_select": {
"title": "Editați intervalul de fază",
"description": "Selectați un interval de editat.",
"data": {
"range_index": "Interval de fază"
}
},
"assign_profile_phases_edit": {
"title": "Editați intervalul de fază",
"description": "Actualizați intervalul de fază selectat.",
"data": {
"phase_name": "Fază",
"start_min": "Minutul de început",
"end_min": "Minutul de sfârșit"
}
},
"assign_profile_phases_delete": {
"title": "Ștergeți intervalul de fază",
"description": "Selectați un interval de eliminat din schiță.",
"data": {
"range_index": "Interval de fază"
}
},
"assign_profile_phases_auto_detect": {
"title": "Faze detectate automat",
"description": "Profil: **{profile_name}**\n\n{timeline_svg}\n\n**{detected_count} fază(e) detectată(e) automat.** Alegeți o acțiune de mai jos.",
"data": {
"action": "Acțiune"
}
},
"assign_profile_phases_auto_detect_name": {
"title": "Denumiți fazele detectate",
"description": "Profil: **{profile_name}**\n\n**{detected_count} fază(e) detectată(e):**\n{ranges_summary}\n\nAtribuiți un nume fiecărei faze."
},
"assign_profile_phases_select": {
"title": "Atribuiți intervale de fază",
"description": "Selectați un profil pentru a configura intervalele de fază.",
"data": {
"profile": "Profil"
}
},
"profile_stats": {
"title": "Statistici de profil",
"description": "{stats_table}"
},
"create_profile": {
"title": "Creați un profil nou",
"description": "Creați un profil nou manual sau dintr-un ciclu anterior.\n\nExemple de nume de profil: „Delicate”, „Rezistente”, „Spălare rapidă”",
"data": {
"profile_name": "Nume profil",
"reference_cycle": "Ciclu de referință (opțional)",
"manual_duration": "Durata manuală (minute)"
}
},
"edit_profile": {
"title": "Editați profilul",
"description": "Selectați un profil pentru redenumire",
"data": {
"profile": "Profil"
}
},
"rename_profile": {
"title": "Editați detaliile profilului",
"description": "Profil curent: {current_name}",
"data": {
"new_name": "Nume profil",
"manual_duration": "Durata manuală (minute)"
}
},
"delete_profile_select": {
"title": "Ștergeți profilul",
"description": "Selectați un profil de șters",
"data": {
"profile": "Profil"
}
},
"delete_profile_confirm": {
"title": "Confirmați ștergerea profilului",
"description": "⚠️ Acest lucru va șterge definitiv profilul: {profile_name}",
"data": {
"unlabel_cycles": "Eliminați eticheta din ciclurile care folosesc acest profil"
}
},
"auto_label_cycles": {
"title": "Etichetare automată a ciclurilor vechi",
"description": "S-au găsit {total_count} cicluri totale. Profiluri: {profiles}",
"data": {
"confidence_threshold": "Încredere minimă (0,50-0,95)"
}
},
"select_cycle_to_label": {
"title": "Selectați ciclul de etichetat",
"description": "✓ = finalizat, ⚠ = reluat, ✗ = întrerupt",
"data": {
"cycle_id": "Ciclu"
}
},
"select_cycle_to_delete": {
"title": "Ștergeți ciclul",
"description": "⚠️ Acest lucru va șterge definitiv ciclul selectat",
"data": {
"cycle_id": "Ciclu de șters"
}
},
"label_cycle": {
"title": "Etichetați ciclul",
"description": "{cycle_info}",
"data": {
"profile_name": "Profil",
"new_profile_name": "Nume de profil nou (dacă se creează)"
}
},
"post_process": {
"title": "Procesare istoric (îmbinare/împărțire)",
"description": "Curățați istoricul ciclului prin îmbinarea execuțiilor fragmentate și împărțirea ciclurilor îmbinate incorect într-o fereastră de timp. Introduceți numărul de ore pentru a vă uita înapoi (utilizați 999999 pentru toți).",
"data": {
"time_range": "Fereastra de retrospectivă (ore)",
"gap_seconds": "Limita de îmbinare/împărțire (secunde)"
},
"data_description": {
"time_range": "Numărul de ore de scanare pentru cicluri fragmentate care urmează să fie îmbinate. Utilizați 999999 pentru a procesa toate datele istorice.",
"gap_seconds": "Prag pentru a decide împărțire vs. îmbinare. Lacunele MAI SCURTE decât aceasta sunt îmbinate. Lacunele MAI LUNGI decât aceasta sunt împărțite. Scădeți aceasta pentru a forța o împărțire pe un ciclu îmbinat incorect."
}
},
"cleanup_profile": {
"title": "Curățați istoricul - Selectați profilul",
"description": "Selectați un profil de vizualizat. Aceasta va genera un grafic care arată toate ciclurile anterioare pentru acest profil pentru a ajuta la identificarea valorilor aberante.",
"data": {
"profile": "Profil"
}
},
"cleanup_select": {
"title": "Curățați istoricul - Grafic și ștergere",
"description": "![Grafic]({graph_url})\n\n**Vizualizarea {profile_name}**\n\nGraficul arată ciclurile individuale sub formă de linii colorate. Identificați valorile aberante (linii departe de grup) și potriviți culoarea lor în lista de mai jos pentru a le șterge.\n\n**Selectați ciclurile pentru a șterge DEFINITIV:**",
"data": {
"cycles_to_delete": "Cicluri de șters (verificați culorile potrivite)"
}
},
"interactive_editor": {
"title": "Editor interactiv îmbinare/împărțire",
"description": "Selectați o acțiune manuală de efectuat în istoricul ciclului.",
"menu_options": {
"editor_split": "Împărțiți un ciclu (găsiți lacune)",
"editor_merge": "Îmbinați cicluri (alăturați fragmente)",
"editor_delete": "Ștergeți ciclul(e)",
"menu_back": "← Înapoi"
}
},
"editor_select": {
"title": "Selectați cicluri",
"description": "Selectați ciclul (ciclurile) de procesat.\n\n{info_text}",
"data": {
"selected_cycles": "Cicluri"
}
},
"editor_configure": {
"title": "Configurați și aplicați",
"description": "{preview_md}",
"data": {
"confirm_action": "Acțiune",
"merged_profile": "Profilul rezultat",
"new_profile_name": "Nume de profil nou",
"confirm_commit": "Da, confirm această acțiune",
"segment_0_profile": "Profilul segmentului 1",
"segment_1_profile": "Profilul segmentului 2",
"segment_2_profile": "Profilul segmentului 3",
"segment_3_profile": "Profilul segmentului 4",
"segment_4_profile": "Profilul segmentului 5",
"segment_5_profile": "Profilul segmentului 6",
"segment_6_profile": "Profilul segmentului 7",
"segment_7_profile": "Profilul segmentului 8",
"segment_8_profile": "Profilul segmentului 9",
"segment_9_profile": "Profilul segmentului 10"
}
},
"editor_split_params": {
"title": "Configurație de împărțire",
"description": "Reglați sensibilitatea pentru împărțirea acestui ciclu. Orice decalaj inactiv mai lung decât acesta va provoca o împărțire.",
"data": {
"split_mode": "Metodă de împărțire"
}
},
"editor_split_auto_params": {
"title": "Configurare împărțire automată",
"description": "Ajustați sensibilitatea pentru împărțirea acestui ciclu. Orice pauză de inactivitate mai lungă decât aceasta va provoca o împărțire.",
"data": {
"min_gap_seconds": "Prag pentru intervalul de împărțire (secunde)"
}
},
"editor_split_manual_params": {
"title": "Marcaje temporale pentru împărțire manuală",
"description": "{preview_md}Fereastra ciclului: **{cycle_start_wallclock} → {cycle_end_wallclock}** pe {cycle_date}.\n\nIntroduceți unul sau mai multe marcaje temporale de împărțire (`HH:MM` sau `HH:MM:SS`), câte unul pe fiecare rând. Ciclul va fi tăiat la fiecare marcaj temporal — N marcaje temporale produc N+1 segmente.",
"data": {
"split_timestamps": "Marcaje temporale de împărțire"
}
},
"reprocess_history": {
"title": "Întreținere: reprocesare și optimizare date",
"description": "Efectuează curățarea profundă a datelor istorice:\n1. Elimină citirile de putere zero (silențiu).\n2. Corectează sincronizarea/durata ciclului.\n3. Recalculează toate modelele statistice (plicuri).\n\n**Rulați acest lucru pentru a remedia problemele de date sau pentru a aplica algoritmi noi.**"
},
"wipe_history": {
"title": "Ștergeți istoricul (numai pentru testare)",
"description": "⚠️ Acest lucru va șterge definitiv TOATE ciclurile și profilurile stocate pentru acest dispozitiv. Aceasta nu poate fi anulat!"
},
"export_import": {
"title": "Export/Import JSON",
"description": "Copiați/lipiți cicluri, profiluri și setări pentru acest dispozitiv. Exportați mai jos sau inserați JSON pentru a importa.",
"data": {
"mode": "Acțiune",
"json_payload": "Configurație completă JSON"
},
"data_description": {
"mode": "Alegeți Export pentru a copia datele și setările curente sau Import pentru a lipi datele exportate de pe alt dispozitiv WashData.",
"json_payload": "Pentru export: copiați acest JSON (include cicluri, profiluri și toate setările reglate). Pentru import: inserați JSON exportat din WashData."
}
},
"record_cycle": {
"title": "Înregistrare ciclu",
"description": "Înregistrați manual un ciclu pentru a crea un profil curat, fără interferențe.\n\nStare: **{status}**\nDurată: {duration}s\nEșantioane: {samples}",
"menu_options": {
"record_refresh": "Reîmprospătați starea",
"record_stop": "Opriți înregistrarea (salvare și procesare)",
"record_start": "Începeți o nouă înregistrare",
"record_process": "Procesați ultima înregistrare (tăiere și salvare)",
"record_discard": "Renunțați la ultima înregistrare",
"menu_back": "← Înapoi"
}
},
"record_process": {
"title": "Procesare înregistrare",
"description": "![Grafic]({graph_url})\n\n**Graficul arată înregistrarea brută.** Albastru = Păstrare, Roșu = Tăiere propusă.\n*Graficul este static și nu se actualizează cu modificările formularului.*\n\nÎnregistrarea s-a oprit. Tăierile sunt aliniate la rata de eșantionare detectată (~{sampling_rate}s).\n\nDurată brută: {duration}s\nEșantioane: {samples}",
"data": {
"head_trim": "Tăiere început (secunde)",
"tail_trim": "Tăiere sfârșit (secunde)",
"save_mode": "Destinație salvare",
"profile_name": "Nume profil"
}
},
"learning_feedbacks": {
"title": "Feedback-uri de învățare",
"description": "Feedback în așteptare: {count}\n\n{pending_table}\n\nSelectați o solicitare de revizuire a ciclului de procesat.",
"menu_options": {
"learning_feedbacks_pick": "Revizuiți un feedback în așteptare",
"learning_feedbacks_dismiss_all": "Respingeți tot feedbackul în așteptare",
"menu_back": "← Înapoi"
}
},
"learning_feedbacks_pick": {
"title": "Selectați feedback pentru examinare",
"description": "Selectați o solicitare de examinare a ciclului pentru a o deschide.",
"data": {
"selected_feedback": "Selectați ciclul pentru examinare"
}
},
"learning_feedbacks_empty": {
"title": "Feedback-uri de învățare",
"description": "Nu s-au găsit solicitări de feedback în așteptare.",
"menu_options": {
"menu_back": "← Înapoi"
}
},
"learning_feedbacks_dismiss_all": {
"title": "Respinge toate feedback-urile în așteptare",
"description": "Sunteți pe cale să respingeți **{count}** solicitări de feedback în așteptare. Ciclurile respinse rămân în istoric, dar nu vor contribui cu un nou semnal de învățare. Acest lucru nu poate fi anulat.\n\n✅ Bifați caseta de mai jos și faceți clic pe **Trimite** pentru a le respinge pe toate.\n❌ Lăsați-o nebifată și faceți clic pe **Trimite** pentru a anula și a reveni.",
"data": {
"confirm_dismiss_all": "Confirmați: respingeți toate solicitările de feedback în așteptare"
}
},
"resolve_feedback": {
"title": "Rezolvați feedback-ul",
"description": "{comparison_img}{candidates_table}\n**Profil detectat**: {detected_profile} ({confidence_pct}%)\n**Durata estimată**: {est_duration_min} min\n**Durata reală**: {act_duration_min} min\n\n__Alegeți o acțiune de mai jos:__",
"data": {
"action": "Ce doriți să faceți?",
"corrected_profile": "Programul corect (dacă se corectează)",
"corrected_duration": "Durata corectă în secunde (dacă se corectează)"
}
},
"trim_cycle_select": {
"title": "Tăiere ciclu - Selectați ciclul",
"description": "Selectați un ciclu de tăiat. ✓ = finalizat, ⚠ = reluat, ✗ = întrerupt",
"data": {
"cycle_id": "Ciclu"
}
},
"trim_cycle": {
"title": "Tăiere ciclu",
"description": "Fereastra curentă: {trim_summary}\n\n{trim_svg}",
"data": {
"action": "Acțiune"
}
},
"trim_cycle_start": {
"title": "Setați începutul tăierii",
"description": "Fereastra de ciclu: {cycle_start_wallclock} → {cycle_end_wallclock}\n\nPornire curentă: **{current_wallclock}** (+{current_offset_min} min de la începerea ciclului)\n\nAlegeți o nouă oră de începere folosind selectorul de ceas de mai jos.",
"data": {
"trim_start_time": "Noua ora de incepere",
"trim_start_min": "Pornire nouă (minute de la începerea ciclului)"
}
},
"trim_cycle_end": {
"title": "Setați sfârșitul tăierii",
"description": "Fereastra de ciclu: {cycle_start_wallclock} → {cycle_end_wallclock}\n\nSfârșit curent: **{current_wallclock}** (+{current_offset_min} min de la începutul ciclului)\n\nAlegeți o nouă oră de încheiere folosind selectorul de ceas de mai jos.",
"data": {
"trim_end_time": "Noua oră de sfârșit",
"trim_end_min": "Sfârșit nou (minute de la începerea ciclului)"
}
}
},
"error": {
"import_failed": "Importul nu a reușit. Lipiți un JSON valid de export WashData.",
"select_exactly_one": "Selectați exact un ciclu pentru această acțiune.",
"select_at_least_one": "Selectați cel puțin un ciclu pentru această acțiune.",
"select_at_least_two": "Selectați cel puțin două cicluri pentru această acțiune.",
"profile_exists": "Un profil cu acest nume există deja",
"rename_failed": "Nu s-a putut redenumi profilul. Este posibil ca profilul să nu existe sau noul nume este deja utilizat.",
"assignment_failed": "Nu s-a putut atribui profilul ciclului",
"duplicate_phase": "O fază cu acest nume există deja.",
"phase_not_found": "Faza selectată nu a fost găsită.",
"invalid_phase_name": "Numele fazei nu poate fi necompletat.",
"phase_name_too_long": "Numele fazei este prea lung.",
"invalid_phase_range": "Intervalul de fază este nevalid. Sfârșitul trebuie să fie mai mare decât începutul.",
"invalid_phase_timestamp": "Marca temporală este nevalidă. Utilizați formatul AAAA-LL-ZZ HH:MM sau HH:MM.",
"overlapping_phase_ranges": "Intervalele de fază se suprapun. Ajustați intervalele și încercați din nou.",
"incomplete_phase_row": "Fiecare rând de fază trebuie să includă o fază plus valori complete de început/sfârșit pentru modul selectat.",
"timestamp_mode_cycle_required": "Vă rugăm să selectați un ciclu sursă când utilizați modul marcaj temporal.",
"no_phase_ranges": "Încă nu sunt disponibile intervale de fază pentru acea acțiune.",
"feedback_notification_title": "WashData: verificați ciclul ({device})",
"feedback_notification_message": "**Dispozitiv**: {device}\n**Program**: {program} ({confidence}% încredere)\n**Ora**: {time}\n\nWashData are nevoie de ajutorul dvs. pentru a verifica acest ciclu detectat.\n\nVă rugăm să accesați **Setări > Dispozitive și servicii > WashData > Configurare > Feedback-uri de învățare** pentru a confirma sau corecta acest rezultat.",
"suggestions_ready_notification_title": "WashData: setări sugerate disponibile ({device})",
"suggestions_ready_notification_message": "Senzorul **Setări sugerate** raportează acum **{count}** recomandări acționabile.\n\nPentru a le revizui și aplica: **Setări > Dispozitive și servicii > WashData > Configurare > Setări avansate > Aplicați valorile sugerate**.\n\nSugestiile sunt opționale și sunt afișate pentru examinare înainte de a salva.",
"trim_range_invalid": "Începutul trebuie să fie înainte de sfârșit. Vă rugăm să vă ajustați punctele de tăiere.",
"trim_failed": "Tăierea a eșuat. Este posibil ca ciclul să nu mai existe sau fereastra este goală.",
"invalid_split_timestamp": "Marcajul temporal este invalid sau în afara ferestrei ciclului. Folosiți HH:MM sau HH:MM:SS în cadrul ferestrei ciclului.",
"no_split_segments_found": "Nu s-au putut produce segmente valide din aceste marcaje temporale. Asigurați-vă că fiecare marcaj temporal este în fereastra ciclului și că segmentele au cel puțin 1 minut.",
"auto_tune_suggestion": "{device_type} {device_title} cicluri fantomă detectate. Modificare sugerată de min_power: {current_min}W -> {new_min}W (nu se aplică automat).",
"auto_tune_title": "Auto-Tune WashData",
"auto_tune_fallback": "{device_type} {device_title} cicluri fantomă detectate. Modificare sugerată de min_power: {current_min}W -> {new_min}W (nu se aplică automat)."
},
"abort": {
"no_cycles_found": "Nu s-au găsit cicluri",
"no_split_segments_found": "Nu au fost găsite segmente divizabile în ciclul selectat.",
"cycle_not_found": "Ciclul selectat nu a putut fi încărcat.",
"no_power_data": "Nu sunt disponibile date de urmărire a puterii pentru ciclul selectat.",
"no_profiles_found": "Nu s-au găsit profiluri. Creați mai întâi un profil.",
"no_profiles_for_matching": "Nu există profiluri disponibile pentru potrivire. Creați mai întâi profiluri.",
"no_unlabeled_cycles": "Toate ciclurile sunt deja etichetate",
"no_suggestions": "Nu sunt disponibile valori sugerate încă. Rulați câteva cicluri și încercați din nou.",
"no_predictions": "Fără predicții",
"no_custom_phases": "Nu s-au găsit faze personalizate.",
"reprocess_success": "S-au reprocesat cu succes {count} cicluri.",
"debug_data_cleared": "S-au șters datele de depanare din {count} cicluri."
}
},
"selector": {
"notify_events_option": {
"options": {
"cycle_start": "Pornirea ciclului",
"cycle_finish": "Finalizarea ciclului",
"cycle_live": "Progres live"
}
},
"common_text": {
"options": {
"unlabeled": "(Neetichetat)",
"create_new_profile": "Creați un profil nou",
"remove_label": "Eliminați eticheta",
"no_reference_cycle": "(Fără ciclu de referință)",
"all_device_types": "Toate tipurile de dispozitive",
"current_suffix": "(actual)",
"editor_select_info": "Selectați 1 ciclu pentru a împărți sau 2+ cicluri pentru a îmbina.",
"editor_select_info_split": "Selectați 1 ciclu pentru împărțire.",
"editor_select_info_merge": "Selectați 2 sau mai multe cicluri pentru combinare.",
"editor_select_info_delete": "Selectați 1 sau mai multe cicluri pentru ștergere.",
"no_cycles_recorded": "Nu s-au înregistrat încă cicluri.",
"profile_summary_line": "- **{name}**: {count} cicluri, {avg}m medie",
"no_profiles_created": "Nu au fost create profiluri încă.",
"phase_preview": "Previzualizare fază",
"phase_preview_no_curve": "Curba medie a profilului nu este încă disponibilă. Rulați/etichetați mai multe cicluri pentru acest profil.",
"average_power_curve": "Curba de putere medie",
"unit_min": "min",
"profile_option_fmt": "{name} ({count} cicluri, în medie ~{duration}m)",
"profile_option_short_fmt": "{name} ({count} cicluri, ~{duration}m)",
"deleted_cycles_from_profile": "S-au șters {count} cicluri din {profile}.",
"not_enough_data_graph": "Nu sunt suficiente date pentru a genera un grafic.",
"no_profiles_found": "Nu s-au găsit profiluri.",
"cycle_info_fmt": "Ciclu: {start}, {duration}m, curent: {label}",
"top_candidates_header": "### Principalii candidați",
"tbl_profile": "Profil",
"tbl_confidence": "Încredere",
"tbl_correlation": "Corelație",
"tbl_duration_match": "Potrivire durată",
"detected_profile": "Profil detectat",
"estimated_duration": "Durata estimată",
"actual_duration": "Durata reală",
"choose_action": "__Alegeți o acțiune de mai jos:__",
"tbl_count": "Nr.",
"tbl_avg": "Medie",
"tbl_min": "Min.",
"tbl_max": "Max.",
"tbl_energy_avg": "Energie (medie)",
"tbl_energy_total": "Energie (total)",
"tbl_consistency": "Consist.",
"tbl_last_run": "Ultima rulare",
"graph_legend_title": "Legenda graficului",
"graph_legend_body": "Banda albastră reprezintă intervalul minim și maxim de consum observat. Linia arată curba puterii medii.",
"recording_preview": "Previzualizare înregistrare",
"trim_start": "Început tăiere",
"trim_end": "Sfârșit tăiere",
"split_preview_title": "Previzualizare împărțire",
"split_preview_found_fmt": "S-au găsit {count} segmente.",
"split_preview_confirm_fmt": "Faceți clic pe Confirmare pentru a împărți acest ciclu în {count} cicluri separate.",
"merge_preview_title": "Previzualizare îmbinare",
"merge_preview_joining_fmt": "Se îmbină {count} cicluri. Golurile vor fi umplute cu citiri de 0W.",
"editor_delete_preview_title": "Previzualizare ștergere",
"editor_delete_preview_intro": "Ciclurile selectate vor fi șterse definitiv:",
"editor_delete_preview_confirm": "Faceți clic pe Confirmare pentru a șterge definitiv aceste înregistrări de cicluri.",
"no_power_preview": "*Nu sunt disponibile date de putere pentru previzualizare.*",
"profile_comparison": "Comparație de profil",
"actual_cycle_label": "Acest ciclu (real)",
"storage_usage_header": "Utilizarea stocării",
"storage_file_size": "Dimensiunea fișierului",
"storage_cycles": "Cicluri",
"storage_profiles": "Profiluri",
"storage_debug_traces": "Urme de depanare",
"overview_suffix": "Prezentare generală",
"phase_preview_for_profile": "Previzualizare fază pentru profil",
"current_ranges_header": "Intervale curente",
"assign_phases_help": "Utilizați acțiunile de mai jos pentru a adăuga, edita, șterge sau salva intervale.",
"profile_summary_header": "Rezumatul profilului",
"recent_cycles_header": "Cicluri recente",
"trim_cycle_preview_title": "Previzualizare tăiere ciclu",
"trim_cycle_preview_no_data": "Nu sunt disponibile date de putere pentru acest ciclu.",
"trim_cycle_preview_kept_suffix": "păstrat",
"table_program": "Program",
"table_when": "Când",
"table_length": "Durată",
"table_match": "Potrivire",
"table_profile": "Profil",
"table_cycles": "Cicluri",
"table_avg_length": "Durată medie",
"table_last_run": "Ultima rulare",
"table_avg_energy": "Energie medie",
"table_detected_program": "Program detectat",
"table_confidence": "Încredere",
"table_reported": "Raportat",
"phase_builtin_suffix": "(încorporat)",
"phase_none_available": "Nu există faze disponibile.",
"settings_deprecation_warning": "⚠️ **Tip de dispozitiv învechit:** {device_type} este programat pentru eliminare într-o versiune viitoare. Conducta de potrivire a lui WashData nu produce rezultate fiabile pentru această clasă de aparate. Integrarea dvs. continuă să funcționeze pe parcursul perioadei de depreciere; pentru a opri acest avertisment, comutați **Tipul dispozitiv** de mai jos la unul dintre tipurile acceptate (Mașină de spălat, Uscător, Mașină de spălat-Uscător combinată, Mașină de spălat vase, Friteuză cu aer, Mașină de făcut pâine sau Pompă) sau la **Altele (Avansat)** dacă aparatul dvs. nu se potrivește cu niciunul dintre tipurile acceptate. **Altele (Avansate)** furnizează intenționat valori implicite generice care nu sunt reglate pentru niciun dispozitiv specific, așa că va trebui să configurați singur pragurile, timeout-urile și parametrii de potrivire; toate setările existente sunt păstrate atunci când comutați.",
"phase_other_device_types": "Alte tipuri de dispozitive:"
}
},
"interactive_editor_action": {
"options": {
"split": "Împărțiți un ciclu (găsiți lacune)",
"merge": "Îmbinați cicluri (alăturați fragmente)",
"delete": "Ștergeți ciclul(e)"
}
},
"split_mode": {
"options": {
"auto": "Detectează automat intervalele inactive",
"manual": "Marcaje temporale manuale"
}
},
"diagnostics_action": {
"options": {
"reprocess_history": "Întreținere: reprocesare și optimizare date",
"clear_debug_data": "Ștergeți datele de depanare (eliberați spațiu)",
"wipe_history": "Ștergeți TOATE datele pentru acest dispozitiv (ireversibil)",
"export_import": "Export/Import JSON cu setări (copiere/lipire)"
}
},
"export_import_mode": {
"options": {
"export": "Exportați toate datele",
"import": "Import/îmbinare date"
}
},
"manage_cycles_action": {
"options": {
"auto_label_cycles": "Etichetare automată a ciclurilor vechi",
"select_cycle_to_label": "Etichetați un ciclu specific",
"select_cycle_to_delete": "Ștergeți ciclul",
"interactive_editor": "Editor interactiv îmbinare/împărțire",
"trim_cycle": "Tăiați datele ciclului"
}
},
"manage_profiles_action": {
"options": {
"create_profile": "Creați un profil nou",
"edit_profile": "Editați/redenumiți profilul",
"delete_profile": "Ștergeți profilul",
"profile_stats": "Statistici de profil",
"cleanup_profile": "Curățați istoricul - grafic și ștergere",
"assign_phases": "Atribuiți intervale de fază"
}
},
"manage_phase_catalog_action": {
"options": {
"create_custom_phase": "Creați o nouă fază",
"edit_custom_phase": "Editați faza",
"delete_custom_phase": "Ștergeți faza"
}
},
"assign_profile_phases_action": {
"options": {
"add_range": "Adăugați intervalul de fază",
"edit_range": "Editați intervalul de fază",
"delete_range": "Ștergeți intervalul de fază",
"clear_ranges": "Ștergeți toate intervalele",
"auto_detect_ranges": "Detectare automată a fazelor",
"save_ranges": "Salvați și întoarceți-vă"
}
},
"record_cycle_action": {
"options": {
"refresh_status": "Reîmprospătați starea",
"stop_recording": "Opriți înregistrarea (salvare și procesare)",
"start_recording": "Începeți o nouă înregistrare",
"process_recording": "Procesați ultima înregistrare (tăiere și salvare)",
"discard_recording": "Renunțați la ultima înregistrare"
}
},
"record_process_save_mode": {
"options": {
"new_profile": "Creați un profil nou",
"existing_profile": "Adăugați la profilul existent",
"discard": "Renunțați la înregistrare"
}
},
"resolve_feedback_action": {
"options": {
"confirm": "Confirmare - detectare corectă",
"correct": "Corectare - alegeți program/durată",
"ignore": "Ignorare - ciclu fals pozitiv/zgomotos",
"delete": "Ștergere - eliminați din istoric"
}
},
"assign_profile_phases_auto_detect_action": {
"options": {
"name_phases": "Denumiți și aplicați fazele",
"cancel": "Întoarceți-vă fără modificări"
}
},
"trim_cycle_action": {
"options": {
"set_start": "Setați punctul de pornire",
"set_end": "Setați punctul final",
"reset": "Resetați la durata completă",
"apply": "Aplicați tăierea",
"cancel": "Anulați"
}
},
"device_type": {
"options": {
"washing_machine": "Maşină de spălat",
"dryer": "Uscător",
"washer_dryer": "Combo mașină de spălat cu uscător",
"dishwasher": "Maşină de spălat vase",
"coffee_machine": "Aparat de cafea (învechit)",
"ev": "Vehicul electric (învechit)",
"air_fryer": "Friteuza cu aer",
"heat_pump": "Pompă de căldură (învechită)",
"bread_maker": "Aparat de paine",
"pump": "Pompă / Pompă de colector",
"oven": "Cuptor (depreciat)",
"other": "Altele (avansate)"
}
}
},
"services": {
"label_cycle": {
"name": "Etichetați ciclul",
"description": "Atribuiți un profil existent unui ciclu anterior sau eliminați eticheta.",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat de etichetat."
},
"cycle_id": {
"name": "ID-ul ciclului",
"description": "ID-ul ciclului de etichetat."
},
"profile_name": {
"name": "Nume profil",
"description": "Numele unui profil existent (creați profiluri în meniul Gestionare profiluri). Lăsați necompletat pentru a elimina eticheta."
}
}
},
"create_profile": {
"name": "Creați un profil",
"description": "Creați un profil nou (autonom sau bazat pe un ciclu de referință).",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat."
},
"profile_name": {
"name": "Nume profil",
"description": "Nume pentru noul profil (de exemplu, „Rezistente”, „Delicate”)."
},
"reference_cycle_id": {
"name": "ID ciclu de referință",
"description": "ID-ul de ciclu opțional pe care să se bazeze acest profil."
}
}
},
"delete_profile": {
"name": "Ștergeți profilul",
"description": "Ștergeți un profil și, opțional, eliminați etichetarea ciclurilor care îl folosesc.",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat."
},
"profile_name": {
"name": "Nume profil",
"description": "Profilul de șters."
},
"unlabel_cycles": {
"name": "Eliminați etichetarea ciclurilor",
"description": "Eliminați eticheta profilului din ciclurile care îl folosesc."
}
}
},
"auto_label_cycles": {
"name": "Etichetare automată a ciclurilor vechi",
"description": "Etichetați retroactiv ciclurile neetichetate folosind potrivirea profilului.",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat."
},
"confidence_threshold": {
"name": "Pragul de încredere",
"description": "Încrederea minimă de potrivire (0,50-0,95) pentru aplicarea etichetelor."
}
}
},
"export_config": {
"name": "Exportați configurația",
"description": "Exportați profilurile, ciclurile și setările acestui dispozitiv într-un fișier JSON (per dispozitiv).",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat de exportat."
},
"path": {
"name": "Cale",
"description": "Calea absolută opțională a fișierului de scris (implicit la /config/ha_washdata_export_{entry}.json)."
}
}
},
"import_config": {
"name": "Importați configurația",
"description": "Importați profiluri, cicluri și setări pentru acest dispozitiv dintr-un fișier de export JSON (setările pot fi suprascrise).",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat în care să importați."
},
"path": {
"name": "Cale",
"description": "Calea absolută către fișierul JSON de export pentru import."
}
}
},
"submit_cycle_feedback": {
"name": "Trimiteți feedback pentru ciclu",
"description": "Confirmați sau corectați un program detectat automat după un ciclu finalizat. Furnizați fie „entry_id” (avansat), fie „device_id” (recomandat).",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul WashData (recomandat în locul entry_id)."
},
"entry_id": {
"name": "ID de intrare",
"description": "ID-ul de intrare de configurare pentru dispozitiv (alternativă la device_id)."
},
"cycle_id": {
"name": "ID-ul ciclului",
"description": "ID-ul ciclului afișat în notificarea/jurnalele de feedback."
},
"user_confirmed": {
"name": "Confirmați programul detectat",
"description": "Setați ca adevărat dacă programul detectat este corect."
},
"corrected_profile": {
"name": "Profil corectat",
"description": "Dacă nu este confirmat, furnizați numele corect al profilului/programului."
},
"corrected_duration": {
"name": "Durata corectată (secunde)",
"description": "Durată opțională corectată în secunde."
},
"notes": {
"name": "Note",
"description": "Note opționale despre acest ciclu."
}
}
},
"record_start": {
"name": "Porniți înregistrarea ciclului",
"description": "Începeți înregistrarea manuală a unui ciclu curat (ocolește toată logica de potrivire).",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat de înregistrat."
}
}
},
"record_stop": {
"name": "Opriți înregistrarea ciclului",
"description": "Opriți înregistrarea manuală.",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul mașinii de spălat pentru a opri înregistrarea."
}
}
},
"trim_cycle": {
"name": "Tăiați ciclul",
"description": "Tăiați datele de putere ale unui ciclu anterior la o anumită fereastră de timp.",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul WashData."
},
"cycle_id": {
"name": "ID-ul ciclului",
"description": "ID-ul ciclului de tăiat."
},
"trim_start_s": {
"name": "Începutul tăierii (secunde)",
"description": "Păstrați datele de la acest offset în secunde. Implicit 0."
},
"trim_end_s": {
"name": "Sfârșitul tăierii (secunde)",
"description": "Păstrați datele până la acest offset în secunde. Implicit = durata totală."
}
}
},
"pause_cycle": {
"name": "Ciclul de pauză",
"description": "Întrerupeți ciclul activ pentru un dispozitiv WashData.",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul WashData se întrerupe."
}
}
},
"resume_cycle": {
"name": "Reluați ciclul",
"description": "Reluați un ciclu întrerupt pentru un dispozitiv WashData.",
"fields": {
"device_id": {
"name": "Dispozitiv",
"description": "Dispozitivul WashData trebuie reluat."
}
}
}
},
"entity": {
"binary_sensor": {
"running": {
"name": "În funcțiune"
},
"match_ambiguity": {
"name": "Ambiguitate la potrivire"
}
},
"sensor": {
"washer_state": {
"name": "Stare",
"state": {
"off": "Oprit",
"idle": "Inactiv",
"starting": "Pornire",
"running": "În funcțiune",
"paused": "Pauză",
"user_paused": "Pus în pauză de utilizator",
"ending": "Se termină",
"finished": "Terminat",
"anti_wrinkle": "Antirid",
"delay_wait": "Așteaptă să Înceapă",
"interrupted": "Întrerupt",
"force_stopped": "Oprit forțat",
"rinse": "Clătire",
"unknown": "Necunoscut",
"clean": "Curat"
}
},
"washer_program": {
"name": "Program"
},
"time_remaining": {
"name": "Timp rămas"
},
"total_duration": {
"name": "Durata totală"
},
"cycle_progress": {
"name": "Progres"
},
"current_power": {
"name": "Puterea curentă"
},
"elapsed_time": {
"name": "Timp scurs"
},
"debug_info": {
"name": "Informații de depanare"
},
"match_confidence": {
"name": "Încrederea în potrivire"
},
"top_candidates": {
"name": "Principalii candidați",
"state": {
"none": "Niciunul"
}
},
"current_phase": {
"name": "Faza curentă"
},
"wash_phase": {
"name": "Fază"
},
"profile_cycle_count": {
"name": "Număr de cicluri {profile_name}",
"unit_of_measurement": "cicluri"
},
"suggestions": {
"name": "Setări sugerate disponibile"
},
"pump_runs_today": {
"name": "Funcționarea pompei (ultimele 24 de ore)"
},
"cycle_count": {
"name": "Număr de cicluri"
}
},
"select": {
"program_select": {
"name": "Programul ciclului",
"state": {
"auto_detect": "Detectare automată"
}
}
},
"button": {
"force_end_cycle": {
"name": "Forțați sfârșitul ciclului"
},
"pause_cycle": {
"name": "Ciclul de pauză"
},
"resume_cycle": {
"name": "Reluați ciclul"
}
}
},
"exceptions": {
"device_id_required": {
"message": "Este necesar un device_id valid."
},
"cycle_id_required": {
"message": "Este necesar un cycle_id valid."
},
"profile_name_required": {
"message": "Este necesar un nume_profil valid."
},
"device_not_found": {
"message": "Dispozitivul nu a fost găsit."
},
"no_config_entry": {
"message": "Nu a fost găsită nicio intrare de configurare pentru dispozitiv."
},
"integration_not_loaded": {
"message": "Integrarea nu a fost încărcată pentru acest dispozitiv."
},
"cycle_not_found_or_no_power": {
"message": "Ciclul nu a fost găsit sau nu are date de putere."
},
"trim_failed_empty_window": {
"message": "Eșec la tăiere - ciclul nu a fost găsit, nu există date de putere sau fereastra rezultată este goală."
},
"trim_invalid_range": {
"message": "trim_end_s trebuie să fie mai mare decât trim_start_s."
}
}
}